积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> 接口设计 >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
ARM CPU CS89712与C5510 DSP 的接口设计
 
作者:赵爱萍,胡永辉   来源:宇航计测技术    点击数:66   更新时间:2008-5-16
您可以添加到网摘 让更多人关注此文章:

    

摘 要:以Cirrus Logic公司的ARM 芯片和TI 公司的TMS320V DSP 为例,研究了ARMDSP 的数据接——HPI 接口的相关技术,并给出了在HPI 接口非复用模式下,CS89712 与C5510 的信号连接图和嵌入式实时操作系统uCOS-II下驱动程序的部分关键源代码。

关键词ARM CS89712;主机接口(HPI);TMS320VC5510


  引 言


  目前嵌入式系统已被广泛地应用到电子产品领域和无线通信、网络通信等高端设备领域。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。


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


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


  


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


  CS89712 与C5510 DSP接口设计


  硬件连线


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


  


  图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 进行读/写操作时, 应先将该信号置为相应的读/写有效状态。


  //ARMDSP 写数据时


  # define EHPI-BASE 0x3208000


  int t ;


  rPADDR=0x08 ; //PA3 方向定义为输出


  rPADR=0x00 ; //PA3 为低电平


  t=*(volatile U16* )( EHPI-BASE + Add-offset);//ARMDSP 读取数据时


  rPADDR=0x08 ; //PA3 方向定义为输出


  rPADR=0x08 ; //PA3 为高电平


  (volatile U16*)( EHPI-BASE+Add-offset)=t


  结束语


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


[1]



相关文章
· 基于ARM和DM9000的网卡接口设计与实现[13]
· 基于Proteus和ADS的ARM虚拟实验室建设[6]
· 高性能、低饱和线性稳压器的开发[41]
· 基于DSP的指纹识别模块的实现[92]
· 基于DSP在射频识别系统中的应用[77]
热门评论排行
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·VHDL设计中电路简化问题的
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
“科技奥运与计算机技术的应用”研讨会
性能差异化功率器件制造面临多重挑战
探索中国特色IC业发展新模式
研祥专家做客嵌入式技术网,谈科技奥运
搭建多方交流平台 中国嵌入
Compuware Cha
中华嵌入式人才库正式运营新闻发布会
“科技奥运与计算机技术的应用”研讨会
意法半导体(ST)2007年企业责任
Diodes Incorp
 
热门下载 [更多]
 
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
[ ] 实用电源电路集锦
 
论坛新帖 [更多]
 
[原创]NRF2401 NRF...
需要LM324中文资料...
[求助]大家用过lm331的可...
单片机培训班于7月12日在华北...
重磅资料-------65K色...
价格不到3元!国产“双核”51...
[转帖]关于DSP该怎么学的讨...
[转帖]在2407上实现SPW...
以常用集成块制作的声控灯光控制...
触摸式电子开关电路...

 
赞助商 [更多]
 


 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网