RISC-V核及工具链整理
RISC-V开源核分为开源核(无外设)、SOC、FPGA、多核等多种框架。
开源核
SOC框架
平头哥无剑100
包括EDA仿真框架及FPGA框架
https://github.com/T-head-Semi/wujian100_open
pulpino
PULPino是一款开源单核微控制器系统,基于苏黎世联邦理工学院开发的32位RISC-V内核PULP开发的。Pulpino具有功耗低面积小的特点,可配置为使用RISCY或zero-riscy核心。苏黎世联邦理工学院有多个系列的设计框架,官网 https://pulp-platform.org/
pulpino链接:https://github.com/pulp-platform/pulpino
darkriscv
一个精简的riscv核,部分指令未实现,代码可读性较高。
https://github.com/darklife/darkriscv
picorv32环境
环境要求python3及iverilog,修改Makefile,
TOOLCHAIN_PREFIX=/usr/gccrv32/bin/riscv-nuclei-elf-
运行编译、仿真。
make test
如果需要关注执行过程可以:
make VERBOSE=1 test
生成log:
make VERBOSE=1 test | tee run.log
代码分析
picorv32.v 包含多个module
module picorv32 #(
module picorv32_regs (
module picorv32_pcpi_mul #(
module picorv32_pcpi_fast_mul #(
module picorv32_pcpi_div (
module picorv32_axi #(
module picorv32_axi_adapter (
module picorv32_wb #(
testbench.v有多个module
module testbench #(
module picorv32_wrapper #(
module axi4_memory #(
tb层次关系:
tb
picorv32_wrapper
axi4_memory
picorv32_axi
RISC-V核及工具链整理的更多相关文章
- 下一代工具链「GitHub 热点速览 v.22.43」
作为一个前端工程师,你这周被下一代的前端工具链 Turbo 刷屏了吗?不只是 Turbo 这个小工具,作为一个社区生产力工具,本周思否还开源了他们的问答系统 answer,能直接用上相关的技术标签也省 ...
- 使用GNU工具链进行嵌入式裸机开发
Embedded-Programming-with-the-GNU-Toolchain Vijay Kumar B. vijaykumar@bravegnu.org 翻译整理:thammer gith ...
- 如何快速复制BAT级的DevOps工具链
1.流水线改变世界 1910年,福特汽车在引入流水线生产之后,Model-T 的组装时间缩短了8倍,从12.5小时降到了1.5小时,这就是流水线改变世界的神话,造就了汽车上的国家! 那流水线怎么改变软 ...
- 从大厂DevOps工具链部署,看现代产品的生命周期管理
目录 1. 认识DevOps 1.1. DevOps工具链 1.2. CI 持续集成(Continuous Integration) 1.3. CD(持续交付 & 持续部署) 1.4. Agi ...
- CROSSTOOL-NG建立交叉编译工具链
CROSSTOOL-NG建立交叉编译工具链 因为考试和学习的原因我已经一段时间没有玩我的JZ2440,现在终于考完试了,我再次找出了我的JZ2440.我之前学习的时候使用的是韦东山老师提供的开发工具, ...
- Crosstool-ng制作交叉编译工具链
Crosstool-ng制作交叉编译工具链 交叉编译器可以用现成的,比如CodeSourcery制作的交叉编译器,也可以自己制作,一般是用kernel+gcc+glibc+binutils的源码包来编 ...
- 【原创】如何构建MIPS交叉编译工具链
运行环境:Ubuntu12.04PC提前安装库:flex,bison,libncureses5-dev,texinfo,这些库提前apt-get install.需要重新安装:gawk(先apt-ge ...
- ARM交叉编译工具链分类说明
转载整理自:http://www.veryarm.com/cross-tools 从授权上,ARM交叉编译工具链分为免费授权版和付费授权版. 免费版目前有三大主流工具商提供,第一是GNU(提供源码,自 ...
- Ubuntu16.04下的2009q3交叉编译工具链的搭建
环境搭建: 1.下载arm-2009q3.tar.bz2源码. 百度云链接 密码: rbui 2.将arm-2009q3.tar.bz2拷贝到/usr/local/arm(没有该目录就 ...
- 【嵌入式开发】 嵌入式开发工具简介 (裸板调试示例 | 交叉工具链 | Makefile | 链接器脚本 | eclipse JLink 调试环境)
作者 : 韩曙亮 博客地址 : http://blog.csdn.net/shulianghan/article/details/42239705 参考博客 : [嵌入式开发]嵌入式 开发环境 (远 ...
随机推荐
- 软件开发架构、构架趋势、OSI七层协议
目录 软件开发架构 构架总结 网络编程前戏 OSI七层协议简介 OSI七层协议值之物理连接层 OSI七层协议之数据链层 网络相关专业名词 OSI七层协议之网络层 IP协议: IP地址特征: IP地址分 ...
- 11、ON DUPLICATE KEY UPDATE实现插入更新操作
一.插入与更新操作: MySQL中,采用ON DUPLICATE KEY UPDATE语句对不存在的数据进行INSERT插入操作,对已存在的数据进行UPDATE更新操作: 总结: 1.ON DUPLI ...
- 1_ES6中拓展运算符的使用
一,拓展运算符(...) 拓展运算符(...):它会以参数序列的形式输出,更白话讲,比如数组,它可以把数组里面的东西一个一个的输出出来,例如 1 let arr1 =["你",&q ...
- Codeforces Round #842 (Div. 2) A-D
比赛链接 A 题意 给一个数 \(k\) 找到最大的 \(x\) ,满足 \(1 \leq x < k\) 且 \(x!+(x-1)!\) 是 \(k\) 的倍数. 题解 知识点:数学. 猜测 ...
- ZROI3
题解 ZROI3 T1 与<滑动窗口>类似,用单调队列维护 #include <queue> #include <cstdio> #include <cstr ...
- hashlib 模块 subprocess 模块 logging日志模块
今日内容 hashlib加密模块 1.何为加密 将明文数据处理成密文数据 让人看不懂 2.为什么加密 保证数据的安全 3.如何判断数据是否加密的 一串没有规律的字符串(数字.字母.符号) 4.密文的长 ...
- 前端向后端发送请求(FormData),你们不要吐槽我,有的时候我也不想写注释
JSON对象转成formData对象,formData对象转成JSON 在向后端请求时,如果上传的数据里存在file文件对象,需要用到表单提交,这时候我们需要将JSON对象,转成formData对象, ...
- Java入门与进阶P-4.5+P-4.6
逻辑类型 关系运算的结果是要给逻辑值,true或false.这个值可以保存在一个对应的逻辑类型变量中,这样的变量类型是boolean 布尔是为了纪念George Boole对逻辑计算得到贡献 bool ...
- JSONPath 处理特殊字符
JSONPath 处理特殊字符 先来看看jsonpath的基础 语法 $ 表示文档的根元素 @ 表示文档的当前元素 .node_name 或 ['node_name'] 匹配下级节点 [index] ...
- statefulset详解及为何结合headless service部署有状态应用
1.1 有状态应用管理statefulset StatefulSet(有状态集,缩写为sts)常用于部署有状态的且需要有序启动的应用程序,比如在进行SpringCloud项目容器化时,Eureka的部 ...