定点DSP芯片TMS320F206主从系统的设计
摘 要:通过介绍一个基于定点DSP的主从系统,说明了定点DSP、80C196单片机和双口RAM的使用,具有很高的参考价值。
关键词:DSP,主从系统,双口RAM
1 引 言
计算机应用的普及和TMS320数字信号处理的出现,使实时控制领域有了重大突破,应用面日益加宽。从市场上各种DSP产品来看,德克萨斯仪器公司(Texas Instruments,TI)的产品占据半壁江山,特别是TMS320系列,本文讨论的TMS320F206就是这个系列中的定点数字信号处理芯片。
DSP具有很强的数据处理功能,但其控制管理功能较弱,在许多应用场合需要采用多个处理器才能满足要求。通常的情况下,一枚DSP与一枚MCU构成的主从系统是比较理想的组合,这种组合可以发挥DSP和MCU的优势。在DSP和MCU构成的主从系统中,一般把MCU作为主机,DSP作为从机。设计主从系统的关键是设计主从机之间的通信,通常采用共享存储器方式。本文采用双端口SRAM(静态存储器7C133-25)作为共享存储器。
2 TMS320F206的结构特点
TI公司的TMS320F206芯片采用静态CMOS集成电路工艺制造,结构设计建立在TMS320C20X芯片的基础上,只需5V的低电压就可运行。它的先进的哈佛结构,片内外设,片上内存以及丰富的命令集使它的速度和可靠性大大提高。
TMS320F206的主要特点有:32Kbyte×16bit的FLASH EEPROM大大降低了开发成本;采用了100线TQFP的封装技术;64Kbyte的程序存储空间,64Kbyte的数据存储空间和64Kbyte的I/O空间,它们通过三条并行总线(PBA,DRAB,DWAB)独立操作;可以同时访问程序空间和数据空间,在一个指定机器周期内,中央算术逻辑单元可执行多达三次的并行存储器操作;片上4.5Kbyte的RAM使得芯片可以实现快速的DSP计算,并能使大部分运算在一个指令周期内完成;丰富的指令集和灵活的寻址方式有四条流水线操作和九级中断,且用户可以屏蔽大多数中断,可通过软件的方式灵活控制。
3 80C196的结构特点
80C196是Intel公司生产的MCS-96系列16位单片机,与MCS-51系列80C31 8位单片机相比,在运行和计算速度上有了很大提高,可用于8位单片机解决不了的复杂系统。
其特点为:80C196 16位单片机采用的是寄存器-寄存器结构,数据总线是16位的,因此,80C196具有较高的操作速度和数据吞吐能力;80C196有一套效率高、执行速度更快的指令系统,可对带符号数和不带符号数进行操作;支持16位的运算,大大提高了指令效率;还有符号扩展、数据规格化(用于计算中)的指令;80C196集成了更为丰富的外设装置,增加了一个外设事务服务器PTS,专门用于外设中断事务,和普通中断服务过程相比,PTS服务大大减少了中央处理器CPU(Central Processing Unit)的软件开销;80C196集成的A/D转换器由模拟多路转换开关,采样保持电路,逐次逼近A/D转换器,A/D命令结果寄存器和控制逻辑等组成。
4 7C133┐25双口RAM的结构特点
双端口RAM具有两组独立的数据、地址和控制线,故称为双端口。对于任意的一个端口来说,都可以独立地进行操作,可以对同一个存储器的任意单元独立地进行读写。外设向主机传递的数据可以通过一个端口送入缓冲区,而不直接立即传递给主机。当缓冲区的数据量达到一定程度时,再让主机将数据取走。主机不需要在取一个数据后等待外设送下一个数据,而是成批地取,从而可以有更多的时间处理其它的事件。常用的双端口RAM是美国Cypress公司的CY7C系列,两端口通过各自的控制信号、片选信号、输出允许和读写控制使得两端口可以像独立的存储器一样使用。但有一个问题要注意,当两端口同时对同一存储单元进行访问时容易出错。这时,一般采用两种方法来避免错误出现:一是监测BUSY信号输出,当检测到BUSY信号有效时,就说明有一端在访问存储单元,这时,另一端就应该使访问周期拉长,这是在硬件上解决的;另一种方法是在软件上保证两个端口不能同时访问同一个单元,即,双端口内部进行分块。
5 硬件电路设计
本电路MCU采用单片机80C196作为主机,定点DSP芯片TMS320F206作为从机,利用双口RAM芯片7C133-25处理左右两侧CPU之间的通信。首先,某一侧CPU把信息存储在双口RAM的一个端口中,再由另一侧的CPU在另一个端口中把信息取走。电路如图1所示。
在双侧CPU同时访问存储器的同一个单元而出现竞争时,7C133-25的内部具有的仲裁电路将确定哪侧的CPU可以访问该单元,并同时通过BUSY信号来延缓另一侧的CPU的访问。在容许访问的一侧的CPU访问结束后,被延缓的一侧可以对该单元进行访问。
主要程序清单如下:
(1)TMS320F206处理的数据结果(16位)存储在双口RAM中,代码如下:
start:sacl 75h;把处理结果暂存在75h单元中
lar ar2,#800ch;800Ch为双口RAM的地址
mar*,ar2
lacl75h;把75h中的内容存入累加器ACC
sacl*+;结果存入双口RAM的800cH,并且地址加
1sfr;把数据右移一位
sfr
sfr
sfr
sfr
sfr
sfr
sfr
sacl*;结果存入双口RAM的800dH
end;程序结束
(2)80C196接收TMS320F206存入双口RAM中的数据处理结果,代码如下:
LD AX,#800ch;设置双口RAM取数据地址
LD BX,#75h;设置数据存放地址
LD EX,〔AX〕;读取双口RAM中的数据
ST EX,〔BX〕;把数据存入75h
6 结束语
定点DSP芯片TMS320F206主从系统采用DSP和MCU构成,充分发挥了DSP和MCU两者的优势。利用共享存储器方式实现两者的通信,接口简单,速度快。
|