一、前言

国产中低端MCU芯片未来5年一定会出现百花齐放的局面,RISCV开源处理器架构体系也必然和ARM授权形式的处理器IP展开最激烈的竞争。芯片如此,人亦如此,早看到未来,早动手!废话不说,抽点时间就把学习研究过程记录一下。

二、RISCV基础知识

简单概括:

1.历史:诞生于伯克利大学,研究团队4名成员3个月完成了指令集开发。设计了Rocket64位处理器内核,流片多次,1GHz的主频的芯片已经超越了Cortex -A5的性能。2016年成立RISC-V基金会,基金会网址:https://riscv.org/specifications/ 。

2.基于RISC原理的开放指令集:精简指令、全新设计、易于移植、模块化、完整工具链支持、具有大量实践案例

3.短小精悍:比ARM和x86架构简单易实现,基本指令40多条,模块化扩展指令几十条。

4.模块化:可满足各种不同需求的应用

5.当下:中国多个企业陆续推出了自己的RISC架构芯片,2018年成立了中国RISC-V联盟(http://crva.ict.ac.cn/)

6.未来看涨:各个IT巨头的加入,中国企业被打压和收专利费的痛苦,将加速这一进程。

7.影响:除广泛的各行各业的应用,教育中计算机组成原理,微机原理古董内容需要更新了

三、从嵌入式芯片CH32V103玩起

芯片资料以及开发例程下载地址:
https://download.csdn.net/download/weixin_41565556/13771551

1.CH32V103结构与stm32f103硬件差别

(1)内部结构
在这里插入图片描述​ CH32V103芯片结构图

在这里插入图片描述 STM32F103芯片结构图

图中可以看出芯片结构除了内核不一样外,只是不同型号的外设数量内容、内部flash、ram的多少、调试器debug、中断控制器NVIC之间有部分差别,其它基本一样。

另外要指出这个RSIC-V内核是2级流水指令操作,arm的是3级流水指令。

(2)地址映射空间

地址映射空间也基本相同,部分有差别,如增加了USBHD。这样的好处在于增强了对STM32F103的兼容性。
在这里插入图片描述
(3)其它

都有类似的总线结构、类似的位绑定操作、类似的外设功能等。一般只要熟悉STM32的结构,基本很容易掌握这个芯片的结构特征。

2.软件开发环境比较

(1)软件IDE

STM32除了可以用keil、iar、VScoad等常用第三方软件开发之外,也提供了自己的STM32CubeIDE 开发环境,一般都很容易掌握。
在这里插入图片描述
STM32CubeIDE开发
在这里插入图片描述
CH32V103 IDE(MounRiver Studio)开发

呵呵,看上去好像没啥差别。是的,没错,都用的是Eclipse框架,编辑器就一样了,当然类似了。技术发展,做一个开发框架也容易了很多,那个非官方的ESP32也是这种框架,当然类似的很多,不过现在更时尚的是VSCoad,那个包容性更强,还能增加客户应用,为何不跟进呢?(也许我想多了)

还有,IDE起了个名字mounriver,啥意思?要是是山河的意思,那也应该是mountriver啊,连读去t,没想明白!

软件下载可以到:http://www.mounriver.com/

(2)编译器

这当然是关键的东西了,不过用的当然用的还是开源的编译器,gcc编译器,编译RISC-V的C/C++专用编译器(GCC-Riscv-none-embed)。感叹下,这些工具要为芯片厂家省去多少麻烦,也当然意味着他的成本高不了,可是,中国厂家的原创真的是让人捉急啊!

STM32的arm编译器就多了,GCC,keil-arm,iar的都支持。

这当然也说明很多人最熟悉的KEIL、IAR在这里暂时就废了!

(3)下载

内核不同,下载方式自然不同,官方的叫WCHLlink。硬件方案很简单。这个要赞一下!

两者下载方式都是2线的,也叫SWD(串行调试端口,没有JTAG端口),尚不知有什么区别,但ARM结构总有一个TPIU(跟踪端口的接口单元),RISCV没有。结构对应位置是一个FPIC(快速可编程中断控制器),这个是对应NVIC的。那么到底其仿真跟踪能力如何呢?要打个大大的问号了?

3. 下一次玩,准备好硬件跑跑看!

国产RISCV芯片CH32V103(对标stm32f103(管脚兼容))学习玩究(2)

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