Embedded
Embedded
Embedded System
- An embedded system is a computer system with a dedicated function within a larger mechanical or
electrical system, often with real-time computing constraints. It is embedded as part of a complete
device often including hardware and mechanical parts.
An embedded system is a combination of computer hardware and software designed for a specific
function. Embedded systems may also function within a larger system. The systems can be
programmable or have a fixed functionality.
2. Microcontroller & Microprocessor
• The microprocessor is a processor on one silicon chip.
• The microcontrollers are used in embedded computing.
• The microcontroller is a microprocessor with added circuitry.
A microcontroller (MCU for microcontroller unit) is a small computer on a single VLSI integrated
circuit (IC) chip. A microcontroller contains one or more CPUs (processor cores) along
with memory and programmable input/output peripherals. Program memory in the form of ferroelectric
RAM, NOR flash or OTP ROM is also often included on chip, as well as a small amount of RAM.
Microcontrollers are designed for embedded applications, in contrast to the microprocessors used
in personal computers or other general purpose applications consisting of various discrete chips.
A microcontroller is a small and low-cost microcomputer, which is designed to perform the specific
tasks of embedded systems like displaying microwave’s information, receiving remote signals, etc.
The general microcontroller consists of the processor, the memory (RAM, ROM, EPROM), Serial ports,
peripherals (timers, counters), etc.
Difference between Microprocessor and Microcontroller
The following table highlights the differences between a microprocessor and a microcontroller −
Microcontroller Microprocessor
Microcontrollers are used to execute a single task within an Microprocessors are used
application. for big applications.
Its designing and hardware cost is low. Its designing and hardware
cost is high.
It is built with CMOS technology, which requires less power to Its power consumption is
operate. high because it has to
control the entire system.
Types of Microcontrollers
Microcontrollers are divided into various categories based on memory, architecture, bits and instruction
sets. Following is the list of their types −
Based on bit configuration, the microcontroller is further divided into three categories.
8-bit microcontroller − This type of microcontroller is used to execute arithmetic and logical
operations like addition, subtraction, multiplication division, etc. For example, Intel 8031 and
8051 are 8 bits microcontroller.
16-bit microcontroller − This type of microcontroller is used to perform arithmetic and logical
operations where higher accuracy and performance is required. For example, Intel 8096 is a 16-bit
microcontroller.
32-bit microcontroller − This type of microcontroller is generally used in automatically controlled
appliances like automatic operational machines, medical appliances, etc.
Memory
Based on the memory configuration, the microcontroller is further divided into two categories.
External memory microcontroller − This type of microcontroller is designed in such a way that
they do not have a program memory on the chip. Hence, it is named as external memory
microcontroller. For example: Intel 8031 microcontroller.
Embedded memory microcontroller − This type of microcontroller is designed in such a way that
the microcontroller has all programs and data memory, counters and timers, interrupts, I/O ports
are embedded on the chip. For example: Intel 8051 microcontroller.
Instruction Set
Based on the instruction set configuration, the microcontroller is further divided into two categories.
CISC − CISC stands for complex instruction set computer. It allows the user to insert a single
instruction as an alternative to many simple instructions.
RISC − RISC stands for Reduced Instruction Set Computers. It reduces the operational time by
shortening the clock cycle per instruction.
Applications of Microcontrollers
Microcontrollers are widely used in various different devices such as −
Light sensing and controlling devices like LED.
Temperature sensing and controlling devices like microwave oven, chimneys.
Fire detection and safety devices like Fire alarm.
Measuring devices like Volt Meter.
3. Processor Architecture
MCU is integrated electronic computing device that includes three major components on a single chip:
• Microprocessor
• Memory
• I/O ports
4. Instruction Set Architecture
In computer science, an instruction set architecture (ISA), also called computer architecture, is
an abstract model of a computer. A device that executes instructions described by that ISA, such as
a central processing unit (CPU), is called an implementation.
In general, an ISA defines the supported instructions, data types, registers, the hardware support for
managing main memory, fundamental features (such as the memory consistency, addressing
modes, virtual memory), and the input/output model of a family of implementations of the ISA.
This basically means that an ISA describes the design of a Computer in terms of the basic operations it
must support. The ISA is not concerned with the implementation-specific details of a computer. It is
only concerned with the set or collection of basic operations the computer must support. For example,
the AMD Athlon and the Core 2 Duo processors have entirely different implementations but they
support more or less the same set of basic operations as defined in the x86 Instruction Set.
Let us try to understand the Objectives of an ISA by taking the example of the MIPS ISA. MIPS is one
of the most widely used ISAs in education due to its simplicity.
The ISA provides the only way through which a user is able to interact with the hardware. It can be
viewed as a programmer’s manual because it’s the portion of the machine that’s visible to the assembly
language programmer, the compiler writer, and the application programmer.
The ISA defines the supported data types, the registers, how the hardware manages main memory, key
features (such as virtual memory), which instructions a microprocessor can execute, and the input/output
model of multiple ISA implementations. The ISA can be extended by adding instructions or other
capabilities, or by adding support for larger addresses and data values.