1.3 双DSP系统串行引导模式

根据以上两种DSP的引导模式,选用串行引导模式,即把TMS320C62x作为主处理机,外围接8位宽的FLASH,采用ROM方式引导,TMS320C62x和AD-SP218x的程序都固化在FLASH中,ADSP218x作为从处理机,采用IDMA方式引导,并且两个DSP之间的通讯也采用IDMA方式。这样TMS320C62x可以把ADSP218x作为一个存储区来访问,既去掉了握手软件,提高了工作效率,又可以去掉ADSP218x外围的FLASH,减少了硬件花销。主要硬件连接示意图如图1所示。

双DSP系统串行引导的过程如下:系统上电后,TMS320C62x从位于CE1空间FLASH中以ROM引导的方式复制一定数量的TMS320C62x程序至地址为Ox00000000的内部程序存储空间。当程序复制完毕后,TMS320C62x开始从0x00000000起始的程序地址开始执行程序,利用这段程序,把剩下的程序从FLASH中读出,TMS320C62x进入到正常工作状态。然后TMS320C62x负责将存储在FLASH中的ADSP218x的运行程序读出,通过IDMA接口发送至ADSP218x的片内PM存储区,执行对ADSP218x的程序装载。当ADSP218x引导完毕后,ADSP218x运行装入的程序进入正常的工作状态,至此系统串行引导完毕。

2 双DSP系统串行引导的实现

2.1 硬件连接

TMS320C62x的低16位数据线ED15~0与ADSP218x的IAD15~0连接,TMS320C62X的低8位数据线ED7~0与FLASH的数据线D7~0连接。TMS320C62x的BOOTMODE[4:0]引脚配置如下:

由于TMS320C62x与ADSP218x的IDMA通讯控制需要译码,因此加了一片CPLD,硬件连接图如图2所示。片内的逻辑方程为:

2.2 TMS320C62x启动程序代码的创建

TMS320C62x启动程序代码包含以下几个部分。

2.2.1 中断向量表vectors.asm

中断向量表缺省保存在TMS320C62x内部RAM的从0地址开始长度为0x200字节的空间,上电或复位后,芯片自动运行复位中断。因此,复位中断向量中应包含跳转到引导程序(_boot)的语句,引导程序的主体在boot.asm中定义。部分程序如下:

2.2.2 自引导的汇编程序boot.asm