采用0.13微米工藝實(shí)現低成本多處理器平臺
Zevio 項目架構師 Shinya Fujimoto 稱(chēng),他的 LSI 設計團隊必須在幾項約束下工作:建立一個(gè)通常模塊化的多處理器平臺,這樣 LSI 工程師可以通過(guò)塊的交換,快速創(chuàng )建出派生產(chǎn)品;采用成熟的 0.13 微米低功耗工藝技術(shù)實(shí)現 SoC,使成本保持在合理的低位,并且仍能達到性能與功耗目標;最后,在九個(gè)月內完成初始SoC平臺。
Fujimoto 說(shuō):“我們的背景是從事消費類(lèi)ASIC。我們做過(guò) PlayStation 和 PlayStation2 中的芯片,以及某些 iPod 設計,并且,在這些產(chǎn)品開(kāi)發(fā)期間,我們注意到自己在重復調整芯片中非關(guān)鍵部分時(shí)花費了大量時(shí)間。這就是我們決定開(kāi)發(fā)這一架構的原因?!?BR>
Fujimoto 稱(chēng),定義 Zevio 架構的第一步是要符合 VTech 和 Koto 的系統架構。他說(shuō):“我們試圖從客戶(hù)那里獲得盡量多的反饋乃至抱怨,以確定設計過(guò)程中的潛在瓶頸?!?BR>
Fujimoto 稱(chēng),Zevio 不是一個(gè)典型的應用處理器(圖 2)。他表示:“我把它叫做一個(gè)異種多處理器。它有多個(gè)處理器,它們各不相同,但并行運行,每個(gè)處理器都專(zhuān)門(mén)完成一些自己擅長(cháng)的任務(wù)?!?BR>
采用成熟的低功耗 0.13 微米工藝(從一家未披露名稱(chēng)的臺灣伙伴處獲得)做設計實(shí)現,而不是采用 90 納米或 65 納米工藝,這有助于保持芯片的低成本,穩定電源管理,并且避免使用 DFM(可制造性設計)工具,所有這些都加快了設計進(jìn)程。Fujimoto 稱(chēng),該芯片面向成本低于 100 美元的系統應用?!叭魏稳硕伎梢栽斐鲆豢罹薮蟮男酒?,但有些人正在努力掙扎,尤其是那些無(wú)名的視頻游戲供應商,因為增加的芯片成本都要進(jìn)入消費產(chǎn)品費用中?!?BR>
Fujimoto 指出,很多公司過(guò)快地跳到了最新最好的工藝,而他們本可以用更成熟和更穩定的工藝完成更多任務(wù),例如用 0.13 微米工藝?!坝行┤瞬豢紤] 0.13 微米,認為它比較低端,但我們感覺(jué)可以通過(guò)智能工程化建立一個(gè)高端設計??蛻?hù)會(huì )從競爭者那里聽(tīng)到很多有關(guān)高性能的故事,這個(gè)那個(gè),全是一些浮夸的詞藻。但到最后,還是要歸結到花了錢(qián)就要獲得最好結果?!彼麍猿终J為,0.13 微米工藝的成熟、成本、性能構成了最佳選擇。
LSI 希望 Zevio 成為一個(gè)可重用平臺,而不只是一片 ASIC,于是一個(gè)關(guān)鍵的要素是建立一個(gè)獨特的內核,可以將它與一系列 LSI 甚至第三處方供應商的內核結合起來(lái)。但是,架構規范的一個(gè)主要部分是新式圖形處理器內核設計。LSI 與 IP 供應商 Koto 合作開(kāi)發(fā) Zevio 的 3D 圖形處理內核。Fujimoto注意到,以前曾有多個(gè) Koto 工程師在任天堂 GameBoy 設計團隊中工作。Fujimoto 說(shuō) LSI 在這個(gè)領(lǐng)域中幾乎沒(méi)什么閱歷,因此歡迎 Koto 的經(jīng)驗?!八麄?yōu)檐浖_(kāi)發(fā)人員需要的特性提供了大量經(jīng)驗,幫助我們將很多這類(lèi)技術(shù)訣竅轉化為硬件?!?BR>
Koto 的團隊完成了大部分規范工作,并對內核做了驗證,而 LSI 設計者則負責內核的設計和 RTL 實(shí)現。16位的3D圖形內核只需要 30萬(wàn)個(gè)門(mén),在 75 MHz 運行時(shí)功耗為20mW,每秒可以畫(huà) 150 萬(wàn)個(gè)多邊形。
Fujimoto 指出,其它潛在的瓶頸是內存控制器及其與系統內存的接口。據芯片設計者講,雖然他們很容易做出一個(gè)32位總線(xiàn)接口,使之快速運行并得到所需性能,但 LSI 必須考慮如何從一個(gè)16位接口內存獲得相同的性能,以實(shí)現好的成本效益。
設計團隊必須從頭設計一個(gè)高效的控制器內核,它將采用一個(gè)16位 接口,并且考慮了效率仲裁(圖3)。Fujimoto 稱(chēng):“當查看一個(gè)16位接口時(shí),我們關(guān)心的是獲得一個(gè)很好的時(shí)序窗口,以便向SDRAM 發(fā)送很多指令?!盕ujimoto指出,控制器可以在每個(gè)總線(xiàn)時(shí)鐘周期取得兩個(gè)字?!拔覀兩暾埩嗽摷夹g(shù)的專(zhuān)利。它使我們能夠有效地用這些時(shí)序槽打開(kāi)多個(gè)內存庫?!盕ujimoto認為這一進(jìn)展是架構中的關(guān)鍵創(chuàng )新。
Fujimoto 稱(chēng),接下來(lái),團隊要查看有關(guān)的總線(xiàn)協(xié)議瓶頸。他們決定 采用流行的 ARM AMBA(先進(jìn)微控制器總線(xiàn)架構)AHD(AMBA 高速總線(xiàn))協(xié)議,但必須尋找克服AHB中部分低效的方法。他說(shuō):“我們必須看到,它無(wú)法突發(fā)式寫(xiě)入隨機地址,并且不能規定足夠多的突發(fā)寫(xiě)入?!睘榱私鉀Q這些問(wèn)題,團隊自己編寫(xiě)了 AHB 擴展,使內存控制器的效率翻了一倍。
在解決了規范階段的多數問(wèn)題以后,設計團隊(其時(shí)有10個(gè)~15個(gè)設計與驗證工程師)開(kāi)始作RTL設計。Fujimoto將他的團隊劃分為多個(gè)小組。他說(shuō):“一個(gè)小組專(zhuān)注于內存控制器,一個(gè)管圖形內核,另一個(gè)做音頻內核,其它小組負責整體集成?!?BR>
Fujimoto稱(chēng)LSI的傳統方法是讓每個(gè)小組作設計,然后驗證各個(gè)單獨的塊,最后用仿真器將這些塊與系統中的其它核作驗證。但他的團隊這回首次采用了一種FPGA原型化系統,對圖形核、內存控制器和一個(gè) LSI 開(kāi)發(fā)的音頻處理器作驗證和軟、硬件的確認。
Fujimoto說(shuō):“在一個(gè)仿真環(huán)境中驗證這個(gè)設計可能會(huì )有太多的極限情況。這是我們第一次采用FPGA原型化系統?;叵肫饋?lái),我們應該在設計早期對各個(gè)內核多做一些驗證?!盕ujimoto回憶說(shuō),一旦FPGA系統工作起來(lái),事情就會(huì )進(jìn)展得很快:“當我們遇到問(wèn)題時(shí),我們可以在連接到 FPGA 原型板的 LCD 屏幕上看到它。我們可以簡(jiǎn)單地停下調試器,查看錯誤發(fā)生處的內部寄存器?!?BR>
小組還找到了一些后來(lái)證明是 FPGA 編程軟件中的錯誤(而不是設計的)。Fujimoto 說(shuō):“我們并不知道正在對付的錯誤是否是工具供應商造成的。FPGA 供應商提供的 FIFO 控制器也有問(wèn)題?!?BR>
Fujimoto 指出,圖形小組在規范階段創(chuàng )建了一個(gè)圖形核的 C 模型。Fujimoto 說(shuō):“我們本可以用這個(gè) C 模型作驗證,但要做太多工作才能更新 C 模型和 RTL?!彼赋?,如果你采用一種固定的規范,則可以用 C 模型方法,此時(shí)可以用 C 模型輸出來(lái)驗證 RTL 的輸出。但在 LSI 的案例中,當開(kāi)始 RTL 時(shí)規格并未全部完成。他說(shuō):“一旦我們的 FPGA 系統開(kāi)始運行了,我們就拋棄了 C 模型?!碑斣O計在 FPGA 原型化系統上穩定下來(lái)時(shí),小組還開(kāi)始了驅動(dòng)程序的初步開(kāi)發(fā)。
原型電路板成為了驗證電路板的基礎,LSI 現在向希望用 Zevio SoC 開(kāi)發(fā)其它系統的客戶(hù)提供這塊驗證板。當小組的 RTL工作穩定下來(lái)后,便運行一個(gè)試驗綜合和一個(gè)試驗布局,在初步布局的一部分中填充“空門(mén)”,以獲得有關(guān)區域與核尺寸的一個(gè)粗略思路。Fujimoto 稱(chēng)他的團隊由Synopsys 作綜合,而由Magma 作布局和布線(xiàn)。
Fujimoto 稱(chēng),實(shí)驗布局對確定內存塊的正確布放尤其重要。設計中帶有 240 kB SDRAM。因此,Zevio 布局小組必須與 RTL 小組一起工作,將各個(gè)塊分解,以保證多個(gè)核能夠高效地訪(fǎng)問(wèn)內存,而不致占用太多的布局空間。他說(shuō):“我們有這么大的內存,但我們同時(shí)允許圖形引擎和 DSP 訪(fǎng)問(wèn)相同的內存。在功能寄存器中,我們指定了哪個(gè)核有權訪(fǎng)問(wèn)內存,哪個(gè)將訪(fǎng)問(wèn),這樣我們就必須為 DSP 和圖形引擎預先定義某些段?!睘閷?shí)現這個(gè)目標,布局與 RTL 小組通過(guò)多次重復,確定了內存的最佳布局。最后,整個(gè) Zevio SoC 包含200萬(wàn)個(gè)門(mén)。
為保持設計低功耗,小組采用了一個(gè)多電壓閾值的 0.13 微米庫。Fujimoto說(shuō):“我們的想法是,將整體設計用所有低泄漏、低性能門(mén)作綜合,然后確定時(shí)序中的瓶頸和關(guān)鍵路徑,并將這些路徑轉換為高速門(mén)?!蓖ㄟ^(guò)這個(gè)過(guò)程,團隊就能夠實(shí)現低泄漏與高性能晶體管的正確混合。
Fujimoto 稱(chēng)物理驗證和設計出帶都相當順利?!霸凸杵貋?lái)了,三天以后,我們所有的演示都在實(shí)際系統上運行起來(lái)??蛻?hù)能夠提前一周回家。采用成熟的技術(shù),以及在過(guò)程的早期作驗證和預備工作,所有這些都得到了真實(shí)的回報?!?
電路板開(kāi)發(fā)的快速“結束”也意味著(zhù) VTech 的軟件小組可以快速地進(jìn)入產(chǎn)品開(kāi)發(fā)階段,最終使 VTech 在 2006 年圣誕期間及時(shí)將系統推向市場(chǎng)。
但是,VFlash 并非 Zevio 系列產(chǎn)品的唯一應用。事實(shí)上,Fujimoto 稱(chēng)由于設計團隊創(chuàng )建的 SoC 模塊化,LSI 可以為其它客戶(hù)的應用作修改。Fujimoto 說(shuō):“我們平臺的設計目標是,只需六個(gè)月就能創(chuàng )建出派生的平臺?!?BR>
他指出,模塊化平臺使用戶(hù)能夠相當容易地將 ARM 核換成 MIPS 核,因為 LSI 同時(shí)擁有兩者的許可。用戶(hù)還可以換用一些外設核。LSI 正在為系統增加 USB 支持。Fujimoto 稱(chēng),下一代 Zevio 平臺也將很快用 DDR 代替 SDRAM。雖然 Koto 為平臺創(chuàng )建了最初的操作系統,但 LSI 正在擴展該平臺支持的操作系統數量,現在可以工作在 Linux OS 和 Windows CE 上。
Fujimoto稱(chēng),他的團隊已在 Zevio 上為一個(gè)匿名客戶(hù)完成了另一個(gè)項目。他說(shuō),硅片已經(jīng)生產(chǎn),但該客戶(hù)還沒(méi)有推出產(chǎn)品。
LSI 在 2004 年 12 月開(kāi)始 Zevio 規范的制定過(guò)程,在 2005 年底啟動(dòng)設計,在 9 個(gè)月后的 2006 年 9 月進(jìn)入生產(chǎn)。
Zevio 項目是消費市場(chǎng)中成功的又一個(gè)案例,說(shuō)明成功并非總是意味著(zhù)采用最新最好的工藝技術(shù)實(shí)現最快的 SoC。LSI 的團隊在架構階段作了大量規劃,并在整個(gè)過(guò)程中做了一些創(chuàng )新的工程實(shí)踐,建立了一個(gè)比較強大而有性?xún)r(jià)比的平臺,幫助 VTech 抓住了市場(chǎng)窗口,LSI 也獲得了一個(gè)幫助其它客戶(hù)實(shí)現商機的通用工具。我們頗有興趣的是 LSI 會(huì )在多長(cháng)時(shí)間內將 Zevio 繼續作為可行平臺,以及能為其它客戶(hù)創(chuàng )造出多少派生產(chǎn)品。
評論