Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Microcontrollers versus Microprocessors

Status
Not open for further replies.

pragash

Advanced Member level 2
Joined
Jul 4, 2005
Messages
512
Helped
64
Reputation
128
Reaction score
59
Trophy points
1,308
Location
Oakland
Activity points
4,940
i have a basic question in this topic. i believe it will help me to understand controllers better.

since in most application, people are using microcontroller with external memory, why dont i use microprocessor with external memory and external I/O? will it save cost? how about battery life? any other consideration for this argument ?

BR
pragash
 

hi,
let me elaborate again. i dont want to know the reason why microcontrollers uses external memory. my question is, microcontroller + external memory versus microprocessor + external memory + external I/O. which is better in terms of cost, power consumption and etc.

BR
pragash
 

...since in most application, people are using microcontroller with external memory

Can you be more specific about the exact microcontroller you mean by that statement? I would tend to think of that situation more as a microprocessor + memory. (I bet you say 'Arm').

Which is better depends entirely on what you are doing with it.

Typically, a microcontroller is defined as a self-contained unit with built-in peripherals and memory which is programmed to perform a specific task. Sometimes it might need extra RAM or whatever but in general would not. A microprocessor, conversely, would typically need additional support (ROM, RAM, peripherals etc.) to function and would more likely be used for more general and/or complex purposes these days.

Years back we had very simple MCUs that were obviously MCUs (like the first PICs) and MPUs (a.k.a. CPUs) that were obviously MPUs (6502, Z80, 68000). These days the distinction gets blurred somewhat. Draw the line where you want.

So, again, which is better (by any measurement) depends on the task at hand. Something small that needs specific I/O that a typical microcontroller has... pick an MCU. Something big... probably need an MPU.
 

Microprocessor - General purpose device with large processing power and external interface buses (Usually - No ports, No internal memory (RAM and FLASH), MMU, etc)
Microcontroller - Specifically for embedded devices (Still exceptions are there). Limited processing power compared to uP and on chip ports/timers/special modules/flash(limited)/ram(limited) etc.

Still, exceptions are there microcontrollers with MMU, external interface buses, comparable processing power.
 

If you enable the external memory interface on a microcontroller, you will normally block several of the other onchip devices, due to the large number of I/O pins used.
Since the microprocessor is made to use the external memory interface, you will not use internal devices, and you need to add those externally.

Normally a microprocessor is faster on the external interface than the microcontroller. The microcontroller has a fast internal data/address bus, but this slow down when used externally.
 
since in most application, people are using microcontroller with external memory, why dont i use microprocessor with external memory and external I/O? will it save cost?
It depends on the application.

For many things the simplest lowest cost solution is a single chip.

Microprocessors cannot work alone, so often a basic microcontroller is the ideal answer, which is why they were developed in the first place.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top