0% found this document useful (0 votes)
6 views

01-Introduction to Functional Computer

Cn and computer network

Uploaded by

challavikki8
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

01-Introduction to Functional Computer

Cn and computer network

Uploaded by

challavikki8
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

Course  Computer Architecture

[ Credits : https://witscad.com/course/computer-architecture/chapter/introduction-
to-functional-computer ]
[ Copyright : Witspry @ 2020 ]

Introduction to Functional Computer

We have come a long way from Computers being considered as powerful Calculation devices for automation, Data Entry
and Storage systems, Data processing Systems to being considered as Artificial Intelligence Devices. Unimaginable!
Computers were considered as devices to do routine jobs error-free, unlimited times, without fatigue, where humans are
most likely to be tired of monotonous and repetitive work. Some of us know the computers to be executing any
programmed logic for a solution, while the Millenials are introduced to intelligent computers. The Millenials will be amazed
to know the chronological invention and development of computers.

Evolution of Computers
If you don’t know history, then you don’t know anything. You are a leaf that doesn’t know it is part of a
tree
— Michael Crichton

One of the first calculation tool available was the Abacus, presumably invented sometime between 1000-500 B.C.

Around 1600, John Napier invented the Napier bones, a tool to find products and quotients. 1621, William Oughtred’s
slide rule exploited Napier’s logarithms calculations.

In 1822, Charles Babbage proposed a machine to calculate tables for logarithms and trigonometric functions, called the
Difference Engine. Before completing the machine, in 1833, he invented a more sophisticated Analytic Engine that used
Jacquard punch cards to control the arithmetic calculations. This machine was programmable, had storage capabilities, and
control flow mechanisms. It was a general-purpose computer. The Analytic Engine was never completed. Augusta Ada
Lovelace wrote the first program for the Analytical Engine (to calculate Bernoulli numbers). Some consider her as the first
programmer. Charles Babbage is credited for first conceiving the idea of Digital Programmable Computer.

In 1935, Konrad Zuse designs a special purpose electro-mechanical computer, the Z1. The Z1 computer was clocked at 1
Hz. The memory consisted of 64 words with 22 bits. A punch tape reader and a punch tape writer did input and output to
the computer. The computer had two registers of 22 bits length and was able to perform additions and subtractions (it was
not a general-purpose computer).

Zuse constructed the Z3, a fully programmable general-purpose computer, in 1939-1941. Remarkably, it contained a binary
floating-point arithmetic. It was clocked at 5.33 Hz, based on relays, and had 64 words of 22 bits length. The small memory
was not sufficient for storage of the program.

Presper Eckert and John Mauchly designed Electronic Numerical Integrator and Computer (ENIAC) during 1943-1946
with the following features:

All-electronic general purpose

Intended to calculate ballistic firing tables


Designed and constructed during Programming by rewiring

5000 additions per second, 357 multiplications per second, and 38 divisions per second Decimal, not binary!

Von Neumann joined Eckert and Mauchly in the design of Electronic Discrete variable Automatic Computer (EDVAC). This
was the first Stored Program Computer ever designed. The stored program design is usually attributed to von Neumann.

The Microprocessors came into life from Intel. Intel 4004 was the first Microprocessor in the market around the year 1971
with the features:

108 kHz, 0.06 MIPS

2300 transistors (10 microns)

Bus width: 4 bits

Memory: 640 bytes

In 1980, VLSI invention facilitated new processor architecture called RISC (Reduced Instruction Set Computer). Since
1985, commercial RISC Processors were introduced by many players creating Competition for the design of powerful
computers of the day. Few worth mentioning are MIPS from MIPS Corporation, Sparc from Sun Corporation, Power RISC
from IBM, PA-RISC from HP, Alpha from DEC. At the same time, Intel came up with its CISC (Complex Instruction Set
Computer) processors, Intel x86 Microprocessor. Everyone knows today that a simple PC clocks 3+ Mhz, 4MB Cache, 2GB
RAM.

Lots of information has been given here for the reader to appreciate how computers have evolved over a long period. It is
like man has evolved from the stone age! The reader has to take a deep breath and come out to today’s reality of amazingly
powerful systems.

Functional Components of Computer


With this introduction of evolution, let us see, how the so-called computers are designed for common man’s use. the below
figure depicts the mapping of computer which we all see to the technical functional components that make up the box.
Essentially the computer has three major components namely CPU, Memory and I/O. CPU is the brain that executes the
program. Memory is where the programs and data for the programs are stored during execution. I/O is the external interface
of the computer to the world and also mass storage devices. Monitor, Keyboard, Scanner, Printer, Barcode reader, USB
devices are all I/O devices. Hard Disk, Compact Disk are storage devices.

Input
Datapath
Memory
Control Output

CPU 1/0

Figure.1.1 Components of a Computer


Physically a computer is made up of some visible items and their interconnection as listed here.

CPU, Memory, Hard Disk, Monitor, Keyboard, Mouse, Printer, Scanner, etc.

Integrated Circuits (ICs) such as CPU, Display boards, Combinational logic circuits, analog and digital interfaces

Printed Circuits (PCB) boards and its relevant parameters like a substrate for ICs and interconnection, distribution of
CLK, Vdd, and GND signals, heat dissipation.

Power Supplies that convert line AC voltage to regulated DC low voltage levels.

Chassis (rack, card case, ...) that holds boards, power supply, provides the physical interface to a user or other
systems.

Connectors and Cables.

What makes computer work or useful?


A computer has to be designed so that it can be useful to the user. Let me bring in an analogy here. Let us say a Shopping
Mall is to be built. An architect makes the design. The Civil Engineer implements the design using bricks and mortar. The
tenants are the users of the Mall. Further let us understand that the architect is concerned with the efficient structure of the
building in terms of space utilization, lighting, energy, etc. The civil engineer is concerned with the rules and procedures of
the construction. The tenant is bothered about his facilities and cost to the purse. Similarly, a Computer Architect designs
the computer for desired performance, a logic designer implements the design by choosing the suitable components. The
performance requirement is described by the user if it is not a generic system. In other words, for example, an organization
could describe that it requires a computer with 100million transactions per second and that he will use XXX Transactional
DBMS on YYY Operating System.

As we understand, there are three stakeholders in the making of a computer .i.e. User, Computer Architect and Logic
Designer.

From the User's view, one is concerned about the :

Software

Speed

Storage capacity

Peripheral devices functionality

From the Computer Architect’s (one who designs the computer) view, he is concerned with :

Design for performance

Optimum programming utility and implementation performance

Design of hardware to execute instructions

Use of benchmarking tools and other measures

Balanced performance of different building blocks

Performance requirements satisfied at the lowest cost possible

From the Logic designer’s (one who implements the architects’ design of computer) view, he is concerned with the :

Design and Implementation of the machine at the logic gate level

Whether the architect meets cost and performance goals


Conceptual Structure of Computer
As seen the Computer architect’s job is to identify a system that will provide the desired performance for the user’s needs.
This includes prescribing the right hardware for the software chosen by a user. The software includes the application
program, Operating system and possibly a compiler i.e the user specifies that he wants to run application A on OS B and get
performance C. The architect designs hardware that will give performance C on OS B for the application A. This is
conceptually depicted in figure 1.2. It is important to note that the architect essentially identifies or designs the Instruction
set Architecture that will meet user needs.

Figure.1.2 Conceptual Structure of Computer Components

How a Program gets Executed?


A program is a code written to solve a problem. Generally written in a higher-level language like C, C++, Java, COBOL,
FORTRAN, etc. The program has logic and logical flow to solve a problem. It follows the syntax and semantic rules of the
chosen language. This program is executed on the computer hardware. The steps involved in executing a higher level code
on specific hardware is detailed in figure 1.3.

Figure.1.3 How a Program gets Executed?


What is Computer Architecture?
Computer architecture involves the design of computers. The first point that must be known about Computer architecture
is that there is no standard design of computers, in the same way as there is no such thing as a standard building
architecture or standard motorcar design. However, just as all cars have some basic features in common, so does
computers. We have already dealt with the components of a computer that are common to all computers, noting that any
particular computer will differ in various details from the general model presented. We have also dealt with what makes a
working computer and how a program gets executed in a computer. Computer architecture is the study of building
computer systems for a performance expectation.

Computer Architecture is broadly split into three parts.

Instruction Set Architecture—the bridge between hardware and software (includes instruction set, CPU data path
and internal architecture- refer to figure 1.2 ). Instruction Set Architecture (ISA) describes the processor (CPU) in
terms of what the assembly language programmer sees, i.e. the instructions and registers and memory addressing
capability of the CPU. Processor design involves the instruction set design and the organisation of the processor.

More advanced processor implementations. The focus is on Pipelining, which is one of the most important ways to
improve performance.

Finally, Memory Systems and I/O design, and how to connect these with CPU.

In the context of computer hardware, frequently another term Computer Organization is used. Computer Organization is
concerned with the internal design of the processor, the design of the bus system and its interfaces, the design of memory
and so on with the chosen logic devices. It is possible for any two machines can have the same ISA, but different
organizations.

To have a complete understanding of Computer Architecture, we will be studying in detail about various topics like Data
Types of Computer Hardware, Instruction Set, Addressing Modes, Performance, Arithmetic and Logical Unit, Control Unit,
Memory Design, I/O Design.

[ Credits : https://witscad.com/course/computer-architecture/chapter/introduction-to-functional-computer ]
[ Copyright : Witspry @ 2020 ]

ALSO ON WITSCAD

For people aged 20 to 67: how to start


AMZ_IN

Object Oriented Working with Nested


Programming - Part I Components CPU's Data Path

6 years ago • 3 comments 6 years ago • 2 comments 4 years ago • 3 comments


If we call a language a high What are nested or child In this chapter, we are going
level language, then it components in Angular? A to learn different
becomes necessary for … Component in Angular can … components of a data …

Object Oriented Working with Nested


Programming - Part I Components CPU's Data Path

You might also like