版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Lauren
GaoVivado
ImplementationNewFeature:
DirectiveImplementation
StrategyRunImplementationinProject-ModeandNon-Project
ModeAgendaNewFeature:
DirectiveImplementation
StrategyRunImplementationinProject-ModeandNon-Project
ModeAgendaVivadoImplementation
Sub-processesopt_designpower_opt_designplace_designphys_opt_designroute_designwrite_bitstreamLogicOptimization(Optional)Power
OptimizationPlacement(Optional)Physical
SynthesisRoutingGeneratea
BitstreamNewFeature:
DirectivedirectivedirectiveCommandoptionto“direct”behaviortowrdalternate
goalDifferent
algorithmsDifferentobjectivesImplementationcommandswith
–directiveopt_design,place_design,
phys_opt_design,route_designAlternativeflowsto
useWhenthedefaultflowdoesnotmeetdesign
goalsWhentoolruntimeincreasecanbe
accommodatedUsesdifferent
algorithmsNotrandomseedslikeISEcost
tablesMoreconsistentandpredictable
behaviorHelp-opt_designtofindallthe
directives-directive
ExploreAllcommandshave–directive
ExploreISE
MAPISE
P&RISE
–effort_levelVivado
-directive-effort_levelhigh-directive
Explore-effort_levelhigh
-area_mode-directiveExploreArea(opt_design
only)-directive:Replacementfor
–effort_levelAutomaticmappingforallimplementation
commandsISE–effort_levelVivado-directive-effort_levelhigh-effort_level
medium-effort_levellow-effort_levelquick-directive
Explore-directive
Default-directiveRumtimeOptimized-directive
QuickNewFeature:
DirectiveImplementation
StrategyRunImplementationinProject-ModeandNon-Project
ModeAgendaImplementation
StrategyDifferentdirectivesTools→options→StrategiesStrategiesaregroupedby
category–Performance,Area,Power,Flow,
CongestionStrategies
ExampleDesignflowPerformance_ExploreArea_ExplorePower_DefaultOptFlow_RunPhysOptCongestion_SpreadLogic_highopt_design√√√√√-directiveExploreExploreAreaDefaultDefaultDefaultpower_opt_design××√××place_design√√√√√-directiveExploreDefaultDefaultDefaultSpreadLogic_highpower_opt_design(post-place)×××××phys_opt_design√×√√√-directiveExploreDefaultExploreAggressiveFanoutOptroute_design√√√√MoreGlobalIterations-directiveExploreDefaultDefaultDefaultDirectives->commandlevel
behaviorStrategies->implementationrun-levelbehavior,acombinationofdirectivesDifferentstrategymay
haveDifferent
directivesVivadoimplementationdefault:-directiveareall
defaultPerformance_Explore:-directiveareall
ExploreDifferentdesign
flowsVivadoimplementationdefault:opt_design,place_design,
route_designPerformance_Explore:opt_design,place_design,phys_opt_design,
route_designEachstrategyhasdifferentdirectivesfortheimplcommandstepsYoucancustomizeyourown
strategyUserdefined
strategiesThePerformance_Explorestrategyisagoodfirstchoice,becauseitcoversalltypesofdesignsThePerformancestrategiesaimtoimprovedesignperformanceatthe
expenseof
runtimeStrategiescontainingthetermsSLLorSLRareforusewithSSIdevicesonlyImplementation
StrategyTcl
APITcl
APITcl
APIAllimplementationsub-processeshaveTcl
APItcl.pre:commandsshouldbeexecutedbeforethis
processtcl.post:commandsshouldbeexecutedafterthis
processExampleopt_design.tclNewFeature:
DirectiveImplementation
StrategyRunImplementationinProject-ModeandNon-Project
ModeAgendaInProjectMode,theVivadoIDEallowsyou
toDefinemultipleimplementation
runsRunmultiplestrategiesonasingle
designCustomizeimplementationstrategiestomeetspecificdesign
requirementsSavecustomizedimplementationstrategiestouseinother
designsNon-ProjectModedoesnotsupportpredefinedimplementationrunsand
strategiesRunImplementationinProjectModewith
GUIlaunch_runs[-jobsarg][-scripts_only][-all_placement][-dirarg][-to_steparg][-next_step]
[-hostargs][-remote_cmd
arg][-email_toargs][-email_all][-pre_launch_script
arg][-post_launch_scriptarg][-force][-quiet][-verbose]runs...to_stepopt_design,power_opt_design,place_design,
power_opt_design(post_place)Phys_opt_design,route_design,
write_bitstream-to_step
place_design-to_step"power_opt_design
(Post-Place)"RunImplementationinProjectModewith
Tcllaunch_runsimpl_1launch_runsimpl_2-to_step
place_designcd
{F:\Vivado\Tutorial\logic_sim\XSim_Tutorial.runs\impl_2}open_checkpointsinegen_demo_placed.dcplaunch_runsimpl_2
-next_stepRunImplementationinNon-Project
ModeNon-projectbaseddesignsmustbemanuallymovedthrougheachstepoftheimplementationprocessusingTcl
commandsplace_design[-directivearg][-no_timing_driven][-unplace][-cellsargs][-post_place_opt][-quiet]
[-verbose]-post_place_optPotentiallyimprovecriticalpathtimingattheexpenseofadditional
runtimeThisoptimizationcanberunatanystageafterplacement,andcanbe
particularlyeffectiveonarouted
designTheoptimizationexaminestheworstcasetimingpathsandtriestoimproveplacementtoreduce
delayTheoptimizationisperformedonafullyplaceddesignwithtiming
violationsThe-directiveoptioncontrolstheoverallplacementstrategy,andisnotcompatiblewithanyspecificplace_design
options.place_designplace_designphys_opt_designroute_designplace_design-post_place_optroute_designroute_design[-unroute][-re_entrantarg][-netsargs][-physical_nets][-pinarg][-directivearg][-no_timing_driven][-preserve]
[-delay][-free_resource_mode]-max_delayarg-min_delayarg[-quiet]
[-verbose]-preservePreserveexisting
routing-delayUsewith-netsor-pinoptiontorouteindelaydriven
mode-max_delayUsewith-pinoptiontospecifythemax_delayconstraintonthe
pin-min_delayUsewith-pinoptiontospecifythemax_delayconstraintonthe
pinroute_designroute_design-delay-nets$myCriticalNetsroute_design-preserve-directiveRuntimeOptimizedroute_design-unroutephys_opt_design[-fanout_opt][-placement_opt]
[-rewire][-critical_cell_opt][-dsp_register_opt]
[-bram_register_opt][-bram_enable_opt][-shift_register_opt][-hold_fix]
[-retime][-force_replication_on_netsargs][-directivearg]
[-critical_pin_opt][-quiet]
[-verbose]Commandoptionslimittheoptimizationscopetoonlythespecifiedoptions–Oneoptionper
optimizationphys_opt_designTiming-drivenoptimizationsincludedby
defaultFanout:replicatedriversofhighfanout
netsPlacement:move
cellsRewiring:restructurelogic
conesCriticalcells:replicatecriticalpath
cellsDSPregisters:moveregistersto/from
DSPBRAMregisters:moveregistersto/from
BRAMShiftregisters:moveregistersfrom
SRLsCriticalpins:swapphysicalLUTinput
pinsVeryhighfanout:replicatedriversofvery-highfanout
netsBRAMenable:improvepower-optimizedBRAM
enablesPage
20WhatOptimizationsare
Performed?Optional
optimizationsForcednetreplication:replicateregardlessoftiming
slackRegisterretiming:balanceregistersacrosscombinational
delaysHold-fix:insertdatapath
delayPage
21WhatOptimizationsare
Performed?Differentstrategymayhavedifferentdesignflowswith
differentdirectivesDirectiveisincompatiblewithotheroptionsinopt_design,place_design,phys_opt_designand
route_designDirectivesandstrategiesprovidealternateflowstotrywhenthe
tooldefaultsdon’tmeettimingondifficult
designsSomeTclcommandcanhelptomeet
timingplace_design
–post_place_optphys_opt_designroute_design–delay
–netsPerformance_Exploreishelpfulfortiming
closureSummaryLauren
GaoIncremental
ImplementationBasicIncrementalCompile
FlowRunningIncrementalCompileinProjectModeandNon-ProjectModeAdvancedAnalysisforIncremental
CompileDemoAgendaIncrementalCompile
FlowRTL
ChangeNetlist
ChangeRevisedRTLSynthesisRevisedNetlistIncrementalPlace&
RouteRevisedCheckpointReferenceRTLSynthesisReferenceNetlistNormalPlace&
RouteReferenceCheckpointIncrementalRunWhenLess
than
5%changein
cells➔
3x
speedup
in
P&R
runtimeWhySave
runtimeMorepredictableresultsFastertiming
closureWhenandWhytoUseIncremental
FlowReuseexistingdesigndataaftersmallRTL
changesDonotusetheincrementalflowaftermajordesign
changesReference
designAnearlieriterationorvariationofthecurrent
designIthasbeensynthesized,placedand
routedWhatweuseasreferenceis
<_routed.dcp>Current
designThecurrentdesignincorporatessmalldesignchangesorvariationsfromthereferencedesignThesechangesorvariationscan
includeRTL
changesNetlist
changesBothRTLchangesandnetlist
changesReferenceDesign&Current
DesignRunningIncrementalPlaceand
Route??matchPlace:reusematching
cellsRoute:reusematching
netsReference
DesigncellnetCurrent
Designcellnetthefollowingcanhavealargeimpactonincrementalplacement
androuting
runtimeImpactofsmallRTLchanges:thefollowingcanleadtoverylargechangesinthesynthesized
netlistIncreasingthesizeofaninferred
memoryWideninganinternal
busChangingdatatypesfromunsignedto
signedImpactofchangingconstraintsandsynthesis
optionsChangingtimingconstraintsand
resynthesizingPreservingordissolvinglogical
hierarchyEnablingregister
re-timingEffectivelyReusingPlacementand
RoutingOriginalRunandNewRunReferenceDesignCurrentDesignsynth_1impl_1synth_2impl_2CreateNew
Runsynth_1impl_1impl_2RTL
ChangesNetlist
ChangesCreateNew
RunBothrunshavethesame
strategy-directivecannotbeusedinincremental
modephys_opt_designdoesnothaveanincremental
modeImplementationsettings→incremental
compileSelecttherunandapplyareference
checkpointAfterselectincrementalcompile,itcanbeshowninrun
propertyUsingIncrementalCompileinProject
Modeset_propertyINCREMENTAL_CHECKPOINTreference.dcp[get_runs
impl_2]UsingIncrementalCompileinNon-Project
Mode#readrevised
designlink_design-part$my_part-top$revised_topopt_designread_checkpoint-incremental
$ref.dcpplace_design#ifruninoriginal,reference
runphys_opt_designroute_designreport_incremental_reuse-file
routed_reuse.rptreport_timing_summary-label_reused-max_paths10
\–filerouted_ts.rptIncrementalReuse
ReportPage
12report_timing
-no_reused_labelAdvanced
Analysis默认情况下会标记复用信息如果不希望标记复用信息,使用此命令Advanced
Analysisget_propertyINCREMENTAL_CHECKPOINT[current_run]reset_propertysetmyreused_cells[get_cells-hier-filter"IS_REUSED==
TRUE"]report_property[lindex$myreused_cells0]setmyreused_nets[get_nets-hier-filter"IS_REUSED==TRUE"]report_property[lindex$myreused_nets
0]setmyreused_pins[get_pins-hier-filter"IS_REUSED==
TRUE"]report_property[lindex$myreused_pins
0]setmyreused_ports[get_ports-hier-filter"IS_REUSED==
TRUE"]report_property[lindex$myreused_ports0]DemoLauren
GaoFiveMostCommonly
UsedTclCommandsin
VivadoBasicconceptofobjectsin
VivadoHowtousefivemostimportantTclcommandsin
design–get_cells,get_nets,get_ports,get_pins,
get_clocksAgendaObjectsinVivado:cell,port,netand
pincellcellcellcellnetpinportpackage
pinIO
bankcellBasicCommands
get_*Command-hierarchical-regexp-nocase-filter-of_objectsget_cells√√√√√get_nets√√√√√get_pins√√√√√get_portsX√√√√get_clocksX√√√√-hierarchical→
-hier-of_objects→
-of-filter:usingpropertiesto
filter1.)3.)Booleantype
propertiesString
Comparisonequal==not
equal!=match=~not
match!~2.)Multiplefilter
expressionsAND(&&),OR
(||)① get_ports-filter{DIRECTION==IN&&NAME!~
"*RESET*"}② -filter{IS_PRIMITIVE&&
!IS_LOC_FIXED}③ get_cells-hier{*State*
*reg*}④ get_cells→get_cells
*-of_objectscellpinnetpincellclocknetTPnetcellpinportclockportcellnetclockTPclockpinnetportIOBankPPinPPinIOBankportportsiteTP:timingpathPpin:Package
pinObjectRelationshipsinVivadoDesign
SuitecellpinportclocknetExample:get_cells-of[get_nets-of[get_pins-of[get_cellswbDataForInput_IBUF_inst]-filter{DIRECTION==OUT}]]wbDataForInputReg_regvalidForEgressFifo_reg[0]_i_1
wbDataForInput_IBUF_instIO
bankPackage
Pin-of_objects
ExamplesGetthepinsofthisblue
cellget_pins-of[get_cellsdemuxState_reg]demuxState_reg/CdemuxState_reg/CEdemuxState_reg/RSTdemuxState_reg/Q
demuxState_reg/DGetcellbythegivenpin
Dget_cells-of[get_pinsdemuxState_reg/D]demuxState_regGetcellconnectingtothegivennet
wbClkget_cells-of[get_nets
wbClk]-of_objects
ExamplesGetnetsconnectingtothegiven
cellget_nets-of[get_cells
demuxState_reg]wbClkdemuxState1_outresetdemuxState
demuxState0_outGetnetconnectingtothegivenpin
Dget_nets-of[get_pins
demuxState_reg/D]demuxState0_outGetclocksconnectingtothegivenpinCget_clocks-of[get_pins
demuxState_reg/C]wbClk-of_objects
ExamplesGetportsconnectingtothegivenclock
wbClkget_ports-of[get_clockswbClk]wbClkGetcellsconnectingtothegiven
netget_cells-of[get_netsdemuxState0_out]demuxState_reg
demuxState_iQuestionsWhat’sthe
answer?IfwewanttogetthecelldemuxState_regbythenetdemuxState0_out,what’s
thetclcommand?get_cells-of[get_netsdemuxState0_out]get_cells-of
\[get_pins-of[get_netsdemuxState0_out]-filter
"DIRECTION==IN"]-hierarchical
ExplanationstopBAA1
A2
B1
B2#theprincipleof
-hierarchicalsetresult
{}foreachhcell[list""ABA/a1A/a2B/b1B/b2]{current_instance$hcell;#Movescopeto$hcellsetresult[concat$result[get_cells<pattern>]]current_instance;#Returnscopetodesigntop-level}matchthespecifiednamepatternateachlevelofthedesignhierarchy,andnotagainstthefullhierarchicalnameofan
objectThe
specified
search
pattern
must
not
include
the
hierarchical
separator
otherwise
no
object
willbe
returnedWhen-hierarchicalisusedwith-regexp,thespecifiedsearchstringismatchedagainstthefullhierarchical
nameget_cells{A*
B*}get_cells–hier{A*
B*}get_cells
B/*get_cells–hier
B/*get_cells–hier–regexp
B/.*get_cells–hier–filter
{NAME=~*B*}get_cells–hier–regexp
.*B.*A
BAA/A1A/A2BB/B1
B/B2B/B1
B/B2Nocellsmatched
‘B/*'B/B1
B/B2BB/B1B/B2BB/B1B/B2B/B2I/OPortPropertiesforScalar
PortsNAME:Itisconsistentwiththatdescribedinsource
codeDIRECTION:INOUTor
INOUTPACKAGE_PIN:portspinlocationIOBANK:portsbank
locationUNCONNECTED:1or
0get_ports-filter{DIRECTION==IN}get_ports-filter{IOSTANDARD==LVCOMS18}get_ports-filter{UNCONNECTED==1}get_ports-filter{PACKAGE_PIN==""}get_ports-filter
{IOBANK==34}I/OPortPropertiesforBus
PortsNAME,
BUS_NAMEBUS_WIDTHBUS_DIRECTIONget_ports-filter{BUS_NAME!=
""}I/OBankandPackagePin
Propertiesget_package_pinsget_iobanksget_iobanks-of[get_portsreset]get_package_pins-of[get_portsbftClkget_package_pins-of[get_iobanks
34]Example:GetIOshaving"Data"stringintheir
names:get_ports*data*GetinputportswithIOstandards
LVCOMS18:get_ports-filter{DIRECTION==IN&&
IOSTANDARD==LVCMOS18}setmyinport[all_inputs]setmyport[filter$myinport
{IOSTANDARD==LVCMOS18}]GetIObankwhereH4is
located:get_iobanks-of_objects[get_package_pins
H4]Workingwith
Cellscurrent_instance:Setthecurrentinstanceinthedesignhierarchytothespecifiedinstancecellortothetop
moduleget_cells:Getsalistofcellobjectsinthecurrentdesignthatmatch
aspecifiedsearch
patternREF_NAME:In
verilog:modulecounterIn
VHDLentitycounter
isNAME:Instantiationnamewith
hierarchyget_cells-quiet
–hierarchical\-filter{REF_NAME=~FD*}
*rd_*get_cells-quiet
–filter\{REF_NAME=~
FD*}\egressLoop[0].egressFifo/buffer_fifo/*Ifthecellinthetoplevel,PARENTwillbe
empty.PropertiesofFDCEand
LUTExamplesGetcellsin
arnd1get_cellsarnd1/*current_instance-quiet[get_cellsarnd1];sethb1_cells[get_cells*]current_instance-quietGetblackboxandprimitivecellsintop
levelsetall_top_level_blocks[get_cells
*]sethierb_list[filter-quiet
$all_top_level_blocks
{IS_BLACKBOX ==0
&&
IS_PRIMITIVE ==0}]setprimitive_list[filter-quiet
$all_top_level_blocks
{IS_BLACKBOX ==0&&IS_PRIMITIVE==
1}]setblackb_list[filter-quiet
$all_top_level_blocks
{IS_BLACKBOX ==1&&IS_PRIMITIVE==
0}Getallsequentialcellsfromentiredesignandreportits
REF_NAMEsetlist_seq_cells[get_cells
-hierarchical
-filter {IS_SEQUENTIAL==1}*]set
list_seq_type [get_propertyREF_NAME
$list_seq_cells]Getpropertyandchange
itget_propertyINIT[get_cells
A/B/data_reg]Set_propertyINIT1’b0[get_cells
A/B/data_reg]get_nets:Getsalistofnetsinthecurrentdesignthatmatchaspecifiedsearch
pattern-segments:Getallthesegmentsofahierarchicalnet,acrossalllevelsof
thehierarchy-boundary_type:Getsthenetsegmentatthelevelofaspecifiedhierarchicalpin.Values:upper,lowerandboth.Default:
upperWorkingwith
NetsQABOnlyB/weis
obtainedget_nets
B/weA/weweB/weareall
obtainedget_nets–segmentB/weGetnet
‘we’get_nets
–boundary_typeupper
\–of[get_pins
B/we_i_pin]Set
propertyset_propertyMARK_DEBUGtrue[get_net
{controladdr}]we DWorkingwith
PinsMMCMRSTU0get_pins:Getsalistofpinobjectsinthecurrentdesignthatmatchaspecifiedsearch
pattern–-leaf:Includeleafpins,fromprimitiveorblackboxcells,fortheobjects
specifiedwiththe-of_object
argumenti_clk_genresetresetrst_IBUF_instI Osetmynet[get_netsi_clk_gen/U0/reset]setmypina[get_pins–leaf–of$mynet]setmypinb[get_pins–of
$mynet]puts“Leafpins:
$mypina”puts“Pins:
$mypinbLeafpins:i_clk_gen/U0/mmcm_adv_inst/RSTrst_IBUF_inst/OPins:i_clk_gen/U0/mmcm_adv_inst/RST
i_clk_gen/U0/resetget_selected_objects:GetstheobjectscurrentlyselectedintheVivadoIDEselect_objects:SelectsthespecifiedobjectintheappropriateopenviewsintheGUI
modeunselect_objects:Unselectsthespecifiedobjectorobjectsthat
werepreviouslyselectedbytheselect_objects
commandWorkingwithSchematic
ViewerBefore
select
objects,
you
should
unselect
the
previous
one
firstly
unselect_objects-quiet
[get_selected_objects]select_objects[get_cells
i_simdatactrl]Afterreport_timing_summary,
slackcanbe
shown Workingwith
Clocksreport_clock_interactionReportoninterclocktimingpathsandunclocked
registersreport_clock_networksReportclock
networksreport_clock_utilizationReportinformationaboutclocknetsin
designreport_clocksReport
clocksget_clocksGetalistofclocksinthecurrent
designall_clocksGetalistofallclocksinthecurrent
designget_generated_clocksGetalistofgeneratedclocksinthecurrent
designcreate_clockCreateaclock
objectcreate_generated_clockCreateageneratedclock
objectget_clocks{*clock*ck
*Clk}get_clocks-include_generated_clockswbClkreport_property-all[get_clockswbClk]get_clocks-of[get_pins
{i_firctrl/raddrcoe_i_reg[3]/C}]get_clocks-of[get_netsi_firctrl/CLK]get_clocks-filter
{PERIOD<20.0}netpinClocknet:clock
netpin:clock
pinFiveTclcommandsarewidelyused
inTiming
constraintsTiming
analysisDebuggingTheycanbeused
underElaborateddesignSynthesized
designImplemented
designSummaryLauren
GaoProgrammingand
DebuggingChangingDeviceConfigurationBitstream
SettingsUsingtheNetlistInsertionMethodforDebuggingaDesigninVivadoUsingtheHDLInstantiationMethodforDebuggingaDesigninVivadoUsingaVIOCoreforDebuggingaDesignin
VivadoUsingTcltoCreateDebugUnitDemoAgendaChangingDeviceConfigurationBitstream
SettingsUsingtheNetlistInsertionMethodforDebuggingaDesigninVivadoUsingtheHDLInstantiationMethodforDebuggingaDesigninVivadoUsingaVIOCoreforDebuggingaDesignin
VivadoUsingTcltoCreateDebugUnitDemoAgendaChangingDeviceConfigurationBitstream
SettingsISE:Generate
Programming
File ➢Vivado:topnetlist→Add
property→Process
PropertiesChangingDeviceConfigurationBitstream
SettingsUsingtheNetlistInsertionMethodforDebuggingaDesigninVivadoUsingtheHDLInstantiationMethodforDebuggingaDesigninVivadoUsingaVIOCoreforDebuggingaDesignin
VivadoUsingTcltoCreateDebugUnitDemoAgendaVivadoDebug
CoreVivadoDebug
CoreIBERTILAJTAGtoAXI
MasterVIOTwoMethodstoAddDebugCoreinthe
DesignUsingtheHDLInstantiation
MethodUsingtheNetlistInsertion
MethodHDLSource
CodeSynthesisImplementationProgram&DebugOpenHardware
ManagerVivadoLogic
AnalyzerNetlistinsertionmethodisrecommendedGenerate
BitstreamUsingtheNetlistInsertion
MethodSynthesizingthe
DesignProbingandAddingDebug
IPSynthesis
settings:-flatten_hierarchynonerebuiltHowtofindtarget
netsInHDLsource
codeInNetlist
viewInSchematic
viewMarkingHDLSignalsforDebug
(Pre-Synthesis)ForanRTLnetlist-based
projectVivado:
VHDL/Verilogattributemark_debug:string;attributemark_debugofchar_fifo_dout:signalis
"true";(*mark_debug="true"*)wire[7:0]
char_fifo_dout;Synplify:
VHDL/Verilogattributesyn_keep:boolean;attributemark_debug:
string;attributesyn_keepofchar_fifo_dout:signalis
true;attributemark_debugofchar_fifo_dout:signalis
"true";(*syn_keep="true",mark_debug="true"
*)wire[7:0]char_fifo_dout;MarkingNetsforDebugintheSynthesizedDesign(Post-Synthesis)Forasynthesizeddesign(Opensynthesizeddesign
firstly)Netlistview→Selectnet
→Rightclick→Mark
DebugSchematicview→Selectnet
→Rightclick→Mark
DebugNetlist/Schematicview→Select
net→DraggingintoUnassigned
DebugNets
folderYoucanuseget_netsinconjunctionwithotherget_*tofindyour
targetnets
effectivelyUsingTcltoSetmark_debug
AttributeForasynthesizeddesign(Opensynthesizeddesign
firstly)set_propertymark_debugtrue[get_nets
sine*]Confirmget_netsas
expectedselect_objects[get_nets
sine*]F4Usethismethodinsynthesizeddesigns
onlyChangingDeviceConfigurationBitstream
SettingsUsingtheNetlistInsertionMethodforDebuggingaDesigninVivadoUsingtheHDLInstantiationMethodforDebuggingaDesigninVivadoUsingaVIOCoreforDebuggingaDesignin
VivadoUsingTcltoCreateDebugUnitDemoAgendaInHDLsourcecode,use“KEEP”or“DON’T_TOUCH”toavoid
targetsignalsbeing
optimizedGetaprobelist.Eachprobeconnectstoonesignal.Theyhavethe
samewidthGenerateILAipcoreandaddittotheprojectInstantiatetheILAinHDLsource
codeUsingtheHDLInstantiation
Methodattributekeep:string;attributekeepofsineSel:signalis
"true";attributekeepofsine:signalis
"true";Where
isICON?Vivadocanautomaticallygeneratedbg_hubaftergeneratingILAICONisreplacedbydbg_hubwhichiseasyto
useMigratefromICONto
dbg_hubChangingDeviceConfigurationBitstream
SettingsUsingtheNetlistInsertionMethodforDebuggingaDesigninVivadoUsingtheHDLInstantiationMethodforDebuggingaDesigninVivadoUsingaVIOCoreforDebuggingaDesignin
VivadoUsingTcltoCreateDebugUnitDemoAgendaVirtualInput/Output(VIO)
coreBothmonitoranddriveinternalFPGAsignalsinreal
timeSynchronoustothedesignbeing
monitoredand/or
drivenCanonlybeusedwithHDLsource
codeVIOChangingDeviceConfigurationBitstream
SettingsUsingtheNetlistInsertionMethodforDebuggingaDesigninVivadoUsingtheHDLInstantiationMethodforDebuggingaDesigninVivadoUsingaVIOCoreforDebuggingaDesignin
VivadoUsingTcltoCreateDebugUnitDemoAgendaUsingTcltoCreateDebug
Unitcreate_debug_coreu_ila_0
labtools_ila_v3set_propertyport_width1[get_debug_portsu_ila_0/clk]connect_debug_portu_ila_0/clk[get_nets[listclk]]set_propertyport_width2[get_debug_portsu_ila_0/probe0]connect_debug_portu_ila_0/probe0\[get_nets[list{sel[0]}{sel[1]}]]create_debug_portu_ila_0probeset_propertyport_width2[get_debug_portsu_ila_0/prob
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 初中语文11《答谢中书书》(公开课一等奖创新教学设计)
- 【初中语文+】+第六单元课外古诗词诵读《题破山寺后禅院》课件+统编版语文八年级下册
- 甲乙双方买卖简单的合同范本(11篇)
- 学校食堂就餐规矩要牢记的礼仪知识
- 智慧交通安全监控技术应用方案
- 学生道德教育心得体会
- 医药中间体行业现状
- 乔迁新居怎么写邀请函(11篇)
- 石英砂行业趋势展望
- 内部竞聘选拔方案
- 2024高考物理海南卷押题模拟含解析
- 山东省山师附中2023-2024学年高三第五次模拟考试数学试卷含解析
- SYT 5083-2021 石油天然气钻采设备 尾管悬挂器及尾管回接装置-PDF解密
- 福建省区域地质志
- 钢结构测量方案
- 全球及中国时间敏感网络(TSN)行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告(2024-2030)
- MOOC 机械制图2-郑州轻工业大学 中国大学慕课答案
- 入职协议书销售总监
- MOOC 测量学-西北农林科技大学 中国大学慕课答案
- 术后急性疼痛及多模式镇痛 2024.03.25
- 2024年小学语文教师招聘考试语文专业知识考试模拟试题及答案(共四套)
评论
0/150
提交评论