TMS320VC5410的BOOT设计与实现

发布者:冰山火影1977最新更新时间:2011-10-25 关键字:TMS320VC5410  BOOT设计 手机看文章 扫描二维码
随时随地手机看文章
  TMS320VC54X系列DSP芯片一般都在片内设置有BOOT程序。BOOT程序的主要作用是在开机时将用户程序从外部装入到程序存贮器。不同型号的DSP芯片中BOOT引导程序的大小是不同的。TMS320VC5410内部就具有2K字的BOOT程序,下面就介绍TMS320VC5410的BOOT设计方法。

1 BOOT的模式选择
  我们使用TMS320VC5410的BOOT程序时,需要将DSP设置为微机工作方式(硬件复位后采样MP/MC=0),则当执行片内的引导程序,并且DSP复位后,程序就从内部ROM的FF80H处开始执行程序。在FF80H处,有一条跳转指令,转向ROM中已掩模的BOOT程序,这样便开始运行内部的BOOT程序。这个引导程序首先进行初始化。初始化工作包括使中断无效(INTM=1)、将内部的双存取块/单存取块映射到程序/数据空间(OVLY=0),对程序和数据空间都设置7个等待状态。
TMS320VC5410程序引导共有5种模式:
  (1)HPI模式,这是一种主机接口模式。主机通过写入主机控制寄存器(HPIC)来中断DSP,而  DSP则通过主机中断信号来中断主机。主机可以响应HINT信号和清除该信号。HINT是否为低电平决定了是否选用主机接口HPI引导模式。
  (2)并行I/O口BOOT模式(支持8bits和16bits)。
    (3)串行口模式(标准/TDM/BSP)(支持8bits
和16bits),串口引导共有8种方式。按字长8位与16位两种格式和CLKX/FSX引脚的设置决定引导模式。采用8位子长时需要对下列控制位置位:
    ·接收复位信号RRST;
    ·发送模式位TXM;
  ·时钟模式位MCM(使CLKX由片内时钟源驱动);
  ·帧同步模式位FSM(必须由外部施加帧同步脉冲信号到FSR引脚);
    ·格式位FO(选择8位数据传输方式)。(4)外部并行模式(支持8bits和16bits)。  (5)WARM BOOT,即热引导模式,可以使传输控制入口地址,也可以在器件热复位或用其他方式把程序代码已经传输到片内或片外存储器(如DMA)后使用WARM引导模式。在WARM引导模式时,由BRS字中的SRC或ADDR字段指定入口地址的高6位。
  本文主要就8位/16位并行I/O口引导模式作探讨。
  I/O口引导模式提供了一种异步地把程序代码从I/O口地址空间0h处传输到内部或外部的程序存储器的方法。图1是程序流程图。
  由图1的流程图我们可以看到设置合理的数据区的FFFFH地址的内容,使它成为有效地并行引导,就可以实现我们的并行I/O的BOOT模式。
2 设计FFFFH地址的内容使它成为有效的并行引导数据

  FFFFH地址所填的内容就是所设计的应用程序开始的地址,在所设计的程序中起始地址是0页的08000h,因此,在此程序中将FFFFH的内容设置为08000h。
3 设置08000h的内容,实现引导功能
  我们可以根据图2来得到我们所需要填写的数据。

  由图2的流程图我们可以知道,要往08000h地址开始写入所规定的值才符合要求。见表1。
       依照表1,我们可以填入符合要求的字。

4 获取填入字的信息
  要获取填入字的信息就要生成一张表,而生成这张表之前需要做一个批处理文件,批处理文件的做法如下:
    (1)首先编译通过生成“.out”文件;
    (2)打开UltraEdit-32编辑批处理的软件;
    (3)用hex命令进行编辑。
    hex命令形式如下:
    myfile.out/*输入的COFF文件名.
    -e 0x0000/*程序的起始地址.
    -a/*ASCII输出形式.
    -boot/*引导所有的程序单元.
  -bootorg PARALLEL/*创建PARALLEL的BOOT引导.
    -memwidth 16/*16bits的EPROM.
    -o myfile.hex/*输出文件名.
  这里有一个小程序可以看出具体操作过程(程序的起始为0x2000):
  hex500 test1.out-e 0x2000-boot-bootorgPARALLEL-memwidth 16-romwidth 16-o test1.  hex




    这样可以生成一个表,如表2所示。
  表2中带下划线者代表每一个Section的起始地址,有框线者是这一个Section的长度(注意,当我们依据这张表填的时候,应该将Section的长度加1,这是应用后得出来的经验),最后一个Section的最后四个0表示结束。
    由上,我们就可以使用并行的BOOT模式了。

  参考文献
1 李刚主编.数字信号微处理器的原理及其开发应用.天津:天津大学出版社,2000年4月
2 任丽香,马淑芬,李方慧编.TMS320C5400系列DSPs的原理与应用.北京:电子工业出版社,2000,7
3 彭启琮编.TMS320C54X实用教程.成都:电子科技大学出版社,2000,1
关键字:TMS320VC5410  BOOT设计 引用地址:TMS320VC5410的BOOT设计与实现

上一篇:H4001非接触式IC卡读卡程序的研究
下一篇:基于MSP430的光电微损法血糖监测系统设计

推荐阅读最新更新时间:2024-03-16 12:44

NIOS软核处理器的Linux引导程序U-boot设计
摘要:针对将cClinux向Nios处理器移植过程中的启动加载程序U-boot bootloader进行研究。首先介绍移植的步骤,然后利用bootloader的设计思想,着重讨论U-boot在Nios中的设计与实现,最后对U-boot在基于Linux的嵌入式系统 中的运用作了探索和展望。 关键词:U-boot bootloader uClinux Nios软核 1 概述 1.1 Nios简介 Nios是Altera公司以RISC为基础的可配置、可裁减软核处理器。它具有16位指令集和16/32位数据通路,通过将包括16或32位高性能处理器在内的移种应用模块嵌入到通用FPGA/CPLD内,实现完全可配置的嵌入式系统。其开发套件
[应用]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

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