FPGA設(shè)計時序收斂_第1頁
FPGA設(shè)計時序收斂_第2頁
FPGA設(shè)計時序收斂_第3頁
FPGA設(shè)計時序收斂_第4頁
FPGA設(shè)計時序收斂_第5頁
已閱讀5頁,還剩72頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、王巍138207796132022-6-212主要內(nèi)容時序約束的概念時序約束的概念時序收斂流程時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE2022-6-213n 提高設(shè)計的工作頻率p通過附加約束可以控制邏輯的綜合、映射、布局和布線,以減小邏輯和布線延時,從而提高工作頻率。n 獲得正確的時序分析報告pFPGA設(shè)計平臺包含靜態(tài)時序分析工具,可以獲得映射或布局布線后的時序分析報告,從而對設(shè)計的性能做出評估。p靜態(tài)時序分析工具以約束作為判斷時序是否滿足設(shè)計要求的標準。n 指定F

2、PGA引腳位置與電氣標準pFPGA的可編程特性使電路板設(shè)計加工和FPGA設(shè)計可以同時進行,而不必等FPGA引腳位置完全確定,從而節(jié)省了系統(tǒng)開發(fā)時間。p通過約束還可以指定I/O引腳所支持的接口標準和其他電氣特性。附加約束的基本作用2022-6-214n 周期(PERIOD)指參考網(wǎng)絡(luò)為時鐘的同步元件間的路徑,包括:flip-flop、latch、synchronous RAM等。 n 周期約束不會優(yōu)化以下路徑:p 從輸入管腳到輸出管腳之間的路徑純組合邏輯p 從輸入管腳到同步元件之間的路徑p 從同步元件到輸出管腳的路徑周期約束路徑示意圖周期約束2022-6-215n 周期約束是一個基本時序和綜合約

3、束,它附加在時鐘網(wǎng)線上,時序分析工具根據(jù)周期約束檢查與同步時序約束端口(指有建立、保持時間要求的端口)相連接的所有路徑延遲是否滿足要求(不包括PAD到寄存器的路徑)。n 周期是時序中最簡單也是最重要的含義,其它很多時序概念會因為軟件商不同略有差異,而周期的概念卻是最通用的,周期的概念是FPGA/ASIC時序定義的基礎(chǔ)概念。后面要講到的其它時序約束都是建立在周期約束的基礎(chǔ)上的,很多其它時序公式,可以用周期公式推導(dǎo)。n 在附加周期約束之前,首先要對電路的時鐘周期有一定的估計,不能盲目上。約束過松,性能達不到要求,約束過緊,會大大增加布局布線時間,甚至效果相反。周期約束2022-6-216n 周期約

4、束的計算p設(shè)計內(nèi)部電路所能達到的最高運行頻率最高運行頻率取決于同步元件本身的建立保持時間,以及同步元件之間的邏輯和布線延遲。p時鐘的最小周期為: Tperiod= Tcko +Tlogic +Tnet +Tsetup-Tclk_skew Tclk_skew =Tcd1-Tcd2p其中Tcko為時鐘輸出時間,Tlogic為同步元件之間的組合邏輯延遲,Tnet為網(wǎng)線延遲,Tsetup為同步元件的建立時間,Tclk_skew為時鐘信號偏斜。 周期約束2022-6-217n 附加周期約束的一個例子: NET SYS_CLK PERIOD=10ns HIGH 4ns 這個約束將被附加到SYS_CLK所驅(qū)

5、動的所有同步元件上。n PERIOD約束自動處理寄存器時鐘端的反相問題,如果相鄰?fù)皆r鐘相位相反,那么它們之間的延遲將被默認限制為PERIOD約束值的一半。 反相時鐘周期約束問題的例子周期約束2022-6-218 偏移約束指數(shù)據(jù)和時鐘之間的約束,偏移約束規(guī)定了外部時鐘和數(shù)據(jù)輸入輸出引腳之間的時序關(guān)系,只用于與PAD相連的信號,不能用于內(nèi)部信號。偏移約束示意圖偏移約束2022-6-219n 偏移約束優(yōu)化以下時延路徑p從輸入管腳到同步元件偏置輸入偏置輸入(OFFSET IN)p從同步元件到輸出管腳偏置輸出偏置輸出(OFFSET OUT)n 為了確保芯片數(shù)據(jù)采樣可靠和下級芯片之間正確的交換數(shù)據(jù),

