tinyriscv的整体框架如下: tinyriscv目前外挂了6个外设,每个外设的空间大小为256MB,地址空间分配如下图所示: 3.CoreMark测试 目前tinyriscv在Xilinx Artix-7 35T FPGA平台(时钟50MHz)上运行CoreMark跑分程序的结果如下图所示: 可知,tinyriscv的跑分成绩为2.4。 选了几款其他MCU的跑分结果如下图所示: 更多MCU的跑...
本文是对开源项目tinyriscv源码的学习注解,通过该项目,可以较好地学习RISC-V。 附上项目链接: tinyriscv: 一个从零开始写的极简、非常易懂的RISC-V处理器核。 (gitee.com) 从零开始写RISC-V处理器 | liangkangnan的博客 (gitee.io) 1.总体框架 原文给出了这样一张SoC框架图。可以看出内核采用三级流水线设计。
学习tinyriscv(1):安装tinyriscv的工具链 因为毕设是CPU的低功耗设计,所以开始看cpu,打算还是先从这个tinyriscv学起,昨天把环境下好了,第一步是用git去clone代码,这个首先要下载git,然后在目标文件夹鼠标右键,选择“open git bush here”,再输入项目的url,就可以了。方法不难。b站有详细教程 接下来是安装工具,...
一、下载源码 tinyriscv 官方库链接:https://gitee.com/liangkangnan/tinyriscv 这里我选择的是 master v2.4 版本: https://gitee.com/liangkangnan/tinyriscv/tree/v2.4/ 用Git 克隆到本地。(使用的终端软件是 Cygwin,安装教程:https://blog.csdn.net/qq_44447544/article/details/123246995?spm=1001.2014....
TencentOS Tiny RISC-V端云AIoT室内环境控制系统解决方案介绍.pptx 功能演示视频:视频太大,这里发布不上,可直接看微云 视频链接:https://share.weiyun.com/9dPyLfok 视频中LCD字迹显示模糊,补充几张图片 常态下显示(以温度为例):环境参数名称(Temperature)、测量数值(27)、调节设备状态(ON)) ...
TencentOS Tiny RISC-V端云AIoT室内环境控制系统解决方案介绍.pptx 功能演示视频:视频太大,这里发布不上,可直接看微云 视频链接:https://share.weiyun.com/9dPyLfok 视频中LCD字迹显示模糊,补充几张图片 常态下显示(以温度为例):环境参数名称(Temperature)、测量数值(27)、调节设备状态(ON)) ...
本项目实现的是一个单核32位的小型RISC-V处理器核(tinyriscv),采用verilog语言编写。设计目标是对标ARM Cortex-M3系列处理器。tinyriscv有以下特点: 支持RV32IM指令集,通过RISC-V指令兼容性测试; 采用三级流水线,即取指,译码,执行; 可以运行C语言程序; ...
在Vivado平台上,佐大用的是tinyriscv的master分支。由于master分支默认的clk主频是50M HZ,而Nexys4-DDR的clk时钟是100M HZ,所以需使用PLL分频到50M HZ。在约束引脚的时,佐大把UART指到了开发板USB UART的引脚,就在这里踩坑了。使用tinyriscv_fw_downloader.py上传ROM始终失败,折腾半天发现是Nexys4-DDR USB UAR...
在Quartus平台上,tinyriscv的master分支有如下问题:1.Quartus不允许申明特别大容量的reg会报错。2.佐大尝试增加bram功能失败了。所以佐大最终用的是tinyriscv的bram分支。由于DE1性能太弱了clk跑不了50M HZ,所以clk用的是24M HZ,同时需修改rtl/core/define.v中的CPU_CLOCK_HZ 为24000000。
点击Add Files按钮,选择tinyriscv项目里的FPGA/constrs/tinyriscv.xdc文件,如下图所示: 勾选上Copy constraints files into project,然后点击Finish按钮。 注意:如果你的开发板和我的不一样,则需要将约束文件里的引脚配置改成你的开发板上对应的引脚。 至此,约束文件添加完成。 2.4生成Bitstream文件 点击下图所示的...