基于闪烁存储器的DSP并行引导装载方法

最新更新时间:2012-05-20来源: 电子发烧友关键字:存储器  DSP 手机看文章 扫描二维码
随时随地手机看文章

TMS320VC5409 是TI公司推出的第一代的高性能、低价位、低功耗数字信号处理器(DSP)。与现在流行的TMS320C5409相比,性能提高了60%,功耗效率提高了 50%。它的应用对象大多是要求能脱机运行的内嵌式系统,如机顶盒(STB)、个人数字助理(PDA)和数字无线通信等。闪烁存储器(FLASH MEMORY)是可以在线电擦写、掉电后信息不丢失的存储器。FLASH与EPROM相比,具有更高的性能价格比,而且体积小、功耗低、擦写速度快、使用比较方便。因此,采用FLASH存储程序和固定数据是一种比较好的选择。AMD公司的Am29LV400B FLASH可以直接与DSP相接。

1 Am29LV400B的主要特点及编程方法

    Am29AL400B是AMD公司新推出的256K×16位产品,具有以下主要特点:

    (1)支持单电源操作,可分为满负荷电压供电(2.7V~3.6V)和电压范围可调节(3.0V~3.6V)和电压范围可调节(3.0V~3.6V)供电两种方式。满幅度电压供电压供电方式主要用于电池供电的应用中,而电压范围可调节供电方式直接与3.3V的高性能DSP接口,简化了系统的电源要求。

    (2)最快的存取速度高达55ns,CMOS工艺,具有100000次写入/擦写寿命。

    (3)低功耗(200nA的自动休眠电流,200nA的待命电流,7mA的读电流,15mA的编程/擦除电流)。

    (4)灵活的块结构支持整片擦除、块擦除。整片分为11个块(1块8K字、2块4K字、1块16K字、7块32K字)。

    (5)块保护功能,具有防止对任何区段进行编程或擦除的硬件保护机制。

    (6)与JEDEC标准兼容,引脚分布和命令集与单电源FLASH相兼容,具有优越的防止意外编程的保护功能。

    (7)数据查询位和数据切换位,可以通过软件方法检测编程/擦除操作的状态。

    (8)Ready/Busy#管脚,可以通过硬件方法检测编程/擦除操作的状态。

    (9)具有擦除暂停/擦除恢复功能。在暂停擦除操作过程中,支持读写不处于擦除状态的块。

    (10)内嵌的擦除/编程算法能自动对整个芯片或某几个块进行擦除编程操作。

    Am29LV400B编程和擦除算法的命令定义如表1所示。


表1 Am29LV400B命令定义

操作命令序列 周期

总    线    周    期

1 2 3 4 5 6
地址 数据 地址 数据 地址 数据 地址 数据 地址 数据 地址 数据

复位
片擦除
段擦除
字编程
1
1
6
6
4
RA
XXX
555
555
555
RD
F0
AA
AA
AA


2AA
2AA
2AA


55
55
55


555
555
555


80
80
A0


555
555
PA


AA
AA
PD

2AA
2AA

55
55

555
SA

10
30

    表中,RA为要读的存储器地址;RD为从存储器地址RA处读出的数据;SA为要擦除的段地址;PA为要写入数据的存储器地址;PD为要在地址PA处写入的数据。根据表中的命令定久可编制FLASH的“烧写”和“擦除”程序(用C语言和汇编语言混合编程实现)。根据需要,我们编制了“烧写”单字和“烧写”多字的程序。

2 硬件电路组成

    DSP 存储区硬件接口电路如图1所示。主要由5部分组成:DSP处理器-TMS320VC5409、系统逻辑控制电路(采用CPLD-EPM7128实现)、闪存FLASH-Am29LV400B(256K字的FLASH用来存储应用程序和初始化数据)、程序存储器SRAM1-IDT71V416S12PH(容量为256K字)、数据存储器SRAM2-IDT71V016S12PH(容量为64K字)。逻辑控制电路主要由3个模块组成:FLASH页选控制模块、读/写控制模块、程序空间/数据空间/FLASH切换控制模块。图中,CPLD的输出FMSEL为FLASH的片选脚;PMSEL为程序空间的片选脚; DMSEL为数据空间的片选脚。

    FLASH分为8页,每页32K,通过CPLD中的FLASH页选控制模块(Page0~Paeg2)实现FLASH翻页功能。为实现FLASH引导装载,FLASH物理空间的前32K映射到TMS320VC5409的数据空间0x8000h~0xFFFFh上,即TMS320VC5409的数据空间 0x8000h~0xFFFFh为FLASH的前32K空间。为了重点说明FLASH的引导装载过程,本文只谈及DSP片内程序存储空间以及FLASH前 32K字的使用情况。

3 TMS320VC5409 DSP的引导装载方式

    TMS320VC5409芯片具有两种引导方式:片内引导方式和片外执行方式。片内引导方式就是利用片内ROM中的引导程序将程序从外部加载到程序存储器中运行。由于FLASH的速度较低,难以与DSP相匹配,因此,本文采用片内引导方式。

    TMS320VC5409 片内掩模ROM中固化的引导装载(Bootloader)程序用于在上电复位时把用户程序从外部引导到高速RAM中,以保证其全速运行。 TMS320VC4509提供的片内引导方法有:有机口HPI方法、8位或16位并行EPROM方法、8位或16位并行I/O方法和8位或16位串行口方法等。TMS320VC5409片内引导装载源程序可以在TI网络下载得到,读者可以自行分析。下面通过图2所示的引导过程框图,阐述一下本文选用的并行引导方式过程。

    上电复位后,TMS320VC5409检测其MP/MC引脚,如果MP/MC="0",DSP从0xFF80h处开始执行片内引导装载程序。进入引导程序后,如有INT2请求中断,则进入HPI 引导方式;如有INT3请求中断,则进入EEPROM串行口引导方式;否则就进入并行引导方式。其详细引导过程如图3所示。

    片内并行引导方式前半部件是I/O空间并行引导方式,我们不采用此方式,程序继续运行直到从数据空间0xFFFFh地址读入一个地址数据,此数据为用户自举表的入口地址。这时片内引导程序就开始执行FLASH中的用户自举表,若自举表的第一个字是0x10AA,则表示是16位并行引导模式。


4 FLASH中自举表(Boottable)的存储格式

    为了实现DSP加电自举,FLASH的数据必须按照自举表的格式“烧写”。自举表的作用是:DSP运行此表时,首先根据自举表中前部分用户起始地址把后面的用户程序代码加载到DSP片内程序空间中相应的用户地址区域(由于FLASH与DSP时间不匹配,要设置好SWWR和BSCR寄存器),然后根据自举表中的程序入口址,在程序空间相应的地址开始运行程序。表2为16位并行自举的代码结构(自举表在空间允许的情况下可以放几个程序代码段,为便于说明,在此只说明一个程序代码段的情况)。

表2 并行自举表的代码结构

10AA(并行寻址格式)
SWWSR寄存器的初始值
BSCR寄存器的初始值
用户程序入口的XPC
用户程序入口的地址PC
用户程序的长度
用户程序起始地址XPC
用户程序起始地址PC
用户程序代码…
0000(表示自举表结束)

    下面结合一个实例,说明利用hex500命令生成二进制数据自举表的方法。

    (1)所编写的一个用户程序名为myblink.C,在编译链接成功后生成的输出文件名为myblink.out;程序空间的开始地址为0x1400h,程序执行的入口地址为0x144Fh。利用hex500工具,生成文件名为myblink.hex的二进制数据,hex500命令后添加如下条件:

    mybilink.out ;要转换的.out文件

    -a ;生成ASCII码的形式

    -e 0x144Fh ;程序空间中程序运行的开始

    地址

    -boot ;转换成自举表的形式

    -bootorg PARALLEL ;并行格式

    -byte ;按字节分配地址

    -memwidth 16 ;系统存储器字宽度为16位

    -romwidth 16 ;ROM物理宽度为16位

    -swwsr 0x7FFFh ;SWWSR设置软件等待周期

    -bscr 0xF800h ;BSCR设置段开关控制寄存器值0xF800

    -o myblink.hex ;输出的二进制数据文件名

    (2)生成的进制数据文件myblink.hex的数据为:

    0x10AA 0x7FFF 0xF800 0x0000 0x144F 0x00D1 0x0000 0x1400 …(用户程序代码)… 0x0000;

    前8个数据解释分别为:

    0x10AAh:16位并行寻址格式;

    0x7FFFh:SWWSR初始值为0x7FFFh,因为FLASH的运行速度比DSP慢,等待7个周期;

    0xF8000h:BSCR初始值为0xF800h;

    0x0000h:自举表程序入口的XPC=0;

    0x144Fh:自举表程序入口的地址=0x144Fh;

    0x00D1h:自举表程序的长度=0xD1h;

    0x0000h:自举表起始地址XPC=0;

    0x1400h:自举表的起始地址=0x1400h。

    (3)编写一个数据转换程序,把二进制数据文件myblink.hex转换为数组头文件myblink.h。在CCS环境下,FLASH的“烧写”主程序包含此头文件,编译链接后通过仿真器下载到DSP中,运行DSP,用户程序就被“烧入”FLASH中了。

    实际应用是:在数据空间地址0xFFFFh(也就是FLASH的空间0xFFFFh)中“烧写”数据0x9000h(FLASH中存放的自举表起始地址),在FLASH的地址0x9000h开始“烧入”用户自举表数据即myblink.h中的数组数据。

    DSP 运行情况是:依据第3节所述的引导装载过程,经过一系列的设置,使DSP寻址到数据空间地址0xFFFFh,得到自举表的起始地址0x9000h,PC指针指向0x9000h,执行自举表的数据,根据自举表写入信息,把后面的程序装载入程序空间起始地址0x1400h(XPC=0)(这时通过仿真器查看程序空间0x1400h开始的数据,与仿真器下载的myblink.out文件数据是一致的)。然后,DSP的PC指针指向程序入口地址0x144Fh (XPC=0)开始执行用户程序,从而完成了DSP利用FLASH实现16位并行引导装载的过程。

