新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 多核DSP的BootLoader程序的实现

多核DSP的BootLoader程序的实现

作者:时间:2008-11-27来源:网络收藏

  芯片的程序用于实现用户程序自举,它有多种工作方式。自举就是将用户存放在片外的非易失性、慢速的存储器中的程序装载到片内易失的、高速的存储空间中,以保证用户程序在核内的高速运行。

  是指由多个独立的DSP子核集成的DSP芯片,且所有DSP子核共享一套片外总线。由于每个DSP子核内部都有其自身独立的掩模程序,当DSP芯片或复位时,所有DSP子核都将自行启动自身独立的程序,实现用户程序的上电自举。所以,DSP的BootLoader程序的实现方法与单核DSP的BootLoader程序的实现方法有较大的差异。为此,本文立足于实践,以双核DSP—TMS320VC5421的16位并行EPROM的BootLoader程序的工作方式为例,详细阐述了DSP的BootLoader程序的实现方法。

  1 BootLoader程序简介

  1.1 BootLoader程序的四种工作方式

  一般的DSP都采用常见的BootLoader程序工作方式来实现用户程序的上电自举:

  ·处理器通信口(主端口)HPI方式——通过DSP芯片与PC机或DSP芯片与其它DSP芯片之间的主机通信端口实现上电自举;

  ·8位或16位并行EPROM方式——通过DSP内核的DMA通道实现上电自举;

  ·8位或16位并行I/O方式——通过DSP芯片的片外并行I/O接口实现上电自举;

  ·8位或16位串行口方式——通过DSP芯片的串行端口实现上电自举。

  在以上四种工作方式中,最常用的是16位并行EPROM方式。即在DSP芯片上电或复位时,通过DMA通道将存储在核外EPROM中的程序以16位形式存储到核内的程序空间中。

  1.2 16位并行EPROM方式的Boot表

  各种方式的BootLoader程序都有其固定格式的Boot表,用来实现用户程序的上电自举。16位并行EPROM方式的Boot表如表1所示。表中的第1表项存放BootLoader程序工作方式控制字,用于DSP芯片上电或复位时确认该Boot表是否为16位并行EPROM工作方式的Boot表。该表项内容为10AAH,表示DSP内核认为该Boot表是16位并行EPROM工作方式的BootLoader程序的Boot表;否则DSP内核认为该Boot表不是16位并行EPROM的方式的Boot表;第2表项存放DSP特殊寄存器SWWSR在上电或复位时被赋予的初始化数值;第3表项存放DSP特殊寄存器BSCR在上电或复位时被赋予的初始化数值;第4表项存放用户程序将要被存放在DSP核内程序空间的页地址;第5表项存放用户程序将要被存放到DSP核内程序空间的页内偏移地址;从第6表项开始依次存放用户程序第m段代码的长度N。用户程序第m段代码将要被存放到DSP核内程序空间的页地址,用户程序第m段代码将要被存放到DSP核内程序空间的页内偏移地址,用户程序第m段代码的第1个字,第2个字,……,第N个字;Boot表的最后表项存放Boot表结束字0000H,表示Boot表到此结束。因此DSP内核要实现BootLoader程序,在上电复位后首先要申请到片外数据、地址总线的控制权,然后再根据Boot表完成用户程序上电自举过程。


上一页 1 2 3 4 5 下一页

关键词: DSP 多核 BootLoader 上电

评论


相关推荐

技术专区

关闭