You are on page 1of 27

UU-COM-1011-MW

Fundamentals of Computer Organiza-


tion and Operations

WEEK 1 - AN INTRODUCTION TO COMPUTER FUNCTIONS & INTERCONNECTIONS

For this week’s material, you will be introduced to computer functions and interconnections.

The following will be covered this week:

A. A history of computers

o Phase 1 – Early calculators, communication tools and decoding devices

o Phase 2 – Engines of calculation and application of memory and storage

o Phase 3 – Modern computers and microelectronic devices

o Phase 5 – Personal computers

B. Basic structure of computers

o Computer types

o Functional units

o Basic operational concepts

o Performance and design for performance

C. A top-level view of computer function and interconnection

o Computer components and function

o Interconnection structures

o Bus interconnection structures

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 1


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

HISTORY OF COMPUTERS

Before describing the origins and history of computers, one must attempt to explain what a computer

does, how it is used and the role it plays in today’s society. In simple terms, a computer can be con-

sidered a device that allows us to perform a variety of tasks such as calculating accurately without

human error, recording and storing information to recall at a later date, completing and automating

tasks to improve speed and efficiency of work and a communication tool. These are some of the core

tasks that any modern computer should be capable of completing. Given this information, we can

deduce that many devices or tools that were used in a similar fashion to perform the specified tasks

in history, can be thought of as starting points or origins of what we know today as a computer. The

following pages will outline several phases in which important innovations and milestones occurred

that would eventually lead to the development of the current age of computers.

PHASE 1 – EARLY CALCULATORS, COMMUNICATION TOOL S AND DECODING DEVICES

The abacus (2700-2300 BC):

The abacus was a device that assisted in calculating numbers and performing basic arithmetic opera-

tions including addition, subtraction, multiplication and numbers. The abacus was a significant de-

velopment because it allowed calculation to be a mechanical process that can mostly be free from the

human error that can often occur while counting and trying to recall numbers.

The Chinese Abacus

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 2


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

The Scytale (680-645 BC):

The Scytale was a device that allowed for the secure communication of messages between two parties

using a transposition cipher. This was a significant development as it is early cryptography device

that could safeguard the content of a message via encoding (encryption) and decoding (decryption).

Antikythera Mechanism (150 BCE)

The antikythera mechanism was an ancient Greek device that was used to calculate the position of

the sun, position of the phase of the moon, solar and lunar eclipses, geographical widths and lengths

and calendar cycles (Garfinkel & Grunspan, 2018). The device appears to have been a useful tool for

decision making, a common task of modern times, making use of computers that use algorithms and

artificial intelligence.

Antikythera (left), Antikythera Machine mechanical model (Mogi Vincentini, 2007) (right)

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 3


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

Cipher Disk (1470)

The Cipher Disk was a device used for encoding messages using a form of encryption known as a

‘polyalphabetic substitution cipher’. The significance of the cipher disk is that it was a more advanced,

faster and secure method of cryptography that make the cryptanalysis process more difficult.

Cipher Disk (right), The Union Cipher Disk (US Civil War) (Right)

PHASE 2 – ENGINES OF CALCULATION AND APPLICATIONS OF MEMORY AND STORAGE

Slide Rule (1621)

The Slide Rule is a mechanical device used primarily for calculations including multiplication, divi-

sion as well as having the ability to produce results for the roots and powers of numbers, logarithms

and trigonometric functions.

The Slide Rule

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 4


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

Binary Arithmetic (1703)

Binary Arithmetic is a set of rules described by Gottfried Wilheml Leibniz (1646-1716) as a way of

representing information as a set of bits or binary digits of 0s and 1s. The binary number system uses

simple rules that improve the speed and efficiency of calculations and is a system that is present in

all computer systems. The table below shows binary conversion into other numbers systems.

The Jacquard Loom (1801)

The Jacquard Loom was a textile weaving machine that sped up the process as the machine had the

ability to store and reproduce complex patterns using ‘punch-cards’ which could be exchanged and

reused. The development of the memory and storage systems used in modern computers can be cred-

ited to the Jacquard Loom.

The Jacquard Loom

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 5


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

The Difference Engine (1822) and the Analytical Engine (1837)

The Difference Engine was a mechanical calculator that was conceptualised by Johahn Helfrich von

Müller in 1786. A more advanced version of this engine was prototyped by Charles Babbage in 1842

and is commonly considered the first automatic calculator (Garfinkel & Grunspan, 2018). The signif-

icance of this prototype was that it was designed in a way that it could produce precise results that

were void of the human error common similar devices. Although Babbage was not able to complete

the Difference Engine, it would be succeeded with the design and completion of the ‘Analytical En-

gine’, one of the first mechanical computers that included an arithmetic logic unit, a program control

system and a storage mechanism using punch cards.

The Difference Engine (left) and the Analytical Engine (right)

Boolean Algebra (1854)

George Boole was the inventor of ‘Boolean Algebra’ which is a form of mathematics that is used to

describe logic and reasoning where all values of variables are either true or false (0 or 1). This system

was a significant development and is essential for notating and describing complex logical operations

in modern computers and a basis for problem solving using computer programming languages.

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 6


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

Boolean Algebra Laws

The Turing Test (1951)

In Alan Turing’s paper on “Computing Machinery and Intelligence.” he discussed how computers

are continually getting more complex and if programmed to be intelligent, one may have a difficulty

in distinguishing between human and machine. The Turing Test proposed methods to test the extent

in which a machine can think intelligently as humans do. The phenomena of modern artificial intel-

ligence and their potential ability to pass the Turing Test is an ongoing discussion that continues in

the modern age.

Reverse Turing Test on modern website forms (reCAPTCHA)

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 7


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

PHASE 3 – MODERN COMPUTERS AND MICROELECTRONIC DEVI CES

Colossus (1943)

The Colossus was an electronic device used in World War II to crack German High Command mili-

tary codes using tubes which would considerably speed up the process of cryptanalysis.

The Colossus

EDVAC (1944)

The Electronic Discrete Variable Automatic Computer (EDVAC) was an early computer designed

with memory that could store computer programs and other data and a central processing unit that

could use this memory to fetch then execute instructions.

EDVAC
UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 8
UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

IBM ASCC (1944)

The IBM Automatic Sequence Controlled Calculator (ASCC) was an early electromechanical com-

puter.

Harvard Mark I

UNIVAC (1951)

Universal Automatic Computer (UNIVAC) was computer developed by the Eckhart-Mauchly Com-

puter Corporation that was available for commercial distribution. The UNIVAC was a significant

development because it was an early computer that used magnetic tape for storing computer programs

and data.

UNIVAC I operator’s console

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 9


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

Microprogramming (1951)

Microprogramming is an implementation of machine code that describes the functionality of a mi-

croprocessor when it receives and executes instructions, a significant development to towards how

the central processing unit, arithmetic logic unit and control unit work together.

Transistor Computer (1953)

The transistor was invented in 1947 and would replace the use of tubes in computers. The use of

transistors in computers would prove advantageous over tubes due to their power efficiency, minimal

generation of heat and their low failure rates. The prototype transistor computer developed by The

University of Manchester in 1953 would use the ‘point-contact transistor’ which contained 92 such

transistors that would allow for a 48 bit computer architecture (Garfinkel & Grunspan, 2018).

The Manchester transistor computer prototype

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 10


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

IBM System/360 (1964)

The IBM System/360 was a range of general purpose computers created for use in a wide array of

workplaces and industries. The computer was designed using a hybrid integrated circuit known as

IBM Solid Logic Technology which would allowed for faster processing of logical and mathematical

calculations than previous systems (IBM Corporation & Miesel, 2012).

IBM System 360

Intel 1103

The Intel 1103, a Dynamic Random-Access Memory (DRAM) Integrated Circuit (IC) microproces-

sor was created by Integrated Electronics (Intel). The Intel 1103 was the first ‘computer chip’ of its

size with a significant low cost to core memory ratio.

The Intel 1103 microprocessor

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 11


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

PHASE 4 – PERSONAL COMPUTERS

Altair 8800 (1974)

The Altair 8080 was a personal computer created by MITS, used the Intel 8080 CPU, could be pro-

grammed from its front-panel and had an expansion bus to support additional memory or interfaces.

Altair 8080

Apple II (1977)

The Apple II was a personal computer that was introduced by Steve Wozniak, Randy Wiggington

and Steve Jobs in 1976. The Apple II would be released in 1977 and became a popular computer that

came with an included keyboard and case.

The Apple II

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 12


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

IBM PC 5150 (1981)

The IBM Personal Computer 5150 was a device that was built on a 16-bit Intel 8080 CPU architecture,

had 16 kB of expandable memory (storage up 640 kB), a keyboard interface and a display and ex-

pansion slots for additional hardware. This computer would be the standard design that for what for

the majority of desktop computers that are available today. Following this, computers would continue

to advance in both their form-factors (laptops, smartphones and other modern smart devices) and their

applications (information systems, manufacturing, artificial intelligence).

IBM PC

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 13


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

BASIC STRUCTURE OF COMPUTERS

COMPUTER TYPES

Although there are a variety of different ways to categorize computers, in general most computers in

the current age are flexible enough to be used for multiple purposes due to the advancements in hard-

ware and software.

Desktop Computers

 A desk-based computer with an external keyboard, mouse and internal or external display to

be used in a fixed position

Laptop Computers:

 A small computer with and integrated keyboard, battery, speakers, touchpad or touchscreen

interface designed for portability

Smartphones:

 A small device with a mobile operating system with a built in touchscreen interface designed

for mobile use

Other devices:

 Devices such as Smart TVs, programmable calculators, smartwatches and other ‘smart’ de-

vices with a built in operating systems and functionality similar to traditional computers

FUNCTIONAL UNITS

The functional units of a computer are the components inside the computer that a required for the

computer to work. These functional units are described as a computer’s the architecture design, which

is the organization, arrangement and pathways of interaction between the core components of the

central processing unit (CPU) (Sarangi, 2015).

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 14


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

1. Arithmetic/Logic unit:

o These units carry out arithmetic calculations and logic based operations

2. Control unit:

o This unit coordinates the interactions and instructions between the other components

3. Memory:

o Cache – fast temporary memory on the CPU

o Main memory – volatile memory for storing programs and data

o Instruction memory – memory for loading of instructions

o Data memory – memory for the storage of read and write instructions

o Registers – a variety of different registers used for temporary storage of information

4. I/O bus:

o The connection pathway between input and output devices and the CPU

Common computer architecture designs include the Instruction Set Architecture, Microarchitec-

ture and Systems Design Architecture.

The Harvard Architecture

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 15


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

The Von Neumann architecture

BASIC OPERATIONAL CONCEPTS

The main role of a computer is to receive and execute the instructions provided to it by the user. These

instructions are given to the computer through the I/O interface and then have to be converted into

machine readable form or program code (i.e. a programming language or machine code) in order to

be executed or acted upon. This is the basic operation of a computer and although not all programs

code must be compiled for the computer to understand the instruction, the basic principle of ‘receive

and execute’ remains the same.

PERFORMANCE AND DESI GN FOR PERFORMANCE

Below is a comparison between a traditional bus structure and a high performance bus structure.

Traditional bus structure (left) vs. high performance bus structure (right)

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 16


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

A TOP-LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION

A computer consists of several different units; a storage unit, a central processing unit and units

for both input and output. These different units allow the computer to function and are intercon-

nected by way of information and data flow. The diagram below shows the basic top-level view of

computer function and interconnection.

Storage Unit

Secondary Storage

Data (HDD, SDD, flash


storage...)
Information
Input Unit

(Mouse, keyboard…) Primary Storage Output Unit

(RAM, ROM, cache, (Monitor, printer…)


flash memory...)

Control Unit

CU

Control flow
Arithmetic and Logic
Data flow
Unit

ALU

Central Processing

A top-level view of computer function and interconnection

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 17


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

COMPUTER COMPONENTS AND FUNCTION

The core components of a typical modern computer are the motherboard, the central processing

unit, and graphics processing unit, internal memory, external memory and the input and output

interfaces. There are a variety of ways in which these components can be configured to work together.

Depending on factors such as the size of a computer, the intended use of the computer or specific

hardware specifications or requirements, most systems have a similar configuration of components.

 The Motherboard

o A circuit board that is housing for all components of a computer including the CPU,

RAM, expansion slots, sockets for PCI, networking and ports for USB devices

o The size of the motherboard determines the hardware compatibility of components,

standard interface and expansion interfaces

 Central Processing Unit (CPU)

o Responsible for executing instructions, performing arithmetic and logical calcula-

tions and controlling input and output devices

 Video Card - Graphics Processing Unit (GPU)

o A dedicated processor for image and graphics processing

 Modern CPU’s have a GPU integrated on the CPU but external ones can be

installed via PCI expansion slots

 Memory

o RAM – Random Access Memory

 Volatile ‘Short-term memory’ that is required for applications and software

programs that are currently being used

o ROM – Read-Only Memory

 Non-volatile memory used to store data that can be read but not written to

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 18


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

 ROM is permanent storage and is primarily used to store software that does

not need to be changed

 Basic Input/Output System (BIOS) is stored in ROM and is firmware

built into the motherboard. The BIOS allows the computer to boot up

and control other hardware related configurations such as the boot se-

quence, CPU overclocking, partitioning of drives and installation of

operating systems.

 Storage

o Internal – Solid State Drive (SSD), Hard Disk Drive (HDD)

 Storage mediums for data and applications with different technologies and

form factors made to fit inside the computer case

o External – Solid State Drive (SSD), Hard Disk Drive (HDD), Flash

 Storage mediums for data and applications with different technologies and

form factors made to be connected to the computer by a bus or via a network

 External I/O hardware and peripherals

o Input – keyboard, mouse, webcam, scanner, microphone…etc.

 Hardware for the input of data and instructions from the user

o Output – monitor, printer, speakers, projector…etc.

 Hardware that produces output from the computer to the user

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 19


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

INTERCONNECTION STRU CTURES

There are three core modules of a computer system that interact with each other in order for if to

function correctly: the processor, memory and input/output. Interconnection structures describe the

available connection pathways between these modules (Sarangi, 2015).

Processor module

 Instructions and data are read by the processor

 The processor can receive interrupt signals

 Data is written and processed

 The processor manages all operations taking place using control signals

Instructions
Control signals

Data CPU
Data
Interrupt Signals

Memory module

 Has N words of an equal length that are each given a unique address

 Data from words are either written into memory or read from memory

Read
Memory

N Words
Write
0
. Data
Address .
.
Data N –1

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 20


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

Input and Output (I/O) module

 Can either read or write and has the ability to control multiple I/O devices

 Each hardware interface can be assigned M ports each with unique addresses

 Internal and external data flow is possible

 Has the ability to provide the processor interrupt signals

Read

Write Internal Data


I/O
Address External Data
M Ports
Internal Data Interrupt Signals

External Data

Interconnection transfer paths

The interconnection transfer paths that are required are listed below;

 Memory => CPU

 CPU => Memory

 I/O => CPU

 CPU => I/O

 I/O => Memory

o Using Direct Memory Access (DMA)

 Memory => I/O

o Using Direct Memory Access (DMA)

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 21


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

BUS INTERCONNECTION AND PCI

A bus is a combination of several lines of communication that allow for data transfer between differ-

ent components. Data on a bus is transmitted in bits as a binary sequence and can either be done in

serial (one bit transferred at a time) or parallel (multiple bits transferred at a time). Serial transmis-

sion only requires a single wire but is slower whereas parallel transmission can transfer more bits

faster but requires multiple wires (Brookshear & Brylow, 2015).

The system bus

The System Bus connects the core components of the computer together and is split up into the fol-

lowing sub-groups of buses:

 The Data Bus

o Pathways for the transfer of data between the different system modules

o Normally has 8,16,32 separate lines (data lines)

o The amount of data that can be transferred at any time is dependent on the number of

separate lines

 The Address Bus

o Used for identifying the source and destination of the data that needs to be transferred

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 22


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

o The bus width specifies the maximum address space available on the central pro-

cessing unit

 The Control Bus

o Manages the tasks being performed on the bus and provides information about device

activity.

o Some of the types of control lines are described in the table below

The different control bus control lines

The Operation of the bus

 For data that needs to be transferred over the bus, the module that requires the data transfer

must first acquire access to the bus.

 Alternatively if data is being requested, the module requesting the data transfer must acquire

access to the bus

o The bus is also required to send the request to the module it is communicating with

using the required control lines and address lines then must wait until the other

module transfers the data.

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 23


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

Peripheral Component Interconnect (PCI Bus)

The PCI bus is a bus standard that is used for the attachment of expansion hardware I/O devices

locally on the computer’s motherboard. PCI expansion slots allow for the addition of network cards,

graphics cards, and sound cards. The availability of expansion slots and the number of available slots

on a computer is determined by the specifications, size and form factor of the motherboard.

Example of different PCI slots on a motherboard

HOW THE BUS IS DESIGNED

The different types of buses

1. Dedicated bus: a bus that is designated to perform one function or act on a set of hardware

components.

 For example, the data bus that has the role of transferring data between modules or the

input and output bus that connects the different input and output modules together

2. Multiplexed bus: a bus that is designated to perform a combination of functions

Bus arbitration methods

1. Centralised: where the arbiter or bus controller allocates the time on the bus

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 24


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

2. Distributed: a shared bus without a central controller where the different modules each have

access control logic

Bus timing

1. Synchronous: bus events occur due to a clock cycle

Synchronous Read and Write Cycle

2. Asynchronous (read): bus events occur due to the occurrence of previous bus events

The system bus read cycle

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 25


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

3. Asynchronous (write): bus events occur due to the occurrence of previous bus events

The system bus write cycle

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 26


UU-COM-1011-MW
Fundamentals of Computer Organiza-
tion and Operations

REFERENCES

Abd-El-Barr, M., & El-Rewini, H. (2005). Fundamentals of Computer Organization and Architecture

(Wiley Series on Parallel and Distributed Computing) (1st ed.). Wiley.

Brookshear, J. G., & Brylow, D. (2015). Computer Science: An Overview (12th Edition). Pearson

Education.

Garfinkel, S. L., & Grunspan, R. H. (2018). The Computer Book: From the Abacus to Artificial In-

telligence, 250 Milestones in the History of Computer Science (Sterling Milestones) (Illustrated ed.).

Sterling.

IBM Corporation, & Miesel, D. (2012, July 3). IBM100 - System 360. IBM.

Sarangi, S. R. (2015). Computer Organisation and Architecture. McGraw-Hill Education.

Stallings, W. (2019). Computer Organization and Architecture (11th ed.). Pearson.

UU-COM-1011-MW Fundamentals of Computer Organization and Operation – Week 1 27

You might also like