RISC-V MCU中文社区

modelsim跑tb_top.v报fatal

发表于 开源蜂鸟E203 2020-06-20 13:08:08
13
8058
0

各位大佬,我用modelsim跑蜂鸟提供的tb_top.v,出现如下的错误:


防止图片挂掉,再贴一下文本

    run -all
# ITCM 0x00: 340510730001aa0d
# ITCM 0x01: ff85051300002517
# ITCM 0x02: 01f5222301e52023
# ITCM 0x03: 040f416334202f73
# ITCM 0x04: 4fa507ff02634fa1
# ITCM 0x05: 0c634fad05ff0f63
# ITCM 0x06: 0bff05634f8505ff
# ITCM 0x07: 4f9d0dff00634f95
# ITCM 0x16: 2f03f52505130000
# ITCM 0x20: 2f8300052f03f065
# !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# ** Fatal:
#  Error: Oops, detected a X value!!! This should never happen.
#    Time: 17410 ns Started: 17410 ns  Scope: tb_top.u_e203_soc_top.u_e203_subsys_top.u_e203_subsys_main.u_e203_cpu_top.u_e203_cpu.u_e203_dtcm_ctrl.u_sram_icb_ctrl.u_sirv_1cyc_sram_ctrl.u_e1_stage.dp_gt_0.vld_dfflr.sirv_gnrl_xchecker.CHECK_THE_X_VALUE File: D:/item/modelsim/e203/sirv_gnrl_xchecker.sv Line: 44
# ** Note: $finish    : D:/item/modelsim/e203/sirv_gnrl_xchecker.sv(44)
#    Time: 17410 ns  Iteration: 1  Instance: /tb_top/u_e203_soc_top/u_e203_subsys_top/u_e203_subsys_main/u_e203_cpu_top/u_e203_cpu/u_e203_dtcm_ctrl/u_sram_icb_ctrl/u_sirv_1cyc_sram_ctrl/u_e1_stage/dp_gt_0/vld_dfflr/sirv_gnrl_xchecker/CHECK_THE_X_VALUE


run之前已经将编译报错的文件类型改为.sv,波形显示测试文件"rv32ui-p-add.verilog"已经完整读入。不明白自带的tb为什么会有x态fatal呢,是我的操作有问题嘛?请各位大佬指正呀!

