64
F. Firouzi et al.
• A 16-bit microcontroller functions with greater performance and precision than
its 8-bit counterpart (i.e., extended 8051XA and PIC2x families).
• A 32-bit microcontroller utilizes a 32-bit instruction set to complete both logic
and mathematical operations. These MCUs can generally be used to control
devices such as office and home appliances, medical devices, systems designed
for engine control, and other embedded systems (i.e., PIC3x and Intel/Atmel 251
family). Please note that 32-bit architecture does not mean that the system has
an exact 32-bit data path. For example, IBM System/360 is considered a 32-bit
architecture; however, it has only an 8-bit native path width, and all 32-bit arithmetic operations are implemented by executing several 8-bit operations at a time.
2.4.1.2 Classification by Instruction Set (RISC vs CISC)
Instruction set architecture (ISA), also known as computer architecture, is an
abstract model of the underlying design that serves as an interface for hardware and
software. ISA defines several key parameters of the processor including instruction
set, addressing modes, I/O, memory (registers, etc.), as well as data types. Note that
different processors with different designs (microarchitectures) can share the same
ISA. For instance, Intel and AMD both implement x86 ISA while having different
microarchitectures.
An ISA can be implemented with different microarchitectures that can vary in
cost, physical size, and performance. However, software created to run on one ISA
implementation can generally run on other implementations of the same ISA. This
flexibility supports binary compatibility among various generations of computers
and enables the creation of processor families.
ISAs can be categorized in a variety of ways, but a common means of classification is based on instruction set complexity. Complex instruction set computers
(CISC) include several specialized instructions that are infrequently needed in
practical programs. Therefore, the instruction set of a CISC is very sophisticated,
and typically, instructions have different complexity levels resulting in different
execution times. On the other hand, a reduced instruction set computer (RISC)
only implements those instructions that are frequently used in applications. In RISC,
operations that are rarely needed are designated as subroutines, and the additional
processing time needed to execute them is offset by less frequent use. In addition,
in RISC, generally instructions can be executed within one clock cycle, but it needs
to execute more instructions compared to CISC. Thanks to the simplicity of RISC,
it usually results in low-power consumption, which is critical in battery-powered
systems.
2.4.1.3 Classification by Memory Structure and Bus Architecture
A modern microcontroller is a structure that includes one or more processing cores,
a simple or complex memory hierarchy, and interface controllers to connect with
F. Firouzi et al.
• A 16-bit microcontroller functions with greater performance and precision than
its 8-bit counterpart (i.e., extended 8051XA and PIC2x families).
• A 32-bit microcontroller utilizes a 32-bit instruction set to complete both logic
and mathematical operations. These MCUs can generally be used to control
devices such as office and home appliances, medical devices, systems designed
for engine control, and other embedded systems (i.e., PIC3x and Intel/Atmel 251
family). Please note that 32-bit architecture does not mean that the system has
an exact 32-bit data path. For example, IBM System/360 is considered a 32-bit
architecture; however, it has only an 8-bit native path width, and all 32-bit arithmetic operations are implemented by executing several 8-bit operations at a time.
2.4.1.2 Classification by Instruction Set (RISC vs CISC)
Instruction set architecture (ISA), also known as computer architecture, is an
abstract model of the underlying design that serves as an interface for hardware and
software. ISA defines several key parameters of the processor including instruction
set, addressing modes, I/O, memory (registers, etc.), as well as data types. Note that
different processors with different designs (microarchitectures) can share the same
ISA. For instance, Intel and AMD both implement x86 ISA while having different
microarchitectures.
An ISA can be implemented with different microarchitectures that can vary in
cost, physical size, and performance. However, software created to run on one ISA
implementation can generally run on other implementations of the same ISA. This
flexibility supports binary compatibility among various generations of computers
and enables the creation of processor families.
ISAs can be categorized in a variety of ways, but a common means of classification is based on instruction set complexity. Complex instruction set computers
(CISC) include several specialized instructions that are infrequently needed in
practical programs. Therefore, the instruction set of a CISC is very sophisticated,
and typically, instructions have different complexity levels resulting in different
execution times. On the other hand, a reduced instruction set computer (RISC)
only implements those instructions that are frequently used in applications. In RISC,
operations that are rarely needed are designated as subroutines, and the additional
processing time needed to execute them is offset by less frequent use. In addition,
in RISC, generally instructions can be executed within one clock cycle, but it needs
to execute more instructions compared to CISC. Thanks to the simplicity of RISC,
it usually results in low-power consumption, which is critical in battery-powered
systems.
2.4.1.3 Classification by Memory Structure and Bus Architecture
A modern microcontroller is a structure that includes one or more processing cores,
a simple or complex memory hierarchy, and interface controllers to connect with
