PHYSICAL DESIGN Physical Design is Physical implementation of Design 1. 2. 3. 4. 5. 6. In Physical Design mainly Six inputs are present Logical libraries --> format is .lib --->given by Vendors physical libraries -->format is .lef --->given by vendors Technology file -->format is .tf --->given by fabrication peoples TLU+ file -->format is .TLUP-->given by fabrication people Netlist --->format is .v -->given by Synthesis People Synthesis Design Constraints -->format is .SDC -->given by Synthesis People 1. 2. 3. 4. 5. 6. 7. 8. 9. PHYSICAL DESIGN PROCESS. DATA PREPARATION. FLOOR PLAN. POWER PLAN-->POWER ROUTING [PRE ROUTE] PLACEMENT. CLOCK TREE SYNTHESIS.-->CLOCK ROUTING. ROUTING.-->DATA ROUTING.-->[POST ROUTE] CHIP FINISHING. VERIFICATION. GDSII FILE. LOGIC LIBRARIES Logical libraries :format is .lib 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Timing information of Standard cells,Soft macros,Hard macros. functionality information of Standard cells,Soft macros. And design rules like max transition ,max capacitance, max fanout. In timing information Cell delays ,Setup,Hold time are present. Cell delay is Function of input transition and output load. Cell delay is calculated based on lookup tables. Cell delays are calculated by using linear delay models, Non linear delay models,CCS models. functionality is used for Optimization Purpose. And also Contain Power information. And contains Leakage power for Default cell,Leakage Power Density for cell,Default Input voltage , Out put voltage. And PVT contains ------->Cell leakage Power -------->Internal Power --------->Rise Transition ----------->fall transition ---------->>Setup rise ----------->setup fall -------------->Hold rise ------------->Hold fall ----------------->cell rise ---------------->cell fal -------------------->Pin Capacitance And it contains A view(sub directory) i.e. LM(Logical Model view)view. It contains logical libraries. PHYSICAL LIBRARIES Physical libraries: format is .lef: 1. 2. 3. 4. 5. 6. 7. 8. 9. Physical information of std cells,macros,pads. Pin information. Define unit tile placement. Minimum Width of Resolution. Hight of the placement Rows . Preferred routing Directions. Pitch of the routing tracks. Antenna Rules. Routing Blockages In physical info height,area,width, are present. and also it contains two views 1)Cell View: In this all layout information is present,it is used at the time of tapeout 2)FRAM view: Fram view is abstract view, it is used at the Place & Route TECHNOLOGY FILE Technology file: format is .tf: 1. 2. 3. 4. 5. 6. 7. 8. It contains Name,Number conventions of layer and via It contains Physical,electrical characteristics of layer and via In Physical characteristics Min width,area,height are present. In Electrical characteristics Current Density is present. Units and Precisions of layer and via . Colors and pattern of layer and via . Physical Design rules of layer and via In Physical Design rules Wire to Wire Spacing,Min Width between Layer and via are present. TLU+ TLU+ files: format is .TLUP: 1. 2. 3. 4. 5. 6. R,C parasitics of metal per unit length. These(R,C parasitics) are used for calculating Net Delays. If TLU+ files are not given then these are getting from .ITF file. For Loading TLU+ files we have load three files . Those are Max Tlu+,Min TLU+,MAP file. MAP file maps the .ITF file and .tf file of the layer and via names. NETLIST Netlist: Format is .V It contains Logical connectivity Of all Cell(Std cells,Macros). It contain List of nets. In the design for Knowing connectivity by using Fly lines. SDC SDC :Format is .SDC : These Constraints are timing Constraints . These Constraints used for to meet timing requirements. Constraints are 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. CLOCK DEFINITIONS:Create Clock Period. Generated Clock Definitions Input Delay Output Delay I/O delay Max delay Min Delay --------------->Exceptions<------------------------Multi cycle path False path Half cycle path Disable timing arcs Case Analysis Multi cycle path, False path are Exceptions. OPTIMIZATION CONTROLS Design Optimization Controls : 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Enable multiple clocks per register Enable constant propagation Enable multiple port net buffering Enable Constant net buffering Apply timing derating for On-Chip variations Define Don't use or preferred cells Keep Spare cells and unloaded cells Apply area constraints and area recovery Apply area and power cricalranges. Organize paths into groups Prevent clock as data networks modify optimization priorities if needed Enable recovery and removal check. FLOOR PLAN FLOOR PLAN: AT CHIP LEVEL: FLOOR PLAN IS A STEP WHERE WE CREATING THE PAD CELLS AND SPACIFYING POSITIONS, PLACING PAD CELLS AND INSERTING PAD FILLER CELLS,FOR WELL CONTINITY. WELL CONTINITY MEANS IF THE WELL IS NOT CONTINOUS THEN WE HAVE TO CREATE SPECIAL MASKS. IF WELL IS CONTINOUS THEN THERE IS NO NEED OF CREATING SPECIAL MASKS. IN FLOOR PLAN MAIN IMPORTANT IS MACRO PLACEMENT. MACRO IS NOTHING BUT MEMORY CELLS. IF WE HAVE A LARGE CIRCUIT THEN THERE IS NO NEED OF CREATING EVERY TIME. THE CIRCUIT IS AVAILABLE IN THE MARKET IN THE FORM OF MACRO OR IP. MACROS ARE TWO TYPES:(i)HARD MACRO. (ii)SOFT MACRO. HARD MACRO:THE CIRCUIT IS FIXED.AND WE DON'T NO WHICH TYPE OF GATES USING INSIDE.WE KNOW THE ONLY TIMING INFORMATION.WE DON'T KNOW THE FUNCTIONALITY INFORMATION. SOFT MACRO:THE CIRCUIT IS NOT FIXED.WE KNOW WHICH TYPE OF GATES USING INSIDE.WE KNOW THE TIMING INFORMATION.WE KNOW THE FUNCTIONALITY INFORMATION. AND IN FLOORPLAN WE ALSO CREATING THE BLOCKAGES. BLOCKAGES:BLOCKAGES ARE THE IF LET TAKE WE WANT SOME AREA WHERE NO ONE STD CELL PLACE.FOR THAT PURPOSE WE ARE USING BLOCKAGES. BLOCKAGES ARE TWO TYPES:(i)SOFT BLOCKAGES (ii)HARD BLOCKAGES. SOFT BLOCKAGES MEANS ONLY BUFFERS ARE PLACED, NO STD CELL PLACED,AND THESE ARE USED AT (i)BETWEEN TWO MACROS, (ii)AND BETWEEN MACRO AND BOARDERS. HARD BLOCKAGES MEANS NO ONE STD CELLS PLACED.AND THESE ARE USED AT THE AROUND THE MACRO.BECAUSE PIN ACCESSING. IN THE FLOOR PLAN MAIN OBJECTS ARE MACRO PLACEMENT., DEFINE ASPECT RATIO(HEIGHT/WIDTH). I/O PLACEMENTS. CORE AREA INITIALIZATION. CORE AREA :CORE AREA IS DEFINED FOR THE PLACEMENT OF STD CELLS,AND MACROS. CORE AREA DEPENDS ON (i)ASPECT RATIO (ii)UTILIZATION. UTILIZATION=(STD CELL AREA+MACRO AREA+BLOCKAGE AREA)/TOTAL AREA. STD CELL UTILIZATION=(STD CELL AREA)/(CORE AREA -MACRO AREA). THESE STD CELLS ARE PLACED IN ROWS. ----->I/O PLACEMENT. IN I/O PLACEMENT WE HAVING PADS. PADS ARE USED FOR INTERFACING PURPOSE,AND THESE ARE USED FOR PROVIDING POWER SUPPLY, DATA SIGNAL,CLOCK SIGNAL. EASILY THESE CAN BE USED AS PORTS. PADS ARE DIFFERENT TYPES:(i)POWER PADS, (ii)SIGNAL PADS. (iii)CORNER PADS. (iv)I/O PADS. MACRO PLACEMENT (GUIDE LINES) Macro Placement Depend On 1. 2. 3. 4. 5. 6. 7. 8. 9. FLY LINES PORTS COMMUNICATIONS. MACRO'S ARE PLACED AT BOUNDARIES MACRO GROUPING [LOGICAL HIERARCHY] SPACING BETWEEN MACRO'S MACRO ALIGNMENT NOTCHES AVOIDING ORIENTATION BLOCKAGES MACROS ARE ROTATED AS REQUIRED TO OPTIMIZE WIRE LENGTH DURING AUTOMATIC MACRO PLACEMENT. TYPICALLY , MACROS ARE PLACED AROUND EDGES OF BLOCKS,KEEPING ARE LARGE MAIN AREA FOR STD CELLS LEAVE A HALO SPACE BETWEEN MACROS ON ALL SIDES FOR A NON PIN SIDES OF MACROS A MINIMAL SEPARATION .IS ADEQUATE. FOR PIN SIDES OF MACROS A LARGER SEPARATION IS APPROPRIATE. ALLOW CHANNELS FOR ROUTING PIN ACCESS AND POSSIBLE BUFFER INSERTION LEAVE SPACE BETWEEN MACRO AND THE EDGE OF CHIP/BLOCK, TO ALLOW FOR BUFFERS INSERTION AND POWER STRIPES TO FEED STD CELL ROWS BETWEEN MACRO AND BLOCK EDGE. CALCULATION FOR DISTANCE BETWEEN MACROS: NO.OF PINS (X) PITCH DISTANCE BETWEEN MACROS= -----------------------------------------------------AVAILABLE LAYERS/TOTAL LAYERS FLOOR PLAN (PAD CELLS) IN FLOOR PLAN 1. CREATE PHYSICAL ONLY PAD CELLS.PHYSICAL ONLY CELLS MEANS ONLY THOSE HAVING PHYSICAL INFORMATION ONLY.NO LOGICAL INFORMATION PRESENT.AND THEY DON'T HAVE TIMING INFORATION ALSO. 2. PHYSICAL ONLY PAD CELLS ARE (i)VDD,VSS PADC CELLS,(ii)CORNER PAD CELLS. 3. PAD CELLS ACTS LIKE AS PORTS. 4. CHIP OUTSIDE PINS ARE CONNECTED TO THE INNER CHIP PADS. 5. PADS TYPES:(i)POWER PADS, (ii)DATA PADS . 6. FOR THE POWER SUPPLY TO THE ALL PADS CREATING A PAD POWER RING . 7. VDD,VSS PADS ARE CONNECTED TO THE CORE VDD,VSS POWER RINGS. 8. FOR FILLING THE GAPS BETWEEN THE PADS FILLED BY PAD FILLER CELLS. 9. THESE PAD FILLER CELLS ARE FOR WELL CONTINUITY. 1. 2. 3. 4. PHYSICAL ONLY CELLS ARE: PAD CELLS. END CAP CELLS. TAP CELLS. DECAP CELLS. POWER PLANNING IN POWER PLANNING IR DROP :VOLTAGE TRANSFER IN METAL A DROP OCCURS DUE TO RESISTANCE OF METAL.THIS IS KNOWN AS IR DROP. IR DROPS ARE TWO TYPES (i)STATIC IR DROP,(ii)DYNAMIC IR DROP. STATIC IR DROP:INDEPENDENT OF THE CELL SWITCHING THE DROP IS CALCULATED WITH THE HELP OF WIRE RESISTANCE. IMPROVE STATIC IR DROP:(i)WIDTH OF WIRE INCREASE,(ii) OR INCREASE THE NO.OF WIRES DYNAMIC IR DROP:IR DROP IS CALCULATED WITH THE HELP OF THE SWITCHING OF THE CELLS. IMPROVE DYNAMIC IR DROP:(i)PLACING DCAP CELLS IN BETWEEN THEM,(iii)INCREASE THE NO OF STRAPS. ELECTROMIGRATION: WHEN HIGH CURRENT CONTINUOUSLY PASSING THROUGH A METAL DUE TO THE HIGH CURRENT THE ATOMS ARE MOVING WITH KINETIC ENERGY AND THEY TRANSFER THE ENERGY TO ANOTHER ATOMS DUE THESE DAMAGE THE METAL. IMPROVE:INCREASE METAL WIDTH. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. FIRST SAVE THE DESIGN, BEFORE GOING TO POWER PLAN. DEFINE LOGICAL P/G CONNECTIONS. APPLY POWER NETWORK CONSTRAINTS. POWER NETWORK CONSTRAINTS ARE (i)NO.OF POWER STRAPS,(ii)POWER STRAPS WIDTH,(iii)NO.OF POWER PADS, (iii)POWER RING WIDTH. SYNTHESIZE THE POWER NETWORK,ANALYZE POWER NET WORK . ANALYZE POWER NETWORK :(i) P/G NETPAIR (ii) POWER BUDGET OF SYNTHESIZED NETS(iii)PNS CALCULATES THE REQUIRED NO.OF STRAPS BASED ON PROVIDED CONSTRAINTS. (iv) IR DROP. (v) ELECTROMIGRATION. ANALYZE IR DROP. IF IR DROP IS MORE THEN MODIFY POWER NETWORK CONSTRAINTS ,AND RESYNTHESIZE POWER NETWORK. IF IR DROP IS NOT SATISFIED ADD P/G PADS. COMMIT THE POWER NETWORK, HERE STRAPS AND RINGS ARE ROUTED ,SO WE CAN'T MODIFY THE DESIGN. CONNECT THE MACRO P/G PINS AND PAD P/G PINS TO THE CORE RINGS. CREATE POWER RAILS.ALONG THE STD CELL ROWS. AND RE ANALYZE IR DROP.IF STRAPS ARE NOT SUFFICIENT THEN ADD. APPLY P-NET OPTIONS . WHEN A POWER STRAPS IN METAL 7,POWER STRAPS ARE CONNECTED TO THE POWER RAILS THROUGH VIA'S. SO IF ANY PLACED INN THAT AREA THEN SHORTS OCCURRED .FOR AVOIDING THESE PROBLEM WE ARE ADDING P-NET OPTIONS. AFTER THIS INCREMENTAL PLACEMENT:IT MEANS EFFECT CELLS MOVING POWER PLANNING IS ALSO CALLED AS THE PREROUTES. BECAUSE IN THE CHIP FIRST POWER NETS ROUTED FIRST. POWER CALCULATIONS: ----->NUMBER OF THE CORE POWER PAD REQUIRED FOR EACH SIDE OF CHIP=(TOTAL CORE POWER)/{(NUMBER OF SIDE)*(CORE VOLTAGE)*MAXIMUM ALLOWABLE CURRENT FOR A I/O PAD)} . ----->CORE RING WIDTH: CORE CURRENT(mA)=(CORE POWER)/(CORE VOLTAGE ) CORE P/G RING WIDTH =(TOTAL CORE CURRENT)/{(N0.OF.SIDES)*(MAXIMUM CURRENT DENSITY OF THE METAL LAYER USED FOR PG RING)} ------->MAXIMUM CURRENT DENSITY Rj mA. -------->SHEET RESISTANCE :Rs OHMS/SQUARE. -------->TOTAL CURRENT =TOTAL POWER CONSUMPTION OF CHIP(P)/VOLTAGE(V). -------->NO.OF POWER PADS(Npads)=Itotal/Ip ------->Itotal =TOTAL CURRENT ------->Ip OBTAINED FROM IO LIBRARY SPACIFICATION. -------->NO.OF POWER PINS = Itotal/Ip -------->MAXIMUM CURRENT SPACIFICATION OF EACH METAL LAYER FROM LIBRARY(Rj). ---------->TOTAL METAL WIDTH REQUIRED ON LAYER1=LAYER2= Wtotalstrap = Itotal/(2*Rj) ----------->ASSUMING SPACINGS BETWEEN STRAPS=Lspace L<(Vmax)/(Rj*Rs) Vmax = MAX ALLOWABLE IR DROP Rj=MAX CURRENT DENSITY Rs=SHEET RESISTANCE ---------->TOTAL CORE AREA=Wcore*Hcore H=HEIGHT W=WIDTH ----------->NUMBER OF VERTICAL STRAPS=Nv=Wcore/L ----------->NUMBER OF HORIZONTAL STRAPS=NH=Hcore/(2*L) ------------> MIN STRAP WIDTH REQUIRED=Wring/(Nv*Nh) IR DROP: ------>AVG CURRENT THROUGH EACH STRAP=IstrapAvg=(Itotal)/(2*Nstraps)mA -------->APPROPRIATE IR DROP AT THE CENTER OF THE STRAP=Vdrop or IRdrop =IstrapAvg*Rs*(W/2)*(1/Wstrap) --------->NUMBER OF STRAPS BETWEEN TWO POWER PADS Nstrappinspace = Dpadspacing/Lspace. ---------->MIN RING WIDTH = Wring = Ip/Rj microm POWER -------->TOTAL POWER=STATIC POWER+DYNAMIC POWER =LEAKAGE POWER+[INTERNAL POWER+EXT SWITCHING POWER] =LEAKAGE POWER+[{SHORTCKT+INT POWER}]+EXT SWITCHING POWER] =LEAKAGE POWER+[{(Vdd*Isc)+(C*V*V*F)+(1/2*C*V*V*F)] Isc=SHORT CIRCUIT POWER C=LOAD CAP S=SWITCHING ACTIVITY FACTOR. FLOORPLAN (CONGESTION) CONGESTION: REQUIRED NO.OF ROUTING RESOURCES ARE GREATER THAN THE NO.OF AVAILABLE ROUTING RESOURCES 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. FOR THE CONGESTION ANALYSIS WE HAVE TO DO FIRST PERFORM GLOBAL ROUTING. BY USING GLOBAL ROUTING CALCULATING CONGESTION. ANALYZE THE CONGESTION [IF WE HAVE CONGESTION MEANS ROUTING PROBLEM]. IF THE CONGESTION IS PRESENT THEN MODIFY THE PLACEMENT STRATEGY PARAMETERS LIKE BLOCKAGES,OFFSET,KEEP OUT MARGINS,SLIVER SIZE AND MACRO, STD CELL CONSTRAINTS. PERFORM CONGESTION DRIVEN VIRTUAL FLAT PLACEMENT.CONGESTION DRIVEN MEANS MOVING STD CELLS FAR AWAY. REANALYZE THE CONGESTION.IF CONGESTION IS NOT SATISFIED. PERFORM HIGH EFFORT CONGESTION DRIVEN VIRTUAL FLAT PLACEMENT. REANALYZE THE CONGESTION.IF CONGESTION IS NOT SATISFIED. MODIFY THE FLOOR PLAN. IF CONGESTION IS SATISFIED. FIX MACRO PLACEMENT. FLOOR PLAN(VIRTUAL FLAT PLACEMENT) VIRTUAL FLAT PLACEMENT: 1. APPLY PLACEMENT STRATEGY PARAMETERS. 2. PERFORM VIRTUAL FLAT PLACEMENT. PLACEMENT STRATEGY PARAMETERS ARE (i)VIPO(VIRTUAL IN PLACEMENT OPTIMIZATION),(ii)CONGESTION EFFORT,(iii)SLIVER SIZE,(iv)MACRO PLACEMENT,(v)OPTIMIZATION ALGORITHMS AND EFFORT. VIRTUAL FLAT PLACEMENT MEANS VIRTUALLY PLACING THE STD CELLS.AND ANALYZE THE CONGESTION AND TIMING. FLOORPLAN(TIMING) FLOOR PLAN [TIMING]: IN FLOOR PLAN TIMING IS ALSO IMPORTANT. 1. BEFORE GOING TO TIMING ,PERFORM GLOBAL ROUTING AND ANALYZE CONGESTION. 2. BY PERFORMING THE GLOBAL ROUTING EXTRACT APPROPRIATE R,C VALUES. 3. IF IN THE DESIGN CONGESTION PRESENT GO TO THE CONGESTION STEP AND MODIFY THE P-NET OPTIONS FULL TO PARTIAL. 4. PERFORM GLOBAL ROUTING AND ANALYZE CONGESTION. 5. IF IN THE DESIGN CONGESTION PRESENT MODIFY THE P-NET OPTIONS PARTIAL TO COMPLETE. 6. EXTRACT R,C VALUES , ANALYZE THE TIMING. EXTRACT PARASITIC NET R,C VALUES AND GENERATE A TIMING REPORT. OPTIMIZE TIMING [DEFAULT]-->IF THE TIMING IS NOT ACCEPTED REPEAT GLOBAL ROUTING ANALYZE CONGESTION ,TIMING IF NOT ACCEPTED. PERFORM OPTIMIZE TIMING[HIGH EFFORT]---->OPTIMIZE HIGH EFFORT. IF THE TIMING IS NOT ACCEPTED ,MODIFY THE FLOOR PLAN /RESYNTHESIZE. AFTER ACCEPTING THE CONGESTION, TIMING THEN WRITE OUT THE .def file SAVE THE DESIGN .AND THESE .def FILE IS GIVEN AS INPUT TO THE PLACEMENT PLACEMENT IN PLACEMENT STEPS ARE 1. 2. 3. 4. PLACEMENT CHECKS, DFT SETUP. POWER SETUP. PLACEMENT OPTIMIZATION. PLACEMENT : AFTER GOING TO PLACEMENT WE HAVE TO CHECKS ,FIX 1. 2. 3. 4. 5. FIX MACRO PLACEMENT.(AGAIN) VERIFY THE P-NET, IGNORED ROUTING LAYERS. VERIFY KEEPOUT VARIABLE SETTINGS. SPECIFY NON DEFAULT ROUTING RULES. CHECK PLACEMENT READINESS. -->FIX MACRO PLACEMENT AGAIN, BECAUSE AFTER INSERTING THE DESIGN IF MACROS ARE MOVED THE CHECK. -->P-NET, IGNORED ROUTING LAYERS ALSO. -- >MAINTAIN KEEPOUT VARIABLE SETTINGS FURTHER STEPS ALSO -->NON DEFAULT RULES ARE SPECIAL RULES.LIKE DOUBLE SPACING, DOUBLE WIDTHING.THESE ARE APPLIED FOR CLOCK WIRES.BECAUSE THOSE HIGH ACTIVITY NETS. -->BUT HERE WE ARE ONLY SPECIFYING NON DEFAULT ROUTING RULES[NDR'S]. -->CHECK PLACEMENT READINESS IN WE ARE CHECK 1. 2. 3. 4. 5. FLOOR PLAN , NETLIST, NARROW PLACEMENT REGIONS, R,C FOR ROTING LAYERS, DESIGN CONSTRAINTS. PLACEMENT (DFT SETUP) DFT SETUP: SCAN CHAINS: SCAN CHAINS ARE NOTHING BUT A GROUP OF REGISTERS CONNECTED SERIALLY. THESE ARE CONNECTED ARE ALPHANUMERIC MANNER. THERE ARE TWO TYPE OF MODES PRESENT:(i)FUNCTION MODE,(ii)TEST MODE. THESE MODE SELECTED BY USING MUX DEVICES. TEST MODE IS DONE AT AT DFT TIME. DFT(DESIGN FOR TESTABILITY) IS ONE OF THE STEP IN ASIC FLOW. HERE SCAN INPUT SI , SCAN OUT IS SO. WE HAVE A PROBLEM WITH PREEXISTING SCAN CHAINS , THE ISSUE IS PREEXISTING SCAN CHAINS ARE CONNECTED FAR AWAY , BECAUSE THEY ARE CONNECTED BASED ON THE FUNCTIONALITY BASED, SO FOR CONNECTING THESE WE HAVE TO USE MORE ROUTING ROUTING RESOURCES. IT CAUSED FOR CONGESTION. INSERT THE SCAN CHAINS FILE. IF PROBLEM WITH PREEXISTING SCAN CHAINS THEN REORDER THE NAMES OF THE SCAN REGISTER NAMES. IT ALSO REDUCES THE HOLD TIME. PLACEMENT (POWER SET UP) POWER SETUP: WE HAVE TWO TYPE OF THE POWER DISSIPATIONS: 1. STATIC POWER DISSIPATION 2. DYNAMIC POWER DISSIPATION STATIC POWER DISSIPATION: STATIC POWER DISSIPATION IS IF THE CELLS ARE PRESENT AT THE OFF STATE THEN DUE TO THE LEAKAGE OF CELLS STATIC POWER DISSIPATION OCCURRS. THE LEAKAGE IS DUE TO THE JUNCTION LEAKAGE, TUNNELING , SUB THRESHOLD LEAKAGE. FOR REDUCING THE STATIC POWER DISSIPATION REPLACING THE LVT CELLS WITH HVT CELLS. HVT CELLS ARE SLOWER,AND LOW LEAKAGE ,HIGH Vt . LVT CELLS ARE FASTER ,AND HIGH LEAKAGE,LOW Vt. REPLACING THE LVT CELLS WITH HVT CELLS. LVT CELLS ARE USED AT CRITICAL PATHS. DYNAMIC POWER DISSIPATION: DYNAMIC POWER DISSIPATION IS DUE TO THE SHORT CIRCUIT , INTERNAL LOAD,HIGH SWITCHING. FOR REDUCING THE DYNAMIC POWER DISSIPATION WE HAVE A LOT OF TECHNIQUES THOSE ARE : REDUCING THE HIGH TOGGLE RATE NET LENGTHS.THESE TOGGLE RATE IS GETTING FROM SWITCHING FILE THIS IS GETTING FROM SIMULATION PEOPLE. AND CONNECTED NEARER TO IT. ANOTHER TECHNIQUE IS ADDING THE BUFFER IN BETWEEN THE HIGH NET LENGTH NETS.FOR REDUCING THE HIGH COUPLING CAPACITANCE.(REDUCE THE LOAD CAPACITANCE) ANOTHER TECHNIQUE IS CONNECT HIGH COUPLING CAPACITANCE NET TO THE LOW CAPACITANCE PIN OF THE CELL.(SWAPPING THE PIN). ANOTHER TECHNIQUE IS CLONING ,IT IS CREATING THE SAME CELL AND CONNECT THE SOME OF THE OUTPUT NET TO THESE. AND ANOTHER TECHNIQUE IS CELL SIZING. ANOTHER TECHNIQUE IS GATE LEVEL LOGIC OPTIMIZATION. PLACEMENT OPTIMIIZATION PLACEMENT OPTIMIZATION: PLACEMENT OPTIMIZATION WITH WE HAVE OPTIONS (i)CONGESTION,(ii)AREA RECOVERY ,(iii)POWER,(iv)DFT,(v)TIMING. BY USING THE CONGESTION OPTION WE CAN REDUCE THE CONGESTION. BY USING THE POWER OPTION WE CAN REDUCE THE STATIC POWER DISSIPATION,DYNAMIC POWER DISSIPATION. BY USING THE AREA RECOVERY OPTION WE CAN REDUCE THE CELLS ,POWER,TIMING. BY USING THE DFT OPTION WE CAN REDUCE THE ROUTING RESOURECES BY REORDER THE SCAN CHAINS. AND IF TIMING IS CRITICAL LOGICAL TIMING DRIVEN PLACEMENT. AND CONGESTION IS CRITICAL CONGESTION DRIVEN PLACEMNT. CTS (CLOCK TREE SYNTHESIS) CLOCK TREE SYNTHESIS : ----->CTS IS THE CONNECT THE CLOCKS TO THE ALL CLOCK PIN OF SEQUENTIAL CIRCUITS. ------->ALL CLOCK PINS ARE DRIVEN BY A SINGLE CLOCK SOURCE. ------->CTS TARGETS :(i)skew , (ii)insertion delay -------->CTS GOALS :(i)max transition, (ii)max capacitance, (iii)max fanout, (iv)max buffer levels. ------->A BUFFER TREES IS BUILT TO BALANCE THE LOADS AND MINIMIZE THE SKEW. -------->A CLOCK TREE WITH BUFFER LEVELS BETWEEN THE CLOCK SOURCE AND CLOCK SINKS(END POINTS). -------->CTS STARTING POINT IS CLOCK SOURCE (SDC DEFINED CREATE_CLOCK) -------->CTS END POINTS ARE CLOCK PINS OF SEQUENTIAL CELLS. -------->CLOCK PINS ARE ALSO CALLED AS THE CLOCK SINKS. -------->WHEN THE CLOCK ROOT IS PRIMARY PORT OF BLOCK. -------->AT CHIP LEVEL PRIMARY PORTS ARE PADS. -------->CLOCK PINS ARE DIFFERENT TYPES, THOSE ARE (i) STOP PINS, (ii)FLOAT PINS, (iii)EXCLUDE PINS. -------->STOP PINS:CTS OPTIMIZES FOR CLOCK TREE TARGETS,CLOCK TREE GOALS. -------->FLOAT PIN:LIKE AS STOP PINS,BUT DELAYS ON CLOCK PIN,MACRO INTERNAL DELAY. --------->EXCLUDE PIN:CTS IGNORES TARGETS,FIX CLOCK TREE DRC'S. CTS (START POINTS AND END POINTS) IN DESIGN WE HAVING STATIC TIMING ANALYSIS STATIC TIMING ANALYSIS DO NOT DEPEND ON INPUTS AND WEATHER IT IS PRESENT IN ON STATE (OR) OF STATE,SWITCHING. STATIC TIMING ANALYSIS IS PURELY DEPEND ON THE DELAYS. SETUP TIME :THE MINIMUM AMOUNT OF TIME THE DATA SHOULD BE STABLE BEFORE ARRIVAL OF SENSITIVE CLOCK. HOLD TIME :THE MINIMUM AMOUNT OF TIME THE DATA SHOULD BE STABLE AFTER ARRIVAL OF SENSITIVE CLOCK. SETUP CHECK:THE DATA LAUNCHED AT SENSITIVE EDGE OF THE LAUNCH FLOP SHOULD BE CAPTURED AT NEXT SENSITIVE EDGE OF THE CAPTURED FLOP. BELOW IS THE SETUP CHECK EQ : Tcq + Tcomb < Tclk-Tsu HOLD CHECK:THE DATA LAUNCHED AT SENSITIVE EDGE OF THE LAUNCH FLOP SHOULD NOT BE CAPTURED AT THE SAME SENSITIVE EDGE OF THE CAPTURED FLOP. BELOW IS THE HOLD CHECK EQ : Tcq + Tcomb > Thold IN THE BASING TIMING DIAGRAM START POINTS ARE (i)INPUT PORT (ii)CLOCK PIN OF LAUNCH FLOP. END POINTS ARE (i)DATA INPUT PIN OF CAPTURE FLOP. (ii)OUTPUT PORT. BY THE COMBINATION OF THE THESE START AND END POINTS WE HAVE THE PATHS LIKE ARE 1. 2. 3. 4. INPUT PORT TO DATA INPUT PIN OF LAUNCH FLOP CLOCK PIN OF THE LAUNCH FLOP TO DATA INPUT PIN OF CAPTURE FLOP INPUT PORT TO OUTPUT PORT CLOCK PIN OF THE LAUNCH FLOP TO OUTPUT PORT. BY DEPENDING ON THE START POINTS AND END POINTS WE HAVE FOUR TIMING GROUPS PRESENT. 1. 2. 3. 4. INPUT GROUP REGISTER GROUP FEED THROUGH GROUP. OUTPUT GROUP. THIS IS BASIC TIMING DIAGRAM REGISTER GROUP: START POINT IS CLOCK PIN OF LAUNCH FLOP. END POINT IS DATA INPUT PIN OF CAPTURE FLOP SETUP CHECK EQUATION IS : Tcq + Tcomb < Tclk-Tsu HOLD CHECK EQUATION IS : Tcq + Tcomb > Thold INPUT GROUP: START POINT IS INPUT PORT. END POINT IS DATA INPUT PIN OF CAPTURE FLOP. SETUP CHECK EQUATION IS : Tinputdelay + Tcomb < Tclk -Tsu HOLD CHECK EQUATION : Tinputdelay + Tcomb > Thold OUTPUT GROUP: START POINT IS CLOCK PIN OF LAUNCH FLOP. END POINT IS OUTPUT PORT. SETUP CHECK EQUATION IS : Tcq + Toutputdelay < Tcq. HOLD CHECK EQUATION IS : Tcq + Toutputdelay > Thold. FEED THROUGH GROUP: START POINT IS INPUT PORT . END POINT IS OUTPUT GROUP. SETUP CHECK EQUATION IS : Tinputdelay + Toutputdelay < Tcq HOLD CHECK EQUATION IS : Tinputdelay + Toutputdelay > Thold UNCERTAINITY: UNCERTAINTY = SKEW + ZITTER + MARGIN JITTER: IT IS THE VARIATIONS IN THE CLOCK CYCLE AT THE CLOCK EDGES BEFORE (OR) AFTER SKEW: SKEW IS THE DIFFERENCE IN THE ARRIVALS TIMES AT THE END POINTS OF THE CLOCK TREE. Tl + Tcq + Tcomb < Tclk - Tsu + Tc Tcq + Tcomb < Tclk - Tsu + (Tc - Tl) Tcq + Tcomb < Tclk - Tsu + Tskew Tcq + Tcomb < Tclk - Tsu + SKEW SKEW = Tc - Tl = Tskew SKEW TYPES: 1. POSITIVE SKEW 2. NEGATIVE SKEW POSITIVE SKEW: Tcq + Tcomb < Tclk - Tsu + (Tc - Tl) Tcq + Tcomb < Tclk - Tsu + Tskew Tcq + Tcomb < Tclk - Tsu + SKEW WHEN (Tc > Tl) IT IS POSITIVE SKEW IT IS USEFUL FOR SETUP TIME IT IS BAD FOR HOLD TIME. NEGATIVE SKEW: Tcq + Tcomb < Tclk - Tsu + (Tc - Tl) Tcq + Tcomb < Tclk - Tsu - Tskew Tcq + Tcomb < Tclk - Tsu - SKEW WHEN (Tc < Tl) IT IS NEGATIVE SKEW. IT IS USEFUL FOR HOLD TIME. IT IS BAD FOR SETUP TIME. CALCULATION OF SLACK: IT IS THE MAIN IMPORTANT FOR THE TIMING ANALYSIS THERE ARE MAINLY TWO TIMES ARE PRESENT 1. ARRIVAL TIME 2. REQUIRED TIME SLACK = REQUIRED TIME - ARRIVAL TIME POSITIVE SLACK IS GOOD FOR DESIGN NEGATIVE SLACK IS BAD FOR DESIGN IF IN THE DESIGN WE HAVE NEGATIVE SLACK THEN WE HAVING TIMING VIOLATIONS IN THE DESIGN. LATENCY'S: IT IS DELAY DIFFERENCE FROM THE CLOCK GENERATION POINT TO THE CLOCK END POINTS. THERE ARE TWO TYPES OF LATENCY'S PRESENT: 1. SOURCE LATENCY 2. NETWORK LATENCY SOURCE LATENCY :IT IS THE DELAY DIFFERENCE FROM THE CLOCK GENERATION POINT TO THE CLOCK DEFINITION POINTS. NETWORK LATENCY:IT IS THE DELAY DIFFERENCE FROM THE CLOCK DEFINITION POINTS TO THE CLOCK END POINTS. CTS (APPLYIN NDRS ON CLOCK NETS) NDR'S: NDR'S ARE NOTHING BUT NON DEFAULT ROUTING . THESE ARE APPLIED ON THE CLOCK NETS . CLOCK NETS ARE HIGH SWITCHING ACTIVITY NETS. NDR RULES ARE (i)DOUBLE WIDTH, (ii)DOUBLE SPACING. BY APPLYING DOUBLE WIDTH WE CAN AVOID THE ELECTROMIGRATION EFFECT. BY APPLYING DOUBLE SPACING WE CAN AVOID CROSS TALK EFFECT. CTS OPTOMIZATION OPTIMIZATIONS TECHNIQUES: BUFFERING ----------------->IT WILL IMPROVE SETUP TIME GATE SIZING---------------->BY DECREASING GATE SIZE DELAY MAY DECREASE(UPSIZE) DELAY INSERTION------->IT WILL IMPROVE HOLD TIME BUFFER RELOCATION--->REDUCE SKEW & INSERTION DELAY FIX MAX TRANSITION---->ADD BUFFERS FIX MAX CAPACITANCE--->DECREASE NET LENGTH,CLONNING. ROUTING ROUTING: ---->CREATE PHYSICAL CONNECTIONS TO ALL DATA SIGNAL PINS,CLOCK PINS INTERCONNECTIONS. ---->PATHS MUST MET TIMINGS. IN THE ROUTING MAINLY THREE STAGES ARE PRESENT: (i)GLOBAL ROUTING (ii)TRACK ASSIGNMENT (iii)DETAIL ROUTING THROUGH METAL ROUTING (GLOBAL ROUTING) GLOBAL ROUTING: --->FIRST THE DESIGN IS DIVIDED INTO SMALL BOXES EVERY BOX IS CALLED GLOBAL ROUTING CELLS (GCELLS OR BUCKETS) ----->EVERY GCELL HAVING THE A NUMBER OF HORIZONTAL ROUTING RESOURCES AND VERTICAL ROUTING RESOURCES. ----->GLOBAL ROUTING ASSIGNS NETS(LOGICAL CONNECTIVITY NOT METAL CONNECTIVITY) TO SPACIFIC METAL LAYERS AND GLOBAL ROUTING CELLS. ------>BY USING GLOBAL ROUTING WE CAN ANALYZE CONGESTION. ------->CONGESTION =(REQUIRED ROUTING RESOURCES > AVAILABLE ROUTING RESOURCES) ------->IF ANY GCELL HAVE CONGESTION THEN DETOURING(AVOID THE GCELL ROUTING THROUGH ANOTHER GCELL). ROUTING (TRACK ASSIGNMENT) TRACK ASSIGNMENTS : ---->ASSIGNS EACH NET TO THE SPACIFIC TRACKS. ---->NETS ARE LAYDOWN THE METAL TRACES. ----->TRACES=METAL CONNECTIVITY.. ROUTING (DETAIL ROUTING) DETAIL ROUTING: ---->DETAIL ROUTE DONES ACTUAL ROUTING. ----->MEANS ACTUAL ROUTING METAL CONNECTIONS. ----->CHECK ALSO PHYSICAL DRC'S. ----->DETAIL ROUTING DOES NOT WORK ON THE ENTIRE CHIP AT THE SAME TIME LIKE TRACK ASSIGNMENT. ------>INSTEAD IT WORKS BE REROUTING WITHIN THE CONFINES OF A SMALL AREA CALLED AN "SBOX". SBOX : DIVIDE THE BLOCK INTO MINI BOXES THESE ARE USED FOR THE DETAIL ROUTE. ROUTING (SEARCH AND REPAIR) SEARCH AND REPAIR : ---->SEARCH AND REPAIR FIXES REMAINING DRC VIOLATIONS THROUGH MULTIPLE LOOPS USING PROGRESSIVLY LARGE SBOX. ECO (ENGINEERING CHANGE ORDER) ECO: ECO'S ARE TWO TYPE :1)TIMING ECO'S(TO IMPROVE TIMING) 2)FUNCTIONAL ECO'S(TO ADD FUNCTIONALITY) TIMING ECO | ----------------------------| | FREEZE NON-FREEZE FUNCTIONAL ECO | --------------------------| | FREEZE NON-FREEZE --------->IT IS THE LATE CHANGE IN THE FLOW. ---------->AFTER ROUTING IF WE WANT ANY CHANGES OR ADDING NEW CELLS , THESE ALL ARE DONE AT THE ECO STAGE. HERE TWO TYPE OF ECO'S PRESENT : (i)FREEZE SILICON ECO (ii)NON FREEZE SILICON ECO --------->IN FREEZE SILICON ECO WE HAVE NO CHANCE OF ADDING CELL, HERE SPARE CELLS ARE USED FOR THESE. ----------->IN NON FREEZE SILICON ECO WE CAN ADD THE CELLS AFTER ROUTING. CHIP FINISHING CHIP FINISHING: IN THE CHIP FINISHING: WE NEED TO DO: 1. ANTENA FIXING:AS TOTAL AREA OF WIRE INCREASE DURING PROCESSING,THE VOLTAGE STRESSING THE GATE OXIDE INCREASE IT MAY DAMAGE OXIDE LAYER. 2. RANDOM PARTICAL DEFECTS:RANDOM PARTICAL EFFECT IS (i)WIRES AT MINIMUM SPACING ARE MOST SUSCEPTABLE TO SHORTS.(ii)WIRES AT MAXIMUM WIDTH ARE MOST SUSCEPTABLE TO OPENS. 3. REDUNDANT VIA INSERTION:VOID IN VIAS IS A SERIOUS ISSUE IN MANUFACTURING. 4. FILLER CELL INSERTION:SOME PLACEMENT SITES REMAIN EMPTY ON SOME ROWS. 5. METAL FILL INSERTION:METAL OVER ETCHING. 6. METAL SLOTTING :METAL EROSION,METAL LIFT OFF. ANTENA FIXING TECHNIQUES (THESE ARE FIX AT THE TIME OF THE SEARCH AND REPAIR) SPLITTING METAL(LAYER JUMPING). ADDING DIODE IN REVERSE BIAS MANNER. RANDOM PARTICAL DEFECT FIXING TECHNIQUES SPREADING (OR) JOG(PUSH ROUTES OFF-TRACKS BY 1/2 PITCH)-------->REDUCE SHORTS WIDENING(INCREASE THE WIRE WIDTH)------------>THIS MAY REDUCE OPENS. REDUNDANT VIA INSERTION REDUNDANT VIA IS THE TECHNIQUE FOR REDUCING VOIDS IN THE METAL LAYER. FILLER CELL INSERTION FILLER CELL INSERTION IS THE ONE OF THE TECHNIQUE FOR UTILIZING THE TOTAL AREA WITH OUT GAPS . IT IS GOOD TECHNIQUE BECAUSE IN THE FUTURE WE CAN REPLACE FILLER CELLS WITH SPARE CELLS WITH A LOGIC. METAL FILL INSERTION AT THE TIME OF ETCHING THEY USE SOME TYPE OF CHEMICALS DUE TO THAT CHEMICALS METAL LOSSES MORE FOR THAT ONE WE ARE INSERTING THE METAL FILLS. METAL SLOTTING METAL SLOTTING IS TECHNIQUE FOR AVOIDING THE PROBLEMS LIKE METAL LIFT OFF , METAL EROSION. FINAL VERIFICATION GDS FILE EXPORT FINAL VERIFICATION: 1. PARASITICS EXTRACTION:IT EXTRACT R,C VALUES FOR GETTING ORIGINAL DELAYS. TOOL:STAR RC XT LICENCE 2. TIMING VERIFICATION:IT IS FIND BY USING PRIME TIME TOOL. 3. LVS ,ERC CHECKS:THESE IS FIND OUT BY USING CALIBRE,HERCULIES TOOLS. 4. DRC CHECKS:THESE IS FIND OUT BY USING CALIBRE,HERCULIES TOOLS. AFTER VERIFICATION: 1. AFTER THIS WE RELEASE THE GDS FILE 2. IN THIS WE HAVE ALL POLYGONS INFORMATION IS PRESENT. AFTER GDS AFTER THIS WE ARE FINALLY BASE TAPE OUT(BTO). AFTER BASE TAPE OUT WE WILL DO METAL TAPE OUT(MTO). CALCULATIONS: POWER CALCULATIONS: ----->NUMBER OF THE CORE POWER PAD REQUIRED FOR EACH SIDE OF CHIP=(TOTAL CORE POWER)/{(NUMBER OF SIDE)*(CORE VOLTAGE)*MAXIMUM ALLOWABLE CURRENT FOR A I/O PAD)} . ----->CORE RING WIDTH: CORE CURRENT(mA)=(CORE POWER)/(CORE VOLTAGE ) CORE P/G RING WIDTH =(TOTAL CORE CURRENT)/{(N0.OF.SIDES)*(MAXIMUM CURRENT DENSITY OF THE METAL LAYER USED FOR PG RING)} ------->MAXIMUM CURRENT DENSITY Rj mA. -------->SHEET RESISTANCE :Rs OHMS/SQUARE. -------->TOTAL CURRENT =TOTAL POWER CONSUMPTION OF CHIP(P)/VOLTAGE(V). -------->NO.OF POWER PADS(Npads)=Itotal/Ip ------->Itotal =TOTAL CURRENT ------->Ip OBTAINED FROM IO LIBRARY SPACIFICATION. -------->NO.OF POWER PINS = Itotal/Ip -------->MAXIMUM CURRENT SPACIFICATION OF EACH METAL LAYER FROM LIBRARY(Rj). ---------->TOTAL METAL WIDTH REQUIRED ON LAYER1=LAYER2= Wtotalstrap = Itotal/(2*Rj) ----------->ASSUMING SPACINGS BETWEEN STRAPS=Lspace L<(Vmax)/(Rj*Rs) Vmax = MAX ALLOWABLE IR DROP Rj=MAX CURRENT DENSITY Rs=SHEET RESISTANCE ---------->TOTAL CORE AREA=Wcore*Hcore H=HEIGHT W=WIDTH ----------->NUMBER OF VERTICAL STRAPS=Nv=Wcore/L ----------->NUMBER OF HORIZONTAL STRAPS=NH=Hcore/(2*L) ------------> MIN STRAP WIDTH REQUIRED=Wring/(Nv*Nh) IR DROP: ------>AVG CURRENT THROUGH EACH STRAP=IstrapAvg=(Itotal)/(2*Nstraps)mA -------->APPROPRIATE IR DROP AT THE CENTER OF THE STRAP=Vdrop or IRdrop =IstrapAvg*Rs*(W/2)*(1/Wstrap) --------->NUMBER OF STRAPS BETWEEN TWO POWER PADS Nstrappinspace = Dpadspacing/Lspace. ---------->MIN RING WIDTH = Wring = Ip/Rj microm POWER -------->TOTAL POWER=STATIC POWER+DYNAMIC POWER =LEAKAGE POWER+[INTERNAL POWER+EXT SWITCHING POWER] =LEAKAGE POWER+[{SHORT CIRCUIT POWER + POWER+INT POWER}]+EXT SWITCHING POWER] =LEAKAGE POWER+[{(Vdd*Isc)+(C*V*V*F)+(1/2*C*V*V*F)] Isc=SHORT CIRCUIT POWER C=LOAD CAP S=SWITCHING ACTIVITY FACTOR. -----CORE RING WIDTH: CORE CURRENT=(CORE POWER)/(CORE VOLTAGE). CORE P/G RING WIDTH=(TOTAL CURRENT)/(NO OF SIDES *MAXIMUM CURRENT DENSITY OF THE METAL LAYER USED FOR P/G PAD RING) DIFFERENT FILES IN PHYSICAL DESIGN FILES: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. LOGICAL LIBRARIES---------------------------> .lib, .db PHYSICAL LIBRARIES -------------------->.lef, .milkyway (OR) .volcano (OR),.plib(OR).enc TECHNOLOGY FILE ----------------------------> .tf TLU+ ---------------------------------------------->.tlup INTER CONNECT TECHNOLOGY FILE ------> .itf MAPPING FILE ----------------------------------> .map NETLIST ------------------------------------------> .v,(OR) .ddc ,(OR) .db SDC------------------------------------------------> .sdc PHYSICAL ONLY PAD CELLS PLACEMENT FILE ---------------------> .tdf SCAN CHAIN FILE -------------------------------> .scandef TOGGLE RATE FILE------------------------------>.saif, (OR) .vcd ECO FILE ----------------------------------------->.eco GDS FILE------------------------------------------>.gds LOG FILE------------------------------------------>.log REPORT FILE-------------------------------------->.rep DESIGN EXCHANGE FORMAT------------------>.def STANDARD DELAY FORMAT------------------->.sdf DIFFERENT TYPE OF CELLS DIFFERENT TYPE OF CELLS: STDCELLS-------------------->Nothing But Base cells(Gates,flops). TAP CELLS-------------------->Avoids Latch up Problem(Placing these cells with a particular distance). TIE CELLS--------------------->It is used for preventing Damage of cells; Tie High cell(Gate One input is connected to Vdd, another input is connected to signal net);Tie low cells Gate one input is connected to Vss, another input is connected to signal . END CAP CELLS------------->To Know the end of the row,and At the edges endcap cells are placed to avoid the cells damages at the end of the row to avoid wrong laser wavelength for correct manufacturing. DECAP CELLS---------------->Charge Sharing; To avoid the Dynamic IR drop ,charge stores in the cells and release the charge to Nets. ICG CELLS----------------------->Clock gating cells ,to avoid Dynamic power Dissipation. POWER GATING CELLS---->Power gating to avoid static power Dissipation. PAD CELLS ----------------------->To Interface with outside Devices;Input to of Power,Clock,Pins are connected to pad cells and outside also. CORNER CELLS---------------->Corner Pads are used for Well Continity. Macro cells------------------------->Memories. Spare Cells-------------------------->Used at the ECO. Pad filler cells----------------------->Used for Well Continity,placed in between Pads,Std cells. JTAG CELLS---------------------->These are used to check the IO connectivity. FIXING DRC'S DRC'S FIXING DRC'S ARE DIFFERENT TYPES : 1. LOGICAL DRC'S. 2. PHYSICAL DRC'S. LOGICAL DRC'S: 1. MAX TRANSITION 2. MAX CAPACITANCE 3. MAX FANOUT MAX TRANSITION: FIXING TECHNIQUES: ADD A BUFFER IN MIDDLE OF THE LONG LENGTH WIRE. REDUCE THE WIRE LENGTH. ADDING A CHAIN OF BUFFERS. MAX CAPACITANCE: FIXING TECHNIQUES: DECREASE WIRE LENGTH AT OUTPUT SIDE. MAX FANOUT: FIXING TECHNIQUES: CLONNING=ADDING A SAME CELL LOAD WILL BE DIVIDED. SHARING THE LOAD PHYSICAL DRC'S: 1. 2. 3. 4. WIRE TO WIRE SPACING(MIN SPACING) MIN WIDTH OF WIRES VIA TO VIA SPACINGS NOTCH AVOIDING FIXING TECHNIQUES: SEARCH AND REPAIR FIXING CROSSTALK CROSS TALK: THE VOLTAGE TRANSFER FROM HIGHLY SWITCHING NET(AGGRESSOR NET) TO ANOTHER NET (LOW SWITCHING (OR) HIGH SWITCHING (OR) VICTIM NET (OR) CONSTANT NET ) THROUGH COUPLING CAPACITANCE THESE MAY CAUSE CROSS TALK . REDUCING TECHNIQUES: VICTIM NET WIDTH INCREASING THEN RESISTANCE DECREASE IT IS USED AT ROUTING ALSO. SPACING BETWEEN AGGRESSOR NET AND VICTIM NET INCREASE. BUFFERING ON CONSTANT NETS (OR) VICTIM NETS. PLACING AN GROUND NETS ON BETWEEN THE AGGRESSOR NET AND VICTIM NET THEN VOLTAGE DISCHARGE ON GROUND NET THEN NO SIGNAL INTEGRITY PROBLEM.THIS IS CALLED SHIELDING . MAINTAIN STABLE SUPPLY. FAST SLEW RATE. JOGING(INCRAESE HALF TRACK BY HALF ITCH). LAYER JUMPING(JUMP ONE LAYER ABOVE LAYER AND COMES TO SAME LAYER) INCREASE DRIVE STRENTH OF CELL CELL SIZING(UP SIZING) DEEP N-WELL. GUARD RING. FIXING ELECTRO MIGRATION ELECTRO MIGRATION : WHEN HIGH CURRENT DENSITY TRANSFERRING THROUGH A LONG WIRE FOR A LONG TIME DUE TO THIS ELECTRONS MOVED WITH HIGH ACCELARATIONS ,DUE TO THIS THOSE ARE TRANSFERRING THEIR MOMENTUM TO THE METAL ATOMS.DUE TO THESE CAN MIGRATE AND MOVE AWAY FROM THE METAL . THIS CAN CAUSES THE SHORTS AND OPENS. FIXES BY AVOIDING THIS PROBLEM DOUBLE THE WIDTH OF NETS. AVOID THE BIG DRIVERS AND LARGE BUFFERS. FIXING SETUP AND FIXING HOLD TIME SETUP TIME: THE MINIMUM AMOUNT OF TIME THE DATA SHOULD BE STABLE BEFORE ARRIVAL OF SENSITIVE CLCK. SETUP CHECK:THE DATA LAUNCHED AT THE SENSITIVE EDGE OF THE LAUNCH FLOP SHOULD BE CAPTURED AT THE NEXT SENSITIVE EDGE OF THE CAPTURED FLOP. HOLD TIME: THE MINIMUM AMOUNT OF TIME THE DATA SHOULD BE STABLE AFTER ARRIVAL OF SENSITIVE CLOCK. HOLD CHECK: THE DATA LAUNCHED AT THE SENSITIVE EDGE OF THE LAUNCH FLOP SHOULD NOT BE CAPTURE AT THE SAME SENSITIVE EDGE OF CAPTURED FLOP. SETUP FIXES: 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. BUFFER INSERTION REDUCE NET LENGTH CELL UP SIZING. DRIVE STRENGTH OF LAUNCH FLOP INCREASE. LOGICAL OPTIMIZATION ON DATA PATH. USEFUL SKEW. PIPELINING. USE SYNC CELLS. NET WIDTH INCREASE. USE LVT CELLS. SPLITTING THE COMBINATIONAL LOGIC. INCREASE CLOCK PERIOD. USING DOUBLE SYNCHRONIZER USING FLIP FLOPS. REDUNDANT VIA. HOLD FIXES: 1. 2. 3. 4. 5. 6. DELAY BUFFER INSERTION. CELL DOWN SIZING. INCREASE NET LENGTH. USE HVT CELLS. SCAN CHAIN REORDERING. ADJUSTING CLOCK PERIOD. 7. CAN BE FIXED BY ADDING DELAYS ON INPUT PORTS. VERIFICATION'S PHYSICAL VERIFICATION: IN PHYSICAL VERIFICATION IT CHECKS: 1. LVS(LAYOUT VERSUS SCHEMATIC) 2. DRC(DESIGN RULE CONSTRAINTS CHECK) 3. ERC(ELECTRICAL RULE CHECK) LAYOUT VERSUS SCHEMATIC(LVS): INPUTS ARE (.LVS.V) AND (.GDSII) FILES. COMPARISION TWO ELECTRICAL CIRCUITS EQUIVALENT WITH RESPECT TO THEIR "CONNECTIVITY" AND "TOTAL TRANSISTOR COUNT". COMPARISION BETWEEN (.GDSII) FILE AND EXTRCTED NETLIST (.LVS.V) FILE. FINALLY BOTH ARE CONVERTED INTO A SPICE LEVEL . LVS CHECKS ARE: EXTRACT ERRORS : SHORTS OPENS FLOATING NETS. COMPARE ERRORS: PIN ERRORS PARAMETRIC ERRORS DEVICE MISMATCH NET MISMATCH MALFORMED DEVICES PORTS MISMATCH DESIGN RULE CONSTARINTS CHECK(DRC): INPUT IS .GDSII FILE. CHECKS: ACTIVE TO ACTIVE SPACINGS. WELL TO WELL SPACINGS. MINIMUM CHANNEL LENGTH OF THE TRANSISTOR. MINIMMUM METAL WIDTH. METAL TO METAL SPACINGS. ESD(ELECTRO STATIC DISCHARGE). I/O RULES. METAL FILL DENSITY. ELECTRICAL RULE CHECK(ERC): INPUT IS (.GDSII) FILE . INVOLVES CHECKING A DESIGN FOR ALL ELECTRICAL CONNECTIONS. CHECKS ARE: WELL AND SUBSTRATE AREAS FOR PROPER CONTACTS AND SPCINGS THERE BY ENSURING CORRECT POWER CONTACTS AND GROUND CONNECTIONS. TO LOCATE FLOATING DEVICES AND FLOATING WELLS. TO LOCATE DEVICE WICH ARE SHORTED. TO LOCATE DEVICES WITH MISSING CONNECTIONS. GATE CONNECTRD DIRECTLY TO SUPPLIES. FLOATING INPUTS. FORMAL VERIFICATIONS: IN FORMAL VERIFICATION CHECKS ARE LEC(LOGICAL EQUIVALENCE CHECK). CHECKING BETWEEN FINALLY EXTRCCTED NETLIST(.V) AND SYNTHESIZED NETLIST(.V). INPUTS ARE EXTRCCTED NETLIST(.V) AND SYNTHESIZED NETLIST(.V). HERE CHECKING FOR FUNCTIONALITY CORRECTNESS. SCENARIO'S SCENARIO SCENARIO = MODE + CORNER. MODE: MODE IS DEFINED AS A SET OF CLOCKS , SUPPLY VOLTAGES ,TIMING CONSTRAINTS AND LIBRARIES. MODES TYPE: 1. FUNCTIONAL MODE. 2. TEST MODE. IT CONTAINS SDC CONSTRAINTS. IN DESIGN DIFFERENT FUNCTIONALITY MODES CONTAINS DIFFERENT SDC'S. IN DESIGN DIFFERENT FUNCTIONALITY MODES ARE PRESENT. CONSTRAINTS IN TEST MODE WHILE THE CHIP IS A DEVICES UNDER TEST: TESTER CLOCK PERIOD AND CLOCK SOURCES. MODEL TESTER SKEW ON THE INPUT PORTS. DIFFERENT TIMING EXCEPTIONS. DIFFERENT SETUP/HOLD ON THE OUTPUT PORTS. THE SCAN CHAIN IS EXCERSIED IN TEST MODE.(NOT IN FUNCTIONAL MODE). CORNERS: CORNERS CONTAINS PVT'S. PVT : BEST CASE CORNER WORST CASE CORNER. BEST CASE : --------->FASTEST<-------->MIN DELAYS<------------> FOR HOLD MAX DELAYS IN DATA PATH . MIN DELAYS IN CLOCK PATH. PVT: PROCESS---------------------->FAST VOLTAGE--------------------->HIGH TEMPERATURE------------>LOW WORST CASE: --------->SLOWEST<-------->MAX DELAYS<------------> FOR SETUP MIN DELAYS IN DATA PATH. MAX DELAYS IN CLOCK PATH. PVT: PROCESS-------------------->SLOW VOLTAGE-------------------->LOW TEMPERATURE----------->HIGH