Git Product home page Git Product logo

risc-v's Introduction

RISC-V

介绍

本软件仓中托管了有关于openEuler RISC-V相关的信息,包括如何获取及使用openEuler RISC-V的文档、工程配置以及工具。

动态

我们计划按照openEuler的节奏,在2022年03月发布openEuler 22.03 LTS RISC-V 版本,现在已经面向所有人开放需求征集讨论。

请在此代码仓以issue和向文件release-plan/openEuler-22.03-LTS/release-plan.md 文件提交pr的形式,描述需求和相应场景。

需求收集时间: 2021/11/1 ~ 2021/12/30

已有需求请查看 release plan.

  • 2021年4月 RISC-V 处理器开发商优矽科技加入 openEuler 社区 链接
  • 2021年3月 《SIGer》青少年开源文化期刊 第#4期第#10期 《南征北战》
  • 2021年3月 openEuler RISC-V 使能runc 容器。链接
  • 2021年2月 准备添加RISC-V TEE的支持
  • 2020年12月 2020 openEuler 高校开发者大赛,试题4。链接
  • 2020年12月 2020 openEuler summit 峰会展示在果壳上执行openEuler RISC-V。
  • 2020年11月openeuler镜像仓发布第二版rootfs和kernel镜像,可以在qemu中启动镜像,体验openEuler RISC-V移植版。
  • 2020年10月 中科院成功移植openEuler RISC-V到果壳(nutshell)
  • 2020年9月 在华为全联接(HC)2020大会上发布了openEuler RISC-V,国内首发RISC-V版Linux。
  • 2020年8月OBS构建系统开始构建openEuler RISC-V软件包。
  • 2020年6月中科院的镜像仓发布了第一版rootfs和kernel镜像。新闻

参与RISC-V SIG的活动

RISC-V 相关的活动由RISC-V sig负责。你可以通过如下方式参与RISC-V SIG:

  • 建立或回复 issue:欢迎通过建立或回复 issue 来讨论,RISC-V SIG 所独立维护的仓库列表可在 sig-RISC-V 中查看。除了独立维护的仓库之外,若在src-openEuler 的其他软件仓中有和RISC-V相关的问题,请同时在本仓openEuler/RISC-V和相关软件仓中提ISSUE,方便共同解决。
  • SIG 组例会:每周二上午会进行例会讨论,会议链接会通过openEuler-Dev的邮件列表发送
  • Maillist 联系:目前RISC-V SIG没有独立的maillist,可使用openEuler-Dev( [email protected] )的邮件列表进行讨论,若话题讨论足够丰富的话会考虑申请独立的RISC-V maillist。
  • 微信:联系我们加入RISC -V sig的微信群,一起进行讨论,欢迎分享你的想法

目录结构

RPM repo镜像仓库和软件源服务

提供二进制RPM包, 和源码包SRPM托管,提供软件源服务.

https://repo.openeuler.org/openEuler-preview/RISC-V/
https://isrc.iscas.ac.cn/mirror/openeuler-sig-riscv/

镜像下载

提供根文件系统rootfs、虚拟磁盘镜像、内核镜像、openSBI、BBL等二进制镜像服务。用于在虚拟机环境快速搭建编译构建环境、想在虚拟机环境快速体验openEuler OS的RISC-V移植版本、想在推荐的硬件平台上快速体验openEuler OS的移植版本的开发者和爱好者.

源码仓

openEuler RISC-V移植版所使用的代码力求与src-openEuler工程中代码仓的master分支保持一致,因此在适配RISC-V架构的过程中所遇到的修改会尽量推送代码仓的master分支;如果openEuler的master分支暂时没有接纳所推送的代码,就暂时使用所推送的代码分支作为源码仓,待master接纳后使用master分支代码。

openEuler RISC-V移植版所包含的软件包代码仓、版本信息在configuration目录下的软件包列表文件中可以获得。

列在openEuler社区维护的创建专门深度维护的源码repo

  • opensbi
  • risc-v-kernel
  • openEuler-riscv-pk-NutShell
  • openEuler-Kernel-NutShell
  • openEuler-systemd-NutShell
  • openEuler-riscv-glibc-NutShell

虚拟机仿真平台

目前,openEuler RISC-V的移植版所支持的目标平台包括:

  • 执行在x86_64, aarch64 平台上的QEMU-RISC-V 64虚拟机,这也是开发过程中首选的初步开发测试环境;

硬件平台支持

  • NutShell(果壳, UCAS) COOSCA1.0,这是当前默认支持的硬件测试环境.
  • SiFive HiFive Unleashed, 进行。

如何在NutShell(果壳, UCAS) COOSCA1.0上部署测试openEuler OS

  • 素材准备
    • RV_BOOT.UCAS_COOSCA1.0_V1.BIN: 移植支持NutShell UCAS COOSCA1.0的内核和BBL打包文件.
    • oe-UCAS_COOSCA1.0-rootfs.v1.tar.gz: 移植适配在NutShell UCAS COOSCA1.0运行的根文件系统.
    • NutShell CPU处理器 (PL-Progarmmable Logic bitstream): 建议直接使用打包好的硬件二进制文件BOOT.BIN,包括FSBL和处理器. 详情请参考NutShell(果壳, UCAS)网站.
    • FPGA: Xilinx PYNQ-Z2,用于仿真NutShell UCAS COOSCA1.0 (FPGA bitstream)的硬件平台,并提供外设等.
  • 部署
    • microSD卡格式化:1) 建议SD卡容量不小于6GB; 2) 划分为2个分区,分别为/dev/mmcblk0p1和/dev/mmcblk0p2(用SD ADAPTER读卡器访问可见的设备名称,如果通过USB读卡器访问,名称可能是/dev/sdX, 比如/dev/sd1, /dev/sd2). 3)第一个分区格式化为FAT32,容量大于100MB,第二个分区格式化为EXT4.
    • 处理器硬件相关部署:挂载第一个分区,然后将BOOT.BIN拷贝到该分区.
    • OS Bootloader和OS Kernel部署:将RV_BOOT.UCAS-COOSCA1.0_V1.BIN拷贝到第一个分区,并重命名为RV_BOOT.BIN.
    • 根文件系统部署: 将oe-UCAS_COOSCA1.0-rootfs.v1.tar.gz解压到/dev/mmcblk0p2分区,注意根目录对齐.
  • 启动PYNQ-Z2(启动系统)
    • 通过Micro-USB供电.
    • 打开电源开关(紧邻Micro-USB的拨动按钮).
  • 获取从ttyPS0设备可登录访问的控制台
    • sudo picocom -b 115200 /dev/ttyUSB1
    • root登录:如果一切顺利,将依次看到BBL引导、内核引导、根文件系统引导、systemd和systemd service启动,在systemd service启动阶段,你将获得一个运行在ttyPS0上的控制台,并提示你输入用户名和密码登录系统.
  • 预先快速一览

即使手中没有RISC-V硬件也没关系,得益于QEMU的存在,你可以在几乎任意Linux环境中体验openEuler的RISC-V移植版,详细使用方法见这篇文档

参与openEuler RISC-V移植版的构建

当前openEuler RISC-V的移植版所支持的软件包数量相比于openEuler 的20.03 LTS和20.09 都要少的多,我们的目标是尽可能丰富openEuler RISC-V移植版所包含的软件包数量,使能绝大多数软件包。 可参考如下文档,参与到openEuler RISC-V移植版的软件包构建工作中来。

risc-v's People

Contributors

anar97 avatar explorehub avatar geektutu avatar georgecao-hw avatar kayla-lixinyi avatar lazycoffi avatar liqingqing1229 avatar liujiawei929 avatar liupengroc avatar ll-mixed avatar ll889 avatar maximsuen avatar niannianyouyu avatar whoisxxx avatar xiangxinyong avatar xinminst avatar yuandj avatar yukarichiba avatar yuru-ekis avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.