MCU+DSP嵌入式平台的i机接口与引导设计

发布者:梦回归处最新更新时间:2009-02-03 来源: 国外电子元器件关键字:MCU  DSP  接口设计  引导 手机看文章 扫描二维码
随时随地手机看文章

1 引言
      自动化控制要求实时采集数据,快速控制,多样分析,通信灵活,虽然采用单个处理器构成的硬件平台不能满足要求。采用以MCU+DSP双处理器为核心的硬件平台则是较合理的设计方案。利用DSP实现数据实时采集、分析、计算;MCU完成管理、通信、人机接口等异步系统控制功能。该硬件平台的MCU与DSP接口设计与数据传输是系统设计的重要部分,将直接影响系统性能和数据传输效率。数据传输通常采用双端口RAM、串行通信、并行主机等接口方式。其中,并行主机接口的方式可以满足大量数据实时传输要求。这里以MCF5272型和ADSP-BF527型数字信号处理器构建一种MCU+DSP双处理器的嵌入式平台,详细论述DSP通过主机DMA端口(Host DMA Port,简称HOSTDP)实现主机引导加载程序以及DSP与主机的通信。

2 MCU+DSP双处理器接口设计
      图l为MCU+DSP双处理器ADSP-BF527与MCF5272的接口电路。该嵌入式平台采用ColdFire系列的MCF5272型MCU作为主机。MCF5272具有基于第二代ColdFire V2的内核,32位数据和地址总线,SDRAM接口,4个16位定时器,3通道PWM输出,主频高达66 MHz,丰富的外部接口和较强的通信功能。此外,该器件还具有出色的编码密度和系统性能。

图1 ADSP-BF527与MCF5272的接口电路

      该系统DSP采用ADSP-BF527型数字信号处理器,该器件采用了微信号架构(MSA),时钟频率达600 MHz,功耗低至O.8 V,支持强大的片上总线系统,具有多个独立的DMA控制器,拥有较强的并行数据处理能力。ADSP-BF527带有一个HOSTDP,便于与外部主机构成双处理器架构,完成多种数据处理和控制任务。ADSP-BF527的HOSTDP内部分为主机外部接口模块(HEI)、外围访问总线(PAB)接口模块、FIFO模块、控制逻辑模块和DMA接口模块。
      图1中,接口电路各信号的功能为:HWAIT为握手信号,防止Boot Kernel忙时主机写数据;HOST_DATA为16位数据总线,主机与从机数据交换的通道;HOST_ADDR为访问属性信号,O表示访问数据接口,l表示访问配置接口;HOST_CE为主机对从机使能;HOST_WR为主机写入HOSTDP使能信号;HOST_RD为主机读取HOSTDP使能信号;HOST_ACK为数据传输握手信号,应答模式下为HRDY,中断模式下为FRDY;TOUT为读写操作超时信号,应答模式下Host—Timeout计数溢出时产生;BMODE[3:0]为启动模式设置信号。

3 ADSP—BF527启动与程序加载
      ADSP—BF527复位包括硬件和软件复位,复位中断优先级最高。当释放RESET信号后,该处理器开始从片内BootROM的0xEF00 0000地址读取指令并执行。片内Boot ROM含有一个Boot引导核,用于预引导和加载用户数据。
3.1 预引导
      ADSP—BF527复位后,Boot引导核首先调用Preboot子程序。Preboot子程序通过访问一次可编程ROM(OTP)中的工厂设置页(FPS)和预引导设置页(PBS)来设置系统映射寄存器(MMR),包括锁相环(PLL)、电源调节、SDRAM控制器、异步外部总线接口单元(EBIU)、HWAIT的信号模式以及0TP定制引导。
      PBS由用户设置,每次使用4页。当PBS出现错误时,可置0TPINVALID位,使其无效,再使用下一个4页。如果设置PBS首页的PLL和电源调节错误,可采用BMODE=0000引导模式补救。该模式预引导程序不读取PBS页,FPS处理后,ADSP-BF527处理器变为空闲状态。
      处于安全考虑,PBS页设置引导模式禁止/使能位,禁止其他引导方式。这样即使BMODE引脚设置对应这些禁止引导方式,不会引导Boot引导核进入空闲状态。

3.2 引导模式设置
     
预引导结束后,Boot引导核根据BMODE[3:0]引脚设置启动相应的引导方式加载用户数据(引导流)。引导流为已定义格式,包含若干数据块和特殊指令,每数据块都含有一个16字节的块头,该块头由DSP的开发工具Visual DSP++设置生成,用于指示引导核是否完成引导过程。BMODE[3:0]引脚设置的引导模式包括无引导、主机引导和从机引导模式。引导模式设置如表1所示。
      其中无引导模式由厂商编程设置0TP页完成。主机引导模式中DSP自行加载用户数据.通常是从并行接口的Flash或者SPI、TWI接口的存储器读取数据。从机模式DSP作为从机,主机控制RESET信号。通常主机先设置RESET信号,然后通过检测HWAIT引脚等待预引导程序实现,最后提供加载用户数据。
3.3 HOST DMA引导模式
      该系统为MCU+DSP架构,主处理器MCF5272通过HOSTDP控制从机ADSP-BF527。ADSP—BF527的程序作为MCF5272数据写入Flash存储器中。该系统加电复位后,MCF5272向从机加载程序并引导启动。因此采用HOST DMA引导设计较灵活,独立存储器个数少,提高性能并降低成本。系统维护时,Flash中ADSP-BF527程序通过修改主机通信接口,提高产品维护效率。该设计的BMODE[3:0]引脚电平设置为1110,采用从机16位HOSTDP引导模式。
      当主机复位ADSP—BF527后,ADSP-BF527可从片上BootROM的0xEF00 0000地址执行预引导程序。预引导结束后,向主机发送HWAIT信号,主机开始向ADSP—BF527加载用户数据。用户数据加载完成后,主机发送HIR9命令,ADSP-BF527引导核执行调用指令,程序指针跳至EVTl寄存器内用户应用程序的首地址,将控制权交给用户应用程序。此时,引导结束。ADSP-BF527处理器继续执行用户应用程序。

4 HOSTDP数据传输
      ADSP-BF527通过外设接口总线设置HOST CONTROL寄存器的HOST_EN位使能HOSTDP。如果禁止HOSTDP,应在清除HOST_EN位前将HOST_RST置位。一旦使能HOSTDP则由外部主机控制。外部主机通过编程设置DMA发送和接收数据,并将其存储到ADSP-BF527有效的内部和外部存储器中。
4.1 HOSTDP设置
      数据传输前,主机需配置DMA控制器。主机首先读取从机HOST_STATUS寄存器的ALLOW_CNFG位。如果允许配置,主机将向HOSTDP发送7个16位控制字。主机通过这些控制字配置HOSTDP的DMA读写、DMA模式、起始地址等参数。接收所有控制字后,ADSP-BF527根据控制字重新配置HOETDP。在配置完成前,主机处理器不允许提供新控制字。通过写入控制字,该设计将DMA设置为应答模式,数据传输采用停止模式。
      总线宽度16位,以先传输低位数据的顺序传输数据。配置完成后,主机以所配置的方式读写数据,从而实现数据传输。数据传输过程中,通过ADSP-BF527软件编程设置控制寄存器中HER和EHW位使能或禁止主机读写HOSTDP,HER和EHW的设置,不会影响到写配置口、控制命令和读状态。由于主机不能查询HOSTDP的HER和EHW位,因此,该系统设计ADSP-BF527一直保持HER和EHW位使能。
4.2 数据读写流程
     
