專用集成電路的時(shí)序約束與靜態(tài)時(shí)序分析_第1頁
專用集成電路的時(shí)序約束與靜態(tài)時(shí)序分析_第2頁
專用集成電路的時(shí)序約束與靜態(tài)時(shí)序分析_第3頁
專用集成電路的時(shí)序約束與靜態(tài)時(shí)序分析_第4頁
專用集成電路的時(shí)序約束與靜態(tài)時(shí)序分析_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

專用集成電路的時(shí)序約束與靜態(tài)時(shí)序分析(一)設(shè)計(jì)的時(shí)序約束為使電路的性能達(dá)到設(shè)計(jì)者的預(yù)期目標(biāo),同時(shí)又能滿足電路工作環(huán)境的要求。必須對一個(gè)電路設(shè)計(jì)進(jìn)行諸如時(shí)序、面積、負(fù)載等多方面的約束,并自始至終使用這些約束條件來驅(qū)動電路設(shè)計(jì)軟件的工作。設(shè)計(jì)約束一般包括ASIC生產(chǎn)廠家的設(shè)計(jì)規(guī)則約束和設(shè)計(jì)者自定義的設(shè)計(jì)優(yōu)化約束。大多數(shù)工藝庫都指定有設(shè)計(jì)規(guī)則約束,對任何一個(gè)使用該工藝庫的設(shè)計(jì)都適用,它反映了一個(gè)設(shè)計(jì)要正常工作所必須遵守的特定工藝的要求,它的優(yōu)先權(quán)高于設(shè)計(jì)優(yōu)化約束,通常包括最大轉(zhuǎn)換時(shí)間、最大扇出、最大、最小電容等等。設(shè)計(jì)規(guī)則約束是隱含的,無需設(shè)計(jì)者指定,因此重點(diǎn)討論設(shè)計(jì)優(yōu)化約束。設(shè)計(jì)優(yōu)化約束包括設(shè)計(jì)者對電路性能上的一系列在時(shí)序、面積和版圖布通性等方面的指標(biāo),其中時(shí)序約束是最重要的、最復(fù)雜的,是我們關(guān)注的重點(diǎn)。(1)單時(shí)鐘同步電路的時(shí)序約束先討論最簡單的單時(shí)鐘同步電路的時(shí)序約束,要對一個(gè)電路的時(shí)序行為進(jìn)行充分約束至少應(yīng)從以下幾個(gè)方面來考慮:(A)時(shí)鐘網(wǎng)絡(luò)a.時(shí)鐘的傳播延時(shí)(Latency和不確定性(Uncertainty)對于一個(gè)實(shí)際的時(shí)鐘網(wǎng)絡(luò),最重要的兩個(gè)屬性就是時(shí)鐘的不確定性(Uncertainty和時(shí)鐘的傳播延遲(Latency)。時(shí)鐘的傳播延時(shí)包括時(shí)鐘源的延時(shí)和時(shí)鐘網(wǎng)絡(luò)的延時(shí)。時(shí)鐘源的延時(shí)是指從系統(tǒng)上時(shí)鐘產(chǎn)生點(diǎn)到設(shè)計(jì)中時(shí)鐘定義點(diǎn)(電路端口)的延時(shí);時(shí)鐘網(wǎng)絡(luò)的延時(shí)是從時(shí)鐘定義點(diǎn)到寄存器時(shí)鐘管腳的延時(shí)。時(shí)鐘的不確定性是指在一個(gè)時(shí)鐘域或時(shí)鐘域間寄存器時(shí)鐘管腳到達(dá)時(shí)間的最大差別,這個(gè)時(shí)間通常又稱為時(shí)鐘歪斜(SKEW)。時(shí)鐘的不確定性將影響建立時(shí)間和保持時(shí)間的計(jì)算。一個(gè)電路的時(shí)鐘網(wǎng)絡(luò)在版圖設(shè)計(jì)完成后可能如下圖所從圖1很容易理解時(shí)鐘的這兩個(gè)重要屬性。在版圖設(shè)計(jì)完成之后,時(shí)鐘樹上電路單元和網(wǎng)絡(luò)延時(shí)等參數(shù)可以反標(biāo)回來,通過適當(dāng)設(shè)置讓這些延時(shí)信息在時(shí)鐘網(wǎng)絡(luò)上傳播可以自動獲得時(shí)鐘的這些重要屬性??墒窃诎鎴D設(shè)計(jì)之前,只能通過設(shè)定相應(yīng)的約束來近似模擬時(shí)鐘的這種不確定性。這些時(shí)序約束將被用作分析電路最壞情況的標(biāo)準(zhǔn),如果在最壞情況下,所有建立時(shí)間和保持時(shí)間的約束都不被違反,則可以肯定電路的性能不會存在問題。圖2給出了時(shí)鐘的這種不確定性對電路建立時(shí)間和保持時(shí)間計(jì)算的影響。從圖2中可以看出影響建立時(shí)間和保持時(shí)間的兩條路徑:時(shí)鐘路徑和數(shù)據(jù)路徑。最壞情況即指以下兩種組合:數(shù)據(jù)路徑取最大延遲而同時(shí)時(shí)鐘路徑取最小延遲;數(shù)據(jù)路徑取最小延遲而同時(shí)時(shí)鐘路徑取最大延遲;在第一種組合下電路中不能有建立時(shí)間約束被違反;而在第二種組合下,不能違反保持時(shí)間約束。具體算法如下:時(shí)鐘周期+時(shí)鐘路徑最小延遲嘍攵據(jù)路徑最大延遲>建立時(shí)間數(shù)據(jù)路徑最小延遲■時(shí)鐘路徑最大延遲案>保持時(shí)間

'…建立時(shí)間余量■■■■■■■■時(shí)鐘不確定'…建立時(shí)間余量■■■■■■■■時(shí)鐘不確定=xxxxxx圖2時(shí)鐘不確定性對電路時(shí)序的影響b,門控時(shí)鐘單元的時(shí)序約束當(dāng)時(shí)鐘網(wǎng)絡(luò)上包含除緩沖器和反相器之外的邏輯時(shí)就會產(chǎn)生門控時(shí)鐘信號。如果不對門控時(shí)鐘單元的控制信號進(jìn)行適當(dāng)約束,就很可能發(fā)生當(dāng)時(shí)鐘脈沖通過門電路時(shí),門控信號發(fā)生變化,這將使時(shí)鐘脈沖丟失或在時(shí)鐘信號上產(chǎn)生毛刺。如下圖所示,通過約束使門控信號在相對時(shí)鐘沿的建立時(shí)間和保持時(shí)間區(qū)域內(nèi)保證不發(fā)生變化。c,最小時(shí)鐘脈寬的檢查最小脈寬的檢查對時(shí)序電路非常重要,由于時(shí)鐘網(wǎng)絡(luò)上的門控單元和延時(shí)等的影響,使得脈沖寬度在時(shí)鐘的傳播過程中會減小。這樣可能會造成如下問題:>如果寄存器時(shí)鐘引腳上的時(shí)鐘脈沖寬度太小,那么寄存器可能不能正確地捕獲數(shù)據(jù)。一般庫單元都有一個(gè)最小脈寬要求。>由于脈寬減小,可能在時(shí)鐘網(wǎng)絡(luò)的某些點(diǎn)上時(shí)鐘不再往后傳遞。因此必須設(shè)定脈寬的最小限制。(B)端口延時(shí)端口輸入延時(shí)指外部路徑到電路輸入(或雙向端口)的相對于時(shí)鐘沿的時(shí)間。端口輸入延時(shí)應(yīng)該等于從源寄存器時(shí)鐘腳到驅(qū)動單元(輸入腳的直接驅(qū)動單元)輸出腳的延時(shí)減去驅(qū)動單元和負(fù)載相關(guān)的那部分延時(shí)。端口輸出延時(shí)指輸出腳(或雙向端口)到外部寄存器的路徑延時(shí),端口輸出延時(shí)的最大值等于從輸出腳到外部寄存器數(shù)據(jù)端的路徑延時(shí)的最大值加上寄存器的建立時(shí)間。端口輸出延時(shí)的最小值等于從輸出腳到外部寄存器數(shù)據(jù)端的路徑延時(shí)的最小值減去寄存器的保持時(shí)間。(C)端口的驅(qū)動和負(fù)載特性端口的驅(qū)動和負(fù)載描述了電路和外部環(huán)境的接口,驅(qū)動和負(fù)載特性將影響到電路的時(shí)序行為??梢詾椴煌妮斎攵丝趶膸靻卧羞x擇不同的驅(qū)動單元,為輸入、輸出端口指定負(fù)載值,同時(shí)還可為輸出端口設(shè)定扇出負(fù)載的大小。在對端口進(jìn)行時(shí)序約束時(shí)應(yīng)考慮端口驅(qū)動和負(fù)載對時(shí)序的影響。參見圖3。圖3端口延時(shí)、驅(qū)動和負(fù)載(2) 多時(shí)鐘同步電路的時(shí)序約束多時(shí)鐘同步電路是指電路中的多個(gè)時(shí)鐘都從同一時(shí)鐘源派生而來,它們之間有相對固定的相位關(guān)系,其中有的時(shí)鐘不一定有實(shí)際對應(yīng)的電路端口??傮w上說多時(shí)鐘同步電路可以和單時(shí)鐘同步電路采用同樣的約束策略,也包括定義時(shí)鐘(必要時(shí)需要建立虛擬時(shí)鐘作為端口輸入、輸出延時(shí)的參考)、指定I/O腳相對時(shí)鐘的延時(shí)等步驟。由于可能出現(xiàn)在一個(gè)端口或網(wǎng)絡(luò)上存在多個(gè)約束的情況,時(shí)序分析工具總是選擇最苛刻的約束條件作為計(jì)算建立時(shí)間和保持時(shí)間的約束條件。對于特殊的電路結(jié)構(gòu)還可以通過設(shè)置多周期路徑和最大最小延時(shí)等辦法來滿足建立時(shí)間和保持時(shí)間的要求。(3) 異步電路的處理通常靜態(tài)時(shí)序分析工具不能對含有如組合反饋環(huán)、自定時(shí)電路等異步邏輯進(jìn)行靜態(tài)時(shí)序分析,一般采取打斷組合反饋環(huán)路或?qū)惒诫娐泛屯诫娐犯綦x開并將時(shí)序路徑設(shè)為無效等措施來處理,也可以采取設(shè)置最大、最小延時(shí)等約束條件來約束異步邏輯。當(dāng)設(shè)計(jì)完成后一定要做一次全芯片的功能仿真來驗(yàn)證異步電路的行為是否正確。以上討論了各種電路的時(shí)序約束,事實(shí)上當(dāng)我們拿到一個(gè)電路時(shí)開始可能不清楚具體的時(shí)序目標(biāo),那么可以先不加任何約束,將電路映射到門級,分析一下此時(shí)電路的工作速度,根據(jù)這個(gè)結(jié)果設(shè)定具體的約束,再對電路重新編譯,如此不斷反復(fù)調(diào)整,直到對設(shè)計(jì)進(jìn)行正確、合理的約束。此外當(dāng)?shù)玫诫娐返拈T級網(wǎng)表時(shí)還可以借助一些參數(shù)提取工具獲得有關(guān)電路的實(shí)際的負(fù)載、驅(qū)動和時(shí)序等方面的信息。(二)時(shí)序約束的特別考慮前面討論的時(shí)序約束和后面將要討論的靜態(tài)時(shí)序分析都假定時(shí)序路徑工作在一個(gè)時(shí)鐘周期的時(shí)間內(nèi),數(shù)據(jù)從一條路徑的源端傳播到末端在一個(gè)時(shí)鐘周期的時(shí)間內(nèi)完成。但是有些電路并不遵守這種單周期時(shí)序,對這些電路如果不做適當(dāng)處理將大大影響時(shí)序分析的效率。一般來說可以從下面幾個(gè)方面來描述這些特殊的時(shí)序關(guān)系:(1)設(shè)置偽路徑所謂的偽路徑是指那些沒有邏輯和功能意義的路徑,這些路徑雖然存在于電路中但是由于各種原因并不用來傳遞信號,比如兩個(gè)異步時(shí)鐘之間的路徑。由于靜態(tài)時(shí)序分析工具不考慮電路的動態(tài)行為,因此它不能完全識別電路中可能存在的偽路徑,使得偽路徑成為靜態(tài)時(shí)序分析的一個(gè)重要障礙。因此設(shè)計(jì)者應(yīng)根據(jù)對電路的理解正確而有效的設(shè)置電路中可能存在的這些偽路徑。將一條路徑設(shè)為偽路徑后,原來施加給它的時(shí)序約束將不再存在。靜態(tài)時(shí)序分析工具可能還會計(jì)算這條路徑上的延時(shí),但是不管路徑上的延時(shí)多大都不再報(bào)錯。(2)設(shè)置最大最小路徑延時(shí)一般,靜態(tài)時(shí)序分析工具按照單周期時(shí)序規(guī)則,根據(jù)時(shí)鐘沿和路經(jīng)的建立時(shí)間、保持時(shí)間來確定一條路徑的最大、最小延時(shí),其中建立時(shí)間和保持時(shí)間的檢查將考慮所有相關(guān)的設(shè)計(jì)參數(shù)如路徑上組合邏輯的延時(shí)、工藝庫中寄存器的建立時(shí)間和保持時(shí)間的要求以及網(wǎng)絡(luò)延時(shí)等等。但是有時(shí)侯通過這種方法估算出來的時(shí)序關(guān)系并不能滿足設(shè)計(jì)者對某部分電路的時(shí)序要求,此時(shí)設(shè)計(jì)者可以使用有關(guān)約束命令來強(qiáng)行設(shè)定某些路徑上的最大、最小時(shí)序要求。(3)設(shè)置多周期路徑設(shè)計(jì)者可以指定在某條時(shí)序路徑上數(shù)據(jù)從源端傳遞到末端所需的時(shí)鐘周期數(shù),以此來突破單周期時(shí)序規(guī)則的限制。設(shè)置多周期路徑的辦法比設(shè)置最大延時(shí)值的好處在于由此設(shè)定的最大延時(shí)值可以隨時(shí)鐘周期的變化而自動調(diào)整。需要特別注意的是對某條路徑設(shè)置為多周期路徑后,該路徑將隨之建立起新的建立時(shí)間和保持時(shí)間關(guān)系。(三)靜態(tài)時(shí)序分析靜態(tài)時(shí)序分析和動態(tài)時(shí)序仿真是分析和驗(yàn)證電路時(shí)序行為的兩個(gè)基本手段。靜態(tài)時(shí)序分析在不需激勵的條件下就可以快速的分析電路中的所有時(shí)序路徑是否滿足約束要求。但是靜態(tài)時(shí)序分析存在的問題在于它不了解電路的動態(tài)行為,因此受到電路中眾多偽路徑的困擾,同時(shí)目前靜態(tài)時(shí)序分析還只局限于對同步電路的分析。因此設(shè)計(jì)最后一定要對全芯片進(jìn)行一次動態(tài)仿真。靜態(tài)時(shí)序分析工具將電路看成是由許多條時(shí)序路徑組成,一般可以分成如下四類時(shí)序路徑,如圖4所示:>輸入端口到寄存器的數(shù)據(jù)端(Path1)>寄存器的時(shí)鐘端到寄存器的數(shù)據(jù)端(Path2)>寄存器的時(shí)鐘端到電路輸出端口(Path3)>電路輸入端口到電路輸出端口(Path4)圖4時(shí)序路徑靜態(tài)時(shí)序分析工作過程一般包含如下三個(gè)步驟:>將電路打散為一系列的時(shí)序路徑>計(jì)算每條路徑的延時(shí)>分析并報(bào)告每條路徑的延時(shí)是否滿足時(shí)序約束的要求。隨著電路設(shè)計(jì)規(guī)模越來越大、電路工作頻率越來越高,應(yīng)該在電路設(shè)計(jì)的各個(gè)階段充分利用靜態(tài)時(shí)序分析技術(shù),盡早發(fā)現(xiàn)電路中存在的時(shí)序隱患。在芯片的早期規(guī)范和系統(tǒng)級設(shè)計(jì)階段,就可以為一些甚至還不存在底層網(wǎng)表的模塊創(chuàng)建時(shí)序模型,在頂層對整個(gè)電路的時(shí)序行為進(jìn)行規(guī)范;隨著設(shè)計(jì)的深入,在版圖設(shè)計(jì)之前,還以根據(jù)工藝庫中的器件延時(shí)和從線負(fù)載模型估算出來的網(wǎng)絡(luò)延時(shí)進(jìn)行更進(jìn)一步的靜態(tài)時(shí)序分析;至于在版圖設(shè)計(jì)完成之后,則可從版圖直接提取器件和網(wǎng)絡(luò)延時(shí)進(jìn)行精確的時(shí)序分析。ForRTLmodulesthathavetwoormoreasynchronousclocksasinputs,adesignerwillberequiredtoindicatetothestatictiminganalysistoolwhichsignalpathsshouldbeignored.Thisisaccomplishedby“settingfalsepaths”onsignalsthatcrossfromoneclockdomaintoanother.Thiscanbeatediousanderrorpronejobunlesstheguidelinesinthenexttwosectionsarefollowed.ClockNamingConventionsGuideline:UseaclocknamingconventiontoidentifytheclocksourceofeverysignalinadesignReason:Anamingconventionhelpsallteammemberstoidentifytheclockdomainforeverysignalinadesignandalsomakesgroupingofsignalsfortiminganalysiseasiertodousingregularexpression“wild-carding”fromwithinasynthesisscripts.DesignPartitioningGuideline:OnlyallowoneclockpermoduleReason:Statictiminganalysisandcreatingsynthesisscriptsismoreeasilyaccomplishedonsingle-clockmodulesorgroupsofdingle-clockmodules.Guideline:Createasynchronizermoduleforeachsetofsignalsthatpassfromjustoneclockdomainintoanotherclockdomain.Reason:Itisgiventhatanysignalpassingfromoneclockdomaintoanotherclockdomainisgoingtohavesetupandholdtimeproblem.Noworst-case(maxtime)timinganalysisisrequiredforsynchronizermodules.Onlybestcase(mintime)timinganalysisisrequiredbetweenfirstandsecondstageflip-flopstoensurethatallholdtimesaremet.Also,gate-levelsimulationscanmoreeasilybeconfiguredtoignoresetupandholdtimeviolationsonthefirststageofeachsynchronizer.Thenextlogicalstepwastopartitionthedesignsothateveryinputmodulesignalwasalreadysynchronizedtothesameclockdomainbeforeenteringthemodule.Whyisthissignificant?Ifallsignalsenteringandleavingthemodulearesynchronoustotheclockusedinthemodule,thedesignisnowcompletelysynchronous!Nowtheentiremodulecanbestatictiminganalyzedwithoutany“falsepaths”anddesigncompilercanbeusedtogroupallofthesame-clocksynchronousmodulestoperformcomplete,sequentialstatictiminganalysiswithineachclockdomain.SynchronizingfastsignalsintoslowclockdomainsAgeneralproblemassociatedwithsynchronizersistheproblemthatasignalfromasendingclockdomainmightchangevaluestwicebeforeitcanbesampledintoaslowerclockdomain.PassingmultiplecontrolsignalsAfrequentmistakemadebyengineerswhenworkingonmulti-clockdesignispassingmultiplecontrolsignalsfromoneclockdomaintoanotherandoverlookingtheimportanceofthesequencingofthecontrolsignals.Iftheorderofalignmen

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論