《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > FPGA遠程配置在遠程實驗系統中的應用
FPGA遠程配置在遠程實驗系統中的應用
2016年微型機與應用第19期
馮建文,王春
杭州電子科技大學 計算機應用所,浙江 杭州 310018
摘要: 介紹了FPGA遠程實驗系統的組成、工作原理以及遠程配置,著重介紹FPGA遠程實驗系統的遠程配置的原理及具體實現,即在ARM微控制器的主導下,通過以太網實現FPGA配置數據的傳輸和下載,然后由ARM作為時序控制器,通過FPGA的從串(slave serial)配置方式,完成FPGA的遠程配置。在FPGA配置的同時,通過研究配置管腳輸出的波形,來驗證FPGA從串配置模式下的配置原理。
Abstract:
Key words :

  馮建文,王春

  (杭州電子科技大學 計算機應用所,浙江 杭州 310018)

       摘要:介紹了FPGA遠程實驗系統的組成、工作原理以及遠程配置,著重介紹FPGA遠程實驗系統的遠程配置的原理及具體實現,即在ARM微控制器的主導下,通過以太網實現FPGA配置數據的傳輸和下載,然后由ARM作為時序控制器,通過FPGA的從串(slave serial)配置方式,完成FPGA的遠程配置。在FPGA配置的同時,通過研究配置管腳輸出的波形,來驗證FPGA從串配置模式下的配置原理。

  關鍵詞:FPGA;遠程實驗系統;遠程配置;ARM

0引言

  近年來,使用可編程器件 FPGA/CPLD 和 VHDL 進行硬件設計發展快速,可編程邏輯器件逐漸取代了傳統通用的中、小規模集成電路而得到廣泛的應用,并且隨著系統的復雜程度越來越高,借助在電子系統的開發過程中具有重要作用的EDA(Electronic Design Automation)軟件,使得FPGA 成為數字邏輯電路設計、計算機組成原理、嵌入式系統等課程實驗教學的首選方式[1]。同時隨著嵌入式技術以及網絡技術的發展,遠程控制也變得越來越容易實現,把遠程控制技術引入到FPGA實驗系統中來,利用FPGA可重復編程的特點,實現FPGA實驗操作遠程執行,從而實現實驗設備的遠程共享和實驗設備的最大利用。

1FPGA工作原理及配置

  現場可編程門陣列(Field Programmable Gate Array,FPGA)是在PAL、GAL、CPLD等可編程器件的基礎上進一步發展的產物。它是作為專用集成電路(ASIC)領域中的一種半定制電路而出現的,既解決了定制電路的不足,又克服了原有可編程器件門電路數有限的缺點[2]。以硬件描述語言(Verilog或VHDL)所完成的電路設計,可以經過簡單的綜合與布局,快速燒錄至FPGA上進行測試,是現代 IC設計驗證的技術主流。

  FPGA利用小型查找表(16×1 RAM)來實現組合邏輯,每個查找表連接到一個D觸發器的輸入端,觸發器再來驅動其他邏輯電路或驅動I/O,由此構成了既可實現組合邏輯功能又可實現時序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。在FPGA正常工作時,配置數據存儲在SRAM單元中,這個SRAM單元也被稱為配置存儲器(Configuration RAM)。由于SRAM是易失性的存儲器,因此FPGA在上電之后,外部電路需要將配置數據重新載入到片內的配置RAM中[3]。FPGA的配置過程如下:外部電路將配置數據載入片內配置RAM中;片內配置RAM中的配置數據用于控制FPGA內部可編程的內部邏輯、內部寄存器和I/O寄存器初始化、I/O驅動器使能等。配置完成后,FPGA進入用戶模式。在掉電后,FPGA又恢復成白片,內部邏輯關系消失。

  FPGA一般有4種配置模式:從串模式(Slave Serial)、主串模式(Master Serial)、從并模式(Slave Parallel/SelectMap)以及邊界掃描模式(Boundary Scan)。配置模式的選擇一般由FPGA芯片上配置模式選擇引腳的輸入電平決定[4]。

  從串配置模式是指在進行配置時,由外部控制器主導同步時鐘輸入,將配置數據一位一位地加載進FPGA;主從配置模式則是在FPGA內部同步時鐘的作用下,將配置數據從外部存儲器按位串行加載到FPGA中;從并模式則是將配置數據多位數據一起并行輸入;而邊界掃描模式即JTAG配置模式,JTAG模式在開發調試階段使用。

2基于ARM的遠程實驗系統

  基于ARM的遠程實驗系統主要功能是實現遠程FPGA的實驗操作。用戶通過該系統,能夠在PC端登錄該實驗系統,進行預約FPGA實驗,同時能夠發送FPGA控制命令,并且能夠得到實驗結果信息。系統結構如圖1所示,主要分為3個模塊:PC客戶端、服務器端和ARMFPGA模塊。PC客戶端為用戶提供遠程實驗操作接口,服務器端則主要負責數據或命令的發送和接收,而ARMFPGA模塊則是進行控制和執行客戶端發來的命令,并向服務器返回實驗結果。

圖像 001.png

  2.1PC客戶端

  客戶端的主要作用是提供用戶操作接口,為用戶提供遠程操作ARM控制器的界面,方便用戶控制FPGA的配置及相關的FPGA實驗操作。客戶端的設計主要采用C/C++編程,采用Socket編程模式進行配置數據的發送和配置結果數據的返回。

  2.2服務器端

  服務器是基于FPGA實驗平臺的遠程實驗系統的核心,負責控制實驗系統的運行。它負責FPGA實驗平臺的調度管理,給實驗用戶(PC客戶端)分配空閑的實驗平臺。并且需要能連接上百個ARM客戶端和PC客戶端,作為兩種客戶端之間的信息中轉站。同時,服務器還負責管理數據庫,及時進行學生信息、FPGA平臺信息、預約記錄和實驗記錄等信息的記錄和更新。

  2.3ARM客戶端

  ARM客戶端作為系統整體結構中的重要組成部分,是與FPGA實驗平臺進行數據交互的唯一接口,它主要實現如下功能:

  (1)連接服務器,接收PC客戶端發來的指令信息,還需接收存儲FPGA配置執行文件。

  (2)解析指令,調用程序完成指令。

  (3)實現FPGA動態配置,把配置文件加載到FPGA運行。

  (4)連接PC客戶端,實時將FPGA相關引腳的信息發送到PC客戶端。

  (5)實現對FPGA實驗平臺上開關、按鍵的遠程控制操作。

3FPGA遠程配置的實現

  在本次實驗中,選用ARM9開發板+FPGA實驗板來完成FPGA遠程配置的具體實現。其中ARM控制器采用以ARM9為處理器的單片機開發板。ARM9開發板支持網絡接口連接,并且成功地移植了Linux 2.6.30內核操作系統以及相應的文件系統,為Socket網絡編程和ARM客戶端的軟件實現與執行提供了良好的Linux環境。FPGA則使用為計算機組成原理所設計的FPGA實驗板卡,該實驗板卡所用的FPGA芯片為Xilinx生產的Spartan-6系列芯片,并將其專用的配置接口引出,方便后續的實驗操作。

  3.1配置文件

  本設計所用的FPGA的配置數據格式為.bin格式,是由Xilinx的FPGA設計工具ISE軟件產生的FPGA配置數據的一種格式,也是進行Spartan-6系列芯片進行從串配置的配置數據格式。在PC客戶端可通過Socket編程配置引腳

圖像 002.png

  將文件由網絡傳送至ARM控制器客戶端。

  3.2配置電路

  Spartan-6配置引腳如圖2所示,各個引腳的功能如表1所示。表1FPGA配置引腳說明引腳名類型說明M[1:0]輸入模式選擇引腳,決定FPGA的配置模式CCLK輸入/輸出除JTAG配置模式外其他配置模式的同步時鐘源DIN輸入串行配置數據輸入引腳,同步于時鐘的上升沿DOUT輸出用于菊花鏈配置器件后面的器件配置數據的串行輸入DONE輸出高電平表示配置完成,低電平表示配置失敗INIT_B輸入/輸出在配置模式選擇完成前,拉低該引腳電平表示延遲配置;配置模式選擇完成后,該引腳的電平輸出表示配置有無發生CRC校驗錯誤:

  0=CRC error

  1=No CRC errorPROGRAM_B輸入低電平輸入使芯片復位

  3.3配置流程

  Spartan-6芯片的配置時序如圖3所示,先給PROGRAM_B引腳一個低電平信號,然后再恢復高電平,檢測INIT_B引腳電平信號,如果其電平信號也隨著PROGRAM_B而變化,則表明FPGA內部配置已經完成初始化,可以進行FPGA配置了。接下來在ARM輸入到FPGA的DCLK引腳的信號的同步下,按位加載配置數據,直到加載完配置數據。當檢測到DONE引腳信號變為高電平時,表明FPGA已經完成配置,進入到工作狀態了。其配置程序的流程圖如圖4所示。

