Return to Support Page
 homesearchagentssupportask xilinxmap

Answers Database


Foundation XVHDL, XC9500: How to set an output to high impedance (Hi-Z)


Record #3030

Product Family:  Software

Product Line:  Metamor

Problem Title:
Foundation XVHDL, XC9500: How to set an output to high impedance
(Hi-Z)



Problem Description:
Keywords: high, z, impedance, xvhdl, foundation, 9500, unused,
	   tie

Urgency: Standard

General Description:

Sometimes it is necessary to tie unused pins to high impedance.
This may be the case if changes were made to the logic of a
device but the pin is on a bus externally.  Tieing the pin to
gnd or vcc may have drastic effects on the bus.


Solution 1:

To tie an unused pin to High-Z in Foundation XVHDL, change the
pin to an output std_logic vector, and declare a signal as follows:
signal: bit :='0';

Outside of a process use the following equation:

outz <= 'Z' when controlz = '0' else '0';


Example:

library IEEE;
use IEEE.std_logic_1164.all;

entity hiz is
port(	 a:in bit;
	 b:in bit;
	 clk:in bit;
	 d:out bit;
	 oz:out std_logic
     );
end hiz;

architecture rewrite of hiz is
signal controlz:bit:='0';
begin

process(clk)
if clk'event and clk='1' then
   d<=a and b;
end if;
end process;

oz<='Z' when controlz='0' else '0';

--oz will always be 'Z' since controlz is tied to gnd
       --and never used.

end rewrite;

-------------------------------
This will implement the following equations as seen in the
fitting report

/oz = Vcc
  oz.TRST = Gnd




End of Record #3030

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