Vivado Design Suite User Guide: Hierarchical Design (UG905)

2y ago
10 Views
3 Downloads
587.48 KB
24 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Konnor Frawley
Transcription

Vivado Design SuiteUser GuideHierarchical DesignUG905 (v2019.1) June 12, 2019UG905 (v2018.2) June 6, 2018

Revision History06/12/2019:Releasedwith Vivado DesignSuite for2019.1changes from 2018.2.The followingtable showsthe revisionhistorythiswithoutdocument.SectionRevision Summary06/06/2018 Version 2018.2General updatesEditorial updates only. No technical contentupdates.07/26/2017 Version 2017.2General updatesUpdated links to Xilinx training courses.04/05/2017 Version 2017.1General updatesAdded Important note to Introduction, specifyingthat this document only applies to the 7 seriesdevice family.Removed references to UltraScale devices fromKnown Issues.Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback2

Table of ContentsRevision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2Vivado Hierarchical DesignIntroduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4Design Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5Checkpoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Out-Of-Context Commands and Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9Top-Level Reuse Commands and Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18Tcl Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21Appendix A: Additional Resources and Legal NoticesXilinx Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Solution Centers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Documentation Navigator and Design Hubs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Training Resources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Please Read: Important Legal Notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback2222222324243

Vivado Hierarchical DesignIntroductionHierarchical Design (HD) flows enable you to partition a design into smaller, moremanageable modules to be processed independently. In the Vivado Design Suite, theseflows are based on the ability to implement a partitioned module out-of-context (OOC)from the rest of the design. The following is a list of the current methodologies in theVivado Design Suite. Module Analysis: This flow allows you to analyze the module independent of the restof the design to determine resource utilization and perform timing analysis. Nowrapper or dummy logic is required; just synthesize, optimize, place and route themodule on its own. Perform resource usage analysis, inspect timing reports, andexamine placement results just as you would for a full design.The Module Analysis flow implements a partitioned module or IP core out-of-context ofthe top level of the design. The module is implemented in a specific part/packagecombination, and with a fixed location in the device. I/O buffers, global clocks and otherchip-level resources are not inserted, but can be instantiated within the module. TheOOC implementation results can be saved as a design checkpoint (DCP) file. Module Reuse: This flow reuses placed and routed modules from the Module Analysisflow within a top-level design, locking down validated results. Users can iterate on aspecific section of a design, achieving timing closure and other specific goals, thenreuse those exact results while turning their attention to other parts of the design.Reuse of out-of-context modules requires knowledge of where the module pins andinterface logic have been placed so that the connecting logic can be floorplannedaccordingly. The preservation level of the imported OOC module can be selected,allowing for minor placement and routing changes if desired. This flow does not yetsupport moving or replicating the OOC implementation results to other areas of adevice, or to a different device.The Module Reuse flow has two variations, with the difference between the twovariations being the mechanism for establishing the module constraints. Contextconstraints (which define how a module connects in the full design) and timingconstraints are critical for successfully assembling the top level design with one or morereused modules.Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback4

Design ConsiderationsThe variations of Module Reuse are: Bottom-Up Reuse: Using this methodology, the OOC implementation is done withlittle to no knowledge of the top-level design in which it is reused, and the OOCresults drive the top-level implementation. This approach enables you to build averified module (such as a piece of IP) through place and route for reuse in one ormore top level designs. In this flow, the top-level design details are not known, soyou must supply the context constraints. These define the physical location for themodule, placement details for the module I/O, definitions of clock sources, timingrequirements for paths in and out of the module, and information about unusedI/O.Top-Down Reuse: Using this methodology, the top-level design and floorplancreate the OOC implementation constraints, and the top-level design drives theOOC implementation. This approach enables a Team Design methodology, enablingparallel synthesis and implementation of one or more modules within the design.Team members can implement their portions of a design independently, reusingtheir exact results in the assembled design. In this flow, the top-level design details(pinout, floorplan, and timing requirements) are known, and are used to guide theOOC implementation. This allows for OOC module pin constraints, top-levelinput/output timing requirements, and boundary optimization constraints to all becreated from the top-level design.All of these flows result in overall run time reduction by enabling the tools to implementonly one module of the design, instead of the whole design. This allows you to compilemany more turns per day, reducing time to design, verify, and meet timing on a per modulebasis. It also allows designers to actively work on a module even if the rest of the design isnot complete or available.IMPORTANT: This document applies only to 7 series devices, not UltraScale or UltraScale devices.For more information about applications of hierarchical design in UltraScale and UltraScale devices,see Vivado Design Suite User Guide: Partial Reconfiguration (UG909)[Ref 6].Design ConsiderationsHierarchical Design methodologies require some special considerations to achieve optimalresults. The following sections provide information to be considered when planning thearchitecture for, designing, and constraining a design for Vivado Hierarchical Design flows.Design for PerformanceImplementing modules out-of-context from the rest of the design prevents theoptimization across modules that might normally occur in a typical top-down flow. To limitthe loss of performance due to these restrictions, follow these guidelines:Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback5

