Microcomputer Architecture
Microcomputer Architecture
Autumn 2023
Microcomputer Architecture
Chapter 4
• Introduction
• Block Diagram
• System Bus
4 CS211 - ICT Fundamentals (Autumn 2023)
Introduction
An Overview of Microcomputers and Microcomputer Architecture
• In the late 1970s and early 1980s, companies such as Apple, IBM,
and Commodore began producing personal computers (PCs) that
were based on microprocessors.
• These early PCs were primarily used for basic tasks such as word
processing and spreadsheet calculations.
• Harvard Architecture
• RISC Architecture
• CISC Architecture
Control bus and address bus Separate lines Combined into a single bus
• This parallel fetching can enhance the overall speed and efficiency
of the system.
CISC (Complex Instruction Set Computing) RISC (Reduced Instruction Set Computing)
• CISC architectures have a large set • RISC architectures have a smaller set
of complex instructions, aiming to of simple instructions, focusing on
reduce the number of instructions optimizing the execution of
per program. frequently used instructions.
• Registers are small, high-speed storage locations within the CPU used to
store temporary data during program execution.
• It provides fast read and write access, but its contents are lost
when the power is turned off.
• As the CPU processes instructions, it fetches and stores data in RAM for
quick retrieval.
• This dynamic interaction between the CPU and RAM enables efficient
and effective execution of tasks.
• RAM provides fast read and write access times, allowing the CPU
to quickly retrieve and manipulate data stored in RAM.
• It allows the CPU to efficiently read and write data during program
execution, improving overall system performance.
• The direct accessibility of RAM allows the CPU to quickly read and
write data without the need for time-consuming data transfer
processes.
• DRAM and SRAM: RAM can be categorized into two main types -
Dynamic RAM (DRAM) and Static RAM (SRAM).
• Solid-State Drives (SSDs): Storage devices that use NAND flash memory
for faster access times and increased durability.
• Secondary memory can also include optical disks (e.g., DVDs), USB
drives, and network-attached storage (NAS) devices.
72 CS211 - ICT Fundamentals (Autumn 2023)
Memory
Secondary Memory (Storage - Hard Drives, SSDs, etc.)
• The levels are ordered by speed and cost, with the fastest and
most expensive memory at the top of the hierarchy.
• They serve as temporary storage for data and instructions actively being
processed by the CPU during program execution.
• General-Purpose Registers:
• Used by the CPU for various purposes, such as storing operands and intermediate results
during arithmetic and logical operations.
• Cache Hit: When the CPU requests data, and it is found in the
cache, it is called a cache hit. This results in faster access times.
• Main memory is volatile, meaning that its contents are lost when
power is lost.
• I/O devices allow the computer to interact with the outside world.
• Input devices allow the user to input data into the computer, such
as keyboards, mice, and touchscreens.
• Touchpad: A device that allows the user to control the pointer on the
screen by sliding a finger on a sensitive surface. It can be either built-in
or external, and can have different gestures, such as tapping, scrolling,
or zooming.
• Barcode reader: A device that allows the user to input data encoded in a
barcode into the computer. It can be either handheld or fixed, and can
use different technologies, such as laser, CCD, or RFID.
97 CS211 - ICT Fundamentals (Autumn 2023)
I/O Devices
Input Devices
• Microphone: A device that allows the user to input sound or voice into
the computer. It can be either built-in or external, and can have different
types, such as dynamic, condenser, or ribbon.
• MIDI keyboard: A device that allows the user to input musical notes and
commands into the computer. It can have different numbers of keys,
knobs, and sliders, and can use different protocols, such as MIDI, USB,
or Bluetooth.
100 CS211 - ICT Fundamentals (Autumn 2023)
I/O Devices
Output Devices
• Video monitor: A device that displays images and text on a screen. It can
be either a cathode ray tube (CRT) monitor or a flat-panel monitor, such
as a liquid crystal display (LCD) or a light-emitting diode (LED) monitor.
• Braille printer: A device that prints text in Braille, a system of raised dots
that can be read by touch. It can be either a single-sided or a double-
sided printer, and can have different speeds and paper sizes.
• It allows the data, address, and control signals to flow between these
components, enabling the microcomputer to function as a coherent
system.
• It can be divided into three types of lines: data, address, and control.
• These are the lines that carry the binary information between the
CPU, memory, and I/O devices.
• They are bidirectional, meaning that they can transfer data in both
directions.
• These are the lines that carry the memory or I/O device address
that the CPU wants to access.
• They are unidirectional, meaning that they can only transfer data
from the CPU to the memory or I/O devices.
• These are the lines that carry the control and timing signals that
coordinate the operations of the CPU, memory, and I/O devices.
• Single bus: This is the simplest and most common type of system
bus, where all the components are connected to a single set of
lines.
• It is easy to implement and expand, but it has low speed and high
contention, as only one component can use the bus at a time.
• Multiple bus: This is a type of system bus where there are more than
one set of lines, each dedicated to a specific function or component.
• For example, there can be separate buses for data, address, and control,
or separate buses for CPU, memory, and I/O.
• This can improve the speed and reduce the contention of the system
bus, but it also increases the cost and complexity of the microcomputer.
• For example, there can be a high-speed bus that connects the CPU and the
cache memory, a medium-speed bus that connects the main memory and the
I/O controllers, and a low-speed bus that connects the peripheral devices.
• This can optimize the performance and efficiency of the system bus, but it also
requires more logic and coordination among the buses.