DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 981|回复: 0
打印 上一主题 下一主题

[待整理] TMS320VC5409和Cygnal单片机构成的移动数据处理传输系统

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-10 08:26:34 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
1 引言
  
移动数据处理传输系统主要应用在小型或便携仪器上。它能够采集、处理和并通过无线移动网传送和接收数据。由于无线移动网的费用,应使移动数据处理传输系统有较强的实时数据处理和数据压缩功能,以减少通过移动网传送和接收数据量。另外由于仪器具有体积小、便于携带、较长的工作时间,电池供电等特点,因而要求移动数据处理传输系统有较低的功耗。为达到上述目的,本文设计了一种基于Ti公司低功耗DSP芯片和Cygnal低功耗的混合信号系统级单片机移动数据处理传输系统。

图1移动数据处理传输系统
  
该移动数据处理传输系统(见图1)由三个主要DSP单元、CPU单元,GSM单元组成。经放大、滤波后模拟信号送入CPU单元进行A/D转换。CPU单元将A/D转换后的模拟信号通过HPI总线送入DSP单元进行多种数据处理和数据压缩等大量的和高速的运算(例如:FFT、小波变换、滤波、模式识别、编码压缩等)。运算的结果再通过HPI总线送入CPU单元。CPU单元还可对由DSP单元送来的信号再进行简单的处理、分析。CPU单元还分别控制其他辅助单元(例:键盘单元、时钟单元、LCD单元、LED单元等)工作。CPU单元通过串口控制GSM单元通过无线移动网传送和接收数据。所以移动数据处理传输系统实际是一个以CPU为核心的数据采集、处理系统和传输系统。
  
2 DSP单元
  
DSP单元将CPU单元通过HPI总线送来的 A/D转换后的原始数据信号进行多种高速运算,运算的结果再通过HPI总线送入CPU单元。DSP单元可以承担信号预处理、信号的检测及分类等实时性要求高、计算量大的算法。这里选用Ti公司TMS320-54系列DSP中的TMS320VC5409[1]芯片。TMS320C54X是为实现低功耗、高性能和低成本而专门设计的定点DSP芯片。TMS320C54X的主要特点包括:
  
⑴ 运算速度快。指令周期为25/20/15/12.5/10ns,运算能力为40/50/66/80/100 MIPS;
  
⑵ 优化的CPU结构。内部有1个40位的算术逻辑单元,2个40位的累加器,2个40位加法器,1个17×17的乘法器和1个40位的桶形移位器,允许16 位带/不带符号的乘法。有4条内部总线和2个地址产生器。此外,内部还集成了维特比加速器,用于提高维特比编译码的速度。
  
⑶ 低功耗方式。TMS320C54X可以在3.3V电压下工作,三个低功耗方式(IDLE1、IDLE2和IDLE3)可以节省DSP的功耗,TMS320C54X特别适合于无线移动设备。
  
⑷ 智能外设。除了标准的串行口和时分复用(TDM)串行口外,TMS320C54X还提供了自动缓冲串行口BSP(auto-Buffered Serial Port)和与外部处理器通信的HPI(Host Port InteRFace)接口。
  
TMS320VC5409除了具有54X的特点外,它还有一个16位16 K的片内只读存储器, 一个16位32 K 的片内双操作数据存储器,三个多通道缓冲串型接口(McBSPs),一个增强型的具有16位数据/地址驱动功能的8位主机接口(HPI)[2],一个 16bit定时器和6个通道(DMA)控制器,操作速率达100MIPS,支持8 兆外部的程序空间,低功耗工作:3V和1.8V(内核),特别适合电池供电设备。
  
在移动数据处理传输系统中,CPU以主机方式运行,而VC5409以从机的方式运行。CPU单元在启动时控制RESDSP信号复位VC5409,在复位时将放在DCM8512SRAM(图5)中的VC5409用户程序经HPI总线传送到VC5409的片内高速RAM中,以提高DSP的执行速度和减少功耗。由于VC5409的HINT和INT2相连,所以当RESDSP信号为高时,VC5409引导程序(Bootloader)将以HPI[3]方式启动。 VC5409将自动执行由引导程序装入在VC5409的片内数据存储器中程序。在其他时间VC5409经HPI总线与CPU单元交换数据。为了满足能够进行实时数字信号处理需要,DSP工作频率为100 MHz。
  
