0% found this document useful (0 votes)
2 views14 pages

Chapter 0

This document serves as an introduction to a course on computer architecture, outlining its content, grading policy, and the importance of understanding computer systems. It covers topics such as computer organization, performance issues, instruction sets, and the relationship between hardware and software. The document also emphasizes the need for students to grasp the complexities of computer architecture to enhance programming efficiency and system selection.

Uploaded by

nguyenlehuy2k6
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views14 pages

Chapter 0

This document serves as an introduction to a course on computer architecture, outlining its content, grading policy, and the importance of understanding computer systems. It covers topics such as computer organization, performance issues, instruction sets, and the relationship between hardware and software. The document also emphasizes the need for students to grasp the complexities of computer architecture to enhance programming efficiency and system selection.

Uploaded by

nguyenlehuy2k6
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

02/03/2019

Chapter 0

INTRODUCTION

Contents

 References
 Grading policy
 The Content
 Course overview
 Why study computer architecture
 What is computer
 Organizations and Architecture
 What will you learn

1
02/03/2019

References
 David A. Patterson and John L. Hennessy, Computer
Organization &Design–The Hardware/Software
Interface, 4th Edition, Morgan Kaufmann Publishers,
2008
 William Stallings, Computer Organization and
Architecture–Designing for Performance, 7th Edition,
Pearson International Edition, 2006.
 Linda Null, Julia Lobur, The Essentials of Computer
Organization and Architecture, Jones and Bartlett
Publishers, 2003
 [Link]
online

Grading policy

 Attend class
 Homework
 Midterm examination
 Labs
 Final examination

2
02/03/2019

Contents

 Chapter 0 : Introduction to course


 Chapter 1 : Introduction
 Chapter 2 : Top-level view of Computer functions and
interconnections
 Chapter 3 : Computer Memory
 Chapter 4 : The Central Processing Unit
 Chapter 5 : Data Presentation
 Chapter 6 : Instruction Set
 Chapter 7 : Addressing Mode and Stack Processing
 Chapter 8 : Macro and Function
 Chapter 9 : System services

Course overview

 Principle and organization of digital computers


 Performance issues in computer architecture
 Bus organization and memory design
 Principle of computer’s instruction set and
programming in assembly language (some
popular processors are used such as Intel x86,
ARM, …)

3
02/03/2019

Why study computer architecture

 To be a professional in any field of computing


today,you should not regard the computer as just a back
box that executes program by magic.
 You should understand a computer system’s
functional components, their characteristics, their
performance, and their interactions.
 You need to understand computer architecture in
order to build a program so that it runs efficiently on a
machine.
 When selecting a system to use, you should be able to
understand the tradeoff among various components,
such as CPU clock speed vs. memory size.

 Understand the complex trade-offs between CPU clock


speed, cache size, bus organization, number of core
processors,…
 What determines the performance of a program, and
how can a programmer improve the performance? As we
will see, this depends on the original program, the so ware
translation of that program into the computer’s language,
and the effectiveness of the hardware in executing the
program.
 Understand other areas of computing curriculum such as

operating system, passing parameter/pointers, stack frame


in high-level language,

4
02/03/2019

What is Digital computer

Define

 Computer is a data processing machine,


operation automatically under the control of one
list of commands (called programs) is strored in
memory

5
02/03/2019

Functions of computers

 Functions of computer consit of :


 Data processing
 Data storage
 Data movement
 Control

Structure - Top Level

Peripherals Computer

Central Main
Processing Memory
Unit

Computer
Systems
Interconnection

Input
Output
Communication
lines

6
02/03/2019

Structure - The CPU

CPU

Computer Arithmetic
Registers and
I/O Login Unit
System CPU
Bus
Internal CPU
Memory Interconnection

Control
Unit

Structure - The Control Unit

Control Unit

CPU
Sequencing
ALU Login
Control
Internal
Unit
Bus
Control Unit
Registers Registers and
Decoders

Control
Memory

7
02/03/2019

Computer Abstraction

Application Problem-oriented language

Compiler

Assembly language

Assembler
Gap
Operating system

Partial intepretation
Instruction Set Architecture
(ISA)
Microprogram

Microarchitecture
Hardware

Physical devices Digital circuits

Other abstract view

Applications

OS (Windows, linux, Mac


OS)
Software
Compiler

Assembler

Processor Memory I/O System

Hardware Datapath & Control

Digital design

Digital circuits

8
02/03/2019

Abstractions

 Abstraction helps us deal with complexity


 Hide lower-level detail
 Instruction set architecture (ISA)
 The hardware/software interface
 Application binary interface
 The ISA plus system software interface
 Implementation
 The details underlying and interface

Organizations and Architecture

 What Is Computer Architecture?


 Computer Architecture refers to those attributes of a
system that have a direct impact on the logical
execution of a program. Examples:
 The instruction set
 The number of bits used to represent various data types
 I/O mechanisms
 Memory addressing techniques
 ISA, Organization, Implementation
 Instruction Set Architecture: SW/HW interface

9
02/03/2019

 Instructions
 Memory management and protection
 Interrupts and traps
 Floating-point standard (IEEE)
 Organization: also called microarchitecture
 Computer Organization refers to the operational units
and their interconnections that realize the architectural
specifications. Examples are things that are
transparent to the programmer:
 Control signals
 Interfaces between computer and peripherals
 The memory technology being used

Classes of Computers
 Desktop 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
 Embedded computers
 Hidden as components of systems
 Stringent power/performance/cost constraints

10
02/03/2019

The Processor Market

What will you learn

 How programs are translated into the machine


language
 And how the hardware executes them
 The hardware/software interface
 What determines program performance
 And how it can be improved
 How hardware designers improve performance
 What is parallel processing

11
02/03/2019

Below Your Program

 Application software
 Written in high-level language
 System software
 Compiler: translates HLL code to machine code
 Operating System: service code
 Handling input/output
 Managing memory and storage
 Scheduling tasks & sharing resources
 Hardware
 Processor, memory, I/O controllers

Levels of Program Code

 High-level language
 Level of abstraction closer
to problem domain
 Provides for productivity
and portability
 Assembly language
 Textual representation of
instructions
 Hardware representation
 Binary digits (bits)
 Encoded instructions and data

12
02/03/2019

C/Java, assembly, and machine code

13
02/03/2019

14

You might also like