DSP 的IC 引导装载方法的研究与实现
来源: 作者: 发布时间:2014-12-18 10:37:48 浏览量:DSP 芯片的片上引导装载程序(Bootloader) 用于在系统上电时将用户程序从外部非易失性慢速存储器(如FLASH 等)或外部控制器(如ARM 等) 中装载到片内或者片外的高速存储器中高速运行[1]。DSP 芯片一般都提供多种引导装载模式,如Host 引导装载、EMIF 引导装载、I2C 引导装载、Serial RapidIO 引导装载等。相比其它几种模式而言,I2C 引导装载具有体积小、功耗低、连接简单等优点。本文以TI 公司的DSP 芯片TMS320C6455[2](以下简称C6455)为例,详细介绍了I2C 引导装载模式的实现步骤,并构建了一个小系统验证引导装载的实现过程。1 C6455 的引导装载模式介绍
C6455 的引导装载模式由引导模式管脚BOOTMODE[3:0]决定。在DSP 复位时上述四个管脚的不同状态对应着不同的引导装载模式,具体如表1 所示。
对于主I2C 引导装载模式,DSP 作为I2C 总线上的主设备,在复位后引导装载程序会按照引导表的参数从外部I2C EEPROM 或者其它I2C 总线从设备读取数据到相应的目的地址完成引导过程。引导表指定了数据的目的地址和长度。
从I2C 引导装载与主I2C 引导装载类似,只是DSP 在复位后等待外部I2C 总线主设备按照引导表的参数将数据写入指定的地址。对于多DSP 的情况,可以用一个DSP 作为主设备,其它DSP 工作于从I2C 引导装载模式下。
本文使用主I2C 引导装载模式,构建的验证系统连接方式如图1 所示,使用的EEPROM 型号是Atmel 公司的AT24C1024B[3]。为了保证系统能够稳定的工作,SCL 和SDA 信号都需要接上拉电阻。
图 1 C6455 和EEPROM 的连接方式
为了直观地验电感器厂家证引导装载的结果,我们使用一个简单的DSP 程序,通过C6455 的通用输入输出管脚GPIO2 不断输出高低交替的信号驱动一个发光二极管闪烁,相应的DSP 程序代码如下:
main()
{
initial(); // 初始化DSP
for(;;) GPIO2_toggle();//GPIO2 高低变化
}
2 I2C 引导装载的流程[4]
如果在DSP 的复位过程中选择了主I2C 引导装载,也就是引导模式管脚BOOTMODE[3:0]配置为0101,那么DSP 的引导装载程序首先从外部I2C EEPROM 中读取128 个字节的引导参数。引导参数在EEPROM 中的起始偏移地址可由DSP 的配置管脚CFGGP[2:0]设定,即偏移地址为0x80×功率电感CFGGP[2:0],本文中CFG塑封电感GP[2:0]是000 ,也就是引导参数的起始位置在EEPROM 的地址0 处。
引导装载程序根据读到的引导参数判断下一步该如何进行装载。引导参数表的主要内容如表2 所示,每一个参数占用两个字节,表中仅列出了主要的几个参数的定义。
Length 项指定了引导参数表的数据长度,固定为26 个字节。Checksum 项是所有26 个字节的校验和,如果是全0 表示不需要校验。Boot mode 项选择引导模式,本例中是0101, 主I2C 引导模式。
如果引导参数表中的Option 选项为00, 表示在LSW 项中指定的地址是另外一个引导参数表的起始地址。如果Option 选项是01,那贴片电感器么LSW 项中指定的地址是引导表(也就是实际的DSP 程序)的起始地址;如果 Option 选项为10,那么LSW 项中指定的地址是引导配置表的起始地址。
引导装载程序在读取了引导参数后将热启动DSP, 然后根据读到的参数进行相应的操作。如果Option 选项指定下一步要装入的是引导配置表,那么引导装载程序会根据引导配置表中的内容配置相应的寄存器等,同时引导参数中的LSW 项和Option 项也会被更新。然后引导装载程序热启动DSP,根据更新后的LSW 项和Option 项进行下一步的引导配置或者引导参数设置。
如果Option 选项指定下一步要装入的是引导表,那么引导装载程序会根据引导表中的设置从EEPROM 中读取一定长度的数据到指定地址,然后DSP 跳转到程序的入口地址处(一般就是_c_int00 )开始执行。
LSW 项指定下一步需要装载的引导配置表或者引导表的起始地址,Next LSW 项则是在Option 项为10 时指定引导配置完成后下一个引导参数表的起始地址。
2.1 引导配置表的设置
为了在程序引导装载之前初始化一些必须的参数,需要用到引导配置表。例如在引导其他电感器装载程序要把代码装载到DDR 存储器中执行的时候,就需要在引导装载之前配置一些DDR 的控制寄存器。
SG3525驱动板求助我做了一个SG3525驱动输出加80508550图腾,做好后街通电源有两种现象
1.;输出没有电压
2;8550马上冒烟
请各位高手帮忙看一下怎么会事
烧图腾一般是因后面的开关管烧毁致栅源短
单电源冲击/振动传感器放大器电路图 LTC6087 / LTC6088 是双通道 / 四通道、低噪声、低失调、轨至轨输入 / 输出、单位增益稳定的 CMOS 运算放大器,具有 1pA 的输入偏置电流。14MHz 的增益带宽乘积和 7.
FPGA深层解析概览 高端设计工具为少有甚是没有硬件设计技术的工程师和科学家提供现场可编程门阵列(FPGA)。无论你使用图形化设计程序,ANSI C语言还是VHDL语言,如此复杂的合成工艺会不禁让人去想FPGA真实的
大电流电感