微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > ADSP-BF533在低耗高速实时系统中的应用

ADSP-BF533在低耗高速实时系统中的应用

时间:03-08 来源:微计算机信息 焦智 点击:

常状态,不需要一直进行复杂的数据处理。正常状态下.仅由单片机接收数据并进行简单判别而ADSP-BF533处于深度休眠状态,此时DSP内核、外设时钟全部禁止,仅用0.8V电压维持RTC模块的实时时钟运转,电流仅为几十微安,功耗微乎其微--满足此类电池供电系统的节能要求;而一旦单片机判决数据"可能异常",将唤醒休眠的ADSP-BF533并对信号进行高速实时处理--满足此类系统的高速实时性要求。

ADSP-BF533与单片机间通过异步串口UART传送数据。数据格式和波特率可编程设定。为了将DSP从深度休眠中唤醒,单片机另用一根输出线(如P2.0)接至RESET脚。另外,因为ADSP-BF533没有片内程序存储器,用户的代码必须通过外部的存储器来进行引导。ADSP-BF533的两个引脚BMODEO和BMODEl的最终状态决定ADSP-BF533的引导方式,试验中选用从外部FLASH引导的方式(BMODEO脚接高电平,BMODEI脚接低电平),将用户代码放入FLASH中,FLASH选用PSD4256G6V(IMB)。ADSP-BF533的地址线A[1:19]分别接至PSD4256G6V-10UI的ADl1~ADl5及PCO~PC3脚,数据线D[0:15]分别接至PSD4256G6V-IOUI的PFO~PF7及PG0~PG7脚,在读写控制部分,将ADSP-BF533的ABE0、ABE1、AMS0、AMS2、AOE分别接至PSD4256G6V-10UI的AD0、CNTL2、PC6、PC7及CNTLI脚,另将ADSP-BF533的而云和PSD4256G6V-10UI的CNTL、PD3脚相连。ADSP-BF533与单片机间的部分连接关系如图2所示。

图2 ADSP-BF533与单片机的连接示意图

  系统上电复位后.7单片机先通过UART向ADSP-BF533发送一个握手信号.为了区别后面发送的正常数据,此握手信号可选用特殊符号"EOF",此后ADSP-BF533进入深度休眠的省电模式。系统下作时由单片机接收前端采集的数据并进行简单判别,若无异常则ADSP-BF533保持深度休眠,程序对实时时钟编程为每1天(24小时)产生一次中断(RTC中断),由中断唤醒DSP并通过UART向单片机传送一个特定数据(如10101010)表示DSP硬件正常并处于深度休眠,再由单片机通过GPBS/GSM模块通知上位机然后再次进入深度休眠:当单片机对前端数据初次判决为"可能异常"时,立即输出一个低电平信号(1毫秒)至ADSP-BF533的面面矛脚令其复位,然后ADSP-BF533切换到全速方式(通过对ADSP~BF533的PLL编程实现),接着单片机通过UART向ADSP-BF533传送数据(因数据量不大,将数据放在ADSP-BF533内部的L1数据存储器中)。接着533进行调用相应算法处理进行高速实时处理,若结果异常,则启用UART向单片机传送另一个特定数据(如11111111)告知异常,再由单片机通过GPRS/GSM模块通知上位机,然后ADSP-BF533再次进入深度休眠.直至下面发生两种情况之一才再次被激活:1.实时时钟再次计数满一天:2.单片机再次发出低电平复位信号。ADSP-BF533的工作流程如图3所示。

图3 ADSP-BF533的工作流程

  对ADSP-BF533的编程是通过写相关寄存器实现的,在visual DSP++环境下使用汇编语言或C语言均可。试验中采用c语言实现,如PLL(片内锁相环)子函数的编程代码如下:

  4 结论

  当今社会,电子技术广泛应用于各种领域。人们对电子系统的速度和功耗提出了越来越高的要求。综上所述。利用高性能ADSP-BF533处理器高速实时处理和低功耗的特点.可以使其在那些要求低功耗、高速度的实时信号处理系统中发挥无与伦比的作用。

  本文作者创新点:提出了一种基于单片机+ADSP BF533的双核结构,适用于一些具有低功耗、高速实时处理特点的系统。利用这种双核结构,可以兼顾高速实时数据处理和节约能源的要求,可在许多相关领域发挥无与伦比的作用。

发布者:小宇

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top