0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于XC95108芯片实现DSP和ARM的并行通信系统的设计

电子设计 来源:单片机与嵌入式系统应用 作者:谢晓辉 , 吴森 2021-06-23 14:43 次阅读

在现代汽车电子中,一般有多个微控制器共同协调工作。DSP控制器采用哈佛结构,运算速度快,所以在汽车电子中广泛采用DSP芯片来实现汽车动力系统的控制。ARM是一种32位微控制器,有丰富的外扩接口,因此在汽车电子中一般用ARM来实现大容最的数据存储和人机交互或GPS全球定位系统,故在DSP和ARM之间需要进行数据交换。

CPLD(Complex Programmable Logic Device)是一种复杂的用户可编程逻辑器件,由于采用硬件可编程技术,从而使没计硬件电路也像设计软件一样方便。DSP2407A是T1公司设计的一款专为满足大范围的数字电动机控制应用的微控制器。S3C4480是三星公司专为手持设备设计的高性价比的微控制器。本设计以Xilinx公司的XC95108为例,通过在CPLD中开辟2块独立的SRAM区域(各1字节)来实现DSP2407A与S3C4480的并行通信。采用这种通信方式,数据传输准确、高速,基本可以满足DSP2407A与S3C4480总线接口实时通信的要求,从而将整车动力控制和人机交互有机地统一起来。

1 整体系统结构设计

DSP2407A负责采集汽车所有的数据,再将数据通过CPLD发给S3C44B0进行数据存储和人机交互。有时S3C4480要接收触摸屏命令,命令也通过CPLD发给DSP2407A控制器,从而控制整台汽车的动作。对DSP2407A,要及时响应由S3C44B0发过来的命令;而对于S3C4480,要随时接收DSP2407A送来的数据,这样,双方通信的实时性就要很强。因此在系统设计中,DSP2407A用中断方式接收数据,S3C44BO用查询方式接收数据。

在DSP2407A中,[DO~D7]是数据线,[A15~A12]是地址线,IS是I/0空间选通引脚,当访问外部的存储器或I/O空间时为低电平。WE是写使能,RD是读使能。IOPC7足通用I/O引脚,用来判断DSP2407A是否可以往CPLD写数据。当IOPC7为低电平时,代表DSP2407A可以往CPLD中写数据;若为高电平,则表示CPLD中已有数据,这时DSP2407A不能往CPLD中写数据。XINT1是外部中断,用来通知DSP2407A准备读取CPLD中的数据。

在CPLD中,用l片XC95l08来实现。XC95108共有108个宏单元,有足够的空间来实现2个8位的SRAM区;主要用来实现DSP2407A和S3C44B0之间的数据交换,没置DSP2407A和S3C44B0读/写控制的状态位。在S3C44B0中’[D0~D7]是数据线,nGCSl是芯片选择信号,当存储器地址在相应段的地址区域时芯片被激活。nWE是写允许信号,nOE是读允许信号。IOPF0是通用I/O口,用来监视可否从CPLD中读取数据:当它为高电平时,代表CPLD中有数据,可以读取数据;当它为低电平时。表示CPLD中无数据可读取。IOPF1是通用I/O口,用来监视可否向CPLD中写数据:当它为高电平时,代表CPLD中无数据,可以向CPLD中写数据;当它为低电平时,代表CPLD中已有数据,S3C44B0不能向CPLD中写数据。系统结构如图1所示。

pYYBAGDS2QmAWAJaAAD54uwKWwI505.png

2 CPLD的设计

采用Xilinx ISE8.1为设计工具,用国际上通用的VHDL语言来编写源程序。

2.1 8位数据从DSP中传送到ARM中

当[A15~A12]是1100时,DSP2407A开始向CPLD中写数据,并置dspsign_write和armsign_read为1;表示CPLD中已经有数据了,通知S3C4480可以读取数据和DSP2407A暂时不能向CPLD中写数据;同时将数据写入锁存器sraml中。

当ARM发出读取数据信号,开始将数据从sraml中读出,并且置dspsign_write和armsign_read为0时,表示CPLD中没有数据了,DSP2407A可以向CPLD中重新写数据。

poYBAGDS2QKADFhHAAD8nVxu4pM973.png

2.2 8位数据从83CA480中传送到DSP2407A中

当S3C4480向CPLD写数据时,将数据写入到锁存器sram2中,同时置dsp_int为0,通知DSP2407A产生一个外部中断,可以从CPLD中取数据;置armsign_write为0,表示CPLD中已有数据,S3C4480不能再向CPLD中写数据。

当[A15~12]是1101时,DSP2407A向CPLD中发出一个读取信号,数据从锁存器sram2传送给DSP2407A中,并且置dsp_int为1,armsign_write为l,表示数据已被DSP2407A读走,S3C4480可以继续向CPLD中写数据。

pYYBAGDS2PuAdZuoAACltOvBI2k288.png

3 S3C4480和DSP2407A通信软件设计

在本程序中,DSP2407A采用中断方式接收数据,S3C4480采用查询端口方式接收数据。

(1)DSP2407A程序

pYYBAGDS2PSAP7ZyAAGlGr3MZcY144.png

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    447

    文章

    47769

    浏览量

    409071
  • cpld
    +关注

    关注

    32

    文章

    1243

    浏览量

    168284
  • 通信系统
    +关注

    关注

    6

    文章

    1066

    浏览量

    53053
收藏 人收藏

    评论

    相关推荐

    FPGA+DSP+ARM开发板

    本帖最后由 eehome 于 2013-1-5 09:56 编辑 XC5VLX330大型FPGA开发验证平台ARM + DSP + FPGA高级通信
    发表于 12-25 15:47

    DSP并行处理平台

    `产品特点基于ZYNQ+并行DSP处理架构处理架构十分灵活,能够满足各类并行加速需求支持OpenCL编程,方便算法移植系统处理灵活:FPGA或DSP
    发表于 06-08 10:33

    DSP的各种并行处理方法和优缺点

    是遍历性的算法,其运算量大,在实时处理中受到限制。利用2片TI公司的高速DSP芯片TMS320C6201,应用其HPI接口并行实现多种滑窗算法, 满足了某雷达
    发表于 04-08 09:36

    什么是基于FPGA的ARM并行总线?

    在数字系统的设计中,FPGA+ARM系统架构得到了越来越广泛的应用,FPGA 主要实现高速数据的处理;ARM 主要
    发表于 09-17 06:21

    怎么实现ARM/DSP双核系统通信接口的设计?

    本文介绍了使用ARMDSP双CPU构成的双核嵌入式系统的硬件平台,以及源代码开放的Linux作为嵌入式系统中操作系统的方法,给出了
    发表于 05-26 06:21

    如何用CPLD实现DSP2407A与S3C4480的通信

    本设计以Xilinx公司的XC95108为例,通过在CPLD中开辟2块独立的SRAM区域(各1字节)来实现DSP2407A与S3C4480的并行通信
    发表于 06-03 07:06

    如何实现arm与多DSP之间的通信问题呢求解

    ARM主要是用来实现系统控制和网络传输,要如何来实现arm与多DSP之间的
    发表于 04-18 09:28

    XC9572和XC95108 DIY CPLD实验板的PCB

    描述XC9572和XC95108 DIY CPLD实验板的PCB该板需要外部 JTAG 电缆来对器件进行编程。JTAG 电缆可以是传统计算机并行端口或现代 USB JTAG 编程器。一条并行
    发表于 08-05 07:09

    基于VxWorks的多DSP并行处理系统实现

    基于VxWorks的多DSP并行处理系统实现
    发表于 03-29 12:31 17次下载

    在HP 3070系列检测器上的XC95216和XC95108

    在HP 3070系列检测器上的XC95216和XC95108的快速擦除时间
    发表于 05-13 14:52 34次下载
    在HP 3070系列检测器上的<b class='flag-5'>XC</b>95216和<b class='flag-5'>XC95108</b>

    在HP 3070系列检测器上的XC95216和XC95108

    for the XC95216 and XC95108. The revision 1 designation is delineated by a 1 in the 4 msb of the JTAG ID register. FBULK groups togethe
    发表于 05-15 14:01 3次下载

    主机口(HPI)在基于DSPARM系统中的应用

    摘要:嵌入式系统DSP的结合是当前应用领域的一个趋势。HPI接口是TI高性能DSP上配置的与主机进行通信的片内外设。由于HPI具有独立的管脚,因而可
    发表于 02-27 22:31 42次下载

    ARMDSP双核系统中的通信接口设计_赵学亮

    ARMDSP双核系统中的通信接口设计_赵学亮
    发表于 07-01 17:35 7次下载

    ARM芯片通过HPI接口与DSP通信的接口技术

    在许多硬件系统设计中,广泛采用了主机+DSP的方式。其中主机与DsP之间如何进行有效的通信就 显得尤其的重要。本文 以SAMSUNG公 司的ARM
    发表于 07-05 15:15 6次下载

    XC9572和XC95108 DIY CPLD实验板的PCB

    电子发烧友网站提供《XC9572和XC95108 DIY CPLD实验板的PCB.zip》资料免费下载
    发表于 07-22 11:33 6次下载
    <b class='flag-5'>XC</b>9572和<b class='flag-5'>XC95108</b> DIY CPLD实验板的PCB