SoC(System on Chip)可以譯為"系統(tǒng)集成芯片",意指它是一個產(chǎn)品,是一個有專用目標(biāo)的集成電路,其中包含完整系統(tǒng)并有嵌入軟件的全部內(nèi)容;SoC也可以譯為"系統(tǒng)芯片集成",意指它是一種技術(shù),用以實現(xiàn)從確定系統(tǒng)功能開始,到軟/硬件劃分,并完成設(shè)計的整個過程。
作為ASIC(Application Specific IC)設(shè)計方法學(xué)中的新技術(shù),SoC始于20世紀(jì)90年代中期。1994年MOTORLA發(fā)布的Flex CoreTM系統(tǒng)(用來制作基于68000TM和Power PCTM的定制微處理器)和1995年LSI Logic公司為SONY公司設(shè)計的SoC,可能是基于IP(Intellectual Property)核完成SoC設(shè)計的最早報導(dǎo)。由于SoC可以充分利用已有的設(shè)計積累,顯著地提高ASIC的設(shè)計能力,因此發(fā)展非常迅速。在2000年的CICC(Custom IC Conference)會議上,MOTORLA SoC 設(shè)計技術(shù)研究部主任 Joe Pumo作了主題報告(key note),題目是"SoC:The Convergence Point for Solution of the 21st century[1]。CICC是ASIC設(shè)計領(lǐng)域最高層次的國際學(xué)術(shù)會議。它的主題報告一般代表著ASIC設(shè)計領(lǐng)域的技術(shù)發(fā)展趨勢,也說明SoC在ASIC學(xué)術(shù)界和工業(yè)界受到重視的程度。本文擬對嵌入式SoCIC的設(shè)計方法和流程作些討論。
一、系統(tǒng)集成芯片(SoC)是IC設(shè)計的發(fā)展趨勢
(1)隨著微電子技術(shù)和半導(dǎo)體工業(yè)的不斷創(chuàng)新和發(fā)展,超大規(guī)模集成電路和集成度和工藝水平不斷提高,深亞微米(deep-submicron)工藝,如0.18μm、0.13μm已經(jīng)走向成熟,使得在一個芯片上完成系統(tǒng)級的集成已成為可能。
(2)各種電子系統(tǒng)出于降低成本、減少體積的要求,對系統(tǒng)集成提出了更高的要求。
(3)高性能的EDA工具得到長足發(fā)展,其自動化和智能化程度不斷提高,為嵌入式系統(tǒng)設(shè)計提供了功能強大的開發(fā)集成環(huán)境。
(4)計算機硬件平臺性能大幅度提高,使得很復(fù)雜的算法和方便的圖形界面得以實現(xiàn),為復(fù)雜的SoC設(shè)計提供了物理基礎(chǔ)。
IC技術(shù)的迅速發(fā)展得益于IC產(chǎn)業(yè)內(nèi)部的細(xì)致分工,SoC技術(shù)正是IC產(chǎn)業(yè)分工的體現(xiàn)。確切地說,60年代的IC產(chǎn)業(yè)應(yīng)該是半導(dǎo)體產(chǎn)業(yè),當(dāng)時的廠家沒有分工,所掌握的技術(shù)十分全面,最典型的代表就是Fairchild公司,不但生產(chǎn)晶體管、集成電路,就連擴散爐都自己制作,如圖2中的第一行所示。到了70年代開始分工,半導(dǎo)體工藝設(shè)備和ICCAD設(shè)備成為獨立產(chǎn)業(yè),以其精湛的專業(yè)技術(shù)為IC廠家提供高質(zhì)量的設(shè)備。此時IC廠家可以有更多的精力用于產(chǎn)品的設(shè)計與工藝的研究。到了80年代,工藝設(shè)備生產(chǎn)能力已經(jīng)相當(dāng)強大,而且費用也十分昂貴,IC廠家自己的設(shè)計已不足以供其飽和運行。因此開始承接對外加工,繼而由部分到全部對外加工,形成了Foundry加工和Fabless設(shè)計的分工。IC產(chǎn)業(yè)的這一次分工,再加上ICCAD工具發(fā)展為EDA系統(tǒng)和大批沒有半導(dǎo)體背景的系統(tǒng)設(shè)計師提供了直接介入IC設(shè)計的條件。由于系統(tǒng)設(shè)計師來自國民經(jīng)濟的各行各業(yè),因此使得IC的作用也滲透到各行各業(yè),開拓了IC的應(yīng)用領(lǐng)域,擴大了對IC的需求。80年代的這次分工是IC發(fā)展過程中的一次重要分工,極大地推動了IC產(chǎn)業(yè)的發(fā)展。
二、何為嵌入式SoC IC
SoC(System on Chip)是指集系統(tǒng)性能于一塊芯片上的系統(tǒng)級芯片。它通常含有一個微處理器核(CPU),有時再增加一個或多個DSP核,以及多個或幾十個的外圍特殊功能模塊和一定規(guī)模的存儲器(RAM、ROM)等。嵌入式SoC更是針對應(yīng)用所需的性能,將其設(shè)計在芯片上而成為系統(tǒng)操作芯片。芯片的規(guī)模常??梢赃_(dá)到數(shù)百萬門甚至上千萬門以上,所以嵌入式SoC是滿足應(yīng)用的系統(tǒng)級的集成電路產(chǎn)生,一方面要滿足復(fù)雜的系統(tǒng)性能的需要,另一方面也要滿足市場上日新月異的對新產(chǎn)品的需求,因此嵌入式SoC的設(shè)計也代替了高科技的設(shè)計方法和程序。只有在不斷地發(fā)展優(yōu)化下,嵌入式SoC才能提供設(shè)計周期短而性能優(yōu)異的產(chǎn)品。因此,要掌握嵌入式系統(tǒng)芯片的設(shè)計,就要了解其設(shè)計方法和流程。
三、嵌入式SoC IC的設(shè)計方法和流程
SoC IC的設(shè)計原則,就是盡可能重用各種功能模塊并集成為所需的系統(tǒng)級芯片。讀到設(shè)計重用,必須對重用時需要考慮的因素作一些說明。首先,重用的功能模塊要有詳盡的說明書,對模塊的功能和適用范圍以及芯片集成時的總線接口進(jìn)行說明。其次,要提供該模塊過去已實現(xiàn)的生產(chǎn)工藝。第三,要提供用于測試該模塊的測試程序及測試平臺。最后,也是最重要的,就是模塊的設(shè)計內(nèi)核。通常提供的設(shè)計分為“軟模塊”和“硬模塊”兩種?!败浤K”只提供RTL語言描述,可以用EDA綜合工具產(chǎn)生電路。它的優(yōu)點是比較靈活,可以根據(jù)不同的生產(chǎn)工藝產(chǎn)生對應(yīng)的電路。“硬模塊”提供的是已經(jīng)完成的電路物理設(shè)計(physical design),也就是版圖的設(shè)計(layout)。它的缺點是一旦生產(chǎn)工藝改變就不能夠再使用了,即使是在采用同樣生產(chǎn)工藝的情況下,由于模塊的物理尺寸已經(jīng)確定因而也影響了布局(floor-plan)的靈活性;它的優(yōu)點是在設(shè)計采用同樣生產(chǎn)工藝的產(chǎn)品并且其物理尺寸不影響芯片布局的情況下,能夠直接采用,不用重新設(shè)計。由于半導(dǎo)體工藝發(fā)展極快,通常重用“軟模塊”比較多。
目前,在歐洲和北美已經(jīng)在產(chǎn)業(yè)界形成了基于IP(Interllectual Property)總線模塊的重用標(biāo)準(zhǔn),對于重用的各個因素都有明確的規(guī)定。我國的IC設(shè)計產(chǎn)業(yè)正在迅速發(fā)展,應(yīng)該盡快建立自己的重用標(biāo)準(zhǔn),與國際接軌。
通常SoC IC的設(shè)計方法有兩種:一種是基于模塊(module-based)的設(shè)計方法,另一種是“門海”(sea-of-cell)的設(shè)計方法。
Module-based的設(shè)計方法是指各個單元模塊完成各自的RTL和電路綜合以及版圖設(shè)計,然后,在頂層完成整個芯片的版圖設(shè)計。這種方法的優(yōu)點是當(dāng)個別模塊進(jìn)行修改進(jìn),不會對整個芯片的設(shè)計產(chǎn)生較大的影響。它的設(shè)計流程如圖1所示。
Sea-of-cell的設(shè)計方法指的是在各個單元模塊完成RTL后,直接對整個芯片進(jìn)行綜合,產(chǎn)生整個芯片的網(wǎng)表,然后,完成整個芯片的版圖設(shè)計。它的優(yōu)點是能夠節(jié)省芯片面積,缺點是一旦某個模塊修改了,整個芯片要重新做綜合和版圖設(shè)計。它的設(shè)計流程如圖2所示。
四、SoC IC滿足的時序要求
由于SoC IC的規(guī)模一般都非常大,因此各個模塊用于綜合(synthesis)的約束條件必須基于整個芯片的時序要求來產(chǎn)生,才不至于對整個芯片的Timing產(chǎn)生影響。Synopsys公司的Design Budgeting工具能夠根據(jù)芯片頂層的約束條件對整個芯片以及子模塊的約束和時序進(jìn)行分配和控制,并且產(chǎn)生以此為基礎(chǔ)的各個子模塊的約束條件用于電路綜合,由于芯片頂層以及模塊之間的時序已經(jīng)得到平衡考慮,許多時序問題(timing violations)已經(jīng)預(yù)先得到控制,能夠減少后期對設(shè)計進(jìn)行反復(fù)修改的次數(shù)。
在對電路進(jìn)行驗證(verify)的時候,除了驗證功能正確外,還要驗證工作時序的正確性。通常的方法是編寫專門的測試程序,運行EDA仿真工具來完成,這通常稱為動態(tài)仿真(dynamic simulation)。由于SoC IC的規(guī)模比較大,仿真(simulation)運行的時間比較長,尤其是在完成版圖設(shè)計后做后仿真(postlayout simulation)的時候,因此,我們要引入靜態(tài)時序分析的方法(static timing analysis)。它是從電路的連接和布線上來推測貪污傳輸?shù)臅r序,因此當(dāng)電路的工作時鐘和約束條件確定后,電路中信號傳輸時的設(shè)定時間(setup time)和保持時間(hold time)也已經(jīng)確定,通過靜態(tài)時序分析就可以把那些不滿足要求的路徑或電路單元找出來,提供修改設(shè)計的依據(jù)。它的特點是運行時間遠(yuǎn)遠(yuǎn)少于動態(tài)仿真。許多電路的時序問題可以預(yù)先發(fā)現(xiàn)而不用等到動態(tài)仿真完成,因而可以幫助我們縮短設(shè)計周期。常用的設(shè)計工具有Synopsys公司的Primetime和Cadence公司的Pearl。
IC工藝的發(fā)展也給人們帶來一些憂慮,這就是所謂的"極限"問題。擔(dān)心Moore定律是否有效,現(xiàn)行的硅基工藝還能持續(xù)多久?這個問題已經(jīng)討論了10年。在這10年的IC發(fā)展中可以得出這樣的結(jié)論:21世紀(jì),起碼是21世紀(jì)前半,系統(tǒng)集成仍然是以硅基工藝實現(xiàn)。盡管微電子學(xué)在化合物和其他新材料方面的研究取得了很大進(jìn)展,但全世界數(shù)以萬億計的設(shè)備和技術(shù)投入,已經(jīng)使硅基工藝形成非常強大的產(chǎn)業(yè)能力。同時,長期的科研投入已使得人們對硅及其衍生物各種屬性的了解達(dá)到十分深刻、十分透徹的地步,成為自然界100多種元素之最,這是非常寶貴的知識積累。產(chǎn)業(yè)的能力和知識的積累決定著硅基工藝起碼將在30~50年內(nèi)起骨干作用,還將繼續(xù)發(fā)展。即使是Moore定律不再有效,硅工藝為IC設(shè)計提供的加工能力也足夠使用幾十年。
五、版圖設(shè)計
對于復(fù)雜的SoC IC,其版圖設(shè)計(layout)也是非常復(fù)雜的。隨著半導(dǎo)體工藝的越來越精密,芯片的規(guī)模越來越大,版圖布線的負(fù)荷已成為主要的時序影響因素,所以自動布局布線的時序分析成為設(shè)計的重點。無論采用module-based的設(shè)計方法還是sea-of-cell的方法,最好要采用時序驅(qū)動(timing driven)的版圖設(shè)計方式,這樣,可以確保前端各個層次的設(shè)計約束條件延伸到物理設(shè)計(physical design)中去。具體做法是將綜合電路的約束條件轉(zhuǎn)化為Layout工具可以識別的格式,用來驅(qū)動Layout工具完成設(shè)計。此外,為了保證電路的時鐘到達(dá)各時序單元的時間的一致性,需要在各時鐘路徑上插入時鐘樹(clocktree),通過一定的約束條件,Layout工具可以通過平衡時鐘路徑之間的差異(skew),自動完成時鐘樹的生成。通常的版圖設(shè)計流程如圖3所示。
最后,當(dāng)布局布線完成之后,還要做DRC和LVS的檢查。DRC(Design Rule Check)是檢查版圖設(shè)計定否符號生產(chǎn)工藝的物理規(guī)則要求;LVS(Layout Versus Schematic)是檢查版圖設(shè)計是否與電路設(shè)計一致。只有當(dāng)這兩項檢查都通過后,版圖設(shè)計的工作才算完成。我們通常采用Cadence或Avanti公司的Layout檢查工具。
再要一提的是,當(dāng)生產(chǎn)工藝小于0.35μm以下時,尤其在采用同步電路設(shè)計方法時,因為布線而造成的時序差異和延遲常常超過模塊中電路設(shè)計的差異和延遲。因此,在Layout時對布局設(shè)計和時鐘樹生成需要仔細(xì)考慮。Layout完成后的時序分板是做好設(shè)計的關(guān)鍵。這也是選擇基于模塊設(shè)計方法或是“門?!痹O(shè)計方法時要考慮的因素之一。
對于深亞微米的版圖設(shè)計,還有兩個因素要考慮。一個是當(dāng)走線過長時產(chǎn)生的天線效應(yīng)(antennaeffect)會對電路的時序產(chǎn)生影響。解決的辦法是在長走線中插入天線二極管(antenna diode),用于抵消天線效應(yīng)。另一個情況是當(dāng)兩條平行的走線非常靠近的時候,它們之間的偶合效應(yīng)會產(chǎn)生交叉干擾(cross-talk),也會對電路的時序造成不利影響。解決的辦法是在線路中加入buffer來克服,采用Cadence公司的Signal Integrity工具可以分析出交叉干擾出現(xiàn)的電路部分并結(jié)合Layout工具自動完成buffer的插入。
芯片端口(I/O PAD)的設(shè)計也是SoC IC設(shè)計的重點,除了要考慮靜電保證ESD、驅(qū)動能力等因素外,還要考慮到當(dāng)兩個PAD靠得很近的時候,它們之間的耦合效應(yīng)會形成寄生三極管(parasitic transistor)效應(yīng),影響I/O PAD的正常功能。
SoC IC通常都是數(shù)?;旌想娐罚鎴D設(shè)計的核心是防止噪聲干擾。通常要從兩個方面來考慮:一是在布局時盡量使相互容易受干擾的模塊分開得遠(yuǎn)一些;二是數(shù)字電路和模擬電路要采用不同的電源和布線。
六、SoC IC的測試設(shè)計DFT(Design For Test)
芯片的測試,一方面是為了保證芯片的質(zhì)量和可靠性,另一方面也要滿足低成本的生產(chǎn)目的。過去,傳統(tǒng)的測試方法是把我們用于功能仿真的測試程序轉(zhuǎn)化為生產(chǎn)測試程序輸入測試儀器。它的缺點是測試時間長,尤其是高覆蓋率(test coverage)的要求下,對于大規(guī)模的SoC IC,其成本將非常高?,F(xiàn)在,通常采用插入測鏈(scan chain)的方法,使得芯片中的時序單元在測試模式下連接成移位寄存器(shift register),然后,采用ATPG(Automatic Test Pattern Generator)工具產(chǎn)生的測試向量,能夠有效地對芯片完成測試。測試時間大大縮短,也能達(dá)到高于90%的覆蓋率,保證產(chǎn)品的品質(zhì)和可靠性。許多EDA工具如Synopsys公司的Design Compiler和Mentor公司的DFT Aduvisor/Fastscan都可以幫助完成這一工作,自動化程序相當(dāng)高。當(dāng)然,這一方法的代價是會增加芯片的面積。需要指出的是,采用插入測試鏈的方法只適用于同步電路設(shè)計,而且在電路的RTL設(shè)計階段就要把這一因素考慮進(jìn)去。對于異步電路的測試主要還是通過功能測試完成。
由于SoC IC比較復(fù)雜,芯處中需要設(shè)有專門的測試控制模塊(test control module),將整個芯片分為若干個測試組,每個部分都有獨立的測試鏈完成測試。結(jié)合若干個芯片端口完成整個芯片的測試控制。
結(jié)束語
設(shè)計計劃考慮項目:
Product Design specification(產(chǎn)品設(shè)計規(guī)格書)
Design methodology and EDA tools selection(設(shè)計方法和設(shè)計工具的選擇)
Database structure(and choose a Database Manager)(設(shè)計數(shù)據(jù)的存儲結(jié)構(gòu))
Naming convertion(命名規(guī)范)
IP Module re-use consideration (IP模塊重用的考慮)
Test plan(測試計劃)
Chip Integration plan(整個芯片的集成計劃)
Design schedule(設(shè)計時間表)
Design Resources requirement plan(設(shè)計的人力和軟硬件需求計劃)
Detail design task check off list。(詳盡的設(shè)計任務(wù)完成情況檢查表)
SoC IC成為現(xiàn)代電子系統(tǒng)的核心已是不爭的事實,一個人或幾個人包打天下的可能性已經(jīng)很小。有效利用“重用”功能模塊和強大EDA工個的支持是SoC IC設(shè)計的基礎(chǔ),而采用好的設(shè)計方法和流程、解決好Timing Closure和Testability是SoC IC設(shè)計的核心。如果說在IP模塊設(shè)計中更多體現(xiàn)物理背景的話,包括電路的、器件的、工藝的,甚至分子的、原子的,那么系統(tǒng)級設(shè)計將更多體現(xiàn)系統(tǒng)背景,包括功能的、行為的、算法的、架構(gòu)的、設(shè)置思路的。赤橙黃綠青藍(lán)紫,系統(tǒng)集成的廣譜背景襯映著一個七彩紛呈的絢麗世界。
-
嵌入式
+關(guān)注
關(guān)注
5060文章
18980瀏覽量
302241 -
IC
+關(guān)注
關(guān)注
36文章
5881瀏覽量
175096 -
soc
+關(guān)注
關(guān)注
38文章
4108瀏覽量
217790
發(fā)布評論請先 登錄
相關(guān)推薦
評論