# How does the Tsmc65nm calculate the Vth an u (carrier mobility)?

1. ## How does the Tsmc65nm calculate the Vth an u (carrier mobility)?

Hi all,

I am doing some research on modeling.
I am investigating the model file from tsmc65nm. The model file is huge and contains plenty of vth parameters like :
"
Line 1661: parameters dwvthprf= - 3.1e-09 * a1prf
Line 1662: parameters dpvthprf= - 1.71e-16 * a1prf
Line 1720: parameters dvthnrf=0.0285 * a1nrf
Line 1721: parameters dlvthnrf=4.5e-10 * a1nrf
Line 1722: parameters dwvthnrf=5e-10 * a1nrf
Line 1723: parameters dpvthnrf=2.05e-16 * a1nrf
Line 1852: parameters dvthnrf_18=0 + ( - 0.0063639) * a1rf_18 + ( - 0.0015722) * a2rf_18
Line 1854: parameters dlvthnrf_18=0 + (1.7513e-010) * a1rf_18 + ( - 6.9137e-010) *
Line 1856: parameters dwvthnrf_18=0 + ( - 8.3735e-011) * a1rf_18 + ( - 2.0686e-011)
Line 1858: parameters dpvthnrf_18=0 + ( - 4.9068e-016) * a1rf_18 + ( - 3.2312e-017)
Line 1891: parameters dvthprf_18=0 + (0.0030887) * a1rf_18 + (0.0042809) * a2rf_18
Line 1893: parameters dlvthprf_18=0 + (2.7388e-010) * a1rf_18 + (7.0657e-010) * a2rf_18
Line 1895: parameters dwvthprf_18=0 + (7.3006e-010) * a1rf_18 + ( - 7.2584e-011) *
Line 1897: parameters dpvthprf_18=0 + (2.9312e-016) * a1rf_18 + (9.8592e-017) * a2rf_18
"

I have no clue on which one is used to reflect the real Vth of a device and is there a manual explaining these parameters? How about the mobility formula?

Anyone who present his/her knowledge on calculation of Vth and/or u(mobility) would be appreciated.

Thanks,
Alex

•

2. ## Re: How does the Tsmc65nm calculate the Vth ?

Extrapolating from a different model file (different foundry and different process size) I'd guess the following:

The parameters to be calculated (all starting with the letter d) from only a few secondary parameters (a1prf, a1nrf, a1rf_18, a2rf_18) are not parameters for the calculation of vth itself, but are distribution sigma parameters for the calculation of the vth variation to be analyzed by Monte Carlo mismatch and/or process spread simulation.

1st letter d stands for distribution parameter
2nd letter w, l or p (if existent) means width, length or process dependency
vth is the parameter whose variation is to be calculated
next character n or p means nMOS or pMOS
rf or rf_18 means 2 different transistor types with this name

The last 2 explanations are valid for the secondary parameters (s. above), too.

1 members found this post helpful.

3. ## Re: How does the Tsmc65nm calculate the Vth ?

Originally Posted by erikl
Extrapolating from a different model file (different foundry and different process size) I'd guess the following:

The parameters to be calculated (all starting with the letter d) from only a few secondary parameters (a1prf, a1nrf, a1rf_18, a2rf_18) are not parameters for the calculation of vth itself, but are distribution sigma parameters for the calculation of the vth variation to be analyzed by Monte Carlo mismatch and/or process spread simulation.

1st letter d stands for distribution parameter
2nd letter w, l or p (if existent) means width, length or process dependency
vth is the parameter whose variation is to be calculated
next character n or p means nMOS or pMOS
rf or rf_18 means 2 different transistor types with this name

The last 2 explanations are valid for the secondary parameters (s. above), too.
Hi Erikl,
Thank you very much. You looks quite familiar with model.
I did more investigation on this model file and prepare certain questions. I think I have found the right place for calculating THE Vth. For device say nch, I noticed there are 25 sections divided based on different length or width. Each section has similar entries including keywords 'Vth' like this:

[section（1）lmin=9.999997e-006-dxln lmax=2.00001e-05, wmin=1e-005-dxwn, wmax=0.0009000001， kvth0=19e-10， pkvth0=0， wkvth0=5e-8， lkvth0=-0.4e-8，lvth0=0+dlvthn wvth0=0+dwvthn，pvth0=0+dpvthn，llodvth=1，wlodvth=1， kvth0we=0.0036， pkvth0we=0.15e-17， wkvth0we=-9.5e-11， lkvth0we=-5.6e-11 and vth0=0.31803+dvthn]

For section (5), length varies like this:+ lmin=6e-08, lmax=1e-007-dxln by retainning width field. The vth0 changes like this: vth0=0.31703+dvthn+0.00110289*ff_flag-0.000882314*sf_flag+0.000882314*fs_flag.

Questions: 1. Based on your knowledge, what is the k (pkvth0), we(wkvth0we) and lod(lodvth, I believe it is length of diffusion)? I already know d,p,n/p,l/w from you.
2. It seems vth0 gives the value of threshold voltage. But it sort of gives a value directly with tuning parameter dvthn (secondary parameter, distribution/process parameter or whatever). Where is the place for calculation vth, this value, if it is valid. Like this :. This is the way of calculating it. So the model file should have realized it somewhere.
3. For short length or width device, the vth0 of that section is in complex expression like the one in section (5) with ff_flag and sf_flag. Do you have any clue on this?

I know those questions are very knowledge specific and I believe this forum is also a place discussing academic stuff. Hope you have knowledge on this and could enlighten me. Thank you.

Alex.

•

4. ## Re: How does the Tsmc65nm calculate the Vth ?

Originally Posted by Alex Liao
Questions: 1. Based on your knowledge, what is the k (pkvth0), we(wkvth0we) and lod(lodvth, I believe it is length of diffusion)?
Sorry, can't help you here. This seems to be quite TSMC specific. Perhaps you can ask MOSIS.

Originally Posted by Alex Liao
2. It seems vth0 gives the value of threshold voltage. But it sort of gives a value directly with tuning parameter dvthn (secondary parameter, distribution/process parameter or whatever). Where is the place for calculation vth, this value, if it is valid. Like this :. This is the way of calculating it. So the model file should have realized it somewhere.
I don't think vth is calculated by such an equation. The average vth is given anyway (vth0), and all these additional parameters just change it up to various dependencies - or define its MC spread.

Originally Posted by Alex Liao
3. For short length or width device, the vth0 of that section is in complex expression like the one in section (5) with ff_flag and sf_flag. Do you have any clue on this?
Yes. ff stands for the fast-fast process deviation, sf for slow-fast, fs for fast-slow.

1 members found this post helpful.

•

5. ## Re: How does the Tsmc65nm calculate the Vth ?

Originally Posted by erikl
I don't think vth is calculated by such an equation. The average vth is given anyway (vth0), and all these additional parameters just change it up to various dependencies - or define its MC spread.
I do believe there is some equation generating those values. I found a manual "Spectre Circuit Simulator Device Model Equations". Each different way of calculating Vth are given in this manual depending on its corresponding models and the extent of accuracy wherever required. Please refer two screen snaps here Attachment 94846 and Attachment 94847. You may know that all those parameters come from a XXX.scs file [any version of BSIM series of UC Berkley], which should be included in spectre simulator whenever simulation is performed. So I think spectre do not allow outsiders to modify their equations, rather Cadence spectre does allow us to change those model parameters to influence the result of simulation. Just like UC Berkley can provide their BSIM model parameters for spectre to utilize. Simply put, equations are there in spectre but there is nothing we could do to modify any equation (say, vth or mobility). The only thing we could do is change model parameters. Are you agree with me at this point? Hope you have more insight on this.

Regards,
Alex

6. ## Re: How does the Tsmc65nm calculate the Vth ?

Originally Posted by Alex Liao
I do believe there is some equation generating those values. I found a manual "Spectre Circuit Simulator Device Model Equations". Each different way of calculating Vth are given in this manual depending on its corresponding models and the extent of accuracy wherever required. Please refer two screen snaps here Attachment 94846 and Attachment 94847.
That's true: SPECTRE (and all SPICE variants) can use their own equations for the calculation of vth, u0, ... in case these values are not given in the model file. If these values are included, however, they (and their given dependency values) are used by priority.

BTW: I couldn't see your a.m. attachments, probably due to the recent new construction of the forum.

Originally Posted by Alex Liao
You may know that all those parameters come from a XXX.scs file [any version of BSIM series of UC Berkley], which should be included in spectre simulator whenever simulation is performed. So I think spectre do not allow outsiders to modify their equations, rather Cadence spectre does allow us to change those model parameters to influence the result of simulation. Just like UC Berkley can provide their BSIM model parameters for spectre to utilize. Simply put, equations are there in spectre but there is nothing we could do to modify any equation (say, vth or mobility). The only thing we could do is change model parameters. Are you agree with me at this point?
Sure, I agree!

Regards, erikl

1 members found this post helpful.

7. ## Re: How does the Tsmc65nm calculate the Vth ?

Erikl, It is nice discussing with you.

BTW, you probably know that in BSIM4.5 and later release, the SIT (shallow trench isolation) effects are considered. Do you know how to control the STI in any simulation.

Say, if I want to switch off the impact of STI in any simulation setting or edit STI properties of cells although it may not reflect the real case. This is just for methodology study.

For WPE (well proximity effect) I can simply set SCA/B/C = 0 to disable the impact of WPE. From your knowledge is there a similar way for STI?

Regards,
Alex

8. ## Re: How does the Tsmc65nm calculate the Vth ?

Originally Posted by Alex Liao
BTW, you probably know that in BSIM4.5 and later release, the SIT (shallow trench isolation) effects are considered. Do you know how to control the STI in any simulation.

Say, if I want to switch off the impact of STI in any simulation setting or edit STI properties of cells although it may not reflect the real case. This is just for methodology study.

For WPE (well proximity effect) I can simply set SCA/B/C = 0 to disable the impact of WPE. From your knowledge is there a similar way for STI?
Not to my knowledge, sorry.

I don't know how STI is presented in the layout - this depends on your PDK. If it is marked by an extra layer, you could perhaps totally remove this layer (eventually after smashing cells) and so remove all STI for a comparison simulation on extracted layouts.

Regards, erikl

1 members found this post helpful.

•

9. ## Re: How does the Tsmc65nm calculate the Vth ?

Originally Posted by erikl
Not to my knowledge, sorry.

I don't know how STI is presented in the layout - this depends on your PDK. If it is marked by an extra layer, you could perhaps totally remove this layer (eventually after smashing cells) and so remove all STI for a comparison simulation on extracted layouts.

Regards, erikl
Oh, perhaps I should ask our PDK provider. BTW. what is the "smashing cells''? Do you mean netlisting cells?

Thanks,Alex.

10. ## Re: What is cell smashing?

Originally Posted by Alex Liao
... what is the "smashing cells''? Do you mean netlisting cells?
No. Smashing means disassembling cells, removing one (or more) hierarchy step(s) - the contrary of creating a cell from several devices plus their routing, which rises the hierarchy one step. When cells are smashed, you can connect their individual layers, resp. remove such a layer.

1 members found this post helpful.

11. ## Re: What is cell smashing?

Thanks a lot, erikl. No problem now.

Regards,
Alex.

--[[ ]]--