首页> 中国专利> 一种基于DSP的JPEG2000标准图像快速解压缩系统及方法

一种基于DSP的JPEG2000标准图像快速解压缩系统及方法

摘要

本发明公开了基于DSP的JPEG2000标准图像快速解压缩系统及方法,对JPEG2000标准下的图像压缩数据进行多DSP并行处理。系统包括控制模块和解压模块,控制模块控制解压模块并行完成图像的解压缩处理任务;解压模块包括多片DSP处理器构成的DSP簇和被DSP簇中的所有DSP共享的SDRAM。所述方法包括:控制模块接收压缩图像数据包后存储于SDRAM,并解析数据包,按照并行粒度划分规则为DSP簇中的每个DSP划分解压缩处理任务的起始点;DSP簇中的DSP根据划分的任务并行解压缩划分得到的解压缩处理任务。本发明充分发挥了多DSP处理器的性能,使解压缩效率获得显著提升。

著录项

  • 公开/公告号CN103997648A

    专利类型发明专利

  • 公开/公告日2014-08-20

    原文格式PDF

  • 申请/专利权人 中国科学院自动化研究所;

    申请/专利号CN201410258954.2

  • 发明设计人 袁柳;刘怀达;贾品贵;

    申请日2014-06-11

  • 分类号H04N19/42;H04N19/436;H04N19/423;

  • 代理机构中科专利商标代理有限责任公司;

  • 代理人宋焰琴

  • 地址 100190 北京市海淀区中关村东路95号

  • 入库时间 2023-12-17 01:14:57

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-04-05

    授权

    授权

  • 2014-09-17

    实质审查的生效 IPC(主分类):H04N19/42 申请日:20140611

    实质审查的生效

  • 2014-08-20

    公开

    公开

说明书

技术领域

本发明涉及JPEG2000标准图像快速解压缩领域,尤其涉及应用多 DSP嵌入式并行系统进行的JPEG2000标准图像快速解压缩领域。

背景技术

随着科学技术的发展,日常处理的图像的分辨率和精度在不断提升, 图像包含的数据量也在不断增大,为了进行有效图像数据传输,需要对图 像进行快速压缩解压缩处理。

JPEG2000标准,因其高灵活性、高压缩性能、能够提供有损无损压 缩模式,正在图像处理领域广泛应用,目前多应用于医学影像传输,航天 遥感图像传输等应用领域。JPEG2000解压缩过程由tier-2解码(码流组织 解码)、tier-1(自适应算术解码)、反量化、反小波变换、图像后处理等组 成,其中tier-1(自适应算术解码)和反小波变换是其中最耗时的部分。 为了达到实时图像解压缩的目的,业内普遍使用FPGA、GPU等设备,使 用简单的多线程,低度并行化,在硬件层面对压缩解压缩过程进行加速, 然而硬件实现的成本较高,实现起来也较为复杂,开发周期较长,并不是 每个系统都有条件应用硬件实现压缩解压缩操作。在没有硬件设备支持的 情况下,只能依托于软件实现JPEG2000图像的快速解压缩过程。然而传 统的JPEG2000软件解压缩过程,涉及到的代码量过大,数据量过多,导 致庞大的中间变量出现,一定程度上影响了JPEG2000解压缩过程的实现 效率。因此需要一种能够通过软件实现的快速压缩解压缩系统和方法,能 保证在软件实现的前提下,快速进行压缩解压缩图像数据,满足实际应用 的时间需求。目前针对JPEG2000标准图像的压缩过程的研究较为广泛, 但是针对JPGE2000标准图像的解压缩过程的研究则非常少见。

DSP因其可并行的处理特点在数字图像处理领域有很大优势,又因其 运算能力强,能够适应较为复杂的图像处理算法,如图像压缩解压缩算法。 DSP很适合用于进行并行计算,而JPEG2000具有很多可并行计算的运算 任务,非常适合应用DSP来实现,且DSP实现成本较FPGA更为低廉。

因此,亟需一种能够快速实时的对高分辨率图像数据进行解压缩处理、 传送的多DSP系统,及能够提高图像解压缩速度的快速解压缩方法。

