首页 > TAG信息列表 > risc
100行代码实现一个RISC-V架构下的多线程管理框架
1. 摘要本文将基于RISC-V架构和qemu仿真器实现一个简单的多线程调度和管理框架, 旨在通过简单的代码阐明如何实现线程的上下文保存和切换, 线程的调度并非本文的重点, 故线程调度模块只是简单地采用了轮询的方式.2. 上下文是什么对于一个运行中的程序, 我们可以把它看作一个状态机,QEMU 启动方式分析 (1):QEMU 及 RISC-V 启动流程简介
Author: YJMSTR jay1273062855@outlook.com Date: 2022/08/16 Revisor: Bin Meng, Falcon Project: RISC-V Linux 内核剖析 Sponsor: PLCT Lab, ISCAS QEMU 启动方式分析 (1):QEMU 及 RISC-V 启动流程简介 使用软件版本如下: QEMU: v7.0.0 OpenSBI: v1.1 U-Boot: v2022.04 Linux K基于TSSOP20小封装RISC-V MCU CH32V203的FOC应用开发
通常小体积封装的MCU有着成本较低的优势,被广泛用于BLDC电机的六步方波控制中,此类应用对MCU的各类资源要求较低,小体积封装的MCU往往能够胜任。而基于FOC的PMSM电机开发中,对MCU的运算能力和ADC速度等各类资源有着较高的要求,大部分现有的小体积封装MCU无法满足此类需求。 CH32V203F8ARM体系与架构【一】
由于笔试题也出现了相关的题目,所以也顺便为此做一点点小准备。 1.ARM用什么类型的指令集 2.RISV与RISC指令集有什么区别 3.ARM架构有多少个寄存器 4.特殊的那几个寄存器分别是哪几个? 5.有什么作用?汽车与芯片技术漫谈
汽车与芯片技术漫谈 参考文献链接 https://mp.weixin.qq.com/s/2sAxPEK8iT1VdzLLpYtGsw https://mp.weixin.qq.com/s/xuAIVVBZGpoCpWtRUgW58Q https://mp.weixin.qq.com/s/GbN1i-XGIT92r8vhLw6fzg https://mp.weixin.qq.com/s/I0ef_aSZ1mFXwfI0v-__EQ https://mp.weixin.qq.com/s/100行代码实现一个RISC-V架构下的多线程管理框架
1. 摘要 本文将基于RISC-V架构和qemu仿真器实现一个简单的多线程调度和管理框架, 旨在通过简单的代码阐明如何实现线程的上下文保存和切换, 线程的调度并非本文的重点, 故线程调度模块只是简单地采用了轮询的方式. 2. 上下文是什么 对于一个运行中的程序, 我们可以把它看作一个状RISC-V MCU 基于 CH32V307 工业物联网平台系统
RISC-V MCU 基于 CH32V307 工业物联网平台系统 目录RISC-V MCU 基于 CH32V307 工业物联网平台系统第一部分 设计概述1.1 设计目的1.2 应用领域1.3 主要技术特点1.4 关键性能指标1.5 主要创新点第二部分 系统组成及功能说明2.1 整体介绍2.2 各模块介绍(一)开发板(二)服务器第三部分自己动手写RISC-V的C编译器-02语法描述方法和递归下降解析
本节增加对*、/、+、-、()运算的支持 使用生成规则表示运算符优先级 expr = mul("+" mul | "-" mul)* mul = num("*" num | "/" num)* 上面的表达式可以很容易的推导出对于对于运算1*2+3的语法树 由expr开始推导乘除法一定会在加减法的更下一层,所以很自然的得出乘法优先级大如何把汇编 伪指令 转成 真指令?
使用好 gcc 和 objdump 的组合 来源:https://stackoverflow.com/questions/70154049/how-can-i-resolve-risc-v-assembly-pseudo-instructions-to-true-risc-v-instruction 这里还有一个 跟伪指令 有关的 .md 文件 :https://github.com/riscv-non-isa/riscv-asm-manual/blob/master/CH32V103开发(二): Linux 编译和烧录环境配置
目录 沁恒CH32V103C8T6(一): 核心板焊接和Windows开发环境配置 沁恒CH32V103C8T6(二): Linux RISC-V编译和烧录环境配置 硬件准备 CH32V103 开发板/核心版 WCH-Link 软件准备 软件主要是用于编译的 RISC-V GCC , 和用于烧录的 OpenOCD. RISC-V GCC 可以选择公版或者WCH版 OpeRISC-V技术杂谈
RISC-V(发音为“risk-five”)是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。 与大多数指令集相比,RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件。虽然这不是第一个开源指令集,但具有重要意义,因为其设计使其适用于现代计算设备(如仓库规模RISC-V基础入门之ALU
ALU是什么 *江西工业职业技术学院的机电一体化专业还有江西机电职业技术学院的计算机应用技术专业* 最简单的ALU图示 *<font size=3>江西省电子信息技师学院size=3</font>*RISC-V MCU 电源系统概述
1. 电源结构 CH32V307供电结构如下图所示: 通常CH32V307工作电压VDD的范围为 <Highlight color="#25c2a0">2.4V~3.6V </Highlight>,当使用ETH或USB时,工作电压VDD的范围为 <Highlight color="#25c2a0">3.0V~3.6V </Highlight> 内置电压调节器提供内核所需的1.5V电源。 VDRISC-V MCU 应用教程之ADC(一)
1. ADC简介 ADC,Analog-to-Digital Converter的缩写。指模/数转换器或者模拟/数字转换器。是指将连续变量的模拟信号转换为离散的数字信号的器件。 ADC是MCU的重要外设,主要用于传感器的数据采集,常见的ADC类型一般为逐次逼近型。 以沁恒RISC-V MCU CH32V307VCT6为例,内嵌2个12位的ARISC-V MCU启动文件分析
启动文件由汇编语言编写,是MCU上电复位后第一个执行的程序。主要执行以下内容: 初始化gp(global pointer)全局指针寄存器、sp(stack pointer)栈指针寄存器 将data数据从flash中加载至RAM中 清空bss段数据 初始化中断向量表 配置系统时钟 从Machine模式切换到User模式,进入main函数RISC-V MCU指定变量复位时保持(除掉电复位)
RISC-V MCU开发过程中,需要指定一些变量在MCU复位时能够保持当前变量的值, 以CH32V307为例,具体方法如下: 不更改ld文件,将变量添加((section(".noinit")))属性描述 __attribute__((section(".noinit"))) uint8_t test; int main(void) { Delay_Init(); USART_Printf_Init(2RISC-V汇编
ASM@RISC-V CPU寄存器 Register ABI Discription Attribution x0 zero 硬件常数0 N/A x1 ra 返回地址 Caller x2 sp 栈指针 Callee x3 gp 全局指针 - x4 tp 线程指针 - x5-x7 t0-t2 临时变量 Caller x8 s0/fp 保存寄存器/帧指针 Callee x9 s1 保存寄存器 CalRISC-V MCU 调试接口配置为普通io
以沁恒RISC-V MCU CH32V203C8T6为例,其配备了两线仿真调试接口, 用于在线下载和仿真调试。 引脚编号 主功能(复位后) 重映射功能 34 SWDIO PA13 37 SWCLK PA14 可以看出,上电复位后,PA13、PA14默认的功能为调试接口,方面工程师进行开发调试。 如果在项目应用在,功能丰富,io口不够RISC-V MCU ld链接脚本说明
1、什么是ld链接脚本? 通常,程序编译的最后一步就是链接,此过程根据“*.ld”链接文件将多个目标文件(.o)和库文件(.a)输入文件链接成一个可执行输出文件(.elf)。涉及到对空间和地址的分配以及符号解析与重定位。 而ld链接脚本控制这整个链接过程,主要用于规定各输入文件中的程序、数据MIPS技术市场分析
MIPS技术市场分析 MIPS 科技公司(纳斯达克交易代码:MIPS)是全球第二大半导体设计IP(知识产权)公司和全球第一大模拟IP公司。MIPS 科技在全球拥有超过 250 家客户,为全球众多最受欢迎的数字消费、宽带、无线、网络和便携式媒体市场提供动力——包括 Linksys 的宽带设备、索尼的数字电视和RISC-V技术与展望
RISC-V技术与展望 RISC-V(发音为“risk-five”)是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。 与大多数指令集相比,RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件。虽然这不是第一个开源指令集,但具有重要意义,因为其设计使其适用于现代计算设[转载]MIPS指令集简史:从CISC、RISC之争,到闭源、开源分歧
原文地址:https://baijiahao.baidu.com/s?id=1704133753207266151&wfr=spider&for=pc 集微网报道 在新冠肺炎疫情全球流行和国际局势复杂化的当下,构建自主可控的产业生态已成为共识。要实现完全自主可控,既需要提升包括IP核、EDA工具在内的芯片研发能力和以自主材料、设备为基RISC-V MCU应用教程之DMA(存储器到外设)
简介 CH32V103系列是以青稞V3A处理器为核心的32位通用MCU,该处理器是基于RISC-V开源指令集设计。片上集成了时钟安全机制、多级电源管理、通用DMA控制器。此系列具有1路USB2.0主机/设备接口、多通道12位ADC转换模块、多通道TouchKey、多组定时器、多路IIC/USART/SPI接口等丰富的外1.计算机基础知识
备注: 本章计算机基础知识在整个考试中所占分值不高,只是知识面涉及面偏广,与后续章节并无必然关系,所以只要熟悉了解即可。 一、计算机基础知识图谱 知识点一:计算机硬件 计算机硬件知识 主要涉及有CPU体系结构、指定与流水线、内存结构与寻址技术以及总线与中断这四个部分ISA指令集基础应用
ISA指令集基础应用 ISA(Instruction Set Architecture,指令集体系结构)的缩写,指令集因系统性和复杂性,称为(Instruction Set Architecture,ISA)。指令集对上限定了软件的基本功能,对下制订了硬件实现的功能目标,指令系统的设计(指令集中应该包含哪些指令,指令应该采用什么样的格式表示)是计算