73
1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010 (System Architectures) Instructor: Dr. Phillip Jones ([email protected]) Reconfigurable Computing Laboratory Iowa State University Ames, Iowa, USA http://class.ee.iastate.ed u/cpre583/

1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

Embed Size (px)

Citation preview

Page 1: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

CPRE 583Reconfigurable Computing

Lecture 13: Fri 10/8/2010(System Architectures)

Instructor: Dr. Phillip Jones([email protected])

Reconfigurable Computing LaboratoryIowa State University

Ames, Iowa, USA

http://class.ee.iastate.edu/cpre583/

Page 2: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

2 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Midterm:– Take home portion (40%) given Friday 10/15, due Tue 10/20

(midnight)– In class portion (60%) Wed 10/20

• Distance students will have in class portion given via a timed WebCT (2 hour) session (take on Wed, Thur or Friday).

• Start thinking of class projects and forming teams– Submit teams and project ideas: Mon 10/11 midnight– Project proposal presentations: Fri 10/22

• MP3: PowerPC Coprocessor offload (release by Sat noon)• Problem 2 of HW 2 (released by Sat noon)

Announcements/Reminders

Page 3: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

3 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Initial Project Proposal Slides (5-10 slides)

• Project team list: Name, Responsibility (who is project leader)– Team size: 3-4 (5 case-by-case)

• Project idea• Motivation (why is this interesting, useful)• What will be the end result• High-level picture of final product

• High-level Plan– Break project into mile stones

• Provide initial schedule: I would initially schedule aggressively to have project complete by Thanksgiving. Issues will pop up to cause the schedule to slip.

– System block diagrams– High-level algorithms (if any)– Concerns

• Implementation• Conceptual

• Research papers related to you project idea

Page 4: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

4 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• FPL• FPT• FCCM• FPGA• DAC• ICCAD• Reconfig• RTSS• RTAS• ISCA

Projects Ideas: Relevant conferences

• Micro• Super Computing• HPCA• IPDPS

Page 5: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

5 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Initial Project Proposal Slides (5-10 slides)

• Project team list: Name, Responsibility (who is project leader)• Project idea

• Motivation (why is this interesting, useful)• What will be the end result• High-level picture of final product

• High-level Plan– Break project into mile stones

• Provide initial schedule: I would initially schedule aggressively to have project complete by Thanksgiving. Issues will pop up to cause the schedule to slip.

– System block diagrams– High-level algorithms (if any)– Concerns

• Implementation• Conceptual

• Research papers related to you project idea

Page 6: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

6 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Weekly Project Updates

• The current state of your project write up– Even in the early stages of the project you

should be able to write a rough draft of the Introduction and Motivation section

• The current state of your Final Presentation– Your Initial Project proposal presentation

(Due Fri 10/22). Should make for a starting point for you Final presentation

• What things are work & not working• What roadblocks are you running into

Page 7: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

7 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Teams Formed and Idea: Mon 10/11– Project idea in Power Point 3-5 slides

• Motivation (why is this interesting, useful)• What will be the end result• High-level picture of final product

– Project team list: Name, Responsibility• High-level Plan/Proposal: Fri 10/22

– Power Point 5-10 slides• System block diagrams• High-level algorithms (if any)• Concerns

– Implementation– Conceptual

• Related research papers (if any)

Projects: Target Timeline

Page 8: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

8 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Work on projects: 10/22 - 12/8– Weekly update reports

• More information on updates will be given• Presentations: Last Wed/Fri of class

– Present / Demo what is done at this point– 15-20 minutes (depends on number of projects)

• Final write up and Software/Hardware turned in: Day of final (TBD)

Projects: Target Timeline

Page 9: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

9 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Project Grading Breakdown

• 50% Final Project Demo• 30% Final Project Report

– 30% of your project report grade will come from your 5-6 project updates. Friday’s midnight

• 20% Final Project Presentation

Page 10: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

10 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Common Questions

Page 11: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

11 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Common Questions

Page 12: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

12 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Common Questions

Page 13: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

13 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Common System Architectures• Plus/Delta mid-semester feedback

Overview

Page 14: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

14 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Introduction to common System Architectures

What you should learn

Page 15: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

15 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Design patterns (previous lecture)– Why are they useful?– Examples

• Compute models (Abstraction)– Why are they useful?– Examples

• System Architectures (Implementation)– Why are they useful?– Examples

Outline

Page 16: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

16 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Design patterns (previous lecture)– Why are they useful?– Examples

• Compute models (Abstraction)– Why are they useful?– Examples

• System Architectures (Implementation)– Why are they useful?– Examples

Outline

Page 17: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

17 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

References

• Reconfigurable Computing (2008) [1]– Chapter 5: Compute Models and System

Architectures• Scott Hauck, Andre DeHon

Page 18: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

18 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Compute Models: Help express the parallelism of an application

• System Architecture: How to organize application implementation

System Architectures

Page 19: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

19 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Compute model and system architecture should work together

• Both are a function of– The nature of the application

• Required resources• Required performance

– The nature of the target platform• Resources available

Efficient Application Implementation

Page 20: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

20 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Page 21: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

21 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Compute Model

System Architecture

Page 22: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

22 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Compute Model

System Architecture

Page 23: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

23 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Data FlowCompute Model

System ArchitectureStreaming Data Flow

Page 24: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

24 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Data FlowCompute Model

System ArchitectureStreaming Data Flow

Page 25: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

25 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Compute Model

System Architecture

Page 26: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

26 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Compute Model

System Architecture

Data Parallel

Vector

Page 27: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

27 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Data FlowCompute Model

System ArchitectureStreaming Data Flow

Page 28: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

28 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Data FlowCompute Model

System ArchitectureStreaming Data Flow

Page 29: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

29 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Efficient Application Implementation

Application(Image Processing)

Platform 1(Vector Processor)

Platform 2(FPGA)

Data FlowCompute Model

System ArchitectureStreaming Data Flow

X X

+

Page 30: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

30 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Data presence– variable length connections between operators– data rates vary between operator implementations– data rates varying between operators

• Datapath sharing– not enough spatial resources to host entire graph– balanced use of resources (e.g. operators)– cyclic dependencies impacting efficiency

• Interconnect sharing– Interconnects are becoming difficult to route– Links between operators infrequently used– High variability in operator data rates

• Streaming coprocessor– Extreme resource constraints

Implementing Streaming Dataflow

Page 31: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

31 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Presence

X X

+

Page 32: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

32 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Presence

X X

+

data_readydata_ready

data_ready

Page 33: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

33 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Presence

X X

+

data_readydata_readyFIFO FIFO

FIFO data_ready

Page 34: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

34 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Presence

X X

+

data_readydata_readyFIFO FIFO

FIFO data_readystall

stall stall

Page 35: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

35 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Presence

X X

+

data_readydata_readyFIFO FIFO

FIFO data_readystall

stall stall

Flow control: Term typical used in networking

Page 36: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

36 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Presence

X X

+

data_readydata_readyFIFO FIFO

FIFO data_readystall

stall stall

Flow control: Term typical used in networking

Increase flexibility of how application can be implemented

Page 37: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

37 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Data presence– variable length connections between operators– data rates vary between operator implementations– data rates varying between operators

• Datapath sharing– not enough spatial resources to host entire graph– balanced use of resources (e.g. operators)– cyclic dependencies impacting efficiency

• Interconnect sharing– Interconnects are becoming difficult to route– Links between operators infrequently used– High variability in operator data rates

• Streaming coprocessor– Extreme resource constraints

Implementing Streaming Dataflow

Page 38: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

38 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Datapath Sharing

X X

+

Page 39: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

39 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Datapath Sharing

X X

+

Platform may only have one multiplier

Page 40: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

40 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Datapath Sharing

X

+

Platform may only have one multiplier

Page 41: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

41 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Datapath Sharing

X

+

Platform may only have one multiplier

REG

REG

Page 42: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

42 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Datapath Sharing

X

+

Platform may only have one multiplier

REG

REG

FSM

Page 43: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

43 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Datapath Sharing

X

+

Platform may only have one multiplier

REG

REG

FSM

Important to keep track of were data is coming!!

Page 44: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

