董淑偉,鄭 賓,杜鵬飛
(1.中北大學 儀器科學與動態測試教育部重點實驗室,山西 太原030051;2.中北大學 山西省光電信息與儀器工程技術研究中心,山西 太原030051)
振動主動控制具有通用性較大、控制效果好等優點,特別是對抑制低頻振動以及隨機振動具有無法比擬的優點[1,2]。然而在實現中由于振動信號頻率高、算法處理復雜及實時性要求高等特點,采用傳統的采集處理系統無法滿足要求,因此在實際應用中需采用多個處理器協同的方法完成振動主動控制。
隨著電子技術和信息技術的飛速發展,各領域對系統的采集和處理速度的要求越來越高,傳統的FPGA+USB+PC系統已無法滿足實際要求。而如果采用FPGA+DSP的架構,由于FPGA 運算速度快且邏輯控制能力強,DSP復雜算法運算能力強,通過對分別FPGA 和DSP進行功能劃分,可以充分發揮各自的優點;其次無需PC 機的介入,系統運用起來會十分方便靈巧[3-5]。于是本文提出了一種FPGA+DSP的協同處理架構,很好地把兩者的優點結合到一起,兼顧了速度和靈活性,能夠達到致動器對控制目標的實時控制,可以滿足實驗要求。
FPGA+DSP構成的處理系統結構如圖1所示。FPGA主要完成外圍電路的時序控制和寄存器的配置,DSP 完成各種復雜算法處理[6,7]。當系統完成配置正常工作后,模擬信號源經過轉化率為40MPSP的A/D 轉化成數字信號,在FPGA 內進行簡單處理后送入外部存儲器DDR 中進行緩沖,當DDR 存滿后,在FPGA 內部定制的軟核處理器MicroBlaze通過指令讀取緩沖區的數據進行簡單處理,處理后的數據經過EMIF接口送給DSP 進行復雜算法處理,從中提取控制信息并將其送回FPGA,在FPGA 內將其分成兩路,一路通過VGA 進行顯示,另一路通過D/A 轉換成模擬信號驅動致動器對目標進行控制。

圖1 FPGA+DSP處理系統結構框架
采用Xilinx公司的XPS和SDK 工具包進行基于FPGA的嵌入式開發,其中系統架構的搭建和外設IP核的設計在XPS中完成,板級支持包BSP 的創建和軟件代碼的設計在SDK 中完成。系統整體架構如圖2所示,AXI總線控制器、DDR 控制器、RS_232 外設核等由XPS 的工具定制,而A/D 和D/A 的外設IP核和與DSP通信的外設IP核是采用XPS中外設向導添加的。
MicroBlaze軟核處理器的定制如圖3所示,MicroBlaze采用指令和數據空間分離的哈佛結構,有32個32位通用寄存器,32位的地址總線可尋址空間4GB[8-10]。本設計中系統總線選用AXI System,時鐘頻率和參考時鐘都為100 MHz,片上存儲器由FPGA 內嵌的BRAM 組成,大小設定為8KB。在添加I/O 接口欄中添加LED_8bits、DIP_Switchs_4bits、RS_232,其中RS_232可用于系統調試和低速數據傳輸。對于I/O 設備的訪問MicroBlaze處理器采用存儲器映射的方式,本設計采用高級可擴展接口AXI4進行存儲器訪問。

圖2 系統整體架構
差分形式的數據流在A/D 轉換器的外設核內使用FPGA 原語將其轉換成單端信號,然后通過自制的adc_to_ddr總線送往DDR 控制器中。其中adc_to_ddr總線是從AXI4總線中截取的一部分,使用IBA 核連接到兩條總線上,然后用ChipScope Pro軟件觀察,可以發現AXI4總線中s_axis部分的時序和adc_to_ddr總線的一樣。
由于數據流的速率非常快而且數據量大,如果采用指令或中斷的方法來傳輸字節信息,會造成大量CPU 的資源被占用,同時也容易造成數據丟失,而對于DMA 傳輸方式,由于可以使外設和存儲器不經過CPU 直接進行數據交換,且是由硬件電路直接實現,所以適用于本系統的高速數據傳輸[11,12]。

圖3 MicroBlaze軟核處理器的定制
在該控制器中先對數據流進行乒乓操作,其仿真結果如圖4所示,然后觸發DMA 控制器向CPU 發出DMA 請求,CPU 響應DMA 請求把總線控制權交給DMA 控制器并配置其存儲地址和傳送數據塊長度等寄存器,執行DMA傳送將數據流緩存到DDR2中,最后當DMA 操作結束后又把總線控制權交還給CPU。

