![]() |
|
||||||||||||||
| . 网站首页 . 新闻 . 新品 . 方案 . 专访 . 活动 . DSP . EDA . 评测 . 技术文库 . 会员区 . 商城 . 服务导航 . 邮购 . 资源 . | ||
|
||
|
|||||
| TMS320C6727开发---Bootloader | |||||
作者:Free 文章来源:本站原创 点击数: 更新时间:2008-2-29 ![]() |
|||||
|
由于6727的EMIF的地址线太少,只有13根,当要对较大的flash存储器寻址时,必须想办法确定地址的高位。硬件设计上将flash的A14- A17与DSP的HD0 – HD4相连。HD0 – HD4 属于UHPI单元,因此在启动之后第一件事情就是将HD0 – HD4设置为GPIO模式。对flash寻址的时候,先设置好GPIO这几根线,然后再读取地址0x9000xxxx中的值。 6727 从0x00000000 – 0x10000000的地址空间属于片内ROM,当DSP启动时从ROM中的0x00000000开始运行,这里面有一段程序将自动读取DSP的几根启动配置线的值,以决定采用何种方式载入程序。这个项目从flash启动,当ROM中的程序确定从flash启动之后,它读取flash中的第一个字节的数据(地址为0x90000000),若为0则表示此flash为8bit,若为1则表示为16bit,然后它进行相应的EMIF的配置,接着复制flash 中的头1024个字节到0x10000000。0x90000000 – 0x90000400 到 0x10000000 – 0x10000400,然后设置程序指针寄存器到0x10000004开始运行。 放在0x90000000 – 0x90000400的程序就是所谓的Bootloader。它负责把剩下的程序从flash复制到指定的位置,然后跳转到c_int00开始程序的执行。TI提供的Using the TMS320C672x Bootloader文档有这方面的详细介绍。但是其中推荐的启动格式是Application image script(AIS)。这和以前的6713的Boot table完全不同。为了能够识别AIS格式,1Kbyte的程序远远不够,因此TI提供的例子采用了二级启动。先由0x90000000 – 0x90000400这1Kbyte的程序将放在flash中的一个二级启动程序复制到内存中,然后运行这个二级启动程序,它分析flash中的AIS格式的数据,并将相应部分复制到内存中,然后再跳转到c_init00运行。 我觉得这样的程序写起来太复杂了,于是干脆还是用以前的那个boot table格式,和6713的程序基本相同,就是要多注意flash地址页更换的情况。 |
|||||
| 欢迎点击进入:TI德州中文网 (国内唯一针对TI应用的中文技术网站) 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| TMS320C6727的板子到了 TMS320C6727开发基本完成 TMS320C6727的McASP问题 |
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登录 | | |||
|
|