alibaba / alibaba/AliOS-Things
ASOC2022: 基于AliOS Things移植QEMU RISCV virt 开发板
- Dominant language
- C
- Stars
- 4.6k
- Forks
- 1.2k
- PR merge metrics
- No merged PRs in 30d
Description
# 基于AliOS Things移植QEMU RISCV virt 开发板
## 项目描述
[AliOS Things](https://github.com/alibaba/AliOS-Things/) 是阿里云IoT事业部发布的面向IoT领域的、高可伸缩的物联网操作系统。拥有弹性内核rhino,和丰富的云端一体的IoT组件,以及HaaS Python/JS框架以支持利用Python/JS语言进行开发。目前已被广泛应用于智能音箱、IP摄像头等智能家居、安防等领域。
RISC-V是当前热度很高开源指令集,以简约为设计理念,覆盖高性能服务器和低功耗设备。AliOS Things已支持RISCV架构。需要扩充RISC-V的开发板。
QEMU是Linux上比较流行的虚拟机,支持RISC-V/X86/ARM/MIPS等多种架构的虚拟化。目前qemu已经支持多种RISC-V的板子,如sifive e/u, spike, virt等。支持qemu risc-v virt开发板,可以省去硬件,进行和硬件无关的risc-v的软件功能开发和调试,非常方便。
AliOS Things is a highly scalable IoT operating system for the IoT field released by Alibaba Cloud IoT Division. It has elastic kernel rhino, rich cloud-integrated IoT components, and HaaS Python/JS framework to support development with Python/JS language. At present, it has been widely used in smart speakers, IP cameras and other smart home, security and other fields.
RISC-V is currently a very popular open source instruction set, designed with simplicity as its design concept, covering high-performance servers and low-power devices. AliOS Things already supports RISCV architecture. Need to expand the development board of RISC-V.
QEMU is a popular virtual machine on Linux, which supports virtualization of various architectures such as RISC-V/X86/ARM/MIPS. At present, qemu already supports a variety of RISC-V boards, such as sifive e/u, spike, virt, etc. It supports qemu risc-v virt development board, which can save hardware and develop and debug software functions of risc-v independent of hardware, which is very convenient.
## 项目备注
- [AliOS Things RISC-V](https://github.com/alibaba/AliOS-Things/tree/master/hardware/arch/riscv)
- [QEMU RISC-V VIRT](https://www.qemu.org/docs/master/system/riscv/virt.html)
- [AliOS Things 3.3 BSP移植规范](https://github.com/alibaba/AliOS-Things/blob/master/documentation/manual/bsp_development.md)
- [AliOS Things 3.3文档](https://haas.iot.aliyun.com/aliosthings/?spm=a2cpu.b16145223.0.0.595660b1mEps0h)
## 项目产出要求
- [ ] 实现AliOS Things 在qemu risc-v virt开发板上的启动,支持RV64GC多核,对接中断控制器,UART,跑通AliOS Things helloworld_demo案例
- [ ] 支持qemu risc-v virt的Flash/UART/RTC/virtio-mmio/fw_cfg等设备。
- [ ] 提供相应测试用例
- [ ] Bring up AliOS Things on the qemu risc-v virt development board, support RV64GC multi-core, connect to the interrupt controller, UART, and run the AliOS Things helloworld_demo case
- [ ] Support qemu risc-v virt Flash/UART/RTC/virtio-mmio/fw_cfg and other devices.
- [ ] Provide corresponding test cases
## 项目难度
进阶
Contributor guide
Research direction
Start with the AliOS Things RISC-V tree at hardware/arch/riscv and the AliOS Things 3.3 BSP migration guide, then review the QEMU RISC-V virt documentation. Bring-up is complete when RV64GC multicore support, the interrupt controller, UART, Flash, RTC, virtio-mmio, and fw_cfg work, helloworld_demo runs, and corresponding test cases are provided.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- embedded-iot, operating-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100