[求助] DM648二次boot问题

saintstar   2015-1-29 09:01 楼主
悬赏 5 分 芯积分未解决
碰到的问题和这个帖子有点类似。https://bbs.eeworld.com.cn/forum.php?mod=viewthread&tid=437457&highlight=%C7%EB%BD%CCTMS320VC5509A%B6%FE%B4%CEBoot%CE%CA%CC%E2


自己按照DM648评估板提供的二次boot程序进行了修改,用在自己的648板子上。连接仿真器时,二次boot程序可以把flash中的用户程序搬到运行空间里,且用户程序运行正常。当把二次boot程序烧写到flash第一扇区后,裸板运行时发现二次boot没有成功。
会是什么问题??  板子硬件是否存在问题呢??

回复评论 (6)

boot方式选择正确吗?

二次boot的这个boot是bootrom直接跳转的吧?烧入flash的是bin文件吗?bootrom不识别其他格式的文件的哦
点赞  2015-1-29 17:32
引用: lelee007 发表于 2015-1-29 17:32
boot方式选择正确吗?

二次boot的这个boot是bootrom直接跳转的吧?烧入flash的是bin文件吗?bootrom不识别其他格式的文件的哦
感谢回复! boot方式是按照datasheet选择的。复位之后,DM648从内部ROM空间运行程序RBL,地址为0x0080 0000.RBL程序读取EMIFA接口中地址为0XA000 0000的代码和数据,该地址为NOR flash的第一扇区起始地址,存放的是我的bootloader程序UBLUBL配置PSC,PLL,DDR,EMIF,MUX等,然后从flash其他扇区拷贝应用程序到运行地址空间。
UBL和自己的程序两个ais文件烧入flash,通过memory查看flash中的数据是正常的,此时直接通过仿真器运行UBL程序,可以成功把
自己的程序搬进来并正常运行。之后我断电,通过开关设置
bootmode方式,再上电运行,boot不成功,说明UBL程序没有跑起来。


点赞  2015-2-2 10:18
简单一点说,你这样的boot方式,应该是要把.out里边的text段直接放在nor flash的起始扇区

所以,你要check一下,你烧写的时候,是把.out镜像文件烧到flash中去了,还是把镜像文件中的各个segment烧到flash中去了,如果是直接把镜像文件烧到flash中去了,拿肯定没法直接启动。

镜像文件烧到flash中,用仿真器运行,仿真器是可以解析里边的各个segment,然后加载到运行地址,这个完全没有问题
点赞  2015-2-2 12:19
引用: lelee007 发表于 2015-2-2 12:19
简单一点说,你这样的boot方式,应该是要把.out里边的text段直接放在nor flash的起始扇区

所以,你要check一下,你烧写的时候,是把.out镜像文件烧到flash中去了,还是把镜像文件中的各个segment烧到flash中去了,如果是直接把镜像文件烧到flash中去了,拿肯定没法直接启动。

镜像文件烧到flash中,用仿真器运行,仿真器是可以解析里边的各个segment,然后加载到运行地址,这个完全没有问题
DM648下,flash加载需要将.out格式转换为.ais格式。也就是说,烧写的时候是把UBL程序以ais格式烧到flash中。上电启动时,固化在ROM中的程序自动从nor flash的第一扇区读取ais命令字,然后将UBL程序各个数据段复制到RAM的运行空间。自己的应用程序也是以ais格式烧进flash的,在UBL中通过解析ais命令字,将各个数据段复制到指定的地址。   按照你回复中说的,这种方式应该不会导致连接仿真器时可以加载成功,烧进flash后加载不成功吧?




点赞  2015-2-2 13:37
问题已经解决。UBL程序中的DDR参数没有按照预期写入到寄存器中,导致程序虽然加载进了地址空间,但没有运行。
点赞  2015-2-4 09:57
引用: saintstar 发表于 2015-2-4 09:57
问题已经解决。UBL程序中的DDR参数没有按照预期写入到寄存器中,导致程序虽然加载进了地址空间,但没有运行 ...

你好   能否请教您一个问题
是这样的,我在调试DM648的NOR Flash启动,遇到一些问题,看到您的帖子和我的情况有点类似。我遇到的情况具体是这样的,有时候NOR Flash启动会不成功,但是通电一段时间,再尝试NOR Flash启动就能成功,仿真器启动时是正常的。
我看到您的情况是UBL程序中的DDR参数没有写入到寄存器中,请问您是怎么发现的,NOR Flash启动是没法连接仿真器查看寄存器数据的啊。
点赞  2016-4-18 09:48
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复