发明内容

(一)要解决的技术问题

本发明的目的是提供一种基于DSP的快速实现JPEG2000标准图像解 压缩处理的系统及方法,以提高现有图像解压缩处理的速度,并尽量减少 存储资源的消耗。

(二)技术方案

为达成所述目的,本发明提供一种基于DSP的JPEG2000标准图像快 速解压缩系统,系统具有控制模块和解压模块,控制模块通过数据总线与 解压模块相连以进行数据通信,用于接收并缓存JPEG2000标准下的图像 压缩数据包,并用于控制解压模块并行完成图像的解压缩处理任务,以及 在解压缩处理任务完成后,将解压后的图像数据输出至外部接口;所述解 压模块用于并行完成图像的解压缩处理任务。

根据本发明的一种具体实施方式,所述解压模块由DSP簇和SDRAM 组成;所述控制模块用于对待解压缩的图像数据包进行并行粒度解析,根 据并行粒度划分规则确定此次解压缩的并行粒度,并根据确定的并行粒度 为所述解压模块中所述DSP簇中的每一个DSP处理器划分需要完成的解 压缩任务。

根据本发明的一种具体实施方式,所述DSP簇中的DSP处理器与控 制模块之间通过link口或用户自定义总线进行通信,用于接收所述控制模 块发出的控制信号,并根据控制信号并行完成解压缩处理任务。

根据本发明的一种具体实施方式,所述SDRAM(122)通过数据总线 与主控模块及所述DSP簇相连,DSP簇中的所有DSP共享所述SDRAM。

根据本发明的一种具体实施方式,所述DSP簇(121)包括一簇或者 多簇DSP处理器,每簇DSP处理器的结构相同,每簇DSP由多片DSP 处理器构成,所述多片DSP处理器具有相同的处理功能和接口,任意两片 DSP簇中的DSP处理器之间具有通信通道,能够完成两两之间的互相通 信,实现多片DSP处理器之间的并行连接,以在控制模块控制下进行并行 解压缩处理任务。

根据本发明的一种具体实施方式,所述SDRAM(122)被所述控制模 块和DSP簇中的所有DSP处理器共享,用于缓存解压缩处理任务执行过 程中的所有数据,在解压缩处理任务完成后,将解压完成后的图像数据整 合。

此外,本发明还提出一种基于DSP的JPEG2000标准图像解压缩方法, 用于前述的JPEG2000标准图像解压缩系统,其特征在于,包含如下步骤:

步骤S1:所述控制模块从外部接收JPEG2000压缩图像数据包后将其 存储于所述SDRAM内;

步骤S2:所述控制模块解析压缩图像数据包,按照并行粒度划分规则 划分并行粒度,并根据确定的并行粒度为DSP簇的每一个DSP处理器划 分需要完成的解压缩任务的起始点;

步骤S3:DSP簇中的DSP并行解压缩划分得到的解压缩处理任务, 输出处理结果至SDRAM的指定区域存储区;

步骤S4:在控制模块的控制下,在SDRAM中整合解压缩完成后的 图像数据后将整合后的图像数据输出。

根据本发明的一种具体实施方式,所述步骤S2中并行粒度划分规则由所述DSP 簇中的DSP处理器片内RAM空间大小确定,包括如下规则:

如果DSP处理器片内RAM内存空间大于等于JPEG2000压缩图像一 个tile图像的压缩码流数据空间,并行粒度为tile数据级;

如果DSP处理器片内RAM内存空间小于一个tile的压缩码流数据空 间,并行粒度为任务级。

根据本发明的一种具体实施方式,在步骤S2中根据确定的并行粒度 为DSP簇的每一个DSP处理器划分需要完成的解压缩任务的起始点的步 骤中,如果并行粒度为tile数据级,则所述控制模块按照处理块大小划分 解压缩处理任务,处理块大小为一个tile的压缩码流数据大小,所述控制 模块和所述DSP簇中的DSP处理器交替获得SDRAM的控制权,将tile 图像的压缩码流数据通过DMA依次搬运到各个DSP处理器的片内缓冲区 后,各个DSP处理器分别独立的进行完整的tile级图像压缩码流数据解压 任务,将DSP处理器的通信时间隐藏在运算时间之后,使tile数据级并行 粒度下的各DSP处理器承担解压缩任务的运行时间近似相等;如果并行粒 度为任务级,所述控制模块按照负载平衡方法进行流水线关键路径拆分, 拆分的原则按照拆分运行时间最长的模块,合并运行时间最短的模块,保 证模块总数等于所述DSP簇中的DSP处理器的个数,直至各模块运行时 间基本相等,然后所述控制模块控制所述DSP簇中的DSP处理器以流水 线结构依次承担各个模块的解压缩任务。

根据本发明的一种具体实施方式,在所述步骤S2中,各DSP处理器 承担的解压缩任包括如下步骤:

步骤S2.2.1:DSP处理器对分配得到的压缩图像数据进行Tier-2(最 佳截断嵌入码块编码第二阶段)解码,在Tier-1解码过程中依次进行解析 打包数据信息和解析码流结构分层组织;

步骤S2.2.2:DSP处理器对Tier-2解码输出的图像数据进行Tier-1(最 佳截断嵌入码块编码第一阶段)解码,依次进行Tier-1解码过程中的三通 道平面解码和算术解码;

步骤S2.2.3:DSP处理器对解码完成后的图像数据进行反量化操作;

步骤S2.2.4:DSP处理器通过指令并行方法实现反量化操作后的图像 数据的反小波变换;

步骤S2.2.5:DSP处理器对S2.2.4反小波变换后的图像数据进行后处 理操作,包括偏移修正,定点转浮点操作。

根据本发明的一种具体实施方式,在所述步骤S2.2.1中,采用DSP 簇中的DSP处理器自带的SIMD结构,实现单DSP的片上并行操作,充 分利用DSP处理器中的多个运算单元,以条带中2列数据为1组,在组中 第一列进行显著性通道解码的同时,组中第二列依次进行幅度细化通道和 清理通道解码,两列数据处理完成后,以列为单位平移移位一列,继续进 行以组为单位的处理,直到所有条带数据处理完毕。

根据本发明的一种具体实施方式,所述步骤S2.2.4中,并行实现反小 波变换借助DMA进行数据搬运,DMA数据搬运过程按照如下规则进行:

步骤S64.1:开始进行反小波变换;

步骤S64.2:DSP处理器查找可用空闲DMA通道数并进行判断,若 DMA通道数小于2,则转入步骤S64.3;若DMA通道数大于等于2小于 4,则转入步骤S64.4;若DMA通道数大于等于4,则转入步骤S64.5;

步骤S64.3:应用1通道DMA进行持续搬运,DMA搬运块的大小设 置为片内最大可用存储空间大小,按照先行后列的方式进行DMA数据搬 运,搬运完成后转入步骤S64.6;

步骤S64.4:应用2通道DMA进行乒乓缓存式数据搬运,DMA搬运 块的大小设置为片内最大可用存储空间的一半,按照先行后列的方式进行 DMA数据搬运,搬运完成后转入步骤S64.6;

步骤S64.5:应用4通道DMA进行乒乓缓存式数据搬运,DMA搬运 块的大小设置为片内最大可用存储空间的四分之一,只需进行行搬运过程, 不需要进行列搬运,搬运完成后转入步骤S64.6;

步骤S64.6:对搬运至片内的压缩图像数据按照DSP指令并行方法实 现反小波变换,反小波变换的实施过程中,根据预先划分的子带数据位置, 完成空间内所有可完成的数据处理过程,减少数据搬运次数。

根据本发明的一种具体实施方式,在步骤S64.6中,在一个指令周期 内完成多字节数据的加、减、乘、移位操作。

(三)有益效果

本发明的优点是:1)本发明在进行解压缩工作之前,首先通过程序 功能分析进行并行粒度划分,提出一种并行粒度的判定规则,保证DSP 处理资源利用最大化;2)本发明应用控制模块控制DSP簇中的DSP处理 器进行并行解压缩任务,去除启动时间外,解压效率接近多DSP系统的峰 值效率;3)本发明针对Tier-1解码,采用2列数据为1组,对1组中的 数据同时处理,采用汇编代码形式,充分利用DSP的双运算单元机构,将 通道1解码与通道2、3解码并行起来,可以达到1-2倍的效率提升;4) 本发明根据空闲DMA的数目,提供了一种DMA数据搬运的使用规则, 能够充分利用DSP的DMA结构,减少数据的搬运次数,从而减少DMA 启动时间,提升反小波变换的效率;5)本发明采用DSP指令并行方法实 现反小波变换的提升过程,能够在一个指令周期进行4字节操作,从而提 升反小波变换的效率。

附图说明

图1为本发明的基于DSP的快速实现JPEG2000标准图像解压缩系统 框图;

图2为本发明的一个实施例的JPEG2000标准图像解压缩系统的框图;

图3为本发明的基于DSP的快速实现JPEG2000标准图像解压缩方法 流程图;

图4为本发明的控制模块主DSP控制DSP簇并行完成tile级的解压 缩工作流程图;

图5为本发明的DSP处理器承担的解压缩任务流程图;

图6为本发明的控制模块主DSP控制DSP簇并行完成任务级的解压 缩工作流程图;

图7为本发明的DMA进行数据搬运规则示意图;

图8为本发明的2通道DMA进行数据搬运具体实现图;

图9为本发明的4通道DMA进行数据搬运具体实现图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实 施例,并参照附图,对本发明作进一步的详细说明。

在下面的描述中,tile,Tier-1、Tier-2是JEPG2000标准图像解压缩领 域的专用名词,其中,tile是指压缩图像数据包的一个单位图像分片,Tier-1 和Tier-2分别是指最佳截断嵌入码块编码第1阶段和最佳截断嵌入码块编 码的第2阶段。Hamming(海明)码和BCH码为纠错控制领域的专用名 词,BCH码取自Bose、Ray-Chaudhuri与Hocquenghem的缩写,用于纠 正多位随机错误的编码方法。

图1所示为本发明提供的基于DSP的JPEG2000标准图像快速解压缩 系统框图,图中标示了每一部分的具体连接关系。如图1所示,本发明的 快速解压缩系统具有控制模块11和解压模块12,其中:

控制模块11通过数据总线与解压模块12相连以进行数据通信,用于 接收并缓存JPEG2000标准下的图像压缩数据包,并用于控制解压模块12 并行完成图像的解压缩处理任务,以及在解压缩处理任务完成后,将解压 后的图像数据输出至外部接口;

解压模块12与控制模块11相连,用于并行完成图像的解压缩处理任 务。通常,解压模块还用于在解压缩工作完成后,通知控制模块11可以 取走解压缩完成后的图像数据。

所述控制模块11可以由DSP、FPGA或PC等具有控制功能的器件或 设备组成,用于接收并缓存外部接口传输来的JPEG2000标准下的图像压 缩数据包。优选为,所述解压模块12由DSP簇121和SDRAM(同步动 态随机存储器)122组成,所述控制模块11对待解压缩的图像数据包进行 并行粒度解析,根据并行粒度划分规则确定此次解压缩的并行粒度,并根 据确定的并行粒度为解压模块12中的DSP簇的每一个DSP处理器划分需 要完成的解压缩任务。并且,在所有解压缩任务完成后,将解压后的图像 数据输出至外部接口。

一种实施方式是,DSP簇121包括一簇或者多簇DSP处理器,DSP 簇121中的DSP处理器与控制模块11之间可以通过link口或用户自定义 总线完成通信,用于接收控制模块11发出的控制信号,并根据控制信号 并行完成解压缩处理任务;SDRAM122通过数据总线与主控模块11及 DSP簇121相连,DSP簇中的所有DSP共享SDRAM122,用于完成 JPEG2000图像压缩数据的存储和整合工作。

