ARM CPU CS89712与C5510 DSP 的接口设计

发布者:以泉换泉最新更新时间:2011-07-07 关键字:Logic公司的ARM  芯片和TI  公司的TMS320V  DSP 手机看文章 扫描二维码
随时随地手机看文章

  引 言

  目前嵌入式系统已被广泛地应用到电子产品领域和无线通信、网络通信等高端设备领域。32 位ARM嵌入式处理器具有高性能、低功耗的特性,DSP芯片由于功能强大,加上接口方便、软件可用资源丰富、编程方便、稳定性好、精度高等优点,应用也越来越广泛。通常在嵌入式系统的设计中,由ARM嵌入式处理器实现整个系统的协调控制和网络功能,由DSP 芯片来执行复杂计算,因此需要实现ARM处理器和DSP 之间的数据交换。从某种程度上来说,ARM嵌入式处理器和DSP 之间数据交换的速度决定了整个系统的运行速度和性能。

  ARM CPU CS89712 的特点

  CS89712 是Cirrus Logic 公司一款基于ARM7TDMI的SOC 芯片。它一方面具有ARM 处理器的所有优点:低功耗、高性能;同时又具有非常丰富的片上资源,非常适合嵌入式产品的开发。其特点如下:

  a、采用ARM7TDMI 内核,I/O 电压3.3 V ,内核电压2.5 V ;

  b、内置锁相环(PLL),系统主频最高达74MHz ;

  c、3种工作模式,可以实现电源管理以降低系统功耗;

  d、8KB 的系统高速缓存(CACHE),极大地提高了系统运行速度;

  e、支持8 个MEMORYBANK,最大外部存储空间达256MB ,并支持SDRAM;

  f、内置单色LCD 控制器;

  g、2 路异步串口(UART);

  h、27 个通用I/O口;

  i、实时时钟(RTC)和看门狗电路(WATCHDOG)。

  C55X DSP 及其EHPI 接口

  C5510 DSP 的特点

  以高速、低功耗为特征的VC55X 系列DSP 采用先进的改进型哈佛结构,具有分离的数据总线和程序总线,片内集成了ROM、RAM和多个外设,如通用I/O口、定时器、时钟发生器、软件可编程等待状态发生器、可编程块切换逻辑、串行口、直接存储器存取控制器(DMA)和与外部处理器通信用的主机接口(HPI)。

  C55X的增强型主机接口(EHPI)

  TI 的C5510 之前的DSP 系列(C54X系列)中的主机接口(HPI)主要有三种:标准8 位HPI8 接口、增强型8 位HPI8 接口和16 位HPI16 接口。其中C542~C549 内含标准型HPI8 ;C5402、C5410 内含增强型HPI8 ;C5410 以上为HPI16 ;C5409、C5416 的HPI 可以由用户设置为增强型HPI8 或HPI16。C5510 其内部使用的是增强型主机接口,增强型比标准型更优越之处主要在于:增强型允许主机访问DSP 内部的所有片内RAM,而标准只能访问RAM 区中指定的2K字。

  C55X为主机提供增强型的16 位并行接口(EHPI)具有以下特点:

  a、20 位主机地址总线;

  b、16 位主机数据总线;

  c、复用和非复用两种总线模式;

  d、主机可以访问C5510 的片内SARAM、片内DARAM和片外存储器;

  e、在高速传输数据时可以自增的20 位的地址寄存器(在复用模式下);

  f、多地址、数据探头为各种主机提供紧密接口;

  g、HRDY信号用来与主机进行握手;

  C5510 与外部主机或微处理器的连接具有单独的16 根数据线HD0~HD15、20 根地址线HA0~HA19 和10 根控制线。主机主动通过EHPI 口能够直接访问DSP 的存储区。在图1 所示的HPI 能访问的地址范围内,主机和DSP 可以通过DSP 的内部和外部存储区来交换信息。除了对主机发中断(通过置HPIC 寄存器的HINT 位,可以使HINT 线有效)或清除主机发来的中断(通过清HPIC 寄存器的DSPINT标志)需要DSP 干涉外,C5510 几乎不用进行其他操作。片内的DMA 通道会自动辅助完成RAM区与HPI 数据寄存器的数据传输。主机由HCNTL0/1 线来选择HPI 的某个控制寄存器,如表1 所列。通过对这4 个寄存器的访问,就可以在所设安全机制的允许范围下读/写DSP 的所有或部分片内RAM。[page]

  主机由HCNTL0/1 线来选择HPI 的某个控制寄存器。在非复用模式下,HCNTL0 决定HPI 是否访问控制其(HPIC)寄存器或数据寄存器(HPID),如表1 所示(0 ——低电平,1 ——高电平),此时HCNTL1未被使用。

  表1  HCNTL0/1 的选择功能描述

ARM CPU CS89712与C5510 DSP 的接口设计 

  图1  通过HPI 可以访问的DSP 存储区图

  CS89712 与C5510 DSP 的接口设计

  硬件连线

  TMS320VC5510 与CS89712 连接的接口电路如图3 所示。由图2 可见,C5510 通过EHPI 与主机设备相连时,除了EHPI 数据总线及控制信号线外,不需要附加其它的逻辑电路,非常方便。

ARM CPU CS89712与C5510 DSP 的接口设计

  图2  EHPI接口非复用模式下的连接图

  从EHPI 寄存器的编址方式可以看出,将HPI16接口安排在CS89712 的BANK3(即地址范围0X03000000~0X03FFFFFF),而且CS89712 具有内部译码器,直接产生片选信号CS3。

  由于C55X HPI16 是一个16 位的并行端口,而C5510 的内部结构为16 位,所以在非复用模式下,只需将数据和地址总线分别连接即可。

  另外,还有几个关键的控制信号需要连接。一个就是HR/W信号,由于CS89712 没有此信号,使用端口A 的PA3 来代替。当PA3=1 时,代表读操作,反之为写操作。

  由于CS89712 和C5510 EHPI 接口的控制逻辑不尽相同,需要使用其它的一些信号线来进行模拟,此时要严格遵循EHPI 的读写时序。

  软件设计

  在硬件连接设计好的基础上,我们还需要通过正确的编程才能实现我们预想的时序。因为我们在ARM CS89712 上运行嵌入式操作系统uCOS-II ,所以在写程序对HPI 接口进行读/写操作时将HPI 接口看作一个外部设备,将完成读/写操作的程序看成在uCOS-II 下面的一个字符型驱动。这样软件的设计就变成了在uCOS-II 下面驱动程序的开发。考虑到CS89712 不光要将DSP 的数据取过来,而且还要将这些数据处理后再发送出去,这就需要这两者之间有很好的配合。

  CS89712 与DSP5510 之间的EHPI 接口读/写程序主要由两个部分组成: 11ARM 自身的初始化;21HPI 接口读写程序。

    ARM 处理器自身的初始化
    ARM处理器首先要完成自身工作模式等一系列的初始化,才能正常进行EHPI 接口的读/写,源代码如下所示。
    //为了配合EHPI 口的时序,关掉MMU 页表中
    bank3 的Cache
    Xcount SETA 0x30000c1e
     WHILE Xcount < 0x31000000
          DCD Xcount
          Xcount SETA Xcount + 0x00100000

  WEND

  rMEMCFG1&=0x00ffffff;//设置与DSP 连接的nCS3 :16 位总线宽度、8 个随机状态

  rMEMCFG1|=0x01000000;//3 个顺序等待状态、禁止顺序访问、禁止扩展时钟上面这段代码主要是对几个寄存器进行配置。

  在配置好ARM 处理器的工作模式后,对外部I/O 接口BANK3 的对应地址进行读/写操作,就可以完成对HPI 接口的相应操作了。

  HPI 接口读写程序

  以下的第一句代码是宏定义,定义了C5510 的EHPI 接口寄存器的地址。在本设计中,已经将HPI口与外部I/O 接口的BANK3 相接,这样HPI 口将占用外部I/O 接口BANK3 的地址。由于是使用PA3来模拟HPI16 接口的HR/W,所以对DSP 进行读/写操作时, 应先将该信号置为相应的读/写有效状态。

    //ARM向DSP 写数据时
    # define EHPI-BASE 0x3208000
    int t ;
    rPADDR=0x08 ; //PA3 方向定义为输出
    rPADR=0x00 ; //PA3 为低电平
    t=*(volatile U16* )( EHPI-BASE + Add-offset);//ARM从DSP 读取数据时
    rPADDR=0x08 ; //PA3 方向定义为输出
    rPADR=0x08 ; //PA3 为高电平
    (volatile U16*)( EHPI-BASE+Add-offset)=t

  结束语

  以ARM芯片作为主控制器,用DSP 芯片进行运算,然后通过HPI 接口进行通信和交换数据的嵌入式系统设计应用模式的得到越来越广泛的应用,而这两者之间能够高效、快速并且稳定的进行数据交换将是影响系统性能的关键部分之一。文中给出的CS89712 和C5510 之间的硬件连接方法和软件设计经过实践的验证,是可行的和满足要求的。

