推動(dòng)標準的平臺
在復雜SoC設計中,設計的可復用性是一種公認的能有效提升設計效率的方法。單純地強調開(kāi)發(fā)和集成硬件IP(intellectual property)模塊還不夠完全,人們應該繼續提高IP的抽象層次——從簡(jiǎn)單的組件到完整的功能子系統,為SoC設計提供一個(gè)靈活而穩定的出發(fā)點(diǎn)。
目前許多公司都進(jìn)行基于平臺的設計,希望借此來(lái)滿(mǎn)足越來(lái)越緊迫的產(chǎn)品上市時(shí)間要求。然而,如果只是簡(jiǎn)單地把一個(gè)原來(lái)的設計轉移到另一個(gè)產(chǎn)品設計中去會(huì )帶來(lái)很多問(wèn)題。假如這個(gè)設計沒(méi)有考慮到設計的可復用性,并且缺乏足夠的文檔說(shuō)明,那么改寫(xiě)該設計花費的時(shí)間可能比重新寫(xiě)一個(gè)更長(cháng)。
在電子行業(yè)中,標準的發(fā)展對于降低開(kāi)發(fā)費用是至關(guān)重要的。通用設計語(yǔ)言、工作設計標準、可測性和其他許多方面的發(fā)展使得設計團隊可以使用類(lèi)似的技術(shù),或者購買(mǎi)到可以協(xié)同工作的解決方案。自從ARM體系結構出現以后,一個(gè)包括開(kāi)發(fā)系統、硬件和軟件IP、芯片和專(zhuān)業(yè)維護等的有機系統正在形成。這其中最重要的一點(diǎn)就是把ARM結構體系作為一個(gè)標準。
只有在標準化的基礎上不斷提高IP的抽象層次,這種趨勢才有可能持續發(fā)展下去。共享標準對于克服設計復雜化非常重要。然而,對于確定標準化能夠帶來(lái)好處的方面,需要對如何區分SoC設計環(huán)節有很好的了解。
行業(yè)趨勢
在2001年《半導體國際技術(shù)發(fā)展道路》(International Technology Roadmap for Semiconductors)的報道中指出,一個(gè)好的SoC系統驅動(dòng)器要有多種技術(shù)的集成、高性能、低功耗和低價(jià)格等特征。每一個(gè)新的技術(shù)工藝“節點(diǎn)”(如:0.13微米、0.09微米、0.07微米等)芯片面積平均以20%的比例增長(cháng)——即使新的工藝可以在相同的面積上集成更多的邏輯單元。每一次工藝提升,平均處理器的邏輯增加4倍,存儲器容量增加2~4倍。
產(chǎn)品功能的集成,如移動(dòng)電話(huà)向多功能PDA的轉變、數字播放器和游戲機的合成等,推動(dòng)著(zhù)系統性能和復雜度的快速提高。通常每一個(gè)主要的功能都是一個(gè)獨立而復雜的子系統。對于那些開(kāi)發(fā)這類(lèi)產(chǎn)品的公司來(lái)講,開(kāi)發(fā)和維護這么一個(gè)龐大的系統正變得越來(lái)越困難。同時(shí),消費者不會(huì )因為產(chǎn)品是多功能的就降低對每種功能的質(zhì)量要求。
為了有效執行特定功能的高性能算法,終端產(chǎn)品中通常會(huì )整合進(jìn)一些特殊的硬件模塊來(lái)彌補CPU功能的不足。諸如Java、音頻、多媒體和3D圖像等都需要硬件加速器來(lái)保證需要的特殊性能。當更多需要高性能保證算法出現的時(shí)候,軟件需要專(zhuān)門(mén)硬件配合的情況還將繼續下去。隨著(zhù)軟件的復雜度超過(guò)硬件,許多嵌入式和平臺產(chǎn)品正在開(kāi)發(fā)和應用實(shí)時(shí)操作系統,以分離硬件和軟件接口。采用一個(gè)標準的用戶(hù)操作系統,如WindowsCE,能使最終上市的產(chǎn)品擁有盡可能多的應用功能。另一方面,把一個(gè)操作系統移植到新的設計中來(lái)是一項非常艱巨的任務(wù)。它要求設計人員十分細致小心,且對系統平臺和操作系統本身的復雜特征十分了解。即使只是開(kāi)發(fā)一個(gè)穩定的基礎水平設計——包括能夠運行操作系統的軟件和硬件,都要付出相當多的努力。
所有這些趨勢都將導致更長(cháng)的開(kāi)發(fā)時(shí)間和更高的開(kāi)發(fā)費用。對于許多OEM來(lái)說(shuō),他們的目標是能夠在不同的產(chǎn)品設計之間分享某些基礎開(kāi)發(fā)費用,但同時(shí)在基礎之上又能夠依據不同的產(chǎn)品加入獨特而清晰的附加功能。這種分工、合作與競爭并存的模型,已經(jīng)為許多希望控制開(kāi)發(fā)成本的公司所采納。無(wú)論是電信行業(yè)中共享的網(wǎng)絡(luò ),汽車(chē)制造商共享的汽車(chē)開(kāi)發(fā)平臺,還是為復雜SoC開(kāi)發(fā)的IP,這種模型都建立在某些共同的標準之上。
標準的出現
10年或15年以前,ASIC中的控制功能幾乎都是由一組硬件控制器完成的。隨著(zhù)ASIC功能的發(fā)展,控制也變得越來(lái)越復雜化,使用更靈活的固件意味著(zhù)設計者可以開(kāi)發(fā)一個(gè)微處理器來(lái)完成ASIC中的控制功能。今天,很少的公司會(huì )考慮自己開(kāi)發(fā)CPU。復雜的嵌入式CPU開(kāi)發(fā)時(shí)間長(cháng)達數年,而購買(mǎi)一個(gè)現成的解決方案可能是更好的選擇。
使用面向不同應用的產(chǎn)品、專(zhuān)門(mén)方法、設計便利、軟件資源、全面的開(kāi)發(fā)工具、大量第三方產(chǎn)品和IP,有著(zhù)不可抵擋的優(yōu)勢。ARM CPU發(fā)展的焦點(diǎn)在于維持和開(kāi)發(fā)ARM指令集體系結構(ISA)標準。這是ARM體系結構的藍圖,并且必須被小心控制,以保證ARM能夠繼續開(kāi)發(fā)高性能的內核,而不會(huì )破壞在A(yíng)RM周?chē)呀?jīng)建立起來(lái)的系統結構。為了達到這個(gè)平衡,ISA也在增加。這種體系結構的標準化和進(jìn)步為開(kāi)發(fā)人員、專(zhuān)業(yè)技術(shù)和工具流動(dòng)提供了一個(gè)堅實(shí)的基礎。
隨著(zhù)ARM ISA的發(fā)展,ARM內核也在發(fā)展?!皟群恕爆F在的定義通常包括緩沖存儲器和存儲器管理單元(MMU),以及其他一些“緊密集成”的模塊。一般情況下,這些模塊必須設計成能與CPU和 ISA一起工作,并且可變動(dòng)的范圍極其有限。在系統級上來(lái)看,片上總線(xiàn)結構——AMBA是另一個(gè)例子,從中可以看出一個(gè)成功的、標準化的解決方案是如何使設計和IP領(lǐng)域收益的。許多公司都在根據AMBA互連體系進(jìn)行設計,因為這符合他們的要求,并能使他們更容易從ARM和其他第三方處獲得與AMBA兼容的IP。像ARM體系結構和AMBA片上總線(xiàn)結構那樣的標準,可以使許多不同的公司共享一個(gè)硬件或軟件IP、專(zhuān)業(yè)技術(shù)和開(kāi)發(fā)方法?!?BR>經(jīng)過(guò)標準化的方案通常風(fēng)險較低——他們的市場(chǎng)動(dòng)力保證了其長(cháng)期而廣泛的可用性。從策略上看,為芯片復雜部分選擇現成的、經(jīng)過(guò)驗證的IP可以縮短產(chǎn)品上市時(shí)間、提高產(chǎn)品性能。如果嵌入式行業(yè)是互相孤立的或者建立在不兼容的內核和IP基礎上的話(huà),降低風(fēng)險、提高質(zhì)量和縮短產(chǎn)品上市時(shí)間將會(huì )變得非常困難。
隨著(zhù)SoC復雜化趨勢的加快,人們面臨的挑戰是,保證這個(gè)行業(yè)能夠繼續從分擔SoC設計的開(kāi)發(fā)費用中受益。其中最重要的是在內核和系統總線(xiàn)的基礎上繼續推動(dòng)標準化。
PrimeXsys回顧
ARM在2001年推出了首個(gè)PrimeXsys平臺:ARM926EJ-SPrimeXsys無(wú)線(xiàn)平臺(ARM926EJ-S PrimeXsys Wireless Platform ,即926 PWP)。這個(gè)平臺提供了一個(gè)可復用平臺解決方案,旨在支持PDA、2.5/3G手機、手持游戲機等高端用戶(hù)產(chǎn)品。其他基于操作系統的用戶(hù)產(chǎn)品,諸如音頻編解碼器或者視頻流式媒體,以及需要Java支持的應用,都能從PrimeXsys平臺中獲益。與內核一樣,926PWP含有其他模塊,如LCD控制器、向量斷點(diǎn)控制器、看門(mén)狗和計時(shí)器,幫助用戶(hù)的操作系統能夠在該裝置上正常啟動(dòng)。926PWP不僅提供可擴展硬件IP,還包括驗證方法、開(kāi)發(fā)工具、應用軟件。最重要的是,還可以選擇一個(gè)移植好的操作系統。926PWP也能提供許多ARM PrimeCell外設庫中的外設元件。使用PrimeCell或其他ARM IP時(shí),926 PWP可以發(fā)揮它的擴展功能,諸如連接、存儲、音頻、視頻及圖像中的主要應用。這些選項可以由自己的或第三方IP進(jìn)行補充組成完整系統,例如,無(wú)線(xiàn)基帶處理系統。
設計小組可以在926 PWP上建立起各自不同的ASIC,從一個(gè)能夠在平臺上啟動(dòng)的操作系統出發(fā),直接達到預期的設計目的。
開(kāi)發(fā)這些平臺,目的是要令開(kāi)發(fā)者將出發(fā)點(diǎn)從內核或IP庫的層次轉移到另一個(gè)更高的水平上,同時(shí),鼓勵個(gè)性鮮明的專(zhuān)用設計和努力縮短產(chǎn)品上市時(shí)間。
基于平臺的設計并不意味著(zhù)一個(gè)單一的體系結構可以面向所有的應用。為了得到一個(gè)最優(yōu)化的解決方案,工程師需要面向特定應用特殊考慮。這種設計抽象層次的提升,為我們展示了一個(gè)新的平臺設計出發(fā)點(diǎn)——在現有的“內核”的定義之上,但是又低于專(zhuān)用平臺的層次。
結語(yǔ)
現在的市場(chǎng)每天都需要新的技術(shù),在這種不斷增長(cháng)的壓力下,ARM PrimeXsys解決方案很好地適應了今天甚至明天芯片及設備生產(chǎn)商的軟硬件開(kāi)發(fā)需求?!?/span>
評論