大容量无线传输技术中DSP的启动

发布者:星光曲折最新更新时间:2011-03-31 来源: elecfans关键字:大容量无线传输  DSP  启动 手机看文章 扫描二维码
随时随地手机看文章
1 引言

    在极低谱密度,高频谱利用率的大容量无线传输技术中,高速实时信号处理成为技术的 关键。目前市场上,能满足对高速实时信号处理的需要有具有良好的可编程性的器件主要有 DSP 和FPGA。

    TMS320C6000 系列DSP 是TI 公司推出的一种高性能的数字信号处理器,包含定点和浮 点两个系列,其中定点系列包括TMS320C62xx 和TMS320C64xx,浮点系列包括TMS320C67xx。 C6000 系列DSP 有三种启动方式:

(1) 主机启动

    如果选择主机启动模式,在复位信号结束后,DSP 的CPU 被内部“阻塞”而其他部分都 被释放。在此期间,一个外部的主机在必要时可以通过主机接口初始化CPU 的内存空间,包 括配置与启动相关的内部寄存器。一旦主机完成了所有必须的初始化,它必须将HPIC 寄存 器的DSPINT 位置“1”来完成启动过程。在程序加载完后,CPU 被从“阻塞”中唤醒,然后从地址0 处执行指令。在CPU 被唤醒后,CPU 需要将DSPINT 位清零。 欢迎转载,本文来自电子发烧友网(http://www.elecfans.com/)

(2) ROM 启动

    如果采用ROM 启动模式,则C6000 系列的DSP(C621x/C671x/C64x)复位后自动从CE1 空间的起始处拷贝1K 字节的代码到内存空间。该拷贝过程由EDMA 完成,使用默认的Rom 时钟。在此过程中CPU 一直处于“阻塞”状态,直到拷贝完成后才被被唤醒,然后从地址0 处开始执行程序。

(3) 无启动

     如果选择无启动模式,CPU 复位后直接从地址0 处开始执行指令。 C6000 系列DSP 的器件配置情况决定了选择的启动方式。具体来说就是DSP 的启动模式 管脚(boot mode pins)接上拉还是下拉电阻。以C6416 为例,BEA[19:18]是启动模式管 脚,它们取不同的值(上拉电阻代表“1”,下拉电阻代表“0”)代表的含义如表1-1 所示:

C6416 启动模式管脚配置 www.elecfans.com



    如果DSP 的程序小于1K 字节,那么上述ROM 启动机制已经可以完成程序的加载。然而事实上大部分DSP 的程序会大于1K 字节,这时就需要创建一个特定启动程序来完成更多代 码的加载。该特定启动程序又被称作二级bootloader。

     在需要二级bootloader 的程序中,这段特定启动代码通常驻留在ROM 存储器的起始位 置以便在DSP 复位后能自动被加载到内存地址0 处。当1K 字节代码被加载完毕后,CPU 开始从地址0 处执行,也就是执行二级bootloader 的内容。二级bootloader 的功能就是将程序的剩余部分拷贝到内存中。

2 启动方法的设计与实现

     采用二级bootloader 的DSP 启动方法的实现大体分为四步:配置存储器;编写 secondary bootloader 代码;编译程序,转换目标文件的格式;将程序烧写进Flash。图1 为实施该启动方法的硬件平台示意图,其中DSP 的型号选择C6416,Flash 的型号选择 AM29LV800B。

为实施该启动方法的硬件平台示意图 www.elecfans.com




2.1 配置存储器

2.1.1 定义存储器分区

     为了实现使用二级bootloader 的ROM 启动,需要将Flash 划分为FLASH_BOOT, FLASH_REST 两个区。这两个区分别存储由on-chip bootloader 拷贝的程序段和由secondary bootloader 拷贝的程序段。对于BIOS 程序,Memory 段的定义在MEM(Memory Section Manager)对象里。对于非BIOS 程序,Memory 段定义在linker command file 中。一个C6416 的Memory 段定义的例子如下所示:




2.1.2 COFF 段的定位

     DSP 程序是以COFF 段的形式在内存中存放的。一个COFF 段就是一个代码或数据块, 它在内存中占据连续空间。COFF 段分为自定义段,初始化段和未初始化段三种。COFF 段可 以有各种属性,其中load 属性和run 属性跟DSP 启动有密切关系。Load 属性指明段的存储 地址,run 属性指明段的执行地址。二级bootloader 负责将所有的段从load 地址拷贝到run 地址。例如:

.text: LOAD= FLASH, RUN= IRAM

表示代码段.text 被存储在flash 中,DSP 启动时二级bootloader 将该段拷贝到IRAM 中。

2.2 编写Secondary bootloader 代码

     对于C6416,外部存储器接口(EMIF)需要正确配置以后才可以访问外部存储器件。在这 项工作完成后,二级bootloader 应该将所 有的初始化段从它们的load 地址拷贝到run 地址, 之后再跳转到_c_int00,也即是程序入口点。Secondary Bootloader 用汇编语言编写,因 为此时C 环境尚未建立。  

     二级bootloader 必须知道所有初始化段的大小,在Flash 中存储的位置以及应该被加 载到何处才能进行正确的拷贝。事实上,二级bootloader 通过读取段拷贝表获得上述信息。 本文第三部分详细说明了有关段拷贝表的内容。完成二级bootloader 代码的编写后,应将它添加入工程,与工程的其他代码一同编译链接生成.out 文件。

2.3 转换目标文件的格式

     编译链接生成的是.out 格式文件,然而Flash 一般接收的是ASCII 格式的文件。CCS 附带的工具hex conversion utility 可将.out 文件转换为ASCII 格式的.hex 文件,Hex6x 以命令行文件的形式执行。Hex 命令行文件中,首先指明输入文件(.out),输出文件的格式和ROM 的大小及类型,以及哪些段需要被放在ROM 中。一个Hex 命令行文件的例子如下所示(注释内容用“/*”和“*/”括起):







2.4 将程序烧写进Flash

     将2.3 节生成的ASCII 文件烧写进Flash 可以使用CCS 自带的FlashBurn 工具。 FlashBurn 是一个带图形界面的软件,它首先将一个称作FlashBurn Target Component (FBTC) 的程序下载到DSP 内存中,通过与FBTC 的实时数据交换完成对Flash 的擦除编程等操作。 针对不同的硬件(DSP,Flash 型号)修改FBTC 是该方法的关键。所需修改处包括Flash 的基地址,大小,及读写命令字等。

3 段拷贝表

     二级bootloader 使用一个段拷贝表(section copy table)进行段的拷贝。段拷贝表包 含每个需要拷贝的段的必要信息,如段的load 地址,段的run 地址,段的大小。段拷贝表被插入在secondary bootloader 的末尾。 欢迎转载,本文来自电子发烧友网(http://www.elecfans.com/)


生成段拷贝表的方法有两种:  

1) 使用 hex conversion utility 的-boot 选项 在2.3 节中我们讨论了程序文件格式的转换和hex 命令行文件,事实上Code Composer Studio 自带的工具hex conversion utility 提供了一种更为方便的生成段拷贝表的方法, 只要在hex 命令行文件中使用一些特殊的选项即可。特殊的选项有–boot, ?bootorg 和 –bootsection,这三个选项的含义分别如下:

-boot 使用该选项时hex conversion utility 将自动转换所有初始化段的格式

-bootorg 指明段拷贝表的地址

-bootsection 指明二级bootloader 所在的段的名称

2) 使用 linker 选项(LOAD_START,RUN_START,SIZE)

