基于SCA規(guī)范下FPGA的硬件抽象層設(shè)計
軟件無線電(Software Radio)是指用軟件定義的、能實現(xiàn)多種功能的無線電通訊系統(tǒng),其核心思想是構(gòu)造一個具有開放性、標(biāo)準(zhǔn)化、模塊化的通用硬件平臺,以將各種功能(如工作頻段、調(diào)制解調(diào)類型、數(shù)據(jù)格式、加密模式、通信協(xié)議等)用軟件來完成,從而通過加載不同的通信軟件來實現(xiàn)不同的通信模式和功能。由于功能的定義和實現(xiàn)都由軟件完成,所以可以通過配置不同的參數(shù)來支持不同電臺系統(tǒng)的互連互通,這使得軟件定義無線電具有很強的靈活性。
本文引用地址:http://www.j9360.com/article/191737.htm由于軟件無線電的諸多優(yōu)點,美軍的聯(lián)合戰(zhàn)術(shù)無線電系統(tǒng)(JTRS)計劃采用了軟件無線電的設(shè)計思想,并定義了軟件通信體系結(jié)構(gòu)(SCA)規(guī)范。目的是實現(xiàn)電臺硬件的模塊化,軟件的可移植、可重用和可互操作性。將SCA體系結(jié)構(gòu)逐漸擴展到2 GHz以上使用時,如果還在SCA的硬件體系結(jié)構(gòu)中僅僅使用通用處理器(GPP)和DSP等,將無法滿足高速數(shù)字信號處理發(fā)展的需求,因此,能更好適應(yīng)高速數(shù)字信號處理的可編程器件(FPGA)將不可避免的需要應(yīng)用到SCA的硬件平臺中。目前,FPGA并不支持CORBA中間件,故不能直接應(yīng)用到SCA體系結(jié)構(gòu)中。另外,由于FPGA芯片的外部輸入/輸出端口沒有像通用處理器和DSP芯片那樣從應(yīng)用程序中抽象出來,當(dāng)每次應(yīng)用程序代碼移植到新的平臺時,這些接口都要改變,這一點不利于實現(xiàn)波形應(yīng)用的可移植性。
SCA3.0規(guī)范中提出了硬件抽象層連接(HAL-C)的概念。硬件抽象層可對具體硬件的實現(xiàn)進行抽象,它介于硬件平臺和運行于硬件平臺上的軟件之間。負責(zé)完成軟件設(shè)計中與硬件相關(guān)的內(nèi)容,并完成相關(guān)的接口功能,它可使軟件的設(shè)計很好地獨立于硬件,從而有效地提高軟件設(shè)計的可移植性。使得在JTRS設(shè)備的開發(fā)過程中能實現(xiàn)應(yīng)用軟件的設(shè)計與通用硬件平臺的開發(fā)相分離,盡可能減小硬件平臺的具體結(jié)構(gòu)對應(yīng)用軟件設(shè)計的影響。
1硬件抽象層的基本概念及結(jié)構(gòu)
HAL-C通過對硬件單元的對外接口進行抽象,從而定義了一系列標(biāo)準(zhǔn)的通信應(yīng)用編程接口(API),以實現(xiàn)與外部的通信功能。這樣,當(dāng)要求與外部通信時,僅需要通過對定義好的不同的API進行調(diào)用即可,這將極大地減小硬件平臺結(jié)構(gòu)對軟件設(shè)計的影響,有效地降低對重要軟件組件接口進行重新編寫的可能性。
1.1基本概念
在硬件抽象層概念中,波形(Waveform)一般是指為了實現(xiàn)信息的無線傳輸而對信息所采取的一系列變換,一般包括無線通信雙方為實現(xiàn)傳輸而采取的所有協(xié)議;處理元件(Processing Element,PE)是指一個能夠執(zhí)行信號處理功能的硬件組件,通常GPP、DSP、FPGA、ASIC或者其它的能夠執(zhí)行信號處理功能的硬件設(shè)備都可以看作是一個處理元件;硬件抽象層組件(HAI-CComponent,HC)是完成一定處理功能的一個功能模塊,它屬于波形應(yīng)用的一個部分,通常HC是一個執(zhí)行于目標(biāo)設(shè)備上的、由波形開發(fā)人員編寫的軟件模塊,HC需要運行于一個給定的PE上,且同一個PE可以運行多個HC。
1.2硬件抽象層基本結(jié)構(gòu)
硬件抽象層連接時,可根據(jù)不同硬件模塊的特點對硬件模塊進行抽象,抽象后的硬件再對外接口。對于軟件模塊的設(shè)計者來說,只是提供收發(fā)數(shù)據(jù)的功能,那么,具體如何實現(xiàn)收發(fā)功能即不需要軟件設(shè)計者考慮。其典型的HAL-C模型如圖1所示。

評論