您尚未登录。

#1 Re: 全志 SOC » 为方便大家研究全志RISCV D1芯片,花了点时间编写了一个精简版的裸机程序,方便大家学习参考。 » 2022-07-07 17:25:12

我在测试过程中又遇到了一个问题。从用户手册上看出,0x20000是开发板SRAM的地址。如果修改链接脚本把初始位置放在这里,不初始化DDR然后用xfel把bin写入这里,是可以正常运行的。但是先初始化DDR就不行了,不知道为什么。

#2 Re: 全志 SOC » 为方便大家研究全志RISCV D1芯片,花了点时间编写了一个精简版的裸机程序,方便大家学习参考。 » 2022-06-16 17:50:45

@epsilon_f
好吧,我的问题解决了,来自问自答一下。DDR初始化的指令应该是xfel ddr d1或者xfel ddr f133,虽然我不是很明白为什么会有区别,是xfel对不同的开发板写了不同的机制吗?

初始化成功后是可以在0x40000000写文件的,串口也可以得到正确的输出。想问一下为什么1G DDR的开发板可以在0x40000000的位置写东西呢?是因为初始化的过程中引入了某种虚拟内存机制吗?

#3 Re: 全志 SOC » 为方便大家研究全志RISCV D1芯片,花了点时间编写了一个精简版的裸机程序,方便大家学习参考。 » 2022-06-16 17:27:00

我的开发板是1G DDR的版本,在执行xfel write 0x40000000 d1-baremetal.bin的时候会提示usb bulk send error,是因为超出内存上限了吗?我后来试了一下把地址改成0x20000000,没有错误提示,但串口接收不到信息。是代码里有些地方也要做相应的修改吗?

另外执行初始化DDR会显示
xfel ddr d1   - Initial ddr controller for D1
xfel ddr f133 - Initial ddr controller for F133
Failed to initial ddr controller
这个是什么问题呢?

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn