基于小波視頻編解友專(zhuān)用芯片的視頻卡的設計與實(shí)現
摘要:提出了一個(gè)利用小波視頻編解碼專(zhuān)用芯片搭建的視頻壓縮解壓縮卡,對其硬件實(shí)現做了具體描述。
本文引用地址:http://dyxdggzs.com/article/167016.htm關(guān)鍵詞:小波變換 ADV612專(zhuān)用芯片 IIC總線(xiàn) 視頻采集與壓縮
小波變換作為一種信號分析方法,具有多尺度、多分辨率分析和時(shí)域局部化與頻域局部化等優(yōu)點(diǎn)。小波變換是一種頻率上伸縮自由的變換。當信號帶寬較窄時(shí),它可以通過(guò)縮小的方式使得對窄帶信號的刻劃較為精細;當信號帶寬較寬時(shí),它可以通過(guò)放大的方式使描述能夠滿(mǎn)足精度需要。因而小波變換是一種不受帶寬約束的圖像壓縮方法。與傳統的基于DCT變換的編碼方法相比,基于小波變換的圖像編碼是對整幅圖像進(jìn)行變換,充分利用了圖像整體相關(guān)性并消除了傳統分塊編碼方法帶來(lái)的方塊效應。小波級數可以在不同分辨率下逼近某一函數,實(shí)現多分辨率分解。多分辨率分解使我們可以在不同的刻畫(huà)精度上對源圖像進(jìn)行逼近,在不同層次上對原圖像進(jìn)行壓縮,突破了傳統編碼方法的壓縮比限制,從而獲得很高的壓縮比。小波變換的優(yōu)越性能使其在視頻圖像編碼領(lǐng)域得到廣泛應用,目前,利用小波變換進(jìn)行圖像編碼的專(zhuān)用芯片已經(jīng)問(wèn)世。
本文介紹小波視頻編解碼專(zhuān)用芯片ADV612,并描述基于ADV612的視頻壓縮卡的設計與實(shí)現。
1 小波視頻編解碼專(zhuān)用芯片ADV612
1.1 ADV612系統功能介紹
ADV612 是本文所描述的視頻卡的核心部件,是由ANALOG公司推出的小波視頻編解碼專(zhuān)用芯片。ADV612采用了高密度GMOS集成電路技術(shù),整個(gè)芯片由數字視頻I/O接口,高清晰取景框控制、小波變換與幀抽取、片內SRAM、片內DRAM控制器、自適應量化器與熵編碼器、FIFO壓縮數據緩存與主機接口等功能模塊搭成,如圖1所示。
數字視頻I/O接口支持 CCIR601國際標準格式。編碼時(shí),數字視頻從數字視頻接口輸入,經(jīng)幀抽取和小波變換,送入量化器進(jìn)行量化。量化后的數據送入熵編碼器,進(jìn)行游程編碼和霍夫曼編碼,產(chǎn)生最后的壓縮數據流,送入集成于片內的512×32位大小的FIFO緩存。當片內FIFO的數據量達到主機的預設值時(shí),ADV612發(fā)出中斷,通知主機取走數據。解碼過(guò)程與之相反,壓縮數據由主機送入FIFO,解碼后產(chǎn)生CCIR601格式的數據視頻數據,從數字視頻接口輸出。
1.2 ADV612的特性
1.2.1 高清晰度取景框功能
ADV612 支持一種稱(chēng)為高清晰度取景框的功能。該功能允許一幀中某一矩形區域相對于其他區域(我們稱(chēng)之為背景)有較低的壓縮比,或完全不進(jìn)行壓縮。矩形區域的位置和大小以及與背景的對比度由主機通過(guò)ADV612的主機接口輸入控制字來(lái)控制。該功能為用戶(hù)在不影響壓縮比的情況下選取某一感興趣的區域作高清晰度顯示提供了捷徑,從而使整個(gè)系統特別適用于監控場(chǎng)合。
1.2.2 精確的碼流控制
ADV612 的自適應量化器允許主機控制量化步長(cháng)。主機通過(guò)對前一幀圖像子帶編碼數據的統計計算出下一幀的量化步長(cháng),在下一幀壓縮開(kāi)始前將其寫(xiě)入量化步長(cháng)寄存器。通過(guò)量化步長(cháng)控制,主機可以獲得穩定的壓縮碼流輸出。這對帶寬有限的網(wǎng)絡(luò )傳輸特別有利,使其不會(huì )因為圖像內容的劇烈變化而引起壓縮碼流的突變,造成網(wǎng)絡(luò )擁塞。
1.2.3 硬件編碼實(shí)現小波變換
考慮到小波變換龐大的計算量,ADV612的小波變換模塊采用硬件編碼的方法實(shí)現了以Morlet小波為正交小波基的小波變換和小波逆變換,保證了視頻信號能夠實(shí)時(shí)處理。片內集成了一片SRAM,用作變換進(jìn)的高速數據緩存。
1.3 ADV612的主機接口
為存儲主機設定的ADV612編解碼過(guò)程中所需參數和反映工作狀態(tài),ADV612在片內集成了若干控制字寄存器和狀態(tài)寄存器??刂谱旨拇嫫骱蜖顟B(tài)寄存器稱(chēng)為間接寄存器,ADV612將控制字寄存器和狀態(tài)寄存器統一編址。主機不能直接訪(fǎng)問(wèn)間接寄存器。
為訪(fǎng)問(wèn)間接寄存器和片內FIFO,ADV612設置了一組可由主機直接訪(fǎng)問(wèn)的寄存器,稱(chēng)為直接寄存器。共有四個(gè)32位直接寄存器:間接地址寄存器、間接數據寄存器、壓縮數據寄存器、中斷控制和狀態(tài)寄存器。間接地址寄存器存放欲訪(fǎng)問(wèn)的間接寄存器的地址;間接數據寄存器存放從間接寄存器讀出的或欲寫(xiě)入間按寄存器的數據;壓縮數據寄存器是片內FIFO的映射,讀寫(xiě)該寄存器就會(huì )將數據讀出或寫(xiě)入FIFO中;中斷控制和狀態(tài)寄存器的高16位是控制位,設置引起 ADV612向主機發(fā)出中斷的條件,低16位是狀態(tài)位,反映觸發(fā)當前中斷的原因。
ADV612的主機接口包括:32位數據總線(xiàn)(D31~D0)、兩位地址線(xiàn)(ADR1ADR0)、片選信號(CS)、讀信號(RD)、寫(xiě)信號(WR)、響應信號(ACK)和中斷輸出(INT)。兩閏地址線(xiàn)用來(lái)選擇四個(gè)直接寄存器:
ADR1,ADR0=(0,0) 間接地址寄存器
(0,1)間接數據寄存器
評論