UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Explorer
Explorer
6,420 Views
Registered: ‎09-02-2009

[DRC 23-20] Rule violation (NSTD-1) Unspecified I/O Standard

Jump to solution

I have the issue on Digilent NEXYS VIDEO uses Artix 7  XC7A200T -1sgc484


module testIO(

input [7:0] sw,
output [7:0] led
);

assign led[7:0] = ~sw[7:0];

endmodule

 

[DRC 23-20] Rule violation (NSTD-1) Unspecified I/O Standard - 16 out of 16 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: sw[7:0], led[7:0].

 

The constraints are :


## LEDs
set_property -dict { PACKAGE_PIN T14 IOSTANDARD LVCMOS25 } [get_ports { led[0] }]; #IO_L15P_T2_DQS_13 Sch=led[0]
set_property -dict { PACKAGE_PIN T15 IOSTANDARD LVCMOS25 } [get_ports { led[1] }]; #IO_L15N_T2_DQS_13 Sch=led[1]
set_property -dict { PACKAGE_PIN T16 IOSTANDARD LVCMOS25 } [get_ports { led[2] }]; #IO_L17P_T2_13 Sch=led[2]
set_property -dict { PACKAGE_PIN U16 IOSTANDARD LVCMOS25 } [get_ports { led[3] }]; #IO_L17N_T2_13 Sch=led[3]
set_property -dict { PACKAGE_PIN V15 IOSTANDARD LVCMOS25 } [get_ports { led[4] }]; #IO_L14N_T2_SRCC_13 Sch=led[4]
set_property -dict { PACKAGE_PIN W16 IOSTANDARD LVCMOS25 } [get_ports { led[5] }]; #IO_L16N_T2_13 Sch=led[5]
set_property -dict { PACKAGE_PIN W15 IOSTANDARD LVCMOS25 } [get_ports { led[6] }]; #IO_L16P_T2_13 Sch=led[6]
set_property -dict { PACKAGE_PIN Y13 IOSTANDARD LVCMOS25 } [get_ports { led[7] }]; #IO_L5P_T0_13 Sch=led[7]

 

## Switches
set_property -dict { PACKAGE_PIN E22 IOSTANDARD LVCMOS12 } [get_ports { sw[0] }]; #IO_L22P_T3_16 Sch=sw[0]
set_property -dict { PACKAGE_PIN F21 IOSTANDARD LVCMOS12 } [get_ports { sw[1] }]; #IO_25_16 Sch=sw[1]
set_property -dict { PACKAGE_PIN G21 IOSTANDARD LVCMOS12 } [get_ports { sw[2] }]; #IO_L24P_T3_16 Sch=sw[2]
set_property -dict { PACKAGE_PIN G22 IOSTANDARD LVCMOS12 } [get_ports { sw[3] }]; #IO_L24N_T3_16 Sch=sw[3]
set_property -dict { PACKAGE_PIN H17 IOSTANDARD LVCMOS12 } [get_ports { sw[4] }]; #IO_L6P_T0_15 Sch=sw[4]
set_property -dict { PACKAGE_PIN J16 IOSTANDARD LVCMOS12 } [get_ports { sw[5] }]; #IO_0_15 Sch=sw[5]
set_property -dict { PACKAGE_PIN K13 IOSTANDARD LVCMOS12 } [get_ports { sw[6] }]; #IO_L19P_T3_A22_15 Sch=sw[6]
set_property -dict { PACKAGE_PIN M17 IOSTANDARD LVCMOS12 } [get_ports { sw[7] }]; #IO_25_15 Sch=sw[7]

 

Whats wrong with these constraints (given by DIGILENT INC with the NEXYS VIDEO board)?

 

thanks everyone for the amazing help
0 Kudos
1 Solution

Accepted Solutions
Explorer
Explorer
10,961 Views
Registered: ‎09-02-2009

