基于DSP 和MCU的双CPU数据处理系统设计

发布者:中和子最新更新时间:2008-12-19 来源: 电子技术应用关键字:DSP  MCU  主机接口  FLASH 手机看文章 扫描二维码
随时随地手机看文章

  摘  要: 为了在完成实时数据采集处理的同时还能进行各种控制,设计了一种基于DSP 和MCU的双CPU数据采集处理系统。阐述了该系统中高速A/D转换器与DSP接口、FLASH自举引导加载以及单片机与DSP通过主机接口(HPI)通信的具体实现方法。通过运行数据采集程序及处理程序,表明该系统工作稳定可靠。 

  关键词: DSP;MCU;主机接口;FLASH 

 

  在嵌入式控制系统中经常需要对现场物理量进行数据采集与实时处理,且要求系统具有良好的人机交互功能,这时仅采用DSP处理器往往不能满足要求。本文选择以单片机为主处理单元(主要完成各种控制和接口功能)、DSP芯片为从处理单元(主要完成数据运算和处理)的系统结构方案,该系统可独立使用,也可与上位PC机进行通信。 

1 数据处理系统硬件总体设计方案 

  该数据处理系统是为一种信号检测设备设计[1-2]的,能快速采集两路传感器的信号并进行实时处理。系统由MCU处理器、DSP处理器、8位高速A/D转换器以及FLASH存储器等部分组成,传感器的信号送入高速A/D转换器进行模数转换,结果送入DSP中。这里DSP芯片采用了TI公司具有高速数据运算和处理能力的TMS320VC5402,运算结果通过HPI传送到单片机,利用单片机方便的接口电路和控制功能,输出并显示结果或送入PC机做进一步处理。图1为该系统的结构框图,其中FLASH用于存放自举引导程序。 

 

 

2 数据处理系统硬件接口设计 

2.1 A/D接口电路设计 

  该数据处理系统首要的任务是将传感器的信号经过调理后进行A/D转换。为了实现高速、实时的数据采集转换和处理,系统中A/D转换模块采用了TI公司的8位并行A/D器件TLC5510A[3-4],最高频率可达20MHz,能实现实时的数据采集。该模块采用单一+4V电源供电,正常工作时的最大功耗为150mW,适合便携式仪器仪表使用。传感器的信号通过TLC5510A的模拟量输入引脚送入,利用DSP内部定时器来控制A/D采样率,在每次产生定时器中断时对数据进行读取,这样可通过设置定时器的初始值来改变采样率。图2为A/D转换接口电路图,其中为片选端,低电平有效,时钟由DSP内部时钟提供,送入A/D芯片的CLK引脚。转换后的8位数字量经电平转换(A/D转换器和DSP工作电压不同)后直接送入DSP中,结合相关算法进行数据处理。 

 

 

2.2  数据处理系统FLASH引导加载[5] 

  由于系统用于便携式仪器中,加电后要有独立运行的能力,而所使用的DSP芯片内无永久性存储器,所以系统运行时需进行自举引导。DSP为脱机运行提供了五种引导模式,分别是:主机端口(HPI)引导模式;串行EEPROM引导模式;并行引导模式;标准串行口引导模式;I/O引导模式。其中并行引导方式在这里被认为是最佳的,因为HPI端口引导方式、串口引导方式、I/O引导方式只适用于由其他处理器为DSP TMS320VC5402提供运行代码的多处理器系统中,SPI串行EEPROM引导方式和并行引导方式虽然都适用于以TMS320VC5402为核心的独立系统,但是SPI EEPROM引导方式价格偏高,而并行引导方式则可以采用FLASH,因为FLASH种类很多且价格较低,可以充分体现系统的性价比优势,故该系统中采用并行引导方式实现程序的自举引导加载。 

2.2.1 自举引导过程 

  TMS320VC5402 DSP的引导加载选择过程如图3所示。系统上电或硬件复位后,首先判断芯片的引脚。如果该引脚为高电平,则选择微处理器模式,片内ROM从程序空间移去,DSP执行FF80H处的跳转命令,跳转到F800H处的引导程序段并实现代码移植功能,最后再次跳转到加载的用户程序起始地址并执行应用程序;如果引脚为低电平,则选择微计算机模式,片内ROM被映射到程序存储器空间,DSP执行FF80H处的跳转命令,自动跳转到内部引导程序入口地址F800H,启动内部引导程序,选择引导模式。本系统的引脚置低。

 

 

  图3为DSP自举加载的流程,上电判断为0后,依次检测INT2、INT3,当满足要求且并口有效时,即开始执行并行引导程序。否则,按引导流程依次判断,直到满足条件为止。 

2.2.2  实现自举硬件接口电路的设计 

  根据设计的需要,FLASH采用TI公司的SST39VF040A。图4为TMS320VC5402和FLASH的硬件接口电路[5]。由于TMS320VC5402和FLASH都是3.3V供电,接口中TMS320VC5402的D0~D7直接与FLASH的D0~D7相连,二者的地址信号线A0~A17也相连,TMS320VC5402的DS接FLASH片选端CE,TMS320VC5402的经逻辑组合后接FLASH的。由于FLASH是512K×8bit的芯片,地址线为18位,超过了Bootloader所能访问的16位地址空间,而FLASH在被访问时,高位的地址线必须是确定态(高或低),所以在访问FLASH之前必须先对扩展页寄存器XPC进行初始化,以使超出16位的地址线也具有确定的状态,通过设计逻辑电路满足读写时序要求。 

 

 

2.2.3 FLASH读写操作 

2.2.3.1 FLASH的读操作 

  FLASH的读操作基本上与普通的存储器读操作一致,具体的读周期时序如图5(a)所示。当CE与OE为低电平时,DSP就可以读取FLASH中的数据。要注意的是,信号是由DSP产生的,在读取一个数据后,DSP必须在引脚给出一个上升沿标志,通知FLASH已经将数据读取,之后FLASH会自动将下一个存储单元的数据送到数据线上,重复以上过程,DSP可以将需要的数据依次读出。 

2.2.3.2  FLASH的写操作 

  FLASH的写操作相对复杂一些,它需要一串命令序列,通过对FLASH的命令寄存器写入相应的命令字来完成写入和擦除。对应的写操作时序图如图5(b)所示。 

 

 

3 主机接口(HPI)通信设计 

  主机接口[6-7](HPI,Host Port Interface)是TMS320C54x系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。HPI接口通过HPI控制寄存器(HPIC)、地址寄存器(HPIA)、数据锁存器(HPID)和HPI内存实现与主机通信。其主要特点有:接口所需外围硬件很少;HPI单元允许芯片直接利用一个或两个数据选通信号、一个独立或复用的地址总线以及一个独立或复用的数据总线接到微控制单元MCU上;主机和DSP可独立地对HPI接口进行操作;主机和DSP握手可通过中断方式来完成。 

  由于本数据处理系统采用双CPU(DSP+MCU),经A/D转换后的信号先保存在DSP的存储器中,DSP和MCU之间需进行数据通信,同时HPI方式还能让单片机共享DSP内部的双口RAM,弥补单片机内部RAM不足等缺陷。在硬件设计时,要注意单片机89C51是+5V供电,DSP是+3.3V供电,需进行电平转换。 

  图6为89C51与DSP HPI通信硬件接口图。其中89C51的端口P0.1~P0.7与HPI的8位数据线(HD0~HD7)相连作为数据传输通道,P2.0~P2.4设置为输出来控制HPI接口的操作。其中P2.0为读写控制选通信号连接P2.1连接字节识别信号HBIL,控制读写数据是属于16位字的第一字节还是第二字节;P2.2和P2.3分别连接HCNTL0和HCNTL1以实现对HPIC、HPIA和HPID寄存器的访问;P2.4连接作为数据选通信号来锁存有效的HCNTL0/1、HBIL和信号;P2.5与相连作为片选信号;INT0作为输入与HPI的主机中断信号一直接高电平。在数据交换过程中,89C51向HPI发送数据时通过置TMS320VC5402的HPI控制寄存器HPIC中的DSPINT位为1来中断TMS320VC5402;89C51接收来自HPI的数据时通过查询方式,当TMS320VC5402 DSP准备发送数据时置为低,89C51查询到INT0为低时调用接收数据子程序来实现数据的接收。 

 

 

4 系统调试及结果 

  为了调试该系统,可以在A/D转换器输入端输入一个确定信号,观察其采集和输出的情况。为此设计了A/D转换和数据处理程序。将信号发生器DG2000的输出转换后存入DSP数据存储器的连续单元中,设计了简单明晰的频率计算程序,通过零点检测计算出信号的频率,最终结果经HPI传送给单片机并显示出来。 

  测试中所用仪器为:RIGOL系列信号发生器DG2000。 

  将信号发生器DG2000的输出经一个保护电阻接到A/D输入端。波形输入和LED显示界面如图7所示。

 

 

  通过对不同信号和不同算法程序运行的实践,LED的输出显示均与输入量相符合,证明系统工作稳定。由于本采集系统具有高速转换器和DSP硬件基础,只需根据采集信号种类的不同及输出要求的不同设计相关的算法软件,对所获得信号进行处理即可。可以在各种工业生产过程和仪器仪表中应用该系统,还可利用RS232串口实现与上位PC机之间的通信,对数据做进一步的处理。 

参考文献 

[1] 陈学煌.噪声信号与速度测量[J].物理,2002,10:667-669. 

[2] 陈学煌.一种新型非接触式速度测量装置.传感器技术,2004,23(1). 

[3] TLC5510 Data Manual[Z].Texas Instrument.1999,2-20. 

[4] 雷宏江.DSP系统的A/D接口设计.仪表技术,2005,(5). 

[5] 张秀丽,张瑞华,涂晓峰.TMS320VC5402并行引导加载系统设计.宁波大学学报(理工版),2005,18(2). 

[6] 张雄伟,曹铁勇.DSP芯片的原理与开发应用.北京:电子工业出版社, 2000. 

[7] 甄兴福,杨宇,黄俊华.基于TMS320C54X系列DSP的HPI口应用设计与实现.装备指挥技术学院学报,2005,16(2).

关键字:DSP  MCU  主机接口  FLASH 引用地址:基于DSP 和MCU的双CPU数据处理系统设计

上一篇:基于DSP和PCI总线的通用数字信号处理系统
下一篇:基于FPGA+DDS的控制设计

推荐阅读最新更新时间:2024-05-02 20:44

