DSP 的IC 引导装载方法的研究与实现

发布者:李国永最新更新时间:2009-06-11 来源: 微计算机信息关键字:DSP  Bootlpader  EEPROM 手机看文章 扫描二维码
随时随地手机看文章

  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 所示。

DSP 的IC 引导装载方法的研究与实现

  对于主I2C 引导装载模式,DSP 作为I2C 总线上的主设备,在复位后引导装载程序会按照引导表的参数从外部I2C EEPROM 或者其它I2C 总线从设备读取数据到相应的目的地址完成引导过程。引导表指定了数据的目的地址和长度。

  从I2C 引导装载与主I2C 引导装载类似,只是DSP 在复位后等待外部I2C 总线主设备按照引导表的参数将数据写入指定的地址。对于多DSP 的情况,可以用一个DSP 作为主设备,其它DSP 工作于从I2C 引导装载模式下。

  本文使用主I2C 引导装载模式,构建的验证系统连接方式如图1 所示,使用的EEPROM 型号是Atmel 公司的AT24C1024B[3]。为了保证系统能够稳定的工作,SCL 和SDA 信号都需要接上拉电阻。

DSP 的IC 引导装载方法的研究与实现

  为了直观地验证引导装载的结果,我们使用一个简单的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],本文中CFGGP[2:0]是000 ,也就是引导参数的起始位置在EEPROM 的地址0 处。

  引导装载程序根据读到的引导参数判断下一步该如何进行装载。引导参数表的主要内容如表2 所示,每一个参数占用两个字节,表中仅列出了主要的几个参数的定义。

DSP 的IC 引导装载方法的研究与实现

  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 的控制寄存器。

  配置每一个寄存器(或者写一个存储器地址)需要3 个字(32bit) 的配置过程。第一个字指定了需要配置的寄存器的地址,第二个字指定了该寄存器中需要设置为1 的位,第三个字节指定了该寄存器中需要设置为0 的位。如果第二个字和第三个字有某些数据位同时有效,那么对应的数据位数据翻转。如果第二个字和第三个字同时为0,那么程序跳转到第一个字指定的地址执行。如果三个字全部为0,那么引导配置结束,表3 举出几个例子详细说明上述配置的过程。

DSP 的IC 引导装载方法的研究与实现

  可以看出,虽然引导配置表一般只是在引导装载之前配置一些寄存器,但是对于一些很简短的程序,也可以使用引导配置表将程序直接装载到内部存储器中去运行。

  在引导配置完成后就需要将引导表(也就是真正需要在DSP 中运行的用户程序)装载到指定地址。

  2.2 引导表的生成

  引导表包括DSP 程序的代码段、数据段、以及其它一些程序信息,如程序入口地址等。引导表可以根据COFF 文件格式由用户从CCS 工程文件(即*.out 文件)中提取,不过使用TI 提供的转换工具hex6x 更为方便。使用hex6x 生成引导表时需要设置一些参数,这些参数可以用配置文件的形式提供给hex6x 使用[5],一个典型的配置文件如下所示(本例中的配置文件名为led.cmd):

  led.out ; 需要转换的文件-boot ; 生成引导表-a; ASCII 格式文件-e _c_int00 ; 程序入口-order L ; 小端模式-memwidth 32 ; 存储器数据宽度-romwidth 32 ; ROM 数据宽度-o led.hex ; 输出文件在DOS 的命令行输入hex6x led.cmd↙ ,就可以生成引导表文件led.hex, 实际的数据结构转换如图所示,可以看出,为了能够正确的进行程序的引导装载,引导表中加入了一些代码的长度、地址等信息。

