《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于接口邏輯模型的MCU物理設(shè)計(jì)優(yōu)化研究
基于接口邏輯模型的MCU物理設(shè)計(jì)優(yōu)化研究
來源:微型機(jī)與應(yīng)用2012年第16期
王 鵬,,侯立剛,,吳武臣,彭曉宏
(北京工業(yè)大學(xué) 電控學(xué)院集成電路與系統(tǒng)研究室,,北京100124)
摘要: 以一款基于TSMC 0.18 μm工藝的MCU芯片WT20為例,采用設(shè)計(jì)規(guī)劃的方法在原有的展平式設(shè)計(jì)中將ARM Cortex-M0處理器的核心部分分離出來,,作為一個(gè)接口邏輯模型(ILM)進(jìn)行設(shè)計(jì),,之后在整個(gè)設(shè)計(jì)的頂層調(diào)入設(shè)計(jì)好的接口邏輯模型,完成整個(gè)MCU芯片的物理設(shè)計(jì),。采用接口邏輯模型的分層次物理設(shè)計(jì)與原有的展平式物理設(shè)計(jì)相比,,設(shè)計(jì)耗時(shí)顯著縮短。此外,,在新的物理設(shè)計(jì)中,,穿過處理器核心部分的關(guān)鍵路徑在時(shí)序方面也有了一定的改善,證明了接口邏輯模型在縮短設(shè)計(jì)耗時(shí)的同時(shí)可以保證時(shí)序的正確性,。
Abstract:
Key words :

摘  要: 以一款基于TSMC 0.18 μm工藝的MCU芯片WT20為例,,采用設(shè)計(jì)規(guī)劃的方法在原有的展平式設(shè)計(jì)中將ARM Cortex-M0處理器的核心部分分離出來,作為一個(gè)接口邏輯模型(ILM)進(jìn)行設(shè)計(jì),,之后在整個(gè)設(shè)計(jì)的頂層調(diào)入設(shè)計(jì)好的接口邏輯模型,,完成整個(gè)MCU芯片的物理設(shè)計(jì)。采用接口邏輯模型的分層次物理設(shè)計(jì)與原有的展平式物理設(shè)計(jì)相比,,設(shè)計(jì)耗時(shí)顯著縮短,。此外,,在新的物理設(shè)計(jì)中,穿過處理器核心部分的關(guān)鍵路徑在時(shí)序方面也有了一定的改善,,證明了接口邏輯模型在縮短設(shè)計(jì)耗時(shí)的同時(shí)可以保證時(shí)序的正確性,。
關(guān)鍵詞: 接口邏輯模型;分層次物理設(shè)計(jì),;降低設(shè)計(jì)耗時(shí),;時(shí)序優(yōu)化

    隨著VSLI設(shè)計(jì)進(jìn)入深亞微米時(shí)代,人們一方面因?yàn)樾酒δ艿臉O大提高而受益,,另一方面,,隨著特征尺寸的不斷縮小,芯片的物理設(shè)計(jì)變得越發(fā)復(fù)雜,。同時(shí),,為了贏得市場(chǎng),芯片設(shè)計(jì)的周期被不斷壓縮,,而芯片設(shè)計(jì)的規(guī)模卻仍舊飛速地增長(zhǎng),,這使得物理設(shè)計(jì)的耗時(shí)問題得到了越來越多的關(guān)注。因此,,需要有一種能夠提高物理設(shè)計(jì)效率和競(jìng)爭(zhēng)力的方法,。
    采用接口邏輯模型進(jìn)行分層次的物理設(shè)計(jì)可以解決上述問題。接口邏輯模型(ILM)是由模塊的接口邏輯電路轉(zhuǎn)化而成的一種結(jié)構(gòu)模型,,它只包含時(shí)序受模塊外部環(huán)境影響的邏輯單元,。ILM在簡(jiǎn)化模塊復(fù)雜度的同時(shí)可以提供準(zhǔn)確的時(shí)序模型,在大型設(shè)計(jì)的頂層中,,用ILM替換若干個(gè)模塊,,可以提高整個(gè)設(shè)計(jì)的時(shí)序優(yōu)化質(zhì)量,縮短設(shè)計(jì)耗時(shí),。
