簡報 Cln16ffcll Sr V1d0 2p1 Usage Guide
cln16ffcll_sr_v1d0_2p1_usage_guide
User Manual:
Open the PDF directly: View PDF .
Page Count: 23
Download | |
Open PDF In Browser | View PDF |
0 Security B – TSMC Restricted Secret N16FFCLL V1.0 SRAM SPICE Model Usage Guide © 2016 TSMC, Ltd 1 Outline © 2016 TSMC, Ltd Model Overview Guideline for Eldo Usage Model Package Usage file and flag settings Usage of variation model Netlist for usage of variation model Security B – TSMC Restricted Secret 2 Simulation Environment Simulation Environment Simulator: Hspice Version I-2013.12-SP2-1 Spectre Version MMSIM14.1_ISR12 Eldo Version 15.1 O/S: RH COMPILER/OS VERSION gcc 4.1.2 / Red Hat Enterprise Linux AS release 4 `IN COMPILER/OS VERSION Visual Studio 2008 / Windows 7 SUSE COMPILER/OS VERSION gcc 4.1.0 / SUSE Linux Enterprise Server 10 SUN COMPILER/OS VERSION SUNWspro (SUN Studio 11) cc 5.8 / Solaris 10 SPARC SUN X86 COMPILER/OS VERSION SUN Studio 12.1 cc 5.10 / Solaris 10 X86 © 2016 TSMC, Ltd Security B – TSMC Restricted Secret 3 Guideline for Eldo Usage Security B – TSMC Restricted Secret For users who use Eldo with Spice format netlist, the following command is needed for simulation. Add one more argument “-compat” to Eldo command line. Command ln24:/spice2> eldo –compat -i idsat.sp –o idsat.out Netlist Netlist keeps unchanged * netlist for Idsat of DUT *---------------------------------------------------------.temp 25 Command add “-compat” .option brief=1 .lib ‘usage.l’ TT_SRAM .lib ‘usage.l’ pre_simu_sr .option brief=0 Vds0 d0 0 0.85 xmdut0 d0 g s b nchpg_hcsr_mac nfin=2 l=0.02u Please note if the native Eldo binary is wrapped in a shell script in the working system, user needs to add the argument “-compat” to Eldo command line in the script. shell script © 2016 TSMC, Ltd 4 Model Package The TMI model package provided by TSMC will contain the model file, model usage files and the compiled shared libraries for different OS platforms. Please put the overall files of the model package in the same directory to do the model simulation. Security B – TSMC Restricted Secret Compiled TMI Shared Libraries Model File for Hspice/Eldo Model File for Spectre Model Usage File for Hspice/Eldo Model Usage File for Spectre All necessary option settings and the relative path of the compiled shared libraries have been set in the model usage files. Simulators will detect the settings in the model usage files and automatically link the correct TMI library for the corresponding platform. Just make sure that your simulators support TMI model process. Both ‘x’ and ‘m’ prefix of the devices are supported in TMI model. The message similar to the one shown below will be printed in the simulation output file if the simulation is through TMI model process. ********************************************************* ** TMI Share Library Version is xxxxxxxxxxxxxxx ********************************************************* © 2016 TSMC, Ltd Security B – TSMC Restricted Secret Usage file and flag settings © 2016 TSMC, Ltd 6 Usage File Security B – TSMC Restricted Secret There are two sets of corners in N16 SRAM usage file. Library “pre_simu_sr” have to be included for device level simulation, e.g. Idlin of PG. Library “pre_simu_sr_cell” have to be included for cell level simulation, e.g. Icell of 6T SRAM. Disabling the Rc_M0 of PG source site and PD drain site at cell level corners is the major difference of those two sets. By doing that, the Icell simulation at pre_simu_sr_cell stage can close to the post-simu result. At post-simu stage, Rc_M0 is extracted by LPE. No difference between device corners and cell corners. (pre_simu_sr / pre_simu_sr_cell are forbidden) 1. Rc_M0 at both S/D are added at presimu stage of device corners by including “pre_simu_sr” lib. 2. Rc_M0 at PG source site and PD drain site are disabled at pre-simu stage of cell corners by including “pre_simu_sr_cell” lib. PU Rc_M0 PU Rc_M0 PG PG Icell PD Vss © 2016 TSMC, Ltd PD 7 Usage of Pre-layout Simulation Security B – TSMC Restricted Secret The “Ccosflag”, “Ccodflag”, “Rcosflag”, “Rcodflag” and “Rgflag” are globally changed parameters for MOS device. The contact to poly cap, contact resistor and gate resistor are included when flags are set to 1 respectively for pre-layout simulation. User can include a “pre_simu_sr” or “pre_simu_sr_cell” library to set flags for pre-layout device level or cell level simulation respectively. (the pre_simu_sr and pre_simu_sr_cell lib are in usage.l ) pre_simu_sr .lib pre_simu_sr .param ccodflag_hcsr = 1 .param ccodflag_hdsr = 1 .param ccodflag_hpsr = 1 .param ccodflag_dpfsr = 1 .param ccosflag_hcsr = 1 .param ccosflag_hdsr = 1 .param ccosflag_hpsr = 1 .param ccosflag_dpfsr = 1 .param rcodflag_hcsr = 1 .param rcodflag_hdsr = 1 .param rcodflag_hpsr = 1 .param rcodflag_dpfsr = 1 .param rcosflag_hcsr = 1 .param rcosflag_hdsr = 1 .param rcosflag_hpsr = 1 .param rcosflag_dpfsr = 1 .param rgflag_hcsr = 1 .param rgflag_hdsr = 1 .param rgflag_hpsr = 1 .param rgflag_dpfsr =1 .endl pre_simu_sr © 2016 TSMC, Ltd Netlist_device corners * netlist for Idsat of DUT *---------------------------------------------------------.temp 25.000 .lib ‘usage.l' TT_SRAM .lib ‘usage.l' pre_simu_sr Vgs g 0 0.850 Vss s 0 0.000 Vbs b 0 0.000 .op .dc Vgs 0 0.850 0.850 Vds1 d1 0 0.85 xmdut1 d1 g s b nchpg_hcsr_mac nfin=2 l=0.020u .meas idsat_temp1 find i(Vds1) when v(g)=0.85 .meas idsat1 param='-idsat_temp1*1e6' .end Please notice that the library “pre_simu_sr” (or “pre_simu_sr_cell”) need to be placed behind TT_SRAM to prevent from the redefine (flag change back to 0). pre_simu_sr_cell .lib pre_simu_sr_cell .param ccodflag_hcsr = 1 .param ccodflag_hdsr = 1 .param ccodflag_hpsr = 1 .param ccodflag_dpfsr = 1 .param ccosflag_hcsr = 1 .param ccosflag_hdsr = 1 .param ccosflag_hpsr = 1 .param ccosflag_dpfsr = 1 .param cellflag_hcsr = 1 .param cellflag_hdsr = 1 .param cellflag_hpsr = 1 .param cellflag_dpfsr = 1 .param rcodflag_hcsr = 1 .param rcodflag_hdsr = 1 .param rcodflag_hpsr = 1 .param rcodflag_dpfsr = 1 .param rcosflag_hcsr = 1 .param rcosflag_hdsr = 1 .param rcosflag_hpsr = 1 .param rcosflag_dpfsr = 1 .param rgflag_hcsr = 1 .param rgflag_hdsr = 1 .param rgflag_hpsr = 1 .param rgflag_dpfsr = 1 .endl pre_simu_sr_cell Netlist_cell corners * netlist for Icell of hcsr *---------------------------------------------------------.temp 25 .lib ‘usage.l' TT_SRAM .lib ‘usage.l' pre_simu_sr_cell .global vdd vss .param pwr=0.85 XPpu1 bl_in g1 vdd vdd pchpu_hcsr_mac nfin=1 l=0.02u XPpu2 blb_in g2 vdd vdd pchpu_hcsr_mac nfin=1 l=0.02u XNpd1 bl_in g1 vss vss nchpd_hcsr_mac nfin=2 l=0.02u XNpd2 blb_in g2 vss vss nchpd_hcsr_mac nfin=2 l=0.02u XNpg1 bl wl bl_in vss nchpg_hcsr_mac nfin=2 l=0.02u XNpg2 blb wl blb_in vss nchpg_hcsr_mac nfin=2 l=0.02u vdd vdd 0 pwr vss vss 0 0 vbl bl 0 pwr vblb blb 0 pwr vwl wl 0 pwl (0 0 0.2ns 0 0.3ns pwr) v1 g2 bl_in 0 v2 blb_in g1 0 .nodeset v(bl_in)=0 v(blb_in)=pwr .tran 0.05ns 0.8ns .meas tran cell_iu find par('i(vbl)*(-1e6)') at '0.7ns' .meas tran standby_ip find par('(i(vss)*1e12+i(vwl)*1e12)') at '0.1ns' .end 8 N16FFC SRAM Flag Setting Flag settings The usage file handles all these flags, so the users don’t need to worry about them. A flag in instance parameters has higher priority than a flag in model setup lib. Global Flag in setup lib © 2016 TSMC, Ltd Security B – TSMC Restricted Secret 9 N16FFC Flag Setting Flag settings Security B – TSMC Restricted Secret Except the flag in Lib ‘setup_sr’ which can change the flag setting globally for all transistors when simulation, some flags are added as instance parameters for user to change the flag for specified transistors. A flag in instance parameters has higher priority than a flag in model setup lib. Flag in Instant parameters © 2016 TSMC, Ltd Security B – TSMC Restricted Secret Usage of variation model © 2016 TSMC, Ltd 11 Common Variation Simulation Options (1) Traditional total corner approach Security B – TSMC Restricted Secret Assumes all transistors in the chip are moving toward the same direction, which is not realistic and may be too conservative. In some circuits, this approach is too aggressive because it assumes no mismatch between transistors. Global corner only (or with local Monte Carlo) As fast as traditional total corner simulation, but is more realistic. Not suitable for circuits with very small number of transistors and mismatchsensitive circuits (analog). Local Monte Carlo Only For mismatch simulation. Full Monte Carlo simulation (Global Monte Carlo + Local Monte Carlo) The same global variation applies to all devices, while each device gets random local variation. Too slow. © 2016 TSMC, Ltd 12 Common Variation Simulation Options (2) Worst bit Icell Simulation approach Security B – TSMC Restricted Secret Defined to simulate the worst bit Icell current. It is done by SSg corner simulation with a given “nicell” value. Users can set value based on their interested memory size and CDF%. Worst bit Icell simulation for dual port (DP) SRAM cell has to add extra instance parameter “wbifactor = 1” at PortB PG devices if Icell is extracted by PortA PG devices and vice versa. (See page-21 for sample netlist) Worst bit Icell simulation is only available for Vdd ~ 0.8*Vdd and 125C ~ -40C. Dual port SRAM schematic circuit © 2016 TSMC, Ltd 13 Model Usage File Security B – TSMC Restricted Secret Pre-defined libs prepared in usage file Collect the must-used libs to prevent from misuse 5 simulation cases are included in the usage file. Add one more lib, .lib pre_simu_sr for device level and pre_simu_sr_cell for cell level, to address parameter setting (ex. ccoflag, cellflag). Total variation Total variation corner Local variation Global variation Global variation FFG and SSG Local variation Mismatch SS TT FF TT Parameter_1 © 2016 TSMC, Ltd Parameter_1 Security B – TSMC Restricted Secret Netlist for usage of variation model © 2016 TSMC, Ltd 15 Model Usage File: Case1 Case1: Conventional fixed corner model It is identical to the existing TSMC fixed corner .option nomod ingold=2 + newtol numdgt=7 relmos=1e-4 absmos=1e-8 relv=1e-4 relvdc=1e-4 .option MODSRH=0 *---------------------------------------------------------.temp 25.000 .option brief=1 .lib ‘usage.l' TT_SRAM .option brief=0 Vgs g 0 0.850 Vss s 0 0.000 Vbs b 0 0.000 Vds0 d0 0 0.850 mdut0 d0 g s b nchpg_hcsr_mac nfin=2 l=0.02u .op .dc vgs 0 0.850 0.850 .print + id_dut0_=par('abs(i(Vds0))') .end © 2016 TSMC, Ltd Set the devices’ Fin number and Ldrawn Security B – TSMC Restricted Secret 16 Model Usage File: Case2 Case2: Global variation only corner + local variation Monte Carlo Security B – TSMC Restricted Secret Users can run mismatch model on top of each global variation only corner model. Perform functional check on corner condition and understand design margin. This methodology can help to check the contribution from local and global respectively. Apply on mismatch/local variation sensitivity circuits: SRAM/Diff Amp/VCO/setup time/hold time characterization, … etc. .option nomod ingold=2 + newtol numdgt=7 relmos=1e-4 absmos=1e-8 relv=1e-4 relvdc=1e-4 .option MODSRH=0 *---------------------------------------------------------.temp 25.000 .option brief=1 .lib ‘usage.l ' TTGlobalCorner_LocalMC_SRAM .option brief=0 Global variation FFG and SSG Local variation Vgs g 0 0.850 Vss s 0 0.000 Vbs b 0 0.000 Vds0 d0 0 0.850 xmdut0 d0 g s b nchpg_hcsr_mac nfin=2 l=0.02u Set the devices’ Fin number and Ldrawn .op .dc vgs 0 0.850 0.850 sweep monte=1 .print + id_dut0_=par('abs(i(Vds0))') .end © 2016 TSMC, Ltd Parameter 1 17 Model Usage File: Case3 Case3: Local variation Monte Carlo The same purpose as conventional mismatch model. .option nomod ingold=2 + newtol numdgt=7 relmos=1e-4 absmos=1e-8 relv=1e-4 relvdc=1e-4 .option MODSRH=0 *---------------------------------------------------------.temp 25.000 .option brief=1 .lib ‘usage.l' LocalMCOnly_SRAM .option brief=0 Vgs g 0 0.850 Vss s 0 0.000 Vbs b 0 0.000 Vds0 d0 0 0.850 xmdut0 d0 g s b nchpg_hcsr_mac nfin=2 l=0.02u Set the devices’ Fin number and Ldrawn .op .dc vgs 0 0.850 0.850 sweep monte=1 .print + id_dut0_=par('abs(i(Vds0))') .end © 2016 TSMC, Ltd Security B – TSMC Restricted Secret 18 Model Usage File: Case4 Security B – TSMC Restricted Secret Case4: Global variation Monte Carlo + Local variation Monte Carlo Global variation: all trans share one set of random numbers for each MC run. Local variation: Each trans applies different set of random numbers for each MC run. The result is a distribution function which can predict the silicon distribution accurately. Can meet the rule listed on RHS completely. .option nomod ingold=2 + newtol numdgt=7 relmos=1e-4 absmos=1e-8 relv=1e-4 relvdc=1e-4 .option MODSRH=0 *---------------------------------------------------------.temp 25.000 .option brief=1 .lib ‘usage.l' GlobalMC_LocalMC_SRAM .option brief=0 total2 global2 local2 global MC + local MC Total variation Vgs g 0 0.850 Vss s 0 0.000 Vbs b 0 0.000 Vds0 d0 0 0.850 xmdut0 d0 g s b nchpg_hcsr_mac nfin=2 l=0.02u Set the devices’ Fin number and Ldrawn .op .dc vgs 0 0.850 0.850 sweep monte=1 .print + id_dut0_=par('abs(i(Vds0))') .end © 2016 TSMC, Ltd Total variation corner Local variation Global variation Parameter 1 19 Model Usage File: Case5-1 Security B – TSMC Restricted Secret Case5-1: Worst bit Icell simulation by global parameter setting: XPpu1 bl_in g1 vdd vdd pchpu_hcsr_mac XPpu2 blb_in g2 vdd vdd pchpu_hcsr_mac XNpd1 bl_in g1 vss vss nchpd_hcsr_mac XNpd2 blb_in g2 vss vss nchpd_hcsr_mac XNpg1 bl wl bl_in vss nchpg_hcsr_mac XNpg2 blb wl blb_in vss nchpg_hcsr_mac nfin=1 l=LPU nfin=1 l=LPU nfin=2 l=LPD nfin=2 l=LPD nfin=2 l=LPG nfin=2 l=LPG vdd vdd 0 pwr vss vss 0 0 vbl bl 0 pwr vblb blb 0 pwr vwl wl 0 pwl (0 0 0.2ns 0 0.3ns pwr) v1 g2 bl_in 0 v2 blb_in g1 0 .nodeset v(bl_in)=0 v(blb_in)=pwr .tran 0.05ns 0.8ns .meas tran cell_iu find par('i(vbl)*(-1e6)') at '0.7ns' .end © 2016 TSMC, Ltd “nicell” Set the devices’ Fin number and Ldrawn Worst bit Icell vs. nicell Worst bit Icell .option gmindc=1.0E-18 gmin=1.0E-18 .prot .lib ‘usage.l’ SSGlobalCorner_LocalMC_SRAM .lib ‘usage.l' pre_simu_sr_cell .unprot .param nicell_hcsr=6 Set the global parameter .global vdd vss .param pwr=0.765 .temp -30 .param LPU=20N .param LPD=20N Set the devices’ Ldrawn .param LPG=20N SSg corner 0 6 nicell 20 Model Usage File: Case5-2 Security B – TSMC Restricted Secret Case5-2: Worst bit Icell simulation by instance parameter setting: .option gmindc=1.0E-18 gmin=1.0E-18 .prot .lib ‘usage.l’ SSGlobalCorner_LocalMC_SRAM .lib ‘usage.l' pre_simu_sr_cell .unprot .global vdd vss .param pwr=0.765 .temp -30 .param LPU=20N .param LPD=20N .param LPG=20N Set the devices’ Ldrawn Set the devices’ Fin number and Ldrawn nfin=1 l=LPU nfin=1 l=LPU nfin=2 l=LPD nfin=2 l=LPD nfin=2 l=LPG nfin=2 l=LPG vdd vdd 0 pwr vss vss 0 0 vbl bl 0 pwr vblb blb 0 pwr vwl wl 0 pwl (0 0 0.2ns 0 0.3ns pwr) v1 g2 bl_in 0 v2 blb_in g1 0 .nodeset v(bl_in)=0 v(blb_in)=pwr .tran 0.05ns 0.8ns .meas tran cell_iu find par('i(vbl)*(-1e6)') at '0.7ns' .end © 2016 TSMC, Ltd nicell=6 nicell=6 nicell=6 nicell=6 nicell=6 nicell=6 Set the instance parameter “nicell” Worst bit Icell vs. nicell Worst bit Icell XPpu1 bl_in g1 vdd vdd pchpu_hcsr_mac XPpu2 blb_in g2 vdd vdd pchpu_hcsr_mac XNpd1 bl_in g1 vss vss nchpd_hcsr_mac XNpd2 blb_in g2 vss vss nchpd_hcsr_mac XNpg1 bl wl bl_in vss nchpg_hcsr_mac XNpg2 blb wl blb_in vss nchpg_hcsr_mac SSg corner 0 6 nicell 21 Model Usage File: Case5-3 Case5-3: Worst bit Icell simulation for dual port SRAM cell (DP only) PortB © 2016 TSMC, Ltd It has to add extra instance parameter “wbifactor=1” at PortB PG devices if Icell is extracted by PortA PG devices and vice versa. The usage of “nicell” is same as “case5-1 or case5-2”. .option gmindc=1.0E-18 gmin=1.0E-18 .prot .lib ‘usage.l’ SSGlobalCorner_LocalMC_SRAM .lib ‘usage.l' pre_simu_sr_cell .unprot .param nicell_dpfsr=6 .global vdd vss .param pwr=0.765 .temp -30 xppu1 bl_in g1 vdd vdd pchpu_dpfsr_mac nfin=1 l=0.02u xPpu2 blb_in g2 vdd vdd pchpu_dpfsr_mac nfin=1 l=0.02u xNpd1 bl_in g1 vss vss nchpd_dpfsr_mac nfin=4 l=0.02u xNpd2 blb_in g2 vss vss nchpd_dpfsr_mac nfin=4 l=0.02u xNpg1 bl wl bl_in vss nchpg_dpfsr_mac nfin=2 l=0.02u xNpg2 blb wl blb_in vss nchpg_dpfsr_mac nfin=2 l=0.02u xNpg3 blx wlx bl_in vss nchpg_dpfsr_mac nfin=2 l=0.02u wbifactor=1 xNpg4 blbx wlx blb_in vss nchpg_dpfsr_mac nfin=2 l=0.02u wbifactor=1 vdd vdd 0 pwr vss vss 0 0 vbl bl 0 pwr vblb blb 0 pwr vblx blx 0 pwr vblbx blbx 0 pwr vwl wl 0 pwl (0 0 0.2ns 0 0.3ns pwr) vwlx wlx 0 pwl (0 0 0.2ns 0 0.3ns pwr) v1 g2 bl_in 0 v2 blb_in g1 0 .nodeset v(bl_in)=0 v(blb_in)=pwr Extract Icell from PortA PG .tran 0.05ns 0.8ns .meas tran cell_iu find par('i(vbl)*(-1e6)') at '0.7ns' .end Worst bit Icell vs. nicell Worst bit Icell PortA Security B – TSMC Restricted Secret SSg corner 0 6 nicell 22 Iboff Worst Case Model Usage Security B – TSMC Restricted Secret The “iboff_flag” is a globally changed parameter. The worst case Iboff scenario will be activated if user sets iboff_flag=1 The “iboff_flag” is included in all total corners. * netlist for Idsat of DUT *---------------------------------------------------------.temp 25 .lib ‘usage.l' tt_sram .param iboff_flag_hcsr=1 Vds0 d0 0 0.85 xmdut0 d0 g s b nchpg_hcsr_mac nfin=2 l=0.02u .op .dc vgs 0 0.85 0.85 .print + id_dut0_=par('abs(i(Vds0))') .end © 2016 TSMC, Ltd SS TT FF iboff_flag_hcsr=1 Iboff(pA) Vgs g 0 0.85 Vss s 0 0 Vbs b 0 0 Iboff Worst Case 1.0E+01 iboff_flag_hcsr=0 1.0E+00 1.0E+00 1.0E+01 Isoff(pA) 1.0E+02
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf PDF Version : 1.5 Linearized : No Page Count : 23 Language : zh-TW Tagged PDF : Yes Title : PowerPoint 簡報 Author : 楊昌杰 Create Date : 2016:04:25 17:13:00+08:00 Modify Date : 2016:04:25 17:13:00+08:00 Producer : Microsoft® PowerPoint® 2010 Creator : Microsoft® PowerPoint® 2010EXIF Metadata provided by EXIF.tools