Thursday, March 24, 2011

OFFSET Constraint Entry Methods

OFFSET IN/OUT constraints can be specified on IOs using three different methods. It can be entered
  • on specific net
  • on timing group consisting of different pads. This is the method I would recommended.
  • globally. All IOs not covered by other more specific OFFSET constraints will be included in the global OFFSET constraint.
A simple example (download the complete project with HDL and UCF here) is used below to show the syntax for these three methods and how they are reported by the Timing Analyzer:

UCF Constraints

NET "clk_i" TNM_NET = TN_clk_i;
TIMESPEC TS_clk_i = PERIOD "TN_clk_i" 20 ns HIGH 50%;

#global offset in
OFFSET = IN 10 ns BEFORE clk_i;

#offset in on time group
NET a_i[*]    TNM = TN_a_i_pads;
NET a_vld_i   TNM = TN_a_i_pads;
TIMEGRP TN_a_i_pads OFFSET = IN 8 ns BEFORE clk_i;

#add P/N of differential pairs to the same timing group
NET d_i_p     TNM = TN_d_pads;
NET d_i_n     TNM = TN_d_pads;
TIMEGRP TN_d_pads OFFSET = IN 10 ns BEFORE clk_i;

#offset in on specific net
NET "b_i[*]" OFFSET = IN 6 ns BEFORE clk_i;

Timing Result
Below is the timing result after the implementation is done.
  • Each net in the b_i bus is reported separately with 6 ns OFFSET IN requirement.
  • All nets in TN_a_i_pads group are reported under the OFFSET IN constraint on the timing group.
  • The c_i bus is not covered by any OFFSET IN constraints on specific net or timing group, so it's reported under the global OFFSET IN constraint. 
  • The differential pair d_i_p and d_i_n are reported under the same timing group.

    Friday, March 11, 2011

    OBSOLETE: Xilinx Document Navigator is Live (latest version is 1.2 as of July 26, 2011)

    This blog is OBSOLETE now that the new DocNav 2012.2 is now part of  IDS release.

    March, 2012: added a "Tips and Tricks" section.
    August, 2011: Watch Xilinx Document Navigator 1.2 Overview Video 

    Xilinx Document Navigator is an awesome document manager that
    • downloads all HW (UG, AppNotes, errata, etc) and SW documents from one "Download" button
    • automatically checks for updates on all documents
    • can easily filter, find and search all documents
    • With improvements made to "User Documents" tab in v1.2 that allow documents/URLs to be organized hierarchically and re-ordered (see the snapshot at the end), DocNav can now be used to manage ALL your documents, not just Xilinx documents. 

    Thursday, March 3, 2011

    FFT v8.0 AXI with scaled output

    The output of the FFT core can be set to "Scaled" to save some logic resources if the full precision is not required. A few things are worth mentioning to get the scaling to work: