999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于USB虛擬技術的FPGA遠程片內調試方法實現(xiàn)

2016-01-23 18:53:27翟剛毅王靜嬌姜小祥中國船舶重工集團公司第七二四研究所南京211153
雷達與對抗 2015年2期

翟剛毅,王靜嬌,姜小祥,楊 陽(中國船舶重工集團公司第七二四研究所,南京211153)

?

基于USB虛擬技術的FPGA遠程片內調試方法實現(xiàn)

翟剛毅,王靜嬌,姜小祥,楊陽
(中國船舶重工集團公司第七二四研究所,南京211153)

摘要:為了方便FPGA調試,針對Xilinx公司的FPGA提出了一種遠程片內調試方法。該方法主要分調試計算機端和測試板卡端兩部?分的實現(xiàn)。調試計算機端開發(fā)上層應用軟件,創(chuàng)建虛擬USB設備;測試板卡端以ARM為核心,具有網(wǎng)絡和USB主機功能,并完成USB到JTAG轉換,最終實現(xiàn)調試計算機上通過網(wǎng)絡進行遠程調試。

關鍵詞:虛擬USB設備; FPGA遠程調試; ARM; USB主機;網(wǎng)絡傳輸

0 引言

雷達研制中大量使用FPGA進行預處理,F(xiàn)PGA系統(tǒng)在使用和調試過程中需要通過USB電纜進行bit流下載、chipscope調試等。而下載電纜傳輸距離有限,在某些狹小空間和無人值守場所急需實現(xiàn)FPGA的遠程加載和調試。

本文基于USB虛擬技術針對Xilinx公司的FPGA開發(fā)了一種遠程調試方法,利用網(wǎng)絡接口方便、傳輸距離遠的優(yōu)點,在FPGA板卡上嵌入相應電路,直接通過FPGA板卡網(wǎng)口連接到調試計算機實現(xiàn)遠程加載、調試功能。

1 總體設計

如圖1所示,本系統(tǒng)主要包括調試計算機和測試板卡兩部分。調試計算機上開發(fā)的應用軟件通過網(wǎng)絡連接板卡,實現(xiàn)FPGA的遠程調試。上層應用軟件基于MFC編寫,并內嵌基于DSF架構的虛擬USB設備。板卡電路核心ARM處理器采用TI公司的TM4C129XNCZAD芯片,USB轉JTAG電路采用FTDI公司的FT232芯片。

ARM處理器為每一塊板卡分配唯一的IP地址,調試計算機端的應用軟件通過IP地址來選擇不同的板卡。板卡上電后,ARM對USB設備進行枚舉,USB設備信息通過網(wǎng)絡上傳到調試計算機。應用軟件使調試計算機端的Xilinx軟件(如impact和chipscope)與板卡無縫連接,從而進行FPGA的加載、調試,就像本地連接了FPGA下載電纜。

圖1 系統(tǒng)總體框架

2 調試計算機端軟件開發(fā)

調試計算機端主要開發(fā)上層應用軟件,其內嵌虛擬USB設備。在開發(fā)的上層應用軟件中,用戶可以增加或刪除相應板卡的IP地址,工作時選擇某個IP地址的板卡,與其建立連接,并創(chuàng)建下載電纜的虛擬USB設備,其在操作系統(tǒng)層面上與實際設備沒有區(qū)別,可以無縫地和Xilinx軟件交互。

本文的虛擬設備是基于DSF(Device Simulation Framework)開發(fā)的。DSF提供了通過軟件編程來虛擬USB設備的架構[1]。DSF編程環(huán)境包括一套完成USB虛擬設備中各種組件的COM對象、運行服務和USB2.0 EHCI虛擬控制器,具體架構如圖2所示。微軟已經(jīng)提供了可用的虛擬USB控制器,本文主要開發(fā)了COM組件。COM組件分為服務器和客戶端兩部分:服務器即一個描述設備功能的動態(tài)鏈接庫,客戶端用于控制虛擬設備行為。

圖2 DSF架構

2.1 COM動態(tài)鏈接庫開發(fā)

COM動態(tài)鏈接庫實際是一個COM實體類(如CJTAGDevice)的實現(xiàn),USB設備虛擬器主要使用DSF架構提供的SoftUSBDevice COM組件直接和控制器通信,并處理標準USB設備請求和其他事件等。

圖3 SoftUSB對象結構圖

SoftUSBDevice對象結構如圖3所示,其下屬包含了USB設備的配置信息,其中SoftUSBConfiguration、SoftUSBInterface、SoftUSBEndpoint對象分別包含了配置描述符、接口描述符、端點描述符特性。SoftUSBEndpoint同時控制USB數(shù)據(jù)的輸入和輸出,本文設置了一個IN端點和一個OUT端點。端點可以使用事件觸發(fā)(event-driven)或輪詢(polled data)模式傳輸,考慮到傳輸數(shù)據(jù)量較大,速度要盡量快,所以選用事件觸發(fā)模式。開始事件處理前,在各個端點的ISoftUSBEndpointEvents連接點上分別安裝事件池,其內部定義了數(shù)據(jù)傳輸?shù)氖录?主機向設備傳輸數(shù)據(jù)時觸發(fā)OnWriteTransfer事件,設備向主機發(fā)送數(shù)據(jù)時觸發(fā)On-ReadTransfer事件,標準/廠商請求觸發(fā)OnDeviceRequest事件。

所有事件都由主機先發(fā)起,通知設備,設備再對其作出響應。在事件響應函數(shù)中分別添加相應的處理代碼,最后返回ACK、NAK、ERR、STALL狀態(tài)信息,告知主機此次傳輸是否成功。在設備枚舉階段會觸發(fā)OnDeviceRequest事件,向ARM端發(fā)送標準/廠商請求命令,ARM和實際物理設備通信,從而獲取設備信息并反饋給電腦端。枚舉成功后,impact/chipscope軟件調用電腦端的設備驅動,由虛擬控制器向設備發(fā)出讀/寫命令,觸發(fā)數(shù)據(jù)傳輸事件,實際的數(shù)據(jù)傳輸由底層ARM端實現(xiàn)。

2.2 COM控制腳本開發(fā)

COM控制腳本創(chuàng)建虛擬設備對象實例,調用動態(tài)鏈接庫中的函數(shù),發(fā)出設備插拔等各種控制命令[2]??刂颇_本可以有多種實現(xiàn)方式,最早使用Wscript的腳本語言,考慮到在應用軟件中的內嵌以及界面的美觀,改用C + +語言,具體啟動流程為:創(chuàng)建DSF根設備對象?檢測虛擬控制器是否存在?創(chuàng)建虛擬USB設備對象?從USB根hub中獲取一個端口?將新創(chuàng)建的虛擬USB設備對象插入USB根hub中?開始事件處理。

3 基于ARM的測試板卡端開發(fā)

測試板卡的核心是TI公司的TM4C129XNCZAD ARM處理器,連接USB轉JTAG的電路。圖4為ARM的外圍電路框圖,圖5為測試板卡實物圖。TM4C129XNCZAD基于ARM Cortex-M4 MCU,是業(yè)界首批具有以太網(wǎng)MAC + PHY的ARM Cortex-M4,支持10個I2C端口、2個12位ADC、2個正交編碼器輸入、3個片上比較器、外部外設接口以及高級脈寬調制輸出[3],其豐富的外設使其在完成本系統(tǒng)設計外仍能用于板卡上其他輔助功能(故檢、軟件加載等)。

圖4 ARM外設框圖

圖5 硬件實物圖

ARM處理器上移植了TI公司面向MCU平臺、基于搶占式多線程內核的完整實時操作系統(tǒng)RTOS,其組件包括了普及型SYS/BIOS實時內核,網(wǎng)絡開發(fā)套件NDK TCP/IP協(xié)議棧,USB、EMAC、MMC/SD主機及器件協(xié)議棧以及類驅動器等?;谠揟I-RTOS操作系統(tǒng)設計開發(fā)了多線程下的網(wǎng)絡、USB傳輸通信。

在系統(tǒng)中FPGA下載器為USB設備,ARM作為USB主機,需要進行ARM的USB主機開發(fā)。

上電后ARM首先進行USB驅動初始化,將其配置為USB Host CDC類,即主機類型,然后周期性地輪詢監(jiān)聽USB設備的狀態(tài)。當有新設備連接時,通過中斷傳輸通知主機,然后調用枚舉驅動對USB設備進行枚舉。具體枚舉過程如圖6所示。

圖6 USB枚舉流程

枚舉成功后,一旦接收到USB傳輸命令即開始數(shù)據(jù)傳輸。USB有控制傳輸、同步傳輸、中斷傳輸和批量傳輸[4]4種傳輸方式,這里主要涉及控制傳輸和批量傳輸。ARM通過解析網(wǎng)絡命令,從而區(qū)分不同的傳輸類型。具體網(wǎng)絡命令協(xié)議如圖7所示。

圖7 網(wǎng)絡數(shù)據(jù)協(xié)議

4 結束語

本文介紹了一種基于USB虛擬技術實現(xiàn)FPGA遠程調試的方法,主要包括調試計算機端的控制軟件

和虛擬USB設備的開發(fā),以及板卡上的ARM和USB 轉JTAG電路的設計,最后直接通過板卡上的網(wǎng)絡連接到電腦上,即可實現(xiàn)FPGA的加載和調試。

該方法只需利用FPGA板卡上的ARM處理器,并增加USB轉JTAG部分電路,具有成本低、占用空間小的特點,可以全面替代目前使用的FPGA下載電纜實現(xiàn)其功能,在方便調試的同時節(jié)約了開銷。目前該方法已經(jīng)應用到數(shù)字T/R組件中,大大方便了組件的調試工作,即將廣泛應用于雷達FPGA信號處理板卡。

參考文獻:

[1]張帆,史彩成,等.Windows驅動開發(fā)技術詳解[M].北京:電子工業(yè)出版社,2008.

[2]陳林虎.基于DSF架構的USB設備虛擬[J].計算機系統(tǒng)應用,2011(2),221-222.

[3]Texas Instruments Incorporated.Tiva TM4C129 XNCZAD Microcontroller Data Sheet.2013,58-61.

[4]Jan Axelson.USB開發(fā)大全[M].李鴻鵬,等譯.北京:人民郵電出版社,2011.

Realization of a FPGA remote on-chip debugging method based on USB virtual technology

ZHAI Gang-yi,WANG Jing-jiao,JIANG Xiao-xiang,YANG Yang
(No.724 Research Institute of CSIC,Nanjing 211153)

Abstract:A remote on-chip debugging method for the FPGA of Xilinx is proposed to facilitate the FPGA debugging.This method mainly consists of the PC and the test board.The high-level application software is developed on the PC with the USB virtual device created.The test board with the ARM as its core has the functions of the network and the USB host,and completes the USB-to-JTAG conversion.Finally,the remote debugging is realized via the Ethernet.

Keywords:USB virtual device; FPGA remote debugging; ARM; USB host; network transmission

作者簡介:翟剛毅(1978-),男,高級工程師,碩士,研究方向:雷達信息處理;王靜嬌(1990-),女,助理工程師,碩士,研究方向:雷達信息處理;姜小祥(1984-),男,工程師,碩士,研究方向:雷達信息處理;楊陽(1989-),男,助理工程師,碩士,研究方向:雷達信息處理。

收稿日期:2015-03-15;修回日期:2015-04-02

文章編號:1009-0401(2015)02-0042-03

文獻標志碼:A

中圖分類號:TP31

主站蜘蛛池模板: 欧美日韩成人| 国产浮力第一页永久地址| 熟女成人国产精品视频| 91热爆在线| 国产91av在线| 欧美成人精品一区二区| 亚洲品质国产精品无码| 国产特一级毛片| 四虎亚洲精品| 色亚洲成人| 国产二级毛片| 亚洲人成人无码www| 免费人成又黄又爽的视频网站| 日本三级欧美三级| 国产在线无码一区二区三区| 97视频在线观看免费视频| 日韩精品少妇无码受不了| 99热这里只有免费国产精品| 欧美一级在线播放| 特级做a爰片毛片免费69| 亚洲精品第五页| 国产精品爽爽va在线无码观看 | 又猛又黄又爽无遮挡的视频网站| 一级高清毛片免费a级高清毛片| 亚洲无码高清视频在线观看| 视频国产精品丝袜第一页| 九九热在线视频| 亚洲精品成人福利在线电影| 日韩在线播放中文字幕| 一级毛片免费不卡在线| 91成人试看福利体验区| 国产在线91在线电影| 国产精品3p视频| 久久久亚洲色| 福利在线一区| 91极品美女高潮叫床在线观看| 女人爽到高潮免费视频大全| 亚洲人成电影在线播放| 激情亚洲天堂| 欧美精品亚洲精品日韩专区| 青青青国产免费线在| 色屁屁一区二区三区视频国产| 91无码人妻精品一区| 国产精品专区第1页| 波多野结衣久久精品| 日韩在线欧美在线| 国产精品理论片| 成人午夜免费观看| 国产综合欧美| 天天色综网| 久久午夜夜伦鲁鲁片不卡 | 亚洲欧美日本国产综合在线| 99热这里只有精品5| 亚洲日韩每日更新| 国产一级小视频| a级毛片毛片免费观看久潮| 91免费国产高清观看| 亚洲高清在线播放| 97久久免费视频| 亚洲第一极品精品无码| 午夜色综合| 中国精品久久| 亚洲国产第一区二区香蕉| 992Tv视频国产精品| 久久综合色视频| 色久综合在线| 欧洲成人在线观看| 亚洲开心婷婷中文字幕| 她的性爱视频| 国产在线视频二区| 91精品情国产情侣高潮对白蜜| 手机在线国产精品| 精品无码视频在线观看| 国产亚洲精品资源在线26u| 午夜少妇精品视频小电影| 亚洲国产日韩在线成人蜜芽| 国产精品蜜臀| 国产免费a级片| 久久影院一区二区h| 曰韩免费无码AV一区二区| 久久亚洲AⅤ无码精品午夜麻豆| 在线免费a视频|