(中北大學儀器科學與動態(tài)測試教育部重點實驗室,太原030051)
(中北大學儀器科學與動態(tài)測試教育部重點實驗室,太原030051)
設計了一種基于FPGA和USB技術的彈載測試儀的通訊接口,重點介紹了EZ—USB FX2系列芯片CY7C68013的特點、固件程序的設計及FPGA模塊的設計,采用GPIF傳輸模式簡化了系統(tǒng)的硬件電路并且大大提高了數據傳輸的速率。最后,實驗驗證了該接口的可行性及實用性。
通訊接口;USB;FPGA;固件;GPIF
彈載測試儀往往工作在振動,高低溫、強沖擊等惡劣環(huán)境下,很多情況下在炮彈的發(fā)射過程中,彈載測試儀的通訊接口容易發(fā)生損壞,導致采集到的數據無法讀出,為了保證在各種惡劣環(huán)境中能提取出所采集到的數據,設計了一種彈載測試儀的通訊接口。該接口可以與彈載測試儀分離出來,不隨炮彈一起飛行,大大提高了系統(tǒng)的可靠性。在正常情況下,該接口可以與彈載測試儀進行通訊,對彈載測試儀進行各種控制[1]。當彈載測試儀的讀數接口在惡劣環(huán)境下損壞時,此通訊接口亦可以與彈載測試儀的備用接口進行通訊將彈載測試儀中的數據提取出來以供分析。并且該接口采用USB與FPGA技術,改善了數據傳輸的瓶頸問題
該系統(tǒng)主要由USB模塊、FPGA模塊和FIFO數據緩存模塊3部分組成。整體的結構如圖1所示,其中FPGA作為主控單元,一方面通過EZ—USB接受上位機傳送過來的各種命令,并通過通信協(xié)議判斷命令類型,然后將命令轉發(fā)給數據存儲裝置,以啟動對數據的讀取或擦除工作;另一方面讀出數據存儲裝置中的數據并放入FIFO緩存,最后通過USB總線回傳給上位機以進行下一步處理。
圖1 系統(tǒng)結構框圖
該系統(tǒng)的USB模塊主要采用了CYPRESS公司的EZ—USB FX2系列芯片CY7C68013,該芯片是USB2.0的完整解決方案,并向下完全兼容USB1.1協(xié)議。它通過在單片上集成USB2.0收發(fā)器、SIE(串行接口引擎)、增強的8051微控制器和可編程的外圍接口,使其無需外加芯片即可完成高速USB傳輸,從而性價比高[2]。
CY7C68013可工作在3種接口模式下:端口模式、GPIF主控模式和從FIFO模式。由于GPIF模式主要由波形描述符來控制CY7C68013工作,其功能的實現通過對波形描述符編程即可,可大大簡化外外圍硬件電路,因此本設計選用了GPIF模式[3-4]。GPIF的開發(fā)過程如圖2所示,在這種模式下,FX2的FIFO由內部GPIF控制,CPU不直接參與數據的傳輸過程,可大大提高數據傳輸速率。端口B和D作為與FX2的4個端點FIFO連接的16 bit數據接口,由可編程的波形描述符來響應FIFO的狀態(tài)標志,CTL信號可作為驅動時序的信號,通過采樣RDY信號判斷外部過程。
圖2 GPIF模式開發(fā)流程圖
本設計中68013A單片機與FPGA相連的數據線為8 bit,即FD0~FD7;采用CTL0作為模塊外部FIFO的讀控制信號;FIFO非空信號作為單片機的讀數狀態(tài)判斷信號,當FIFO非空信號有效時,系統(tǒng)進行讀數操作;另外有3條指令信號線PA0、PA1和PA2,當上位機發(fā)出讀數或擦除指令到單片機后,單片機再把該指令傳給FPGA,FPGA將這些指令編輯成不同的代碼下發(fā)給下行記錄設備,再由彈載測試儀將接收到的這些代碼解碼出來以辨別是何種指令,進而控制彈載測試儀的讀數或擦除操作。其中圖3為本設計中USB芯片與外圍電路的硬件連接示意圖。
圖3 USB與外圍電路連接原理圖
固件程序是USB傳輸的關鍵部分,其主要功能是處理整個系統(tǒng)的通信過程和事物處理。本設計為了減少外圍電路的復雜程度而采用了GPIF模式,因此大多數功能都通過GPIF波形設計來實現[5-7]。下面以USB與備用接口讀數為例來說明固件的設計與現實。
如圖4所示:本設計中GPIF波形定義了S0~S2共三個狀態(tài)和一個IDLE狀態(tài)S7。S0狀態(tài)為非判決點,在此停留1個IFCLK周期(即20.83ns),此時rd為低,將FPGA內部FIFO中的數據讀出置于數據線上,S1繼續(xù)這個過程;S2為判決點,此時usbrd輸出為高,采樣FIFO數據線并儲存數據線上的數據以進行后續(xù)數據的打包,并且采樣內部狀態(tài)信號INTRDY(該信號是8051的“ready”信號),若該信號非真則跳到S0,若為真則跳到空閑態(tài)IDLE狀態(tài),結束GPIF傳輸。在這個過程中,rd充當了讀外部數據的時鐘信號。當GPIF波形設計好后,由GPIF設計工具將設計好的波形導出成gpif.c添加到固件程序中即可使用。
圖4 GPIF波形設計
GPIF波形階段只是將外部數據讀入了68013的相應寄存器中,而往上位機的傳送還需要聯合固件中其他程序來實現[4]。當USB固件檢測到上位機發(fā)出的讀命令時,開始判斷外部FIFO是否為非空,若非空則開始將外部數據讀入FX2相應的寄存器中進而傳給上位機以進行后續(xù)處理。整個過程在TD_Poll()函數的反復調度下反復執(zhí)行,從而將外部數據讀出。以下是實現外設功能的部分程序代碼:
該模塊主要包括PFGA芯片XC2S100E及其程序配置芯片XCFO1S、數據緩存IDT7206及與彈載測試儀的連接接口。X2S100E是XILINX公司Spartan-IIE系列芯片,該芯片具有1.8 V的內核電壓,因此功耗更低,并且可以提供等多的I/O口和邏輯門,使其具有更優(yōu)越的性能[8]。
整個系統(tǒng)由USB接口提供+5 V電壓,并由電源轉換芯片TPS70351將該電壓轉換為FPGA所需的3.3 V和1.8 V電壓。系統(tǒng)中FPGA的主要功能是負責接收與執(zhí)行通過USB傳送過來的命令,并且按要求對彈載測試儀進行控制,將采集到的數據讀出來暫存入FIFO中,之后再將數據傳給USB模塊,最后通過USB總線將數據傳給上位機以供分析。其中圖5為本設計中FPGA芯片與外圍電路的硬件連接示意圖。
圖5 FPGA與外圍電路連接原理圖
圖6是從備用接口讀數的仿真圖:可以看到,將讀數命令控制字30H寫入f_data后,等待rb_delay自減到0,此時判斷rb信號是否為高,若為高則檢測讀數請求(send_request)是否有效(低有效),若有效則在讀信號(rd)的上升沿將數據讀出。
圖6 讀數仿真圖
為驗證該系統(tǒng)的可行性及實用性,對該系統(tǒng)進行了多次的測試。圖7為在實驗室條件下,對該系統(tǒng)輸入-3 V~+3 V的矩形波采集到的圖形,可看出該系統(tǒng)可準確無誤的還原采集到的波形。圖8為在某次實際應用中利用該通訊接口采集到的某炮彈發(fā)射過程中膛內初始過載信號,從圖中可以看出,過載值可達-5 876 gn,脈寬22 ms。膛內過載在1 196 ms~1 218 ms時達到峰值階段,在1 202 ms附近達到最大值。驗證了該接口可以有效測得實驗數據,為摸清彈藥飛行特性參數做出了突出的貢獻。
圖7 實驗室條件下采集到的波形
圖8 炮彈膛內初始過載信號
本系統(tǒng)利用EZ-USB FX2與FPGA實現了彈載測試儀的通訊接口的設計,利用USB芯片的可編程控制接口很好的解決了數據傳輸的瓶頸問題,經實際應用驗證該裝置具有很好的穩(wěn)定,并且具有一定的彈性,易于根據需要靈活組建,具有一定的實際意義。
[1]基于USB和GPIF的大規(guī)模數據采集系統(tǒng)[J].微型機與應用,2003,11:16-18.
[2]Cypress Corp.EZ-USB FX2 Technical Reference Manual[S]. USA:Cypress Corp,2002
[3]張穎,林偉.通用存儲裝置設計[J].電子器件,2012,35(3): 304-308.
[4]薛圓圓.USB應用開發(fā)技術大全[M].北京:人民郵電出版社,2007.
[5]嚴石,楊定禮,張宇林.基于USB2.0的數據采集系統(tǒng)設計[J].電子器件,2008,31(6):1959-1962.
[6]王靜紅,劉教民,于富強,等.采用CY7C68013芯片的系統(tǒng)固件程序設計[J].河北師范大學學報/自然科學版,2008,32(2): 169-173.
[7]基于EZ-USB FX2的固件程序設計[J].電子元器件應用,2007,9(1):42-44.
[8]錢峰.EZ-USB FX2單片機原理、編程及應用[M].北京:北京航空航天大學出版社,2006.
基于EZ-USB FX2的彈載測試儀通訊接口的設計*
王春水,張斌珍*,龔 珊
The Design of Communication Interface of Projectile Load Instrument Based on EZ-USBFX2LP*
WANG Chunshui,ZHANG Binzhen*,GONG Shan
(Key Laboratory of Instrumentation Science and Dynamic Measurement(North University of China),Ministry of Education,Taiyuan030051,China)
A communication interface of projectile load instrument based on the technology of FPGA and USB is designed.It focused on the the characteristics of the EZ-USB FX2 series chip CY7C68013 and the design of the firmware and FPGAmodule.The data transmission rate and hardwarecircuit of the system are greatly improved by using the GPIF transfermode.Finally,the interface is verified by experimentwith high practicability.
interface;USB;FPGA;firmware;GPIF
10.3969/j.issn.1005-9490.2013.06.036
TP23 文獻標識碼:A 文章編號:1005-9490(2013)06-0915-04
項目來源:國家自然科學基金項目(51075374)
2013-03-18修改日期:2013-04-11
EEACC:7210
王春水(1988-),男,河北保定人,現于中北大學電子科學與技術系攻讀碩士研究生,主要研究方向為光學MEMS、微流檢測、射頻MEMS器件;
龔 珊(1989-),女,湖北荊門人,碩士研究生,研究方向為微納傳感與執(zhí)行器件,gongshan89@163.com。
張斌珍(1974-),男,山西嵐縣人,教授,主要研究方向為微納機電系統(tǒng)和武器系統(tǒng)惡劣環(huán)境下的動態(tài)測試技術。在此領域內先后開展微納器件和系統(tǒng)的設計制造,微弱信號檢測與處理,以及惡劣環(huán)境下存儲測試理論與技術的研究;