《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于ZedBoard的SCA架構的設計與實現
基于ZedBoard的SCA架構的設計與實現
2015年電子技術應用第11期
袁 揚1,譚月輝1,孫慧賢1,沈若曦2,周 晗3
1.軍械工程學院 信息工程系,河北 石家莊0500002.總裝備部重慶軍代局駐昆明地區軍代室,云南 昆明650000;3.總裝備部駐789廠軍代室,重慶400060
摘要: ZedBoard是Xilinx公司首款融合了ARM Cortex A9雙核和7系列FPGA的全可編程片上系統,兼具ARM和FPGA兩者的優勢,是小型化SCA實現的最佳嵌入式平臺之一。本文介紹了ZedBoard平臺的硬件結構,并針對SCA架構在專用硬件平臺上無法實現的問題,通過分析研究MHAL硬件抽象層技術和OCP接口規范,設計了符合ZedBoard平臺硬件環境的MHAL硬件抽象接口和FPGA波形組件容器,有效地解決了SCA架構在ZedBoard平臺上的實現問題,為在ZedBoard上實現以SCA架構為核心的系統開發打下了基礎。
中圖分類號: TP311.52
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.11.008

中文引用格式: 袁揚,譚月輝,孫慧賢,等. 基于ZedBoard的SCA架構的設計與實現[J].電子技術應用,2015,41(11):31-33,37.
英文引用格式: Yuan Yang,Tan Yuehui,Sun Huixian,et al. Design and implementation of SCA based on ZedBoard[J].Application of Electronic Technique,2015,41(11):31-33,37.
Design and implementation of SCA based on ZedBoard
Yuan Yang1,Tan Yuehui1,Sun Huixian1,Shen Ruoxi2,Zhou Han3
1.Department of Information Engineering,Ordnance Engineering College,Shijiazhuang 050000,China; 2.General Equipment Department of Chongqing army of Kunming area,Kunming 650000,China; 3.Chongqing Military Deputy Bureau of General Armament Department,Chongqi 400060,China
Abstract: ZedBoard is the first All Programmable System on Chip(SOC) integrating with the ARM Cortex A9 and 7 Series FPGA developed by Xilinx, which is one of the best embedded platforms of the implementation of the miniaturized Software Communications Architecure(SCA). The hardware structure of ZedBoard platform is introduced in this paper, and aiming at the problem that SCA could not achieve on the special hardware platform, the Modem Hardware Abstration Layer(MHAL) hardware abstraction interface and FPGA waveform component container are designed with the research of the MHAL and the technology, which effectively solves the implementation issues of the SCA architecture on ZedBoard, and plays the foundation for the system development with the core of SCA on ZedBoard.
Key words : SCA;ZedBoard;MHAL;OCP

  
0 引言
  軟件通信體系架構(Software Communications Architecure,SCA)是美軍在聯合戰術無線電系統(Joint Tatical Radio System,JTRS)中針對GPP環境提出的軟件無線電實現框架,結合JTRS后續推出SCA補充標準對SCA架構進行裁剪,可在硬件資源有限的嵌入式硬件平臺上搭建小型化SCA架構,增強系統軟件的可重用性和可移植性,是實現嵌入式可重構系統的主要架構之一。ZedBoard是Xilinx公司推出的首款融合了GPP和FPGA的嵌入式開發環境,可滿足大部分嵌入式系統開發的需求,是嵌入式開發環境的必然發展趨勢,但是由于FPGA中的應用組件都由具體的邏輯電路實現,完全不同于GPP上的程序調用執行,所以SCA架構在ZedBoard平臺上會有諸多實現問題[1]。
  本文首先介紹了ZedBoard平臺硬件結構,提出了基于ZedBoard的SCA架構的總體設計,并重點針對SCA架構在ZedBoard平臺上難以實現的問題,通過深入分析研究Modem硬件抽象層(Modem Hardware Abstration Layer,MHAL)標準和Open Core Protocol(OCP) 接口協議,結合ZedBoard硬件結構設計了MHAL硬件平臺外部抽象接口和SCA波形組件容器,有效地解決了SCA架構在ZedBoard上的實現問題,為在ZedBoard上實現以SCA架構為核心的系統開發打下了基礎。
