页面加载中,请稍候
来源:D.f发布时间:2021-03-10333浏览
询问 AI
本篇文章将介绍:①RISC-V指令集的起源和发展历史,②讨论各种RISC-VCPU核、SoC设计平台和芯片产品的技术特点及选型要点,③重点阐述RISC-V给嵌入式系统带来了益处,④RISC-V指令扩展的特点与安全应用。本期第二篇推文还将介绍:⑤支持RISC-V开源和商业软件开发工具和操作系统的现况,最后⑥展望RISC-V在教育和产业应用的发展趋势。
引言
过去二十年ARM在移动和嵌入式领域成果丰硕,IOT领域正逐渐确定其市场地位,其他商用架构(如MIPS)逐渐消亡。ARM在进军Intel所在的x86市场,已经对传统PC和服务器领域造成一定压力。RISC-V开源指令集的出现,引起了产业界的广泛关注,科技巨头很看重指令集架构(CPUISA)的开放性,各大公司正在积极寻找ARM之外的第二选择,RISC-V成为必然选择。RISC-V被全球范围内的大学陆续采纳为教材替代以前的MIPS和X86架构,政府和企业采纳RISC-V为标准指令集,开源的CPU核和SoC芯片不断涌现,生态环境逐渐丰富,开发者社区愈来愈活跃。
什么是RISC-V?
一个CPU支持的指令和指令的字节级编码就是这个CPU的指令集(ISA),指令集在计算机软件和硬件之间搭起了一个桥梁。不同的CPU家族:X86、PowerPC和ARM,都有不同的ISA,RISC-V是其中唯一的开源ISA。
RISC-V是一种开源的指令集架构,它不是一款CPU芯片,甚至不是一个完整的指令集,它是指令集规范和标准。RISC-V起源于加州大学伯克利分校,在2010年夏季KrsteAsanovic教授带领他的两个学生AndrewWaterman,YunsupLee启动了3个月项目,针对X86和ARM架构复杂和IP授权的原因,希望开发简化和开放的指令集架构。
RISC-V基金会创建于2015年,是一家非盈利组织。基金会董事会由Bluespec、Google、Microsemi、NVIDIA、NXP、UCBerkeley、WesternDigital7家单位代表组成,主席目前是KrsteAsanovi教授,基金会为核心芯片架构制定标准和建立生态,标准是公开免费下载。基金会旗下有400余家以上的付费成员,包括高通、NXP、阿里巴巴和华为等,RISC-V基金会成员可以使用RISC-V商标,RISC-V采用开源BSD授权,任何企业、高校和个人都可以遵循RISC-V架构指南设计自己的CPU。RISC-V基金会总部从美国迁往瑞士,并于2020年3月完成在瑞士的注册,基金会更名为RISC-V国际基金会(RISC-VInternationalAssociation)2。
十年来RISC-V蓬勃发展,在CPUIP核,平台、SoC芯片和应用上都有了相当数量的发展,比如,应用上有西部数据设计的SSD和HDD控制器,内核是SweRVCore,中科蓝芯开发的蓝牙耳机芯片,嘉楠科技的K210AIOT芯片,南京沁恒电子的蓝牙MCU、32位通用MCU和高速接口的MCU,它们的内核都是RISC-V。
开源处理器RISC-V行业展览推荐
2021年9月1-3日,ELEXCON深圳国际电子展暨嵌入式系统展将专门打造『RISC-V技术专区』,汇聚行业内领先企业,全面展示RISC-V软硬件开发、RISC-V开发工具、RISC-V处理器应用、开源技术等新技术、新产品和新方案,迎接芯片行业发展的历史性机遇!联系我们:(86)755-88311535
▼2021部分参展商