6、需要約束外部時鐘和數(shù)據(jù)輸入輸出引腳之間的時序關(guān)系。偏移約束的內(nèi)容的時刻,從而保證與下一級電路的時序關(guān)系。告訴綜合器、布線器輸入數(shù)據(jù)到達的時刻,或者輸出數(shù)據(jù)穩(wěn)定。偏移約束2022-6-2110n OFFSET_IN_BEFOREp說明了輸入數(shù)據(jù)比有效時鐘沿提前多長時間準備好,于是芯片內(nèi)部與輸入引腳的組合邏輯延遲就不能大于該時間(上限,最大值),否則將發(fā)生采樣錯誤。n OFFSET_IN_AFTERp指出輸入數(shù)據(jù)在有效時鐘沿之后多長時間到達芯片的輸入引腳,也可以得到芯片內(nèi)部延遲的上限。偏移約束2022-6-2111n 輸入到達時間計算時序描述 pOFFSET_IN_AFTER定義的含義是輸入數(shù)據(jù)在

7、有效時鐘沿之后的Tarrival時刻到達。即:Tarrival=Tcko+Toutput+Tlogic p 綜合實現(xiàn)工具將努力使輸入端延遲Tinput 滿足以下關(guān)系: Tarrival +Tinput+TsetupTperiodp其中Tinput為輸入端的組合邏輯、網(wǎng)線和PAD的延遲之和,Tsetup為輸入同步元件的建立時間, Tcko為同步元件時鐘輸出時間。偏移約束2022-6-2112n 例子:假設(shè)Tperiod=20ns,Tcko1ns,Toutput3ns,Tlogic8ns,請給出偏移約束。偏移約束n Tarrival=Tcko+Toutput+Tlogic12ns,p 使用OFFS

8、ET_IN_AFTER進行偏移約束為: NET DATA_IN OFFSET=IN 12ns AFTER CLKNET DATA_IN OFFSET=IN 12ns AFTER CLKp 也可以使用OFFSET_IN_BEFORE進行偏移約束,它們是等價的: NET DATA_IN OFFSET=IN 8ns BEFORE CLKNET DATA_IN OFFSET=IN 8ns BEFORE CLK 2022-6-2113n OFFSET_OUT_BEFOREp指出下一級芯片的輸入數(shù)據(jù)應(yīng)該在有效時鐘沿之前多長時間準備好。p從下一級的輸入端的延遲可以計算出當前設(shè)計輸出的數(shù)據(jù)必須在何時穩(wěn)定下來,

9、根據(jù)這個數(shù)據(jù)對設(shè)計輸出端的邏輯布線進行約束,以滿足下一級的建立時間要求,保證下一級采樣數(shù)據(jù)穩(wěn)定。n OFFSET_OUT_AFTERp規(guī)定了輸出數(shù)據(jù)在有效時鐘沿之后多長時間(上限,最大值)穩(wěn)定下來,芯片內(nèi)部的輸出延遲必須小于這個值。偏移約束2022-6-2114n 計算要求的輸出穩(wěn)定時間p 定義:Tstable= Tlogic+Tinput +Tsetupp 只要當前設(shè)計輸出端的數(shù)據(jù)比時鐘上升沿提前Tstable時間穩(wěn)定下來,下一級就可以正確采樣數(shù)據(jù)。p 實現(xiàn)工具將會努力使輸出端的延遲滿足以下關(guān)系: Tcko +Toutput+TstableTperiodp 這個公式就是Tstable必須要滿

10、足的基本時序關(guān)系,即本級的輸出應(yīng)該保持怎么樣的穩(wěn)定狀態(tài),才能保證下級芯片的采樣穩(wěn)定。偏移約束2022-6-2115n 例子: 設(shè)時鐘周期為20ns,后級輸入邏輯延時Tinput為4ns、建立時間Tsetup為1ns,中間邏輯Tlogic的延時為8ns,請給出設(shè)計的輸出偏移約束。n 答案:p OFFSET_OUT_BEFORE 偏移約束為: NET DATA_OUT OFFSET=OUT 13ns NET DATA_OUT OFFSET=OUT 13ns BEFORE CLKBEFORE CLKp OFFSET_OUT_AFTER約束: NET DATA_OUT FFSET=OUT NET DA

11、TA_OUT FFSET=OUT 7ns 7ns AFTER CLKAFTER CLK偏移約束2022-6-2116n Given the system diagram below, what values would you put in the Constraints Editor so that the system will run at 100 MHz?(Assume no clock skew between devices)4 ns5 nsUpstream DeviceDownstream Device偏移約束2022-6-2117Path-Specific Timing Con

