《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA的多級小波逆變換實時系統(tǒng)設計
基于FPGA的多級小波逆變換實時系統(tǒng)設計
電子科技
鐘云德 史承興 閔 彪
摘要: 針對JPEG2000解碼系統(tǒng)中核心處理模塊——離散小波逆變換(IDWT),采用提升小波算法,提出了一種雙路并行的實現(xiàn)結構,并基于Xilinx公司低功耗的xc2v3000-4-fg676芯片進行布局布線仿真驗證表明,該方案是一種高速、實時的硬件解決方案,能較好地解決JPEG200 0解碼系統(tǒng)中對于小波逆變換實時處理的瓶頸。
Abstract:
Key words :

由JPEG工作組制定的新一代靜止圖像壓縮標準JPEG2000" title="JPEG2000">JPEG2000,引入了小波變換和EBCOT編碼的全新設計結構,使得JPEG2000擁有壓縮比高、支持有損和無損壓縮、碼流隨機存取及處理、逐漸傳輸顯示解碼等優(yōu)點。由于受實現(xiàn)復雜度高、成本控制困難等因數(shù)制約,未能得到廣泛應用。據統(tǒng)計,JPEG2000實現(xiàn)復雜度約是目前主流JPEG實現(xiàn)的30倍。因此,一種廉價、有效、實時的解決方案,對于JPEG2000的推廣應用較為有利。本文針對JPEG2000解碼系統(tǒng)中核心處理模塊——離散小波逆變換" title="小波逆變換">小波逆變換(IDWT),采用提升小波算法,提出了一種雙路并行的實現(xiàn)結構,并基于Xilinx公司低功耗的xc2v3000" title="xc2v3000">xc2v3000-4-fg676芯片進行布局布線仿真驗證表明,該方案是一種高速、實時的硬件解決方案,能較好地解決JPEG200 0解碼系統(tǒng)中對于小波逆變換實時處理的瓶頸。

1 離散小波變換
1.1 離散小波變換
   
小波理論是在調和分析的數(shù)學理論上發(fā)展起來的一個新的應用數(shù)學分支,它和傅里葉變換(Fourier)分析具有密切聯(lián)系,但卻克服了Fo-urier在時域里局部分析能力的缺陷,能夠同時提供較精確的時域定位和較精確的頻域定位,是一種可變分辨率分析。小波分析在時域和頻域同時具有良好的局部化性質,是處理非平穩(wěn)信號的有力工具。它的多分辨率分析是JPEG2000標準中進行漸進式壓縮的基礎。
    離散小波變換(Discrete Wavelet Transform,DWT)由連續(xù)小波ψu,s(t)對尺度參數(shù)s和位置參數(shù)u離散化得到,即取,m,n∈Z,從而得到離散小波
   
    在實際應用中,為了方便計算機處理,在式(1)的基礎上,取a0=2,b0=1,從而得到二進小波
   
    在實際應用中,采用傳統(tǒng)卷積方式實現(xiàn)的第一代小波存在一些明顯缺點:
    (1)信號經過小波變換后產生的浮點數(shù)不能由有限字長的計算機精確地重構。
    (2)圖像的尺寸大小有限制,并不能對所有尺寸的圖像進行變換處理。
    (3)對內存需求量大,不適宜DSP、FPGA等硬件實現(xiàn)。
    為了克服這些問題并將小波普適化,目前工程應用中主要借用提升算法(Lifting Scheme)直接在空間域上計算小波系數(shù)的方式來構造。提升方法既保持了原有的小波特性,又克服平移伸縮不變性所帶來的局限,而且還能擺脫傳統(tǒng)的濾波器和傅里葉的頻域概念,保證在高倍數(shù)據壓縮情況時的圖像質量。
1.2 CDF9/7小波提升算法
   
JPEG2000標準給出兩種雙正交小波濾波器,即有損壓縮和無損壓縮,前者采用CDF9/7小波,后者采用5/3小波。CDF9/7小波是圖像壓縮的首選濾波器,自然圖像壓縮性能好于5/3小波。因此本論文選擇CDF9/7小波進行提升格式小波變換硬件設計,其提升結構和實現(xiàn)步驟分別如圖1所示。


    對于CDF9/7小波,取(α,β,γ,δ,ζ)=(1.586 134 342,0.052 980 118,0.882 811 076,0.443 506 852,1.149 604 398)。

2 CDF9/7小波逆變換的VLSI實現(xiàn)
2.1 整體方案分析
   
離散小波逆變換模塊處于JPEG2000解碼系統(tǒng)最后一級,它負責將前端EBCOT解碼得到的數(shù)據進行小波逆變換處理以獲得重構圖像信息。由于逆變換模塊的數(shù)據并不如正變換模塊一樣直接來自外部數(shù)據總線,而是來自前端的EBCOT解碼數(shù)據,因此既不能用協(xié)議的方式規(guī)定輸入數(shù)據的順序,也不能保證EBCOT解碼數(shù)據等時間間隔均勻輸出,所以在前端EBCOT模塊和離散小波反變換模塊之間需要使用存儲器進行緩存。
    由于連續(xù)小波基能夠消除圖像的方塊效應,因此為了降低高倍壓縮時各編碼塊之間的邊際效應,在滿足工程實現(xiàn)要求的同時提高壓縮質量,一般需要選擇盡可能大的圖像塊進行處理。顯然,這受限于原始圖像本身的大小和存儲器的大小。為避免小波變換的圖像尺寸受存儲器的大小限制,同時避免使用昂貴的大內存FPGA芯片,本設計中選擇使用片外存儲器緩存接收到的數(shù)據幀。
