FPGA開發板遠程檢測系統的實現
1系統概述
本文引用地址:http://www.104case.com/article/201702/338425.htm目前FPGA開發板的板載資源檢測都是采用將示例下載到開發板上檢測的方法,檢測不同的資源需要一般使用不同的示例。這樣的檢測方法缺少對檢測結果信息的收集。對于實驗室批量管理FPGA開發板的情況,難以應對。
本系統基于Nexys?3 Spartan-6FPGA開發板,不僅可對該開發板的板載資源進行檢測,并且可以對檢測結果數據進行收集,將收集的數據進行保存以方便診斷開發板的狀態。
其原理是由上位機通過串口發送測試數據到開發板上的串口模塊,FPGA從串口模塊得到相應的測試命令,然后根據命令,對開發板上對應的資源進行檢測,并將檢測結果反饋到上位機進行保存。
本系統的結構示意圖如下所示。

圖1系統結構示意圖
本系統還可作為FPGA設備遠程診斷系統的原型,通過提交上位機生成的檢測結果文件,可以在管理信息系統中直接顯示開發板的狀態。。
本系統可以以下載流文件的形式或以存入EEPROM的形式應用到Nexys?3 Spartan-6FPGA開發板。本系統還可通過修改部分代碼應用于其他型號的FPGA開發板。
2系統需求
本系統由三部分組成,上位機軟件,核心控制軟件,SOC子系統。
2.1上位機軟件
在本系統中以上位機作為檢測程序的發起者。
模塊需求描述
串口通訊:上位機數據的接受和發送。
VGA檢測啟動VGA模塊的檢測,輸入實際顯示結果。
自由按鍵檢測啟動自由按鍵模塊的檢測,顯示檢測結果。
撥碼開關檢測啟動撥碼開關模塊的檢測,顯示檢測結果。
7段數碼管檢測啟動7段數碼管的檢測,輸入實際顯示結果。
LED燈檢測啟動LED燈的檢測,輸入實際顯示結果。
PMod檢測發送啟動檢測命令,顯示檢測結果。
USB Host檢測發送啟動檢測命令,顯示檢測結果。
LAN檢測發送啟動檢測命令,顯示檢測結果
VHDC檢測發送啟動檢測命令,顯示檢測結果。
2.2核心控制軟件
在本系統中核心控制軟件負責FPGA開發板上串口的輸入/輸出,以及負責將檢測數據應用到各模塊并收集檢測結果。
模塊需求描述
串口通訊:開發板上數據的傳入和輸出。
VGA檢測從串口讀取檢測用數據傳輸到VGA控制模塊。
自由按鍵檢測接收命令,讀取自由按鍵模塊的數據。
撥碼開關檢測接收命令,讀取撥碼開關模塊的數據。
7段數碼管檢測從串口讀取檢測用數據傳輸到7段數碼管控制模塊。
LED燈檢測從串口讀取檢測用數據傳輸到LED燈控制模塊。
PMod檢測實現PMod的自檢測。
USB Host檢測實現USB Host的自檢測。
LAN檢測實現LAN的自檢測。
VHDC檢測實現VHDC的自檢測。
2.3FPGA上SOC子系統
在本系統中SOC子系統包括控制核心以及各資源的控制模塊。
模塊需求描述
控制核心控制其他模塊,執行部分邏輯功能。
串口控制模塊控制開發板上的串口硬件。
VGA控制模塊控制開發板上的VGA硬件。
自由按鍵控制模塊控制開發板上的自由按鍵。
撥碼開關控制模塊控制開發板上的撥碼開關。
7段數碼管控制模塊控制開發板上的7段數碼管
LED燈控制模塊控制開發板上的LED燈。
PMod控制模塊控制開發板上的PMod硬件。
USB Host控制模塊控制開發板上的USB Host硬件。
LAN控制模塊控制開發板上的LAN硬件。
VHDC控制模塊控制開發板上的VHDC硬件。
3 系統結構

圖2系統結構圖
3.1 上位機軟件
上位機軟件包括以下結構。
模塊描述
啟動檢測用戶界面,檢測活動的發起者
輸入實際顯示結果用戶界面,用來輸入從顯示設備、數碼管以及LED燈看到的實際顯示結果
串口通訊協議:發送檢測用數據到開發板串口,從開發板串口接收反饋數據。
VGA模塊檢測隨機生成用于顯示的檢測數據以及顯示位置和顯示顏色,將其與實際顯示信息進行比較,判斷檢測結果并記錄。
自由按鍵檢測發送啟動檢測命令,將按鍵編號依次與從串口讀取檢測結果進行對比,判斷檢測結果并記錄。
撥碼開關檢測發送啟動檢測命令,將撥碼開關編號依次與從串口讀取檢測結果進行對比,判斷檢測結果并記錄。
7段數碼管檢測可設置全亮或全滅,或生成一個隨機數字,將其與實際顯示信息進行比較,判斷檢測結果并記錄。
LED燈檢測可設置依次點亮、全亮或全滅,或隨機生成一組LED燈編號,將其與實際顯示信息進行比較,判斷檢測結果并記錄。
評論