资料介绍
近几年来,Analog Devices公司的ADSP系列数字信号处理器以其优异的性能和简单易学的语言逐渐受到人们的青睐,其中的ADSP218X定点系列更是得到广泛的应用。ADSP2189片内有192KB的RAM,因此更多地应用于图像领域。本文就图像处理压缩过程中常用到的算法及其在ADSP2189上的实现进行了分析,如何充分利用ADSP系列数字信号处理器特殊的硬件结构和功能强大的指令集实现各种算法是本文讨论的重点。然而作为通用定点处理器,处理过程中如何避免可能出现的问题以及如何解决问题也是本文所要讨论的。
1 ADSP2189及EZ-KIT简介
ADSP2189是指令执行速度最高可达75MIPS的16位定点数字信号处理器,主要具有以下特点:单周期指令执行,片内的程序控制器不会附加循环和条件指令的执行周期;三总线的体系结构允许在单指令周期中进行双操作数传递;片内192KB的存储器可被配置成32K×24bit的程序区(PM Program Memory)和48K×16bit的数据区(DM: Data Memory),而PM中还可同时存放数据。除了具有优异的计算能力外,ADSP2189还具有强大的系统接口:8位的BDMA端口寻址可达4MB,用来提供片内外存储器的高速存取;16位的IDMA(Internal Direct Memory Access)端口可实现主系统对片内存储器的高速存取;2048个I/O地址,支持并行的外设;两个双缓冲串口,带自动压扩。
ADSP-2189M EZ-KIT Lite是一块可用来演示验证DSP基本算法的仿真板,也是本文所有算法的测试平台。它主要由以下器件组成:
·ADSP-2189M 75 MIPS DSP
·AD73322立体声编译码器
·RS-232接口
·FLASH存储器
EZ-KIT Lite的FLASH存储器中带有监控程序,这段程序可完成仿真板与PC机间的串行通信,并允许用户下载、执行和调试ADSP2189程序。EZ-KIT Lite可与EZ-ICE仿真器相连,通过EZ-ICE仿真器,用户可以单步执行程序、观察和改变寄存器和内存值以及完成其它调试工作[1]。
2 模板运算
在图像处理时,模板运算有着广泛的应用。例如,在边沿检测时,通过将像素矩阵与边沿检测矩阵即模板相卷积来实现检测功能;在图像平滑时,通过模板运算来滤除噪声。模板运算的数学涵义就是卷积(或互相关)运算[2],它是一项非常耗时的运算。以模板1/16[1 2 1 2 4 2 1 2 1]为例,每个像素完成一次模板操作要用9个乘法、8个加法和1个除法。对于一幅N×N的图像,就是9N2个乘法,8N2个加法和N2个除法,算法复杂度为0(N2)。一幅较大的图像计算量是很大的,所以很多专用的图像处理系统,用硬件来完成模板运算,这样可以大大提高速度。在ADSP2189上快速实现模板运算需要充分利用ADSP2189的结构特点和功能强大的指令集。由于ADSP的哈佛结构允许同时访问程序和数据存储器,而ADSP的多功能指令(Multifunction Instructions)在执行算术操作的同时还可以并行进行数据传输,因此在单周期内可以完成取指、译码、读数、执行和调整寄存器。例如,MR=MR+MX0*MY0(SS)、MX0=DM(I0,M0)、MY0=PM(I4,M4),MX0和MY0分别从数据和程序存储区以间接寻址方式取得操作数相乘,乘积与结果寄存器中数值相加后放回结果寄存器,数值计算的同时地址指针寄存器I0、I4中的地址自动与调整寄存器中M值进行相加更新。虽然ADSP2189支持除法指令,但为了提高速度,可在程序中将除法改为乘以除数的倒数。另外,在程序中将2维模板运算转换成1维模板运算,可极大地降低运算量。需要注意的是,由于ADSP2189中CNTR寄存器为14bit,所以在单循环处理中输入像素个数必须小于16383。模板运算程序的流程如图1所示。
以3×3模板为例,通过在Visual DSP环境下设置PROFILE选项,可以得到以下结论:对于一个100×100的数组,完成模板运算共需要96445个指令周期;对于一个640×480的数组,共需要3052205个指令周期,远远低于直接计算。
3 DCT变换
许多图像压缩算法采用DCT(Discrete Cosine Transform,即离散余弦变换)来消除像素间冗余,例如JPEG 、H.261以及MPEG。采用DCT是因为它具有以下优点:DCT不同于DFT(Discrete Fourier Transform,即离散傅立叶变换),它属于实域运算;DCT变换矩阵的基向量很接近于托波列兹矩阵的特征向量,所得变换系数具有弱相关性,可以单独处理各系数而不损失压缩效率。
1 ADSP2189及EZ-KIT简介
ADSP2189是指令执行速度最高可达75MIPS的16位定点数字信号处理器,主要具有以下特点:单周期指令执行,片内的程序控制器不会附加循环和条件指令的执行周期;三总线的体系结构允许在单指令周期中进行双操作数传递;片内192KB的存储器可被配置成32K×24bit的程序区(PM Program Memory)和48K×16bit的数据区(DM: Data Memory),而PM中还可同时存放数据。除了具有优异的计算能力外,ADSP2189还具有强大的系统接口:8位的BDMA端口寻址可达4MB,用来提供片内外存储器的高速存取;16位的IDMA(Internal Direct Memory Access)端口可实现主系统对片内存储器的高速存取;2048个I/O地址,支持并行的外设;两个双缓冲串口,带自动压扩。
ADSP-2189M EZ-KIT Lite是一块可用来演示验证DSP基本算法的仿真板,也是本文所有算法的测试平台。它主要由以下器件组成:
·ADSP-2189M 75 MIPS DSP
·AD73322立体声编译码器
·RS-232接口
·FLASH存储器
EZ-KIT Lite的FLASH存储器中带有监控程序,这段程序可完成仿真板与PC机间的串行通信,并允许用户下载、执行和调试ADSP2189程序。EZ-KIT Lite可与EZ-ICE仿真器相连,通过EZ-ICE仿真器,用户可以单步执行程序、观察和改变寄存器和内存值以及完成其它调试工作[1]。
2 模板运算
在图像处理时,模板运算有着广泛的应用。例如,在边沿检测时,通过将像素矩阵与边沿检测矩阵即模板相卷积来实现检测功能;在图像平滑时,通过模板运算来滤除噪声。模板运算的数学涵义就是卷积(或互相关)运算[2],它是一项非常耗时的运算。以模板1/16[1 2 1 2 4 2 1 2 1]为例,每个像素完成一次模板操作要用9个乘法、8个加法和1个除法。对于一幅N×N的图像,就是9N2个乘法,8N2个加法和N2个除法,算法复杂度为0(N2)。一幅较大的图像计算量是很大的,所以很多专用的图像处理系统,用硬件来完成模板运算,这样可以大大提高速度。在ADSP2189上快速实现模板运算需要充分利用ADSP2189的结构特点和功能强大的指令集。由于ADSP的哈佛结构允许同时访问程序和数据存储器,而ADSP的多功能指令(Multifunction Instructions)在执行算术操作的同时还可以并行进行数据传输,因此在单周期内可以完成取指、译码、读数、执行和调整寄存器。例如,MR=MR+MX0*MY0(SS)、MX0=DM(I0,M0)、MY0=PM(I4,M4),MX0和MY0分别从数据和程序存储区以间接寻址方式取得操作数相乘,乘积与结果寄存器中数值相加后放回结果寄存器,数值计算的同时地址指针寄存器I0、I4中的地址自动与调整寄存器中M值进行相加更新。虽然ADSP2189支持除法指令,但为了提高速度,可在程序中将除法改为乘以除数的倒数。另外,在程序中将2维模板运算转换成1维模板运算,可极大地降低运算量。需要注意的是,由于ADSP2189中CNTR寄存器为14bit,所以在单循环处理中输入像素个数必须小于16383。模板运算程序的流程如图1所示。
以3×3模板为例,通过在Visual DSP环境下设置PROFILE选项,可以得到以下结论:对于一个100×100的数组,完成模板运算共需要96445个指令周期;对于一个640×480的数组,共需要3052205个指令周期,远远低于直接计算。
3 DCT变换
许多图像压缩算法采用DCT(Discrete Cosine Transform,即离散余弦变换)来消除像素间冗余,例如JPEG 、H.261以及MPEG。采用DCT是因为它具有以下优点:DCT不同于DFT(Discrete Fourier Transform,即离散傅立叶变换),它属于实域运算;DCT变换矩阵的基向量很接近于托波列兹矩阵的特征向量,所得变换系数具有弱相关性,可以单独处理各系数而不损失压缩效率。
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- EE-115:与摩托罗拉MC68300系列微处理器的ADSP-2189 IDMA接口
- ADSP-2189M EZ-KIT Lite<sup>®</sup>评估系统手册
- ADSP-2189M版本0.0-0.4的异常列表 0次下载
- ADSP-21362/ADSP-21363/ADSP-21364/ADSP-21365/ADSP-21366 SHARC处理器
- ADSP-2189M:DSP微机数据表
- 基于图像增强和神经网络的脑部CT与MRI图像融合 5次下载
- 基于模板、检索和深度学习的图像描述生成方法 12次下载
- ADSP-2189M EZ-KIT立体设计数据ase
- 结合多尺度边缘保持分解与PCNN的图像融合方法 16次下载
- 基于内容的图像分割方法综述 2次下载
- 5灰度图像伪彩处理 0次下载
- 图像恢复的实现方法研究 26次下载
- 用FPGA实现共轭变换图像处理方法 56次下载
- 基于ADSP21060和Virtex II的图像处理系统设计
- 图像质量评价方法研究进展
- 如何使用机器学习处理图像 613次阅读
- 图像处理常用算法总结 877次阅读
- 浅谈区域车辆架构中音频和无线电处理 729次阅读
- 常见的图像预处理方法 2.3w次阅读
- 基于定点DSP系列ADSP2181芯片实现通用多DSP目标系统的设计 1252次阅读
- 基于计算机的图像处理方法 4638次阅读
- Python中最常用十大图像处理库详细介绍 2.1w次阅读
- 最基础的图像处理常用算法 3156次阅读
- 探析数字图像处理常用的方法 5089次阅读
- 基于图像处理的水表检定方法和装置及系统 1302次阅读
- 基于AIS系统中2189M的硬件设计 2272次阅读
- 图像处理之动态范围扩展定义与方法 1.1w次阅读
- 模糊图像处理解决方案 1.1w次阅读
- ADSP21160实现数字信号处理系统 2418次阅读
- ADSP2189M在船舶自动识别系统开发中的应用 1274次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1489次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 91次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 9次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 3次下载 | 免费
- 8基于单片机的红外风扇遥控
- 0.23 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30319次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多