您的位置 首页 发布

什么对错对称双核MCU?

什么是非对称双核MCU?-AMP MCU一般用于相对大型的系统,这些系统对功能和性能都有较高的要求。在功能上,应支持较多的外设。LPC4350片载2个高速USB、2个CAN、工业以太网、图形LCD控制器,以及SDHC等接口;外加一些独有的逻辑可配置外设以及众多传统外设,适用于工控、能源、医疗、音频、车载、电机、监控等众多行业产品的开发。

前语

本文从比照两颗分立MCU与单芯片双核MCU开端(以LPC4350为例),打开介绍了非对称双核MCU的基础知识与重要特色。接下来,要点介绍了核间通讯的概念与几种完结方法,尤其是依据音讯池的操控/状况通讯。然后,对内核互斥、初始化流程等一些重要的细节打开了论说。最终提出了双核使命分工的两种运用模型,并别离举例。

布景与基本概念

在开发MCU运用体系时,假如单颗MCU无法满意体系的要求,一个很遍及的做法便是运用两颗或更多的MCU,把一部分“杂项作业”分配给另一个有“助理”性质的低端MCU来完结。可是,选用两颗MCU,缺陷也很明显,尤其是在芯片与PCB本钱、体系可靠性及功耗方面都有先天的缺乏。此外,若选用了不同架构的MCU,还要面对需求不同的开发工具与开发人员的应战。假如换一种思路,让MCU内部包含两个内核,其间一个用于主控,另一个用于协控,而且它们主控与协控在架构上能够向下兼容、高效通讯,则在许多场合下都能够既坚持多机体系的强壮,又能防止多机体系的缺乏。

事实上,这便是“非对称多处理器(简称AMP)”架构的特色。AMP是与“对称多处理器(简称SMP)”相对的架构,后者各处理器有共同的编程模型,而且在分配作业时主要以均衡为准则。而AMP的长处在于精密的使命分工,灵敏地习惯不同情形,物尽其用,以最佳地平衡本钱、功能与功耗。此外,AMP的编程难度也更低。因而,在MCU运用领域,AMP较SMP更为合适。

与独立的双MCU比较,AMP架构有许多长处。其间适当要害的便是,再增加一个内核的价值远比增加一个独立的MCU要低,尤其是当两个内核架构类似时,乃至仅适当于在现有硅片上再增加一两个UART。另一方面,两个内核能够有相同的主频,而且能够经过总线矩阵平等地拜访片上资源。而在分立的双MCU计划中,协控MCU的主频常常远低于主控,而且两边运用低速的串行链路通讯。

接下来,咱们以恩智浦(NXP)半导体公司推出的LPC4300系列为例(尤以LPC4350类型为代表),对AMP MCU进行简略介绍。

什么对错对称双核MCU?

非对称双核MCU的特色

AMP MCU一般用于相对大型的体系,这些体系对功用和功能都有较高的要求。在功用上,应支撑较多的外设。LPC4350片载2个高速USB、2个CAN、工业以太网图形LCD操控器,以及SDHC等接口;外加一些独有的逻辑可装备外设以及许多传统外设,适用于工控、动力、医疗、音频、车载、电机、监控等许多职业产品的开发。

功能的改进则是AMP MCU的魂灵。内核、存储器,以及总线架构关于功能有着至关重要的影响。

首先是内核的挑选。LPC4350依据32位的ARM Cortex-M4和Cortex-M0内核(以下简称M4和M0),两个内核均可在高达204MHz的主频下履行代码。其间,M4以信号处理和浮点运算才干见长,担任许多原先要选用DSP才干满意的运用,而且承继了Cortex-M3的操控才干;另一方面,M0以其本钱、能效和处理才干的压倒性优势,正敏捷招引开发人员从8/16位架构向上过渡。更重要的是,M4彻底向下兼容M0,运用同一套开发工具即可开发、调试。

其次是存储器的容量和安排方法。LPC4350装备多达264KB片上RAM,而且这些RAM被划分红4组,每组衔接一条独自的总线,而并非没有分块。如若不然,则会呈现两个核竞赛运用同一块RAM的状况——功能反而还不如只用单个内核!进一步,LPC4350还有两条总线衔接到外部扩展的并行和串行存储器,故总共有6个独立的存储器地址空间——LPC4350无片上闪存。关于有片上闪存的类型,片上闪存也分为两块。

最终是总线架构。LPC4350内部有一个八层总线矩阵。它好像一组纵横开关,能够把CPU与包含存储器在内的许多从设备经过总线恣意衔接。合理分配总线接通联系,防止多个主设备(如CPU和DMA)一起拜访相同的存储器或外设,能够最大地确保各条数据流双管齐下,然后能够充沛发挥功能上的优势。

内核间通讯

内核间的通讯可分为两类:一类是操控与状况信息的通讯,另一类则是数据通讯。前者一般不带着数据,但往往有较高的实时要求;后者则主要是各类数据缓冲区,一般实时性要求偏低但数据量大。操控/状况通讯有较大的通用性,而且与使命间的同步较为类似。这类通讯合适由体系软件完结并供给编程接口。数据通讯则往往与详细运用相关较大(尤其是在数据结构上),需求因地制宜。在完结时,合适由运用软件界说各种数据结构。

内核间经过同享的RAM进行通讯,而且每个内核都能够触发对方的一个中止源,经过预备数据-触发中止的方法进行通讯,如图2所示。当然,内核也能够定时查看同享RAM的状况。

接下来,咱们介绍依据音讯行列和音讯池的操控/状况通讯计划。

音讯行列:开设两个音讯行列,一个用于M4发送音讯给M0,另一个则是M0发送音讯给M4。两个行列的地址需事前约定好。行列是循环行列,能够运用简略的数组配以读、写下标来完结,也能够运用链表结构来完结。前者完结简略、开支小,但音讯只能是定长,不便于带着其它信息,还有,便是有必要把数组放置在同享内存区接连的方位,灵敏性低。依据链表的完结用指针链接每则音讯,每则音讯除了公共的链表操控部格外,还能够依据音讯类别带着各式各样的附加参数,而且能够由体系软件的内存办理机制灵敏分配音讯内存,不过,缺陷是相对杂乱,额定开支大。若触及动态内存办理,实时性将远不如依据数组的计划。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/fabu/347291.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部