EECE579 Digital Flow

30
EECE579: Digital Design Flows Usman Ahmed Dept. of ECE University of British Columbia

Transcript of EECE579 Digital Flow

Page 1: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 1/30

EECE579: Digital Design Flows

Usman AhmedDept. of ECE

University of British Columbia

Page 2: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 2/30

Implementing Digital Circuits

Custom 

Standard Cells Compiled Cells  Macro Cells 

Cell-based 

Gate ArraysStructured ASICs  FPGA's 

 Array-based 

Semicustom 

Digital Circuit Implementation Approaches 

Page 3: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 3/30

Implementing Logic Circuits

HDL

Logic Synthesis

Floorplanning

Placement

Routing

Tape-out

Circuit Extraction

Pre-LayoutSimulation

Post-LayoutSimulation

Structural

Physical

BehavioralDesign Capture

   D  e  s   i  g  n   I   t

  e  r  a   t   i  o  n

Page 4: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 4/30

Standard Cell Design

• Library of cells thatimplement differentgates

• Cells can have differentwidth but all cells havesame height

(hence Standard Cells)

• Many variants of thesame cell

Page 5: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 5/30

Standard Cell Design

• Logic SynthesisTransform the HDLdescription into librarycells

• Placement

Where to place a cell ?

• Routing

Connect the placed cells.

Page 6: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 6/30

Standard Cell Design

Optimizations:• Gate Resizing

• Buffer Insertion

• In-place Re-synthesis

Page 7: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 7/30

Standard Cell Design: An Example

Page 8: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 8/30

Standard Cell Design

• Routing channel canbe narrowed if moreinterconnect layersare available

Page 9: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 9/30

Standard Cell Design: NewGeneration

• Cell-structure hidden under 

interconnect layers

Page 10: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 10/30

Standard Cell Design: Summary

• Used only for the high-speed or low-power applications

• Very expensive, andtime consuming

• (> $2M just for the maskcosts)

• Very high re-spin cost

Page 11: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 11/30

FPGAs

• FPGA: Field-Programmable Gate Array

CircuitDescription

Expensive

Chip

Manufacturing

Gate

Array

Page 12: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 12/30

What’s Inside an FPGA? 

•  

Logic Blocks

- used to implement

logic

- lookup tables and

flip-flops

 Altera: LABs

Xilinx: CLBs

Page 13: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 13/30

What’s Inside an FPGA? 

•  

I/O Blocks

- interface off-chip- can usually support

many I/O Standards

Page 14: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 14/30

What’s Inside an FPGA? 

•  

Connection

Block

Logic Block

Switch Block

Routing Track

(Horizontal)

Routing Channel(Vertical)                {

TILE

Page 15: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 15/30

Basic Logic Gate: Lookup-Table

Function of each lookup table can be configured byshifting in bit-stream.

Logic Block:

•  InputsB i   t  - S 

 t  r  e am 

Page 16: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 16/30

Logic Clusters

•  D Q

D Q

D Q

   L  o

  c  a   l    I  n   t  e  r  c  o  n  n  e  c   t

Several lookup tables aregrouped into “clusters” 

- Typically 8 to 10 lookup

tables per cluster 

Connections between lookuptables in the same cluster arefast

Connections between lookuptables in different clusters areslow

Page 17: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 17/30

What’s Inside an FPGA? 

•  

Connection

Block

Logic Block

Switch Block

Routing Track

(Horizontal)

Routing Channel(Vertical)                {

Page 18: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 18/30

Reconfigurable Logic:

Connect LogicBlocks usingFixed MetalTracks andProgrammableSwitches

Page 19: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 19/30

Reconfigurable Logic:

Connect LogicBlocks usingFixed MetalTracks andProgrammableSwitches

Page 20: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 20/30

Implementing Systems in an FPGA

High-speed I/O

Embedded PowerPC

Embedded memories

Hardwired multipliers

FPGA Fabric

Xilin x Vertex-II Pro 

Page 21: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 21/30

Advantages of FPGAs: • "Instant Manufacturability": reduces time to market

• Cheaper for small volumes because you don’t need to pay for fabrication

• means you don’t need to be a big company to make a chip 

• Relaxes Designers -> relaxed designers live longer!

Disadvantages of FPGAs: • Slower than custom or standard cell based chips

• Cannot get as much circuitry on a single chip

• Today: ~ 1M gates is the best you can do

~ 200 MHz is about as fast as you can get

• For large volumes, it can be more expensive than gate arrays andcustom chips

Page 22: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 22/30

Structured ASICs

• Combines good features of FPGAs andStandard Cell ASICs

 All the layers are customized for a circuit

- Standard Cell ASIC

Some layers are generalized while a few

layers are customized for a circuit

- Structured ASIC

 All the layers are generalized for any circuit

- FPGA

Interconnect

Layers

Transistors

Page 23: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 23/30

Logic Blocks

• Choices – Fine Grained

• Basic gates: NAND, NOR, XOR, FF etc.

 – Medium Grained

• Lookup Tables – Coarse Grained

• Multi-input, Multi-output blocks (e.g., PLAs)

• Configurability

 – SRAM cells – Vias

• Lower Level (e.g., between M1 and M2)

• Upper Level (Via stacks brought up to the configurablelayers)

Page 24: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 24/30

Routing Fabrics

• Metal and Via Programmable

 – More flexibility, more efficiency

 – Employed in most structured ASIC offerings

• Via Programmable

 – Regular, easy to manufacture

 – Metal is fixed and every segment may not be

fully utilizable,→ Can be Inefficient 

Page 25: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 25/30

Design Flows

Page 26: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 26/30

Design Flows

Page 27: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 27/30

Design Flows

Page 28: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 28/30

Design Flows

Page 29: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 29/30

Design Flows

Page 30: EECE579 Digital Flow

7/30/2019 EECE579 Digital Flow

http://slidepdf.com/reader/full/eece579-digital-flow 30/30

Implementing Logic Circuits

HDL

Logic Synthesis

Floorplanning

Placement

Routing

Tape-out

Circuit Extraction

Pre-LayoutSimulation

Post-LayoutSimulation

Structural

Physical

BehavioralDesign Capture

   D  e  s   i  g  n   I   t  e  r  a   t   i  o  n