我们使用的是DDR200T板子,之前用FLASH下载过一个数据量很大的程序(可能有10Mbit),之后用DDR200T内置的e203内核,在FLASH/FLASHXIP模式下跑hello world程序就一直会有如下图所示的报错。查询了一下,MCASE=0x2似乎是指令未对齐。

我们怀疑是FLASH坏了,因此改了链接文件,在FLASHXIP模式下把程序下载到DDR后,可以正常运行程序。此外,使用ILM模式跑程序都可以正常工作。
有朋友可以帮忙看一下这种如何解决吗,每次上电都要把程序下载到DDR里面还是有些麻烦的,非常感谢。(我们使用的是windows版本的IDE)
log如下:


你是用的debug,不是run吧。
蜂鸟不支持flash里面debug的
胡总,我试了一下run,具体是run->run configurations->GDB OpenOCD Debugging,依然是同样的问题,会自动跳转到一个窗口,上面提示“Break at address "0x0" with no debug information available, or outside of program code.”
胡总,log也贴在文中了。这个log是对应我刚刚跑的,这一次没有出现MCAUSE=0x2的提示,可是串口这次没有打印出任何东西,而是会自动跳转到一个窗口,上面提示“Break at address "0x0" with no debug information available, or outside of program code.”
你是用的debug,不是run吧。
蜂鸟不支持flash里面debug的
把gdb的log发出来看看,需要里面带load字眼的
gdb的log就在console那个地方切换一下就行,现在你提供的是openocd的
胡总,log也贴在文中了。这个log是对应我刚刚跑的,这一次没有出现MCAUSE=0x2的提示,可是串口这次没有打印出任何东西,而是会自动跳转到一个窗口,上面提示“Break at address "0x0" with no debug information available, or outside of program code.”
评论我的图片发不出去,重新编辑了帖子,放在帖子里面了,您看下呢
把gdb的log发出来看看,需要里面带load字眼的
gdb的log就在console那个地方切换一下就行,现在你提供的是openocd的
那就还是看下下载的log吧,发下完整的log,后面那些register的打印信息没太大用,主要是前面的。现象上看感觉应该是程序没有下载进去
评论我的图片发不出去,重新编辑了帖子,放在帖子里面了,您看下呢
啊可能我没有表述清楚......我的意思就是用内置的mcs文件不能正常运行,会有MCAUSE=0x2这些报错信息,然后在异常函数里面结束,不会运行Helloworld。
然后我用自己的SoC下载进去,也是MCAUSE=0x2这个问题
那就还是看下下载的log吧,发下完整的log,后面那些register的打印信息没太大用,主要是前面的。现象上看感觉应该是程序没有下载进去
不是看log,是说能不能运行正常,运行正常,则表示板子没有问题,那就需要找下你们自己搭建的SoC的问题。找问题就不就是控制变量法嘛,把所有东西都揉在一起,怎么知道是哪个环节有问题
啊可能我没有表述清楚......我的意思就是用内置的mcs文件不能正常运行,会有MCAUSE=0x2这些报错信息,然后在异常函数里面结束,不会运行Helloworld。
然后我用自己的SoC下载进去,也是MCAUSE=0x2这个问题
我们之前一直是用的板子发过来的时候内置的mcs,应该和github里面的那个mcs文件是一样的,这个情况下我们用FLASHXIP模式,在terminal里面打印出来的和文中说的一模一样...log我们当时没有截图,不是很确定log是否完全一样
不是看log,是说能不能运行正常,运行正常,则表示板子没有问题,那就需要找下你们自己搭建的SoC的问题。找问题就不就是控制变量法嘛,把所有东西都揉在一起,怎么知道是哪个环节有问题
那就先烧写下e203_hbirdv2项目里自带的ddr200t的mcs文件,然后下载Helloworld程序到flash里面看看有没有什么问题
我们之前一直是用的板子发过来的时候内置的mcs,应该和github里面的那个mcs文件是一样的,这个情况下我们用FLASHXIP模式,在terminal里面打印出来的和文中说的一模一样...log我们当时没有截图,不是很确定log是否完全一样
胡总不好意思,刚刚板子不在手边。评论我的图片发不出去,就在原帖子上修改了,刚刚重跑了一下,程序是helloworld,硬件是我们的比赛作品,里面对于Demo SoC的存储总线,只加了0xa0000000后的一个地址扩展,其他和Demo完全一样
那就先烧写下e203_hbirdv2项目里自带的ddr200t的mcs文件,然后下载Helloworld程序到flash里面看看有没有什么问题
把完整的下载log信息发出来看看
胡总不好意思,刚刚板子不在手边。评论我的图片发不出去,就在原帖子上修改了,刚刚重跑了一下,程序是helloworld,硬件是我们的比赛作品,里面对于Demo SoC的存储总线,只加了0xa0000000后的一个地址扩展,其他和Demo完全一样