在系统功耗是系统设计首要考虑的情况下,应尽可能地选择低电压供电的DSP器件。选择3.3V低电压供电的DSP除了能减小DSP本身的功耗以降低系统的总功耗外,还可以使外部逻辑电路功耗降低,这对实现系统低功耗有着重要的作用。另外在软件上使用IDLE指令降低功耗。VC5409有IDLE1、IDLE2和IDLE3几种降功耗模式。IDLE指令将CPU内部操作挂起(suspend activity),但是仍保留内部各部件逻辑的时钟,允许串口等片内外设继续工作。在50MHz的系统时钟时,执行IDLE2指令所需电流的典型值为 2mA。若关闭内部部件的输入时钟时执行IDLE3指令,这时电流值仅为20μA。

  
3 无线移动网接口 
  
移动通信系统主要使用CDMA和GSM制式。GSM系统是笫二代移动通信系统[4]。它提供多种业务,主要有话音、短消息、数据业务等。GSM系统是由几个分系统组成的,并且可与各种公用通信网(PSTN公用电话网、 ISDN综合业务数据网、PSPDN公用交换分组数据网等)互连互通,GSM系统能提供穿越国际边界的自动漫游功能。GSM有两个并行的系统:GSM900和DCS1800,这两个系统功能相同,主要是频率不同。GSM移动通信网能提供多种电信业务,主要有∶
  
电话业务是GSM移动通信网提供的最重要业务。能为数字移动客户之间、数字蜂窝移动电话网客户、模蜂窝移动电话网客户之间以及与固定网客户之间,提供实时双向话音通信。
  
短消息业务又可分为包括移动台起始和移动台终止的点对点的短消息业务和点对多点的小区广播短消息业务。点对点的短消息业务,则可使GSM客户接收由其它 GSM客户发送的短消息。点对点的短消息业务是由短消息业务中心完成存储和前转功能的。点对点的信息发送或接收即可在MS处于呼叫状态(话音或数据)时进行,也可在空闲状态下进行。当其在控制信道内传送时,不用建立连接,因而服务费低,但信息量限制为140个八位组(7比特编码,160个字符)。
  
为了满足GSM移动客户对数据通信服务的需要。GSM系统不仅使移动客户之间能完成数据通信,更重要还能使GSM移动通信网与其它公用数据网互通。 GSM提供2400bps、4800bps、9600bps的异步数据传输能力。
  
GSM引擎模块提供的命令接口符合GSM07.05[5]和GSM07.07[6]规范。GSM07.07中定义的AT Command接口提供了一种移动台(MS)与数据终端设备(DTE)之间的通用接口,该指令集是由诺基亚、爱立信、摩托罗拉和HP等厂家共同为GSM系统研制的,GSM07.05对短消息作了详细的规定。在短消息模块收到网络发来的短消息时,能够通过串口发送指示消息,数据终端设备可以向短消息模块发送各种命令。目前,在国内已经开始使用的模块有Falcom系列,Wavecom系列,西门子系列模块,而且这些模块的功能、用法差别不大。利用GSM引擎模块在GSM网络进行数据传输的方法,结合已有的系统通过RS232接口(图3),可以仅使用TXD和RXD两根线,实现数据的无线传输。并且已有的系统硬件部分不需要做大的改动,关键是做软件部分的修改。

  
西门子的TC35系列GSM引擎模块[7]性价比较高,并且已经有国内的无线电设备入网证,TC35主要是由射频天线、内部Flash、GSM 基带处理器、匹配电源和一个40脚的Zip插座组成。其中GSM基带处理器是核心部件,它的作用相当于一个协议处理器,用来处理外部系统通过串口发送过来的AT指令。射频天线部分主要实现信号的调制与解调,实现外部射频信号与内部基带处理器之间的信号转换,匹配电源为处理器以及射频部分提供所需的电源,插座是提供给用户的应用接口。TC35的用户应用接口采用40脚的Zip插座,其中包含的引脚功能有:3.3~5.5V峰值为2A的直流电源;模拟音频输入输出接口;标准的RS232信号接口,共8个引脚;SIM卡连接引脚数为6个,符合GSM11.11标准。特别需要引起注意的是,RS232接口采用9位编码格式,其中8 个数据位,1个停止位,没有奇偶校验位,因此单片机一般采用工作方式1,支持1200-115200bps的速率(但标准的GSM网络一般只支持 9.6Kbps的速率)。
  
