手機(jī)設(shè)計(jì)集成的關(guān)鍵——IP模塊的簡介
掃描二維碼
隨時(shí)隨地手機(jī)看文章
設(shè)有Bluetooth功能的SoC設(shè)計(jì)通常是由幾個(gè)高度復(fù)雜分系統(tǒng)組成的。每個(gè)分系統(tǒng)兼?zhèn)溆杏布M件和軟件組件兩個(gè)方面,總體設(shè)計(jì)環(huán)境中實(shí)現(xiàn)專用功能。理想地,這些分系統(tǒng)應(yīng)這樣設(shè)計(jì),其硬件和軟件兩者邊界的定義是十分清晰的,讓各個(gè)獨(dú)立功能得到充分的驗(yàn)證,便于集成到SoC設(shè)計(jì)中。這些分系統(tǒng)的商品化IP產(chǎn)品已在進(jìn)行中。
模塊化IP結(jié)構(gòu)充分考慮了硬件/軟件設(shè)計(jì)、軟件應(yīng)用設(shè)計(jì)、以及快速原型的需要,因而便于集成和系統(tǒng)的驗(yàn)證。本文以現(xiàn)成的無線SoC設(shè)計(jì)(如GSM手機(jī))中增加一個(gè)復(fù)雜的無線功能,即Bluetooth功能的實(shí)例來說明這一原理。Bluetooth實(shí)例充分體現(xiàn)確切地定義了硬件與軟件接口模塊化協(xié)議的優(yōu)勢,帶來了諸多靈活性,且可優(yōu)化每個(gè)組件的成本和功率。
SoC選擇
目前,市場上有兩類產(chǎn)品;單片IC器件和IP內(nèi)核,它們在即插即用上是等效的。SoC設(shè)計(jì)者也有兩種選擇,或連接一個(gè)外部IC;或?yàn)榱私档涂傁到y(tǒng)成本,采用IP內(nèi)核將Bluetooth功能歸入片內(nèi)。
Synopsys Designware Blue IQ 是一個(gè)可合成的Bluetooth內(nèi)核,通過標(biāo)準(zhǔn)4線UART(H4)接口連接至主CPU,例如ARM9嵌入式微處理器,管理上層Bluetooth協(xié)議載,另一方面,Bluetooth IP內(nèi)核通過通用 14引腳“Bluetooth RF”接口連接至RF器件,例如Silicon Wave。
Bluetooth功能在Bluetooth IP內(nèi)核是完全自給自足的,它的內(nèi)部基帶處理器可以主CPU處下載全部實(shí)時(shí)Bluetooth 工作程序。對SoC軟件組,這類體系結(jié)構(gòu)確保Bluetooth 不會(huì)干擾與手機(jī)其余部分相關(guān)聯(lián)的任何定時(shí)關(guān)鍵的軟件,從而簡化了Bluetooth 功能的集成。
手機(jī)設(shè)計(jì)
圖1是2.5G手機(jī)(GSH/GRPS/EDGE)的方框圖。一條AMBA總線構(gòu)成了SoC的骨架,它由高速AHB(高級硬件總線)段和低速APB(高級外設(shè)總線)段組成。連接在AMBA結(jié)構(gòu)上有蜂窩分系統(tǒng)以及 RTOS用和控制手機(jī)上各種按鍵和顯示屏用低速外設(shè)。一個(gè)GPS單元也連接在APB上,為手機(jī)提供符合新E911/E112要求的位置信息。Bluetooth分系統(tǒng)則是將Bluetooth IP內(nèi)核連接在APB UART 外設(shè)添加到SoC設(shè)計(jì)的,并由主CPU的Bluetooth 協(xié)議棧軟件進(jìn)行控制。
從硬件集成觀點(diǎn),附加Bluetooth分系統(tǒng)就象手機(jī)設(shè)計(jì)增加一個(gè)UART一樣簡單。從軟件集成透視,同樣十分簡單。Bluetooth規(guī)范清晰地定義了協(xié)議棧上級與下級之間的邊界。定時(shí)關(guān)鍵軟件程序放置在棧的下層,靠近硬件并遠(yuǎn)離應(yīng)用層。上層和下層通過確切定義的API連接的,HCI(主控制器接口)不僅定義了棧上層和下層之間的協(xié)議,而且也定義了諸如 UART、RS-323和USB各種標(biāo)準(zhǔn)物理傳輸協(xié)議。這種模塊化硬件與軟件方案給SoC設(shè)計(jì)組帶來了顯著的即插即用好處。
組建設(shè)計(jì)組
圖2表示典型的 SoC設(shè)計(jì)組,它由下屬三個(gè)小組組成,分別承擔(dān)不同的工作。 ASIC組負(fù)責(zé)硬件的實(shí)施,在UNIX工作平臺(tái)上使用各類工具來生成制作SoC 的最終GDSII文件。軟件組負(fù)責(zé)在SoC上運(yùn)行的軟件的實(shí)施。設(shè)計(jì)樣機(jī)組使用FPGA樣機(jī)平臺(tái)(如ARM集成開發(fā)系統(tǒng))將硬件和軟件整合在一起,以便在最終GDSII向代工廠發(fā)布前驗(yàn)證SoC的功能。
ASIC組向設(shè)計(jì)樣機(jī)組提供手機(jī)設(shè)計(jì)的FPGA文件,在此實(shí)例,包括要增加的Bluetooth分系統(tǒng)文件。ASIE組將Bluetooth IP內(nèi)核配置在手機(jī)設(shè)計(jì)用系統(tǒng)結(jié)構(gòu)(例如語音通道的數(shù)量和支持的服務(wù))中,并生成可以下載到Bluetooth開發(fā)工具(如:DesignWare BlueIQ Development Kit)的FPGA文件。
在軟件開發(fā)早期階段,ASIC組將Bluetooth RTL代碼集成在ASIC設(shè)計(jì)中,進(jìn)行合成和模擬,確保它能正確地連接。
套裝工具確保設(shè)計(jì)成功
在開發(fā)階段的早期,軟件組的絕大部分工作是在PC上完成的。如圖2所示,軟件組的工程師們將Bluetooth開發(fā)套裝工具連接至PC的串口,在臺(tái)式機(jī)上精確地執(zhí)行可設(shè)置在最終SoC上的 Bluetooth分系統(tǒng)。該分系統(tǒng)需用到Bluetooth協(xié)議棧的上層,以及創(chuàng)建啟用手機(jī)Bluetooth功能應(yīng)用軟件所必需的應(yīng)用配置文件。
Mezoe InteRFace Express工具套件是一套實(shí)施Bluetooth配置文件的軟件,這一PC基工具可用來生成工作框架應(yīng)用軟件,任意地組合各類Bluetooth配置文件。得到的軟件奠定了最終嵌入式SoC應(yīng)用的基礎(chǔ),讓軟件工程師在PC上充分地設(shè)計(jì)嵌入式Bluetooth應(yīng)用的樣機(jī),相對SoC 設(shè)計(jì)是獨(dú)立地進(jìn)行的,當(dāng)設(shè)計(jì)完成并糾錯(cuò)后,它能重新定位到主CPU并下載到FPGA樣機(jī)平臺(tái)。
硬件手機(jī)
在 ASIC組和軟件組在各自的環(huán)境中開發(fā)后,最終的硬件和軟件映象由樣機(jī)組傳送至FPGA樣機(jī)平臺(tái),在此平臺(tái)上整合SoC總體設(shè)計(jì)。有了完全包含在樣機(jī)平臺(tái)硬件的完整手機(jī),在設(shè)計(jì)用磁帶輸出公布前,樣機(jī)組使用各種傳統(tǒng)的硬件與軟件糾錯(cuò)工具來完善并驗(yàn)證SoC。
設(shè)計(jì)潮流向著IP形式的高度模塊化和高度自給自足分系統(tǒng)發(fā)展,這種Bluetooth IP和軟件模塊體系結(jié)構(gòu)正處于潮流的前沿。隨著SoC設(shè)計(jì)規(guī)模的日益擴(kuò)大并開始匯集性能各異又高度復(fù)雜的功能,IP公司要對集成進(jìn)行全方位的預(yù)測。他們在規(guī)劃產(chǎn)品的體系結(jié)構(gòu)和封裝時(shí),要考慮用戶易于集成,減少風(fēng)險(xiǎn)的要求,只有IP提供商充分了解ASIC設(shè)計(jì)組的要求,同時(shí)也了解軟件開發(fā)者的要求以及設(shè)計(jì)硬件和軟件兩者樣機(jī)的要求,IP用戶才能真正領(lǐng)略采用商品化Bluetooth IP產(chǎn)品的好處。