所述DSP簇121为解压模块12的处理核心,其包括的每簇DSP处理 器的结构相同,每簇DSP由多片DSP处理器构成,多片DSP处理器具有 相同的处理功能和接口,从小到大依次标号,例如标号为DSP0,DSP1到 DSP(n-1),n为DSP的数量,选择为2到16片之间为宜,任意两片DSP 簇中的DSP处理器之间具有通信通道,能够完成两两之间的互相通信,实 现多片DSP处理器之间的并行连接,以在控制模块11控制下进行并行解 压缩处理任务。

所述SDRAM122被控制模块11和DSP簇121中的所有DSP处理器 共享,用于缓存解压缩处理任务执行过程中的所有数据,解压缩处理任务 完成后,将解压完成后的图像数据整合,并通知控制模块11可以输出解 压缩后的图像数据。

图2为本发明的一个实施例的JPEG2000标准图像解压缩系统的框图。 在该实施例中,快速解压缩系统设置成为主从DSP形式。如图2所示, 控制模块21由主DSP构成,主DSP选择ADI公司的ADSP-TS101芯片, 控制模块21的主DSP接收缓存外部接口LVDS接口传送来的JPEG2000 压缩图像数据包,并与解压模块22之间通过Link口进行通信,实现控制 模块主DSP与解压模块22之间的控制信号传递。解压模块22由一系列 从DSP处理器构成的DSP簇221和SDRAM222组成。主DSP和DSP 簇之间通过Link口连接,通过数据总线共享SDRAM222。

所述DSP簇221由4片从DSP处理器构成,分别是DSP0(2210)、 DSP1(2211)、DSP2(2212)和DSP3(2213),构成2簇DSP簇。从 DSP处理器选择ADI公司的ADSP-TS101芯片,各从DSP之间具有通信 通道,通过Link口实现之间从DSP之间的通信。在本实施案例中,我们 将两个DSP组为一簇DSP,将4片从DSP处理器分为2簇,DSP0(2210) 和DSP1(2211)为一簇,DSP2(2212)和DSP3(2213)为另一簇, 簇内DSP之间以及簇与簇之间,对外部主DSP均通过Link口相互通信; ADSP-TS101芯片具有4个Link口,具体使用时可根据需要进行不同的 连接。

基于DSP的JPEG2000标准图像快速解压缩方法,图3为本发明提供 的基于DSP的JPEG2000标准图像快速解压缩方法的流程图,如图3所示, 本发明的基于DSP的JPEG2000标准图像快速解压缩方法包括如下步骤:

步骤S1:控制模块从外部接收JPEG2000压缩图像数据包后将其存储 于SDRAM内。

在具体实施过程中,首先应启动前述基于DSP的JPEG2000标准图像 快速解压缩系统,对控制模块和解压模块进行初始化,然后控制模块从外 部接收JPEG2000压缩图像数据包。接收到压缩图像数据包括,可以对其 进行容错处理,例如经Hamming码或BCH码容错措施后,将其存储在诸 如SDRAMSDRAM的指定存储空间。

步骤S2:控制模块解析压缩图像数据包,按照并行粒度划分规则划分 并行粒度,并根据确定的并行粒度为DSP簇的每一个DSP处理器划分需 要完成的解压缩任务的起始点。

划分起始点优选为使每个DSP处理器获得的处理任务运行时间近似 相等。

步骤S2中所述并行粒度划分规则由DSP簇中的DSP处理器片内 RAM空间大小确定,包括如下规则:

如果DSP处理器片内RAM内存空间大于等于JPEG2000压缩图像一 个tile图像的压缩码流数据空间,并行粒度为tile数据级;

如果DSP处理器片内RAM内存空间小于一个tile的压缩码流数据空 间,并行粒度为任务级。

一种具体实施方式是,如果并行粒度为tile数据级,则控制模块按照 处理块大小划分解压缩处理任务,处理块大小为一个tile的压缩码流数据 大小,控制模块和DSP簇中的DSP处理器交替获得SDRAM的控制权, 将tile图像的压缩码流数据通过DMA依次搬运到各个DSP处理器的片内 缓冲区后,各个DSP处理器分别独立的进行完整的tile级图像压缩码流数 据解压任务,将DSP处理器的通信时间隐藏在运算时间之后,使tile数据 级并行粒度下的各DSP处理器承担解压缩任务的运行时间近似相等;

另一种实施方式是,如果并行粒度为任务级,控制模块按照负载平衡 方法进行流水线关键路径拆分,拆分的原则按照拆分运行时间最长的模块, 合并运行时间最短的模块,保证模块总数等于DSP簇中的DSP处理器的 个数,直至各模块运行时间基本相等,然后控制模块控制DSP簇中的DSP 处理器以流水线结构依次承担各个模块的解压缩任务。

步骤S3:DSP簇中的DSP并行解压缩划分得到的解压缩处理任务, 输出处理结果至SDRAM的指定存储区;

步骤S4:在控制模块的控制下,在SDRAM中整合解压缩完成后的 图像数据后将整合后的图像数据输出。

在完成解压缩任务并整合了图像数据之后,DSP簇通知控制模块可以 取走解压缩结果,由此,控制模块控制输出解压完成后的图像数据,完成 图像解压缩工作。

图像解压缩工作结束,基于DSP的JPEG2000标准图像快速解压缩系 统关闭,等待系统下一次启动。

本发明的发明被描述为一系列步骤,每个步骤包括一系列的动作,但 是应当明白,本发明的管理方法不受限于步骤和动作次序,这里应当理解, 具体的实现步骤根据需要可能有所不同。

在本发明的一个具体实施例中,控制模块由主DSP构成,主DSP和 DSP簇中的从DSP处理器选择ADI公司的ADSP-TS101芯片,从DSP处 理器片内RAM空间为6MB,一个tile的压缩码流数据大小为0.5MB以下, 故从DSP处理器片内RAM空间远大于一个tile图像的压缩码流数据大小, 在本实施案例中,并行粒度确定为tile数据级。

图4为本发明的一个实施例的控制模块主DSP控制DSP簇中的从 DSP并行完成每个tile图像的压缩码流数据解压缩工作流程图,所述主 DSP控制DSP簇中的从DSP并行完成每个tile图像的压缩码流数据解压 缩工作,按照如下步骤进行:

步骤S1.1:主DSP开始控制解压缩工作,进入步骤S1.2;

步骤S1.2:主DSP查找是否存在空闲状态的DSP簇中的从DSP处理 器,若存在空闲状态的从DSP处理器则转入步骤S1.3,否则继续进行步 骤S1.2;

步骤S1.3:选择最小标号的从DSP芯片,作为当前tile图像的压缩 码流的解压缩处理器,进入步骤S1.4;

步骤S1.4:主DSP释放SDRAM控制权,主DSP将SDRAM控制权 转让给步骤S1.3选择的空闲状态最小标号的从DSP处理器,进入步骤S1.5;

步骤S1.5:将步骤S1.4获得SDRAM控制权的从DSP处理器标记为 忙状态0,进入步骤S1.6;

步骤S1.6:将当前tile图像的压缩码流数据从SDRAM中载入到步骤 S1.5标记的从DSP处理器片内存储空间中,进入步骤S2.1。

步骤2.1:所选从DSP处理器释放SDRAM控制权交还给主DSP,步 骤S2.1后分为两个分支,步骤S2.2和步骤S2.5同时进行;

步骤S2.2:所选从DSP处理器立即进行压缩码流数据解压工作,进 入步骤S2.3;

步骤S2.3:解压工作完成后,所选从DSP处理器将步骤S2.2解压后 的tile图像数据信息输出至SDRAM,进入步骤S2.4;

步骤S2.4:所选从DSP处理器完成所有工作,标记为空闲状态1,所 选从DSP进入等待状态;

步骤S2.5:主DSP获得步骤S2.1中所选从DSP处理器释放的SDRAM 控制权,进入步骤S3;

步骤S3:主DSP获得SDRAM控制权后立即判断是否还有tile图像 的压缩码流数据需要出处理,若有tile图像的压缩码流数据需要处理则转 入步骤S1.2查找当前空闲状态最小标号的从DSP处理器进行下一个tile 图像的压缩码流数据处理,若所有tile图像的压缩码流数据处理完毕,则 转到步骤S4;

步骤S4:所有tile图像的压缩码流数据处理完毕,输出整幅解压缩后 的图形数据至主控模块,工作结束;

其中步骤S2.2后的主DSP操作和步骤S2.5后的从DSP处理器操作同 时进行,以达到DSP簇中的从DSP处理器并行解压缩图像数据的功能。

在步骤S2.2中,所选从DSP处理器进行压缩码流数据解压工作,如 图5所示,图5为DSP处理器承担的解压缩任务流程图,包括如下步骤:

步骤S2.2.1:DSP处理器对分配得到的压缩图像数据进行Tier-2(最 佳截断嵌入码块编码第二阶段)解码,在Tier-1解码过程中依次进行解析 打包数据信息和解析码流结构分层组织;

步骤S2.2.2:DSP处理器对Tier-2解码输出的图像数据进行Tier-1(最 佳截断嵌入码块编码第一阶段)解码,依次进行Tier-1解码过程中的三通 道平面解码和算术解码;

步骤S2.2.3:DSP处理器对解码完成后的图像数据进行反量化操作;

步骤S2.2.4:DSP处理器通过指令并行方法实现反量化操作后的图像 数据的反小波变换;

步骤S2.2.5:DSP处理器对S2.2.4反小波变换后的图像数据进行后处 理操作,包括偏移修正,定点转浮点操作。

在本发明的另一个具体实施例中,控制模块的主DSP和解压模块DSP 簇中的从DSP处理器均选择ADI公司的芯片ADSP-21065L,芯片的片内 RAM存储空间为0.5MB,一个tile的压缩码流数据大小为1MB,故芯片 片内存储空间小于一个tile的压缩码流数据大小,在该实施例中,并行粒 度确定为任务级。如图6所示,图6为本发明的控制模块主DSP控制DSP 簇并行完成任务级的解压缩工作流程图,主DSP根据负载均衡化方法将解 压缩任务划分为4个模块,分别为:

第一模块61:Tier-2解码和Tier-1(最佳截断嵌入码块编码第一阶段) 解码第一部分;

第二模块62:Tier-1解码第二部分;

第三模块63:Tier-1解码第三部分和反量化操作;

第四模块64:并行实现反小波变换操作和图像后处理操作。

然后控制模块主DSP控制DSP簇中的从DSP处理器以流水线结构依 次承担各个模块的解压缩任务。

所述Tier-1(最佳截断嵌入码块编码第一阶段)解码,采用DSP处理 器自带的SIMD结构,实现单DSP的片上并行操作,充分利用DSP处理 器中的多个运算单元,以条带中2列数据为1组,在组中第一列进行显著 性通道解码的同时,组中第二列依次进行幅度细化通道和清理通道解码, 两列数据处理完成后,以列为单位平移移位一列,继续进行以组为单位的 处理处理,直到所有条带数据处理完毕。

所述第四模块64的并行实现反小波变换,借助DMA进行数据搬运, 如图7所示,图7为本发明的DMA进行数据搬运规则示意图,DMA数 据搬运过程按照如下规则进行:

步骤S64.1:开始进行反小波变换;

步骤S64.2:DSP处理器查找可用空闲DMA通道数并进行判断,若 DMA通道数小于2,则转入步骤S64.3;若DMA通道数大于等于2小于 4,则转入步骤S64.4;若DMA通道数大于等于4,则转入步骤S64.5;

步骤S64.3:应用1通道DMA进行持续搬运,DMA搬运块的大小设 置为片内最大可用存储空间大小,按照先行后列的方式进行DMA数据搬 运,搬运完成后转入步骤S64.6;

步骤S64.4:应用2通道DMA进行乒乓缓存式数据搬运,DMA搬运 块的大小设置为片内最大可用存储空间的一半,按照先行后列的方式进行 DMA数据搬运,搬运完成后转入步骤S64.6;

