FPGA開發(fā)板遠(yuǎn)程檢測系統(tǒng)的實現(xiàn)
1系統(tǒng)概述
本文引用地址:http://www.ex-cimer.com/article/201702/338425.htm目前FPGA開發(fā)板的板載資源檢測都是采用將示例下載到開發(fā)板上檢測的方法,檢測不同的資源需要一般使用不同的示例。這樣的檢測方法缺少對檢測結(jié)果信息的收集。對于實驗室批量管理FPGA開發(fā)板的情況,難以應(yīng)對。
本系統(tǒng)基于Nexys?3 Spartan-6FPGA開發(fā)板,不僅可對該開發(fā)板的板載資源進(jìn)行檢測,并且可以對檢測結(jié)果數(shù)據(jù)進(jìn)行收集,將收集的數(shù)據(jù)進(jìn)行保存以方便診斷開發(fā)板的狀態(tài)。
其原理是由上位機(jī)通過串口發(fā)送測試數(shù)據(jù)到開發(fā)板上的串口模塊,F(xiàn)PGA從串口模塊得到相應(yīng)的測試命令,然后根據(jù)命令,對開發(fā)板上對應(yīng)的資源進(jìn)行檢測,并將檢測結(jié)果反饋到上位機(jī)進(jìn)行保存。
本系統(tǒng)的結(jié)構(gòu)示意圖如下所示。
圖1系統(tǒng)結(jié)構(gòu)示意圖
本系統(tǒng)還可作為FPGA設(shè)備遠(yuǎn)程診斷系統(tǒng)的原型,通過提交上位機(jī)生成的檢測結(jié)果文件,可以在管理信息系統(tǒng)中直接顯示開發(fā)板的狀態(tài)。。
本系統(tǒng)可以以下載流文件的形式或以存入EEPROM的形式應(yīng)用到Nexys?3 Spartan-6FPGA開發(fā)板。本系統(tǒng)還可通過修改部分代碼應(yīng)用于其他型號的FPGA開發(fā)板。
2系統(tǒng)需求
本系統(tǒng)由三部分組成,上位機(jī)軟件,核心控制軟件,SOC子系統(tǒng)。
2.1上位機(jī)軟件
在本系統(tǒng)中以上位機(jī)作為檢測程序的發(fā)起者。
模塊需求描述
串口通訊:上位機(jī)數(shù)據(jù)的接受和發(fā)送。
VGA檢測啟動VGA模塊的檢測,輸入實際顯示結(jié)果。
自由按鍵檢測啟動自由按鍵模塊的檢測,顯示檢測結(jié)果。
撥碼開關(guān)檢測啟動撥碼開關(guān)模塊的檢測,顯示檢測結(jié)果。
7段數(shù)碼管檢測啟動7段數(shù)碼管的檢測,輸入實際顯示結(jié)果。
LED燈檢測啟動LED燈的檢測,輸入實際顯示結(jié)果。
PMod檢測發(fā)送啟動檢測命令,顯示檢測結(jié)果。
USB Host檢測發(fā)送啟動檢測命令,顯示檢測結(jié)果。
LAN檢測發(fā)送啟動檢測命令,顯示檢測結(jié)果
VHDC檢測發(fā)送啟動檢測命令,顯示檢測結(jié)果。
2.2核心控制軟件
在本系統(tǒng)中核心控制軟件負(fù)責(zé)FPGA開發(fā)板上串口的輸入/輸出,以及負(fù)責(zé)將檢測數(shù)據(jù)應(yīng)用到各模塊并收集檢測結(jié)果。
模塊需求描述
串口通訊:開發(fā)板上數(shù)據(jù)的傳入和輸出。
VGA檢測從串口讀取檢測用數(shù)據(jù)傳輸?shù)絍GA控制模塊。
自由按鍵檢測接收命令,讀取自由按鍵模塊的數(shù)據(jù)。
撥碼開關(guān)檢測接收命令,讀取撥碼開關(guān)模塊的數(shù)據(jù)。
7段數(shù)碼管檢測從串口讀取檢測用數(shù)據(jù)傳輸?shù)?段數(shù)碼管控制模塊。
LED燈檢測從串口讀取檢測用數(shù)據(jù)傳輸?shù)絃ED燈控制模塊。
PMod檢測實現(xiàn)PMod的自檢測。
USB Host檢測實現(xiàn)USB Host的自檢測。
LAN檢測實現(xiàn)LAN的自檢測。
VHDC檢測實現(xiàn)VHDC的自檢測。
2.3FPGA上SOC子系統(tǒng)
在本系統(tǒng)中SOC子系統(tǒng)包括控制核心以及各資源的控制模塊。
模塊需求描述
控制核心控制其他模塊,執(zhí)行部分邏輯功能。
串口控制模塊控制開發(fā)板上的串口硬件。
VGA控制模塊控制開發(fā)板上的VGA硬件。
自由按鍵控制模塊控制開發(fā)板上的自由按鍵。
撥碼開關(guān)控制模塊控制開發(fā)板上的撥碼開關(guān)。
7段數(shù)碼管控制模塊控制開發(fā)板上的7段數(shù)碼管
LED燈控制模塊控制開發(fā)板上的LED燈。
PMod控制模塊控制開發(fā)板上的PMod硬件。
USB Host控制模塊控制開發(fā)板上的USB Host硬件。
LAN控制模塊控制開發(fā)板上的LAN硬件。
VHDC控制模塊控制開發(fā)板上的VHDC硬件。
3 系統(tǒng)結(jié)構(gòu)
圖2系統(tǒng)結(jié)構(gòu)圖
3.1 上位機(jī)軟件
上位機(jī)軟件包括以下結(jié)構(gòu)。
模塊描述
啟動檢測用戶界面,檢測活動的發(fā)起者
輸入實際顯示結(jié)果用戶界面,用來輸入從顯示設(shè)備、數(shù)碼管以及LED燈看到的實際顯示結(jié)果
串口通訊協(xié)議:發(fā)送檢測用數(shù)據(jù)到開發(fā)板串口,從開發(fā)板串口接收反饋數(shù)據(jù)。
VGA模塊檢測隨機(jī)生成用于顯示的檢測數(shù)據(jù)以及顯示位置和顯示顏色,將其與實際顯示信息進(jìn)行比較,判斷檢測結(jié)果并記錄。
自由按鍵檢測發(fā)送啟動檢測命令,將按鍵編號依次與從串口讀取檢測結(jié)果進(jìn)行對比,判斷檢測結(jié)果并記錄。
撥碼開關(guān)檢測發(fā)送啟動檢測命令,將撥碼開關(guān)編號依次與從串口讀取檢測結(jié)果進(jìn)行對比,判斷檢測結(jié)果并記錄。
7段數(shù)碼管檢測可設(shè)置全亮或全滅,或生成一個隨機(jī)數(shù)字,將其與實際顯示信息進(jìn)行比較,判斷檢測結(jié)果并記錄。
LED燈檢測可設(shè)置依次點亮、全亮或全滅,或隨機(jī)生成一組LED燈編號,將其與實際顯示信息進(jìn)行比較,判斷檢測結(jié)果并記錄。
評論