Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

assign certain pin location in VHDL code

Status
Not open for further replies.

Tetra

Junior Member level 1
Junior Member level 1
Joined
Jun 19, 2003
Messages
16
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
160
attribute pin assign in vhdl

Can I use certian VHL attribute to direct the synthesizer to assign certain Input or output pin to certain pin location on the target FPGA ?
 

Hi !

You have to use ucf file to assign pin location for your design.

example:

NET "adc<0>" LOC = "T11";
NET "adc<1>" LOC = "M11";
NET "adc<2>" LOC = "P10";

you can also use this file to create timing spec. and location spec.

Good luck, Bart
 

if you use xilinx you can use this sintax in entity declaration

attribute loc: string; (one time)
attribute loc of <name of signal> : signal is "<pin>";

Bye.
G.
 

Dear tpl71
thanks for your support. I tried the solution you specify and it done well with single line signal. I tried to treat a bus with the same idea by writing

attribute Location of Address_Bus_H(0) : signal is "112";

but I get an error message
"C:/~/adapter.vhd", line 65: Syntax Error near '('.

did you face this problem ?
 

you can also use constraint editor or pace in ISE
 

but if your ISE is 4.2version

you'd better use a texteditor to writer UCF
 

I tried to treat a bus with the same idea by writing

attribute Location of Address_Bus_H(0) : signal is "112";

but I get an error message
"C:/~/adapter.vhd", line 65: Syntax Error near '('.

did you face this problem ?[/quote]

For a bus you can try a list of pins instead of one pin at at time

See **broken link removed** for the syntax

and below (forget the XC_ in XC_LOC, that's old)

entity iob_loc_ex is
port (CLK : in STD_LOGIC;
A, B : in STD_LOGIC_VECTOR (3 downto 0);
O : out STD_LOGIC_VECTOR (3 downto 0));

attribute xc_loc : string;
attribute xc_loc of CLK : signal is "P13";
attribute xc_loc of A : signal is "P19,P20,P23,P24";
attribute xc_loc of B : signal is "P25,P26,P27,P28";
attribute xc_loc of O : signal is "P48,P49,P50,P51";
end iob_loc_ex;
**broken link removed**
 

The idea is feasible. But it is a kind of poor coding style, anyway. This get the codes un-reusable.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top