Article count:16428 Read by:87919360

Hottest Technical Articles
Exclusive: A senior executive of NetEase Games was taken away for investigation due to corruption
OPPO is going global, and moving forward
It is reported that Xiaohongshu is testing to directly direct traffic to personal WeChat; Luckin Coffee is reported to enter the US and hit Starbucks with $2, but the official declined to comment; It is reported that JD Pay will be connected to Taobao and Tmall丨E-commerce Morning News
Yu Kai of Horizon Robotics stands at the historical crossroads of China's intelligent driving
Lei Jun: Don't be superstitious about BBA, domestic brands are rising in an all-round way; Big V angrily criticized Porsche 4S store recall "sexy operation": brainless and illegal; Renault returns to China and is building a research and development team
A single sentence from an overseas blogger caused an overseas product to become scrapped instantly. This is a painful lesson. Amazon, Walmart, etc. began to implement a no-return and refund policy. A "civil war" broke out between Temu's semi-hosted and fully-hosted services.
Tmall 3C home appliances double 11 explosion: brands and platforms rush to
Shareholders reveal the inside story of Huayun Data fraud: thousands of official seals were forged, and more than 3 billion yuan was defrauded; Musk was exposed to want 14 mothers and children to live in a secret family estate; Yang Yuanqing said that Lenovo had difficulty recruiting employees when it went overseas in the early days
The app is coming! Robin Li will give a keynote speech on November 12, and the poster reveals a huge amount of information
It is said that Zhong Shanshan asked the packaged water department to sign a "military order" and the entire department would be dismissed if the performance did not meet the standard; Ren Zhengfei said that it is still impossible to say that Huawei has survived; Bilibili reported that employees manipulated the lottery丨Leifeng Morning News
Account Entry

The disappearing boundary between MCU and MPU

Latest update time:2020-12-09
    Reads:


Does it really matter whether there is a clear boundary between MPU and MCU?

Author | Wu You

There was a time when microprocessors (MPUs) and microcontrollers (MCUs) were two completely different devices. Microcontrollers completed "control" related tasks and responded to external signal stimuli, while microprocessors mainly performed processing functions and had high requirements for data processing and computing power. However, due to changes in memory architecture, the boundaries between the two are becoming blurred.

In fact, there are many ways to distinguish between microprocessors and microcontrollers, and the industry has not yet reached a consensus on the criteria for distinguishing them. However, some people have concluded that the precise distinction between the two is no longer important.

"In recent years, the distinction between MCUs and MPUs has become increasingly blurred," said Colin Walls, an embedded software technology expert at a Siemens business unit. " Originally, MCUs integrated the CPU, memory and peripherals on a single chip. Most MCUs are still like this today, but as MCUs become powerful enough to support more complex applications, MCUs with additional external memory are becoming common."

1


Two markets for computing chips

There was a time when computing chips were divided into two distinct markets. Most chip devices were aimed at mainstream computing, where performance was the main consideration. These single-chip miniature computers were called "microprocessors" and powered personal computers and larger systems.

Today we can see them in all types of laptops, desktops and servers, and it is worth noting that they are general-purpose engines designed to run any number of programs unknown in advance, the main memory is DRAM and the non-volatile storage is a hard drive or SSD.

In the less mainstream world of embedded computing, where modest computing power and specialized purposes are required, designed programs may run in firmware to allow the entire system (program and all) to be verified before shipping, memory requirements will be more limited, and SRAM and non-volatile memory used to store code can be integrated on the same chip as the CPU. Crucially, real-time response is usually important.

Embedded computers also tend to be used in environments with specialized I/O needs, some might be driving motors, others might be processing sound or reading sensors. It is very efficient to integrate specialized peripheral interface hardware onto the same chip as the CPU and memory, which results in a variety of chips with different characteristics.

In general, a CPU integrated with SRAM, non-volatile memory and dedicated peripherals is called a "microcontroller".

Microprocessors have evolved to 64 bits, while microcontrollers are still mostly 8 bits, but some changes have occurred in between, making the distinction between the two more blurred.

Integrated flash memory is an important feature of MCUs, but this type of flash memory is not yet available on microcontrollers with the most advanced nodes, so many devices sold as microcontrollers use external flash memory instead of embedded flash memory, and also use external DRAM.

In fact, a process called "shadowing" can take the code from external flash and copy it into DRAM, from which the code can then be executed, and for increased performance, cache can also be included. This makes the CPU/memory subsystem almost indistinguishable from an MPU.

So is the MCU now the MPU? Is there no difference anymore?

2


Factors that differentiate MCUs from MPUs today

Today's MCUs and MPUs are very similar, but there are still some subtle differences in many aspects, including CPU functions, bit number, operating system, timing requirements, number of cores, etc.

In terms of CPU capabilities, if a CPU has a complex pipeline with speculative execution and other superscalar features, it can be considered an MPU, but exactly where the transition occurs is not clearly defined.

In terms of the number of bits, an 8-bit device is more likely to be considered an MCU, and a 64-bit device is likely to be considered an MPU. However, the earliest MPUs were 4 bits, which is more of a historical issue than a defining characteristic.

It can also be categorized based on the operating system the computer can run, if it runs Linux, it can be called an MPU. If it only allows for a smaller real-time operating system, or even just runs bare metal, it can be called an MCU, which leaves a lot of middle ground for devices that can run Linux. In terms of timing, MCUs are usually used for applications that require hard or soft real-time response, and MPUs are generally not used for this purpose.

Multi-core processors are generally considered MPUs, especially when the cores are the same and the management is symmetrical. However, dedicated devices may have multiple processors, and some processors dedicated to specific tasks such as digital signals are also considered MCUs, so it is not an accurate basis to judge whether it is an MPU or MCU by the number of cores.

From the perspective of purpose of use, it can be considered that general-purpose devices are MPUs and single-purpose devices are MCUs, but this is actually only about how the device is used. If any device is used without a clear purpose, what should the device be called at that time?

Typically full-featured MPUs will not have specialized peripherals, largely because they are general purpose rather than application specific, so you might think that as long as there are such peripherals, it is an MCU, but this is not the case, and the lack of peripherals does not mean it is an MPU.

From the above analysis, we can see that each characteristic factor has defects and the results are unsatisfactory. So what do industry experts think?

3


MCU and MPU are becoming obsolete terms

Marc Greenberg, director of product marketing for the Cadence IP Group, said: "I don't know if there is some official definition of the difference between MCUs and MPUs. A simple search seems to indicate that MCUs are those with NVM on the die, but various MPUs have some bits of NVM. MPUs may also have MCUs on the same die, so what is it? The smallest cacheless processor may still have some registers and SRAM. Is there really a difference between a sequencer coded in RTL and a general-purpose processor executed from ROM? Obviously the distinction between MCUs and MPUs is somewhat arbitrary, which means that the boundary is not clear and can even be arbitrary. When I think of MPUs, I think of devices used to control general-purpose computers, such as desktops, servers, tablets, etc."

Grant Martin, senior engineer at Cadence, said: "According to Wikipedia, an MCU is a small computer on a single metal oxide semiconductor integrated circuit chip, and an MPU is a computer processor that combines the functions of a central processing unit on a single or multiple integrated circuits in a MOSFET structure."

“If you dig deeper, an MPU has the functionality of a CPU, so it is a computer processor, while an MCU is a more complete computer, which means that an MCU contains an MPU, which is contrary to common sense. Is a 16-way server processor with multiple processor cores no longer an MPU? But a multi-core heterogeneous SoC?”

“For example, a mobile phone might include multiple application processing cores, multiple DSPs for audio, video, and image processing, one or two GPUs for rendering images on the screen, and a neural network processing unit - an MCU - just for entertainment purposes. From my point of view, the industry should abandon these outdated terms and use more precise and descriptive terms ,” continued Grant Martin.

Jeff Hancock, senior product manager at Mentor, a Siemens business, said: "From a system software perspective, MCUs are expected to be suitable for applications that directly interpret and control hardware sensors and actuators. This access usually involves consistent and reliable instruction timing, which conflicts with the needs of general-purpose MPUs. General-purpose MPUs are designed to optimize throughput, while MCUs usually optimize latency. Therefore, if you need to process large databases, MPUs are more suitable, and if you need fine electromechanical control, then MCUs are more suitable.

Jeff Hancock also said: "External memory and cache have certainly changed the standard of MCU, but this is still a long way from equating MCU with MPU. In particular, not all processing units in all MCUs use external memory exclusively, and systems can also be built with isolated subsystems that allow critical workloads and less critical application-level systems to continue in parallel."