12、straintsn Using global timing constraints (PERIOD, OFFSET, and PAD-TO-PAD) will constrain your entire designn Using only global constraints often leads to over-constrained designspConstraints are too tightpIncreases compile time and can prevent timing objectives from being metpReview performance est

13、imates provided by your synthesis tool or the Post-Map Static Timing Reportn Path-specific constraints override the global constraints on specified pathspThis allows you to loosen the timing requirements on specific paths2022-6-2118n Areas of your design that can benefit from path-specific constrain

14、tspMulti-cycle pathspPaths that cross between clock domainspBidirectional busespI/O timingn Path-specific timing constraints should be used to define your performance objectives and should not be indiscriminately placedPath-Specific Timing Constraints2022-6-2119Path-Specific Timing Constraints2022-6

15、-2120Path-Specific Timing Constraints2022-6-2121 假設(shè)要做一個32位的高速計數(shù)器,由于計數(shù)器的速度取決于最低位到最高位的進位延遲,為了提高速度采用了預(yù)定標計數(shù)器的結(jié)構(gòu),也就是把計數(shù)器分成一個小計數(shù)器和一個大計數(shù)器,如圖所示。 其中小計數(shù)器是兩位的,大計數(shù)器是30位,它們由同一時鐘驅(qū)動。大計數(shù)器使能端EN受小計數(shù)器進位驅(qū)動,小計數(shù)器每4個CLK進位一次,使EN持續(xù)有效一個CLK的時間,此時有效時鐘沿到來大計數(shù)器加1。 可見,小計數(shù)器的寄存器可能每個CLK翻轉(zhuǎn)1次,低位寄存器輸出的數(shù)據(jù)必須在1個CLK內(nèi)到達高位寄存器的輸入端,即寄存器之間的最大延時為

16、1個CLK。而大計數(shù)器內(nèi)部的寄存器每4個時鐘周期才可能翻轉(zhuǎn)一次,低位寄存器輸出的數(shù)據(jù)在4個CLK內(nèi)到達高位寄存器的輸入端即可,即寄存器之間的最大延遲為4個CLK,因此降低了計數(shù)器的時序要求,可以實現(xiàn)規(guī)模較大的高速計數(shù)器。預(yù)定標計數(shù)器預(yù)定標計數(shù)器Path-Specific Timing Constraints2022-6-2122約束文件約束文件Path-Specific Timing Constraints2022-6-2123n Use the Pad to Setup and Clock to Pad columns to specify OFFSETs for all I/O paths

17、 on each clock domain. Easiest way to constrain most I/O pathsn However, this can lead to an over-constrained designn Use the Pad to Setup and Clock to Pad columns to specify OFFSETs for each I/O pinn Use this type of constraint when only a few I/O pins need different timingPath-pin offset Timing Co

18、nstraints2022-6-2124False paths Constraintsn If a PERIOD constraint were placed on this design, what delay paths would be constrained?n If the goal is to optimize the input and output times without constraining the paths between registers, what constraints are needed?pAssume that a global PERIOD con

19、straint is already defined2022-6-2125Timing Constraint Priorityn False pathspMust be allowed to override any timing constraintn FROM THRU TOn FROM TOn Pin-specific OFFSETsn Group OFFSETspGroups of pads or registersn Global PERIOD and OFFSETspLowest priority constraints2022-6-2126主要內(nèi)容時序約束的概念時序收斂流程時序收

20、斂流程時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE2022-6-2127 設(shè)計完成后,如何判斷一個成功的設(shè)計?p設(shè)計是否滿足面積要求-是否能在選定的器件中實現(xiàn)。p設(shè)計是否滿足性能要求-能否達到要求的工作頻率。p管腳定義是否滿足要求-信號名、位置、電平標準及數(shù)據(jù) 流方向等。時序收斂流程2022-6-2128如何判斷設(shè)計適合所選芯片?n 所選芯片是否有足夠的資源容納更多的邏輯?如果有,有多少?n 如果適合所選芯片, 能否完全成功布通? 手段:查看 Map ReportMap

21、 Report 或者 Place & Route ReportPlace & Route Report時序收斂流程2022-6-2129n Project Navigator 產(chǎn)生兩種時序報告:pPost-Map Static Timing ReportpPost-Place & Route Static Timing Reportn 時序報告包含沒有滿足時序要求的詳細路徑的描述,用于分析判斷時序要求沒有得到滿足的原因。n Timing Analyzer用于建立和閱讀時序報告。時序收斂流程2022-6-2130n 合理的性能約束的依據(jù)合理的性能約束的依據(jù)pPost-Ma

22、p Static Timing Reportp包括:實際的邏輯延遲和(block delays)和0.1 ns網(wǎng)絡(luò)延遲( net delays)n 合理的時序性能約束的原則:合理的時序性能約束的原則:60/40 原則原則pIf less than 60 percent of the timing budget is used for logic delays, the Place & Route tools should be able to meet the constraint easily.pBetween 60 to 80 percent, the software run t

23、ime will increase.pGreater than 80 percent, the tools may have trouble meeting your goals.時序收斂流程2022-6-21312022-6-2132性能突破只要三步:1. 充分利用嵌入式(專用)資源 DSP48, PowerPC processor, EMAC, MGT, FIFO, block RAM, ISERDES, and OSERDES, 等等。等等。2. 追求優(yōu)秀的代碼風格 Use synchronous design methodology Ensure the code is written

24、 optimally for critical paths Pipeline( Xilinx FPGAs have abundant Registers )3. 充分利用synthesis工具和Place & Route工具參數(shù)選擇 Try different optimization techniques Add critical timing constraints in synthesis Preserve hierarchy Apply full and correct constraints Use High effort時序收斂流程2022-6-2133時序收斂流程Use

25、embedded blocks2022-6-2134Simple Coding Steps Yield 3x Performancen Use pipeline stagesmore bandwidthn Use synchronous resetbetter system controln Use Finite State Machine optimizationsn Use inferable resourcespMultiplexerpShift Register LUT (SRL)pBlock RAM, LUT RAMpCascade DSPn Avoid high-level con

26、structs (loops, for example) in codepMany synthesis tool produce slow implementations時序收斂流程2022-6-2135Synthesis guidelinesn Use timing constraintsn Define tight but realistic individual clock constraintsn Put unrelated clocks into different clock groupsn Use proper options and attributesn Turn off r

27、esource sharingn Move flip-flops from IOBs closer to logicn Turn on FSM optimizationn Use the retiming option時序收斂流程2022-6-2136時序收斂流程Impact of Constraints2022-6-2137Place & Route Guidelinesn Timing constraintspUse tight, realistic constraintsn Recommended optionspHigh-effort Place & RoutepBy

28、default, effort is set to StandardpTiming-driven MAPpMulti-Pass Place & Route (MPPR)n Tools to help meet timingpFloorplanning(Use the PACE and PlanAhead software tools)pPhysical synthesis toolsn Other available options:pIncremental designpModular design flows時序收斂流程2022-6-2138時序收斂流程Impact of Cons

29、traints in Tools2022-6-2139主要內(nèi)容時序約束的概念時序收斂流程時序收斂流程代碼風格時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE2022-6-2140代碼風格n 使用同步設(shè)計技術(shù)使用同步設(shè)計技術(shù)n 使用使用Xilinx-Specific代碼代碼n 使用使用Xilinx提供的核提供的核n 使用層次化設(shè)計使用層次化設(shè)計n 使用使用ISE產(chǎn)生的靜態(tài)時序分析報告,找出時序關(guān)鍵路徑,并進行產(chǎn)生的靜態(tài)時序分析報告,找出時序關(guān)鍵路徑,并進行優(yōu)化優(yōu)化2022-6

30、-2141主要內(nèi)容時序約束的概念時序收斂流程時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE2022-6-2142n 使用綜合工具提供的參數(shù)選項,尤其是constraint-driven技術(shù),可以優(yōu)化設(shè)計網(wǎng)表,提高系統(tǒng)性能n 為綜合工具指定關(guān)鍵路徑,綜合工具可以提高 工作級別,使用更深入的算法,減少關(guān)鍵路徑延遲綜合技術(shù)2022-6-2143n 綜合工具提供許多優(yōu)化選擇,以獲得期望的系統(tǒng)性能和面積要求綜合工具提供許多優(yōu)化選擇,以獲得期望的系統(tǒng)性能和面積要求

