ug685
TRANSCRIPT
-
7/28/2019 ug685
1/54
RTL and TechnologySchematic ViewersTutorial
UG685 (v13.1) March 1, 2011
-
7/28/2019 ug685
2/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com UG685 (v13.1) March 1, 2011
The information disclosed to you hereunder (the Information) is provided AS-IS with no warranty of any kind, express or implied. Xilinxdoes not assume any liability arising from your use of the Information. You are responsible for obtaining any rights you may require for youruse of this Information. Xilinx reserves the right to make changes, at any time, to the Information without notice and at its sole discretion.Xilinx assumes no obligation to correct any errors contained in the Information or to advise you of any corrections or updates. Xilinxexpressly disclaims any liability in connection with technical support or assistance that may be provided to you in connection with theInformation. XILINX MAKES NO OTHER WARRANTIES, WHETHER EXPRESS, IMPLIED, OR STATUTORY, REGARDING THEINFORMATION, INCLUDING ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, ORNONINFRINGEMENT OF THIRD-PARTY RIGHTS.
Copyright 2011 Xilinx, Inc. XILINX, the Xilinx logo, Virtex, Spartan, ISE, and other designated brands included herein are trademarks ofXilinx in the United States and other countries. All other trademarks are the property of their respective owners.
Revision History
The following table shows the revision history for this document.
Date Version Revision03/01/11 13.1 Updated to show that design is available from ISE Examples.
Updated graphics.
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
3/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 3UG685 (v13.1) March 1, 2011
Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Chapter 1: Schematic Viewer: Brief Overview
Design Flow Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Flexibility for Both Project Navigator and Command Line Users . . . . . . . . . . . . . . 7
Chapter 2: Tutorial Description
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Chapter 3: Lab Preparation: Getting StartedInstalling a Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Setting Up Project Navigator Preferences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Chapter 4: Lab 1: Basic Features
Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Chapter 5: Lab 2: Working with Hierarchical Netlists
Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Chapter 6: Lab 3: Using Schematic Viewer for Timing Analysis
Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Chapter 7: Lab 4: Simplifying Design Analysis
Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
Chapter 8: Lab 5: Comparing Two Design Implementations
Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
Table of Contents
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
4/54
4 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Chapter 9: Lab 6: Dealing with Large Designs
Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Tip 1: Using Hierarchical Netlists. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Tip 2: Using Multiple Schematic Sheets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Chapter 10: Lab 7: Using the Schematic Viewer as a Standalone Tool
Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Lab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Appendix A: Additional Resources
Xilinx Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
5/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 5UG685 (v13.1) March 1, 2011
Chapter 1
Schematic Viewer: Brief Overview
Design Flow Benefits
The goal of this tutorial is to provide a quick introduction to the main capabilities of theSchematic Viewer available from the ISE Design Suite and how you can use thesecapabilities for design analysis and debugging. With the rapid growth in the size andcomplexity of FPGA designs, it is critical to have tools that ease the way you analyze anddebug your designs.
Some common questions can be answered by using the Schematic Viewer:
How is my HDL code interpreted by the synthesis tool?
How is my HDL code mapped to the target technology?
Where is my critical timing path situated?
In addition, todays advanced designs are often completed by several designers located indifferent parts of the world, where each designer is responsible for a part of the design.This complicates design analysis even further, and good debugging tools become critical.
Graphical tools such as the Schematic Viewer, PlanAhead software, and FPGA Editorsignificantly simplify design analysis.
In this tutorial, we introduce the latest version of the Schematic Viewer, a tool which
provides powerful ways to view and analyze your designs from different perspectives.
Key Features
The Schematic Viewer provides a flexible interface that allows you to focus on the part ofthe design that interests you. This ability to incrementally expand or localize the view ondemand provides a significantly faster means to navigate through your design.
The Schematic Viewer provides you with powerful analysis features, such as:
Drawing the schematic by selecting the only elements of interest
Extracting Input/Output logic cones
Removing objects that are not of interest Navigating Forward/Back history of previous analysis steps
Working with multiple schematics of the same netlist
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
6/54
6 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 1: Schematic Viewer: Brief Overview
The Schematic Viewer as shown in Figure 1-1 has significantly improved performance,which improves your ability to deal with higher complexity designs.
Ultimately, the Schematic Viewer provides you with the fundamental capabilities tovisualize:
RTL views of the design
Post-synthesis netlists
Critical timing path delays reported in the post-place and route timing report (fromTiming Analyzer)
RTL ViewRTL View is a Register Transfer Level graphical representation of your design. Thisrepresentation (.ngr file produced by Xilinx Synthesis Technology (XST)) is generated bythe synthesis tool at earlier stages of a synthesis process when technology mapping is notyet completed. The goal of this view is to be as close as possible to the original HDL code.In the RTL view, the design is represented in terms of macro blocks, such as adders,multipliers, and registers. Standard combinatorial logic is mapped onto logic gates, such asAND, NAND, and OR.
Post-Synthesis Netlist
Graphical representation of the post-synthesis (optimized and mapped) netlist (.ngc
file produced by XST) contains Xilinx primitives as defined in the UNISIM library, such asLUTs, DCM, I/O buffers, and flip-flops. The Schematic Viewer allows you to visualize theprimitive properties and the constraints attached to them.
Critical Path View
When used as a cross probe target from the Timing Analyzer report, the critical timing pathof your design is represented using the post-place and route netlist. This netlist is differentfrom the post-synthesis netlist and represents your design in terms of slices.
X-RefTarget - Figure 1-1
Figure 1-1: Schematic Viewer
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
7/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 7UG685 (v13.1) March 1, 2011
Flexibility for Both Project Navigator and Command Line Users
Flexibility for Both Project Navigator and Command Line Users
Your particular design methodology (command line vs. Project Navigator) determineswhich set of features you can use in the Schematic Viewer. Use the following table tofamiliarize yourself with the features available to you.
Case 1: ISE Project Navigator
Case 2: Command Line
Although you cannot launch Schematic Viewer in a standalone mode, there is aworkaround to emulate this use model and enable you to use the Schematic Viewer toexplore the XST RTL View or XST post-synthesis netlists. Post-map and post-place androute netlists are not handled in this mode.
Please refer to Chapter 10, Lab 7: Using the Schematic Viewer as a Standalone Tool formore information.
Table 1-1: Design Features
Synthesis Tool RTL ViewPost-Synthesis
NetlistCritical Path Notes
XST Yes Yes YesUse ISE environment to fully implement your
design, and XST is your synthesis tool
Third party - - YesUse ISE environment to fully implement yourdesign, and use a third-party synthesis tool.
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
8/54
8 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 1: Schematic Viewer: Brief Overview
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
9/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 9UG685 (v13.1) March 1, 2011
Chapter 2
Tutorial Description
Overview
Throughout this tutorial, we will use the small stopwatch design which is delivered withthe Xilinx ISE software installation as an example design. We intentionally selected asmall design to allow you to complete the labs as quickly as possible.
Less than one hour is required to complete the entire tutorial which covers all majorfeatures.
We suggest:
Running the labs in order. That said, the labs are independent and can be run in anyorder if you want to immediately focus on one particular functional area.
Creating a separate design directory for each lab and copying the original design filesto that directory. Please refer to Chapter 3, Lab Preparation: Getting Started, for moreinformation.
Because the majority of Schematic Viewer features can be accessed using either the RTL,Post-Synthesis netlist, or Critical Path views, we will use the Post-Synthesis netlist view inthe majority of labs to demonstrate the main features.
The following table gives you a brief overview of all the labs.
Table 2-1: Lab Overview
Title Duration Covered Features
Chapter 4, Lab 1: BasicFeatures
9 minutes Selecting Schematic Viewer startup mode
Working with the Schematic Wizard
Understanding the Schematic Viewer interface
Zooming views
Expanding schematics
Removing elements from a schematic
Coloring new elements
Navigating history
Using Start/End signal markers
Chapter 5, Lab 2: Workingwith Hierarchical Netlists
9 minutes Selecting hierarchical blocks in the Schematic Wizard
Expanding hierarchical blocks
Starting schematic exploration with the top-level block
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
10/54
10 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 2: Tutorial Description
Prerequisites
The labs you will run through require some basic knowledge about the ISE ProjectNavigator environment. Before starting these labs, you should know:
How to open and close an existing project
How to add a new UCF (implementation constraint file) to the project and specifybasic timing constraints using Constraint Editor
How to run the basic implementation flow
How to launch and use Timing Analyzer
Chapter 6, Lab 3: UsingSchematic Viewer for TimingAnalysis
6 minutes Visualizing critical paths in the Schematic Viewer
Annotating the critical path with path delays
Chapter 7, Lab 4: SimplifyingDesign Analysis
7 minutes Using Start/End signal markers
Deleting schematic elements
Using multiple schematics of the same netlist
Starting a new schematic with selected elements
Using colors to mark various elements
Chapter 8, Lab 5: ComparingTwo Design Implementations
5 minutes Loading and comparing two netlists of the same design
Chapter 9, Lab 6: Dealing withLarge Designs
3 minutes Handling large designs
Chapter 10, Lab 7: Using theSchematic Viewer as a
Standalone Tool
3 minutes Learning how command line users can take advantage of theSchematic Viewer
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
11/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 11UG685 (v13.1) March 1, 2011
Chapter 3
Lab Preparation: Getting Started
Installing a Design
Throughout the labs, you will use the small stopwatch design and target a Spartan-3Exc3s100e-4-vq100 device. This design is delivered with the Xilinx ISE softwareinstallation.
1. In Project Navigator, select File > Open Example.
2. In the Open Example dialog box, select the watchvhd design and specifyc:\viewer_labs\labs1 as the Destination Directory.
The watchvhd project is unarchived in the specified destination directory and isopened for use in Project Navigator.
Setting Up Project Navigator Preferences
To ensure that the lab graphics provided in this tutorial match the schematic you see onyour screen, you have to setup the Light Background Color Scheme for Schematic Viewer
before starting the lab.
1. To open the Preferences dialog box, select Edit > Preferences.
2. In the left pane, expand RTL/Technology Viewers and select the Color Schemesub-category.
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
12/54
12 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 3: Lab Preparation: Getting Started
3. Select Light Background Color Scheme in zone 1 (see Figure 3-1) of the dialog box,click Apply, and click OK to finish.
Now you are ready to start the labs.
X-RefTarget - Figure 3-1
Figure 3-1: Color Scheme Selection
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
13/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 13UG685 (v13.1) March 1, 2011
Chapter 4
Lab 1: Basic Features
Objectives
The goal of this lab is to familiarize you with the basic Schematic Viewer operations whichwill be used extensively in later exercises. These include:
Selecting Schematic Viewer startup mode
Working with the Schematic Wizard
Understanding the Schematic Viewer interface Zooming views
Expanding schematics
Removing elements from a schematic
Coloring new elements
Navigating history
Using Start/End signal markers
Note: For the sake of clarity and simplicity, all the above features will be demonstrated using a
flattened post-synthesis netlist. Hierarchical netlist navigation will be introduced in the next lab.
Lab
Step 1: Creating the Lab Project
Create and open the stopwatch project and set the Light Background Color Scheme forSchematic Viewer, as described in the Chapter 3, Lab Preparation: Getting Started.
Step 2: Setting XST Options and Synthesizing the Design
1. In the Processes pane, right-click Synthesize - XST, and select Process Properties toopen the Synthesis Options dialog box.
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
14/54
14 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 4: Lab 1: Basic Features
2. Set the Keep Hierarchy option to Noas shown in Figure 4-1.
3. Synthesize the design by double-clicking the Synthesize - XST process in theProcesses pane.
Step 3: Launching the Schematic Wizard
Before you can view a schematic of your design, you need to select the elements you wantto use as a starting point for your design exploration.
You can start design exploration in the two different startup modes:
Start with the Explorer Wizard. In this mode, the Explorer Wizard is the initial screen,which allows you to select the elements that you want to see on the initial schematic.This mode will be used in the current lab.
Start with a schematic of the top-level block. In this mode, the Explorer Wizard isbypassed and an initial schematic is created with only the top-level block displayed.You can then use the logic expansion capabilities of the Schematic Viewer to startexpanding from the top-level block. You need to familiarize yourself with the basicSchematic Viewer operations and learn how you can manipulate hierarchical blocks
before using this mode. Please refer to Chapter 5, Lab 2: Working with HierarchicalNetlists for more information on this startup mode.
1. After synthesis is complete, start the Schematic Viewer by double-clicking the ViewTechnology Schematic process found in the Processes pane, or, alternatively, by
selecting Tools > Schematic Viewer > Technology View from the menu.2. Select the Start with the Explorer Wizard startup mode as shown in Figure 4-2.
X-RefTarget - Figure 4-1
Figure 4-1: Setting Keep Hierarchy Option
X-RefTarget - Figure 4-2
Figure 4-2: Set Viewer Startup Mode
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
15/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 15UG685 (v13.1) March 1, 2011
Lab
The Schematic Wizard enables you to select elements for exploration start up. SeeFigure 4-3.
The Available Elements window shows all the objects available in the design. They areclassified in the following categories: primitives, signals, top-level ports, and
hierarchical blocks.Note: Hierarchical blocks are visible in hierarchical netlists only. Please refer to Chapter 5, Lab
2: Working with Hierarchical Netlists for more information on working with hierarchical designs.
3. Select MACHINE/sreg_FSM_FFd1 and MACHINE/sreg_FSM_FFd1-In from theprimitives category of Available Elements and add them to the Selected Elements listusing the Add button. See Figure 4-4.
If the list of elements is too long, you can use the Filter to reduce the search scope. Asan example in our case, you can specify MACHINE/sreg_FSM_FFd1* as a searchcriteria as shown in Figure 4-5.
4. Press the Create Schematic button to create the schematic.
FigureX-Ref Target- Figure4-3
Figure 4-3: Schematic Wizard
X-RefTarget - Figure 4-4
Figure 4-4: Available Elements
X-RefTarget - Figure 4-5
Figure 4-5: Filtering
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
16/54
16 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 4: Lab 1: Basic Features
Step 4: Using the Schematic Viewer Interface
The Schematic Viewer graphical user interface (GUI) has the following components asshown in Figure 4-6.
1. The schematic window is the main window where you explore your design by addingor removing elements.
2. This toolbar contains the functions specific to the Schematic Viewer.3. This panel contains two types of information: objects visible on the schematic
(instances, pins and signals) and object properties. For example, you can select aBRAM primitive in your schematic and see all its properties, including BRAMinitialization values.
Note: You must select the View by Category tab to see this panel.
4. This toolbar contains functions shared by different graphical tools such as Zoom(shown inFigure 4-7)
Note: Menu control functions are accessible from specific or general toolbars and can be invoked
from the menus. For example, all zoom functions can be called from the View > Zoom menu.
We will mainly deal with the schematic window and toolbars in the labs.
X-RefTarget - Figure 4-6
Figure 4-6: Schematic Viewer
X-RefTarget - Figure 4-7
Figure 4-7: Zoom Toolbar
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
17/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 17UG685 (v13.1) March 1, 2011
Lab
Step 5: Zooming
Zooming is a basic function which is constantly used during design analysis. SchematicViewer has five zooming operations which can be accessed from the general toolbar showninFigure 4-7,or via the View > Zoom menu. However, the Schematic Viewer supportsspecific mouse stroke operations, allowing you to perform zoom operations much morequickly.
We suggest that you play with different zoom operations to familiarize yourself with them.They will be very helpful during the rest of the tutorial. Table 4-1 gives an overview ofZoom operations and their access methods:
Table 4-1: Zoom Functions
Step 6: Expanding the Schematic View
Although the initial schematic view is your starting point, you will typically want toexpand the view to include more objects of interest. There are several ways to expand theschematic.
First, you need to select an element to which you would like to add a new (not yet visible)element. You can select the following types of elements to be expanded: net, block, pin of a
block, and port.
To expand the view from the selected object, use the mouse right-click context menu andselect the elements you want to add, such as drivers, loads, driver and loads, or to extract,such as an input or output logic cone.
Zoom Operation Toolbar Menu Command Shortcut
Zoom In View > Zoom > In Do either of the following:
Press F8.
Click and drag down andto the left.
Zoom Out View > Zoom > Out Do either of the following:
Press F7.
Click and drag up and tothe right.
Zoom to Full View > Zoom > To Full View Do either of the following:
Press F6.
Click and drag up and tothe left.
Zoom to Box View > Zoom > To Box Starting from the upper leftcorner, click and drag to
draw a bounding boxaround the area.
Zoom to Selected View > Zoom > To Selected Select the objects you wantto center in the window, andpress F11.
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
18/54
18 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 4: Lab 1: Basic Features
On the current schematic, select different objects and observe the context menu. Althoughsimilar, the exact content depends on the object type chosen and where it is located in thedesign.
Example
1. Select the I2 pin of the lut3 primitive, and select Show Next Drive (Output) Pin fromthe context menu to see its driver. The following schematic appears, as shown inFigure 4-9.
2. The newly added lut4 element has a different color. The Schematic Viewerautomatically colors newly added objects so they can be easily localized on theschematic. You can enable or disable this feature using the Schematic Viewer toolbar(see Figure 4-10). In addition, you can modify new object colors using the Preferencemenu.
3. If you want to incrementally expand nets, block pins, or ports, you can just point themouse on the desired object and perform a left mouse double-click. This is a veryhandy shortcut over using the context menu.
X-RefTarget - Figure 4-8
Figure 4-8: Context Menu
X-RefTarget - Figure 4-9
Figure 4-9: Example Schematic
X-RefTarget - Figure 4-10
Figure 4-10: Coloring Icon
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
19/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 19UG685 (v13.1) March 1, 2011
Lab
Double-click the I0 pin oflut3 primitive, and the result appears as shown inFigure 4-11.
A newfdc
flip-flop was added to the schematic, but it is connected toI0
pin by a netin the form of a dashed line. The presence of a dashed line means that there are otherobjects connected to this net in your design, but they are not yet visible.
4. Continue to double-click the (dashed-line) net until it becomes a solid line, meaningthat all elements connected to the net are now visible as shown in Figure 4-12.
X-RefTarget - Figure 4-11
Figure 4-11: Incremental Expansion
X-RefTarget - Figure 4-12
Figure 4-12: Connecting the Net
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
20/54
20 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 4: Lab 1: Basic Features
Step 7: Using Start/End Signal Markers
Start/End signal markers allow you to easily identify source and destinations of a selectedsignal.
1. To use this feature you have to first enable it using a button in the Schematic Viewertoolbar. This button has two states. The green state indicates the feature is enabled, and
the red state indicates the feature is disabled. Push the button shown in Figure 4-13 toput it into the enabled state.
2. Select any signal on the schematic to see its source and destinations. See Figure 4-15.
Step 8: Navigating the History
The back button (or Ctrl+Z) provides the ability to return to previous schematic steps,and the forward button (or Ctrl+Y) provides the ability to move forward. For example,you can use the back to return to a previous schematic step so you can continue designexploration in a different direction. See Figure 4-16 and Figure 4-17.
X-RefTarget - Figure 4-13
Figure 4-13: Start Signal Marker
X-RefTarget - Figure 4-14
Figure 4-14: End Signal Marker
X-RefTarget - Figure 4-15
Figure 4-15: Sources and Destinations
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
21/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 21UG685 (v13.1) March 1, 2011
Lab
1. Push the back button several times to get the following view, shown in Figure 4-18.
2. Select the lut2 primitive, and select Show All Block Inputs/Outputs from theright-click context menu. See Figure 4-19.
X-RefTarget - Figure 4-16
Figure 4-16: Back Button
X-RefTarget - Figure 4-17
Figure 4-17: Forward Button
X-RefTarget - Figure 4-18
Figure 4-18: Previous View
X-RefTarget - Figure 4-19
Figure 4-19: Show All Block Inputs/Outputs
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
22/54
22 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 4: Lab 1: Basic Features
Step 9: Removing Elements from the Schematic
During schematic expansion you may find that some previously added elements are not ofinterest for your particular design analysis. These elements can be selected and removedfrom the schematic. You can use Delete keyboard key, the delete button from the toolbar asshown in Figure 4-20, or the Edit > Delete menu command.
To select a single element, just use a single click. To select multiple elements, you can selectthe first one and then incrementally add other ones by holding the Ctrl key and clickingthem. Or, you can use in-box selection by holding down the Ctrl key and dragging over theobjects you want to select.
1. Select the lut4 and lut3 primitives on the schematic.
2. Press the Delete keyboard key to remove them.
X-RefTarget - Figure 4-20
Figure 4-20: Delete
X-RefTarget - Figure 4-21
Figure 4-21: Deleting Items
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
23/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 23UG685 (v13.1) March 1, 2011
Conclusion
Conclusion
In this lab you learned the basic operations available in the Schematic Viewer:
Selecting Schematic Viewer startup mode
Using the Schematic Wizard to select elements to start a schematic investigation
Performing zoom operations based on mouse strokes Expanding schematics in different ways
Coloring new elements
Navigating history
Using Start/End signal markers
Removing elements from schematics
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
24/54
24 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 4: Lab 1: Basic Features
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
25/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 25UG685 (v13.1) March 1, 2011
Chapter 5
Lab 2: Working with HierarchicalNetlists
Objectives
The goal of this lab is to familiarize yourself with hierarchical netlists and to learn how youcan manipulate hierarchical blocks during design analysis. This includes:
Expanding external/internal hierarchical blocks Showing and hiding the entire contents of a hierarchical block
In addition, you will learn some special considerations you need to take into account whenworking with hierarchical blocks.
Finally, you will see how to start schematic exploration using the Starting schematicexploration with the top-level block startup mode introduced in Chapter 4, Lab 1: BasicFeatures.
Lab
Step 1: Creating the Lab ProjectCreate the stopwatchproject and set the Light Background Color Scheme for SchematicViewer as described in Chapter 3, Lab Preparation: Getting Started.
Step 2: Setting XST Options and Synthesizing the Design
1. In the Processes pane, right-click Synthesize - XST, and select Process Properties toopen the Synthesis Options dialog box.
2. Set the Keep Hierarchy option to Yesas shown in Figure 5-1.
3. Synthesize the design usingSynthesize - XSTfrom the Processes pane.
X-RefTarget - Figure 5-1
Figure 5-1: Keep Hierarchy
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
26/54
26 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 5: Lab 2: Working with Hierarchical Netlists
Step 3: Launching the Schematic Wizard
1. After synthesis is complete, start the Schematic Viewer by double-clicking the ViewTechnology Schematic process, and select the Start with the Explorer Wizard startupmode.
2. In the Schematic Wizard, all hierarchical blocks (including the top-level block) are
represented by the hierarchy symbol as shown in Figure 5-2. You can click the plussymbol in front of a hierarchical block to further expand its contents.
3. Select the hierarchical block named MACHINE, and move it to Selected Elementsusing the Add button, and then click Create Schematic. See Figure 5-3.
Step 4: Understanding Hierarchical Block Symbols
The created schematic appears as shown in Figure 5-4.
X-RefTarget - Figure 5-2
Figure 5-2: Hierarchy Symbol
X-RefTarget - Figure 5-3
Figure 5-3: Selecting Hierarchical Elements
X-RefTarget - Figure 5-4
Figure 5-4: Schematic Representation
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
27/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 27UG685 (v13.1) March 1, 2011
Lab
Two items distinguish a hierarchical block from a primitive:
All hierarchical blocks have triangles in four symbol corners as shown in Figure 5-4and Figure 5-5.
In addition to external pins, hierarchical blocks also have internal pins. Internal pinsallow you to explore the content of a hierarchical block while showing it on the samepage.
Expansion operations from the mouse right-click context menu (available for primitivepins and blocks) are available for internal and external pins and for the hierarchical blockitself. In addition, you can use the incremental expansion approach (mouse double-click)on internal and external pins.
Step 5: Expanding Hierarchical Blocks
1. Double-click the internal and external strstop pin of the MACHINE block to get the
following schematic (Figure 5-6).
2. Right-click the clken external pin of the MACHINEblock, and select the Show NextLoad (Input) Pin option.
The CNT60enable1 block appears as shown in Figure 5-7.
X-RefTarget - Figure 5-5
Figure 5-5: Triangle Symbol
X-RefTarget - Figure 5-6
Figure 5-6: Machine Block
X-RefTarget - Figure 5-7
Figure 5-7: Expanding Blocks
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
28/54
28 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 5: Lab 2: Working with Hierarchical Netlists
Step 6: Showing and Hiding Block Contents
You can view the entire contents of the hierarchical block by using the View HierarchicalBlock icon (Figure 5-8) from the schematic toolbar or by using the right-click context menu.To hide its contents, use the Hide Hierarchical Block icon (Figure 5-9).
1. Select the MACHINE block, and press the View Hierarchical Block icon to see its entirecontents as shown in Figure 5-10.
2. Select the MACHINE block, and press the Hide Hierarchical Block icon to hide its
entire contents as shown in Figure 5-11.
X-RefTarget - Figure 5-8
Figure 5-8: View Hierarchical Block Icon
X-RefTarget - Figure 5-9
Figure 5-9: Hide Hierarchical Block Icon
X-RefTarget - Figure 5-10
Figure 5-10: View Block Contents
X-RefTarget - Figure 5-11
Figure 5-11: Hide Block Contents
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
29/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 29UG685 (v13.1) March 1, 2011
Lab
Step 7: Using Bottom-Up Design Expansion
In the previous steps, you were mainly dealing with top-down schematic expansion. Nowwe will use the Schematic Viewer in a bottom-up mode.
1. Select the following two tabs (Figure 5-12), and close them using the close windowbutton (Figure 5-13).
2. Restart the Schematic Viewer by selecting the View Technology Schematic processand selecting the Start with the Explorer Wizard startup mode.
3. Select the sreg_FSM_FFd3-In_F from within the MACHINE hierarchical block, add it
to the Selected Elements, and then click Create Schematic. See Figure 5-14.
4. Select the sreg_FSM_FFd3-In_F, and select Show All Block Inputs from the right-click
context menu.5. Comparing the start-up schematic (Figure 5-15) with the one we obtained at Step 6:
Showing and Hiding Block Contents (Figure 5-16), you see that thesreg_FSM_FFd3-In_F primitive is not placed inside the MACHINE hierarchy block.In addition, MACHINE I/Os are represented as primary design pins.
X-RefTarget - Figure 5-12
Figure 5-12: Tabs to Close
X-RefTarget - Figure 5-13
Figure 5-13: Close Window Button
X-RefTarget - Figure 5-14
Figure 5-14: Restarting Schematic Viewer
X-RefTarget - Figure 5-15
Figure 5-15: Start-Up Schematic
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
30/54
30 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 5: Lab 2: Working with Hierarchical Netlists
6. Further incremental design exploration shows that schematic expansion stops atMACHINE hierarchy boundaries as shown in Figure 5-17.
To cross hierarchy in a bottom-up direction, use the Pop to the Calling Schematic icon(Figure 5-18):
7. Press the Pop to the Calling Schematic icon to cross hierarchy in a bottom-up directionas shown in Figure 5-19.
You can now continue further schematic exploration inside as well as outside theMACHINE block. Use the Pop to the Calling Schematic icon each time you need to go tothe upper hierarchy level.
X-RefTarget - Figure 5-16
Figure 5-16: Step Schematic
X-RefTarget - Figure 5-17
Figure 5-17: Hierarchical Boundaries
X-RefTarget - Figure 5-18
Figure 5-18: Pop to the Calling Schematic
X-RefTarget - Figure 5-19
Figure 5-19: Upper Hierarchical Level
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
31/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 31UG685 (v13.1) March 1, 2011
Lab
Step 8: Starting Schematic Exploration with the Top-Level Block
In Chapter 4, Lab 1: Basic Features, we introduced two modes to start schematicexploration:
Start with the Explorer Wizard
Start with a schematic of the top-level block
Until now, we exclusively used the first mode. Now we will learn how to use the secondmode.
1. Close all currently opened schematic tabs using the close window button.
2. Restart the Schematic Viewer by selecting the View Technology Schematic process.
3. Select the Start with a schematic of the top-level block startup mode, and press theOK button as shown in Figure 5-20:
The following startup schematic appears, as shown in Figure 5-21.
4. You can start design exploration by using all previously described schematicexpansion methods.
X-RefTarget - Figure 5-20
Figure 5-20: Startup Modes
X-RefTarget - Figure 5-21
Figure 5-21: Top-Level Block
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
32/54
32 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 5: Lab 2: Working with Hierarchical Netlists
Conclusion
In this lab, you learned how to use the Schematic Viewer on a design with hierarchicalblocks. This included learning how the blocks are represented in the Schematic Wizard andhow they can be expanded for design analysis.
In addition, you learned how to start schematic exploration using the Starting schematic
exploration with the top-level block startup mode introduced in Chapter 4, Lab 1: BasicFeatures.
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
33/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 33UG685 (v13.1) March 1, 2011
Chapter 6
Lab 3: Using Schematic Viewer forTiming Analysis
Objectives
Critical timing paths from the post-place and route timing report can be easily visualizedin the Schematic Viewer by cross probing from the Timing Report to the Schematic Viewer.The visualized critical path can be used as a starting point for further design exploration.
Moreover, it is easy to annotate the critical path with timing delays.
The goal of this lab is to demonstrate how to cross probe from the timing report to theSchematic Viewer and how to annotate the visualized timing path with reported delays.
Lab
Step 1: Creating the Lab Project
Create the stopwatch project and set the Light Background Color Scheme for SchematicViewer as described in the Chapter 3, Lab Preparation: Getting Started.
Step 2: Specifying Timing Constraints
To use the cross probing mechanism, add a new UCF file called stopwatch.ucf to theproject. Then, using Constraints Editor, specify a period constraint of 3.5 ns for the CLKsignal as shown in Figure 6-1.
Step 3: Specifying XST Options and Implementing the Design1. In the Processes pane, right-click Synthesize - XST, and select Process Properties to
open the Synthesis Options dialog box.
X-RefTarget - Figure 6-1
Figure 6-1: Clock Signal Definition
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
34/54
34 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 6: Lab 3: Using Schematic Viewer for Timing Analysis
2. Set the Keep Hierarchy option to Yesas shown in Figure 6-2.
3. Implement the design by double-clicking the Place & Route process in the Processespane, as shown in Figure 6-3.
4. Open Timing Analyzer for the post-place and route design.
Step 4: Viewing the Critical Path in the Schematic ViewerIn the timing Report Navigation section, select the critical path to access the detailed datapath information. The detailed path view allows you to cross probe (from the mouseright-click context menu) to different views, for example, FPGA Editor or a Datasheetview.
In this lab, we will focus on the links dedicated to Schematic Viewer only (Figure 6-4):
Selecting (1) Maximum Data Path allows you to visualize the entire data path.
Selecting (2) a net from thePhysical Resource column visualizes just a portion of adata path connected by a selected net.
X-RefTarget - Figure 6-2
Figure 6-2: Keep Hierarchy
X-RefTarget - Figure 6-3
Figure 6-3: Analyze Post-Place & Route Static Timing
X-RefTarget - Figure 6-4
Figure 6-4: Report Navigation
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
35/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 35UG685 (v13.1) March 1, 2011
Lab
1. Right-click Maximum Data Path, and select Show in Technology Viewer. This drawsthe selected data path in the Schematic Viewer as shown in Figure 6-5.
2. Observe the following: The start point of the critical path is marked with a start icon (Figure 6-6).
Slices are represented as hierarchical blocks. This means that you can explore theirinternal contents using internal pins as well as their external connections.
You can use all available features (described in earlier labs) to further explore theschematic.
Step 5: Annotating the Schematic with Timing DelaysDelays from detailed path report (Figure 6-7) can be directly visualized on a schematic.
1. Select the schematic sheet with the visualized data path.
2. Press the Annotation icon (Figure 6-8) from the Schematic Viewer toolbar.
X-RefTarget - Figure 6-5
Figure 6-5: Schematic Viewer
X-RefTarget - Figure 6-6
Figure 6-6: Start Icon
X-RefTarget - Figure 6-7
Figure 6-7: Path Report
X-RefTarget - Figure 6-8
Figure 6-8: Annotation Icon
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
36/54
36 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 6: Lab 3: Using Schematic Viewer for Timing Analysis
3. In the following dialog box, check the Delay Values option. Check thePin Namesoptionas shown in Figure 6-9.
A schematic view of the data path annotated with timing delays appears, as shown inFigure 6-10.
Conclusion
In this lab, you learned how the Schematic Viewer can be used to help visualize keyinformation during timing analysis. You were able to select critical timing paths from thetiming report, and graphically visualize them in the Schematic Viewer. Finally, youannotated the critical path in the Schematic Viewer with timing delays from the timingreport.
X-RefTarget - Figure 6-9
Figure 6-9: Select Block Pin Annotation
X-RefTarget - Figure 6-10
Figure 6-10: Data Path Annotated with Timing Delays
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
37/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 37UG685 (v13.1) March 1, 2011
Chapter 7
Lab 4: Simplifying Design Analysis
Objectives
Very often, during design exploration, you must deal with a significant number ofelements incrementally added to the schematic sheet. The sheer number of elements on theschematic can complicate the design analysis process.
The goal of this lab is to show you several methods to reduce design complexity and makethe analysis process more efficient. These methods include capabilities to:
Use Start/End Signal markers to quickly identify source and destinations of selectedsignals
Remove elements that are not of interest from the schematic sheet
Work with multiple schematics of the same netlist
Start a new schematic by selecting a subset of elements from the current design view
Use colors to highlight a specific design instance or a group of similar elements
The first two methods were already described in Chapter 4, Lab 1: Basic Features;therefore, the main focus is the last three features.
Lab
Step 1: Creating the Lab Project
Create the stopwatch project and set the Light Background Color Scheme for SchematicViewer as described in Chapter 3, Lab Preparation: Getting Started.
Step 2: Setting XST Options and Synthesizing the Design
1. In the Processes pane, right-click Synthesize - XST, and select Process Properties toopen the Synthesis Options dialog box.
2. Set the Keep Hierarchy option to Noas shown in Figure 7-1.X-RefTarget - Figure 7-1
Figure 7-1: Keep Hierarchy Option
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
38/54
38 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 7: Lab 4: Simplifying Design Analysis
3. Synthesize the design using the Synthesize - XST process.
Step 3: Working with Multiple Schematics of the Same Netlist
To demonstrate this feature, we will select a flip-flop and analyze its input and output logiccones. To simplify schematic complexity, you will place the input logic cone on one sheet
and the output logic cone on another sheet.1. After synthesis is complete, start the Schematic Viewer by launching the View
Technology Schematic process, and select the Start with the Explorer Wizard startupmode.
2. Select the MACHINE/sreg_FSM-FFd1 flip-flop for schematic startup, and then clickCreate Schematic.
3. Select the visualized flip-flop, and select Add Input Cone from the right-click menu.
The input appears as shown in Figure 7-2.
4. Click the Stopwatch.ngc tab to return to the Schematic Wizard. Select CreateSchematic to open a new schematic tab. Select the visualized flip-flop, and select Add
Output Cone from the right-click context menu.
X-RefTarget - Figure 7-2
Figure 7-2: Adding Input
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
39/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 39UG685 (v13.1) March 1, 2011
Lab
The output appears as shown in Figure 7-3.
Observe that you were able to reduce complexity of the design view by dividing it into twopieces. The capability to visualize multiple schematics can be used for many differentpurposes. One of them is discussed in Chapter 8, Lab 5: Comparing Two DesignImplementations, where you will see how to use this feature and to compare two differentnetlists of the same design.
Step 4: Starting a New Schematic by Selecting Elements from the Current
ViewSuppose during design debugging you are able to localize the source of a problem andwould like to focus just on that limited portion of the design. However, the drawnschematic might have many other elements that are not of direct interest and clutter theview.
Of course, as described earlier, you can try to select those objects you are not interested inand remove them. Another way to accomplish this is to return to the Schematic Wizard andstart a new schematic by selecting required elements. Depending on your particulardesign, these methods can be tedious and time-consuming.
Often, the best way to handle this is to directly select the required elements from thecurrent view and start a new schematic by pushing the Start Schematic icon (Figure 7-4)from the schematic toolbar.
Note: In this case, the Schematic Viewer does not create a new schematic sheet. It places the new
schematic on the same sheet.
X-RefTarget - Figure 7-3
Figure 7-3: Adding Output
X-RefTarget - Figure 7-4
Figure 7-4: Start Schematic Icon
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
40/54
40 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 7: Lab 4: Simplifying Design Analysis
1. Select the Stopwatch (Tech1) tab on the schematic.
2. On this sheet, select elements surrounded by the rectangle as shown in Figure 7-5.
3. Press the Start Schematic icon to start new schematic. The new schematic appears asshown in Figure 7-6. You can continue to further expand as described in earlier labsegments.
X-RefTarget - Figure 7-5
Figure 7-5: Stopwatch (Tech1) Schematic
X-RefTarget - Figure 7-6
Figure 7-6: New Schematic
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
41/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 41UG685 (v13.1) March 1, 2011
Lab
Step 5: Using Colors to Highlight a Group of Specific Elements
Select the Stopwatch (Tech2) tab on the schematic. The schematic appears as shown inFigure 7-7.
You can see many elements in this view. We will highlight all fd* type flip-flops using adifferent color as a means to simplify analysis.
1. Open the Preference dialog box by selecting Edit > Preferences.
2. Under the RTL/Technology Viewers category, select the User Color Rulessub-category as shown in Figure 7-8. This is where we can define specific color rules
for our needs.
3. Click the New button to open the Color Rules dialog box.
X-RefTarget - Figure 7-7
Figure 7-7: Stopwatch (Tech2)
X-RefTarget - Figure 7-8
Figure 7-8: Preferences Dialog Box
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
42/54
42 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 7: Lab 4: Simplifying Design Analysis
4. Specify fd_ff_colors as a name for the color rule. Then click theNew button to add a newrule.
5. Select Block Type for Property Name, then select Matches (Wildcard) as Operator,and finally type fd* as a value as shown in Figure 7-9, and press OK.
6. In the Light Background column, select Gray as the color (see Figure 7-10) for createdfd_ff_colors,and then pressOK.
X-RefTarget - Figure 7-9
Figure 7-9: Color Rules Dialog Box
X-RefTarget - Figure 7-10
Figure 7-10: Selecting Light Background Gray
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
43/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 43UG685 (v13.1) March 1, 2011
Conclusion
Now all flip-flops are colored differently (gray), which allows to you to easilyrecognize them on the schematic sheet as shown in Figure 7-11.
When you expand the schematic by adding new elements with particular colors defined inthe Color Rules (as we did for fd* flip-flops), specific colors may be not be visible, becausethey are overwritten by New Object Colors. To see specific colors, disable New ObjectsColoring using the Color icon.
Conclusion
In this lab you worked with several methods that allowed you to simplify the designanalysis process:
Creating multiple schematics of the same netlist
Starting a new schematic by selecting some elements from the current design view
Using Color Rules to color all fdtype flip-flops in a particular color to easily recognizethem on the schematic sheet
X-RefTarget - Figure 7-11
Figure 7-11: Colored Items
X-RefTarget - Figure 7-12
Figure 7-12: Color Icon
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
44/54
44 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 7: Lab 4: Simplifying Design Analysis
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
45/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 45UG685 (v13.1) March 1, 2011
Chapter 8
Lab 5: Comparing Two DesignImplementations
Objectives
To meet design requirements (such as speed, area, and power requirements), you mayneed to modify the original HDL sources or change synthesis and implementation options.Performing such changes sometimes requires you to understand the impact of these
changes in the final implementation.
The Schematic Viewer can help you in these situations, because it allows you to visualizeand compare different design netlists. Please note that this can be done for the XST RTLview and post-synthesis netlists. Post-map and post-place and route netlists are nothandled in this mode.
The goal of this lab is to show you how to create two design implementations with XST andvisualize them in the Schematic Viewer.
Lab
Step 1: Creating a Lab ProjectCreate the stopwatch project and set the Light Background Color Scheme for SchematicViewer as described in Chapter 3, Lab Preparation: Getting Started.
Step 2: Setting XST Options and Synthesizing the Design
1. In the Processes pane, right-click Synthesize - XST, and select Process Properties toopen the Synthesis Options dialog box.
2. Set the Keep Hierarchy option to Yesas shown in Figure 8-1.
3. Synthesize the design using the Synthesize - XST process.
4. Open a shell prompt, go to the project directory, and copy stopwatch.ngc file todefault_run.ngc.
X-RefTarget - Figure 8-1
Figure 8-1: Selecting Keep Hierarchy
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
46/54
46 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 8: Lab 5: Comparing Two Design Implementations
5. Open the Xilinx Specific Options dialog box, set the Register Balancing option to Yes(see Figure 8-2), and then re-run XST.
6. During the Synthesis process, with Register Balancing enabled, XST reports thatseveral FFs were moved forward:
Register(s) sreg_FSM_FFd3 sreg_FSM_FFd1 sreg_FSM_FFd2 has(ve) been
forward balanced into : sreg_FSM_Out11_FRB.
Take a look at how this is reflected in the Schematic View.
Step 3: Loading and Comparing Two Netlists
1. Open the Technology Viewer by using the View Technology Schematic process for thelatest generated netlist in the Start with the Explorer Wizard mode. Select thehierarchical block icon (see Figure 8-3) and create the schematic.
2. Open the previously storeddefault_run.ngc netlist by selecting File > Open File.Select the Start with the Explorer Wizard mode. Project Navigator loads the netlistand starts the Schematic Viewer Wizard. Using the wizard, select the MACHINEhierarchical block icon (Figure 8-3) and create the schematic.
3. Simultaneously view the two schematics sheets horizontally using the Dual View icon
(Figure 8-4) from the general toolbar. To expand the view, double-click the inside pinsof the RST and CLKEN pins. The display appears as shown in Figure 8-5.
X-RefTarget - Figure 8-2
Figure 8-2: Select Register Balancing
X-RefTarget - Figure 8-3
Figure 8-3: Hierarchical Block Icon
X-RefTarget - Figure 8-4
Figure 8-4: Dual View Icon
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
47/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 47UG685 (v13.1) March 1, 2011
Conclusion
4.
4. The bottom netlist was generated using the Register Balancing mechanism. Note howXST moved forward several FFs (creatingsreg_FSM_Out11_FRB) towards the outputofclkenpin to improve design performance.
Conclusion
In this lab you visualized and compared two netlists for the same design, where each wasgenerated using different XST options.
X-RefTarget - Figure 8-5
Figure 8-5: Dual View of Schematic
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
48/54
48 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 8: Lab 5: Comparing Two Design Implementations
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
49/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 49UG685 (v13.1) March 1, 2011
Chapter 9
Lab 6: Dealing with Large Designs
Objectives
The latest FPGA families from Xilinx allow you to implement ever larger and morecomplex designs, which can significantly complicate the analysis process. For the largest ofdesigns, having hundreds of thousands of design elements is entirely possible. Visualizingthe entire design on a single page is not practical.
This lab provides several tips on how you can deal with complex designs while keepinggood visibility and preserving good responsiveness using the Schematic Viewer.
Tip 1: Using Hierarchical Netlists
The presence of hierarchy in the post-synthesis netlist significantly reduces its complexityfor design analysis process as well as for the Schematic Viewer. Please note that the XSTRTL netlist is fully hierarchical.
Preserving Hierarchy
XST enables you to either fully or partially preserve design hierarchy. However,hierarchical preservation prevents logic optimization across hierarchical boundaries of
preserved blocks. As a consequence, this may negatively impact design performance.
Therefore, when using hierarchical preservation during synthesis, you have to ensure thatyou still meet design goals.
Rebuilding Hierarchy
Another way to generate a hierarchical netlist without a design performance impact is touse the Netlist Hierarchy option. If the value of this option is set to Rebuilt (as shown inFigure 9-1), XST automatically reconstructs the hierarchy of the final netlist even if it wasfully flattened during optimization.
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
50/54
50 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 9: Lab 6: Dealing with Large Designs
This feature is not set by default, because it may increase XST synthesis runtime and couldaffect the accuracy of area estimation reports.
We suggest you run tests of this option on your current design to ensure that synthesisruntime is acceptable.
Tip 2: Using Multiple Schematic SheetsEven if the hierarchy of your design is fully reconstructed, a single hierarchy level may stillcontain thousands of elements, complicating visualization and analysis.
If you need to deal with a significant number of elements, we suggest you take advantageof the capability to visualize the same netlist on multiple schematic sheets as shown inFigure 9-2. As you have seen in earlier labs, this process can be fully controlled andadapted for your specific needs.
Please refer to Chapter 7, Lab 4: Simplifying Design Analysis for more information.
Conclusion
In this lab you have seen an overview of methods you can use to handle large designs. Thefirst method consists of ways to generate hierarchical netlists. The second method suggestsusing multiple schematic sheets to reduce the number of elements you need to visualize atany one time.
X-RefTarget - Figure 9-1
Figure 9-1: Rebuilt Option
X-RefTarget - Figure 9-2
Figure 9-2: Multiple Schematic Sheets
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
51/54
-
7/28/2019 ug685
52/54
52 www.xilinx.com RTL and Technology Schematic Viewers TutorialUG685 (v13.1) March 1, 2011
Chapter 10: Lab 7: Using the Schematic Viewer as a Standalone Tool
3. Synthesize the design using the Synthesize - XST process.
4. After synthesis is complete, close the project by selecting File > Close Project. Notethat Project Navigator remains open.
Step 3: Opening the Post-Synthesis Netlist in Schematic Viewer
1. The post-synthesis XSTstopwatch.ngc netlist is located in the project directory (the.ngc file can be generated from command line mode). To open this netlist inSchematic Viewer, select File > Open File.
2. Select the Start with the Explorer Wizard startup mode. Project Navigator loads thenetlist and starts the Schematic Viewer Wizard as shown in Figure 10-2. Now you can
move on and explore your design.
ConclusionThis lab demonstrated how the Schematic Viewer can be used by command line users in astandalone mode. You can open any post-synthesis XST netlist in the Schematic Viewerwithout first opening a project.
X-RefTarget - Figure 10-1
Figure 10-1: Keep Hierarchy
X-RefTarget - Figure 10-2
Figure 10-2: Schematic Viewer Wizard
http://www.xilinx.com/http://www.xilinx.com/ -
7/28/2019 ug685
53/54
RTL and Technology Schematic Viewers Tutorial www.xilinx.com 53UG685 (v13.1) March 1, 2011
Appendix A
Additional Resources
Xilinx Resources
ISE Design Suite: Installation and Licensing Guide (UG798):http://www.xilinx.com/support/documentation/sw_manuals/xilinx13_1/iil.pdf
ISE Design Suite 13: Release Notes Guide (UG631):http://www.xilinx.com/support/documentation/sw_manuals/xilinx13_1/irn.pdf
Xilinx Documentation:http://www.xilinx.com/support/documentation
XilinxGlobal Glossary:http://www.xilinx.com/support/documentation/sw_manuals/glossary.pdf
Xilinx Support: http://www.xilinx.com/support
http://www.xilinx.com/http://www.xilinx.com/cgi-bin/SW_Docs_Redirect/sw_docs_redirect?ver=13.1&locale=en&topic=installhttp://www.xilinx.com/cgi-bin/SW_Docs_Redirect/sw_docs_redirect?ver=13.1&locale=en&topic=release+noteshttp://www.xilinx.com/support/documentationhttp://www.xilinx.com/support/documentation/sw_manuals/glossary.pdfhttp://www.xilinx.com/supporthttp://www.xilinx.com/supporthttp://www.xilinx.com/support/documentation/sw_manuals/glossary.pdfhttp://www.xilinx.com/support/documentationhttp://www.xilinx.com/cgi-bin/SW_Docs_Redirect/sw_docs_redirect?ver=13.1&locale=en&topic=release+noteshttp://www.xilinx.com/http://www.xilinx.com/cgi-bin/SW_Docs_Redirect/sw_docs_redirect?ver=13.1&locale=en&topic=install -
7/28/2019 ug685
54/54