2.2 整體方案設計
   
小波逆變換需要在接收到完整的一幀數(shù)據之后才能啟動,而且對于N個像素點的圖像,完成JPEG2000解碼系統(tǒng)中的3層小波逆變換處理,需要M=N/16+N/16+N/4+N/4+N+N=2.625N個時鐘周期。為了降低系統(tǒng)功耗,本設計并不采用倍頻實現(xiàn),而提出了一種雙路并行的實現(xiàn)結構,其整體方案粗略結構如圖2所示。


    圖2中箭頭指示數(shù)據流向,箭頭中的數(shù)字表示數(shù)據寬度,2對片外存儲器采用乒乓方式輪詢切換。本方案首先使用兩路并行的核心計算單元(ILWC1和ILWC2)完成前3列2行逆變換處理(第3層小波逆變換、第2層小波逆變換和第1層小波列逆變換),這期間的數(shù)據交替的在IRAM1和IR-AM3或者IRAM2和IRAM4之間存??;然后再使用第3個獨立的核心計算單元(ILWC3)完成剩余的最后一次小波逆變換處理(第一層小波行逆變換),處理完畢的數(shù)據。由于單個小波系數(shù)位寬為18 bit(4 bit小數(shù)位確保精度要求),因此片外存儲器每個36 bit的存儲單元中可以同時存放兩個小波系數(shù)。在前3列2行逆變換處理過程中,每次讀取的2個小波系數(shù)可以分別提供給ILWC1和ILWC2并行處理,在第一層小波行逆變換時則由一個二通道選擇器(MUX2)對數(shù)據的高、低18 bit位進行選擇分時提供給ILWC3。數(shù)據組織模塊(Iogz)的功能就是將ILWC1和ILWC2這兩個處理模塊完成的行、列變換數(shù)據進行合并重組,以便對片外RAM進行讀寫的36 bit外部總線數(shù)據總是由兩個18bit小波系數(shù)分別以總線數(shù)據的高18bit和低18 bit的形式組合而成。
    基于以上實現(xiàn)方案,對于N個像素點的圖像,首先由ILWC1和ILWC2完成3列2行逆變換需要M1=N/32+N/32+N/8+N/8+N/2=0.812 5N個時鐘周期,然后由ILWC3獨立最后一層行變換需要M2=N個時鐘周期。因此,兩個處理過程所需的總時間M=M1+M2=1.812 5N不超出允許的存儲器占用上限(2N),能夠保證對連續(xù)輸入的小波系數(shù)進行實時的處理。4個存儲器輪詢狀態(tài)和FPGA的功能狀態(tài)參見圖3。


2.3 核心計算單元ILWC設計
   
由圖4所示,核心計算單元對高低頻系數(shù)的伸縮擴展共用一個乘法器,因此平均每個小波系數(shù)所需進行的乘法和加法次數(shù)分別為5次和8次,相對于卷積運算的9次和14次,計算復雜度顯然是降低了很多。



3 軟件及硬件資源的選用
3.1 工作環(huán)境

    本設計基于Xilinx公司ISE 9.1開發(fā)平臺之上,使用VHDL語言(93版本)編程實現(xiàn)。系統(tǒng)采用Synplify8.1進行綜合,使用Modelsim SE 6.0d進行仿真驗證。在沒有添加任何約束的情況下,其性能參數(shù)如表1所示。


    選用Virtex-Ⅱ" title="Virtex-Ⅱ">Virtex-Ⅱ系列的芯片原因在于:(1)軟件開發(fā)工具友好,開發(fā)容易,性價比高;(2)低功耗、低工作電壓,滿足實時設備的要求;(3)仿真可靠,幾乎完全接近實際情況;(4)可重復擦寫型FPGA,設計靈活,適用于方案改進。
3.2 實驗結果
   
本系統(tǒng)采用8位64×4 096的原始圖像經過3層定點化小波處理所得的14位小波系數(shù)為測試數(shù)據,實驗處理結果與VC軟件定點化逆小波處理結果一致,表明本系統(tǒng)能正確的滿足應用要求,圖5為本系統(tǒng)工作整體仿真圖。系統(tǒng)在同步信號Syn低電平有效期間,根據切換信號Exg的高、低電平選擇片外存儲器進行乒乓操作。首先數(shù)據由Data輸入到片外存儲器,作為逆變換的測試數(shù)據,處理完成之后由Result端輸出,并以一個高電平脈沖信號Endn標記處理完畢。



4 結束語
   
本文討論下JPEG2000解碼系統(tǒng)中的CDF9/7小波逆變換模塊的設計要求,借助提升算法原位操作的特點,所提出的雙路并行的實時處理方案無需任何內部存儲空間,而外部存儲空間的大小完全取決于處理圖像塊尺寸的大小。在視頻及衛(wèi)星遙感圖像這類實時性要求非常強的圖像處理中,本系統(tǒng)能很好地滿足應用需求。

此內容為AET網站原創(chuàng),未經授權禁止轉載。