3
\$\begingroup\$

I was learning today about 8051 and I encountered a point which said microntroller generally costs less than a microprocessor.

I didn't understood why is it so since microcontrollers have RAM, ROM, internal oscillators, ADC convertors, comparators and so on on a single chip but microprocessors dont.

I also know that microprocessors have a bigger ALU part compared to microcontrollers but can this only reason increase the cost of microprocessor?

\$\endgroup\$
  • \$\begingroup\$ The complexity is orders of magnitude higher. Along with the obvious aspect that microcontrollers rarely use top of the line fabrication techniques, I believe some microcontrollers are still using > 100 nm fab. \$\endgroup\$ – Jarrod Christman May 1 '15 at 14:22
  • \$\begingroup\$ I am not able to understand what you are trying to say @JarrodChristman \$\endgroup\$ – Jasser May 1 '15 at 14:41
  • 1
    \$\begingroup\$ Basically, what Jarrod is saying is that microcontrollers have a far smaller R&D cost (which makes up a sizeable portion of the cost of a microprocessor) since they aren't nearly as complex. Microcontrollers are also usually made using old fabrication processes (with old equipment). Since that doesn't require state of the art machinery, they can be manufactured at a fraction of the cost. \$\endgroup\$ – Dr Coconut May 1 '15 at 14:44
6
\$\begingroup\$

Microprocessors are generally targeted at higher end systems (at any given point in technology) since they will be used with external memory and perhaps external peripherals. The pin count generally is higher (you need external memory buses), the internal complexity higher (since you'd generally want a fast CPU, hardware floating point, and relatively large fast cache memory to reduce the performance hit from relatively slow external memory).

It's not a hard and fast thing- it's easy to find microcontrollers that are expensive and microprocessors that are cheaper.

One example that fits the context of your current reading about the Intel MCS-51 series- an 8031 is a microprocessor. Add 4K bytes of mask-programmed memory to it and it's a microcontroller (the 8051). The 8031 was generally cheaper than the 8051, 8751, 87C51, 89C51 and similar parts for many years. In fact, 8051s with mistakes in the mask ROM could be sold as 8031s since the internal ROM was disabled by hardware when used as an 8031 (the EA line).

So there is no inherent reason why one is more expensive than the other, just a different set of choices that manufacturers make in order to maximize their market share and profits.

| improve this answer | |
\$\endgroup\$
5
\$\begingroup\$

The distinction between "microcontroller" and "microprocessor" is not a very helpful one. The way things are generally marketed:

Desktop/server CPUs: performance orientated. Not capable of driving their own peripherals; this is usually done by an associated "chipset". For this market, performance is most important, so new devices are developed every few months and fabricated on the latest factory lines. This greatly increases the price. There's not so much an "ALU" as a deep, broad pipeline of computing elements, and often quite a lot of the die is cache. An Intel CPU will have more RAM on it in the form of cache than any "microcontroller". Contain hundreds of millions to (NVIDIA GPUs) billions of transistors.

System-on-a-chip: moderate performance with most peripherals on board. Possibly RAM stacked on top in the same package (not same die). Target market is phones, tablets, mini-PCs, set top boxes. Price/power/performance are balanced against each other. Still fairly cutting-edge.

Microcontrollers: not required to do very much computation. Will generally spend their entire life running one application. Peripheral-orientated. Very cost-sensitive and maybe power consumption as well. The peripherals are usually not expensive, either in terms of design work or die area - they're pretty simple and don't develop over time. Although some of the fancier ones may have effort spent on high-quality or high-speed ADCs. Not manufactured on cutting-edge processes, which keeps cost down. The product lifecycle is a lot longer - some customers won't buy unless they're guaranteed a supply for a decade or more.

Midrange "peripherals" like USB and Ethernet support are complex, but can be bought in by the designers.

Fancy high-temperature or radiation-hardened microcontrollers are available, at extreme cost.

| improve this answer | |
\$\endgroup\$
0
\$\begingroup\$

A microcontroller that uses equivalent microprocessor would not be cheaper. However normally microcontrollers are several generations behind. A 8051 microcontroller is similar to a 8085 microprocessor (which is less than a 8086).

| improve this answer | |
\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.