jongsok choi m.a.sc candidate, university of toronto

53
Jongsok Choi M.A.Sc Candidate, University of Toronto

Upload: dennis-sandborn

Post on 29-Mar-2015

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Jongsok Choi M.A.Sc Candidate, University of Toronto

Jongsok Choi M.A.Sc Candidate, University of

Toronto

Page 2: Jongsok Choi M.A.Sc Candidate, University of Toronto

Overview

TSMC 0.35 um technology Cadence tools Less than 2mm X 2mm die

area Design time = 1 month

Tile based approach Each tile contains a Logic Block,

2 Connections Blocks and a Switch

Box

Pass transistor approach

2

Page 3: Jongsok Choi M.A.Sc Candidate, University of Toronto

References

Architecture and CAD for Deep-Submicron FPGAs

3

Page 4: Jongsok Choi M.A.Sc Candidate, University of Toronto

Presentation Outline Schematics

Base Cells – Pass transistor, SRAM, Multiplexer Logic Block – LUT, Set/Reset Logic, D-flipflop Connection Box – Right, Bottom Switch Box Tile 2X2 Programming Circuitry – Row, Column FPGA 4X4 – Programming a multiplier FPGA 32X16 – full schematic

Layouts Base Cells – SRAM, Multiplexer, Pull-up Buffer Logic Block – LUT, Set/Reset Logic, D-flipflop Connection Box – Right, Bottom Programming Circuitry – Row, Column Tile – Single tile, Tile 2X2 FPGA 4X4 – Post-layout simulation of programmed multiplier FPGA 32X16 – floor plan, full layout Clock tree – H-tree implemented Complete layout with Padframe DRC, LVS Results Employed layout techniques and Conclusions

Page 5: Jongsok Choi M.A.Sc Candidate, University of Toronto

Schematics

5

Page 6: Jongsok Choi M.A.Sc Candidate, University of Toronto

Base Cells

Schematic Simulation

o Pass transistor

6

Highlighted red boxes in the top right hand corner indicate where this cell is used (e.g. Pass transistor is used in the logic element, connection boxes 1 and 2, and the switch block)

Page 7: Jongsok Choi M.A.Sc Candidate, University of Toronto

Base Cells

Schematic Simulation

o SRAM cell : to program the FPGA with the required functionality

7

Page 8: Jongsok Choi M.A.Sc Candidate, University of Toronto

Base Cells

Schematic: Simulation

o 2-to-1 Multiplexer

8

Page 9: Jongsok Choi M.A.Sc Candidate, University of Toronto

Base Cells

Schematic

Simulation

Sel2/Sel1 out

11 IN_1

10 IN_2

01 IN_3

00 IN_4

o 4-to-1 Multiplexer: to choose between the four SRAM bits in the LUT

9

Page 10: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block

Top-level Schematic

10

Page 11: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block - LUT Schematic

Simulation

11

Page 12: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block – Set/Reset Logic Schematic:

Simulation When Sram 1, 2 set to ‘1’ => Set= 1 When Sram 1, 2 set to ‘0’ => Reset= 1

12

Page 13: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block – D-Flip Flop

Simulation

Schematic

13

Page 14: Jongsok Choi M.A.Sc Candidate, University of Toronto

Connection Box -Right

Schematic

Simulation Track2 selected when

SRAM set to ‘0’ Track1 selected when

SRAM set to ‘1’

o Functionality: Connect vertical tracks to logic element

14

Page 15: Jongsok Choi M.A.Sc Candidate, University of Toronto

Connection Box -Bottom Top Level Schematic

Output from CB to Tracks Input to CB from

Tracks

15

Page 16: Jongsok Choi M.A.Sc Candidate, University of Toronto

Switch Box

Schematic

16

Page 17: Jongsok Choi M.A.Sc Candidate, University of Toronto

TILE 2x2

V1 V2 V3 V4

H1 H2

H3 H4

Schematic:Each tile has different connections at the switch box Segmented and staggered routing structure for FPGASegment Length of 2

17

Page 18: Jongsok Choi M.A.Sc Candidate, University of Toronto

Programming Circuitry – Programming Column

Schematic

Simulation

18

Page 19: Jongsok Choi M.A.Sc Candidate, University of Toronto

Schematic

Simulation

Programming Circuitry – Programming Row

19

Page 20: Jongsok Choi M.A.Sc Candidate, University of Toronto

FPGA 4x4

Schematic

20

Page 21: Jongsok Choi M.A.Sc Candidate, University of Toronto

FPGA Mapping and Programming bits for a 2 by 2 MultiplierTable shows manually created

bitstream to program the multiplier using 4X4 tiles with programming circuits

21

FPGA 4x4

Page 22: Jongsok Choi M.A.Sc Candidate, University of Toronto

FPGA 4x4

0 1 2 3

0 1 2 30 1 2 3 0 1 2 30 1 2 3

0 1 2 3 0 2 4 6 0 3 6 9

Input 1

Input 2

Bit[3]

Simulation 2 by 2 Multiplier correctly implemented Shows correct output for all possible

inputs

Bit[2]

Bit[1]

Bit[0] Numbers shows total output

22

Page 23: Jongsok Choi M.A.Sc Candidate, University of Toronto

FPGA 32x16 – Full Schematic

23

Page 24: Jongsok Choi M.A.Sc Candidate, University of Toronto

Layouts

24

Page 25: Jongsok Choi M.A.Sc Candidate, University of Toronto

Base Cells

Schematic Layout

25

o SRAM cell : to program the FPGA with the required functionality

Page 26: Jongsok Choi M.A.Sc Candidate, University of Toronto

Base Cells

Schematic Layout

Sel2/Sel1 out

11 IN_1

10 IN_2

01 IN_3

00 IN_4 26

o 4-to-1 Multiplexer: to choose between the four SRAM bits in the LUT

Page 27: Jongsok Choi M.A.Sc Candidate, University of Toronto

Base Cells

Layout

27

o Pull-up buffer: used to pull the degraded signal back up to VDD

Page 28: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block

28

Top-level Schematic

Page 29: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block - LUT

Layout

29

Schematic

Layout

Page 30: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block – Set/Reset Logic Schematic

Layout

30

Page 31: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block – D-flipflop

Layout

31

Schematic

Page 32: Jongsok Choi M.A.Sc Candidate, University of Toronto

Logic Block

LUT Set/Reset Buffer_inverter for clock

Pullup Buffer

D-flipflop

32

Layout

Page 33: Jongsok Choi M.A.Sc Candidate, University of Toronto

Connection Box -Right

33

Layout

Schematic

Page 34: Jongsok Choi M.A.Sc Candidate, University of Toronto

Connection Box - Bottom

34

Top-level Schematic

Output from Connection box to Tracks

Page 35: Jongsok Choi M.A.Sc Candidate, University of Toronto

Programming Circuitry – Programming Column

35

Layout Schematic

Page 36: Jongsok Choi M.A.Sc Candidate, University of Toronto

36

Programming Circuitry – Programming Column

Page 37: Jongsok Choi M.A.Sc Candidate, University of Toronto

37

Programming Circuitry – Programming Row

Layout

Schematic

Page 38: Jongsok Choi M.A.Sc Candidate, University of Toronto

38

Programming Circuitry – Programming Row

Page 39: Jongsok Choi M.A.Sc Candidate, University of Toronto

Tile

39

Schematic

Page 40: Jongsok Choi M.A.Sc Candidate, University of Toronto

Tile -Layout

40

Logic Element

Right Connection Box

Bottom Connection Box Switch Box

Page 41: Jongsok Choi M.A.Sc Candidate, University of Toronto

TILE 2x2 - Layout

41

Page 42: Jongsok Choi M.A.Sc Candidate, University of Toronto

FPGA 4x4 - Layout

42

Page 43: Jongsok Choi M.A.Sc Candidate, University of Toronto

43

FPGA Mapping and Programming bits for a 2 by 2 Multiplier Table shows manually created

bitstream to program the multiplier using 4X4 tiles with programming circuits

FPGA 4x4 - Post Layout Simulation

Page 44: Jongsok Choi M.A.Sc Candidate, University of Toronto

FPGA 4x4 – Post-Layout Simulation

0 1 2 3

0 1 2 30 1 2 3 0 1 2 30 1 2 3

0 1 2 3 0 2 4 6 0 3 6 9

Input 1

Input 2

44

Bit[3]

Bit[2]

Bit[1]

Bit[0]Numbers shows

total output

Post-Layout Simulation 2 by 2 Multiplier correctly implemented Shows correct output for all possible inputs Matches schematic simulations

Page 45: Jongsok Choi M.A.Sc Candidate, University of Toronto

32x16 Tiles FPGA Floorplan

Program

ming R

ow

4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile

Programming Column

4x4 Tile4x4 Tile

4x4 Tile4x4 Tile

1.52

5 m

m

4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile4x4 Tile

4x4 Tile4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile4x4 Tile

4x4 Tile4x4 Tile

1.52

5 m

m

4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile

4x4 Tile4x4 Tile

4x4 Tile4x4 Tile

1.25 mm

1.525 mm

45

Page 46: Jongsok Choi M.A.Sc Candidate, University of Toronto

FPGA 32x16 - Layout

46

Page 47: Jongsok Choi M.A.Sc Candidate, University of Toronto

Clock Tree

47

H-tree structurePerfectly symmetrical in every direction to reduce

clock skew

Page 48: Jongsok Choi M.A.Sc Candidate, University of Toronto

Complete layout with Padframe

48

Page 49: Jongsok Choi M.A.Sc Candidate, University of Toronto

49

DRC - Passed

Page 50: Jongsok Choi M.A.Sc Candidate, University of Toronto

50

LVS - Passed

Page 51: Jongsok Choi M.A.Sc Candidate, University of Toronto

Layout Techniques Employed

51

General TechniquesCell pitch of 6um used, layouts optimized for area to

match pitch sizeShared Sources/Drains when possible to minimize areaShared VDD and ground rails between rows

Hierarchical LayoutBigger cells composed of multiple smaller cells Orthogonal metal routing using M3, M4, Local routing

using M1, M2Blocks made to abut well

Wider tracks for power rails to provide enough power Wider horizontal tracks, vertical tracks, and clock tree

for increase drive strength

Page 52: Jongsok Choi M.A.Sc Candidate, University of Toronto

Conclusions

52

Designed a fully functional FPGA Can Implement up to 512 gatesConsists of 8,704 SRAMs148,448 transistors without padframe

Page 53: Jongsok Choi M.A.Sc Candidate, University of Toronto

Questions

53