微控制器单元 (MCU) 和微处理器单元 (MPU) 是两种集成电路,虽然在某些方面相似,但在许多其他方面却截然不同。这些单芯片处理器以独立的逻辑单元取代了过时的多组件中央处理器 (CPU),在计算技术的持续发展中具有极其重要的价值。然而,微控制器和微处理器在组件结构、芯片架构、性能和应用方面存在很大差异。
这两种设备的主要区别在于,微控制器将微型计算机系统的所有必要元素整合到一个硬件中。微控制器不需要额外的外设或复杂的操作系统,而微处理器则需要。这两种电路都包含中央处理器,但微控制器还集成了存储器、输入/输出 (I/O) 元件和其他各种外设。
性价比高、体积小、低功耗的微控制器针对一体化功能进行了优化。因此,这些设备最适合用于汽车信息娱乐系统和物联网 (IoT) 设备等特定应用。
相反,通用微处理器的功能通常更为强大,其设计目的是在个人计算和图形处理等要求较高的应用中,通过专用硬件的支持来提高性能。
在硬件层面,微处理器基于"经典"的冯-诺依曼架构。这包括一个带有算术逻辑单元 (ALU) 和处理器寄存器(用于快速访问数据的少量快速存储器)的中央处理器、一个控制单元、数据和指令存储器、用于大容量存储的外部存储器以及输入/输出机制。这种方法使用同一组互连线(称为总线)来传输指令和执行操作。微处理器无法同时执行这些操作,但现代设备使用各种缓解技术来避免数据瓶颈。
另一方面,微控制器使用更复杂的哈佛架构,它有一组专用的数据总线和地址总线,用于向内存读写数据,另一组用于获取执行操作的指令。由于 CPU 可以同时读取指令和访问数据存储器,因此哈佛架构可以更快地执行基本操作。
哈佛架构擅长实时和高速计算任务。不过,简化的冯-诺依曼体系结构具有统一的数据和指令内存空间,从而提高了可靠性和可扩展性。因此,基于冯-诺依曼的微处理器更适用于要求更高的任务,如高性能计算 (HPC) 和游戏,而微控制器通常用于处理快速信号处理。
从本质上讲,微控制器是单芯片上的小型计算机,包含一个(或多个)处理器核心、运行存储器 (RAM) 和用于程序存储器的电可擦除可编程只读存储器 (EEPROM)。微控制器集成经过优化,可作为独立单元使用,改进了实时信号处理,使这些小巧的单元成为控制嵌入式系统中特定任务或职责的理想选择。
微控制器重量轻、体积小、功耗低,是智能手机、智能手表和其他可穿戴设备等电池供电电子设备的理想之选。它们也是业余爱好者的最爱。消费级可编程微控制器,如 Arduino 或 Raspberry Pi 制造的微控制器,可以很容易地用 C、C++ 和 Python 等编程语言进行配置,这些语言通常用于 Windows、Linux 和 MacOS 操作系统。微控制器甚至连初级开发人员都可以使用,而且还经常被应用于各种专业和工业用例,包括工业自动化、交通安全系统和原型开发。
1971 年,德州仪器公司工程师 Gary Boone 和 Michael Cochran 应一家日本计算器制造商的定制芯片要求,发明了第一款微控制器。作为电路技术领域的一项突破,Intel、NXP 和 Arm 等制造商在随后的几年里对其进行了无数次改进和迭代。
以下是一些较为常见的微控制器类型:
微处理器是电脑处理器的主要类型,它将 CPU 所需的所有组件集成到一个电路中。MPU 将老式 CPU 电脑系统的算术、逻辑和控制单元整合为一个多功能、时钟驱动和基于寄存器的硬件。这种集成设计减少了潜在的故障点,从而提高了可靠性。虽然微处理器不包含片上程序存储器,但它们针对要求苛刻的通用用途进行了优化,旨在支持专用电脑外设,并由专用电脑外设提供支持。
现代微处理器将数百万个小型晶体管、电阻器和二极管组装在半导体材料上,用以创建 CPU 的关键组件。
通用微处理器的应用范围非常广泛,而专用微处理器通常用于需要大功率处理的特定任务。微处理器的功率、性能、尺寸、能耗和许多其他方面各不相同,以下是一些主要类型的微处理器:
微控制器和微处理器能够执行一些相同的任务。不过,根据不同的应用要求,每种设备都有自己独特的优缺点。微控制器的集成功能,包括低功耗省电模式,使其成为大多数嵌入式系统的理想选择。
不过,在需要复杂计算或更高处理能力的情况下,微处理器是更好的选择,但性能和灵活性的提高是以更高的功耗和更高的价格为代价的。这些特性使微处理器成为个人电脑和工业超级电脑的首选。