《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 业界动态 > 一种SIMD多DSP数字图像处理系统研究与设计

一种SIMD多DSP数字图像处理系统研究与设计

2008-07-17
作者:李 勇,齐同斌,张瑞生

    摘 要: 图像处理" title="图像处理">图像处理" title="数字图像处理" title="数字图像处理">数字图像处理">数字图像处理需要大量的数据运算,要求系统具有很高的数据吞吐量。并行处理" title="并行处理">并行处理结构能较好地满足这一要求。介绍一种SIMD并行多DSP数字图像处理系统" title="处理系统">处理系统。该系统具有避免冲突、能连续处理图像数据、处理器间通信及I/O部分简单、硬件及软件模块化等优点。
    关键词: SIMD  数字图像处理  DSP处理器

 

    数字图像处理与分析技术已是一门较为成熟的二维信号处理技术,现已被广泛应用于通信、生物医学、工业检测和军事等各个方面。它是计算机技术、电视光学技术和数学分析方法等相结合的多学科综合技术。
    近年来,数字图像处理在硬件结构方面发生了重大变化,它已由基本的串行处理结构发展成并行处理结构,由单处理器发展成多处理器系统,或带阵列处理器的高速处理系统。图像处理可以分成一系列的子处理,如预处理、边界判定、区域标号、量化及最终合成等,而且整个图像也可分成一系列图像块分别处理。因而并行处理技术可应用于图像处理系统。
    目前,带有DSP芯片的数字图像处理应用系统大都采用模块化与开放式的主从分布式系统结构,如图1所示。系统主机采用通用计算机,高速运算处理单元的数据处理从机采用基于DSP芯片构成,主从机之间通过共用存储器交换数据。这实际上是多处理机系统的特例。这种结构既充分利用了主机拥有的硬、软件资源,又具有很好的灵活性与较高的性能价格比,从而成为DSP芯片应用系统中一种良好的体系结构。

 

 

1 系统硬件结构
    SIMD并行处理系统构成如图2所示,包括SIMD并行多处理器单元、MC68000单板控制器、PC主计算机及帧接收/显示单元等。

 


    控制器由MC68000微处理器、68230外围接口/适配器、ACIA6850、程序存储器等构成,以串行线与其他单元连接。
    SIMD并行多处理器单元由八个DSP、八个16K字双端口存储器(DPR)、八个数据选择器" title="数据选择器">数据选择器、八个局部存储器SRAM、一个状态选择器及一个地址译码器构成。
    SIMD方式是一种单元指令多数据操作方式,即在控制单元控制下,各处理器对多路数据流进行相同程序指令的处理。本系统处理器选用TI公司的产品TMS320C25。处理程序装在系统程序存储器中,由TMS320C25#1对其进行存取,并将程序转存入各处理器的局部RAM中。TMS320C25#1还负责在处理完成后通知控制器。各处理器的运算及程序的传送均是同步进行的。每个16K字的DPR是由一个2K×8位的Cypress CYTC132和一个2K×8位的CYTC142IC以主从方式配置而成,其存取时间为25ns。DPR的功能是存储原始图像和结果图像,以及和数据选择器一起完成相邻处理器间的通信。数据选择器和状态选择器都是定制的,由触发器和组合逻辑构成。状态选择器可控制系统选择两种操作状态:并行状态和非并行状态。系统程序存储器由4KB高速静态RAM构成,为各处理器公用,设置在它们的直接寻址存储空间内。各处理器各自拥有的局部SRAM均用Cypress芯片CYTC169 SRAM构成,也分别设置在各处理器的直接寻址空间内,并且各SRAM间是相互隔离的。地址译码器为SN74AS138译码器。
    系统进行图像处理时,首先处于非并行状态,由控制器把处理程序装入公用程序RAM中,操作指令装入各处理器的局部SRAM,帧接收器缓冲器中的原始数字化图像装入各DPR(各DPR是相互隔离的)。之后,系统进入并行状态,各处理器开始以SIMD方式对DPR中的图像进行同步处理,处理结果存入DPR结果单元。处理结束后,TMS320C25向控制器发出中断信号,把系统重新设置为非并行状态。控制器中断帧显示单元,用DPR中的处理结果更新其缓冲器,显示新的处理图像。若结果还需进一步处理,则将其转送到DPR的原始图像单元,开始新的处理及显示。
2 图像处理算法
    并行图像处理常用的两种算法:用斜率判定边缘的算法及细化算法。
2.1 边缘判定
    图像分析的一个重要操作是确定边缘。边缘表征目标边界的特征,可用于分段、对位及识别等。图像中灰度突变点即可认为是边缘点。在黑白图像处理中,黑色边缘点至少与一个白色像素相邻,即像素单元(m,n)应有:u(m,n)=0,g(m,n)=1,且:

   

