【技术实现步骤摘要】
本专利技术属于电子电路
,特别涉及一种基于Zynq系列FPGA的时分复用二维小波变换系统,可用于图像处理和数据分析。
技术介绍
小波变换具有良好的时频定位性质和多分辨率特征,在各种数据分析中得到广泛的应用。但由于其复杂的计算过程,给小波变换的应用带来了一定的阻碍。目前,多数小波变换的应用多选择在计算机平台上实现,在微处理器平台上,使用小波变换的并不多。即使在微处理器平台上实现的小波变换,其性能也受到很大的限制。近年来,FPGA的发展为电子领域带来了很多改变,其大规模并行化运行的能力,实现了很多在微处理器平台上难以实现的算法。而小波变换的计算过程中,存在着大量的可并行化的运算,将FPGA与小波变换结合,便可以实现高性能的小波变换系统。随着技术水平的提升,市场上出现了各式各样的FPGA,而Zynq系列的FPGA具有独特的优势。它集成了ARM处理器的软件可编程性和FPGA的硬件可编程性,不仅可实现重要分析与硬件加速,同时还在单个器件上高度集成CPU、DSP、ASSP以及混合信号功能。Zynq系列的FPGA将可定制智能性融入当前嵌入式系统,可灵活的适应各种应用需求。在Zynq系列FPGA上实现小波变换系统,可将系统与网络直接相连,通过网络传入传出数据,实现高性能云计算。虽然使用FPGA实现小波变换可获得较高的性能,但现有的基于FPGA的二维小波变换系统,尤其是多级小波变换系统,都使用了较多的硬件资源。如专利技术专利 ...
【技术保护点】
一种基于Zynq系列FPGA的时分复用二维小波变换系统,其特征在于,仅使用一个行变换模块和一个列变换模块,高速稳定的实现多级97提升式小波变换系统,并通过将FPGA与Linux系统结合,实现图像数据通过网络传入,变换结束后通过网络传出的系统架构;其中,所述时分复用二维小波变换系统通过行缓存模块、行变换模块、列缓存模块、列变换模块实现多级小波变换;所述时分复用二维小波变换系统采用模块化的设计方式,可设定不同模块的计算位宽;所述时分复用二维小波变换系统可与Linux系统实现协同运行,变换系统可随意暂停,通过AXI4‑Stream协议与Linux系统进行文件传输。
【技术特征摘要】
1.一种基于Zynq系列FPGA的时分复用二维小波变换系统,其特征在于,仅使用一个行
变换模块和一个列变换模块,高速稳定的实现多级97提升式小波变换系统,并通过将FPGA
与Linux系统结合,实现图像数据通过网络传入,变换结束后通过网络传出的系统架构;其
中,
所述时分复用二维小波变换系统通过行缓存模块、行变换模块、列缓存模块、列变换模
块实现多级小波变换;
所述时分复用二维小波变换系统采用模块化的设计方式,可设定不同模块的计算位
宽;
所述时分复用二维小波变换系统可与Linux系统实现协同运行,变换系统可随意暂停,
通过AXI4-Stream协议与Linux系统进行文件传输。
2.根据权利要求1所述的基于Zynq系列FPGA的时分复用二维小波变换系统,其特征是,
所述系统结构特点具体包括:
图像数据先送入行缓存模块。对每一级变换,均配上两行长度的行缓存,行的长度为当
前级数的小波变换所对应的行宽。两行缓存中存储同一行的输入数据,但一行缓存输出奇
数位的数据,另一行缓存输出偶数位的数据,每个时钟送出两个数据给行变换模块。行变换
模块通过高频通道和低频通道,输出两路数据流。对每一级列变换,均配上一个列缓存模
块。每个列缓存模块缓存5行行变换结果,其中每行的高频部分和低频部分是分开缓存的。
列变换模块通过高频通道和低频通道,输出两路数据流。其低频通道中各级的LL子带部分
数据将被送入行缓存模块中,作为下一级变换的输入。
3.根据权利要求1所述的基于Zynq系列FPGA的时分复用二维小波变换系统,其特征是,
所述各个子模块的特点具体包括:
行变换模块和列变换模块通过多个模块组合而成,采用流水线结构。对于不同种类的
小波变换,调整乘法模块的参数,乘法模块、加法模块以及缓存的个数,并配合相应的控制
信号便可实现,而系统整体时分复用结构不需要变动。加法模块将输入的有符号定点数由
原码先转换为补码,进行补码加法后,再将结果转换为原码。其中原码与补码的转换通过同
步电路来实现,而加法过程通过异步电路来实现。加法模块通过2个时钟周期完成一次有符
号加法运算。乘法模块采用移位加法实现,使用9位小数精度的97提升变换系数。对每一级
变换,均配上一个计算缓存模块,用于处理列变换前边界。行变换和列变换都通过镜像的方
式处理边界。系统的输入、中间计算以及输出的数据均采用定点数,分为小数位宽和整数位
宽,默认为16位小数+16位整数,经测试此精度下逆变换后的还原图像的PSNR可达108dB。计
算模块和缓存模块所采用的位宽可分开调整,提升计算模块的精度可减少误差,降低缓存
模块的精度,可在尽量降低误差影响的前提下,节省系统资源。列缓存模块内的10个FIFO模
块,5个用来存储行变换高频结果,5个用来存储行变换低频结果。每5个FIFO首尾相连,上一
个FIFO输出数据的同时,输出数据也被下一个FIFO存储,通过这种方式来更新FIFO内存储
的数据。
4.根据权利要求1所述的基于Zynq系列FPGA的时分复用二维小波变换系统,其特征是,
所述变换系统与Linux系统协同运作的模式具体包括:
系统整体设计稳定,可随意暂停,输出数据没有延迟。系统使用AXI4-Stream协议,通过
两个通道与Zynq芯片上的ARM处理器运行的Linux系统相连。一个通道从Linux传输图像数
据到系统,其中Linux方为Master,系统方为Slave;另一个通道从系统回传计算结果到
Linux,其中系统方为Master,Lin...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。