“From a software engineer’s perspective, this is an interesting challenge. There may be two areas of memory in non-contiguous places. Integrated memory is smaller but faster, so it is best left for speed-critical code such as real-time operating systems. This means that the development tools must be flexible enough to map the code correctly to the memory, and the RTOS must be small enough to fit in the on-chip memory,” added Walls, an expert in embedded software technology at Siemens Business Unit.

“MCUs have historically been associated with embedded systems, where low cost and low power requirements are more important than performance,” said Nicole Fern, senior hardware security engineer at Tortuga Logic. “But with the advent of mobile computing and IoT edge computing, many embedded systems now require complex processing, which has led to MCU products that look more like MPUs for the embedded space, providing higher performance and configurability for devices with external memory and cache. In this case, the difference between the terms MCU and MPU is only based on whether the CPU system is integrated.”

Thomas Ensergueix, senior director of Arm's low-power IoT business, agrees: "In recent years, the line between MCUs and MPUs has blurred. One of the main differences between MCUs and MPUs is software and development. MPUs will support rich OSs such as Linux and related software stacks, while MCUs will typically focus on bare metal and RTOS. Before deciding which hardware platform, MCU or MPU is most effective, it is up to software developers to decide which software environment and ecosystem is best for their application.

As MCUs have now transitioned to 32-bit, we have also seen a dramatic increase in performance, which has helped to close the gap between MCUs and MPUs. For example: many Arm Cortex-M7-based MCUs offer more than 100 Dhrystone MIPS, or more than 2,000 points in CoreMark. Many of these devices also have very large built-in memories, or provide fast interfaces to connect external memories. This ensures that performance and memory are no longer bottlenecks for MCUs, and brings them closer to low-end MPUs.”

4


summary

Does it really matter if there is a clear line between MPUs and MCUs today? Probably not. Because no matter what we call it, the application has accompanying requirements that will determine which device to use.

This article is compiled from https://semiengineering.com/mpu-vs-mcu/

Originally Posted by Bryon Moyer


Previous recommendations


▎40 boxes of MSI 3090 graphics cards were stolen, worth 2.2 million yuan; Samsung followed Apple in canceling the free charger; Google will launch self-developed mobile phone and computer chips


Latest articles about

Database "Suicide Squad" 
Exclusive: Yin Shiming takes over as President of Google Cloud China 
After more than 150 days in space, the US astronaut has become thin and has a cone-shaped face. NASA insists that she is safe and healthy; it is reported that the general manager of marketing of NetEase Games has resigned but has not lost contact; Yuanhang Automobile has reduced salaries and laid off employees, and delayed salary payments 
Exclusive: Google Cloud China's top executive Li Kongyuan may leave, former Microsoft executive Shen Bin is expected to take over 
Tiktok's daily transaction volume is growing very slowly, far behind Temu; Amazon employees exposed that they work overtime without compensation; Trump's tariff proposal may cause a surge in the prices of imported goods in the United States 
OpenAI's 7-year security veteran and Chinese executive officially announced his resignation and may return to China; Yan Shuicheng resigned as the president of Kunlun Wanwei Research Institute; ByteDance's self-developed video generation model is open for use丨AI Intelligence Bureau 
Seven Swordsmen 
A 39-year-old man died suddenly while working after working 41 hours of overtime in 8 days. The company involved: It is a labor dispatch company; NetEase Games executives were taken away for investigation due to corruption; ByteDance does not encourage employees to call each other "brother" or "sister" 
The competition pressure on Douyin products is getting bigger and bigger, and the original hot-selling routines are no longer effective; scalpers are frantically making money across borders, and Pop Mart has become the code for wealth; Chinese has become the highest-paid foreign language in Mexico丨Overseas Morning News 
ByteDance has launched internal testing of Doubao, officially entering the field of AI video generation; Trump's return may be beneficial to the development of AI; Taobao upgrades its AI product "Business Manager" to help Double Eleven丨AI Intelligence Bureau 

 
EEWorld WeChat Subscription

 
EEWorld WeChat Service Number

 
AutoDevelopers

About Us Customer Service Contact Information Datasheet Sitemap LatestNews

Room 1530, Zhongguancun MOOC Times Building,Block B, 18 Zhongguancun Street, Haidian District,Beijing, China Tel:(010)82350740 Postcode:100190

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号