步骤S64.5:应用4通道DMA进行乒乓缓存式数据搬运,DMA搬运 块的大小设置为片内最大可用存储空间的四分之一,只需进行行搬运过程, 不需要进行列搬运,搬运完成后转入步骤S64.6;

步骤S64.6:对搬运至片内的压缩图像数据按照DSP指令并行方法实 现反小波变换,反小波变换的实施过程中,根据预先划分的子带数据位置, 完成空间内所有可完成的数据处理过程,减少数据搬运次数。

在步骤S64.4中应用2通道DMA进行乒乓缓存式数据搬运,如图8 所示,图8为本发明的4通道DMA进行数据搬运具体实现图例,本发明 的2通道DMA进行数据搬运包括以行为单位的2通道DMA数据搬运和 以行为单位的2通道DMA数据搬运,其中:以行为单位的2通道DMA 数据搬运具体实现图如图8A所示,第一数据块813通过第一DMA通道 815传送到第一缓冲区811,第二数据块814通过第二DMA通道816传送 到第二缓冲区812,传送完毕后,第一数据块813和第二数据块814向下 平移;当第一缓冲区811接收第一DMA通道815传送数据的同时,对第 二缓冲区812中的数据进行反小波变换操作;第二缓冲区812小波逆变完 成后,开始接收第二DMA通道816传送的数据,与此同时,对第一缓冲 区811中的数据进行反小波变换,接收数据和处理数据交替进行,以达到 无延迟的数据搬运。

以列为单位的2通道DMA数据搬运具体实现图如图8B所示,第一 数据块823通过第一DMA通道825传送到第一缓冲区821,第二数据块 824通过第二DMA通道826传送到第二缓冲区822,传送完毕后第一数据 块823和第二数据块824向右平移,其余操作与以行为单位的2通道DMA 数据搬运一致。

步骤S64.5中应用4通道DMA进行乒乓缓存式数据搬运,如图9所 示,图9为本发明的4通道DMA进行数据搬运具体实现图例,其中,第 一数据块901通过第一DMA通道95传送到第一缓冲区91,第二数据块 902通过第二DMA通道96传送到第二缓冲区92,第三数据块903通过第 三DMA通道97传送到第三缓冲区93,第四数据块904通过第四DMA 通道98传送到第四缓冲区94,传送完毕后,第一数据块1901、第二数据 块902、第三数据块903、第四数据块904向下平移;当第一缓冲区91接 收第一DMA通道95传送数据的同时,对第二缓冲区92中的数据进行反 小波变换的行提升操作;第二缓冲区92小波逆变完成后,开始接收第二 DMA通道96传送的数据,与此同时对第一缓冲区91中的数据进行反小 波变换的行提升操作,在第一缓冲区91行提升操作完成后,对第一缓冲 区91和第二缓冲区92中的数据进行联合反小波变换列提升操作。

在对第一缓冲区91和第二缓冲区92中的数据进行联合反小波变换列 提升操作的同时,第三缓冲区93接收第三DMA通道97传送数据的同时, 对第四缓冲区94中的数据进行反小波变换的行提升操作;第四缓冲区94 小波逆变完成后,开始接收第四DMA通道98传送的数据,与此同时对第 三缓冲区93中的数据进行反小波变换的行提升操作,在第三缓冲区93进 行提升操作完成后,对第三缓冲区93和第四缓冲区94中的数据进行联合 反小波变换列提升操作。

对第三缓冲区93和第四缓冲区94中的数据进行联合反小波变换列提 升操作完成后,重复第一缓冲区91和第二缓冲区92的接收和处理数据过 程,以达到无延迟的数据搬运。

在步骤S64.6中,按照DSP指令并行方法实现反小波变换,在一个指 令周期内完成多字节数据的加、减、乘操作。在本发明的具体实施例中, 以4字节数据构成一个长字,DSP处理器可以在一个指令周期内完成该长 字数据的并行加法、乘法及移位运算,将此方法用于反小波变换的行列提 升过程中,可以提高2~3倍的效率。

以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行 了进一步详细说明,应理解的是,以上所述仅为本发明的具体实施例而已, 并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、 等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号