关于平头哥 wujian100 中 case 仿真

wujian100 ⋅ 于 2020-04-23 14:59:35 ⋅ 最后回复由 小强 2020-05-07 13:28:18 ⋅ 375 阅读

wujian100开源文档中的case中的仿真是对soc个对应模块得功能性仿真吗?如果case中的波形正确是否说明该soc相应的模块设计正确?

成为第一个点赞的人吧 :bowtie:
回复数量: 10
  • 小强
    2020-04-23 15:27:37

    是的,case 中的仿真对应 soc 的每个模块,如果仿真波形正确基本上说明该模块功能 ok,如果你还不放心的话,可以自己修改代码再仿真下试试。

  • 2020-04-23 19:41:35

    那请问一下case里的addr_map、had_soc是对什么的仿真呢?

  • 2020-04-23 19:43:39

    @小强 那请问一下case里的addr_map、had_soc是对什么的仿真呢?我对pwm模块进行了仿真,想观看波形,应该看哪些管脚呢??谢谢

  • 小强
    2020-04-23 20:28:36

    addr_map 应该是测试总线上对应的地址映射是否正确,had_soc 模块具体是啥我也不太清楚,从测试文件来看,我觉得应该是跟他们的 CK-Link 相关的调试模块的测试。pwm 模块的波形,你先看看 case 的代码配置了哪些个通道,在 x_pdu_top.x_sub_apb0_top.x_pwm_sec_top 模块里选择相应的信号查看。

  • 2020-04-23 21:49:58

    @小强 好的 谢谢

  • 2020-05-01 15:09:39

    @小强 我仿真了uart的波形
    为什么接收端波形是这样的?60持续的时间很长,61、62、63的时间很短?,是管脚找错了吗?
    file

  • 2020-05-01 15:41:48

    @小强 我还想问一下运行case代码的原理是什么?我通过工具链编译了C文件生成可执行文件,为什么就会产生波形,软件是如何在硬件上运行仿真的呢?
    通过SDK让helloworld在fpga上运行时他的主函数只有printf ,那他的串口是在哪里配置的呢?

  • 小强
    2020-05-02 14:35:59

    @飞 你好,我不知道你执行 run_case 脚本的时候,有没有去看一下这个脚本具体写了些什么?如果你没看的话,建议你看一下。

    关于运行 case 的原理

    1、在你运行 run_case 脚本之后,会在 workdir 目录下生成对应的工程,包括 makefile、linker、启动文件、库函数等一些源码。但不是全部,具体根据 Makefile 的定义。

    2、接下来通过执行 makefile 脚本,使用对应的工具链,编译生成可执行文件,包括 elf、bin等。makefile 最后还会输出 .pat 文件,即用于仿真的二进制指令。

    3、启动与你配置的相对应的仿真工具进行仿真。比如 iverilog,启动 iverilog 后会读取你所有的 rtl 代码,分析编译,其中也包括把你上一步生成的 .pat 文件初始化到对应 mem (rom) 。仿真启动后会到 mem 中取指,然后一步步执行。

    关于串口的配置

    1、代码不仅仅只有主函数,一个芯片从启动到 main 函数之前,还有很多步骤要做。这些工作很多时候都是用汇编语言来完成的。所以你也应该注意到还有 .S 文件的存在,一般是 statup.S 文件。而 wujian 的一些系统初始化和 Broad 初始化相关的操作就是在这里面完成的,包括串口的配置。

    2、虽然主函数是使用 printf 来完成字符串输出的,但是 printf 函数的底层也是有做重定向到串口了,所以使用 printf 函数就能通过串口输出相应的内容。

  • 2020-05-05 22:17:34

    @小强
    我仿真了uart的波形
    为什么接收端波形是这样的?60持续的时间很长,61、62、63的时间很短?,是管脚找错了吗
    file

  • 小强
    2020-05-07 13:28:18

    @飞 我也是不清楚,你在检查检查吧

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,使用方法请见 Emoji 自动补全来咯,可用的 Emoji 请见 :metal: :point_right: Emoji 列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter