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

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

3天内不再提示

芯来科技RISC-V处理器将支持鸿蒙LiteOS-M内核

芯来科技 来源:芯来科技 作者:芯来科技 2021-04-09 15:20 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

芯来科技为方便客户进行基于鸿蒙生态的RISC-V软件开发,在Nuclei RISC-V 32位处理器上移植并适配了鸿蒙LiteOS-M内核。

目前该内核已可支持Nuclei Demo SoC——FPGA评估软核,和基于芯来科技的RISC-V内核的MCU——GD32VF103。

LiteOS-M内核

OpenHarmony LiteOS-M内核针对MCU类处理器,例如Arm Cortex-M、RISC-V32位的设备,面向AIoT领域构建的轻量级物联网操作系统内核。此内核具有小体积、低功耗、高性能的特点。其代码结构简单,主要包括内核最小功能集、内核抽象层、可选组件以及工程目录等,分为硬件相关层以及硬件无关层,硬件相关层提供统一的HAL(Hardware Abstraction Layer)接口,提升硬件易适配性,满足AIoT类型丰富的硬件拓展。

666d86e0-9902-11eb-8b86-12bb97331649.png

OpenHarmony LiteOS-M核内核架构图

芯来开发板

芯来科技目前有两款开发板可以快速体验最新鸿蒙LiteOS-M内核:

Nuclei DDR200T——集成了FPGA和通用MCU的RISC-V评估开发板,以及RV-STAR——基于GD32VF103 MCU的RISC-V评估开发板。

Nuclei DDR200T开发板采用12V外部直流电源,包含一个MCU子系统和一个FPGA子系统。

FPGA子系统采用Xilinx XC7A200T-2 FPGA芯片,并且提供板载FPGA JTAG下载器,不需额外配置FPGA下载器即可完成内核的烧写。此外,开发板还提供丰富的板载存储(Flash,DDR, eMMC, EEPROM)和丰富的接口资源(数字,模拟),以及蜂鸟调试器接口,方便下载调试。

Nuclei Demo SoC(FPGA评估软核)就可以烧写在这块FPGA子系统上运行。

NucleiRV-STAR开发板

Nuclei RV-STAR开发板采用GD32VF103VBT6微控制器,结合芯来科技Bumblebee内核,内置128KB Flash、32KB SRAM。开发板外设资源众多,包括:

Timer(高级16位定时器*1,通用16位定时器*4)、U(S)ART*5、I2C*2、SPI*3、CAN*2、USBFS*1、ADC*2(16路外部通道)、DAC*2、EXMC*1。开发板还提供大量接口,包括:USB Type-C接口、Micro USB接口、microSD卡插槽(默认没焊接)、JTAG接口、PMOD接口*2(SPI、I2C)、双排标准2.54mm排母接口:Arduino兼容接口(外侧),EXMC扩展接口(内侧)以及用户按键*2(复位、唤醒)。

芯来内核

本次OpenHarmony LiteOS-M内核支持针对芯来科技N级别内核RV32架构,并采用N307FD内核作为使用示例。

N300系列32位超低功耗RISC-V处理器面向机制能效比且需要DSP,FPU特性的场景而设计,非常适合对标ARM Cortex-M3/M4/M4F/M33内核,应用于IoT工业控制等场景。

68e0e39a-9902-11eb-8b86-12bb97331649.png

芯来LiteOS-M内核使用

芯来LiteOS-M内核仓库链接如下:https://gitee.com/riscv-mcu/kernel_liteos_m/tree/dev_nuclei/

仓库内整体文件结构直观明了,在各开发板对应的target文件夹中较为详细的列出各文件/文件夹的作用,便于理解和使用。

芯来科技本次支持的所有工程均采用makefile编译管理,芯来科技GCC工具链编译,资源集中,所有需要的内容均可在芯来官网找到。

这里以RV-STAR开发板为例,介绍仓库的使用方法:

下载工具链并配置驱动

打开芯来科技文档与工具页面,按照以下步骤下载工具链:

CentOS或Ubuntu系统请点击图中红框1下载RISC-V GNU工具链;

点击图中蓝框2-1下载64bit的OpenOCD;

确保make工具版本不低于3.82;

Ubuntu系统使用以下指令安装make工具

sudo apt-getinstall make

CentOS系统使用以下指令安装

sudo yum installmake

6a273dee-9902-11eb-8b86-12bb97331649.png

新建Nuclei文件夹并在此文件夹中新建gcc文件夹和openocd文件夹;

解压缩之前下载的GNU工具链到任意文件夹中,复制其中bin文件件所在层级的所有内容到gcc文件夹中;

同样解压缩之前下载的OpenOCD到任意文件夹中,复制其中bin文件件所在层级的所有内容到openocd文件夹中。

工具链下载完成后,需要配置驱动,步骤如下:

连接开发板到Linux中,确保USB被Linux识别出来;

在控制台中使用lsusb指令查看信息,参考的打印信息如下:

Bus001Device010: ID0403:6010FutureTechnologyDevicesInternational, LtdFT2232xxxx

将github

https://github.com/riscv-mcu/ses_nuclei_sdk_projects/blob/master/misc/99-openocd.rules

上misc文件夹内99-openocd.rules文件复制到当前路径下,控制台中输入以下指令复制文件到指定路径下;

sudo cp99-openocd.rules /etc/udev/rules.d/99-openocd.rules

断开调试器再重新连接到Linux系统中;

使用ls /dev/ttyUSB*命令查看ttyUSB信息,参考输出如下:

/dev/ttyUSB0 /dev/ttyUSB1

使用ls -l /dev/ttyUSB1命令查看分组信息,参考输出如下。可以看到ttyUSB1已经加入plugdev组,接下来我们要将自己添加到plugdev组。使用whoami命令查看当前用户名,我们将其记录为< your_user_name >;

crw-rw-r--1 rootplugdev188, 1 Nov28 12:53/dev/ttyUSB1

使用sudo usermod -a -G plugdev 命令将自己添加进 plugdev 组;

再次确认当前用户名已属于plugdev组,使用groups命令,可以看到打印信息中有plugdev即成功将当前用户添加至plugdev组。

编译源码

请在当前控制台中配置NUCLEI_TOOL_ROOT路径,假设Nuclei文件夹所在路径为/home/Nuclei,输入:

exportNUCLEI_TOOL_ROOT=/home/Nuclei

或者使用时make选项增加:

NUCLEI_TOOL_ROOT=/home/Nuclei

复制仓库代码到本地。在命令行中输入:

git clone https://gitee.com/riscv-mcu/kernel_liteos_m.git

复制代码到本地;

打开至代码根目录下

/target/riscv_nuclei_gd32vf103_soc_gcc/GCC

输入:makeall

开始编译,编译结束后部分参考输出如下:

text data bss dec hex filename 243301121676841210a0fa build/Nuclei-rvstar-gd32vf103-soc.elf

若编译前想清理工程,请使用:

makeclean

下载调试、运行

调试或运行前请先连接RV-STAR开发板,确保已按照环境配置中驱动配置部分配置完成。

同样配置好NUCLEI_TOOL_ROOT路径,并打开至代码根目录下的:

/target/riscv_nuclei_gd32vf103_soc_gcc/GCC

输入:

makedebug

进入GDB调试;

等待到进入GDB调试界面时,输入:

load

下载编译好的elf文件,就可以开始调试;

若想直接运行,请同样在调试时所在位置输入:

makeupload

运行时可以查看串口打印内容,使用串口查看工具,这里以minicom为例,若未安装此工具可自行安装或使用其他串口查看工具。打开控制台,输入:

minicom-D /dev/ttyUSB1 -b 115200

打开串口查看工具。

运行时参考输出如下:

6a5a84a6-9902-11eb-8b86-12bb97331649.png

总结

本次芯来RISC-V内核支持LiteOS-M内核完成了基于ECLIC的OpenHarmony LiteOS-M内核任务调度移植适配工作,以及芯来内核timer移植适配工作。编译上采用make编译管理系统,各参数区分配置,简单易懂。完全适配芯来GCC编译器,资源集中,便于查找。使用上简单易懂,仅两条指令可完成编译运行。针对不同的开发板创建了不同的工程,可直接运行使用。在根目录下target文件夹内,各开发板对应的工程文件夹配有较为详细的使用说明,可参考说明搭建编译运行环境。

编辑:jq

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

    关注

    559

    文章

    8214

    浏览量

    363847
  • 芯片
    +关注

    关注

    462

    文章

    53530

    浏览量

    458869
  • 鸿蒙系统
    +关注

    关注

    183

    文章

    2642

    浏览量

    69328

原文标题:芯来科技RISC-V处理器支持鸿蒙LiteOS-M内核

文章出处:【微信号:nucleisys,微信公众号:芯来科技】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    直播预约 |开源芯片系列讲座第30期:“一生一”计划——从零开始设计自己的RISC-V处理器芯片

    从零开始设计自己的RISC-V处理器芯片报告简介处理器芯片是计算机系统的重要组成部分。“一生一”计划指导学生从零开始设计一款
    的头像 发表于 11-10 12:03 398次阅读
    直播预约 |开源芯片系列讲座第30期:“一生一<b class='flag-5'>芯</b>”计划——从零开始设计自己的<b class='flag-5'>RISC-V</b><b class='flag-5'>处理器</b>芯片

    在qemu上体验RISC-V处理器运行鸿蒙LiteOS-M内核

    在qemu上体验RISC-V处理器运行鸿蒙LiteOS-M
    发表于 10-31 09:04

    RT-Thread BSP全面支持玄铁全系列RISC-V 处理器 | 技术集结

    RT-ThreadBSP全面支持玄铁全系列RISC-V处理器。玄铁系列RISC-V处理器由阿里达摩院研发,涵盖面向MCU的E系列、面向实时应
    的头像 发表于 07-03 18:03 2637次阅读
    RT-Thread BSP全面<b class='flag-5'>支持</b>玄铁全系列<b class='flag-5'>RISC-V</b> <b class='flag-5'>处理器</b> | 技术集结

    科技新一代RISC-V高性能处理器IP UX1030H 全面支持RVA23

    2025年6月24日,上海 —— 在RISC-V生态持续推进标准化、高性能发展的背景下,国内对具备虚拟化能力、安全隔离机制及高并发处理能力的处理器需求显著增长。今日,
    的头像 发表于 06-24 09:20 2275次阅读
    <b class='flag-5'>芯</b><b class='flag-5'>来</b>科技新一代<b class='flag-5'>RISC-V</b>高性能<b class='flag-5'>处理器</b>IP UX1030H  全面<b class='flag-5'>支持</b>RVA23

    HXS320F28027数字信号处理器(32位RISC-V DSP)

    HXS320F28027数字信号处理器(32位RISC-V DSP)HXS320F28027是中科昊(Haawking)基于自主研发的H28x内核推出的32位定点
    发表于 05-21 10:21

    创科技M76P00_M73P00_Datasheet中文数据手册免费下载 RISC-V内核 主频552MHz的DSP实时处理器

    创科技M76P00_M73P00_Datasheet中文数据手册免费下载 RISC-V内核 主频552MHz的DSP实时处理器
    的头像 发表于 05-14 16:40 1084次阅读
    匠<b class='flag-5'>芯</b>创科技<b class='flag-5'>M76P00_M</b>73P00_Datasheet中文数据手册免费下载  <b class='flag-5'>RISC-V</b><b class='flag-5'>内核</b> 主频552MHz的DSP实时<b class='flag-5'>处理器</b>

    创科技M7000系列选型表分享 RISC-V内核的高性能DSP实时处理器 适配机器人

    创科技M7000系列选型表分享 RISC-V内核的高性能DSP实时处理器 适配机器人
    的头像 发表于 05-14 16:15 950次阅读
    匠<b class='flag-5'>芯</b>创科技<b class='flag-5'>M</b>7000系列选型表分享  <b class='flag-5'>RISC-V</b><b class='flag-5'>内核</b>的高性能DSP实时<b class='flag-5'>处理器</b> 适配机器人

    2025RISC-V技术研讨会苏州站成功举办

    近日,2025RISC-V技术研讨会@苏州站活动成功举办。此次苏州站研讨由科技与劳特巴赫中国联合主办,同时也感谢上海开放
    的头像 发表于 03-26 11:50 1044次阅读

    科技携手芒科技发布RISC-V CPU系统仿真平台

    专业RISC-V处理器IP及解决方案公司科技与杭州芒科技深入合作,共同研发推出
    的头像 发表于 03-19 14:36 1364次阅读

    全国首个!深开鸿LiteOS-M操作系统内核荣获EAL5+安全认证!

    近日,深开鸿在信息安全领域实现重大突破!深开鸿携手北京中关村实验室,通过对开源社区版LiteOS-M内核进行代码级安全加固,成功研发自主可控的增强型LiteOS-M安全内核,率先获得中
    的头像 发表于 02-24 19:26 793次阅读
    全国首个!深开鸿<b class='flag-5'>LiteOS-M</b>操作系统<b class='flag-5'>内核</b>荣获EAL5+安全认证!

    Imagination放弃RISC-V处理器内核开发

    电子发烧友网报道(文/吴子鹏)根据外媒的最新报道,半导体IP大厂Imagination Technology已经停止了RISC-V处理器内核的开发,转而更加专注于其核心的GPU和AI产品
    的头像 发表于 01-10 00:15 3255次阅读

    Andes晶心科技推出D45-SE RISC-V处理器

    Andes晶心科技(TWSE:6533; SIN US03420C2089; ISIN:US03420C1099)是全球高效能、低功耗 32/64 位 RISC-V 处理器的领导厂商,也是
    的头像 发表于 12-26 10:54 1488次阅读

    HighTec C/C++编译套件全面支持RISC-V IP

    是基于LLVM开源汽车级C/C++编译工具,已通过ISO 26262 ASIL D的安全认证。从事RISC-V架构开发的汽车软件开发者受益于这些工具无缝支持
    的头像 发表于 12-23 09:04 1997次阅读
    HighTec C/C++编译<b class='flag-5'>器</b>套件全面<b class='flag-5'>支持</b><b class='flag-5'>芯</b><b class='flag-5'>来</b><b class='flag-5'>RISC-V</b> IP

    RISC-V架构及MRS开发环境回顾

    RISC-V被称为开放指令集的主要原因。(4)RISC-V目前的应用 沁恒微电子于2020年2月24日发布了首款基于 RISC-V架构,自主设计的RISC-V3A
    发表于 12-16 23:08

    赛昉科技发布全新RISC-V处理器内核Dubhe-83

    RISC-V软硬件生态企业赛昉科技近日宣布,正式推出其全新RISC-V处理器内核——Dubhe-83(昉・天枢-83),该内核专为AI应用与
    的头像 发表于 12-13 10:59 968次阅读