[DRC 23-20] Rule violation (NSTD-1) Unspecified I/O Standard [

Jump to solution

 

I found reading this

https://reference.digilentinc.com/reference/software/vivado/board-files

that C:\Xilinx\Vivado\2016.4\data\boards needs to have some xml files

so I added them here in attachment

 

It needed to be created from scratch using the board files!

 

well It is now solved I have no more errors

thanks everyone for the amazing help

View solution in original post

0 Kudos
6 Replies
Adventurer
Adventurer
6,402 Views
Registered: ‎04-13-2010

Re: the new constraints make it hard to connect a switch to led ~ help needed!

Jump to solution

You can't have comments in the same line with the constraints.

 

You have to put your comments into own lines, like this:

## LEDs
#IO_L15P_T2_DQS_13 Sch=led[0]
set_property -dict { PACKAGE_PIN T14 IOSTANDARD LVCMOS25 } [get_ports { led[0] }];
#IO_L15N_T2_DQS_13 Sch=led[1]
set_property -dict { PACKAGE_PIN T15 IOSTANDARD LVCMOS25 } [get_ports { led[1] }];

Regards

0 Kudos
Explorer
Explorer
10,962 Views
Registered: ‎09-02-2009

[DRC 23-20] Rule violation (NSTD-1) Unspecified I/O Standard [

Jump to solution

 

I found reading this

https://reference.digilentinc.com/reference/software/vivado/board-files

that C:\Xilinx\Vivado\2016.4\data\boards needs to have some xml files

so I added them here in attachment

 

It needed to be created from scratch using the board files!

 

well It is now solved I have no more errors

thanks everyone for the amazing help

View solution in original post

0 Kudos
Moderator
Moderator
6,388 Views
Registered: ‎07-23-2015

Re: the new constraints make it hard to connect a switch to led ~ help needed!

Jump to solution

@p94100687 Yes, having the XML files makes your life easier while configuring for various interfaces for the respective board you using and eliminates some of the manual work.

- Giri
--------------------------------------------------------------------------------------------------------------------
There's no such thing as a stupid question. Feel free to ask but do a quick search to make sure it ain't already answered.
Keep conversing, give Kudos and Accept Solution when you get one.
-----------------------------------------------------------------------------------------------------------------------
0 Kudos
Explorer
Explorer
6,385 Views
Registered: ‎09-02-2009

[DRC 23-20] Rule violation (NSTD-1) Unspecified I/O Standard [

Jump to solution

No Hirshbaum its not that the problem, It was the board files that where missing (Vivado needed them) but thanks

 

The added files  issue here reminds me for the Logic gates in the block designs there also they have no standard parts and we need also to add manually a file  see on the bottom of https://forums.xilinx.com/t5/Design-Entry/Schematic-Design-Entry-Tool-in-Vivado/m-p/677794

 

thanks everyone for the amazing help
0 Kudos
Guide avrumw
Guide
6,337 Views
Registered: ‎01-23-2009

Re: the new constraints make it hard to connect a switch to led ~ help needed!

Jump to solution

@hirschdaumen

 

You can't have comments in the same line with the constraints.

 

That's actually not true - you just have to use the correct syntax.

 

In Tcl, the # is actually treated as "the comment command"; it is a command with any number of arguments that follow it.

 

However, like all commands, it can only start when another command has ended. In Tcl, which is not free form, commands end at the end of lines (unless they are in strings, or escaped, or....). However, you can also terminate a command with a semicolon. Using the semicolon, you can put multiple "commands" on the same line - including the comment "command"..

 

So

 

## LEDs
set_property -dict { PACKAGE_PIN T14 IOSTANDARD LVCMOS25 } [get_ports { led[0] }]; #IO_L15P_T2_DQS_13 Sch=led[0]
set_property -dict { PACKAGE_PIN T15 IOSTANDARD LVCMOS25 } [get_ports { led[1] }]; #IO_L15N_T2_DQS_13 Sch=led[1]

is legal as long as you have the semicolon after the first command and before the #.

 

Avrum

Adventurer
Adventurer
6,321 Views
Registered: ‎04-13-2010

Re: the new constraints make it hard to connect a switch to led ~ help needed!

Jump to solution

Avrum,

 

excellent, I didn't know that! I'm not very familiar with Tcl, and that thing with the comments just catched my eyes since I have been through this pitfall. I did, actually, notice the semicolons, and wondered why they are there...

 

Thanks for your explanation!

0 Kudos