圖像 003.png

圖像 004.png

4實驗結果分析

  實驗時,將FPGA的配置引腳DIN、CCLK、INIT_B、DONE、PROGRAM_B連接到ARM開發板的I/O引腳上,同時注意ARM開發板和FPGA實驗板卡要共地,將ARM開發板接上網線,供電并啟動后,通過PC客戶端進行配置文件的傳輸和加載,當配置完成后返回客戶端“config done!”則表示配置完成。實驗結果演示如圖5所示。

圖像 005.png

  為了得到配置過程中DIN引腳和CCLK引腳的數據,在程序中進行了配置數據輸出,并用示波器捕捉到這兩個引腳的輸出波形,如圖6所示。由圖可以看出,在一個配置循環中,ARM控制器是按字節進行位傳輸的,每個字節8位數據,在每輸入一個時鐘過程中,輸入一位配置數據,直至加載完所有配置數據,完成FPGA的配置。

圖像 006.png

5結論

  本設計中采用兩個獨立模塊的連接來實現總體功能,而且ARM控制器的一些操作命令是通過串口進行命令傳輸實現的。在接下來的FPGA遠程實驗系統中,將完全通過單網線進行ARM所有操作命令的實現,并且不僅能完成FPGA的遠程配置,還能完成FPGA的遠程實驗——遠端實、近端虛的遠程FPGA實驗,即在客戶端電腦上完成界面上開關、按鍵等操作,這些操作命令通過網線傳遞到ARM端,控制FPGA相關引腳的輸入高低電平,并返回相關引腳的輸出電平,在客戶端電腦上通過LED或數碼管來顯示該引腳電平的高低。

  參考文獻

  [1] 丁偉, 肖鐵軍. 基于FPGA的通用實驗平臺的設計與實現[J]. 無線通信技術, 2013, 22(4):38-39.

  [2] 劉笑嫘, 何廣平. FPGA芯片的配置與下載[J]. 科技信息, 2011(15):109-109.

  [3] 高闖, 吳利華, 芳羅,等. 一種用于FPGA的可配置存儲器設計[J]. 固體電子學研究與進展, 2016,36(1):67-67.

  [4] 陳曦, 沈佐峰. 一種可靠的FPGA動態配置方法及實現[J]. 通信技術, 2012, 45(3):105-107.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久综合久久综合九色| 国产精品美女在线| 亚洲欧美日韩国产综合在线| 99人久久精品视频最新地址| 亚洲精品久久久久久久久| 久久精品91久久久久久再现| 西西人体一区二区| 亚洲免费中文| 亚洲女与黑人做爰| 亚洲欧美精品中文字幕在线| 亚洲男人第一网站| 午夜视频在线观看一区二区| 亚洲免费网站| 亚洲人成在线播放网站岛国| 中文日韩在线视频| 亚洲国产精品悠悠久久琪琪| 在线不卡中文字幕| 精品不卡一区二区三区| 国产综合久久久久久鬼色| 国产亚洲毛片在线| 韩国av一区| 在线观看欧美激情| 亚洲经典自拍| 99精品欧美一区| 亚洲校园激情| 香蕉视频成人在线观看| 欧美一区二区三区日韩视频| 久久精品免费观看| 91久久久久久久久| 日韩亚洲欧美高清| 亚洲一区二区在线免费观看视频 | 久久精品国产第一区二区三区最新章节 | 在线性视频日韩欧美| 99精品国产在热久久下载| 一区二区三区国产精品| 亚洲愉拍自拍另类高清精品| 欧美影院视频| 麻豆精品视频| 欧美日本久久| 国产精品美女在线| 激情六月婷婷久久| 亚洲精品一二三| 亚洲一区二区三区四区视频| 久久精品女人| 一区二区三区导航| 欧美一区二区免费视频| 农村妇女精品| 国产精品久久久久久超碰| 国产日韩精品入口| 亚洲激情视频在线观看| 亚洲天堂偷拍| 久久精品国语| 亚洲一区二区三区视频播放| 久久久精品一区| 欧美国产精品久久| 国产精品亚洲不卡a| 在线观看福利一区| 在线一区欧美| 亚洲国产精品va| 亚洲一区二区成人在线观看| 久久国产色av| 欧美精品日韩综合在线| 国产精品视频免费观看www| 狠狠色狠狠色综合日日五| 99精品国产在热久久| 欧美在线啊v| 亚洲亚洲精品在线观看| 久久综合久久综合这里只有精品| 欧美日韩亚洲综合| 一区二区三区在线观看欧美| 一区二区三区视频免费在线观看| 久久精品日产第一区二区三区| 一区二区久久久久| 久久深夜福利| 国产精品久久午夜夜伦鲁鲁| 亚洲成人在线视频播放| 亚洲欧美日韩国产成人| 日韩一区二区精品葵司在线| 久久精品欧洲| 国产精品国产成人国产三级| 亚洲国产精品女人久久久| 亚洲欧美久久久| 亚洲婷婷在线| 欧美精品亚洲精品| 伊人成年综合电影网| 亚洲欧美在线另类| 亚洲一区二区三区色| 欧美激情女人20p| 韩国一区二区在线观看| 亚洲一区二区三区激情| 日韩午夜电影| 免费试看一区| 国产一区自拍视频| 亚洲一区二区在线免费观看视频| 日韩性生活视频| 你懂的成人av| 黄色一区二区在线| 午夜亚洲激情| 欧美亚洲在线| 国产精品美女| 在线一区日本视频| 国产精品99久久久久久人| 欧美福利一区二区| 影音先锋日韩精品| 欧美一区三区二区在线观看| 亚洲欧美日韩第一区| 欧美午夜精品久久久久久久| 亚洲精品欧美日韩专区| 亚洲欧洲一区二区三区| 免费成人激情视频| 激情五月综合色婷婷一区二区| 欧美综合国产精品久久丁香| 久久精品道一区二区三区| 国产精品一区二区久久久| 亚洲精品美女久久7777777| 亚洲国产成人久久综合| 久久人人97超碰人人澡爱香蕉| 国产一区二区三区在线观看免费| 亚洲欧美在线视频观看| 欧美一区二区三区在线看| 国产欧美视频在线观看| 性欧美暴力猛交69hd| 久久精品最新地址| 国产一区二区中文字幕免费看| 欧美一区二区黄色| 久久久久在线观看| 黄色日韩在线| 亚洲欧洲一区二区三区在线观看| 欧美成人一区二免费视频软件| 亚洲高清影视| av成人老司机| 欧美视频专区一二在线观看| 在线综合亚洲欧美在线视频| 亚洲一区二区三区三| 国产精品美女久久久浪潮软件 | 亚洲一级免费视频| 性亚洲最疯狂xxxx高清| 国产日韩欧美在线播放| 久久精品99国产精品日本| 美女成人午夜| 亚洲精品国产精品国自产观看浪潮 | 国产九九视频一区二区三区| 午夜精品婷婷| 久久久综合香蕉尹人综合网| 精品91视频| 日韩视频在线观看| 欧美视频国产精品| 午夜精品福利在线| 久久久久国产免费免费| 影音先锋亚洲一区| 一本高清dvd不卡在线观看| 国产精品久久久亚洲一区| 亚洲欧美制服另类日韩| 老司机午夜免费精品视频 | 亚洲乱码日产精品bd| 欧美吻胸吃奶大尺度电影| 亚洲欧美日韩在线| 麻豆91精品| 一本久道久久综合婷婷鲸鱼| 欧美专区18| 亚洲激情视频网站| 性欧美videos另类喷潮| 一区二区三区在线视频播放| 一区二区电影免费在线观看| 国产伦精品一区二区三区| 亚洲福利视频一区二区| 欧美日韩国产一区二区三区地区| 亚洲一区二区三区高清 | 亚洲国产一二三| 亚洲欧美电影在线观看| 激情成人综合| 亚洲视频综合在线| 国产亚洲午夜| 99视频+国产日韩欧美| 国产欧美一区二区视频| 亚洲精品欧美日韩专区| 国产精品国产精品国产专区不蜜| 亚洲第一成人在线| 国产精品成人在线观看| 亚洲第一精品电影| 国产精品久久网| 亚洲肉体裸体xxxx137| 国产精品无人区| 亚洲三级视频| 国产深夜精品| 亚洲无限乱码一二三四麻| 国内成+人亚洲| 亚洲一区bb| 亚洲国产精品久久精品怡红院| 香蕉久久一区二区不卡无毒影院 | 欧美亚洲免费电影| 欧美三级黄美女| 91久久综合亚洲鲁鲁五月天| 国产精品一区二区黑丝| 一本色道久久88综合日韩精品| 国产一区二区0| 亚洲一区二区三区四区五区午夜| 尤物yw午夜国产精品视频| 欧美一区二区精品久久911| 亚洲精品中文字幕在线|