設(shè)有Bluetooth功能的SoC設(shè)計通常是由幾個高度復(fù)雜分系統(tǒng)組成的。每個分系統(tǒng)兼?zhèn)溆杏布M件和軟件組件兩個方面,總體設(shè)計環(huán)境中實現(xiàn)專用功能。理想地,這些分系統(tǒng)應(yīng)這樣設(shè)計,其硬件和軟件兩者邊界的定義是十分清晰的,讓各個獨(dú)立功能得到充分的驗證,便于集成到SoC設(shè)計中。這些分系統(tǒng)的商品化IP產(chǎn)品已在進(jìn)行中。
模塊化IP結(jié)構(gòu)充分考慮了硬件/軟件設(shè)計、軟件應(yīng)用設(shè)計、以及快速原型的需要,因而便于集成和系統(tǒng)的驗證。本文以現(xiàn)成的無線SoC設(shè)計(如GSM手機(jī))中增加一個復(fù)雜的無線功能,即Bluetooth功能,的實例來說明這一原理。Bluetooth實例充分體現(xiàn)確切地定義了硬件與軟件接口模塊化協(xié)議的優(yōu)勢,帶來了諸多靈活性,且可優(yōu)化每個組件的成本和功率。
SoC選擇
目前,市場上有兩類產(chǎn)品;單片IC器件和IP內(nèi)核,它們在即插即用上是等效的。SoC設(shè)計者也有兩種選擇,或連接一個外部IC;或為了降低總系統(tǒng)成本,采用IP內(nèi)核將Bluetooth功能歸入片內(nèi)。
Synopsys Designware Blue IQ 是一個可合成的Bluetooth內(nèi)核,通過標(biāo)準(zhǔn)4線UART(H4)接品連接至主CPU,例如ARM9嵌入式微處理器,管理上層Bluetooth協(xié)議載,另一方面,Bluetooth IP內(nèi)核通過通用 14引腳“BluetoothRF”接口連接至RF器件,例如Silicon Wave。
Bluetooth功能在Bluetooth IP內(nèi)核是完全自給自足的,它的內(nèi)部基帶處理器可以主CPU處下載全部實時Bluetooth 工作程序。對SoC軟件組,這類體系結(jié)構(gòu)確保Bluetooth 不會干擾與手機(jī)其余部分相關(guān)聯(lián)的任何定時關(guān)鍵的軟件,從而簡化了Bluetooth 功能的集成。
手持式手機(jī)設(shè)計
圖1是2.5G手機(jī)(GSH/GRPS/EDGE)的方框圖。一條AMBA總線構(gòu)成了SoC的骨架,它由高速AHB(高級硬件總線)段和低速APB(高級外設(shè)總線)段組成。連接在AMBA結(jié)構(gòu)上有蜂窩分系統(tǒng)以及 RTOS用和控制手機(jī)上各種按鍵和顯示屏用低速外設(shè)。一個GPS單元也連接在APB上,為手機(jī)提供符合新E911/E112要求的位置信息。Bluetooth分系統(tǒng)則是將Bluetooth IP內(nèi)核連接在APB UART 外設(shè)添加到SoC設(shè)計的,并由主CPU的Bluetooth 協(xié)議棧軟件進(jìn)行控制。
從硬件集成觀點(diǎn),附加Bluetooth分系統(tǒng)就象手機(jī)設(shè)計增加一個UART一樣簡單。從軟件集成**,同樣十分簡單。Bluetooth規(guī)范清晰地定義了協(xié)議棧上級與下級之間的邊界。定時關(guān)鍵軟件例程放置在棧的下層,靠近硬件并遠(yuǎn)離應(yīng)用層。上層和下層通過確切定義的API連接的,HCI(主控制器接口)不僅定義了棧上層和下層之間的協(xié)議,而且也定義了諸如UART、RS-323和USB各種標(biāo)準(zhǔn)物理傳輸協(xié)議。這種模塊化硬件與軟件方案給SoC設(shè)計組帶來了顯著的即插即用好處。