一種基于FPGA的電子穩像系統的研究與設計
1.3 幀存控制器
幀存儲器是圖像處理器與顯示設備之間的通道,所有要顯示的圖形數據先存放到幀存儲器中,然后再送到顯示設備進行顯示,因此幀存儲器的設計是圖形顯示系統設計的一個關鍵。傳統上,可以實現幀存儲器的存儲器件有多種,如DRAM、SDRAM及SRAM等。DRAM、SDRAM屬于動態存儲器,容量大、價格全家但速度較慢,且在使用中需要定時刷新。對于基于FPGA的視頻處理器,需要設計專用的刷新電路,增加了系統設計的復雜程度。SRAM速度高、接口簡單、容量較小。隨著集成電路技術的不斷發展,容量不斷增大,價格也不斷下降。在需要高速實時顯示的視頻處理系統中的使用越來越普遍。
幀存控制器的設計對于實現兩種不同視頻系統之間的圖像信號的存儲、采集和顯示顯得非常重要。為了保證數據處理與采集的連續,設計中使用了兩組幀存儲器(FRAM1、FRAM2),由于數字化的圖像每幀大小為640×480=307200(16bit)共300K×16bit的數據量,筆者使用每組512K×16bit的靜態存儲器,存儲時間為12ns,可以保證快速地讀出和寫入圖像數據。圖3為幀存控制器的邏輯框圖。
由于輸入信號為隔行掃描的圖像數據,顯示輸出需要逐行掃描數據,因此數據存入幀存儲器時需要進行處理。設計中采用場合并行法,將兩場的數據寫入一個幀存中,構成一幅完整的逐行掃描圖像,系統利用VREF信號對此進行控制,產生的幀切換控制信號控制數據在兩個幀存中的切換。當VREF信號有效時,表明新的一場開始了,此時無效行計數器開始工作,控制不需要采集的圖像行,計數到閾值后,有效行計數器開始工作,控制所要采集的圖像行,并發出高位地十信號A[18..11];同樣,當HREF有效后,無效像素計數器開始計數每行中的無效像素,然后有效像素計數器開始計數需要采集的行聽有效像素;每次計滿640個像素后,等待下一次有效行信號的到來,同時將有效行計數器加1。由于系統選用的幀存容量較大,因此利用ODD的反相信號作為幀存地址的A10,為每行圖像提供了1024個存儲空間(實際使用640個),可以簡化數據寫入與讀出的控制電路。隔行的視頻信號就會被逐行地存儲到幀存體中。總線隔離與控制電路用來完成數據在幀存中的寫入與讀出的同步。由于采用SRAM作為幀存體,有效像素的寫入與后續視頻接口的讀出不能在一個幀存體中同時進行,系統采用雙幀存輪流操作的方法,系統采用雙幀存輪流操作的方法:當數字化后的圖像信息寫入其中的一個幀存時,幀存控制器將另一個幀存中的像素順序讀出,送到顯示設備,反之亦然。
p2p機相關文章:p2p原理
評論