基于FPGA的快速9/7整形離散小波變換系統設計
2 9/7二維離散小波變換的系統設計過(guò)程
本文在Xilinx公司提供的ISE7.1集成設計軟件環(huán)境下,采用VHDL語(yǔ)言設計實(shí)現9/7二維離散小波變換系統,首先進(jìn)行小波行變換,行變換后的數據按照行數輸入內部RAM緩存,然后對行變換后的數據再進(jìn)行列變換,最后將低頻系數dLLl輸入RAM緩存,其余高頻系數dLHl,dHLl,dHHl輸出到外掛RAM中緩存,系統設計流程,如圖2所示。
2.1 行變換過(guò)程
首先,使用7個(gè)移位寄存器來(lái)實(shí)現對數據的讀寫(xiě)傳輸,每到來(lái)一個(gè)時(shí)鐘控制信號(clk),就往移位寄存器中讀寫(xiě)一個(gè)數據,數據在移位寄存器中的傳輸過(guò)程,如圖3所示。
當輸入第5個(gè)數據時(shí),就可以根據式(1)和式(5)分別計算出第一個(gè)高通系數值D0和第一個(gè)低通系數值C0,下一個(gè)時(shí)鐘控制信號讀入第6個(gè)數據時(shí),不進(jìn)行操作,當控制讀入第7個(gè)數據時(shí),根據式(2)和式(6)分別計算出第2個(gè)高通系數值Dj和第2個(gè)低通系數值Cj,小波行變換后的高通系數D和低通系數C采用地址傳輸的方式交叉存儲到6個(gè)內部RAM當中,如圖4所示。
2.2 列變換過(guò)程
由于列變換是針對行變換后的數據進(jìn)行的,即對上面6片RAM中存儲的行變換后的數據進(jìn)行列變換,為了提高運行速度,本文采用基于行的列變換方法,即當小波變換進(jìn)行到第5行時(shí),列變換也同時(shí)進(jìn)行,第5行行變換結束時(shí),也完成了針對第5行數據的列變換,當第6行進(jìn)行小波變換時(shí),不進(jìn)行列變換操作,直到第7行小波行變化數據輸入時(shí),再同時(shí)進(jìn)行列變換計算操作,依次完成小波列變換。對于列小波變換后的低頻數據dLLl,要輸入RAM緩存以進(jìn)行下一級變換,對于其他的高頻數據(dLHl,dHLl,dHHl)可以直接輸出到片外存儲器中。
下面是設計的一級二維小波變換的集成模塊,如圖5所示。
p2p機相關(guān)文章:p2p原理
評論