opensbi

关于RISC-V启动部分的思考~

吃可爱长大的小学妹 提交于 2020-12-23 14:30:24
1.本文说明 RISC-V的架构有着非常鲜明的特点,如果看过arm,aarch64,mips等架构的一些架构手册的基础知识,再看RISC-V的芯片的架构设计,就会觉得非常有意思,可以找到一些影子,但是又比这些架构设计简洁的多。当我看完aarch64的芯片手册,再看RISC-V的boot时,设计思想竟然可以做一些对比,同样去看RISC-V和mips的寄存器,也可看到高度的一致性。对于x86的架构我未曾深入了解,但是在risc-v上应该也可以找到一些设计元素。总体说来,RISC-V的架构设计集合了各种架构的设计的优点。我突然觉得这种堆叠即模块的设计思想,在当前IoT物联网发展的如火如荼的时代又要被赋予最新的使命了。我十分看好RISC-V的设计思想,也期待着与软件界的Linux一样,发展的繁荣昌盛。 1.1 RISC-V的诞生的时代背景 RISC-V至诞生之日起,就赋予了良好的设计模式,吸收了大量的arm、x86、以及mips中良好的设计基因,将过时指令设计的与架构设计中的坑都避免了。这几十年的芯片的发展过程中,不少的芯片架构都曾因为设计问题消失在历史长河中,有着曾经一度辉煌的sparc,还有当时被十分看好的mips。如今市场上最热门的就属x86和arm了,一个主打移动市场,一个主打pc市场,两个在芯片架构的市场上发展的如火如荼。 然而,两个巨头都牢牢的把控着核心技术的门槛

riscv64 qemu上进行Linux环境搭建与开发记录

浪子不回头ぞ 提交于 2020-12-08 05:02:16
riscv64 qemu上进行Linux环境搭建与开发记录 1.本文说明 2.riscv64 qemu的编译 3.riscv64 交叉编译工具链准备 4.编译uboot 5.编译opensbi 6.编译linux 7.buildroot与rootfs 8.小结 1.本文说明 最近在学习riscv64架构的一些知识,并且利用做一些项目的机会去了解更多的不同种类的的芯片的架构设计。学习riscv的好处在于其架构是开源的,也就是任何人只要有兴趣和时间都可以利用开源的代码在fpga设计出一款自己的CPU出来,我觉得这是一个深入芯片底层设计的很好的机会。从上层到底层,从知其然到知其所以然,这必将是一个循序渐进的过程,本文梳理了一下riscv上的环境搭建方法(ubuntu18.04),让系统在qemu上正常的运行起来。 一个riscv qemu的启动需要经过以下几个步骤: 1.opensbi 2.uboot or linux 3.rootfs 目前这三个部分单独的梳理成文章的章节,之后就可以进行qemu的仿真与运行了。 2.riscv64 qemu的编译 要想系统正常的运行起来,必须编译qemu,我建议用最新版本的qemu,可以在官网上下载最新的源代码进行编译。 https: //www.qemu.org/ 当然可以在github上进行下载: git clone https: //github