基于web服務器的可重構硬件測控平臺設計方案
項目背景及可行性分析
2. 應用背景:
在工業(yè)控制和科研過程中經常涉及到對某個系統(tǒng)進行完善的系統(tǒng)性的測試,往往一個設備包括功能和數(shù)據率不一的接口,而整個設備又是對所有接口整體輸入的響應。所以在系統(tǒng)中調試之前要一段時間來完成整體調試環(huán)境的架設。鑒于不同設備的特殊性,建立一個較為通用的硬件測試仿真平臺可以提高系統(tǒng)測試的效率。XILINX FPGA和SOC技術對這方面有很好的支持,從硬件IP到操作系統(tǒng)和應用軟件有一套完整的解決方案。它結合了FPGA本身和嵌入式系統(tǒng)的諸多優(yōu)點。
設計并實現(xiàn)一個web服務器,通過客戶端網頁可以更新測試端服務器的軟硬件測試環(huán)境,測試端服務器的測試工作流程可以在客戶端定制,測試端服務器的測試數(shù)據結果可以在線分析,顯示或下載。
4. 關鍵技術和創(chuàng)新點
所有操控都基于網絡,便于遠程控制和組網。
軟硬件環(huán)境可以實現(xiàn)在系統(tǒng)重構
測控流程可定制
服務器端支持大容量測試數(shù)據庫和測試數(shù)據實時抽樣顯示
5. 成熟性和可靠性
該系統(tǒng)一寫基本的硬件環(huán)境已經建成。該項目現(xiàn)在已經完成了基于lwip協(xié)議棧的web服務器的文件傳輸應用和軟硬件重配置的架構。還未完成的包括如SCSI大容量存儲模塊,Linux操作系統(tǒng)移植的部分工作和網絡編程的部分內容仍在有條不紊的繼續(xù)。
已完成模塊已經經過實驗室的測試,由于小組人員從事過網絡驅動和硬件防火墻的開發(fā)。所以網絡方面可以達到預期的可靠性。另外移植Linux操作系統(tǒng)之后也會增加系統(tǒng)多任務狀態(tài)下的可靠性。
項目實施方案
1.方案基本功能框圖及描述
圖1 系統(tǒng)硬件框圖
系統(tǒng)的整體結構是基于web服務器的,它由客戶端和服務器兩部分組成,服務器端是一個帶有用戶待測控設備的XILINX XUP開發(fā)板,客戶端是用戶的PC機。服務器主要完成對待測控用戶設備的測試和控制。由于FPGA對于接口的控制很靈活內部可以利用很多現(xiàn)有協(xié)議的IP核,所以這有利于系統(tǒng)對不同用戶設備測控的再利用。另外系統(tǒng)將整個軟硬件架構開放只要用戶在客戶端把軟硬件代碼編譯好上傳到服務器就可以對服務器重新配置。為了方便用戶測試過程中對存儲器的要求,系統(tǒng)擴展了大容量高速SCSI存儲器模塊。這樣也滿足了用戶對高速數(shù)據處理系統(tǒng)的要求。
現(xiàn)將各個模塊簡述如下:
PPC405是一個基于IBM PowerPC的32-bit定點嵌入式處理器硬核,在系統(tǒng)中工作頻率為300MHz。 DDR控制器為XILINX提供的免費IP core,它可以支持達2GB的DDR SDRAM,系統(tǒng)中SDRAM和PLB總線同步工作于100MHz,所以對于64bit的DDR SDRAM內存條來說最大訪問帶寬可以達到1.6GB/s。以太網MAC層控制器負責完成MAC層協(xié)議,MAC層以上的協(xié)議由軟件部分完成。網絡物理層采用Intel的物理層控制芯片WJLXT9720完成。標準輸入輸出設備接口包括鍵盤接口,簡易的LED顯示接口。
System ace是XILINX的一項新技術,通過一個ACE控制芯片可以將CF卡中固定格式的文件通過JTAG口加載到FPGA中。這樣可以通過網絡將客戶端運行編譯好的FPGA配置文件上傳到服務器端。另外用戶編譯好的軟件可執(zhí)行文件也可以放在CF卡中,由系統(tǒng)的boot程序來完成軟件的加載。
用戶自定義接口通過XPS開發(fā)工具中自帶的IPIF模塊與PLB總線連接。這里我們自行開發(fā)了一個高速的同步用戶接口,主要用于一些高速數(shù)據的傳輸,該接口在DMA傳輸下實際傳輸速率可以達到800MB/s。從而可以滿足一般用戶高速待測設備的數(shù)據接口要求。PLB IPIF模塊除了支持用戶分配地址空間和寄存器空間外還支持用戶自定義中斷,F(xiàn)IFO接口,DMA傳輸,主從設備的選擇。所以通過IPIF模塊用戶可以很方便的開發(fā)各種高速的外部接口。
大容量高速存儲器是小組按照系統(tǒng)得要求另加的模塊,它由一組高速硬盤組成,可以完成對高速數(shù)據的實時讀寫。為了滿足對圖像設備和實時數(shù)據的監(jiān)控的要求,另外增加LCD顯示高速緩存模塊,可以滿足對高速數(shù)據或圖像的完全或抽樣顯示。
圖2 系統(tǒng)軟件流程圖
軟件部分流程圖如圖2所示,系統(tǒng)上電后首先由system ace模塊完成對FPGA的加載,加載后啟動BRAM中的boot loader 程序完成對操作系統(tǒng)的引導。
之后建立web服務器的網絡環(huán)境。按照網絡CS模型對接收到的命令或文件進行處理,處理之后給出狀態(tài)報告。系統(tǒng)可以接收軟件或者硬件重構的命令完成對系統(tǒng)的重構。
2.需要的開發(fā)平臺
實現(xiàn)本方案需要操作系統(tǒng)的支持并且需要為用戶提供實時高速數(shù)據接口,包括開發(fā)PLB總線外設。同時要利用system ace的在線重構功能。所以系統(tǒng)需要XUP VIRTEX-II PRO開發(fā)板。已有軟件包括ISE9.1,Chipscope, XPS。
3.方案實施過程中需要開發(fā)的模塊
現(xiàn)有需要開發(fā)的功能模塊包括外部告訴數(shù)據存儲的SCSI硬盤存儲控制器以及基于Linux操作系統(tǒng)的控制驅動程序。
圖形LCD驅動器高速圖像緩存模塊。
4.系統(tǒng)最終要達到的性能指標
實現(xiàn)基于Linux的網絡服務器
通過客戶端網頁可以更新測試端服務器的軟硬件測試環(huán)境
測試端服務器的測試工作流程可以在客戶端定制
測試端服務器的測試數(shù)據結果可以在線分析,顯示或下載。
SCSI控制器目標數(shù)據讀寫速率不低于80MB/s。
圖形顯示界面支持1024*768 60f/s刷新頻率。
五、需要的其它資源
1.設計輸入輸出功能子板
需要轉借SCSI控制器和圖像高速緩存模塊子板。
計劃在10月初完成PCB的加工和制作。11月底完成功能性調試。
2.測試設備
萬用表、示波器、邏輯分析儀
3.仿針、開發(fā)工具
仿真工具Modelsim、開發(fā)工具ISE等。
評論