發布日期:2022-04-17 點擊率:74
引 言 1 器件選擇 2 FIFO系統設計 在該設計中,攝像頭采用640×480的屏幕分辨率,圖像深度為8,每秒為25幀,圖像數據量的大小為圖像中像素總數與圖像深度的乘積,由此可以得出每幀圖像的大小為2.457 Mb,每秒鐘視頻產生數據的大小為61.44 Mb。因為系統向SDRAM控制器寫入和讀出數據的速度比較低,約為62 MHz,FPGA的外接晶振CLK為27 MHz,FPGA和SDRAM的工作時鐘由鎖相環4倍頻后生成,即為108 MHz,所以SDRAM控制器向SDRAM寫入和讀出數據的速率為108 MHz,因此二者屬于不同的時鐘域,需要用緩沖器作為輸入和輸出的緩存。
在利用DSP實現視頻實時跟蹤時,需要進行大量高速的圖像采集。而DSP本身自帶的FIFO并不足以支持系統中大量數據的暫時存儲,這就要求大的中間緩存,而專用的高速FIFO芯片價格昂貴且容量受限,大大增加了商業成本,因此在實際應用中尋找FIFO代替器件是很有必要的。
這里在視頻信號處理系統中,將利用FPGA作為橋梁,實現對SDRAM的控制,以達到大量高速存取數據的功能。之所以選取SDRAM,主要 是因為在各種隨機存取器件中,SDRAM的容量較大,價格較低,且數據突發傳輸模式大大提高了存取速度,能夠滿足應用的要求。
FIFO的速度受到兩個因素的限制:
(1)SDRAM的最高工作頻率。SDRAM的工作頻率越高,數據的傳輸速率就越高;
(2)SDRAM的突發長度。SDRAM的突發長度越長,對數據流的吞吐量就越大,可以從某種程度上提高數據的傳輸速率。
FIFO的大小由所選SDRAM芯片的容量來決定。該設計以采用MICRON公司的MT48LC4M3282(4 BANK×4M×32 b)為例,存儲容量為128 Mb,數據帶寬為32位,內部由4個BANK組成,每個BANK有4 096行和256列。
MT48LC4M3282的控制信號有CLK(時鐘信號)、CKE(時鐘使能)、CS(片選信號)、WE(寫使能)、CAS(列有效)、RAS(行有效)、DQM0~DQM3(輸入輸出使能)。控制信號組成的常用控制命令如表1所示。
FIFO系統由FGPA和SDRAM兩部分組成。其中,FGPA內部包含FIFO監控器、緩沖器、SDRAM控制器三個模塊。FIFO監控器的作用是將FIFO的狀態轉變成狀態機的讀、寫信號。若操作為向SDRAM寫數據,則在FIFO已滿時,FIFO監控器送出一個信號,以阻止寫操作繼續向FIFO中寫數據而造成溢出;若操作為向SDRAM讀數據,則在緩沖器已空時,FIFO監控器送出一個信號,以阻止讀操作繼續從FIFO中讀數據而造成無效數據的讀出。FIFO的模塊結構如圖1所示。
SDRAM控制器的模塊結構如圖2所示,其中SDRAM控制器內部包括:初始化模塊、模式寄存器、控制模塊和狀態機。SDRAM的接口設計是極其關鍵的,可根據SDRAM內部操作狀態之間的聯系,通過狀態機來實現接口設計。初始化模塊負責SDRAM的初始化,在上電和時鐘穩定后等待100 ms,至少執行一條空操作,然后對所有頁執行預充電操作,使所有頁處于空閑狀態,接著向各頁發出兩條刷新操作指令,最后發出一個模式寄存器裝載命令,使SDRAM有確定的狀態進行讀寫操作。模式寄存器可根據要求對SDRAM的突發長度、突發類型、CAS延時的時鐘數、運行模式和寫突發模式進行設置,確定SDRAM在讀寫操作時的工作狀態。模式寄存器M0~M2用于規定突發長度,可以為1,2,4,8。M3用于規定突發類型,當M3=0時,突發類型是連續的;當M3=1時,突發類型是交錯的。M4~M6用于規定CAS延遲的時鐘周期數,可以分為1,2,3。M7,M8用于規定運行模式。M9用于規定寫突發模式,當M9=0時,按實際編程的突發長度存取;當M9=1時,按單個存取單元寫入,但可按實際編程的突發長度讀出。
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV