vlsi digital systems design layout of: standard cells gate arrays sea of gates rules of thumb pass...
Post on 21-Dec-2015
224 views
TRANSCRIPT
VLSI Digital Systems Design
• Layout of:• Standard Cells• Gate Arrays• Sea of Gates• Rules of Thumb• Pass Gates• Multiplexers
Standard Cells
● Different cells need different areas● Fix one dimension: height
– VDD and VSS busses traverse the cell– At top and bottom– Connect by abutment– Internal area for connecting transistors
● Vary width● Also called polycells
Standard Cell Transistor Sizing
● All pMOS same size: maximum allowed● All nMOS same size: maximum allowed● Further optimization:
– Adjust individual transistor sizes– Larger transistors
● Pro: Larger drive● Con: Larger input and output capacitance, area
– Smaller transistors● Con: Smaller drive● Pro: Smaller input and output capacitance, area
Standard Cell
aa bb cc zzddddddaaddddddbbddddddccddddddzzdddddddddddddd-Vdd aa dd bb cc dd zz pppp--ppddpp--pppppp--ppdd zz **pp--pp**pp--pp**pp--pp** zz mmpp--pppppp--ppmmpp--pppp zz mm aa bb mm cc zz mmmmaammmmmmbbmmmmmmccmmmmmm** aa bb cc zz aa bb cc zz aa bb cc zz aa bb cc zz aa bb cc zz nnnn--nnnnnn--nnnnnn--nnnn zz **nn--nnnnnn--nnnnnn--nn**mm** ssnn—-nnnnnn--nnnnnn--nnss zz ss aa bb cc ss zzssssssaassssssbbssssssccsssssszzssssssssssssss-Vss aa bb cc zz
Standard Cell with Reduced nMOS Capacitance
aa bb cc zzddddddaaddddddbbddddddccddddddzzdddddddddddddd-Vdd aa dd bb cc dd zz pppp--ppddpp--pppppp--ppdd zz **pp--pp**pp--pp**pp--pp** zz mmpp--pppppp--ppmmpp--pppp zz mm aa bb mm cc zz mmmmaammmmmmbbmmmmmmccmmmmmm** aa bb cc zz aa bbbbbb cc zz aa bb cc zz aa bb cccccccccc zz aa bb cc zz nnnn--nn--nn--nnnn zz **nn--nn--nn--nn**mmmmmmmmmm** ssnn—-nn--nn--nnss zz ss aa bb cc zzssssssaassbbssccsssssssssssssszzssssssssssssss-Vss aa bb cc zz
Standard Cell with Metal2 Ports
aa 22 bb 22 cc 22 22ddddddaadd22ddbbdd22ddccdd22dd22dddddddddddddd-Vdd aa 22 bb 22 cc 22 22 pppp--pp22pp--pp22pp--pp22 22 **pp--pp22pp--pp22pp--pp22 22 mmpp--pp22pp--pp22pp--pp22 22 mm aa 22 bb 22 cc 22 22 mmmmaamm22mmbbmm22mmccmm22mm** aa 22 bb 22 cc 22 22 aa ** bb ** cc ** 22 aa mm bb mm cc mm 22 aaaa** bbbb** cccc** 22 aa 22 bb 22 cc 22 22 nnnn--nn22nn--nn22nn--nn22 22 **nn--nn22nn--nn22nn--nn22mm** ssnn—-nn22nn--nn22nn--nn22 22 ss aa 22 bb 22 cc 22 22ssssssaass22ssbbss22ssccss22ss22ssssssssssssss-Vss aa 22 bb 22 cc 22 22
Gate Arrays
● Fixed layers– Well– Diffusion– Polysilicon
● Programmed layers– Contact– Metal1– Via– Metal2
Gate Array Cell Site
** ** ** dd**ddaadd**ddbbdd***dccdd**dddddddddddddddddd-Vdd aa bb cc pppp--pppppp--pppppp--pppp **pp--pp**pp--pp**pp--pp** pppp--pppppp--pppppp--pppp aa bb cc aa bb cc aa bb cc ** ** ** ** ** ** aa bb cc nnnn--nnnnnn--nnnnnn--nnnn **nn--nn**nn--nn**nn--nn** nnnn--nnnnnn--nnnnnn--nnnn aa bb cc ss**ssaass**ssbbss**ssccss**ssssssssssssssssss-Vss ** ** **
Programmed Gate Array Cell
** ** ** dd**ddaadd**ddbbdd**ddccdd**dddddddddddddddddd-Vdd mm aa bb mm cc mmpp--pppppp--ppmmpp--pppp **pp--pp**pp--pp**pp--pp** pppp--pppppp--pppppp--ppmm aa mm bb cc mm aa mmmmbbmmmmmmccmmmm aa bb cc mm ** ** ** mm mm mm mm mm ** ** ** mm aa bb cc mm nnnn--nnnnnn--nnnnnn--nnmm **nn--nn**nn--nn**nn--nn** mmnn--nnnnnn--nnnnnn--nnnn mm aa bb cc ss**ssaass**ssbbss**ssccss**ssssssssssssssssss-Vss ** ** **
Gate Array Parameters
● For all chips:– Fixed number of transistors in each logic cell
● Fragmentation if need fewer in a logic cell● Can gang cells
– Fragmentation if need fewer than even multiple
– Fixed transistor size– Fixed number of tracks in routing channel
Sea of Gates
● Continuous row of nMOS across master chip● Continuous row of pMOS across master chip● Consume one transistor-pair site
to isolate logic gate from its neighbor– Tie pMOS transistor gate to V
DD
– Tie nMOS transistor gate to VSS
● Also called CMOS Cell Array
Sea of Gates Advantages
● Logic gate cells are variable in size– Consume transistor pair to isolate logic gate– No need to set as parameter for all chips
● Devote area to gates or routing as required– Route over unused transistors– No need to set as parameter for all chips
Sea of Gates Transistor Array
ddddddeeddddddaaddddddbbddddddccddddddffdddddd-Vdd ee aa bb cc ff pppppp--pppppp--pppppp--pppppp--pppppp--pppppppp**pp--pp**pp--pp**pp--pp**pp--pp**pp--pp**pppppppp--pppppp--pppppp--pppppp--pppppp--pppppp ee aa bb cc ff ee aa bb cc ff ee aa bb cc ff ** ** ** ** ** ** ** ** ** ** ee aa bb cc ff nnnnnn--nnnnnn--nnnnnn--nnnnnn--nnnnnn--nnnnnnnn**nn--nn**nn--nn**nn--nn**nn--nn**nn--nn**nnnnnnnn—-nnnnnn--nnnnnn--nnnnnn--nnnnnn--nnnnnn ee aa bb cc ff sssssseessssssaassssssbbssssssccssssssffssssss-Vss
Programmed Sea of Gates
dddddd**ddddddaaddddddbbddddddccdddddd**dddddd-Vdd ee dd aa bb dd cc ff pppppp--ppddpp--pppppp--ppddpp--pppppp--pppppppp**pp--pp**pp--pp**pp--pp**pp--pp**pp--pp**pppppppp--pppppp--ppmmpp--pppppp--pppppp--pppppp ee aa mm bb cc ff ee aa mmmmmmmmmmmmmmmmmm ff ee aa bb cc mm ff ** ** ** ** mm ** mm mm mm mm-Z ** ** ** ** mm ** ee aa bb cc mm ff nnnnnn--nnnnnn--nnnnnn--nnnnnn--nnmmnn--nnnnnnnn**nn--nn**nn--nn**nn--nn**nn--nn**nn--nn**nnnnnnnn--nnssnn--nnnnnn--nnnnnn--nnnnnn--nnnnnn ee ss aa bb cc ff ssssss**ssssssaassssssbbssssssccssssss**ssssss-Vss
Layout Rules of Thumb, Page 1
● Timing Rules of Thumb, cmpe222_05full_complement_ppt.ppg,pages 12 and 13
● Run VDD
in metal at top of cell
● Run VSS
in metal at bottom of cell
● Run gate input in polysilicon vertically for each transistor
Layout Rules of Thumb, Page 2
● Create diffusion segmentsby ordering transistors to maximizesource-drain connections by abutment
● Place pMOS segments close to VDD
● Place nMOS segments close to VSS
● Minimize internal node capacitance
Transistor-Level v. Gate-Level
● 10 – 100 transistor logic block● 25 – 75 % reduction in area● More source-drain connections by abutment● Less fragmentation● Labor intensive
–Reserve for frequently-occurring structures
●Standard cells●Datapath
Minimize Output Drain Capacitance
● If you have a choice to connectparallel transistors either to:
–output, or
–VDD
or VDD
● Choose source-drain connections by abutmentto connect to output
● Minimize output drain capacitance
–Faster gate● Maximize V
DD or V
DD capacitance
–Less noise
Success at Minimizing Nor Output Drain Capacitance
**dddddddddddddddddddddddddddddddddddddddddddd-Vdd dd **pp--pp**pp--pp** aa bb mm aa mmmmbbmmmmmm-Z aa mm bb **nn--nn**nn--nn** ss aa bb ss**ssssaassssssbbssssssssssssssssssssssssssssss-Vss aa bb A-aa B-bb
Failure at Minimizing Nor Output Drain Capacitance
**dddddddddddddddddddddddddddddddddddddddddddd-Vdd dd **pp--pp**pp--pp** aa bb mm mmmmaammmmmmbbmmmmmm-Z mm aa bb mm **nn--nn**nn--nn** aa ss bb **ssssaassssssbbssssssssssssssssssssssssssssss-Vss aa bb A-aa B-bb
Success at Minimizing Output Drain Capacitance
**dddddddddddddddddddddddddddddddddddddddddddd-Vdd dd dd **pp--pp**pp--pppppp--pppppp--pp** aa mm bb cc ee Z-mmmmaammmm bb cc ee mm aa bb cc ee mm aa mmmmbbmmmmmmccmmmm ee mm aa mm bb cc mm ee **nn--nn**nn--nn**nn--nn**nn--nn** aa bb ss cc ee ss aa bb ss cc ee ss aa bb ss cc ee ss**ssssaassssssbbssssssccsssssseessssssssssssss-Vss aa bb cc ee A-aa B-bb C-cc D-ee
Failure at Minimizing Output Drain Capacitance
**dddddddddddddddddddddddddddddddddddddddddddd-Vdd dd **pp--pp**pp--pppppp--pppppp--pp** mm aa bb cc ee mm mmmmaammmmmmbbmmmmmmccmmmmmmeemmmmmmmmmmmmmm-Z aa bb cc ee mm aa bb mmmmccmmmmmmeemmmm aa bb mm cc ee **nn--nn**nn--nn**nn--nn**nn--nn** ss aa mm bb cc mm ee ss aa mmmmbbmmmmmmccmmmm ee ss aa bb cc ee **ssssaassssssbbssssssccsssssseessssssssssssss-Vss aa bb cc ee A-aa B-bb C-cc D-ee
Pass Gate Layout
1.Minimal area• No horizontal metal pass-through
2.Allow horizontal metal pass-through• Larger area
3.Allow horizontal metal pass-through• Using metal2
Pass Gate Layout w Metal Pass-Throughs
aa **mm**pp--pp**mm** cc eemmccmmmmmmmmmmmmmmeemm cc eemmccmmmmmmmmmmmmmmeemm cc eemmccmmmmmmmmmmmmmmeemm cc ee **mm**nn--nn**mm** bb
Pass Gate Layout w Pass-Thru Using Metal2
aa **pp--pp** mm mm ** ** 22 22mmmmmm22mmmmmm22mmmmmm 22 22 ** ** mm mm **nn--nn** bb
Route Select Signals to Array
1.Run horizontally in metal, outside transistors
2.Run vertically in polysilicon
3.Run vertically in polysilicon strapped by metal1
Pass Gate with Select Run Outside
mmmmmmmmmm**mmmmmmmmmm aa **pp--pp** mm mm mm mm mm mm mm mm mm mm mm mm mm mm **nn--nn** bbmmmmmmmmmm**mmmmmmmmmm
Pass Gate with Offset Transistors
aa bb **pp--pp**mmbbmmmm mm aa bb mm mm aa bb mm mm aa bb mm mm aa bb mm mm aa bb mm mm aa bb mm mm aa bb mm mmmm—mm**nn--nn** aa bb
Pass Gate with Poly-Metal1 Strap
** mm aa mm **pp--pp** mm mm aa mm mm ** mm ** mm 22 mm 22 mm 22 mm 2222222222 22 mm mm 22 22222222** mm ** mm mm bb mm mm **nn--nn** mm bb mm **
Multiplexer Select Lines
1.Select lines continuous
2.Select lines crossed inside
3.Select lines crossed outside
Multiplexer with Continuous Select Lines
mm mm ** ** ee ff **pp--pp**pp--pp** mm ee mm mm mmA-mmmm ee **22mm22mm22-Z mm ee mm mm mm mm eeeeeeeeee mmmm-B mm mm mm ee mm **nn--nn**nn--nn** ff mm ffffffff** mm mm C-mm -C-mm
Multiplexer with Crossed Select Lines
ff ee **pp--pp**pp--pp**mmmm mm ff mm ee mmA-mmmm ff mmmmeemmmm mm mm ff ee mm mm mm ffffff ee mm mmmm-B mm ff ee mm mm mm **mmmmmm** mm mm mm ee ff mm mm mm ee ffffff mm mm mm ee ff mm mm mm ee mmmmffmmmm mm mm ee mm ff mm **nn--nn**nn--nn**mmmm ee ff C-ee -C-ff