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