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

嵌入式系統(tǒng)中FFT算法分析及設(shè)計(jì)方案

嵌入式系統(tǒng)電源設(shè)計(jì)方案

嵌入式linux系統(tǒng)GUI設(shè)計(jì)方案

嵌入式圖形用戶界面系統(tǒng)方案

嵌入式軟件技術(shù)應(yīng)用設(shè)計(jì)方案匯總
基于嵌入式環(huán)境的WiFi通信設(shè)計(jì)方案詳解

嵌入式Linux串口擴(kuò)展的驅(qū)動設(shè)計(jì)方案解析

什么是嵌入式_如何入門和提高嵌入式
視頻教程-嵌入式Linux開發(fā)基礎(chǔ)-嵌入式

評論