关键字:存储器  DSP 编辑:探路者 引用地址:基于闪烁存储器的DSP并行引导装载方法

上一篇:DSL模拟与电源管理白皮书
下一篇:便携式媒体播放器的电源管理

推荐阅读最新更新时间:2023-10-18 16:45

基于DSP/BIOS在电能质量监测终端中的应用
  DSP (数字信号处理器)在现今的工程应用中使用越来越频繁。其原因主要有三点:第一,它具有强大的运算能力,能够胜任FFT、数字滤波等各种数字信号处理算法;第二,各大 DSP 厂商都为自己的产品设计了相关的IDE(集成开发环境),使得 DSP 应用程序的开发如虎添翼;第三,具有高性价比,相对于它强大的性能,不高的价格有着绝对的竞争力。   TI为本公司的DSP设计了集成可视化开发环境CCS(Code Composer Studio),而DSP/ BIOS 是CCS的重要组成部分。它实质上是一种基于TMS320系列DSP平台的实时操作系统内核,也是TI公司实时软件技术 eXpress DSP技术的核心部分。DSP/
[嵌入式]
基于<font color='red'>DSP</font>/BIOS在电能质量监测终端中的应用
意法半导体增强 ST25DV 双接口 NFC 标签性能
意法半导体增强 ST25DV 双接口 NFC 标签性能提高应用灵活性和读写速度 中国,2021 年10月22日——意法半导体提高了新一代ST25DV-I2C动态NFC-tag IC的I2C 接口性能,让主机系统更快速、更轻松地读写标签芯片上的EEPROM存储器。 现在通过 I2C 接口向新的ST25DV-I2C 标签上的 EEPROM写数据与标准 EEPROM 一样快,并且可以根据需求灵活地使用标签,降低系统物料清单成本。此外,设计人员现在可以配置标签的 I2C 地址,确保标签能够与总线上的其他设备共存。 作为NFC Forum认证的Type 5 NFC标签,ST25DV-I2C 支持与13.56MHz RFID
[物联网]
意法半导体增强 ST25DV 双接口 NFC 标签性能
安捷伦推出测试快速DDR3存储器系统套件
近日,安捷伦科技公司推出目标应用为板级或嵌入式存储器应用的DDR3协议调试和测试套件,由硬件和软件的组成。据说该套件是业界首个功能最齐全的DDR3测试工具,包含业界最快的(2.0-Gtransfer/s)全通道16962A逻辑分析模块,用于DDR3 BGA和DIMM器件的探针,以及一个DDR3兼容性和高性能软件环境。 该套件具有2GHz触发序列速度,逻辑模块可稳定触发并捕捉DDR3 1600信号,对于嵌入式系统,W3630A系列探针可直接连接至BGA DRAM的焊球,同时负载较低、最小化对信号完整性的影响。N4835A DDR3插槽探嘴可检测服务器和台式计算机应用程式,通过板上插槽连接器实现存取高速(1.6 Gt
[测试测量]
车载导航系统的设计架构、电路图都在这儿了
本文的目标是研制一个轮式小车惯性导航系统,能够通过wifi实现PC终端和手持终端控制轮式小车行动以及小车所采集数据的传输。搭建如下图1所示的系统,TI公司的浮点 DSP TMS320F28335($16.0312)芯片作为主数字信号处理器,采集各MEMS惯性传感器的信号并处理,处理结果通过WIFI将数据输送到PC终端;PC终端负责显示定位结果和地图显示,并向小车驱动系统发送控制命令,同时接收驱动系统反馈的里程计信息。    图1 总体架构    硬件设计上,主要分为核心板和驱动板。核心板包括DSP最小系统,JTAG下载口设计,系统电源供给电路和MEMS传感器,WIFI模块等。而驱动板主要设计的内容是直流大电机的驱动模块。  
[汽车电子]
车载导航系统的设计架构、电路图都在这儿了
基于DSP的以太网通信接口设计方案
  概述   TM1300是Philips公司推出的新一代高性能多媒体数字信号处理器芯片。基于TM1300的DSP应用系统适合于实时声音、图像处理,可广泛应用于会议电视、可视电话、数字电视等应用场合。它不仅具有强大的处理能力,同时还具有非常友好的音频和视频以及SSI和PCI等I/O接口,因此可以根据应用的需要灵活地构造各种视频通信系统。鉴于目前计算机网络的普及和网上视频业务的发展,很有必要为TM1300视频编码系统开发一个以太网接口以拓宽其应用范围。开发以太网接口的一种合理思路是利用TM1300集成的PCI接口来驱动专用的以太网接口芯片。由于目前多数以太网接口芯片(如Real- tek8029,Realtek8139等)都采用
[嵌入式]
我国成功研制80纳米“万能存储器”核心器件
想必大家都曾经遭遇过电脑突然断电,因数据未及时保存后悔不已;或是因为手机待机时间太短而莫名焦虑……这些尴尬有望避免。记者日前获悉,北京航空航天大学电子信息工程学院教授赵巍胜与中科院微电子所集成电路先导工艺研发中心研究员赵超联合团队经过三年攻关,成功制备国内首个80纳米自旋转移矩-磁随机存储器器件(STT-MRAM),此项技术应用后,电脑死机也会保留所有数据,手机待机时间也有望大幅提高。 存储器是电子系统的重要组成部分。目前绝大多数电子系统均采用寄存、主存加硬盘的存储体系结构。与之相对应,静态随机存储器(SRAM)、动态随机存储器(DRAM)、闪存(Flash)或硬盘(HDD)成为实现这三种存储体系的传统存储技术。一台电脑中,静态随
[半导体设计/制造]
DSP56F807在交流随动系统中的应用
1 随动系统的组成及功能简介 交流随动系统由交流电机、交流伺服驱动器、随动控制器、编码器(旋转变压器)、减速器等部分组成。如图1所示。 随动控制器是由DSP芯片为核心扩展而成的。它可以接收上位机传送的给定位置信息与编码器采集的实际位置信息,通过前馈PID控制算法,输出模拟电压量送入驱动器中,实现对负载运动状态的控制。控制器可以采集随动转塔的锁定信号和限位信号,并控制随动系统的工作状态。 驱动器是专为交流电机设计的,内部嵌有交流电机控制算法、与交流电机编码器构成速度环和电流环,可以利用其RS-232串口对其内部参数进行设置,比如最大加速度的设置以保证系统的响应特性;还可以接收驱动器使能信号,当使能信号为高时,控制电机锁紧,当使
[嵌入式]
<font color='red'>DSP</font>56F807在交流随动系统中的应用
基于DSP的ARINC429通信板的研制
    摘要: 数字信号处理器(DSP在很多领域都已获得广泛的应用,ARINC 429数字信息传输规范是航空电子设备通信标准。介绍了用DSP芯片TMS320F206和高性能的数据通信芯片HS-3282开发ARINC 429通信板的一种方法。     关键词: 数字信号处理器(DSP)  ARINC429数字传输规范     在现代民用飞机上,系统与系统之间,系统与部件之间需要传输大量信息,随着数字技术的发展和微型电子计算机的出现,越来越多的航空电子设备已采用数字化技术。ARINC规范是为了在航空电子设备之间传输数字数据信息而制定的一个航空运输的工业标准。早期用单片机开
[嵌入式]
小广播
最新电源管理文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved