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

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

3天内不再提示

微控制器MCU与微处理器MPU的界限正在消失

璟琰乀 来源:雷锋网 吴优 作者:雷锋网 吴优 2020-12-08 13:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

曾有一段时间,微处理器(MPU)与微控制器MCU)是截然不同的两种设备,微控制器完成 “控制”相关的任务,根据外界信号刺激产生反应,微处理器主要执行处理功能,对数据处理和计算能力的要求较高。但如今由于内存架构的变化,两者之间的界限正在变得模糊。

事实上,可以通过多种方式区分微处理器和微控制器,只是业界尚未对他们的区分标准达成共识。不过已经有一些人得出结论,目前两者之间的准确区分都已经不再重要了。

“近年来,MCU 和 MPU 之间的区别变得越来越模糊。”西门子业务部门的嵌入式软件技术专家 Colin Walls 说,“最初,MCU 在一个芯片上集成了 CPU、内存和外围设备,如今大多数 MCU 依然如此,但因为 MCU 具有足够强大的功能来支持更复杂的应用程序,附加外部存储器的 MCU 也变得常见。”

计算芯片的两个市场

曾经有一段时间,计算芯片分为两个截然不同的市场,大部分芯片设备主要针对主流计算,性能是最主要的考虑因素,这些单片微型计算机被称之为 “微处理器”,为个人计算机和更大的系统提供动力。

如今我们可以在各种类型的笔记本电脑、台式机和服务器中看到它们,值得注意的是,它们是通用引擎,旨在运行事先未知的任何数量的程序,主内存是 DRAM,非易失性存储是硬盘驱动器或固态硬盘。

在不那么主流的嵌入式计算世界里,需要适度计算能力和专门用途,设计好的程序可能在固件中运行,以便让整个系统(包括程序和所有系统)在出货之前得以验证,内存需求将受到更多限制,可以将用于存储代码的 SRAM 和非易失性内存与 CPU 集成到同一块芯片上,关键一点,实时响应通常很重要。

嵌入式计算机也倾向于在有特殊 I/O 需求的环境中使用,一些可能是在驱动电动机,另一些可能是在处理声音或读取传感器。将专用外围设备接口硬件集成到同 CPU 和内存相同的芯片上十分有效,这会产生具有不同特性的各种芯片。

总的来说,CPU 与 SRAM、非易失性存储器和专用外设集成在一起的被称之为 “微控制器”。

微处理器发展至今已经多达 64 位,而微控制器依然是 8 位居多,但在这中间发生了一些变化,使得两者之间的区别更加模糊。

集成式闪存是 MCU 的重要特征,不过这类闪存尚未在拥有最先进节点的微控制器上使用,因此许多以微控制器形式销售的设备都使用外部闪存而不是嵌入式闪存,此外还使用外部 DRAM。

实际上,一个称之为 “shadowing”的过程可以从外部闪存中获取代码,并将其复制到 DRAM 中,然后从中执行代码,而且为了提高性能,缓存也可以包括在内。这使得 CPU / 内存子系统与 MPU 几乎没有区别。

那么现在的 MCU 就是 MPU 吗?不再有区别了吗?

当下可区分 MCU 与 MPU 的因素

如今的 MCU 和 MPU 十分相似,但依然在很多方面有一些细微的区别,这包括 CPU 功能、位数、操作系统、时序要求、核心数量等方面。

在 CPU 功能方面,如果 CPU 具有复杂的流水线,具有预测执行和其他超标量功能,则可以将其视为 MPU,但是转变的确切位置并没有明确界定。

在位数上,8 位设备更有可能被视为 MCU,64 位设备很可能被视为 MPU。不过最早的却是 MPU 是 4 位,这更像是历史问题,而不是决定性的特征。

也可以根据计算机可运行的操作系统进行分类,如果它运行 Linux,则可以将其称为 MPU。如果它仅允许较小的实时操作系统,甚至只运行裸机,则可以将其称为 MCU,这为能够运行的 Linux 的设备留出了许多中间地带。在时序方面,MCU 通常用于需要硬或软实时响应的应用程序,MPU 通常不能用于这一目的。

一般也将多核处理器视为 MPU,尤其是在内核相同且管理对称的情况下。不过专用设备可能具有多个处理器,有些专用于诸如数字信号之类特定任务的处理器也会被认为是 MCU,因此通过核心数目判断是 MPU 还是 MCU 并不是一个准确的依据。

从使用目的来看,可以认为通用设备是 MPU,单用途设备是 MCU,但这实际上只关乎设备的使用方式,如果在不明确使用目的的情况下使用任何设备,那时候如何称呼这一设备呢?

通常全功能 MPU 不会具有专用外围设备,这在很大程度上是因为它们是通用的,而不是面向特定应用,因此你可能会认为只要有这样的外围设备,就是 MCU,但是事实并非如此,缺少外围设备也并不意味着就是 MPU。

从上面的分析来看,每个特征因素都会存在缺陷,结果无法令人满意,那么行业专家又是怎么认为的呢?

MCU 和 MPU 已成过时的术语

Cadence IP 集团产品行销总监 Marc Greenberg 对此表示:“我不知道 MCU 与 MPU 之间的区别是否存在某些官方的定义,经过简单的检索似乎表明,裸片上存在 NVM 的为 MCU,但各种 MPU 上都有 NVM 的某些位,MPU 也可能在同一片裸片上具有 MCU,那又是什么呢?最小的无缓存处理器可能仍具有一些寄存器和 SRAM,用 RTL 编码的定序器与从 ROM 执行的通用处理器真的有区别吗?显然 MCU 和 MPU 之间的区别有些随意,这意味着这一界限并不明确甚至可以随心所欲。当我想到 MPU 时,我想到的是用于控制通用计算机的设备,例如台式机、服务器、平板电脑等。”

Cadence 高级工程师 Grant Martin 认为:“根据维基百科的解释,MCU 是在单个金属氧化物半导体集成电路芯片上的小型计算机,MPU 是一种计算机处理器,在 MOSFET 结构的单个或多个集成电路上结合了中央处理单元的功能。”

“如果深入研究,MPU 具有 CPU 的功能,因此它是计算机处理器,而 MCU 则是更完整的计算机,这意味着 MCU 内包含 MPU,这与常识相反。具有多个处理器核心的 16 路服务器处理器是否不再是 MPU?而是一种多核异构 SoC?”

“例如,一部手机可能包括多个应用程序处理内核,用于音频、视频、图像处理的多个 DSP,一个或两个用于在屏幕上呈现图像的 GPU 以及一个仅用于娱乐目的的神经网络处理单元——MCU。从我的角度来看,行业应该放弃这些过时的术语,使用更精确更具描述性的术语。”Grant Martin 继续说。

西门子业务部门 Mentor 的高级产品经理 Jeff Hancock 则认为:“从系统软件的角度来看,MCU 有望适用于直接解释和控制硬件传感器和执行器的应用。这种访问通常涉及一致且可靠的指令时序,这与通用 MPU 的需求相矛盾。通用 MPU 旨在优化吞吐量,而 MCU 通常会优化延迟。因此,如果是需要处理大型数据库,MPU 更合适,如果是要精细的机电控制,那么 MCU 更合适。

Jeff Hancock 还说:“外部存储器和缓存肯定让 MCU 的标准有所变化,但这距离将 MCU 等同于 MPU 还有很长的路要走。特别是并不是所有 MCU 中的所有处理单元都专门使用外部存储器,也可以使用隔离的子系统构建系统,这些子系统允许关键的工作负载和不太关键的应用程序级系统并行继续。”

“从软件工程师的角度看,这是一个有趣的挑战,在不连续的地方可能有两个内存区域,集成式内存虽小,但速度更快,因此最好留给对速度有高要求的代码,例如实时操作系统。这意味着开发工具必须足够灵活以将代码正确地映射到存储器上,而 RTOS 必须足够小适合片上存储器。”西门子业务部门的嵌入式软件技术专家 Walls 补充到。

Tortuga Logic 的高级硬件安全工程师 Nicole Fern 表示:“过去,MCU 与嵌入式系统相关联。在嵌入式系统中,低成本和低功耗的要求比性能更为重要。但是随着移动计算和 IoT 边缘计算的出现,许多嵌入式系统现在需要复杂的处理,这样就产生了面向嵌入式领域看起来更像 MPU 的 MCU 产品,为带有外部存储器和高速缓存的器件提供了更高的性能和可配置性。这种情况下,术语 MCU 和 MPU 之间的差异仅取决于是否集成 CPU 系统。”

Arm 的低功耗 IoT 业务高级总监 Thomas Ensergueix 也认为:“近年来,MCU 和 MPU 之间的界限已经模糊。MCU 和 MPU 之间的主要区别之一是软件和开发。MPU 将支持丰富的 OS,如 Linux 和相关的软件堆栈,而 MCU 通常将专注于裸机和 RTOS。在决定哪种硬件平台、MCU 或 MPU 最有效之前,由软件开发人员决定哪个软件环境和生态系统最适合他们的应用。

“随着现在 MCU 已经过渡到 32 位,我们还看到了性能的急剧提高,这有助于缩小 MCU 和 MPU 之间的差距。例如:许多基于 Arm Cortex-M7 的 MCU 可提供 100 多个 Dhrystone MIPS,或在 CoreMark 中提供 2,000 多个点。这些设备中的许多设备还具有非常大的内置存储器,或者提供快速接口来连接外部存储器。这确保了性能和内存不再是 MCU 的瓶颈,并使它们更接近低端 MPU。”

小结

如今 MPU 与 MCU 之间是否有明确的界限真的重要吗?可能不重要了。因为无论我们将其称之为什么,应用程序都有附带要求,这些要求将决定使用哪个设备。

责任编辑:haq

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

    关注

    68

    文章

    20148

    浏览量

    247130
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18605

    浏览量

    387031
  • 控制器
    +关注

    关注

    114

    文章

    17638

    浏览量

    190252
  • MPU
    MPU
    +关注

    关注

    0

    文章

    442

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MCU微控制器CH32L103高速电吹风方案

    MCU微控制器是整个电吹风控制系统的指挥中心。英尚微推出的高速电吹风方案,以MCU微控制器CH32L103为主控
    的头像 发表于 11-27 16:20 144次阅读

    选择微控制器MCU几个步骤

    到数字输入、PWM等。 这两种类型接口将决定微控制器需要提供的引脚数量。 步骤2:检查软件架构 软件架构和要求将显著影响微控制器的选择。处理负担是轻是重将决定是使用80MHz的DSP还是8MHz
    发表于 11-26 07:09

    MCU微控制器是什么(mcu微控制器芯片原理)

    MCU(Microcontroller Unit),中文称为微控制器或单片机,可以理解为"浓缩的计算机"。它将处理器、存储、输入输出接口等计算机必需的核心部件,全部集成在一块
    的头像 发表于 11-17 17:23 564次阅读

    如何使用 NUC980 系列微处理器MPU) 构建具有带外 (OOB) 功能的简单远程监控应用?

    如何使用 NUC980 系列微处理器MPU) 构建具有带外 (OOB) 功能的简单远程监控应用。
    发表于 08-19 06:21

    如何在 MA35 系列微处理器MPU) 上开发 AMP(非对称多处理)应用程序?

    如何在 MA35 系列微处理器MPU) 上开发 AMP(非对称多处理)应用程序,并通过建立多个端点的过程促进与其他内核的多通道数据传输。
    发表于 08-19 06:11

    瑞萨RZ/G2UL微处理器引脚复用分析方法

    RZ/G2UL微处理器配备Cortex-A55(1.0 GHz)CPU、16位DDR3L/DDR4接口以及简单的LCD控制器。此外,这款微处理器还配备有大量接口,如摄像头输入、显示输出、USB 2.0和千兆以太网,因此特别适用于
    的头像 发表于 06-19 11:16 1608次阅读
    瑞萨RZ/G2UL<b class='flag-5'>微处理器</b>引脚复用分析方法

    知名厂商微控制器(MCU)芯片手册分享

    微控制器MCU)又称单片机,是一种高度集成的微型计算机系统,它将中央处理器(CPU)、存储(RAM/ROM/Flash)、输入/输出接口(I/O)及多种外设集成在一块芯片上,专门用
    的头像 发表于 05-15 18:25 2298次阅读
    知名厂商<b class='flag-5'>微控制器</b>(<b class='flag-5'>MCU</b>)芯片手册分享

    一文认识ARM微控制器及瑞萨RA系列MCU

    俗称单片机,如果有学过微机原理就会很熟悉这个概念了。而ARM微控制器,顾名思义,就是基于ARM的微控制器,或者说搭载了ARM处理器内核的微控制器
    的头像 发表于 03-24 09:17 2288次阅读
    一文认识ARM<b class='flag-5'>微控制器</b>及瑞萨RA系列<b class='flag-5'>MCU</b>

    带片内RAM 3MB RZ/A1L RTOS微处理器数据手册

    采购和存储停产的问题。借助 RZ/A1L,你可以像设计微控制器MCU)一样设计嵌入式系统,同时获得400MHz Arm® Cortex® - A9 微处理器
    的头像 发表于 03-10 16:14 890次阅读
    带片内RAM 3MB RZ/A1L RTOS<b class='flag-5'>微处理器</b>数据手册

    电子小白必看!单片机、MPUMCU 区别与选芯避坑指南

    很多电子初学者第一次接触"单片机"这个词时,可能会被各种专业术语搞糊涂。市面上常见的芯片名称还有微处理器MPU)、微控制器MCU),它们到底有什么区别?今天我们就用最直白的语言,通
    的头像 发表于 02-19 09:35 1851次阅读
    电子小白必看!单片机、<b class='flag-5'>MPU</b>、<b class='flag-5'>MCU</b> 区别与选芯避坑指南

    瑞萨电子RA0E1开发板测评报告

    瑞萨电子(Renesas Electronics Corporation)是一家全球领先的半导体解决方案供应商,专注于微控制器MCU)、模拟器件、功率器件和SoC(系统级芯片)及微处理器M
    的头像 发表于 02-07 13:48 1234次阅读
    瑞萨电子RA0E1开发板测评报告

    嵌入式系统中微处理器的新变化

    微控制器(MCU)和微处理器(MPU)有哪些不同之处?简单来说,两者都是嵌入式系统的大脑。几年前,两者之间有非常明显的区别,功能截然不同,对开发者的研发技能要求也大不相同。如今,这两个
    的头像 发表于 01-09 14:55 1180次阅读
    嵌入式系统中<b class='flag-5'>微处理器</b>的新变化

    MPUMCU的区别

    在现代电子系统中,微处理器单元(MPU)和微控制器单元(MCU)扮演着至关重要的角色。它们是计算机和其他电子设备的核心,负责处理数据和执行程
    的头像 发表于 01-08 09:25 2638次阅读

    什么是MPU控制器及其应用

    MPU控制器是现代电子系统中不可或缺的组成部分,它们在各种设备中扮演着核心角色,从简单的嵌入式系统到复杂的计算机和服务MPU控制器的设计
    的头像 发表于 01-08 09:23 1377次阅读

    MPU微处理器的工作原理

    在现代电子设备中,微处理器MPU)扮演着至关重要的角色。从个人电脑到智能手机,再到嵌入式系统,MPU都是实现复杂计算任务的关键。 MPU的基本结构
    的头像 发表于 01-07 18:08 2202次阅读