ece 511 microprocessors l.
Skip this Video
Loading SlideShow in 5 Seconds..
ECE 511 Microprocessors PowerPoint Presentation
Download Presentation
ECE 511 Microprocessors

Loading in 2 Seconds...

play fullscreen
1 / 33

ECE 511 Microprocessors - PowerPoint PPT Presentation

  • Uploaded on

ECE 511 Microprocessors Subbaiah Venkata Class Introduction About the Lecturer No TA for the class About Students: need some info CS vs ECE vs Other Software vs Hardware Programmers vs Non-Programmers Full-timve vs Part-time New vs Old Students Course Webpage

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

PowerPoint Slideshow about 'ECE 511 Microprocessors' - jaden

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
ece 511 microprocessors

ECE 511 Microprocessors

Subbaiah Venkata

class introduction
Class Introduction
  • About the Lecturer
    • No TA for the class
  • About Students: need some info
    • CS vs ECE vs Other
    • Software vs Hardware
    • Programmers vs Non-Programmers
    • Full-timve vs Part-time
    • New vs Old Students
  • Course Webpage
    • Keep looking for all course-related information

ECE 511 Microprocessors

beautiful computer courses
Beautiful Computer Courses
  • Algorithms – CS 583
  • Operating Systems – CS 571
  • Microprocessors – ECE 511
  • Language Processors/Compilers – CS 540
  • Computer Networks – ECE 542

ECE 511 Microprocessors

course outline
Course Outline
  • Computer Organization, Design and Architecture
  • Number systems and computer arithmetic
  • Assembly language programming
  • ISA and instruction encoding
  • Performance evaluation and metrics
  • Microprocessor design
    • Data path
    • Control path
    • Pipelining
    • Superscalar
    • Out-of-order execution
  • Memory hierarchy
  • I/O subsystem

ECE 511 Microprocessors

  • Exams - 60%
    • Midterm - 30%
    • Final - 30%
  • Projects - 30%
    • Project I - 15%
    • Project II - 15%
  • Homeworks - 10%
  • Class participation – required for various reasons
  • Grading policy: relative

ECE 511 Microprocessors

  • Primary Textbook
    • Modern Processor Design:  Fundamentals of Superscalar Processorsby John Paul Shen and Mikko H. Lipasti, 1st Edition, McGraw Hilll, 2005.
  • Reference Textbook
    • Computer Organization & Design: The Hardware/Software Interfaceby David A. Patterson and John L. Hennessy, 3rd Edition, June 2007.
  • Additional references are in the course webpage
  • Lectures will not follow any book directly

ECE 511 Microprocessors



Overview of Computer Systems

  • Applications & Developers
    • Apple vs Microsoft
    • Browser, Email, Blog, Calculator, Office, Games, …
  • Languages & Compilers
    • Assembly, C, C++, Java, C#, Perl, Python, Ruby …
  • Operating Systems
    • Unix (BSD, Linux, Solaris, MacOS) vs Windows
  • Communication & Network Systems
    • LAN, MAN, WAN and Wireless
    • TCP/IP
  • Computer Systems
    • Apple, Microsoft, Intel, IBM, HP, Google, Dell …
  • Microprocessors
    • General purpose - Pentium vs AMD vs PowerPC
    • Special purpose – Embedded, Cell and Network Processors

ECE 511 Microprocessors

history of microprocessor
History of Microprocessor
  • A CPU that is manufactured as a single integrated circuit is usually known as a microprocessor.
  • Inventors
    • Intel vs Texas Instruments (TI)
    • Microprocessor vs Microcontroller (single chip calculator)
    • Jack Kilby, Nobel Prize laureate in physics in 2000 for his invention of the integrated circuit in 1958 while working at TI. He is also the inventor of handheld calculator and thermal printer.
    • Gary Boone, TI was awarded U.S. Patent 3,757,306 for the single-chip microprocessor architecture on September 4, 1973
  • So many pioneers…

ECE 511 Microprocessors

hardware designer vs computer architect
Hardware Designer thinks about circuits, components, timing, functionality, ease of debugging

“construction engineer”

Computer Architect thinks about high-level components, how they fit together, how they work together to deliver performance.

“building architect”

Hardware Designer vs Computer Architect

Big picture, high-level view

ECE 511 Microprocessors

why do i care
Why do I care?
  • It is a core class
  • You may actually do computer architecture someday
  • You may actually care about software performance someday
    • The ability of application programs, compilers, operating systems, etc. to deliver performance depends critically on an understanding of the underlying computer organization.
    • That becomes more true every year.
    • Computer architectures become more difficult to understand every year.

ECE 511 Microprocessors

what you can expect to get out of this class
What you can expect to get out of this class
  • To become conversant with computer architecture terms and concepts.
  • To understand fundamental concepts in computer architecture and how they impact computer and application performance.
  • To be able to read and evaluate architectural descriptions of even today’s most complex processors.
  • To gain experience designing a working CPU completely from scratch.
  • To learn experimental techniques used to evaluate advanced architectural ideas.