RISC-V指令集介绍
RISC-V的指令集使用模块化的方式进行组织,每个模块使用一个英文字母来表示。RISC-V最基本、也是唯一强制要求实现的指令集是由I字母表示的整数指令子集。使用该整数指令子集,便能够实现完整的软件编译器。其他的指令子集部分均为可选的模块,其代表性的模块包括M/A/F/D/C,比如某款RISC-V处理器内核是RV32IMAC,即代表实现了I/M/A/C指令集,。RISC-V指令集发展变化中,32I和64I已经冻结,MAFDQC指令扩展是冻结了,指令集如32E,128I,LBJTPV和ZAM原子访问扩展还在开发中,指令集扩展是RISC-V的技术特色,广泛征求会员单位和产业界的意见是RISC-V发展合理的路径3。
表1RISC-V部分指令集描述
RISC-V处理器核、SoC平台和SoC芯片
3.1RISC-V处理器核
在详细阐述RISC-V处理器嵌入式开发之前,我们首先梳理一下几个概念:RISC-V处理器核心(Core,简称核),SoC平台和SoC芯片,以及开发者如何选择它们。自RISCV架构诞生以来出,市场上已有数十个版本的RISC-V核和SoC芯片,它们中一部分是开源免费,某些是商业公司开发用于内部项目的,还有商业公司开发的处理器核和平台。西部数据的SweRV架构(RV32IMC)是一个32bit顺序执行指令架构,具有双向超标量设计和9级流水线,采用28nm工艺技术实现,运行频率高达1.8GHz,可提供4.9CoreMark/MHz的性能,略高于Arm的CortexA15,已经用在西部数据的SSD和HDD控制器上使用,SweRV项目是开源的项目。
典型的开源的RISC-V核有RocketCore,它是美国加州大学伯克利分校开发一个经典的RV64设计,伯克利分校还开发一个BOOMCore,它与RocketCore不同的是面向更高的性能。苏黎世理工大学(ETHZurich)开发的Zero-riscy,它是经典的RV32设计,苏黎世理工大学另外一款R15CYCore,可配置成RV32E,面向的是超低功耗、超小芯片面积的应该场景。由CliffordWolf开发RISC-VCorePicoRV32,重点在于追求面积和CPU频率的优化。
开源的核用于研究和教学很合适,但是用于商业芯片设计还有许多工作要做。SiFive(赛昉科技)由YunsupLee创立,他也是RISC-V的创始人之一。2017年公司发布首个RISC-V核和SoC平台家族,以及相关支持软件和开发板,这些芯片包括采用28纳米制造技术的64位多核CPUU500,支持Linux操作系统,以及采用180纳米制造技术的多外设低成本IoT处理器核E300。开发RISC-V处理器核的厂商还包括Codasip、Syntacore、T-Head(平头哥)Andes(晶芯科技),以及创业公司芯来科技和/span>
3.2RISC-VSoC平台
知名的RISC-V处理器SoC平台有瑞士理工大学的PULPino,开源项目LowRISC
以及RocketChip-伯克利分校基于Chisel开发的开源SoC生成器。芯来科技胡振波发起的蜂鸟E200开源项目4,配合他的图书,是在国内知名度非常高的开源软核SoC平台之一。在64位SoC平台方面,平头哥半导体发展很快,先后推出了玄铁C906单核和玄铁C910多核高性能64位RISC-V处理器。
图1蜂鸟E200RISC-V处理器
3.3RISC-VSoC芯片
RISC-V处理器SoC芯片近年发展迅速,知名度较大的通用性SoC芯片有兆易创新开发的GD32VF103MCU芯片,该芯片基于芯来Bumblebee内核(RV32IMAC)。GD32VF103系列提供了108MHz的运算主频,16KB到128KB的片上闪存和6KB到32KB的SRAM,有4个16位通用定时器,2个16位基本定时器和2个多通道DMA控制器。GD32VF103MCU全新设计的中断控制器(ECLIC)提供了多达68个外部中断并可嵌套16个可编程优先级,以增强高性能控制的实时性。
GD32VF103MCU开发板有GD32VF103V-EVAL全功能评估板以及GD32VF103-START入门级学习板。还有芯来科技开发RV-START,以及SipeedLonganNano开发板5和IAR最新的IARRISC-VGD32EVAL评估套件6,见下图。
图2IARRISC-VGD32V评估套件
嘉楠科技K210是一个AIOTSoC芯片,K210包含RISC-V64位双核CPU,采用双RV64GCCore,MAFDISA指令标准扩展。K210包含KPU通用神经网络处理器,内置卷积可以对人脸或物体进行实时检测,K210的FFT加速器是用硬件的方式来实现7。
NXPRV32M1集成了4个核:RISC-VRI5CY核,RISC-VZERO-RISCY核,ARMCortexM4核和ARMCortex-M0+核。从专业人士视角看,RV32M1更像是工程实验样品,用来给开发者评估使用,为此NXP为开发者创建https://open-isa.org/社区,维护工具链和软件生态,通过赠送开发板和举办大赛为开发者学习RISC-V嵌入式开发提供了便利,在早期市场培育期发挥重要的作用8,见下图。
图3NXPRISC-V织女星开发板
MicrochipPolarFireSoC芯片是一款低成本,多核RISC-VSoCFPGA,包含了4个64-bitRV64GCRISC-V应用核,可运行Linux,一个单核RV64IMAC做实时和监控任
务,这是一款适合工业控制和物联网应用的开发平台。
3.4RISC-V核、平台和芯片究竟该如何选择呢?
近期关注RISC-V处理器研究、开发和教学的人士开始增多,笔者的建议:
(1).芯片设计者可选择RISC-V核和SoC平台构建自己的芯片。比如,使用PULPino平台开发SoC芯片,内核使用RI5CY和Zero-risky,国内企业和高校研究项目都有在使用。
(2)建议嵌入式和物联网系统开发者使用RISC-VSoC芯片。比如,选择GD32VF103系列MCU芯片做嵌入式项目开发,GD32VF103有多款开发板和开发工具链支持。AIOT应用可以选择K210,K210开发软件SDK非常成熟,支持freertos和裸机,最近Linux5.8正式将K210RISC-V纳入主线,K210已经成功应用在人脸识别和智能抄表等机器视觉和机器听觉领域。
(3)高校和研究机构可以选择开源RISC-V核在FPGA平台上进行计算机体系架构、操作系统,编译技术以及嵌入式系统教学和研究工作。比如,ArtyFPGA开发板上实现一个SiFive开源FreeedomE310微控制器的技术已经非常成熟,相应软件工具链支持的很好9,见下图。
图4可以配置RISC-V软核的ArtyFPGA开发板
RISC-V给嵌入式系统带来的优势
我们上一节讨论了RISC-V处理器核、平台和芯片。很明显,嵌入式与物联网以及AIOT是RISC-V最活跃的应用市场,RISC-V给嵌入式系统带来许多优势,我仅就以下三点做个阐述:
(1)开源和免费。开源是新的经济方式,是成功的商业之道,也学生和工程师学习最佳途径。ISA开源意味着开发者可以针对特定应用场景,创造自己的芯片架构,免费则可以降低芯片设计门槛,让草根开发者进入芯片设计领域。
(2)简单和灵活。RISC-V基础的指令集有50条,模块化的4个基本指令集能让设计者。开发出很简化的RISC-VCPU,代码密度低功耗很小的芯片,覆盖从8051-ARMA系列各种嵌入式处理器。
(3)高效和安全。RISC-V通过预留编码空间和用户指令支持扩展的指令集,通过指令集扩展实现运算加速和物联网安全。物联网保护的一种通用的途径是分层,分为信任执行环境(TEE)和非信任环境。RISC-VISA的设计将TEE硬件要求定义为标准规范的一部分,可以在任何RISC-V芯片上实现,包括配置物理内存保护(PMP),PMP类似ARM处理器内存保护单元(MPU)。
HEX-FIVE公司在RV32Core做了IoT分区保护的应用案例10,见下图4,软件可参考开源代码https://github.com/hex-five/multizone-secure-iot-stack。从图中我们可以看到,SOC芯片是X300Bitstream,采用是开源RocketRV32IMAC内核。DigilentARTYA7FPAG开发板,配有以太网。软件上MultiZone安全可信执行环境配置成4区:
(1)Zone1区,运行FreeRTOS有三个任务,分别是CLI任务,PWMLED任务,机器人手臂控制任务。
(2)Zone2区,移植以太网,运行PicoTCP软件协议,TCP信道进行了TLS加密。
(3)Zone3区:运行WolfSSLTLS1.3,存储信任根,加密密钥,密码以及受保护的文件等放在这个区域。
(4)Zone4区,UART本地终端应用。
图5MultiZoneSecurityIoTStackRISC-V平台应用案例
更多技术干货
更多内容关于:⑤支持RISC-V开源和商业软件开发工具和操作系统的现况,最后⑥展望RISC-V在教育和产业应用的发展趋势。请见姊妹篇推文!
#作者简介#
何小庆是知名的嵌入式系统专家,中国软件行业协会理事、嵌入式系统联谊会秘书长,长期从事嵌入式与物联网技术、市场和教育工作。有《嵌入式操作系统风云录》,《嵌入式实时操作系统μC/OS-III应用开发》和《嵌入式软件精解》多本中英文著译作,2021年将出版《深入RISC-V软件开发》和《嵌入式实时操作系统》。
开源处理器RISC-V行业展览推荐
2021年9月1-3日,ELEXCON深圳国际电子展暨嵌入式系统展将专门打造『RISC-V技术专区』,汇聚行业内领先企业,全面展示RISC-V软硬件开发、RISC-V开发工具、RISC-V处理器应用、开源技术等新技术、新产品和新方案,迎接芯片行业发展的历史性机遇!联系我们:(86)755-88311535
▼2021部分参展商

来源|本文刊登在《单片机与嵌入式系统应用》2020年11期,授权博闻创意会展(深圳)有限公司转载,谢谢。
2021年9月1-3日深圳国际会展中心·宝安
深耕电子产业近30年,由博闻创意(深圳)主办的ELEXCON电子展暨嵌入式系统展将充分发挥本土资源优势,推动中国电子全产业链的共享式发展,2021年将以“聚焦电子技术创新与产业链重塑”为主题,全面展示5G、AIoT、大数据、嵌入式技术、医疗电子、汽车智能技术、智能制造、北斗卫星等领域的新技术、新产品和新方案,同期举办数十场专业技术论坛,邀请超百位全球产业智囊和专家演讲。届时,Informa英富曼集团将全力打造“光+电”全产业链航母旗舰大展!同期总面积达20万+,参观观众达13万+。
联系我们(86)755-88311535
新闻来源:爱集微APP,文中所述为作者独立观点,不代表icspec立场。更多精彩资讯请下载icspec App。如对本稿件有异议,请联系微信客服specltkj。
暂无评论哦,快来评论一下吧!
2026-06-01

2026-06-09