圖4 乒乓操作仿真結果
EIMF接口是DSP 的外部存儲器接口,通過對寄存器的設置可以將其配置成同步、異步等類型的高速數據接口,可實現與外部存儲器的無縫連接[13-16]。本系統采用同步類型的EMIF與FPGA 互連,通過在線邏輯分析儀可以觀察EMIF接口時序,如圖5所示。由于FPGA 和DSP 是跨時鐘域系統,需在FPGA 中添加異步FIFO 進行數據緩存,其中寫時鐘為FPGA 讀DDR 的時鐘,讀時鐘由DSP 提供的ce、awe、aoe信號組成。

圖5 DSP外設核的Analyzer仿真結果
在FPGA 和DSP 之間利用DMA 方式進行數據傳輸,有利于提高數據傳輸的吞吐量。FPGA 控制DDR 進行讀寫,在讀操作下,當FPGA 內部FIFO 出現非空信號時,控制DSP的中斷管腳觸發全局中斷,外部數據通過EDMA轉存到DSP 內部的RAM 中,當數據傳輸完成后會觸發EDMA 完成中斷。數據在DSP中經復雜算法處理后將處理后數據緩存到內部RAM 中,再通過EDMA 方式經過EMIF接口將處理后的數據傳回FPGA。
本實驗中DSP 芯片選用TI 公司的C600 系列TMS320DM642芯片,主頻為600MHz,EMIF接口工作時鐘為100MHz,數據總線寬度為64bit。FPGA 選用Xilinx公司的Spartan6系列的XC6SLX150T,內部軟核處理器和AXI總線 的 工 作 頻 率 為100MHz。A/D 選 用 雙 通 道12bit 的ADC6222芯片,轉換率為65MSPS;D/A 選用雙通道16bit的AD9777芯片,轉換率為160MSPS。系統上電后MicroBlaze軟核對外設核進行初始化并配置A/D 和D/A 的寄存器,A/D的采樣率采用50MHz,經模數轉換后的數據流通過FPGA緩存和簡單處理后發送給DSP進行復雜算法處理,處理后的結果如圖6所示,最后將提取到的振動控制信息發送給FPGA,經D/A轉換成模擬信號驅動致動器對目標進行控制。

圖6 自由振動控制曲線
對5片40mm×20mm×0.5mm 的PZT 在致動器300V最大控制電壓條件下進行實時采集控制,實驗結果表明,該系統可將20g振動加速度下的振動幅值降低30%。
本文設計了一種FPGA+DSP 的振動主動控制系統,充分發揮了兩者的優點,使速度和靈活性得到兼顧。在FPGA 內部采用基于MicroBlaze處理器和AXI4總線的可編程SoC系統設計,通過軟硬件協同開發使系統的吞吐量得到了優化并縮短了開發周期。采用工作頻率為400MHz的DDR2對數據流進行緩沖,解決了數據速率高且數據量大的問題,給復雜算法處理預留了足夠的時間;在FPGA 內部設置乒乓操作,保證了FPGA 和DSP的協調工作,同時解決了不同時鐘域的問題;FPGA 與DSP 之間使用DMA方式進行數據傳輸,提高了數據傳輸吞吐量。實驗測試結果表明,該振動主動控制系統可以穩定可靠地工作。
[1]GUAN Tao.Design of active vibration controller based on FPGA and DSP [D].Harbin:Harbin Engineering University,2012 (in Chinese).[官濤.基于FPGA+DSP 的振動主動控制器的研制 [D].哈爾濱:哈爾濱工程大學,2012.]
[2]ZHOU Yi,ZHOU Qinggen,QIAO Peng,et al.design of micro SINS based on FPGA &DSP [J].Electronic Measurement Technology,2008,32 (2):119-122 (in Chinese). [周益,周清根,喬鵬,等.基于FPGA+DSP的微小型捷聯慣導系統的設計 [J].電子測量技術,2008,32 (2):119-122.]
[3]WEN Yuchen.Design and implementation of GPS receiver based on FPGA and DSP [D].Chengdu:University of Electronic Science and Technology of China,2013 (in Chinese).[文雨辰.基于FPGA+DSP 架構的GPS 接收機設計和實現[D].成都:電子科技大學,2013.]
[4]LIANG Yuheng.High-precision data acquisition and DSP+FPGA high-speed signal processing hardware system design [D].Xi’an:XiDian University,2012 (in Chinese). [梁宇恒.高精度數據采集及DSP+FPGA 高速信號處理硬件系統設計[D].西安:西安電子科技大學,2012.]
[5]GAO Yang,LIU Rongke,HU Wei.Design and implementation of high definition video image system based on FPGA+DSP[J].Electronic Measurement Technology,2011,35 (1):69-73 (in Chinese). [高楊,劉榮科,胡偉.基于FPGA+DSP的高清視頻圖像系統設計與實現 [J].電子測量技術,2011,35 (1):69-73.]
[6]CHEN Wenhe,BI Xin,CAO Yunxia,et al.Design of radar data transmission interface between DSP and FPGA [J].Control Engineering of China,2011,18 (S1):60-62 (in Chinese).[陳文鶴,畢欣,曹云俠,等.FPGA 與DSP的雷達數據傳輸接口設計 [J].控制工程,2011,18 (S1):60-62.]
[7]LI Le,XIONG Zhihui,WANG Bin,et al.High-speed data communication between DSP and FPGA in embedded panoramic video processing system [J].Journal of Electronics &Information Technology,2010,32 (3):649-654 (in Chinese). [李樂,熊志輝,王斌,等.DSP+FPGA 折反射全景視頻處理系統中雙核高速數據通信 [J].電子與信息學報,2010,32(3):649-654.]
[8]LIU Yongjian.Soft-core embedded processor MicroBlaze [J].Computer &Network,2012,38 (15):64-66 (in Chinese).[劉永健.軟核嵌入處理器MicroBlaze [J].計算機與網絡,2012,38 (15):64-66.]
[9]WU Zhongzheng.Embedded system design based on MicroBlaze[D].Nanjing:Nanjing University of Science and Technology,2014 (in Chinese).[巫忠正.基于MicroBlaze的嵌入式系統設計 [D].南京:南京理工大學,2014.]
[10]WANG Ershen,ZHANG Shufang,ZHANG Zhixian.Study on embedded gps receiver based on Xilinx MicroBlaze [J].Communications Technology,2010 (10):28-30 (in Chinese). [王爾申,張淑芳,張芝賢.基于Xilinx MicroBlaze的嵌入 式GPS 接 收 機 研 究 [J].通 信 技 術,2010 (10):28-30.]
[11]MEI Kun,HU Shuling,LIU Honghai.High-speed data acquisition system of the radar based on FPGA and DSP [J].Electronic Design Engineering,2010,18 (12):159-161 (in Chinese).[梅坤,胡姝玲,劉宏海.基于FPGA 與DSP的雷達高速數據采集系統[J].電子設計工程,2010,18 (12):159-161.]
[12]DAI Shaosheng,NIU Daowei.Fabrication of uncooled infrared imaging system based on SOPC [J].Semiconductor Optoelectronics,2013 (1):126-129 (in Chinese). [代少升,牛道偉.基于SOPC 的非致冷紅外熱成像系統的研制 [J].半導體光電,2013 (1):126-129.]
[13]LUO Ming.DSP control system design based on EMIF interface[J].Light Industry Science and Technology,2013,30(4):82-83 (in Chinese).[羅鳴.基于EMIF接口的DSP控制系統設計 [J].輕工科技,2013,30 (4):82-83.]
[14]ZHANG Feng,REN Guoqiang,WU Qinzhang.Design of high-speed image transmission system based on EMIF [J].Semiconductor Optoelectronics,2011 (1):146-149 (in Chinese).[張峰,任國強,吳欽章.基于EMIF 的高速圖像傳輸系統設計 [J].半導體光電,2011 (1):146-149.]
[15]FANG Dong,ZHANG Guobao.Design of data acquisition system based on EMIF [J].Electronic Design Engineering,2011,19 (2):174-178 (in Chinese).[方冬,章國寶.基于EMIF接口的數據采集系統的設計 [J].電子設計工程,2011,19 (2):174-178.]
[16]ZHOU Shunyan,WU Dan.TMS320C6713DSP EMIF interface design and realization of high speed data exchange board[J].Computer Measurement & Control,2010,18 (7):1654-1656 (in Chinese). [周 順 燕,吳 丹.TMS320C6713 DSP的高速EMIF數據接口設計與實現 [J].計算機測量與控制,2010,18 (7):1654-1656.]