240 发简信
IP属地:安徽
  • 12. 运行 FreeRTOS

    1. build FreeRTOS for Linux native 参照 FreeRTOS-LTS/FreeRTOS/FreeRTOS-Kernel/examples/cm...

  • 11. 添加 timer 并处理 timer 中断

    1. 概述 Core-Local Interruptor (CLINT) 中包含了一个 timer,这次主要实现 CLINT 中的 timer 以及 core 对 timer...

  • 10. 运行 RISC-V 官方的测试(下)

    3 使用 RISCOf 对 RRV-ISS 进行 RISC-V 架构测试 3.1 使用 makefile 来替代命令行繁琐的命令 3.2 修改 riscof setup 生成...

  • 9. 运行 RISC-V 官方的测试(上)

    0. 概述 0.1 RISC-V 官方的测试分两个层级 Unit tests for RISC-V processors: riscv-tests[https://githu...

  • 8. 执行一段程序后正常退出 (下)

    1 概述 到目前为止实现的主要功能:实现全部目标指令集 (RV32I, Zicsr)实现 load ELF 文件的功能 这次要能成功运行计算 MD5 的程序. 2 启动代码&...

  • 7. 执行一段程序后正常退出 (上)

    1 概述 实现全部目标指令集 (RV32I, Zicsr):使用从 riscv-opcodes 生成的文件为模板,编写代码。从 riscv-opcodes 生成的文件放在 r...

  • 6. 执行 ecall、ebreak 和 csr 指令

    1 概述 经过 add beq jal jalr load & store 指令的测试,模拟器主要流程都已打通。 ecall 是对流程和框架影响比较大的最后一部功能。 1.1...

  • 5. 执行 load 和 store 指令

    1 概述 经过 add beq jal jalr 指令的测试,模拟器主要流程都已打通,load & store 指令也容易实现。 这一次的重点是完善指令解析部分代码——关注易...

  • 4. 执行 branch 和 jump & link 指令

    1 概述 为了测试方便:core 支持通过 ABI name of register 访问寄存器需要添加 addi 指令load bin file 定义完整的 RISBIJ ...

  • 3. 执行一条 add 指令

    1 模块调整 通过成功执行一条 add 指令,可以把 core 的核心流程打通,这是架构设计实现的延伸。主要的模块变动如下: 增加 decode mod 增加 execute...

  • 2. 设计模拟器架构

    1 运行 FreeRTOS 的最低硬件要求 一个 RISC-V core 加片上存储器,以及片上外设 uart,已经具备了计算机的5大组成部分——运算器、控制器、存储器、输入...

  • 1. 准备开发环境

    1 安装Rust开发环境 开发机器使用的是 Ubuntu 24.04 操作系统。 1.1 分三步 设置 rustup 镜像export RUSTUP_DIST_SERVER=...

  • 0. 概述

    1 目标 用 Rust 编写一个 RISC-V 的功能精确 ISS,这个 ISS 要能够运行 FreeRTOS。 2 项目名称 RRV-ISS (Rust RISC-V In...

  • Github进行fork后的仓库与原仓库同步

    文/ZYRzyr原文链接:http://www.jianshu.com/p/57f05574a115 在Github上fork一个仓库到自己的Github上,过一段时间之后,...