网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61IC中国电子在线 >> DSP >> DaVinci文章 >> DM643X系列 >> 文章正文
  DEC643 flash烧写和boot         ★★★ 【字体:
DEC643 flash烧写和boot
作者:Free    文章来源:本站原创    点击数:    更新时间:2007-11-12    
烧写flash:flashburn是ccs的一个插件,是烧写TI DSP开发板的一个很方便的工具,调用FBTC程序对flash进行操作。烧写到flash的文件格式是hex,可以用hex6x.exe工具把编译生成的.out文件转换成hex文件格式。DEC643  flash的烧写主要包括FPGA配置信息的烧写,烧写到flash第一页逻辑地址0x40000开始的地方(物理地址0x90040000); 二级bootloader的烧写,这段程序烧到flash第一页的前1K字节处,上电时DMA自动搬到RAM的前1K空间,用来把用户程序从flash的load地址搬运到ram的运行地址处;然后要烧的是用户程序,程序flash hex  image如果大于255K的话必须从第二页开始放,因为第一页的空间1024~40000不够。

这里必须提出几个特别需要注意的地方:

1、DEC643 FPGA主要完成视频信号outboard通道的一些设置和一些寄存器的功能,视频应用的话必须要把FPGA配置信息烧到flash逻辑地址0x40000处;

2、SEED公司提供的FBTC643.out不能实现multipage的烧写,所以我们要自己对FBTC643进行修改。修改的时候除了根据操作地址设置FLASH_PAGE寄存器(0xA0000004)外,切记在程序开始处充分设置EMIFA,否则不能实现分页。

3、SEED提供的boot.asm也要进行修改才能实现flash多页的load。同样在配置EMIFA的时候要充分,原始的配置应该不行。根据load地址设置FLASH_PAGE寄存器的值,值得注意的是load completed的时候要把FLASH_PAGE寄存器的值置成0。

4、看过有些人的经验说用户程序里要调用EVM642_LoadFpga()把FPGA配置信息load进去,不过DEC643上不用也可以。可能的原因是在BIOS初始化的使用调用了DEC643_init()这个BSL库函数,也许这个函数中包含了 EVM642_LoadFpga()的功能。解释一下刚才提到的load completed的时候要把FLASH_PAGE寄存器的值置成0:可能是因为FPGA配置信息在flash第一页,在用户程序开始处需要load FPGA配置信息,而这个东东对视频信号的输出是必须的。
               欢迎点击进入:TI德州中文网   (国内唯一针对TI应用的中文技术网站)    文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章: 没有了
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    没有相关文章
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长:61IC 湘ICP备05002478号