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!

AR# 62661

Vivado Implementation - How to verify whether an I/O register is packed into IOB

Description

Is there any report that confirms the successful packing of an IOB register?

Solution

In Vivado versions prior to 2014.1:

To check if the I/O registers are placed into IOBs, run "report_io" or refer to the "IO Report" (*_io_placed.rpt) after place_design and check the "IOB Sequential Element" column.

You can use the following command to extract the information from that file:

cat *io_placed.rpt | awk -F\| '$16 ~ /[A-Z]/ {print "Pin "$2 $16}'

In Vivado versions from 2014.1 to 2015.2:

There is an ultrafast app inside the Tcl Store which includes a command called report_io_reg.

In the output table, there are ILOGIC and OLOGIC columns which indicate the IOB register.

To run this command:

  1. 1. Select Tools > Xilinx Tcl Store and ensure Ultrafast Design Methodology is installed.
  2. Open the implemented design, and run the following from the Tcl Console:

xilinx::ultrafast::report_io_reg.

In Vivado versions starting from 2015.3:

Starting from 2015.3, the IOB registers information is put in the report_datasheet report.

The "(IOB)" mark in the "IO Reg Type" column means that the cell is placed in an IOB.

This report can be generated by running "report_datasheet -name" in the Tcl console or by generating the report_timing_summary report with the "Report Datasheet" option checked.

Both the GUI report and the text report contain the I/O Reg Type information.

AR# 62661
Date Created 10/31/2014
Last Updated 01/04/2016
Status Active
Type General Article
Tools
  • Vivado Design Suite