二、创建 Vivado 工程 打开tinyriscv 文件夹,可以看到有很多目录: 这里rtl 为tinyriscv Verilog源码。 用Vivado 创建工程,并把源码和约束添加进去,具体步骤可见 tinyriscv\fpga\README.md 文件,写的很详细。 三、修改约束文件 所谓的移植其实就是根据自己所用的板卡编写正确的管脚约束文件,并且根据需求修改源码。
在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。 在申明RAM IP核时,...
tinyriscv就是开源的版本之一,并且作者编写的文档也很全,非常适合新手用来练手和学习RISC-V。 软硬件说明: 本文记录了佐大在移植tinyriscv过程中遇到的一些问题,希望这篇文章能帮助到大家。佐大用的开发版是Terasic DE1、Digilent Nexys4-DDR,对应软件版本是Quartus II 13.0、Vivado 2018.3。 Vivado: 在Vivado平台...
可以看到 jtag 调试模块更新了,将tap、dtm、dmi以及dm模块都独立实现了。 二、移植到Aritx-7 开发板;正点原子达芬奇FPGA开发板(v1),芯片型号为 xc7a35tfgg484-1 调试器:FT4232H 2.1 添加 mmcm IP 在tinyriscv_soc_top.sv 顶层模块中例化了 mmcm IP,所以要进行添加,点击左侧导航栏中的 IP Catalog,搜索 ...
移植Tiny RISC-V 到EQ6HL45 平台 接下来进入到正题环节,本节中我将详细介绍移植tiny risc-v 的过程, 整个过程都是在WIN10系统里完成。 1 准备工作 clone 代码 使用git clone命令下载,不要使用zip方式下载,否则有些文件会有格式问题。 git clone https://gitee.com/liangkangnan/tinyriscv.git ...
作为开源指令集,有着与Android一样的前景,不少大佬投身RISCV的社区建设,这里借鉴其中一位大佬liangkangnan的作品,进行移植。大佬的教程给出了比较完整的步骤,但还是有些细节不太清楚。这里我就移植过程中出现的一些问题,一并记录,并做分享。 参考链接:tinyriscv源代码 ...
然后我又安装了安路的开发软件TD, 导入tinyriscv的RTL文件夹源码,综合时发现TD不支持作者原来的gen_ram方法实现的Bram例化,改用TD软件提供的BRAM IP核的方式例化。其中地址总线的例化,需要根据安路EG4的用户手册做相应的配置,才能实现8bit、16bit以及32bit数据的读写。修改后综合,LE,LUT,reg资源都能满足移植需求,...
Tiny RISC-V移植中的问题 前面提到tiny Risc-V里面的ROM/RAM是用LUT构成的,好处是代码在不同的平台可以通用,不好的地方是消耗过多的LUT资源不适合小容量FPGA,在这里因为试用的FPGA容量不大,在前面的结束里我先把深度改小一点。当然整个对后面运行C程序肯定会有影响,目前256字节的存储肯定肯定无法加载C编译文件。
移植 新建一个基础项目 将TinyUSB文件夹中的src文件夹全部复制到项目中 将hw-->bsp-->ch32v307文件夹复制到项目中 将examples-->device-->hid_composite文件夹中的所有文件,复制到项目中User文件夹中(可提前删除User文件夹中的所有文件,只保留我们复制的文件) 删除Debug文件夹,我的项目结构如下 将相关文件夹加...
打开tinyriscv 文件夹,可以看到有很多目录: 这里rtl 为tinyriscv Verilog源码。 用Vivado 创建工程,并把源码和约束添加进去,具体步骤可见 tinyriscv\fpga\README.md 文件,写的很详细。 三、修改约束文件 所谓的移植其实就是根据自己所用的板卡编写正确的管脚约束文件,并且根据需求修改源码。