Topic 1: GENERAL OVERVIEW OF THE COURSE – concepts,
definitions, and roles
Learning outcomes
By the end of this topic, you should be able to:
1. gain a broad appreciation of scope of the course
2. define what is meant by computer
3. define what is meant by architecture
LEARNING OUTCOMES
4. identify the various categories of computer architecture
5. identify roles of computer architecture in computing
6. identify the importance of computer architecture in information systems
7. some terminologies
8. preview of other topics
9. understand the relationship between internet, extranet, and intranet
10. understand e-commerce role against the traditional approach
11. understand some e-commerce terms
1. COMPUTER ARCHITECTURE
1.1 gain a broad appreciation of scope of the course
In this contemporary world, the rate at which computer architecture field is moving is very fast in yearly
with new innovations. About six (6) decades ago, the existence of computers was not known to experts
and users. The issue is/was that computers were known in military services, top universities, and large
financial institutions. In this digital age, computers have become part of our homes and offices activities
where all categories of people have active access for their routine actions. The field of computer
architecture has become more interesting due to the transformation.
The two terms are defined in terse. First, computer is an electronic device which performs high speed
arithmetic and makes a logical decision under human instructions. Second, computer architecture is a
skeleton or plan that shows how all the related components are connected to work as a system.
In computing, computer architecture consists of two perspectives, namely; hardware and software.
Innovation in the two perspectives or trends move together. Thus, the compatibility or understanding
between hardware and software enables both systems to link or work together. Students are always
interested in the software architecture because it determines the hardware aspect, innovation or
manufacturing. Also, software engineers are more concerned about this part of architecture because they
can tailor their products or innovations for compatibility with the existing systems or design patterns.
For the hardware aspect of the computer architecture, manufacturers always need to design their system
that is compatible with software in terms of installation, performance, and power.
In terse, computer architecture is a combination of hardware and software designs. Experts design
hardware as the backbone in computing to make software run effectively. Concomitantly, experts in
software develop or design their products with all the necessary requirements such as the interfaces and
constraints generated by the hardware section. Thus, both perspectives work together for new innovation.
The figure below illustrates the trends in computer architecture based on both hardware and software
advancements.
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 1
Computer Architecture
Software
Hardware
* Instruction set arch.
* System(s) arch.
Hardware – RAM, System Application
software – software- desktop
Processor, and HDD OS, utilities, publishing, WP,
and compilers and DB
Hardware trends Software trends
IT trends
Computer is a system and all the related components develop together
The concept of computer architecture is similar to the building’s architecture. It was adopted from building
engineering discipline. The term was introduced by designers of IBM system/360 in 1960 to explain a
computer structure for machine language programmers to understand and follow when coding. The
computer architecture’s role in computing is to understand the state-of-the-art of technologies at each
design level for the related software.
In computing, it serves as a broad blue print for integrating hardware and software components. Computer
architecture specifically deals with the operational attributes of the systems or processor. It deals with
details such as physical memory, input/output mechanism and technique for addressing memories,
instruction set architecture (ISA) of the processor, and the operations or the number of bits (binary digits)
used to represent the data types.
In terse, information systems professionals or experts should note that computer architecture focuses on
three key areas, namely; processors, memories, and I/O components with their associated software
drivers, or just software.
First, processors area is the key aspect. The section concentrates on computation (e.g., arithmetic) and
control (e.g., executing a sequence of steps). This aspect is explained in other chapters more on
contemporary central processing unit (CPU).
Second, the memories area is always considered next in computer architecture. This section focuses on the
storage (main or primary memory) and access of digital data/information.
Finally, I/O components or peripherals area is considered last in computer architecture. This section
focuses on the interconnection and standardisation of computers and devices such as display units,
keyboards, mice, microphones, and disks.
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 2
1.2 define what is meant by computer
keywords: electronic, high-speed, logical decision, automatic, and storage
1.3 define what is meant by architecture
The term “architecture” (or physical architecture) is commonly used to describe the way software and
hardware components are linked to achieve their main objectives. All computers, irrespective of the
specification, performance, and cost, are based on a set of rules stating how both key components link
together for their routine activities or required operations. More specifically, architecture provides
organisation of computer systems and guides the operations. Also, it defines a computer interface.
It shows the various attributes of the entire computer systems visible to software engineers for their
productions. This is because those attributes associated with computer architecture determine the logical
execution of all the components associated with the entire systems.
1.4 identify the various categories of computer architecture
Computer architecture is standardised and generated by different organisations with the related
components. The figure below illustrates some the various types of computer architectures.
Types of computer architectures
1.4.1 Instruction Set Architecture
Instruction set architecture (ISA) is a link in computing between the software and hardware components
(see the first Figure above). Thus, hardware and software communicate via ISA. This architecture provides
a set of instructions that the processor uses for its functionalities and capabilities. Most computer architects
or professionals do not design new ISAs but also implement existing ones in their new technologies. This
is because in the 1960s, IBM was using four (4) incompatible lines of computers with each own ISA. Each
design of computers had different software approach and I/O systems. The ISA system is standardised
where professionals design their products accordingly without any glitch.
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 3
1.4.2 Von Neumann architecture.
This architecture was proposed by one of the originators
of computer architecture called John von Neumann. The
concept was named after him and most contemporary
computers follow this design. Thus, the popular
computer architecture with CPU, memory or primary
storage, secondary storage, and I/O components.
1.4.3 Computer hardware
Computer architecture is a description of the structure of a computer system with the
various physical touchable components. It is the conceptual design and fundamental
operational structure of a computer system. It encompasses the layout of
the hardware components.
1.4.4 Pipelining
Instruction Pipelining architecture breaks down
instruction execution into different phases.
Pipelining in general means splitting an
instruction into a sequence of steps that can be
executed concomitantly by multiple units (e.g.,
ALU and CU) on the CPU or chip.
Contemporary CPUs also employ pipelining
architecture. This design or technique breaks
down instruction execution into multiple stages.
1.4.5 SuperH
SuperH is a 32-bit reduced instruction set computing architecture. It is used for
embedded systems with microcontrollers and microprocessors.
1.4.6 Dataflow architecture
This architecture is a control flow model, which shows how data or instructions move in computer
systems.
1.4.7 Microarchitecture
Microarchitecture refers to the design and organisation of a computer processor, including the
implementation of instructions and the management of data and control flow. It is also called computer
organisation and shows the layout of a computer's major internal components and their interconnections.
This architecture is part of the hardware section that defines the design and organisation of various
processor components. These include data paths, logic units, and control mechanisms.
It is the digital logic in computing that allows an instruction set to be executed. It is a hardware
implementation of an ISA and the fundamental design of a CPU or microprocessor. More specifically, it
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 4
is concerned with how a processor is built by professionals, whereas ISA describes what it can do. Thus,
it defines the data processing and storage element and how they should be implemented into the ISA.
1.4.8 System design
System design architecture defines a framework that can serve user requirements such as system
architecture, computer modules with various interfaces, and data management. It includes all hardware
parts of a computer such as multiprocessors, data processors, memory controllers, and direct memory
access.
1.4.9 Memory
Memory architecture means the organisation of memory in a computer system. This architecture is based
on the organisation of memory words, which can help in the storing and fetching of RAM contents.
It is an instruction set architecture that allows users and experts’ operations to be
performed on the memory. More specifically, memory is the electronic holding place
for the instructions and data that a computer needs to reach quickly. It's where data and
information are stored for immediate use. Thus, memory stores data and information,
such as data and programs, for immediate use in the computer. The term memory is often synonymous
with the term RAM, main memory or primary storage.
1.4.10 Operating system
Operating system architecture manages computer hardware and software resources, and
provides common services for computer programmes. This design links hardware and
applications software together. It also provides platform for other system software
components such as utilities and compilers.
1.4.11 RISC and CISC architectures
CISC (Complex Instruction Set Computing) and RISC (Reduced Instruction Set Computing) are the two
primary approaches of processor architecture.
(i) CISC Chip: Microprocessors that are commonly used are the CISC chip. CISC is a type of computer
architecture with a large number of instructions that require hard coding approach. This technology has
been popularised by Intel, and has become the basis of its microprocessors. This chip design has been used
very widely, and many programmes have been written specifically for this type.
(ii) RISC Chip: This type of computer chip uses the approach of RISC, which involves less instruction.
Its design is simpler and cheaper than the CISC chip. RISC is a type of architecture in computing that
operates with a relatively small set of instructions for its coding approach. This chip is used mostly inside
high-powered microcomputers. Refer to Table 1 for the most popular microprocessors.
Table 1: Popular Microprocessors
Microprocessor Type Normal Uses
Pentium CISC Microcomputers, computing devices
PowerPC RISC Apple Macintosh computer
Alpha RISC Supercomputers, Workstations
MIPS RISC Workstations, Video Players
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 5
CISC Characteristics
A computer with large number of instructions is called complex instruction set computing or CISC. CISC
is mostly used in scientific computing applications requiring lots of floating-point arithmetic. The major
characteristics are
✓ a large number of instructions - typically from 100 to 250 instructions,
✓ some instructions that perform specialised tasks and are used infrequently,
✓ a large variety of addressing modes - typically 5 to 20 different modes,
✓ variable-length instruction formats, and
✓ instructions that manipulate operands in memory.
RISC Characteristics
A computer with few instructions and simple construction is called reduced instruction set computing or
RISC. RISC architecture is simple and efficient. The major characteristics of RISC architecture are
✓ relatively few instructions,
✓ relatively few addressing modes,
✓ memory access limited to load and store instructions,
✓ all operations are done within the registers of the CPU,
✓ fixed-length and easily-decoded instruction format,
✓ single cycle instruction execution, and
✓ hardwired and micro programmed control.
Which one is better?
We cannot differentiate CISC and RISC technology because both are suitable at its specific application.
What counts is how fast a chip can execute the instructions it is given and how well it runs existing
software. Both architectures in computing are doing well in this contemporary world (see the Table 2
below).
Table 2: CISC vrs RISC
CISC RISC
Hardware-oriented Software-oriented
Multiple instruction size and formats Instructions of same set with few formats
Use less registers Use more registers
More addressing modes Less addressing modes
Extensive use of microprogramming Complexity in compiler
Instructions take a vary amount cycle time Instructions take one cycle time
Pipeline is difficult Pipeline is easy
1.4.12 Software architecture
Software architecture is, simply, the organisation of the physical untouchable components in a computer.
This organisation includes all components, how they interact with each other, the environment in which
they operate, and the principles used to design the software. It also justifies software development trends
or evolution of the software into the future. Thus, this architecture represents the design decisions related
to overall system structure and behavior. Note that hardware and software are inseparable components of
digital technology. This architecture provides the foundation to all the software engineers or companies to
build, change or follow.
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 6
1.4.13 Harvard architecture
Harvard architecture refers to a memory structure in
which the processor is connected to two independent
memory banks via two independent sets of buses. In the
original Harvard architecture, one memory bank holds
programme instructions and the other holds data. This
architecture clearly distinguishes between the storage
and handling of instructions and data. Thus, it separates
its memory into two parts so data and instructions are
stored separately.
1.4.14 Central processing unit - processor architecture
Processor architecture means the different designs and structures of processors used in computer systems.
It refers to the layout and organisation of a processor's components. It includes elements such as the
instruction set, number of cores, and clock. It describes the design and organisation of a
computer's CPU.
It determines the data path width, integer size, and memory address width that a
processor can handle. It consists of the instruction set, the memory that it operates on,
and the control and functional units that implement and interpret the instructions.
A central processing unit, also called a central processor, main processor, or just processor, is the most
important component in computing that determines the speed for executing instructions or programmes.
It deals with the arithmetic, logic, controlling, and input/output operations.
The processor architecture may be divided into two main forms, namely; a high-level programming model
and a low-level microarchitecture.
Various types of processors exist, each optimised for a specific kind of task. The CPU which is popular
and commonly used is designed for general-purpose computing duties. Each architecture possesses unique
characters that define the function or utility.
✓ CPUs: These processors are versatile and found universally across computing systems. CPUs
are designed for general-purpose tasks, such as running operating systems and application
software. They are typically characterised by their clock speed, measured in gigahertz (GHz),
and the number of cores they integrate.
✓ Graphics Processing Unit (GPU): Unlike a CPU, a GPU is specifically optimised for rendering
images and video onto your screen. They deal with highly parallel tasks. They are designed
with hundreds, if not thousands, of cores, and they excel at executing many light-weight threads
simultaneously.
✓ Digital Signal Processors (DSP): These specialised microprocessors are highly optimised for
executing digital signal processing functions in real time. A DSP is characterised by its ability
to perform certain arithmetic operations very quickly.
✓ Physics Processors: These are specialised hardware designed to handle physics calculations in
games and other simulation software. They offload these compute-intensive tasks from the
CPU, thus improving performance in simulations involving real-world physics.
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 7
1.4.15 MSP430 - mixed-signal microcontroller
The MSP430 is a mixed-signal microcontroller design from Texas Instruments, which was introduced in
1992. This design is/was built around a 16-bit CPU for low power consumption,
embedded applications, and low cost.
The features of MSP430 are
✓ CPU - It has RISC architecture
- It has 16-bit ALU
- It has a set of 16-registers ▪
✓ Memory - it has 16-bit memory address bus (MAB)
- It has16-bit memory data bus (MDB)
1.4.16 Storage architecture
Storage architecture in computing refers to a key component for holding data temporary or permanently,
or for data transmission and access to important information. It is a critical
component in computing for data storage management such as access and
transfer. It is the design of how data and information are stored in computing.
Efficient storage architectures ensure data integrity, availability, and fast
access times as well as sharing. This design provides framework for hardware
and software compatibily. The next figure shows the HDD system of storage.
The contemporary storage architecture is the cloud systems. The figure below shows some popular storage
architectures.
1.4.17 Alternatives in computer architecture
The architectures are designed or produced by different organisations. The primary goal is that, the
producer must understand the emerging technologies and experts as well as users’ requirements for
processor configuration. We have all observed that the main features that make contemporary computer
architecture different from the previous versions are size and less-power consumption. Thus, the primary
goal for alternative computer architecture design is to identify the most suitable processor configuration
and then scale the concurrency available within that configuration to match performance and cost
constraints.
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 8
1.5 identify roles of computer architecture in computing
Computer architecture represents the means of interconnectivity for a computer's hardware components
and related software elements as well as the mode of data transfer and processing exhibited. The
architecture defines what is seen on the machine interface for the necessary actions. This architecture
enables programming languages and their compilers to function effectives with the entire systems of
computing. It provides a specification for describing how computer software and hardware connect and
interact to create a computer network.
It provides the end-to-end structure of a computer system, which determines how its components interact
with each other in helping to execute the machine's purpose. It serves as the backbone of computing
systems by providing a framework for all digital devices to build on. Also, its role in digital technologies
is to provide a crucial aspect in computing with the foundation for design, development, and operation of
the various components or systems.
1.6 Importance of computer architecture
Various computer devices exist to work together based on the architecture systems. The devices include
laptops, cell phones, video games, household appliances, and vehicles. These devices contain
programmable processors and software.
The big question is, why should information systems (IS) students study computer architecture. The
answer is, such experts manage and monitor all computer related systems in their place of working.
Therefore, understating the entire computer architecture (hardware and software) enables IS professionals
to take part during the systems development, which may be hardware production or software development.
The outcomes enable the systems with less prone to errors, especially software development.
Knowledge of computer architecture also helps IS professionals appreciate and understand the relative
cost of operations (e.g., the time required for an I/O operation compared to the time required for an
arithmetic operation) and the effects of software development choices.
Understanding how hardware works helps IS professionals to guide programmers to debug programme
bugs. Thus, someone who is aware of the hardware has more clues to help spot the source of bugs in
software.
Insight on every aspect of a computer's function, from how it captures data, stores data, and until the
contents or information are displayed on the appropriate components. It provides expert with a crucial
aspect of understanding and optimising computer performance.
1.7 some terminologies in computer architecture
✓ Input: Whatever is put into a computer system.
✓ Output: Consists of the processing results produced by a computer.
✓ Data: Refers to the symbols that represent facts, objects or ideas.
✓ Information: The results of the computer storing data as bits and bytes; the words, umbers,
sounds, and graphics.
✓ Processing: Manipulation of the data in many ways.
✓ Memory: Area of the computer that temporarily holds data waiting to be processed, stored, or
output.
✓ Storage: Area of the computer that holds data on a permanent basis when it is not
immediately needed for processing.
✓ Assembly language program (ALP) –Programmes written using mnemonics
✓ Mnemonic –Instruction will be in the form of English like form
✓ Assembler –is a software which converts ALP to MLL (Machine Level Language)
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 9
✓ HLL (High Level Language) –Programs are written using English like statements
✓ Compiler -Convert HLL to MLL, does this job by reading source program at once
✓ Interpreter –Converts HLL to MLL, does this job statement by statement
✓ System software –Programme routines which aid the user in the execution of programmes
(e.g., Assemblers and Compilers)
✓ Operating system –Collection of routines responsible for controlling and coordinating all the
activities in a computer system
1.8 preview of other topics
Students are required to check the rest of the topics from the course outline accordingly.
Computer Architecture Topic 1 by Dr. Ohene-Bonsu Simmons, Ph.D. Page 10