基于小波理論實時壓縮解壓縮芯片ADV611實現實時監
為了使視頻圖像獲得較好的主觀效果,視頻信號壓縮方案的選擇尤為重要。美國AD公司新推出的基于小波理論實時壓縮解壓縮芯片ADV611能較好地實行視頻信號壓縮,用該芯片實現的圖像壓縮具有壓縮可調范圍大,壓縮質量高等優點。
本文引用地址:http://www.j9360.com/article/195330.htm
本文用ADV611實現了多路實時監控、實時存儲,有選擇性地回放某一路、某一段時間圖像的數字視頻監控系統,而且每路都能滿足25幀/s的視覺要求,同時用高分辨率的顯示墻作為實時監控視頻顯示部分(分辨率大于700 dpi),從而在圖像質量、壓縮比、回放速度、監控等方面具有一定的先進性。
1.1 ADV611特性簡介
ADV611是一種低價、單片、低功耗、全數字的CMOS超大規模集成電路。工作溫度范圍是10~70
℃。該芯片不僅集成了視頻編碼/解碼算法,還提供了數據壓縮效果的實時調節手段,數據輸出速率可以靈活控制。ADV611能實時地對包括PAL制式(720×288@50場/s)和NTSC制式(720×243@60場/s)在內的視頻信號實時進行壓縮和解壓縮。壓縮倍數從視覺無失真感的4∶1到7500∶1,
主要用于閉路電視。
1.2 ADV611內部結構及功能
ADV611引出了120個引腳,采用LQFP封裝。圖1是其內部功能方框圖。整個芯片由3個接口模塊和5個數字信號處理模塊組成,它們依次是:
(1)數字視頻I/O接口(Digital Video I/O Port),主要用于提供實時非壓縮視頻接口以支持不同的視頻信號格式。
(2)主機I/O接口(Host I/O Port),包括32位數據總線(D0~D31),兩位地址線(ADR1,ADR2),片選信號(CS),讀信號(RD),寫信號(WR),響應信號(ACK)和中斷信號(INT)。
(3)外部DRAM控制器(External DRAM Manager),控制外部DRAM的讀寫與刷新。
(4)小波變換核(Wavelet Kernel),對圖像進行小波變換時使用的內部緩沖器。提供小波變換所需要的緩沖區,提供足夠大的空間以存儲小波變換后的數據。
(5)片內變換緩沖器(On-Chip Transform Buffer),為小波變換核提供一個內部SRAM。
(6)可編程量化器(Programmable Quantizer),用來量化小波系數,量化所需二進制系數可由計算機或外部DSP進行控制。當主機控制量化系數時,主機通過對前一幀圖像子帶編碼數據的統計計算下一幀的量化步長,在下一幀壓縮之前,將其寫入量化步長寄存器,通過量化步長控制,主機可獲得穩定的壓縮碼流輸出。當利用外部DSP計算每一個頻帶的量化參數“Bin Width”時,這也是一個自適應的實時優化壓縮比特率的過程,ADV611的這種自適應量化特性,即使量化導致比特率突變,也可以獲得幾乎恒定的壓縮比特率。
(7)游程編碼器(Run Length Coder),用來進行游程編碼,查找長字串的零,同時用短的碼子代替。
(8)Huffman編碼器(Huffman Coder),用來進行Huffman編碼,Huffman編碼器用3種固定的Huffman編碼字表燒制于ADV611的ROM中。

ADV611共有84個數據寄存器和若干狀態、控制字寄存器。其中,數據寄存器是片內FIFO的映射,用于存儲經小波變換后的圖像壓縮數據(編碼和解碼過程各需要42個),以供自適應量化和熵編碼進一步數據壓縮。ADV611在片內集成了一些狀態和控制字寄存器,它們都是間接寄存器,ADV611對它們進行統一編址,主機不能直接訪問間接寄存器。為訪問片內FIFO和間接寄存器,ADV611還設置了一組可由主機直接訪問的4個32位直接寄存器,由兩位地址線來選擇。

ブ卸峽刂坪妥刺寄存器的高16位是控制位,設置引起ADV611向主機發出中斷的條件,低16位是狀態位,反映觸發當前中斷的原因。
1.3 高清晰度取景框
ADV611具有高清晰度取景功能,允許一幀中某一矩形區域相對于其它區域有較低的壓縮比,或完全不進行壓縮。矩形區域的位置和大小以及與背景的對比度由主機通過ADV611的主機接口輸入控制字來控制。該功能為用戶在不影響壓縮比的情況下選取某一感興趣的區域作高清晰度顯示提供了捷徑,這也是ADV611特別適用于監控場合的主要原因。
1.4 硬件實現小波變換
ADV611的小波變換模塊采用硬件編碼方式實現了基于Morlet小波的雙正交小波基(7,9)的小波變換和逆變換,每場獨立進行子帶編碼,通過濾波將一幀視頻分成42個可分離的頻帶,然后再進行壓縮,色度分量占總頻帶的2/3即28個頻帶,亮度分量占剩下的14個頻帶。ADV611片內集成了一片SRAM,用作變換時的高速數據緩存,保證視頻信號能實時處理。
1.5 工作原理
ADV611編碼時從它的數字視頻接口接收未壓縮的數字視頻信號,經小波變換和幀抽取、送入量化器進行系數量化、再經游程編碼和Huffman 編碼,產生壓縮后的數據流,送入集成于片內的512×32位大小的FIFO緩存區,一旦FIFO的數據量達到主機在寄存器里的預置值時,ADV611就發出中斷請求信號,從它與主處理器的接口輸出壓縮數據比特流。解碼過程與之相反,壓縮數據由主機送入FIFO,解碼后產生標準的視頻分量從數據視頻接口輸出。編解碼過程如圖2所示。

評論