式中,表示异或操作。对连续图像f(x,y),其边缘方向的导数应为局部极大值。所以,可以通过f沿r的θ角方向的斜率来进行边缘判定。这里引入斜率算子H1和H2,计算图像u(m,n)在两个垂直方向上的斜率。对数字化图像,该算子表示为水平方向或垂直方向斜率的有限差分近似。算子尺寸为3×3,其结构如下:
    m-1,n-1  m-1,n+0  m-1,n+1
    m+0,n-1  m+0,n+0  m+0,n+1
    m+1,n-1  m+1,n+0  m+1,n+1
    斜率向量的模值和方向为:

   

    g1(m,n)和g2(m,n)的运算包括算子和像素间的乘法和加法。斜率向量模值也常用下式计算:

   

    边缘判定常使用Sobel算子:

   

    Sobel算子计算水平和垂直方向局部和差值,这样可以减少数据中噪声的影响。对于均匀区域,该算子计算结果为0。若g(m,n)超出阈值t,则可判决定u(m,n)是边缘点,各边缘点组成边缘线e(m,n),它定义为:

    通过边缘线就可追踪目标的边界了。一般地,t值的选取通过g(m,n)的累积直方图进行,使具有最大斜率的像素的5%~10%成为边缘点。用Sobel算子时,需用到相邻像素。因此,硬件中访问相邻存储器的功能对此处理很有用。
2.2 细化
    用Sobel算子求出的边缘线线宽常大于一个像素,所以需对其进行细化,使线宽减为一个像素。细化算法大致是沿目标边缘中间轴线将其转换成一系列的简单弧线。所得结果不受原始图像大小和轮廓拐折的影响。一种简单的处理方法是从目标X中删除与X不只一点相邻的边界点,这种删除还须不断开X。这里区域不断开的定义是区域内任意两点都能由区域内曲线相连。这样,就可保证不删除细化弧线的端点。下面是一个产生连续弧线而对轮廓噪声不敏感的简单算法。
    细化算法如图3所示。参照图3(a),以Z(0)表示有序集[P2,P3,P4,…P9]中非零变换的零的数量,NZ(P1)表示P1的非零邻点的数量。当P1满足下列条件时可删除图3(b):

   

    反复进行这一过程,直至图像不再变化。

 

 

3 图像数据的分块及分配
    帧接收器中存储的图像尺寸可以为:128×128、256×256或512×512。在SIMD并行方式时,各处理器分别处理图像的一个固定部分,因此图像需相应地均匀分块。例如,128×128图像需分成8块64×32或32×64。图4是分成64×32块。在并行处理时,块#1由处理器1处理,块#2由处理器2处理等。各图像块的数据量相同,所以处理时间也相同。

 

 

    图像分块是系统在非并行状态时,由控制器完成,并分别存入各处理器的DPR中。对于N×N的图像,分块方式如图5所示。

 

 

    在边缘判定时,处理器对每个像素均用Sobel算子处理。因Sobel算子是3×3核,所以有时要用到相邻处理器DPR中的图像像素。例如,当IM(i,j)为图像块的左边界时,运算就要使用左邻图像块的像素IM(i,j-1)、IM(i+1,j-1)和IM(i-1,j-1)。因此,处理器#1和处理器#8仅需访问两个DPR,而其余的处理器均访问三个DPR。
4 系统性能分析
    本系统的结构防止了对存储器及总线的争用。图像块的存入在非并行状态下进行,而其读取在并行状态下进行,这就消除了对DPR的争用。图像块从帧接收器装入DPR在数据总线上进行,而处理结果存入帧接收器是在全部图像处理完成后才进行,这样就不会出现对数据总线的争用。因此,系统总处理时间取决于图像装入DPR的时间t1、图像块的处理时间t2、处理结果送入帧接收器缓冲器的时间t3。即系统总处理时间可表示为:

   

    t1包括对帧接收器的访问及把图像存入DPR的时间,由控制器在非并行状态用MOVE.B Mem1、Mem2指令依次把图像存入DPR并完成其分块。各处理器同步并行操作,所以全部图像处理时间t2等于一个图像块的处理时间。它包括像素检索时间、图像处理及存入DPR时间、中间结果的读取及处理后再存入DPR的时间等。图像的读取用LAC指令,处理用ADD和MAC指令,结果存储用SACL和SACH指令。因MAC指令为单周期,所以处理速度很高。t3包括把DPR中的结果依序存入显示缓冲器相应单元的时间。这一操作用MOVE.B Mem2、Mem1指令完成。使用高速直接访问存储器控制器(DMA)也可提高系统速度。DMA可以大大减少从帧接收器缓冲器到DPR及从DPR到显示器缓冲器的数据存储时间,使其小于处理时间,即t12、t32。
    本系统结构可以很容易地扩展更多的处理器及相应的DPR的数据选择器,构成更大的处理系统,处理更大的图像。随着社会和经济的发展,数字图像处理系统的应用范围越来越广,例如会议电视、可视电话、机器视觉等。因此,人们对数字图像处理系统的要求也越来越高,对DSP芯片及其应用系统的开发与研制将是以后高速数字图像处理系统发展的一个重要方向,它在今后的军用与民用领域将发挥更大的作用。
参考文献
[1] 张雪松,倪国强,周立伟,等.带有DSP芯片的新型实时数字图像处理系统[A].光学技术,1997,(4):16-18.
[2] HWANG Kai,XU Zhi Wei.Scalable parallel computers for real-time signal processing.IEEE Signal Processing Magazine,1996:50-66.
[3] KAI H著.高等计算机系统结构并行性可扩展性可编程性.王鼎兴等译.北京:清华大学出版社,1995.
[4] 李晓梅,蒋增荣.并行算法.长沙:湖南科学技术出版社,1992.
[5] 胡辉.基于多处理机平台-TMS320C80的并行算法实现方法的研究.小型微型计算机系统,1999,20(12):881-884.
[6] 陈景良.并行算法引论.北京:石油工业出版社,1992.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。