Professional Documents
Culture Documents
For this week’s material, you will be introduced to computer functions and interconnections.
A. A history of computers
o Computer types
o Functional units
o Interconnection structures
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.
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 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).
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)
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)
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
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 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-
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
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.
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
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
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
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.
Microprogramming (1951)
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.
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 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
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
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
The Apple II
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
IBM PC
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-
Desktop Computers
A desk-based computer with an external keyboard, mouse and internal or external display to
Laptop Computers:
A small computer with and integrated keyboard, battery, speakers, touchpad or touchscreen
Smartphones:
A small device with a mobile operating system with a built in touchscreen interface designed
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
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 Data memory – memory for the storage of read and write instructions
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-
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
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)
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
Storage Unit
Secondary Storage
Control Unit
CU
Control flow
Arithmetic and Logic
Data flow
Unit
ALU
Central Processing
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
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
Modern CPU’s have a GPU integrated on the CPU but external ones can be
Memory
Non-volatile memory used to store data that can be read but not written to
ROM is permanent storage and is primarily used to store software that does
built into the motherboard. The BIOS allows the computer to boot up
and control other hardware related configurations such as the boot se-
operating systems.
Storage
Storage mediums for data and applications with different technologies and
o External – Solid State Drive (SSD), Hard Disk Drive (HDD), Flash
Storage mediums for data and applications with different technologies and
Hardware for the input of data and instructions from the user
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
Processor module
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
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
Read
External Data
The interconnection transfer paths that are required are listed below;
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
The System Bus connects the core components of the computer together and is split up into the fol-
o Pathways for the transfer of data between the different system modules
o The amount of data that can be transferred at any time is dependent on the number of
separate lines
o Used for identifying the source and destination of the data that needs to be transferred
o The bus width specifies the maximum address space available on the central pro-
cessing unit
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
For data that needs to be transferred over the bus, the module that requires the data transfer
Alternatively if data is being requested, the module requesting the data transfer must acquire
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
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.
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
1. Centralised: where the arbiter or bus controller allocates the time on the bus
2. Distributed: a shared bus without a central controller where the different modules each have
Bus timing
2. Asynchronous (read): bus events occur due to the occurrence of previous bus events
3. Asynchronous (write): bus events occur due to the occurrence of previous bus events
REFERENCES
Abd-El-Barr, M., & El-Rewini, H. (2005). Fundamentals of Computer Organization and Architecture
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.