Computer Architecture
Contents :
What is Computer Architecture ?
Benefits of using Computer Architecture
Types of Computer Architecture
Pipelining
Cache memory
Superscalar Processor
Very long word instruction word (VLWI) Processor
What is Computer Architecture?
In a computer science world, computer architecture is a specification
that actually tells how the computer system are made and how it works
under the hood.
In a broader form, the computer architecture tells us how the computer
hardware and software is implemented and placed inside a computer
system.
Not only how they are implemented but also how they are working and
communicating with each other. To make our concept clearer, take the
example of the building architecture or the floor planning of the
building.
Figure 1.1 : Computer Block Diagram
Benefits of Using Computer Architecture
There are dozens of benefits of using computer architecture depending on
what computer architecture you are using, but in summary, some of the
main advantages of computer architecture are.
• In making computer system
Computer architectures let you design and implement the computer systems
in a specific way that each architecture defines. It helps you in making the
product faster, and troubleshoot the customer issues as soon as possible.
• From a developer’s perspective
From a developer’s perspective, the computer architecture makes you
program the applications that also require the low-level hardware
requirements, like you can program in Assembly language to develop and
program the hardware and embedded devices like processors,
motherboards, etc.
• Efficiency
Computer architecture helps you to design, develop, implement
applications and software quickly, without many resources, and in a more
efficient way.
• Documentations
Each computer architecture has its own documentation. Documentation
helps you to learn and use the architecture in a more efficient and faster
way.
Types of Computer Architecture
Type 1: Von-Neumann Architecture
Von-Neumann is the computer architecture that was designed and made
on the Von-Neumann derived computer design mode. Neumann
designed this architecture for the stored-programmed computers that are
nothing but the smart computers that are programmed to perform
efficient and high-calculating tasks.
Figure 1.2 : Von-Neumann Architecture
History
The history of the Von-Neumann architecture is simple: before this model the world had two types of
computers: a simple computer i.e., a calculator, and the other was the stored-program computers.
Stored-programmed computers were the most efficient that was capable of doing the heavy tasks like
reading, writing disks and memories, they can self-modify the code to perform the tasks, and can do
every task that a modern computer can perform but still they were very slow. So, to solve this problem,
Von-Neumann derived the model from making computers work faster.
Components
The components of the Von-Neumann models are:
• Processing Unit that can perform complex calculations with processors
• Control Unit that deals with the instruction register and program counter
• Memory that stores and retrieves or produces data at the runtime
• External hard drives
• Input and output devices
Usage
The computers that are made with this model are used in the making:
• Assemblers, compilers, linkers, loaders, and other programmed
automation tools
• In high-level languages like C, C++, Java, etc. that can also manipulate
the code
Type 2: Harvard Architecture
The concept of the Harvard model can easily be understood when in contrast
with the Von-Neumann architecture.
The Harvard model implements the separation of storage and signal
pathways for the instructions and data. But in Von-Neumann architecture, the
program instructions and data share the same memory space.
History
The Harvard architecture originated from the Harvard Mark I relay-based
computer. The working on the architecture was started in 1937 and entirely
implemented by 1944.
Components
The components of the Harvard model include:
• Arithmetic and Logic Unit (ALU)
• Control Unit
• Instruction memory(separated)
• Data memory(separated)
• Input, output devices
Usage
• The Harvard models are specifically used in the devices or applications
that would be used as the embedding devices. They are commonly used
with the CPUs with caches.
Type 3: Instruction Set Architecture
The Instruction Set Architecture(ISA) is the set of instructions that
includes both RISC (Reduced Instruction Set Computer) and CISC
(Complex Instruction Set Computer) instructions. Many devices like
CPUs execute the instructions described by the ISA.
History
The Instruction Set Architecture was programmed by IBM in the 90s.
Components
• The components of the Instruction Set Architecture include:
• Instructions
• Addressing Modes
• Native data types
• Memory Architecture
• Interrupts
• External I/O instructions
Usage
• Instruction Set Architecture is a set of instructions and is hence used to
program the embedded devices.
Type 4: Microarchitecture
• Microarchitecture shows us the logical representation of how the
microprocessor works, is designed, and communicates with its
components.
• It also includes the communication of registers, buses, motherboards
that implements the Instruction Set Architecture. In other words, we
can say that computer architecture is a mix of Instruction Set
Architecture and Microarchitecture.
Components
• Microarchitecture is the combination of ALU, multiplexers, and other
digital logic components and blocks.
Usage
• The Microarchitectures are commonly used in microprocessors and
microcontrollers.
Type 5: System Design
The system design is a way or process of defining the computer
architecture requirements like modules, interfaces, complex systems,
hardware, software, etc.
Components
• The system design has two components or categories
• Logical design
• Hardware design
Usage
• As the name defines, the system design is used to design the system
architecture.