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

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

3天内不再提示

【玩转多核异构】M核程序的启动、编写和仿真——飞凌嵌入式

飞凌嵌入式 2023-02-10 17:54 次阅读

为了能够让更多的工程师朋友了解多核异构处理器飞凌嵌入式特别推出了【玩转多核异构】专题,帮助大家解决在多核异构处理器的开发过程中遇到的问题,硬核内容持续更新中。

引言

有很多研究单片机的小伙伴在面对多核异构处理器时,可能会对多核的启动流程感到困惑——因为不熟悉GCC编程和GDB调试,所以也无法确定多核异构处理器的程序是否能像单片机那样方便地编写和仿真。本篇文章,小编就将以飞凌嵌入式的OKMX8MP-C开发板为例,为大家介绍多核异构处理器M核程序的启动配置、程序编写和实时仿真的过程

pYYBAGPcw-iARJujAAQ6CLFw8SI976.png飞凌嵌入式OKMX8MP-C开发板

飞凌嵌入式OKMX8MP-C开发板所搭载的NXP i.MX8M Plus处理器具备强悍的性能,集成4个主频最高可达1.8GHz(工业级主频为1.6GHz)Arm Cortex-A53多任务核和1个Cortex-M7实时核,不管是对数据的高速吞吐、处理,还是复杂的人机交互界面处理,都能从容应对。

M核程序启动

NXP i.MX8M Plus处理器的M核是无法单独启动的,必须由A核uboot加载,因此飞凌嵌入式基于这款处理器打造的OKMX8MP-C开发板也是默认不开启M核的,需要修改uboot下的环境变量,配置M核自启动。

这样每次A核启动后,uboot会加载/run/media/mmcblk2p1/目录下的forlinx_m7_tcm_firmware.bin文件,M核启动后会完成内核初始化,并由资源域0变为资源域1,再将时钟、外设、内存等资源初始化,就可以完成程序的轮转运行了。

1. uboot环境变量加载M核

(1)重启OKMX8MP-C开发板,按空格键进入uboot命令行控制台。

pYYBAGPl1kCAUoMCAAA6ZelI-TA639.png

(2)输入”1”进入uboot控制台。并按顺序依次输入以下命令,修改uboot环境变量,使其能加载M核程序。

2. 下载M核程序

(1)我们可以使用IAR软件对飞凌M核软件开发包的程序进行编译,在工程目录/IAR/debug目录下将生成*.bin文件,将文件名称改为:forlinx_m7_tcm_firmware.bin ;

poYBAGPl1kCALxXzAAAr7Y8Gujo643.png

(2)使用串口Xmodem,网络FTP,SCP,U盘,TF卡等多种方式,都可以将forlinx_m7_tcm_firmware.bin 从电脑拷贝至核心板/run/media/mmcblk2p1/目录下,在Linux调试串口输入 sync 命令同步 ;

(3)给OKMX8MP-C开发板重新上电,A核uboot会加载M核程序,通过M核串口即可看到程序的打印信息

M核程序编写

许多使用单片机的用户习惯通过Keil或IAR这类IDE工具对程序进行编写;由于此类软件易用性较差,因此很多时候我们都会再使用VScode等编辑器进行代码的编辑开发;但此类编辑器对程序编译、烧写和仿真时又相当不方便,大家在选择工具时可能会很头痛。

这里小编推荐使用VScode对代码编写和修改,使用IAR对程序编译、下载、仿真

1. IDE工具——IAR

IAR是支持多个厂家的单片机处理器的集成开发环境(IDE),用于提供开发环境的应用程序,是集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件。

i.MX8M Plus处理器的IAR版本要求在9.20版本以上,用户可在网上自行下载。用户在安装IAR后,打开飞凌嵌入式提供的M核SDK开发包,可在boards\evkmimx8mp\driver_examples\*\*\iar目录下找到iar工程文件*.ewww,双击即打开IAR项目。

pYYBAGPl1kCAWS6pAAA-8bpQ0K8119.png

2. VScode

VScode是微软推出的一款跨平台的编辑器,能够在windows、Linux、iOS等平台上运行,通过安装插件可以让这个编辑器变成一个编译器。

软件打开后在菜单栏单击文件--打开文件夹,选择SDK下对应的例程,即可完成代码的编写和修改工作。

M核程序仿真

飞凌嵌入式OKMX8MP-C开发板支持JTAG对M核的硬件仿真功能,用户可在IAR中通过JTAG设置断点,实时查看和修改各变量,全速运行或单步运行程序等功能,提高程序排查错误时的效率。

1. 安装JTAG

(1)在Segger官网下载J-LINK驱动,并在电脑上安装程序,IDE工具选择IAR;

(2)由于i.MX8M Plus是推出时间相对较短的芯片,因此需要更换Segger目录下8mp的J-LINK驱动;

(3)如果使用的NXP官方的 SDK还需要更换启动文件。

2. 硬件链接

飞凌嵌入式OKMX8MP-C开发板JTAG接口采用标准线序,用户可通过20pin 2.54间距转10pin 1.27间距的JTAG转接板和10pin1.27 间距的连接线与J-LINK连接,注意J-LINK 1脚要和开发板JTAG 1 脚对应。

pYYBAGPl1j-AAo6XAAA_QURRHr8009.png

3. 硬件仿真

(1)用户将程序编译完成后,将执行程序放入

核心板/run/media/mmcblk2p1/ 目录下,因为硬件仿真是将SDK包的程序加载到内存执行,所以要仿真的程序和核心板中的forlinx_m7_tcm_firmware.bin可不是同一个;

(2)点击仿真按钮或快捷键Ctrl+D,进入仿真界面,可正常设置断点、监测变量、单步和全速执行、复位等操作;

(3)如果需要查看freeRTOS任务调度情况,在工程处右击,选择OptionS菜单,Debugger-Plugins界面中勾选FreeRTOS and OpenROTS。

poYBAGPl1kCAJnKiAABBQUUzC68309.png

4. 串口打印

飞凌嵌入式OKMX8MP-C开发板除了支持JLink硬件仿真外,应用程序中还可通过PRINTF函数向M核串口输出打印信息,了解程序运行过程。

poYBAGPl1kCALO3sAAAjAmR0cBg657.png

好啦,以上就是小编为大家带来的基于OKMX8MP-C开发板的M核程序的使用方法,是不是感觉和单片机的开发一样简单又方便呢?

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

    关注

    68

    文章

    18293

    浏览量

    222196
  • ARM
    ARM
    +关注

    关注

    134

    文章

    8653

    浏览量

    361839
  • 嵌入式
    +关注

    关注

    4983

    文章

    18291

    浏览量

    288539
收藏 人收藏

    评论

    相关推荐

    回顾,嵌入式的第89届中国国际医疗器械博览会 (CMEF)之行

    嵌入式
    飞凌嵌入式
    发布于 :2024年04月26日 16:10:58

    嵌入式带你回顾第14届中国道路交通安全产品博览会

    嵌入式
    飞凌嵌入式
    发布于 :2024年04月26日 15:38:45

    Embedded World2024,嵌入式参展回顾#嵌入式

    行业资讯嵌入式
    飞凌嵌入式
    发布于 :2024年04月22日 15:51:28

    简谈Xilinx Zynq-7000嵌入式系统设计与实现

    和生成HDL代码。 随着异构架构和片上系统技术的不断发展,协同设计、协同仿真和协同调试将成为未来嵌入式系统开发者必备的素质。所谓的协同,就是要求设计者同时掌握软件和硬件知识,这与传统上软件和硬件分离
    发表于 04-10 16:00

    嵌入式 | CACLP 2024回顾

    嵌入式
    飞凌嵌入式
    发布于 :2024年03月22日 17:05:30

    第十四届中国国际储能大会暨展览会(CIES)回顾 | 嵌入式

    嵌入式
    飞凌嵌入式
    发布于 :2024年03月15日 09:26:33

    如何用RK3588编写应用程序

    由于笔者平时的嵌入式开发工作,主要是集中在嵌入式Linux和Qt应用开发方向,因此,本篇文章我们尝试参考官方提供的嵌入式Linux+Qt
    发表于 12-19 13:24

    全志T113i全国产核心板上市

    阻容件,嵌入式FET113i-S都实现了国产化,助力新基建领域实现国产化替代升级。 03 ARM+RISC-V+DSP,多核可同时运行 FET113i-S核心板可通过软件确定核心的
    发表于 11-20 16:32

    AM6254开发板试用】 4-机器视觉(原创)

    接上三篇:【AM6254开发板试用】+1控制小车(原创) - 嵌入式 - 电子技术论坛 - 广受欢迎的专业电子论坛! https:/
    发表于 09-12 22:57

    嵌入式国产平台大盘点之瑞芯微系列

    “国产化”一词正在被越来越多的提及,有着越来越高的关注度,嵌入式也已与多家国内芯片原厂联合推出了数款国产化智能平台。为了帮助大家快速认识
    发表于 08-05 11:12

    航顺芯片提供ARM+RISC-V异构多核MCU

    航顺芯片作为IAR System合作伙伴,提供了ARM+RISC-V异构多核MCU硬件平台。“嵌入式多核系统可分为同构多核
    发表于 06-20 12:48 341次阅读
    航顺芯片提供ARM+RISC-V<b class='flag-5'>异构</b><b class='flag-5'>多核</b>MCU

    中国首颗ARM+RISC-V异构多核MCU伴随IAR在上海国际嵌入式展亮相

    ARM+RISC-V异构多核MCU硬件平台。“嵌入式多核系统可分为同构多核异构
    发表于 06-15 18:32

    专用M4F+四A53,异构多核AM62x让工业控制“更实时、更安全”

    Cortex-M4F + Cortex-A53异构多核给工业控制带来何种意义?创龙科技SOM-TL62x工业核心板搭载TI AM62x最新处理器,因其Cortex-M4F + Cort
    发表于 06-15 17:18

    中国首颗ARM+RISC-V异构多核MCU伴随IAR在上海国际嵌入式展亮相

    、系统、硬件、工具等全产业链关键环节。 IAR Systems作为全球领先的嵌入式系统开发工具和服务的供应商,在本次展会给大家展示了多核调试技术。航顺芯片作为IAR System合作伙伴,提供了ARM+RISC-V异构
    发表于 06-15 16:05 315次阅读
    中国首颗ARM+RISC-V<b class='flag-5'>异构</b><b class='flag-5'>多核</b>MCU伴随IAR在上海国际<b class='flag-5'>嵌入式</b>展亮相

    嵌入式受邀参加能源电子产业政策华北片区宣贯会

    、保定等一批特色产业聚集区,能源电子产业主营收入突破1500亿元。 ​ 编辑切换为居中 保定嵌入式技术有限公司(以下简称:
    发表于 05-11 15:33