Posted on 24 Comments

The Difference between Single Chip Microcomputer, Microcontroller and Microprocessor

What is Microprocessor

Processors usually refer to microprocessors, microcontrollers and digital signal processors. Microprocessors (MPUs) usually represent a powerful CPU, but they are not chips designed for any specific computational purposes that already exist. Such chips are often the core CPUs of personal computers and high-end workstations. The most common microprocessors are Motorola’s 68K series and Intel’s X86 series.

What is Microtroller

Microcontroller has been developed rapidly and widely used in nearly 30 years since it appeared in the 1970s. With the rapid development of microelectronics technology, microcontrollers have been widely used in the fields of household appliances, computing and peripherals, communications, industrial control, automation, intelligent equipment and instrumentation because of their outstanding advantages such as good performance, small size, excellent price and complete functions. They have become scientific research, teaching and industrial technology reform. Build the most powerful tool. From the simple microcontrollers with Princeton structure to RISC microcontrollers with Harvard bus structure, microcontrollers have made rapid development.

Eight-bit microcontrollers are the largest number of microcontrollers currently used, and the most companies are committed to cultivating the market. Their market and price competition are extremely fierce, and various multi-functional requirements and different specifications of products are also very fast. With the rapid development of integrated circuit and semiconductor technology and the continuous competition and integration of FPGA and SOC technology, the design of electronic products is gradually developing towards the direction of better system performance, lower power consumption, lower cost, higher reliability and easier development. Therefore, the rapid introduction of 8-bit microcontroller chips or IP Core with high performance-price ratio, low power consumption and high economic benefits in line with market demand has become a hot spot of competition among many companies nowadays.

According to the instruction system, microcontrollers can be divided into CISC, RISC, RISC-like (RISC-LIKE) and so on. The traditional MCS51 controller belongs to CISC type, and its code density is high, but most instructions need multiple clock cycles to complete. RISC instruction density is low, but instruction efficiency is high. RISC-like model has both advantages of CISC and RISC. The reason why RISC and RISC-like instruction have such high instruction efficiency is due to the hard wiring structure and pipeline structure brought about by small instruction set. Simple instruction sets can be decoded by hard wiring without microcode control, which improves the decoding efficiency. The pipeline structure divides the instructions into several steps. When the pipeline fills up, the average execution time (CPI) of each instruction is about one clock cycle.

Microntrollers VS single chip microcomputer)

Early microcontrollers integrated a computer into a chip to realize embedded applications, so they were called single chip computers. Subsequently, in order to better meet the embedded application in the field of control, some circuit units that meet the control requirements are continuously expanded in the MCU. At present, single-chip computer has been widely known as microcontroller (MCU). There are also microcontrollers developed by microprocessors, such as Intel’s 386EX, which is a very successful version of 80386 microprocessors. Like microprocessors in embedded applications, it is also called embedded microprocessors. The high-end products of embedded processors include ARM of Advanced RISC Machines, MIPS of Silicon Graphics, PowerPC of IBM and Motorola, X86 and i960 chips of Intel, AMD’s AM386EM and Hitachi’s SHRISC chips. The CPU in Digital Signal Processors (DSPs) is specially designed for computing discrete-time signal processing very quickly, such as in situations where audio and video communications are required. DSPs contain multipliers and adders, which can perform such operations faster than other processors. The most common ones are Ti’s TMS320CXX series and Motorola’s 5600X series.

What is Central Processing Unit

Central Processing Unit (CPU), abbreviated as CPU, is one of the main devices of electronic computer. Its function is mainly to interpret computer instructions and process data in computer software. CPU provides basic digital computing characteristics for computer design. CPU, storage device and input/output device are the three core components of modern microcomputers. CPUs manufactured by integrated circuits are often referred to as microprocessors. Since the mid-1970s, single-chip microprocessors have replaced almost all other types of CPUs. Today, the term CPU has become a synonym for almost all microprocessors.

Composition of CPU

  • Operator: arithmetic and logic (components: arithmetic logic unit, accumulator, register group, path converter, data bus)
  • Controller: Reset and enable (components: counter, instruction register, instruction decoder, state register, timing generator, micromanipulation signal generator)

Self-understanding of MPU, MCU and CPU

  • MCU is a chip similar to PC, but not as powerful as PC, but it can be embedded in other devices to control it. So microcontrollers and microcontrollers are actually the same concept.
  • Microprocessor refers to CPU, which is a component of PC and is used to understand and execute instructions.
  • DSP is a CPU with special structure, which is specially used to process various functions of digital signal.
  • At present, many microprocessors have gradually evolved into microcontrollers (MCUs), such as arm, so these concepts begin to converge, so processors include CPU, MCU, DSP.
  • ARM is currently synonymous with embedded processors: encapsulated by CPU, a small amount of RAM, FLASH, and other interfaces.

24 thoughts on “The Difference between Single Chip Microcomputer, Microcontroller and Microprocessor

  1. Good page! Sir
    I am just writing a simple code to a microcontroller — C8051F312 . My code doesn’t working. The code is :
    #include C8051F310.h
    #include stdio.h

    sbit LED_16 = P1^7; // green LED: 1 = ON; 0 = OFF

    void init(void)
    // XBRN registers_init
    XBR0 = 0x00;
    XBR1 = 0x00; // Enable the crossbar
    PCA0MD = 0X00;

    // port_init
    P0MDOUT = 0x00; // Output configuration for P0
    P1MDOUT = 0x40; // Output configuration for P1
    P2MDOUT = 0x00; // Output configuration for P2
    P3MDOUT = 0x00; // Output configuration for P3

    void main(void)

    while (1)
    LED_16 = 1; // LED continuously illuminated
    I’m not very good at C language. Please help me what did I wrong?

    1. I think you need to do the following steps:
      1.First of all you should use one of 2 following options for #include directive

      #include “path-spec”
      #include , not #include path-spec, as you did

      2.To configuire 7th bit of P1 general I/O port to work in push-pull mode you should set

      P1MDOUT = 0x80;

      , not

      P1MDOUT = 0x40;

  2. Excellent!

  3. Recently, I am researching microcontrollers, and I just want to know for microcontroller venture , we need a compiler which bolster that particular microcontroller. Yet, on the off chance that compiler does not bolster a particular microcontroller, at that point I don’t get it’s meaning?

    1. Hi, Joyce
      I am not specific, but I think:
      The compiler changes abnormal state source code into lower level gathering guidelines. Various groups of CPU centers utilize distinctive gathering guidance sets. For instance, the Intel x86 guidance set is not quite the same as the ARM guidance set. A compiler that doesn’t bolster a particular microcontroller can’t change source code into that microcontroller’s get together guidance set.

  4. Good post! It give our students who majoring in electronics a big help!

  5. I was consufing about what connection and contrasts are between single chip computer, microcontroller and embedded system?
    Are single chip PC and microcontroller a similar idea? Is microcontroller executed as a solitary chip PC and to control something different? Then again a solitary chip PC can be broadly useful, not only for controlling something different?
    Are installed framework and microcontroller a similar idea? If not, how are they related?
    And I googled this pages, it give me an excellent answer.

    1. Hi, bonnie H., Thank you for your affirmation.

  6. Good day~ sir
    I have a troubles between aTmega32 microcontroller and EEPROM, my problems is:
    What pins is the EEPROM and how does the code look like?
    Does the microcontroller itself have any cycle limit or lifetime?
    Can I use the microcontroller Memory, without using the EEPROM (“avoid using EEPROM”)?
    It will be appreciated if you can help me.

    1. Hi, arjav h.
      As far as possible is on composes, not peruses.
      You ought to compose non-volatle setup information to the EEPROM, and unpredictable information to RAM.
      As far as possible is for the most part into the few million composes before the EEPROM winds up worn, so I wouldn’t stress over destroying it during development.You don’t specify what language or improvement device you are utilizing, yet as a rule there are explicit schedules/calls/pragmas for readign and writing to the eeprom, on the off chance that you aren’t explicitly calling them, the odds are you are not keeping in touch with the EEPROM. Regularly just the bootloader is scorched into the EEPROM, client projects are stacked into RAM, memory composes/peruses by the client program are in RAM (except if they explicitly attempt and store some non-unstable information once more into EEPROM).

  7. SIr, I am a student who like to do some interesting electronic projects and I met some questions.
    I am doing an electronic project by using 8051F312 microcontroller ans I met some trouble now, I have send you email about the specific situation, could you help me?


    1. Hi, rodelio
      I have answered your question by your email, please check it.
      Good day!

  8. sir
    I have a microcontroller STM32F051 and I need to program it. I searched for IDE that I would almost certainly utilize and I discovered TRUESTUDIO that I’m utilizing. I needed to realize by what method should I do to send the program I made into the microcontroller. Do I need a particular developer (like an electronic gadget for Microchip Pics) ? When I click the catch troubleshoot, I get an error “Error in initializing ST-Link device. Reason: Failed to connect to device. Please check power and cabling to target.” I don’t know whether I misconstrued something. I download the product and I chose my particular rendition of microcontroller, however it appears that it doesn’t remember it…

    1. regardless of what the mcu you will require some interface, be it as straightforward as a usb connector attached to the chip, or a troubleshoot header utilizing some other gadget or hardware. For a stm32 chip huge numbers of the disclosure sheets and the nucleo sheets (specifically the ones with a breakaway end, you dont need to sever it, simply expel a few jumpers to utilize it on different gadgets (not really ST gadgets)). These parts additionally have a sequential bootloader inside that you cannot change so it is consistently there, and can now and again utilize one of the nucleo stlink debuggers (do some exploration as to ones that offer a virtual uart, not every one of them do, less expensive than the committed stlink dongles) or state a ftdi usb breakout board (under $2 on ebay).

      There are various alternatives for programming these parts as recorded as a hard copy programming, can simply utilize gnu devices and move your very own drivers (really simple the documentation is quite great), get one of the ST libraries that they offer (for nothing) or in the event that you have a Nucleo you may almost certainly utilize mbed or arduino to create. We truly need to find out about the board you have this part on, is it only a breakout board or as asked in the remarks did you purchase a nucleo board or a revelation board? Is it true that you are running linux, windows or macintosh or other or are adaptable on what have?

  9. Thank you for offering useful knowledge.

    1. I agree! This is really a good page about Single Chip Microcomputer

  10. EM~ I just want to ask what is the difference between the I²C protocols and SPI , used to program a microcontroller?

    1. Hello~ Engr.
      They are fundamentally the same as by they way they work, however they aren’t the equivalent and the distinctions aren’t minor. Contingent upon the microcontroller, they may have either, both, different of each, or none. They may share pins, and they may not. Allude to the datasheet of your microcontroller.

      1. Hi, sir
        In the late 1970s, up to about 1981, the maximum access speed of existing RAM chips was about 2.6 MHz.
        Does the same speed limit apply to read-only memory chips of the same era? If not, what is their maximum access speed?
        Editor: Specifically, I refer to the time when microcomputers were used as the basic interpreter’s mask programming ROM chips.

      2. The typical EPROM series at that time was the 27xx series. Today’s DIL EEPROM still uses the same pin layout.
        Access time varies from model to model.

  11. Good page! I will follow you!

  12. How can microcontrollers achieve high energy efficiency? Is it triggered by time, event or sleep?

    1. Hi, Be
      Most modern microprocessors have several levels of low-power mode operation. These modes are very specific to a particular microchip, but they usually turn off the clock that runs the chip. It used to consume a lot of energy to run high-speed clocks. Therefore, the first step in saving energy is to turn off the high-speed clock without work to do. Many chips have other modes until the power of RAM is cut off (and its contents are lost), so that it can only wake up by resetting. Likewise, details depend on the microprocessor, which need to be carefully considered in the design of the whole system.
      Hope my answer is available for you

  13. A good post with excellent comments!

Leave a Reply

Your email address will not be published.