国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      使用相對(duì)時(shí)的電路綜合和驗(yàn)證的制作方法

      文檔序號(hào):6419330閱讀:238來(lái)源:國(guó)知局
      專利名稱:使用相對(duì)時(shí)的電路綜合和驗(yàn)證的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及集成電路制造,更具體地,本發(fā)明涉及根據(jù)特性說(shuō)明來(lái)綜合和驗(yàn)證定時(shí)電路的系統(tǒng)和方法。
      背景信息數(shù)字電路中時(shí)序的設(shè)計(jì)是極其困難的挑戰(zhàn)。傳統(tǒng)的時(shí)鐘數(shù)字設(shè)計(jì)通過(guò)把電路分解成無(wú)循環(huán)組合邏輯(CL)級(jí)和級(jí)間時(shí)鐘鎖存器而解決這個(gè)問(wèn)題;時(shí)鐘周期只被調(diào)諧來(lái)適應(yīng)CL級(jí)中最壞的傳播延時(shí)。組合邏輯的特性然后可被規(guī)定和被綜合,而不用考慮時(shí)序。速度無(wú)關(guān)(SI)的異步電路類似于時(shí)鐘的CL設(shè)計(jì),因?yàn)镾I電路是與時(shí)間無(wú)關(guān)的,-該特性對(duì)于任何門延時(shí)都是正確的。
      高性能電路,諸如時(shí)鐘同步的和異步的,從更積極的定時(shí)方法得到好處。時(shí)鐘同步的電路可以本地化地處理時(shí)間,允許在電路的不同部分中的調(diào)整的和可變的時(shí)間。時(shí)間上異步的和順序的電路可以具有大大地增強(qiáng)的性能,代價(jià)是對(duì)于延時(shí)變化的較低的魯棒性。
      度量時(shí)序需要傳播時(shí)間的技術(shù)規(guī)范或傳播時(shí)間范圍的技術(shù)規(guī)范。不幸地,度量時(shí)序分析會(huì)使得復(fù)雜性大大地增加,即使在使用簡(jiǎn)單的本地化的時(shí)序時(shí)。所以,即使中等大小的定時(shí)電路的綜合和驗(yàn)證也變得難以駕馭的。而且,精確的度量范圍需要布局配置的參量,而在電路被綜合時(shí),這些參量可能不存在。
      所需要的是規(guī)定一個(gè)電路的系統(tǒng)和方法,它使得電路不取決于傳播延時(shí)或傳播延時(shí)的估值,同時(shí)保持無(wú)冒險(xiǎn)設(shè)計(jì)的綜合和驗(yàn)證。
      發(fā)明概述按照本發(fā)明的一個(gè)方面,描述了根據(jù)電路的特性說(shuō)明執(zhí)行邏輯綜合的系統(tǒng)和方法。限定了電路中信號(hào)的信號(hào)排序,其中限定電路中信號(hào)的信號(hào)排序包括規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序。特性說(shuō)明作為信號(hào)排序的函數(shù)被修改。然后,電路作為修改的特性說(shuō)明的函數(shù)被綜合。
      按照本發(fā)明的另一個(gè)方面,描述了根據(jù)電路的特性說(shuō)明執(zhí)行邏輯綜合的系統(tǒng)和方法。限定了電路中信號(hào)的信號(hào)排序,其中限定電路中信號(hào)的信號(hào)排序,包括規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序。特性說(shuō)明作為信號(hào)排序的函數(shù)被修改。然后,電路作為修改的特性說(shuō)明的函數(shù)被驗(yàn)證。
      按照本發(fā)明的再一個(gè)方面,電路包括多個(gè)晶體管和連接多個(gè)晶體管的兩個(gè)或兩個(gè)以上的晶體管的導(dǎo)線。導(dǎo)線作為電路的特性說(shuō)明的函數(shù)被限定和被綜合,其中特性說(shuō)明包括規(guī)定在電路內(nèi)多個(gè)事件之間的相對(duì)排序的信息。
      按照本發(fā)明的再一個(gè)方面,計(jì)算機(jī)可讀的媒體包括在電路的特性說(shuō)明中用于代表電路的程序代碼,用于限定電路中信號(hào)的信號(hào)排序的程序代碼,其中限定包括規(guī)定在電路內(nèi)多個(gè)事件之間的相對(duì)排序,用于作為信號(hào)排序的函數(shù)來(lái)修改特性說(shuō)明的程序代碼,以及用于作為修改的特性說(shuō)明的函數(shù)來(lái)綜合電路的程序代碼。
      附圖簡(jiǎn)短描述按照本發(fā)明的再一個(gè)方面,計(jì)算機(jī)可讀的媒體包括在電路的特性說(shuō)明中用于代表電路的程序代碼,用于限定電路中信號(hào)的信號(hào)排序的程序代碼,其中限定包括規(guī)定在電路內(nèi)多個(gè)事件之間的相對(duì)排序,用于作為信號(hào)排序的函數(shù)來(lái)修改特性說(shuō)明的程序代碼,以及用于作為修改的特性說(shuō)明的函數(shù)來(lái)驗(yàn)證電路的程序代碼。


      圖1a顯示按照本發(fā)明的邏輯綜合系統(tǒng);圖1b顯示按照本發(fā)明的邏輯驗(yàn)證系統(tǒng);圖2顯示按照本發(fā)明的綜合和/或驗(yàn)證邏輯的方法;圖3顯示應(yīng)用圖2的協(xié)議的計(jì)算機(jī)可讀媒體存儲(chǔ)程序代碼;圖4a-c顯示設(shè)置-復(fù)位跳動(dòng)的綜合;圖5a-c顯示通過(guò)應(yīng)用按照本發(fā)明的一系列相對(duì)時(shí)序假定,簡(jiǎn)單的二輸入端通用的C-單元的演進(jìn);圖6a-e顯示通過(guò)應(yīng)用按照本發(fā)明的一系列相對(duì)時(shí)序假定,靜態(tài)AND-ORC-單元的演進(jìn);圖7是比較圖6a-e的電路的屬性的表;圖8a-d是通過(guò)應(yīng)用按照本發(fā)明的一系列相對(duì)時(shí)序假定簡(jiǎn)化的FIFO的Petri網(wǎng)說(shuō)明;圖9a-d是通過(guò)應(yīng)用按照本發(fā)明的一系列相對(duì)時(shí)序假定的FIFO的演變;圖10顯示3D狀態(tài)機(jī);圖11顯示圖9b的電路限定的物理實(shí)施方案;圖12顯示相對(duì)定時(shí)的脈沖模式FIFO小區(qū);
      圖13顯示圖12的FIFO小區(qū)的重排的版本;圖14顯示四周期請(qǐng)求-應(yīng)答握手;圖15是比較圖9a-d的屬性的表;圖16a和b顯示通過(guò)應(yīng)用按照本發(fā)明的一系列相對(duì)時(shí)序假定的Tag Unit(標(biāo)記單元)的演進(jìn);圖17顯示圖16a所示的Tag Unit(標(biāo)記單元)的各種元件;圖18是事件排序中時(shí)序假定的說(shuō)明;圖19是同時(shí)性時(shí)序假定的說(shuō)明;圖20是早先使能假定的說(shuō)明;圖21是xyz電路的例子;圖22是對(duì)于圖21的電路的序假定的自動(dòng)產(chǎn)生的例子;圖23是按照本發(fā)明的、圖21的電路的最佳化版本;圖24a和b顯示VME總線控制器的I/O接口;圖25a和b顯示讀和寫周期的狀態(tài)圖,分別用于圖24a和b的I/O接口;圖26a和b顯示狀態(tài)圖的另一個(gè)版本,描述圖24a和b的I/O接口的完全的特性;圖27顯示被使用來(lái)代表通用的C單元的符號(hào);圖28a和b顯示圖24a和b的VME總線控制器的技術(shù)規(guī)范,以及該技術(shù)規(guī)范的一個(gè)速度無(wú)關(guān)的實(shí)施例;圖29顯示假定慢環(huán)境的、圖28a的電路的一個(gè)相對(duì)定時(shí)的實(shí)施例;圖30顯示假定慢環(huán)境的、圖28a的電路的另一個(gè)相對(duì)定時(shí)的實(shí)施例;圖31顯示假定慢環(huán)境和慢總線控制邏輯的、圖28a的電路的一個(gè)相對(duì)定時(shí)的實(shí)施例;圖32顯示圖31的電路的時(shí)序分析;以及圖33顯示圖31內(nèi)的延時(shí)墊整,以便滿足時(shí)序假定。
      優(yōu)選實(shí)施例描述在以下的優(yōu)選實(shí)施例的詳細(xì)說(shuō)明中,參考了作為本發(fā)明的一部分的附圖,以及其中通過(guò)說(shuō)明顯示了其中可以實(shí)施本發(fā)明的特定的實(shí)施例。應(yīng)當(dāng)看到,其它實(shí)施例可被利用,以及可以作出結(jié)構(gòu)性改變,而不背離本發(fā)明的范圍。
      圖1a上顯示了邏輯綜合系統(tǒng)10。圖1a顯示具有被連接到顯示器14與數(shù)據(jù)輸入裝置16的處理單元12的工作站。處理單元12包括存儲(chǔ)器裝置18,被使用來(lái)存儲(chǔ)按照本發(fā)明的程序代碼。
      邏輯綜合系統(tǒng)10使用電路的特性說(shuō)明來(lái)綜合該電路。在一個(gè)實(shí)施例中,被安裝在工作站中的程序代碼,在被執(zhí)行時(shí),作為電路中一個(gè)或多個(gè)信號(hào)的相對(duì)排序的函數(shù)修改特性說(shuō)明,以及作為修改特性說(shuō)明的函數(shù)來(lái)綜合該電路。
      圖1b上顯示邏輯驗(yàn)證系統(tǒng)40。圖1b顯示具有被連接到顯示器44與數(shù)據(jù)輸入裝置46的處理單元42的工作站。處理單元42包括存儲(chǔ)器裝置48,被使用來(lái)存儲(chǔ)按照本發(fā)明的程序代碼。
      邏輯驗(yàn)證系統(tǒng)40使用電路的特性說(shuō)明來(lái)驗(yàn)證該電路的運(yùn)行。在一個(gè)實(shí)施例中,被安裝在工作站中的程序代碼,在被執(zhí)行時(shí),修改特性說(shuō)明作為電路中一個(gè)或多個(gè)信號(hào)的相對(duì)排序的函數(shù),以及驗(yàn)證該電路作為修改特性說(shuō)明的函數(shù)。
      相對(duì)定時(shí)是代表和對(duì)在同步和異步電路中的延時(shí)推理的新方法。在一個(gè)實(shí)施例中,設(shè)計(jì)者通過(guò)對(duì)于事件的相對(duì)排序作出斷言(例如,在信號(hào)B進(jìn)到低電平以前,信號(hào)A進(jìn)到高電平),而對(duì)電路的特性說(shuō)明加上新的定義。綜合和驗(yàn)證算法使用這些斷言來(lái)限制大的狀態(tài)空間和改進(jìn)綜合的質(zhì)量,以及增加驗(yàn)證的容量。在一個(gè)實(shí)施例中,相對(duì)定時(shí)約束條件被表示為不等性的系統(tǒng),它可以通過(guò)檢驗(yàn)路徑延時(shí),而被證明保持在任何系統(tǒng)中。
      如上所述,速度無(wú)關(guān)的電路的綜合假定一個(gè)延時(shí)模型,它對(duì)于從被使用來(lái)實(shí)施它的電路和技術(shù)的實(shí)際環(huán)境所預(yù)期的時(shí)間特性,可被看作為太保守。相對(duì)定時(shí)約束條件,通過(guò)對(duì)環(huán)境和電路本身的特性作出某些時(shí)序假定,允許設(shè)計(jì)者簡(jiǎn)化被綜合的電路。然而,這樣的電路不一定保持速度無(wú)關(guān)電路的關(guān)鍵性質(zhì),即,電路對(duì)于系統(tǒng)元件的所有可能的延時(shí)不一定都作出正確反應(yīng)。為此,重要的是知道在哪些條件下,電路正確地運(yùn)行。
      圖2顯示把相對(duì)定時(shí)應(yīng)用到特性說(shuō)明的例子。在圖2上,在20,電路通過(guò)特性說(shuō)明來(lái)描述。在22,在電路內(nèi)兩個(gè)或多個(gè)信號(hào)之間規(guī)定一個(gè)排序。當(dāng)信號(hào)隨時(shí)間改變狀態(tài)時(shí),例如通過(guò)限定,這個(gè)排序沒(méi)有被規(guī)定。而是,它由更無(wú)定形的相對(duì)定時(shí)關(guān)系規(guī)定,被限制為描述“信號(hào)a有時(shí)在信號(hào)b之前發(fā)生”的關(guān)系。在24,特性說(shuō)明作為對(duì)于信號(hào)限定的相對(duì)定時(shí)關(guān)系的函數(shù)被修改,以及在26,電路作為修改的特性說(shuō)明的函數(shù)被綜合或被驗(yàn)證。在一個(gè)實(shí)施例中,邏輯綜合系統(tǒng)10和邏輯驗(yàn)證系統(tǒng)40自動(dòng)從特性說(shuō)明產(chǎn)生相對(duì)定時(shí)假定。在一個(gè)這樣的實(shí)施例中,邏輯驗(yàn)證系統(tǒng)40識(shí)別和驗(yàn)證在不是速度無(wú)關(guān)的電路中的相對(duì)定時(shí)約束條件。
      應(yīng)用這些方法的程序代碼可以通過(guò)使用計(jì)算機(jī)媒體30被分布,如圖3所示。
      相對(duì)定時(shí)可以在異步和同步設(shè)計(jì)中被使用來(lái)減小電路的復(fù)雜性、功率和面積,以及增加設(shè)計(jì)的性能和可測(cè)試性。例如,相對(duì)定時(shí)應(yīng)用到在微處理器設(shè)計(jì)中使用的電路,當(dāng)比起400MHz Pentium(奔騰)處理器中的電路時(shí),在性能上提高3倍以及在功率上減小兩倍,只是在電路的面積上增加15%。另外,新的電路具有95%偽固定型測(cè)試度。
      應(yīng)用相對(duì)定時(shí)設(shè)計(jì)方法的其它的好處包括簡(jiǎn)化了到時(shí)鐘同步的設(shè)計(jì)的接口,對(duì)于突發(fā)模式和復(fù)雜門綜合機(jī)的驗(yàn)證支持,脈沖模式電路,以及手工設(shè)計(jì)的定時(shí)電路?,F(xiàn)在通過(guò)設(shè)計(jì)例子描述相對(duì)定時(shí)的多種利益和應(yīng)用項(xiàng),正如下面詳細(xì)描述的。
      在以下的討論中,采用方程來(lái)描述電路中信號(hào)之間的關(guān)系。在討論中,輸入信號(hào)由信號(hào)名字下面加杠來(lái)表示,倒相信號(hào)由在信號(hào)名字后面加放一個(gè)#來(lái)表示,上升沿由在符號(hào)名稱后面加放一個(gè)↑來(lái)表示,而下降沿由在符號(hào)名稱后面加放一個(gè)↓來(lái)表示。信號(hào)名字下面不加杠的信號(hào)是輸出信號(hào)。這些慣例被表示在表1。對(duì)于CCS,“.”是順序運(yùn)算符,“+”是非確定性選擇符,“|”是并行組合,以及“\{a}”是加到信號(hào)a的限制運(yùn)算符。
      表1符號(hào)慣用法以下的例子是根據(jù)采用單個(gè)p器件的非時(shí)鐘觸發(fā)的多米諾門。異步工具,諸如3D,ATACS和Petrify,可以典型地綜合設(shè)置-復(fù)位跳動(dòng)以及適當(dāng)?shù)墓δ?一個(gè)例子被顯示在圖4a上)。然后,可以使用技術(shù)映射來(lái)把圖4a的功能映射為單變量復(fù)位(等效地設(shè)置)功能,以及通過(guò)使用標(biāo)準(zhǔn)的立足的多米諾門來(lái)實(shí)施它們,如圖4b所示。(圖4b顯示實(shí)施設(shè)置-復(fù)位跳動(dòng)的立足的多米諾門(符號(hào)和電路),具有fr=x#,fs=xxax(b+c)圖4c。)當(dāng)在設(shè)置函數(shù)中沒(méi)有使用復(fù)位變量時(shí),代之以使用立足的多米諾門,如圖4c所示。(圖4c顯示實(shí)施設(shè)置-復(fù)位觸發(fā)器的立足的多米諾門(符號(hào)和電路),具有fr=x#,fs=ax(b+c)。)圖5a上顯示簡(jiǎn)單的兩輸入端通用的C單元C=(a|b).z.C(如在CCS中定義的)和它的CMOS實(shí)施方案。給定假定為RT1a<bC單元被歸結(jié)為緩存器C=b.z.C。如果假定被限制為負(fù)沿,RT2a↓<b↓復(fù)位函數(shù)只包含b↓,以及C單元可被實(shí)施為立足的多米諾門(圖5b);C=a↓.b↓.z↓.(a↑|b↑).z↑.C。通過(guò)對(duì)于正沿的同樣的假定,RT3a↑<b↑倒相輸入可被應(yīng)用,以及可以使用多米諾門的非緩存的z#輸出。圖5c上顯示了一個(gè)這樣的方法。替換地,輸出可被緩存用于高負(fù)載?!安环€(wěn)定的”C單元C=a.b.z.C+b.(a.z.C+b.C),它是不安全的(允許輸入b跳動(dòng)和撤除),也可以如上地被同步。
      圖6a上顯示靜態(tài)AND-ORC單元。這個(gè)電路不是電路無(wú)關(guān)的,但是安全的,只要環(huán)境是足夠慢的。如果環(huán)境快速地動(dòng)作,則在節(jié)點(diǎn)ac穩(wěn)定在“1”以前,b↓會(huì)立即跟隨z↑。以下的要求可被加上,以便校正情形
      RT4bc↑<a↓RT5ac↑<b↓RT1-5被稱為相對(duì)定時(shí)(RT)預(yù)測(cè)。它們規(guī)定對(duì)于系統(tǒng)10和40的各種時(shí)序假定。
      在一個(gè)實(shí)施例中,RT4和RT5由驗(yàn)證工具產(chǎn)生。驗(yàn)證工具通過(guò)使用驗(yàn)證算法識(shí)別系統(tǒng)中的競(jìng)賽。
      這些技術(shù)規(guī)范應(yīng)用到輸入和中間變量,因此,綜合電路應(yīng)當(dāng)確保根據(jù)環(huán)境的延時(shí)的這些排序。這些要求是與突發(fā)模式要求相同的;它們保證電路在新的輸入到達(dá)之前,是穩(wěn)定的。以下是另一組預(yù)測(cè),它們是較少的限制,因?yàn)樗鼈儾恍枰娐贩€(wěn)定性RT6bc↑<ab↓RT7ac↑<ab↓圖6b上顯示一個(gè)可能的、可以保證這些預(yù)測(cè)值保持的實(shí)施方案,其中緩存器被加在輸出端處。所有的限制可被做成對(duì)于電路是本地的,如果緩存器延時(shí)足夠大,可保證ac↑和bc↑領(lǐng)先于z↑的話。替換地,Petrify綜合如圖6c所示的靜態(tài)復(fù)合門電路,它可被驗(yàn)證速度無(wú)關(guān)的。
      假定RT2或RT3分別導(dǎo)致圖的更簡(jiǎn)單的靜止電路。應(yīng)當(dāng)指出,這兩個(gè)電路實(shí)際上是速度無(wú)關(guān)電路的子電路。
      圖7概述五個(gè)替換的設(shè)計(jì)。這些結(jié)果是基于通過(guò)使用驅(qū)動(dòng)六個(gè)標(biāo)準(zhǔn)倒相器作為負(fù)載的標(biāo)準(zhǔn)庫(kù)單元器件尺寸而進(jìn)行的仿真。它們可以在Spice軟件中使用MOSIS 0.5μ處理過(guò)程參量被仿真。除了靜態(tài)C單元(SC)以外,所有的實(shí)施方案都是無(wú)冒險(xiǎn)的。
      如圖7上看到的,速度無(wú)關(guān)電路(SIC)比所有其它的電路慢,雖然導(dǎo)致一半大小的電路的相對(duì)定時(shí)假定(SIC-RT),也提高性能30%。原先的靜態(tài)C需要最大的電路,但它也相當(dāng)快。減小的多米諾C單元(GC-RT)上升快15%(只有單個(gè)上拉晶體管),但實(shí)際上在下降沿處比gC慢。
      相對(duì)定時(shí)應(yīng)用于電路開發(fā)的一個(gè)方法是作為速度無(wú)關(guān)設(shè)計(jì)來(lái)綜合該電路。然后,通過(guò)細(xì)心應(yīng)用相對(duì)定時(shí)假定,設(shè)計(jì)被簡(jiǎn)化。在顯示單個(gè)FIFO單元的設(shè)計(jì)的圖9a-d上,顯示這樣的方法的一個(gè)例子。
      單個(gè)FIFO單元在CCS中可被規(guī)定為如下LEFT =li↑.c.lo↑.li↓.lo↓.LEFTRIGHT=c.ro↑.ri↑.ro↓.ri↓.RIGHT(1)FIFO =(LEFT|RIGHT)\{c}其中c是標(biāo)記符號(hào)以及c是互補(bǔ)標(biāo)記符號(hào)。
      表示式(1)包含兩個(gè)握手處理過(guò)程,LEFT和RIGHT.c信號(hào)綜合兩個(gè)處理過(guò)程,以使得在處理過(guò)程可以進(jìn)行之前ri必須較低,以及l(fā)i必須上升。這個(gè)基于處理過(guò)程的技術(shù)規(guī)范可以容易地被映射到圖8a的等價(jià)的petri網(wǎng)。FIFO的速度無(wú)關(guān)的版本可以通過(guò)使用Petrify被綜合。結(jié)果的電路顯示于圖9a。
      這種電路限定使用復(fù)合門假定,其中倒相器是零延時(shí),或與復(fù)合門相組合。這個(gè)限定,以及包括分立的倒相器的實(shí)際電路實(shí)施,通過(guò)使用被稱為Analyze的軟件包,可被證明為遵從在技術(shù)規(guī)范(1)中的FIFO的技術(shù)規(guī)范。
      圖9a的電路為達(dá)到速度無(wú)關(guān)付出重大的延時(shí)代價(jià)。應(yīng)當(dāng)指出,例如,lo↑在三個(gè)復(fù)合門延時(shí)后產(chǎn)生,以及ro個(gè)是在四個(gè)復(fù)合門延時(shí)后。如果假定電路可被構(gòu)建成保證同時(shí)的輸出比它們由環(huán)境應(yīng)答更快地產(chǎn)生,則性能可被改進(jìn)。這個(gè)假定可用公式表示為RT8lo↑<ri↑RT9ro↑<li↓通過(guò)把這兩個(gè)相對(duì)定時(shí)預(yù)期值加到技術(shù)規(guī)范,產(chǎn)生新的技術(shù)規(guī)范。技術(shù)規(guī)范可被表示為FIFO∧lo↑<ri↑∧ro↑<li↓(2)其中FIFO是來(lái)自技術(shù)規(guī)范(1)的技術(shù)規(guī)范。這可用圖8b的petri-網(wǎng)格表示,其中虛線箭頭是相對(duì)定時(shí)約束條件。
      應(yīng)當(dāng)指出,兩個(gè)相對(duì)定時(shí)約束條件,RT8和RT9,具有輸出領(lǐng)先輸入的形式。另外,從技術(shù)規(guī)范看到,能夠同時(shí)從一對(duì)輸入進(jìn)行輸出。這正好是突發(fā)模式約束條件,其中輸入突發(fā)是{li↑ri↓},以及輸出突發(fā)是{lo↑ro↑}。相對(duì)定時(shí)(RT)預(yù)期值限制環(huán)境,以使得輸出在輸入傳送到電路之前產(chǎn)生。顯示這種突發(fā)模式特性的網(wǎng)格圖從圖8b的petri-網(wǎng)格得出。它顯示在圖8c。把RT預(yù)期值RT8和RT9直接引入技術(shù)規(guī)范(1)產(chǎn)生圖10的Mealy狀態(tài)機(jī)。這個(gè)新的形式適用于通過(guò)3D進(jìn)行綜合,以及導(dǎo)致圖9b的對(duì)稱電路限定,它對(duì)于用零延時(shí)倒相器時(shí)是無(wú)冒險(xiǎn)的。
      這種對(duì)稱電路限定遵從技術(shù)規(guī)范(2),以及達(dá)到對(duì)于速度無(wú)關(guān)的限定的很大的性能改進(jìn)。無(wú)論如何,把圖9b的電路限定映射到物理實(shí)施方案,帶來(lái)一個(gè)問(wèn)題。電路不一致,除非倒相器具有零延時(shí)。倒相器中不受控制的延時(shí)導(dǎo)致嚴(yán)重的競(jìng)爭(zhēng),這會(huì)做成網(wǎng)絡(luò)實(shí)施方案無(wú)法符合技術(shù)規(guī)范。幸運(yùn)地,相對(duì)定時(shí)可被加到物理電路,這樣地進(jìn)行排序,以使得電路可符合技術(shù)規(guī)范。以下是電路為了避免競(jìng)爭(zhēng)所必須滿足的RT約束條件。
      RT10y2#↑<li↑RT11y2#<ri#RT12li2#↓<ro↑這些限制由驗(yàn)證算法產(chǎn)生;它們只應(yīng)用到實(shí)際實(shí)施方案,以及必須由時(shí)序驗(yàn)證器驗(yàn)證,以確保競(jìng)爭(zhēng)不是嚴(yán)重的。
      圖9a的速度無(wú)關(guān)電路的另一個(gè)修改方案是可能的。假定技術(shù)規(guī)范(2)的電路可被放置在帶有單個(gè)標(biāo)記的大的環(huán)中。如果該環(huán)足夠大,電路延時(shí)將確保標(biāo)記總是到達(dá)空閑的單元。所以,在大的環(huán)中,處理過(guò)程RIGHT中的握手總是完成,以及RIGHT接口在LEFT接口成為工作的之前將成為空閑的。
      SI或BM電路將被安全地使用于這樣的環(huán)境下。然而,如果利用系統(tǒng)的定時(shí),則可以綜合大大地改進(jìn)的電路(按照功率,性能,面積和可測(cè)試性)。RT13是對(duì)于這種環(huán)境的預(yù)期值RT13ri↓<li↑這個(gè)假定可用如圖8d所示的圖形來(lái)表示,其中點(diǎn)弧線是在RT13中顯示的相對(duì)定時(shí)關(guān)系。
      應(yīng)當(dāng)指出,點(diǎn)弧線不是因果的弧線;ri在li可上升之前必須較低,但ri不能遲于li。也就是,設(shè)計(jì)者假定,在點(diǎn)弧線上總是有一個(gè)標(biāo)記;所以,設(shè)計(jì)者必須查明,ri變成低電平總是在lo變成低電平之前發(fā)生。這代表電路運(yùn)行中的主要改變;LEFT處理不再直接與RIGHT處理過(guò)程同步。而是,同步是通過(guò)系統(tǒng)時(shí)序達(dá)到的。
      圖9c上的電路可以用來(lái)自技術(shù)規(guī)范(2)的3D而與RT預(yù)測(cè)值RT13同步。信號(hào)lo必須被產(chǎn)生成在li后面足夠長(zhǎng),以使得多米諾AND門被完全設(shè)置之前不會(huì)被禁止。這導(dǎo)致對(duì)電路中嚴(yán)重競(jìng)爭(zhēng)的多個(gè)RT約束條件。然而,如果lo信號(hào)的時(shí)序可以在系統(tǒng)中被正確地調(diào)整來(lái)滿足RT約束條件和消除競(jìng)爭(zhēng),則結(jié)果是如圖9c所示的、快速的、小的、可測(cè)試的電路。
      脈沖模式FIFO單元也可以通過(guò)使用被加到程序(例如,ATACS)的相對(duì)定時(shí)約束條件而被設(shè)計(jì)。作為替換的方法,脈沖模式電路可以從RT13得出。
      通過(guò)如圖8d所示的時(shí)序假定的過(guò)渡特性,ro↓必須領(lǐng)先于li↑,允許我們一起去除信號(hào)ri↑。這可以通過(guò)觀看如圖12所示的部分的環(huán)而被證明。
      顯然,lo信號(hào)正好是li信號(hào)的延時(shí)的版本。重排lo器件和磁泡,導(dǎo)致圖13的電路,它把LEFT處理過(guò)程與RIGHT過(guò)程分離。這個(gè)重排去除輸出lo和輸入ri,把它們做成本地信號(hào)。
      應(yīng)當(dāng)指出,圖13上的信號(hào)li#正好是li倒相。當(dāng)兩個(gè)信號(hào)li和li#都是高電平時(shí),過(guò)渡li↑產(chǎn)生一個(gè)短的時(shí)間間隔,這將設(shè)置多米諾門的輸出。這些信號(hào)為高電平的持續(xù)時(shí)間取決于在li#路徑上的延時(shí)。這個(gè)信號(hào)對(duì)可被組合到單條線li中,如果在這條線上的信號(hào)作為脈沖運(yùn)行的話。在圖9d上可以看到最后的電路的導(dǎo)出。
      對(duì)于脈沖模式電路的技術(shù)規(guī)范為如下LEFTP =li↑.c.li↓.LEFTRIGHTP= cro↑.ro↓RIGHT(3)PULSE =(LEFTP|RIGHTP)\{c}ro<li↑設(shè)計(jì)可靠的脈沖模式電路是非常困難的。通過(guò)了解對(duì)于本例來(lái)說(shuō)脈沖模式電路如何被得出,可以看到脈沖電路的某些約束條件。圖14顯示四周期請(qǐng)求-應(yīng)答握手。約束條件1到4是與速度無(wú)關(guān)信令成因果關(guān)系的。通過(guò)去除應(yīng)答信號(hào)(在本例中是lo和ri),我們只留下要求約束條件2p和4p的請(qǐng)求信號(hào)。這些約束條件包含最小和最大度量界限。然而,對(duì)于這些界限的尺寸的實(shí)際需要可以用相對(duì)定時(shí)弧線來(lái)表示。有趣地,這些弧線相應(yīng)于非常類似于標(biāo)準(zhǔn)請(qǐng)求應(yīng)當(dāng)握手的協(xié)議。圖9d的li上的脈沖造成輸出脈沖ro,如技術(shù)規(guī)范(3)需要的。如果我們?cè)趫D14上把req映射到li以及ack映射到ro,則我們看到弧線1是因果的。
      然而,如果脈沖太短以致于lo↑(ack↑)不出現(xiàn),則這個(gè)電路失敗。這可以通過(guò)放置一個(gè)相對(duì)定時(shí)過(guò)渡(它需要lo↑(ack↑)在li↓(req↓)之前)而得以防止。這使得圖14上的弧線2是一個(gè)RT預(yù)測(cè)值,稍微限制技術(shù)規(guī)范。(也可能不限制技術(shù)規(guī)范特性,如果內(nèi)部信號(hào)跳動(dòng),保證多米諾門改變狀態(tài)的話。)如果li(req)脈沖太長(zhǎng),則電路也將失敗。如果ro↓(ack↓)和y↑在li↓(req↓)之前出現(xiàn),則電路將失敗。所以,圖14上的弧線3是電路工作的必要的RT預(yù)測(cè)。最后,弧線4被假定為保持給定的RT13。因此,我們具有因果的、和在脈沖模式電路中必須保持的相對(duì)定時(shí)關(guān)系的系統(tǒng),它直接模仿四個(gè)周期的握手。
      圖15上概述簡(jiǎn)單FIFO型控制器從速度無(wú)關(guān)演進(jìn)到脈沖模式電路的的結(jié)果。不同的電路特征根據(jù)魯棒性,性能,面積,功率和可測(cè)試性而不同。在圖15顯示的表上,延時(shí)以pS為單位,能量以nJ為單位,面積以晶體管計(jì)數(shù)為單位,以及可測(cè)試度是以固定型覆蓋計(jì)。
      包含無(wú)冒險(xiǎn)實(shí)施方案的唯一電路,即使在技術(shù)規(guī)范定時(shí)假定下,是速度無(wú)關(guān)電路。然而,該電路的等待時(shí)間比使用相對(duì)定時(shí)的電路慢3到4倍。而且,圖9a所示的電路不是完全可測(cè)試的,以及可測(cè)試度隨著電路被使用于更限制的環(huán)境而惡化。更積極的定時(shí)假定趨向于提高電路的性能,減小面積和功率,以及通常增加可測(cè)試度。通過(guò)使用相對(duì)定時(shí)而提高可測(cè)試度覆蓋的一個(gè)原因是因?yàn)楫?dāng)電路被不斷地最佳化時(shí)許多冗余覆蓋被去除。
      使用相對(duì)定時(shí)設(shè)計(jì)的另一個(gè)例子可以在一部分可變長(zhǎng)度指令譯碼的設(shè)計(jì)中看到,這里被稱為“標(biāo)記單元(Tag Unit)”??勺冮L(zhǎng)度指令的譯碼固有地是串行處理過(guò)程,因?yàn)槿魏沃噶畹拈L(zhǎng)度直接取決于所有先前的指令的長(zhǎng)度。對(duì)于許多計(jì)算機(jī)結(jié)構(gòu)的指令長(zhǎng)度譯碼的性能直接取決于這種串行譯碼運(yùn)行的速度。在這樣的結(jié)構(gòu)中的關(guān)鍵部件是用來(lái)實(shí)施指令串行排序的標(biāo)記單元。
      圖16a上顯示了一種速度無(wú)關(guān)的標(biāo)記單元。在本例中,所有的接口被處理為速度無(wú)關(guān)接口。關(guān)于所有接口是速度無(wú)關(guān)接口的假定是指所有的接口需要請(qǐng)求/應(yīng)答握手;這個(gè)例子假定四個(gè)周期協(xié)議。
      為完成這個(gè)方塊需要三個(gè)處理過(guò)程PA=r↑.sr↑.sa↑.(sr↓.sa↓|a↑.r↓).a↓.PAPB=sr↑.sa↑(sr↓.sa↓|r↑.a↑).r↓.a↓.PBC4=(go0|go1|go2|go3).sa.C4兩個(gè)PA處理過(guò)程在接收到r請(qǐng)求后同步四個(gè)階段握手,而兩個(gè)PB處理過(guò)程是被動(dòng)的,以及在握手前同步。所以,當(dāng)irdy和ti請(qǐng)求到達(dá)和bufreq與to完成時(shí),ti和irdy信號(hào)將被應(yīng)答以及to與bufreq周期將開始。這是在技術(shù)規(guī)范中通過(guò)重新命名信號(hào)和如下組合處理過(guò)程而完成的IRDY= PA[irdy/r,irdyack/a,go0/sr]TAGIN= PA[ti/r,tia/a,go2/sr]TAGOUT= PB[to/r,toa/a,go3/sr]BUFREQ= pB[bufreq/r,bufack/a,go2/sr]TAGUNIT=(IRDY|TAGIN|TAGOUT|BUFREQ|C4)\{go0,go1,go2,go3,sa}圖17上顯示這些處理過(guò)程通過(guò)使用諸如ATACS那樣的程序的實(shí)施方案。處理過(guò)程PA和PB導(dǎo)致非常有效的實(shí)施方案。然而,在本實(shí)施方案中,大的或門(OR門),C-單元,和從標(biāo)記路徑的輸入端到輸出端傳送通過(guò)三個(gè)狀態(tài)機(jī)的必要性造成重大的延時(shí)。
      圖16b上顯示更有效的電路。這個(gè)有效的電路是通過(guò)使用如上所述的相對(duì)定時(shí)約束條件而得出的。例如,在速度無(wú)關(guān)實(shí)施方案中的mutex假定導(dǎo)致對(duì)于tagin和tagout接口的后向路徑握手的消除。前向信號(hào)作為脈沖來(lái)處理,所以,如在上面的FIFO例子中處理的。在irdy和bufreq路徑上請(qǐng)求和應(yīng)答協(xié)議是四個(gè)周期和脈沖模式信令的組合,irdyack和bufreq是脈沖。
      圖16a的速度無(wú)關(guān)電路與圖16b的RT電路的比較表明,RT電路在可測(cè)試性,功率和性能方面提供重大的好處。在實(shí)時(shí)應(yīng)用項(xiàng)中,來(lái)自這種方法的面積的好處甚至是更高的。例如,在可被縮放成達(dá)到較高的性能的微處理器中,如果使用較慢的部件,則必須采用較高的縮放因子來(lái)滿足目標(biāo)性能。如果使用較慢的SI標(biāo)記單元,所需要的面積必須大大地激增,如果嚴(yán)格的性能目標(biāo)要被滿足的話。
      在一個(gè)實(shí)施例中,RT約束條件是通過(guò)包含支持RT的Analyze版本被產(chǎn)生和驗(yàn)證的。所有的限制可被附加到初始的處理過(guò)程技術(shù)規(guī)范上作為預(yù)測(cè)值。這簡(jiǎn)化和澄清電路的初始功能以及所需要的假定,因?yàn)槊總€(gè)接口可被規(guī)定為呼吁因果同步的、簡(jiǎn)單的處理過(guò)程。把全部的特性限制或定時(shí)限制表示為網(wǎng)絡(luò),正如以上的FIFO例子中表示的,對(duì)于理解小的例子是有幫助的,但對(duì)于較大的、實(shí)際領(lǐng)域的例子,諸如標(biāo)記單元,這會(huì)是混淆的和不實(shí)際的。
      在一個(gè)實(shí)施例中,綜合工具的修改版本,諸如Petrify,采用在定時(shí)假定下綜合無(wú)冒險(xiǎn)電路的方法。例如,在一個(gè)實(shí)施例中,為了輸送相對(duì)定時(shí)約束條件,加上了“時(shí)間”參量。另外,在一個(gè)實(shí)施例中,把一個(gè)算法加到綜合工具中,以便自動(dòng)得出“合理的”定時(shí)假定。最后,在一個(gè)實(shí)施例中,綜合工具提供后向表示法,它表示對(duì)于電路的正確的作用所需要的定時(shí)限制。下面將詳細(xì)描述這些特性的每個(gè)特性。
      在一個(gè)綜合工具環(huán)境下,可以規(guī)定三種類型的定時(shí)假定同時(shí)發(fā)生的事件的點(diǎn)火次序,同時(shí)發(fā)生的事件的同時(shí)發(fā)生,和早先使能。為了正確地理解相對(duì)定時(shí)約束條件的語(yǔ)義,必須引入使能區(qū)域和點(diǎn)火區(qū)域的概念。給定狀態(tài)圖后,事件a的使能區(qū)域EN(a)被定義為其中a是使能的狀態(tài)組。事件a的點(diǎn)火區(qū)域FR(a)被定義為其中允許a進(jìn)行點(diǎn)火的狀態(tài)組。
      雖然在速度無(wú)關(guān)電路中,兩個(gè)概念是相同的(一旦一個(gè)事件是使能的,它就可以點(diǎn)火),但當(dāng)考慮到定時(shí)假定時(shí)它們是很大地不同的。在某個(gè)狀態(tài)下一個(gè)事件可以是使能的,但在系統(tǒng)達(dá)到它的點(diǎn)火區(qū)域之前這個(gè)事件不能點(diǎn)火。所有這些假定在其中描述STG的輸入文件中被規(guī)定。它們應(yīng)當(dāng)出現(xiàn)在圖形(或狀態(tài)圖)技術(shù)說(shuō)明之后和在。end語(yǔ)句之前。
      基于同時(shí)發(fā)生事件的點(diǎn)火次序的定時(shí)假定用以下的句法被規(guī)定
      .time a<|b這個(gè)語(yǔ)句的意義為如下,“無(wú)論何時(shí)a和b同時(shí)發(fā)生時(shí)(即,同時(shí)使能但不沖突),a總是在b之前點(diǎn)火”。
      為了說(shuō)明如何由綜合工具(諸如Petrify)作出這個(gè)假定,我們將使用圖18的例子。我們可以看到,事件和具有不同的關(guān)系。它們可以是同時(shí)發(fā)生的(都在狀態(tài)s0被使能)或被排序的(a在s2被使能,以及b在s7被使能)。定時(shí)假定只應(yīng)用到其中事件是同時(shí)發(fā)生的那些狀態(tài)。
      定時(shí)假定的應(yīng)用是指b將不在s0點(diǎn)火。結(jié)果,狀態(tài)s1在時(shí)域中將成為不可達(dá)到的。
      對(duì)于事件b,Petrify認(rèn)為,對(duì)于事件b的使能來(lái)說(shuō)s0是“不關(guān)心的”狀態(tài),即,在邏輯綜合后將報(bào)告兩個(gè)不同的解決方案。第一個(gè)解決方案是其中b是在s0時(shí)使能的情形。而且,定時(shí)假定將使得s0是不能達(dá)到的,因此,b在s6被達(dá)到之前不點(diǎn)火。
      第一個(gè)解決方案是其中b在s0時(shí)不是使能的情形。這樣,將由電路的邏輯來(lái)迫使次序a→b,即,對(duì)于這個(gè)解決方案成為正確的,不需要定時(shí)假定。
      這兩個(gè)解決方案可以形式上表示為如下{s6}=FR(b)EN(b){s0,S6}以及Petrify將選擇使得邏輯化費(fèi)最小的、EN(b)的解決辦法。
      基于同時(shí)發(fā)生事件的同時(shí)出現(xiàn)的定時(shí)假定用以下的句法來(lái)規(guī)定.time a=b@c圖19上顯示這個(gè)假定的例子。同時(shí)性定時(shí)假定的意義為如下,“我們?nèi)∑渲衋和b是使能的和同時(shí)發(fā)生的狀態(tài)。事件c在a和b進(jìn)行點(diǎn)火以前在任何接連的狀態(tài)下都不點(diǎn)火。這個(gè)假定只應(yīng)用在c是由a,或b,或二者觸發(fā)時(shí)的情形”。
      非正式地,這個(gè)假定描述其中在a和b之間的點(diǎn)火時(shí)間差是事件c不能區(qū)分的情形。察看這個(gè)例子,這是指如果c是由b,或由事件a和b“觸發(fā)”,則系統(tǒng)將產(chǎn)生相同的、可看到的特性。
      察看圖19的狀態(tài)圖,同時(shí)性限制表示,c在狀態(tài)s6時(shí)不點(diǎn)火,所以,狀態(tài)s5將成為不能達(dá)到的。另一方面,事件c將被允許在狀s1,s4和s6下被使能的。因此,{s4}=FR(c)EN(c){s1,s4,s6}同時(shí)性定時(shí)假定可被如下地?cái)U(kuò)展到更大的數(shù)目的事件.time a=b=c=d@x,y,z這是指事件a,b,c和d的點(diǎn)火時(shí)間被認(rèn)為是相對(duì)于事件x,y和z不可區(qū)分的。
      基于早先使能的定時(shí)假定可用以下的句法被規(guī)定.time c>b這個(gè)假定的例子被顯示于圖20。這個(gè)假定的正式的意義為如下,“我們?nèi)∑渲衏沒(méi)有被使能、但在點(diǎn)火b(即,b觸發(fā)c)以后成為使能的、所有那些狀態(tài)s-I。然后,狀態(tài)si可潛在地屬于EN(c)?!狈钦降?,這個(gè)假定表示事件c在它必須點(diǎn)火之前可以被使能的。然而,邏輯實(shí)施c的延時(shí)將保證,c在b以后點(diǎn)火。實(shí)際上,這可被看作為冒險(xiǎn)的假定,因?yàn)樾盘?hào)b和c的邏輯在邏輯綜合之前是不知道的。相對(duì)定時(shí)假定所以需要后驗(yàn)證,以便確保它們的正確性。如果它們?cè)诰C合后不被保持,則之后必須采取某些動(dòng)作。例如,設(shè)計(jì)者可以重新綜合電路,而不用不正確的假定,或改變電路的部件的延時(shí)(例如,提供晶體管尺寸改變或延時(shí)添加),以使得假定成為正確的。
      在以前的例子中,EN(c)和FR(c)被規(guī)定為如下{s6,s8}=FR(c)EN(c){s3,s4,s6,s8}早先使能假定可被擴(kuò)展到事件鏈。在先前的例子中,以下的假定也可被規(guī)定c>b>a表示EN(c)可被擴(kuò)展直到事件的使能。然而,關(guān)于b相對(duì)于a的使能,沒(méi)有作出假定。
      定時(shí)假定可以在Petrify綜合熟知的xyz例子時(shí)被使用,如圖21所示。帶有復(fù)合門的、速度無(wú)關(guān)的特性實(shí)施方案將為如下[x]=z′(x+y′);[y]=x′z′;[z]=y(tǒng)′z+x;假定x,y和z是輸出信號(hào)以及y+點(diǎn)火總是在x-點(diǎn)火之前發(fā)生。這可以通過(guò)察看y+總是在x-之前被使能而從圖21直覺(jué)推論出,以及在速度無(wú)關(guān)實(shí)施方案中對(duì)于信號(hào)x的邏輯看來(lái)比對(duì)于信號(hào)y的邏輯更復(fù)雜。(當(dāng)然,所有這些假定將在電路綜合后被驗(yàn)證。)根據(jù)這些假定,以下的定時(shí)假定可被加到特性技術(shù)規(guī)范上.outputsxyz.graphx+y+z+z+x-y+z-x-z-z-y-y-x+.marking{<y-,x+>}.time y+<|x-.end然后,電路可以用以下命令被綜合petrify xyz.g-cg-topt-eqn xyz.eqn-no其中任選項(xiàng)“-topt”表示Petrify必須考慮定時(shí)假定來(lái)導(dǎo)出邏輯。以下的邏輯被得到[x]=z′(x+y′);[y]=x′z′;[z]=x;綜合的邏輯是對(duì)于信號(hào)z的邏輯的巨大的簡(jiǎn)化。Petrify利用定時(shí)假定,認(rèn)為狀態(tài)001是不能達(dá)到的,以及把z實(shí)施為簡(jiǎn)單的緩存器。
      但與解一樣重要的是Petrify關(guān)于用于每個(gè)解的定時(shí)假定給出的反饋。在一個(gè)實(shí)施例中,文件petrify.log包括對(duì)于每個(gè)信號(hào)的不同的解決方案。在一個(gè)這樣的實(shí)施例中,對(duì)于z報(bào)告以下的解z=x>triggers(SET) x+->z+>triggers(RESET)x-->z->4transistors(2n,2p)>Estimated delayrising=18.19,falling=16.69>Timing assumptions(concurrency)y+<x-[…other solutions…]z=y(tǒng)′z+x>triggers(SET)x+->z+>triggers(RESET)(y+,x-)-yz->10transistors(5n,5p)>Estimated delayrising=18.81,falling=29.19>Speed independent(no timing assumptions)第一個(gè)解相應(yīng)于對(duì)于定時(shí)假定得到的解。第二個(gè)解相應(yīng)于速度無(wú)關(guān)實(shí)施方案。對(duì)于定時(shí)假定和觸發(fā)信號(hào)的解,有兩段報(bào)告的、重要的信息。
      在所示的實(shí)施例中,Petrify在定時(shí)假定下指示解決方案z=x只在y+在之前點(diǎn)火的假定下是正確的。相反,解z=y(tǒng)’z+x在任何定時(shí)假定下是正確的(即,它是速度無(wú)關(guān)的)。在一個(gè)實(shí)施例中,由Petrify報(bào)告的定時(shí)假定不總是與任何定時(shí)假定(它是技術(shù)規(guī)范的一部分)相同的。而是,Petrify將試圖報(bào)告使得解是正確的、不太嚴(yán)格的假定。
      在一個(gè)實(shí)施例中,在觸發(fā)信號(hào)下,Petrify指示哪些事件被信號(hào)的上升和下降過(guò)渡觸發(fā)。應(yīng)當(dāng)注意對(duì)于z-的觸發(fā)事件的差別。在“定時(shí)的”解中,y+不再觸發(fā)z-,因?yàn)榧俣ㄋ趚-之前點(diǎn)火。當(dāng)對(duì)于綜合作出“早先使能”的假定時(shí),這個(gè)信息是非常恰當(dāng)?shù)摹?br> 可以作出另一種類型的定時(shí)假定。例如,在xyz電路中,y+和z+同時(shí)被使能。如果它們的門的延時(shí)是相同的,則我們可以認(rèn)為,y+和z+的點(diǎn)火時(shí)間對(duì)于事件x-是不能區(qū)分的。技術(shù)規(guī)范現(xiàn)在被讀為以下
      .outputsxyz.graphx+y+z+z+x-y+z-x-z-z-y-y-x+.marking{<y-,x+>}.time y+=z+@x-.end在執(zhí)行與以上相同的命令后,得到以下的解[x]=y(tǒng)′;[y]=x′z′;[z]=x;算法上產(chǎn)生的、或基于同時(shí)使能的、任何定時(shí)假定不一定導(dǎo)致正確的解以及必須對(duì)于正確性進(jìn)行檢驗(yàn)。再次地,在一個(gè)實(shí)施例中,文件petrify.log將提供關(guān)于定時(shí)假定的相關(guān)的信息。在一個(gè)這樣的實(shí)施例中,文件petrify.log包含對(duì)于x的多個(gè)解。這些解可以與速度無(wú)關(guān)解進(jìn)行比較(在“其它解”中)x=y(tǒng)′>triggers(SET)y-->x+>triggers(RESET)y+->x->2transistors(1n,1p)>Estimated delayrising=13.44,falling=10.75>Concurrency reductiony+=>x->Timing assumptions(early enabling)z+<x-x=y(tǒng)′z′>triggers(SET)y-->x+>triggers(RESET)(y+,z+)->x->4transistors(2n,2p)>Estimated delayrising=27.50,falling=11.00>Timing assumptions(early enabling)z+<x-[...other solutions...]x=z′(x+y′)>triggers(SET)y-->x+>triggers(RESET)z+->x->8transistors(4n,4p)>Estimated delayrising=29.38,falling=11.00>Speed independent (no timing assumptions)解x=y(tǒng)′是通過(guò)在狀態(tài)101禁止x-(在其中它一開始是使能的)而產(chǎn)生的。這使得狀態(tài)001不能達(dá)到的。但應(yīng)當(dāng)指出,在這種情況下,由于定時(shí)假定,而不是由于對(duì)于x的邏輯沒(méi)有使能在狀態(tài)101中的x-,它是不能達(dá)到的.這是以下的消息表示的內(nèi)容>Concurrency reduction y+=>x+換句話說(shuō),y+在x-點(diǎn)火之前點(diǎn)火的事實(shí),不需要通過(guò)進(jìn)行定時(shí)假定而被驗(yàn)證。這是電路的邏輯已保證的內(nèi)容。
      而且,對(duì)于該解有另一個(gè)重要的假定>Timing assumptions (early enabling) z+<x-這表示x-被使能,以使得它成為與z+同時(shí)的(現(xiàn)在,x-在狀態(tài)110中也是被使能的)。對(duì)于正確性的假定是,z+應(yīng)當(dāng)在x-之前點(diǎn)火。為了驗(yàn)證在電路級(jí)別上的那個(gè)假定,可能需要某些附加信息,即,x-在多早的時(shí)間被使能?再次地,該信息被提供在觸發(fā)信號(hào)段中。我們可以認(rèn)識(shí)到現(xiàn)在是y+觸發(fā)x-(在速度無(wú)關(guān)解決方案中它是z+)。因此,通過(guò)組合這些信息,可以確定何時(shí)啟動(dòng)事件的使能(觸發(fā)事件),以及何時(shí)允許該事件點(diǎn)火(當(dāng)其它同時(shí)發(fā)生的事件已點(diǎn)火時(shí))。現(xiàn)在,這是設(shè)計(jì)者決定這些假定是否現(xiàn)實(shí)的,或是否可以由實(shí)施方案滿足。
      再者,有另一個(gè)感興趣的、出現(xiàn)在文件中的解決方案,即,x=y(tǒng)’z’。這個(gè)解決方法使得狀態(tài)001再次可達(dá)到的,因?yàn)閤-在狀態(tài)101中被使能。但x-也能在狀態(tài)110中較早地被使能,以及z+<x-的假定仍舊必須滿足。
      在一個(gè)實(shí)施例中,由Petrify的相對(duì)定時(shí)實(shí)施方案提供的信息的重要方面是,不同的定時(shí)假定必須被保證用于每個(gè)信號(hào)的每個(gè)不同的解。對(duì)于一個(gè)信號(hào)一個(gè)解的選擇不影響對(duì)于其它門作出的假定。然而,對(duì)于每個(gè)門的所有的解的組合可以導(dǎo)致一組更簡(jiǎn)單的限制。在上述的Petrify的實(shí)施例中,設(shè)計(jì)者弄明白限制是如何互動(dòng)的,仍舊是重要的。Petrify的這個(gè)實(shí)施例保證的內(nèi)容是,如果對(duì)于每個(gè)信號(hào)的每個(gè)單獨(dú)的解報(bào)告的定時(shí)假定被滿足,則解將是正確的。
      在一個(gè)實(shí)施例中,Petrify試圖自動(dòng)產(chǎn)生“合理的”定時(shí)假定。因?yàn)樵S多假定可以通過(guò)觀察技術(shù)規(guī)范的結(jié)構(gòu)而容易地得到,這樣的方法允許設(shè)計(jì)者主要工作在改進(jìn)電路性能的領(lǐng)域。也就是,Petrify是用于簡(jiǎn)化設(shè)計(jì)者的工作的工具,而不是代替設(shè)計(jì)者工作。實(shí)際上,在一個(gè)實(shí)施例中,Petrify識(shí)別已被自動(dòng)產(chǎn)生的假定,和實(shí)際上被使用于每個(gè)解的假定。設(shè)計(jì)者的責(zé)任正是保證定時(shí)假定的正確性。
      以下的模型被考慮用于信號(hào)過(guò)渡的延時(shí)(從它的使能時(shí)間到它的點(diǎn)火時(shí)間的延時(shí))非輸入信號(hào)實(shí)施非輸入信號(hào)的每個(gè)門具有范圍為[1-∈,1+∈]的延時(shí),其中∈<1/3。因此,兩個(gè)門的延時(shí)總是大于一個(gè)門的延時(shí)。
      輸入信號(hào)具有范圍為[1+∈,∞]的延時(shí)。因此,環(huán)境的延時(shí)總是大于一個(gè)門的延時(shí)。
      慢輸入信號(hào)具有范圍為[k,∞]的延時(shí),其中k是任何任意大的常數(shù)。延時(shí)k表示,使能進(jìn)行慢輸入信號(hào)過(guò)渡總是允許完成電路中的任何內(nèi)部活動(dòng)(例如,使能的非輸入信號(hào)的點(diǎn)火)。
      延時(shí)墊整實(shí)施任何非輸入信號(hào)的任何的門的延時(shí)可以在邏輯綜合后被伸長(zhǎng),例如,通過(guò)晶體管尺寸改變或延時(shí)墊整,以滿足需要的定時(shí)假定。
      通過(guò)使用這種延時(shí)模型的定時(shí)假定的自動(dòng)產(chǎn)生,將用圖22的例子來(lái)說(shuō)明。其中i1,...,i4是輸入信號(hào),以及其中其余信號(hào)是輸出信號(hào)。而且,通過(guò)使用以下語(yǔ)句宣布事件i4+是“慢的”.s1ow i4+對(duì)兩個(gè)同時(shí)發(fā)生事件,a和b,的相對(duì)次序所作的假定為以下(1)如果a總是在b以前被使能,以及a不是輸入事件,則a被假定為在(.time a<|b)之前點(diǎn)火。在圖22的例子中,這個(gè)假定特別是應(yīng)用到事件對(duì)a+→i4+和b+→g+。
      (2)如果a和b同時(shí)被使能,a是非輸入事件以及b是輸入事件,則a被假定為在(.time a<|b)之前點(diǎn)火。在圖22的例子中,沒(méi)有這樣的情形,但它相應(yīng)于事件對(duì)a+→b+,如果是b輸入事件的話。
      (3)如果a和b同時(shí)被使能,以及二者是非輸入事件,則Petrify試探地選擇在二者之間的次序(典型地,這個(gè)次序確定具有較簡(jiǎn)單的邏輯的事件將首先點(diǎn)火,雖然當(dāng)實(shí)際的門在邏輯綜合后得出時(shí)它是不一定是正確的)。
      (4)對(duì)于可以在非定時(shí)的領(lǐng)域中以不同的次序被使能的事件對(duì),不作假定。例如,對(duì)于事件i4+和f+,我們可以發(fā)現(xiàn)事件軌跡,其中i4+首先被使能(例如,i1+,b+,c+),以及其中f+首先被使能(例如,i1+,c+,b+)。
      在一個(gè)實(shí)施例中,如果兩個(gè)非輸入事件,和,被同時(shí)使能,以及另一個(gè)事件c由a或b(或二者)觸發(fā),同時(shí)性假定被自動(dòng)產(chǎn)生(a=b@c)。在一個(gè)這樣的實(shí)施例,Petrify只對(duì)同時(shí)事件對(duì)進(jìn)行這種分析。對(duì)兩個(gè)以上的同時(shí)事件的假定留給設(shè)計(jì)者來(lái)規(guī)定。在圖22上有同時(shí)性假定的幾個(gè)例子(例如,b+=c+@f+和r+=s+@h+)。
      在一個(gè)實(shí)施例中,當(dāng)幾個(gè)非輸入事件在它們中間具有觸發(fā)關(guān)系,Petrify自動(dòng)產(chǎn)生早先使能假定,考慮到門延時(shí)可被適當(dāng)?shù)厣扉L(zhǎng)來(lái)滿足技術(shù)規(guī)范的排序關(guān)系。在圖22的例子中,有在它們中間具有觸發(fā)關(guān)系的事件鏈(例如,c+→f+→g+→h+和r+→h+)。以下的假定被自動(dòng)產(chǎn)生.time f+>c+.time g+>f+>c+.time h+>g+>f+>c+.time h+>r+在一個(gè)實(shí)施例中,慢輸入事件的排序是基本模式假定的推廣。在一個(gè)實(shí)施例中,Petrify用以下約束條件進(jìn)行設(shè)計(jì),即,當(dāng)其它內(nèi)部活動(dòng)在進(jìn)行中時(shí)慢輸入事件的延時(shí)足夠長(zhǎng),以使得電路能夠穩(wěn)定。因?yàn)檫@個(gè)約束條件,Petrify可以自動(dòng)產(chǎn)生對(duì)慢事件點(diǎn)火次序的假定。
      在一個(gè)這樣的實(shí)施例中,時(shí)序分析這樣地進(jìn)行,以使得只有帶有慢輸入事件的、具有公共的前趨歷史的同時(shí)發(fā)生的非輸入事件被假定為首先點(diǎn)火。在察看圖22的例子后,其中只有i4+是慢輸入事件,這種直觀的概念將更清楚。
      通過(guò)查驗(yàn)圖22可以看到,事件i4+和g+在它們的歷史上具有公共的前趨事件i1+。而且,因?yàn)閕1+的點(diǎn)火,沒(méi)有其它輸入事件領(lǐng)先于使能i4+和g+。如果,i1+的點(diǎn)火時(shí)間作為時(shí)間分析的起始點(diǎn)來(lái)對(duì)待(即,t=0),則用于自動(dòng)假定的延時(shí)模型表示g+將在間隔[3(1-∈),3(1+∈)]中點(diǎn)火,即,三個(gè)門延時(shí)。另一方面,對(duì)于i4+的點(diǎn)火間隔將是在間隔[k+1-∈,∞)中,其中k可以是任意大。所以,Petrify將得出,對(duì)于g+的點(diǎn)火時(shí)間總是在對(duì)于i4+的點(diǎn)火之前。
      應(yīng)當(dāng)指出,這個(gè)假定在考慮的事件是h+時(shí)不成立的,因?yàn)閕4+和g+在它們的歷史上沒(méi)有公共的前趨事件。由于相同的原因,對(duì)于i4+和d+沒(méi)有作排序假定,因?yàn)樵跐M足i1+公共的前趨事件之前,輸入事件(i3+)領(lǐng)先于d+。
      技術(shù)上,在兩個(gè)事件的歷史上的這個(gè)共同點(diǎn)被稱為本地節(jié)點(diǎn)。基于本地節(jié)點(diǎn)的分析概括被使用于突發(fā)模式技術(shù)規(guī)范的綜合的基本節(jié)點(diǎn)的概念。突發(fā)模式機(jī)制工作在假定下,技術(shù)規(guī)范的每個(gè)狀態(tài)是總的節(jié)點(diǎn),即,在該狀態(tài)下沒(méi)有非輸入活動(dòng)是使能的。從技術(shù)規(guī)范看來(lái),基本模式不允許在環(huán)境與電路之間同時(shí)發(fā)生。
      慢輸入事件的表示法利用基本模式假定(即,邏輯可被簡(jiǎn)化)和速度無(wú)關(guān)假定(即,同時(shí)發(fā)生沒(méi)有被犧牲)。作為例子,慢輸入事件的定義允許綜合具有幾個(gè)握手信號(hào)組的系統(tǒng)。它是通過(guò)假定具有每個(gè)各個(gè)握手的“本地”基本模式運(yùn)行,但通過(guò)在不同的獨(dú)立的握手組之間也保持同時(shí)發(fā)生,而做到這一點(diǎn)。一個(gè)這樣的例子是在下一段中描述的VME總線控制器。
      最后,在下面列出對(duì)于圖22的例子的所有的自動(dòng)產(chǎn)生的假定.time b+<|a+.time c+<|a+.time a+<|i4+.time a+<|e+.time a+<|f+.time a+<|g+.time a+<|h+.time c+<|b+.time b+<|i3+.time b+<|d+.time b+<|f+
      .time b+<|g+.time b+<|h+.time c+<|i3+.time c+<|d+.time c+<|i4+.time c+<|e+.time s+<|h+.time s+<|r+.time a+<|i4+.time c+<|i4+.time f+<|i4+.time g+<|i4+.time f+>c+.time g+>f+>c+.time h+>g+>f+>c+.time h+>r+.time a+=c+@f+.time b+=c+@f+.time r+=s+@h+即使xyz例子是簡(jiǎn)單的,在邏輯中重要的改進(jìn)可以通過(guò)把自動(dòng)定時(shí)假定應(yīng)用到其上而被得到。對(duì)于圖21所示的xyz例子和不用任何定時(shí)假定,將執(zhí)行以下命令petrify xyz.g-cg-atopt-eqn xyz.eqn-no任選項(xiàng)“-atopt”表示Petrify必須產(chǎn)生自動(dòng)定時(shí)假定。在其中設(shè)計(jì)者已規(guī)定某些假定的情形下,新的假定被加到設(shè)計(jì)者的假定中。無(wú)論如何,Petrify注意使得自動(dòng)產(chǎn)生的假定與設(shè)計(jì)者規(guī)定的假定是不矛盾的。結(jié)果的電路顯示于圖23。
      圖23所示的電路是在文件xyz.eqn中由Petrify報(bào)告的解。因?yàn)槎〞r(shí)假定是算法上被產(chǎn)生的,必須對(duì)于正確性對(duì)它們進(jìn)行檢驗(yàn)。在一個(gè)實(shí)施例中,這可通過(guò)檢驗(yàn)文件petrify.log而被完成。例如,在一個(gè)實(shí)施例中,自動(dòng)產(chǎn)生以下的假定.time z+<|y+ #concurrency reduction(automatic&amp;
      simultaneous) .time y+<|x-#concurrency reduction(automatic).time x+>y->z->y+ #early enabling(automatic).time x+>y->z- #early enabling(automatic).time x->z+ #early enabling(automatic).time z->y+ #early enabling(automatic).time z->x- #early enabling(automatic).time y->z- #early enabling(automatic).time y->z->x->z+ #early enabling(automatic).time y+=z+@x- #simultaneity(automatic)以及對(duì)于解報(bào)告以下的信息x=y(tǒng)′>triggers(SET)y-->x+>triggers(RESET)y+->x->2transistors(1n,1p)>Estimated delayrising=13.44,falling=10.75>Concurrency reductiony+=>x->Timing assumptions(concurrency)z+<y+...
      y=z>triggers(SET)z+->y+>triggers(RESET)z-->y->4 transistors(2n,2p)>Estimated delayrising=18.19,falling=16.69>Concurrency reductionz+=>y+>Speed independent(no timing assumptions)...
      z=x>triggers(SET)x+->z+>triggers(RESET)x-->z->4transistors(2n,2p)>Estimated delayrising=18.19,falling=16.69>Timing assumptions(concurrency)y+<x-定時(shí)信息可被概括為如下(1)要求點(diǎn)火次序z+→y+對(duì)于解x=y(tǒng)’是正確的,但點(diǎn)火次序z+→y+由解y=z來(lái)強(qiáng)制實(shí)施,這減小同時(shí)發(fā)生性,以及使得狀態(tài)110是不能達(dá)到的;以及(2)要求點(diǎn)火次序y+→x-對(duì)于解z=x是正確的,但點(diǎn)火次序y+→x-由解x=y(tǒng)’來(lái)強(qiáng)制實(shí)施,這減小同時(shí)發(fā)生性,以及使得狀態(tài)001是不能達(dá)到的。
      所以,強(qiáng)制實(shí)施的同時(shí)性減小,保證定時(shí)假定的正確性,以及得到速度無(wú)關(guān)電路。所以,這是關(guān)于同時(shí)性減小如何不總是意味著性能的損失的例子。邏輯的減小導(dǎo)致更有效的電路。
      接著將綜合更復(fù)雜的電路,強(qiáng)調(diào)綜合方法具有相對(duì)定時(shí)假定。圖24a和24b上顯示VME總線控制器100的I/O接口。控制器100通過(guò)使用信號(hào)D控制數(shù)據(jù)收發(fā)信機(jī)102而控制一個(gè)裝置104與VME總線106的通信。控制器100也包括信號(hào)DSr,DSw,DTACK,LDS和LDTACK。信號(hào)LDS和LDTACK是遵從四階段協(xié)議的一對(duì)握手信號(hào)。信號(hào)DSr和DSw遵從帶有輸出信號(hào)DTACK的四階段協(xié)議。DSr和DSw分別表示讀(READ)和寫(WRITE)周期的開始。相應(yīng)于讀周期的時(shí)序圖顯示于圖24b。
      相應(yīng)于控制器100的讀周期和寫周期的STG分別顯示于圖25a和25b。
      為了綜合VME總線控制器100,必須規(guī)定技術(shù)規(guī)范,包括讀周期和寫周期的特性。這可以通過(guò)使用在作為環(huán)境的非確定性的模型的Petri網(wǎng)格形式中的選擇位置,而被完成。在這種情況下,非決定性起源于環(huán)境可以在先前的周期完成后選擇發(fā)起讀周期或?qū)懼芷凇C枋隹刂破鞯耐暾奶匦缘腟TG110顯示于圖26a。某些信號(hào)過(guò)渡,例如lds+,具有在STG110中的多個(gè)事例。在圖26a上,下標(biāo)1和2分別被使用來(lái)辨別在讀周期和寫周期中的事件。
      在對(duì)于每個(gè)不同的標(biāo)記只有一個(gè)過(guò)渡的STG120中也有代表整個(gè)特性的可能性。STG可以由Petrify通過(guò)使用以下命令得到petrify vme.g-o vme.1 label這個(gè)結(jié)果顯示于圖26b。然而,這個(gè)代表比起先前的是非常不好讀的。為此,圖26a的STG110被使用來(lái)綜合控制器100的電路。通過(guò)使用該代表,定時(shí)假定的技術(shù)規(guī)范變成為直觀得多,因?yàn)槎〞r(shí)假定對(duì)于讀和寫周期可以獨(dú)立地被規(guī)定。
      首先,得出VME總線控制器100的速度無(wú)關(guān)實(shí)施方案。圖27上顯示對(duì)于通用化的C單元的代表所使用的表示法。在執(zhí)行以下命令后petrify vme.g-gc-fr10-eqn vme.eqn-log vme.log-o vme.csc導(dǎo)致圖28a和28b描繪的解,其中圖28a顯示圖24a和24b的VME總線控制器的技術(shù)規(guī)范,以及圖28b顯示該技術(shù)規(guī)范的一個(gè)速度無(wú)關(guān)實(shí)施例。任選項(xiàng)-fr10在解決CSC沖突時(shí)增加探查的廣度。一個(gè)內(nèi)部信號(hào),csc0,被插入用來(lái)編碼狀態(tài)。
      接著,描述慢環(huán)境綜合。如果假定環(huán)境的響應(yīng)時(shí)間足夠長(zhǎng),能夠使得電路完成它的正在進(jìn)行的內(nèi)部活動(dòng),則Petrify可以被使能,在規(guī)定輸入事件為“慢”后產(chǎn)生自動(dòng)定時(shí)假定。這可以通過(guò)把“.slowenv”語(yǔ)句包括在技術(shù)規(guī)范中,以及使用任選項(xiàng)“-atopt”用于自動(dòng)產(chǎn)生定時(shí)假定,而被達(dá)到。在一個(gè)實(shí)施例中,技術(shù)規(guī)范為如下的形式.inputs dsr dsw ldtack.outputs dtack lds d.graphp0dsr+dsw+p1 lds+/1 lds+/2#Readcycledsr+lds+/1lds+/1 ldtack+/1ldtack+/1 d+/1d+/1 dtack+/1dtack+/1 dsr-dsr-d-/1d-/1 p2p3#Write cycledsw+d+/2d+/2 lds+/2lds+/2 ldtack+/2ldtack+/2 d-/2d-/2 dtack+/2dtack+/2 dsw-dsw-p2p3#Return to zerop2lds-p3 dtack-lds-ldtack-dtack-p0ldtack-p1.marking{p0 p1}#Assuming an slow environment.slowenv.end以及命令為如下petrify vme.g-gc-atopt-eqn vme.eqn-log vme.log-no結(jié)果被顯示于圖29上。注意,在這個(gè)解中,沒(méi)有插入狀態(tài)信號(hào)來(lái)解決狀態(tài)編碼問(wèn)題。這是由于通常,定時(shí)假定使得具有沖突的某些狀態(tài)不能達(dá)到。在本特定的事例中,所有的沖突消失。由Petrify產(chǎn)生的自動(dòng)定時(shí)假定在文件vme.log中被報(bào)告為如下
      .time lds-<|dsr+ #concurrency reduction(automatic).time lds-<|dsw+ #concurrency reduction(automatic).time lds-<|d+/2 #concurrency reduction(automatic).time dtack-<|lds- #concurrency reduction(automatic&amp;
      simultaneous).time dtack-<|ldtack- #concurrency reduction(automatic).time lds-<|dsr+ #concurrency reduction(automatic).time lds-<|dsw+ #concurrency reduction(automatic).time dtack-<|ldtack- #concurrency reduction(automatic).time lds+/2>d+/2 #early enabling(automatic).time dtack+/1>d+/1#early enabling(automatic).time dtack+/2>d-/2#early enabling(automatic).time lds->d-/1#early enabling(automatic).time dtack->d-/1 #early enabling(automatic)注意,第四假定(.time dtack-<|lds-)相應(yīng)于被使能為同時(shí)的兩個(gè)輸出事件的排序。消息“自動(dòng)與同時(shí)”表示兩個(gè)重要的事情(1)已自動(dòng)產(chǎn)生假定,以及(2)兩個(gè)時(shí)間被同時(shí)使能,以及當(dāng)決定點(diǎn)火次序時(shí)Petrify給予其中之一以優(yōu)先權(quán)。
      這是其中設(shè)計(jì)者的干預(yù)可以是有用的事例之一。例如,設(shè)計(jì)者可通過(guò)把一個(gè)定時(shí)假定加到技術(shù)規(guī)范.time lds-<|dtack-而選擇另一個(gè)點(diǎn)火次序。如果對(duì)于這個(gè)新的定時(shí)假定執(zhí)行相同的命令,vme.log將為如下.time lds-<|dtack- #concurrency reduction(specification).time lds-<|dsr+ #concurrency reduction(automatic).time lds-<|dsw+ #concurrency reduction(automatic).time lds-<|d+/2 #concurrency reduction(automatic).time dtack-<|ldtack- #concurrency reduction(automatic).time lds-<|dsr+ #concurrency reduction(automatic).time lds-<|dsw+ #concurrency reduction(automatic).time dtack-<|ldtack- #concurrency reduction(automatic).time lds+/2>d+/2 #early enabling(automatic).time dtack+/1>d+/1#early enabling(automatic).time dtack+/2>d-/2#early enabling(automatic).time lds->d-/1#early enabling(automatic).time dtack->d-/1 #early enabling(automatic)注意,第一定時(shí)假定(.time lds-<|dtack-)現(xiàn)在起源于“技術(shù)規(guī)范”。所以,Petrify不能產(chǎn)生諸如“.time dtack-<|lds-”的假定,它與由設(shè)計(jì)者規(guī)定的假定相矛盾。結(jié)果的電路顯示于圖30;可以看到,通過(guò)顛倒dtack-和lds-的點(diǎn)火次序,在電路綜合方面有改進(jìn)。
      這里可以作出其它的定時(shí)假定。例如,從控制器100的技術(shù)規(guī)范,可以看到,在控制器的兩方面(總線和器件)的協(xié)議的return-to-zero路徑被同時(shí)完成。所以,我們能夠假定,總線控制路徑是這樣慢,以致于在與器件的握手完成之前,對(duì)于讀或?qū)懼芷?dsr+或dsw+)的任何新的請(qǐng)求決不到達(dá)控制器100。這可以通過(guò)加上如下的兩個(gè)新的定時(shí)假定而被規(guī)定.time dtack-<|dsr+ldtack-<|dsw+結(jié)果的電路顯示于圖31。這是最低化費(fèi)的解。
      圖31的電路(或,被選擇用于制造的無(wú)論哪個(gè)電路)必須被分析,用來(lái)確定該假定是否保持。為了進(jìn)行該分析,首先必須研究在有關(guān)每個(gè)門的文件vme.log中報(bào)告的信息。
      SET(dtack′)=lds′RESET(dtack′)=ldtack lds[dtack]=duck′(output inverter)>triggers(SET) lds-->dtack->triggers(RESET) ldtack+/1->dtack+/1 ldtack+/2->dtack+/2>5transistors(3n,2p)>Estimated delayrising=22.94,falling=16.69>Concurrency reductionlds-=>dtack->Timing assumptions(early enabling)d+/1<cdtack+/1d-/2<dtack+/2…lds′=dsw′dsr′[lds]=lds′(output inverter)>triggers(SET)(dsr-,dsw-)->lds->triggers(RESET)dsr+->lds+/1 dsw+->lds+/2>6transistors(3n,3p)>Estimated delayrising=18.44,fallmg=24.50>Timing assumptions(concurrency)ldtack-!dsw+ldtack-!dsr+>Timing assumptions(early enabling)d+/2<lds+/2 d-/1<lds-…SET(d′)=dsr′ldtackRESET(d′)=dsw ldtack′+dsr ldtack[d]=d′(outputinverter)>triggers(SET)dsr-->d-/1 ldtack+/2->d-/2>triggers(RESET)ldtack+/1->d+/1(dsw+,ldtack-)->d+/2>10transistors(6n,4p)>Estimated delayrising=29.88,falling=29.25>Concurrency reductionldtack-=>d+/2>Timing assumptions(concurrency)ldtack-<dsr+
      在圖32上給出和概括定時(shí)假定。在該圖上,我們可區(qū)分三種類型的時(shí)序弧線(1)同時(shí)性減小弧線,它表示由路徑(1ds-→dtack-和ldtack-→d+/2)增強(qiáng)的附加因果性關(guān)系。這些不是必須對(duì)于電路是否正確而進(jìn)行驗(yàn)證的定時(shí)假定。
      (2)點(diǎn)火次序弧線,它表示對(duì)于電路的同時(shí)發(fā)生事件的假定的點(diǎn)火排序。這些是必須通過(guò)對(duì)電路的延時(shí)墊整而被驗(yàn)證或增強(qiáng)的定時(shí)假定。
      (3)早先使能弧線,它表示對(duì)于早先使能的事件的新的觸發(fā)事件。例如,在讀周期中由d-/1觸發(fā)的事件lds-現(xiàn)在由dsr-觸發(fā)。這個(gè)信息通過(guò)組合早先使能定時(shí)假定和對(duì)于每個(gè)解報(bào)告的觸發(fā)事件表而被提取的。這些是必須對(duì)于電路是否正確而進(jìn)行驗(yàn)證的定時(shí)假定。在上述的例子中,例如,必須驗(yàn)證事件d-/1將在事件lds-之前發(fā)生。
      作出假定ldtack-→dsr+和ldtack-→dsw+,特征是總線控制邏輯的速度。所以,它們可被認(rèn)為是滿意的。然而,對(duì)早先使能的假定必須被細(xì)心地分析,因?yàn)樗鼈兊恼_性取決于得出的邏輯的實(shí)際延時(shí)。
      所有的早先使能假定依賴于,門電路d的延時(shí)短于lds和dtack的延時(shí)。不幸地,通過(guò)查看圖31,可以看到,門d比其它的門復(fù)雜。關(guān)于門d的延時(shí)短于lds和dtack的延時(shí)的假定不能保持;所以,圖31的電路必須被修改成使得這些假定保持正確。圖33顯示一個(gè)可能的解。延時(shí)d1應(yīng)當(dāng)保證,lds+/2和lds-將分別比d+/2和d-/1更遲地點(diǎn)火,即使它們被同時(shí)觸發(fā)。延時(shí)d2應(yīng)當(dāng)保證,dtack+/1和dtack+/2將分別比d+/1和d-/2更遲地點(diǎn)火,注意,圖33所示的解只是將信號(hào)ldtack+對(duì)dtack+的觸發(fā)影響延時(shí)。另一個(gè)解是在門電路dtack的輸出端處加上延時(shí),但這也將dtack-延時(shí),這對(duì)于電路的正確的功能是不必要的。因此,可以看到,由Petrify報(bào)告的信息允許設(shè)計(jì)者定做電路,以使得定時(shí)假定對(duì)于信號(hào)的單獨(dú)的事件是滿足的,而不是對(duì)于信號(hào)的所有事件。
      相對(duì)定時(shí)是推導(dǎo)出設(shè)計(jì)的有用的方法。數(shù)據(jù)手冊(cè)中的波形被呈現(xiàn)成使得突出信號(hào)與過(guò)渡之間的關(guān)系??梢允褂孟鄬?duì)定時(shí)來(lái)歸檔系統(tǒng),以及綜合控制器和驗(yàn)證系統(tǒng)的正確性。綜合和驗(yàn)證算法可被設(shè)計(jì)來(lái)直接支持這個(gè)概念,其中時(shí)間被表示為類似于特性的或因果的關(guān)系的關(guān)系。相對(duì)定時(shí)可以按希望地主動(dòng)地或保守地被應(yīng)用。在限制的形式下,可以發(fā)現(xiàn)由于倒相器延時(shí)造成的在速度無(wú)關(guān)實(shí)施方案中的競(jìng)爭(zhēng),以及相對(duì)定時(shí)可被使用來(lái)表明競(jìng)爭(zhēng)是否嚴(yán)重。
      相對(duì)定時(shí)不排除度量的或絕對(duì)的時(shí)序。度量的時(shí)序在實(shí)施方案中,實(shí)質(zhì)上必須被加到RT預(yù)測(cè)值,證明它們保持。而且,許多RT預(yù)測(cè)值在關(guān)系中需要一定量的備用部分,或建立和保持時(shí)間。電路的魯棒性和可靠度可以直接依賴于RT約束條件上的備用量。
      雖然這里顯示和描述特定的實(shí)施例,但本領(lǐng)域技術(shù)人員將會(huì)看到,被計(jì)算來(lái)達(dá)到同一個(gè)目的的任何安排可被替換用于所顯示的特定的實(shí)施例。所以,打算本發(fā)明只由權(quán)利要求及其等價(jià)物限制。
      權(quán)利要求
      1.一種從電路的特性說(shuō)明執(zhí)行邏輯綜合的方法,包括限定電路中信號(hào)的信號(hào)排序,其中限定包括規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序;修改特性說(shuō)明作為信號(hào)排序的函數(shù);以及綜合電路作為修改的特性說(shuō)明的函數(shù)。
      2.按照權(quán)利要求1的方法,其中規(guī)定相對(duì)排序包括接收設(shè)計(jì)者特定的定時(shí)假定。
      3.按照權(quán)利要求2的方法,其中設(shè)計(jì)者特定的定時(shí)假定被表示為相對(duì)定時(shí)(RT)預(yù)測(cè)值。
      4.按照權(quán)利要求1的方法,其中規(guī)定相對(duì)排序包括在處理器內(nèi)自動(dòng)產(chǎn)生定時(shí)假定。
      5.按照權(quán)利要求4的方法,其中定時(shí)假定被表示為RT預(yù)測(cè)值。
      6.按照權(quán)利要求1的方法,其中綜合包括驗(yàn)證電路保持多個(gè)事件的相對(duì)排序。
      7.按照權(quán)利要求6的方法,其中相對(duì)排序被表示為RT預(yù)測(cè)值。
      8.從電路的特性說(shuō)明執(zhí)行邏輯驗(yàn)證的方法,包括限定電路中信號(hào)的信號(hào)排序,其中限定包括規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序;修改特性說(shuō)明作為信號(hào)排序的函數(shù);以及驗(yàn)證電路作為修改的特性說(shuō)明的函數(shù)。
      9.按照權(quán)利要求8的方法,其中規(guī)定相對(duì)排序包括接收設(shè)計(jì)者特定的定時(shí)假定。
      10.按照權(quán)利要求9的方法,其中設(shè)計(jì)者特定的定時(shí)假定被表示為RT預(yù)測(cè)值。
      11.按照權(quán)利要求8的方法,其中規(guī)定相對(duì)排序包括在處理器內(nèi)自動(dòng)產(chǎn)生定時(shí)假定。
      12.按照權(quán)利要求11的方法,其中定時(shí)假定被表示為RT預(yù)測(cè)值。
      13.按照權(quán)利要求8的方法,其中綜合包括驗(yàn)證電路保持多個(gè)事件的相對(duì)排序。
      14.按照權(quán)利要求13的方法,其中相對(duì)排序被表示為RT預(yù)測(cè)值。
      15.一種使用電路的特性說(shuō)明來(lái)綜合該電路的邏輯綜合系統(tǒng),系統(tǒng)包括工作站,具有顯示裝置和輸入裝置;以及被安裝在工作站中的程序代碼,其中程序代碼在被執(zhí)行時(shí),規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序,修改特性說(shuō)明作為信號(hào)排序的函數(shù);以及綜合該電路作為修改的特性說(shuō)明的函數(shù)。
      16.按照權(quán)利要求15的邏輯綜合系統(tǒng),其中相對(duì)排序被表示為RT預(yù)測(cè)值。
      17.按照權(quán)利要求15的邏輯綜合系統(tǒng),其中系統(tǒng)還包括驗(yàn)證程序代碼,其中驗(yàn)證程序代碼在被執(zhí)行時(shí),驗(yàn)證該電路作為修改的特性說(shuō)明的函數(shù)。
      18.按照權(quán)利要求15的邏輯綜合系統(tǒng),其中輸入裝置能夠輸入設(shè)計(jì)者特定的定時(shí)假定,以及其中程序代碼修改特性說(shuō)明作為設(shè)計(jì)者定時(shí)假定的函數(shù)。
      19.按照權(quán)利要求15的邏輯綜合系統(tǒng),其中系統(tǒng)還包括相對(duì)定時(shí)程序代碼,其中相對(duì)定時(shí)程序代碼包括用于從特性說(shuō)明自動(dòng)產(chǎn)生定時(shí)假定的代碼。
      20.一種使用電路的特性說(shuō)明來(lái)驗(yàn)證該電路的邏輯驗(yàn)證系統(tǒng),系統(tǒng)包括工作站,具有顯示裝置和輸入裝置;以及被安裝在工作站中的程序代碼,其中程序代碼在被執(zhí)行時(shí),規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序,修改特性說(shuō)明作為信號(hào)排序的函數(shù);以及驗(yàn)證該電路作為修改的特性說(shuō)明的函數(shù)。
      21.按照權(quán)利要求20的邏輯驗(yàn)證系統(tǒng),其中相對(duì)排序被表示為RT預(yù)測(cè)值。
      22.按照權(quán)利要求20的邏輯驗(yàn)證系統(tǒng),其中輸入裝置能夠輸入設(shè)計(jì)者特定的定時(shí)假定,以及其中程序代碼修改特性說(shuō)明作為設(shè)計(jì)者特定的定時(shí)假定的函數(shù)。
      23.按照權(quán)利要求20的邏輯驗(yàn)證系統(tǒng),其中系統(tǒng)還包括相對(duì)定時(shí)程序代碼,其中相對(duì)定時(shí)程序代碼包括用于從特性說(shuō)明中自動(dòng)產(chǎn)生定時(shí)假定的程序代碼。
      24.一種電路,包括多個(gè)晶體管;以及連接多個(gè)晶體管的兩個(gè)或兩個(gè)以上的晶體管的導(dǎo)線;其中導(dǎo)線被限定以及被綜合為電路的特性說(shuō)明的函數(shù),其中特性說(shuō)明包括規(guī)定在電路內(nèi)多個(gè)事件之間的相對(duì)排序的信息。
      25.按照權(quán)利要求24的電路,其中規(guī)定相對(duì)排序的信息被表示為一個(gè)或多個(gè)RT預(yù)測(cè)值。
      26.一種包括其上具有指令的、計(jì)算機(jī)可讀的媒體的物體,其中指令在計(jì)算機(jī)中被執(zhí)行時(shí)創(chuàng)建一個(gè)系統(tǒng),用于通過(guò)電路的特性說(shuō)明,表示一個(gè)電路;限定電路中信號(hào)的信號(hào)排序,其中限定包括規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序;修改特性說(shuō)明作為信號(hào)排序的函數(shù);以及綜合電路作為修改的特性說(shuō)明的函數(shù)。
      27.一種包括其上具有指令的、計(jì)算機(jī)可讀的媒體的物體,其中指令在計(jì)算機(jī)中被執(zhí)行時(shí)創(chuàng)建一個(gè)系統(tǒng),用于通過(guò)電路的特性說(shuō)明,表示一個(gè)電路;限定電路中信號(hào)的信號(hào)排序,其中限定包括規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序;修改特性說(shuō)明作為信號(hào)排序的函數(shù);以及驗(yàn)證該電路作為修改的特性說(shuō)明的函數(shù)。
      全文摘要
      從電路的特性說(shuō)明綜合和/或驗(yàn)證電路的系統(tǒng)和方法。限定了電路中信號(hào)的信號(hào)排序,其中限定電路中信號(hào)的信號(hào)排序包括規(guī)定電路內(nèi)多個(gè)事件的相對(duì)排序。特性說(shuō)明被修改作為信號(hào)排序的函數(shù)。然后,電路被綜合和或驗(yàn)證作為修改的特性說(shuō)明的函數(shù)。
      文檔編號(hào)G06F17/50GK1344394SQ99815365
      公開日2002年4月10日 申請(qǐng)日期1999年11月2日 優(yōu)先權(quán)日1998年11月2日
      發(fā)明者K·S·斯蒂芬斯, S·羅特姆, R·吉諾薩 申請(qǐng)人:英特爾公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1