Design Considerations Choose the module(s) to be implemented out-of-context carefully. Select modules thatare logically isolated from other logic in the design, and that can be physicallyconstrained to a contiguous area of the device. Build an effective hierarchy with the selected modules in mind. Structure the hierarchyfor independent implementation. Design hierarchy is an important consideration.Where a design is partitioned can have significant effects on the quality of the results,and in some cases hierarchy might need to be added or modified to group appropriatemodules together for an out-of-context implementation. Keep critical paths contained entirely within modules, either in submodules or in top. Register inputs and outputs between modules to maximize optimization within themodules, and to allow for maximum placer and router flexibility. Provide information on how the module will be used by defining context constraints.Context constraints define how the module will be connected in the top level, allowingfor additional optimization and accurate timing analysis. See Out-of-Context DesignConstraints, page 12 in the Commands and Constraints section of this document. Dedicated connections cannot always be handled properly across an OOC moduleboundary. All related design elements must be partitioned together. Examples of thisare I/O components with dedicated connection such as transceivers or IOLOGICcomponents. See Dedicated Connections Between Components in the DesignConsiderations section.Build an Effective FloorplanImplementing a module out-of-context has the following requirements. Each module implementation must have a Pblock constraint to control the placement.If a Pblock is not used, placement conflicts are likely during the assembly phase. Add the CONTAIN ROUTING property to all OOC Pblocks. Without this property,lock design cannot lock the routing of an imported module because it cannot beguaranteed that there are no routing conflicts. Pblock ranges for each OOC module must not overlap. If a top-level design is to importmultiple OOC module results, the modules must occupy separated regions in thedevice. Nested or child Pblocks are supported within the OOC implementation as long as thenested Pblock range is fully contained by the parent Pblock range, and the PARENTproperty is correctly set. See Table 5, Pblock Constraints. All clock buffers (both in top and the OOC module) must be locked. Buffers inside theOOC module must have LOC constraints, and the locations of buffers in the top levelshould be identified by HD.CLK SRC constraints. See Out-of-Context DesignConstraints, page 12, for a description of the HD.CLK SRC constraint.Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback6

Design Considerations If the OOC implementation results are to be reused, it is strongly recommended thatthe OOC module pins be locked down during the OOC implementation usingHD.PARTPIN RANGE or HD.PARTPIN LOCS constraints.The partition pins serve two main purposes in an OOC implementation. A partition pin creates a physical location to guide the placement of the associatedinterface logic. Timing constraints (set max delay) to and from the PartPins areneeded to affect placement.A partition pin gives the router a point to route the interface subnet. WithoutPartPins the interface nets cannot be routed, and it is possible to create an OOCresult where routes internal to the module block routing resources needed by theinterface nets during reuse. This prevents the preservation of all OOC nets withoutcausing an unroutable design.See Table 6, Context Constraints, for a description of the HD.PARTPIN RANGE andHD.PARTPIN LOCS constraints, and Table 4, Timing Constraints, for a description ofset max delay.Dedicated Connections Between ComponentsIt is recommended, and in some cases required, to keep components with dedicatedconnections in the same partition of the design. Having dedicated connections span theboundary of an OOC module can cause reduced performance and/or implementationerrors. The following is a list of components with dedicated connections. IOLOGIC and IOBUF – This includes connections from registers placed in the ILOGIC orOLOGIC, IDDR, ODDR, ISERDES, and OSERDES to I/O components including IBUF, OBUF,IBUFDS, OBUFDS, IOBUF, and IOBUFDS. GT transceiver components – GTX and GTP transceivers and their dedicated I/Oconnections. Bidirectional ports should be avoided if possible. They do not receive PP LOCS, so anyPP RANGE or PP LOCS constraints on bidirectional ports are automatically removed inOOC mode. If bidirectional ports are required, floorplan the associated interface logicto avoid timing issues when the OOC module is imported during the Reuse flow.Avoid placing any I/O components that connect to each other in different partitions of adesign.Use of lDELAYCTRL GroupsThe use of IDELAYCTRL groups within an OOC module is supported. The OOCimplementation inserts an IDELAYCTRL, and the OOC implementation results can beimported into Top. The following rules apply to the use of IDELAYCTRL groups:Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback7

