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

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

3天内不再提示

“狂飙!来感受先楫芯高速双引擎的澎湃动力。”

先楫半导体HPMicro 2022-06-14 11:38 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

先楫半导体的HPM6750集成2个RISC-V 处理器,主频高达816MHz。既然有两个CPU,岂可让它白白浪费?本文来带你一起尝试双核例程,体验双引擎带来的风驰电掣般的感觉。

HPM6750双核采用主从结构,CPU0 和CPU1 采用相同配置:

●支持相同指令集

●相同容量的L1 指令和数据缓存

●相同容量的指令和数据本地存储器:256 KB ILM 和256 KB DLM

CPU0 和CPU1 采用相同的存储器映射,以下为例外:

● CPU 自身的指令/数据本地存储器ILM / DLM 为私有;

●FGPIO 为私有

●平台中断控制器PLIC 为私有

●软件中断控制器PLICSW 为私有

●机器定时器MCHTMR 为私有

CPU0 和CPU1 采用相同的特权模式设置。

361dac98-e72d-11ec-a2f4-dac502259ad0.png

CPU0 为主CPU,CPU1 为从CPU,当复位发生时,系统总是由CPU0 启动,而CPU1 处于待机状态。需要时,由CPU0 装载CPU1 的程序镜像,之后释放CPU1,步骤如下:

1. CPU0 将CPU1 的代码镜像地址写入SYSCTL_CPU1_GPR0 寄存器

2. CPU0 将CPU1 启动代号写入SYSCTL_CPU1_GPR1 寄存器,代号为0xC1BEF1A9

3. CPU0 将SYSCTL_CPU1_LP [HALT] 位清0,即可释放CPU1


双核应用程序的开发步骤如下:

369c9170-e72d-11ec-a2f4-dac502259ad0.png

根据

“E:\sdk_env_v0.9.0\hpm_sdk\samples\multicore\hello”中README_zh.md文件如下:

多核示例工程在Core0上运行"hello word"示例,在core1上运行"rgb_led"示例。

在本工程中:

- 串口输出 "hello world"; 键盘手动输入字符串信息,通过串口打印出来

- RGB LED会在红、绿、蓝三色中依次切换

## 硬件设置

BOOT_PIN 应该设置为:0-OFF, 1-OFF

## 生成和编译多核工程

本示例中:core0示例在FLASH中原地执行, core1工程在ILM里执行。

用户必须先生成和编译__Core1__工程

用户必须在生成和编译完core1工程后再生成和编译__Core0__工程

### 生成core1工程

__CMAKE_BUILD_TYPE__ 必须是 下列选项中的一种:

- *"sec_core_img"*

- *"sec_core_img_release"*

若通过SDK env 包来生成工程,需要用 *"-t sec_core_img"*

### 生成core0工程

__CMAKE_BUILD_TYPE__ 无限制

## 运行现象

- 下载core0示例到设备并运行

- 下载core1示例到设备并运行


本文参照以上说明将在core0和core1中分别新建FreeRTOS相关程序,即在双核上各自运行RTOS

新建Core1程序的SES工程


复制HPM 6750的SDK文件夹“sdk_env_v0.9\hpm_sdk\samples\rtos”下面的freertos_hello实例工程,复制到“sdk_env_v0.9.0\hpm_sdk\samples\multicore\hello\”并重新命名成“FreeRTOS_RISCV1”。

36dc6610-e72d-11ec-a2f4-dac502259ad0.png

修改CMakeLists.txt文件中的配置,增加core1的链接文件,如下图所示:

3713bb42-e72d-11ec-a2f4-dac502259ad0.png

然后根据SDK 开发指南文档《HPM6750EVKMINI_UG》中的工程生成步骤,来生成segger embedded studio的工程文件。SDK env 包来生成工程,需要增加"-t sec_core_img"*

37611860-e72d-11ec-a2f4-dac502259ad0.png

新建Core0程序的SES工程


复制HPM 6750的SDK文件夹“sdk_env_v0.9\hpm_sdk\samples\rtos”下面的freertos_hello实例工程,复制到“sdk_env_v0.9.0\hpm_sdk\samples\multicore\hello\”并重新命名成“FreeRTOS_RISCV”。

修改CMakeLists.txt文件中的配置,增加core0的链接文件,如下图所示:

3790bbf6-e72d-11ec-a2f4-dac502259ad0.png

然后根据SDK 开发指南文档《HPM6750EVKMINI_UG》中的工程生成步骤,来生成segger embedded studio的工程文件。

37d98052-e72d-11ec-a2f4-dac502259ad0.png

编译Core1程序的SES工程

因为core0程序中依赖core1工程编译并转换的源文件,因此,在编译core0程序前,必须先将core1工程编译好。

SDK会生成工程文件FreeRTOS_RISCV在FreeRTOS_RISCV\hpm6750evkmini_build\segger_embedded_studio文件路径下面,通过双击该文件可以直接进入SES(segger embedded studio),并打开该工程,然后编译。

在core1的工程编译完成会生成文件“sec_core_img.c”,并被自动拷贝到core0的工程路径FreeRTOS_RISCV/src/。在core1的FreeRTOS例程中主要完成RGBLED的依次点亮运行。

编译Core0程序的SES工程

在core0的FreeRTOS例程中主要完成RTOS多任务运行。

先在core0的工程增加从核镜像加载处理接口

381d45a8-e72d-11ec-a2f4-dac502259ad0.png

并将该接口放置在board_init之后

388cfc2c-e72d-11ec-a2f4-dac502259ad0.png

多核调试

在进行双核程序调试时,先下载并启动core0的程序。

38c44ba0-e72d-11ec-a2f4-dac502259ad0.png

38feda04-e72d-11ec-a2f4-dac502259ad0.png

先在core0的SES工程中按F5,让core0主核的程序运行;再在core1的SES工程中按F5,让core1的程序运行。

393e91da-e72d-11ec-a2f4-dac502259ad0.png

可以看出core0的程序任务1和任务2,能够轮流执行,并且IDLE任务在他们休眠的间隙能够被调度执行。

对上面的代码稍作调整,调整任务1和任务2的延时时间,其中task2不再延时。

结论

HPM6750 采用双RISC-V 内核,可以方便的适配主核和从核的各种接口,能够充分灵活地利用soc的各种资源。为实时性要求高,控制内容多样的应用提供更为友好的体验。


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

    关注

    0

    文章

    40

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    半导体荣膺“年度优秀AI机器人创新产品奖” | “动力赋能产业升级

    2025年11月6日深圳,在业内知名媒体电子发烧友网主办的第十三届电机控制先进技术论坛上,上海半导体科技有限公司(半导体,HPMicro)凭借其专为机器人关节高精度运动控制量身
    的头像 发表于 11-06 17:06 1211次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体荣膺“年度优秀AI机器人创新产品奖” | “<b class='flag-5'>芯</b>”<b class='flag-5'>动力</b>赋能产业升级

    半导体闪耀2025湾展:以RISC-V技术赋能机器人产业创新

    及科研机构参展。作为全球RISC-V领域的重要参与者及中国高性能微控制器的领军企业,上海半导体科技有限公司(半导体,HPMicro)携全矩阵高性能MCU产品
    的头像 发表于 10-16 14:26 1885次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体闪耀2025湾<b class='flag-5'>芯</b>展:以RISC-V技术赋能机器人产业创新

    半导体完成B+轮融资,中移和创投资加持

    2025年9月10日,上海|国产高性能MCU产品及嵌入式解决方案供应商“上海半导体科技有限公司”(半导体,HPMicro)完成B+轮战略融资,获中国移动旗下中移和创投资加持,投
    的头像 发表于 09-11 08:32 1175次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体完成B+轮融资,中移和创投资加持

    半导体获浦东产业基金战略投资,深入布局机器人赛道创“”领域

    2025年9月5日,上海浦东新区|国产高性能微控制器产品及嵌入式解决方案提供商“上海半导体科技有限公司”(半导体,HPMicro)宣布完成新一轮战略融资,由浦东创投集团旗下科创
    的头像 发表于 09-05 08:33 1805次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体获浦东产业基金战略投资,深入布局机器人赛道创“<b class='flag-5'>芯</b>”领域

    运控龙头“”动向 | 雷赛智能战略投资半导体

    运动控制芯片,为实现核心部件自主可控、提升产业竞争力注入新动力。雷赛赋能、助力,共塑高性能专用“”标杆作为运动控制领域龙头企业,雷赛智能凭借多年在人形机器人
    的头像 发表于 09-03 17:16 3245次阅读
    运控龙头“<b class='flag-5'>芯</b>”动向 | 雷赛智能战略投资<b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体

    口万兆光纤网卡:解锁高速视觉系统的澎湃动力

    身手的舞台。它早已超越普通外设的概念,成为驱动高速视觉、精细成像、实时分析等高级应用的重要引擎。技术根基:构建高速稳定的数据通道这款采集卡的良好性能,源于其深厚的
    的头像 发表于 08-21 14:38 369次阅读
    <b class='flag-5'>双</b>口万兆光纤网卡:解锁<b class='flag-5'>高速</b>视觉系统的<b class='flag-5'>澎湃</b><b class='flag-5'>动力</b>

    半导体高性能MCU入驻立创商城,国产势力再添新动能

    半导体(HPMicro)宣布其全系列高性能MCU芯片正式上架立创商城(LCSC),标志着国产高端MCU在供应链渠道与生态服务方面迈上新台阶,国产势力再添新动能。
    的头像 发表于 07-31 08:32 907次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体高性能MCU入驻立创商城,国产<b class='flag-5'>芯</b>势力再添新动能

    国产“HPM”赋能机器人关节,半导体亮相松山湖IC创新论坛

    。高性能微控制器产品及嵌入式解决方案提供商“上海半导体科技有限公司”(半导体,HPMicro)受邀参会,设立专题展台并进行了主题为《
    的头像 发表于 05-14 15:53 1152次阅读
    国产“HPM<b class='flag-5'>芯</b>”赋能机器人关节,<b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体亮相松山湖IC创新论坛

    半导体HPM6E8Y:实时控制芯片驱动的机器人关节“”时代

    及产品总监费振东带来了一款实时控制芯片驱动——HPM6E8Y。     据费振东介绍,半导体HPM6E8Y系列高性能MCU芯片为机器人关节的高精度运动控制量身打造,具有高性能、高集成度、小封装及简单易用等特点。HPM6E8Y系列通过内置的SoC
    发表于 05-13 11:50 1597次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体HPM6E8Y:<b class='flag-5'>先</b><b class='flag-5'>楫</b>实时控制芯片驱动的机器人关节“<b class='flag-5'>芯</b>”时代

    重磅更新 | 半导体HPM_APPS v1.9.0发布

    重磅更新 | 半导体HPM_APPS v1.9.0发布
    的头像 发表于 05-13 11:29 1356次阅读
    重磅更新 | <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体HPM_APPS v1.9.0发布

    人形机器人火爆背后,半导体解构运动控制芯片进化密码

    。近年来,全球人形机器人产业规模持续扩大,预计未来十年将继续保持高速增长的趋势。 作为国产高性能RISC-V内核MCU芯片设计企业,半导体的产品涵盖微控制器芯片及其解决方案,已贯通从感知、通讯到运动、控制的整个控制链
    发表于 05-07 16:40 4446次阅读
    人形机器人火爆背后,<b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体解构运动控制芯片进化密码

    600MHz RISC-V 核加持!HPM6P00重新定义国产高性能混合信号MCU

    2025年3月25日,上海——高性能微控制器及嵌入式解决方案提供商上海半导体科技有限公司(半导体,HPMicro)正式发布全新一代高性能混合信号微控制器——HPM6P00系列,
    的头像 发表于 03-25 08:50 1048次阅读
    600MHz RISC-V <b class='flag-5'>双</b>核加持!<b class='flag-5'>先</b><b class='flag-5'>楫</b>HPM6P00重新定义国产高性能混合信号MCU

    半导体hpm_apps v1.7.0上线

    半导体hpm_apps v1.7.0上线
    的头像 发表于 02-08 13:41 1291次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体hpm_apps v1.7.0上线

    半导体HPM_SDK v1.8.0 发布

    半导体HPM_SDK v1.8.0 发布
    的头像 发表于 02-08 13:39 1009次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体HPM_SDK v1.8.0 发布

    半导体CES 2025新品发布:解锁机器人关节“”时代,精准控制触手可及!

    提供商上海半导体科技有限公司(半导体,HPMicro)闪耀登场,发布了 专注于机器人运动与控制的高性能MCU产品——HPM6E8Y系列 ,为火热的机器人市场注入新的活力。 非常
    发表于 01-09 14:35 584次阅读
    <b class='flag-5'>先</b><b class='flag-5'>楫</b>半导体CES 2025新品发布:解锁机器人关节“<b class='flag-5'>芯</b>”时代,精准控制触手可及!