Physical Design

April 20, 2017 | Author: dtatdta | Category: N/A
Share Embed Donate


Short Description

Download Physical Design...

Description

IL2200 ASIC Design

Muhammad Ali Shami Physical Design

Lecture Outline        

Physical Implementation Styles ASIC Design Flow Floor and Power planning Placement Clock Tree Synthesis Routing Timing Analysis Verification and Energy Calculation

22 November, 2010

IL2200 , ASIC Design

Slide 2

Physical Implementation Styles Semi Custom ASICs/FPGAs

Cell Based

Standard Cells

Macro Cells

AMD Newer Intel

Full Custom Older Intel

Array Based

Pre Diffused Gate Arrays

Pre Wired FPGAs

Structured ASICs ! Coarse Grain Reconfigurable Architecture

Standard Cell Layout

r o u ti n g a r e a

Cells are of same height but different width. The layout is organised as rows of cells seperated by channels used for routing. The routing channels are not fixed in their height. This is dependent on the routing density in it. This is one important reason why standard cell layout is more flexible compared to array based designs where the routing channels have a fixed capacity. Cells in the same row or adjacent rows can be connected by running wires through the adjacent channel. To connect cells in non-adjacent rows, vertical routing space on the sides is used or special feed through cells are instantiated as shown in It is possible that in some rows, some space may be left unused, as either no cell would fit there or routing considerations dictate placing cells elsewhere. Cells may have the same height but can differ in complexity from simple gates to cells as complex as full adders. Complex cells use the width to spread out the necessary logic. As the logic can be spread out only horizontally, the interconnection delay is typically larger compared to cells design without the fixed height constraint. As the same std. cell is supposed to work correctly in a variety of circuit conditions, the transistors are typically larger than in a custom layout. Some libraries may provide two varieties: low and high power. Technology mapping tools will select one based on estimation.c e l ls Rat’s nest are a good way to judge wire congestion and long nets. f e e d th r o u g h c e ll

r o u ti n g a re a w a s te d sp a ce

Standard Cell Height

Standard Cells

VDD Bus P-Type Transistor Diff Spacing N-Type Transistor VSS Bus

2-input AND

22 November, 2010

IL2200 , ASIC Design

4-input AND

Slide 5

Design Flow

Design Specification RTL Development

VHDL Code

Functional Verification Simulation

No

Logical Design Thing you already learned in IL2204 learned in IL2200 till now

Synthesis Yes

Gate Level Net list

22 November, 2010

IL2200 , ASIC Design

Slide 6

Physical Design 

Converting gate-level netlist to physical layout

22 November, 2010

IL2200 , ASIC Design

Slide 7

Physical Design Flow Synthesis Gate Level Net list

Floor and Power Planning Floor Planning

Placement CTS Routing

Routing

Physical Design Thing to Learn in this lecture

STA Post Route Verification Verification

Sign Off

22 November, 2010

IL2200 , ASIC Design

Slide 8

Before Physical Design….. 





You must have synthesized gate level netlist. Please verify that this netlist is working properly by doing gate level simulation in NCSim/ModelSim Also Generate Standard delay constraint file .sdc.

22 November, 2010

IL2200 , ASIC Design

Slide 9

SoC Encounter 

We use Cadence SoC Encounter 8.1 for Layout.

10

Design Import 

Before starting the Physical Design We first have to import the design and associated libraries  

 



.LEF File  Contains layer, via and macro definition .LIB File (.TLF)  This file has timing information e.g delay and capacitance Verilog Netlist  Netlist file generated by Synthesis Tool .SDC File (Synopsys Design Constraints Format)  Constraint file generated by synthesis tool .DEF File  Design exchange format to output the design so it is readable by other modules.

22 November, 2010

IL2200 , ASIC Design

Slide 11

Design Import 

Design Import Design Veriglog Netlist File Toplevel of the design .Lib .TLF Files .LEF File .SDC File

22 November, 2010

IL2200 , ASIC Design

Slide 12

Design Import 

Advance  Power

22 November, 2010

IL2200 , ASIC Design

Slide 13

Floor Planning 



Results in Efficient Design Implementation Two styles of Implementation 

Flat 





Small to Medium ASIC Better Area Usage Since no reserve space around each sub-design for power/ground

Hierarchical   

For very large design When sub-systems are design individually Possible only if a design hierarchy exist.

22 November, 2010

IL2200 , ASIC Design

Slide 14

#/* Translate to target independent structure (GTECH) */ analyze -format vhdl -lib WORK {"./SOURCE/mics.vhd"} analyze -format vhdl -lib WORK {"./SOURCE/SRAM.vhd"} …………………………………………………………………….. elaborate FIR_Toplevel -lib WORK -update -param "width = 4" -param "filter_taps=5" ungroup –all Link uniquify set_wire_load_mode segmented set_wire_load_model -name "TSMC8K_Lowk_Conservative" #T=-40, V=1.1 set_units -time ns -resistance kOhm -capacitance pF -voltage V -current mA set_operating_conditions LTCOM #/* Specify clock constraint */ create_clock clk -period 4 set_false_path -from rst_n compile -map_effort medium -boundary_optimization write -hierarchy -format verilog -output /home/ali/ASICLABS/LAB2/LAB2_FIRToplevel.v write_sdc /home/ali/ASICLABS/LAB2/MAPPED/constraints.sdc 22 November, 2010

