<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 基于DSP和FPGA的實(shí)時(shí)圖像壓縮系統設計

基于DSP和FPGA的實(shí)時(shí)圖像壓縮系統設計

作者: 時(shí)間:2010-07-20 來(lái)源:網(wǎng)絡(luò ) 收藏
目前使用的圖像采集系統輸入信號通常為PAL或者NTSL制式的CVBS復合信號,壓縮速度25幀/s(PAL)或者30幀/s(NTSC)。但在工業(yè)控制、航天以及安防領(lǐng)域,有時(shí)需要監測快速移動(dòng)的目標,或者瞬間發(fā)生的物理現象,事后還要對數據進(jìn)行分析、處理。為了提高測量精度,通常需要采用高頻幀圖像采集系統。本文針對某Camera Link接口的圖像傳感器,設計了一個(gè)高頻幀圖像采集系統,該系統能夠每秒采集100幀,并對其進(jìn)行JPEG壓縮,壓縮完的數據通過(guò)RS422傳輸至遠處的監測系統。
1 系統工作原理及硬件設計
系統由Camera Link接口模塊、以為核心的圖像采集預處理與傳輸單元、以為核心的圖像壓縮單元以及RS422遠距離數據傳輸單元組成。由于采集、處理均需要訪(fǎng)問(wèn)存儲器,為了降低成本,采用普通的異步SRAM,按功能區分可分為采集SRAM和壓縮處理SRAM。讀寫(xiě)邏輯由控制,采用乒乓機制進(jìn)行切換。整個(gè)系統結構如圖1所示。

本文引用地址:http://dyxdggzs.com/article/191641.htm

系統工作過(guò)程:圖像信號經(jīng)由LVDS轉換芯片后轉換成LVTTL信號,直接傳送至解碼為8位數據,以字節方式一行一行寫(xiě)入SRAM靜態(tài)存儲器(存儲器由兩部分組成),用于乒乓緩存輸入數據,每部分滿(mǎn)1幀后由FPGA控制送出幀中斷給,啟動(dòng)EDMA讀入1幀數據,采用JPEG2000方式編碼后連續寫(xiě)入到FIFO_OUT,FPGA負責從FIFO_OUT讀出數據,非空即讀,緩存積累不會(huì )超過(guò)1幀數據。讀出的數據另行打包后以9 Mb/s的碼率通過(guò)DS26LV31 422接口芯片從out1接口輸出,或者分流后從out1和out2以各4.5 Mb/s的碼率輸出。
2 FPGA功能模塊設計
2.1 Camera Link接口模塊

Camera Link接口模塊負責對高頻幀數字攝像頭輸出的LVDS信號轉換為T(mén)TL標準信號。
關(guān)于Camera Link的采集數據的邏輯代碼,關(guān)鍵之處在于產(chǎn)生存儲器的地址信號、存儲器寫(xiě)信號以及在對應的地址處將數據穩定地寫(xiě)進(jìn)存儲器。本系統用像素時(shí)鐘產(chǎn)生列地址計數器、行同步信號產(chǎn)生行地址計數器,兩者拼接產(chǎn)生存儲器的地址信號。這樣產(chǎn)生的有效地址雖然不連續,但意義明確,而且有利于顯示部分的隔行隔列顯示。對于8 bit的數據,可將2個(gè)有效數據拼接成16 bit后再存儲,這樣可以提高FPGA讀寫(xiě)存儲器的速度。
Camera Link接口時(shí)序如圖2所示。

圖2中:VD為幀同步信號,電平模式,高電平有效;HD為行同步信號,脈沖模式,上升沿有效;PCLK為像素同步時(shí)鐘,脈沖模式;DATA為10 bit圖像數據,在PCLK的下降沿推出,接收端在PCLK上升沿采集,PCLK為常運行模式。每個(gè)VD有效期內有480個(gè)HD有效信號,在第0~478個(gè)HD有效時(shí),每個(gè)HD有效期間有600個(gè)有效圖像數據,第479個(gè)HD(即每幀的最后1行)有效時(shí),前600個(gè)DATA為有效圖像數據,600個(gè)DATA后預留6個(gè)字節輸出圖像相關(guān)信息,即第D600~D605為預留字節。
2.2 SRAM乒乓緩存
在圖像采集處理系統中,DSP的壓縮算法在實(shí)現時(shí)間上往往并不是固定不變的,然而前端的采集模塊卻使用均勻速度對圖像進(jìn)行采集,這樣存在時(shí)間上的不同步,有可能會(huì )導致圖像數據的丟失和影響幀數據的完整性[2]。為此,本系統在采集和壓縮模塊之間增加1個(gè)緩沖電路來(lái)解決這一問(wèn)題。
常用的緩沖電路主要有3種[3]:雙口RAM結構、FIFO結構和乒乓結構。由于乒乓結構可以使用相對比較便宜的高速大容量SRAM,而且可以實(shí)現數據的連續性,因此本系統采用了乒乓結構雙SRAM作為視頻數據的緩沖。在將1幀圖像的數據全部存儲完以后,DSP再利用很短的時(shí)間直接將1幀圖像數據讀入片內,這樣既可以保證不丟失像素數據、DSP可以連續采集每1幀像素數據,又能為DSP留出更多空余時(shí)間,為后面進(jìn)行圖像處理提供可能。為了實(shí)現數據幀的完整性,必須保證讀取數據幀的優(yōu)先級要高于寫(xiě)數據幀的優(yōu)先級,所以本系統的數據輸入輸出單元是根據數據處理流程來(lái)進(jìn)行切換的。


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>