关键字:Logic公司的ARM  芯片和TI  公司的TMS320V  DSP 引用地址:ARM CPU CS89712与C5510 DSP 的接口设计

上一篇:基于ARM-Clinux的无线家庭网关设计
下一篇:ARM多核和MIPS多执行绪嵌入式处理器技术剖析

推荐阅读最新更新时间:2024-03-16 12:38

基于DSP无差拍控制逆变电源研究设计
   引 言   随着高性能DSP控制器的出现,采用数字化控制的UPS电源已成为现在研究的热点。基于DSP实现的数字双闭环控制能有效提高电源系统的抗干扰能力,降低噪声,提高效率和可靠性,进一步有利于电源的智能化管理、远程维护和诊断。在逆变器的多种控制策略中,重复控制技术能有效消除非线性负载和干扰引起的波形畸变;滑模变结构控制方法能使系统运行于一种滑动模态,能保证系统的鲁棒性;模糊控制和神经网络控制等智能控制不依赖控制对象的数学模型,适应于非线性系统;无差拍控制能够瞬时控制电压,对负载有很强的适应能力,有输出总谐波畸变少,损耗少等优点; PID控制简单,并具有好的可靠性;新型数字化PID控制更能取得满意的控制效果。各种控制策略各有
[嵌入式]
2007年度TI DSP大奖赛竞赛须知
  参加2007年TI DSP 大奖赛必须具备下列条件:   参赛资格:凡在校大学生、研究生均可组队参加,每个队由1-5名队员和1名指导教师组成。鼓励学生自发组队、命题、报名参赛   填写报名表格:所有申请报名的参赛队伍,必须填写大奖赛参赛申请表格(报名表),同意所有的参赛条件(请访问TI中文网站中国大学计划2007 TI DSP大奖赛网页下载参赛申请表格)。所有  递交的参赛申请,都应该确认每位参赛队员在项目设计中作出了具体的贡献。所有参赛队员都必须阅读和同意遵守本次的竞赛规则。   基于TI DSP的原创性设计:所有参赛队必须提交一份使用TI DSP处理器的硬件或软件系统。鼓励参赛者体验TI的模拟产品及MCU的广泛功能和持续
