根据具体的应用场景和需求,开发者可以选择在Risc-v的S模式或U模式下运行FreeRTOS。 对于对性能要求较高、且系统安全性可控的应用场景(如高性能服务器、实时控制系统等),可以选择在S模式下运行FreeRTOS。这样可以充分发挥Risc-v架构的性能优势,实现更高效的任务调度和实时性能。 对于对安全性要求较高、且对性能有一定...
基于RISC-V内核单片机移植RTOS实时操作系统(四) 接着以WCH沁恒微电子的赤菟V103(CH32V103)和赤菟V307(CH32V307)两款RISC-V内核单片机来详细说下针对RISC-V平台,移植实时操作系统的注意点。 今天聊下移植RTOS时RISC-V内核时单片机任务之间的切换。 了解了如何切换至第一个任务,如何实现不同任务之间的切换呢。在...
今天聊下需要移植RTOS时RISC-V内核单片机 需要保存的寄存器。 RISC-V寄存器如下图1所示,其中x0-x31为整形寄存器,f0-f31为浮点寄存器(青稞V3没有浮点寄存器)。 所有带caller的寄存器,当发生中断时需要保存,值得注意的是,WCH的硬件压栈保存的寄存器仅仅保存整数的16个caller saved 寄存器。 正常一个中断函数的寄存器保...
总的来说,FreeRTOS-metal 是一个为 RISC-V 微控制器设计的实时操作系统,它结合了 FreeRTOS 和 Metal 库的优势,并提供了高效、可靠和可移植的解决方案,适用于各种嵌入式系统和应用程序。 FreeRTOS-metal 是运行在机器模式和用户模式,适用于大多数简单应用场景,不过对于需要运行多运行区域隔离的场景(比如运行多个 R...
RISC-V内核进中断需要保存caller saved(顾名思义,调用者需要保存)的寄存器。当不开启硬件浮点时,编译器会把16个寄存器在中断函数开始时存入堆栈,中断返回前恢复,如下图2和图3所示。我们内核支持硬件压栈,硬件保存和恢复的也正是这16个寄存器。使用硬件压栈时需要使能硬件功能,即硬件压栈使能(不同芯片配置位置不同...
MC3172是感芯科技研发的第一款32位RISC-V处理器,它是一款多线程实时处理器,可实现64线程同步并行运行,线程资源可按需配置,共享代码段空间与数据段空间,硬件级实时响应,无需中断服务程序,无需实时操作系统。 MC3172具有如下特性: 基于RISC-V RV32IMC 指令集,100%单指令周期,最高200MHz主频,3.37coremark/MHz。
RISC-V支持可扩展定制指令; RISC-V硬件设计与编译器实现起来非常简单。 3 基于FreeRTOS & RISC V内核的PD协议的应用 3.1 UM3506 PD SoC 广芯微旗下双向PD快充控制器芯片 UM3506 (TID: 2465), 采用软硬结合的灵活可编程架构,全面支持PD3.1 SRC, SNK, 双向DRP和 EMARK功能,其中包括SPR下的PPS和ERP下的AVS动...
RISC-V的特点 首先是开源的优势: 任何公司和个人不需任何费用就可以自由使用RISC-V,不像ARM指令集需要支付高昂授权费,也不像英特尔不开放内核,只允许用户基于微处理器进行应用开发。 RISC-V的开源会大大降低指令集修改和定制的门槛,在实现芯片差异化设计的同时降低成本,对发展自主可控处理器、摆脱垄断有着十分重要的...
今天聊下需要移植RTOS时RISC-V内核单片机需要保存的寄存器。 RISC-V寄存器如下图1所示,其中x0-x31为整形寄存器,f0-f31为浮点寄存器(青稞V3没有浮点寄存器)。所有带caller的寄存器,当发生中断时需要保存,值得注意的是,WCH的硬件压栈保存的寄存器仅仅保存整数的16个caller saved 寄存器。正常一个中断函数的寄存器保存我...
RISC-V MCU移植RTOS系列教程(二) 接着以WCH沁恒微电子的赤菟V103(CH32V103)和赤菟V307(CH32V307)两款RISC-V内核芯片来详细说下针对RISC-V平台,移植实时操作系统的注意点。 今天聊下移植RTOS时RISC-V内核时单片机任务栈保存哪些内容。 上一章中列举了所有的寄存器,当需要切换任务时刻的寄存器值,除x0恒为0,...