当前位置:首页 > 实用技巧 >

4核cpu怎么设置双核启动(cpu的双核需要自己开吗)

来源:原点资讯(www.yd166.com)时间:2023-05-15 04:19:57作者:YD166手机阅读>>

1)摘自【正点原子】领航者 ZYNQ 之嵌入式开发指南

2)实验平台:正点原子领航者ZYNQ开发板
3)平台购买地址:https://item.taobao.com/item.htm?&id=606160108761
4)全套实验源码 手册 视频下载:http://www.openedv.com/docs/boards/fpga/zdyz_linhanz.html
5)对正点原子FPGA感兴趣的同学可以加群讨论:876744900
6)关注正点原子公众号,获取最新资料

4核cpu怎么设置双核启动,cpu的双核需要自己开吗(1)

第十三章双核AMP实验
在前面的例程中,实现的都是基于单核CPU的实验,在很多应用场景中,往往只需要使用其中的一个CPU即可实现相应的功能。然而对于复杂的设计,如多任务处理、并行控制等,单个CPU将难以胜任。ZYNQ 7000 SOC芯片内部集成了两个独立的Cortex-A9内核处理器,即两个CPU,可以很好的应对各种复杂的设计。本章我们来学习下基于双核AMP的实验。
本章包括以下几个部分:
1313.1简介
13.2实验任务
13.3硬件设计
13.4软件设计
13.5下载验证
13.1简介
多核处理器从多核的结构上是否一致,分为两种基本架构:同构多核架构和异构多核架构。同构多核处理器是指系统中的处理器在结构上是相同的;而异构处理器是指系统中的处理器在结构上是不同的,这些处理器可以是通用处理器,也可以是解决某些特定应用的专用硬核。同构多核架构相比于异构多核架构,在硬件和软件设计上较为简单,通用性较高。但在某些特定应用场合下,如异构多核架构专用的硬件加速硬核,异构多核架构的性能会更高。
Xilinx的ZYNQ SOC融合了这两种架构,ZYNQ SOC芯片包含两个独立的Cortex-A9处理器,这两个处理器核在结构上是相同的,同时又包括了可编程的逻辑单元(PL),使得ZYNQ整体系统成为了一个异构多核系统,同时具有较高的通用性和性能。
从软件的角度看,多核处理器的运行模式有AMP(非对称多处理)、SMP(对称多处理)和BMP(受约束多处理)三种运行模式。
AMP运行模式指多个内核相对独立的运行不同的任务,每个内核相互隔离,可以运行不同的操作系统(OS)或裸机应用程序。
SMP运行模式指多个处理器运行一个操作系统,这个操作系统同等的管理多个内核,如PC电脑。
BMP运行模式与SMP类似,但开发者可以指定将某个任务仅在某个指定内核上执行。
一般来说,SMP为较高级的应用提供统一的OS平台,开发者在OS之上构建应用时,无需考虑两个内核之间的资源共享和进程间通信。除此之外,对SMP而言存在性能开销,这会对实时性要求较高的应用,其性能造成较大影响。如PC机电脑的多核处理器一般运行在SMP模式,实现的功能较为复杂,但对实时性的要求不高。
而AMP的运行模式基本没有开销问题,在运行裸机应用程序时,甚至完全没有开销,比较适合实时性要求较高的应用,但需要精心定制的软件设计来实现处理器资源共享和处理器间通信。如电力控制保护设备通常需要与人机接口实现复杂的通信和高实时性的计算能力,一般采用AMP运行模式,一个处理器运行Linux操作系统,另一个处理器运行裸机应用程序,从而兼顾了电力系统控制设备需要的复杂功能和实时性。
AMP和SMP运行模式的框图如图 13.1.1所示。

4核cpu怎么设置双核启动,cpu的双核需要自己开吗(2)

图 13.1.1 AMP与SMP运行模式的框图


AMP运行模式给开发者提供了一个与传统单核CPU系统相类似的运行环境,使得开发者已有的经验和知识可以继续加以利用;同时,也为程序的移植提供了很大的便利性。本次试验采用的是双核AMP的运行模式,两个CPU分别运行不同的裸机应用程序。
ZYNQ SOC提供的两个Cortex-A9处理器,都具有各自私有的资源,同时也有一些共享的资源。私有资源有L1指令缓存、L1数据缓存、私有定时器等。共享的资源有L2 Cache、DDR存储器、外设和OCM(On Chip Memory)等。在AMP运行模式下,这两个处理器彼此隔离、分别运行。但在访问共享资源或者外设时,要注意避免冲突,否则程序在运行时可能会出现问题。
我们可以通过类似互斥的方式来实现裸机情况下简单的双核使用,在ZYNQ系统中,可以利用软件产生中断(SGI,Software Generated Interrupts)来避免访问的冲突。ZYNQ系统中的每个CPU都能用SGI来中断自己、另一个CPU或同时中断两个CPU。向软件产生的中断寄存器(ICDSGIR)写入中断编号并指向目标CPU,就产生了一个SGI。每个CPU各自有一组SGI寄存器,可以产生16个软件产生中断中的一个或多个。图 13.1.2列出了SGI的中断ID号,范围是0~15。

4核cpu怎么设置双核启动,cpu的双核需要自己开吗(3)

图 13.1.2 软件中断


