1 instruction sets and beyond computers, complexity, and controversy brian blum, darren drewry ben...

21
1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

Upload: angelica-barnett

Post on 13-Jan-2016

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

1

Instruction Sets and Beyond

Computers, Complexity, and Controversy

Brian Blum, Darren DrewryBen Hocking, Gus Scheidt

Page 2: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

2

OutlinePoints of ClarificationRISC and CISC definedPoints of Attention and ContentionRISC II and the MCF EvaluationMultiple Register SetsThe 432Summary

Page 3: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

3

Points of Clarification1985 - What is RISC today?RISC – Number of Instructions

RISC:academic .vs. CISC:commercial

RISC I – 31 VAX 11/780 – 303

88000 – 51 Intel 80486 - 235

R4000 - 94 IBM 370/168 – 208

Pyramid - 90 Ridge – 100

Page 4: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

4

RISC DefinedSingle Cycle OperationLoad / Store DesignHardwired Control (No microcode)Few Instructions and Addressing ModesFixed Instruction FormatMore Compile Time Effort(Split Data and Instruction Cache)

Page 5: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

5

CISC in ComparisonLarger and more Complex (Insn & Addr)

Multiple Cycle Execution (micro-instructions)

Upward Compatible (w/ Obsolete Insn)

StandardizedMore Hardware (on-chip logic)

Fewer Registers – Unified Cache?

Page 6: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

6

RISC and CISC: General Points

CISC Built for Language (Assembly)

CISC Built for Memory ConservationCISC Focuses on Standards and CompatibilityRISC Designed for SpeedRISC Simultaneous Access to Code and OperandsRISC Reliance on CompilersWorse: or just Different?

Page 7: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

7

Two Misconceptions about

RISC and CISC

Implication that discussion is limited to selection of instruction set.

Tradeoffs across various boundaries: architecture / implementation hardware / software compile-time / run-time

Page 8: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

8

Two Misconceptions about

RISC and CISCImplication that any machine is one or the other.

Machine performance difficult to interpretAbsolute number of instructions is not the only criterion

- compiler / architecture coupling

- non-instruction set design decisions

Page 9: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

9

Early arguments for RISC

Simpler designs could be realized more quickly

Avoid performance disadvantages of old implementation technology.

Page 10: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

10

DEC’s MicroVAX-32Qualifies as a CISCVery short development period

Standardization of instruction setRISC can benefit from standardization

Demonstrates importance of assigning function to appropriate implementation level

Microcoding can be a valuable technique

Page 11: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

11

Misleading RISC ClaimsAmount of design time saved.

Academic vs. commercial design and production

Performance claims.Typical benchmarks avoid metrics of reliability and response time

Use of micro-benchmarks vs. large, heterogeneous benchmarks

Page 12: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

12

Multiple Register SetsPerformance feature independent of RISC aspect of processorReduce frequency of register saves/restores on procedure callsOverlap register sets for parameter passingMRS impact performance for both RISC and CISC

Page 13: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

13

Effect of MRS on CISC

Effect of MRS on RISC

Page 14: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

14

RISC II and the MCF Evaluation

Used by Department of Defense to evaluate life-cycle cost of computersEfficiency defined as: program size; memory bus traffic; canonical processor cyclesVAX (CISC) judged best by MCFRISC II evaluation compared to VAX

Page 15: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

15

RISC II and the MCF Evaluation

Results of comparisonVAX requires 3.5 times less memory (for program instructions)RISC II has 2.5 times more processor-memory trafficVAX requires fewer cycles than RISC II

Page 16: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

16

A CISC Example – The 432Object-orientedGeared towards AdaEvery object protected uniformlyVariable length instructions (6-321 bits)On-chip microcodeEvery memory reference is checked

Page 17: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

17

Problems with the 43210-20 times as slow on low-level benchmarks (such as Hanoi)No on-chip data cachingNo instruction stream literalsNo local registersAda compile performs almost no optimization

Page 18: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

18

Advantages of the 432ReliabilityCould be faster at more realistic benchmarks (especially ones that use IPCs)

Page 19: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

19

Lessons from the 432Even with all of the oversights of the 432, it has an important advantage – reliabilityMore realistic benchmarks should be used to compare RISC with CISCCISCs should take advantage of multiple register sets

Page 20: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

20

ConclusionsWhen comparing RISC with CISC you should use similar hardware organizationsBenefits depend on

Types of programs being runWhether requirements are based on

PerformanceReliabilitySome other factor or set of factors

Page 21: 1 Instruction Sets and Beyond Computers, Complexity, and Controversy Brian Blum, Darren Drewry Ben Hocking, Gus Scheidt

21

And now to thank those who made this all possible!