1 WT20芯片的展平式物理設(shè)計(jì)
    WT20芯片是一款基于ARM Cortex-M0處理器的通用MCU芯片,,其系統(tǒng)總線采用AMBA AHB、APB雙總線結(jié)構(gòu),,掛載的IP包括UART,、ADC等。
    如圖1所示,,WT20芯片的傳統(tǒng)展平式物理設(shè)計(jì)以IC Compiler為平臺(tái),,采用自下而上的設(shè)計(jì)方案:芯片經(jīng)過RTL設(shè)計(jì)仿真,通過邏輯綜合產(chǎn)生門級(jí)網(wǎng)表以及對(duì)應(yīng)的標(biāo)準(zhǔn)時(shí)序約束SDC文件,,再調(diào)用單元庫中的標(biāo)準(zhǔn)單元和大模塊單元,,以及這些單元的時(shí)序庫,通過布圖規(guī)劃,、電源規(guī)劃,、布局,、時(shí)鐘樹綜合以及布線實(shí)現(xiàn)物理設(shè)計(jì),提取RC參數(shù)進(jìn)行時(shí)序分析,,最后產(chǎn)生GDSII文檔完成全部設(shè)計(jì),。

2 分層次物理設(shè)計(jì)
    如圖2所示,分層次物理設(shè)計(jì)方法通過層次化預(yù)算和模塊分割,,使一個(gè)很大的設(shè)計(jì)轉(zhuǎn)化成多個(gè)小的設(shè)計(jì),,從而降低了設(shè)計(jì)的復(fù)雜度。設(shè)計(jì)頂層在例化設(shè)計(jì)好的模塊之后,,在布局(place),、時(shí)鐘樹綜合(clock)以及金屬布線(route)三個(gè)階段的工作量會(huì)大大減小,從而縮短設(shè)計(jì)耗時(shí),。此外,,在大型設(shè)計(jì)中,各個(gè)模塊的物理設(shè)計(jì)同步進(jìn)行,,最后在設(shè)計(jì)的頂層進(jìn)行芯片組裝,,做到并行不悖。WT20芯片基于接口邏輯模型的分層次物理設(shè)計(jì)的具體實(shí)現(xiàn)過程將在第3節(jié)和第4節(jié)中進(jìn)行介紹,。

3 ILM分層次物理設(shè)計(jì)的設(shè)計(jì)規(guī)劃
    在WT20芯片基于接口邏輯模型的分層次物理設(shè)計(jì)的初始階段,,首先需要為接口邏輯模型構(gòu)造獨(dú)立的模塊(block),這部分工作在設(shè)計(jì)規(guī)劃階段完成,,因此,,設(shè)計(jì)規(guī)劃是整個(gè)分層次物理設(shè)計(jì)的基礎(chǔ)。設(shè)計(jì)規(guī)劃包括如下工作:
    (1)確定芯片面積,。芯片的面積越小,每張硅片上產(chǎn)出的裸片數(shù)量越多,,平均到每個(gè)芯片上的成本也越低,。但如果芯片的面積過小,一方面會(huì)增加芯片中標(biāo)準(zhǔn)單元的擁塞程度,,提高物理設(shè)計(jì)后期布線的難度,,另一方面也會(huì)使芯片管腳難以擺放。因此,,一個(gè)合理的面積設(shè)定可在保證布線及管腳排布的同時(shí)盡量節(jié)約產(chǎn)品的成本,,所以設(shè)計(jì)規(guī)劃的最初目標(biāo)是估計(jì)芯片面積的大小[1]。
    (2)創(chuàng)建plan group,。plan group劃定了接口邏輯模型所包含邏輯的范圍,。在創(chuàng)建plan group時(shí)需要考慮設(shè)計(jì)中的邏輯關(guān)系、模塊規(guī)模以及在虛擬布局中的物理連接關(guān)系,。通過IC Compiler的create_plan_group命令可以實(shí)現(xiàn)plan group的創(chuàng)建,,plan group的形狀及在芯片中的位置可以根據(jù)需要進(jìn)行調(diào)整,。在本設(shè)計(jì)中,通過對(duì)原有的WT20芯片設(shè)計(jì)進(jìn)行靜態(tài)時(shí)序分析,,發(fā)現(xiàn)關(guān)鍵時(shí)序路徑大量分布于ARM內(nèi)核中mcu/sys/timing/init_imp/cortexm0integration區(qū)域內(nèi),,因此將cortexm0integration作為一個(gè)plan group進(jìn)行獨(dú)立設(shè)計(jì)。
    (3)plan group的管腳排布(pin assignment)以及時(shí)鐘預(yù)算(timing budget),。IC Compiler根據(jù)plan group的物理位置以及從plan group中獲得的時(shí)序信息設(shè)定管腳的位置,。在進(jìn)行管腳排布時(shí),應(yīng)該避免在小面積的plan group邊界上排布大量的管腳,,否則會(huì)導(dǎo)致管腳排布失敗,。為了滿足分層次設(shè)計(jì)時(shí)序收斂的要求,在管腳排布階段要保證plan group擁有充裕的時(shí)序預(yù)算,,這些工作可以通過allocate_fp_budgets命令來實(shí)現(xiàn),。
    在完成上述三步后,plan group會(huì)被轉(zhuǎn)化成軟模塊,,其在接口邏輯模型的實(shí)現(xiàn)階段會(huì)被用于生成ILM模塊,。圖3中的黑色矩形部分是包含了plan group接口電路邏輯關(guān)系以及時(shí)序信息的軟模塊。

