![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
RISC-V
文章平均质量分 85
jack_201316888
这个作者很懒,什么都没留下…
展开
-
NOC 总线
弄清了访存的路径,可能就会想到一个问题:处理器发出去的读写请求到底是个什么东西?要想搞清楚它,就需要引入总线。下文我拿ARM的AXI/ACE总线协议以及由它衍生的总线结构来展开讨论。这两个协议广泛用于主流的手机芯片上,是第四代AMBA(Advanced Microcontroller Bus Architecture)标准。简单的总线就是一些地址线和数据线,再加一个仲裁器,就可以把处理器发过来的读写请求送到内存或者外设,再返回数据。在这个过程中,我们需要一个主设备,一个从设备,所有的传输都是主设备发起,转载 2022-03-12 11:00:36 · 3532 阅读 · 0 评论 -
riscv32 qemu rt-thread
riscv32 qemu rt-thread的最小移植实现(1) - bigmagic的个人空间 - OSCHINA - 中文开源技术交流社区riscv32 qemu rt-thread的最小移植实现(1)2021-02-08阅读 3070riscv32 qemu rt-thread的最小移植实现(1)1.说明 2.工具准备 2.1 安装riscv32交叉编译工具链 2.2 安装qemu 2.3 获取rt-thread的代码 3.移植整体思路规划 4.riscv32工程模转载 2021-11-10 15:11:55 · 473 阅读 · 0 评论 -
Cache的基本原理
Linux Programmer对于没有接触过底层技术的朋友来说,或许从未听说过cache。毕竟cache的存在对程序员来说是透明的。在接触cache之前,先为你准备段code分析。int arr[10][128];for (i = 0; i < 10; i++) for (j = 0; j < 128; j++) arr[i][j] = 1;如果你曾经学习过C/C++语言,这段code自然不会陌生。如此简单的将arr数组所有..转载 2021-10-26 14:13:51 · 516 阅读 · 0 评论 -
riscv bare-metal c
riscv - How can I compile C code to get a bare-metal skeleton of a minimal RISC-V assembly program? - Stack Overflowriscv64 裸机编程实践与分析 - 云+社区 - 腾讯云I have the following simple C code: void main(){ int A = 333; int B=244; int sum; su.原创 2021-10-20 17:49:56 · 579 阅读 · 0 评论 -
RISCV ISS Spike
RISCV ISS Spike 介绍_cs824980820的博客-CSDN博客RISCV ISS Spike 介绍Spike Spike的使用 Spike项目的目录结构 其他一些文件夹的用处 riscv文件夹 processor.cc processor.h insn文件夹、指令的处理过程 内存 HTIF SpikeSpike是RISC-V的一种仿真器,它可以仿真一个或多个hart目前它支持的RISC-V指令集特性有:RV3转载 2021-10-19 15:14:42 · 1766 阅读 · 3 评论 -
riscv 工具链
以下内容包含:一.risc-v-gnu-tools 交叉编译环境的安装 (你将可以使用riscv编译器编译一个c程序)二.riscv-toolchain 工具链的安装 (你将能够使用spike模拟器运行一个riscv程序)三.在qemu模拟器下运行一个linux系统 (在linux系统下用riscv模拟器运行一个linux系统。。。想想就刺鸡)在经过几天的试错后,整理了一下各个步骤:以下代码在ubuntu下可直接运行,其他系统请自行修改部分代码一.risc-v-gnu-tools 交转载 2021-10-19 14:32:19 · 625 阅读 · 1 评论 -
riscV 裸机编程
1.概述 2.最小工程的构成 3. 链接脚本 4.可执行的程序源代码分析 5.编译与运行 5.1 编译 5.2 运行 5.3 调试 6.总结 1.概述任何芯片在启动之前都需要有一段汇编代码,从这段汇编代码上就可以体现一些架构设计的特点。往往做嵌入式底层开发都需要关注这段汇编代码的含义,这样在使用的时候才能全面的了解启动时做了什么事情,在后续的程序中遇到问题也能复盘推演。本文就针对riscv..转载 2021-10-18 17:32:55 · 1997 阅读 · 0 评论 -
QEMU RISC-V machine emulation & interacting with it using bare-metal C code
Adding a custom peripheral to QEMU RISC-V machine emulation & interacting with it using bare-metal C code - embeddedinnIntroductionPermalinkQEMU is an excellent platform to emulate hardware platforms. But, we often end up using ready-made platforms转载 2021-10-18 11:04:42 · 318 阅读 · 0 评论 -
基于qemu-riscv从0开始构建嵌入式linux系统
Quard_D的博客_CSDN博客嵌入式,linux,Qt相关技术分享https://blog.csdn.net/weixin_39871788转载 2021-10-13 16:58:12 · 120 阅读 · 0 评论 -
使用qemu运行riscv64 linux
使用qemu运行riscv64 linuxqemu运行riscv64 linux_Quard_D的博客-CSDN博客本文使用qemu运行riscv64 linux旨在与真实硬件板保持一致,因此不使用qemu提供的任何直接加载elf文件的方式启动,而是从头到尾均加载原始的bin文件程序给qemu,使其完整的执行opensbi、u-boot、kernel。如读者想利用qemu加载elf文件直接启动内核,是更为容易的,也不必再阅读本文。 本文Ver1.0编写于2021.6.6,经笔者测试所...转载 2021-10-13 16:49:04 · 1684 阅读 · 0 评论 -
qemu risc-v linux, gnu toolchain
qemu虚拟机模拟一个riscv linux系统 - 连任 - 博客园在 QEMU 上运行 RISC-V 64 位版本的 Linux - 知乎个在下载https://github.com/riscv-collab/riscv-gnu-toolchain 的时候,存在问题,解决方法:git clone https://github.com.cnpmjs.org/riscv-collab/riscv-gnu-toolchain在目录里面, vim .gitmodule把q..原创 2021-10-13 14:08:26 · 102 阅读 · 0 评论 -
qemu riscV linux 环境搭建
参考【参考 1】网页版 “Running 64- and 32-bit RISC-V Linux on QEMU”Running 64- and 32-bit RISC-V Linux on QEMUrisc-v-getting-started-guide.readthedocs.io/en/latest/linux-qemu.html【参考 2】"Github 上的 RISC-V GNU Compiler Toolchain 仓库"https://github.com/riscv/ris转载 2021-10-13 09:48:21 · 524 阅读 · 0 评论 -
RISC-V 项目开发
RISC-V的项目开发,需要用到RISC-V下的GNU Toolchain,2.安装过程与方法 首先给出官方仓库的链接 https://github.com/riscv/riscv-gnu-toolchain 在最开始安装时,我先参考了这篇文章 https://blog.csdn.net/weiqi7777/article/details/88045720,然而在clone RISC-V GNU Toolchain官方仓库时出现了各种各样的问题,反复重试了很多次都未能解决。 最终...转载 2021-10-11 17:19:59 · 486 阅读 · 0 评论 -
qemu riscv 模拟环境搭建,运行riscv linux
方法一:使用buildroot-2020.08.1 全自动https://buildroot.org/download.html下载后在ubuntu内解压,在buildroot-2020.08.1目录下make qemu_riscv64_virt_defconfig然后make menuconfig如果你不懂怎么配置,直接默认。这两步如果出错,一般是你的ubuntu有些软件没装。根据提示,直接搜一下error信息就能找到解决方法。然后直接 makebuil...转载 2021-05-19 09:38:15 · 1745 阅读 · 0 评论 -
RV-321介绍
RV32I基础整数指令集RV32I是32位基础整数指令集,它支持32位寻址空间,支持字节地址访问,仅支持小端格式(little-endian,高地址高位,低地址地位),寄存器也是32位整数寄存器。RV32I指令集的目的是尽量简化硬件的实施设计,所以它只有40条指令(备注,之前是47条指令,在最新的规范中,一些csr指令被放在扩展指令集中)。这40条指令几乎能够模拟其它任何扩展指令(除了A扩展指令,因为原子指令需要硬件支持)。如果用更简单的实现方式,比如对于ECALL和EBREAK指令,调...转载 2021-05-18 11:49:31 · 3139 阅读 · 0 评论 -
RISC-V嵌入式开发
RISC-V嵌入式开发准备篇2:嵌入式开发的特点介绍随着国内第一本RISC-V中文书籍《手把手教你设计CPU——RISC-V处理器篇》 正式上市,越来越多的爱好者开始使用开源的蜂鸟E203 RISC-V处理核,很多初学者留言询问有关RISC-V工具链使用的问题,因此本公众号将开始陆续发表若干篇有关RISC-V软件工具链使用的文章,包括: RISC-V嵌入式开发准备篇1:编译过程简介 RISC-V嵌入式开发准备篇2:嵌入式开发的特点介绍 RISC-V嵌入式开发入门篇1:R.转载 2021-05-18 11:07:09 · 3422 阅读 · 0 评论 -
RISC-V指令
0 RISC-V和其他开放架构有何不同如果仅从“免费”或“开放”这两点来评判,RISC-V架构并不是第一个做到免费或开放的处理器架构。在开始之前,我们先通过论述几个具有代表性的开放架构,来分析RISC-V架构的不同之处以及为什么其他开放架构没能取得足够的成功。0.1 平民英雄——OpenRISCOpenRISC是OpenCores组织提供的基于GPL协议的开放源代码RISC处理器。OpenRISC具有以下特点: 采用免费开放的32/64位 RISC架构。 用Verilog转载 2021-01-08 14:25:22 · 2967 阅读 · 1 评论