DSP 的IC 引导装载方法的研究与实现

  不过这个引导表文件并不能直接写入EEPROM 中,还需要进一步的格式转换。

  2.3 EEPROM 映像文件的生成

  写入EEPROM 的映像文件由一个或者多个引导参数表、若干个引导配置表和一个引导表组成。引导表的数据按照包的形式存放,每一个数据包由数据长度、校验和以及程序数据组成,数据包的长度不能超过128 字节。把hex6x 生成的led.hex 文件分割成128 字节的数据包的过程可以使用TI 公司提供的相关工具软件来完成,也可以由用户根据上述格式进行转换。由引导参数表、引导配置表和引导表合成映像文件的过程也可以使用TI 公司提供的相关工具软件来完成。本文中使用的映像文件由一个引导参数表、一个引导配置表和一个引导表组成,在EEPROM 的存放位置如图3 所示。

DSP 的IC 引导装载方法的研究与实现

  3 测试结果及小结

  使用编程器或者直接使用TI 公司的CCS 软件可以把上面生成的映像文件写入EEPROM。为了验证引导装载过程是否能够正确完成,可以给验证系统重新上电,看到发光二极管闪烁,说明引导装载成功。

  创新观点:

  本文提出的通过I2C 存储器实现TMS320C6455 的引导装载的方法能够简化系统的设计,缩短系统的开发时间。同时可以推广到TI 公司其它系列的DSP 芯片,具有广泛的应用价值。

关键字:DSP  Bootlpader  EEPROM 引用地址:DSP 的IC 引导装载方法的研究与实现

上一篇:赛灵思CEO:可编程技术成为企业创新关键平台
下一篇:基于CPLD的并口数据的采集和存储

推荐阅读最新更新时间:2024-05-02 20:49

基于DSP技术的EAS系统设计
    摘要: 基于数字信号处理芯片设计的EAS系统的工作原理、组成以及实现实时监控应解决的技术难点。提出了运用数字信号处理的算法识别标签的软件实现方法。给出了系统的硬件原理图和软件流程图。     关键词: EAS系统 DSP 离散付里叶变换 相关函数 现代商业经营模式逐渐由传统的基于框台的模式转变为开放的销售模式。这种新型的销售模式给消费者带来了便利,使之在更回自和宽松的购物环境下购物,但同时也增加了商品失窃的可靠性。商品电子防窃(Electronic Article Surveillance,简称EAS)系统能有效地抑制商场失窃现象,因而被广泛地使用。 1 EAS系统的结构 EAS系统由门
[传感技术]
基于ARM11和DSP协作视频流处理技术的3G视频安全帽设计
  1.引言   为提高在高危工作场所现场作业的可控性,本文采用仿生学原理和高集成度设计实现了与人眼同视角的3G视频安全帽。本设计由视频安全帽和腰跨式数据处理终端两部分组成,采用高可靠性航空插头连接。其中图像处理采用三星公司的S3C6410ARM11处理器和TMS320DM642 DSP处理器组成。本设计结合DSP处理器在视频压缩方面的优势和运行于ARM之上的Linux操作系统在数据管理与任务调度机制方面的出色表现,由DSP完成图像处理功能,并通过高速接口把视频数据传输给嵌入式微处理系统,完成视频数据的传输、存储功能。   2.系统构成   本设计由视频安全帽和腰跨式视频终端两部分组成。视频安全帽中包含1路视频输
[嵌入式]
基于ARM11和<font color='red'>DSP</font>协作视频流处理技术的3G视频安全帽设计
基于DSP的串行通信在变频调速系统中的应用
摘要:介绍了基于专用DSP芯片ADMC328的异步电机调速系统中的主控部分与驱动部分之间的通信。详细介绍了通讯的硬件接口电路、通讯协议以及软件实现方法,实现了利用DSP的网步带口进行异步通讯的方法,并确保通讯准确可靠。实验结果证明了其可靠性。 关键词:数字信号处理器 串行异步通讯 交流调速系统 随着电力电子技术的不断发展和微处理技术尤其是数字信号处理器(DSP)的出现,基于数字控制的现代交流调速系统可以应用复杂的控制策略,实现高速动态响应功能。在以DSP为控制核心的异步电机驱动系统中,要实现观测驱动系统在运行中的数据变量,根据需要对程序进行控制,就需要应用DSP中的串口通讯接口与上位机——控制面板或者计算机系统进行通讯。本文
[嵌入式]
基于DSP和FPGA的机器视觉系统设计与实现
  创新观点:   本文将机器视觉与网络技术相结合,使用TI公司新近推出的6000系列DSPsTMS320DM642为核心,应用ALTERA公司的FPGA,用其实现图像预处理,减轻了DSPs的负担。应用网络技术实现图像传输。   1、引言   机器视觉自起步发展到现在,已有15年的发展历史。应该说机器视觉作为一种应用系统,其功能特点是随着工业自动化的发展而逐渐完善和发展的。   目前,国际上视觉系统的应用方兴未艾,1998年的市场规模为46亿美元。在国外,机器视觉的应用普及主要体现在半导体及电子行业,其中大概 40%-50%都集中在半导体行业。具体如PCB印刷电路。主要的机器视觉公司诸如德国克朗斯公司,美国的工业动力机械有限公司等
[嵌入式]
专用DSP核心助阵 SoC支持AI算法非难事
虽然英特尔(Intel)、NVIDIA等芯片大厂近期在人工智能(AI)、神经网络(NN)、深度学习(Deep Learning)等领域动作频频,但半导体领域的其他业者也没闲着,而且其产品发展策略颇有以乡村包围城市的味道。 益华计算机(Cadence)旗下的CPU/DSP处理器核心授权公司Tensilica,近期便发表针对神经网络算法设计的C5 DSP核心授权方案。 在16奈米制程条件下,该核心所占用的芯片面积约仅1平方公厘,却可提供达到1TMAC的运算效能,而且功耗远比CPU、GPU等处理器更低,适合各种嵌入式运算装置使用。 Cadence Tensilica营销资深事业群总监Steve Roddy表示,神经网络技术正以飞快的
[嵌入式]
基于DSP的无刷直流电机智能控制系统研究
介绍了TMS320LF2407 DSP在无刷直流电机 控制 系统中的应用研究,采用了模糊 控制 策略,设计了上位监控系统,给出了数字化、智能化的实现方案,实践结果证明了系统的平稳性和快速性满足要求。 1 引言 永磁无刷直流电机具有交流电机的结构简单、运行可靠、维护方便等特点,又具有直流电机调速性能好、运行效率高、无 机械 换向等优点,使它在机器人、数控机床、医疗器械、仪器仪表等各领域得到了广泛的应用。尤其是采用了DSP数字信号处理器、 电子 换向器、 led /' target='_blank' 光电 编码器等,使得无刷直流电机的数字化、智能化控制系统的实现成为可能,也是当今研究与应用的热点。但由于无刷直流电机本身存在非线性、
[模拟电子]
基于DSP控制系统的离散模型参考自适应算法在燃料电池车中的应用
script src="/jf/jf-arcMain-1.js" type=text/javascript /script script type=text/javascript /script script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type=text/javascript /script script src="http://pagead2.googlesyndication.com/pagead/js/r20110324/r20110321-2/show_ads_impl.js" /script script s
[嵌入式]
基于<font color='red'>DSP</font>控制系统的离散模型参考自适应算法在燃料电池车中的应用
通信标准不断演进,DSP、FPGA重任在肩
随着国内3G牌照的发放,3G正在以前所未有的速度向前发展,而相比2G/2.5G时代,3G所能提供的丰富的多媒体应用,大流量数据、视频传输等都对其基础设施数据处理能力提出了更高的要求。多核DSP和高端FPGA产品正在基站发挥着越来越重要的作用。 3G引发新兴应用,DSP、FPGA协同工作 3G的高带宽、大流量特性带来了全新的通讯业务模式。“随着2009年中国3G大幕的拉开,包括HSUPA、HSDPA及HSPA+等在内的新兴高速数据应用将进入该市场。”TI中国区DSP业务开发经理郝晓鹏指出,“例如类似于社会网络和YouTube等数据驱动型的应用,3G时代的到来使得这些全新的数据密集型应用成为可能,并将推动HSPA
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved