computer architecture and organization (cs-507) · mapping, quantum computing, … are among the...
TRANSCRIPT
Computer Architecture and Organization (CS-507)
Lecture 1Introduction
Muhammad Zeeshan Haider Ali
Lecturer
ISP. Multan
https://zeeshanaliatisp.wordpress.com/
Course Objectives
• To learn the organizational paradigms that determine the capabilities and performance of computer systems
• To understand the interactions between the computer’s architecture and its software so that
– future software designers (compiler writers, operating system designers, database programmers, …) can achieve the best cost-performance trade-offs
– future architects understand the effects of their design choices on software applications
– future researchers develop understanding of various issues in computer architecture to formulate possible research problems
• To know some of the advanced design features on modern processors that boost the performance
• To understand contemporary design issues and how to conduct a trade-off among the various design objectives
Reference Material
• Computer Organization and Architecture 8e by William Stallings
• Computer Organization And Design The hardware and software interface by David A Patterson and John L Hennessy 5th Edition 2014
• The intel microprocessor Barry B Brey 8th edition
Marking Criteria:
• Mid = 25 Marks
• Final = 50 Marks
• Attendance = 10 Marks
• Sessional = 15 Marks
• Sessional Criteria
4 Assignments (2 Marks)
4 Quizzes (2 Marks)
Presentation (5 Marks)
Class Participation, Attitude (3 Marks)
Attendance, Exam Result (3 Marks)
Teaching Style and Philosophy
• My role is to– Facilitate and guide the students to the fundamental concepts– Make it simple and elaborate with examples– Relate as much as possible to available products– Prepare class notes to be as rich and comprehensive as possible
• Your role is to– Focus on understanding and digesting the concept– Do not worry about the grade more than concepts; you are a
professional !!– Slow down me if you do not understand and raise questions– Be prepared to answer an oral quiz, when you get involved in a
side talk
Motivation
• Computer systems are responsible of 10-15% of the gross product of the world
• WWW, ATM, Cashless society, anywhere computing, DNA mapping, Quantum computing, … are among the applications that were economically infeasible and recently have become practical
• Wearable networks, implanted computers, automated intelligent highways… are next computer science fiction on their way to become a reality
• Computer architecture has been at the core of such technological development and is still on a forward move
Today’s Agenda
• Introduction to Computer Architecture.
• Fundamentals of Computer Design
• Performance Measurements.
ORGANIZATIONAND ARCHITECTURE
➢ Computer architecture refers to those attributes of a system
visible to a programmer or, put another way, those attributes that
have a direct impact on the logical execution of a program.
➢ Computer organization refers to the operational units and their
interconnections that realize the architectural specifications.
Continue…...➢ Examples of architectural attributes include the
instruction set, the number of bits used to represent
various data types (e.g., numbers, characters), I/O
mechanisms, and techniques for addressing memory.
Organizational attributes include those hardware details
transparent to the programmer, such as control signals;
interfaces between the computer and peripherals; and
the memory technology used.
Continue…➢ 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
➢ In a class of computers called microcomputers, the
relationship between architecture and organization is
very close. Changes in technology not only influence
organization but also result in the introduction of more
powerful and more complex architectures.
Computer Architecture - Definition
• Computer Architecture = ISA + MO
• Instruction Set Architecture– What the executable can “see” as underlying hardware
– Logical View
• Machine Organization– How the hardware implements ISA ?
– Physical View
Computer Architecture – Changing Definition
•1950s to 1960s: Computer Architecture Course:
• Computer Arithmetic
•1970s to mid 1980s: Computer Architecture Course: • Instruction Set Design, especially ISA appropriate for compilers
•1990s: Computer Architecture Course:
• Design of CPU, memory system, I/O system, Multiprocessors, Networks
•2000s: Computer Architecture Course:• Non Von-Neumann architectures, Reconfiguration
•Today’s: DNA Computing, Quantum Computing ????
“What” is Computer Architecture ?
• Coordination of many levels of abstraction
• Under a rapidly changing set of forces
• Design, Measurement, and Evaluation
I/O systemInstr. Set Proc.
Compiler
OperatingSystem
Application
Digital Design
Circuit Design
Instruction SetArchitecture
Firmware
Datapath & Control
Layout
ISA: Critical Interface
instruction set
software
hardware
STRUCTURE AND FUNCTION
The way in which the components are➢ Structure:interrelated
➢ Function: The operation of each individual component aspart of the structure
➢ The computer system will be described from the top down.We begin with the major components of a computer,describing their structure and function, and proceed tosuccessively lower layers of the hierarchy.
Continue……
Continue…
➢ Above figure depicts the basic functions that a computer canperform.
In general terms, there are only four:
➢ Data processing
➢ Data storage
➢ Data movement
➢ Control
Structural units
➢ Top-Level Structure of computer:
Continue…➢ But in general term there four structural units of computer whichare:
➢ 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 externalenvironment.
➢ System interconnection: Some mechanism that provides for
communication among CPU, main memory, and I/O. A common example of
system interconnection is by means of a system bus, consisting of a number
of conducting wires to which all the other components attach.
Continue…➢ The most complex unit/component is CPU
➢ Internal units/components of CPU 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
Factors affecting ISA ???
Computer
Architecture
Technology ProgrammingLanguages
Operating
Systems
History
Applications
Cleverness
Impact of changing ISA
• Early 1990’s Apple switched instruction set architecture of the Macintosh
– From Motorola 68000-based machines
– To PowerPC architecture
• Intel 80x86 Family: many implementations of same architecture
– program written in 1978 for 8086 can be run on latest Pentium chip
The Big Picture
Since 1946 all computers have had 5 components!!!
Control
Datapath
Memory
Processor
Input
Output
The Role of Performance
Performance Metrics
• Response Time
– Delay between start end end time of a task
• Throughput
– Numbers of tasks per given time
• New: Power/Energy
– Energy per task, power
Examples (Throughput/Performance)
• Replace the processor with a faster version?
– 3.8 GHz instead of 3.2 GHz
• Add an additional processor to a system?
– Core Duo instead of P4
Measuring Performance
• Wall-clock time –or- Total Execution Time
• CPU Time
– User Time
– System Time
Relating the Metrics
• Performance = 1/Execution Time
• CPU Execution Time = CPU clock cycles for program x Clock cycle time
• CPU clock cycles = Instructions for a program x Average clock cycles per Instruction
Technology Trends
Big Fish Eating Little Fish
In reality:
Technology Trends
PCWork-
stationMini-
computer
Mainframe
Mini-
supercomputerSupercomputer
Massively
Parallel
Processors
1988 Computer Food Chain
Technology Trends
1998 Computer Food Chain
PCWork-
station
Mainframe
Supercomputer
Mini-
supercomputerClusters
Mini-
computer
Now who is eating whom?
Server