0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

RISC-V是什么?如何基于此设计微控制器

电子设计 来源:电子设计 作者:电子设计 2020-10-30 07:58 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在不断创新并保护其知识产权 (IP) 的同时,还需兼顾低功耗和低成本,致使设计人员持续面临着压力。因此,对于移动应用处理器的设计人员而言,RISC-V 开源硬件指令集架构 (ISA) 值得留意。既然 RISC-V 已成为微控制器的一个选项,嵌入式系统和消费类设备的设计人员需要学习如何着手将 RISC-V 整合至自己的设计。

GroupGets LLC 的 FE310 LoFive-R1 开发板为此提供了一条捷径。在介绍 LoFive-R1 之前,本文将介绍 RISC-V 并说明开发人员应考虑使用该架构的原因。然后,本文将详细介绍 LoFive-R1,说明如何着手应用开发以及可用的一些技巧与诀窍。

什么是 RISC-V?

RISC-V 是一个开源硬件指令集架构项目,2010 年始于加州大学伯克利分校。构建 RISC-V 架构的原因很多,包括:


满足对开源指令集架构 (ISA) 的需求,以供大学项目学术研究和学生使用


分享 ISA 开发设计专业知识的途径


避免向现有芯片公司支付特许权使用费以节省成本的方法


保护架构(公司 IP)的设计细节以保持商业可行性

就设计人员而言,RISC-V 是一种专为高速和低功耗而设计的简化架构。因此,基于 RISC-V 的芯片不仅适用于学术界,也非常适合商业应用。实际上,RISC-V 基金会备受关注,目前已吸纳约 325 名成员,其中包括 Si-Five、Google、Microchip Technology、NVIDIA 和 Qualcomm 等公司。

为 RISC-V 开发做出贡献的公司虽不少,但对于普通开发人员而言,获得 RISC-V 实践经验的最佳方法是找到一款基于 RISC-V 处理器的开发板。

LoFive FE310 开发板

GroupGets LLC 的 LoFive-R1 开发板正是其中之一。


首先,LoFive R1 包含的 RISC-V 处理器最高可在 320 MHz 下运行。该处理器包括 8 KB 的一次性可编程 (OTP) 存储器、8 KB 的掩膜 ROM、16 KB 的指令缓存和 16 KB 的 SRAM。此外,该处理器还具有三个独立脉冲宽度调制 (PWM) 控制器、SPI、I2CUART,甚至 QSPI 闪存接口

其次,该开发板既可焊接针座,也可直接焊接到载板上用作处理器模块(由于其边缘呈圆齿形),无需费时额外采购处理器,从而极大简化了开发人员对定制硬件的设计流程。

再者,该开发板的板载 QSPI 闪存由 Integrated Silicon Solution Inc . (ISSI) 的 IS25LP128 闪存模块提供。IS25LP128 闪存模块容量为 128 Mb(即 16 MB),在四通道输入 / 输出模式下 SPI 总线接口速度高达 133 MHz。该 SPI 闪存模块可用于存储以确保充足的应用程序空间,也可用于存储应用程序日志等运行时数据。

另外,该开发板也可采用 5 V 的工作电压,通过 MaxLinear 的 SPX3819M5 线性稳压器转换为 3.3 V。该稳压器采用 SOT23-5 封装,却可提供高达 500 mA 的电流。该开发板消耗电流较小,因此可支持其他传感器和器件,而无需额外添加电源电路

最后,该开发板的原理图和物料清单等所有设计细节均可从 github 获取。这些信息有助于开发人员理解该开发板的工作原理,也可用作定制开发项目的设计指南。

RISC-V 工具链设置和开发板编程

开发人员会发现 RISC-V 可用的工具链有多种,具体取决于所选择的开发板。需要注意的是,适用于 RISC-V 的 SDK 支持 Windows、macOS 和 Linux。本文将展示用于 Linux 的开发板设置方法。

首先,在终端上使用以下命令从 git 中签出 LoFive Freedom-E SDK:


git clone --recursive https://github.com/mwelling/freedom-e-sdk.git

然后,使用以下命令进入按 SDK 创建的目录:


cd freedom-e-sdk

该开发板可用的 SDK 有两款。第一款称为“旧版 SDK”,因为版本较旧。请使用新版 SDK,其中包括预构建的工具链和用于调试的 OpenOCD。使用以下命令签出 SDK:


git checkout lofive-r1


git submodule sync


git submodule update –init –recursive

开发板编程可通过几种不同的方式完成。首先,该处理器具有标准 JTAG 信号,可通过 LoFive-R1 扩展连接器获取该信号。开发人员可以使用任何支持 JTAG 的编程器,例如 SEGGER 的 J-Link 。若没有相应的编程器,开发人员也可使用 FTDI 的 FT2232H-56Q Mini MDL 等低成本的 USB 转串口转换器。FT2232H-56Q Mini MDL 模块可提供连接 LoFive-R1 开发板所需的所有连接和分线。SDK 可使用 FT2232H-56Q 的通用 I/O 来构建必要的 JTAG 连接,实现对微控制器的编程。

LoFive-R1 开发板与 FT2232H-56Q 模块之间需要九个不同的连接(表 1)。

表 1:LoFive-R1 开发板与 FT2232H-56Q 模块的连接简表。

上述连接可以总结为:


电源和接地


JTAG 信号


UART 信号

连接可以采用直连法,也可使用 Global Specialties 的 PB-83M 等试验板来完成。该试验板的香蕉插孔可用于连接两个电压源和接地,以简化原型开发。

首次使用 LoFive-R1 时,建议先安装板载引导程序。引导程序只需安装一次,后续即可轻松升级。通过执行以下命令,即可从 SDK 中加载引导程序:


make PROGRAM=lofive-boot TARGET=lofive-r1-bootloader upload

然后,使用以下命令将 "hello world" 应用程序加载到开发板:


make PROGRAM=sifive-welcome TARGET=lofive-r1 upload

至此,开发人员就已完成了首个 RISC-V 应用程序编写,此后的扩展则具有无限可能。

RISC-V 的使用技巧与诀窍

RISC-V 处理器入门与标准微控制器生态系统有所不同。 以下是几点“技巧与诀窍”:

签出 LoFive-R1 SDK 后,花时间查看主目录下的 README.md 文件。其中包含了在何处能找到 SDK 说明文档、板级支持包及其他有用信息。


若有 SEGGER 的 J-Link 等专业调试探测器,即可用于 RISC-V 处理器的应用程序编程。自 2017 年以来,J-Link 一直支持 RISC-V。
如果开发人员偏好使用 IDE 而非命令行工具,可以考虑使用 Freedom Studio(基于 Eclipse 的 IDE)进行 RISC-V 开发。
首次使用 RISC-V 时,只需遵循这些“技巧与诀窍”,开发人员即可节省大量时间和精力。

总结

对于希望使用开源硬件架构的开发人员而言,RISC-V 架构值得留意。目前,市面上已有基于 RISC-V 处理器的开发板,如本文所述,工具链设置难度与任何其他标准微控制器差别不大。

