chapter 1 computer architecture - is...

14
Chapter 1 Computer Architecture Introduction to Computer Architecture Bryar M. Shareef (bryarmustafa.epu.edu.krd) 2016-2017

Upload: others

Post on 06-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Chapter 1

Computer Architecture

Introduction to Computer Architecture

Bryar M. Shareef (bryarmustafa.epu.edu.krd)

2016-2017

Page 2: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

2

Fundamental Concepts

What is a computer architecture?

Computer Architecture: The science and art of designing,

selecting, and interconnecting hardware components and

designing the hardware/software interface to create a

computing system that meets functional, performance,

energy consumption, cost, and other specific goals.

Von Neumann architecture

The template for all modern computers is the Von Neumann

architecture, detailed in a 1945 paper by Hungarian

mathematician John von Neumann. This describes a design

architecture for an electronic digital computer with subdivisions of

a processing unit consisting of an arithmetic logic

unit and processor registers, a control unit containing

an instruction register and program counter, a memory to store

both data and instructions, external mass storage, and input and

output mechanisms.

Page 3: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

3

Figure 1.1: Von Neumann architecture

Introduction to Computer Architecture

Computer Organization vs. Architecture

Computer Architecture refers to those attributes of a system that have a direct impact on the logical execution of a program. Examples:

1. the instruction set 2. the number of bits used to represent various

data types 3. I/O mechanisms 4. memory addressing techniques

Computer Organization refers to the operational units and their interconnections that realize the architectural

Page 4: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

4

specifications. Examples are things that are transparent to the programmer: So, for example, It is an architectural design issue whether a computer will have a multiply instruction. It is an organizational issue whether that instruction will be implemented by a special multiply unit or by a mechanism that makes repeated use of the add unit of the system.

Many computer manufacturers offer a family of computer models, all with the same architecture but with differences in organization.

Why Study Computer Architecture? 1. Enable better systems: make computers faster,

cheaper, smaller, more reliable, …

By exploiting advances and changes in

underlying technology/circuits

2. Enable new applications

Life-like 3D visualization 20 years ago?

Chemist, medicine.

3. Enable better solutions to problems

Software innovation is built into trends and

changes in computer architecture

E.g. >50% performance improvement per

year has enabled this innovation

4. Understand why computers work the way they do

5. Understand where computers are going

Future capabilities drive the (computing) world

Page 5: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

5

Real world-impact: no computer architecture! no

computers!

Structure and Function

1. Structure: The way in which the components are interrelated

2. Function: The operation of each individual component as part of the structure.

Structure Figure 1.2 is the simplest possible depiction of a computer. The computer interacts in some fashion with its external environment. In general, all of its linkages to the external environment can be classified as peripheral devices or communication lines. We will have something to say about both types of linkages.

Page 6: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

6

There are four main structural components: • Central processing unit (CPU): Controls the operation of the computer and performs its data processing functions; often simply referred to as processor. • Main memory: Stores data. • I/O: Moves data between the computer and its external environment. • System interconnection: Some mechanism that provides for communication among CPU, main memory, and I/O. A common example of system

CPU major components are: • Control unit: Controls the operation of the CPU and hence the computer • Arithmetic and logic unit (ALU): Performs the computer’s data processing functions • Registers: Provides storage internal to the CPU • CPU interconnection: Some mechanism that provides for communication among the control unit, ALU, and registers.

Page 7: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

7

Figure 1.2: CPU major parts

Functions: Basic functions that a computer can perform:

1. Data Processing - a wide variety of forms, but only a few fundamental methods or types

2. Data Storage - long-term or short, temporary storage 3. Data Movement: The computer must be able to

move data between itself and the outside world.

4. Control - of the above functions, by instructions provided by the user of the computer (i.e. their programs)

Page 8: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

8

Fig 1.3 Functional View of computer

Figures (a-d) shows the four possible types of

operations.

1. The computer can function as a data movement

device (Figure a), simply transferring

data from one peripheral or communications line

to another.

Page 9: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

9

2. It can also function as a data storage device

(Figure b), with data transferred from the external

environment to computer storage (read) and vice

versa (write).

3. The final two diagrams show operations involving

data processing, on data either in storage (Figure

c)

4. en route between storage and the external

environment (Figure d).

Operations (Fig. 1.4: a) Data movement

Page 10: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

10

Operations (Fig. 1.4: b) Storage

Operation (Fig. 1.4: c) Processing from/to storage

Page 11: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

11

Operation (Fig. 1.4: d)

Processing from storage to I/O

Page 12: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

12

Instruction Set Architecture (ISA)

The instruction set, also called instruction set

architecture (ISA), is part of a computer that pertains to

programming, which is basically machine language. The

instruction set provides commands to the processor, to tell it

what it needs to do. The instruction set consists of addressing

modes, instructions, native data types, registers, memory

architecture, interrupt, and exception handling, and external I/O.

CISC vs RISC

Until the early 1980s, all CPUs, whether single-chip or whole-board,

followed the CISC (complex instruction set computer) design

philosophy. CISC refers to CPUs with hundreds of instructions designed

for every possible situation. To design CPUs with so many instructions

Page 13: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

13

consumed not only hundreds of thousands of transistors, but also made

the design very complicated, time-consuming, and expensive. In the

early 1980s, a new CPU design philosophy called RISC (reduced

instruction set computer) was developed. The proponents of RISC

argued that no one was using all the instructions etched into the brain of

CISC-type CPUs. Why not streamline the instructions by simplifying

and reducing them from hundreds to around 40 or so and use all the

transistors that are saved to enhance the power of the CPU? Although

the RISC concept had been explored by computer scientists at IBM as

early as the 1970s, the first working single-chip RISC microprocessor

was implemented by a group of researchers at the University of

California at Berkeley in1980. Today the RISC design philosophy is no

longer an experiment limited to research laboratories. Since the late

1980s, many companies designing new CPUs (either single-chip or

whole-board) have used the RISC philosophy. It appears that eventually

the only CISC microprocessors remaining in use will be members of the

80x86 family (8086, 8088, 80286, 80386, 80486, 80586, etc.) and the

680x0 family (68000, 68010, 68020, 68030, 68040, 68050, etc.). The

80x86 will be kept alive by the huge base of IBM PC, PS, and

compatible computers, and the Apple Macintosh is prolonging the life of

680x0 microprocessors.

The Apple Company in 2005 announced that the company would make a

transition from the use of PowerPC microprocessors supplied

by Freescale (formerly Motorola) and IBM in its Macintosh computers,

to processors designed and manufactured by Intel, a chief supplier for

most of Apple's competitors CISC RISC

Used in laptops and desktop computers,

made by intel or AMD

Used in smartphones and tablets, based

around ARM processor

Has more complex hardware Has simpler hardware

Page 14: Chapter 1 Computer Architecture - IS ENGINEERINGepuhawler-2.weebly.com/uploads/8/3/8/8/83887996/chapter_-1_-_com_arch.pdfComputer Architecture by Bryar M. Shareef 3 Figure 1.1: Von

Computer Architecture by Bryar M. Shareef

14

Multiple machine cycles per instruction Single machine cycle per instruction

Physically larger in size and require more

silicon to make thus more expensive

Smaller in size as less complex circuitry

required, less silicon needed to make thus

cheaper

Greater energy consumption Lower energy requirements, and can go

into “sleep mode” when not actively

processing

More intensive tasks will do better with

CISC

Run at lower clock speed, but can

perform simpler tasks more quickly than

CISC

Cannot support pipelining Can support pipelining