4 CPU单元
  
CPU单元的任务比较多,主要要完成对由DSP单元送来的信号再处理分析。 CPU单元还分别控制键盘单元、时钟单元、LCD单元、LED单元等辅助单元和GSM单元工作。对CPU单元的要求是高速和低功耗。这里选用美国 Cygnal公司的C8051F020。C8051F020单片机[8]是集成在一块芯片上的混合信号系统级单片机(图4),芯片上有8个8位数字I/O 端口,其中四个与标准的8051的端口(P0、P1、P2、P3)相同,与5V兼容。I/O端口在功能上有所增强,每个I/O端口都可独立地设置为推挽输出或开漏输出和弱上拉,这为一些低功耗系统设计提供了节省电源的手段。C8051F020单片机除了具有51系列单片机的特点外还有如下的特点:
(1) 25MPIS高速流水线式8051微控制器内核;
(2) 12位、100KSPS、8通道带可编程增益放大器的ADC,双12位可程控更新的DAC;
(3) 双模拟比较器,片内基准电源;
(4) 64KB系统内可编程FLASH存储器,4352(4096+256)片内RAM;
(5) 各自独立的SPI、SMBUS/I2C和两个UART串行接口;
(6) 5个16位通用定时器;
(7) 片内看门狗定时器、VDD监视器和温度传感器;
(8) 工作电压:2.7-3.6V,工作电流:[email=10mAa href=]10mA@20MHz[/email]。
C8051F020使用采用了流水线式结构,与标准的8051相比它的指令执行速度有极大的提高。在标准的8051中,除了MUL和DIV所有的指令都需要12或24个系统时钟周期,最大的时钟频率12-24MHZ。相比较而言,C8051F020内核70%的指令执行时间为1或2个系统时钟周期,只有4 条指令的执行 时间超过4个系统时钟周期。C8051F020的MCU 在CIP-51内核的内部和外部有几项关键性的改进,提高了整体性能,更易于在实际应用中使用。扩展的中断系统为CIP-51提供22个中断源,而标准的8051只有7个中断源。C8051F020允许大量的模拟和数字外设中断微控制器。由中断驱动的系统需要较少的CPU干预,从而极大地提高系统的执行速度。特别是在多任务实时系统中,这些增加的中断源非常有用。MCU内部有一个能独立工作的时钟发生器。另外,MCU可以关闭单个或全部外设以节省功耗。由于C8051F020单片机自身带有64K+128B的 FLASH 程序存储器,故不需再扩展程序存储器。

图4 C8051F020单片机
  
C8051F020的MCU具有4KB的RAM可映射在片内,也可映射在64KB外部数据存储器地址空间,还可同时映射到片内和片外三种方式。对于后两种存储器工作模式需通过外部存储器接口使用MOVX和DPTR或MOVX和R0(R1)指令访问外部数据存储器和存储器映像的I/O设备。但是对于高8位地址必须由外部存储器接口寄存器(EMI0CN)提供。而EMIF控制寄存器可将外部数据存储器接口映射到低端口(P0-P3)或高端口(P4-P7),以及配置为复用模式或非复用模式等。
  
