中电网 click here 加入收藏
设为首页
EN | 繁体
用户:
密码:
          登录      注册
  新闻中心 最新产品 设计应用 在线座谈 紧缺人才培训 研讨会 在线商店 解决方案 电子百科 技术论坛
  首页 新闻中心 最新产品 设计应用 在线座谈 紧缺人才培训 研讨会 电子商城 解决方案 电子百科 博客 技术论坛
空白
 
空白
   您现在所处的位置: 首页 > 嵌入式系统 > 并行嵌入式系统 > 正文
双核DSP片TMS320VC5421的并行引导方案
2008年6月27日 15:47     
1引言

TMS320VC54211、2(以下简称VC5421)是TI公司推出的一款双核定点DSP芯片,它拥有两个DSP子系统,每个子系统都有一个DSP核,并且均有独立的数据和程序存储空间,可以进行两核之间的通信,并且两个子系统共享一套片外总线。此外,每个子系统各自拥有2k 16bit字的片内ROM,并存储有Bootloader程序。当DSP芯片上电或复位时,两个DSP核可分别启动自身独立的Bootloader程序,以实现用户程序的上电自举。



双核DSP自启动和单核DSP自启动的实现方法有较大的差别,这一点在DSP系统设计中需要特别注意。本文对双核DSP芯片VC5421的引导模式进行了深入的分析和研究,给出了使用16位并行引导模式进行双核DSP引导的实现方案。

2 TMS320VC5421的Boot模式

VC5421可提供16位并行引导、8位并行引导和串行EEPROM引导等三种Boot模式来实现用户程序的上电自举。

其中16位并行引导模式是通过片外存储器接口(EMIF)以DMA方式将代码从16-bit字宽的片外数据存储器搬移到片内程序存储空间;
8位并行引导模式则是通过片外存储器接口(EMIF)以DMA方式将代码从8-bit字宽的片外数据存储器搬移到片内的程序存储空间;
而串行EEPROM引导模式主要是通过多通道缓冲串口2(McBSP 2)从主设备中搬移代码并实现上电自举。

和54系列中其它芯片不同的是,VC5421片内ROM中的Bootloader程序并不支持HPI、并行I/O和标准串口模式的自启动方式。在其所支持的三种boot模式中,16位并行引导模式是最常用的。本文对这种模式进行了深入分析,给出了使用该模式进行双核DSP程序引导的方案,并通过实验验证了该方案的正确性。



2.1 并行引导模式的选择

VC5421的两个DSP核在DSP芯片上电或复位时,到底以哪种模式实现上电自举,主要由两个核的公共引脚XIO和各自的GPIO0/ROMEN、GPIO1引脚决定。当XIO为0(低电平)时,将不从ROM引导,也就是说,将不使用VC5421片内ROM中的Bootloader程序实现上电引导,而是用HPI模式实现上电自举;当XIO为1(高电平),GPIO0/ROMEN为0时,将使用片外存储器中用户自己编写的Bootloader程序实现上电自举;当XIO为1 GPIO/ROMEN为1 GPIO1为0或1时,将分别使用并行或者串行引导模式实现上电自举。因此,在实施相应的上电自举前,必须将引脚状态设置正确,以保证Bootloader程序按预定的模式执行。Bootloader模式的选择流程见图1。

当Bootloader程序检测到并行引导模式时,程序将以DMA方式从片外数据存储区的0000h单元取出模式选择字(BSW)来进一步决定是8位还是16位的并行引导模式。10AAh意味着选择了16位并行引导模式,而如果选择8位并行引导模式,取出的两个字节将是08h和AAh。之后,程序将按照Boot表进行加载。图2是并行引导模式的选择流程。

2.2 16位并行引导模式的Boot表

Bootloader程序要搬移的代码必须组织成一定的格式,这就是Boot表。16位并行引导模式的Boot表如表1所列。

表1 16位并行导模式Boot表



此外,需要注意的是,由于在多数程序中都有跳转指令或循环指令,所以,Boot表中的程序入口地址必须和程序的cmd文件中分配的地址保持一致,也就是说,当在CCS中进行调试时,如果程序Load到5000h,Boot表中的程序入口地址就应该是5000h。

2.3 Boot表的生成

Boot表可由hex500格式转换工具生成,也可以自己编写一个文件格式转换程序来把.out文件转换成所需的文件格式。本设计通过编写一个C++程序来将.out文件转换成.hex文件,然后再在文件的开始处增加相应的标志位和寄存器设置字,从而形成完整的Boot表。



3 VC5421片外总线冲突的解决方案

由于VC5421是双核DSP,每个核有各自的存储空间和Bootloader程序,但两核共享一套片外总线和一个XIO引脚。这样,当两核的复位引脚A_RS和B_RS同时收到复位低电平信号时,将同时申请片外总线的控制权。这就造成了申请片外总线的冲突。而且Bootloader程序总是检查该核有没有片外总线的控制权,如果没有,将循环检查直到取得片外总线的控制权。为了避免这种情况的发生,应该以合理的顺序给两个核上电。
由于VC5421中A核带有用来控制时钟频率的锁相环电路,所以应该先对A核进行复位,再启动A核,然后利用A核的用户程序来控制B核的复位,以实现两个核的启动。

根据系统需要,本设计使用Altera公司的CPLD芯片来产生各种控制信号。其电路连接示意图如图3所示。A核的复位信号A_RS由CPLD芯片直接给出,并在系统上电或复位的同时对A核进行复位。而B核的复位信号B_RS则通过CPLD映射到DSP的I/O空间0000h地址单元的第6位:B核复位控制位(在系统复位后值为0)如图4所示。在A核启动后,通过用户程序写B_RS位可为B核提供复位信号。

[1]   [2]   页 下一页
   异步通信起始位正确检测的VHDL实现
   用CPLD实现的数字钟控系统
   福布斯细数新iPhone7大失望:成本增加无法录像
   基于CPLD的打印数据采集方法
   基于CPLD 控制的通用视频采集模块
   基于CPLD的CCD通用驱动电路设计方法
   NAND Flash后继有望 新FeFET NAND读写能力大幅提升
   基于MCU CPLD变压器测试系统的设计与实现
用户名:   密码:   
匿名发表
 
空白
技  术  频  道
        嵌入式系统     电源管理
        3G手机     汽车电子
        数字电视     消费电子
        传感器     通信技术
        工业控制     测试测量
        可编程逻辑     中国RoHS
        DSP与MCU     无源元件
        电子制造     模拟电路
空白
2008年4月10日   10:00-12:00
LaserStreamTM - 采用优化的低功耗设计的新一代导航传感器
座谈公司:Avago
2008年5月20日   10:00-12:00
了解Altera 首推40-nm产品组合
座谈公司:Altera
空白
11月14日:
2007中国电子元件领军厂商评选活动暨“电子元件领军厂商”颁奖仪式
空白
按键电话系统  远程监控  高端路由器
专用集成电路   静态路由表   任播
网络体系结构   ATM地址   网际协议
请您来编写词条                     更多>>
NGI与IPv6
软交换与IMS技术
3GPP核心网技术
网络管理(第3版)
      博客
   nxp-lpc23**学习笔
   资深人士对嵌入式的入门看法
   数字电路一些问答
   HDL设计探究
   PADS新手的一点心得和技巧
   硬件开发之路
     BBS
   异步FIFO结构(极品资料,
   Intel USB2.0 U
   OSBDM的上位机烧写程序,
   如何正确的使用Cyclone
   富士通MB89F202 中文
   C6000 FFT编程指南(
空白
关于我们   |   网站导航   |   广告招商   |   联系方法   |   专家约稿   |   友情链接
许可证号:粤ICP010067
Copyright © 2000-2007 ChinaECNet All Rights Reserved
Tel: 010-82888222, 0755-83243191
Fax: 010-82888220, 0755-83243291