IL2200 , ASIC Design

Slide 15

Floor Planning  



Automatic Floor Planning Seed Selection:  USB controllers  PCI controllers  Hierarchical modules Automatic Floorplan Synthesis analyzes the data flow between seeds (design blocks) based on their connectivity and their location

22 November, 2010

IL2200 , ASIC Design

Slide 16

Floor Planning 

Relative Floor Planning 

Capture and define the placement relationship of floorplan objects independently from the actual coordinates in a floorplan 



flexible way to place objects, such as modules, blocks, groups, blockages, pin guides, pre-routed wires, and power domains

I/O pins can be used as reference objects but they cannot be relative objects

22 November, 2010

IL2200 , ASIC Design

Slide 17

Floor Planning Orientation Keys for Relative Floor Planning

22 November, 2010

IL2200 , ASIC Design

Slide 18

Floor Planning

Pre-route example: S1 and S2 are relative to the object I2 and the Core_Boundary

22 November, 2010

IL2200 , ASIC Design

Slide 19

Floor Planning

Manually Floor Planed DRRA Fabric

22 November, 2010

IL2200 , ASIC Design

Slide 20

Floor Planning 

Aspect Ratio 



Core Utilization 



Area of Stand. Cell/Area of Core

Core to IO Boundary 



Height/Width

Distance from IO Boundary

Core to Die Boundary 

Distance from Die Boundary

22 November, 2010

IL2200 , ASIC Design

Slide 21

Floor Planning 

Adjustable Routing Channel Width 0um every row

22 November, 2010

10um every second row

IL2200 , ASIC Design

10um every row

Slide 22

Floor Planning 

Cutting with Rectilinear Tool

Move Tool

22 November, 2010

Rectilinear Tool

Blockage tools

IL2200 , ASIC Design

Clusters

Slide 23

Partitioning  

Part of Floor Planning Standard Cells are in Floating States before placement.  

Have not been assigned a fixed location in Core Time to define clusters and regions 



Soft Regions 



To keep time critical component close

Boundary can change during standard cell placement

Hard Regions 

Prevent Standard cell crossing boundaries

22 November, 2010

IL2200 , ASIC Design

Slide 24

Partitioning 

Exclusive Regions 



Allow standard cells assigned to the region to be placed within the region

Non Exclusive Regions 

Allow standard cells that do not belong to the region to be placed within the region

22 November, 2010

IL2200 , ASIC Design

Slide 25

Power Planning 



Deal with Power Distribution Network Three levels of Power Distribution 

Rings 



Stripes 



Carries VDD and VSS around the chip Carries VDD and VSS from Rings across the chip

Rails 

Connect VDD and VSS to the standard cell VDD and VSS

22 November, 2010

IL2200 , ASIC Design

Slide 26

Power Planning Rings

Stripes (vertical or horizontal) VDD VSS Rails Special Route

Power Distribution Network 22 November, 2010

IL2200 , ASIC Design

Slide 27

Power Planning 

Add Rings, Stripes & do a special route (SROUTE)

28

Power Distribution network Example

Power Distribution Network in DRRA

22 November, 2010

IL2200 , ASIC Design

Slide 29

Placement 



Global Placement algorithm are partitioned based Two Associated Cost functions 



Reduce Total wiring or routing length Distribute standard cell instances homogeneously in ASIC Core such that optimal equilibrium among vertical and horizontal routing is achieved

22 November, 2010

IL2200 , ASIC Design

Slide 30

Detailed Placement 

After global placement 



Congestion Driven Placement 



To distance standard cell instances from each other such that more routing tracks are created between them

Timing Driven Placement 



To Refine placement based on congestion, timing and power

To optimize large sets of path delays

Net Based 

Try to control the delay on signal path by imposing an upper bound delay or weight to net

22 November, 2010

IL2200 , ASIC Design

Slide 31

Clock Tree Synthesis 

Automatic insertion of buffers/inverters along the clock path to balance the clock delay to all the clock inputs.

Why balancing clock delay? Clock Skew?

22 November, 2010

IL2200 , ASIC Design

Slide 34

Clock Distribution: How?

Source: MIT 6.375 Complex Digital System 22 November, 2010

IL2200 , ASIC Design

Slide 35

Clock Tree Synthesis 

Delay of a wire 

Elmore Delay Vin R1

R2 C1

N

T DN T DN

Ci-1

RN Ci

CN

Rj j 1

C 1R 1 C

22 November, 2010

C2

Ri

N

Ci i 1

Ri-1

2

R1

R2

...

CN (R1

IL2200 , ASIC Design

R2

...

RN)

Slide 36

Clock Tree Synthesis 

Optimizing Wire Delay 

Divide the wire into N identical segments with length L/N  Resistance= rL/N. Capacitance= cL/N 2

T DN

L

rc

2 rc

...

Nrc

N 2

T DN

rc L

N N 2