31、參考F1幫助信息或XST UserguidepRegister DuplicationpTiming-Driven SynthesispTiming Constraint EditorpFSM ExtractionpRetimingpHierarchy ManagementpSchematic ViewerpError NavigationpCross-ProbingpPhysical Optimization綜合技術(shù)2022-6-2144DQfn1DQfn1DQfn1n High-fanout nets can be slow and hard to routen Duplicating f

32、lip-flops can fix both problemspReduced fanout shortens net delayspEach flip-flop can fanout to a different physical region of the chip to reduce routing congestionn Design trade-offspGain routability and performancepIncrease design areapIncrease fanout of other netsDuplicating Flip-Flops綜合技術(shù)2022-6-

33、2145Timing-Driven Synthesisn Synplify, Precision, and XST softwaren Timing-driven synthesis uses performance objectives to drive the optimization of the designpBased on your performance objectives, the tools will try several algorithms to attempt to meet performance while keeping the amount of resou

34、rces in mindpPerformance objectives are provided to the synthesis tool via timing constraints綜合技術(shù)2022-6-2146n 實施period約束和input/output約束(.xcf文件)p通常,根據(jù)期望的性能目標進行1.5X2X的過約束,綜合工具會提高工作級別,有利于在實現(xiàn)中更容易滿足時序目標p切記:如果使用過約束,不要把這些約束傳遞給實現(xiàn)工具n 使用Multi-cycle和false paths約束n 使用Critical path約束,對Critical path進行優(yōu)化綜合技術(shù)Timing

35、-Driven Synthesis2022-6-2147Retimingn Synplify, Precision, and XST softwaren Retiming: The synthesis tool automatically tries to move register stages to balance combinatorial delay on each side of the registersDQDQDQBefore RetimingAfter RetimingDQDQDQ綜合技術(shù)2022-6-2148Hierarchy Managementn Synplify, Pr

36、ecision, and XST softwaren The basic settings are:p Flatten the design: Allows total combinatorial optimization across all boundariesp Maintain hierarchy: Preserves hierarchy without allowing optimization of combinatorial logic across boundariesn If you have followed the synchronous design guideline

37、s, use the setting -maintain hierarchyn If you have not followed the synchronous design guidelines, use the setting -flatten the designn Your synthesis tool may have additional settingsp Refer to your synthesis documentation for details on these settings綜合技術(shù)2022-6-2149Hierarchy Preservation Benefits

38、n Easily locate problems in the code based on the hierarchical instance names contained within static timing analysis reportsn Enables floorplanning and incremental design flown The primary advantage of flattening is to optimize combinatorial logic across hierarchical boundariespIf the outputs of le

39、af-level blocks are registered, there is no need to flatten綜合技術(shù)2022-6-2150主要內(nèi)容時序約束的概念時序收斂流程時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE2022-6-2151管腳約束n 管腳約束通常在設(shè)計早期就要確定下來,以保證電路板的設(shè)計同步進行n 對高速設(shè)計、復(fù)雜設(shè)計和具有大量I/O管腳的設(shè)計,Xilinx推薦手工進行管腳約束p實現(xiàn)工具可以自動布局邏輯和管腳,但是一般來說不

40、會是最優(yōu)的p管腳約束可以指導(dǎo)內(nèi)部數(shù)據(jù)流向,不合理的管腳布局很容易降低系統(tǒng)性能p合理的管腳布局需要對所設(shè)計系統(tǒng)和Xilinx器件結(jié)構(gòu)的詳細了解,如要考慮I/O bank、I/O電氣標準等p時鐘(單端或差分)必須約束在專用時鐘管腳 注意:時鐘資源數(shù)量的限制p最后使用dual-purpose管腳(如配置和DCI管腳)2022-6-2152根據(jù)數(shù)據(jù)流指導(dǎo)管腳約束根據(jù)數(shù)據(jù)流指導(dǎo)管腳約束n 用于控制信號的I/O置于器件的頂部或底部p控制信號垂直布置n 用于數(shù)據(jù)總線的I/O置于器件的左部和右部p數(shù)據(jù)流水平布置。n 以上布局方法可以充分利用Xilinx器件的資源布局方式p進位鏈排列方式p塊RAM,乘法器位置管

41、腳約束2022-6-2153使用PACE進行管腳約束管腳約束2022-6-2154主要內(nèi)容時序約束的概念時序收斂流程時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE2022-6-2155時序約束2022-6-2156時序約束的概念時序收斂流程時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE主要內(nèi)容2022-6-