外部存储器接口(EMI)映射为低端口(P0~3)即PRTSEL位(EMIOCH.5)置为0,此时如果EMIFLE位(XBR2.5)被设置为逻辑1,那么数字交*开关将不分配外部设备给 P0.7(/WR),P0.6(/RD),P0.5(ALE)(如果EMI设置为复用模式);如果EMIFLE位设为0,那么P0.7、P0.6、 P0.5的功能将由交*开关或端口锁存器来决定。外部存储器接口只在执行片外MOVX指令期间使用相关的端口引脚,一旦MOVX指令执行完毕,端口锁存器或交*开关又重新恢复对端口引脚的控制(端口3、2、1、0)。对于外部存储器接口的配置只有扩展外部存储器或具有存储器映像的I/O部件时,才配置 EMIF。
  
本数据处理传输系统使用512k*8bit的SRAM作为外部数据存储器,使用高端口、复用模式(即P7端口数据D0-D7和地址A0-A7复用,P6端口输出地址A8-A15)、片外存储器方式(不使用片内存储器)。DCM8512是512k*8bit自带掉电保护的 SRAM,用于存放数据和VC5409用户程序,需19条地址线(A0-A18),而C8051F020外部数据存储器只支持64k Byte(A0-A15),故使用P5端口来扩充地址线(A16-A20)。
  
C8051F020最突出的优点之一就是使用交*开关网络。交*开关网络改进了可以控制片内数字资源与外部I/O引脚相连的。通过设置交*开关控制寄存器,将片内的数字资源如计数器/定时器、串行总线、硬件中断、 ADC转换启动输入、比较器输出以及微控制器内部其他数字资源配置为端口I/O引脚,这就允许用户根据自己的特定应用将通用I/O端口与所需要数字资源相结合。
  
CPU单元工作原理(见图5)。C8051F020的工作频率为11.0592MHz。模拟信号连接至C8051F020的 AIN0.0- AIN0.7脚,进行12位A/D转换。由C8051F020中的时钟单元产生可以变动的抽样频率。CPU单元通过HPI总线将A/D转换后的心电信号送到DSP单元进行运算,运算的结果再通过HPI总线送入CPU单元。HPI总线内包括数据线D0-D7、地址线A0-A3、DSP片选线DSP- addr、读写线WR,RD、DSP复位线及中断线INT0组成。地址线A0-A3选择DSP的HPI寄存器;数据线D0-D7用于C8051F020和 DSP交换数据;当C8051F020向DSP写数据时,将在DSP内部产生中断,该中断将DSP从IDLE状态中唤醒,中断服务程序还将从DSP特定地址的内部存储器中读CPU写的数据;当DSP向C8051F020写数据时,DSP置中断线INT0=0,C8051F020的INT0中断服务程序将从 DSP的HPI数据寄存器读数据。

CPU单元通过RS232接口线TX0和RX0与GSM模块进行硬件连接,用于通过无线移动网传送数据信息。C8051F020单片机和GSM引擎之间采用AT指令实现互相之间的通信,更详细的资料可以参考GSM07.05和GSM07.07规范。例如使用短信方式时,CPU单元发出短信的过程大体如下:用预先设置好的短信息中心地址、短信息的接受地址和要发售的报警数据,形成PDU格式短信;然后发出指令"AT+CMGF=0r"设置GSM引擎为 PDU方式;再发出指令"AT+CMGS=r ",当受到回答信号后,发送已形成PDU格式短信。
  
5 小结
  
本文设计了一种基于 Ti公司低功耗DSP芯片和Cygnal低功耗的混合信号系统级单片机移动数据处理传输系统,它能够采集、处理和通过无线移动网传送和接收数据。该系统主要由DSP、CPU,GSM三个单元组成,并以CPU单元为核心。Cygnal单片机可以进行A/D转换,CPU单元将A/D转换后的模拟信号通过HPI 总线送入DSP单元进行数据处理;处理的结果再通过HPI总线送入CPU单元。CPU单元通过串口控制GSM单元通过无线移动网传送和接收数据。该系统具有体积小、便于携带、功耗低、可使用电池供电的特点,因而主要应用于要求移动数据处理传输的小型或便携仪器上使用。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-1 04:55 , 耗时 0.090917 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表