4.1 分層次物理設(shè)計(jì)數(shù)據(jù)庫的準(zhǔn)備
    在這一階段,,需要為物理設(shè)計(jì)的頂層(top)以及由plan group生成的軟模塊分別構(gòu)建物理設(shè)計(jì)所需的數(shù)據(jù)庫,。每一個(gè)數(shù)據(jù)庫中包含能夠被IC Compiler識(shí)別的milkyway library、標(biāo)準(zhǔn)設(shè)計(jì)約束SDC文件以及物理設(shè)計(jì)中所需的腳本,。將plan group 轉(zhuǎn)化成軟模塊之后,,通過split_library命令就可以生成模塊級(jí)物理設(shè)計(jì)數(shù)據(jù)庫。
4.2 接口邏輯模型的生成
    在構(gòu)架好物理設(shè)計(jì)庫之后,,由plan group 轉(zhuǎn)化成的軟模塊就可以在不影響頂層其他部分的情況下獨(dú)立進(jìn)行布局,、時(shí)鐘樹綜合以及布線等物理設(shè)計(jì)工作。完成軟模塊的物理設(shè)計(jì)之后,,通過create_ilm 命令將plan group生成接口邏輯模型,,同時(shí)在頂層和模塊層分別生成包含接口邏輯模型所有時(shí)序信息的庫文件。圖5是本設(shè)計(jì)中完成物理設(shè)計(jì)之后的軟模塊以及生成的接口邏輯模型,,可以看到,,相比右側(cè)的軟模塊,左側(cè)的接口邏輯模型的結(jié)構(gòu)得到了明顯的簡(jiǎn)化,,這會(huì)使頂層設(shè)計(jì)的物理設(shè)計(jì)耗時(shí)大大減少,。之后用create_macro_fram命令為生成的接口邏輯模型創(chuàng)建一個(gè)FRAM模型,該模型包含了對(duì)應(yīng)接口邏輯模型的抽象物理結(jié)構(gòu)信息,,借助FRAM所提供的信息,,IC Compiler可以在接口邏輯模型的上方進(jìn)行布線。在MCU芯片設(shè)計(jì)的頂層例化組裝已經(jīng)完工的ILM模塊,,并完成其余的頂層物理設(shè)計(jì)后,,WT20芯片基于接口邏輯模型的分層次物理設(shè)計(jì)就完成了,。

5 分層次物理設(shè)計(jì)結(jié)果分析
    本文從物理設(shè)計(jì)所耗費(fèi)的時(shí)間(runtime)和物理設(shè)計(jì)靜態(tài)時(shí)序分析結(jié)果兩方面來對(duì)傳統(tǒng)的展平式物理設(shè)計(jì)方法與基于ILM的分層次物理設(shè)計(jì)方法進(jìn)行對(duì)比,驗(yàn)證后者是否能在節(jié)約設(shè)計(jì)耗時(shí)的同時(shí),,保證設(shè)計(jì)靜態(tài)時(shí)序的相關(guān)性,,優(yōu)化時(shí)序結(jié)果。
