Renode
文章平均质量分 84
牧羊女说
有马甲线的女程序猿、攻城狮、加班狗~
展开
-
Renode中Logger的使用
因为需要分析基于RISC-V平台的指令执行情况,开启了Renode仿真器的dump功能和logger功能。Dump功能可以帮助我们借助辅助工具对指令执行情况和memory访问情况等进行可视化图形展示,具体在前面的文章已经介绍过:Renode使用:Metrics analyzer_牧羊女-CSDN博客Dump功能虽然可以让我们直观地看到指令执行的总体趋势,但是画面上并不提供微观细节(暂时没有找到解析Dump file的工具),想要看到平台内部的执行细节,可以使用log功能。1. 设置log level原创 2021-10-29 18:34:29 · 278 阅读 · 0 评论 -
Renode使用:Metrics analyzer
Renode可以在仿真过程中收集执行数据,并对收集到的执行数据进行分析,还可以借助辅助工具将分析结果绘制成图形进行可视化展示。目前可以分析的数据包括:指令执行情况、内存读写情况、外设访问情况、以及例外情况。通过以下语句可在Renode中打开数据dump:machine EnableProfiler "path_to_dump_file"其中,"path_to_dump_file"为要保存dump文件的文件名(含路径)。例如,我在实际使用中的命令行如下:machine EnableProf原创 2021-10-28 18:24:34 · 381 阅读 · 0 评论 -
Renode应用:在RISC-V核上运行FreeRTOS
本篇记录通过Renode在RISC-V核上运行FreeRTOS demo的情况。本来不准备写这一篇,但是发现近期工作学习密度实在太大,上周工作的中间结果这周竟然完全想不起来了,不得不又花了一些时间从头摸索着重新配置了一遍,好记性是没指望了,只能依赖烂笔头。该例中使用的是MiFive M2GL025开发板(当然,是通过Renode模拟的),集成开发环境是SoftConsole,具体可以参考:RTOS Demo for RISC-V MiFive M2GL025 / Renode - FreeRTOS一原创 2021-10-26 11:34:26 · 5542 阅读 · 0 评论 -
Renode:第一个RISC-V裸机demo
在Renode上跑通了一个裸机(baremetal)demo,记录一下过程,为后面的进一步开发做铺垫。该Demo来自国外一个大神的代码仓库:https://github.com/y2kbugger/baremetal-riscv-renode有兴趣的同学可以自行下载。1. 准备工作1.1 Renode安装由于我们使用Renode作为仿真平台,因此首先需要完成Renode的安装。以上代码仓库中包含了所有的工程组件,包括Renode源码、RISC-V工具链源码,以及编译所需组件的Makefi原创 2021-10-12 17:59:51 · 1181 阅读 · 0 评论 -
Renode学习:平台描述文件REPL
Renode往期文章:1.初识Renode2.Renode学习:Working with machines本篇介绍平台描述文件的写法。Renode使用基于文本的格式来描述平台,平台描述文件一般使用.repl的后缀,文件内格式大体如下(该文件为renode工程自带的leon3.repl):rom: Memory.MappedMemory @ sysbus 0x0 size: 0x40000000ddr: Memory.MappedMemory @ sysbus 0x400..原创 2021-09-26 11:59:35 · 637 阅读 · 0 评论 -
Renode学习:Working with machines
上一篇文章,介绍了Renode的安装:初识Renode。这一篇,继续探索Renode的用法。Renode可以很容易地做跨机器仿真,本篇介绍Renode做机器仿真的基础操作。1. 创建机器在monitor中执行mach create,将会创建一个新的machine,默认情况下,系统会自动分配machine的index,从0开始计数,分别命名为“machine-0”、“machine-1”等,并且会自动将monitor的上下文切换到新建的machine。我们也可以通过命令指定machine.原创 2021-09-23 20:40:34 · 565 阅读 · 0 评论 -
初识Renode
1. 简介Renode是Antmicro公司发布的一个开发框架,使得开发人员通过模拟物理硬件系统(包括CPU、外围设备、传感器、环境以及节点之间的有线或无线介质),加速物联网和嵌入式系统的开发。它可在PC上通过软件对嵌入式设备进行模拟,可模拟Cortex-M、Cortex-A、RISC-V和其他CPU,并可模拟外设以及各种通信总线和接口。其指令模拟器使用C语言开发,外设模拟器使用C#语言开发,测试及输出层面的内容则用python编写。Renode官网:Renodehttps://renode.io/原创 2021-09-17 14:25:52 · 2852 阅读 · 0 评论