当使能HOSTDP,DMA通道配置后,主机通过所配置的DMA通道与ADSP—BF527通信。数据读写时,在有效数据的最后需附加一个传输终止字确保数据传输。数据写操作用于主机向从机的数据传输。MCF5272将ADSP-BF527所需的信号与设置写入HOSTDP的FIFO,DMA同时将从FIFO移出数据,并存储到DMA配置字规定的存储器。数据读操作用于从机向主机数据传输。ADSP—BF527的DMA将从机存储器中的数字信号处理结果移至HOSTDP的FIFO。主机执行读操作,从FIFO中读取数据。
      停止模式下ADSP-BF527的HOSTDP读写操作流程如图2所示。其中,DMA_DONE位在DMA将FIFO数据移出后置1,在下一次主机写数据时置O。HOSTRD_DONE位在主机将FIFO的数据移出后置l,下一次主机读操作,DMA向FIFO传输数据时置为0。

      应答模式下,主机对HOSTDP的操作时序如图3所示。在预定读写溢出时间内,ADSP-BF527仍未完成相应的读写操作,主机未接收到HRDY信号,主机超时寄存器计数溢出并产生超时中断。该设计的中断服务程序首先通过GPIO引脚告知主机数据读写失败,停止DMA通道数据传输;当主机重置HRDY信号为高电平,允许下一周期继续传输数据;并禁止HOSTDP,在停止模式下,具体的主机读写数据流程如图4所示。

5 结语
      
随着自动化领域监测、控制任务对嵌入式系统的要求不断提高,多处理器硬件系统模式的快速发展,电子技术和半导体加工工艺的发展促使DSP和MCU的融合。因此,MCU+DSP的双处理器结构已成为多核处理器的发展方向。

关键字:MCU  DSP  接口设计  引导 引用地址:MCU+DSP嵌入式平台的i机接口与引导设计

上一篇:ARM7与FPGA在工业控制中的结合应用
下一篇:语音/数据/媒体网络时代需要的基础设施DSP

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

MCS51单片机在数据采集监控系统中的应用
1.引言 MCS51单片机标准构成只有一组全双工UART串行口,P3.0-RXD收、P3.1-TXD发,如果要完成多路串口收发,一般使用外部扩展芯片,例如:GM8123/25,完成一扩多路串口,但是,由于增加扩展芯片,造成硬件成本增加,PCB板面增大,抗干扰性下降等不良因素,因此能尽量使用现有串口,利用分时切换技术,完成串行口不同类型,不同端口的数据传送是优先选择。 2.硬件功能简述 本设计用于数据采集监控系统如图1所示。采用485串行口完成数据采集,和232串口输出打印功能,这样使得接口连线简单,可靠性高。 RS-485工作特征:发送端:逻辑“1″两线间的电压差为+2至6V表示;逻辑”0″以两线间的电压差为-2至6V表示
[单片机]
MCS51<font color='red'>单片机</font>在数据采集监控系统中的应用
PIC单片机的各种汇编语言指令的用法解析
工作以来一直使用ST的单片机,其他的单片机虽大致了解但从未认真看过,近几日恰好无事,决定熟悉一下PIC的单片机,于是想将自己从网上或这书本上的东西转下来,予以同一样的初学者共同参考。 PIC的指令系统 PIC 8位单片机共有三个级别,有相对应的指令集。基本级PIC系列芯片共有指令33条,每条指令是12位字长;中级PIC系列芯片共有指令35条,每条指令是14位字长;高级PIC系列芯片共有指令58条,每条指令是16位字长。其指令向下兼容。 一、PIC汇编语言指令格式 PIC系列微控制器汇编语言指令与MCS-51系列单片机汇编语言一样,每条汇编语言指令由4个部分组成,其书写格式如下: 标号 操作码助记符 操作数1,操作数2;注释
[单片机]
PIC<font color='red'>单片机</font>的各种汇编语言指令的用法解析
51单片机定时器T1的使用2-查询法
注意:要知道,查询法是占用CPU时间的,帮不是一种好方法。 /********************************************** 方法1:延时法 硬件:11.0592MHz晶振,STC89C52,RXD P1.0 TXD P1.1 波特率:9600 描述:T1用于定时,方式1,定时时间50ms,查询方式,定时时间到,TF1=1,利用模拟串口发送字符0x68 **********************************************/ #include reg52.h #define uchar unsigned char sbit P1_0 = 0x90; sbit P1_1
[单片机]
51<font color='red'>单片机</font>定时器T1的使用2-查询法
单片DSP处理器功能系统的SOPC技术设计
结合Altera公司推出的Nios II嵌入式软核处理器,提出一种具有常规DSP处理器功能的NiosII系统SOPC解决方案;利用NiosII可自定叉指令的特点。 通过Matlab和DSP Builder或直接用VHDL设计并生成复数乘法器、整数乘法器和浮点乘法器等硬件模块,将它们定制为相应的指令,从而将软件的灵活性和硬件的高速性结合起来,较好地解决了传统DSP处理器所面临的速度问题、硬件结构不可重构性问题、开发升级周期长和不可移植性等问题。 随着微电子技术和计算机工具软件的发展,可编程片上系统SOPC的设计理念和设计方法成为了一种趋势。为了解决传统DSP处理器所面临的速度问题、硬件结构不可重构性问题、开发升级周期长和不可移植性
[应用]
DSP 信号发生器模块库(SGEN)的使用说明总结
TI官方数据库ControlSUITE中关于SGEN的使用说明路径如下:C:ticontrolSUITElibsdspSGENv101doc 以下是对SGEN的解释和说明: 该信号发生模块可以输出5中类型的信号:Sin,Ramp,Trapezoidal, Profile。本为要介绍Sin信号的产生,原文也比较容易理解,本文的中重点在于总结。 1.Sin信号发生器的3种发生原理 1.1 Standard THD Sin generator 标准THD正弦发生器采用直接查表技术实现,采用16位模计数器。 1.2 Low THD sin generator 低THD sin发生器采用查表法和线性插值法实现,采
[测试测量]
<font color='red'>DSP</font> 信号发生器模块库(SGEN)的使用说明总结
51单片机之矩阵按键
1.说在前面 1.今天从图书馆借到了一本51单片机的基础教程,从其中看到了一些关于单片机的基础知识 1-1:单片机是在一块硅片上集成微处理器,储存器以及各种输入输出接口,所以被称为单片微型计算机,简称单片机 1-2:通俗的来说,单片机就是一块集成芯片,但是有一些特殊的功能,通过在不同时间控制芯片输出高低电平从而输出不同的电平,控制和引脚相连的外围电路的电气情况 对于我的单片机板子ST89c52 40I STC:前缀 8:8051内核 9:内部是FlashE^2prom存储器 c:cmos存储器 5:无特殊含意 2:内存为2*4KB 40I:40表示单片机的最高晶振为40mhz,I:表示为工业用(c:商业 a:汽车用品
[单片机]
51<font color='red'>单片机</font>之矩阵按键
基于STR7 ARM微控制器的IRQ中断防御体系
1 引言 ARM7TDMI体系的中断向量的地址是动态分配在中断向量控制器的寄存器中,例如,意法半导体(ST)公司生产的STR71x系列ARM微控制器,其增强型的中断控制器(EIC)的EIC_IVR寄存器(中断向量寄存器)、EIC_SIRn寄存器(源中断寄存器)都是用于存储相关中断通道的中断服务程序在存储器中的地址,内核响应IRQ中断后,再根据当前对应的中断通道的中断向量进行散转,执行相应的中断服务程序。对于一般的8位MCU,通常是将向量中断人口固定分配ROM中,例如MCS-51单片机各个中断的人口地址是固定的。两者相比,ARM的中断体系具有较大的灵活性,但却降低了安全性和可靠性;MCU的中断向量体系虽然失去了灵活性,但确保了系统
[单片机]
基于STR7 ARM<font color='red'>微控制器</font>的IRQ中断防御体系
聊聊单片机8051的发展史
我敢保证,我们当中的大多数人,在读书的时候,玩的第一个芯片,基本上都是8051的。利用它来编各种跑马灯,七段数码管,这是平常到不能再平常的事情了。相信大家对“MOV”应该不陌生吧? 可能现在很多人已经不玩51了,改行玩DSP,玩ARM,玩FPGA了,但毫无疑问8051才是我们的初恋。 今天我们聊聊8051的发展史,还有顺便说一下国内一个做51芯片的“奇葩”公司——宏晶科技(STC)。 8051是Intel的发明 谈8051,就不得不说一下单片机,单片机诞生于1971年,经历了SCM、MCU、SoC三大阶段,早期的SCM单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列MCU系
[单片机]
聊聊<font color='red'>单片机</font>8051的发展史
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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