1 基于ZedBoard的SCA架構總體設計
  ZedBoard平臺是Xilinx公司最新推出的首款融合了ARM Cortex A9雙核和FPGA的全可編程片上系統,兼備GPP和FPGA的特點和優勢。ZedBoard平臺的核心是Xilinx的Zynq-7020芯片,主要包括processing system(PS)和programmable logic(PL)兩部分。其中PS部分包含雙核的ARM Cortex A9處理器,不僅負責整個ZedBoard開發板的管理和配置,也可作為獨立的芯片單獨使用,是ZedBoard平臺的系統控制核心,同時還集成了SIMD多媒體處理引擎(NEON)、內存管理器(MMU)等功能模塊和多種對外擴展接口,具有很強的功能擴展能力。PL部分主要包括Xilinx的高性能7系列FPGA,作為PS部分的補充提供了豐富的IO資源和高速數字處理能力[2-3]。

001.jpg

  基于ZedBoard的SCA架構總體設計如圖1所示,為充分發揮ZedBoard平臺PS部分的高性能系統控制能力,設計將SCA架構的核心框架、中間件和操作系統在PS部分的ARM上實現;而PL部分的高速數字處理能力和可重配置特點非常適合SCA應用層波形組件的實現。本文通過自行設計的MHAL硬件抽象接口和OCP波形組件容器來解決SCA架構在FPGA上的實現問題,并利用ZedBoard平臺的APC接口和IO總線實現PS部分的核心框架和FPGA波形組件間的消息傳輸,下面對MHAL硬件抽象接口和FPGA波形組件容器進行重點講述。
2 MHAL硬件抽象接口設計
  Modem硬件抽象層MHAL是JTRS辦公室在2007年頒布的接口標準,其初衷是為SCA系統中不同處理單元的通信提供標準的協議和接口,同時也涉及了硬件平臺外部接口的抽象,為實現SCA消息在ZedBoard上的標準傳輸提供了方法[4-5]。本文深入分析研究了MHAL標準,并結合ZedBoard開發環境,對MHAL消息結構進行了修改,重新定義了MHAL硬件抽象接口的功能結構和接口函數,分別設計了ARM和FPGA的MHAL消息發送和接收結構,完成了MHAL硬件抽象接口的設計。
  2.1 MHAL消息結構設計
  MHAL消息從最低有效位到最高有效位以地址遞增的方式進行排列,本文對MHAL標準中的消息結構進行了修改和擴充,添加了消息起始符和消息類型字段,使其能更好地滿足SCA架構在ZedBoard上的實現需求,其消息結構如圖2所示,其他字段與MHAL標準中的消息結構一樣,在此不做贅述。

002.jpg

 ?。?)消息起始符:本文設置了專門的16 bits消息起始符用來界定消息的起始,以13位巴克碼為基礎取值為“1111100110101000”,大大提高了MHAL消息接收和解幀的準確性。
  (2)消息類型:獨立的16 bits消息類型字段用來指示MHAL消息的類型和附屬信息,可以提高MHAL消息解析效率,使FPGA波形組件容器準確地將消息發送到相應的功能模塊。前3 bits指示MHAL消息類型,其對應關系如表1所示;后續比特分為三部分,分別指示MHAL消息源的處理編號、組件編號和端口編號。

006.jpg

  2.2 MHAL硬件抽象接口結構設計


003.jpg


  結合MHAL標準和ZedBoard平臺特點,本文設計的MHAL硬件抽象接口功能結構如圖3所示,主要包括通用代理、MHAL消息接收結構和MHAL消息發送結構,結合上文規范的MHAL消息結構屏蔽了ARM和FPGA硬件平臺的外部接口,實現了SCA消息在ZedBoard的ARM和FPGA之間的標準傳輸。
  2.2.1 通用代理設計
  通用代理由SCA核心框架的ExecutableDevice接口通過execute()函數創建,是運行在ARM上的一個SCA中間件對象,具有核心框架規定的CF::Resource、CF::PortSupplier和CF::Port等組件接口,根據目標邏輯地址實現與對應FPGA組件的通信。
  通用代理作為FPGA波形組件在ARM上的代理接受核心框架的調用和管理,并將SCA消息轉換為MHAL報文,添加目標邏輯地址字段后發送到ARM MHAL發送結構,是實現FPGA波形組件和ARM核心框架橋接的適配器。
  2.2.2 ARM MHAL發送和接收結構設計
  ARM MHAL發送和接收結構由MHAL設備組件實現,提供信源函數和信宿函數服務,實現對MHAL消息的封裝和發送、接收和解封裝。結合ZedBoard平臺ARM+FPGA的硬件結構特點,本文對MHAL標準中的GPP API結構進行了擴充和修改,使其更好地與ZedBoard開發環境相契合,下面以ARM發送結構為例進行講述,其UML圖如圖4所示。