[嵌入式]
基于DSP16通道声发射同步数据采集电路设计
摘要:针对煤岩声发射信号监测系统的需求,采用16位定点DSP芯片TMS320VC5509A和高精度A/D转换器ADS1278设计了一种具有24位分辨率、16通道同步数据采集功能的数据采集电路。控制接口采用I2C接口扩展I/O的方式实现,数据接口采用McBSP接口以帧同步方式实现,2片ADS1278采用菊花链的方式级联。给出了硬件电路、底层软件和测试结果,该数据采集电路具有接口简单、高性能、低功耗、设置灵活等特点,已经应用于课题组研制的煤岩声发射监测系统中。 关键词:DSP;声发射;高精度;多通道;同步数据采集 煤岩声发射监测,又名微震监测,是一种公认的很有发展前途的连续预测煤矿动力灾害的方法。目前国内已经有多套国产和引进的
[嵌入式]
基于<font color='red'>DSP</font><font color='red'>的</font>16通道声发射同步<font color='red'>数据</font>采集电路设计
基于DSPLED大屏幕显示系统
目前采用的LED大屏幕显示系统的控制电路,大多由单个或多个CPU及复杂的外围电路组成,这种电路设计,单片机编程比较复杂,整个电路的调试比较麻烦,可靠性和实时性很难得到保证。针对这种情况,提出一种SD卡存储显示文件,由TMS320LF2407A和EPM240配合完成的大屏幕设计方案,使得动画的变换和处理与屏幕的显示控制完全分离,各模块任务分明,功能完善,充分发挥了DSP以及CPLD各自的优点,实现高性能的无闪烁显示。 1 总体设计 系统结构如图1所示,核心处理器采用TMS320LF2407A,外部扩展了网络接口芯片RTL8019AS、SD卡和双口RAM芯片。本系统中,DSP主要发挥其逻辑运算处理能力;网络通信接收
[嵌入式]
基于<font color='red'>DSP</font><font color='red'>的</font>LED大屏幕显示系统
指纹识别的DSP实现方案(二)
3.2 脊线频率   指纹纹理除了具有稳定的方向性特征外,还具有稳定的频率性特点。在指纹图像的一个局部区域内,脊线和谷线的纹理走向平行,同时沿脊谷方向的灰度分布近似于正弦包络。   脊线频率被定义为两条脊线之间间距的倒数。通过定位该包络中极大、极小值点,就能得到相应的脊线间距和谷线间距,进而计算出脊线频率。   3.3 GABOR滤波器   GABOR变换由于具有最佳时域和频域连接分辨率的特点,能够同时对图像局部结构的方向和空域频率进行解析,可以很好地兼顾指纹图像的脊线方向和脊线频率信息。   本系统中采用GABOR滤波器函数的实部作为模板,以与子块纹线方向垂直的方向作为滤波器方向,以脊线频率作为滤波器频率
[模拟电子]
DSP编程技巧---不得不看编译指示
编译指示(Pragma Directives)可能是所有的预处理指令中最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对编译器给出了如何处理特定的函数、对象和代码段的方法,在保持与C/C++语言完全兼容的情况下,给出主机(比如C28x)或操作系统(比如DSP/BIOS)专有的特征。这些编译指示的使用较为复杂,但是我们还必须要了解它们,因为它们是程序中必不可少的东西,例如#pragma DATA_SECTION ( symbol , section name );这样的。但是往往讲解它们的资料又不多(因为大部分资料集中在入门指南上面),所以在此我们就总结一下针对C28x编译器的pragm
[嵌入式]
基于DSP控制25Hz逆变电源抗负荷冲击策略
摘要:提出了一种数字控制25Hz逆变器抗冲击负荷的保护策略,通过计算等效输出阻抗的方法,对逆变器起到了有效的保护作用。通过实验进行了验证,并给出了实验波形。 关键词:逆变器;冲击负荷;数字信号处理器 引言 25Hz逆变电源是铁路区段信号中的供电设备,分别向轨道回路和局部回路供电。由于它是整个铁路区段中的关键设备,因而在电压稳定度、波形畸变以及可靠性上有非常严格的要求。特别是在可靠性上,它要求在负载过载、变压器接入、负载短路这样的冲击情况下都不应造成设备的损坏,并要求能够承受长期短路这样的极端故障。但是,由于功率半导体器件的过载能力差,当负载短路或者接入变压器这样的冲击?负荷的时候,必将导致器件的损坏。因而,对接入冲击性负荷时进行保护
[电源管理]
基于DSPARM架构协议转换器设计
  在测试飞行控制组件时,遥测接收设各离信息处理中心较远,而被测数据量又极大,如果采用传统的专线传输遥测数据,则传输时间需几个小时,无法满足快速处理的要求。因此,需要研制一种协议转换器,用来完成被测数据无损、实时、远距离地与远程上位机进行通信,并能接收上位机的控制指令,实现工作状态的远程交互,而测试人员通过上位机的人机界面就可以完成所有测试。   1、系统组成及工作原理   考虑到系统实时性和可靠性的要求,选择以太网口作为协议转换器与远程上位机的数据转发接口、以高速串口作为控制口的通信方式,采用DSP+ARM架构的硬件解决方案。系统框图如图1所示。基本工作原理:FPGA作为数据预处理器,完成并行数据到串行数据的转换等数据预处理
[单片机]
基于<font color='red'>DSP</font>+<font color='red'>ARM</font>架构<font color='red'>的</font>协议转换器设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

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