涉及段拷贝表的生成的有三个选项:LOAD_START,RUN_START 和SIZE,可分别获得一个段的驻留地址,运行地址和大小。例如下列代码可获得text 段的驻留地址(存于_text_ld_start 中),运行地址(_text_rn_start)和段的大小(存于_text_size)

.text : load = FLASH_REST, run = IRAM

LOAD_START(_text_ld_start),

RUN_START(_text_rn_start),

SIZE(_text_size)

4 结束语

     本文针对在极低谱密度,高频谱利用率的大容量无线传输技术研究中C6000 系列DSP 的应用程序大于1K 字节的情况,提出了一种使用二级bootloader 从Flash 启动DSP 的方法。 该方法可应用于采用了C6000 系列DSP 的嵌入式系统中,不需要额外的Flash 编程器,具有 广泛的适用性。

关键字:大容量无线传输  DSP  启动 引用地址:大容量无线传输技术中DSP的启动

上一篇:TI GHz DSP应用介绍
下一篇:基于DSP Builder系统模型的数字锁相环设计

推荐阅读最新更新时间:2024-05-02 21:19

以全新的多核SoC架构进行LTE开发
LTE技术通过更有效的传输以提高数据速率,提供功能强大的新设备来提升移动用户的体验。对于基站厂商及其供应商而言,LTE变革的同时也提出了新的技术挑战。有效支持4G系统需要DSP设计的多项创新,这些创新促使业界采用SoC架构,以支持这类系统。本文将探讨德州仪器(TI)的全新SoC架构如何达到4G系统的关键功能。 LTE概述 蜂窝网络的数据使用正迅速成长,基础设备厂商亦期待4G标准,以便为移动用户提供更大的容量及更好的使用体验。3GPP所开发的LTE已被许多运营商选择为无线基站及手机的新一代解决方案。LTE是3GPP标准第8版UMTS的提升。LTE一般称为4G标准,是目前无线传输数据的重大变革。 LTE采用OFD
[嵌入式]
以全新的多核SoC架构进行LTE开发
变频器软启动器的使用方法
变频器(Variable-frequency Drive,VFD)是应用变频技术与微电子技术,通过改变电机工作电源频率方式来控制交流电动机的电力控制设备。 变频器主要由整流(交流变直流)、滤波、逆变(直流变交流)、制动单元、驱动单元、检测单元微处理单元等组成。 变频器靠内部IGBT的开断来调整输出电源的电压和频率,根据电机的实际需要来提供其所需要的电源电压,进而达到节能、调速的目的,另外,变频器还有很多的保护功能,如过流、过压、过载保护等等。 随着工业自动化程度的不断提高,变频器也得到了非常广泛的应用。 变频器软启动器是一种用于变频器启动的设备,通过调节电机启动时的电流斜升来实现减少起动冲击和噪声的效果。以下是变频器软
[嵌入式]
高通面向大众市场启动移动智能处理器品牌战略
    3月6日消息,一直以B2B形式面对客户的高通公司,开始在消费者市场树立品牌形象。3月6日,高通公司首次面向消费者发布品牌战略,并正式推出其旗舰移动处理器品牌Snapdragon的中文名称“骁龙”。     在此之前,高通公司的主要服务对象集中在智能终端厂商,与大众市场的直接接触并不多。因此,普通消费者对高通公司及其主要产品一直较为陌生。     随着移动计算市场不断增长,智能手机和平板电脑等智能终端越来越成为消费者最为依赖的移动平台。与此同时,消费者对移动智能终端的性能、功能和品质也不断提出了更高的要求,这也直接推动了OEM厂商对移动终端处理器性能提升的需求。而对于移动智能终端来说,移动处理器是直接影响消费者体验的关键元素。
[手机便携]
TMS320C6000 DSP自动引导的方法和编程
  1 TMS320C6000 DSP硬件结构概述   TMS320C6000是TI公司生产的TMS320系列产品中新一代高性能的DSP芯片,适用于高速数字信号处理。TMS320C6000主要由三个部分组成:CPU内核、外设和存储器。CPU中8个功能单元可以并行工作,这些功能单元被分成类似的两组,每组由4个基本功能单元组成。CPU有两组寄存器,每组寄存器由16个32位寄存器组成。由于在运行期间不做硬件数据相关性检查,所以程序运行时可以同时执行8条指令,极大地提高了芯片处理速度,这使得该系列的芯片在电子测量、测控、图像、雷达、声纳和软件无线电等领域得到了广泛的应用。   2 加电后DSP的运行过程   系统加电后,RESET
[嵌入式]
DSP与单片机的一种高速通信实现方案
摘 要:介绍了一种利用双口RAM实现DSP与单片机高速数据通信的方法,给出了它们之间的接口电路以及软件实现方案。 关键词:DSP;双口RAM;接口电路;数据通信 1 引言   数字信号处理器(DSP)是一种适合于实现各种数字信号处理运算的微处理器,具有下列主要结构特点:(1)采用改进型哈佛(Harvard)结构,具有独立的程序总线和数据总线,可同时访问指令和数据空间,允许实际在程序存储器和数据存储器之间进行传输;(2)支持流水线处理,处理器对每条指令的操作分为取指、译码、执行等几个阶段,在某一时刻同时对若干条指令进行不同阶段的处理;(3)片内含有专门的硬件乘法器,使乘法可以在单周期内完成;(4)特殊的指令结构和
[应用]
数字信号处理器DSP)在串联型电力有源滤波器
1引言 应用电力电子技术抑制谐波,以改善电能质量的新技术——电力有源滤波器(ActivePowerFilter)已成为近年来电力系统研究领域中新的热点。国际上以抑制谐波电流为目的的并联型电力有源滤波器应用居多,而随着电压敏感性负载不断增多,以电压畸变治理为主的串联型有源滤波器,正显示着越来越大的利用价值。同时,它又是进一步研究综合电能质量补偿器的前提条件,因此,对串联型有源滤波器进行研究有着重大的意义。 在串联型有源滤波器的研制过程中,我们采用了美国德州仪器公司(TI)的TMS320F240数字信号处理器(DigitalSignalProcessor),极大地方便了软硬件的开发,加快了研制的进程。 TMS320F240具有
[电源管理]
<font color='red'>数字信号处理器</font>(<font color='red'>DSP</font>)在串联型电力有源滤波器
教你如何使用STM32F4的DSP
我们平常所使用的CPU为定点CPU,意思是进行整点数值运算的CPU。当遇到形如1.1+1.1的浮点数运算时,定点CPU就遇到大难题了。对于 32位单片机 ,利用Q化处理能发挥他本身的性能,但是精度和速度仍然不会提高很多。 现在设计出了一个新的CPU,叫做FPU,这个芯片专门处理浮点数的运算,这样处理器就将整点数和浮点数分开来处理,整点数交由定点CPU处理而浮点数交由FPU处理。我们见到过TI的DSP,还有STM32F4系列的带有DSP功能的微控制器。前者笔者没有用过,不作评论,而后者如果需要用到FPU的浮点运算功能,必须要进行一些必要的设置。 首先,由于浮点运算在FPU中进行,所以首先应该使能FPU运行。在system_i
[单片机]
迄今世界最强激光器启动
世界上最强大的激光器于近日被激活。物理学家组织网3月31日报道,该系统能使激光脉冲在1飞秒(1000万亿分之一秒)内达到10拍瓦(1拍瓦=1000万亿瓦=1015瓦)的峰值,有望促进从医学到基础物理以及太空等多个领域取得革命性进展。 位于罗马尼亚研究中心的迄今最强激光器。 图片来源:物理学家组织网 该激光器所属高科技中心位于罗马尼亚,主要由欧盟资助,耗资3.2亿欧元,利用了法国科学家热拉尔·穆鲁等人的发明。 科学家一直致力于制造更强大的激光器。20世纪80年代中期,穆鲁团队发明了啁啾脉冲放大技术(CPA),能在保证激光强度的同时提升其功率。其工作原理是在时间上拉伸超短激光脉冲,将其放大,然后再次将其挤压在一起,以此创造出迄今
[医疗电子]
迄今世界最强激光器<font color='red'>启动</font>
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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