004.jpg

  MHAL發送結構收到由通用代理發送來的MHAL報文后,通過builsMhalMsg()等函數將其封裝為完整的MHAL消息并存儲在MHALMsg[MAX_MHAL]中,end-
  BuildMhalMsg()函數結束MHAL消息封裝流程,再由 pushPacket()函數通過外部傳輸鏈路將MHAL消息發送到對端的MHAL接收結構。
  2.2.3 FPGA MHAL發送和接收組件設計
  FPGA MHAL發送和接收組件由一系列接收和發送MHAL消息的實體構成,與ARM MHAL發送和接收結構功能基本一致。本文以Multi-Depth FIFO節點為基礎設計了FPGA MHAL發送和接收組件,其具有允許多條消息隊列等待接收,支持按字節處理消息的優點,增強了FPGA對MHAL消息的處理能力,很好地滿足了FPGA上MHAL消息發送和接收的需求。下面以FPGA MHAL接收組件為例,本文采用Verilog硬件編程語言封裝了其外部接口,其外部端口和功能如表2所示。

007.jpg

3 FPGA波形組件容器設計
  容器是FPGA波形組件的直接運行環境,為實現SCA對FPGA波形組件的調用和控制提供本地服務和API[1],使得FPGA上的波形組件能像GPP組件一樣被核心框架管理,是在ZedBoard上實現SCA架構的重要組成部分。
  開放核協議OCP片上子系統通信定義了一個高效的、和總線相對獨立的、可配置的、可升級的接口,并可通過Verilog、VHDL等硬件編程語言實現,非常適合FPGA開發環境[6-7]。本文基于OCP接口設計了FPGA波形組件容器,規范了容器提供的服務和波形組件接口,實現了SCA核心框架對FPGA組件的管理以及異構組件間互通,大大提高了FPGA波形組件的可移植性和可重用性,其結構如圖5所示。

005.jpg

  3.1 OCP互連模塊設計
  OCP互聯模塊作為FPGA波形組件容器的核心,是實現容器對組件控制和管理功能的主要承擔者,主要由控制模塊、通信模塊、本地服務模塊和相應的OCP接口組成。其中控制模塊是OCP互聯模塊的樞紐,為FPGA波形組件提供了與SCA波形組件接口相對應的initialize()、start()和stop()等操作,便于核心框架對FPGA波形組件控制命令的執行。
  OCP互聯模塊的工作流程為:控制模塊進一步解析FPGA MHAL接收組件接收到的MHAL消息,并判斷出此消息的類型。如果是控制消息、連接消息或者斷開連接消息,則根據MHAL消息中的目標邏輯地址找到目標組件并完成相應控制操作;如果是數據消息,則交由通信模塊處理。通信模塊根據MHAL消息中的目標邏輯地址將數據消息發送到目標組件,并將接收到的組件返回數據消息交由控制模塊進行封裝等處理。本地服務模塊為容器中的組件提供時鐘信號和復位信號。
  3.2 組件OCP接口設計
  為了使FPGA波形組件與容器的OCP互連模塊無縫連接,本文以OCP接口為基礎設計了FPGA組件的封裝接口。組件OCP接口與OCP互聯模塊的功能模塊相對應,包括組件控制接口、組件通信接口和本地服務接口。
  組件控制接口采用以容器為Master,組件為Slave的模式,采用RTL編程語言實現了initialize()、run()和release()操作,與組件SCD文檔中組件IDL端口定義保持一致,很好地滿足了核心框架對FPGA組件的控制操作需求。
  組件通信接口根據組件與容器具體的通信情況分為組件Master只寫、組件Master只讀和組件Slave只寫三種模式,并定義了不同模式下所需的端口,可滿足組件通信的各種需求。
  本地服務接口與本地服務模塊相對應,用來接收OCP互聯模塊提供的時鐘信號和復位信號。
4 結論
  本文緊跟當前系統開發硬件平臺的趨勢,以Xilinx最新推出的ZedBoard平臺為背景,針對SCA架構在專用硬件平臺上實現的諸多問題,通過深入分析研究MHAL標準和OCP協議,對MHAL消息結構進行了修改和擴充,結合ZedBoard開發環境設計了ARM和FPGA上的MHAL消息發送和接收結構,并根據SCA核心框架對組件的管理需求設計了容器功能模塊和FPGA組件接口,最終完成了MHAL硬件抽象接口和FPGA波形組件容器設計,有效地解決了SCA架構在ZedBoard上的實現問題,為在ZedBoard上實現以SCA架構為核心的系統開發打下了基礎。
  參考文獻
  [1] 常濟菘.基于SCA的可移植FPGA波形結構及組件接口設計[D].長沙:國防科學技術大學,2009.
  [2] 肖志遠,杜啟亮,田聯房,等.基于Zedboard的視覺導航除草機器人控制系統設計[J].電子技術應用,2014,40(6):27-29.
  [3] 楊旭,湯永福,孟憲元,等.基于Zedboard的嵌入式自動調諧系統設計[J].測控技術,2014,33(9):84-86.
  [4] 王彥剛,呂遵明,萬留進.基于SCA規范的硬件抽象層應用程序接口分析[J].計算機應用,2014(A02).
  [5] 方詠嫻.手持通信終端的硬件抽象層研究及其FPGA實現[D].廣州:華南理工大學,2011.
  [6] 王荊林.基于OCP的FPGA可復用波形組件設計[D].長沙:國防科學技術大學,2007.
  [7] 鄧剛,高宏偉,周軍輝,等.FPGA上SCA波形組件接口的設計與實現[J].信息通信,2012(4):16-18.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美日韩hd| 久久精品人人做人人综合 | 狠狠做深爱婷婷久久综合一区 | 国产精一区二区三区| 欧美性大战久久久久久久蜜臀| 女人天堂亚洲aⅴ在线观看| 久久久蜜桃一区二区人| 欧美一区二区高清| 亚洲欧美日韩爽爽影院| 亚洲午夜日本在线观看| 亚洲天堂男人| 亚洲一区二区视频在线| 亚洲一区二区影院| 亚洲综合成人婷婷小说| 亚洲影音一区| 亚洲欧美日韩在线观看a三区| 亚洲一区制服诱惑| 午夜精品久久99蜜桃的功能介绍| 亚洲欧美国产日韩中文字幕| 亚洲一区自拍| 午夜精品99久久免费| 欧美一区二区三区视频在线观看| 欧美一区二区三区在线看| 久久国产精品99久久久久久老狼| 久久国产精品一区二区三区四区 | 久久精品二区| 久久三级视频| 美女任你摸久久| 欧美成人午夜视频| 欧美日韩国产另类不卡| 欧美午夜精品久久久久久久| 国产精品高清免费在线观看| 国产精品午夜视频| 国产一区二区精品丝袜| 一区二区亚洲精品国产| 亚洲欧洲在线播放| 一区二区欧美视频| 午夜在线不卡| 亚洲欧洲一区二区三区久久| 9l国产精品久久久久麻豆| 亚洲一区二区三区四区视频 | 国产麻豆日韩| 激情五月***国产精品| 亚洲激情视频网| 一区二区三区高清在线| 午夜精品99久久免费| 亚洲国产日韩欧美一区二区三区| 亚洲另类在线一区| 亚洲一区免费在线观看| 久久精品午夜| 欧美激情欧美狂野欧美精品| 国产精品国色综合久久| 国产一区二区三区在线观看网站| 亚洲第一精品夜夜躁人人爽| 一区二区欧美激情| 久久成人这里只有精品| 日韩亚洲欧美综合| 欧美一区二区啪啪| 欧美福利影院| 国产精品视频免费在线观看| 在线日韩成人| 亚洲一区二区三区中文字幕在线 | 亚洲无线观看| 久久久久久九九九九| 欧美看片网站| 国产日韩欧美一区二区| 亚洲精品偷拍| 欧美一级在线视频| 亚洲免费观看高清在线观看| 欧美一区二区免费| 欧美激情精品久久久六区热门| 国产精品网站视频| 亚洲国产高潮在线观看| 一区二区三区四区五区精品视频| 欧美在线关看| 亚洲女同性videos| 欧美国产亚洲精品久久久8v| 国产精品毛片一区二区三区| 亚洲国产婷婷综合在线精品| 欧美一级网站| 亚洲一区二区久久| 美女免费视频一区| 国产欧美日韩三级| 亚洲免费电影在线| 亚洲欧洲午夜| 久久久亚洲欧洲日产国码αv| 国产精品高潮久久| 亚洲精品国产精品国自产观看| 小黄鸭视频精品导航| 中日韩午夜理伦电影免费| 久久综合精品国产一区二区三区| 国产精品sss| 亚洲人成网站精品片在线观看| 久久av一区| 欧美一区二区三区视频| 国产精品白丝av嫩草影院| 亚洲国产99| 亚洲第一网站| 欧美中文字幕| 国产精品美女xx| 99国产精品久久久久老师| 亚洲黄色免费网站| 久久免费视频观看| 国产精品毛片大码女人| 99视频在线观看一区三区| 亚洲黄色毛片| 久久香蕉国产线看观看网| 国产日韩在线看片| 亚洲欧美另类在线| 午夜精品一区二区三区电影天堂 | 午夜精彩国产免费不卡不顿大片| 中文av字幕一区| 欧美黄色大片网站| 亚洲高清在线观看| 亚洲黄色性网站| 久久一区二区三区av| 国产视频欧美| 午夜影视日本亚洲欧洲精品| 欧美一级大片在线免费观看| 国产精品久久久久99| 一区二区毛片| 一区二区精品国产| 欧美日韩国产高清| 亚洲毛片一区二区| 在线综合视频| 欧美性大战久久久久久久蜜臀| 夜夜夜久久久| 亚洲一区二区精品在线| 欧美三区美女| 中文在线资源观看视频网站免费不卡| 中国日韩欧美久久久久久久久| 欧美日韩一区二区在线| 在线视频一区观看| 亚洲欧美日韩专区| 国产日韩久久| 欧美在线一二三四区| 久久影视三级福利片| 在线视频观看日韩| 日韩视频免费大全中文字幕| 欧美日韩精品一区| 在线一区观看| 欧美一区二区日韩| 狠狠噜噜久久| 亚洲人成毛片在线播放| 欧美精品91| 一区二区三区欧美| 校园激情久久| 一区精品在线| 日韩视频一区二区三区| 欧美日韩中文精品| 亚洲欧美日韩一区二区三区在线| 久久精品一二三区| ●精品国产综合乱码久久久久| 99re热这里只有精品免费视频| 国产精品av免费在线观看| 午夜精品视频在线观看一区二区| 久久久久久夜| 亚洲精品老司机| 亚洲欧美一级二级三级| 国产一区二区三区奇米久涩 | 亚洲高清网站| 亚洲午夜精品网| 国产日韩欧美精品一区| 亚洲国产精品久久久久| 欧美日韩影院| 欧美亚洲网站| 欧美激情视频一区二区三区免费| 中文av一区二区| 美女主播一区| 一区二区三区不卡视频在线观看| 久久国产精品久久久| 亚洲国产精品视频| 午夜精品www| 在线精品国精品国产尤物884a| 一本大道久久精品懂色aⅴ| 国产精品永久免费在线| 亚洲欧洲日本国产| 欧美亚州一区二区三区| 欧美一级一区| 欧美日韩一区二| 亚洲第一精品在线| 欧美午夜片在线观看| 久久精品国产综合精品| 欧美日韩成人| 久久精品国产精品| 国产精品久久久久久妇女6080 | 亚洲国产cao| 国产精品久久久久国产a级| 亚洲欧洲日本国产| 国产麻豆视频精品| 亚洲视频电影在线| 激情婷婷亚洲| 欧美一区二区国产| 99视频精品免费观看| 麻豆成人综合网| 亚洲一区自拍| 欧美日韩三级视频| 亚洲精品极品| 狠狠色综合一区二区| 性做久久久久久久久|