Design Considerations Multiple OOC modules, each with its own IDELAYCTRL, cannot share the same clockregion. An OOC module with an IDELAYCTRL cannot be preserved 100%. This is a knownlimitation in this version of Vivado that will be addressed in a later release of theVivado Design Suite.I/O and Clock BuffersI/O and clock buffers are supported inside OOC modules. However, some specialconsiderations should be taken into account depending on their use. I/O Buffers – If an OOC port connects directly to an I/O buffer in the top level, it isrecommended to move this buffer inside the OOC module for better results. This is notpossible in all situations (for example, if an OOC port connects directly to an IBUF in thetop level, but that IBUF also drives other logic not in the OOC module), and in thosecases the logic inside the OOC module should be controlled with anHD.PARTPIN LOCS constraint. See the Out-Of-Context Commands and Constraintssection for more information. Regional Clock Buffers – If a BUFR or BUFHCE exists within the OOC module it shouldbe locked down to a specific location. The tools then appropriately place logic drivenby the buffer. However, if the BUFR or BUFHCE is in the top-level design, and the OOCPblock spans more clock regions than the buffer has access to, then more informationmust be supplied. A nested Pblock must be created with a range that is a subset of therange defined by the OOC Pblock. The nested Pblock would contain all of the cellsdriven by the BUFR or BUFHCE, and can be created with the following commands:create pblock -parent parent pblock name nested pblock name add cells to pblock nested pblock name -cells [get cells -of [get nets -segments-of [get ports [list clock port clock port ]]] -filter "(IS PRIMITIVE)"]resize pblock nested pblock name -add {SLICE Xx1Yy1:SLICE Xx2Yy2}This should be done for each module port that is driven by a BUFR or BUFHCE in thetop-level. If multiple OOC clock ports have loads in the same clock regions, allapplicable ports can be listed in the add cells to pblock command above. Therange for the nested Pblock must correspond to the BUFR or BUFHCE location in thetop-level implementation. A mismatch between buffer location at the top level and thecorresponding Pblock range for the OOC module can lead to an unroutable conditionduring top-level implementation. Global Clock Buffers – Global buffers are supported inside an OOC module. When aBUFG is inside an OOC instance the clock net is routed on global routing in the OOCimplementation. If an OOC port is driven by a clock net in the top level, the clock net isnot routed during the OOC implementation, and timing estimations are used todetermine clock delays/skew. The HD.CLK SRC constraint should be used to helpimprove timing estimations in this case. This constraint allows the tools to know thedriver location and type (for example, BUFG vs. BUFR), and to improve timingestimation by calculating clock pessimism removal (CPR). For a description of CPR, seeHierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback8

Checkpointsthe Vivado Design Suite User Guide: Design Analysis and Closure Techniques (UG906)[Ref 1].Design Rules for Out-of-Context DesignsTable 1 shows the Design Rule Checks (DRCs) that are performed while implementing anOOC design, and the design rules for which the DRCs test.Table 1:Design Rules for Hierarchical DesignsDRC #SeverityDesign RuleHDOOC-1ErrorReconfigurable modules must have a Pblock defined.HDOOC-2ErrorHD modules must have certain Pblock properties defined.HDOOC-3ErrorBitstream generation not allowed for OOC modules.HDOOC-4ErrorNo Pblock range or LOC for cell.CheckpointsTo export and import results of a module implementation, Hierarchical Design flows usecheckpoints. Checkpoints archive the logical design, physical design, and moduleconstraints and are the only file needed to fully restore a design.A saved checkpoint can only be read into the same part/package/speed grade combinationin which it was originally generated.RECOMMENDED: The -strict option to the read checkpoint command is recommended for HDflows to make sure that all data read in matches the module interface exactly, ensuring a robustimplementation. For more information on Checkpoints, refer to this link in the Vivado Design SuiteUser Guide: Implementation (UG904) [Ref 2].Out-Of-Context Commands and ConstraintsThe HD flows are currently only supported through the Non-Project Mode batch/Tclinterface (no Vivado IDE (GUI) or Project Mode based commands). An example design andrelated scripts are available upon request. Please contact Xilinx support for information onaccessing this document.The following sections describe a few specialized out-of-context commands and constraintsused by the HD flows. Examples of how to use these commands to run an HD flow are given.For more information on individual commands, refer to the Vivado Design Suite TclCommand Reference Guide (UG835) [Ref 3].Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback9

Out-Of-Context Commands and ConstraintsOut-of-Context CommandsSynthesizing or implementing a module out of context requires that the tools be run in an"out-of-context" mode. Other than that, the commands for running an out-of-context floware the same as for any other flow. There are currently no unsupported commands forsynthesis, optimization, or implementation.SynthesisThere are several synthesis tools and methods supported for this flow. The following is a listof supported tools. XST: Bottom-up synthesis or Incremental synthesis using partitions (PXML file). This issupported for 7 series only.Note: XST is not recommended for new Vivado designs or for designs targeted to architecturesnewer than 7 series. Synplify: Bottom-up synthesis or Compile Points (using Hierarchical Projects togenerate individual netlists) Vivado synthesis: Out-of-Context (OOC) synthesis only.IMPORTANT: OOC synthesis (also known as bottom-up synthesis) refers to a synthesis flow in whicheach module has its own synthesis run. This generally involves turning off automatic I/O bufferinsertion for the lower level modules.This document only covers the Vivado synthesis flow. For information on the Synplify flow,refer to the Synopsys Synplify documentation.Vivado synthesis for this flow is run in batch mode using the synth design command:synth design -mode out of context -flatten hierarchy rebuilt -top top module name -part part Table 2:synth design OptionsCommand OptionDescription-mode out of contextPrevents I/O insertion for synthesis and downstream tools. The mode issaved in checkpoints if write checkpoint is issued.-flatten hierarchy rebuiltThere are several values allowed for -flatten hierarchy, butrebuilt is the recommended setting for HD flows.-topThis is the module/entity name of the module being synthesized. Thisswitch can be omitted if set property top top module name [current fileset] is issued prior to synth design.-partThis is the Xilinx part being targeted (e.g., xc7k325tffg900-3)The synth design command synthesizes the design and stores the results in memory. Towrite the results out to a file, a write checkpoint command must be issued.Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback10

Out-Of-Context Commands and Constraintswrite checkpoint file name .dcpIssuing the above command saves the synthesis results into a DCP file and allows you toclose the in-memory design. You can reload the synthesis results at a later time using theopen checkpoint command. This allows you to run one or more implementation runs onthe synthesized results without having to rerun synthesis each time.Timing and physical constraints can be passed to OOC synthesis. The physical constraintsare ignored by synthesis and are passed on to the final DCP. For timing constraints, it isimportant to make sure that any module level context constraints are properly marked asUSED IN out of context. See Constraints Designated for OOC Use Only, page 13, formore information on specifying that a constraints is for OOC use only.ImplementationThis section describes the necessary commands to implement a module instance in anout-of-context flow. Note that if this module has multiple instances instantiated in a toplevel design and the Assembly Flow is going to be used, multiple OOC implementationseach with unique Pblock constraints are required to generate the necessary implementationresults.If synth design -mode out of context was previously run, and the results are still inmemory, then implementation can be run directly. For example, the followingimplementation commands can be used. read xdc – Use this command if all constraints are not already loaded. It might benecessary to apply certain module-level XDC constraints to the OOC implementationonly. See Constraints Designated for OOC Use Only, page 13, for a description of theOOC-only constraints). set property HD.PARTITION 1 [current design] – This identifies the cell asbeing implemented OOC, and enables DRCs and the required software features duringthe reuse flows. It is not required for the OOC implementation, but setting it is a goodway to ensure the final DCP is imported correctly during the reuse flow. See Top-LevelReuse Commands, page 18, for more information on what HD.PARTITION does in thereuse flow. opt design (optional, but recommended) place design phys opt design (optional, but recommended) route designIf there is currently no design in memory, then a design must be loaded. This can be donein one of several ways. Method 1: Read Netlist DesignHierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback11

Out-Of-Context Commands and Constraintsread edif file name .edf/edn/ngclink design -mode out of context -top top module name -part part Table 3:link design OptionsCommand OptionDescription-mode out of contextLoad a netlist design in an out-of-context mode. Enables special checkingand optimization for downstream tools.-partThis is the Xilinx part being targeted (e.g., xc7k325tffg900-3).-topThis is the module/entity name of the module being implemented. Thisswitch can be omitted if set property top top module name [current fileset] is issued prior to link design.If the -mode out of context option is not issued for link design after readingthe design netlist(s), subsequent implementation steps treat the design as a full designand trim any sourceless or loadless signals. The OOC mode must be defined duringeither synth design or link design to run the Module Analysis flow. Method 2: Open Checkpointopen checkpoint file name .dcpIMPORTANT: The open checkpoint command does not have a -mode out of context option.The mode is saved as part of the checkpoint, therefore it is critical to make sure that the tools are in thecorrect mode when writing out a checkpoint. Method 3: Add Various File TypesThe add files command can be used in conjunction with link design to load inmodules that include multiple files and various file types.add files file name .dcpadd files file name .edfadd files file name .xdclink design -mode out of context -top top module name -part part Out-of-Context Design ConstraintsTo process a design using the Module Analysis flow, none of the following constraints areabsolutely required. For more accurate timing analysis, use of HD.CLK SRC andcreate clock are strongly encouraged. All other constraints are optional.When using a Module Reuse flow, these context constraints become much more important.For successful assembly of designs with OOC modules, these constraints ensure that thephysical resources are appropriately allocated, clock interactions are understood, andinformation about the module interfaces are accurately set. Without establishing theconstraints for each module, assembly become more difficult.Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback12

Out-Of-Context Commands and ConstraintsConstraints Designated for OOC Use OnlySome constraints that are necessary for the OOC implementation can cause undesirableresults if imported into the top-level design. To prevent this behavior these constraintsneed to be specified in separated XDC file(s), and designated for OOC use only. There aretwo ways to specify that the XDC file should be used for the OOC flow only. Specifying thata particular XDC file’s constraints should only be used in the OOC flow adds a marker tothem. This makes the tools ignore the constraints when reading them into a non-OOCdesign. Method 1: Using read xdcWhen reading in an XDC file with the read xdc command, the -modeout of context switch can be used.read xdc -mode out of context file .xdcTIP: The read xdc command can be issued prior to or after a design has been loaded withlink design. Method 2: USED IN propertyIf files are being added using the add files command, then a property can be set ona file to specify that it is to be used in OOC only. It is required to specify all flows inwhich the XDC file is to be used in (that is, synthesis and/or implementation).add files file .xdcset property USED IN {synthesis implementation out of context} [get files file ]IMPORTANT: The add files command must be issued prior to a design being loaded withlink design. Using add files on a design that is already loaded has no effect.Constraint SyntaxThe following tables list timing, placement, and context constraints that should be used foran out-of-context implementation. Many of these constraints are used for any design flow,and more information can be found in the Vivado Design Suite User Guide: Using Constraints(UG903) [Ref 4].IMPORTANT: All of the constraints listed in this section can be generated automatically for you throughthe Top-Down Reuse flow. The scripts and methodology to generate these constraints are described inthe Vivado Design Suite Tutorial: Hierarchical Design (UG946). Please contact Xilinx support forinformation on accessing this document.Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback13

