基于FPGA多路機載冗余圖像處理系統(tǒng)的設(shè)計與實現(xiàn)
摘要:采用以FPGA作為核心處理器,實現(xiàn)了對多路DVI視頻冗余信號的解碼、編碼、實時處理以及輸出顯示,并且信號通道增加冗余設(shè)計,因而加強了系統(tǒng)的穩(wěn)定性和可靠性。電路設(shè)計簡潔,具有較強的靈活性和擴展性。通過實際測試結(jié)果表明,系統(tǒng)能夠流暢地對1 600x1 200分辨率,60 Hz刷新率,24位真彩色的高清視頻進行實時處理,其系統(tǒng)可靠、穩(wěn)定,實用性強。
本文引用地址:http://cafeforensic.com/article/201610/307135.htm0 引言
DVI(數(shù)字視頻接口)是當前數(shù)字顯示領(lǐng)域研究和應(yīng)用的熱點,面向DVI輸出的視頻處理技術(shù)不僅解決了顯示器高分辨率、高刷新率等問題,而且提高了穩(wěn)定性和顯示性能,并進一步降低了平板顯示器的成本。因此,面向DVI輸出的視頻控制器的研究具有十分重要的現(xiàn)實意義。
根據(jù)DVI標準,一條TMDS通道可以達到165 MHz的工作頻率和10 b接口,也就是可以提供1.65 Gb/s的帶寬,這足以應(yīng)付1 920x1 080@60 Hz(23寸LCD)的顯示要求。另外,為了擴充兼容性,DVI還可以使用第二條TMDS通道,這樣其帶寬將會超過3 Gb/s。也正是由于其較高的帶寬優(yōu)勢,目前DVI已經(jīng)成為了IT業(yè)界最具前途的規(guī)范。
DVI具有支持高帶寬數(shù)據(jù)傳輸和高清晰圖像顯示的優(yōu)點。模擬視頻的顯示是通過數(shù)字到模擬到數(shù)字的轉(zhuǎn)化實現(xiàn)的,而DVI接口無需進行這些轉(zhuǎn)換,直接數(shù)字到數(shù)字,避免了信號轉(zhuǎn)換而帶來的圖像質(zhì)量損失,使圖像的清晰度和細節(jié)表現(xiàn)力都得到了大大提高?;谝陨蟽?yōu)點,DVI接口被廣泛應(yīng)用于航空、航天等領(lǐng)域。
1 總體方案設(shè)計
1.1 總體方案原理框圖
用戶輸入4路DVI信號,然后根據(jù)輸入信號特性進行選擇,將視頻信號實時顯示在液晶屏上。另外,將實時顯示的圖像回送給記錄儀,此時記錄儀實時記錄當前的信息以及故障信息,確保在全任務(wù)階段圖像顯示的正確性。根據(jù)設(shè)計要求,選擇Altera公司生產(chǎn)的FPGA芯片EP2S30 F1020I4為主控芯片,配置芯片選用EPCS16SI16N。利用FPGA內(nèi)部豐富的邏輯資源和強大的IP核,配以相應(yīng)的外部電路,構(gòu)建出一個靈活、簡潔、可靠的機載視頻圖形處理系統(tǒng)的嵌入式硬件模塊。其總體方案原理框圖如圖1所示。
1.2 DVI編解碼設(shè)計
在很多設(shè)計中,設(shè)計人員為了方便,簡化電路,可能不會增加均衡器,對輸入信號不進行處理。從而在后期的產(chǎn)品試驗過程中,很容易就會出現(xiàn)信號顯示質(zhì)量差,兼容性差的缺陷,導(dǎo)致整個產(chǎn)品重新設(shè)計或整改,延緩了產(chǎn)品交貨進度。根據(jù)用戶輸入的視頻特性,本文采用均衡器+DVI編、解碼器的方式,對輸入、輸出信號進行轉(zhuǎn)換處理。這樣處理有如下優(yōu)點:傳輸距離較長,信號干擾小;外圍電路簡單,設(shè)計靈活、可靠;系統(tǒng)速度快、靈活性強、功能可擴展,系統(tǒng)兼容性好。
在本系統(tǒng)中,選用TI公司生產(chǎn)的均衡器DS16EV5110,該器件具有功耗低、體積小、外圍電路簡單等特點。另外,DVI編解碼芯片選用TI公司生產(chǎn)的芯片TFP401和TFP410,同樣具有功耗低、體積小、外圍電路簡單等特點。該器件控制引腳直接連接至FPGA,可以很好控制這些器件的工作狀態(tài),以便減小功耗。并且,整個FPGA內(nèi)部邏輯控制簡單、可靠。
在硬件電路設(shè)計中,還需要考慮高頻特性對信號的影響。整個系統(tǒng)顯示的分辨率為1 600x1 200@60Hz,信號位為真彩色24 b,采用奇偶方式,參考時鐘162 MHz,DVI編碼時鐘為10×162 MHz=1.62 GHz,其編碼碼元理論寬度僅為t=1/1.62 Hz=0.62 ns,則碼元的最大變化時間應(yīng)在0.62/4=0.16 ns之內(nèi)??紤]數(shù)據(jù)傳輸?shù)目煽啃院头€(wěn)定性,采用雙像素傳輸,可以大大降低信號采樣頻率。此外,還要考慮到PCB布局地線的完整性和供電去耦特性。其編解碼芯片混合信號的供電參考電路如圖2所示。
2 SDRAM視頻緩存設(shè)計
2.1 SDRAM選擇依據(jù)
整個系統(tǒng)顯示的分辨率為1 600x1 200@60 Hz,信號位為真彩色24 b,則一幀圖像所需需要存儲的容量C=1 600×1 200×24=46 080 000 b≈47 Mb;考慮到SDRAM乒乓操作和容量等問題,選用MICRO公司生產(chǎn)的容量為128M的MT48LC4M3282TG-6器件,速度等級6,時鐘頻率達到166 MHz。該器件具有32根數(shù)據(jù)線和12根地址線,還有一些控制線。通過在FPGA內(nèi)部搭建邏輯控制單元,可以很好的控制SDRAM視頻信號的翻轉(zhuǎn)等操作。
2.2 FPGA內(nèi)部原理邏輯框圖
FPGA內(nèi)部原理邏輯框圖如圖3所示。
2.2.1 FPGA內(nèi)部邏輯功能介紹
(1)信號輸入模塊
這部分的主要功能是接收外部輸入的視頻信號,增強輸入信號的驅(qū)動能力,為信號的后續(xù)處理做準備。其用Verilog語言實現(xiàn)的邏輯代碼如下所示:
(2)數(shù)據(jù)流選擇模塊
根據(jù)需要選擇兩路輸入視頻信號中的一路進行輸出。
(3)SDRAM乒乓操作和控制模塊
由于SDRAM乒乓操作具有節(jié)省緩沖區(qū)空間、流水線式算法以及低速模塊處理高速數(shù)據(jù)流的特點。因此,本設(shè)計采用乒乓操作SDRAM。
SDRAM作為整個圖像處理系統(tǒng)的緩存,起著至關(guān)重要的作用。它將外部輸入的圖像按幀存入SDRAM中,然后按幀將圖像數(shù)據(jù)送到外部繼續(xù)處理。FPGA的控制邏輯所需要完成的功能有:接收來自外部的圖像數(shù)據(jù),并進行緩沖和數(shù)據(jù)重組,產(chǎn)生符合SDRAM控制器位寬的數(shù)據(jù)信號;產(chǎn)生對SDRAM的讀、寫命令和地址,并將它們寄存在FIFO中,隨時供SDRAM控制器提取。因此,系統(tǒng)需要一個地址產(chǎn)生邏輯;對SDRAM進行直接控制,將用戶產(chǎn)生的地址命令進行解析,產(chǎn)生讀/寫、刷新等一系列操作,對SDRAM發(fā)出的各種命令要符合特定的時序要求。在上電的時候還必須完成對SDRAM的初始化工作;建立用戶與SDRAM的數(shù)據(jù)通道,在SDRAM和用戶接口之間傳遞需要寫入或者讀出的數(shù)據(jù),并且調(diào)整對應(yīng)讀/寫操作的DQS信號時序,使其滿足SDRAM的要求;緩存從SDRAM中讀出的數(shù)據(jù),由于直接讀出的速度非常高,直接處理會對后端產(chǎn)生很大的壓力。因此,需要進行緩存之后才送到后續(xù)處理。
(4)輸出時序生成模塊
這部分模塊的主要功能是對SDRAM進行操作,生成需要的視頻時序信號以及生成驅(qū)動液晶屏的視頻信號。
2.2.2 SDRAM操作
為了滿足前后端數(shù)據(jù)流匹配,并實時發(fā)送,這里采用了SDRAM讀寫交替進行的讀寫方式。
SDRAM讀到寫時序圖如圖4所示。寫入和讀出操作的發(fā)起是由行激活命令開始的,命令為10011,發(fā)起的同時sdram_addr送入列地址,發(fā)起寫入讀出命令時送入行地址。寫入命令與數(shù)據(jù)同步,讀出命令在發(fā)出后潛伏期時間后送出數(shù)據(jù)到端口,sdram_data為SDRAM的輸入輸出數(shù)據(jù)端口。預(yù)沖方式采用了自動預(yù)沖,即在發(fā)起讀寫命令時將地址位A10置高就可以在讀寫操作后SDRAM內(nèi)部自動進行預(yù)沖操作,不需要發(fā)出額外命令,自動預(yù)沖占用4個時鐘周期。
3 仿真分析以及測試結(jié)果
讀寫操作交替進行仿真圖如圖5所示。圖5中包含了兩個寫入操作,一個讀取操作。
SDRAM在完成讀寫操作的同時還需要完成每64 ms全行(4 096行)自動刷新操作,為所有行進行充電,不然就會導(dǎo)致SDRAM內(nèi)的數(shù)據(jù)丟失。自動刷新時序圖如圖6所示。這里將自動刷新操作穿插在讀寫當中,經(jīng)計算為15μs需進行一次自動刷新操作,通過一個計數(shù)器每15μs發(fā)起一次自動刷新請求,程序檢測到自動刷新操作請求后進行自動刷新操作然后再進行讀寫操作,自動刷新操作占用10個時鐘周期。圖7為寫和讀之間穿插了一次自動刷新操作,操作命令為10001。
測試結(jié)果證明,該緩存系統(tǒng)實現(xiàn)了預(yù)定功能,可以對視頻數(shù)據(jù)進行更方便的操作與管理。SDRAM操作前與操作后圖形效果對比如圖8所示。
4 結(jié)語
本文介紹了某機載實時冗余視頻圖形處理系統(tǒng)的硬件電路設(shè)計方案,該系統(tǒng)利用FPGA設(shè)計結(jié)構(gòu)化狀態(tài)機實現(xiàn)對SDRAM的控制,完成了對數(shù)據(jù)的緩存設(shè)計,實現(xiàn)了對多路DVI視頻冗余信號的解碼、編碼、實時處理以及輸出顯示。該系統(tǒng)電路設(shè)計簡潔,具有速度快、可靠性高、靈活性強和功能可擴展等優(yōu)點。并且,由于信號通道增加冗余設(shè)計,因而加強了系統(tǒng)顯示的穩(wěn)定性和可靠性。本系統(tǒng)已經(jīng)投入使用,其性能可靠、穩(wěn)定,實用性強。該方法值得推廣。
評論