《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于FPGA與ARM的遙測數據網絡化采集[圖]
基于FPGA與ARM的遙測數據網絡化采集[圖]
來源:《現代電子技術》2011年第16期
王冬冬 李宇 張保祥 中國空空導彈研究院
摘要: 基于FPGA與ARM的遙測數據網絡化采集[圖],摘要:現有的遙測接收機為PCI接口,需安裝在工控機上使用,為實現設備小型化、便攜化,設計實現了小型網
Abstract:
Key words :
</a>摘要:現有的遙測接收機為PCI接口,需安裝在工控機上使用,為實現設備小型化、便攜化,設計實現了小型網絡接口遙測解調模塊,可配合帶有網口的計算機使用。采用FPGA" title="FPGA">FPGA" title="FPGA">FPGA" title="FPGA">FPGA進行遙測數據幀同步與IRIG—B時碼解調,將接收到的遙測數據添加時碼后發送給ARM處理器中的Linux系統,并編寫Linux 2.6下的FPGA驅動程序,實現FPGA數據的讀取,然后通過網卡以TCP/IP格式發給主機,主機實現數據存儲與顯示。

以太網接口通信速度快,傳輸可靠,使用和配置方便,對于20 Mb/s以下的碼速率,100 Mb/s的網卡可以進行不丟包轉發,采用TCP包格式還可使設備小型化,便于數據的轉發,因此有必要擴展設備的以太網功能。

1 整體模塊設計

1.1 系統設計

系統設計框圖如圖1所示。其中,采編器或接收機解調輸出的PCM信號及時鐘輸入到FPGA中進行幀同步,IRIG—B碼信息也送到FPGA中進行解調,得到時間信息。數據與時間一起存入SRAM乒乓緩沖區中,達到一定大小后,FPGA向ARM處理器發器中斷,ARM中運行的Linux系統,將數據取走,進行TCP/IP打包,發送給接收計算機。

基于FPGA與ARM的遙測數據<a class=網絡化采集" height="222" src="http://files.chinaaet.com/images/20111118/384766c4-6d75-4cda-a513-09d019d1e21b.jpg" width="244" />

在設備開始工作前,需要在計算機端進行參數設置,計算機TCP/IP包將參數發送給ARM處理器,由ARM處理器轉發給FPGA。幀同步器的設計中,碼速率為100b/s~10Mb/s,幀長為4~4096Word,幀同步碼組為4~32,ARM網卡為100Mb/s。

1.2 硬件實現

PCB采用6層結構,相鄰布線層,水平垂直交叉,電路層與電源層單獨分開,提供良好的電磁兼容特性。

1.2.1 FPGA

FPGA選擇EP1C12,為實現乒乓緩沖結構,采用SRAM為IS61LV25616。輸入信號使用SMA線纜連接,在傳輸過程中會引入衰減,信號輸入輸出易出現阻抗不匹配的情況,選用AD8556構成射隨器,對輸入信號進行匹配,同時也增大模擬源的輸出能力。

1.2.2 ARM

在此采用S3C2440,內核為ARM920T,最高頻率為400MHz,帶MMU支持操作系統。內存采用2×32MB的SDRAM,存儲采用128MB NAND FLASH,網卡采用DM9000A。

1.2.3 ARM與FPGA的接口連接

這里采用總線接口,將FPGA作為一個存儲設備掛在ARM的存儲器總線上,如圖2所示。

基于FPGA與ARM的遙測數據網絡化采集

FPGA在ARM中起始地址為0x18000000,以4B對齊,占用0x80個地址,地址范圍為0x18000000~Ox1800007C,中斷為EINT0。

在FPGA內部采用讀/寫指針來模擬FIFO,用一個地址來讀取FPGA數據,其余地址用于配置幀同步器與模擬源的參數。

2 幀同步與B碼解調

FPGA完成PCM數據的幀同步和解調B碼,寫入到乒乓SRAM緩沖區中,實現如圖3所示。

基于FPGA與ARM的遙測數據網絡化采集

2.1 幀同步模塊

幀同步器根據幀同步碼組的相關性和周期性,經過相關運算將同步碼從PCM串行流中識別出來,原理框圖如圖4所示。

基于FPGA與ARM的遙測數據網絡化采集