SGI可以触发CPU产生中断,但是如果想要传递数据的话,需要利用共享的内存实现数据的交互。共享内存指CPU0和CPU1在内存中约定一块地址及长度已知的内存区域,两个CPU通过读写共享内存中的数据来实现互相通信,而利用CPU产生的软件中断可以避免对共享内存的同时访问。
ZYNQ中的OCM共有256KB,分为4个64KB,而外置的DDR3存储器一般存储空间较大。当两个CPU需要进行大量数据交互的时候,可以使用DDR3存储器作为共享内存;而当交互的数据较少时,既可以使用OCM作为共享内存,也可以使用DDR3存储器作为共享内存。值得一提的是,当交互的数据量较少时,OCM作为共享内存有着独特的优势,与DDR内存相比,OCM提供了非常高的性能和来自两个处理器的低延迟访问。
需要注意的是,无论是OCM还是DDR3存储器作为共享内存,在访问之前,需要禁止存储空间的Cache(缓存)功能,这样CPU能够及时读到该地址内存中变化的数据,以避免两个CPU访问共享内存的一致性问题。通过Xil_SetTlbAttributes(INTPTR Addr, u32 attrib)函数禁用Cache属性,第一个参数为共享内存的基地址,第二个参数为设置内存的参数,包括是否禁用Cache等。
Xilinx官方提供了两个双核AMP的应用文档,“XAPP1078” 是基于两个Linux操作系统的双核AMP应用文档,“XAPP1079”是基于两个裸机应用程序的双核AMP应用文档,感兴趣的朋友可以参考下。
13.2实验任务
本章的实验任务是通过领航者ZYNQ开发板完成双核AMP的实验。CPU0接收串口的数据,并写入OCM中,然后利用软件产生中断触发CPU1;CPU1接收到中断后,根据从OCM中读出的数据控制呼吸灯的频率,并在控制结束后触发CPU0中断,实现了双核CPU通信的功能。
13.3硬件设计
根据实验任务我们可以画出本次实验的系统框图,如下图所示:

4核cpu怎么设置双核启动,cpu的双核需要自己开吗(4)

栏目热文

cpu怎么开启全核运行(怎么设置cpu8核全开)

cpu怎么开启全核运行(怎么设置cpu8核全开)

Intel酷睿i9 11900K & 酷睿i5 11600K首发深度评测Intel的第十代酷睿已经在市场中征战了近一年,...

2023-05-15 03:59:12查看全文 >>

怎么设置cpu8核全开(怎么设置cpu核心全开)

怎么设置cpu8核全开(怎么设置cpu核心全开)

大多数安卓手机为了功耗和发热的考虑,多多少少都要给处理器的频率设下限制。但是秉承着我的手机我做主的精神,给你们推荐Qbo...

2023-05-15 03:57:36查看全文 >>

如何让cpu四核全开(怎样让cpu四核八线程全开)

如何让cpu四核全开(怎样让cpu四核八线程全开)

1) 什么是 CPU 开核开核就是在生产四核、六核的工程中而屏蔽掉的核心开启,从产品本身的价值可以说通过开核就是用双核的...

2023-05-15 04:02:00查看全文 >>

4核cpu正确打开方法(怎么将cpu4核全开)

4核cpu正确打开方法(怎么将cpu4核全开)

我们常常可以听到 超频 一次,超频可以是 CPU, 内存,显卡,在十几二十年前,电脑处理器速度还很慢的时候 ,大家喜欢给...

2023-05-15 04:02:43查看全文 >>

王者荣耀怎么调粒子效果指令(王者荣耀怎么把粒子效果调到最高)

王者荣耀怎么调粒子效果指令(王者荣耀怎么把粒子效果调到最高)

王者荣耀里皮肤特效决定了英雄的技能外观,很多玩家都是直接买完皮肤就完事了,而这样做只是买到了皮肤的英雄外表,具体的技能特...

2023-05-15 03:55:22查看全文 >>

怎样设置cpu4核全开(cpu性能全开设置)

怎样设置cpu4核全开(cpu性能全开设置)

今天有小伙伴遇到里难题,他有一台电脑装了4个4核CPU,共计16核16线程,在系统的设备管理器中能看到这16线程,但是在...

2023-05-15 03:38:49查看全文 >>

cpu如何将核心调到4(cpu 电压和主频怎么调合适)

cpu如何将核心调到4(cpu 电压和主频怎么调合适)

关注硬件·聪明消费 | 欢迎关注钛师父动图:机械动图由于AMD锐龙处理器点燃了处理器市场的“核”大战,在售处理器的核心数...

2023-05-15 04:07:43查看全文 >>

cpu怎么锁全核(cpu锁全核教程)

cpu怎么锁全核(cpu锁全核教程)

不久之前,酷冷至尊发布了一款与英特尔联合研发的旗舰级水冷散热器——ML360 Sub-Zero,它独特的产品型号“sub...

2023-05-15 03:43:48查看全文 >>

怎么把cpu的性能全开(怎样让cpu发挥最佳性能)

怎么把cpu的性能全开(怎样让cpu发挥最佳性能)

一、前言最近的硬件圈子真的是让人无力吐槽,先是币市暴涨,引发矿潮,从而导致显卡价格起飞乃至断货,紧接着,某牙膏厂又请了某...

2023-05-15 03:45:38查看全文 >>

cpu四核全开设置有用吗(怎么发挥cpu全部功能)

cpu四核全开设置有用吗(怎么发挥cpu全部功能)

var vote_init_script = document.getElementById("vote_init_no...

2023-05-15 03:49:13查看全文 >>

文档排行