42、2157靜態(tài)時序分析n Post-map:Map后,使用Post-map timing report確定關(guān)鍵路徑的邏輯延遲n Post-PAR:PAR后,使用Post-PAR static timing report確定時序約束是否滿足n Logic delay Vs. Routing delay:60%/40%原則n Timing Analyzer可以讀取時序報告,查找關(guān)鍵路徑,并與Floorplanner協(xié)同解決時序問題2022-6-2158Report Example靜態(tài)時序分析2022-6-2159Analyzing Post-Place & Route Timingn The

43、re are many factors that contribute to timing errors, includingpNeglecting synchronous design rules or using incorrect HDL coding stylepPoor synthesis results (too many logic levels in the path)pInaccurate or incomplete timing constraintspPoor logic mapping or placementn Each root cause has a differ

44、ent solutionpRewrite HDL codepAdd timing constraintspResynthesize or re-implement with different software optionsn Correct interpretation of timing reports can reveal the most likely causepTherefore, the most likely solution靜態(tài)時序分析2022-6-2160靜態(tài)時序分析Case12022-6-2161Poor Placement: Solutionsn Increase P

45、lacement effort level (or Overall effort level)n Timing-driven packing, if the placement is caused by packing unrelated logic togetherpCross-probe to the Floorplanner to see what has been packed togetherpThis option is covered in the .Advanced Implementation Options. modulen PAR extra effort or MPPR

46、 optionspCovered in the .Advanced Implementation Options. modulen Floorplanning or Relative Location Constraints (RLOCs) if you have the skill靜態(tài)時序分析2022-6-2162靜態(tài)時序分析Case22022-6-2163High Fanout: Solutionsn Most likely solution is to duplicate the source of the high-fanout netpthe net is the output of

47、 a flip-flop, the solution is to duplicate the flip-flopUse manual duplication (recommended) or synthesis optionspIf the net is driven by combinatorial logic, locating the source of the net in the HDL code may be more difficultUse synthesis options to duplicate the source靜態(tài)時序分析2022-6-2164靜態(tài)時序分析Case3

48、2022-6-2165Too Many Logic Levels: Solutionsn The implementation tools cannot do much to improve performancen The netlist must be altered to reduce the amount of logic between flip-flopsn Possible solutionspCheck whether the path is a multicycle pathIf yes, add a multicycle path constraintpUse the re

49、timing option during synthesis to distribute logic more evenly between flip-flopspConfirm that good coding techniques were used to build this logic (no nested if or case statements)pAdd a pipeline stage靜態(tài)時序分析2022-6-2166時序約束的概念時序收斂流程時序收斂流程代碼風格時序收斂流程綜合技術(shù)時序收斂流程管腳約束時序收斂流程時序約束時序收斂流程靜態(tài)時序分析時序收斂流程實現(xiàn)技術(shù)時序收斂流程

50、實現(xiàn)技術(shù)時序收斂流程FloorPlanner和PACE主要內(nèi)容主要內(nèi)容2022-6-2167n 使用更高級別的Effort Level:可以提高時序性能,而不必采取其它措施(如施加更高級的時序約束,使用高級工具或者更改代碼等)n Xilinx推薦:第一遍實現(xiàn)時,使用全局時序約束和缺省的實現(xiàn)參數(shù)選項。如果不能滿足時序要求:p 嘗試修改代碼,如使用合適的代碼風格,增加流水線等p 修改綜合參數(shù)選項,如Optimization Effort ,Use Synthesis Constraints File ,Keep Hierarchy ,Register Duplication,Register Ba

51、lancing 等p 增加PAR Effort Levelp Apply path-specific timing constraints for synthesis and implementationR&R參數(shù)選項:Effort Level實現(xiàn)技術(shù)2022-6-2168n 和PAR一樣,可以使用Map-timing參數(shù)選項針對關(guān)鍵路徑進行約束。如參數(shù) “Timing-Driven Packing and Placement ”給關(guān)鍵路徑以優(yōu)先時序約束的權(quán)利。用戶約束通過Translate過程從User Constraints File (UCF ) 中傳遞到設(shè)計中 。實現(xiàn)技術(shù)202

52、2-6-2169Timing-Driven Packingn Timing constraints are used to optimize which pieces of logic are packed into each slicepNormal (standard) packing is performedpPAR is run through the placement phasepTiming analysis analyzes the amount of slack in constrained pathspIf necessary, packing changes are made to allow better placementn The output of MAP contains both mapping and placement informationpThe Post-Map Static Timing Report contains more realistic ne

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論