Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


Foundation XVHDL, JTAG: How to instantiate the BSCAN symbol for BoundaryScan


Record #1362

Product Family:  Software

Product Line:  Metamor

Problem Title:
Foundation XVHDL, JTAG: How to instantiate the BSCAN symbol for
BoundaryScan



Problem Description:
Keywords: xvhdl, foundation, bscan, jtag, vhdl, xc4000, xc5200

Urgency: Standard

General Description:
Examples on how to instantiate the BSCAN symbol in Foundation XVHDL,
both for the XC4K and XC5K families:

Make sure that you are using XVHDL(Metamor) v 2.4.0 or later
with these examples.  Version 2.4.4 of XVHDL is available on
the Xilinx FTP site:

ftp://ftp.xilinx.com/pub/swhelp/foundation/spxv.exeInternet Link

*NOTE* This file is valid only for Foundation releases 6.x.


Solution 1:

-- XC5200 example of instantiating the BSCAN symbol

entity example is
	port (a, b: in bit; c: out bit);
end example;


architecture xilinx of example is

component bscan
  port(tdi, tms, tck: in bit; tdo: out bit);
end component;

component tck
  port ( i : out bit );
end component;

component tdi
  port ( i : out bit );
end component;

component tms
  port ( i : out bit );
end component;

component tdo
  port ( o : in  bit );
end component;

component ibuf
	port (i: in bit; o: out bit);
end component;

component obuf
	port(i: in bit; o: out bit);
end component;

signal tck_net, tck_net_in  : bit;
signal tdi_net, tdi_net_in  : bit;
signal tms_net, tms_net_in  : bit;
signal tdo_net, tdo_net_out  : bit;

begin


u1: bscan port map (tdi=>tdi_net, tms=>tms_net, tck=>tck_net, tdo=>tdo_net_out);


u2: ibuf port map(i=>tck_net_in, o=>tck_net);
u3: ibuf port map(i=>tdi_net_in, o=>tdi_net);
u4: ibuf port map(i=>tms_net_in, o=>tms_net);

u5: obuf port map(i=>tdo_net_out, o=>tdo_net);

u6: tck port map (i=>tck_net_in);
u7: tdi port map (i=>tdi_net_in);
u8: tms port map (i=>tms_net_in);

u9: tdo port map (o=>tdo_net);

process(b)
begin
if(b'event and b='1') then
 c <= a;
end if;
end process;


end xilinx;







Solution 2:

-- XC4000/XC4000E example of instantiating the BSCAN symbol

entity example is
	port (a, b: in bit; c: out bit);
end example;


architecture xilinx of example is

component bscan
  port(tdi, tms, tck: in bit; tdo: out bit);
end component;

component tck
  port ( i : out bit );
end component;

component tdi
  port ( i : out bit );
end component;

component tms
  port ( i : out bit );
end component;

component tdo
  port ( o : in  bit );
end component;



signal tck_net	: bit;
signal tdi_net	: bit;
signal tms_net	: bit;
signal tdo_net	: bit;

begin


u1: bscan port map (tdi=>tdi_net, tms=>tms_net, tck=>tck_net, tdo=>tdo_net);

u2: tck port map (i=>tck_net);
u3: tdi port map (i=>tdi_net);
u4: tms port map (i=>tms_net);
u5: tdo port map (o=>tdo_net);

process(b)
begin
if(b'event and b='1') then
 c <= a;
end if;
end process;


end xilinx;







End of Record #1362

For the latest news, design tips, and patch information on the Xilinx design environment, check out the Xilinx Expert Journals!

© 1998 Xilinx, Inc. All rights reserved
Trademarks and Patents