• Home
  • Annotate
  • current directory
Name Date Size #Lines LOC

..21-Aug-2025-

ri5cy/21-Aug-2025-

rv32m1_sdk_riscv/21-Aug-2025-

README.md A D21-Aug-20254.6 KiB8762

README_zh.md A D21-Aug-20253.2 KiB8460

README.md

1# RISC-V RV32M1 VEGA Board BSP(Board Support Package) Execution Instruction
2
3[中文页](README_zh.md) |
4
5## Introduction
6
7RV32M1_VEGA board is a heterogeneous multi-core RISC-V 32 development board that contains two RISC-V 32-bit cores, as well as BLE peripherals.
8
9| Hardware       | Description                                                  |
10| -------------- | ------------------------------------------------------------ |
11| Chip Model     | RV32M1                                                       |
12| CPU            | RV32IMC, with extensons for post-incrementing load and stores, |
13|                | multiply-accumulate extensions, ALU extensions, hardware loops. |
14|                | RV32IEMC                                                     |
15| Main Frequency | 48MHz or 72MHz                                               |
16|                | 48MHz or 72MHz                                               |
17| On-chip SRAM   | 256kB + 128kB                                                |
18| On-chip Flash  | 1MB + 256kB                                                  |
19
20## **Compilation**
21
22The toolchain currently used for test is built from the standard GNU GCC 7.2.0 and newlib 2.5.0 and for the standard RV32IMC architecture, so the extension instructions of RV32M1 is not supported, note that the version of RT-Thread ENV used in this BSP is 1.0.
23
24It's recommended to use the [env tool](https://www.rt-thread.io/download.html?download=Env) to compile programs on Windows. Switch to the directory `bsp/rv32m1_vega/ri5cy` in the console and run the following command to compile this BSP:
25
26```
27scons
28```
29
30If successfully compiled, a new 'rtthread.elf' and 'rtthread.bin' file will be generated. ‘rtthread.bin' needs to be burned to the device and run.
31
32## Burn and Execution
33
34Please use JLink to connect to the JTAG interface of the RISC-V core on the RV32M1_VEGA board, and change the JLink driver to WinUSB mode. The JTAG interface is located next to the RV32M1 chip and the antenna seat, with a small 20pin JTAG interface.
35
36Use a USB cable to connect to a USB port marked with SDA, then a serial device is recognized by PC, which can be opened with the configuration of 115200-N-8-1. The serial pins used by the device are: `[PTC7/PTC8]`
37
38When the rtthread.bin image file is generated after being correctly compiled, you can use gdb to connect to openocd and burn it to flash with the `load` command.
39
40For more information about how to use JTAG and how to use gdb to debug the RV32M1_VEGA development board, please refer to [Development Environment Construction](https://github.com/open-isa-org/open-isa-org/open-isa.org/blob/master/RV32M1_Vega_Develop_Environment_Setup.pdf).
41
42## Running Results
43
44When the compiling and burning are done correctly, press the reset button `SW1` to reset the device, the startup message of RT-Thread can be observed via the serial port :
45
46```
47 \ | /
48- RT -     Thread Operating System
49 / | \     4.0.0 build Dec  5 2018
50 2006 - 2018 Copyright by rt-thread team
51File System initialized!
52Hello RT-Thread!
53msh />
54```
55
56## Peripheral Condition
57
58| Drive  | Support                                                      | Remark                      |
59| ------ | ------------------------------------------------------------ | --------------------------- |
60| UART   | Support                                                      | UART0, RX(PTC7), TX(PTC8)   |
61|        | Support                                                      | UART1, RX(PTA25), TX(PTA26) |
62| clock  | Support                                                      |                             |
63| GPIO   | Support(The list may not complete, also you need to modify pinmux, clock according to the IO being used.) |                             |
64| MMC/SD | Support                                                      |                             |
65
66## **IO mapping in BSP**
67
68| IO Number | BSP Code Definition |
69| --------- | ------------------- |
70| PTA22     | LED_BLUE            |
71| PTA23     | LED_GREEN           |
72| PTA24     | LED_RED             |
73| PTA24     | LED_STS             |
74| PTA25     | UART1_RX            |
75| PTA26     | UART1_TX            |
76| PTE8      | BTN_SW3             |
77| PTE9      | BTN_SW4             |
78| PTE12     | BTN_SW5             |
79| PTA0      | BTN_SW2/BTN_NMI     |
80
81## References
82
83- [User Guide](https://github.com/open-isa-org/open-isa.org/blob/master/RV32M1_VEGA_Board_User_Guide.pdf)
84- Chip [Reference Manual and Data Sheet](https://github.com/open-isa-org/open-isa.org/blob/master/Reference Manual and Data Sheet/RV32M1DS_Rev.1.1.pdf)
85- [open-isa](https://github.com/open-isa-org/open-isa.org)
86
87

README_zh.md

1# RV32M1_VEGA 板级支持包
2
3## 1. 简介
4
5RV32M1_VEGA开发板是一款多核异构的RISC-V 32开发板,包含了两个RISC-V 32位核心,同时也包括了BLE外设。
6
7| 硬件 | 描述 |
8| -- | -- |
9|芯片型号| RV32M1 |
10|CPU| RV32IMC, with extensons for post-incrementing load and stores, |
11| | multiply-accumulate extensions, ALU extensions, hardware loops. |
12| | RV32IEMC |
13|主频| 48MHz或72MHz |
14| | 48MHz或72MHz |
15|片内SRAM| 256kB + 128kB |
16|片内Flash| 1MB + 256kB |
17
18## 2. 编译说明
19
20当前测试的工具链是以标准的GNU GCC 7.2.0 & newlib 2.5.0方式,并以标准的RV32IMC构架进行编译,所以RV32M1的扩展指令未支持,RT-Thread ENV版本是1.0。
21
22Windows上编译推荐使用[env工具][1],可以在console下进入到`bsp/rv32m1_vega/ri5cy`目录中,运行以下命令:
23
24    scons
25
26来编译这个板级支持包。如果编译正确无误,会产生rtthread.elfrtthread.bin文件。其中rtthread.bin需要烧写到设备中进行运行。
27
28## 3. 烧写及执行
29
30请使用JLink接入到RV32M1_VEGA开发板的RISC-V核的JTAG接口上,同时把JLink在PC上的驱动更改为WinUSB模式。JTAG接口位于RV32M1芯片和天线座子旁边,小的20pin JTAG接口。
31
32使用USB线连接到标记了SDA的USB口上,在PC上会出现一个串口设备,可以使用115200-N-8-1的配置方式打开这个串口。设备使用的串口引脚是:`[PTC7/PTC8]`
33
34当正确编译产生出rtthread.bin映像文件后,可以使用gdb连接到openocd,并以`load`命令烧写到flash中。
35
36关于更多使用JTAG,使用gdb调试RV32M1_VEGA开发板的情况,建议参考开发板的[开发环境搭建](https://github.com/open-isa-org/open-isa.org/blob/master/RV32M1_Vega_Develop_Environment_Setup.pdf)的文档。
37
38### 3.1 运行结果
39
40如果编译 & 烧写无误,当按`SW1`复位按钮复位设备后,会在串口上看到RT-Thread的启动logo信息:
41
42``` text
43 \ | /
44- RT -     Thread Operating System
45 / | \     4.0.0 build Dec  5 2018
46 2006 - 2018 Copyright by rt-thread team
47File System initialized!
48Hello RT-Thread!
49msh />
50```
51
52## 4. 驱动支持情况及计划
53
54| 驱动 | 支持情况  |  备注  |
55| ------ | ----  | :------  |
56| UART | 支持 | UART0, RX(PTC7), TX(PTC8) |
57|      | 支持 | UART1, RX(PTA25), TX(PTA26) |
58| clock | 支持 |  |
59| GPIO | 支持(列表可能不完善,同时也需要按照使用到的IO调整pinmux、clock) |  |
60| MMC/SD | 支持 |  |
61
62### 4.1 IO在板级支持包中的映射情况
63
64| IO号 | 板级代码中的定义 |
65| -- | -- |
66| PTA22 | LED_BLUE |
67| PTA23 | LED_GREEN |
68| PTA24 | LED_RED |
69| PTA24 | LED_STS |
70| PTA25 | UART1_RX |
71| PTA26 | UART1_TX |
72| PTE8 | BTN_SW3 |
73| PTE9 | BTN_SW4 |
74| PTE12 | BTN_SW5 |
75| PTA0 | BTN_SW2/BTN_NMI |
76
77## 5. 参考
78
79* [开发板用户手册](https://github.com/open-isa-org/open-isa.org/blob/master/RV32M1_VEGA_Board_User_Guide.pdf)
80* 芯片[数据手册](https://github.com/open-isa-org/open-isa.org/blob/master/Reference%20Manual%20and%20Data%20Sheet/RV32M1DS_Rev.1.1.pdf)
81* [open-isa链接](https://github.com/open-isa-org/open-isa.org)
82
83  [1]: https://www.rt-thread.org/download.html#download-rt-thread-env-tool
84