84
1 1998 Morgan Kaufmann Publishers Chapter 4 計計計計計

Chapter 4 計算機算數

  • Upload
    mirra

  • View
    72

  • Download
    0

Embed Size (px)

DESCRIPTION

Chapter 4 計算機算數. Outline. Problem: Designing MIPS ALU. Functional Specification. A Bit-slice ALU. A 1-bit ALU. A 4-bit ALU. How about Subtraction?. Revised Diagram. Overflow. Overflow Detection. Overflow Detection Logic. Zero Detection Logic. Putting It Altogether (I). - PowerPoint PPT Presentation

Citation preview

Page 1: Chapter 4 計算機算數

11998 Morgan Kaufmann Publishers

Chapter 4計算機算數

Page 2: Chapter 4 計算機算數

21998 Morgan Kaufmann Publishers

Outline

Page 3: Chapter 4 計算機算數

31998 Morgan Kaufmann Publishers

Problem: Designing MIPS ALU

Page 4: Chapter 4 計算機算數

41998 Morgan Kaufmann Publishers

Functional Specification

Page 5: Chapter 4 計算機算數

51998 Morgan Kaufmann Publishers

A Bit-slice ALU

Page 6: Chapter 4 計算機算數

61998 Morgan Kaufmann Publishers

A 1-bit ALU

Page 7: Chapter 4 計算機算數

71998 Morgan Kaufmann Publishers

A 4-bit ALU

Page 8: Chapter 4 計算機算數

81998 Morgan Kaufmann Publishers

How about Subtraction?

Page 9: Chapter 4 計算機算數

91998 Morgan Kaufmann Publishers

Revised Diagram

Page 10: Chapter 4 計算機算數

101998 Morgan Kaufmann Publishers

Overflow

Page 11: Chapter 4 計算機算數

111998 Morgan Kaufmann Publishers

Overflow Detection

Page 12: Chapter 4 計算機算數

121998 Morgan Kaufmann Publishers

Overflow Detection Logic

Page 13: Chapter 4 計算機算數

131998 Morgan Kaufmann Publishers

Zero Detection Logic

Page 14: Chapter 4 計算機算數

141998 Morgan Kaufmann Publishers

Putting It Altogether (I)

Page 15: Chapter 4 計算機算數

151998 Morgan Kaufmann Publishers

Putting It Altogether (II)

Page 16: Chapter 4 計算機算數

161998 Morgan Kaufmann Publishers

Page 17: Chapter 4 計算機算數

171998 Morgan Kaufmann Publishers

Problems with Ripple Carry Adder

Page 18: Chapter 4 計算機算數

181998 Morgan Kaufmann Publishers

Carry Lookahead: Theory (I)

Page 19: Chapter 4 計算機算數

191998 Morgan Kaufmann Publishers

Carry Lookahead: Theory (II)

Page 20: Chapter 4 計算機算數

201998 Morgan Kaufmann Publishers

Cascaded Carry Lookahead

Page 21: Chapter 4 計算機算數

211998 Morgan Kaufmann Publishers

Page 22: Chapter 4 計算機算數

221998 Morgan Kaufmann Publishers

Carry-select Adder

Page 23: Chapter 4 計算機算數

231998 Morgan Kaufmann Publishers

Add XOR to ALU

Page 24: Chapter 4 計算機算數

241998 Morgan Kaufmann Publishers

Shifters

Page 25: Chapter 4 計算機算數

251998 Morgan Kaufmann Publishers

Combinational Shifter

What comes in the MSBs? how many levels for 32-bitshifter? what if we use 4-1 Muxes ?

Page 26: Chapter 4 計算機算數

261998 Morgan Kaufmann Publishers

Outline

Page 27: Chapter 4 計算機算數

271998 Morgan Kaufmann Publishers

Multiplication in MIPS

Page 28: Chapter 4 計算機算數

281998 Morgan Kaufmann Publishers

Division in MIPS

Page 29: Chapter 4 計算機算數

291998 Morgan Kaufmann Publishers

MIPS Multiply/Divide Summary

Page 30: Chapter 4 計算機算數

301998 Morgan Kaufmann Publishers

Unsigned Multiply

Page 31: Chapter 4 計算機算數

311998 Morgan Kaufmann Publishers

Unisigned Multiplier (Ver. 1)

Page 32: Chapter 4 計算機算數

321998 Morgan Kaufmann Publishers

Page 33: Chapter 4 計算機算數

331998 Morgan Kaufmann Publishers

Observations: Multiply Ver. 1

Page 34: Chapter 4 計算機算數

341998 Morgan Kaufmann Publishers

Unisigned Multiplier (Ver. 2)

Page 35: Chapter 4 計算機算數

351998 Morgan Kaufmann Publishers

Page 36: Chapter 4 計算機算數

361998 Morgan Kaufmann Publishers

Unisigned Multiplier (Ver. 3)

Page 37: Chapter 4 計算機算數

371998 Morgan Kaufmann Publishers

Page 38: Chapter 4 計算機算數

381998 Morgan Kaufmann Publishers

Observations: Multiply Ver. 3

Page 39: Chapter 4 計算機算數

391998 Morgan Kaufmann Publishers

Booth’s Algorithm: Motivation

Page 40: Chapter 4 計算機算數

401998 Morgan Kaufmann Publishers

Booth’s Algorithm: Rationale

Page 41: Chapter 4 計算機算數

411998 Morgan Kaufmann Publishers

Booth’s Algorithm

Page 42: Chapter 4 計算機算數

421998 Morgan Kaufmann Publishers

Booths Example (2 x 7)

Page 43: Chapter 4 計算機算數

431998 Morgan Kaufmann Publishers

Booths Example (2 x -3)

Page 44: Chapter 4 計算機算數

441998 Morgan Kaufmann Publishers

Combinational Multiplier

Page 45: Chapter 4 計算機算數

451998 Morgan Kaufmann Publishers

How Does It Work?

Page 46: Chapter 4 計算機算數

461998 Morgan Kaufmann Publishers

Outline

Page 47: Chapter 4 計算機算數

471998 Morgan Kaufmann Publishers

Divide: Paper & Pencil

Page 48: Chapter 4 計算機算數

481998 Morgan Kaufmann Publishers

Divide Hardware (Version 1)

Page 49: Chapter 4 計算機算數

491998 Morgan Kaufmann Publishers

Page 50: Chapter 4 計算機算數

501998 Morgan Kaufmann Publishers

Observations: Divide Version 1

Page 51: Chapter 4 計算機算數

511998 Morgan Kaufmann Publishers

Divide Hardware (Version 2)

Page 52: Chapter 4 計算機算數

521998 Morgan Kaufmann Publishers

Page 53: Chapter 4 計算機算數

531998 Morgan Kaufmann Publishers

Observations: Divide Version 2

Page 54: Chapter 4 計算機算數

541998 Morgan Kaufmann Publishers

Divide Hardware (Version 3)

Page 55: Chapter 4 計算機算數

551998 Morgan Kaufmann Publishers

Page 56: Chapter 4 計算機算數

561998 Morgan Kaufmann Publishers

Observations: Divide Version 3

Page 57: Chapter 4 計算機算數

571998 Morgan Kaufmann Publishers

Outline

Page 58: Chapter 4 計算機算數

581998 Morgan Kaufmann Publishers

Floating-Point: Motivation

Page 59: Chapter 4 計算機算數

591998 Morgan Kaufmann Publishers

Scientific Notation: Binary

Page 60: Chapter 4 計算機算數

601998 Morgan Kaufmann Publishers

FP Representation

Page 61: Chapter 4 計算機算數

611998 Morgan Kaufmann Publishers

Double Precision Representation

Page 62: Chapter 4 計算機算數

621998 Morgan Kaufmann Publishers

IEEE 754 Standard (1/4)

Page 63: Chapter 4 計算機算數

631998 Morgan Kaufmann Publishers

IEEE 754 Standard (2/4)

Page 64: Chapter 4 計算機算數

641998 Morgan Kaufmann Publishers

IEEE 754 Standard (3/4)

Page 65: Chapter 4 計算機算數

651998 Morgan Kaufmann Publishers

IEEE 754 Standard (4/4)

Page 66: Chapter 4 計算機算數

661998 Morgan Kaufmann Publishers

Example: FP to Decimal

Page 67: Chapter 4 計算機算數

671998 Morgan Kaufmann Publishers

Continuing Example: Binary to ???

Page 68: Chapter 4 計算機算數

681998 Morgan Kaufmann Publishers

Big Idea: Type Not Associated withData

Page 69: Chapter 4 計算機算數

691998 Morgan Kaufmann Publishers

Example: Decimal to FP

Page 70: Chapter 4 計算機算數

701998 Morgan Kaufmann Publishers

Representation for 0

Page 71: Chapter 4 計算機算數

711998 Morgan Kaufmann Publishers

Special Numbers

Page 72: Chapter 4 計算機算數

721998 Morgan Kaufmann Publishers

Representation for +/- Infinity

Page 73: Chapter 4 計算機算數

731998 Morgan Kaufmann Publishers

Representation for Not a Number

Page 74: Chapter 4 計算機算數

741998 Morgan Kaufmann Publishers

Special Numbers (cont’d)

Page 75: Chapter 4 計算機算數

751998 Morgan Kaufmann Publishers

Floating-Point Addition

Page 76: Chapter 4 計算機算數

761998 Morgan Kaufmann Publishers

Page 77: Chapter 4 計算機算數

771998 Morgan Kaufmann Publishers

Floating-Point Multiplication

(4) set the sign of product

Page 78: Chapter 4 計算機算數

781998 Morgan Kaufmann Publishers

MIPS Floating Point

Page 79: Chapter 4 計算機算數

791998 Morgan Kaufmann Publishers

MIPS Floating Point Instructions

• Organized as a coprocessor

– Separate registers $f0-$f31– Separate operations

– Separate data transfer (to same memory)

• Basic operations– add.s - single add.d - double– sub.s - single sub.d - double– mul.s - single mul.d - double– div.s - single div.d - double

Page 80: Chapter 4 計算機算數

801998 Morgan Kaufmann Publishers

MIPS Floating Point Instructions (cont’d)

• Data transfer– lwc1, swcl (l.s, s.s) - load/store float

to fp reg– l.d, s.d - load/store double to fp reg pair

• Testing / branching– c.lt.s, c.lt.d, c.eq.s, c.eq.d, …

compare and set condition bit if true– bclt - branch if condition true– bclf - branch if condition false

Page 81: Chapter 4 計算機算數

811998 Morgan Kaufmann Publishers

Rounding

Page 82: Chapter 4 計算機算數

821998 Morgan Kaufmann Publishers

Round to Even

Page 83: Chapter 4 計算機算數

831998 Morgan Kaufmann Publishers

Floating Point Fallacy

Page 84: Chapter 4 計算機算數

841998 Morgan Kaufmann Publishers

Summary