李正軒,費樹岷
(東南大學 自動化學院,南京 210096)
?
基于Zynq-7000 FPGA的高速信號采集處理平臺
李正軒,費樹岷
(東南大學 自動化學院,南京 210096)
摘要:基于Xilinx Zynq-7000系列FPGA,搭建了速度等級在100 Msps的高速信號采集處理平臺。平臺包含了高速信號采集、高速數據存儲以及數字信號處理,在成本、采樣速度、數據量、數據處理、穩定性以及可擴展性上都能滿足嵌入式高速信號采集處理的需求。詳細地介紹了平臺的設計、搭建以及后續拓展。
關鍵詞:Xilinx Zynq-7000;FPGA;高速采樣;信號處理
引言
隨著技術的發展,在檢測系統,特別是實時檢測系統中,嵌入式高速信號采集處理系統的應用越來越廣泛,相對PC采集處理系統更加輕便靈活。在高速信號采集及處理系統中,需要解決高速應用、高速緩存、大數據存儲、高速處理以及通信這幾項問題。
在嵌入式平臺上,一般采用高速A/D轉換器及DDR搭建高速采集與存儲模塊,對處理器有比較高的要求:一是速度上要滿足A/D轉換器采樣速率,在100 Msps的采樣速度下,往往只有FPGA或高檔的DSP能滿足要求;二是對于DDR的控制比較繁雜,這對于大部分處理器而言將耗去不少的資源;三是高速數據處理需要使用ARM或DSP作為計算核心,采用FPGA則要面對算法對Verilog/VHDL語言移植的問題。
因此,市面上更多的采用FPGA+ARM/DSP處理器架構,但其在成本、通信設計和擴展性上都不盡如人意。而Xilinx公司推出的Zynq-7000系列FPGA集成了兩個Cortex-A9 MPCore 處理器,打破了傳統的FPGA+ARM/DSP核架構,提供了單CPU、多處理核的新型解決方案。
1平臺設計
1.1Xilinx Zynq-7000系列FPGA
Xilinx Zynq-7000系列FPGA,繼承了兩個1 GHz 的ARM Cortex-A9內核,打破了傳統的FPGA+ARM/DSP的架構,使用單片FPGA就能很好地完成工作。FPGA和ARM通過高達100 Gbps的內部高速總線通信,比FPGA+ARM/DSP外部通信的架構更加迅速而且更加可靠。
Zynq-7000系列FPGA帶有DDR控制器硬核,支持1 GB 多種數據位的地址寬度,在ARM(PS)端有64位的數據通道,最高支持1 066 MT/s的速度,其在速度、穩定性和泛用性上都非常優秀,特別適用于做系統的高速存儲。
1.2MicroZed評估板
MicroZed評估板是Xilinx公司基于Zynq-7000系列FPGA的開發評估板,其基本特征如下。
① 采用Xilinx Zynq-7010-CLG400 FPGA其存儲容量如下:256M×32位(1 GB)DDR3,128M QSPI Flash和4 GB MicroSD卡。
② 接口配置如下,具有:Xilinx JTAG編程器,可同時對邏輯部分(PL)和ARM部分(PS)進行編成與仿真,10/100/1000M以太網接口,USB2.0接口,microSD 卡讀寫器和USB2.0-UART全速串口驅動。
可以說MicroZed評估版包含了高速數據采樣處理系統中的采集控制器、高速數據存儲以及數據處理器,后面將使用MicroZed評估版對平臺進行搭建。
1.3平臺整體構架
在MicroZed平臺上構建高速信號采樣處理平臺,其處理平臺整體架構如圖1所示。

圖1 高速信號采樣的處理平臺整體架構
高速數據通過A/D轉換器采樣,經過FPGA送到DDR實現高速緩存,ARM從DDR獲取數據、進行處理,并對外部接口進行控制與通信。
2平臺搭建
2.1高速采樣
高速采樣部分選用Analog Devices公司的A/D芯片AD9214系列,其基本特征如下:
◆ 10位65/80/105 Msps三種速度等級;
◆ 信噪比為57 dB @39 MHz模擬輸入;
◆ 300 MHz模擬帶寬;
◆ 3.3 V單電源供電,模擬輸入最大為2Vpp;
◆ 數字輸入與時鐘輸入TTL/CMOS兼容;
◆ 功耗小于285 mW@105 Msps。
AD9214速度與精度能廣泛地滿足高速信號的采樣要求,其TTL/CMOS兼容的電平模式與MicroZed評估板能無縫結合,控制簡單。市面上同等級的A/D芯片往往采用BGA或者帶背部金屬盤(PAD)的封裝,但AD9214采用的是常用的雙側引腳扁平封裝(SOP)封裝,這將為中小規模的研發節省巨大的焊接成本。
圖2為AD9214驅動原理圖,信號采樣有兩種方式可選:一是采用ADT1-1射頻隔離器進行隔離驅動,二是采用AD8138單端轉差分運放對A/D芯片進行驅動,時鐘線和數據線可與MicroZed直接相連。由于信號頻率相對較高,在布線時需主要考慮信號完整性,數據線和時鐘線盡量走等長。
2.2高速存儲
MicroZed評估板上使用兩片Micron公司的DDR3內存MT41K256M16HA -125:E,形成了256M×32位寬的存儲結構。

圖2 AD9214驅動原理圖

圖3 數據存儲結構圖
通過FPGA搭建A/D數據高速緩存機制,A/D數據經過FPGA的片上緩存,寫入DDR A/D數據區,作為高速緩存,DDR其他空間作為ARM控制系統的運行程序,與A/D轉換器進行數據交互。數據存儲結構圖如圖3所示。
對于設定的10位100 Msps的A/D轉換器,數據在片上緩存按16位讀取,片上緩存到DDR按64位讀取,配置DDR控制時鐘為533 MHz,可計算得存儲速度約為采樣速率的40倍,這將大大地保證采樣數據的有效存儲,而且保證了DDR有足夠的時間與控制系統進行數據交互。
2.3數據處理
ARM Cortex-A9核的運算能力,基本能滿足日常的各種數據處理需求,在搭建的平臺上有兩種可選的數據處理方案。
第一種方案是在Linux系統下的數據處理。Xilinx提供了MicroZed上精簡的Linux系統,由于添加了A/D轉換器外設,仍然需要對系統的內核和設備樹作一些修改,Xilinx SDK上提供了相關的工具,在Xilinx wiki和Xilinx github上也提供了完備的教程與資源,使得Linux系統的搭建相對比較輕松。系統搭建完成后,可在Linux下進行算法的編寫或移植。
第二種方案是在Zynq-7000上進行數據處理。注意有別于在其他ARM上進行數據處理的方案,因為Zynq-7000是FPGA內嵌ARM的架構,所有數據的處理可以是FPGA和ARM部分共同完成的。Xilinx提供的SDK工具支持C++對ARM編程,使得算法的移植比較簡捷。Xilinx還提供了高層次綜合工具(HLS),可以使用C和C++對FPGA進行IP核編寫與封裝,通過這些工具可以使得ARM和FPGA共同完成數據處理過程,這將比ARM單獨完成在速度上有不少優化。
第一種方案具有更高的普遍性與可擴展性,算法的移植要比第二種方案簡單,后續系統的搭建與研發都在Linux平臺上進行。但是Linux系統將失去更多的系統資源,在數據處理速度上會慢于方案二。方案二最大的特點是使用ARM+FPGA架構對算法進行優化提速,但其可擴展性低,要求設計人員對并行計算有一定的了解。因此,方案二適用于單一算法的優化處理,或是對算法速度和實時性要求比較高的場合,而且其系統穩定性會高于方案一。
2.4平臺實現

圖4 Vivado 框圖
根據設計的平臺架構,在Vivado上搭建系統,圖 4 為Vivado上框圖(Block Diagram)。PS核通過AXI總線對FPGA上的IP核進行控制和交互。A/D轉換器控制IP包括A/D差分數據讀入、片上高速緩存及DDR寫入控制。外設都通過AXI總線控制器訪問及控制,綜合后得到圖5所示的資源消耗統計圖,可見主要消耗的LUT(邏輯單元表)資源在1/3左右,仍然有很多擴展的余量,MMCM為Xilinx的混合模式時鐘管理器,片上共2個,使用了1個,所以消耗占50%。
2.5運行情況
圖6為在Vivado上捕捉的A/D數據,數據源為20 MHz的方波信號。測試信號只通過射頻隔離器進入A/D轉換器,所以波形有輕度失真,后續可根據具體信號的頻率與特征對輸入運放進行調試,可獲得更好的采樣效果。

圖5 資源消耗統計圖

圖6 Vivdo Hardware Manager上捕捉的20 MHz方波
為對平臺運算能力進行評估,在ARM核上對50 000個采樣點進行了3層小波分解算法,結果耗時約500 ms,同樣的算法在Matlab軟件上耗時約200 ms,可見本平臺的數據運算能力相當優秀。
為后續擴展,修改了MicroZed的Linux內核,加入了常用的系統工具,如gcc編譯器、文本編輯器等,系統啟動時間在40 s左右,在可接受范圍。圖7為在MicroZed的Linux系統上掛載SD卡,編譯并運行的SD卡上的Hello World程序。

圖7 MicroZed上的Linux系統操作
結語

參考文獻
[1] 陸佳華,江舟,馬岷.嵌入式系統軟硬件協調設計實戰指南:基于Xilinx Zynq[M].2版.北京:機械工業出版社,2014.
[2] 符曉宏.基于AVR和FPGA的電纜路徑檢測系統的研究與設計[D].西安:西安電子科技大學, 2010.
[3] AVNET Corporation.MicroZed Zynq Evaluation and Development and System on Module Hardware User Guide, 2015.
[4] 齊紅濤,蘇濤.基于FPGA的高速AD采樣設計[J].航空兵器,2010(1).
[5] 楊曉安,羅杰,蘇豪,等.基于Zynq-7000高速圖像采集與實時處理系統[J].電子科技,2014(7).
[6] Xilinx Inc.Zynq-7000 All Programmable SoC Technical Reference Manual(v1.10),2015.
[7] 何賓.Xilinx all programmable Zynq-700 Soc[M].北京:清華大學出版社,2013.
李正軒(碩士),研究方向為工業自動控制、嵌入式系統;費樹岷(教授),主要研究方向為控制工程與控制理論、非線性系統、復雜系統建模。
英飛凌3D圖像傳感器REAL3助力智能手機實現虛擬現實
英飛凌科技股份公司與pmd科技有限公司聯合推出了3D圖像傳感器芯片。REAL3將能實現非常逼真的虛擬并增強現實游戲體驗,其中涉及通過游戲玩家使用頭戴式終端設備在自己的雙手與其生活環境之間的互動。圖像傳感器芯片的其他應用包括:房間和物體的空間測量、室內導航和圖片特效等。
在2016年美國拉斯維加斯消費電子展(CES)上,英飛凌與pmd共同展出了REAL3產品家族最新推出的3D圖像傳感器芯片。較之前一代產品,全新3D圖像傳感器的光學靈敏度以及功耗均得到改善。此外,內置電子器件所占用的空間非常小。該芯片使手機可以操作能測量3D深度數據的微型攝像系統。
利用微透鏡提高靈敏度
攝像頭的測距和測量精度取決于兩個因素:所發射和反射的紅外光的強度,并在很大程度上取決于3D圖像傳感器芯片的像素靈敏度。現在,全新3D圖像傳感器芯片的光學像素靈敏度是前一代產品的兩倍。這意味著,它們的測量質量不相上下,但新一代芯片的發射光輸出功率只需一半。因此,手機攝像系統的制造商不僅能提供更符合成本效益的紅外照明,還能將攝像頭系統的耗電量減半。
最優化的外形:傳感器尺寸減半
展示的3D圖像傳感器芯片專為手機而設計,手機上的大多數應用只需要3.8萬像素的分辨率。以前的10萬像素矩陣相應縮小,而其他功能組件(比如影響芯片面積和性能范圍的模擬/數字轉換器)得到優化。因而,系統成本得以降低:傳感器芯片面積幾乎減半,并且,由于分辨率降低,可使用更小、更便宜的光學透鏡。
High-Speed Signal Sampling and Processing Platform Based on Zynq-7000 FPGA
Li Zhengxuan,Fei Shumin
(School of Automation,Southeast University,Nanjing 210096,China)
Abstract:Based on Xilinx Zynq-7000 series FPGA,the platform of 100 Msps speed level is constructed.The platform includes the high-speed signal sampling module,the high-speed data storage module and the digital signal processing system,which satisfies the requirement in the cost,the sampling rate,the data quantity,the data processing,the running stability and scalability.This paper gives detail instruction about the platform design,the modules construction and the subsequent expansion prospects.
Key words:Xilinx Zynq-7000;FPGA;high-speed sampling;signal processing
收稿日期:(責任編輯:楊迪娜2015-08-17)
中圖分類號:TP792
文獻標識碼:A