Out-Of-Context Commands and ConstraintsTable 4:Timing ConstraintsConstraint NameDescriptionset max delayDefines input and output delays to budget the time allowed for theOOC module. Helps control placement in the OOC implementationand ease timing closure at the top level.create clockDefines clocks on the OOC module ports. A create clockconstraint should exist for every clock port, whether the clock bufferis instantiated in the top level or the OOC module.set clock uncertaintyDefines clock uncertainty for a clock that is an input to an OOCmodule. This constraint should be defined for all clocks of an OOCmodule to ensure accurate timing analysis. Failure to do so couldresult in failing paths when a module is imported.set system jitterDefines system jitter value. This constraint should be set to zero whendefining user clock uncertainty (set clock uncertainty) basedon the top-level design. Otherwise, system jitter is factored into theuncertainty calculations for the OOC implementation, making the finalvalue different from the user-defined value.set clock latencyDefines latency for a clock that is an input to an OOC module. Thisconstraint is needed to correctly model clock delay when the entireclock path is not known.set clock groupsDefines asynchronous clocks (-asynchronous), or clocks driven bythe same global buffer (-physically exclusive).Timing Constraint Examples: create clock -period 8.000 -name clk -waveform {0.000 4.000}[get ports clk] set max delay -from [get ports ports ] -to [get pins synchronous pin ] -datapath only delay set max delay -from [get pins synchronous pin ] -to [get ports ports ] -datapath only delay set system jitter 0.0 set clock latency -source -min 0.10 set clock latency -source -max 0.20 set clock groups -physically exclusive -group [clk1] -group[clk2] set clock groups -asynchronous -group [clk1] -group [clk2]These timing constraints are applied to the OOC module itself. The OOC implementationshould constrain all timing into, out of, and internal to the instance. This includes specialcase paths such as false paths and multicycle paths.Hierarchical Design(v2018.2)JuneJune12,6, 2018UG905 (v2019.1)2019www.xilinx.comSend Feedback14

Out-Of-Context Commands and ConstraintsTable 5:Pblock ConstraintsCommand/Property NameDescriptioncreate pblockCommand that creates the initial Pblock for each OOC instance.resize pblockCommand that defines the site types (SLICE, RAMB36, et

07/26/2017 Version 2017.2 General updates Updated links to Xilinx training courses. 04/05/2017 Version 2017.1 General updates Added Important note to Introduction, specifying . Module Reuse: This flow reuses placed and routed modules from the Module Analysis flow within a top-level desi

Related Documents:

For more information about the Vivado IDE and the Vivado Design Suite flow, see: Vivado Design Suite User Guide: Using the Vivado IDE (UG893) [Ref 4] Vivado Design Suite User Guide: Design Flows Overview (UG892) [Ref 12] Simulation Flow Simulation can be applied at several points in the design flow. It is one of the first steps after .

For more information about the Vivado IDE and the Vivado Design Suite flow, see: Vivado Design Suite User Guide: Using the Vivado IDE (UG893) [Ref 3] Vivado Design Suite User Guide: Design Flows Overview (UG892) [Ref 11] Simulation Flow Simulation can be applied at several points in the design flow. It is one of the first steps after .

Vivado Design Suite 2016.2 Release Notes www.xilinx.com 5 UG973 (v2016.2) June 8, 2016 Chapter 1 Release Notes 2016.2 What's New Vivado Design Suite 2016.2 and updated UltraFast Design Methodology Guide for the Vivado Design Suite (UG949) [Ref 1] Available Now. Get Vivado Design Suite 2016.2 with support for Virtex UltraScale and Defense-Grade .

2 Vivado Partial Reconfiguration - Documentation UG909: Vivado Design Suite User Guide - Partial Reconfiguration. UG947: Vivado Design Suite Tutorial - Partial Reconfiguration. You can follow this for the Xilinx-provided ug947-vivado-partial-reconfiguration-tutorial.zip file (this is a Verilog design for

more information on the different design flow modes, see this link in the Vivado Design Suite User Guide: Design Flows Overview (UG892). Note: Installation, licensing, and release information is available in the Vivado Design Suite User Guide: Release Notes, Installation, and Licensing (UG973). W o r k i n g w i t h t h e V i v a d o I D E

those objects, in the Xilinx Vivado Design Suite. It consists of the following: Chapter 1, Vivado Design Suite First Class Objects: Describes the various design and device objects used by the Vivado Design Suite to model the FPGA design database. Presents the objects sorted according to specific categories, with links to detailed

See the Vivado Design Suite User Guide: Release Notes, Installation, and Licensing (UG973) for a complete list and description of the system and software requirements. Configuring MATLAB to the Vivado Design Suite Before you begin, you should verify that MATLAB is configured to the Vivado Design Suite. Do the following: 1. Configure MATLAB.

Guide (UG911). For more information about XDC, see the Vivado Design Suite User Guide: Using Constraints (UG903). CAUTION! Do not migrate from ISE Design Suite to Vivado Design Suite while in the middle of an in-progress ISE Design Suite project, because design constraints and scripts are not compatible between these environments.