Chap 0

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 9

Course Introduction 8/28/2022

Computer Architecture
Introductory Chapter

Đinh Đức Anh Vũ

Computer Engineering – CSE – HCMUT

Instructor
• Instructor:
– Đinh Đức Anh Vũ
– email: ddanhvu at gmail.com/anhvu at hcmut.edu.vn

Course Introduction 2

Computer Architecture 1
Course Introduction 8/28/2022

Computer
• Q: What is a Computer?
• A: “an electronic machine that is used for storing,
organizing, and finding words, numbers, and
pictures, for doing calculations, and for controlling
other machines” – Cambridge dictionary
• A: “a general-purpose device that can be
programmed to carry out a set of arithmetic or
logical operations automatically” - Wikipedia

Course Introduction 3

Computer classification
• Desktop computers
• Server/Super computers
• Embedded computers

(Images from Internet) 4

Computer Architecture 2
Course Introduction 8/28/2022

Computer Architecture
• Q: What is Computer Architecture?
• A: “the science and art of selecting and interconnecting
hardware components to create computers that meet
functional, performance and cost goals” - WWW Computer
Architecture Page

Instruction Set Architecture: Critical


Interface
software

instruction set

hardware

• Properties of a good abstraction


– Lasts through many generations (portability)
– Used in many different ways (generality)
– Provides convenient functionality to higher levels
– Permits an efficient implementation at lower levels
Course Introduction 6

Computer Architecture 3
Course Introduction 8/28/2022

Example: MIPS
r0 0 Programmable storage Data types ?
r1
° 2^32 x bytes Format ?
° 31 x 32-bit GPRs (R0=0)
° Addressing Modes?
r31 32 x 32-bit FP regs (paired DP)
PC HI, LO, PC
lo
hi

Arithmetic logical
Add, AddU, Sub, SubU, And, Or, Xor, Nor, SLT, SLTU,
AddI, AddIU, SLTI, SLTIU, AndI, OrI, XorI, LUI
SLL, SRL, SRA, SLLV, SRLV, SRAV
Memory Access
LB, LBU, LH, LHU, LW, LWL,LWR
SB, SH, SW, SWL, SWR
32-bit instructions on word boundary
Control
J, JAL, JR, JALR
BEq, BNE, BLEZ,BGTZ,BLTZ,BGEZ,BLTZAL,BGEZAL 7

Instruction Set Architecture


“... the attributes of a [computing] system as seen by
the programmer, i.e. the conceptual structure and
functional behavior, as distinct from the organization
of the data flows and controls the logic design, and
the physical implementation.”
– Amdahl, Blaauw, and Brooks, 1964
SOFTWARE
-- Organization of Programmable Storage
-- Data Types & Data Structures:
Encodings & Representations
-- Instruction Formats
-- Instruction (or Operation Code) Set
-- Modes of Addressing and Accessing Data Items and Instructions
-- Exceptional Conditions
Course Introduction 8

Computer Architecture 4
Course Introduction 8/28/2022

ISA vs. Computer Architecture


• Old definition of computer architecture
= instruction set design
– Other aspects of computer design called implementation
– Insinuates implementation is uninteresting or less challenging
• Our view is computer architecture >> ISA
• Architect’s job much more than instruction set design;
technical hurdles today more challenging than those in
instruction set design
• Since instruction set design not where action is, some
conclude computer architecture (using old definition) is
not where action is
– We disagree on conclusion
– Agree that ISA not where action is (ISA in CA:AQA 4/e
appendix)

Course Introduction 9

Comp. Arch. is an Integrated Approach


• What really matters is the functioning of the
complete system
– hardware, runtime system, compiler, operating system, and
application
– In networking, this is called the “End to End argument”
• Computer architecture is not just about transistors,
individual instructions, or particular implementations
– E.g., Original RISC projects replaced complex instructions
with a compiler + simple instructions

Course Introduction 10

Computer Architecture 5
Course Introduction 8/28/2022

Computer Architecture is
Design and Analysis
Architecture is an iterative process:
De sign
• Searching the space of possible designs
• At all levels of computer systems
Analysis

Creativity
Cost /
Performance
Analysis

Good Ideas
Mediocre Ideas
Bad Ideas 11

The Course
• Elementary course for both Computer Engineering
and Computer Science
• Contents:
1. Performance evaluation
2. Instruction set architecture
3. Computer arithmetic
4. Data-path and control signals
5. Memory system

Course Introduction 12

Computer Architecture 6
Course Introduction 8/28/2022

Planning
• Computer Technology and Performance evaluation
– 2 weeks
• Instruction set architecture
– MIPS
– 4 weeks
• Computer arithmetic
– 1 week
• Data-path and control signals
– 5 weeks
• Memory system
– 3 weeks

Course Introduction 13

Course Outcomes
• Fundamental outcomes:
– Understand the structure, organization of a computer
system: the main components and the basic principles of
its operations
• Computer Engineering students:
– Design basic components of a digital computer using HDL
• Computer Science students:
– Write and optimize small programs and fragments of codes
to demonstrate an understanding of machine level
operation

Course Introduction 14

Computer Architecture 7
Course Introduction 8/28/2022

Able to answer the following questions


• How are programs written in a high-level language, such as C or
Java, translated into the language of the hardware, and how does
the hardware execute the resulting program?
• What is the interface between the software and the hardware, and
how does software instruct the hardware to perform needed
functions?
• What determines the performance of a program, and how can a
programmer improve the performance?
• What techniques can be used by hardware designers to improve
performance?
• What techniques can be used by hardware designers to improve
energy efficiency? What can the programmer do to help or hinder
energy efficiency?
• What are the reasons for and the consequences of the recent
switch from sequential processing to parallel processing?
Course Introduction 15

Learning Materials
• Slides: BKEL http://e-learning.hcmut.edu.vn/course/view.php?id=116471
• Videos: BKEL http://e-learning.hcmut.edu.vn/course/view.php?id=62854
• Textbooks

Course Introduction 16

Computer Architecture 8
Course Introduction 8/28/2022

Course Assessment
• Lab + Project/assignment: 30%
• Quiz/exercises (15’): 10%
• Mid-term: 20% (mandatory) – multiple choices, with
1 A4 piece of paper note
• Final exam: 40% (mandatory) – multiple choices,
with 2 A4 piece of paper note
• Bonus points
– Nand2Tetris project (https://www.nand2tetris.org/): +5
max when finish (for Final)
– White board exercises: +2 max (for Midterm and Final)

Course Introduction 17

Computer Architecture 9

You might also like