RISC-V MCU中文社区

N101仿真运行C程序出错

发表于 开源蜂鸟E203 2020-11-18 10:23:14
12
692
0

公众号里面的微信不能添加了。。。。。能不能处理一下,帮我拉如讨论群,谢谢!

问题:芯来一分钱计划里面的N101SoC,然后将C程序编译好之后,仿真运行时出现错误,大家能不能看看时什么原因帮忙解决一下。。。。。,新手小白看不出什么出错了,谢谢大家

喜欢0
用户评论 (12)
  • 拾柒?

    2020-12-10 23:02:36 拾柒? 1#

    王志军

    加好友交流一下吧

    好的,谢谢

  • 王志军

    2020-12-10 23:01:53 王志军 2#

    拾柒?

    你是运行的n101里面的例子吗,比如说helloword,我运行它里面的例子,最后用verdi看波形,它会循环执行两条指令,陷入死循环,您之前有遇到这种现象吗

    加好友交流一下吧

  • 拾柒?

    2020-12-10 23:00:35 拾柒? 3#

    王志军

    我也是这样改的,然后可以运行了

    你是运行的n101里面的例子吗,比如说helloword,我运行它里面的例子,最后用verdi看波形,它会循环执行两条指令,陷入死循环,您之前有遇到这种现象吗

  • 王志军

    2020-12-10 22:58:13 王志军 4#

    拾柒?

    但是我将地址改为@00000000为起始地址之后就能够运行了,因为我看仿真测试汇编语句的时候,它的测试用例的.verilog地址就是@00000000

    同学,你把地址改了之后,可以正常运行吗,有进入一个死循环么

    我也是这样改的,然后可以运行了

  • 拾柒?

    2020-12-10 22:48:20 拾柒? 5#

    但是我将地址改为@00000000为起始地址之后就能够运行了,因为我看仿真测试汇编语句的时候,它的测试用例的.verilog地址就是@00000000

    同学,你把地址改了之后,可以正常运行吗,有进入一个死循环么

  • 拾柒?

    2020-12-10 16:38:39 拾柒? 6#

    我也遇到了同样的问题,有大佬解决了么,可以分享下解决办法么

  • XQS0927

    2020-11-23 10:42:50 XQS0927 7#

    N101我没用过,不清楚,如果我猜的没错的话,N101的ITCM被映射到地址0x00080000。hello_world.verilog文件开头的@00080000表示程序要放到起始地址0x00080000的空间内。readmem读到文件中的这个地址标记之后,就试图把文件中的内容放到ilm_mem这个reg阵列中0x80000地址开始的地方,我猜你的ILM空间应该不到512K,所以报告一个illegal entry。所以就初始化失败,所以ilm_mem中0地址开始的部分就是未初始化状态,所以读取到的就是xxxxxxxx,所以就跑不起来。

    以上是基于猜测的一些结论,我没用过N101,所以如果有不准确的地方,请大拿批评指正。;)

  • 王志军

    2020-11-21 20:08:53 王志军 8#

    XQS0927

    看截图中第一条waring信息,似乎是readmem语句没有读取到正确的文件,ILM中的指令存储器没有被初始化成功,以至于取指取到的都是X态数据,所以就运行不起来咯。

    这几天一直在找原因,很困惑,希望您能帮忙看看,谢谢!

  • 王志军

    2020-11-21 20:06:10 王志军 9#


  • 王志军

    2020-11-21 20:05:49 王志军 10#


  • 王志军

    2020-11-21 20:05:03 王志军 11#

    XQS0927

    看截图中第一条waring信息,似乎是readmem语句没有读取到正确的文件,ILM中的指令存储器没有被初始化成功,以至于取指取到的都是X态数据,所以就运行不起来咯。

    readmem函数需要读取hello_world.verilog文件,该文件的开头是@00080000;然后仿真的时候出现上面的错误ILM没有被初始化!! 但是我将地址改为@00000000为起始地址之后就能够运行了,因为我看仿真测试汇编语句的时候,它的测试用例的.verilog地址就是@00000000 请问这是什么原因呢?还有.verilog文件的开头@00080000地址代表着什么含义?readmem函数读到此代表什么?

  • XQS0927

    2020-11-18 10:30:32 XQS0927 12#

    看截图中第一条waring信息,似乎是readmem语句没有读取到正确的文件,ILM中的指令存储器没有被初始化成功,以至于取指取到的都是X态数据,所以就运行不起来咯。

关于作者
王志军

王志军 未通过人工认证

懒的都不写签名

问答
粉丝
2
关注
1
  • 早春营|RISC-V处理器嵌入式开发
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
早春营|RISC-V处理器嵌入式开发