基于FPGA的遠程圖像采集系統(tǒng)設(shè)計
以采集可見光圖像數(shù)據(jù)為例,上電復位期間 系統(tǒng)處于states0狀態(tài),狀態(tài)機用外部輸入的7.375MHz時鐘同步整個運行過程,圖像的幀、行、圖像數(shù)據(jù)等信號在同步時鐘的下降沿跳變,上升沿鎖存。一幀圖像數(shù)據(jù)的大小為512×512bit,并將圖像附帶的參數(shù)信息寫入圖像數(shù)據(jù)后一行(即513行),在幀有效期間(states1、states2、 states3狀態(tài)),CLK 信號作為行計數(shù)器的時鐘,每幀圖像在行有效之前有1行無效圖像信號(states1), 在states2狀態(tài)下,控制采集一幀中的前512行,在states3狀態(tài)下,采集圖象的參數(shù)信息,將圖像數(shù)據(jù)和狀態(tài)參數(shù)組合為統(tǒng)一的數(shù)據(jù)幀,采集完一幀圖像數(shù)據(jù)后等待下一個幀同步信號的到來。在行有效期(stML_High)控制采集一行中的512個像素點數(shù)據(jù),在CLK信號的上升沿進行計數(shù), 在數(shù)據(jù)有效期間采集完512個像素點,等待下一個行同步信號的到來,按同樣方式對下一行512像素點數(shù)據(jù)進行采集,直至采集完一幀中的512行。
本文引用地址:http://www.104case.com/article/99680.htm系統(tǒng)仿真
在該系統(tǒng)中,狀態(tài)機設(shè)計是難點,圖5是運用Active-HDL7.1仿真工具的狀態(tài)機仿真結(jié)果,仿真時,采用7.375MHz時鐘同步,狀態(tài)機啟動后,計數(shù)寄存器里的數(shù)據(jù)遞減,進而產(chǎn)生各狀態(tài)轉(zhuǎn)移滿足的條件,以此實現(xiàn)狀態(tài)機的翻轉(zhuǎn)。
在Active-HDL7.1中編寫TestBench文件時,通過向組幀狀態(tài)機計數(shù)寄存器寫數(shù),來控制各狀態(tài)所占用的時間,利用 StartMakeFrame信號高電平啟動狀態(tài)機,各狀態(tài)發(fā)生翻轉(zhuǎn)時,狀態(tài)完成標志就產(chǎn)生產(chǎn)生高電平跳變。
根據(jù)圖5的仿真結(jié)果,可以看出組幀狀態(tài)機工作正常,所有的邏輯關(guān)系也都驗證無誤。
評論