DSP入门系列--全程详解串行SPI方式bootloader

DSP入门系列--全程详解串行SPI方式bootloader

ID:46579398

大小:415.06 KB

页数:15页

时间:2019-11-25

DSP入门系列--全程详解串行SPI方式bootloader_第1页
DSP入门系列--全程详解串行SPI方式bootloader_第2页
DSP入门系列--全程详解串行SPI方式bootloader_第3页
DSP入门系列--全程详解串行SPI方式bootloader_第4页
DSP入门系列--全程详解串行SPI方式bootloader_第5页
资源描述:

《DSP入门系列--全程详解串行SPI方式bootloader》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、DSP入门系列—全程详解串行SPI方式BootloaderDSP入门系列(V1.0)全程详解串行SPI方式BootloaderBY红尘有约ahong007@yeah.netC5509程序的自举由于C5509片内不具有FLASH也就是说DSP的程序掉电会丢失,这当然需要外接易失性存储器来完成DSP程序上电状态的引导。DSP芯片的Bootloader程序用于上电时将用户程序从外部非易失性、慢速存储器或外部控制器中装载到片内高速RAM中,保证用户程序在DSP内部高速运行,这个过程就是自举加载(Bootloader)或者叫

2、做二次引导。TI公司的DSP芯片出厂时,在片内ROM中固化有引导装载程序(Bootloader),其主要功能就是将外部的程序装载到片内RAM中运行,以提高系统的运行速度。C55x系列DSP其Bootloader程序位于片内ROM空间的0xFF0000~0xFF8000处。进入Bootloader程序后,程序先对DSP进行初始化,配置DSP的堆栈寄存器、中断寄存器和DSP状态寄存器,保证在引导装载用户程序时不会被中断,从而导致程序加载失败。由于DSP可以通过自举表对寄存器进行修改,需要注意在Bootloader程序运

3、行时,尽量不要修改Bootloader程序配置过的中断控制寄存器,否则会导致不可预料的后果。C5509具有ParallelEMIFBootMode、EHPIBootMode、StandardSerialBootMode、SPIEEPROMBootMode、I2CEEPROMBootMode、USBBootMode等多种方式自举加载。DSP的自举是涉及DSP独立工作的关键性问题。通常采用的方法是由Flash等器件自举的,但是相对Flash的占用空间大,扇区擦除的难度和时延来说,SPIEEPROMBootMode占用P

4、CB体积以及操作引脚少(需要四根,即CLK、SI、SO、CS)容易PCB布线,不失为一个好的选择。要注意的是只有C5509的MCBSP0可以作为SPI方式自举,而且只有IO4作为CS。Page1BY红尘有约DSP入门系列—全程详解串行SPI方式Bootloader图一SPI引导方式数据连接表一C5509自举模式选择Page2BY红尘有约DSP入门系列—全程详解串行SPI方式BootloaderC5509的自举模式必须在上电前确定,上电的瞬间DSP根据GPIO0~3的状态,确定C5509的自举类型。SPI方式具有两种

5、地址模式:16位地址与24位地址模式。其中16位地址模式只能存储64KBit的的程序,而24位地址在同样条件下能存储更多的数据。在C5509中经常用到的24位地址模式引导芯片是AT25F1024,具有128Kbit的程序空间,满足大部分DSP程序的需求存储空间。图二SPIEEPROM16位地址模式数据传输模式图三SPIEEPROM24位地址模式数据传输模式C5509引导表所谓引导表,就是在DSP芯片上电复位后由Bootloader从外部存储器装入片内RAM的一个数据块,这个数据块包括用户程序的数据段和代码段,还包括

6、程序入口地址、寄存器设置、可编程延时等信息。在用编程器直接烧写的方法中,引导表可由hexconversionutility(C55x汇编语言工具、CCS中自带的hex55.exe)根据.out文件生成,并直接生成写片文件,Page3BY红尘有约DSP入门系列—全程详解串行SPI方式Bootloader再由编程器自动写入Flash中。但是在在线系统编程烧写的过程中,并不考虑.out文件和写片文件中的附加信息,而是直接将符合引导表格式要求的数据内容通过一段独立的用户程序连续完整的写入Flash中。TMS320C55X系

7、列DSP芯片的引导表结构如表二所示。表二TMS320C55X系列DSP芯片的引导表结构其中,入口地址是引导结束后,用户程序开始执行的首地址;寄存器设置数量决定后面有多少个32比特是作为寄存器设置值或者作为延时等待;16-bit延时标志恒为0XFFFF,以区别于16-bit寄存器的地址;段长、段起始地址和数据是用户程序中定义的各个段的内容;最后以32个0作为引导表的结束标志。无论是用编程器直接烧写,还是在线系统编程烧写,实质上都是要在片外存储器(如Flash)存放整个引导表的内容。DSP芯片在上电复位后会自动运行RO

8、M中固化的Bootloader引导程序,引导程序会根据片外存储器中存放的引导表的信息,将用户程序的各个段引导到片内RAM的相应位置,然后从入口地址开始执行。这样就完成了整个装载引导的过程。EEPROM的读写AT25F1024是Atmel公司生产的高性能串行Flash。存储容量为1Mbit(131,072*8bit)。分为4个扇区,每个扇区容量为32kbit。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。