打印
[MCU]

c6000特别是c64x和c621x,c671x的加载

[复制链接]
361|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2020-11-10 14:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
关于C6000DSP的ROM加载
1、TI的资料上的说明如下:
   位于CE1空间的ROM中的代码首先通过DMA/EDMA被搬入地址0处。加载过程在复位信号撤消之
后开始,此时CPU内部保持复位状态,由DMA/EDMA执行1个单帧的数据块传输。传输完成后,CPU
退出复位状态,开始执行地址0处的指令。对于C62x/C67x,用户可以指定外部加载ROM的存储
宽度,EMIF会自动将相邻的8bit/16bit数据合成为32bit的指令。对C620x/C670x,ROM中的程序
必须按little-endian的存储模式存储;对C621x/C671x,ROM中的程序存储格式应当与芯片的
endian模式设置一致。C64x只支持8bit的ROM加在,ROM中的程序存储格式需要与芯片的endian
模式设置一致。对于不同的芯片,加载过程还略有不同。
    ★ 对C620x/C670x,DMA从CE1空间中拷贝64KB数据到地址0处
    ★ 对C621x/C671x/C64x,EDMA从CE1空间(对C64x是EMIFB的CE1空间)中拷贝1KB数据到地
址0处

2、EEWORLD的疑难解答关于C6000加载描述如下:
   C6000的boot loader在reset时,判断外部BOOTMODE管脚,从而决定boot的方式为RAM加载、
ROM加载还是HPI加载,RAM可以为SDRAM、SBSRAM或SRAM,ROM可以为8位。C6000的boot的代码
长度较小,为1K,一般这1k的程序一个是用户自己的boot程序,用于再次boot应用程序到RAM
中。

3、TROY的解答(CMD 文件此处未列出):
   671x复位时,将0x90000000开始的1k内容(FLASH_BOOTCODE即.boot_load段)复制到DSP内
0x00000000处执行,该段程序将表中所指的各程序或数据段复制到SDRAM中,这时DRAM中的内容
与用仿真器加载未经修改cmd的程序时完全相同,所以最后要做的就是跳转到你的程序入口点
(c_int00)。这时boot程序已无任何用处。

   上面所说的C64x的加载过程无非是:Reset后DSP前面1K字节的空间放置了我的bootloader,
然后我的bootloader程序运行将余下的程序和初始化数据代码再load进来。
    这个过程不难理解,问题是:
    1)、bootloader程序怎么编写,以前没有编过,哪位高手有例子?
    2)、上面有提到“最后跳转到你的程序入口点(c_int00)。”,如果用汇编我见过如何
跳转,但是不过我的bootloader程序是用c语言编的该如何编写呢?是不是先设置PC(Program
Counter)再跳转呢?c_ini00是不是bootloader加载程序时存放代码的首地址?两个完全独立
的程序怎么跳转?嵌汇编“B .S1 LABEL\"不知可不可以,LABEL可以为c_int00的绝对地址吗?
如:“B .S1 0x8000000“. 或者是“BNOP .S2,B3,5“;其中B3中有c_int00的绝对地址。还有就
是bootloader程序和用户代码分别单独编译吗?链接(link)呢,是单独分开还是一块链接?
如果是单独分开的那么bootloader怎么能识别符号“c_int0”呢?
    3)、上面讲的大多是flash如果换成eprom,不知如何将booloader程序和我的用户代码同时
烧到同一片eprom中去呢?
    4)、还有一个问题,其实不是很重要,以前也有人问过但没有得到很好的回答,就是已开
始加载的1KB bootloader程序在完成它的搬运功能后“已无任何用处”,那问题是这1KB存储区
岂不浪费了,有没有什么好的方法可以“回收“这1KB存储区呢?

使用特权

评论回复

相关帖子

沙发
drer| | 2020-12-2 18:25 | 只看该作者
为什么要对rom进行加载呢

使用特权

评论回复
板凳
gwsan| | 2020-12-2 18:37 | 只看该作者
请问 troy代表的是什么啊

使用特权

评论回复
地板
kxsi| | 2020-12-2 18:40 | 只看该作者
bootloader程序官网上是不是有例程啊

使用特权

评论回复
5
nawu| | 2020-12-2 18:43 | 只看该作者
ROM加载还是HPI加载 有什么不一样的吗

使用特权

评论回复
6
qcliu| | 2020-12-2 18:45 | 只看该作者
所有程序入口点都是一样的吗

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2055

主题

7455

帖子

10

粉丝