QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1781|回复: 1

感谢skyeye,让我的ARM IP核跑通uclinux!

[复制链接]
发表于 2009-6-10 19:20:28 | 显示全部楼层 |阅读模式
我最近一直在做一个开源的ARM7 IP核,支持ARM7的指令和中断。作为单片机已经没啥问题了,因为我已经下载入FPGA验证过。但是朋友对我说,还是不能放心,一定要跑通linux这样的大型程序才算通过。他向我推荐skyeye。

于是我在ubuntu上下载了skyeye,又从网上找了别人编译好的uclinux源码和配套的ROMFS。在仿真器这边,写好了testbench,把uclinux加载入0x01000000开始的地址处,把romfs加载到0x01400000开始的地址。然后监控uclinux访问以0xfff开头的寄存器。发现它依次访问了chip id,启动了一个定时器1,然后过一段时间就是一个序号为5的irq中断。

我把skyeye打印出来的寄存器值和testbench打印出来的一对比,发现skyeye有些不对的地方,同硬件不完全一样。比如cmp指令,必然要置位cpsr的,但是skyeye有时候并不置位。于是我只好放弃了逐个寄存器的对比,只对比R15的变化。只要R15一致,两者应该差不多了。

  调试的过程很艰苦,特别是打印出来1G的调试信息,过一段时间就是一个中断,我得重启modelsim。不过总算调试成功了,在modelsim里打印出前面的log信息了。

  发贴庆祝一下。配上图吧。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2009-6-11 16:52:58 | 显示全部楼层
恭喜
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-22 10:21 , Processed in 0.068691 second(s), 17 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表