Sorry, you need to enable JavaScript to visit this website.

Zedboard XDC file fails in Vivado2014.1

Unsolved
8 posts / 0 new
elsevers's picture
elsevers
Junior(0)
Zedboard XDC file fails in Vivado2014.1

Hello,

The latest ZedBoard rev D XDC file causes Vivado 2014.1 to fail with the error shown below for any pins that the user is using (LEDS[7:0] in my case):
----------
ERROR: [Drc 23-20] Rule violation (NSTD-1) Unspecified I/O Standard - 8 out of 138 logical ports use I/O standard (IOSTANDARD) value 'DEFAULT', instead of a user assigned specific value. This may cause I/O contention or incompatibility with the board power or connectivity affecting performance, signal integrity or in extreme cases cause damage to the device or the components to which it is connected. To correct this violation, specify all I/O standards. This design will fail to generate a bitstream unless all logical ports have a user specified I/O standard value defined. To allow bitstream creation with unspecified I/O standard values (not recommended), use this command: set_property SEVERITY {Warning} [get_drc_checks NSTD-1]. NOTE: When using the Vivado Runs infrastructure (e.g. launch_runs Tcl command), add this command to a .tcl file and add that file as a pre-hook for write_bitstream step for the implementation run. Problem ports: LEDS[7:0].
----------

As far I can tell, the problem is caused by setting the IOSTANDARD based on a filter of IOBANK (like what is described here: http://www.zedboard.org/content/7z020-xdc-file)

My solution has been to manually add assignments of the IOSTANDARD to each pin, i.e.:
set_property PACKAGE_PIN T22 [get_ports {LEDS[0]}]
set_property IOSTANDARD LVCMOS25 [get_ports {LEDS[0]}]

Is there a better fix for this problem?

Thanks

zedhed's picture
zedhed
Moderator(25)
Zedboard XDC file fails in Vivado2014.1

Hi elsevers,

Instead of using those statements for each pin definition like you suggested:

set_property IOSTANDARD LVCMOS25 [get_ports {LEDS[0]}]

Can you try this one instead to grab each of the 8 LED ports?

set_property IOSTANDARD LVCMOS25 [get_ports LEDS*];

As long as you do not have other pins named LEDS that should grab each of your 8 LED ports for the property assignment.

Regards,

-Kevin

dyessgg's picture
dyessgg
Junior(0)
IOSTANDARD is per bank?

I thought the IOSTANDARD had to be consistent among all pins in a bank. Is this true or not? If it is true, then setting the IOSTANDARD on each individual pin, could lead to inconsistent settings?

TroutChaser's picture
TroutChaser
Moderator(18)
The IOSTANDARD is per bank,

The IOSTANDARD is per bank, so your individual settings have to be consistent for all of the pins in a bank.
 
We have discovered that you can set the IOSTANDARD constraint for the whole bank if you place the bank constraint AFTER the pin constraints in the xdc file and use this syntax: 

 

# Set the bank voltage for IO Bank 35 to 3.3V by default.

set_property IOSTANDARD LVCMOS33 [get_ports -of_objects [get_iobanks 35]];

 

 

-Gary

toddz's picture
toddz
Junior(0)
I tried this with the PicoZed

I tried this with the PicoZed .xdc using Vivado 2014.4 and it fails with this message.

[Common 17-165] Too many positional options when parsing '34', please type 'get_ports -help' for usage info. ["C:/FPGA/zedboard/picozed_t1/picozed_t1.srcs/constrs_1/picozed_7z020_master_XDC_RevC_v1.xdc":215]

TroutChaser's picture
TroutChaser
Moderator(18)
error in the xdc file

It looks like there is an error in the xdc file that is not visible unless the editor encoding is set to 'ANSI'. I will correct the xdc file and post v2 today.
 
Thanks for reporting this.
 
-Gary

elsevers's picture
elsevers
Junior(0)
Success!

Thank you, that worked.

-Eric

ashish_traana's picture
ashish_traana
Junior(0)
Regarding Assigning a output signal to LED/PMOD

Hello all,

I am unable to see signal behavior on led , as i am using zedboard so there are some dedicated pins for LED.

Even before that i wanted to see output signals on zedboard pmod pins but i did not get on pmod pins.