基于FPGA的遠程圖像采集系統設計

發(fā)布時(shí)間:2009-11-23 10:35    發(fā)布者:賈延安
關(guān)鍵詞: FPGA , 采集 , 圖像 , 系統設計
作者:西安微電子技術(shù)研究所 張寶利 龔龍慶 田衛 方超    來(lái)源:電子產(chǎn)品世界  2009-11-09

  引言

  圖像信息的獲取和傳輸是圖像處理系統的重要組成部分,直接影響圖像處理系統的性能。圖像信息的采集包括對圖像數據、各種附帶參數信息以及狀態(tài)控制信號的采集,一般圖像信號和狀態(tài)參數信號以及控制信號是獨立產(chǎn)生的,因此需要設計一種系統能夠將外部設備產(chǎn)生的圖像數據和狀態(tài)控制信號同步采集,并能長(cháng)距離高速傳輸,綜合考慮到圖像采集系統所要求的實(shí)時(shí)性,可靠性,以及FPGA在數字電路的設計中的優(yōu)勢,為此本文討論了一種利用FPGA實(shí)現基于LVDS的圖像數據采集傳輸技術(shù)。

  系統設計

  高速圖像數據的采集傳輸系統如圖1 所示,主要包括圖像數據源的形成、數據信息的處理和緩存以及幀數據的轉發(fā)三部分。其中,圖像數據源的形成過(guò)程中,成像設備作為圖像數據的來(lái)源,它為系統提供高分辨率的可見(jiàn)光和紅外圖像,考慮系統的實(shí)時(shí)性和高可靠性因素,采用LVDS傳輸接口實(shí)現數據長(cháng)距離高速傳輸,解決了傳輸瓶頸問(wèn)題,圖像數據在進(jìn)入FPGA之前需通過(guò)數據格式轉換接口(采用MAX9218實(shí)現)將串行的數據轉換為并行數據并緩存。



  數據信息的處理由協(xié)處理器FPGA完成,主要包括圖像數據及相關(guān)參數信息的采集、緩存、組幀和圖像數據的轉發(fā)。其中圖像數據的組幀過(guò)程最為復雜, FPGA根據圖像源中幀同步、行同步、圖像選擇信號接收解串圖像,存儲至緩存區,并將圖像附帶的參數信息寫(xiě)入緩存后部,經(jīng)組幀狀態(tài)機形成所需的圖像數據幀。

  圖像數據幀形成后,轉發(fā)存儲至乒乓結構的幀存儲器,其容量為:512×512×8bit=2Mb。同時(shí)硬件邏輯自動(dòng)將圖像和配套參數信息數據通過(guò)LVDS圖像發(fā)送接口發(fā)送至數據鏈,圖像數據再次以串行的LVDS方式傳輸到后續設備進(jìn)行處理。


  系統實(shí)現

  FPGA及外圍硬件電路

  在接口轉換電路模塊中,圖像數據接收端和發(fā)送端均需采用LVDS串行方式進(jìn)行傳輸,所以在接收端將串行輸入的數據并行接收進(jìn)FPGA進(jìn)行處理和在發(fā)送端將并行的數據串行輸出時(shí),需要進(jìn)行并串和串并轉換。

  本設計選用MAXIM公司點(diǎn)對點(diǎn)LVDS串行/解串器芯片MAX9247/MAX9218實(shí)現數據收發(fā)。

  在MAX9218接收端,需要進(jìn)行數據格式轉換,將串行數據源變成并行格式供FPGA處理,同樣在圖像數據鏈路終端發(fā)送方MAX9247對輸入的圖像數據也有特定的時(shí)序要求,涉及到數據位和控制位的交替傳輸,需要由FPGA完成數據格式的轉換, 并產(chǎn)生相應的控制信號DE_IN。

  可編程器件FPGA選用Xilinx公司Virtex-4系列XC4VLX25。實(shí)現的功能主要是:根據輸入的行幀同步,采圖像同步和圖像選擇信號來(lái)實(shí)現圖像數據的接收,并緩存到FPGA內部的接收RxFIFO中,進(jìn)行幀頭幀尾識別、時(shí)序轉換,控制信號的生成,并且根據自定義的通訊協(xié)議,從數據流中分解出數據幀,同時(shí)將原始圖像數據和狀態(tài)數據打包到同一幀數據包中,輸出至數據鏈路終端。



  圖像數據鏈路層

  由圖3數據的流向來(lái)分析,從LVDS接口板輸出的串行圖像數據由14個(gè)數據位(數字圖像數據為D0--D13,低位在前高位在后)、幀同步、行同步、時(shí)鐘同步、圖像選擇信號、采圖同步信號組成。圖像數據同步時(shí)鐘采用7.375MHz,DE_IN由圖像的幀同步信號產(chǎn)生,幀、行同步均為高電平有效,圖像選擇信號用來(lái)區分紅外和可見(jiàn)光圖像,紅外圖像為256×320b,可見(jiàn)光圖像為512×512b,19位圖像數據信號經(jīng)過(guò)MAX9218解串后的數據和控制位接入FPGA。

  FPGA設計時(shí),針對紅外和可見(jiàn)光兩種不同類(lèi)型的圖像數據進(jìn)行采集傳輸,設置一個(gè)模式寄存器ModeReg來(lái)實(shí)現圖像選擇,可以填0或1,用來(lái)區分紅外和可見(jiàn)光,當采集可見(jiàn)光時(shí),每輸出一幀有效圖像數據,需輸出兩個(gè)幀信號,第一幀內(A幀)只輸出采圖同步信號,不輸出圖像數據、行信號等,第二幀(B幀)中不輸出采圖同步信號,只輸出圖像數據、行信號等;當采集紅外圖像時(shí),只需輸出一幀,圖像選擇信號在第一個(gè)幀信號的下降沿跳變,至第二個(gè)幀信號下降沿有效,高電平表示紅外圖像,低電平表示可見(jiàn)光圖像。具體時(shí)序參考圖3。



  經(jīng)過(guò)FPGA組幀完成的幀數據同時(shí)要轉發(fā)到終端數據鏈路和外部幀存儲器中,供后續設備調用。為了實(shí)現后續設備提取圖像信息時(shí)的實(shí)時(shí)性,外部存儲模塊采用由乒乓開(kāi)關(guān)控制的兩個(gè)片外幀存儲器,應用FPGA實(shí)現雙幀存交替切換,將圖像數據存儲在兩個(gè)獨立的FIFO中,FIFO采用IDT公司的IDT72V2103,此器件快速的存取允許圖像實(shí)時(shí)存儲轉發(fā)。在FPGA的控制下,FIFO空間的一幀數據送出后,然后開(kāi)始將FIFO1 空間的數據送出,同時(shí)又向FIFO中寫(xiě)入下一幀數據,這樣可以保證后續圖像處理設備不間斷的提取圖像數據,以實(shí)現快速處理,提高工作效率。

  組幀狀態(tài)機

  狀態(tài)機在FPGA內部設計成兩部分,為組幀狀態(tài)機(外圈)和組行狀態(tài)機(內圈)。其中組幀狀態(tài)機各狀態(tài)轉移順序及條件見(jiàn)圖4,各狀態(tài)占用時(shí)間可以通過(guò)組行狀態(tài)機中的行計數來(lái)控制,近而可以完成不同大小規格的圖像的接收。組幀狀態(tài)機共有6個(gè)狀態(tài)。



  state0:空閑狀態(tài)(系統復位)。state1:幀有效期開(kāi)始到行有效期開(kāi)始之間的延時(shí)。state2:圖像幀有效期,state3:圖像參數幀有效期。state4:行有效期結束到幀有效期結束之間的延時(shí)。state5:幀無(wú)效期。Reset為輸入的狀態(tài)機復位信號,在系統復位狀態(tài),如果用來(lái)啟動(dòng)狀態(tài)機的信號StartMakeFrame = 1,狀態(tài)機開(kāi)始工作,進(jìn)入系統下一狀態(tài),組幀狀態(tài)機在各狀態(tài)轉移條件滿(mǎn)足時(shí),依次進(jìn)入下一狀態(tài),否則,保持在原狀態(tài)。

  組行狀態(tài)機共有3個(gè)狀態(tài)。

  stML_Idle:空閑狀態(tài)。stML_High:行有效期。stML_Low:行無(wú)效期。在外圈組幀狀態(tài)機的每個(gè)狀態(tài)中,包含n個(gè)組行狀態(tài),所包含的組行狀態(tài)機中的行數即組幀狀態(tài)機各狀態(tài)所占用時(shí)間,組行狀態(tài)機和組幀狀態(tài)機啟動(dòng)條件一致,同時(shí)啟動(dòng)。

  以采集可見(jiàn)光圖像數據為例,上電復位期間系統處于states0狀態(tài),狀態(tài)機用外部輸入的7.375MHz時(shí)鐘同步整個(gè)運行過(guò)程,圖像的幀、行、圖像數據等信號在同步時(shí)鐘的下降沿跳變,上升沿鎖存。一幀圖像數據的大小為512×512bit,并將圖像附帶的參數信息寫(xiě)入圖像數據后一行(即513行),在幀有效期間(states1、 states2、 states3狀態(tài)),CLK 信號作為行計數器的時(shí)鐘,每幀圖像在行有效之前有1行無(wú)效圖像信號(states1), 在states2狀態(tài)下,控制采集一幀中的前512行,在states3狀態(tài)下,采集圖象的參數信息,將圖像數據和狀態(tài)參數組合為統一的數據幀,采集完一幀圖像數據后等待下一個(gè)幀同步信號的到來(lái)。在行有效期(stML_High)控制采集一行中的512個(gè)像素點(diǎn)數據,在CLK信號的上升沿進(jìn)行計數, 在數據有效期間采集完512個(gè)像素點(diǎn),等待下一個(gè)行同步信號的到來(lái),按同樣方式對下一行512像素點(diǎn)數據進(jìn)行采集,直至采集完一幀中的512行。

  系統仿真

  在該系統中,狀態(tài)機設計是難點(diǎn),圖5是運用Active-HDL7.1仿真工具的狀態(tài)機仿真結果,仿真時(shí),采用7.375MHz時(shí)鐘同步,狀態(tài)機啟動(dòng)后,計數寄存器里的數據遞減,進(jìn)而產(chǎn)生各狀態(tài)轉移滿(mǎn)足的條件,以此實(shí)現狀態(tài)機的翻轉。



  在A(yíng)ctive-HDL7.1中編寫(xiě)TestBench文件時(shí),通過(guò)向組幀狀態(tài)機計數寄存器寫(xiě)數,來(lái)控制各狀態(tài)所占用的時(shí)間,利用 StartMakeFrame信號高電平啟動(dòng)狀態(tài)機,各狀態(tài)發(fā)生翻轉時(shí),狀態(tài)完成標志就產(chǎn)生產(chǎn)生高電平跳變。

  根據圖5的仿真結果,可以看出組幀狀態(tài)機工作正常,所有的邏輯關(guān)系也都驗證無(wú)誤。

  結語(yǔ)

  本文采用FPGA設計實(shí)現高速圖像采集系統,并采用LVDS接口實(shí)現接收與發(fā)送,各種模塊之間通過(guò)緩存實(shí)現通信,避免圖像的丟失;采集的圖像類(lèi)型和圖像尺寸可以通過(guò)軟件重新配置FPGA進(jìn)行調整?傊,基于FPGA 的高速專(zhuān)用圖像采集系統電路集成度高、信噪比高、功耗低、成本低、速度快以及接口方便,所設計系統采用兩幀切換存儲方式,使得后續的其它圖像處理模塊能夠與圖像采集模塊并行工作,為圖像處理器的高度集成化實(shí)現提供了可能性。

  參考文獻:

  [1] 侯伯亨, 顧新. VHDL硬件描述語(yǔ)言與數字邏輯電路設計[M]. 西安:電子科技大學(xué)出版社, 2003

  [2] LVDS Ower’sManual ( 2nd Edition) [R]. National Semiconductor, 2000

  [3] Application note 3806,Performance Test for a Senrializer and Deserializer Pair:MAX9247 and MAX9218[R]. Maxim IC,2006

  [4] 孫航. Kilinx可編程邏輯器件的高級應用與設計技巧[M]. 北京: 電子工業(yè)出版社, 2004

  [5] 王誠, 薛小剛, 鐘信潮. Xilinx ISE使用詳解[M]. 人民郵電出版社, 2005

  [6] IDT72V2103 datasheet[R], IDT 2001
本文地址:http://selenalain.com/thread-5677-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页