5.1 物理設(shè)計(jì)耗時(shí)分析
    通過比較在物理設(shè)計(jì)的布局優(yōu)化,、時(shí)鐘樹優(yōu)化以及布線優(yōu)化三個(gè)階段展平式物理設(shè)計(jì)與基于ILM的分層次物理設(shè)計(jì)的設(shè)計(jì)耗時(shí),,計(jì)算后者與前者之比,如表1所示,。得益于模塊分割后,,設(shè)計(jì)難度降低以及并行設(shè)計(jì)的特點(diǎn),基于接口邏輯模型的分層次物理設(shè)計(jì)與傳統(tǒng)的展平式物理設(shè)計(jì)相比,,在布局優(yōu)化,、時(shí)鐘樹優(yōu)化以及布線優(yōu)化階段的設(shè)計(jì)耗時(shí)都有大幅降低,有效地縮短了設(shè)計(jì)周期,。

5.2 物理設(shè)計(jì)靜態(tài)時(shí)序結(jié)果分析

 


    通過靜態(tài)時(shí)序分析可以得到時(shí)序路徑終點(diǎn)的信號(hào)到達(dá)時(shí)間(arrival time)以及代表路徑時(shí)序緊張程度的slack,,slack越大表示時(shí)序越寬松。采用統(tǒng)計(jì)的方法,,選取10 000條穿過接口邏輯模型并且時(shí)序最緊張的關(guān)鍵路徑作為采樣,,在布局、時(shí)鐘,、布線三個(gè)階段進(jìn)行靜態(tài)時(shí)序分析,,以路徑的信號(hào)到達(dá)時(shí)間為隨機(jī)變量,繪制正態(tài)分布曲線,。如圖6所示,,從左至右依次為布局優(yōu)化、時(shí)鐘優(yōu)化,、布線優(yōu)化三個(gè)階段的信號(hào)到達(dá)時(shí)間正態(tài)分布曲線,,三條曲線的對(duì)稱軸以及離散程度并沒有發(fā)生明顯的變化,說明采用接口邏輯模型的分層次物理設(shè)計(jì)在不同設(shè)計(jì)階段的靜態(tài)時(shí)序分析結(jié)果是相對(duì)收斂的,,具有較好的靜態(tài)時(shí)序相關(guān)性。

    分層次物理設(shè)計(jì)的布線工作完成后,,從穿過接口邏輯模型的時(shí)序路徑中,,同樣選擇10 000條關(guān)鍵路徑作為采樣進(jìn)行靜態(tài)時(shí)序分析。同時(shí),,在展平式物理設(shè)計(jì)中的布線完成階段,,對(duì)同樣的路徑也進(jìn)行靜態(tài)時(shí)序分析,比較相同路徑的slack優(yōu)化情況,。發(fā)現(xiàn)通過基于接口邏輯模型的分層次物理設(shè)計(jì),,37%的關(guān)鍵路徑的slack值升高了,,時(shí)序得到了優(yōu)化,表2列舉了其中的5條,;57%的關(guān)鍵路徑其時(shí)序結(jié)果未發(fā)生明顯變化,;僅6%的關(guān)鍵路徑其時(shí)序結(jié)果出現(xiàn)了輕度惡化。

    從以上結(jié)果可以看出,,基于接口邏輯模型的分層次物理設(shè)計(jì)方法,,在有效縮短設(shè)計(jì)耗時(shí)的同時(shí),可以保證設(shè)計(jì)靜態(tài)時(shí)序結(jié)果的相關(guān)性,,并能優(yōu)化部分關(guān)鍵時(shí)序路徑,,在大規(guī)模ASIC物理設(shè)計(jì)中,相比傳統(tǒng)的展平式物理設(shè)計(jì)方法具有明顯的優(yōu)勢(shì),。
參考文獻(xiàn)
[1] 陳春章,,艾霞,王國(guó)雄.數(shù)字集成電路物理設(shè)計(jì)[M].北京:科學(xué)出版社,,2008.
[2] IC Compiler User Guide[S].2009:1-11.
[3] IC Compiler Design Planning User Guide[S].2009:1-4.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。