RISC-V 虽令人着迷,但是请别忘记,其生态系统对比现有的许多微控制器平台相对贫乏,因此开发人员选择深入探索 RISC-V 后,就会发现可用的选择和资源很少。权衡取舍不失为良策,具体取决于最终应用以及开发人员的偏好和资源。

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    49

    文章

    8830

    浏览量

    165582
  • RISC-V
    +关注

    关注

    49

    文章

    2941

    浏览量

    53520
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    ATtiny28L/V微控制器:低功耗与高性能的完美结合

    ,我们就来深入了解一下这款微控制器。 文件下载: ATTINY28L-4MC.pdf 核心架构:AVR RISC的强大力量 ATtiny28L/V采用了AVR® RISC架构,这是一种
    的头像 发表于 04-07 09:05 95次阅读

    ATtiny2313/V:低功耗8位微控制器的卓越之选

    ATtiny2313/V:低功耗8位微控制器的卓越之选 在嵌入式系统设计领域,选择合适的微控制器至关重要。ATtiny2313/V这款低功耗CMOS 8位
    的头像 发表于 04-06 15:20 610次阅读

    Renesas R9A02G021:32位RISC-V MCU的全方位解析

    Renesas R9A02G021:32位RISC-V MCU的全方位解析 作为一名电子工程师,在日常的硬件设计开发中,选择合适的微控制器(MCU)至关重要。今天,我们就来深入探讨一下Renesas
    的头像 发表于 12-29 09:50 514次阅读

    RISC-V怎么实现核间中断?核心本地中断控制器(CLINT)深度解析

    全称为Core Local Interruptor(核心本地中断控制器),是 RISC-V 特权架构规范(Privileged Architecture Specification)中明确定义的内建
    的头像 发表于 12-13 14:06 2605次阅读
    <b class='flag-5'>RISC-V</b>怎么实现核间中断?核心本地中断<b class='flag-5'>控制器</b>(CLINT)深度解析

    MCU微控制器CH32L103高速电吹风方案

    MCU微控制器是整个电吹风控制系统的指挥中心。英尚微推出的高速电吹风方案,以MCU微控制器CH32L103为主控微控制器,帮助高速电吹风实现高效率、低噪音、高智能和全保护的性能。CH3
    的头像 发表于 11-27 16:20 573次阅读

    易灵思Sapphire SoC中RISC-V平台级中断控制器深度解析

    随着 RISC -V处理在 FPGA 领域的广泛应用,易灵思 FPGA 的 Sapphire RISC-V 内核凭借软硬核的灵活支持,为开发者提供多样选择。本文深入探讨 Sapph
    的头像 发表于 11-08 09:35 8008次阅读
    易灵思Sapphire SoC中<b class='flag-5'>RISC-V</b>平台级中断<b class='flag-5'>控制器</b>深度解析

    为什么RISC-V是嵌入式应用的最佳选择

    最近RISC-V基金会在社交媒体上发文,文章说物联网和嵌入式系统正在迅速发展,需要更高的计算性能、更低的功耗和人工智能。RISC-V是为未来而建的,包括超高效的MCU到高性能应用处理RIS
    的头像 发表于 11-07 10:09 1790次阅读

    RISC-V B扩展介绍及实现

    的扩展,它提供了一些常见的位操作和压缩指令,从而增强了RISC-V的位运算和压缩指令的能力。 对于位操作,B扩展增加了两个寄存-位移结果寄存(RZ)和位位掩码寄存(RM)。前者可
    发表于 10-21 13:01

    RISC-V 手册

    以下是关于RISC-V的详细介绍,结合其核心技术特点与当前发展现状:核心概念RISC-V(第五代精简指令集)是一种基于精简指令集(RISC)的开源指令集架构(ISA),由加州大学伯克利分校于2010
    发表于 07-28 16:27 11次下载

    2025新思科技RISC-V科技日活动圆满结束

    新思科技深度参与2025 RISC-V中国峰会并于2025年7月16日举办同期活动“新思科技RISC-V科技日”技术论坛,聚焦“从芯片到系统重构RISC-V创新”主题,议题覆盖当前最前沿的技术领域
    的头像 发表于 07-25 17:31 1573次阅读

    先楫半导体亮相2025 RISC-V中国峰会,展现高性能实时控制芯片创新实力

    线下参与。国产高性能微控制器产品及嵌入式解决方案提供商“上海先楫半导体科技有限公司”(先楫半导体,HPMicro)携全矩阵高性能MCU产品亮相科技展区,并在嵌入式系统
    的头像 发表于 07-21 08:33 1909次阅读
    先楫半导体亮相2025 <b class='flag-5'>RISC-V</b>中国峰会,展现高性能实时<b class='flag-5'>控制</b>芯片创新实力

    【好书推荐】RT-Thread第18本相关书籍!RISC-V嵌入式系统设计 | 技术集结

    内容简介《RISC-V嵌入式系统设计》是一本专为嵌入式系统初学者编写的实用入门教材,围绕当前热门的国产RISC-V微控制器CH32V307展开系统讲解。全书涵盖嵌入式系统概论、
    的头像 发表于 07-11 17:05 1092次阅读
    【好书推荐】RT-Thread第18本相关书籍!<b class='flag-5'>RISC-V</b>嵌入式系统设计  | 技术集结

    RISC-V和ARM有何区别?

    在微处理架构领域,ARM与RISC-V是两个备受关注的体系。ZLG致远电子在推出ARM核心版后,又推出了基于RISC-V的MR6450核心版,这引发了人们对这两种架构差异的深入探讨。ARM
    的头像 发表于 06-24 11:38 2211次阅读
    <b class='flag-5'>RISC-V</b>和ARM有何区别?

    MAX7800X AI 微控制器开发人员资源

    使用我们的超低功耗 AI 微控制器实现真正的边缘智能 MAX78000 MAX78002 是 Arm® M4F AI 微控制器,带有 RISC-V® 协处理和基于硬件的卷积神经网络
    的头像 发表于 05-14 15:09 1588次阅读
    MAX7800X AI <b class='flag-5'>微控制器</b>开发人员资源

    RISC-V赛道的“硬核”突围之路

    。 Omdia发文称,最近三年,越来越多的RISC厂商进入RISC-V,含RISC-V技术的处理加速以惊人的速度增长,2020年至202
    的头像 发表于 04-24 15:34 669次阅读
    <b class='flag-5'>RISC-V</b>赛道的“硬核”突围之路