|
摘要:回顧了異步集成電路設(shè)計(jì)發(fā)展的歷史,闡述了當(dāng)前異步集成電路重新引起重視的原因,總結(jié)了異步集成電路的優(yōu)勢(shì),并對(duì)異步集成電路設(shè)計(jì)方法進(jìn)行了簡(jiǎn)要地概括,介紹了實(shí)用的異步集成電路芯片,最后分析了異步集成電路面臨的挑戰(zhàn),并揭示了它今后的發(fā)展方向。 關(guān)鍵詞:異步集成電路;集成電路設(shè)計(jì);設(shè)計(jì)方法 1 引言 集成電路設(shè)計(jì)之初,并沒有同步和異步的區(qū)別,研究的重點(diǎn)在于“mechanical relay circuits”[1]。70年代后,同步設(shè)計(jì)因?yàn)楦拍詈?jiǎn)單、設(shè)計(jì)方便,逐漸成為設(shè)計(jì)的主流方案。在這一時(shí)期,異步集成電路的研究?jī)H僅停留在理論上,研 究的出發(fā)點(diǎn)也僅僅是它與同步電路不同。90年代初期,同步電路設(shè)計(jì)仍然占據(jù)著數(shù)字集成電路設(shè)計(jì)領(lǐng)域的主導(dǎo)地位,但是由于電路設(shè)計(jì)規(guī)模的擴(kuò)大和生產(chǎn)工藝的限 制,原先可以忽略的互連線之間的延遲、時(shí)鐘樹的負(fù)載等已經(jīng)變得越發(fā)突出。設(shè)計(jì)方法上也面臨著很多難以解決的問題(比如,時(shí)鐘skew問題)。這時(shí),異步電 路設(shè)計(jì)方法重新引起了設(shè)計(jì)者的重視,與先前為純粹追求不同的理論而進(jìn)行的研究已經(jīng)大不相同,在一定程度上,已經(jīng)可以作為實(shí)際應(yīng)用中的理論依據(jù)和CAD輔助 工具。在應(yīng)用方面,一些面向商業(yè)應(yīng)用的異步集成芯片的出現(xiàn)也有力地證明了異步集成電路在某些方面存在的優(yōu)勢(shì)。 2 發(fā)展歷程 2.1 創(chuàng)建理論基礎(chǔ)50年代是組合邏輯和有限狀態(tài)機(jī)時(shí)序電路時(shí)代。異步電路的研究開始是從分析時(shí)序電路的輸入約束條件開始的,這也是當(dāng)時(shí)開關(guān)理論研究領(lǐng)域中的一 部分。Huffman首先指出,為了使一個(gè)時(shí)序電路能分辨出輸入的變化,要求這個(gè)電路的輸入信號(hào)之間必須有一個(gè)最小的時(shí)間間隔。也就是說(shuō),存在兩個(gè)時(shí)間段 d1和d2,其中d1<d2。當(dāng)輸入信號(hào)之間間隔小于 d1時(shí),不能被電路分辨出來(lái);當(dāng)間隔大于d2時(shí),才可以分辨;當(dāng)間隔大于d1而小于d2時(shí),會(huì)導(dǎo)致時(shí)序電路功能的不確定?;谶@種分析出現(xiàn)的一類電路形式 稱為Huffman電路。 同一時(shí)期,Muller[2,3]提出了另外的一類電路形式,與現(xiàn)在的異步電路形式極為接近。實(shí)際上,他提出了使用完成信號(hào),對(duì)于Muller電路,僅僅 在完成信號(hào)有效后,輸入信號(hào)才允許發(fā)生變化。 2.2 創(chuàng)建應(yīng)用基礎(chǔ)Huffman和Muller的先導(dǎo)工作,激起了開關(guān)電路領(lǐng)域?qū)Ξ惒诫娐返膹V泛研究。其中,Unger[4]的工作是最有創(chuàng)造性的。他給出了 設(shè)計(jì)單輸入變化異步時(shí)序電路的詳細(xì)方法,并提出多輸入變化電路設(shè)計(jì)時(shí),需要考慮的一些因素。他的工作對(duì)隨后異步電路的實(shí)用化產(chǎn)生了很大的影響。例如,幾個(gè) 早期的主流計(jì)算機(jī)MU-5和Atlas[5]是完全用異步電路實(shí)現(xiàn)的異步系統(tǒng)。 60年代,一項(xiàng)重要的工作是Macromodule Project,它有力地證明了異步電路模塊在組合構(gòu)成系統(tǒng)時(shí)模塊化帶來(lái)的優(yōu)勢(shì)。當(dāng)時(shí)創(chuàng)建了一組數(shù)字模塊,用這組模塊不僅可以很快地組建成通用計(jì)算機(jī),而 且可以用于構(gòu)建專用計(jì)算機(jī)。這個(gè)計(jì)劃的研究成果給后來(lái)大量模塊化的設(shè)計(jì)方法奠定了重要的基礎(chǔ)。 另一項(xiàng)有價(jià)值的開創(chuàng)性工作來(lái)自Chuck Seitz。他提出了使用Petri網(wǎng)作為設(shè)計(jì)和分析異步電路的體系。其后,他在Utah大學(xué)和CalTech的教學(xué)過(guò)程,引發(fā)一大批學(xué)生對(duì)異步電路產(chǎn)生 了濃厚的興趣。他的影響促成了世界上首臺(tái)異步Dataflow計(jì)算機(jī)和包含異步硬件的商用系統(tǒng)——Evans & Sutherland LDS-1(首臺(tái)專用圖形計(jì)算機(jī))的出現(xiàn)。 2.3 VLSI時(shí)代異步系統(tǒng)的研究 70年代后期到80年代,由于工藝技術(shù)的發(fā)展,數(shù)字集成電路的設(shè)計(jì)規(guī)模從LSI向VLSI發(fā)展。同時(shí),設(shè)計(jì)方法也面臨著很多挑戰(zhàn),結(jié)束了半導(dǎo)體行業(yè)提供單 個(gè)邏輯單元,由電路系統(tǒng)設(shè)計(jì)者利用這些單元進(jìn)行邏輯設(shè)計(jì),然后構(gòu)成電路系統(tǒng)的設(shè)計(jì)流程。這一時(shí)期,由于同步集成電路的設(shè)計(jì)模型簡(jiǎn)單,設(shè)計(jì)方法統(tǒng)一,CAD 工具日趨成熟,絕大部分設(shè)計(jì)、研究都集中在同步集成電路上,而異步電路的研究還僅僅局限于一些特殊模塊和理論研究。2.4 EDA時(shí)代隨著工藝技術(shù)的持續(xù)發(fā)展,最小線寬逐漸減小,同時(shí)單芯片的尺寸卻逐漸增大。特別是進(jìn)入深亞微米以后,連線延遲的影響越來(lái)越大,使同步設(shè)計(jì)中的時(shí) 鐘skew問題越來(lái)越難處理;芯片的密度和規(guī)模的增加,功耗問題給電池供電和散熱都提出了更高的要求。 從80年代后期到90年代中后期,異步電路被重新引起重視。異步電路的復(fù)興,由研究設(shè)計(jì)方法開始。設(shè)計(jì)方法的自動(dòng)化為異步電路的實(shí)現(xiàn)提供有力的支持,出現(xiàn) 了Locally-clocked machine、Tagram、3D-machine Micropipeline等較實(shí)用的設(shè)計(jì)模型和方法。利用這些方法設(shè)計(jì)出的異步集成電路AMULETⅠ、Ⅱ、Ⅲ驗(yàn)證了異步集成電路低功耗的優(yōu)點(diǎn) [6],RAPPID則是異步集成電路在高性能方面的應(yīng)用。 2.5 SoC時(shí)代超大規(guī)模和低功耗是21世紀(jì)的一個(gè)突出問題。超大規(guī)模要求集成電路設(shè)計(jì)必須依靠EDA工具來(lái)完成,低功耗則要求采用新的系統(tǒng)和電路結(jié)構(gòu)。異步集 成電路在這方面的優(yōu)勢(shì)是功耗效率高、電路組織形式靈活,但主要的問題是缺乏固定的設(shè)計(jì)流程和設(shè)計(jì)工具。SoC設(shè)計(jì)是以IP模塊為基礎(chǔ)的,這些模塊有 MCU、DSP、MPEG解碼器、ASIC模塊等。根據(jù)任務(wù)要求的不同模塊往往使用不同的時(shí)鐘頻率,如何有效地互連這些模塊,使其能正確、有效地工作,是 SOC設(shè)計(jì)中主要的問題。在異步集成電路系統(tǒng)中,各子模塊的關(guān)系僅僅是接口互連關(guān)系,要求互相連接的接口符合異步系統(tǒng)要求的時(shí)序規(guī)范,而模塊內(nèi)部的時(shí)序關(guān) 系與步長(zhǎng)可以獨(dú)立決定。異步電路SOC設(shè)計(jì)為IP互連提供了潛在的有效連接方式。3 特點(diǎn)和優(yōu)勢(shì) 3.1 特點(diǎn)在分析異步集成電路特點(diǎn)之前,我們先來(lái)看一下同步集成電路的特點(diǎn)。同步集成電路中,所有時(shí)序電路模塊的時(shí)序由一個(gè)總體的時(shí)鐘統(tǒng)一控制;時(shí)序模塊間的組 合邏輯模塊在一個(gè)時(shí)鐘的有效跳變沿到來(lái)后開始工作,在下一個(gè)跳變沿到來(lái)之前完成工作。 異步集成電路與同步集成電路不同,它通過(guò)使用大量本地握手信號(hào)來(lái)完成整個(gè)電路的時(shí)序控制工作,每個(gè)電路模塊在握手信號(hào)的有效跳變沿后開始工作,在工作完成 后產(chǎn)生相應(yīng)的完成信號(hào)。 3.2 優(yōu)勢(shì)[7](1)模塊化特性突出,在設(shè)計(jì)復(fù)雜電路時(shí)具有內(nèi)在的靈活性。用同步方式設(shè)計(jì)的電路模塊在互相連接組成較大電路系統(tǒng)時(shí),因?yàn)橄到y(tǒng)時(shí)序受整體時(shí)鐘的 控制,往往需要在模塊內(nèi)部進(jìn)行時(shí)序調(diào)整或重新進(jìn)行時(shí)序設(shè)計(jì)。異步電路則使用握手信號(hào)進(jìn)行模塊內(nèi)部與模塊間的通信,采用相同握手協(xié)議的電路模塊可以方便地直 接互連,組成較大的電路系統(tǒng),不需要重新進(jìn)行時(shí)序設(shè)計(jì);系統(tǒng)中模塊在不改變接口協(xié)議的條件下,可以獨(dú)自進(jìn)行優(yōu)化而不會(huì)影響到系統(tǒng)行為與系統(tǒng)時(shí)序。 (2)對(duì)信號(hào)的延遲不敏感,對(duì)小線寬集成電路工藝適應(yīng)性較強(qiáng)。當(dāng)集成電路線寬達(dá)到深亞微米時(shí),由引線電容負(fù)載與引線延遲造成的信號(hào)延遲會(huì)超過(guò)由電路單元造 成的延遲,占據(jù)主要地位。在這種情況下,完成電路的物理設(shè)計(jì)之前無(wú)法得到較準(zhǔn)確的電路延遲信息,需要重新設(shè)計(jì)電路邏輯甚至是電路結(jié)構(gòu)以滿足時(shí)序要求。異步 電路使用握手信號(hào)進(jìn)行通信,電路的延遲只會(huì)影響工作速度,而不會(huì)影響電路行為,電路的物理設(shè)計(jì)比較簡(jiǎn)單,并且對(duì)工藝偏差不敏感。 (3)可避免時(shí)鐘skew問題。隨著單芯片系統(tǒng)的增大和互連線延遲在整個(gè)電路延遲中所占比例的增大,同步電路的時(shí)鐘skew越來(lái)越難控制,設(shè)計(jì)難度越來(lái)越 大。異步電路用大量本地時(shí)序控制信號(hào)取代整體時(shí)鐘,避免了時(shí)鐘設(shè)計(jì)問題。 (4)有潛在的高性能特性。同步電路工作時(shí)需要考慮電路的最壞情況延遲,而異步電路的性能則由電路的平均延遲決定,理論上比同步電路可以達(dá)到更高的速度。 在小線寬集成電路工藝中,由于工藝誤差,電路延遲散布較大,異步電路有可能達(dá)到比同步電路更好的性能。 (5)有電磁兼容性好的優(yōu)點(diǎn),因?yàn)槠漭椛漕l譜含能量少且分散性好。CMOS電路僅僅在開關(guān)時(shí)產(chǎn)生電流,而同步電路的時(shí)鐘使電路同時(shí)開關(guān),造成很大的瞬時(shí)電 流,這樣就產(chǎn)生了很強(qiáng)的電磁干擾。而且,時(shí)鐘的固定周期使這些能量集中在時(shí)鐘基波和其諧波附近的很窄的頻譜范圍內(nèi)。異步電路的每個(gè)單元在收到其他部分的輸 入信號(hào)后才開始工作。這樣,電路中沒有類似同步電路在特定時(shí)刻上的大電流瞬時(shí)值,僅僅產(chǎn)生一些在時(shí)間上分布的小電流峰值,輻射功率也小。而且,電路的工作 沒有鎖定在一個(gè)固有的頻率上,使輻射功率不會(huì)集中在特定的窄帶頻譜中,而是大范圍均勻分布。 (6)具有低功耗的特性。同步電路在整體時(shí)鐘控制下工作,時(shí)鐘工作頻率必須滿足最大負(fù)荷的要求,造成功耗浪費(fèi)。同步的門控時(shí)鐘技術(shù)只能進(jìn)行大范圍粗略控 制,降低功耗的效果有限。異步電路則由數(shù)據(jù)驅(qū)動(dòng),僅在需要處理數(shù)據(jù)時(shí)才消耗能量,具有低功耗的潛力。而且異步電路可以在零功耗無(wú)數(shù)據(jù)狀態(tài)與最大吞吐狀態(tài)之 間迅速切換,不需要任何輔助。 4 設(shè)計(jì)方法異步邏輯電路從功能和結(jié)構(gòu)上也可以象同步邏輯電路那樣分為控制器和數(shù)據(jù)通路兩個(gè)主要部分??刂破髦饕菍?shí)現(xiàn)異步時(shí)序的控制和控制序列的生成;數(shù)據(jù) 通路主要實(shí)現(xiàn)數(shù)據(jù)的運(yùn)算和完成信號(hào)的產(chǎn)生。因此,異步控制器的設(shè)計(jì)方法和數(shù)據(jù)通路的設(shè)計(jì)方法側(cè)重點(diǎn)不同。異步控制器的設(shè)計(jì)方法主要側(cè)重如何解決時(shí)序的自動(dòng) 控制,異步數(shù)據(jù)通路的設(shè)計(jì)方法則側(cè)重如何產(chǎn)生完成信號(hào)。 4.1 異步時(shí)序4.1.1 握手協(xié)議的確定 異步集成電路沒有時(shí)鐘,這就需要一種相應(yīng)的方式來(lái)控制時(shí)序,這種控制時(shí)序的方式叫做握手協(xié)議[8]。 絕大部分異步集成電路使用的握手協(xié)議包含兩種控制信號(hào):請(qǐng)求(request)信號(hào)和應(yīng)答(acknowledge)信號(hào)。請(qǐng)求信號(hào)啟動(dòng)一個(gè)工作,應(yīng)答信 號(hào)表示工作完成。這兩個(gè)信號(hào)可以完成系統(tǒng)中所有運(yùn)算的時(shí)序控制。 用電路實(shí)現(xiàn)握手信號(hào),需要把交替出現(xiàn)的請(qǐng)求和應(yīng)答信號(hào)編碼成控制線上的電平或電平變化,常用的編碼方法有兩種:2相握手協(xié)議和4相握手協(xié)議,見圖1和圖 2。4.1.2 數(shù)據(jù)編碼和傳輸方式 在異步電路中,數(shù)據(jù)的傳輸往往與握手信號(hào)有一定的關(guān)系,受握手信號(hào)的控制,或者產(chǎn)生部分握手信號(hào)。因此,不同的應(yīng)用環(huán)境需要不同的數(shù)據(jù)編碼,形成不同的數(shù) 據(jù)傳輸方式。 數(shù)據(jù)編碼和傳輸方式也有兩種選擇:雙線編碼協(xié)議和Bundled方式。兩種編碼方式均可以與2相握手協(xié)議或4相握手協(xié)議組合工作,共同完成數(shù)據(jù)的傳輸,見 圖3、圖4。4.2 控制器的設(shè)計(jì)方法邏輯電路從結(jié)構(gòu)上可以看作是用連線按照一定的規(guī)則互連邏輯門單元構(gòu)成的電路網(wǎng)絡(luò)。數(shù)字邏輯電路設(shè)計(jì)是找出一個(gè)符合系統(tǒng)功能和性能等要求的 電路網(wǎng)絡(luò)的過(guò)程。在這個(gè)過(guò)程中,從功能出發(fā)到結(jié)構(gòu)描述,不可避免地要實(shí)現(xiàn)從功能描述到對(duì)應(yīng)相同功能的結(jié)構(gòu)描述的轉(zhuǎn)化過(guò)程,這個(gè)過(guò)程一般稱為綜合。 在綜合的過(guò)程中,需要一定的電路模型。這個(gè)電路模型作為電路從功能到結(jié)構(gòu)的綜合過(guò)程的一個(gè)中介。但由于異步電路現(xiàn)在存在幾大設(shè)計(jì)流派與描述方法,如基于變 化的方式、基于圖論的方式、基于Petri網(wǎng)的方式和基于AFSM的方式等。這些方法都可以實(shí)現(xiàn)異步集成電路,但這些方法也都存在一些缺陷:基于變化的方 式不能進(jìn)行整體優(yōu)化,基于圖論和Petri網(wǎng)的方式不能描述較復(fù)雜的系統(tǒng),基于AFSM的方式需要驗(yàn)證其正確性的專用工具。 4.3 數(shù)據(jù)通路的設(shè)計(jì)方法數(shù)據(jù)通路設(shè)計(jì)包括兩個(gè)方面:數(shù)據(jù)通路子單元的設(shè)計(jì)和數(shù)據(jù)通路子系統(tǒng)的設(shè)計(jì)。 數(shù)據(jù)通路子單元屬于特殊的組合電路,例如 ALU、加法器和乘法器等。這些單元模塊實(shí)現(xiàn)時(shí),主要考慮兩方面:輸入輸出數(shù)據(jù)如何編碼和完成信號(hào)如何產(chǎn)生。 異步電路模塊必須在工作完成后產(chǎn)生應(yīng)答信號(hào),這要求設(shè)計(jì)異步電路時(shí),除完成應(yīng)有的數(shù)據(jù)處理功能外,還需要增加一部分電路產(chǎn)生完成信號(hào),作為需要輸出的應(yīng)答 信號(hào)。完成信號(hào)的產(chǎn)生沒有普遍適用的方法,但有多種方法可以有效地用在不同的應(yīng)用環(huán)境中。 數(shù)據(jù)通路子系統(tǒng)是包含數(shù)據(jù)通路子單元和一定的時(shí)序控制單元的特殊子系統(tǒng),例如數(shù)據(jù)通路的流水線結(jié)構(gòu)。設(shè)計(jì)異步數(shù)據(jù)通路子系統(tǒng),常用的是 Sutherland提出的微流水線結(jié)構(gòu)。 5 實(shí)際應(yīng)用 隨著異步集成電路設(shè)計(jì)方法的研究和發(fā)展,出現(xiàn)了很多實(shí)用的集成電路,這些成功的實(shí)例證明了異步集成電路的優(yōu)勢(shì)。其中主要的是通訊領(lǐng)域的低功耗設(shè)計(jì)和計(jì)算機(jī) 領(lǐng)域的高性能設(shè)計(jì)。 國(guó)外在異步集成電路研究方面已經(jīng)取得了不少成果,很多大的公司也在著手這方面的研究。如SUN的Micro Systems Labs就提出了一種新的處理器結(jié)構(gòu)——Counterflow Pipeline Processor。Philips Labs致力于應(yīng)用異步電路自動(dòng)綜合來(lái)設(shè)計(jì)低功耗集成電路,在異步電路CAD方面報(bào)道了一系列的自動(dòng)工具,如無(wú)冒險(xiǎn)邏輯綜合工具等。 在異步處理器方面,有AMULE、MiniMIPS、微控制器異步80C51等。國(guó)內(nèi)復(fù)旦大學(xué)也報(bào)道了異步PIC微控制器的實(shí)現(xiàn)。Philips公司的異 步80C51 已經(jīng)進(jìn)入實(shí)際應(yīng)用[9]。實(shí)踐證明,異步處理器較同步處理器在功耗方面有一定的優(yōu)勢(shì)。 在數(shù)字信號(hào)處理方面也有異步DSP與異步數(shù)據(jù)通路的報(bào)道,應(yīng)用異步處理方式可以降低運(yùn)算功耗[10] 。 在同步電路中也可以應(yīng)用部分異步處理單元,如應(yīng)用在高性能處理器中的異步指令長(zhǎng)度譯碼器,可以提高電路處理速度。另一方面也可以應(yīng)用于特殊場(chǎng)合,如通訊設(shè) 備待機(jī)電路、助聽器IFIR濾波器、CD機(jī)譯碼電路、異步智能電路、異步DCT[11]等。 6 面臨的挑戰(zhàn) 雖然異步集成電路具有很多的優(yōu)點(diǎn),但它在超大規(guī)模集成電路應(yīng)用方面,還面臨著許多挑戰(zhàn)。 發(fā)揮異步集成電路的優(yōu)點(diǎn)需要合適的應(yīng)用系統(tǒng)。異步集成電路應(yīng)用中,最突出的兩個(gè)優(yōu)點(diǎn)是低功耗和潛在的高性能,但這優(yōu)點(diǎn)不是無(wú)條件的。異步集成電路沒有整體 時(shí)鐘,使用本地握手信號(hào)進(jìn)行時(shí)序控制,需要增加一些電路模塊來(lái)完成這些工作。這些附加的電路模塊往往會(huì)對(duì)功耗和性能產(chǎn)生負(fù)面影響。因此,發(fā)揮異步集成電路 低功耗和高性能的特點(diǎn)需要合適的應(yīng)用對(duì)象,比如,在待機(jī)很頻繁的場(chǎng)合容易實(shí)現(xiàn)低功耗;在平均性能與最差性能相差較大的場(chǎng)合,有利于實(shí)現(xiàn)高性能。 異步集成電路設(shè)計(jì)沒有統(tǒng)一的設(shè)計(jì)方法和成熟的EDA工具?,F(xiàn)有的異步集成電路的設(shè)計(jì)方法,大部分是針對(duì)集成電路中某些局部問題的解決方法。超大規(guī)模集成電 路設(shè)計(jì)的一個(gè)重要特征是EDA工具的廣泛應(yīng)用,同步集成電路的EDA工具已經(jīng)相當(dāng)成熟,而異步集成電路設(shè)計(jì)的工具僅僅局限于某些部分的算法研究和自動(dòng)化 [12]。 因此,在集成電路發(fā)展到超大規(guī)模和SOC時(shí)代后,主要的問題是解決面向超大規(guī)模集成電路的異步集成電路設(shè)計(jì)方法,以及選擇合適的領(lǐng)域發(fā)揮它的優(yōu)點(diǎn)。 7 結(jié)束語(yǔ) 隨著集成電路技術(shù)的發(fā)展進(jìn)入深亞微米以后,器件的尺寸不斷縮小,單芯片的集成容量不斷擴(kuò)大,同步集成電路設(shè)計(jì)將面臨著諸多困難。在這種情況下,異步集成電 路低功耗、潛在的高性能和便于模塊化設(shè)計(jì)的優(yōu)點(diǎn)已經(jīng)逐漸地顯現(xiàn)出來(lái)。但現(xiàn)有的異步集成電路設(shè)計(jì)方法還不能滿足當(dāng)前超大規(guī)模集成電路設(shè)計(jì)的要求。因此,設(shè)計(jì) 和研究異步集成電路,發(fā)揮異步集成電路的優(yōu)勢(shì),具有較強(qiáng)的研究和應(yīng)用價(jià)值。 (轉(zhuǎn)自 中電網(wǎng)) |
|
|
來(lái)自: 成長(zhǎng)中的紅杉樹 > 《電子》