基于FPGA的智能儀器遠(yuǎn)程控制系統(tǒng)設(shè)計(jì)
3 仿真結(jié)果
FPGA采用的系統(tǒng)時(shí)鐘頻率為50 MHz,仿真工具為Modelsim SE 6.5a,仿真用數(shù)據(jù)為連續(xù)的8 b數(shù)據(jù)。仿真結(jié)果如圖4所示。本文引用地址:http://www.ex-cimer.com/article/162169.htm
圖4為FPGA讀USB內(nèi)部FIFO的仿真結(jié)果,DATA為模擬從USB口接到的數(shù)據(jù),該數(shù)據(jù)已存在于USB芯片的FIFO中。FIFODATA為FPGA接到的數(shù)據(jù),由上可以看出,F(xiàn)PGA可以將USB接受到的數(shù)據(jù)解析出來(lái)。
圖5為RS 232與FPGA接口部分仿真結(jié)果??梢钥闯觯蒖S 232接收串行數(shù)據(jù)RXD已經(jīng)轉(zhuǎn)換為并行數(shù)據(jù)din。程序中是在一個(gè)有效字節(jié)結(jié)束后將其存入FIFO中,由圖可以驗(yàn)證。圖6頂層模塊仿真圖,為了驗(yàn)證由FPGA發(fā)出的數(shù)據(jù)能正確的接受到,先由FPGA內(nèi)部發(fā)數(shù)據(jù),然后通過(guò)RS 232的TXD端口發(fā)出,讓RXD與TXD相連再接收,可以看出發(fā)出的數(shù)據(jù)可以被正確的接收回來(lái)并傳向USB接口,說(shuō)明時(shí)序正確。同理可以驗(yàn)證USB端的收發(fā)時(shí)序。
4 結(jié)語(yǔ)
本文采用FPGA實(shí)現(xiàn)了USB與RS 232間的接口轉(zhuǎn)換及數(shù)據(jù)處理的功能。設(shè)計(jì)中先入先出存儲(chǔ)器的運(yùn)用解決了數(shù)據(jù)的緩存的和速率匹配問(wèn)題,有限狀態(tài)機(jī)的運(yùn)用使得程序設(shè)計(jì)更加清晰可靠。該設(shè)計(jì)將復(fù)雜的信號(hào)運(yùn)算集中在FPGA中完成,利用FPGA獨(dú)特的并行處理能力,減小上位機(jī)工作量的同時(shí),提高了系統(tǒng)運(yùn)行速度。
評(píng)論