44 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Data presence– variable length connections between operators– data rates vary between operator implementations– data rates varying between operators

• Datapath sharing– not enough spatial resources to host entire graph– balanced use of resources (e.g. operators)– cyclic dependencies impacting efficiency

• Interconnect sharing– Interconnects are becoming difficult to route– Links between operators infrequently used– High variability in operator data rates

• Streaming coprocessor– Extreme resource constraints

Implementing Streaming Dataflow

Page 45: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

45 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Interconnect sharing

X X

+

Page 46: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

46 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Interconnect sharing

X X

+

Need more efficient use of interconnect

Page 47: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

47 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Interconnect sharing

X X

+

Need more efficient use of interconnect

Page 48: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

48 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Interconnect sharing

X X

+

Need more efficient use of interconnect

FSM

Page 49: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

49 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Data presence– variable length connections between operators– data rates vary between operator implementations– data rates varying between operators

• Datapath sharing– not enough spatial resources to host entire graph– balanced use of resources (e.g. operators)– cyclic dependencies impacting efficiency

• Interconnect sharing– Interconnects are becoming difficult to route– Links between operators infrequently used– High variability in operator data rates

• Streaming coprocessor– Extreme resource constraints

Implementing Streaming Dataflow

Page 50: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

50 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• See SCORE chapter 9 of text for an example.

Streaming coprocessor

Page 51: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

51 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Typically thought of in the context of sequential programming on a processor (e.g. C, Java programming)

• Key to organizing synchronizing and control over highly parallel operations– Time multiplexing resources: when task to too large for

computing fabric– Increasing data path utilization

Sequential Control

Page 52: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

52 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Sequential Control

X

X X

++

A X B C

Page 53: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

53 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Sequential Control

X

X X

++

A X B C

A*x2 + B*x + C

Page 54: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

54 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Sequential Control

X

X X

++

A X B C

A*x2 + B*x + C

X

+

A XBC

A*x2 + B*x + C

Page 55: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

55 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Finite State Machine with Datapath (FSMD)

A*x2 + B*x + C

X

+

A XBC

Page 56: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

56 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Finite State Machine with Datapath (FSMD)

A*x2 + B*x + C

X

+

A XBC

FSM

Page 57: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

57 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Finite State Machine with Datapath (FSMD)

• Very Long Instruction Word (VLIW) data path control

• Processor

• Instruction augmentation

• Phased reconfiguration manager

• Worker farm

Sequential Control: Types

Page 58: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

58 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• See 5.2 of text for this architecture

Very Long Instruction Word (VLIW) Datapath Control

Page 59: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

59 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Processor

Page 60: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

60 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Instruction Augmentation

Page 61: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

61 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Will see more detail with SCORE architecture from chapter 9 of text.

Phased Configuration Manager

Page 62: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

62 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Chapter 5.2 of text

Worker Farm

Page 63: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

63 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• See chapter 5.2 for more detail

Bulk Synchronous Parallelism

Page 64: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

64 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

• Single Program Multiple Data

• Single Instruction Multiple Data (SIMD)

• Vector

• Vector Coprocessor

Data Parallel

Page 65: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

65 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Parallel

Page 66: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

66 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Parallel

Page 67: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

67 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Parallel

Page 68: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

68 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Data Parallel

Page 69: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

69 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Cellular Automata

Page 70: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

70 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Multi-threaded

Page 71: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

71 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Next Lecture

Page 72: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

72 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Questions/Comments/Concerns

• Write down– Main point of lecture

– One thing that’s still not quite clear

– If everything is clear, then give an example of how to apply something from lecture

OR

Page 73: 1 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 13: Fri 10/8/2010

73 - CPRE 583 (Reconfigurable Computing): System Architectures Iowa State University (Ames)

Lecture Notes• Add CSP/Mulithread as root of a simple tree• 15+5(late start) minutes of time left• Think of one to two in class exercise (10 min)

– Data Flow graph optimization algorithm?– Dead lock detection on a small model?

• Give some examples of where a given compute model would map to a given application.– Systolic array (implement) or Dataflow compute

model)– String matching (FSM) (MISD)

• New image for MP3, too dark of a color