基于DSP的电源控制系统的软硬件开发
1 引言 随着现代电力电子技术的不断进步和信息技术的发展,逆变电源越来越广泛的应用于通讯、航海、航空、医疗、军事等诸多领域,同时用户对逆变电源的性能也有了越来越高的要求。作为逆变电源的核心,逆变器的控制系统对提高电源性能起着极其关键的作用。逆变电源的控制器经历了从模拟控制器到数字控制器的发展, 数字控制器与模拟控制器相比较,具有控制精度高、参数调整方便、更改控制策略灵活等优点。尤其随着控制专用DSP的出现,使得逆变电源的控制技术朝着全数字化、智能化及网络化的方向发展。本文选用TI公司新推出的数字信号处理器TMS320F2812作为电源的主控制器,设计了一种结构简单、扩展方便的控制系统,实现了逆变电源的精准控制。 2 系统
[嵌入式]
单片机实现7段数码管显示
这个是我学习单片机过程中所做的第一个实验,我们上课实验用的是汇编的程序,但是个人觉得还是用c语实现时更为简洁!这个例子可以用proteus进行仿真. 单片机选择常用的AT89C52,用与控制7段数码管的显示,共有4位7段共阴极数码管,用于显示数据.另外所需的器件如下: 1、74ls273地址锁存器,用于字位锁存器和字型锁存器,上升沿锁存。 2、74ls02双输入或非门,与74ls04、单片机的读写信号一起选中锁存器74ls273,决定数码管的字段和字位的显示内容。 3、74ls04是6输入非门,对单片机输出的片选信号取反,和74ls02一起决定锁存器的片选。 4、7407集电极开路的6正相高压驱动器,提供数码观字型显示的
[单片机]
<font color='red'>单片机</font>实现7段数码管显示
基于C8051F313单片机的一种无刷直流电机调速控制系统
前 言 随着环境的污染和能源的紧张,电动自行车以无废气污染,无噪音,利用电能和使用方便等优点,越来越受到人们的喜爱,成为生活中的代步交通工具。本文介绍采用美国公司SILICon laboratories(Silabs)的高速SoC型C8051F313单片机设计的一种无刷直流电机调速控制系统。该系统充分利用C8051F313的片上资源,设计方案电路简单,需要的外围元件少,控制器的整体成本低,性能好。 C8051F313 C8051F313属于Silabs的高速SOC型单片机C8051F系列。C8051F系列单片机集成度高,完全兼容传统的8051单片机内核和指令系统,但其各方面的性能都远远超越了传统的8051单片机
[单片机]
基于C8051F313<font color='red'>单片机</font>的一种无刷直流电机调速控制系统
单片机系统总线及总线构造
对于没有内部ROM的单片机或者当程序较长、片内ROM容量不够时,用户必须在单片机外部扩展程序存储器。MCS-51单片机片外有16条地址线,即P0口和P2口,因此最大寻址范围为64 KB(0000H~FFFFH)。 MCS-51系列单片机片外引脚可以构成如图所示的三总线结构: 地址总线(AB) 数据总线(DB) 控制总线(CB) 所有外部芯片都通过这三组总线进行扩展。
[单片机]
<font color='red'>单片机</font>系统总线及总线构造
单片机在井下油气压力存储测试系统中的设计应用
ADuC812是美国ADI(Analog Device Inc)公司生产的高性能单片机,是全集成的12位数据采集系统。它在芯片内集成了高性能的自校准多通道ADC(8通道12位高精度)、2个12位DAC以及可编程的8位MCU(与8051兼容)。片内有8kB的闪速/电擦除程序存储器和在线下载/调试/编程的功能、640B的闪速/电擦除数据存储器、256B片内数据存储器以及与8051兼容的内核。另外MCU支持的功能包括看门狗定时器、电源监视器以及ADC DMA功能。同时为多处理器接口和I/O扩展提供了32条可编程的I/O线、与I 2C兼容的串行口、SPI串行接口和标准UART串行接口。MCU内核和模拟转换器均有正常、空闲和掉电工作模式,在工
[单片机]
<font color='red'>单片机</font>在井下油气压力存储测试系统中的设计应用
基于单片机一氧化碳监测报警仪设计
  随着工业的迅速发展,人类接触有害气体的场合越来越多,由此造成对人类本身的危害也越来越大。在炼钢厂、炼铁厂中,高炉生产的副产品高炉煤气(主要成分为CO)经过降温、除尘、加压后送入煤气管网或送入煤气柜储存。在高炉旁或附近工房内的工人以及加压站的工人经常发生一氧化碳中毒的事故,危害较大;而且在煤气管道及储存柜检修期间,也经常发生泄露的一氧化碳气体遇明火产生爆炸的事故,因而研制一种一氧化碳气体监测仪有着十分重要的现实意义。本文采用AD公司的数据采集芯片ADuC834为主控芯片,介绍了一种灵敏度高、性能可靠、操作简单的一氧化碳监测报警仪。   1系统硬件组成   1.1系统框图   这个系统的工作原理为:首先通过一氧化碳传感器采集
[单片机]
8051/2单片机常用的本地通讯方式 UART,RS485,I2C,SPI 之 Modbus 485 2
一 ,说明 1. 串口UART, 波特率:9600 接设备的时候,一般只接GND RX TX,不会接Vcc,避免与目标设备上的供电冲突。 1.1 RS485标准( +2V ~ +6V:1 / -6V ~ -2V:0) 1.2 RS232标准( -15V ~ -3V:1 / +3V ~ +15V:0),需要MAX232进行电平反转后,才能与MCU进行通讯 1.3 TTL标准( 2.4V--5V:1 / 0V--0.5V:0 ) 二、演示 三、代码 /** * 8051/2 DEMO 3 * 常用的本地通讯方式 * 1. 串口UART, 波特率:9600 * 接设备的时候,一般只接GND RX TX,不
[单片机]
8051/2<font color='red'>单片机</font>常用的本地通讯方式 UART,RS485,I2C,SPI 之 Modbus 485 2
key单片机按键抖动
1 //write by:cyt 2 //Time:2017-2-10 3 //Porject Name:key shake_destory 4 #include reg51.h 5 #define GPIO_KEY P0/// 6 void Delay1ms(unsigned char n); 7 unsigned char Key_Scan() // GPIO_KEY为全局变量,在这里作输入 8 { 9 unsigned char i=0,Key_Value=0; 10 if(GPIO_KEY!=0xff) 11 { 12 Delay1ms(10); 13 if(GPIO_KEY
[单片机]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved