【摘 要】 阐述了tms320vc5410芯片的2k程序空间的并行i/o串口的boot引导方法。
关键词:tms320vc5410,boot,数字信号处理
tms320vc54x系列dsp芯片一般都在片内设置有boot程序。boot程序的主要作用是在开机时将用户程序从外部装入到程序存贮器。不同型号的dsp芯片中boot引导程序的大小是不同的。tms320vc5410内部就具有2k字的boot程序,下面就介绍tms320vc5410的boot设计方法。
1 boot的模式选择
我们使用tms320vc5410的boot程序时,需要将dsp设置为微机工作方式(硬件复位后采样mp/mc=0),则当执行片内的引导程序,并且dsp复位后,程序就从内部rom的ff80h处开始执行程序。在ff80h处,有一条跳转指令,转向rom中已掩模的boot程序,这样便开始运行内部的boot程序。这个引导程序首先进行初始化。初始化工作包括使中断无效(intm=1)、将内部的双存取块/单存取块映射到程序/数据空间(ovly=0),对程序和数据空间都设置7个等待状态。
tms320vc5410程序引导共有5种模式:
(1)hpi模式,这是一种主机接口模式。主机通过写入主机控制寄存器(hpic)来中断dsp,而dsp则通过主机中断信号来中断主机。主机可以响应hint信号和清除该信号。hint是否为低电平决定了是否选用主机接口hpi引导模式。
(2)并行i/o口boot模式(支持8bits和16bits)。
(3)串行口模式(标准/tdm/bsp)(支持8bits
和16bits),串口引导共有8种方式。按字长8位与16位两种格式和clkx/fsx引脚的设置决定引导模式。采用8位子长时需要对下列控制位置位:
·接收复位信号rrst;
·发送模式位txm;
·时钟模式位mcm(使clkx由片内时钟源驱动);
·帧同步模式位fsm(必须由外部施加帧同步脉冲信号到fsr引脚);
·格式位fo(选择8位数据传输方式)。(4)外部并行模式(支持8bits和16bits)。(5)warm boot,即热引导模式,可以使传输控制入口地址,也可以在器件热复位或用其他方式把程序代码已经传输到片内或片外存储器(如dma)后使用warm引导模式。在warm引导模式时,由brs字中的src或addr字段指定入口地址的高6位。
本文主要就8位/16位并行i/o口引导模式作探讨。
i/o口引导模式提供了一种异步地把程序代码从i/o口地址空间0h处传输到内部或外部的程序存储器的方法。图1是程序流程图。
由图1的流程图我们可以看到设置合理的数据区的ffffh地址的内容,使它成为有效地并行引导,就可以实现我们的并行i/o的boot模式。
2 设计ffffh地址的内容使它成为有效的并行引导数据
ffffh地址所填的内容就是所设计的应用程序开始的地址,在所设计的程序中起始地址是0页的08000h,因此,在此程序中将ffffh的内容设置为08000h。
3 设置08000h的内容,实现引导功能
我们可以根据图2来得到我们所需要填写的数据。
由图2的流程图我们可以知道,要往08000h地址开始写入所规定的值才符合要求。见表1。
依照表1,我们可以填入符合要求的字。
4 获取填入字的信息
要获取填入字的信息就要生成一张表,而生成这张表之前需要做一个批处理文件,批处理文件的做法如下:
(1)首先编译通过生成“.out”文件;
(2)打开ultraedit-32编辑批处理的软件;
(3)用hex命令进行编辑。
hex命令形式如下:
myfile.out/*输入的coff文件名.
-e 0x0000/*程序的起始地址.
-a/*ascii输出形式.
-boot/*引导所有的程序单元.
-bootorg parallel/*创建parallel的boot引导.
-memwidth 16/*16bits的eprom.
-o myfile.hex/*输出文件名.
这里有一个小程序可以看出具体操作过程(程序的起始为0x2000):
hex500 test1.out-e 0x2000-boot-bootorgparallel-memwidth 16-romwidth 16-o test1.hex
这样可以生成一个表,如表2所示。
表2中带下划线者代表每一个section的起始地址,有框线者是这一个section的长度(注意,当我们依据这张表填的时候,应该将section的长度加1,这是应用后得出来的经验),最后一个section的最后四个0表示结束。
由上,我们就可以使用并行的boot模式了。
参考文献
1 李刚主编.数字信号微处理器的原理及其开发应用.天津:天津大学出版社,2000年4月
2 任丽香,马淑芬,李方慧编.tms320c5400系列dsps的原理与应用.北京:电子工业出版社,2000,7
3 彭启琮编.tms320c54x实用教程.成都:电子科技大学出版社,2000,1
基于蜂窝移动通信网络的物联网技术和应用
多项技术促进智能自动化与机器人技术相结合
通用Tensilica软件堆栈提供最佳边缘AI性能
三星和SK Hynix将于9月中止与华为的业务
东芝模拟IC业务发展战略:大力推进车载、通信等产品
TMS320VC5410的BOOT设计与实现?
德标汽车电线结构及性能介绍
荷兰研究人员研发出新的金属3D打印技术打印精度可以达到几微米尺度
物联网是本届MWCS中国电信重点展示的项目
TRVV电缆是什么,TRVV电缆的作用都有哪些
在Rust中实现Iterator和IntoIterator特征
湖南建设一批智能制造示范项目,打造闻名全国的智能制造“湖南特色”
无阻值电阻在电路中扮演什么角色?巨磁电阻的构成和一般电阻有什么不同吗?
工业机器人应用的十大误区(二)
【分享】什么是Z-Wave?为何它没有ZigBee普及?
工业机器人发展要双管齐下
电动单座调节阀的特点_电动单座调节阀的优点
通信技术试验卫星成功随长三乙火箭发射
磁盘读取的响应时间有哪些影响因素
使用GaN设计高效的高密度电源解决方案