摘要:TMS320VC54x系列DSP的内部ROM固化了一个称为Bootloader程序。在DSP上电时Bootloader将外部Flash中的用户程序搬移到DSP的片上RAM或片外RAM程序区中,并将程序指针指向用户程序运行时的首地址执行。在16 bit并行自举方式下,DSP提供的这个Bootloader程序要求用户程序代码长度不能超过32 KB。文介绍了一种用户Bootloader的...
在程序的数据流中,会有明确表明程序的起始位置(c_int00的地址),参考《DSP Bootloader设计(之)关于c_int00》,因而需要在程序接收完毕后,由Bootloader给出一条入口函数调用指令,该指令跳转至扇区A以外的应用程序入口APP_START区,APP_START区存放一条跳转指令:“LCR _c_int00”。这样程序将会执行RTS库中的c_int00...
对于超过16KB的用户代码,Bootloader将不能加载全部的引导表文件。 二次Bootloader的原理是由用户自行编写一个代码长度小于16KB的引导程序(以下简称 uboot),其功能与DSP内固化的Bootloader相同,用于加载最终的用户代码。BootLoader就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内...
在设计Bootloader时,非常有必要对c_int00函数进行全面了解,因为通常会对它进行改写。 c_int00(也作_c_int00)是C/C++程序初始化代码的入口地址,完成建立C程序的运行环境。它是运行支持库(如rts2800_ml.lib)中的一个重要函数。 DSP上电时,由Bootloader负责引导至c_ini00,具体引导过程见 iFTrue雷神:DSP bootloa...
首先要设计一个uboot程序,大小不能超过一页。将uboot程序烧写到Flash存储器的第0页,也就是DSP上电复位后被固化的Bootloader自行引导的那一页。uboot的主要功能是通过修改FPR寄存器值,并按照引导表的格式读取Flash存储器的其他页程序到RAM中,最后跳转到用户程序的32位入口地址开始执行。uboot程序中,可以定义一个16...
三、Bootloader设计 1.引导程序:设计一个简单轻量的引导程序,用于控制DSP芯片的启动和升级过程。引导程序需要能够读取外部存储器中的新程序固件,并将其加载到DSP芯片的指定存储区域中。 2.通信接口:根据选择的升级方式,设计相应的通信接口和协议。接口可以是以太网、串口等,协议可以是TCP/IP、XMODEM等。 3.升级流程...
DSP在线升级(2)--bootloader的设计框架 DSP在线升级(3)---一块DSP芯片的片上flash如何烧写2个工程 DSP在线升级(4)---bootloader实现的功能 对于DSPTMS320F28377D,首先查看芯片手册,了解该芯片的片内存储资源; 包括RAM以及ROM(flash);查找的芯片资源如下(图1): 图1 其中...
1 Bootloader分析 TI公司的DSP芯片出厂时,在片内ROM中固化有引导装载程序Bootloader,其主要功能就是将外部的程序装载到片内RAM中运行,以提高系统的运行速度。 TMS320VC5409是TI公司的一款定点DSP芯片,其指令周期可达10ns,片内有32K×16位的RAM,性价比极高,被广泛应用在嵌入式系统、数据采集系统中。TMS320VC5409的Boo...
文中以TI公司的DSP芯片TMS320C672X系列芯片为例介绍了BootLoader设计的步骤,了解BootLoader的基本原理与方式,从而掌握其他系列DSP芯片的BootLoader技术,本文介绍了在TMS320C672X DSP系统中采用从SPI来实现DSP的BOOTLOADER的一个方案。在民航无线通信设备中如内话通信设备,声音比选设备,延时设备等通信设备中均采用了DSP技术...
2.1 Bootloader设计 我们的Bootloader设计基于DSP28335的内部Flash,其主要作用是接收上位机发送的升级程序,并将其烧录到设备的内部Flash中。具体而言,Bootloader的设计分为如下几个步骤:1) 接收数据:在收到上位机发送的升级程序后,Bootloader需要首先进行数据接收。这里,我们采用了CAN总线作为数据传输媒介,设计了相应...