基于FPGA的高速圖像采集系統(tǒng)設計
本文引用地址:http://2s4d.com/article/192110.htm
3 RAM時序控制模塊
RAM控制器接口主要用于實現(xiàn)RAM的基本操作時序,如充電(刷新)時序、模式設置時序、讀寫時序等。讀寫命令由主控模塊發(fā)出,由控制器具體執(zhí)行。系統(tǒng)采用Hy―nix公司的HY57V561620F(L)T(P),可實現(xiàn)256 Mb的大容量數(shù)據(jù)存儲。
時序控制器由一個有限狀態(tài)機(FSM)實現(xiàn),其狀態(tài)轉(zhuǎn)換圖如圖3所示。加電復位200μs后,對RAM的所有塊進行預充電,充電操作的引腳電平如表1所列。充電完成后經(jīng)tRP刷新所有塊,延遲tRFC后進入模式設置狀態(tài)。在模式設置狀態(tài)中,需要對RAS延遲、突發(fā)長度等進行設置,延遲tMRD后進入空閑狀態(tài),等待主控單元的讀寫命令。在空閑狀態(tài)中,每隔64 ms需要對RAM中所有行刷新。在本設計中定時刷新模塊設計成一個計數(shù)器,計數(shù)脈沖選自控制器本身的時鐘。由于RAM要求兩次刷新的最大時間間隔不超過64 ms,假設系統(tǒng)的時鐘頻率為1O0MHz,則時鐘周期約為0.01μs,并且要在64 ms內(nèi)要完成全部8 192行的刷新,所以最大計數(shù)應該為781次(64 ms/8192/0.01μs)。系統(tǒng)采用700次的計數(shù)脈沖產(chǎn)生刷新請求。
RAM控制器的讀寫地址與讀寫控制信號均由主控單元產(chǎn)生,主控單元結(jié)構(gòu)框圖如圖4所示。PLL用于產(chǎn)生RAM控制器和緩沖區(qū)的時鐘(系統(tǒng)設計為100 MHz);CMD命令解析模塊實現(xiàn)對上位機發(fā)送過來的命令解析并產(chǎn)生相應的控制信號,如CMOS傳感器控制、RAM突發(fā)長度控制等。為了降低讀寫RAM的頻率,系統(tǒng)設計了一個8×16位的FIFO。當8個像素的數(shù)據(jù)存入FIFO后,F(xiàn)IFO向RAM控制器發(fā)送寫請求(W_req);與此同時,寫地址發(fā)生器產(chǎn)生寫地址,由RAM控制器產(chǎn)生寫數(shù)據(jù)的時序。讀寫地址發(fā)生器是一個遞增的計數(shù)器,每次的讀寫地址是上次的地址加BL(突發(fā)長度)。由于PCLK的最高頻率可達9.2 MHz(640×480×30),而RAM的時鐘頻率是100 MHz,每次寫入一個像素的數(shù)據(jù)需要5個時鐘周期(考慮RAS延遲),這樣寫操作耗費整個時鐘周期的50%;加入FIF0后,讀寫的突發(fā)長度均是8,可降低耗費的時鐘周期至10%左右。
4 EZ―USB傳輸控制器
CY7C68013是Cypress公司的EZ―USB FX2系列芯片,引腳連接圖如圖5所示。該系列芯片集成了USB2.O收發(fā)器、串行接口引擎(SIE)、帶8.5 KB片上RAM的增強型8501、16 KB的RAM、4 KB的FIFO存儲器、I/O口、數(shù)據(jù)總線、地址總線和通用可編程接口(GPIF);共有3種接口模式――端口模式、從屬FIFO接口模式和GPIF接口模式。在端口模式下,所有I/O引腳都可作為805l的通用I/O口,作為最基本的數(shù)據(jù)傳輸模式,其數(shù)據(jù)傳輸主要由固件程序完成,需要CPU的參與,因此數(shù)據(jù)傳輸速率比較低。在從屬FIFO接口模式下,外部邏輯或外部處理器可以直接與FX2端點FIFO相連。GPIF接口模式使用PORTB和PORTD構(gòu)成通向4個FX2端點FIF0(EP2、EP4、EP6和EP8)的16位數(shù)據(jù)接口。GPIF作為內(nèi)部的主控制器與FIFO直接相連,并產(chǎn)生用戶可編程的控制信號與外部接口進行通信。后兩種模式數(shù)據(jù)的傳輸通過執(zhí)行USB本身的協(xié)議來完成,微處理器不參與數(shù)據(jù)傳輸,從而使數(shù)據(jù)的傳輸速率大大地提高。
評論