TMS320C5509A DSP 分页烧写 FLASH 存储器及自举引导的实现方法 TI 公司的 DSP 芯片 TMS320C5509A(简称 5509A)是性能卓越的低功耗定点 DSP,在嵌入式系统中有着广泛的应用
5509A 没有自带的片上非易失性存储器,因此需要外部的非易失性存储介质,如 EPROM 或 Flash,来存储程序和数据
5509A 片内有 256K 字节的 RAM
由于在片内 RAM 运行程序比片外运行有高速度低功耗等显著优点,通常上电后都需要从片外 EPROM 或 Flash 上加载程序到片内 RAM,但是芯片自带的自举程序(简称 Bootloader)只支持 16K 字节以内的外部程序加载,因此程序设计往往局限于 16K 字节空间内,限制了编程的灵活性,不能充分发挥性能,当程序空间大于 16K 字节时,就需要自己编写程序来实现自举
下面首先介绍使用 5509A 对Am29LV800B Flash(简称 Flash)存储器进行程序分页烧写的方法,然后介绍利用 Bootloader 来编程实现多页并行自举引导的方法
一、分页烧写的实现 1、Am29LV800B Flash 的连接 Flash 与5509A 的接口很方便,前者只需作为后者的外部数据存储器与其进行连接,而中间的逻辑电路采用 CPLD 实现即可
Flash 内部可以产生高电压进行编程和擦除操作;只需向其命令存储器写入标准的微处理器指令,具体编程、擦除操作由内部嵌入的算法实现
文中采用 1Mbytes Flash 映射为5509A 的片外数据存储空间,地址为:0x200000~0x280000,数据总线16 位,用于 16 位方式的并行引导装载
1MBytes 的 Flash 被分为64 页进行访问(表1)
本文通过向0x20600 地址写数据来改变A18——A13 的值,从而控制 Flash