ECE 511 Microprocessors

which is faster
load R1, addr1

store R1, addr2

add R0, R2 -> R3

subtract R4, R3 -> R5

add R0, R6 ->R7

store R7, addr3

load R1, addr1

add R0, R2 -> R3

add R0, R6 -> R7

store R1, addr2

subtract R4, R3 -> R5

store R7, addr3

Which is faster?

Twice as fast on some

machines and same on others

  • Three ways to improve performance
  • Algorithm improvement
  • Compiler Generated Code improvement
  • Processor execution improvement

ECE 511 Microprocessors

the instruction set architecture
The Instruction Set Architecture
  • Is the agreed-upon interface between all the software that runs on the machine and the hardware that executes it.






Instruction Set


Instr. Set Proc.

I/O system

Digital Design


Circuit Design

Understand the Power of Abstraction

ECE 511 Microprocessors

computer organization
Computer Organization
  • Once you have decided on an ISA, you must decide how to design the hardware to execute those programs written in the ISA as fast as possible (or as cheaply as possible, or using as little power as possible, …).
  • This must be done every time a new implementation of the architecture is released, with typically very different technological constraints

ECE 511 Microprocessors

what is computer architecture
What is Computer Architecture?

Computer Architecture = Machine Organization +

Instruction Set Architecture

What the machine looks like

How you talk to the machine

ECE 511 Microprocessors

how to speak computer


lw $15, 0($2)

lw $16, 4($2)

sw $16, 0($2)

sw $15, 4($2)

Assembly Language Program






Machine Language Program


Machine Interpretation

Control Signal Spec

ALUOP[0:3] <= InstReg[9:11] & MASK

How to Speak Computer

High Level Language Program

temp = v[k];

v[k] = v[k+1];

v[k+1] = temp;

Need translation from application to physics

ECE 511 Microprocessors

stored program concept







C compiler

Students Data

Book text

C code

Stored Program Concept
  • Today’s computers are build on two key principles:
    • Instructions are represented as numbers
    • Programs are stored in memory to be read or written, just like numbers



Address &

Data Bus


ECE 511 Microprocessors

the five classic components of computers
The Five Classic Components of Computers







We will study these components in this class

ECE 511 Microprocessors

calculator vs computer
Calculator vs Computer









Stream (Input)




ECE 511 Microprocessors

the instruction set architecture22
The Instruction Set Architecture
  • That part of the architecture that is visible to the programmer
    • opcodes (available instructions)
    • number and types of registers
    • instruction formats
    • storage access, addressing modes
    • exceptional conditions

ECE 511 Microprocessors

key isa decisions
Key ISA decisions

destination operand


  • operations
    • how many?
    • which ones

y = x + b

source operands

  • operands
    • how many?
    • location
    • types
    • how to specify?

(add r1, r2, r5)

  • instruction format
    • size
    • how many formats?

We will learn in this course how to make these decisions

ECE 511 Microprocessors

processor performance with time
Processor Performance with Time





[Multiple processors on the same chip]






Year of introduction

We will study the various kinds of processors

ECE 511 Microprocessors

price being paid
Price being paid

Always need to think about design in terms of constraints

ECE 511 Microprocessors

the challenge of computer architecture
The Challenge of Computer Architecture
  • The industry changes faster than any other.
  • The ground rules change every year.
    • new problems
    • new opportunities
    • different tradeoffs
  • It’s “all” about making programs run faster than the next guy’s machine. Or more efficiently.

ECE 511 Microprocessors

the instruction execution cycle

Determine required actions and instruction size



Locate and obtain operand data



Compute result value or status


Deposit results in storage for later use



Determine successor instruction



The Instruction Execution Cycle

Obtain instruction from program storage



ECE 511 Microprocessors

cpu stages
CPU Stages

ECE 511 Microprocessors

cpu blocks
CPU Blocks

Back End

Front End

ECE 511 Microprocessors

cpu elements
CPU Elements
  • Program Counter or PC contains the address of the instruction that will be executed next
  • Stack – a data structure of last in first out type
    • A stack is described by a special register – stack pointer
    • It can be used explicitly to save/restore data
    • It is used implicitly by procedure call instructions (if available in the instruction set)
  • IR – instruction register that holds the current instruction being processed by the microprocessor; it is not exposed through the instruction set architecture; just an organization element

ECE 511 Microprocessors

computer of the day
Computer of the day

Input: ears

Output: mouth

Memory: paper

Datapath: eye-brain-pencil

Control: brain

  • Human brain has about 10 billion neurons.
  • Each is connected to about 100,000 other neurons.
  • A neuron can “fire” about 1000 times/sec.
  • Estimate when microprocessors will exceed a human’s brainpower.
    • Assume each “fire” decision corresponds to computation of 100,000 transistors (one per connection) for one clock cycle.


4000 BC to 1940’s

ECE 511 Microprocessors