JPEG2000中53離散小波多層變換FPGA實(shí)現研究
3.2 地址生成模塊的設計
對于做三層的離散小波變換,每層對RAM的(行/列)讀/寫(xiě)地址都不相同,所以在地址生成模塊中分別做了三層各自的地址模塊,每個(gè)單層地址模塊產(chǎn)生2路讀地址信號、2路寫(xiě)地址信號和1路寫(xiě)地址使能信號。首先產(chǎn)生行變換的讀/寫(xiě)地址,在行變換完成之后產(chǎn)生列變換的讀/寫(xiě)地址,在列變換完成之后,給出一個(gè)EndOfBlock信號返回給圖4中的Control模塊。由Control模塊控制分層地址模塊的使能以及Select模塊選擇有效地址信號輸出,并且通過(guò)對讀地址計算算法的調度,實(shí)現分裂和邊界延拓功能,不需要另外設計單獨的處理模塊,地址生成模塊的總體框圖如圖4所示。
4.功能仿真及FPGA測試驗證
該設計采用了流水線(xiàn)技術(shù)即通過(guò)插入寄存器,使得一組輸入數據的計算分布在同一個(gè)時(shí)鐘周期中,從而提高資源利用率,增加電路的數據處理量,提高了性能,在此用Verilog HDL描述實(shí)現。
4.1 功能仿真
在ModelSim的測試模塊中設置時(shí)鐘為100 MHz,圖5為部分仿真結果,輸入數據在經(jīng)過(guò)3個(gè)時(shí)鐘周期后計算出LH分量輸出。由此可見(jiàn),一維小波變換模塊的設計符合JPEG 2000標準規定,結果正確。
二維小波變換結果就是,在行變換結束之后對于行方向上面的LH分量再做列方向上的小波變換,得到LL,HL,LH,HH分量,對于多層小波變換就是在前一層變換的結果上對LL子帶再進(jìn)行二維DWT變換,多層小波變換的示意圖如圖6所示。
4.2 FPGA測試驗證
該設計的FPGA驗證采用Altera的DE2開(kāi)發(fā)板平臺,開(kāi)發(fā)板采用CycloneⅡEP2C35作為主FPGA芯片,具有豐富的I/O接口與顯示存儲設備,可以滿(mǎn)足該設計的驗證工作。
本次FPGA的驗證中使用Altera的SignalTapⅡ嵌入式邏輯分析儀。SignalTapⅡ嵌入式邏輯分析儀集成到QuartusⅡ設計軟件中,能夠捕獲和顯示設計中實(shí)時(shí)信號的狀態(tài),這樣開(kāi)發(fā)者就可以在整個(gè)設計過(guò)程中以系統級速度觀(guān)察硬件和軟件的交互作用。它支持多達1 024個(gè)通道,采樣深度達128 Kb,每個(gè)分析儀均有10級觸發(fā)輸入/輸出,使用SignalTapⅡ無(wú)需額外的邏輯分析設備,只需將一根JTAG接口的下載電纜連接到要調試的FPGA器件即可。
下載驗證結果如圖7所示,整個(gè)系統時(shí)鐘可以達到156 MHz,速度很快,耗用資源相對較少,運算結果正確。
5 結語(yǔ)
本文提出了一種快速、有效的JPEG 2000 5/3小波變換的VLSI設計結構,該結構將數據的奇偶分裂、邊界延拓嵌入到地址產(chǎn)生單元對雙端口RAM的操作中,不需要額外的計算單元,采用移位-相加操作代替卷積操作,通過(guò)Verilog編寫(xiě)RTL級代碼并進(jìn)行功能仿真,最后完成了在FPGA上的驗證,最高時(shí)鐘頻率達到156 MHz,整體性能優(yōu)越。
評論