在一些脱机运行的 DSP应用中,通常需要在系统加电后自行将代码从外扩存储器中装载到内部 DSP 中去执行,实现此种功能的系统称为引导装载系统。这是 DSP开发中的重点和难点之一,关系到系统的可靠性 和处理速度。在分析 TI公司 TMS320C6713 DSP的引导加载过程及原理基础上,设计并实现了主机利用仿真器 通过JTAG口实现对DSP外部配置的FLASH存储器的在线编程,并以TI公司的DSP结合ST公司的FLASH存 储器( SST39VF800A)为例,叙述了从 FLASH引导程序的实现方法,并针对 ### 基于TMS320C6713的Flash烧写及BootLoad程序设计 #### 一、引言 在某些离线运行的数字信号处理器(DSP)应用中,为了确保系统的可靠性和处理速度,需要在系统启动时自动地将程序代码从外部存储器加载至内部DSP中执行。这种能够实现自动加载功能的系统被称为引导装载系统(BootLoad System)。本文以TI公司的TMS320C6713 DSP为例,结合ST公司的SST39VF800A Flash存储器,详细探讨了基于该DSP的Flash烧写及BootLoad程序设计的方法。 #### 二、TMS320C6713 DSP的工作原理分析 当TMS320C6713 DSP系统上电后,其初始化过程由RESET信号控制。在RESET信号由低变高的时刻,会锁存BOOTMODE[4:3]信号,以此确定DSP的存储器映射方式、地址0处的存储器类型以及复位后的自举模式。复位结束后,DSP将从内存的0地址处开始执行指令。 TMS320C6713 DSP支持三种引导方式:主机引导(Host Boot)、仿真引导(Debug Boot)和外部ROM引导(External ROM Boot)。其中,仿真引导实际上是一种特殊的主机引导方式。因此,在实际应用中,TMS320C6713 DSP通常采用两种引导方式:主机引导和ROM引导。 #### 三、主机引导(Host Boot) 主机引导是通过外部设备(通常是主机计算机)将代码加载到DSP的内部RAM中执行的过程。这种方式适用于开发阶段,便于调试和更新程序。主机引导通常使用仿真器通过JTAG接口来完成。 **主机引导的主要步骤包括:** 1. **初始化JTAG接口**:首先需要通过JTAG接口建立与TMS320C6713 DSP的通信连接。 2. **设置自举模式**:通过JTAG接口设置BOOTMODE寄存器,确保DSP处于主机引导模式。 3. **加载程序代码**:将编译好的程序代码通过JTAG接口加载到DSP的内部RAM中。 4. **启动程序执行**:在DSP的内部RAM中设置程序入口地址,并开始执行程序。 #### 四、外部ROM引导(External ROM Boot) 外部ROM引导是指将程序代码预先烧录在外接的非易失性存储器(如Flash)中,当DSP上电或复位时,可以直接从这些存储器中读取程序代码并执行。这种方式适用于产品化阶段,能够提高系统的稳定性和启动速度。 **外部ROM引导的主要步骤包括:** 1. **烧写Flash存储器**:使用专用的硬件编程器或者通过软件编程的方式将程序代码烧写到Flash存储器中。 2. **设置自举模式**:通过硬件设置BOOTMODE寄存器,确保DSP处于外部ROM引导模式。 3. **执行程序代码**:DSP上电后,根据BOOTMODE的设置,直接从Flash存储器中读取程序代码并执行。 #### 五、具体实例:SST39VF800A Flash引导程序设计 本节以SST39VF800A Flash存储器为例,详细介绍如何实现从Flash引导程序的设计。 1. **选择合适的Flash存储器**:SST39VF800A是一款高性能的Flash存储器,具有较高的数据传输速率和较低的功耗。 2. **烧写程序代码**:使用TI公司的DSP开发工具中的硬件仿真器,通过软件编程的方式将程序代码烧写到SST39VF800A中。这种方式无需复杂的格式转换,烧写速度快,且引导程序简单易懂。 3. **编写引导程序**:引导程序需要包含必要的初始化代码,例如设置DSP的工作模式、初始化JTAG接口等。 4. **验证引导程序**:在实际环境中测试引导程序的功能,确保程序能够正确地从Flash中加载并执行。 #### 六、结论 基于TMS320C6713的Flash烧写及BootLoad程序设计对于提高DSP系统的可靠性和处理速度至关重要。通过合理设计和实施引导程序,不仅可以简化开发流程,还能够提升产品的性能表现。本文提供的方法和实例可以作为类似项目的参考,帮助工程师更好地理解和实现引导装载系统的设计。
- 粉丝: 5
- 资源: 920
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 技术资料分享Stm32寄存器与库函数概览(摘自固件库使用手册)很好的技术资料.zip
- 技术资料分享STM32固件库使用手册的中文翻译版很好的技术资料.zip
- 技术资料分享STM32的USB详解很好的技术资料.zip
- 技术资料分享STM32的IAP方案很好的技术资料.zip
- 技术资料分享STM32F107-Errata-CH-V1很好的技术资料.zip
- 技术资料分享STM32F103ZET6很好的技术资料.zip
- 技术资料分享STM32F103xCDE-DS-CH-V5很好的技术资料.zip
- 技术资料分享STM32F103x46-DS-CH-V2很好的技术资料.zip
- 技术资料分享STM32F103x8B-DS-CH-V10很好的技术资料.zip
- 技术资料分享STM32F102x46-DS-CH-V2很好的技术资料.zip