首 页 用户登录 | ![]() |
|||
|
|||
按字母检索 | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
按声母检索 | A | B | C | D | E | F | G | H | J | K | L | M | N | O | P | Q | R | S | T | W | X | Y | Z | 数字 | 符号 |
|
![]() |
您的位置: 5VAR论文频道 → 论文中心 → 理工论文 → 电子通信 |
|
||||||
两类DSP芯片的引导过程分析 | ||||||
收集整理:佚名 来源:本站整理 时间:2009-01-10 22:37:59 点击数:[] ![]() |
||||||
.obj文件,对于C5402,编译时要采用-V548的编译描述符。 (2)链接文件,将.obj文件生成.out文件。.out文件中应包括初始化的段落。如.text,.const,.cinint等。以上两步在仿真时,也需要执行,以便得到仿真用的.out文件。 (3)使用数制转换工具生成.HEX文件或.BIN文件,C40使用的数据转换工具为hex30.exe,C5402使用数制转换工具编写命令文件,命令文件的编写很重要,下面分别例举了C40和C5402系统引导的两个CMD命令文件。 例1:C40系统引导的CMD文件 myfile.out /*要进行转化的COFF文件名*/ -i /*建立INTEL十六进制文件的输出*/ -image /*产生ROM所指出的内存映射*/ -o n_t_fcom.hex /*输出的文件名*/ -map n_t_hex.map /*输出的MAP文件名*/ -romwidth 8 /*EEPROM的数据宽度*/ -cg 000000000H /*全局数据总线控制字*/ -cl 3e3fbfd0H /*本地数据总线控制字*/ -datawidth 32 /*数据宽度*/ -memwidth 8 /*存储器的宽度*/ -boot /*将所有的输入文件创建引导表*/ -bootorg 0000H /*EPROM的0000H,系统的0030 0000H*/ -ivtp 00700000H /*IVTP指针的初始值*/ -tvtp 00000000H /*TVTP指针的初始值*/ -iack 0300000H /*IACK指令的响应地址*/ -e 00704000H /*程序的开始执行地址*/ ROMS /*ROM的映射范围*/ { EPROM:org=00300000h,len=8000H } 例2:C5402系统引导CMD命令文件 Myfile.out /*要进行转化的COFF文件名*/ -e 0300H /*程序运行的入口点*/ -i /*建立INTEL十六进制文件的输出*/ -boot /*将所有的输入文件创建引导表*/ -bootorg 0000H /*EPROM中引导表的始地址*/ -memwidth 8 /*EEPROM的数据宽度是8位*/ -o myfile.hex /*输出的文件名*/ 下面给出操作符的几点说明: (1)-bootorg指定引导表的地址,注意这里使用的是0000H,.HEX文件的始地址就是0000H。在C40中,EEPROM28C256的0000H地址单元,在系统中地址是0030 0000H。若改为-bootorg 0030 0000H,在用烧录器打开.HEX文件时,可以看到起始地址是0030 0000H,若将.HEX文件烧到EEPROM中,需要修改烧录芯片的起始地址,比较麻烦。但你可以将.HEX文件转化为.BIN文件,则地址就不必修改。 (2)输出文件的格式 -a 输出ASCII码的十六进制文件 -I 输出INTEL十六进制文件 -m1 输出Motrorola的S1数据格式文件 -m2 输出Motorola的S2数据格式文件 -m3 输出Motorola的S3数据格式文件 -t 输出TI的数据格式文件 -x 输出Tektronix数据格式文件 (3)检查.HEX文件正确与否,可以查看MAP映射文件,在.MAP文件里列出了.HEX文件中的一些具体配置。如32BIT数据位的排放顺序,即4个字节的排放顺序;系统引导表的参数:引导表的首地址、程序入口点、各个寄存器的初始值等;源程序中各段的起始地址、大小以及宽度等信息。对照它,就可以确定内存资源是否得到了合理的配置和有无地址冲突。 以下是C40 MAP文件的举例: ********************************************* TMS320C3x/4x Hex Converter Version 5.00 ******************************************** Fri Jun 8 09:47:33 2001 INPUT FILE NAME:<n.out> OUTPUT FORMAT:Intel PHYSICAL MEMORY PARAMETERS Default data width:32 Default memory width:8(LS-->MS) Default output width:8 BOOT LOADER PARAMETERS Table Address: 00300000,PAGE 0 Entry Point: 00704000 Global Memory Configuration:00000000 Local Memory Configuration: 3e3fbfd0 Interrupt Vector Table Pointer(IVTP):00700000 Trap Vector Table Pointer(TVTP):00000000 IACK Location: 00300000 OUTPUT TRANSLATION MAP ------------------------------------- 00300000..00307fff Page=0 Memory Width=8 ROM Width=8 "EPROM" ------------------------------------- OUTPUT FILES:n_t_fcom.hex [b0..b7] CONTENTS:00300000..003013ff BOOT TABLE intvect:dest=00700000 size=00000040 width=00000004 .text:dest=00704000 size=0000048a width=00000004 .data:dest=00705000 size=00000026 width=00000004 003004f0..00307fff FILL = 00000000 (4)烧录芯片。C40可以直接将生成的INTEL格式的.HEX文件烧到28LV256中。或将十六进制的文件用hexbin.exe转化为二进制的.BIN文件,再烧录到芯片中。对于C5402,还需要手动添加EEPROM在系统中的起始地址。如果采用28LV256(32K×8BIT),引导表的首地址为8000H,那么生成的.HEX文件用芯片烧录器加载到烧录器软件的内存后,手动修改28LV256的7FFEH和7FFFH单元(即系统的FFFEH和FFFFH单元)为80和00H,再绕到芯片中。 以上步骤的操作都是在DOS环境中执行的。新版本的DSP开发软件可以在WINDOWS环境中使用,其原理是一样的,这里不再多述。 源程序数据的存储格式(8位并行装载)如表2所示,当烧录时可以对比一下。
本文详细介绍了C4X和C54XX两类DSP芯片系统引导的详细设计步骤,其它型号的DSP也大同小异,如C3X与C4X类似。笔者希望通过共享系统引导的经验,使系统引导不再成为DSP设计中的最大障碍,从而加速DSP的抗推广和使用。 |
提供人:佚名 | |
【返回上一页】【打 印】【关闭窗口】 |
![]() |
5VAR论文频道 |
![]() |
5VAR论文频道 |
![]() |
关于本站 -
网站帮助 -
广告合作 -
下载声明 -
网站地图
Copyright © 2006-2033 5Var.Com. All Rights Reserved . |