PCM數據按時鐘進行串/并轉換,與本地幀同步碼進行同或運算后再與上屏蔽位,由全加網絡將相關運算結果按位相加統計結果中1的個數,大于門限值則表示可能接收到了幀同步碼。

為避免虛警和漏檢,使幀同步器穩定可靠工作,采用搜索、校核、鎖定三態邏輯。

系統開始時處于搜索態,符合相關器輸出,由搜索態轉入校核態。在預期檢測窗口內沒有幀碼,從校核返回到搜索態。連續通過校核數α,進入鎖定態。為避免幀同步碼的漏檢,連續漏檢超過保護幀數β,幀同步才返回搜索態,否則保持在鎖定態,幀脈沖由本地產生。

2.2 IRIG—B碼解調

IRIG時間序列碼是一種串行碼,共有3種碼元,如圖5所示。

基于FPGA與ARM的遙測數據網絡化采集

P碼元是位置碼元,連續2個P碼為一幀的開始,第1個P碼元定義為P0,第2個P碼元為秒脈沖pps,上升沿為該秒的準時刻,時間信息以BCD碼依次分布在其后的碼元中。解調時先進行pps的提取,再進行秒、分、時、天的信息提取,其流程如圖6所示。

基于FPGA與ARM的遙測數據網絡化采集

時鐘頻率為1MHz,用計數器對輸入信號的脈寬進行計數。8ms,5ms,2ms脈寬計數為8000,5000,2000。輸入B碼的脈寬會混有干擾,晶振時鐘也存在一定的誤差,計數器的計時判別應浮動一個范圍,設置門限為脈寬的85%~115%,當滿足一定范圍的數值時,分別輸出P碼,0碼,1碼信號。

FPGA中的時碼產生“天:時:分:秒:毫秒:微秒”信息。解調出B碼時,FPGA更新內部時間,B碼中不含毫秒與微秒信息,由FPGA根據秒脈沖信息的準時刻來生成。

3 FPGA驅動程序開發

在Linux中,所有的硬件設備都像常規文件一樣進行打開、關閉和讀/寫。把FPGA當作字符設備進行設計,驅動由設備加載與卸載,以及文件操作file_operation結構體中成員函數組成。

3.1 加載與卸栽設備驅動

FPGA設備驅動程序初始化流程為動態獲得主設備號、字符設備注冊和申請中斷;卸載流程為注銷設備,釋放設備編號。

定義一個設備結構體來表示FPGA,如下:   

基于FPGA與ARM的遙測數據網絡化采集

當用戶程序讀FPGA設備時,數據還未準備好,此時驅動程序應該阻塞該進程,將其置入睡眠狀態直到條件滿足。此時需要初始化一個等待隊列頭,對讀進程的休眠和喚醒時使用:

基于FPGA與ARM的遙測數據網絡化采集

在卸載函數中,刪除一個cdev,完成字符設備的注銷,然后釋放設備編號:

基于FPGA與ARM的遙測數據網絡化采集

3.2 文件接口操作

Linux為所有的設備文件都提供了統一的操作函數,FPGA設備驅動。file_operations包含打開函fpga_open、讀函數fpga_read、設置參數函數fpga_ioctl和關閉設備函數fpga_release。

3.2.1 打開與關閉FPGA設備

在打開設備與關閉設備時會調用open函數與release函數,在open函數中,要對設備進行I/O內存資源映射及中斷申請。

設備驅動程序中,需通過內存管理單元MMU將設備的虛擬地址映射到物理地址。根據FPGA在S3C2440中的物理地址,定義如下宏:

基于FPGA與ARM的遙測數據網絡化采集

使用ioremap()對FPGA的I/O內存資源進行映射,把物理內存地址映射為一個內核指針:

基于FPGA與ARM的遙測數據網絡化采集

數據交換采用中斷,需先設置硬件中斷方式,然后向系統注冊中斷函數,實現如下:

基于FPGA與ARM的遙測數據網絡化采集

FPGA連接在ARM的EINT0上,isr_fpga為中斷處理函數指針。當關閉FPGA設備時,需釋放I/O內存,釋放中斷:

基于FPGA與ARM的遙測數據網絡化采集

3.2.2 驅動程序控制接口Ioctl

Ioctl用來設置FPGA中幀同步器和模擬源的參數,部分設置命令如表1所示。

基于FPGA與ARM的遙測數據網絡化采集

在此,采用統一的命令碼方式,包含幻數、序數、傳輸方向、數據長度,使用宏_IO(),_IOR(),_IOW()和IOWR()輔助生成,如命令0設置如下:

基于FPGA與ARM的遙測數據網絡化采集

在Ioctl中,采用switeh(cmd)來實現對FPGA參數的設置及FPGA狀態的讀取。

3.2.3 中斷函數及讀函數

當FPGA產生中斷時,根據緩沖區的大小,中斷函數循環對FPGA映射后的地址讀取數據。ARM與FPGA接口為16位,使用inw讀取,數據存放在驅動程序的緩沖區中:

基于FPGA與ARM的遙測數據網絡化采集

應用程序讀取數據時,調用read函數,參數buffer為用戶空間緩沖區的指針,利用copy_to_user函數將數據從內核空間拷貝到用戶空間,當設備中暫時沒有數據時,讀進程應當被休眠:

基于FPGA與ARM的遙測數據網絡化采集

flag為一個標志位,當flag被中斷函數設置為1時表示設備中有數據,此時讀進程可被換醒。

3.2.4 用戶程序及測試

設備驅動實現后,需編寫相應的用戶程序來進行測試驅動程序和實現數據的網絡轉發。在用戶程序中,讀/寫FPGA設備使用與普通文件一樣的操作函數。移植Linux時配置好網卡的地址,然后使用Socket編程實現數據的TCP/IP轉發,用遙測軟件接收到的數據測試如圖7所示。

基于FPGA與ARM的遙測數據網絡化采集

通過測試可以看到,同步碼FDB18450被正確識別,IRIG-B解碼為當前時間。

4 結語

在此,基于FPGA與ARM進行遙測數據的幀同步遙測數據的網絡轉發,充分地利用了FPGA與ARM各自的特點,它可使FPGA+ARM在數據接收處理中得到廣泛應用。

此內容為AET網站原創,未經授權禁止轉載。

相關內容


亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久久国产精品一区二区三区| 免费在线日韩av| 欧美在线欧美在线| 亚洲欧美日韩第一区| 一区二区福利| 一本色道久久综合亚洲精品不卡 | 国产欧美欧美| 国产精品久久久久一区| 欧美三级不卡| 欧美吻胸吃奶大尺度电影| 欧美日韩一区二区免费视频| 欧美日韩国产一级片| 欧美日韩成人综合在线一区二区| 欧美 日韩 国产一区二区在线视频| 久久一二三区| 免费成人高清视频| 欧美第十八页| 欧美日韩国产小视频| 欧美日韩国产二区| 欧美日韩国产综合一区二区| 欧美日韩1区| 国产精品大全| 国产精品视频第一区| 国产精品网曝门| 国产综合色产在线精品| 黄色成人在线免费| 亚洲国产成人精品女人久久久| 亚洲国产精品热久久| 亚洲七七久久综合桃花剧情介绍| 最近中文字幕mv在线一区二区三区四区| 亚洲电影毛片| 亚洲日本中文字幕区| 一区二区三区精品视频| 亚洲宅男天堂在线观看无病毒| 亚洲一区中文字幕在线观看| 亚洲欧美日韩精品久久亚洲区| 欧美伊人精品成人久久综合97| 亚洲高清av| 亚洲精品视频二区| 亚洲一区区二区| 久久av在线看| 免费观看久久久4p| 欧美日韩精品不卡| 国产精品热久久久久夜色精品三区| 国产乱码精品1区2区3区| 黄色成人在线免费| 日韩天堂在线观看| 欧美一级黄色网| 亚洲精品在线免费观看视频| 亚洲婷婷综合色高清在线| 欧美一级久久久| 欧美凹凸一区二区三区视频| 欧美日韩在线看| 国产日韩欧美在线一区| 亚洲夫妻自拍| 亚洲夜晚福利在线观看| 久久国产精品久久国产精品| 99视频一区二区| 久久精品道一区二区三区| 欧美成人嫩草网站| 国产精品区一区二区三区| 在线观看一区欧美| 亚洲视频欧美视频| 亚洲国产另类精品专区| 亚洲欧美中文日韩在线| 欧美成人一区二区三区在线观看| 国产精品久久久久久久久久妞妞 | 国产精品白丝av嫩草影院| 国产主播一区二区三区| 日韩午夜电影av| 欧美一区二区三区男人的天堂| 日韩亚洲在线| 久久精品国产清高在天天线| 欧美美女操人视频| 狠狠88综合久久久久综合网| 99在线观看免费视频精品观看| 久久精品国产精品亚洲综合 | 亚洲女人天堂av| 免费观看久久久4p| 国产欧美日韩精品专区| 日韩亚洲欧美在线观看| 亚洲第一精品夜夜躁人人爽| 亚洲一区二区三区高清| 欧美va天堂va视频va在线| 国产日韩三区| 正在播放欧美视频| 日韩午夜剧场| 美女任你摸久久| 国产日产亚洲精品| 一区二区三区精品| 一本色道久久88精品综合| 久久亚洲欧美| 国产一区二区三区视频在线观看| 一区二区三区国产精品| av不卡免费看| 欧美二区在线观看| 激情久久中文字幕| 亚洲欧美成人一区二区在线电影 | 亚洲自拍偷拍福利| 欧美黄色片免费观看| 伊人狠狠色j香婷婷综合| 亚洲欧美一区二区三区久久| 亚洲综合日本| 欧美私人啪啪vps| 亚洲理伦在线| 亚洲精品国产系列| 免费欧美电影| 在线不卡亚洲| 亚洲高清精品中出| 久久露脸国产精品| 国产一区二区三区四区老人| 性欧美18~19sex高清播放| 午夜在线观看免费一区| 国产精品劲爆视频| 亚洲一级片在线看| 性18欧美另类| 国产日韩在线播放| 欧美亚洲综合久久| 久久久久久久久久久久久久一区| 国产日产欧美a一级在线| 亚洲欧美精品| 久久国产视频网站| 国产一区二区高清视频| 欧美一区网站| 久久夜色撩人精品| 在线看成人片| 亚洲美女区一区| 欧美日本国产精品| 99精品国产在热久久婷婷| 中国成人黄色视屏| 欧美性事在线| 亚洲视频一区在线| 亚洲欧美在线高清| 国产精品亚发布| 亚洲欧美另类中文字幕| 欧美中文日韩| 黄色欧美日韩| 日韩视频免费大全中文字幕| 欧美激情视频在线播放| 91久久精品日日躁夜夜躁国产| 99国产精品| 国产精品国产a| 西瓜成人精品人成网站| 久久久精品视频成人| 亚洲第一黄色| av成人黄色| 国产精品视频第一区| 欧美一级免费视频| 欧美a级理论片| 99精品视频免费全部在线| 午夜伦欧美伦电影理论片| 国产综合网站| 99热免费精品在线观看| 国产精品久久久久久久久婷婷| 亚洲欧美日韩一区| 噜噜噜久久亚洲精品国产品小说| 亚洲精品黄网在线观看| 亚洲一区二区三区乱码aⅴ蜜桃女| 国产精品永久入口久久久| 欧美一区二区三区免费看| 欧美成人一品| 亚洲一区二区不卡免费| 久久久最新网址| 日韩视频中文| 久久久无码精品亚洲日韩按摩| 91久久精品国产91久久| 亚洲欧美日韩一区二区三区在线| 国内精品久久久久影院优| 亚洲美女福利视频网站| 国产精品一区二区黑丝| 亚洲级视频在线观看免费1级| 欧美天堂在线观看| 久久激情视频| 欧美日韩在线一区二区| 欧美伊久线香蕉线新在线| 欧美精彩视频一区二区三区| 亚洲在线不卡| 欧美精品一区二区三区高清aⅴ| 亚洲一区在线观看免费观看电影高清 | 猫咪成人在线观看| 中文在线不卡视频| 麻豆精品在线播放| 亚洲一区区二区| 欧美激情第1页| 欧美在线一二三四区| 欧美三级在线| 91久久久一线二线三线品牌| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ入口 | 亚洲香蕉视频| 欧美h视频在线| 亚洲综合色视频| 欧美日韩国产大片| 久久精品国产亚洲精品| 国产精品草草| 亚洲精品亚洲人成人网| 国产在线视频欧美一区二区三区| 亚洲视频免费在线| 亚洲韩国精品一区| 久久亚洲国产成人| 亚洲欧美一区二区视频|