Sorter

59
Sorter 1. Discuss in full detail the flow- diagram of a sorter 2. Derive the pipelined circuit from this diagram 3. Derive combinational butterfly circuit from this diagram 4. Derive Ping-Pong architecture with a controller and data Path from this diagram. 5. Discuss other applications of the flow-diagram idea.

description

Sorter. Discuss in full detail the flow-diagram of a sorter Derive the pipelined circuit from this diagram Derive combinational butterfly circuit from this diagram Derive Ping-Pong architecture with a controller and data Path from this diagram. - PowerPoint PPT Presentation

Transcript of Sorter

Sorter

1. Discuss in full detail the flow-diagram of a sorter

2. Derive the pipelined circuit from this diagram

3. Derive combinational butterfly circuit from this diagram

4. Derive Ping-Pong architecture with a controller and data Path from this diagram.

5. Discuss other applications of the flow-diagram idea.

Data Flow for a sorter

• We can derive butterfly pipeline from this diagram

• We can derive combinational butterfly from this diagram.

• There are many circuits that use MIN/MAX 2*2 sorter as a component of larger architectures.

ProgrammingProgramming

• SA --- Systolic Array

• SIMD --- Single Instruction Multiple Data

• ISA --- Instruction Systolic Array

• MIMD --- Multiple Instruction Multiple Data

We will compare on examples the systolic merge architecture and the ISA merge architecture

parallel mergeparallel merge

initial situation:

1.) sort columns

(odd-even-transposition sort)

2.) sort rows

(odd-even-transposition sort)

sorted !!!!

x1 x2 x3 x4 x5 x6

x7

x17 x18

y1 y2 y3 y4 y5 y6

y7

y17 y18

...

...

...

...

0-1 principle0-1 principle

• The 0-1 principle states that if all sequences of 0 and 1 are sorted properly than this is a correct sorter.

• The sorter must be based on moving data.

initially

0s

0s

1s

after verticalsort

0s

1s

after horizontalsort

0s

1s

MIMD-mesh (clocked)MIMD-mesh (clocked)

min max Time: 2n

systolic mergesystolic merge

1 3 3 45 5 6 79 8 8 74 4 3 2

systolic mergesystolic merge

1 3 3 45 5 6 79 8 8 74 4 3 2

systolic mergesystolic merge

1 3 3 45 5 6 79 8 8 74 4 3 2

systolic mergesystolic merge

1 3 3 45 5 6 79 8 8 74 4 3 2

systolic mergesystolic merge

1 3 3 45 5 6 79 8 8 74 4 3 2

1 3 3 45 5 6 74 4 3 29 8 8 7

systolic mergesystolic merge

1 3 3 45 5 6 74 4 3 29 8 8 7

systolic mergesystolic merge

1 3 3 44 4 3 25 5 6 79 8 8 7

systolic mergesystolic merge

1 3 3 44 4 3 25 5 6 79 8 8 7

systolic mergesystolic merge

1 3 3 24 4 3 45 5 6 79 8 8 7

systolic mergesystolic merge

1 3 3 24 4 3 45 5 6 79 8 8 7

systolic mergesystolic merge

1 3 3 24 4 3 45 5 6 79 8 8 7

systolic mergesystolic merge

1 3 2 34 3 4 45 5 6 79 8 8 7

1 3 2 34 3 4 45 5 6 79 8 8 7

systolic mergesystolic merge

1 2 3 33 4 4 45 5 6 79 8 8 7

systolic mergesystolic merge

1 2 3 33 4 4 45 5 6 79 8 8 7

systolic mergesystolic merge

1 2 3 33 4 4 45 5 6 79 8 8 7

systolic mergesystolic merge

1 2 3 33 4 4 45 5 6 78 9 7 8

systolic mergesystolic merge

1 2 3 33 4 4 45 5 6 78 9 7 8

systolic mergesystolic merge

1 2 3 33 4 4 45 5 6 78 7 9 8

systolic mergesystolic merge

systolic mergesystolic merge1 2 3 33 4 4 45 5 6 78 7 9 8

• sorted !!!

systolic mergesystolic merge1 2 3 33 4 4 45 5 6 77 8 8 9

ISA mergeISA merge

1 3 3 45 5 6 79 8 8 74 4 3 2

C:=min{C, CE}

C:=max{C, CW}

Array to be sorted

ISA mergeISA merge

1 3 3 45 5 6 79 8 8 74 4 3 2

ISA mergeISA merge

1 3 3 45 5 6 79 8 8 74 4 3 2

ISA mergeISA merge

1 3 3 45 5 6 79 8 8 74 4 3 2

ISA mergeISA merge

1 3 3 45 5 6 79 8 8 74 4 3 2

ISA mergeISA merge

1 3 3 45 5 6 74 8 8 79 4 3 2

ISA mergeISA merge

1 3 3 45 5 6 74 8 8 79 4 3 2

ISA mergeISA merge

1 3 3 44 5 6 75 4 8 79 8 3 2

ISA mergeISA merge

1 3 3 44 5 6 75 4 8 79 8 3 2

ISA mergeISA merge

1 3 3 44 4 6 75 5 3 79 8 8 2

ISA mergeISA merge

1 3 3 44 4 6 75 5 3 79 8 8 2

ISA mergeISA merge

1 3 3 44 4 3 75 5 6 29 8 8 7

ISA mergeISA merge

1 3 3 44 4 3 75 5 6 29 8 8 7

ISA mergeISA merge

1 3 3 44 4 3 25 5 6 79 8 8 7

ISA mergeISA merge

1 3 3 44 4 3 25 5 6 79 8 8 7

ISA mergeISA merge

1 3 3 24 4 3 45 5 6 79 8 8 7

ISA mergeISA merge

1 3 3 24 4 3 45 5 6 79 8 8 7

ISA mergeISA merge

1 3 2 34 3 4 45 5 6 79 8 8 7

ISA mergeISA merge

1 3 2 34 3 4 45 5 6 79 8 8 7

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 79 8 8 7

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 79 8 8 7

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 79 8 8 7

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 78 9 7 8

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 78 9 7 8

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 78 7 9 8

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 78 7 9 8

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 77 8 8 9

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 77 8 8 9

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 77 8 8 9

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 77 8 8 9

ISA mergeISA merge

1 2 3 33 4 4 45 5 6 77 8 8 9