T DN

RC

N

1 2

N

1

2N T DN 22 November, 2010

RC

rcL

2

2

2

IL2200 , ASIC Design

Slide 37

Clock Tree Synthesis 

  

Equation shows that the wire delay depends on RC effect. One method to reduce RC is to insert intermediate buffers. Most Popular technique to reduce propagation delay Making a line m times shorter reduces its propagation delay quadratically Vout

Vin R/M C/M

22 November, 2010

R/M

R/M C/M

IL2200 , ASIC Design

R/M C/M

C/M

Slide 38

Clock Tree Synthesis 

For optimal propagation delay, buffer size increases in their drive strength d by a factor a for each level of clock tree path Clock Source



a0 d

a1 d

a2 d

aNd

If clock buffers are not selected correctly they may cause the clock pulse width to degrade as the clock propagates through them

d 22 November, 2010

d IL2200 , ASIC Design

d

d Slide 39

Skew and Jitter t1

Clock Skew = t2 - t1

•Positive skew occurs when the transmitting register receives the clock earlier than the receiving register. •Negative skew is the opposite: the receiving register gets the clock earlier than the sending register

D Q

Combinational Logic

D Q

clk

t2

Clock Jitter Period A 22 November, 2010

!= Period B IL2200 , ASIC Design

Slide 40

Why minimizing Skew and Jitter is hard?

Source: MIT 6.375 Complex Digital System 22 November, 2010

IL2200 , ASIC Design

Slide 41

Clock Distribution

Source: MIT 6.375 Complex Digital System 22 November, 2010

IL2200 , ASIC Design

Slide 42

Clock Distribution

Source: MIT 6.375 Complex Digital System 22 November, 2010

IL2200 , ASIC Design

Slide 43

Clock Tree Synthesis D

Q

clk

Combinational Logic

D

Q

Without On-Chip Variation Awareness

D

Q

Combinational Logic

D

Q

clk

With On-Chip Variation Awareness 22 November, 2010

IL2200 , ASIC Design

Slide 44

Clock Tree Synthesis in SoC Encounter Fish Bone Routing Style

22 November, 2010

IL2200 , ASIC Design

Slide 45

Clock Tree Synthesis in SoC Encounter 

The color Difference tells us about clock skew

22 November, 2010

IL2200 , ASIC Design

Slide 46

Electromigration 



Electromigration (EM) is the movement or molecular transfer of metal from one area to another area that is caused by an excessive electrical current in the direction of electron flow. EM currents exceeding recommended guidelines can result in premature ASIC device failure

22 November, 2010

IL2200 , ASIC Design

Slide 47

Routing 

Global Routing 





Decomposes ASIC design interconnection into net segments Assign these segments to regions

Detail Routing   

Follows global routing Performs actually physical interconnection of ASIC design Places actual wire segments in the region defined by the global router to complete the connections between the ports

22 November, 2010

IL2200 , ASIC Design

Slide 48

Power Analysis 

Power analysis 

 

    

Reduces risk of IR voltage drops in power nets Ground bounce on the ground nets Reduces Electromigration effects due to high current

Resistance of power and ground net extracted Average current of each transistor connected to power net is calculated Average currents are distributed throughout the power net Calculate node voltages and branch currents Design goal violations shown

22 November, 2010

IL2200 , ASIC Design

Slide 49

RC Extraction 



RC extraction is the calculation of all the routed net capacitances and resistances Used for 

  

Delay calculation Static Timing Analysis Circuit Simulation Signal Integrity Analysis

22 November, 2010

IL2200 , ASIC Design

Slide 50

Verification 



The complete placed and routed design is verified before fabrication Functional Verification 



Verification is performed against behavioral RTL pre-layout and post-layout structural description (netlist) for the design validation.

Rule Based 

Assertion based verification  Assertions macros are expressions that, if false, indicate and error  Instantiated in RTL Code

22 November, 2010

IL2200 , ASIC Design

Slide 51

Energy Calculation 

    



Save your design as a Verilog Netlist Simulate the Design in NCSim/ModelSim Create a VCD File Restore the Design in encounter Read the VCD Activity file Report Power to get the average power Energy= Pave * Tperiod * No of Cycles

22 November, 2010

IL2200 , ASIC Design

Slide 52

VCD File Script run -timepoint 0 ns -absolute database -open /media/disk-1/mdpu/ADD2/MAC_0.vcd vcd -default -timescale us probe -create :mTile -vcd -all -depth all run -timepoint 100 us -absolute database -close /media/disk-1/mdpu/ADD2/MAC_0.vcd

22 November, 2010

IL2200 , ASIC Design

Slide 53

Power Calculation in Encounter restoreDesign /home/ali/PhysicalDesign/ICAD2/mdpu/Tile_final.enc.dat Tile extractRC -outfile file.cap read_activity_file -format VCD -vcd_scope Tile_tb/mTile /media/disk-1/mdpu/ADD2/MAC_0.vcd reportPower -noRailAnalysis -outfile /media/disk1/mdpu/ADD2/reports/powenc_0.rep exit

22 November, 2010

IL2200 , ASIC Design

Slide 54

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF