工藝技術(shù)的發(fā)展使得可編程門(mén)陣列(FPGA)在商業(yè)應(yīng)用中得到了極大的提高。從千萬(wàn)門(mén)的密度到400MHz的時(shí)鐘頻率以及300ns芯片尺寸,這些技術(shù)上的突破使得它們能夠很經(jīng)濟(jì)地實(shí)現(xiàn)批量生產(chǎn)。
FPGA的門(mén)數(shù)量以引人注目的速度增長(zhǎng),而價(jià)格卻不斷下降。然而專用集成電路(ASIC)在每門(mén)上的設(shè)計(jì)和制造費(fèi)用卻不斷攀升。除非速度或功耗特別關(guān)鍵,或者生產(chǎn)量非常高,我們很難證明使用ASIC的代價(jià)是合適的。
由于高端FPGA中門(mén)數(shù)量的增加,曾經(jīng)只在ASIC設(shè)計(jì)中才會(huì)出現(xiàn)的設(shè)計(jì)問(wèn)題現(xiàn)在開(kāi)始在FPGA設(shè)計(jì)中浮出水面。FPGA變的非常大也非常復(fù)雜,F(xiàn)PGA設(shè)計(jì)者正在遇到同一類型的收斂問(wèn)題,它阻礙甚至阻止設(shè)計(jì)的完成。
例如,互連延時(shí)是一個(gè)嚴(yán)重的問(wèn)題。正像高門(mén)數(shù)深亞微米ASIC設(shè)計(jì)最初出現(xiàn)時(shí)所證明的那樣,在尺寸縮減到0.18μm以下的時(shí)候,互連延時(shí)可以占到整個(gè)電路延時(shí)70-90%。由于軟件運(yùn)行時(shí)間以及基于性能的交互數(shù)量的增加,這還會(huì)影響到設(shè)計(jì)周期。
其它類型的問(wèn)題包括慢的或不可預(yù)測(cè)的布線結(jié)果、布線擁塞、緊縮封裝的設(shè)計(jì)、時(shí)鐘復(fù)雜性、關(guān)鍵路徑生成層次、以及在維護(hù)設(shè)計(jì)性能上的能力匱乏。
傳統(tǒng)的電子設(shè)計(jì)自動(dòng)化(EDA)軟件都是在深亞微米技術(shù)、更高的門(mén)數(shù)量和互連延時(shí)之前開(kāi)發(fā),現(xiàn)在它們已經(jīng)很難與日益增長(zhǎng)的復(fù)雜性并駕齊驅(qū)。它強(qiáng)迫設(shè)計(jì)者單獨(dú)地解決每一個(gè)問(wèn)題,接著再重新實(shí)現(xiàn)整個(gè)展平的設(shè)計(jì)。結(jié)果是冗長(zhǎng)的,幾個(gè)設(shè)計(jì)交互就會(huì)導(dǎo)致費(fèi)用超出預(yù)算、進(jìn)度的拖延、并可能失去市場(chǎng)機(jī)會(huì)。
在傳統(tǒng)的EDA設(shè)計(jì)流中,設(shè)計(jì)者使用初略的互連估計(jì)來(lái)綜合寄存器傳輸級(jí)(RTL)代碼,然后設(shè)計(jì)實(shí)現(xiàn)工具對(duì)綜合過(guò)的網(wǎng)表進(jìn)行映射、布局布線。如果設(shè)計(jì)不能夠滿足性能約束,設(shè)計(jì)者需要修改RTL代碼和/或約束,接著再重復(fù)整個(gè)設(shè)計(jì)流。
結(jié)果,F(xiàn)PGA設(shè)計(jì)者面對(duì)著冗長(zhǎng)、單調(diào)的布局布線運(yùn)行。每一次運(yùn)行都使用隨機(jī)的種子,這會(huì)產(chǎn)生不可預(yù)料的結(jié)果,因此為了達(dá)到收斂需要運(yùn)行許多次。不幸的是,即使一個(gè)例行的、微小的邏輯改變都會(huì)打破這個(gè)過(guò)程,迫使設(shè)計(jì)者再重新進(jìn)行冗長(zhǎng)單調(diào)的布局布線以便重新獲得設(shè)計(jì)收斂。
ASIC設(shè)計(jì)通過(guò)使用層次化的版圖規(guī)劃來(lái)進(jìn)行改進(jìn),這個(gè)位于綜合與布局布線之間的設(shè)計(jì)步驟減小了設(shè)計(jì)交互的數(shù)目和長(zhǎng)度。迫切想要減少設(shè)計(jì)周期和達(dá)到性能目標(biāo)的FPGA設(shè)計(jì)者正在采用這些ASIC風(fēng)格的設(shè)計(jì)技術(shù),以便能夠最大程度地解決這些復(fù)雜問(wèn)題。
ASIC風(fēng)格的設(shè)計(jì)方法為設(shè)計(jì)者提供了設(shè)計(jì)的早期分析和規(guī)劃能力,以便最大化性能并避免冗長(zhǎng)、重復(fù)的設(shè)計(jì)交互。它還提供了強(qiáng)大的增量式、模塊化設(shè)計(jì)能力來(lái)適應(yīng)例行的設(shè)計(jì)更改以及簡(jiǎn)化跨越多個(gè)設(shè)計(jì)的知識(shí)產(chǎn)權(quán)(IP)復(fù)用。
ASIC風(fēng)格的設(shè)計(jì)方法提供了在設(shè)計(jì)早期完成最終設(shè)計(jì)表示法的能力,它避免了潛在的實(shí)現(xiàn)問(wèn)題。這為設(shè)計(jì)者提供了直觀的反饋,這樣,設(shè)計(jì)者能夠在問(wèn)題出現(xiàn)之前看到并校正諸如布線擁賽一類的問(wèn)題。設(shè)計(jì)者可以重新安排設(shè)計(jì)塊或物理層次以便減輕擁塞,并減小長(zhǎng)的互連,從而獲得更高的性能。這樣的方法也可以減少整體的布局布線時(shí)間,并縮短例行設(shè)計(jì)更改或工程改動(dòng)要求(ECO)。
為了實(shí)現(xiàn)ASIC風(fēng)格的設(shè)計(jì)方法,設(shè)計(jì)者首先產(chǎn)生主要設(shè)計(jì)塊的物理層次。產(chǎn)生層次塊而不是展平設(shè)計(jì)的好處是加快ECO時(shí)間。當(dāng)必須進(jìn)行設(shè)計(jì)更改時(shí),交互時(shí)間較短,芯片的整體時(shí)序可以保持相對(duì)穩(wěn)定。設(shè)計(jì)者僅僅需要對(duì)更改的塊進(jìn)行快速的布局布線。
某些塊比其他塊的時(shí)序更為關(guān)鍵。設(shè)計(jì)者可以在布局布線之前通過(guò)對(duì)設(shè)計(jì)運(yùn)行靜態(tài)時(shí)序分析來(lái)確定這些關(guān)鍵塊。時(shí)序報(bào)告顯示哪一個(gè)設(shè)計(jì)塊可能不能滿足時(shí)序要求。
報(bào)告還可以區(qū)分時(shí)序問(wèn)題是由于長(zhǎng)的邏輯鏈還是由于長(zhǎng)的互連延時(shí)。設(shè)計(jì)者可以修改版圖規(guī)劃來(lái)解決與互連延時(shí)相關(guān)的問(wèn)題,或者重新綜合來(lái)解決邏輯相關(guān)的時(shí)序問(wèn)題。版圖規(guī)劃上顯示的連接性分析還可以顯示邏輯塊間的互連密度,可以識(shí)別潛在的布線擁塞面積。
使用ASIC風(fēng)格的方法,設(shè)計(jì)者能夠獨(dú)立于邏輯層次來(lái)處理物理層次。通常,這對(duì)于最大化性能、利用率或其它設(shè)計(jì)目標(biāo)是必要的。為了減輕時(shí)序問(wèn)題,設(shè)計(jì)者可以通過(guò)重新安排或分割邏輯塊以修改版圖規(guī)劃。
在布局布線之后,設(shè)計(jì)者可以調(diào)整設(shè)計(jì)來(lái)解決任何遺留的時(shí)序問(wèn)題。使用原理圖視圖作為指南,設(shè)計(jì)者可以選擇關(guān)鍵路徑邏輯并把它們放到一個(gè)小塊當(dāng)中,并通過(guò)減小互連距離來(lái)消除時(shí)序問(wèn)題。作為選擇,設(shè)計(jì)者可以在版圖規(guī)劃中簡(jiǎn)單地移動(dòng)關(guān)鍵路徑邏輯來(lái)縮短互連距離。
ASIC風(fēng)格的設(shè)計(jì)方法還能夠鼓勵(lì)團(tuán)隊(duì)化設(shè)計(jì)方法。一個(gè)典型的FPGA設(shè)計(jì)是通過(guò)單用戶流實(shí)現(xiàn),而ASIC風(fēng)格的設(shè)計(jì)方法則基于塊的工作流實(shí)現(xiàn),這是一種多用戶方法,使用一個(gè)“分割”策略來(lái)減少布局布線時(shí)間?;蛘?,一個(gè)設(shè)計(jì)者可以改變一個(gè)塊而保留設(shè)計(jì)的其它部分。
項(xiàng)目團(tuán)隊(duì)能夠更容易地固定芯片的個(gè)體面積,就像片上系統(tǒng)(SoC)設(shè)計(jì)團(tuán)隊(duì)所作的那樣。這種設(shè)計(jì)方法使得設(shè)計(jì)者能夠在設(shè)計(jì)的早期更好地處理物理塊屬性,例如利用率、互連性、以及功耗。
使用IP塊使得FPGA項(xiàng)目團(tuán)隊(duì)能夠在下一代產(chǎn)品中快速地繼續(xù)成功的設(shè)計(jì),因?yàn)樗麄儾辉傩枰看味贾匦逻M(jìn)行設(shè)計(jì)。
FPGA的復(fù)雜性已經(jīng)足夠服務(wù)于廣泛的應(yīng)用。不幸的是,這種復(fù)雜性也帶來(lái)了一些以前在ASIC設(shè)計(jì)中大家熟悉的問(wèn)題。通過(guò)采用ASIC風(fēng)格的設(shè)計(jì)方法能夠減輕這些問(wèn)題,使得設(shè)計(jì)者能夠更快速地實(shí)現(xiàn)和維護(hù)設(shè)計(jì)收斂。
責(zé)任編輯:gt
電子發(fā)燒友App


















評(píng)論