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

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

3天内不再提示

Zynq的AMP多核处理

CHANBAEK 来源:嵌入式随笔 作者:嵌入式随笔 2023-10-17 16:59 次阅读

写的是Zynq 7000系列的,arm有两个核。主要有AMP和SMP两种方式,SMP是两个核运行一个操作系统,跑LINUX的话,使能SMP,资源会自动分配给两个核运行。AMP是两个核独立运行,每个核可以运行操作系统也可以裸机运行。

两个CPU的启动方式是CPU0先运行,然后根据需要启动CPU1。

ZYNQ会先运行一个fsbl程序,再运行应用程序。因此启动CPU1的工作可以在fsbl中做,也可以在应用程序中做。

1 在FSBL中启动CPU1

FSBL程序可以在VITIS这个软件中生成。

在FSBL中添加以下程序来启动CPU1

Xil_Out32(0XFFFFFFF0, CPU1程序地址);
dmb(); 
sev(); //唤醒 CPU1

此段程序加在FSBL程序的HandoffAddress = LoadBootImage()之后,LoadBootImage()的作用的是将程序拷贝到ddr中,先将程序拷贝到ddr中,程序才能跳转运行。

1.1 CPU0运行裸机程序

图片

fsbl启动两个CPU的应用程序

1.2 CPU0运行操作系统(Linux)

图片

uboot就是CPU0的应用程序

2 应用程序启动CPU1

2.1 CPU0运行裸机程序

图片

在CPU0的应用程序中唤醒CPU1,程序一样,如下:

Xil_Out32(0XFFFFFFF0, CPU1程序地址);
dmb(); 
sev(); //唤醒 CPU1

2.2 CPU0运行操作系统(Linux)

图片

可以在UBOOT中唤醒CPU1,也可以在运行内核后唤醒CPU1。

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

    关注

    87

    文章

    10990

    浏览量

    206738
  • SMP
    SMP
    +关注

    关注

    0

    文章

    68

    浏览量

    19450
  • 操作系统
    +关注

    关注

    37

    文章

    6288

    浏览量

    121886
  • Amp
    Amp
    +关注

    关注

    0

    文章

    71

    浏览量

    47013
  • Zynq
    +关注

    关注

    9

    文章

    600

    浏览量

    46630
收藏 人收藏

    评论

    相关推荐

    ZYNQ多核处理器硬件上的划分

    zynq系列开发板有两个板载Cortex-A9处理器,两个ARM可以协同处理数据。
    的头像 发表于 09-19 09:06 1858次阅读

    为什么有多核处理器?从多核到众核处理

    其实“多核”这个词已经流行很多年了,世界上第一款商用的非嵌入式多核处理器是2002年IBM推出的POWER4。
    的头像 发表于 11-16 16:25 843次阅读
    为什么有<b class='flag-5'>多核</b><b class='flag-5'>处理</b>器?从<b class='flag-5'>多核</b>到众核<b class='flag-5'>处理</b>器

    Zynq处理

    坛友们,谁用过Zynq7000的处理,交流一些问题!
    发表于 08-14 20:53

    多核处理器的优点

    多内核是指在一枚处理器中集成两个或多个完整的计算引擎(内核),多核处理器是单枚芯片(也称为“硅核”),能够直接插入单一的处理器插槽中,但操作系统会利用所有相关的资源,将它的每个执行内核
    发表于 06-20 06:47

    Zynq-7000系列打得火热,异构多核技术需求怎么解决

    开发应用,这一款基于Xilinx Zynq-7000系列XC7Z010/XC7Z020高性能低功耗处理器设计的异构多核SoC工业级核心板,处理器集成PS端双核ARM Cortex-A9
    发表于 06-30 09:56

    DSP+ZYNQ多核例程使用手册-XQTyer【开源】

    .pdfXQ6657Z35/45-EVM 高速数据处理评估板(XQTyer 评估板),包含一片TI DSP TMS320C6657和一片Xilinx ZYNQ-7000 SoC 处理器XC7Z035-2FFG676I
    发表于 12-27 15:42

    Enea发布OSE多核

    Enea发布OSE多核版 Enea(Nordic Exchange/Small Cap/ENEA) 今日宣布,正式发布 Enea OSE 多核版,这是一项独特的创新型内核设计,结合了传统“非对称多处理”(
    发表于 11-09 15:52 742次阅读

    多核处理器架构及调试

      认识多核基本架构   多核处理器在同一个芯片中植入了多个处理器引擎,这就可以提供更高的CPU性能、功能特性和分区能力。一般说来,多核
    发表于 08-26 18:08 1252次阅读

    多核处理器中的超越函数协处理器设计

    多核处理器中的超越函数协处理器设计_黄小康
    发表于 01-07 18:39 2次下载

    第1章 多核处理器基础

    多核处理器基础,介绍了嵌入式的多核的信息
    发表于 04-11 14:17 2次下载

    如何在Zynq Cortex A9处理器之间执行处理器间通信

    了解如何在Zynq Cortex A9处理器之间执行处理器间通信。 处理器间通信有助于促进非对称多处理
    的头像 发表于 11-26 06:47 3484次阅读

    浅议多核处理器技术

    多核处理器以其高性能、低功耗优势正逐步取代传统的单处理器成为市场的主流。随着应用需求的扩大和技术的不断进步,多核必将展示出其强大的性能优势。但目前
    发表于 03-29 10:47 8次下载

    Zynq上的非对称多核处理

    Zynq SoC 还拥有大量共享资源,常见示例包括 I/O 外设、片上存储器、中断控制器分配器、L2 高速缓存和位于 DDR 存储器内的系统存储器。下图显示了其中一些资源。
    的头像 发表于 06-16 10:18 1048次阅读

    C6678+Zynq-7045的DSP多核IPC通信案例开发

    /XC7Z100 SoC处理器设计的高端异构多核评估板,由核心板与底板组成。TMS320C6678每核心主频可高达1.25GHz,XC7Z045/XC7Z100集
    发表于 09-14 09:54 16次下载

    TMS320C6678的ZYNQ PS PL异构多核案例开发

    /XC7Z100 SoC处理器设计的高端异构多核评估板,由核心板与底板组成。TMS320C6678每核心主频可高达1.25GHz,XC7Z045/XC7Z100集
    发表于 09-14 14:09 15次下载