新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于SCA的軟件無線電在FPGA上設(shè)計(jì)與實(shí)現(xiàn)

基于SCA的軟件無線電在FPGA上設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2011-12-22 來源:網(wǎng)絡(luò) 收藏

而且,在以MHAL方式實(shí)現(xiàn)的/SDR系統(tǒng)中,開發(fā)者需要在GPP上設(shè)計(jì)實(shí)現(xiàn)適配器來完成GIOP報(bào)文和MHAL報(bào)文的轉(zhuǎn)換,以便使用CORBA
機(jī)制的波形組件和使用MHAL機(jī)制的波形組件間的通信。但對于適配器的實(shí)現(xiàn),目前還沒有統(tǒng)一的標(biāo)準(zhǔn),而且,MHAL也不是一個(gè)針對通用市場的可用標(biāo)準(zhǔn),它受到ITARS(International Traffic in Arins Regulations)限制,其實(shí)現(xiàn)細(xì)節(jié)并不公開,且MHAL報(bào)文結(jié)構(gòu)的細(xì)節(jié)并不足以完成波形組件的實(shí)際需要,從而必然會(huì)導(dǎo)致不同的MHAL實(shí)現(xiàn)方式,且彼此間相互不兼容,這也必然會(huì)破壞MHAL波形組件的可移植性和可重用性。
2.2 使用CORBA方式實(shí)現(xiàn)的/SDR系統(tǒng)
由于GPP上的波形組件是使用CORBA實(shí)現(xiàn)的,所以只要將CORBA擴(kuò)展到DSP和上,就能夠很容易地實(shí)現(xiàn)布署在各種類型處理器上的波形組件間的通信。圖2是以CORBA方式實(shí)現(xiàn)的分布式/SDR系統(tǒng)布局結(jié)構(gòu)示意圖。在以CORBA方式實(shí)現(xiàn)的SCA/SDR系統(tǒng)中,GPP保持原有狀態(tài)即可,而DSP和上的ORB負(fù)責(zé)完成CORBA報(bào)文的處理。這使系統(tǒng)中所有波形組件使用CORBA中間件進(jìn)行通信,而不需要在GPP上實(shí)現(xiàn)代理,不僅減輕了GPP的運(yùn)行負(fù)擔(dān)以及內(nèi)存資源占用,而且系統(tǒng)中波形組件間的通信不再需要通過代理的轉(zhuǎn)換,從而也就降低了通信時(shí)延,提高了通信效率。

本文引用地址:http://m.butianyuan.cn/article/190887.htm

b.jpg


同時(shí),CORBA為不同類型的處理器提供統(tǒng)一的通信架構(gòu),使任何組件都能夠以簡單的函數(shù)調(diào)用方式獲得分布于系統(tǒng)中的其他組件的服務(wù)。軟件客戶端和硬件服務(wù)程序之間由此變得連接無縫、快速并且使用較少的系統(tǒng)資源。與MHAL實(shí)現(xiàn)方式相比,該架構(gòu)提供了波形組件的移動(dòng)性和位置透明性,使得在同一處理器與在遠(yuǎn)程處理器中調(diào)用對象相比沒有什么差別,使設(shè)計(jì)人員可以很容易地將波形組件從一個(gè)處理器中轉(zhuǎn)移到另一個(gè)處理器中。這意味著,設(shè)計(jì)人員一開始可以在他們的工作站上構(gòu)建SDR,然后很容易地將部件一塊塊轉(zhuǎn)移到GPP、DSP和上,來優(yōu)化系統(tǒng)總性能。
雖然使用CORBA方式實(shí)現(xiàn)的SCA/SDR既保持SCA的兼容性,又減小了傳輸負(fù)載,而且,開發(fā)者也無需開發(fā)通用GPP上的定制代理。但由于FPGA的設(shè)計(jì)實(shí)現(xiàn)方式與GPP完全不同,其編程主要集中于底層硬件,往往同特定的可編程資源緊密聯(lián)系在一起,而且FPGA不能提供等效的操作系統(tǒng)中虛擬地址等機(jī)制,從而使FPGA上CORBA功能的實(shí)現(xiàn)比較困難。目前為止,在FPGA上實(shí)現(xiàn)ORB的主要的方案有以下兩種:
(1)Prismtech公司開發(fā)了一款集成電路ORB(ICO)產(chǎn)品,該產(chǎn)品提供了一個(gè)使用VHDL語言編寫的ORB模塊,能夠運(yùn)行于Xilinx,Altera等公司的多款FPGA上。整個(gè)產(chǎn)品包括ORB引擎、IDL-to-VHDL代碼產(chǎn)生器和SCA應(yīng)用組件等幾個(gè)部分。ORB引擎負(fù)責(zé)GIOP報(bào)文的解析和封裝,對于到達(dá)的GIOP請求報(bào)文,ORB引擎對報(bào)文中的對象鍵值、操作名稱、參數(shù)等信息進(jìn)行解析,然后將數(shù)據(jù)傳遞給特定的FPGA邏輯模塊進(jìn)行處理;如果處理結(jié)果需要向外部發(fā)送,則ORB引擎根據(jù)預(yù)先獲得的一些信息,將結(jié)果封裝為GIOP請求報(bào)文或應(yīng)答報(bào)文,并通過網(wǎng)絡(luò)進(jìn)行傳輸。
盡管ICO實(shí)現(xiàn)了FPGA程序與分布式系統(tǒng)的直接ORB通信,但由于其ORB引擎的實(shí)現(xiàn)代碼是由IDL-to-VHDL代碼生成器根據(jù)特定的應(yīng)用生成的,這就使其ORB引擎的實(shí)現(xiàn)邏輯與特定的FPGA應(yīng)用程序密切相關(guān),從而也就導(dǎo)致了ORB的引擎不具備通用性。一旦FPGA的應(yīng)用程序做了修改,原有的ORB引擎往往無法對新應(yīng)用程序的GIOP報(bào)文進(jìn)行正確的解析和封裝,此時(shí)必須再次使用IDL-to-VHDL代碼生成器重新生成新的邏輯。目前有很多FPGA在硬件上已經(jīng)具備了部分重配置功能,而且有一部分分布式應(yīng)用,也需要實(shí)現(xiàn)FPGA的動(dòng)態(tài)部分重配置,這就需要在動(dòng)態(tài)改變FPGA部分邏輯功能的同時(shí),依然保持ORB引擎和其他FPGA模塊的正常工作,但I(xiàn)CO與FPGA應(yīng)用程序的緊密相關(guān)性使這一功能無法實(shí)現(xiàn)。



關(guān)鍵詞: FPGA SCA 軟件無線電

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