Uploaded by cf48fade39

Computer organization and architecture

advertisement
Computer Organization and Architecture – 14032205
Second Term(1443 AH)
Dr. Ahmad Alagil
Full Credit of these slides is given to Drs. Mohammad Sinky and AbdulBasit Abid
1
What you will gain in this course?
1. An ability to use MIPS instruction set architecture for assembly language
programming
2. An ability to implement MIPS instruction set architecture by building
datapath and controller
3. An ability to apply the concepts of pipelining to MIPS datapath and
controller
4. An ability to understand and analyze design memory hierarchy
5. An ability to highlight the challenges/issues of modern computer
architectures through a technical report/presentation
6. An ability to write assembly language programs using MIPS assembly
language
2
Prerequisite
• 14031201-4: Digital Logic Design
Course Outline
• Introduction (Chapter 1)
• Performance (Chapter 1)
• Instructions: Language of the Computer (Chapter 2)
• Simple MIPS (Chapter 4)
• Pipelining (Chapter 4)
• Datapath and Control (Chapter 4)
• Data Hazard (Chapter 4)
• Memory Hierarchy (Chapter 5)
3
COMPUTER ORGANIZATION AND DESIGN
The Hardware/Software Interface
Chapter 1
Computer Abstractions
and Technology
5th
Edition

Progress in computer technology


Makes novel applications feasible






Underpinned by Moore’s Law
Computers in automobiles
Cell phones
Human genome project
World Wide Web
Search Engines
Computers are pervasive
§1.1 Introduction
The Computer Revolution
Classes of Computers

Personal computers



General purpose, variety of software
Subject to cost/performance tradeoff
Server computers



Network based
High capacity, performance, reliability
Range from small servers to building sized
Classes of Computers

Supercomputers



High-end scientific and engineering calculations
Highest capability but represent a small fraction of the overall
computer market
Embedded computers


Hidden as components of systems
Stringent power/performance/cost constraints
The PostPC Era

Personal Mobile Device (PMD)





Battery operated
Connects to the Internet
Hundreds of dollars
Smart phones, tablets, electronic glasses
Cloud computing




Warehouse Scale Computers (WSC)
Software as a Service (SaaS)
Portion of software run on a PMD and a
portion run in the Cloud
Amazon and Google

Design for Moore’s Law

Use abstraction to simplify design

Make the common case fast

Performance via parallelism

Performance via pipelining

Performance via prediction

Hierarchy of memories

Dependability via redundancy
§1.2 Eight Great Ideas in Computer Architecture
Eight Great Ideas
Abstraction Layers in Computing
Application
How do we ensure that
application programs are
solved correctly by
electrons?
Gap too
large to
bridge in
one step
Physics
Muhamed Mudawar – slide 10
Abstraction Layers in Computing
Application
Algorithms, Programming Languages
Compiler, Linker, Run-time Libraries
Operating System, Virtual Machines
Instruction Set Architecture (ISA)
Microarchitecture
Logic Gates, Circuits
Devices, Layout
Physics
Muhamed Mudawar – slide 11
Abstraction
programs
device drivers
Hiding details when they aren’t important
focus of this course
Focus?
instructions
registers
datapaths
controllers
adders
memories
AND gates
NOT gates
amplifiers
filters
transistors
diodes
electrons
Digital Design and Computer Architecture: ARM® Edition © 2015
Chapter 6 <12>
Computer Architecture
• Computer Architecture =
Instruction set architecture + Computer organization
• Why we study computer architecture?
To increase computer performance:
• Response Time (Execution Time)
• Throughput (Total work done per unit time)
13
COMPUTER ARCHITECTURE
COMPUTER ORGANIZATION
Architecture describes what the computer
does
Organization describes how it does it
Computer Architecture deals with functional
behavior of computer system
Computer Organization deals with structural
relationship
it deals with high-level design issue
it deals with low-level design issue
Architecture indicates its hardware
Organization indicates its performance
For designing a computer, its architecture is
fixed first
For designing a computer, organization is
decided after its architecture
14
Five Classic Components
• Five classic components of a computer:
1.
2.
3.
4.
5.
Input
Output
Memory
Datapath
Control
15
Opening the Box
Chapter 1 — Computer Abstractions and Technology — 16
Opening the Box
Capacitive multitouch LCD screen
3.8 V, 25 Watt-hour battery
Computer board
Inside the Processor (CPU)



Datapath: performs operations on data
Control: sequences datapath, memory, ...
Cache memory

Small fast SRAM memory for immediate access to data
Inside the Processor

Apple A5
What is Under Your Program?
• Application software:
• Written in high-level language
• System software:
• Compiler: translates HLL code to assembly code
• Operating System:
• Linux, Windows …
• Handling input/output operations
• Managing memory and storage
• Hardware:
• Processor, memory, …
Windows, iOS, Linux
Compilers
C, C++, Java
20
• Compiler: translates HLL code to assembly code
• Commands are called instructions
• Assembler: translates assembly code to machine code
• Computer understands 0 and 1 (bits)
21
Hardware
• Inputting data
• Keyboard
inputting data
outputting data
• Outputting data
• Speakers
• Processing data
Hardware
• Processor (Datapath & Control)
• Storing data
processing data
storing data
• Cache
22
The Hardware/Software interface
ISA
add $s1, $s2, $s3
beq $s1, $s2, CHECK
.
.
Hardware
ISA is the Interface between hardware
and lowest level software
23
Summary
• A computer processes digital data
• A user solves problems by writing and running programs written in a high-level
programming language like C
• Inside computer, system programs called compiler and assembler break the user
program down into assembly code (instruction set) and then into binary machine code
• The machine code is processed by the 5-piece hardware (control unit, datapath,
memory, input and output) to obtain the desired result
24
Download