发信人: champaign (原野), 信区: ECE
标 题: TMS320C6201在图像处理中的应用
发信站: 紫 丁 香 (Sat Jan 8 19:10:45 2000), 转信
发信人: fangf (方方), 信区: DSP
标 题: TMS320C6201在图像处理中的应用
发信站: 饮水思源站 (Sun Jul 25 23:19:03 1999) , 站内信件
摘要:TMS320C6201是TI公司首次推出的多处理单元数字处理器,本文将介绍它的硬件结
构、软件资源,并且设计了一种基于TMS320C6201的图像处理系统。
关键词:数字信号处理器;DSP;图像处理
当前,在诸如模式识别、压缩编码等图像处理中,由于处理的数据量大、算法复杂度高
,因此处理的实时性往往成为困扰技术人员的难题。如果采用专用芯片组实现,虽然实
时性得到保证,但系统的灵活度大大降低了。为此,寻求一种高速的通用数字信号处理
芯片成为解决问题的唯一途径。最近,TI推出了最新的含多处理单元的C6x系列数字信号
处理芯片,其中最有代表性的是C6201定点处理器。该处理器可采用50MHz或100MHz的工
作频率,经内部倍频后升至200MHz,每秒可完成1.6G次操作。TMS320C6201有532只管脚
,采用BGAP封装,工作温度为0-90℃。其内部含具备超长指令字处理能力的CPU和8个功
能单元,故而它可在一个时钟周期内执行8条指令,芯片运算能力显著提高,再加之其良
好的外部RAM接口、和16Bit的主机接口以及四通道的DMA功能,使其成为高速运算的首选
芯片。
一 硬件结构
TMS320C6201处理器硬件资源丰富,主要由三大部分组成:CPU、外围设备和存储器。其
结构框图如图1。
C6201的地址总线为32位,所以寻址范围达到4GB,其存储器空间可分为四部分:片内程
序空间(包括Cache)、片内数据空间、外部存储空间和内部外围设备空间。可通过对五个
BOOTMODE引脚的设置灵活设定各空间的地址范围。片内数据RAM包括四个8K*16的块,这
些块交织组织在一起,使得CPU可同时访问数据RAM的两个不同块而不会发生冲突。分开
的程序总线、数据总线和DMA总线使得取指、读写数据和DMA操作可以并行。对于较大的
程序,片内程序RAM可当做Cache来存储经常使用的代码,减少对片外访问次数,从而提
高程序运行速度。
与常见的芯片不同,C6201有八个功能单元,分为两组,每组包括一个乘法器(Mn)和三个
算术逻辑运算单元(Dn,Sn,Ln)。Mn进行16*16的乘法运算,Dn进行32Bit的加减运算、线
性和环形地址计算,Ln和Sn都能作32/40bit的算术逻辑运算,另外它们还有各自得特点
,Ln可进行32/40bit的归一化操作,Sn负责跳转和控制寄存器的数据传输。每个单元有
两个32bit的输入端口,用于取入两个操作数,单元Ln,Mn和Sn的输入还可跨组取操作数
;每个单元有32Bit的输出端口,分别写入本组的寄存器中,对于算术逻辑运算单元Ln和
Sn还有附加的8Bit输出端口,在高精度要求时用于40Bit字的输出。因为输入输出端口相
互独立,所以8个运算单元可实现并行处理。
图1 TMS320C6201 结构框图
每组运算单元对应一条数据路径,每条数据路径包含一个寄存器文件(A或B),提供16个
32bit的寄存器(An或Bn)。这些寄存器可以由运算单元操作,也可以作为通用寄存器。同
时它们也具有一些特殊的用途,例如A1,A2,B0,B1和B2可以作为条件寄存器,A4-A7和B4
-B7可以用作环形地址计算。每个寄存器文件有一条32bit的取数据路径(LDn)和一条32b
it的存数据路径(STn),负责寄存器与存储器间的数据存取。由Dn产生的数据地址可通过
路径DAn支持另一个寄存器文件的数据存取使用。
TMS320C6201的外围设备包括DMA控制器、主机接口(HPI)、中断选择等。DMA控制器允许
数据传输在CPU操作的后台进行,因此C6201可与外部的低速设备接口而不降低CPU的吞吐
量。C6201的DMA控制器有四个独立的可编程通道,可以进行四个不同的DMA操作,每个通
道可根据需要传输8位,16位或32位的数据。此外,还有一个辅助通道允许DMA控制器响应
具有地址产生能力的外设请求。主机接口使得主机设备能够直接地访问CPU的存储空间。
TMS320C6201可通过引脚BOOTMODE[4:0]设置多种BOOT方式,例如直接执行方式,或从外
部EPROM、主机等设备装载程序。C6201允许14个中断,包括Reset、不可屏蔽中断、串行
口中断、定时器中断和外部中断。CPU通过监测IACK引脚判断中断请求,引脚INUM0-INU
M3标识应该服务的中断矢量位置。
TMS320C6201的两个多通道带缓存的串行口,与C2x,C2xx,C5x,C54x相同,具有支持全双
工通信,双缓存数据寄存器结构支持连续数据发送,收发时钟独立等特点。除此之外,
它还有支持多种数据格式(8bit,12bit,16bit,20bit,24bit,32bit)的传输,A律和m律压
扩,时钟或帧同步的编程设置和极性控制,接口方便等优点。C6201有两个32位的定时器
,主要用于时钟中断、DMA控制器同步、事件计数等,它可由外部或内部提供时钟。
二 软件资源
l 丰富的指令
TMS320C6201的汇编语言指令特别适合于数字信号处理,大部分指令是单周期的。指令集
共有五十余条指令,大致可分为三类:数据传输类,算术逻辑操作类和程序控制类。数
据传输类指令进行数据的寄存器和存储器间、寄存器和寄存器间的数据存取操作,在语
句中可显式地标识进行8bit,16bit,32bit的数据存取,给不同结构的数据操作带来方便
。算术逻辑操作类指令进行定点的算术和逻辑操作。程序控制类指令控制程序的流程,
包括标准跳转指令、条件跳转指令和空闲指令等。特别由于引进了多处理器技术,所以
C6201采用256位的超长指令字,每条超长指令最多可并行执行不发生资源冲突8条基本指
令,基本指令间用| | 连接。
l 流水线操作
流水线操作和超长指令字是TMS320C6201的高性能特点。其指令执行可分为四个步骤:取
指(Fetch),指令拆装(Dispatch),译码(Decode),执行(Execute),流水线操作即指以
上四个步骤的并行操作,其结构如图2。由于引入了多单元结构和超长指令字,所以较之
常见的数字处理芯片多了一个指令拆装的过程。
周期 取指 指令拆装 译码 执行
n-3 A -- -- --
n-2 B A -- --
n-1 C B A --
n D C B A
n+1 -- D C B
n+2 -- -- D C
n+3 -- -- -- D
图2 流水线示意图
A,B,C,D代表指令
图中在n周期,流水线完全重叠,四个步骤同时在进行。四个步骤的优先级从高到低依次
为执行,译码,指令拆装,取指。当一条指令的处理已经准备到下一级,但该级尚未准
备好接收新的输入时,就产生了所谓的流水线冲突。在这种情况下,优先级低的等待优
先级高的步骤完成其操作。流水线冲突大致有三种原因:跳转冲突,寄存器冲突和存储
器冲突。以上冲突可以采取一定的手段预以解决,例如通过调整数据结构和数据放置地
址解决存储器冲突。
采用了流水线技术后,在软件设计中为充分利用执行跳转指令时流水线中尚存的资源,
可考虑适当地改变语句的位置,以达到优化的目的。
l 灵活的寻址方式
TMS320C6201支持多种寻址方式,如寄存器寻址,直接寻址,间接寻址,短立即数寻址,
长立即数寻址和相对寻址。此外,它还提供环形寻址,主要针对相关和卷积等运算中的
存储器寻址。
三 基于TMS320C6201的图像处理系统
一个基于TMS320C6201的图像处理系统的基本结构如图3所示,大致可分为图像采集单元
、图像传输控制单元、主机接口和主控单元、象素处理单元和图像处理单元( TMS320C
6201 )等几部分。
图3 基于TMS320C6201的图像处理系统框图
图像采集单元主要负责图像信号的输入,应具有多路信号复用功能。对于模拟信号的输
入还需要进行数字化和格式化。图像传输控制单元负责图像数据在系统中的流向,减小
由于资源冲突而造成的瓶颈效应。象素处理单元用于图形加速。图像处理单元采用TMS3
20C6201,负责高速的数据处理和分析,其独立的存储器空间便于灵活地实现多模式功能
。主机接口和主控单元完成与寄宿主机的通信以及系统的控制。除此之外,系统还有辅
助的扩展总线和显示单元,便于显示和在运算要求进一步提高时系统扩展。
目前,TMS320C6201超强的运算性能正日益受到重视,利用其的图像处理产品也陆续开发
上市,以CORECO公司的COBRA/C6和PYTHON/C6为代表。COBRA/C6为单处理器系统,而PYT
HON/C6为多处理器系统。
综上所述,TMS320C6201作为高速的多处理单元数字信号处理器,具备快速的运算能力,
完全能够满足图像处理的要求,能广泛地应用于机器人视觉、医学图像处理等领域。此
外,TMS320C6x在通信中也有广泛的应用前景,如微蜂窝网的基站、ADSL、V.90 56Kbps
Modem等。
参考文献:
1. TMS320C6201 Technical Brief , Oct. 1997
2. TMS320C6201 Product Preview , Oct. 1997
--
感情是一个难以驯服的野马
理智却是一个严厉的马夫
※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: 202.118.228.139]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:5.788毫秒