喜欢0
用户评论 (13)
  • nn爱学习

    2023-12-05 15:33:10 nn爱学习 1#

    请问博主解决了吗

  • nn爱学习

    2023-12-05 13:34:32 nn爱学习 2#

    xts

    我最近也碰到了跟题主一样的问题,题主你的问题解决了吗?

    我也遇到了,请问解决了吗

  • xts

    2020-12-12 22:00:52 xts 3#

    我最近也碰到了跟题主一样的问题,题主你的问题解决了吗?

  • ZhB_

    2020-06-28 15:06:43 ZhB_ 4#

    XQS0927

    有点尴尬,这触及我的知识盲区了~我一直都是用的eclipse+riscv toolchain+openocd的开发模式,没整过蜂鸟自带的编译工具。不过我印象中E203应该不支持RV32FD,你这整上rv32imafd可能会有问题。

    好吧o(╥﹏╥)o,谢谢您

  • XQS0927

    2020-06-28 13:43:25 XQS0927 5#

    ZhB_

    难受呀,老哥~ 还有个问题,请问蜂鸟自带的编译工具能不使用压缩指令嘛?我试着改了下编译选项,将-march=rv32imafdc的c去掉了,但是报 target emulation `elf64-littleriscv' does not match `elf32-littleriscv'的错误~ 我新发个问题,截图上去

    有点尴尬,这触及我的知识盲区了~我一直都是用的eclipse+riscv toolchain+openocd的开发模式,没整过蜂鸟自带的编译工具。不过我印象中E203应该不支持RV32FD,你这整上rv32imafd可能会有问题。

  • ZhB_

    2020-06-24 19:30:35 ZhB_ 6#

    XQS0927

    开源的东西嘛,都这样,看上去很美好,实际用起来各种问题防不胜防~

    难受呀,老哥~ 还有个问题,请问蜂鸟自带的编译工具能不使用压缩指令嘛?我试着改了下编译选项,将-march=rv32imafdc的c去掉了,但是报 target emulation `elf64-littleriscv' does not match `elf32-littleriscv'的错误~ 我新发个问题,截图上去

  • XQS0927

    2020-06-24 13:33:46 XQS0927 7#

    ZhB_

    嗯嗯,谢谢,很纳闷为什么原生的tb会有这么多问题。。^_^

    开源的东西嘛,都这样,看上去很美好,实际用起来各种问题防不胜防~

  • ZhB_

    2020-06-23 18:04:57 ZhB_ 8#

    XQS0927

    那就要看一下复位信号给的对不对,时钟有没有跑起来,如果时钟都没跑起来的话,那有可能卡在某个初始化的地方了。 如果时钟也跑起来了,那就看一下有没有取到正确的指令。

    嗯嗯,谢谢,很纳闷为什么原生的tb会有这么多问题。。^_^

  • XQS0927

    2020-06-23 18:02:17 XQS0927 9#

    ZhB_

    没有哦,pc都不带变的

    那就要看一下复位信号给的对不对,时钟有没有跑起来,如果时钟都没跑起来的话,那有可能卡在某个初始化的地方了。 如果时钟也跑起来了,那就看一下有没有取到正确的指令。

  • ZhB_

    2020-06-23 17:05:00 ZhB_ 10#

    XQS0927

    看看仿真输出波形,看看跑起来没有

    没有哦,pc都不带变的

  • XQS0927

    2020-06-23 13:33:50 XQS0927 11#

    ZhB_

    谢谢,我把报fatal的两个文件中的fatal都注掉了,然后跑的时候就一直不停了,也没有东西打印出来;另外追信号发现是外部的 `ifdef E203_HAS_ITCM_EXTITF //{ .ext2itcm_icb_cmd_valid (1'b0), .ext2itcm_icb_cmd_ready (), .ext2itcm_icb_cmd_addr (`E203_ITCM_ADDR_WIDTH'b0 ), .ext2itcm_icb_cmd_read (1'b0 ), .ext2itcm_icb_cmd_wdata (32'b0), .ext2itcm_icb_cmd_wmask (4'b0), .ext2itcm_icb_rsp_valid (), .ext2itcm_icb_rsp_ready (1'b0), .ext2itcm_icb_rsp_err (), .ext2itcm_icb_rsp_rdata (), `endif//} `ifdef E203_HAS_DTCM_EXTITF //{ .ext2dtcm_icb_cmd_valid (1'b0), .ext2dtcm_icb_cmd_ready (), .ext2dtcm_icb_cmd_addr (`E203_DTCM_ADDR_WIDTH'b0 ), .ext2dtcm_icb_cmd_read (1'b0 ), .ext2dtcm_icb_cmd_wdata (32'b0), .ext2dtcm_icb_cmd_wmask (4'b0), .ext2dtcm_icb_rsp_valid (), .ext2dtcm_icb_rsp_ready (1'b0), .ext2dtcm_icb_rsp_err (), .ext2dtcm_icb_rsp_rdata (), `endif//} 这个地方似乎有问题,但是不知道怎么办哦

    看看仿真输出波形,看看跑起来没有

  • ZhB_

    2020-06-23 11:35:45 ZhB_ 12#

    XQS0927

    用最简单粗暴的法子,把这个xchecker去掉不就行咯~

    不过本着科学严谨的态度,可以看一下这个X态是从哪儿来的。报告的消息里面已经明确指出了出X态的信号是哪个,就是/tb_top/u_e203_soc_top/u_e203_subsys_top/u_e203_subsys_main/u_e203_cpu_top/u_e203_cpu/u_e203_dtcm_ctrl/u_sram_icb_ctrl/u_sirv_1cyc_sram_ctrl/u_e1_stage/dp_gt_0/vld_dfflr/sirv_gnrl_xchecker,看了一下是这个模块里面的lden信号,向上追溯一下看看吧。

    谢谢,我把报fatal的两个文件中的fatal都注掉了,然后跑的时候就一直不停了,也没有东西打印出来;另外追信号发现是外部的 `ifdef E203_HAS_ITCM_EXTITF //{ .ext2itcm_icb_cmd_valid (1'b0), .ext2itcm_icb_cmd_ready (), .ext2itcm_icb_cmd_addr (`E203_ITCM_ADDR_WIDTH'b0 ), .ext2itcm_icb_cmd_read (1'b0 ), .ext2itcm_icb_cmd_wdata (32'b0), .ext2itcm_icb_cmd_wmask (4'b0), .ext2itcm_icb_rsp_valid (), .ext2itcm_icb_rsp_ready (1'b0), .ext2itcm_icb_rsp_err (), .ext2itcm_icb_rsp_rdata (), `endif//} `ifdef E203_HAS_DTCM_EXTITF //{ .ext2dtcm_icb_cmd_valid (1'b0), .ext2dtcm_icb_cmd_ready (), .ext2dtcm_icb_cmd_addr (`E203_DTCM_ADDR_WIDTH'b0 ), .ext2dtcm_icb_cmd_read (1'b0 ), .ext2dtcm_icb_cmd_wdata (32'b0), .ext2dtcm_icb_cmd_wmask (4'b0), .ext2dtcm_icb_rsp_valid (), .ext2dtcm_icb_rsp_ready (1'b0), .ext2dtcm_icb_rsp_err (), .ext2dtcm_icb_rsp_rdata (), `endif//} 这个地方似乎有问题,但是不知道怎么办哦

  • XQS0927

    2020-06-23 11:27:52 XQS0927 13#

    用最简单粗暴的法子,把这个xchecker去掉不就行咯~

    不过本着科学严谨的态度,可以看一下这个X态是从哪儿来的。报告的消息里面已经明确指出了出X态的信号是哪个,就是/tb_top/u_e203_soc_top/u_e203_subsys_top/u_e203_subsys_main/u_e203_cpu_top/u_e203_cpu/u_e203_dtcm_ctrl/u_sram_icb_ctrl/u_sirv_1cyc_sram_ctrl/u_e1_stage/dp_gt_0/vld_dfflr/sirv_gnrl_xchecker,看了一下是这个模块里面的lden信号,向上追溯一下看看吧。

ZhB_

ZhB_ 实名认证

懒的都不写签名

积分
问答
粉丝
关注
  • RV-STAR 开发板
  • RISC-V处理器设计系列课程
  • 培养RISC-V大学土壤 共建RISC-V教育生态
RV-STAR 开发板