BEG 1109 Computer Architecture
BEG 1109 Computer Architecture & Design
Contact hours: 42
Credit hours: 3
Pre-requisites: None
Purpose
To provide the learner with an in-depth understanding of the computer hardware system
Expected Learning Outcomes
By the end of the course unit, the learner should be able to:
Explain the historical development of computers
Describe the functional organization of a computer system
Troubleshoot common computer hardware problems
Upgrade computer software and hardware
Course Content
Introduction to hardware components of a computer:
Motherboards
CPU elements
Memory
Storage
Peripheral devices
Computer Systems Technology:
Computer Organization
VHDL (VHSIC Hardware Description Language)
Input and output devices
CPU concepts, functionality, and technology
Buses:
Internal and external buses
Bus width and clock speed
Bus Technology and Standards:
Expansion bus standards (15A/EISA/MCA/PCI/SCSI)
Current trends in bus technology
Multi-media devices
I/O and Instruction Set Design:
Instruction representation
Computer Performance:
Performance metrics and evaluation
Datapath:
Register transfer and interconnection structures
Datapath and Control:
ASM (Algorithmic State Machine) Chart
Control Unit Design
Single and Multi-cycle CPU Design
Control Unit: Design and Implementation
Pipelining and data hazards
Branch hazards, decisions-interfering/interrupts
Teaching Methodology
Group discussions
Lecturing
Practical lessons
Computer-aided lessons
Educational Visits
Individual assignments
Micro-teaching
Instructional Materials and Equipment
Chalkboard
Overhead Projectors
Computers
Course Assessment
Examination: 70%
Continuous Assessments (Exercises and Tests): 30%
Total: 100%
Core Text Books
Computer Organization and Design: The Hardware/Software Interface, David Patterson & John Hennessy, 4th edition (revised) 2012, Morgan Kaufmann Publishers, Elsevier Inc., ISBN 978-0-12-374750-1
Kalicharan (2009); An Introduction To Computer Studies (CLPE); Cambridge University Press
Recommended Text Book(s)
Embedded Core Design with FPGAs, Z. Navabi, McGraw Hill 2007, ISBN 978-0-07-147481
Logic and Computer Design Fundamentals, Morris Mano & Charles R. Kime, 4th edition, 2008 or latest edition, Prentice Hall.
Introduction to Hardware Components of a Computer
A computer consists of various hardware components categorized based on their functionality. Here’s an overview of the major hardware components of a computer system:
1. Motherboard
The main printed circuit board (PCB) that houses and connects most essential components of a computer system.
It houses the CPU, memory (RAM), storage, and provides connectors for peripheral devices.
Facilitates communication between these components via buses and controllers.
2. CPU (Central Processing Unit)
Acts as the brain of the computer, performing calculations and executing instructions from programs.
Main Elements of a CPU:
ALU (Arithmetic Logic Unit): Performs arithmetic and logical operations.
Control Unit (CU): Directs the operation of the processor.
Registers: Small storage locations in the CPU for temporary data.
Cache: High-speed memory located inside/very close to the CPU for faster data access.
3. Memory
a. RAM (Random Access Memory)
Temporary memory used by the CPU for data currently being processed, which is volatile and loses data when power is off.
b. ROM (Read-Only Memory)
Non-volatile memory storing firmware and other permanent instructions essential for the computer's basic booting and operations.
4. Storage
Devices that hold data and programs permanently, even when the power is off:
a. HDD (Hard Disk Drive)
Uses mechanical parts to store data.
b. SSD (Solid State Drive)
Utilizes flash memory for faster access and improved reliability.
c. Optical Drives
Include CD, DVD, or Blu-ray drives.
d. External Storage
USB drives, external hard drives, etc.
5. Peripheral Devices
External devices connected to the computer to expand its functionalities.
Examples:
Input Devices: Keyboard, mouse, scanner, microphone.
Output Devices: Monitor, printer, speakers.
Input/Output Devices (I/O): Devices like touchscreens or external storage.
Computer Systems Technology and Concepts
1. Computer Organization
Refers to the physical structuring of a computer system and how various components are connected to function collectively.
Focuses on hardware architecture, data pathways, and operational processes enabling computing.
2. VHDL (VHSIC Hardware Description Language)
A language used to describe the behavior and structure of electronic systems, particularly in hardware design, useful in modeling, simulating, and synthesizing hardware components in digital circuit design.
3. CPU Concepts
a. Fetch-Decode-Execute Cycle
The process wherein the CPU fetches instructions from memory, decodes, and executes them.
b. Pipelining
Involves overlapping multiple instruction stages (fetch, decode, execute) to boost throughput.
c. Multithreading
Allows CPUs to execute multiple processes or threads concurrently.
Buses
Overview
A bus is a communication system that transfers data between computer components. Buses connect hardware devices to relay data.
1. Internal Buses
Connect components within the computer, such as:
a. System Bus
Connects the CPU to the main memory (RAM) and controllers.
b. Address Bus
Carries memory addresses used by the CPU.
c. Data Bus
Transfers actual data processed by the CPU.
d. Control Bus
Carries control signals for coordination between components.
2. External Buses
Connect the computer to external devices such as printers or external storage.
Examples:
USB (Universal Serial Bus): Connects peripherals.
SATA (Serial ATA): For hard drives and optical drives.
3. Bus Width and Clock Speed
a. Bus Width
Number of bits that can be transferred simultaneously; wider buses can carry more data.
b. Clock Speed
Rate at which data is transferred, measured in MHz or GHz; higher speeds mean faster data transfer.
Bus Technology and Standards
1. Expansion Bus Standards
Major Examples:
ISA (Industry Standard Architecture): An early 8-bit and 16-bit standard.
EISA (Extended ISA): A 32-bit standard that is backward compatible with ISA.
MCA (Micro Channel Architecture): A 32-bit standard that is not backward compatible.
PCI (Peripheral Component Interconnect): A modern 32-bit/64-bit standard for connecting internal peripherals.
SCSI (Small Computer System Interface): Used for connecting high-speed peripheral devices.
2. Current Trends in Bus Technology
PCI Express (PCIe): A high-speed transfer standard supporting various lanes for higher throughput, utilized in modern graphics cards and SSDs.
Thunderbolt and USB 4.0: Combine fast data transfer with the ability to connect various device types via one port.
NVMe (Non-Volatile Memory Express): A protocol to maximize SSD speed, much quicker than older standards like SATA.