• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      ATCA平臺(tái)中FPGA組件化開(kāi)發(fā)環(huán)境研究

      2018-04-13 06:36董勝岳春生劉擁軍
      現(xiàn)代電子技術(shù) 2018年8期
      關(guān)鍵詞:軟件無(wú)線電

      董勝 岳春生 劉擁軍

      摘 要: 基于軟件通信體系架構(gòu)無(wú)法實(shí)現(xiàn)對(duì)FPGA等專(zhuān)用處理器的兼容,依據(jù)CP289協(xié)議的容器和組件模型思想以及MHAL接口規(guī)范,針對(duì)高速率、多接口、較大規(guī)模的ATCA硬件平臺(tái)和高速、實(shí)時(shí)信號(hào)處理的需求,通過(guò)分層抽象的方法,設(shè)計(jì)一個(gè)標(biāo)準(zhǔn)化的FPGA組件開(kāi)發(fā)環(huán)境。并設(shè)計(jì)FFT組件驗(yàn)證該開(kāi)發(fā)環(huán)境的可行性和合理性,實(shí)現(xiàn)了在ATCA平臺(tái)上FPGA專(zhuān)用處理器與SCA體系架構(gòu)的融合以及波形組件的可移植。

      關(guān)鍵詞: 軟件通信體系架構(gòu); 軟件無(wú)線電; FPGA組件; CP289協(xié)議; MHAL接口規(guī)范; ATCA平臺(tái)

      中圖分類(lèi)號(hào): TN911.2?34; TN014 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2018)08?0030?04

      Abstract: Software communication architecture (SCA) cannot realize compatibility with special processors like FPGA. According to the container and component model of CP289 protocol and MHAL interface specification, and in allusion to the high speed, multi?interface and relatively large scale ATCA hardware platform and the requirement of real?time signal processing, a standard FPGA component development environment is designed by using the hierarchical abstraction method. The FFT component is designed to verify the feasibility and rationality of the development environment. The integration of special FPGA processor with SCA and portability of waveform component are realized on the ATCA platform.

      Keywords: SCA; SDR; FPGA component; CP289 protocol; MHAL interface specification; ATCA platform

      0 引 言

      軟件通信體系架構(gòu)(Software Communication Architecture,SCA)為軟件無(wú)線電(Software Defined Radio,SDR)定義了最基本要求的實(shí)現(xiàn)框架,構(gòu)建了一個(gè)開(kāi)放式、標(biāo)準(zhǔn)化和通用性強(qiáng)的軟件體系架構(gòu)[1]。目前基于SCA的SDR系統(tǒng)獲得通用處理器(General Purpose Processor,GPP)的良好支持。針對(duì)在FPGA處理器上難以集成SCA架構(gòu)的問(wèn)題,2004年SCA3.0提出硬件抽象層互聯(lián)(HAL?C)的概念[2]。硬件抽象層通過(guò)對(duì)具體硬件的抽象,實(shí)現(xiàn)了在軟件無(wú)線電設(shè)備開(kāi)發(fā)過(guò)程中軟件的設(shè)計(jì)和通用硬件平臺(tái)相分離。為了更好地實(shí)現(xiàn)專(zhuān)用硬件組件的復(fù)用和移植,在隨后的SCA3.1中提出了組件可移植規(guī)范(CPS),并在此基礎(chǔ)上經(jīng)過(guò)廣泛的討論和征求意見(jiàn),形成了專(zhuān)用處理器組件可移植補(bǔ)充建議(SHP),即CP289[3]。文獻(xiàn)[4]提出MHAL接口標(biāo)準(zhǔn),通過(guò)在核心框架與FPGA之間加入代理,明確規(guī)范了代理與FPGA之間的數(shù)據(jù)格式來(lái)實(shí)現(xiàn)FPGA在SCA中的應(yīng)用。與此同時(shí),國(guó)內(nèi)外的一些研究團(tuán)隊(duì)提出基于FPGA設(shè)計(jì)ORB引擎的方法,通過(guò)實(shí)現(xiàn)CORBA報(bào)文的解析和封裝,使FPGA直接支持CORBA通信從而實(shí)現(xiàn)與SCA架構(gòu)的融合[5?8]。

      基于HAL?C和MHAL接口標(biāo)準(zhǔn),實(shí)現(xiàn)了波形外部接口的抽象,減小了硬件平臺(tái)結(jié)構(gòu)對(duì)軟件設(shè)計(jì)的影響,但所提供的接口較少、功能有限,且很多技術(shù)細(xì)節(jié)不對(duì)外開(kāi)放。CP289中提出標(biāo)準(zhǔn)化波形組件的運(yùn)行環(huán)境,保證了波形的可移植,然而怎樣設(shè)計(jì)容器架構(gòu)并提供一個(gè)標(biāo)準(zhǔn)的實(shí)時(shí)的運(yùn)行環(huán)境仍然是一個(gè)問(wèn)題,CP289中也未做出解答?;贔PGA設(shè)計(jì)ORB引擎能夠?qū)崿F(xiàn)FPGA無(wú)縫地融入到SCA系統(tǒng)中,但ORB引擎設(shè)計(jì)比較復(fù)雜,在運(yùn)行過(guò)程中會(huì)有大量的計(jì)算資源和存儲(chǔ)資源被占用,造成資源的浪費(fèi)。本文針對(duì)ATCA平臺(tái)板卡多處理器及高速背板交換技術(shù)的特點(diǎn),采用基于CP289協(xié)議的容器和組件模型思想以及MHAL接口規(guī)范,利用分層抽象的方法構(gòu)建一個(gè)標(biāo)準(zhǔn)化的FPGA組件運(yùn)行環(huán)境,實(shí)現(xiàn)FPGA專(zhuān)用處理器與SCA體系架構(gòu)的融合以及波形組件的可移植。

      1 容 器

      在CP289協(xié)議中,容器為FPGA波形組件提供了標(biāo)準(zhǔn)化的運(yùn)行環(huán)境,使得波形組件與運(yùn)行的環(huán)境相分離,并為SCA核心框架提供對(duì)組件的管理、控制和配置等操作。本設(shè)計(jì)中的容器主要結(jié)構(gòu)如圖1所示。針對(duì)ATCA平臺(tái)高速背板傳輸接口(如Rapid I/O,XAUI,PCIE等)和ATCA平臺(tái)多層管理的特點(diǎn),設(shè)計(jì)了可移植、可裁剪的基于FIFO的數(shù)據(jù)傳輸層,而板卡上多處理器間的傳輸通過(guò)透?jìng)髂K實(shí)現(xiàn)。

      1.1 復(fù)位管理器和時(shí)鐘管理器

      復(fù)位管理器主要是對(duì)整個(gè)計(jì)算單元和各個(gè)組件的復(fù)位進(jìn)行控制。每個(gè)組件都有一個(gè)復(fù)位信號(hào),都連接于容器。容器給出的復(fù)位信號(hào)主要是全局復(fù)位信號(hào),主要受控于外部硬件復(fù)位信號(hào)和控制命令發(fā)出的全局復(fù)位命令。時(shí)鐘管理器主要是根據(jù)外部時(shí)鐘源和內(nèi)部組件的需要產(chǎn)生多個(gè)時(shí)鐘信號(hào),容器一般只使用一個(gè)鎖相環(huán)產(chǎn)生一組時(shí)鐘,組件開(kāi)發(fā)者可以根據(jù)需要使用FPGA的其他鎖相環(huán)。

      1.2 數(shù)據(jù)傳輸層

      數(shù)據(jù)傳輸層以數(shù)據(jù)包為基本數(shù)據(jù)單元進(jìn)行傳輸和路由分發(fā),對(duì)板卡進(jìn)行加載、配置、控制、狀態(tài)獲取等操作,如圖2所示。數(shù)據(jù)傳輸層是為具體板卡所定制的,與板卡的結(jié)構(gòu)和技術(shù)特點(diǎn)緊密相關(guān)。傳輸層提供通信接口的驅(qū)動(dòng)支持,根據(jù)平臺(tái)的類(lèi)型,主要包括通信接口、PCI接口、PCIE接口、10/100/1 000M網(wǎng)口、萬(wàn)兆網(wǎng)接口等,和外圍存儲(chǔ)接口,如DDR?RAM接口、SRAM接口、FLASH接口等。為了將這些接口的驅(qū)動(dòng)本地化,在接收端和發(fā)送端分別設(shè)計(jì)了一個(gè)基于FIFO的緩沖池,并對(duì)FIFO的狀態(tài)進(jìn)行檢測(cè),以保證傳輸?shù)目煽啃浴?img alt="" src="https://cimg.fx361.com/images/2018/04/17/qkimagesmoetmoet201808moet20180808-2-l.jpg"/>

      對(duì)于數(shù)據(jù)傳輸層而言最大的任務(wù)是在下行數(shù)據(jù)輸入時(shí)按照數(shù)據(jù)傳輸協(xié)議進(jìn)行解析和判斷,判斷是否是本板卡的數(shù)據(jù)包,如果不是本板卡的數(shù)據(jù)包,則丟棄;如果是本板卡的數(shù)據(jù)包,則進(jìn)一步解析后發(fā)送到硬件抽象層。而上行數(shù)據(jù)在經(jīng)過(guò)傳輸層輸出時(shí)同樣需按照數(shù)據(jù)傳輸協(xié)議進(jìn)行封裝打包,若在輸出過(guò)程中存在多個(gè)通道同時(shí)傳輸,則需要依據(jù)各通道的優(yōu)先級(jí)進(jìn)行傳輸申請(qǐng),實(shí)現(xiàn)數(shù)據(jù)的有序傳輸。

      1.3 硬件抽象層MHAL

      MHAL是一個(gè)底層的通信模型,它為SCA系統(tǒng)中不同處理單元(CE)上的波形組件和硬件之間的通信提供標(biāo)準(zhǔn)的協(xié)議和接口,從而顯著提高波形應(yīng)用的可移植性。由于MHAL建立了DSP,F(xiàn)PGA與GPP之間的標(biāo)準(zhǔn)通信方式,因此它實(shí)現(xiàn)了SCA各處理平臺(tái)之間的互聯(lián)互通,使得DSP,F(xiàn)PGA波形可以很好地集成到SCA系統(tǒng)中。

      下行數(shù)據(jù)經(jīng)過(guò)“MHAL幀解析”后分為控制接口數(shù)據(jù)和通信接口數(shù)據(jù),控制接口數(shù)據(jù)能夠?qū)崿F(xiàn)對(duì)應(yīng)用組件的控制和組件參數(shù)配置,通信接口數(shù)據(jù)為應(yīng)用組件傳輸待處理的數(shù)據(jù)。

      組件處理完數(shù)據(jù)后經(jīng)過(guò)互聯(lián)層向傳輸層進(jìn)行傳輸申請(qǐng),若申請(qǐng)反饋同意傳輸,則需要將OCP接口轉(zhuǎn)換為MHAL幀格式從而實(shí)現(xiàn)上層數(shù)據(jù)在傳輸層的傳輸,若申請(qǐng)反饋不同意傳輸,則繼續(xù)向傳輸層申請(qǐng)傳輸,如圖3所示。

      1.4 互聯(lián)層

      互聯(lián)層負(fù)責(zé)本處理器內(nèi)部組件間的通信互聯(lián),因?yàn)榻M件都采用的是標(biāo)準(zhǔn)OCP接口,故對(duì)于FPGA內(nèi)的組件互聯(lián)不需要進(jìn)行數(shù)據(jù)格式的轉(zhuǎn)換,直接進(jìn)行管腳映射的方式就能實(shí)現(xiàn)。

      2 組件接口

      CP289協(xié)議中提出了使用開(kāi)放核協(xié)議(OCP)來(lái)設(shè)計(jì)和實(shí)現(xiàn)FPGA上的組件接口。OCP協(xié)議[9]全面考慮了各種組件應(yīng)用,提供了豐富的組件接口信號(hào),可以實(shí)現(xiàn)基本傳輸、突發(fā)傳輸、亂序傳輸?shù)榷喾N傳輸方式。但提供的接口過(guò)于繁雜,難以直接使用。CP289根據(jù)組件的功能需要,綜合考慮性能以及可重用性等方面的因素,規(guī)定了組件的三種接口[10],如圖4所示。

      1) 控制接口 (WCI)。控制接口為容器提供了控制和管理組件的通道和方法,實(shí)現(xiàn)對(duì)組件的初始化、運(yùn)行、停止、釋放、測(cè)試、配置參數(shù)寄存器等功能。該接口的定義和實(shí)現(xiàn)對(duì)于任何組件來(lái)說(shuō)都是一樣的,波形組件開(kāi)發(fā)者只需要實(shí)現(xiàn)該接口,而不必考慮與SCA核心框架之間的交互,這方面的工作都由容器負(fù)責(zé)完成。

      2) 通信接口 (WDI)。通信接口可分為“發(fā)送端”和“接收端”,分別用于數(shù)據(jù)的發(fā)送和接收,通信接口負(fù)責(zé)與容器以及容器之中其他組件之間的數(shù)據(jù)通信。

      3) 本地服務(wù)接口。本地服務(wù)接口為組件功能實(shí)現(xiàn)提供資源服務(wù)的接口,主要包括時(shí)鐘、復(fù)位以及存儲(chǔ)器訪問(wèn)等標(biāo)準(zhǔn)的本地服務(wù),以及實(shí)現(xiàn)波形組件的各種功能。

      此外,CP289還對(duì)各種組件接口的實(shí)現(xiàn)細(xì)節(jié)以及時(shí)鐘提供方式、存儲(chǔ)器訪問(wèn)方式等做了進(jìn)一步的約束,圖5所示為組件在程序中的接口定義。

      3 工作流程及實(shí)例

      圖6所示為組件在容器環(huán)境中的工作流程,用戶(hù)通過(guò)平臺(tái)控制軟件的核心框架將程序下載到FPGA芯片中,加載完畢后首先初始化應(yīng)用組件,通過(guò)控制端口給組件發(fā)送初始化命令,接著發(fā)送連接器初始化命令,初始化階段組件和連接器默認(rèn)為接收狀態(tài)。配置連接器參數(shù)可以明確組件的端口發(fā)送的源地址、目的地址、數(shù)據(jù)位寬等關(guān)鍵參數(shù)。組件參數(shù)根據(jù)用戶(hù)應(yīng)用需求也是通過(guò)控制端口進(jìn)行配置,例如A/D組件的采樣頻率。打開(kāi)連接器后,組件就可以進(jìn)行數(shù)據(jù)的接收和發(fā)送,保證了整個(gè)數(shù)據(jù)通道的暢通。組件開(kāi)始工作后,就會(huì)根據(jù)應(yīng)用需求進(jìn)行相應(yīng)的數(shù)據(jù)處理。數(shù)據(jù)處理結(jié)束后關(guān)閉組件,待數(shù)據(jù)通過(guò)連接器發(fā)送完畢后關(guān)閉連接器,然后釋放組件,使組件處于脫離狀態(tài),以減小運(yùn)行功耗。

      為了測(cè)試組件化開(kāi)發(fā)環(huán)境的可行性和合理性,設(shè)計(jì)了FFT組件。FFT組件同樣需要采用標(biāo)準(zhǔn)的OCP接口,控制接口是組件作為Slave端的OCP接口,為實(shí)時(shí)操作,不支持回讀,不支持接收響應(yīng),每個(gè)組件只有一個(gè)控制接口。通信端口組件既可以作為Slave端又可以作為Master端,當(dāng)組件接收容器傳來(lái)的數(shù)據(jù)時(shí),組件作為接收方,容器作為發(fā)送方,當(dāng)組件處理完數(shù)據(jù)后,則容器作為接收方,組件作為發(fā)送方。由圖7可觀察到,F(xiàn)FT組件OCP端口各信號(hào)輸出正常,說(shuō)明容器結(jié)構(gòu)設(shè)計(jì)的可行性和合理性。

      4 結(jié) 論

      本文基于FPGA等專(zhuān)用處理器難以與SCA系統(tǒng)融合的現(xiàn)狀,針對(duì)硬件結(jié)構(gòu)較為復(fù)雜的ATCA平臺(tái),設(shè)計(jì)了一個(gè)標(biāo)準(zhǔn)化的FPGA組件開(kāi)發(fā)環(huán)境,同時(shí)設(shè)計(jì)了FFT組件驗(yàn)證該開(kāi)發(fā)環(huán)境的可行性和合理性,實(shí)現(xiàn)了在ATCA平臺(tái)上FPGA專(zhuān)用處理器與SCA體系架構(gòu)的融合以及波形組件的可移植。

      參考文獻(xiàn)

      [1] GONZALEZ C R A, DIETRICH C B, REED J H. Understanding the software communications architecture [J]. IEEE communications magazine, 2009, 47(9): 50?57.

      [2] 張曉波,竇衡.SCA規(guī)范下FPGA的硬件抽象層設(shè)計(jì)[J].電子元器件應(yīng)用,2010,12(2):73?76.

      ZHANG Xiaobo, DOU Heng. The design of the hardware abstraction layer of FPGA in the SCA specification [J]. Electronic component &; device applications, 2010, 12(2): 73?76.

      [3] Joint Program Executive Office. Extension for component portability for specialized hardware processors (SHP) change proposal 289 (CP289): JTRS V3.1x [S]. [S.l.]: Joint Program Executive Office, 2005.

      [4] JPO J. Modem hardware abstraction layer API 2.13 [M]. San Diego: JTRS Standard, 2010.

      [5] 高宏偉,吳宇,施峻武,等.基于SCA的軟件無(wú)線電在FPGA上設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2011,34(19):103?107.

      GAO Hongwei, WU Yu, SHI Junwu, et al. Design and implementation of SCA?based SDR on FPGA [J]. Modern electronics technique, 2011, 34(19): 103?107.

      [6] 譚翔.基于SCA架構(gòu)的SoPC設(shè)計(jì)與實(shí)現(xiàn)[D].長(zhǎng)沙:國(guó)防科技大學(xué),2011.

      TAN Xiang. Design and implementation of SoPC based on SCA [D]. Changsha: National University of Defense Technology, 2011.

      [7] PrismTech. OpenFusion CORBA Products [EB/OL].[2011?04?12].http://www.prismtech.com/sectionitem.asp?id=570&;sid=18&;

      sid2=10&;sid3=251.

      [8] BECKWITH W, DELLER S, G. THOMPSON J. Hardware communications infrastructure supporting location transparency and dynamic partial recon?figuration: US2008/0229326A1 [P/OL]. [2008?09?18].

      [9] OCP?IP. OCP Specification Release 2.2 [EB/OL]. [2006?03?01]. http://www.ocpip.org.

      [10] 鄧剛,高宏偉,周軍輝,等.FPGA上SCA波形組件接口的設(shè)計(jì)與實(shí)現(xiàn)[J].信息通信,2012(4):16?18.

      DENG Gang, GAO Hongwei, ZHOU Junhui, et al. Design and implementation of SCA waveform component interface on FPGA [J]. Information &; communications, 2012(4): 16?18.

      猜你喜歡
      軟件無(wú)線電
      軍用軟件無(wú)線電通信技術(shù)發(fā)展分析
      “軟件無(wú)線電技術(shù)”技術(shù)教學(xué)方法的探索與實(shí)踐
      WR—G33DDC型無(wú)線電監(jiān)測(cè)接收機(jī)原理及故障處理
      基于Gnuradio與Hackrf的無(wú)線通信收發(fā)系統(tǒng)實(shí)現(xiàn)
      基于FPGA的軟件無(wú)線電上下變頻技術(shù)的設(shè)計(jì)研究
      DSP技術(shù)在軟件無(wú)線電中的應(yīng)用探討
      基于軟件無(wú)線電的GPP通信波形軟件設(shè)計(jì)方法
      基于軟件無(wú)線電收發(fā)機(jī)前端設(shè)計(jì)方法的分析與研究
      淺析無(wú)線智能認(rèn)知技術(shù)
      面向?qū)ο笏枷朐跓o(wú)線電系統(tǒng)設(shè)計(jì)中的應(yīng)用
      科技| 旅游| 临澧县| 长子县| 南江县| 南和县| 姜堰市| 皮山县| 洪雅县| 隆德县| 如东县| 平凉市| 兴安县| 广南县| 博客| 新兴县| 彩票| 依安县| 名山县| 郧西县| 迭部县| 舟曲县| 乌鲁木齐县| 东乡县| 北海市| 巢湖市| 游戏| 盐山县| 沙坪坝区| 海门市| 吐鲁番市| 民乐县| 湟源县| 松滋市| 大邑县| 岳池县| 深州市| 林芝县| 丘北县| 定陶县| 文成县|