===============第一篇===================
关于FlashBurn
关于FlashBurn无法烧写的问题 收藏
SEED-DEC643用户指南:在进行视频测试之前,须将FPGA的编程信息烧写到FLASH上,在测试视频图像器件,禁止操作FLASH的第0页。
前一段时间,一直在弄DEC643的板子,由于FlashBurn的烧写一直无法成功,以至于一直没法做视频处理,很是郁闷,最终在合众达公司的技术支持的帮助下,找到的问题所在,解决了这个困扰了我两个星期的问题。
由于用户指南上的介绍过于简单,对于我这样的新手,有几个细节搞错了,所以一直无法实现FlashBurn的烧写,现在把烧写的过程,详细的记录下来(傻瓜式操作)希望对那些和我一样的菜鸟有所帮助,也欢迎高手指点!
一、在FlashBurn中打开FpgaBurn目录下的fpga-643.cdd,将一个DM643的配置程序osd_fpga_rev4_ahex.hex烧写到FLASH。
(1)、先打开CCS、再打开fpga-643.cdd文件
(2)、点击Conversion Cmd选择Browse,选择文件 (可以不管)
(3)、File to Burn 选择Browse,选择文件osd_fpga_rev4_ahex.hex
(4)、FBTC Program File选择Browse,选择文件FBTC643.out;
(5)、点击Program下点download FBTC,
(6)、再点击Program菜单下的Esram Flash,擦写程序,擦写FLASH中的程序。(此时如掉电再启动扳子, LED D4、D6、D7、3个灯灭掉)
(7)、点击Program菜单下的Program Flash,下载程序,将文件下载到FLASH中。
二、在FlashBurn中打开FpgaBurn目录下的fpga_loader-643.cdd,将一个fpga-loader程序烧写到FLASH。
(1)、先打开CCS,再打开fpga_loader-643.cdd文件,
(2)、Conversion Cmd选择Browse,选择文件, (可以不管)
(3)、File to Burn 选择Browse,选择文件fpga_loader_ahex.hex,
(4)、FBTC Program File选择Browse,选择文件FBTC643.out
(注意:此处一定要选择FBTC643.out,不可以选择fpga_loader.out)
这也是一个问题,为什么不选择fpga_loader.out呢??
(5)、Program下点download FBTC,
(注意:此时不可再点击Program菜单下的Esram Flash,否则将擦写掉FLASH中的程序。)
(6)、点击Program菜单下的Program Flash,下载程序,将HEX文件下载到FLASH中。
烧写完成后,重新上电,会发现LED D4、D6、D7被点亮,表明FPGA编程完成。
本文来自CSDN博客,转载请标明出处:
http://blog.csdn.net/Nautilus2008/archive/2008/12/22/3580419.aspx
DSP DM642_flashburn使用
DSP学习 2008-10-18 17:24:55 阅读392 评论0 字号:
大中小 订阅
对
FLASH存储器进行烧写一般有以下几种方法:一是通过编程器烧写;二是通过开发商提供的专门烧写软件工具进行烧写;三是自己编写烧写程序通过
DSP烧写。本文是通过
TI公司提供的
FlashBurn软件来对
FLASH存储器进行烧写。板子为
SSD-DM642
V2
1、 在使用仿真器的正常情况下,编译生成×××
.out文件
.
2、 在已调试好的工程项目中加入二次
boot程序(
boot .asm),注意中断向量表仍用原来的中断向量表(
ves_dm642.asm)然后重新编译生成×××
.out文件。
3、 把编译生成×××
.out文件复制到
HEX文件夹中,并改名为
BOOT.out文件,双击
change.bat文件(或利用
hex6x.exe)来实现把
BOOT.out文件转化为
BOOT.hex文件
.即用于烧到
flash中的文件。
4、 利用
FBTC642程序来生成
XXX.cdd用于实现
flashburn软件的条件。
当然前提是要先下载一个
flashburn软件或在
CCS中有这个插件。
先新建一个,设置后
close后保存,然后打开这个配置进行
flashr的先擦除后烧写。
第一行空格
Conversion Cmd利用:
DM642.cmd(所有工程都用这个文件)
第二行空格
File to burn利用:
步骤
3中产生的
BOOT.hex
接下来几个按实际情况选择。
第六行空格
FBTC Program File利用:
FBTC642文件中的
FBTC642.out而不是步骤
3中的
BOOT.out文件
第七行空格
Flash phyiscal是指
flash Rom 映射到
DM642可访问空间的某个段。在本开发板中的
flash Rom是映射到
EMIF
CE1(
0x90000000—0x9FFFFFFF)开始的
4M空间中,故这里填
0x90000000和
0x400000两个值。
5、去掉仿真器并复位
DSP目标板,以使程序自动加载运行。
来源:
http://c101zxg.blog.163.com/blog/static/31536682200891852455965/
将程序烧写入FLASH步骤
默认分类 2008-11-27 14:36:21 阅读456 评论3 字号:
大中小 订阅
目标板: VPM642 CCS2.2.18
烧写步骤:
1.将Boot.asm的程序加入到用户程序中
2.在例程中的DSPBIOS文件seedvpm642.cdb中,System->MEM->添加一个名为BOOT的存储空间,其地址空间分配为0x00~0x400,
并ISDRAM地址空间分配为由原来的0x0000000~0x00020000修改为0x00000400~0x00020000
(这一步有的示例程序中已经设置,则略过)
3.在CCS中打开例程中的*.cmd文件,做如下修改
SECTIONS
{
.boot_load > BOOT
}
(这一步有的示例程序中已经设置,则略过)
4.用记事本编写*.cmd文件(这个文件是Hex6X工具的必备文件)
(可参考Fired codeootSEEDVPM642_bootSEEDVPM642_ahex.cmd文件,编写hex6x.cmd)或者copy过来直接重命名也行。
5.使用HEx6x工具,将OUT文件,转换成为HEx的二进制文件。
在DOS下进入程序保存的目录,直接运行(hex6x.exe)
如D: imyprojectsa_video_process_XY>hex6x hex6x.cmd文件得到二进制文件(可以从DOS状态看到),此时就得到了seedvpm642_vedioloop_ahex.hex(文件名可能不同)用于烧写的文件。
6.使用FLASHBURN将之写入到FLASH中。
(6.1)安装软件CCStudio Flashburn Utility v2.71;(在例程里也有,可不用安装)
(6.2)运行FlashBurn,新建一个文件FBCConfig1.ccd,并保存。设置如下:
Flash Physical: 0X90000000 bytes: 0X400000
(6.3)(按钮)Program->Download FBTC(如果调用已经存在的FBCConfig1.ccd文件则不需此步)
在FBTC Program File栏中选对完好的FBTC.out文件(注意版本)
(6.4)(按钮)Program->Erase flash
(6.5)(按钮)Program->Program flash
结束。
转自:
http://blog.sina.com.cn/s/blog_48fc29af0100n4ye.html
=====================第二篇===============================
在TI DSP开发板中烧写Flash程序
【整理者】61ic.com
【提供者】78999
【详细说明】在TI DSP开发板中烧写Flash程序
实现在FLASH存储器烧写程序一般有以下三种方法:一是通过编程器下载烧写;二是通过开发商提供的专门软件工具+在线仿真器烧写;三是自己编程通过DSP烧写。个人使用的是合众达电子SEED-VPM642开发板,在最新版本例程中提供了专用的烧写软件SeedConvertTool.exe;但为了实现通用的FLASHBURN烧写,我进行了一些尝试以便了解程序烧录过程及运行情况。
实现Bootloader自引导功能,除了需要生成可执行文件(.out),还需要进行如下步骤:
1、合理配置工程文件(.pjt):需要添加一个boot.asm文件(做搬移时一些初始化和跳转工作),另外工程中.cmd文件也需要为bootloader保留空间。
2、将添加了boot.asm和修改cmd后重新生成的.out文件转化为.hex文件,这时需要一个转换.cmd文件(这个.cmd文件与工程文件中.cmd完全不同,前者是为了指明flash的属性(大小,数据宽度,起始地址和产生文件名)以实现转换.out文件为flash兼容的.hex文件,不能混淆)。
3、最后通过Flashburn工具将.hex文件写入Flash,这时需要转换.cmd文件、.hex文件和FBTC642.out文件。
介绍下各烧录中用到的文件(Flashburn、FBTC.out、hex6x.exe,.cdd和.cmd文件)作用:
1、FBTC.out文件:负责对flash的操作,比如flash的擦除、读、写等。这里主要看个人板子上flash的型号,因为不同型号的flash,它们的操作命令不一样。这样你就必须对FBTC工程进行修改,然后重新编译生成.out文件。如DM642开发板使用的FBTC文件在安装ccs的根目录下(boardsevmdm642flashburnFBTC642)。
2、hex6x.exe:将用户工程生成的.out文件转换为二进制文件的工具,这样Flashburn就可以将.out文件以二进制方式烧进flash中。
3、Flashburn:TI的第三方软件公司 Software Design Sloutions 为TI的DSP用户编写的Flash烧写软件,给软件以CCS为基础,通过运行仿真程序FBTC,将用户程序写入Flash中。
4、.cdd文件:保存Flashburn的设置的。
5、.cmd文件:指明flash属性(大小,数据宽度,起始地址和产生文件名),按照flash要求实现将.out文件到二进制文件的转换。
具体步骤:
1。用户程序中添加boot.asm文件,修改.cmd文件中的MEMORY和SECTION部分(DSP/BIOS环境中直接通过配置CDB或者TCF文件中的System->MEM->ISRAM即可;非DSP/BIOS在cmd文件中添加一个名为BOOT的section,位置为0x000,长度为0x400),在连接仿真器环境下编译生成可执行的.out格式的COFF文件。
2。使用HEx6.exe工具,将工程文件生成的.out文件转换成为HEX的ascii格式的二进制文件。
a.编写一个.cmd文件用于设置hex6x.exe的参数
如果例程中存在,则可用记事本打开如下:
SeedH264loopback.out
-a
-memwidth 8
-boot
-bootorg 0x90000400
-bootsection .boot_load 0x90000000
ROMS
{
FLASH: org = 0x90000000, len = 0x400000, romwidth = 8, files = {SeedH264Loopback.hex}
}
b.生成二进制文件:
两种方法:
i)将.cmd文件和.out文件放在同一目录下,双击convert.bat。具体操作是将三个文件复制到一起分别是:hex6x.exe和.cmd以及.bat在编辑修改其中的内容(改文件名),最后运行批处理文件即可;
ii)通过windows命令窗口键入命令进行转换。将.out文件,cmd文件,和hex6x.exe文件放在同一个文件夹内。如C:DSP_BURN。在dos窗口中键入cd C:DSP_BURN将路径改为“C:DSP_BURN>”,再键入“hex6x.exe XX.cmd”结果生成“XX.hex”文件
在DOS下进入程序保存的目录,直接运行(hex6x.exe)如D:timyprojectsa_video_process_XY>hex6x hex6x.cmd文件得到二进制文件(可以从DOS状态看到),此时就得到了seedvpm642_vedioloop_ahex.hex(文件名可能不同)用于烧写的文件。
注意:hex6x.exe的版本,如果版本太低,在转换过程中会出现问题。
二、改写FBTC工程,这个CCS工程编译而成的文件主要是对flash的操作,其作用相当于一个搬运工具,将hex文件由PC搬入Flash中。这里要注意自己的CCS版本和flash的型号,编译完成会得到一个FBTC642.out文件。对于不同的DSP系统板,TBTC工程主要修改DM642teb.h、FBCmd.c、FBTC_DM642.c和FBurnCmd.c等文件。
三、打开开发板上电,启动ccs软件,加载gel文件并连接(connect)硬件仿真器。
四、打开FlashBurn软件,重新对主界面中“Conversion Cmd”、“File to burn”、“Fbtc program file”的三个文件的路径重新设置,分别点击“Browser”按钮,找到事先创建的相应目录下的三个文件“.cmd”、“.hex”、“FBTC642.out”;然后保存关闭cdd文件。
五、点击 flashburn软件中的“Program”依次“download FBTC”(下载),“Erase Flash”(擦除),“show memory”(查看),“Program flash”(编程)。完毕后拔出仿真器,关电源重启即可成功实现烧写。
更多介绍请见:
http://blog.sina.com.cn/s/blog_48fc29af0100n4ye.html
烧写过程中遇到的问题
使用合众达电子SEED-VPM642例程中flashburn程序需要用到的FBTC文件会出现提示:
## 06/29/06 11:35:02
Attempt to create Code Composer Studio...
CCS created OK.
Either I cannot load FBTC, or the FBTC is not compatible with this version of FlashBurn.
Verify that the FBTC file is compatible with target and this version of FlashBurn.
这是由于烧写所需要的文件存放路径不同引起的,因为合众达的工程师在开发这个例程的时候保存配置文件是按照他自己的存放来保存的(F:改为你存放的例程文件夹目录地址),所以你需要修改。最方便的办法就是重新浏览各个配置文件的地址。然后利用flashburn打开CDD配置文件又会提示:
## 06/30/06 12:53:44
Attempt to create Code Composer Studio...
CCS created OK.
Req. FBTC Load.
FBTC Download OK.
Failed to get msg storage addr
Cannot load FBTC Program
这是由于该例程提供的FBTC642文件(大概22k)应该只能用于CCS3.0以下;而个人安装的是CCS3.3版本的,因此提示flashburn和FBTC不兼容。
解决方法有2种:重新安装低版本的CCS软件;使用兼容的FBTC。
个人经过认真的分析和查阅网上资料,用一下午的时间终于解决这个问题了,最后实现了利用flashburn烧写将工程的可执行文件生成的二进制文件.哈哈
转自:
http://61ic.com/code/redirect.php?fid=7&tid=36372&goto=nextoldset
============================第三篇=================================
[DSP技术]TI的C6000系列DSP,flashboot的实现
所谓的flashboot就是将用户主程序烧写至flash片中,然后加电开机实现主程序的自动载入和启动过程。关于程序对flash的烧写本文不做讨论,主要是熟悉flash芯片的一些参数、烧写规则,以及存储起始地址的分配等,编写简单的C程序即可实现,并且需要对cmd文件进行必要的修改,后面会发帖对cmd文件进行详细介绍。
先了解一下flash烧写的几种方法。一般来说有两种。1、自带软件烧写。2、利用仿真器,自编程序实现。本文主要讲述的是后一种方法,即编写烧写程序,实现主程序的烧写。
介绍一下自己的开发平台。一块开发板,一个USB仿真器,一台PC,软件是CCS2.2。
要实现flashboot还得了解系统的启动过程。对于C6000系列来说,开机加电以后,系统会自动加载flash的前1K空间的数据复制到内存的0x0开始的地址空间,并从0x0处开始运行程序。因此如果我们的主程序是大于1K的话,那么必须做二次引导才能实现载入。这里本文讨论二次引导。
要实现二次引导,必须得增加一个二次载入程序,该程序必须小于1K,用于对用户程序的载入,一般用汇编语言实现。源代码此处不做讨论,可以参考合众达的程序。主要实现几个功能:分别载入用户主程序的cinit段和text段,完成后跳转至用户主程序的入口地址开始执行。这里要注意的是用户主程序与二次载入程序在编译的时候是作为一个整体工程进行编译的,由cmd文件来控制两个程序分别占用的内存空间,然后通过烧写程序将这一个混合编译好的程序写入flash中,即可实现flash的自启动过程。
转自:
http://blog.163.com/davincci@126/blog/static/163996674201041394611849/
=======================转几篇百度文库的链接===============================
1)C6000DSP的引导方式和bootloader
http://wenku.baidu.com/view/c1551d104431b90d6c85c754.html?from=rec&pos=1&weight=8&lastweight=6&count=5
2)
C6000 DSP的flash自启动
http://wenku.baidu.com/view/5dd6cc62caaedd3383c4d354.html?from=rec&pos=0&weight=10&lastweight=6&count=5
3)基于CCS的DSP片外Flash直接烧写设计
http://wenku.baidu.com/view/f27e5667783e0912a2162a5e.html?from=related&hasrec=1
4)深入解析Flashburn和FBTC应用----博主推荐
http://wenku.baidu.com/view/f4c35b0abb68a98271fefa45.html?from=rec&pos=2&weight=5&lastweight=4&count=5
5)
C6000的片外Flash编程加载方法研究
http://wenku.baidu.com/view/186d00d084254b35eefd3461.html
6)TIDSPc6000的二次boot
http://wenku.baidu.com/view/bbd8832a3169a4517723a38c.html