Top Banner
CMPT 250 Computer Architecture Instructor: Yuzhuang Hu [email protected]
30
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

CMPT 250 Computer Architecture

Instructor: Yuzhuang [email protected]

Page 2: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Final

August 7, 2009

7:00pm - 10:pm

HCC1700

Page 3: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 4: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

I/O Interface UnitsPeripherals are often eletro-mechanical devices whose

manner of operation is different from that of the CPU and memory.

The data-transfer rate of peripherals is usually different from the clock rate of the CPU.

Data codes and formats in peripherals differ from the word format in the CPU.

The operating modes of peripherals differ from each other.

Page 5: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

I/O bus and interface

Page 6: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 7: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 8: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 9: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 10: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 11: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Modes of Transfer

Data transfer under program control.

Interrupt-initiated data transfer.

Direct memory access transfer.

Page 12: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Program-Controlled Transfer

Page 13: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Interrupt-Initiated Transfer

SP <- SP – 1 Decrement stack pointerM[SP] <- PC Store return address on stackSP <- SP – 1 Decrement stack pointerM[SP] <- PSR Store processor status word

on stackEI <- 0 Reset enable-interrupt flip-

flopINTACK <- 1 Enable interrupt

acknowledgePC <- IVAD Transfer interrupt vector

address to PC, go to fetch phase

Page 14: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 15: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 16: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Final

August 7, 2009

7:00pm - 10:pm

HCC1700

Page 17: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Sequential Circuit Design

Page 18: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 19: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 20: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 21: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Design from ASM

processor

status

control pts

SEQ

CTRL PTSSELECTORExternal

control inputs

Data in Data out

Clock

Page 22: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

VHDL

Write some VHDL codes.

Processes in VHDL.

Page 23: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Pipeline

Execution of the instructions in each stage.

Hazards.Find data and control hazards.Avoid data and control hazards.

Insert NOP Change the order of the instructions Other methods

Page 24: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 25: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Data hazardsConsider the following instructions

1. MOV R1, R5

2. ADD R2, R1, R6

3. ADD R3, R1, R2

IF DOF EX WB

IF DOF EX WB

IF DOF EX WB

1 2 3 4 5

Mov R1, R5Add R2, R1, R6Add R3, R1, R2

Page 26: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Cache Memory32 bit address, 1024 KB cache, 4 word line,

two way associative cache

Question: how many bits in tag and index?

tag index block byte

Page 27: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 28: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.
Page 29: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

Overall picture

Page 30: Instructor: Yuzhuang Hu yhu1@cs.sfu.ca. Final August 7, 2009 7:00pm - 10:pm HCC1700.

THANKS!