Nonzero FFT bins

everynanocounts. Memos on FFT With Windowing. [https://a2d2ic.wordpress.com/2018/02/01/memos-on-fft-with-windowing]

The problem with sine-wave scaling is that the noise power is, on average, evenly distributed over all FFT bins, whereas the sine-wave power is concentrated in only a few bins. With sine-wave scaling, the power of individual sine-wave components can be read directly from the spectral plot, but in order to determine the noise power, the powers of all the noise bins must be added together.

snr_final.drawio

We can't use Fourier transform of random signal

[https://raytroop.github.io/2023/11/10/random/#lti-systems-on-wss-processes]

\[ \mathrm{SNR} = \frac{X_\text{sig}^2}{X_\text{n}^2N} = \frac{X_\text{sig}^2\cdot \sum_k W_k^2}{X_\text{n}^2N\cdot \sum_k W_k^2} = \frac{\sum_\text{nb} X_\text{w,sig}^2}{N X_\text{w,n}^2} \] where \(\text{nb}\) is number of non-zero FFT bins

image-20250917184729018

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
subplot(3,1,1);
for N = [16 256 1024]
wrect = rectwin(N);
Wrect = fftshift(fft(wrect));
Wrect_mag = abs(Wrect)/sum(wrect);
nb_rect = sum(Wrect_mag > 0.1);
fprintf('Number of nonzero FFT bin(rect window N=%d): %d\n', N, nb_rect);
stem(1:N, Wrect_mag, LineWidth=2)
hold on
end
grid on
legend('16', '256', '1024')
title('rect window')

subplot(3,1,2);
for N = [16 256 1024]
whann = hann(N);
Whann = fftshift(fft(whann));
Whann_mag = abs(Whann)/sum(whann);
nb_hann = sum(Whann_mag > 0.1);
fprintf('Number of nonzero FFT bin(hann window N=%d): %d\n', N, nb_hann);
stem(1:N, Whann_mag, LineWidth=2)
hold on
end
grid on
legend('16', '256', '1024')
title('Hanning window')

subplot(3,1,3);
for N = [16 256 1024]
whann2 = (1-cos(2*pi*(0:N-1)/N)).^2/2^2;
Whann2 = fftshift(fft(whann2));
Whann2_mag = abs(Whann2)/sum(whann2);
nb_hann2 = sum(Whann2_mag > 0.1);
fprintf('Number of nonzero FFT bin(hann2 window N=%d): %d\n', N, nb_hann2);
stem(1:N, Whann2_mag, LineWidth=2)
hold on
end
grid on
legend('16', '256', '1024')
title('Hann2 window')


% Number of nonzero FFT bin(rect window N=16): 1
% Number of nonzero FFT bin(rect window N=256): 1
% Number of nonzero FFT bin(rect window N=1024): 1
% Number of nonzero FFT bin(hann window N=16): 3
% Number of nonzero FFT bin(hann window N=256): 3
% Number of nonzero FFT bin(hann window N=1024): 3
% Number of nonzero FFT bin(hann2 window N=16): 5
% Number of nonzero FFT bin(hann2 window N=256): 5
% Number of nonzero FFT bin(hann2 window N=1024): 5

[https://web.engr.oregonstate.edu/~temes/ece627/Lecture_Notes/FFT_for_delta_sigma_spectrum_estimation.pdf]

image-20250913174821087

where \(\mathrm{NBW} = \frac{\sum_{n}|w[n]|^2}{ \left| \sum_{n} w[n] \right|^2}\)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
% excerpt of A.4 An Example in Pavan, Schreier and Temes, "Understanding Delta-Sigma Data Converters, Second Edition" ISBN 978-1-119-25827-8
%
% Compute modulator output and actual NTF
%
OSR = 32;
ntf0 = synthesizeNTF(5,OSR,1);
N = 64*OSR;
fbin = 11;
u = 1/2*sin(2*pi*fbin/N*[0:N-1]);
[v tmp1 tmp2 y] = simulateDSM(u,ntf0);
k = mean(abs(y)/mean(y.^2))
ntf = ntf0 / (k + (1-k)*ntf0);
%
% Compute windowed FFT and NBW
%
w = hann(N); % or ones(1,N) or hann(N).^2
nb = 3; % 1 for Rect; 5 for Hann^2
w1 = norm(w,1);
w2 = norm(w,2);
NBW = (w2/w1)^2
V = fft(w.*v)/(w1/2);
%
% Compute SNR
%
signal_bins = fbin + [-(nb-1)/2:(nb-1)/2];
inband_bins = 0:N/(2*OSR);
noise_bins = setdiff(inband_bins,signal_bins);
snr = dbp(sum(abs(V(signal_bins+1)).^2)/sum(abs(V(noise_bins+1)).^2))

Noise Floor

[http://individual.utoronto.ca/schreier/lectures/2015/1.pdf]

image-20241202212412428

General Formula

signal tone power \[ P_{\text{sig}} = 2 \frac{X_{w,sig}^2}{S_1^2} \]

noise power \[ P_n = \frac{X_{w,n}^2}{N\cdot S_2}N=\frac{X_{w,n}^2}{S_2} \]

where white noise, \(X_n(i) = X_n(j)\) for any \(i \neq j\)

Therefore, displayed SNR is obtained \[\begin{align} \mathrm{SNR} &= 10\log10\left(\frac{X_{w,sig}^2}{X_{w,n}^2}\right) \\ &= 10\log_{10}\left(\frac{P_{\text{sig}}}{P_n}\right) + 10\log_{10}\left(\frac{S_1^2}{2S_2}\right) \\ &= \mathrm{SNR}'-10\log_{10}\left(\frac{2S_2}{S_1^2}\right) \\ &= \mathrm{SNR}'-10\log_{10}(2\cdot\mathrm{NBW}) \end{align}\]

DFT's output \(\mathrm{SNR}\)


\[ \text{PS(k)} = \text{PSD(k)} \cdot \text{ENBW} \]

where Effective Noise BandWidth \(\text{ENBW} =f_{\text{res}} \cdot \frac{N S_2}{S_1^2}\)

yield \[ \text{PS(k)} = \text{PSD(k)} \cdot f_{\text{res}} \cdot \frac{N S_2}{S_1^2} = \left\{\text{PSD(k)} \cdot f_{\text{s}} \right\} \cdot \frac{S_2}{S_1^2} \] where \(\left\{\text{PSD(k)} \cdot f_{\text{s}} \right\} =\text{const}\), i.e. \(x_\text{n,rms}\)

image-20250826003933143

1
2
3
4
5
6
7
8
9
10
11
12
13
14
ratio_list = [];
for len = 6:12
wnd = hanning(2^len);
S2 = sum(wnd.^2);
S1 = sum(wnd);
ratio = S2./S1.^2;
ratio_list(end+1) = ratio;
end

ratio_db = 10*log10(ratio_list);
plot(2.^[6:1:12], ratio_db, 'ro-', LineWidth=4)
grid on; grid minor;

xlabel('N'); ylabel("$10\log(S_2/S_1^2)$",'Interpreter', 'latex')

FFT Noise Floor

image-20250826010627757

image-20250826013036595

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
N = 2048;
cycles = 67;
fs = 1000;
fx = fs*cycles/N;
LSB = 2/2^10;
%generate signal, quantize (mid-tread) and take FFT
x = cos(2*pi*fx/fs*[0:N-1]);
x = round(x/LSB)*LSB;
s = abs(fft(x));
s = s(1:end/2)/N*2;
% calculate SNR
sigbin = 1 + cycles;
noise = [s(1:sigbin-1), s(sigbin+1:end)];
snr = 10*log10( s(sigbin)^2/sum(noise.^2) );

sdb = 20*log10(s);

% How to plot a series of numbers which some of them are inf?
% https://www.mathworks.com/matlabcentral/answers/476643-how-to-plot-a-series-of-numbers-which-some-of-them-are-inf
plot([0:N/2-1]/N, max(sdb, -120), LineWidth=4)
hold on;
plot([0 0.5], [-61.9 -61.9], 'r--', LineWidth=2)
plot([0 0.5], [-92 -92], 'm--', LineWidth=2)
grid on; grid minor;
ylim([-120 0]); xlim([0 0.5]);
xlabel('Frequency [f/fs]'), ylabel('DFT Magnitude [dBFS]');
title('2048 point FFT, SNR=61.90dB')

Rectangular Window

DFT bin's output noise standard deviation (rms) value is proportional to \(\sqrt{N}\), and the DFT's output magnitude for the bin containing the signal tone is proportional to \(N\)

signal tone power \[ P_{\text{sig}} = 2 \frac{X_{w,sig}^2}{N^2} \]

noise power \[ P_n = \frac{X_{w,n}^2}{N} \]

The displayed SNR \[ \mathrm{SNR} = \mathrm{SNR}' - 10\log_{10}(2/N) \] If we increase a DFT's size from \(N\) to \(2N\), the DFT's output SNR increased by 3dB. So we say that a DFT's processing gain increases by 3dB whenever \(N\) is doubled.


1
2
3
4
5
6
for N=[2^6 2^8 2^10 2^12]
wd = rectwin(N);
nbw = enbw(wd)/N;
snr_shift = 10*log10(nbw * 2);
disp(snr_shift);
end

output:

1
2
3
4
5
6
7
-15.0515

-21.0721

-27.0927

-33.1133

image-20241202212221239

image-20241202213152360

How spectrum analyzer work?

We tried to plot a power spectral density together with something that we want to interpret as a power spectrum

  • spectrum of a periodic signal
  • spectral density of a broadband signal such as noise

Sine-wave components are located in individual FFT bins, but broadband signals like noise have their power spread over all FFT bins!

The noise floor depends on the length of the FFT

PS and PSD

The spectral density format is appropriate for random or noise signals but inappropriate for discrete frequency components because the latter theoretically have zero bandwidth

Amplitude Correction

  1. A finite-duration window \(w[n]\)

    DTFT is \(W[e^{j\omega}]\) and the maximum magnitude is is at DC frequency, which \(\sum_n w_n\)

  2. Sinusoidal signal \(x[n]\)

    DFS is \(X_k\), and DTFT shall be \(\frac{2\pi}{N}X_k(e^{j\omega})\)

  3. the windowed sequence \(v[n] = x[n]w[n]\)

    with multiplication property, DTFT of \(v[n]\) shall be \(\frac{X_k(e^{j\omega})}{N}\sum_n w_n\)

    As we know, DFT of \(v[n]\) is samples of its DTFT, that is \[ \frac{X_k(e^{j\omega})}{N}\sum_n w_n = X_v[k] \] Therefore, \[ \frac{X_k(e^{j\omega})}{N} = \frac{X_v[k]}{\sum_n w_n} \]

Effective Noise BandWidth (ENBW)

General derivation

The relationship between a power spectrum (\(PS, V^2\)) and a power spectral density (\(PSD, V^2/Hz\)) is given by the effective noise bandwidth (ENBW), which can easily be determined at the time when the DFT is computed.

ENBW should always be recorded when a spectrum or spectral density is computed, such that the result can be converted to the other form at a later stage, when the information about the frequency resolution \(f_{res}\) and the window that was used is normally not easily available any more.

The normalized equivalent noise bandwidth (NENBW) of the window is given by

\[ \text{NENBW} = \frac{NS_2}{S_1^2} \] where \(S_1 = \sum _{k=0}^{N-1}w_k\) and \(S_2 = \sum _{k=0}^{N-1}w_k^2\)

The ENBW is given by

\[ \text{ENBW} = \text{NENBW}\cdot f_{res} = \text{NENBW}\cdot \frac{f_s}{N} = f_s\frac{S_2}{S_1^2} \]

Equivalent noise bandwidth (ENBW) compares a window to an ideal, rectangular time-window. It is the bandwidth of the rectangular window's frequency-domain shape that passes the same amount of white noise energy as the frequency-domain shape defined by the other window.

enbw

Therefore, the equivalent noise bandwidth \(B_{enbw}\) is given by

\[ B_{enbw} = \frac{\int_{-f}^{f} |W(f)|^2 df}{|W(f_0)|^2} \]

Translating to discrete domain, the equivalent noise bandwidth can be computed using DFT samples as

\[ B_{enbw} =\frac{\sum_{k=0}^{N-1}|W[k]|^2}{|W[k_0]|^2} \]

where \(k_0\) is the index at which the magnitude of FFT output is maximum and \(N\) is the window length, i.e. \(k_0=0\).

Applying Parseval's theorem and \(W[0]=\sum_{n}w[n]\), \(B_{enbw}\) can also be computed using time domain samples as

\[ B_{enbw} = N \frac{\sum_{n}|w[n]|^2}{ \left| \sum_{n} w[n] \right|^2} \]

scale \(w[n]\) don't change \(B_{enbw}\)

Noise power inside window: \(\int_{-f}^{f} |W(f)|^2 df \to N\cdot\sum_{n}|w[n]|^2\)

peak amplitude: \(|W(f_0)|^2 \to \left| \sum_{n} w[n] \right|^2\)

An alternative derivation

coherence-incoherence.drawio.svg

Assuming the windowed sequence \(v[n] = x[n]w[n]\)

  • \(W[k]\): Fourier Transform of finite sequence window

  • \(X_{sig}\): Fourier Transform of signal

  • \(X_{n}\): Fourier Transform of noise

  • \(X_{v,sig}\): Fourier Transform of windowed signal

  • \(X_{v,n}\): Fourier Transform of windowed noise

From Fig. 6,, we observe that the amplitude of the harmonic estimate at a given frequency is biased by the accumulated broad-band noise included in the bandwidth of the window.

image-20240517195407690

In this sense, the window behaves as a filter, gathering contributions for its estimate over its bandwidth

The Fourier Transform of windowed signal can be expressed as

\[\begin{align} X_{v,sig} &= W_{max}\cdot X_{sig} \\ &= W[0]\cdot X_{sig} \end{align}\]

For a typical window, \(W_{max}\) occurs at \(\omega = 0\)

And the Fourier Transform of windowed noise can be expressed as

\[ X_{v,n}^2 = \sum_k (W[k])^2 \cdot X_n^2 \]

divided by \((W[0])^2\) on both sides of the above equation

\[ \frac{X_{v,n}^2}{(W[0])^2} = \frac{\sum_k (W[k])^2}{(W[0])^2} \cdot X_n^2 \]

By Parseval's theorem

\[ \frac{X_{v,n}^2}{\left(\sum_n w[n]\right)^2} = \frac{N\sum_n w^2[n]}{\left(\sum_n w[n]\right)^2} \cdot X_n^2 \]

where \(X^2_n\) is what is deserved and

\[ X_n^2 = \frac{PS_{n}}{B_{enbw}} \]

where \(B_{enbw} = N \frac{\sum_{n}|w[n]|^2}{ \left| \sum_{n} w[n] \right|^2}\) and \(PS_{n}=\left| \frac{X_{v,n}}{\sum_n w[n]}\right|^2\)



example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
lw = 128;
win = hann(lw);
lt = 2048;
windft = fftshift(fft(win,lt));

ad = abs(windft).^2;
mg = max(ad);

fs = 1000;

bw = enbw(win,fs);

bdef = sum((win).^2)/sum(win)^2*fs;
fprintf("bw: %.3f\n", bw);
fprintf("bdef: %.3f\n", bdef);

freq = -fs/2:fs/lt:fs/2-fs/lt;

plot(freq,ad, bw/2*[-1 -1 1 1],mg*[0 1 1 0],'--')
xlim(bw*[-1 1])

Adiff = trapz(freq,ad)-bw*mg;
fprintf("Adiff: %.3e\n", Adiff);

Verify that the area of the rectangle contains the same total power as the window.

1
Adiff = trapz(freq,ad)-bw*mg
output:
1
2
3
bw: 11.811
bdef: 11.811
Adiff: 7.276e-12

image-20230530230434715


Unpingco, José. Python for Signal Processing: Featuring IPython Notebooks. Cham: Springer, 2013. [pdf]

[https://github.com/unpingco/Python-for-Signal-Processing/blob/master/Windowing_Part2.ipynb]

image-20250902002913214

demo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
%https://aaronscher.com/Course_materials/Communication_Systems/documents/PSD_Autocorrelation_Noise.pdf

%Clear variables. clear command window, close all figures:
clc;
clear all;
close all;
%%%Setup and define variables
f0=10; %frequency of sinusoidal signal (Hz)
fs=100; %sampling frequency (Hz)
Ts=1/fs; %sampling period (seconds)
N0=3000; %number of samples
t=[0:Ts:Ts*(N0-1)]; %Sample times
noise_PSD=.5; %This is the desired noise power spectral density in W/Hz.
variance=noise_PSD*fs;% Variance = sigma^2
sigma=sqrt(variance);
noise=transpose(sigma*randn(N0,1));%create sampled white Gaussian noise.
xsignal=20*sin(2*pi*f0*t); %create sampled sinusoidal signal
x=xsignal+noise; %Add signal to noise
figure(1)
histogram(noise,30) %plot histogram
set(gca,'FontSize',14) %set font size of axis tick labels to 18
xlabel('Noise amplitude','fontsize',14)
ylabel('Frequency of occurance','fontsize',14)
title('Simulated histogram of white Gaussian noise','fontsize',14)
SNR_try1=snr(xsignal,noise); %calculate SNR using built in "snr" function.
SNR_try2=10*log10(sum(xsignal.^2)/sum(noise.^2)); %manually calculate SNR.
%If everything is correct, the two SNR calculations above should agree.
%Plot noise in time-domain
figure(2)
plot(t,x)
set(gca,'FontSize',14) %set font size of axis tick labels to 18
xlabel('Time (s)','fontsize',14)
ylabel('Amplitude','fontsize',14)
title('Noisey sinusoid','fontsize',14)
grid on
%Plot power spectral density (PSD) of noise using three different methods:
%
%Method 1. Calcululate PSD from amplitude spectrum
N=2^16; %Number of discrete points in the FFT
y=fft(x,N)/fs; %fft of noise
z=fftshift(y);%center noise spectrum
f_vec=[0:1:N-1]*fs/N-fs/2; %designate sample frequencies
amplitude_spectrum=abs(z); %compute two-sided amplitude spectrum
ESD1=amplitude_spectrum.^2; %ESD = |F(w)|^2;
PSD1=ESD1/((N0-1)*Ts);% PSD=ESD/T where T = total time of sample
figure(3)
plot(f_vec,10*log10(PSD1));
xlabel('Frequency [Hz]','fontsize',14)
ylabel('dB/Hz','fontsize',14)
title('Power spectral density - method 1','fontsize',14)
grid on
set(gcf,'color','w'); %set background color from grey (default) to white
axis tight
%calculate average power using PSD calclated from method 1:
Average_power_method_1=sum(PSD1)*fs/N; % Pav=sum(PSD)*delta_f where delta_f=fs/N;
%
%Method 2 - Calculate PSD from autocorrelation
time_lag=((-length(x)+1):1:(length(x)-1))*Ts;
auto_cor=xcorr(x,x)/fs; %Use xcorr function to find PSD
y=1/fs*fft(auto_cor,N); %fft of auto correlation function
PSD2=abs(1/(N0-1)*fftshift(fft(auto_cor,N)));
figure(4)
plot(f_vec,10*log10(PSD2));%use convolution
xlabel('Frequency [Hz]','fontsize',14)
ylabel('dB/Hz','fontsize',14)
title('Power spectral density - method 2','fontsize',14)
grid on
set(gcf,'color','w'); %set background color from grey (default) to white
axis tight
%calculate average power using PSD calclated from method 1:
Average_power_method_2=sum(PSD2)*fs/N; %Pav=sum(PSD)*delta_f where delta_f=fs/N;
%
%Method 3 - Calculate PSD using built in pwelch function
figure(5)
PSD3=periodogram(x,[],N,fs,'centered');
plot(10*log10(PSD3))
xlabel('Frequency [Hz]','fontsize',14)
ylabel('dB/Hz','fontsize',14)
title('Power spectral density - method 3','fontsize',14)
grid on
set(gcf,'color','w'); %set background color from grey (default) to white
axis tight
Average_power_method_3=sum(PSD3)*fs/N; %Pav=sum(PSD)*delta_f where delta_f=fs/N;
%
%Calculate mean and average PSD of noise:
PSD_noise=periodogram(noise,[],N,fs,'centered');
Average_noise_PSD=mean(PSD_noise);
Mean_noise=mean(noise);

image-20230531004822838

image-20230531005008418

The power spectral density plots for methods 2 and 3 exactly match that for method 1 (shown above).

reference

enbw Matlab URL:https://www.mathworks.com/help/signal/ref/enbw.html

1
2
3
4
5
6
7
N = 256;
wn = hanning(N);
s1 = sum(wn)^2;
s2 = sum(wn.^2);

(N*s2)/s1
enbw(wn)
1
2
3
4
5
6
7
8
ans =

1.4942


ans =

1.4942

Schmid, H. (2012). How to use the FFT and Matlab's pwelch function for signal and noise simulations and measurements. URL:http://www.schmid-werren.ch/hanspeter/publications/2012fftnoise.pdf

Bonnie C.Baker. Reading and Using Fast Fourier Transforms (FFT) URL:http://ww1.microchip.com/downloads/en/appnotes/00681a.pdf

FFT analysis: SNR and Noise level vary with FFT Window size URL:https://www.virtins.com/forum/viewtopic.php?f=7&t=1382

Lyons, R. G. (2011). Understanding digital signal processing (3rd ed.). Prentice Hall

Stefan Scholl, "Exact Signal Measurements using FFT Analysis",Microelectronic Systems Design Research Group, TU Kaiserslautern, Germany. [pdf]

Aaron Scher. PSD, Autocorrelation, and Noise in MATLAB [pdf]

Aaron Scher. FFT, total energy, and energy spectral density computations in MATLAB [pdf]

Amplitude Estimation and Zero Padding URL:https://www.mathworks.com/help/signal/ug/amplitude-estimation-and-zero-padding.html

Harris, F. (1978). On the use of windows for harmonic analysis with the discrete Fourier transform. Proceedings of the IEEE, 66, 51-83. [pdf]

Harris, F. J. . (1976). Windows, harmonic analysis and the discrete fourier transform. [pdf]

Wang Hongwei. Virtins. Evaluation of Various Window Functions using Multi-Instrument [pdf]

Properties of FFT Windows Used in Stable32 [pdf]

Solomon, Jr, O M. PSD computations using Welch's method. [Power Spectral Density (PSD)]. United States. https://doi.org/10.2172/5688766 [pdf]

Measure Power of Deterministic Periodic Signals [https://www.mathworks.com/help/signal/ug/measuring-the-power-of-deterministic-periodic-signals.html]

Mathuranathan. Equivalent noise bandwidth (ENBW) of window functions. [https://www.gaussianwaves.com/2020/09/equivalent-noise-bandwidth-enbw-of-window-functions/]

recordingblogs, Equivalent noise bandwidth [https://www.recordingblogs.com/wiki/equivalent-noise-bandwidth]

unpingco, Python for Signal Processing [https://github.com/unpingco/Python-for-Signal-Processing/blob/master/Windowing_Part2.ipynb]

Pavan, Schreier and Temes, "Understanding Delta-Sigma Data Converters, Second Edition" ISBN 978-1-119-25827-8

A finite-length data record = an infinite record multiplied by a rectangular window

Windowing is unavoidable


Applying the Hanning window (or any window) to a periodic signal creates leakage.

leakage:

​ The component at one frequency leaks into the vicinity of another compnent owing to the spectral smearing introdued by window.

Notice side lobes adding out of phase can reduce the heights of the peaks

Windowed Signal

Short transient signals in the time domain produce high, broadband frequency content.

sharpTransient

To reduce leakage, a mathematical function called a window is applied to the data. Windows are designed to reduce the sharp transient in the re-created signal as much as possible.

windowedsignal

Because the sharp transients are reduced and smoothed, the broadband frequency of the spectral leakage is also reduced.

Periodic versus Non-Periodic Background

When performing a Fourier Transform on measurement data, a window affects periodic and non-periodic data differently:

  • Periodic (No Window needed): A signal captured in a periodic manner does not require a window, and a resulting Fourier Transform has no leakage. Applying a window alters the resulting Fourier transform, and even creates spectral leakage where there would have been no leakage otherwise.

  • Non-periodic (Window needed): Windows are used on signals that are captured in a non-periodic manner to reduce spectral leakage and get closer to the periodic results. A window can minimize the leakage present in a non-periodic signal, but cannot eliminate it.

The signal is repeated and appended mathematically because the measured data is assumed to be representative of the entire original signal

Periodic

When a measurement signal is captured in a periodic manner, the Fourier Transform of the captured signal will have no leakage in the frequency domain.

A window is not recommended for a periodic signal as it will distort the signal in an unnecessary manner, and actually creates spectral leakage.

captured-periodic


Maloberti, F. Data Converters. Dordrecht, Netherlands: Springer, 2007.

image-20250825231711883

image-20250825232155617

Non-periodic

The same sine wave, with a different measurement time, results in a non-periodic captured signal. Here, when the captured signal is repeated, the original sine wave signal is not re-created.

captured-nonperiodic

In fact, several broadband transient events (circled in red) are introduced. These transients create a broadband response, or leakage.

Windows are used to minimize this leakage effect in the frequency domain.

leakage-vs-nonleakage

Hanning

When doing operational noise and vibration measurements, the Hanning window is commonly used.

Random data has spectral leakage due to the abrupt cutoff at the beginning and end of the time block. It is non-periodic.

There is no way to ensure that the captured random signal is periodic by varying the measurement time.

Hanning windows are often used with random data because they have moderate impact on the frequency resolution and amplitude accuracy of the resulting frequency spectrum.

  • The maximum amplitude error of a Hanning window is 15%

    In the cited article, all spectral data had an amplitude correction factor applied.

  • while the frequency leakage is typically confined to 1.5 spectral lines to each side of the original sine wave signal

hanning.png

periodic signal

Applying the Hanning window (or any window) to a periodic signal creates leakage.

hanning-periodicsignal

The periodically captured sine wave with the Hanning window (blue) is wider in frequency than the original signal (red)

In the figure, the sine wave with the Hanning window (blue) is wider in frequency than the original signal (red).

non-periodic signal

When a Hanning window is applied to a non-periodic signal, the leakage is greatly reduced and the amplitude is higher.

hanning-nonperiodicsignal

A non-periodically captured sine wave (magenta) has a spectral leakage over the entire bandwidth, applying a Hanning window minimized the leakage (green)

RMS calculation

A RMS calculation sums up the energy within a frequency range.

rms-cal

  • both the RMS of the periodic and non-periodic signals with a Hanning window are equal to the RMS of the leakage-free sine wave.

  • Only the RMS of the non-periodic sine wave without a window applied is not equal to the others

With the leakage spread over a smaller frequency range, doing analysis calculations like RMS yields more accurate results.

Flattop

  • The Flattop window has a better amplitude accuracy in frequency domain compared to the Hanning window,

    The maximum amplitude error of a Flattop window is less than 0.01%. By contrast, the Hanning window maximum amplitude error is 15%.

  • A Flattop window confines leakage to 3.43 spectral lines to each side of the original signal.

amplitude errors

These maximum amplitude errors assume that amplitude correction factors are applied to the frequency spectrums. These amplitude correction factors compensate for any reduction caused by applying a window.

flattop-amplitude

leakage

The frequency accuracy of the Flattop window is more coarse compared to a Hanning window. As a result, the Flattop window is typically employed on data where frequency peaks are distinct and well separated from each other.

flattop-leakage

When the frequency peaks are not guaranteed to be well separated, the Hanning window is preferred because it is less likely to cause individual peaks to be lost in the spectrum

flattop-2tone

Spectrum of two periodically captured tones that are \(4Hz\) apart with a \(1Hz\) frequency resolution. The spectrum with a Hanning window (green) shows two peaks while the spectrum with a Flattop window (blue) shows one peak.

Note that at the original frequencies of the tones the amplitude is correct and equal to one for both windows.

One common application for a flattop window is performing calibration. For example, a sound pistonphone only produces one single and distinct frequency during microphone calibration.

Uniform

A Uniform window has a value of 1.0 across the entire measurement time. In reality, a Uniform window could be called no window.

Depending on the data acquisition system used, sometimes the term Rectangular window is also used.

  • A Uniform window creates no frequency or amplitude distortion when the measured signal is periodic.

  • When a measured signal is not periodic, the amplitude is reduced by a maximum of 36% and the frequency content is spread over the entire bandwidth of the measurement.

    This is due to sharp transients that are created by repeating and appending the measured signal.

Whenever a measurement signal is periodic, a Uniform window is preferred.

Applying a Hanning or Flattop window to a periodic signal will actually create amplitude and frequency distortion.

uniformwindow

Benefit of Reducing Leakage

The benefit is not that the captured signal is perfectly replicated.

The main benefit is that the leakage is now confined over a smaller frequency range, instead of affecting the entire frequency bandwidth of the measurement.

With the leakage spread over a smaller frequency range, doing analysis calculations like RMS yields more accurate results.

rms-windowed

It is impossible to calculate the proper RMS amplitude estimate over a limited frequency range of the un-windowed sine wave, since the leakage is over the full frequency range. Therefore the RMS amplitude is not correct.

Two tones

In the case of two closely spaced sine tones, without a window being applied, two tones frequencies would leak into each other, which make determining the true amplitude of individual peaks very difficult.

The window makes it easier to separate and distinguish each tone so a proper analysis could be performed.

windowed-2tone

window function in frequency domain

The transfer function \(a(f)\) of a window \(w_j, j \in [0, N-1]\) expresses the response of the window to a sinusoidal signal at an offset of \(f\) frequency bins, i.e. DFT .

real part: \[ a_r(f)=\sum_{j=0}^{N-1}w_j\cos (2\pi f j/N) \]

imaginary part: \[ a_i(f)=\sum_{j=0}^{N-1}w_j\sin (2\pi f j/N) \]

frequency response can be obtained as \[ a(f) = \frac{\sqrt{a_r^2+a_i^2}}{S_1} \] where \(S_1 = \sum _{k=0}^{N-1}w_k\)

Rectangular window example

aka. Uniform window, "Rectangular" window, "no window"

Whenever a measurement signal is periodic, a Uniform window is preferred. Applying a Hanning or Flattop window to a periodic signal will actually create amplitude and frequency distortion.

  1. When \(f=0\)

\[ a_r(f) + ja_i(f) = \sum_{k=0}^{N-1}w_k = N \]

  1. When \(f \neq 0\)

\[\begin{align} a_r(f) + ja_i(f) &= \sum_{k=0}^{N-1} e^{\frac{j2\pi k f}{N}} \\ &= \sum_{k=0}^{N/2} e^{\frac{j2\pi k f}{N}} + e^{\frac{j2\pi (k+N/2) f}{N}} \\ &= \sum_{k=0}^{N/2} e^{\frac{j2\pi k f}{N}} + e^{j\pi} e^{\frac{j2\pi k f}{N}} \\ &= \sum_{k=0}^{N/2} e^{\frac{j2\pi k f}{N}} - e^{\frac{j2\pi k f}{N}} \\ &= 0 \end{align}\]

A Uniform window creates no frequency or amplitude distortion when the measured signal is periodic.

However, if the signal cannot be guaranteed to be periodic, a Uniform window should be avoided.

Window Properties

There is no possibility of trade-off between main-lobe width and sied-lobe amplitude, since the window length is the only variable parameter.

The rectangular window has the narrowest main lobe for a given length, i.e. \(\Delta _{ml}=4\pi/L\)

Other windows include the Bartlett, Hann, and Hamming windows. The DTFTs of all these windows have main-lobe width \(\Delta _{ml}=8\pi/(L-1)\), which is approximately twice that of the rectangular window, but they have significantly smaller side-lobe amplitudes.

Demo

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
clc;
clear all;

N = 512;
fs = 40*1e3; % 40kHz
fres = fs/N; % 78.125
tt = (0:N-1)*1/fs;
ff = (0:N/2)*fres;
fin = 390.625;

whan = hanning(N); % hanning window
wrect = rectwin(N); % rect window


% fin/fs = 5/N, periodically captured sine wave
wv = cos(2*pi*fin*tt);
power = periodogram(wv, whan, N, fs, 'power');
X = (power).^0.5*2^0.5;
psd = periodogram(wv, whan, N, fs, 'psd');
rms = sum(psd*fres)^0.5;
fprintf('RMS@periodic & hanning: %.5f\n', rms);

power_rect = periodogram(wv, wrect, N, fs, 'power');
X_rect = (power_rect).^0.5*2^0.5;
psd_rect = periodogram(wv, wrect, N, fs, 'psd');
rms_rect = sum(psd_rect*fres)^0.5;
fprintf('RMS@periodic & rect: %.5f\n', rms_rect);


figure(1)
plot(ff, X, 'r-o', ff, X_rect, 'b-s');
xlabel('Frequency(Hz)');
ylabel('|X|')
title('Amplitude spectrum of periodically captured sine wave');
legend('w/ hanning', 'w/ rect');
grid on
grid minor
% rectangular window provide higher frequency resolution
% hanning window induce leakage for the periodically captured sine wave



% fin - 0.5fres
fin_lkg0d5 = fin - 0.5*fres;
wv_lkg0d5 = cos(2*pi*fin_lkg0d5*tt);
power_lkg0d5 = periodogram(wv_lkg0d5, whan, N, fs, 'power');
X_lkg0d5 = (power_lkg0d5).^0.5*2^0.5;
psd_lkg0d5 = periodogram(wv_lkg0d5, whan, N, fs, 'psd');
rms_lkg0d5 = sum(psd_lkg0d5*fres)^0.5;
fprintf('RMS@-0.5fres & hanning: %.5f\n', rms_lkg0d5);

power_lkg0d5_rect = periodogram(wv_lkg0d5, wrect, N, fs, 'power');
X_lkg0d5_rect = (power_lkg0d5_rect).^0.5*2^0.5;
psd_lkg0d5_rect = periodogram(wv_lkg0d5, wrect, N, fs, 'psd');
rms_lkg0d5_rect = sum(psd_lkg0d5_rect*fres)^0.5;
fprintf('RMS@-0.5fres & rect: %.5f\n', rms_lkg0d5_rect);

figure(2)
plot(ff, X_lkg0d5, 'r-o', ff, X_lkg0d5_rect, 'b-s');
xlabel('Frequency(Hz)');
ylabel('|X|')
title('Amplitude spectrum of -0.5fres');
legend('w/ hanning', 'w/ rect');
grid on
grid minor
% hanning reduce leakage and max amplitude error 15%



% fin - 0.25fres
fin_lkg0d25 = fin - 0.25*fres;
wv_lkg0d25 = cos(2*pi*fin_lkg0d25*tt);
power_lkg0d25 = periodogram(wv_lkg0d25, whan, N, fs, 'power');
X_lkg0d25 = (power_lkg0d25).^0.5*2^0.5;
psd_lkg0d25 = periodogram(wv_lkg0d25, whan, N, fs, 'psd');
rms_lkg0d25 = sum(psd_lkg0d25*fres)^0.5;
fprintf('RMS@-0.25fres & hanning: %.5f\n', rms_lkg0d25);

power_lkg0d25_rect = periodogram(wv_lkg0d25, wrect, N, fs, 'power');
X_lkg0d25_rect = (power_lkg0d25_rect).^0.5*2^0.5;
psd_lkg0d25_rect = periodogram(wv_lkg0d25, wrect, N, fs, 'psd');
rms_lkg0d25_rect = sum(psd_lkg0d25_rect*fres)^0.5;
fprintf('RMS@-0.25fres & rect: %.5f\n', rms_lkg0d25_rect);

figure(3)
plot(ff, X_lkg0d25, 'r-o', ff, X_lkg0d25_rect, 'b-s');
xlabel('Frequency(Hz)');
ylabel('|X|')
title('Amplitude spectrum of -0.25fres');
legend('w/ hanning', 'w/ rect');
grid on
grid minor
% hanning reduce leakage

output

1
2
3
4
5
6
RMS@periodic & hanning: 0.70711
RMS@periodic & rect: 0.70711
RMS@-0.5fres & hanning: 0.70711
RMS@-0.5fres & rect: 0.70711
RMS@-0.25fres & hanning: 0.70711
RMS@-0.25fres & rect: 0.70780

image-20230526005823613

rectangular window provide higher frequency resolution

image-20230526005934411

hanning reduce leakage and max amplitude error 15%

image-20230526010047826

hanning reduce leakage and reduce amplitude error

reference

Windows and Spectral Leakage. URL:https://community.sw.siemens.com/s/article/windows-and-spectral-leakage

Article (20416822) Title: How to Utilize a Windowing Technique for Accurate DFT

B.P. Lathi, Roger Green. Linear Systems and Signals (The Oxford Series in Electrical and Computer Engineering) 3rd Edition

Window Types: Hanning, Flattop, Uniform, Tukey, and Exponential URL:https://community.sw.siemens.com/s/article/window-types-hanning-flattop-uniform-tukey-and-exponential

Window Correction Factors URL:https://community.sw.siemens.com/s/article/window-correction-factors

Root Mean Square (RMS) and Overall Level. URL:https://community.sw.siemens.com/s/article/root-mean-square-rms-and-overall-level

Alan V Oppenheim, Ronald W. Schafer. Discrete-Time Signal Processing, 3rd edition

Stefan Scholl, "Exact Signal Measurements using FFT Analysis",Microelectronic Systems Design Research Group, TU Kaiserslautern, Germany. [ pdf ]

Harris, F. (1978). On the use of windows for harmonic analysis with the discrete Fourier transform. Proceedings of the IEEE, 66, 51-83. [pdf]

Equivalent noise bandwidth (ENBW) of window functions URL:https://www.gaussianwaves.com/2020/09/equivalent-noise-bandwidth-enbw-of-window-functions/

Why should I zero-pad a signal before taking the Fourier transform? URL:https://dsp.stackexchange.com/q/741

enbw function in MATLAB URL:https://www.mathworks.com/help/signal/ref/enbw.html

Window function – figure of merits URL:https://www.gaussianwaves.com/2020/09/window-function-figure-of-merits/

Memos on FFT With Windowing URL:https://a2d2ic.wordpress.com/2018/02/01/memos-on-fft-with-windowing/

Jens Ahrens, "Some Notes on Windows in Spectral Analysis," Tech. Report, Chalmers Univeristy of Technology, 2020. URL:https://appliedacousticschalmers.github.io/scaling-of-the-dft/notes_on_windows/

Karnaugh Map

Pinaki Mazumder; Idongesit E. Ebong, "Lectures on Digital Design Principles," in Lectures on Digital Design Principles , River Publishers, 2023

Combinational Logic Minimization using Karnaugh maps (K-maps)

TODO 📅

IJTAG

While JTAG connects chips externally, IJTAG extends it inside the chip — linking embedded instruments (MBIST, sensors, monitors, etc.) through a reconfigurable network.

Pin-Mux Logic Pins are precious in SoC design!

  • Pin-Mux Logic lets functional and test signals share the same pins depending on the mode.
  • During test mode, JTAG/IJTAG signals are routed internally via multiplexers — saving pins and silicon area.

diagram

Digital Delay Model

Akio Kitagawa, Analog layout design https://mixsignal.files.wordpress.com/2013/03/analog-layout.pdf

THE WIRE http://bwrcs.eecs.berkeley.edu/Classes/icdesign/ee141_f01/Notes/chapter4.pdf

Anoop Veliyath, Design Engineer, Cadence Design Systems. Accurately Modeling Transmission Line Behavior with an LC Network-based Approach [pdf]

Mark Horowitz. Lecture 2: Wires and Wire Models [pdf]

Neil Weste and David Harris. 2010. CMOS VLSI Design: A Circuits and Systems Perspective (4th. ed.). Addison-Wesley Publishing Company, USA.

Cheng-Kok Koh. EE695K Modeling and Optimization of High Performance Interconnect [lec3a_pdf]

Vishal Saxena. ECE 445 Intro to VLSI Design: Lectures for Spring 2019 https://www.eecis.udel.edu/~vsaxena/courses/ece445/s19/ECE445.htm

Effective Switching resistance

image-20231114001209252

https://www.eecis.udel.edu/~vsaxena/courses/ece445/s19/Lecture%20Notes/lec15_ece445.pdf

wire delay

Elmore Delay

image-20230624234813719

image-20230624234940864

image-20230625001756173

Basic idea: use of mean of \(v'(t)\) to approximate median of \(v'(t)\)

image-20230624235148246

image-20230625002239199

Elmore delay approximates the median of \(h(t)\) by the mean of \(h(t)\)

Distributed RC-Line

image-20230624224005736

Lumped approximations

\(rc\)-models

If your simulator does not support a distributed \(rc\)-model, or if the computational complexity of these models slows down your simulation too much, you can construct a simple yet accurate model yourself by approximating the distributed \(rc\) by a lumped RC network with a limited number of elements

image-20230624230057265

The accuracy of the model is determined by the number of stages. For instance, the error of the \(\Pi -3\) model is less than 3%, which is generally sufficient.


Why use "\(\Pi\) Model"

image-20230624230800255


examples

image-20230624224643487

image-20230624224923241

Wire Inductive Effect

  • RC delay increases quadratically with length
  • LC delay (speed of light flight time) increases linearly with length

Inductance will only be important to the delay of low-resistance signals such as wide clock lines


wave

Signal propagates over the wire as a wave (rather than diffusing as in RC only models)

Signal propagates by alternately transferring energy from capacitive to inductive modes

Glitches & Hazards

CPE166/EEE 270 Advanced Logic Design-Digital Design: Time Behavior of Combinational Networks: https://www.csus.edu/indiv/p/pangj/166/f/sram/Handout_Hazard.pdf

John Knight, ELEC3500 Glitches and Hazards in Digital Circuits http://www.doe.carleton.ca/~shams/ELEC3500/hazards.pdf

  • A glitch is an unwanted pulse at the output of a combinational logic network – a momentary change in an output that should not have changed
  • A circuit with the potential for a glitch is said to have a hazard
  • In other words a hazard is something intrinsic about a circuit; a circuit with hazard may or may not have a glitch depending on input patterns and the electric characteristics of the circuit.

When do circuits have hazards ?

Hazards are potential unwanted transients that occur in the output when different paths from input to output have different propagation delays

Types of Hazards (on an output)

static 1-hazard, static 0-hazard, dynamic hazard

image-20220508183800744

Hazard's Concern

  • Hazards do not hurt synchronous circuits
  • Hazards Kill Asynchronous Circuits
  • Glitches Increase Power Consumption

Isolation cells

Isolation cells and Level Shifter cells URL: https://vlsitutorials.com/isolation-cells-level-shifter-cells-low-power-vlsi/

Isolation cells are additional cells inserted by the synthesis tools for isolating the buses/wires crossing from power-gated domain of a circuit to its always-on domain (AON).

To prevent corruption of always-on domain, we clamp the nets crossing the power domains to a value depending upon the design.

A simple circuit having a switchable (or gated) power domain

isolation-cells-1-1

The circuit shown in Figure 1, after isolation cells are inserted

isolation-cells-2

Always-On Buffer

640?wx_fmt=png

image-20230211001607578

image-20230211001708189

image-20230211001849150

Clock Gating

The Ultimate Guide to Clock Gating https://anysilicon.com/the-ultimate-guide-to-clock-gating/

Clock Gating is defined as: "Clock gating is a technique/methodology to turn off the clock to certain parts of the digital design when not needed".

AND gate-based clock gating

In simplest form a clock gating can be achieved by using an AND gate as shown in picture below

clock gating

However, this simplest form of clock gating technique has some problem of generating glitches in the clock provide to the FF, which are not desirable.

img

Glitches in enable/gated clock

Latch based clock gating

These glitches can be removed by introducing a negative edge triggered FF (assuming downstream FFs are positive edge) or low-level sensitive latch at the output of the clock enable signal.

clock gating

This will make sure that any glitch in the clock enable signal will not be visible to the gated clock output. The Latch output will only be updated during the negative clock cycle and thus input to AND gate will be stable high.

clock gating

Glitch Free Gated Clock

OCV Derating With AOCV

Genus Attribute Reference 22.1

Innovus Text Command Reference 22.10

Article (20416394) Title: Analysis with Advanced On-chip Variation (AOCV) derating in EDI system and ETS

timing_aocv_derate_mode

1
timing_aocv_derate_mode{aocv_multiplicative | aocv_additive}

Default: aocv_multiplicative

Controls the AOCV derating mode.

When set to aocv_multiplicative, the derating factor will be calculated as AOCV derating * OCV derating, which is set using the set_timing_derate command.

When set to aocv_additive, the derating factor will be calculated as AOCV derating + OCV derating values.

When you use this global variable, the report_timing command shows the total_derate column in the timing report output, which allows you to view and cross-check the calculated total derate factor.

To set this global variable, use the set_global command.

image-20221210143256639


Sulege Vivek [link]

img

img

preserve hand-instantiated cells

To preserve the hand-instantiated cells

1
set_dont_touch [get_cells -hierarchical *dont_touch_*]

The instances whose name contain "dont_touch_" shall be preserved during synthesis

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// no performace concerns, rest sync use sync3 is enough

module CN_resetb_sync_cell
(
input resetb_in,
input clkdst,
output resetb_out
);

`ifdef USE_VERILOG
reg [2:0] resetb_dly;
`else
wire [2:0] resetb_dly;
`endif

`ifdef USE_VERILOG
always @(posedge clkdst or negedge resetb_in)
if (~resetb_in) resetb_dly <= 3'b000;
else resetb_dly <= {resetb_dly[1:0], 1'b1};
`else
SDFCNQD4 dont_touch_sync_flop0 (
.SI(1'b0),
.SE(1'b0),
.CP(clkdst),
.CDN(resetb_in),
.D(1'b1),
.Q(resetb_dly[0])
);
SDFCNQD4 dont_touch_sync_flop1 (
.SI(1'b0),
.SE(1'b0),
.CP(clkdst),
.CDN(resetb_in),
.D(resetb_dly[0]),
.Q(resetb_dly[1])
);
SDFCNQD4 dont_touch_sync_flop2 (
.SI(1'b0),
.SE(1'b0),
.CP(clkdst),
.CDN(resetb_in),
.D(resetb_dly[1]),
.Q(resetb_dly[2])
);
`endif

assign resetb_out = resetb_dly[2];

endmodule

Gain-boosted cascode

TODO 📅

Bode's Analysis

image-20260523135911609

image-20260523143559219

Note that ABCD here does not denote the transmission matrix of a two-port network

image-20260523150058131

image-20260523150119043

total sigma and correlation

\[ \sigma_{X+Y} = \sqrt{\sigma_{X}^2 + \sigma_{Y}^2 + 2\rho\sigma_{X}\sigma_{Y}} \]

\(\rho\): Pearson correlation coefficient between \(X\) and \(Y\) (ranges from \(-1\) to \(1\))

\(\rho\sigma_{X}\sigma_{Y}\): Covariance between \(X\) and \(Y\)

  • Perfect Positive Correlation \(\rho = 1\): the variables move exactly together, \(\sigma_{total} = \sigma_{X} + \sigma_{Y}\)

  • Zero Correlation \(\rho = 0\): the geometric sum of individual variations, \(\sigma_{total} = \sqrt{\sigma_{X}^2 + \sigma_{Y}^2}\)

  • Perfect Negative Correlation \(\rho = -1\): variables offset each other's fluctuations, \(\sigma_{total} = \vert{}\sigma_X - \sigma_Y\vert{}\)

Zero-Value Time Constant Analysis

TODO 📅

MOS as resistor

MOSFET can be on and carry no current

image-20260522234016282

image-20260522233918074

two capacitor paradox

Intuitive examination of the two-capacitors "paradox"l [https://youtu.be/WNpxV5qAUMU]

The two-capacitor paradox is a classic puzzle in circuit theory where energy seems to vanish

image-20260522231549323

  1. If there is any resistance $R $ (always true in reality). $R $ dissipates heat

  2. If the resistance is genuinely zero, Then you can't ignore inductance — With pure $LC $, the circuit becomes an oscillator

Two capacitors \(C\) in series around the loop give an effective capacitance \(C_{eq} = C/2\). With inductance \(L\) in the loop, the resonant frequency is \[ \omega_0 = \frac{1}{\sqrt{LC_{eq}}} = \frac{1}{\sqrt{L(C/2)}} = \sqrt{\frac{2}{LC}} \]

download (1) \[ v_1(t) = \frac{V_0}{2}\left(1 + \cos\omega_0 t\right), \qquad v_2(t) = \frac{V_0}{2}\left(1 - \cos\omega_0 t\right) \] the \(y\)-axis is in units of \(V_0\), so the curves run between 0 and 1 \[ v_1(t) + v_2(t) = V_0 \quad \text{at all times} \]

RC High-Pass Filter (R in parallel with \(C_p\))

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
import numpy as np
import matplotlib.pyplot as plt

# 1. Define circuit parameters
R = 100e3 # Resistance in ohms
C = 10e-12 # Main capacitance in Farads
Cp = 500e-15 # Parasitic capacitance in Farads

# 2. Calculate corner (cutoff) frequency and angular frequency
fc = 1 / (2 * np.pi * R * (C + Cp))
wc = 2 * np.pi * fc

# 3. Frequency vector (logarithmic scale from 10 Hz to 1 GHz)
f = np.logspace(1, 9, 2000)
w = 2 * np.pi * f

# 4. Transfer function with parasitic capacitance
# H(s) = (s*C*R) / (1 + s*R*(C + Cp))
numerator = 1j * w * C * R
denominator = 1 + 1j * w * R * (C + Cp)
H_s = numerator / denominator

# Convert to magnitude in decibels (dB)
magnitude_dB = 20 * np.log10(np.abs(H_s))

# 5. Plotting the frequency response
plt.figure(figsize=(10, 6))
plt.semilogx(f, magnitude_dB, 'b', linewidth=2, label='Filter Response')

# 6. Add vertical line for corner frequency
plt.axvline(x=fc, color='r', linestyle='--', label=f'Corner Freq: {fc/1e6:.2f} MHz')

# Formatting the plot
plt.title('Bode Plot: RC High-Pass Filter (R in parallel with $C_p$)')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Gain (dB)')
plt.grid(True, which="both", ls="-", color='0.85')
plt.legend(loc='lower right')
plt.ylim(-40, 5); plt.xlim(1e3, 1e9)

# Show the plot
plt.show()

image-20260520182745032

image-20260520182725684

Transmission Gate

Equivalent Resistance is defined by large signal

[https://www.ece.ucdavis.edu/~ramirtha/EEC116/F11/TGlecture.pdf]

latch borrowed time

Kunal Saraswat [link]

img

Digital DC Offset Correction

image-20241229122711845 \[ X- Y\cdot \beta z^{-1}\cdot \frac{1}{1-z^{-1}} = Y \] therefore \[ \frac{Y}{X} = \frac{1-z^{-1}}{1-(1-\beta)z^{-1}} \]

Temperature Inversion

Adam Teman. Digital Integrated Circuits (83-313) Lecture 3: MOSFET Modeling [pdf]

image-20260417220427008

image-20260417221638635


image-20260417221835369



Zero Temperature Coefficient (ZTC) Bias Points

M. Coelho et al., "Is There a ZTC Biasing Point in the Leading-Edge FET Intrinsic Gain gmrDS?," 2025 9th International Young Engineers Forum on Electrical and Computer Engineering (YEF-ECE), Caparica / Lisbon, Portugal, 2025

M. Coelho et al., "Analysis of the ZTC Bias Points in the FinFET Gate Capacitance and Transition Frequency," 2025 37th International Conference on Microelectronics (ICM), Cairo, Egypt, 2025, pp. 1-6, doi: 10.1109/ICM66518.2025.11322461

there's a specific bias point where the MOSFET transition frequency (fT) becomes almost temperature‑independent

image-20231212195536754

CMRR (Common-Mode Properties)

image-20251029215920630


image-20251029215548157

MOS Noise

MOS Thermal Noise

Michael H. Perrott. Analysis and Design of Analog Integrated Circuits Lecture 14 Noise Spectral Analysis for Circuit Elements [https://www.cppsim.com/CircuitLectures/Lecture14.pdf]

image-20251122135331760

Legacy Long-Channel Model

image-20251028010509047 \[ \color{red} \overline{i^2_d} \propto \gamma \propto \eta \propto \frac{1}{V_{DS}} \]

image-20251028194916465


[https://www.eecg.toronto.edu/~johns/ece512/lecture_notes/04_noise_2_per_page.pdf]

image-20251027234644231


[https://people.engr.tamu.edu/spalermo/ecen474/lecture12_ee474_noise.pdf]

image-20251027235211591

Short-Channel Effects

Gildenblat, G. S. (2010). Compact modeling : principles, techniques and applications. Springer.

VDS Effect On Channel Noise

image-20251028193945932

\[ \color{red} \overline{i^2_d} \propto V_{DS} \] image-20251028194509372


K. Ohmori and S. Amakawa, "Direct White Noise Characterization of Short-Channel MOSFETs," in IEEE Transactions on Electron Devices, vol. 68, no. 4, pp. 1478-1482, April 2021 [pdf, slides]

image-20251028005749046


X. Ding, G. Niu, A. Zhang, W. Cai and K. Imura, "Experimental Extraction of Thermal Noise γ Factors in a 14-nm RF FinFET technology," 2021 IEEE 20th Topical Meeting on Silicon Monolithic Integrated Circuits in RF Systems (SiRF), San Diego, CA, USA, 2021[https://sci-hub.se/10.1109/SiRF51851.2021.9383331]

image-20251122145714011

NF50

TODO 📅

\(\gamma\) vs VDS, VGS in simulation

N28

image-20251111220816282

fix VDS, sweep VGS

image-20251111220404158

fix VGS, sweep VDS

image-20251111221923708

MOS Flicker Noise

T. Noulis, "CMOS process transient noise simulation analysis and benchmarking," 2016 26th International Workshop on Power and Timing Modeling, Optimization and Simulation (PATMOS), Bremen, Germany, 2016 [https://sci-hub.ru/10.1109/PATMOS.2016.7833428]

image-20251123003843500

image-20251123004058989

Dr. Thomas Gneiting, AdMOS GmbH. Flicker Noise Extraction for Scalable MOS Simulation Models [https://www.mos-ak.org/premstaetten/papers/MOS-AK_T.Gneiting.pdf]

image-20251125201927820

image-20251123004154634

image-20251123014358882

Noise analysis ON,IN cfg input noise, noise gain, output noise
image-20251123010320155 image-20251123010847729 i: Id
o: Vg
image-20251123011546709 image-20251123011438115 i: V5
o: Id
image-20251123011906858 image-20251123012105326 i: V1
o: Id

Above simulation demonstrate that flicker noise is represented by a drain-source current in BSIM model, however modeled as a voltage source in series with the gate is just for calculating convenience

David Lee, Berkeley DA. Device Noise Analysis of Switched-Cap Circuits [https://semiwiki.com/eda/2900-device-noise-analysis-of-switched-cap-circuits/]

image-20251129094711959


Sam Palermo. Lecture 12: Noise. ECEN474: (Analog) VLSI Circuit Design Fall 2012 [https://people.engr.tamu.edu/spalermo/ecen474/lecture12_ee474_noise.pdf]

image-20251125193604694


image-20251122212731639

image-20251122211205426

Notice, input referred noise unit follow output noise's unit


陈铖颖,杨丽琼,王统. CMOS模拟集成电路设计与仿真实例:基于CadenceADE. 电子工业出版社,2013image-20251122213305339



Ma, Mb are parallel MOS, with width \(W_a\) and \(W_b\), Since flicker noise current \(\overline{I_{D}^2}(\Delta f) = K_f\frac{g_{m}^2}{C_{ox}WL}\frac{\Delta f}{f}\) and \(g_{m,tot}=g_{m,a} + g_{m,b}\), \(W_{tot} = W_a + W_b\), \(g_{m,a} = \beta W_a\), \(g_{m,b}=\beta W_b\) \[ \overline{I_{D,a}^2}(f) =K_f\frac{\beta^2W_a}{C_{ox}L}\frac{\Delta f}{f} \quad \overline{I_{D,b}^2}(f) = K_f\frac{\beta^2W_b}{C_{ox}L}\frac{\Delta f}{f} \quad \overline{I_{D,tot}^2}(f) = K_f\frac{\beta^2(W_a+W_b)}{C_{ox}L}\frac{\Delta f}{f} \\ \]

Then \[ \color{green}\overline{I_{D,tot}^2} \equiv \overline{I_{D,a}^2} + \overline{I_{D,b}^2} \]

MOS Shot Noise

image-20251122114237398

Gate-Referred Noise Lemma

image-20251122235114046

inverter capacitance simulation

inverter input

R-C, series equivalent circuit

invCap

inverter output

R-C, parallel equivalent circuit


AC simulation

image-20250628112910588

@vi = 0

image-20250628104042741

sweep vi from 0 to 800mV (vdd)

image-20250628105510374


SP simulation

image-20250628112857124

image-20250628112620876

EEStream. Cadence - How to find device capacitance - DC simulation, SP simulation and Large-signal SP simulation [https://www.youtube.com/watch?v=M3zP6eJnONk]

image-20250628114414562

50-ohm?

Why is 50-ohm characteristic impedance standardized in RF and Microwave systems? [link]

[https://www.microwaves101.com/encyclopedias/why-fifty-ohms]

It was a compromise made and a tradeoff between power handling (red curve) and losses (blue curve)

Gm Rout Lemma

\[ A_V = -G_m R_{out} \]

image-20231021092407849

Relative Sensitivity

Olivier de Weck, Karen Willcox. MIT, Gradient Calculation and Sensitivity Analysis [pdf]

Karti Mayaram, ECE 521 Fall 2016 Analog Circuit Simulation, Sensitivity and noise analyses [https://web.engr.oregonstate.edu/~karti/ece521/lec16_11_09.pdf]

Assuming Target \(T\) ( for example, the total resistance) is function of \(x_1,x_2,...,x_N\), then total variation can be expressed as

\[\begin{align} \mathrm{d}T &= \sum_{n=1}^N\frac{\partial T}{\partial x_n}dx_n = \sum_{n=1}^N\frac{\partial T}{\partial x_n}x_n\cdot \frac{\mathrm{d}x_n}{x_n} \end{align}\]

Then, we obtain relative variation \[\begin{align} \frac{\mathrm{d}T}{T} &= \sum_{n=1}^N\frac{\partial T}{\partial x_n}\frac{x_n}{T}\cdot \frac{\mathrm{d}x_n}{x_n} = \sum_{n=1}^N S_{x_n}^T \cdot \frac{\mathrm{d}x_n}{x_n} \end{align}\]

⭐ where \(S_{x_n}^T=\frac{\partial T}{\partial x_n}\frac{x_n}{T}\) is relative sensitivity

relative sensitivity connect \(\frac{\mathrm{d}x_n}{x_n}\) with total relative variation \(\frac{\mathrm{d}T}{T}\)

And \(\mathrm{d}T\) can be expressed as \[ dT =\sum_{n=1}^N S_{x_n}^T T\cdot \frac{\mathrm{d}x_n}{x_n} = \sum_{n=1}^N x_n'\cdot \frac{\mathrm{d}x_n}{x_n} \] ⭐ where \(x_n'= S_{x_n}^T T\) is the contribution of \(x_n\) in \(T\)

⭐ For parallel or series resistors, it can prove \(\sum_{n=1}^N S_{x_n}^T = 1\) and \(\sum_{n=1}^N x_n'=T\)


parallel_pgx.drawio

Here \(T= R_1 \parallel R_2 = \frac{R_1R_2}{R_1+R_2}\), and \(T|_{R_1=8000, R_2=2000} = 1600\)

We obtain relative sensitivity: \[\begin{align} S_{R_1}^T = \frac{R_2}{R_1+R_2} \qquad S_{R_2}^T = \frac{R_1}{R_1+R_2} \end{align}\]

The contribution of \(R_1\) and \(R_2\) to \(T\) \[\begin{align} R_1' &= S_{R_1}^T T | _{R_1=8000, R_2=2000} = 320 \\ R_2' &= S_{R_2}^T T | _{R_1=8000, R_2=2000} = 1280 \end{align}\]


Normalized sensitivity captures relative sensitivity

change in objective per change in design variable

Normalized sensitivity

Device Current Components

image-20250101101419687

common gate amplifiers

No alt text provided for this image

[https://www.linkedin.com/posts/chembiyan-t-0b34b910_analog-analogdesign-rfdesign-activity-7126946716938878976-GeW6?utm_source=share&utm_medium=member_desktop]

Level Shifter

image-20241003224949171

TIA

image-20240824111517140

\[\begin{align} I_{in} &= \frac{V_i}{R_S} + \frac{V_i - V_o}{R_F} \\ \frac{V_i - V_o}{R_F} &= g_m V_i \end{align}\]

Then

\[\begin{align} V_o &= \frac{I_{in}R_F}{\frac{R_S+R_F}{R_S}\frac{1}{1-g_mR_F}- 1} \\ V_i &= \frac{I_{in}R_F}{\frac{R_F}{R_S}+g_mR_F} \end{align}\] If \(R_S \gg R_F\) \[\begin{align} V_o &= \frac{I_{in}}{g_m}(1-g_mR_F) \\ V_i &= \frac{I_{in}}{g_m} \end{align}\]

linearity > TIA stage allows for improved gain with better linearity, as mostly signal current passes through \(R_F\) TODO 📅 ??? Quantitative analysis

Switched-Capacitor Resistor

\[ R_{eq} = \frac{1}{f_sC} \]

image-20240905202145206

[https://youtu.be/SL3-9ZMwdJQ&t=1339]

Channel-Length Modulation & Pinched off

  • \(\lambda \propto \frac{1}{L_g}\)
  • \(\lambda \propto \frac{1}{V_{DS}}\)

image-20241116080122184

  • If \(V_{DS}\) is slightly greater than \(V_{GS} - V_{TH}\), then the inversion layer stops at \(x \leq L\), and we say the channel is "pinched off"
  • Upon passing the pinchoff point, the electrons simply shoot through the depletion region near the drain junction and arrive at the drain terminal

\(L^{'}\) is the function of \(V_{DS}\)

with \(\frac{1}{L^{'}} = \frac{1}{L-\Delta L}=\frac{L+\Delta L}{L^2-\Delta L^2}\approx \frac{1}{L}\left(1+\frac{\Delta L}{L}\right)\), we have \[ I_D \approx \frac{1}{2}\mu_n C_{ox}\frac{W}{L}\left(1+\frac{\Delta L}{L}\right)(V_{GS}-V_{TH})^2 = \frac{1}{2}\mu_n C_{ox}\frac{W}{L}(V_{GS}-V_{TH})^2 (1+\lambda V_{DS}) \] assuming \(\frac{\Delta L}{L} = \lambda V_{DS}\)

\(\lambda\) represents the relative variation in length for a given increment in \(V_{DS}\). Thus, for longer channels, \(\lambda\) is smaller


In reality, however, \(r_O\) varies with \(V_{DS}\). As \(V_{DS}\) increases and the pinch-off point moves toward the source, the rate at which the depletion region around the source becomes wider decreases, resulting in a higher incremental output impedance.

image-20241116084353713

Early Voltage indicator

\[ g_m r_o = \frac{g_m}{I_D}I_D \cdot \frac{V_A}{I_D} = \frac{g_m}{I_D} \cdot V_A \]

$g_m r_o $ is the indicator of \(V_A\), if \(\frac{g_m}{I_D}\) is same

Cgd of Common-Source Stage

Miller effect of Cgd during layout

Nonlinearity of Differential Circuits

image-20240804173949430

\[ \cos^3\omega t = \frac{3\cos \omega t + \cos(3\omega t)}{4} \]

image-20240804174042088

Zero in differential pair with active current mirror

image-20240629103021286

Noting the circuit consists of a "slow path" (M1, M3, M4) in parallel with a "fast path" (M2)

  • "slow path" \[ H_\text{slow}(s) = \frac{A_0}{(1+s/\omega _{pE})(1+s/\omega _{pO})} \]

  • "fast path" \[ H_\text{fast}(s) = \frac{A_0}{1+s/\omega _{pO}} \]

Then \[\begin{align} \frac{V_\text{out}}{V_\text{in}} &= H_\text{slow}(s) + H_\text{fast}(s) \\ &= \frac{A_0}{1+s/\omega _{pO}}\left(\frac{1}{1+s/\omega _{pE}} + 1 \right) \\ &= \frac{A_0(1+s/2\omega _{pE})}{(1+s/\omega _{pO})(1+s/\omega _{pE})} \end{align}\]

That is, the system exhibits a zero at \(2\omega_{pE}\)


signals traveling through two paths within an amplifier may cancel each other at one frequency, creating a zero in the transfer function

image-20240629104408168

\[ \omega_z = \frac{(A_1+A_2)\omega_{p1}\omega_{p2}}{A_1\omega_{p1}+A_2\omega_{p2}} \] noting \(\omega_{p1}\lt \omega_z \lt \omega_{p2}\)

"Zero" by Inspection

a method to predict the existence of "zero" by inspection, based on the concept of "Analog Phase Interpolation"

TODO 📅

Debashis Dhar, How to Recognize "Zero" by Inspection (Utilizing Analog Phase Interpolation) [https://www.linkedin.com/posts/debashis-dhar-12487024_how-to-recognize-zero-by-inspection-activity-7163364364329160704-9qOq?utm_source=share&utm_medium=member_desktop]

Random offset

Art Zirger, Random Offset in CMOS IC Design [https://designers-guide.org/forum/Attachments/mismatch_presentation.pdf]

The dependence of offset voltage and current mismatches upon the overdrive voltage is similar to our observations for corresponding noise quantities

image-20260430215803421

current mirror

image-20240624224944377

image-20240624225010443

To minimize current mismatch, the overdrive voltage must be maximized, a trend opposite to that in differential pair.

This is because as \(V_{GS}-V_{TH}\) increases, threshold mismatch has a lesser effect on the device currents

\(\Delta I_D= g_m \Delta V_{TH} = \frac{2I_D}{V_{OV}}\Delta V_{TH}\)


image-20260430204431088

differential pair

image-20240624222306837

In reality, since mismatches are independent statistical variables

image-20240624222417564

Above shows that the input transistors must be designed for high gain (\(g_mr_o = \frac{2}{V_{OV}\lambda}\)), which means they must be designed for small \(V_{GS}-V_{TH}\).

It is desirable to minimize \(V_{GS}-V_{TH}\) by lowering the tail current or increasing the transistor widths


For \(\frac{\Delta K}{K}\)

\[\begin{align} v_{os} g_m &= \Delta K \frac{W}{L}(V_{GS}-V_{TH})^2 \\ v_{os} 2K\frac{W}{L}(V_{GS}-V_{TH}) &= \Delta K \frac{W}{L}(V_{GS}-V_{TH})^2 \\ v_{os} &= \frac{V_{GS}-V_{TH}}{2} \frac{\Delta K}{K} \end{align}\]

The derivation for \(\frac{\Delta W/L}{W/L}\) is same with \(\frac{\Delta K}{K}\)


alternative derivation

\[\begin{align} \Delta V_\beta \cdot g_m &= \frac{\partial I_D}{\partial \beta} \Delta \beta \\ &= I_D \frac{\Delta \beta}{\beta} \end{align}\]

That is \(\Delta V_\beta = \frac{I_D}{g_m}\frac{\Delta \beta}{\beta}\)

\[ \Delta V_R \cdot g_m R = I_D \cdot \Delta R \]

That is \(\Delta V_R = \frac{I_D}{ g_m} \cdot \frac{\Delta R}{R}\)

[https://electronicengineering.phd.upc.edu/en/courses-and-seminars/courses-materials/2008-2009/slides-makinwa-1]


image-20260430202959259

Effect of Feedback on Noise

Feedback does not improve the noise performance of circuits.

image-20240508205903213

The input-referred noise voltage and current remain the same if the feedback network introduces no noise.

RC charge & discharge

  • charge: \[ V_o(t) = V_{X}(1-e^{-\frac{t}{\tau}}) + V_{o,0}\cdot e^{\frac{-t}{\tau}} \]

  • discharge: \[ V_o(t) = V_{o,0}\cdot e^{-\frac{t}{\tau}} + V_{o,\infty}\cdot(1-e^{-\frac{t}{\tau}}) \]

  1. \(e^{-\frac{t}{\tau}}\) item determine the initial state
  2. \((1-e^{-\frac{t}{\tau}})\) item determine the final state

image-20231104231640290

image-20231104232000036

AC coupling

\(V_m=\frac{1}{4},\space \frac{3}{4}\) and its common voltage \(\frac{1}{2}\)

\(V_o=-\frac{1}{4},\space \frac{1}{4}\) and its common voltage \(0\)

image-20231121224940814

image-20231121225358509


\[ \tau = 200 \text{nF} \times (50+50)\text{ohm} = 20 \mu s \]

high level envelope:

image-20231121230155083

image-20231121230225895

Current mirror with source degeneration

image-20231103213308081

image-20231103213327501

degeneration

Razavi 2nd, problem 14.15

STB and PSTB in Spectre/RF

F. Wiedmann, "Loop gain simulation, [https://sites.google.com/site/frankwiedmann/loopgain]

M. Tian, V. Visvanathan, J. Hantgan and K. Kundert, "Striving for small-signal stability," in IEEE Circuits and Devices Magazine, vol. 17, no. 1, pp. 31-41, Jan. 2001 [https://kenkundert.com/docs/cd2001-01.pdf]

Open loop gain analysis and "STB" method [https://www.linkedin.com/pulse/open-loop-gain-analysis-stb-method-jean-francois-debroux]

刘堃. Middlebrook环路测量方法讨论,STB原理 [https://bbs.eetop.cn/thread-985438-1-1.html]

image-20251122095447868

STB analysis

Spectre stb's "loopgain" is negative of "T" in paper \[ T = \frac{2(AD-BC) - A + D}{2(AD-BC)-A+D-1} \]

AC simulation testbench, shown as below,

stb_pstb.drawio

  1. \(I_{inj}\) = 0, \(V_{inj}\) = 1

    B = if, D = ve

  2. \(I_{inj}\) = 1, \(V_{inj}\) = 0

    A = if, C = ve

PSTB analysis

Spectre pstb is similar to stb, just set pac as 1 instead of ac in current source and voltage source.

This analysis just use harmonic 0 transfer function in pac analysis, which has limitation.

Thevenin and Norton Equivalent Circuits

戴维南定理

image-20231021084850078

等效电阻的计算方法

image-20231021085151943

使用外加电源法时, 全部独立电源需要置零

诺顿定理

image-20231021090448282

Miller's Approximation: right-half-plane zero

image-20231021101204165

A quick inspection of this circuit reveals that a zero lies at a frequency where the current through \(C_{12}\) becomes equal to \(g_2V_1\).

When this occurs, the current through the parallel combination of \(C_2\) and \(R_2\) becomes zero, creating a zero in the transfer function.

In other words, we can write

\[\begin{align} g_2V_1 &= V_1sC_{12} \\ s &= \frac{g_2}{C_{12}} \end{align}\]

Nonoverlapping clock

Classical

image-20241016212042812

DWC

C2PHIa is important to ensure nonoverlapping and DelayA2B is due to level shifter

image-20241016212100040


[https://youtu.be/G0lzrMll-Ho&t=3114]

image-20260320221142263

Single ended Amplifier Offset Voltage

unity gain buffer

image-20220917115231508

\[\begin{align} V_o &= V_{o,dc}+A(V_p-V_m) \\ V_o' &= V_{o,dc}+A(V_p+V_{os}-V_m') \end{align}\]

Then, we get \[ V_{os}=\frac{V_o'-V_o}{A}+(V_m'-V_m) \] Due to \(V_o=V_m\) and \(V_o'=V_m'\) \[ V_{os}=(1/A+1)\Delta{V_m} \] or \[ V_{os}=(1/A+1)\Delta{V_o} \] if \(A \gg 1\) \[ V_{os}=\Delta{V_o} \]

non-inverting amplifier

image-20220917115308699 \[\begin{align} V_o &= V_{o,dc}+A(V_p-V_m) \\ V_o' &= V_{o,dc}+A(V_p+V_{os}-V_m') \\ V_m &= \beta V_o \\ V_m' &= \beta V_o' \end{align}\]

we get \[ V_{os}=\frac{V_o'-V_o}{A}+(V_m'-V_m) \] or \[ V_{os}=\frac{\Delta V_o}{A}+\beta \Delta V_o \] if \(A \gg 1\) \[ V_{os}=\beta \Delta V_o \] or \[ V_{os}=\Delta V_m \]


Lecture 22 Variability and Mismatch of Dr. Hesham A. Omran's Analog IC Design

image-20221022010448797

URL: https://www.master-micro.com/professional-courses/analog-ic-design/course-resources

Gotcha MOS ron

There is discrepancy between model operating point and \(V_{ds}/I_{ds}\)

I believe that the equation \(V_{ds}/I_{ds}\) is more appropriate where mos is used as switch, though \(V_{ds}=0\) is an outlier.

image-20230104230757729

image-20230104230837829

image-20230104230851475

Schmitt Inverter

image-20231021232912529

gm/ID Intuition

image-20230103220933081

small gm/ID for High ro, or high Early voltage \(V_A\)

transition frequency \(f_T\)

Defined as the frequency at which the small-signal current gain of a device is unity

image-20231213234524075


image-20240116233951006


image-20250701230019148

mag(Ids@ft) = Ig(1mA)

Aditya Varma Muppala. MMIC 08: High Frequency Device Characterization in Cadence - Fmax, Ft, NFmin vs Jd [https://youtu.be/kgEypIA8eus]


image-20250831165407595

fmax

Art3, Measuring Fmax for MOS Transistors [https://community.cadence.com/cadence_blogs_8/b/rf/posts/measuring-fmax-for-mos-transistors]

[https://www.rfinsights.com/concepts/ft-vs-fmax/]

TODO 📅

Miller multiplication of Capacitor

Positive Cap

image-20231220225508580

image-20231220225450481

Negative Cap

image-20231220225910283

image-20231220230015868


gain has limited bandwidth

image-20231224212914366

image-20231224212541383

image-20231224212625409

\(V_o = V_i |A|e^{j\theta}\), and \(A_r = |A|\cos\theta\), \(A_i = |A|\sin\theta\)

Then \(I_i = (V_i - V_o)sC_f= V_i(1-|A|e^{j\theta})sC_f\), impedance is shown as below

\[\begin{align} Z &= \frac{V_i}{I_i} \\ &= \frac{1}{(1-|A|e^{j\theta})j\omega C_f} \\ &= -\frac{j}{\omega C_f\frac{1+|A|^2-2|A|\cos\theta}{1-|A|\cos\theta}} + \frac{|A|\sin\theta}{\omega C_f (1+|A|^2-2|A|\cos\theta)} \\ \end{align}\]

\(C_\text{eq}\) and \(R_\text{eq}\) are obtained \[\begin{align} C_\text{eq} &= \frac{1+|A|^2-2A_r}{1-A_r}\cdot C_f \\ R_\text{eq} &= \frac{A_i}{1+|A|^2-2A_r}\cdot \frac{1}{\omega C_f} \end{align}\]

D/S small signal model

image-20240106161059584

The Drain and Source of MOS are determined in DC operating point, i.e. large signal.

That is, top of \(M_2\) is drain and bottom is source, \[\begin{align} R_\text{eq2} &= \frac{r_\text{o2}+R_L}{1+g_\text{m2}r_\text{o2}} \\ & \simeq \frac{1}{g_\text{m2}} \end{align}\]

PMOS small signal model polarity

The small-signal models of NMOS and PMOS transistors are identical

A negative \(\Delta V_\text{GS}\) leads to a negative \(\Delta I_D\).

Recall that \(I_D\), in the direction shown here, is negative because the actual current of holes flows from the source to the drain.

image-20240106170315177

Conversely, a positive \(\Delta V_\text{GS}\) produces a positive \(\Delta I_D\), as is the case for an NMOS device.

image-20240106164923917

Leakage in MOS

Alvin L.S. Loke. 2004. Introduction to Deep Submicron CMOS Device Technology & Its Impact on Circuit Design [https://ewh.ieee.org/r5/denver/sscs/Presentations/2004_12_Loke.pdf]

image-20241109195527005

  • Subthreshold leakage
    • Drain-Induced Barrier Lowering (DIBL)
  • Reverse-bias Source/Drain junction leakages
  • Gate leakage
  • two other leakage mechanisms
    • Gate Induced Drain Leakage (GIDL)
    • Punchthrough

image-20251213105246782

W. M. Elgharbawy and M. A. Bayoumi, "Leakage sources and possible solutions in nanometer CMOS technologies," in IEEE Circuits and Systems Magazine, vol. 5, no. 4, pp. 6-17, Fourth Quarter 2005, doi: 10.1109/MCAS.2005.1550165.

X. Qi et al., "Efficient subthreshold leakage current optimization - Leakage current optimization and layout migration for 90- and 65- nm ASIC libraries," in IEEE Circuits and Devices Magazine, vol. 22, no. 5, pp. 39-47, Sept.-Oct. 2006, doi: 10.1109/MCD.2006.272999.

P. Monsurró, S. Pennisi, G. Scotti and A. Trifiletti, "Exploiting the Body of MOS Devices for High Performance Analog Design," in IEEE Circuits and Systems Magazine, vol. 11, no. 4, pp. 8-23, Fourthquarter 2011, doi: 10.1109/MCAS.2011.942751.

Andrea Baschirotto, ISSCC2015 "ADC Design in Scaled Technologies"

Joachim Assenmacher Infineon Technologies, "BSIM4 Modeling and Parameter Extraction" [https://ewh.ieee.org/r5/denver/sscs/References/2003_03_Assenmacher.pdf]

Stefan Rusu, Intel ISSCC 2008 Tutorial: "Leakage Reduction Techniques" [https://www.nishanchettri.com/isscc-slides/2008%20ISSCC/Tutorials/T06_Pres.pdf]

Drain-Induced Barrier Lowering (DIBL)

image-20251213104939367

As a result of DIBL, threshold voltage is reduced with shorter channel lengths and, consequently, the subthreshold leakage current is increased

image-20240901231532412

impact on output impedance

The principal impact of DIBL on circuit design is the degraded output impedance.

In short-channel devices, as \(V_{DS}\) increases further, drain-induced barrier lowering becomes significant, reducing the threshold voltage and increasing the drain current

image-20240901232709711

Impact Ionization and GIDL are different, however both increase drain current, which flowing from the drain into the substrate

image-20241120210915254

Gate induced drain leakage (GIDL)

image-20251213105152249

image-20241110001118250

Figure 4.3

The large current flows from the drain to bulk and this drain leakage current is named gate-induced drain leakage (GIDL) since it is due to a gate-induced high electric field present in the gate-to-drain overlap region

gate-induced drain leakage (GIDL) increases exponentially due to the reduced gate oxide thickness

image-20240902000820459

Chauhan, Yogesh Singh, et al. FinFET modeling for IC simulation and design: using the BSIM-CMG standard. Academic Press, 2015.


image-20240901225754731

\[ \frac{g_m}{I_D} = \frac{2}{V_{GS}-V_{TH}} \] Decrease of gm/Id results from decrease in VT.

GIDL (Gate induced drain leakage) as at weak inversion may results in a weak lateral electric field causing leakage current between drain and bulk, which degrade the efficiency of the transistor (gm/ID).

[https://www.linkedin.com/posts/master-micro_mastermicro-mastermicro-adt-activity-7214549962833989632-ZoV_?utm_source=share&utm_medium=member_desktop]

Voltage Dependence

image-20241111224955193

Temperature Dependence

image-20241111225025277


In advanced node, gate leakage is also a strong function of temperature

image-20241111230519009

Power/Ground and I/O Pins

Power / Ground Pin Information

In both digital and analog I/O, power and ground pins appear at the sub-circuit definiton, allowing user to use the I/O in voltage islands. They follow certain naming conventions.

  1. digital I/O sub-circuit
  • VDD: pre-driver core voltage (supplied by PVDD1CDGM)
  • VSS: pre-driver ground and also global ground (supplied by PVDD1CDGM)
  • VDDPST: I/O post-driver voltage, i.e. 1.8V (supplied by PVDD2CDGM or PVDD2POCM)
  • VSSPOST: I/O post-driver ground (supplied by PVDD2CDGM or PVDD2POCM)
  • POCCTRL: POCCTRL signal (supplied by PVDD2POCM)
  1. analog I/O placed in a core voltage domain, the convention is
  • TACVDD: analog core voltage (supplied by PVDD3ACM)
  • TACVSS: analog core ground (supplied by PVDD3ACM)
  • VSS: global core ground
  1. analog I/O placed in an I/O voltage domain, the convention is:
  • TAVDD: analog I/O voltage, i.e. 1.8V (supplied by PVDD3AM)
  • TAVSS: analog I/O ground (supplied by PVDD3AM)
  • VSS: global core ground

Power/Ground Combo Cells

power/ground combo pad cell pins to be connected to bump to core side pin name
PVDD1CDGM VDD VSS VDD VSS
PVDD2CDGM PVDD2POCM VDDPST VSSPST N/A
PVDD3AM TAVDD TAVSS AVDD AVSS
PVDD3ACM TACVDD TACVSS AVDD AVSS

Note for the retention mode

  1. At initial state, IRTE must be 0 when VDD is off.
  2. IRTE must be kept >= 10us after VDD turns on again (from the retention mode to the normal operation mode).
  3. IRTE can be switched only when both VDD and VDDPST are on.

rention_seq.drawio

When the rention function is needed, IRTE signal must come from an "always-on" core power domain. If you don't need the rention function, it is required to tie IRTE to ground. In other words, no matter the rention feature is needed or not, it is required to have PCBRTE in each domain.

PCBRTE_in_digital_domain.drawio

Note: PCBRTE does not need PAD connection.

Internal Pins

There are 3 internal global pins, i.e. ESD, POCCTRL, RTE, in all digital domain cells.

In real application,

  • ESD pin is an internal signal and active in ESD event happening
  • POCCTRL is an internal signal and active in Power-on-control event.

However, these special events (i.e. ESD event and Power-on-control event) are not modeled in NLDM kit (.lib), only normal function is covered, so ESD and POCCTRL pins are simply defined as ground in NLDM kit (.lib).

These 3 global pins will be connected automatically after cell-to-cell abutting in physical layout.

Power-Up sequence in Digital Domain

Power up the I/O power (VDDPST) first, then the core power (VDD)

pocctrl_seq.drawio

  1. PVDDD2POCM cell would generate Power-On-Control signal (POCCTRL) to have the post-driver NMOS and PMOS off, so that the crowbar current would not occur in the post-driver fingers when the I/O voltage is on while the core voltage remains off. As such, I/O cell would be in the Hi-Z state. when POCCTRL is on, the pll-up/down resistor is disabled and C is 0.
  2. The POCCTRL signal is transmitted to I/O cells through cell abutment. There is no need to have routing for POCCTTRL nor give a control signal to the POCCTRL pin any of I/O cells. Note that the POCCTRL signal would be cut if inserting a power-cut (PRCUT) cell.

power-on-control-ciruit.drawio

Power-Down sequence in Digital Domain

It's the reverse of power-up sequence.

Use model in Innovus

1
2
3
4
5
6
7
8
9
10
11
12
set init_gnd_net "vss_core vss DUMMY_ESD DUMMY_POCCTRL"

addInst -moduleBased u_io -ori R270 -physical -status fixed -loc 135 994 -inst u_io/VDDIO_1 -cell PVDD2CDGM_H

addNet u_io_RTE
attachTerm FILLER_6 RTE u_io_RTE
attachTerm VDDIO_1 RTE u_right_RTE
setAttribute -skip_routing true -net u_io_RTE

clearGlobalNets
globalNetConnect DUMMY_POCCTRL -type pgpin -pin POCCTRL -singleInstance u_io/VDDDIO_1 -override
globalNetConnect DUMMY_ESD -type pgpin -pin ESD -singleInstance u_io/VDDDIO_1 -override
1
2
3
4
5
6
7
8
9
10
11
12
13
14
set pins [get_object_name [get_ports *]]
foreach pin $pins {
set netPtr [dbGetNetByName $pin]
if { $netPtr == "0x0" } {
puts "INFO: can't find the port: $pin"
} else {
setAttribute -net $pin -skip_routing true
}
}

foreach net [get_object_name [get_nets -of_objects [get_pins */RTE -hierarchical]]] {
setAttribute -net $net -skip_routing true
dbSet [dbGetNetByName $net].dontTouch true
}

reference

The Analog Designer's Toolbox (ADT) | Invited Talk by IEEE Santa Clara Valley Section CAS Society, https://youtu.be/FT6kKC5OdE0

ESSCIRC2023 Circuit Insights Ali Sheikholeslami [https://youtu.be/2xFIZM5_FPw]

Ali Sheikholeslami, Circuit Intuitions: Thevenin and Norton Equivalent Circuits, Part 3 IEEE Solid-State Circuits Magazine, Vol. 10, Issue 4, pp. 7-8, Fall 2018.

—, Circuit Intuitions: Thevenin and Norton Equivalent Circuits, Part 2 IEEE Solid-State Circuits Magazine, Vol. 10, Issue 3, pp. 7-8, Summer 2018.

—, Circuit Intuitions: Thevenin and Norton Equivalent Circuits, Part 1 IEEE Solid-State Circuits Magazine, Vol. 10, Issue 2, pp. 7-8, Spring 2018.

—, Circuit Intuitions: Miller's Approximation IEEE Solid-State Circuits Magazine, Vol. 7, Issue 4, pp. 7-8, Fall 2015.

—, Circuit Intuitions: Miller's Theorem IEEE Solid-State Circuits Magazine, Vol. 7, Issue 3, pp. 8-10, Summer 2015.

Shanthi Pavan, "Demystifying Linear Time Varying Circuits"

ecircuitcenter. Switched-Capacitor Resistor [http://www.ecircuitcenter.com/Circuits/SWCap/SWCap.htm]

Jørgen Andreas Michaelsen. INF4420 Switched-Capacitor Circuits. [https://www.uio.no/studier/emner/matnat/ifi/INF4420/v13/undervisningsmateriale/inf4420_v13_07_switchedcapacitor_print.pdf]

chembiyan T. OC Lecture 10: A very basic introduction to switched capacitor circuits [https://youtu.be/SaYtemYp4rQ

Robert Bogdan Staszewski, Poras T. Balsara. "All‐Digital Frequency Synthesizer in Deep‐Submicron CMOS"

Mayank Parasrampuria, Sandeep Jain, Burn-in 101 [link]


Kevin Zheng. Circuit Artists [https://circuit-artists.com/posts/]

image-20250730172648857


image-20231106232135180

Terminology

The most accurate method to calculate the degradation of transistors is the SPICE-level simulation of the whole netlist with application programming interface (API) and industry-standard stress process models

MOSRA: MOSFET reliability analysis Synopsys

RelXpert: Cadence

TMI: TSMC Model Interface, TSMC

OMI: Open Model Interface, Si2 standard,

The Silicon Integration Initiative (Si2) Compact Model Coalition has released the Open Model Interface, an Si2 standard, C-language application programming interface that supports SPICE compact model extensions.OMI allows circuit designers to simulate and analyze such important physical effects as self-heating and aging, and perform extended design optimizations. It is based on TMI2, the TSMC Model Interface, which was donated to Si2 by TSMC in 2014.

  • TDDB: Time-Dependent Dielectric Breakdown
  • HCI: Hot Carrier injection
  • BTI: Bias Temperature Instability
    • NBTI: Negative Bias Temperature Instability
    • PBTI: Positive Bias Temperature Instability
  • SHE: Self-Heating Effect

4645.reliability.png

Self-Heating Effect (SHE)

Self-heating effect (SHE) is composed of FEOL self-heat and BEOL self-heat, both contribute to the \(\Delta T\)

image-20260110001356287

image-20260110004407012

aging w/i SHE

image-20230513215602865

EM w/i SHE

image-20230513220047241

image-20260110001259826


Junjie Chen, Keqing Ouyang ZTE SANECHIPS. Challenges and Solutions of PI Signoff for Next Generation Large Scale Chips with TSMC 7nm Process Technology [pdf]

image-20260110010115827


Thermal coupling

Jae-Gyung Ahn Oct 3rd 2019 Xlinx. Design For Thermal Reliability in 7nm [https://www.ieee-edps.com/archives/2019/c/0300ahn.pdf]

M. Lofrano et al., "Towards accurate temperature prediction in BEOL for reliability assessment (Invited)," 2023 IEEE International Reliability Physics Symposium (IRPS), Monterey, CA, USA, 2023, pp. 1-7, doi: 10.1109/IRPS48203.2023.10117701

image-20260110011047983

Mitigating Self-Heating

A. Loke, "Short Course: Device and Physical Design Considerations for Circuits in FinFET Technology," 2020 IEEE International Solid-State Circuits Conference - (ISSCC), San Francisco, CA, USA, 2020 [pdf]

J. E. Proesel, "Short Course: High-Speed and Mixed-Signal Circuit Design Techniques in FinFET Technology for Wireline and Optical Interface Applications," 2020 IEEE International Solid-State Circuits Conference - (ISSCC), San Francisco, CA, USA, 2020

  1. guard ring

    closer OD help reduce dT

  2. extended gate

  3. source/drain metal stack

image-20260110001759525


image-20260110005051752

M. Erett et al., "A 0.5–16.3 Gbps Multi-Standard Serial Transceiver With 219 mW/Channel in 16-nm FinFET," in IEEE Journal of Solid-State Circuits, vol. 52, no. 7, pp. 1783-1797, July 2017 [https://sci-hub.se/10.1109/JSSC.2017.2702711]image-20260110004934602

Heat transfer, thermal resistance

image-20241120222920258


image-20241120221254833

image-20241120221405337

image-20241120223053280

Bias Temperature Instability (BTI)

image-20250105132044116


img

BTI occurs predominantly in PMOS (or p-type or p channel) transistors and causes an increase in the transistor's absolute threshold voltage.

Stress in the case of NBTI means that the PMOS transistor is in inversion; that means that its gate to body potential is substantially below 0 V for analogue circuits or at VGB = −VDD for digital circuits

Higher voltages and higher temperatures both have an exponential impact onto the degradation, induced by NBTI.

NBTI will be accelaerated with thinner gate oxide, at a high temperature and at a high electric field across the oxide region.

During recovery phase where the gate voltage of pMOS is high and stress is removed, the H atoms in the gate oxiede diffuse back to Si-SiO2 interface and the recombination of Si-H bonds reduces the threshold voltage of pMOS.

image-20230513111525657

image-20230513111657285

The net result is an increase in the magnitude of the device threshold voltage |Vt|, and a degradation of the channel carrier mobility.

Caution: The aging model provided by fab may NOT contain recovry effect

image-20230513104621962

image-20230513104654501

PBTI

image-20250730180359480

image-20250730180302668


Dieter K. Schroder. Negative Bias Temperature Instability (NBTI) Physics, Materials, Process, and Circuit Issues [https://ewh.ieee.org/r5/denver/sscs/Presentations/2005_08_Schroder.pdf]

image-20251213180649808

Hot Carrier Degradation (HCI)

Short-channel MOSFETs may exprience high lateral electric fields if the drain-source voltage is large. while the average velocity of carriers saturate at high fields, the instantaneous velocity and hence the kinetic energy of the carriers continue to increase, especially as they accelerate toward the drain. These are called hot carriers.

In nanometer technologies, hot carrier effects have subsided. This is because the energy required to create an electron-hole pair, \(E_g \simeq 1.12 eV\), is simply not available if the supply voltage is around 1V.

\[ F_E= E \cdot q \]

\[\begin{align} E_k &= F_E \cdot s \\ &= E \cdot q \cdot s \end{align}\]

Electrons and holes gaining high kinetic energies in the electric field (hot carriers) may be injected into the gate oxide and cause permanent changes in the oxide-interface charge distribution, degrading the current-voltage characteristics of the MOSFET.

The channel hot-electron (CHE) effect is caused by electons flowing in the channel region, from the source to the drain. This effect is more pronounced at large drain-to-source voltage, at which the lateral electric field in the drain end of the channel accelerates the electrons.

Four different hot carrier injectoin mechanisms can be distinguished: - channel hot electron (CHE) injection - drain avalanche hot carrier (DAHC) injection - secondary generated hot electron (SGHE) injection - substrate hot electron (SHE) injection

HCI is more of a drain-localized mechanism, and is primarily a carrier mobility degradation (and a Vt degradation if the device is operated bi-directionally).

image-20230512213236023

For smaller transistor dimensions, CHE dominates the hot carrier degradation effect

The hot-carrier induced damage in nMOS transistors has been found to result in either trapping of carriers on defect sites in the oxide or the creation of interface states at the silicon-oxide interface, or both.

The damage caused by hot-carrier injection affects the transistor characteristics by causing a degradation in transconductance, a shift in the threshold voltage, and a general decrease in the drain current capability.

HCI seems to have just a weak temperature dependency

image-20251213114401907Unlike BTI, it seems to be no or just little recovery. As holes are much "cooler" (i.e. heavier) than electrons, the channel hot carrier effect in nMOS devices is shown to be more significant than in pMOS devices.

image-20231106224938502

Degradation saturation effect

HCI model can reproduce the saturation effect if stress time is long enough

image-20230513112108262

Gate Oxide Integrity (GOI)

藍色天空, 浅谈 Gate Oxide Integrity(GOI)[https://www.kaixinspace.com/gate-oxide-integrity/]

image-20250730180005931

Time dependent dielectric breakdown (TDDB)

M. A. Alam, ECE 695A Reliability Physics of Nanotransistors [link], [https://nanohub.org/resources/17208/download/2013.03.01-ECE695A-L21.pdf]

K. Yang, R. Zhang, T. Liu, D. -H. Kim and L. Milor, "Optimal Accelerated Test Regions for Time- Dependent Dielectric Breakdown Lifetime Parameters Estimation in FinFET Technology," 2018 Conference on Design of Circuits and Integrated Systems (DCIS), Lyon, France, 2018 [https://par.nsf.gov/servlets/purl/10104486]

image-20250730175415143

Scaling drive more concerns in TDDB

image-20250730175201502


img


image-20251213114719498

waveform-dependent nature

The figure below illustrates the waveform-dependent nature of these mechanisms – as described earlier, BTI and HCI depend upon the region of active device operation. The slew rate of the circuit inputs and output will have a significant impact upon these mechanisms, especially HCI.

  • Negative bias temperature instability (NBTI). This is caused by constant electric fields degrading the dielectric, which in turn causes the threshold voltage of the transistor to degrade. That leads to lower switching speeds. This effect depends on the activity level of the circuits, with heavier impact on parts of the design that don’t switch as often, such as gated clocks, control logic, and reset, programming and test circuitry.
  • Hot carrier injection (HCI). This is caused by fast-moving electrons inserting themselves into the gate and degrading performance. It primarily occurs on higher-voltage modes and fast switching signals.

image-20230513110202915

  • longer channel length help both BTI and HCI
  • larger \(V_{ds}\) help BTI, but hurt HCI
  • lower temperature help BTI of core device, but hurt that of IO device for 7nm FinFET

aging model

MOSRA

MOSRA is a 2-step simulation: 1) Age computation, 2) Post-age analysis


TMI

BTI recovery effect NOT included for N7

Stochastic Nature of Reliability Mechanisms

A fraction of devices will fail

img

img

Circuit Simulations

image-20231106230145351

image-20231106230226203

Burn-in & High-temperature operating life (HTOL)

  • HTOL:
    • characterization test
    • characterize the life expectancy
  • Burn-in:
    • production test
    • weed out defective products

HTOL and Burn-in Testing capture the two ends of the reliability characterization graph known as the "bathtub curve"

importance-of-htol-figure-1

[https://arworld.us/the-importance-of-htol-and-burn-in-testing-methods/]

Iddq Testing

Jeff Rearick. Analog Adventures in Digital Chip Testing [https://ewh.ieee.org/r5/denver/sscs/Presentations/2005_04_Rearick.pdf]

image-20251213180949136

reference

Phillip Allen. Reliability of Analog Circuits [https://aicdesign.org/wp-content/uploads/2021/04/Reliability_Theory210224-1.pdf]

M. A. Alam. ECE 695A Reliability Physics of Nanotransistors [https://nanohub.org/groups/ece695alam]

Dennis Eaton Agilent Technologies 2005. Integrated Circuit Intrinsic Reliability [https://ewh.ieee.org/r5/denver/sscs/Presentations/2005_02_Eaton.pdf]


Tanya Nigam and Andreas Kerber. Global Foundaries. CICC2014 Session 15 - Challenges for Analog Nanoscale Technologies: Reliability challenges and modeling of HK MG Technologies

Spectre Tech Tips: Device Aging? Yes, even Silicon wears out - Analog/Custom Design (Analog/Custom design) - Cadence Blogs - Cadence Community https://shar.es/afd31p

S. Liao, C. Huang, and A. C. J. X. T. Guo, "New Generation Reliability Model," Dec 2016. [Online]. Available: http://www.mos-ak.org/berkeley_2016/publications/T11_Xie_MOS-AK_Berkeley_2016.pdf. [Accessed Aug 2018]

Tianlei Guo, Jushan Xie, "A Complete Reliability Solution: Reliability Modeling, Applications, and Integration in Analog Design Environment" [https://mos-ak.org/beijing_2018/presentations/Tianlei_Guo_MOS-AK_Beijing_2018.pdf]

FinFET Reliability Analysis with Device Self-Heating via @DanielNenni https://semiwiki.com/eda/synopsys/5085-finfet-reliability-analysis-with-device-self-heating/

Chris Changze Liu 刘长泽,Hisilicon, Huawei, "Reliability Challenges in Advanced Technology Node" https://www.tek.com.cn/sites/default/files/2018-09/reliability-challenges-in-advanced-technology-node.pdf

Ben Kaczer, imec. FEOL reliability: from essentials to advanced and emerging devices and circuits. 2016 IRPS Tutorial

Ben Kaczer, imec. Present and Future of FEOL Reliability—from Dielectric Trap Properties to Reliable Circuit Operation. 2016 IEDM 2016 [link]

Kang, Sung-Mo Steve, Yusuf Leblebici and Chulwoo Kim. “CMOS Digital Integrated Circuits: Analysis & Design, 4th Edition.” (2014).

Behzad Razavi. "Design of Analog CMOS Integrated Circuits" (2016)

Basel Halak. Ageing of Integrated Circuits : Causes, Effects and Mitigation Techniques. Cham, Switzerland: Springer, 2020. ‌

Elie Maricau, and Georges Gielen. Analog IC Reliability in Nanometer CMOS. Springer Science & Business Media, 2013. ‌

Transistor Aging Intensifies At 10/7nm And Below https://semiengineering.com/transistor-aging-intensifies-10nm/

Modeling Effects of Dynamic BTI Degradation on Analog and Mixed-Signal CMOS Circuits. MOS-AK/GSA Workshop, April 11-12, 2013, Munich https://www.mos-ak.org/munich_2013/presentations/05_Leonhard_Heiss_MOS-AK_Munich_2013.pdf

Challenges and Solutions in Modeling and Simulation of Device Self-heating, Reliability Aging and Statistical Variability Effects https://www.mos-ak.org/beijing_2018/presentations/Dehuang_Wu_MOS-AK_Beijing_2018.pdf

New Generation Reliability Model https://www.mos-ak.org/berkeley_2016/publications/T11_Xie_MOS-AK_Berkeley_2016.pdf

FinFET SPICE Modeling: Synopsys Solutions to Simulation Challenges of Advanced Technology Nodes https://www.mos-ak.org/washington_dc_2015/presentations/T03_Joddy_Wang_MOS-AK_Washington_DC_2015.pdf

A. Zhang et al., "Reliability variability simulation methodology for IC design: An EDA perspective," 2015 IEEE International Electron Devices Meeting (IEDM), Washington, DC, USA, 2015, pp. 11.5.1-11.5.4, doi: 10.1109/IEDM.2015.7409677.

W. -K. Lee et al., "Unifying self-heating and aging simulations with TMI2," 2014 International Conference on Simulation of Semiconductor Processes and Devices (SISPAD), Yokohama, Japan, 2014, pp. 333-336, doi: 10.1109/SISPAD.2014.6931631.

Aging and Self-Heating in FinFETs - Breakfast Bytes - Cadence Blogs - Cadence Community https://community.cadence.com/cadence_blogs_8/b/breakfast-bytes/posts/aging-and-self-heating

Article (20482350) Title: Measure the Impact of Aging in Spectre Technology

Karimi, Naghmeh, Thorben Moos and Amir Moradi. “Exploring the Effect of Device Aging on Static Power Analysis Attacks.” IACR Trans. Cryptogr. Hardw. Embed. Syst. 2019 (2019): 233-256.[link]

Self-Heating Issues Spread https://semiengineering.com/self-heating-issues-spread/

Y. Zhao and Y. Qu, "Impact of Self-Heating Effect on Transistor Characterization and Reliability Issues in Sub-10 nm Technology Nodes," in IEEE Journal of the Electron Devices Society, vol. 7, pp. 829-836, 2019 [https://sci-hub.se/10.1109/JEDS.2019.2911085]

Wafer Acceptance Test (WAT)

温德通. 集成电路制造工艺与工程应用. 机械工业出版社 2018

Wafer acceptance testing (WAT) also known as Process Control Monitoring (PCM)

image-20250802091601281

VT Measurement Methods

A. L. S. Loke, "Constant-Current Threshold Voltage Extraction in HSPICE for Nanoscake CMOS Analog Design," in Synopsys Users Group (SNUG) 2010 Conference (San Jose, CA), Mar. 2010. (copyright by AMD) [slides, paper]

image-20251213101528870

image-20250802101539555


monitor_parameters.drawio

Parameter Definition:

\[\begin{align} I_{\text{D,lin}} &= I_D \mid _{V_G=V_{DD},V_D=0.05V} \\ I_{\text{D,sat}} &= I_D \mid _{V_G=V_D=V_{DD}} \\ V_{\text{t,lin}} &= V_G \mid _{I_D=I_{\text{thx}}\cdot \frac{W}{L}@\{V_D=0.05V\}} \end{align}\]

\(I_{\text{thx}}\) could be different for technologies. (For N16, \(I_{\text{thx}}=10\)nA)


[Inspect 4. Extracting Standard Parameters]

Constant Current Threshold Voltage gm-Maximum Method
Extraction of constant current threshold voltage Extraction of threshold voltage

IC-CAP 2011.01 - Target Modeling [https://edadownload.software.keysight.com/eedl/iccap/2011_01/pdf/target.pdf]

image-20251122133018845

Short Lg Stackgate

TSMC. VLSI2025 JFS2-1: Analog Cells DTCO (Design and Technology Co-Optimization) and Their Impact on Advanced Node CMOS Analog/MixedSignal Circuits

image-20250719221634273

smaller W*L*M, X*Y for same mismatch with short Lg stackgate


image-20250719221918689

N7/N5 4-fin Grid Rule

Same Fin1/Fin3 or Fin2/Fin4 Fin Position


image-20250719222047276

image-20250719222146669

note W/L is different \(12/(135*2) \lt 6/(8*8)\)

Current Density (EM)

image-20250712144939547

image-20250712145414052

Interconnect Resistance Evolution

image-20250703232709089

White Paper: Microelectronics/Semiconductor Research Community Virtual Workshop 2022 [https://nnci.net/sites/default/files/inline-files/Microelectronics%202022%20Workshop%20Report%20with%20Slides.pdf]

Copper Pillar Bump vs Solder bump

Cu-pillar bumping is a next-generation flip chip interconnection between chip & packages, especially for fine pitch applications

img

img

  • On the wafer end, comparing to solder bump, cu-pillar bump provides the advantage of fine pitch; the die size can be reduced about 5~10%.

  • On the package end, the substrate layer can be reduced from 6 layers to 4 layers by fine pitch and bump on trace process and using simplified substrate process.

image-20250613233806417

IP_TIGHTEN_DENSITY

image-20260227210700062

image-20260227211604233

image-20260227210516009

VDR (VD Rail)

TSMC Ltd. US12199034B2 Via rail structure [https://patents.google.com/patent/US12199034B2]

  • contact to source MD for resistance reduction (to VDD or VSS)
  • fully enclosed by M0
  • electrically insulated from MG

image-20260413211254941

Even VDR is overlap with MG (PO), they are not electrically connected

MIM capacitor structure

HD MIM: 2-layer MIM between Mtop and Mtop-1

image-20260418181600781

flexable-high-density MiM capacitor (FHD-MIM): 2-layer MIM between ALRDL and Mtop

super-high-density MiM capacitor (SHD-MIM) : 3-layer MIM, between ALRDL and Mtop

img

SHP-MiM(super-high-performance metal-insulator-metal): N2 low-resistance redistribution layer (RDL) and super high-performance metal-insulator-metal (MiM) capacitors to further boost performance



MIMCAP dummy

add MIMCAP dummy in chip level due to RV (Mtop to AP) impact

MOM capacitor structure

Qualcomm Inc, US10615113B2, Rotated metal-oxide-metal (RTMOM) capacitor [pdf]

Finger Metal-Oxide-Metal capacitor (FMOM)

image-20260418183131048



Rotated Metal-Oxide-Metal capacirot (RTMOM)

Capacitors are not only formed between metal fingers in the same metal layer but also between different layers of metal

image-20260418184144462

[https://www.scribd.com/document/673418815/crtmom-rf-device-route-guidance-for-RF-application]

image-20260418194413941

image-20260418195114593



Yaghoobi, Majid & Yavari, Mohammad & Ghafoorifard, Hassan. (2019). A 17-to-24 GHz Low-Power Variable-Gain Low-Noise Amplifier in 65-nm CMOS for Phased-Array Receivers. Circuits, Systems, and Signal Processing. [https://sci-hub.jp/10.1007/s00034-019-01169-z]

five MOM capacitors of interdigitated parallel wires (IPW), woven, parallel stacked wires (PSW), multi-layer sandwich (MLS), and vertical bars (VB)

image-20260418091056932



wo_mx

Monte Carlo model:

  • \(C_{pa}=C_{pa1}\), \(C_{pb}=C_{pb1}\) for each iteration during Process Variation
  • different variation is applied to \(C_{ab}\) and \(C_{a1b1}\) each iteration during Mismatch Variation, though \(C_{pa}\), \(C_{pb}\), \(C_{pa1}\) and \(C_{pb1}\) remain constant

image-20230220230434891

image-20230220230331505

Symmetric Layouts Are Showing Mismatches in SPICE Simulations

[https://www.ansys.com/blog/symmetric-layouts-showing-mismatches-spice-simulations]

figure-2

The root cause of the delay mismatch is related to how parasitic extraction tools distribute coupling capacitances over the nodes of the resistive networks

The most likely reason for such asymmetry is the anisotropy of computational geometry algorithms used by extraction tools.

figure-4

High-k Metal Gate (HKMG)

A.L.S. Loke, September 4, 2017: Analog/Mixed-Signal Design in FinFET Technologies [https://indico.cern.ch/event/662048/attachments/1518454/2371032/2017_09_CERN_Loke1.pdf]

[Google AI Mode]

image-20260410003516551

Atomic Layer Deposition (ALD) is critical for fabricating advanced FinFETs by enabling conformal, ultra-thin Metal Gate (MG) stacks


polysilicon depletion effect (PDE)

STRAP

A "strap" refers to a low-impedance connection

image-20230518001007350

NWDMY = NWDMY1, NWDMY2

STRAP = NWSTRAP or PWSTRAP

NWSTRAP = {NP & OD} & {NW not {NW INTERACT NWDMY}}

PWSTRAP = {PP & OD} not NW

cell  pin PLUS MINUS
N diode PWSTRAP \
P diode \ NWSTRAP

Calibre Rule::NOT

image-20230518005758993

Calibre Rule::INTERACT

image-20230518010124496

image-20230518010758342

Antenna Effect

The antenna effect is a common name for the effects of charge accumulation in isolated nodes of an integrated circuit during its processing

This effect is also sometimes called "Plasma Induced Damage", "Process Induced Damage" (PID) or "charging effect"

This accumulation of charge is usually, and misleadingly, called the antenna effect.

antenna ratio

During manufacture, if part of the metal wiring is connected to the gate, but not a diffusion contact, this "floating" metal collects charge from the plasma.

Manufacturing rules for the antenna effect are usually expressed as the ratio of the area of floating metal (i.e. charge collection area) to the area of the gate.

image-20250714203610809

To prevent the antenna effect from destroying your circuit you need to reduce the floating metal/gate area ratio or give the charge a safe way to dissipate to the ground before it can build up and cause damage

metal jumping (bridging, metal hopping)

Long metal can be taken to higher metal routing layer, which is known as metal jumping.

This metal jumping is usually done near the gate, which will mean that there is a full connection to the diffusion contact before the area of floating metal becomes too large

The jumper is constructed so that the long track is only connected to the gate once it has also been connected to a diffusion contact, which then allows the charge to dissipate through diffusion to the substrate

Diode Insertion

Diode helps dissipate charges accumulated on metal. Diode should be placed as near as possible to the gate of device on low level of metal.

image-20250714204033328

main-qimg-c3fe57dfac5fd5e5b5616ddf4f89f08a-pjlq

In the reverse bias region, the reverse saturation current of Si and Ge diodes doubles for every \(10 ^oC\) rise in temperature

image-20250719083520735


pulsic.com, Analog layout – Stop the antenna effect from destroying your circuit [link]

Prof. Adam Teman, Digital VLSI Design. Lecture-10-The-Manufacturing-Process [pdf]

Zongjian Chen, Processing and Reliability Issues That Impact Design Practice. [https://web.stanford.edu/class/archive/ee/ee371/ee371.1066/lectures/Old/lect_15_2up.pdf]

Shallow Trench Isolation (STI)

image-20241121211242335

image-20241121211348053

Voltage-Dependent DRC

In T* DRC deck, it is based on the voltage recognition CAD layer and net connection to calculate the voltage difference between two neighboring nets by the following formula:

\[ \Delta V = \max(V_H(\text{net1})-V_L(\text{net2}), V_H(\text{net2})-V_L(\text{net1})) \]

where \[ V_H(\text{netx}) = \max(V(\text{netx})) \] and \[ V_L(\text{netx}) = \min(V(\text{netx})) \]

  • The \(\Delta V\) will be 0 if two nets are connected as same potential
  • If \(V_L \gt V_H\) on a net, DRC will report warning on this net

Voltage recognition CAD Layer

Automate those voltage-dependent DRC checks! - siemens

Two method

  1. voltage text layer

    You place specific voltage text on specific drawing layer

  2. voltage marker layer

    Each voltage marker layer represent different voltage for specific drawing layer

voltage text layer has higher priority than voltage marker layer and is recommended

voltage text layer

For example M3

Process Layer CAD Layer# Voltage High Voltage High Top
(highest priority)
Voltage Low Voltage Low Top
(highest priority)
M3 63 110 112 111 113

where 63 is layer number, 110 ~ 113 is datatype

voltage marker layer

Different data type represent different voltage, like

DataType 100 101 102 ... 109
Voltage 0.0 0.1 0.2 0.3 0.9

Example

image-20220503171006936

drain & source sharing

Planar process vs. FinFet process

local_Interconnect.drawio

Standard Cell Tapcell

tapcell.drawio

Guard Ring in Custom block

Place well tie and substrate tie where they are needed. Redundant guard ring consume area and increase the routing of critical signal net.

guardring_stypes.drawio

Continuous OD

Performance & Matching

image-20220219223723289

current mirror

split diffusion with dummy transistors

mirror_continuous_OD_split_with_dummy.drawio

cascode structure

off transistor split diffusion

cascode_continuous_OD_split_with_dummy.drawio

sharing source & drain

sharing_SD.drawio

Stacked MOSFETs

Layout Dependent Effects (LDE)

Vladimír Stejskal, Jiří Slezák March, 2016. LOD Effect: Modeling and Implementation [https://www.mos-ak.org/dresden_2016/presentations/T5_Stejskal_MOS-AK_Dresden_2016.pdf]

John Faricelli – April 16, 2009. Layout-Dependent Proximity Effects in Deep Nanoscale CMOS [https://ewh.ieee.org/r5/denver/sscs/Presentations/2009_04_Faricelli.pdf]

吉富貞幸. 2021年7月29日. 高周波RFCMOS回路を実現する半導体素子のコンパクトモデリング技術 [https://kobaweb.ei.st.gunma-u.ac.jp/lecture/20210729_analog_KIOXIA_Yoshitomi.pdf]

Kanamoto, Toshiki, Yasuhiro Ogasahara, Keiko Natsume, Kenji Yamaguchi, Hiroyuki Amishiro, Tetsuya Watanabe and Masanori Hashimoto. “Impact of well edge proximity effect on timing.” ESSDERC 2007 - 37th European Solid State Device Research Conference (2007)

J. V. Faricelli, "Layout-dependent proximity effects in deep nanoscale CMOS," IEEE Custom Integrated Circuits Conference 2010, San Jose, CA, USA, 2010 [https://sci-hub.se/10.1109/CICC.2010.5617407]

Aleksandr Sidun, Layout-dependent effects (LOD, WPE, Latch-up, Electromigration, Antenna) [https://analoghub.ie/category/Layout/article/layoutDependentEffects]

image-20251009231152210

description.PNG

MOS example.PNG

Length of Diffusion (LOD)

Shallow Trench Isolation Stress

  • PODE LOD
  • CPODE LOD

LOD key points:

  • LOD is the result of the STI formation (Shallow trench isolation);
  • STI becomes compressive as the wafer cools down;
  • The width of STI (active to active spacing) has a strong impact on determining stress;
  • LOD improves holes mobility and decreases electron mobility.

image-20251010201258948

Stress has been more effective for PMOS

  • This has caused beta (N/P) ratio to fall to about unity at 7nm

image-20251009233811877

image-20251009234239279

LOD effect can be prevented by distancing devices away from the WELL edge (guard ring). This is usually done by placing dummy devices around the circuit devices, in which case your circuit devices will also benefit from the equal edge effects (each device will have the same neighbours).

image-20251009235236169


image-20251213104328303

Well Proximity Effect (WPE)

Since the well implant dopant (acceptor or donor) is the same type as the channel implant dopant, the additional doping increases the absolute value of the threshold voltage (VT) of both NMOS and PMOS devices

image-20251009234116191

img


Alvin L.S. Loke. 2004. Introduction to Deep Submicron CMOS Device Technology & Its Impact on Circuit Design [https://ewh.ieee.org/r5/denver/sscs/Presentations/2004_12_Loke.pdf]

image-20251213103458642

Cut-Poly Effect (CPO)

image-20251010202621882

Poly Pitch Effect (PPE)

A. Rossoni, T. Brozek and Z. M. Kovacs-Vajna, "Impact of the Gate and Fin Space Variation on Stress Modulation and FinFET Transistor Performance," in IEEE Transactions on Electron Devices, vol. 73, no. 3, pp. 1120-1128, March 2026, doi: 10.1109/TED.2025.3648978

image-20260418082247148

image-20260418082341803

image-20260418082455270

The overall effect on mobility is dominated by the longitudinal component, as poly spacing variation

Metal Boundary Effect (MBE)

M. Hamaguchi et al., "New layout dependency in high-k/Metal Gate MOSFETs," 2011 International Electron Devices Meeting, Washington, DC, USA, 2011 [https://sci-hub.st/10.1109/IEDM.2011.6131614]

Alvin Loke. 2016 VLSI Circuits Short Courses – 2.2 Migrating Analog/Mixed-Signal Designs to FinFET Alvin Loke / Qualcomm [pdf]

Z. -Y. Li, X. -J. Wang and Y. -L. Jiang, "Metal Boundary Effect Mitigation by HKMG Thermal Process Optimization in FinFET Integration Technology," in IEEE Transactions on Electron Devices, vol. 71, no. 4, pp. 2335-2341, April 2024

Scotten Jones, IEDM 2017 – Controlling Threshold Voltage with Work Function Metals [https://semiwiki.com/semiconductor-services/techinsights/7259-iedm-2017-controlling-threshold-voltage-with-work-function-metals/]

The Vt of a MOSFET is determined by:

  • Interface charges
  • Gate dielectric (oxide) thickness
  • Channel doping
    • The first is that doping the channel reduces mobility and performance.
    • Secondly, at very small dimensions there are only a few dopant atoms in the channels and small changes in the number of dopants referred to as random dopant fluctuations (RDF) can lead to variations in Vt
  • Work function
    • improves mobility in the channel and therefore performance and avoids RDF

image-20251010201413941

image-20251010201527553

Gate = (ALD MG stack to set \(\Phi_M\))+(metal fill to reduce RG)

image-20251010202132434


image-20260418072845550

image-20260418073008658

SCE (Short-Channel Effect)

image-20251213103805786

NCE & RNCE

image-20251213104022586

image-20251213104103450

Layout-dependent aging behaviors

Xiaoqing Xu, Arm Inc, ICCAD 2017 Tutorial: Standard Cell Design and Optimization Methodology for ASAP7 PDK [https://developer.arm.com/cfs-file/__key/communityserver-blogs-components-weblogfiles/00-00-00-37-98/0160.iccad2017_5F00_asap7_5F00_library.pdf]

image-20260409232220531

Matching

Aleksandr Sidun. Matching patterns in layout [https://analoghub.ie/category/Layout/article/layoutMatchingPatterns]

—. Matching in layout [https://analoghub.ie/category/Layout/article/layoutMatching]

藍色天空. 匹配那些事儿… [https://www.kaixinspace.com/matching/]

image-20251011205334957

Interdigitation

Interdigitation provides good matching properties against 1D-gradients and is suitable for the simple circuits

The main concept is that you should create an imaginary center line and place your devices symmetrically, relative to this line. The simplest example of that is so called "ABBA" pattern

image-20251011205815529

image-20251011205608993


Interdigitation reduces the device mismatch as it suffers equally from process variations in X dimension. This technique was used to layout current mirrors and resistors in PTAT and BGR circuits.

HTML5 Icon

Common Centroid

Common Centroid provides better matching for 2D gradients, which is critical for the large arrays and advanced (below 28nm) nodes

The main idea behind common centroid is that we make our array symmetrical of the common centre. In other words, the array should be symmetrical in both X- and Y- axes

image-20251011210113327


The common centroid technique describes that if there are n blocks which are to be matched then the blocks are arranged symmetrically around the common centre at equal distances from the centre. This technique offers best matching for devices as it helps in avoiding cross-chip gradients

HTML5 Icon

Design with FinFETs

image-20221210165644336

image-20221210165916985

Mark Williams. Stacked MOSFETs in Analog Layout [https://community.cadence.com/cadence_blogs_8/b/cic/posts/stacked-mosfets-in-analog-layout]

Modeling Consideration

image-20221217152830191

image-20221210170042233

mos_pro \[\begin{align} R_{d1} &\propto \frac{1}{N_{fins}} \\ R_{s1} &\propto \frac{1}{N_{fins}} \\ R_{g1} &\propto N_{fins} \\ C_{gd} &\propto N_{fins} \cdot N_{fingers} \cdot N_{multipler} \\ C_{gs} &= Cgd \\ C_{g1d} &\propto N_{fins} \\ C_{g1s} &= C_{g1d} \\ C_{g1d1} &\propto N_{fins} \\ C_{g1s1} &= C_{g1d1} \\ C_{g1d1} &\simeq 2\times C_{g1d} \end{align}\]

image-20230708221056420

PODE & CPODE

The PODE devices is extracted as parasitic devices in post-layout netlist

image-20220213172653116

DDB is the PODE (Poly on OD/Diffusion Edge) in TSMC 16FFC process.

SDB is the CPODE (Common Poly on Diffusion Edge) in TSMC 16FFC process.

PO on OD edge (PODE) is a must and to define GATE that abuts OD vertical edge

CPODE is used to connect two PODE cells together. It will isolate OD to save 1 poly pitch, via STI; Additional mask (12N) is required for manufacture

PODE CPODE
Pro's simple density
Con's density LDE (LOD/OSE)
edge device 3T PODE(with single side OD): NO ERC
4T M-PODE (with S/D): ERC (gate tied to power/ground)
won't form device;
NO ERC;
OD under CPODE is cut off

image-20221210145232826


A. Rossoni, T. Brozek, S. Saxena, R. Khamankar, L. Colalongo and Z. M. Kovacs-Vajna, "Stress-Related Local Layout Effects in FinFET Technology and Device Design Sensitivity," in IEEE Transactions on Electron Devices, vol. 72, no. 5, pp. 2109-2117, May 2025, doi: 10.1109/TED.2025.3561974

image-20260418074845244

image-20221210150847737

image-20240509205506112


Leading Edge Logic Comparison March 9, 2018 [https://semiwiki.com/wp-content/uploads/2018/03/Leading-Edge-Logic.pdf]

What is CPODE, and why do we use it in VLSI layout? [https://semiconwiki.com/what-is-cpode-and-why-do-we-use-it-in-vlsi-layout/]


3T PODE device

image-20250708001318109

US9053283B2: Methods for layout verification for polysilicon cell edge structures in finFET standard cells using filters [https://patentimages.storage.googleapis.com/36/2c/ff/ad3d4c232ecc8d/US9053283.pdf]

US8943455B2: Methods for layout verification for polysilicon cell edge structures in FinFET standard cells [https://patentimages.storage.googleapis.com/19/12/64/f2badfdc09a4a4/US8943455.pdf]

CNOD

continuous oxide diffusion (CNOD) design

img

In CNOD, the diffusion is not broken at all. The fabrication process continues normally, but when standard cells need to be separated, the gate between them is designated as a dummy gate. This dummy gate is then connected to a Gate Tie-Down Via to the power rail

This dummy gate tie-down method of CNOD achieves the same horizontal width savings as SDB, and has the advantage of keeping the transistor diffusion unbroken and thus can achieve more uniform strain and performance characteristics

The TRUTH of TSMC 5nm [https://www.angstronomics.com/p/the-truth-of-tsmc-5nm]

S. Badel et al., "Chip Variability Mitigation through Continuous Diffusion Enabled by EUV and Self-Aligned Gate Contact," 2018 14th IEEE International Conference on Solid-State and Integrated Circuit Technology (ICSICT), Qingdao, China, 2018 [https://sci-hub.st/10.1109/ICSICT.2018.8565694]


image-20250707210444362


4T MPODE (with source/drain) may be formed in CNOD design layout

potential leakage: channel leakage (S to D); junction leakage (S/D to bulk)

image-20250708001207301


CNOD (MPODE) is same with primitive MOS model; PODE is the primitive MOS, just S/D shorted together

image-20250725215821959

Contacted-Poly-Pitch (CPP)

Gate pitch (GP), a.k.a. CPP (Contacted Poly Pitch)

Wider Contacted-Poly-Pitch allows wider MD and VD size, which help reduce MEOL IRdrop

Schematic representation of a logic standard cell layout (CPP = contacted poly pitch, FP = fin pitch, MP = metal pitch; cell height = number of metal lines per cell x MP).

Naoto Horiguchi. Entering the Nanosheet Transistor Era [link]


Scotten Jones, Can TSMC Maintain Their Process Technology Lead [https://semiwiki.com/semiconductor-manufacturers/intel/285192-can-tsmc-maintain-their-process-technology-lead/]

image-20260409230447038

SAC & SAGC

self-aligned diffusion contacts (SACs)

As shown in Fig. 35 in older planar technology nodes, gate pitch is so relaxed such that S/D contacts and gate contacts can easily be placed next to each other without causing any shorting risk (see Fig. 35(a)).

As the gate pitch scales, there’s no room to put gate contacts next to S/D contacts, and gatecontacts have been pushed away from the active region and are only placed on the STI region.

image-20230708221916716

In addition, at tight gate pitch, even forming S/D contact without shorting to gate metal becomes very challenging.

The idea of self-aligned contacts (SAC) has been introduced to mitigate the issue of S/D contact to gate shorts.

As shown in Fig. 35(b), the gate metal is fully encapsulated by a dielectric spacer and gate cap, which protects the gate from shorting to the S/D contact.

image-20230708230238362

A dielectric cap is added on top of the gate so that if the contact overlaps the gate, no short occurs.

MD layer represent SACs in PDK

image-20230709005334372

self-aligned gate contacts (SAGCs)

Self-aligned gate contacts (SAGCs) have also been implemented and Denser standard cells can be achieved by eliminating the need to land contacts on the gate outside the active area.

SAGCs require the source/drain contacts to be capped with an insulator that is different from both contact and gate cap dielectrics to protect the source/drain contacts against a misaligned gate contact etch.

image-20230708233009568

image-20230708232429240

According to the DRC of T foundary, poly extension > 0 um and space between MP and OD > 0 um., which demonstrate self-aligned gate contact is not introduced.

Gate Resistance

image-20230709000326683

image-20230709004432013

image-20230709000637817

image-20230709003917922

MD structure

Joddy Wang December 9, 2015, FinFET SPICE Modeling [https://www.mos-ak.org/washington_dc_2015/presentations/T03_Joddy_Wang_MOS-AK_Washington_DC_2015.pdf]

image-20260516074126388

image-20260516083623243

Layer Description Type
MD interconnection layer between OD and VC CAD layer
VG Via Contact hole between MG and M0 tape-out layer
VD Via Contact hole between MD and M0 tape-out layer

note: VC={VG OR VD}

image-20260519192138903

Native NMOS Blocked Implant (NT_N)

Principles of VLSI Design CMOS Processing CMPE 413 [https://redirect.cs.umbc.edu/~cpatel2/links/315/lectures/chap3_lect09_processing2.pdf]

CMOS processing [http://users.ece.utexas.edu/~athomsen/cmos_processing.pdf]

The Fabrication Process of CMOS Transistor [https://www.elprocus.com/the-fabrication-process-of-cmos-transistor/#:~:text=latch%2Dup%20susceptibility.-,N%2D%20well%2F%20P%2D%20well%20Technology,well%20it%20is%20vice%2D%20verse.]

CMOS Processing Technology [link1, link2]

A native layer (NT_N) is usually added under inductors or transformers in the nanoscale CMOS to define the non-doped high-resistance region of substrate, which decreases eddy currents in the substrate thus maintaining high Q of the coils.

For T* PDK offered inductor, a native substrate region is created under the inductor coil to minimize eddy currents

image-20230810000702597

OD inside NT_N only can be used for NT_N potential pickup purpose, such as the guarding-ring of MOM and inductor

Derived Geometries

Term Definition
PW {NOT NW}
N+OD {NP AND OD}
P+OD {PP AND OD}
GATE {PO AND OD}
TrGATE {GATE NOT PODE_GATE}

NP: N+ Source/Drain Ion Implantation

PP: P+ Source/Drain Ion Implantation

OD: Gate Oxide and Diffustion

NW: N-WELL

PW: P-WELL

CMOS Processing Technology

Four main CMOS technologies:

  • n-well process
  • p-well process
  • twin-tub process
  • silicon on insulator

Triple well, Deep N-Well (optional):

  • NWell: NMOS svt, lvt, ulvt ...
  • PWell: PMOS svt, lvt, ulvt ...
  • DNW: For isolating P-Well from the substrate

The NT_N drawn layer adds no process cost and no extra mask

The N-well / P-well technology, where n-type diffusion is done over a p-type substrate or p-type diffusion is done over n-type substrate respectively.

The Twin well technology, where NMOS and PMOS transistor are developed over the wafer by simultaneous diffusion over an epitaxial growth base, rather than a substrate.

Deep N-well

Chew, K.W., Zhang, J., Shao, K., Loh, W., & Chu, S.F. (2002). Impact of Deep N-well Implantation on Substrate Noise Coupling and RF Transistor Performance for Systems-on-a-Chip Integration. 32nd European Solid-State Device Research Conference, 251-254. URL:[slides, paper]

Mark Waller, Analog layout: Why wells, taps, and guard rings are crucial

KEITH SABINE Using Deep N Wells in Analog Design

Faricelli, J. (2010). Layout-dependent proximity effects in deep nanoscale CMOS. IEEE Custom Integrated Circuits Conference 2010, 1-8.

cmos_processing, URL:http://users.ece.utexas.edu/~athomsen/cmos_processing.pdf

Kuo-Tsai LiPaul ChangAndy Chang, TSMC, US20120053923A1, "Methods of designing integrated circuits and systems thereof"

Substrate noise

A variety of techniques can be used to minimize this noise, for example by keeping analog devices surrounded by guard rings, or using a separate supply for the substrate/well taps.

However guard rings alone cannot prevent noise coupling deep in the substrate, only surface currents.

PMOS are less noisy than NMOS since PMOS has its nwell which isolates the substrate noise, but such is not valid for NMOS .

DNW

The N-channel devices built directly into the P-type substrate are not as effectively isolated as P-channel devices in their N-wells. This is because despite creating a P+ guard ring around the devices, there remains an electrical path below the guard ring for charge to flow.

To overcome this issue, a deep N-well can be used to more effectively isolate these N-channel devices.

image-20230529001556060

image-20230529010836003

BM_SS_Together at Last_Fig1

pwdnw: PW/DNW diode

dnwpsub: DNW/PSUB diode

Together At Last – Combining Netlist and Layout Data for Power-Aware Verification

image-20240708221831791

image-20240708222327376

image-20230529002733114

  • the P-well is separated, allowing the voltage to be controlled
  • because the circuit within the deep N-well is separated from the p-substrate in this structure, there is the benefit that this circuitry is less susceptible to noise that propagates through the p-substrate.

Decap

img


img

Kevin Zheng. The Unsung Heroes – Dummies, Decaps, and More [https://circuit-artists.com/the-unsung-heroes-dummies-decaps-and-more/]

The Difference Between MOM, MIM, and MOS Capacitors [https://www.ansys.com/blog/difference-between-mom-mim-mos-capacitor]

MIM/MOM capacitor extraction boosts analog and RF designs [https://www.eeworldonline.com/mim-mom-capacitor-extraction-boosts-analog-and-rf-designs/]

Metal Resistors In Wire Management

img

img

Kevin Zheng. Metal Resistors – Your Unexpected Friend In Wire Management [https://circuit-artists.com/metal-resistors-your-unexpected-friend-in-wire-management/]

Track Height of Standard Cell

Cheng, Chung-Kuan, Byeonggon Kang, Bill Lin and Yucheng Wang. “Invited: Scaling Standard Cell Layout Using Track Height Compression and Design Technology Co-optimization.” Proceedings of the 2025 International Symposium on Physical Design (2025) [https://ispd.cc/ispd2026/slides/2025/protected/2_2_slides.pdf]

image-20260409231552187


後藤 弘茂 (Hiroshige Goto)2017年2月8日 06:00, TSMCがISSCCで5nmプロセスまでのプロセス技術を展望 [https://pc.watch.impress.co.jp/docs/column/kaigai/1043026.html]

img

Inductor shorting check

LVS can help checking unintended shorting upper/lower curls by via, covering inductor routing with metal res

Its length/resistance backannotated to schematic wrt. LVS value

image-20260206184240621

Electrical Rule Check (ERC)

Daniel Payne. Soft checks are needed during Electrical Rule Checking of IC layouts [https://semiwiki.com/eda/342526-soft-checks-are-needed-during-electrical-rule-checking-of-ic-layouts/]

藍色天空. 一文搞懂版图ERC类型 [https://www.kaixinspace.com/layout-erc-type/]

ERC Usage PDKD/TSMC 2008 [https://www.scribd.com/document/751641438/ERC-Usage]

image-20260307103848378


floating well

image-20260307104101837

For pnp BJT, N type Base in Nwell, the "floating.nxwell" can be waived

image-20260307104728040


SOFTCHK & PSUB2

image-20260309210754404

image-20260309211006145

image-20260309211158577

Calibre LVS ERC

Y.Liu, PDK Training Calibre user guide [https://picture.iczhiku.com/resource/eetop/SyKTloquGiZeHMbx.pdf]

Adam Teman, Digital-on-top Physical Verification LVS and DRC using Innovus and Calibre [https://www.eng.biu.ac.il/temanad/files/2020/09/Full-Chip-DRC-LVS-slides.pdf]

image-20260311210654083

image-20260311210534002

image-20260311210942569

image-20260311215442746

reference

Mikael Sahrling, Layout Techniques for Integrated Circuit Designers 1st Edition , Artech House 2022

LAYOUT, EE6350 VLSI Design Lab SMART TEMPERATURE SENSOR URL: https://www.ee.columbia.edu/~kinget/EE6350_S16/06_TEMPSENS_Sukanya_Vani/layout.html

Stacked MOSFETs in analog layout https://pulsic.com/stacked-mosfets-in-analog-layout/

JED Hurwitz, ISSCC2011 "T4: Layout: The other half of Nanometer CMOS Analog Design" [slides, transcript]

Tom Quan, TSMC, Bob Lefferts, Fred Sendig, Synopsys, Custom Design with FinFETs - Best practices designing mixed-signal IP

Jacob, Ajey & Xie, Ruilong & Sung, Min & Liebmann, Lars & Lee, Rinus & Taylor, Bill. (2017). Scaling Challenges for Advanced CMOS Devices. International Journal of High Speed Electronics and Systems. 26. 1740001. 10.1142/S0129156417400018.

Joddy Wang, Synopsys "FinFET SPICE Modeling" Modeling of Systems and Parameter Extraction Working Group 8th International MOS-AK Workshop (co-located with the IEDM Conference and CMC Meeting) Washington DC, December 9 2015

A. L. S. Loke et al., "Analog/mixed-signal design challenges in 7-nm CMOS and beyond," 2018 IEEE Custom Integrated Circuits Conference (CICC), San Diego, CA, USA, 2018, pp. 1-8, doi: 10.1109/CICC.2018.8357060.[slides]

Prof. Adam Teman, Advanced Process Technologies, [pdf]

Luke Collins. FinFET variability issues challenge advantages of new process [link]

Loke, Alvin. (2020). FinFET technology considerations for circuit design (invited short course). BCICTS 2020 Monterey, CA

Alvin Leng Sun Loke, TSMC. Device and Physical Design Considerations for Circuits in FinFET Technology", ISSCC 2020

A. L. S. Loke, C. K. Lee and B. M. Leary, "Nanoscale CMOS Implications on Analog/Mixed-Signal Design," 2019 IEEE Custom Integrated Circuits Conference (CICC), Austin, TX, USA, 2019, pp. 1-57, doi: 10.1109/CICC.2019.8780267.

A. L. S. Loke, Migrating Analog/Mixed-Signal Designs to FinFET Alvin Loke / Qualcomm. 2016 Symposia on VLSI Technology and Circuits

Lattice Semiconductor, 16FFC Process Technology Introduction December 9th, 2021[pdf]

Cliff Hou, ISSCC 2017: P1: A Smart Design Paradigm for Smart Chips [https://youtu.be/tBSrgwUQg9E]

Noman Hai, How to Think About FinFET Layout (Conceptual Walkthrough) [https://youtu.be/aI5xJQl1gU8]

Calibration

[https://ww1.microchip.com/downloads/en/Appnotes/Atmel-8108-Calibration-of-the-AVRs-Internal-Temperature-Reference_ApplicationNote_AVR122.pdf]

TODO 📅

\(V_{BE}\) curvature

curvature results in results in non-linearity

Though it is assumed that \(V_{BE}\) is a linear function of temperature for first oder analysis.

In practice, \(V_{BE}\) is slightly nonlinear, the magnitude of this nonlinearity is referred to as curvature.

curvature depends on the temperature dependency of the saturation current (\(I_s\)), and on that of the collector current (\(I_c\)), it can be written as \[ V_{curv}(T)=\frac{k}{q}(\eta-\delta)(T-T_r-T\cdot \ln(\frac{T}{T_r})) \] where \(\eta\) = a constant depending on the doping level, CMOS substrate pnp transistors have a typically value of \(\eta \approx 4\)

\(\delta\) = order of the temperature dependence of collector current (\(I_c\))

PTAT \(I_c\) help reduce \(V_{curv}(T)\), \(\delta=1\)

Although the temperature dependence of the bias current \(I_b\) doesn’t impact the accuracy of \(V_{BE}\), it does impact the systematic nonlinearity or curvature of \(V_{BE}\), and hence the sensor's systematic error. The curvature in \(V_{BE}\) can be reduced by using a PTAT bias current.

image-20221106010909644


image-20260502002207248

image-20260502002331231

image-20260502005045075

1
2
3
4
5
6
7
8
eta=4; m=1; Tr=300; k_over_q = 1.380649e-23 / 1.620217663e-19;

T=1:1:600;
cT = (eta - m)*k_over_q *(T - Tr-T.*log(T/Tr))*1e3; % mV
plot(-40:125, cT(-40+273:125+273)); grid on;
xlim([-40,125])
xlabel('temperature ^oC'); ylabel('$c(T)$ mV', 'Interpreter', 'latex');
title('$c(T) = (\eta - m) \frac{k}{q} \left( T - T_r - T \cdot \ln \frac{T}{T_r} \right) < 0$', 'Interpreter', 'latex');

PTAT bias current

image-20221023150817411 \[ I_{bias} = \frac{0.7}{\beta \cdot R^2} \] in which \(\beta=\frac{\mu_{n}\cdot C_{ox}\cdot W}{L}\), where:

\(\mu_n\)=mobility,

\(C_{ox}\) = oxide capacitance density,

\(\frac{W}{L}\) = dimension ratio of unit NMOS used for \(M_1\) and \(M_2\)

\(\mu_n\) is complementary to the absolute temperature and resitor R is implemented using high-R flow in FinFET which has a low temperature dependency, the net temperature dependency of \(I_{bias}\) is proportional to the absolute temperature \[ I_{bias}\propto T \]

Kamath, Umanath Ramachandra. "BJT Based Precision Voltage Reference in FinFET Technology." (2021).

Errors due to V-I Finite Gain

Finite gain introduces errors both in the V-I converters, finite loop gain results in errors in the closed-loop transconductances.

image-20221106153613505 \[\begin{align} (V_{i1} - V_{o1})\cdot A_{OL1} &= V_{o1} \\ V_{o1} &= \frac{A_{OL1}}{1+A_{OL1}}V_{i1} \\ I_{o1} &= \frac{A_{OL1}}{1+A_{OL1}}\frac{1}{R_1}V_{i1} \end{align}\] similarly, \[ I_{o2} = \frac{A_{OL2}}{1+A_{OL2}}\frac{1}{R_2}V_{i2} \]

Then, \(\alpha\) is obtained \[ \alpha = \frac{(1+A_{OL2})A_{OL1}}{A_{OL2}(1+A_{OL1})}\cdot\frac{R_2}{R_1} \] Since the loop gains in the two V-I converters cannot be expected to match, the resulting errors in both converters should be reduced to negligible levels.

First, assume \(A_{OL2}=\infty\) \[ \Delta \alpha = (1-\frac{A_{OL1}}{1+A_{OL1}})\cdot\frac{R_2}{R_1} =\frac{1}{1+A_{OL1}}\cdot\frac{R_2}{R_1} \approx \frac{1}{A_{OL1}}\cdot\frac{R_2}{R_1} \]

We get \[ \frac{\Delta \alpha}{\alpha}=\frac{1}{A_{OL1}} \] Follow the same procedure, assume \(A_{OL1}=\infty\) \[ \frac{\Delta \alpha}{\alpha}=\frac{1}{A_{OL2}} \] The finite gain introduces an error inversely proportional to the loop gain \(A_{OL1}\),\(A_{OL2}\), the resulting errors in both converters should be reduced to negligible levels

Why named as "bandgap reference"

Let us write the output voltage as \[ V_{REF} = V_{BE} + V_T\cdot \ln n \] and hence \[ \frac{\partial V_{REF}}{\partial T} = \frac{\partial V_{BE}}{\partial T} + \frac{V_T}{T}\ln n \] Setting this to zero and substituting for \(\frac{\partial V_{BE}}{\partial T}\), we have \[ \frac{V_{BE}-(4+m)V_T-E_g/q}{T}=-\frac{V_T}{T}\ln n \] If \(V_T\ln n\) is found from this equation and inserted in \(V_{REF}\), we obtain \[ V_{REF}=\frac{E_g}{q} + (4+m)V_T \]

The term bandgap is used here because as \(T\to 0\), \(V_{REF} \to E_g/q\)

sinking PTAT-current generator without current mirrors

image-20240824110909314

why without current mirror?

image-20240824110641427

image-20240824110958282

Bakker, Anton. (2000). High-Accuracy CMOS Smart Temperature Sensors. 10.1007/978-1-4757-3190-3. [https://repository.tudelft.nl/record/uuid:fd398056-48dd-4d84-8ae8-27a1b011d2c3]

Readout Circuit

ADC dynamic range

image-20260501232732794

Take \(V_{PTAT}=\alpha \cdot \Delta V_{BE}\) as input and \(V_{REF}\) as reference. The output \(\mu\) of the ADC will then be \[ \mu =\frac{V_{PTAT}}{V_{VREF}}=\frac{\alpha \cdot \Delta V_{BE}}{V_{BE}+\alpha \cdot \Delta V_{BE}} \] A final digital output \(D_{out}\) in degrees Celsius can be obtained by linear scaling: \[ D_{out}=A\cdot \mu + B \] where \(A\approx 600K\) and \(B\approx -273K\)

While the transfer is simple, it only uses about 30% of the of the ADC (the extremes of the operating range correspond to \(\mu \approx 1/3\) and \(\mu \approx 2/3\)). The ratio results in a rather inefficient use of the modulator's dynamic range.

For a first-order \(\Sigma\Delta\) modulator, this means that about 1.5 bits of resolution are lost

A more efficient transfer is \[ \mu '=\frac{2\alpha \cdot \Delta V_{BE}-V_{BE}}{V_{BE}+\alpha \cdot \Delta V_{BE}} \] With this more efficient combination, 90% of the dynamic range is used rather than 30%. Thus, the required resolution of the ADC is reduced by a factor of three.

image-20230204220522392

Integrator Output Swing

\[ \mu =\frac{\alpha \cdot \Delta V_{BE}}{V_{BE}+\alpha \cdot \Delta V_{BE}} \]

image-20230207002324363

\[ \mu '=\frac{2\alpha \cdot \Delta V_{BE}-V_{BE}}{V_{BE}+\alpha \cdot \Delta V_{BE}} \]

image-20230206230202755

In advanced process, like Finfet 16nm, 7nm, high resistance resistor has +/-15% variation and MOM capacitor has +/-30% variation.

Then, \(R_1\) and \(R_2\) not only determine the \(\alpha\) but also the integrator's output swing, so do \(V_{BE}\) and \(\Delta V_{BE}\), \(C_{int}\).

The integrator's output change per period

image-20230206231010121


image-20230430112230224

integrator, comparator offset

integrator offset

image-20230430114429118

image-20230430114520336

comparator offset

image-20230501223512686

integrator design

application in sensor

image-20221106142157115

Offset Errors

The offset of opamp \(A_3\) is much less critical:

  1. It affects the integrated currents via the finite output impedances \(R_{out1,2}\) of the V-I converters, and is therefore attenuated by a factor \(R_{out1}/R_1\) when referred back to the input of the sinking V-I converter,

  2. or by a factor \(R_{out2}/R_2\) when referred back to the input of the sourcing V-I converter.

Therefore, no special offset cancellation is needed for opamp \(A_3\).

The current change due to offset of \(A_3\): \[\begin{align} \frac{V_{BE,os}}{R_1} &= \frac{V_{ota,os}}{R_{out1}} \\ \frac{\Delta V_{BE,os}}{R_2} &= \frac{V_{ota,os}}{R_{out2}} \end{align}\] Then, the input referenced offset is: \[\begin{align} V_{BE,os} &=\frac{ V_{ota,os}}{R_{out1}/R_1} \\ \Delta V_{BE,os} &= \frac{ V_{ota,os}}{R_{out2}/R_2} \end{align}\]

Errors due to Finite Gain

Finite gain of opamp \(A_3\) results in a non-zero overdrive voltage at its input, which modulates the current Iint due to the finite output impedances of the V-I converters.

Assuming the opamp is implemented as a transconductance amplifier, there are two main causes of this non-zero overdrive voltage

  1. The finite transconductance \(g_{m3}\) of the opamp, , which implies that an overdrive voltage is required to provide the feedback current

​ The change in the integrated current

\[ \Delta I_{int} = \frac{V_{i,ota}}{R_{out}}= \frac{I_{int}}{g_{m3}}\cdot \frac{1}{R_{out}} \]

  1. The finite DC gain \(A_{0,3}\), which implies that an overdrive voltage is required to produce the output voltage \(V_{int}\)

reference

Micheal, A., P., Pertijs., Johan, H., Huijsing., Pertijs., Johan, H., Huijsing. (2006). Precision Temperature Sensors in CMOS Technology.

C. -H. Chang, J. -J. Horng, A. Kundu, C. -C. Chang and Y. -C. Peng, "An ultra-compact, untrimmed CMOS bandgap reference with 3σ inaccuracy of +0.64% in 16nm FinFET," 2014 IEEE Asian Solid-State Circuits Conference (A-SSCC), 2014, pp. 165-168, doi: 10.1109/ASSCC.2014.7008886.

EE247 - Analog Digital Interface Integrated Circuits - Fall 2009 Lecture 24- Oversampled ADCs

Hecht, Bruce. (2010). SSCS DL Kofi Makinwa Talks About Smart Sensor Design at SSCS-Boston [People]. Solid-State Circuits Magazine, IEEE. 2. 54 - 56. 10.1109/MSSC.2009.935278.

Randy Geiger. 2011 Temperature Sensor Design for Power/Thermal Management in Emerging Semiconductor Processes [https://ewh.ieee.org/r5/denver/sscs/Presentations/2011_07_Geiger.pdf]

Yan Lu; Chi-Seng Lam, "Selected Topics in Power, RF, and Mixed-Signal ICs," in Selected Topics in Power, RF, and Mixed-Signal ICs , River Publishers, 2017

image-20250729004456566


MOS VT vs. Temperature

[https://ewh.ieee.org/r5/denver/sscs/Presentations/2004_12_Loke.pdf]

image-20251213112935217

Subthreshold Conduction

By square-law, the Eq \(g_m = \sqrt{2\mu C_{ox}\frac{W}{L}I_D}\), it is possible to obtain a higer transconductance by increasing \(W\) while maintaining \(I_D\) constant. However, if \(W\) increases while \(I_D\) remains constant, then \(V_{GS} \to V_{TH}\) and device enters the subthreshold region. \[ I_D = I_0\exp \frac{V_{GS}}{\xi V_T} \]

where \(I_0\) is proportional to \(W/L\), \(\xi \gt 1\) is a nonideality factor, and \(V_T = kT/q\)

As a result, the transconductance in subthreshold region is \[ g_m = \frac{I_D}{\xi V_T} \]

which is \(g_m \propto I_D\)

image-20240627230726326

image-20240627230744044

PTAT with subthreshold MOS

MOS working in the weak inversion region ("subthreshold conduction") have the similar characteristics to BJTs and diodes, since the effect of diffusion current becomes more significant than that of drift current

image-20240803193343915

image-20240803195500321

image-20240803200129592

Hongprasit, Saweth, Worawat Sa-ngiamvibool and Apinan Aurasopon. "Design of Bandgap Core and Startup Circuits for All CMOS Bandgap Voltage Reference." Przegląd Elektrotechniczny (2012): 277-280.

Curvature Compensation

VBE

image-20250728233542026

In advanced node, N4P, \(V_{BE}\) is about -1.45mV/K

Assuming \(I_C\) is constant

image-20250728233112550

image-20250728233350355

image-20250728233839563

Assuming \(I_C\) is PTAT, \(I_C = (V_T \ln n) / R_3\)

image-20250728233317599

image-20250729002704253

The first-order linear temperature dependence term of \(V_{BE}\) can be eliminated with IPTAT. \(V_T(\eta - \theta)\ln)T/T_r\) is the high-order nonlinear temperature-dependent term of \(V_{BE}\), which requires high-order curvature compensation

G. Zhu, Y. Yang and Q. Zhang, "A 4.6-ppm/°C High-Order Curvature Compensated Bandgap Reference for BMIC," in IEEE Transactions on Circuits and Systems II: Express Briefs, vol. 66, no. 9, pp. 1492-1496, Sept. 2019 [https://sci-hub.se/10.1109/TCSII.2018.2889808]

X. Fu, D. M. Colombo, Y. Yin and K. El-Sankary, "Low Noise, High PSRR, High-Order Piecewise Curvature Compensated CMOS Bandgap Reference," in IEEE Access, vol. 10, pp. 110970-110982, 2022 [https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=9923910]


image-20240903234720200


image-20250728225624247

Tutorials | 08012023 | 1.2.1 Bandgap Voltage Regular [https://youtu.be/dz067SOX0XQ&t=6362]

temperature coefficient

The parameter that shows the dependence of the reference voltage on temperature variation is called the temperature coefficient and is defined as: \[ TC_F=\frac{1}{V_{\text{REF}}}\left[ \frac{V_{\text{max}}-V_{\text{min}}}{T_{\text{max}}-T_{\text{min}}} \right]\times10^6\;ppm/^oC \]

Choice of n

image-20221117002714125

classic bandgap reference

bg.drawio

\[ V_{bg} = \frac{\Delta V_{be}}{R_1} (R_1+R_2) + V_{be2} = \frac{\Delta V_{be}}{R_1} R_2 + V_{be1} \]

\[ V_{bg} = \left(\frac{\Delta V_{be}}{R_1} + \frac{V_{be1}}{R_2}\right)R_3 = \left(\frac{\Delta V_{be}}{R_1} R_2 + V_{be1}\right)\frac{R_3}{R_2} \]

OTA offset effect

bg_ota_vos.drawio

\[\begin{align} V_{be1} &= \frac{kT}{q}\ln(\frac{I_{e1}}{I_{ss}}) \\ V_{be2} &= \frac{kT}{q}\ln(\frac{I_{e2}}{nI_{ss}}) \end{align}\]

Here, we assume \(I_e = I_c\)

Hence,

\[\begin{align} \Delta V_{be} &= \frac{kT}{q}\ln(n\frac{I_{e1}}{I_{e2}}) \\ &= \frac{kT}{q}\ln(n) + \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}}) \\ &= \Delta V_{be,0} + \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}}) \end{align}\]

Therefore,

\[\begin{align} V_{bg} &= \frac{\Delta V_{be}+V_{os}}{R_2}(R_1+R_2) + V_{be2} \\ &= \alpha \Delta V_{be,0} + \alpha \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}}) + \alpha V_{os} + \frac{kT}{q}\ln(\frac{I_{e2}}{nI_{ss}}) \\ &= \alpha \Delta V_{be,0} + \alpha \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}}) + \alpha V_{os} + \frac{kT}{q}\ln(\frac{I_{e2,0}}{nI_{ss}})+\frac{kT}{q}\ln(\frac{I_{e2}}{I_{e2,0}}) \end{align}\]

where \(\alpha = \frac{R_1+R_2}{R_2}\)

We omit the last part \[\begin{align} V_{bg} &\approx \alpha \Delta V_{be,0} + \alpha \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}}) + \alpha V_{os} + \frac{kT}{q}\ln(\frac{I_{e2,0}}{nI_{ss}}) \\ &= \alpha \Delta V_{be,0} + V_{be2,0} + \alpha \left(V_{os} + \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}})\right) \\ &= V_{bg,0} + \alpha \left(V_{os} + \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}})\right) \end{align}\]

i.e. the bg variation due to OTA offset \[ \Delta V_{bg} \approx \alpha \left(V_{os} + \frac{kT}{q}\ln(\frac{I_{e1}}{I_{e2}})\right) \]

  • \(V_{os} \gt 0\)

    \(I_{e1} \gt I_{e2}\): \(\Delta V_{bg} \gt \alpha V_{os}\)

  • \(V_{os} \lt 0\)

    \(I_{e1} \lt I_{e2}\): \(\Delta V_{bg} \lt \alpha V_{os}\)

OTA with chopper

bg_chop.drawio

bg_chop_shift.drawio

\(I_{e1}\), \(I_{e2}\)

\[\begin{align} V_{ip} &= V_{im} + V_{os} \\ \frac{V_{bg}-V_{ip}}{R_2} &= I_{e2} \qquad \frac{V_{bg}-V_{im}}{R_2} = I_{e1} \\ V_{ip} &= I_{e2}R_1 + V_T\frac{I_{e2}}{nI_S} \qquad V_{im} = V_T\frac{I_{e1}}{I_S} \end{align}\] where \(V_T = \frac{kT}{q}\)

we obtain \[ I_{e1} = \frac{V_T\ln n}{R_1} + V_{os}\left(\frac{1}{R_1} + \frac{1}{R_2} \right) - \frac{1}{R_1}\cdot V_T\ln\left(1- \frac{V_{os}}{R_2I_{e1}} \right) \]

we omit the last part \[\begin{align} I_{e1} &= I_{e0} + V_{os}\left(\frac{1}{R_1} + \frac{1}{R_2} \right) \\ I_{e2} &= I_{e1} - \frac{V_{os}}{R_2} = I_{e0} + \frac{V_{os}}{R_1} \end{align}\] where \(I_{e0} = \frac{\Delta V_{be}}{R_1}\), \(\Delta V_{be}=V_T\ln n\)

That is, both \(I_{e1}\) and \(I_{e2}\) are proportional to \(V_{os}\)

\[ I_{e,tot} = I_{e1} + I_{e2} = 2I_{e0} + V_{os}\left(\frac{2}{R_1} + \frac{1}{R_2} \right) = 2I_{e0} + V_{os}\frac{R_1+2R_2}{R_1R_2} = I_0 + \frac{V_{os}}{R_E} \]

where \(I_0 = 2I_{e0}\), \(R_E = \frac{R_1R_2}{R_1+2R_2}\)

\(I_{e1}\) and \(I_{e2}\) can also be expressed as \[\begin{align} I_{e1} &= I_{e0} + V_{os}\left(\frac{1}{R_1} + \frac{1}{2R_2} \right) + \frac{V_{os}}{2R_2} \\ I_{e2} &= I_{e0} + V_{os}\left(\frac{1}{R_1} + \frac{1}{2R_2} \right) - \frac{V_{os}}{2R_2} \end{align}\] i.e., \(\Delta I_{e,cm} = V_{os}\left(\frac{1}{R_1} + \frac{1}{2R_2} \right)\) and \(\Delta I_{e,dif} =\frac{V_{os}}{2R_2}\)

bandgap output voltage is

\[\begin{align} V_{bg} &= V_T \ln \frac{I_{e1}}{I_s} + I_{e1}R_2 \\ &= V_T \ln \frac{I_{e0} + V_{os}\left(\frac{1}{R_1} + \frac{1}{R_2} \right)}{I_s} + I_{e1}R_2 \\ &= V_T \ln \frac{I_{e0} + V_{os}\left(\frac{1}{R_1} + \frac{1}{R_2} \right)}{I_s} + I_{e0}R_2 + V_{os}\frac{R_1+R_2}{R_1} \\ &= I_{e0}R_2 + V_T \ln \frac{I_{e0}}{I_s} + V_T\ln\left(1+\frac{V_{os}\left(\frac{1}{R_1} + \frac{1}{R_2} \right)}{I_{e0}} \right) + V_{os}\frac{R_1+R_2}{R_1} \\ &= V_{bg0} + V_T\ln\left(1+\frac{V_{os}\left(\frac{1}{R_1} + \frac{1}{R_2} \right)}{I_{e0}} \right) + V_{os}\frac{R_1+R_2}{R_1} \end{align}\]

Therefore, the averaged output of bandgap

\[ V_{bg,avg} = V_{bg0} +\frac{1}{2}V_T\ln\left(1-\frac{V_{os}^2\left(\frac{1}{R_1} + \frac{1}{R_2} \right)^2}{I_{e0}^2} \right) \lt V_{bg0} \]

\(V_{bg,avg} \lt V_{bg0}\) due to nonlinearity of BJT

reference

ECEN 607 (ESS) Bandgap Reference: Basics URL:https://people.engr.tamu.edu/s-sanchez/607%20Lect%204%20Bandgap-2009.pdf

CICC 2023 Session 12: Forum: Recent Progress in LDOs and Voltage, Current, and Timing References

  • Jae-Yoon Sim, POSTECH. 12-2: Design of Ultra-low-power Bandgap Reference Circuits
  • Inhee Lee, University of Pittsburgh. 12-3: Sub-μW Non-Bandgap Voltage References

image-20250917184927874


MOS capacitances

  • oxide capacitance (aka gate-channel capacitance) between the gate and the channel \(C_1=WLC_{ox}\)
    • divided between \(C_{GS}\) and \(C_{GD}\)
  • depletion capacitance between the channel and the substrate \(C_2\)
  • overlap capacitance: direct overlap and fringing field
  • junction capacitance between the source/drain areas and the substrate
    • The value of \(C_{SB}\) and \(C_{DB}\) is a function of the source and drain voltages with respect to the substrate

image-20240727134110758

image-20240727134150216

The gate-bulk capacitance is usually neglected in the triode and saturation regions because the inversion layer acts as a "shield" between the gate and the bulk.


classification with Intrinsic and Extrinsic MOS capacitor

[Circuit Insights - 11-CI: Fundamentals 4 Tsinghua Nan Sun]

image-20250917185006503

image-20250917185041255

image-20250917185106474

image-20250917185146601

image-20250621113254648

image-20250621122921814

image-20250917185223939

FinFET Parasitic Fringing Capacitance

image-20241120201725441

image-20241120201739690

Temperature Dependence of Junction Diode CV

image-20240901234200243

where TCJ and TCJSW are positive

https://cmosedu.com/cmos1/BSIM4_manual.pdf

image-20240901235359149

image-20240901235425992

image-20240901235543033

Integrated varactors

D=S=B varactor

image-20220924003223575

image-20250622205317309

Inversion-mode (I-MOS)

image-20220924003314979


image-20250622211213169

Accumulation-mode (A-MOS)

image-20250622211513994

image-20250622212138953

NMOS in NWELL, aka NMOS in N-Well varactor

Notice: S/D and NWELL are connected togethor in layout

image-20230504221234639

image-20230504221313785

image-20220924004206116

I-MOS vs . A-MOS

P. Andreani and S. Mattisson, "On the use of MOS varactors in RF VCOs," in IEEE Journal of Solid-State Circuits, vol. 35, no. 6, pp. 905-910, June 2000 [https://sci-hub.se/10.1109/4.845194]

image-20250917193743547

varactor losses

channel resistance & gate resistance

image-20251010204657625

PDK varactor

nmoscap: NMOS in N-Well varactor

image-20240703224101060

  • Base Band MOSCAP model (nmoscap) is built without effective series resistance (ESR) and effective series inductance (ESL) calibrations, which is for capacitance simulation only
  • LC-Tank MOSCAP model (moscap_rf) is for frequency-dependent Q factor and capacitance simulations

MOS Device as Capacitor

image-20240115225644183

image-20240115225928617

image-20240115225853721


Voltage dependence

image-20240115230113523

image-20231103213004806

  • capacitance of MOS gate varies nonmonotonically with \(V_{GS}\)

  • "accumulation-mode" varactor varies monotonically with \(V_{GS}\)

reference

Aditya Varma Muppala. MOS Varactors | Oscillators 15 | MMIC 27 [https://youtu.be/LYCLZPQvIz0]

Adam Teman. Practice 7: CMOS Capacitance [note,problem]

R. L. Bunch and S. Raman, "Large-signal analysis of MOS varactors in CMOS -G/sub m/ LC VCOs," in IEEE Journal of Solid-State Circuits, vol. 38, no. 8, pp. 1325-1332, Aug. 2003 [https://sci-hub.jp/10.1109/JSSC.2003.814416]

T. Soorapanth, C. P. Yue, D. K. Shaeffer, T. I. Lee and S. S. Wong, "Analysis and optimization of accumulation-mode varactor for RF ICs," 1998 Symposium on VLSI Circuits. Digest of Technical Papers (Cat. No.98CH36215), 1998, pp. 32-33, doi: 10.1109/VLSIC.1998.687993. URL: http://www-smirc.stanford.edu/papers/VLSI98s-chet.pdf

R. Jacob Baker, 6.1 MOSFET Capacitance Overview/Review, CMOS Circuit Design, Layout, and Simulation, Fourth Edition

B. Razavi, Design of Analog CMOS Integrated Circuits 2nd

Bing Sheu, TSMC. "Circuit Design using FinFETs" [https://www.nishanchettri.com/isscc-slides/2013%20ISSCC/TUTORIALS/ISSCC2013Visuals-T4.pdf]

image-20241109171759694

Linear Time-varying System Theory

We define the ISF of the sampler as the sensitivity of its final output voltage to the impulse arriving at its input at different times, the ISF essentially describes the aperture of the sampler.

An ideal sampler would have the perfect aperture, i.e. sampling the input voltage at exactly one point in time; thus, its ISF would be a Dirac delta function, \(\delta(t-t_s)\) where \(t_s\) is when sampling occurs.

A realistic sampler would rather capture a weighted-average of the input voltage over a certain time window. This weighting function is called the sampling aperture and is equivalent to the ISF

image-20220610235211500

A time-varying impulse response \(h(t, \tau)\) is defined as the circuit response at time \(t\) responding to an impulse arriving at time \(\tau\).

In general, the ISF can be regarded as the time-varying impulse response evaluated at one particular observation time \(t=t_0\).

The system output \(y(t)\) is related to the input \(x(t)\) as: \[ y(t) = \int_{-\infty}^{\infty}h(t, \tau)\cdot x(\tau)d\tau \] Note that in a linear time-invariant (LTI) system, \(h(t,\tau)=h(t-\tau)\) and the above equation reduces to a convolution.

If \(X(j\omega)\) is the Fourier transform of the input signal \(x(t)\), i.e. \[ x(t) = \frac{1}{2\pi}\int_{-\infty}^{\infty}X(j\omega)\cdot e^{j\omega t}d\omega \] Then \[\begin{align} y(t) &= \int_{-\infty}^{\infty}h(t,\tau)\left[\frac{1}{2\pi}\int_{-\infty}^{\infty}X(j\omega)\cdot e^{j\omega\tau }d\omega \right]\cdot d\tau \\ &=\frac{1}{2\pi}\int_{-\infty}^{\infty}X(j\omega)\left[\int_{-\infty}^{\infty}h(t,\tau)\cdot e^{j\omega\tau}d\tau\right]\cdot d\omega \\ &=\frac{1}{2\pi}\int_{-\infty}^{\infty}X(j\omega)\left[\int_{-\infty}^{\infty}h(t,\tau)\cdot e^{-j\omega(t-\tau)}d\tau\right]\cdot e^{j\omega t}\cdot d\omega \\ &=\frac{1}{2\pi}\int_{-\infty}^{\infty}X(j\omega)\cdot H(j\omega;t)\cdot e^{j\omega t}\cdot d\omega \end{align}\]

where \(H(j\omega;t)\) is time-varying transfer function, defined as the Fourier transform of the time-varying impulse response. \[ H(j\omega;t)=\int_{-\infty}^{\infty}h(t,\tau)\cdot e^{-j\omega(t-\tau)}d\tau \] And it follows that: \[ Y(j\omega)=H(j\omega;t)\cdot X(j\omega) \] And

\[\begin{align} x(\tau) & \overset{FT}{\longrightarrow} X(j\omega) \\ h(t,\tau) & \overset{FT}{\longrightarrow} H(j\omega;t) \end{align}\]

For linear, periodically time-varying (LPTV) systems, \(h(t, \tau) = h(t+T, \tau+T)\) and \(H(j\omega; t) = H(j\omega; t+T)\) where \(T\) is the period of the time-varying dynamics of the system.

We prove \(H(j\omega; t) = H(j\omega; t+T)\):

\[\begin{align} \because H(j\omega;t)&=\int_{-\infty}^{\infty}h(t,\tau)\cdot e^{-j\omega(t-\tau)}d\tau \\ \therefore H(j\omega;t+T) &= \int_{-\infty}^{\infty}h(t+T,\tau)\cdot e^{-j\omega(t+T-\tau)}d\tau \\ &= \int_{-\infty}^{\infty}h(t+T,\tau+T)\cdot e^{-j\omega(t+T-(\tau+T))}d(\tau+T) \\ &= \int_{-\infty}^{\infty}h(t+T,\tau+T)\cdot e^{-j\omega(t-\tau)}d\tau \\ &= \int_{-\infty}^{\infty}h(t,\tau)\cdot e^{-j\omega(t-\tau)}d\tau \\ &= H(j\omega;t) \end{align}\]

PSS + PAC Method

Since \(H(j\omega;t)\) is periodic in \(T\), The time-varying transfer function \(H(j\omega;t)\) can be expressed in a Fourier series: \[ \color{red}H(j\omega;t)=\sum_{m=-\infty}^{\infty}H_m(j\omega) \cdot e^{jm\omega_c t} \] where \(\omega_c\) is the fundamental frequency of the periodic system. \(H_m(j\omega)\) represent the frequency response of the system at the \(m\)-th harmonic output sideband to a unit \(j\omega\) sinusoid.

The above equation link time-varying transfer function \(H(j\omega;t)\) with PAC simulation output

The response to a periodic impulse train, that is: \[ x(t)=\sum_{n=-\infty}^{\infty}\delta(t-\tau-nkT) \] The idea is that if the impulse response of the system settles to zero long before the next impulse arrives, then the system response to this impulse train would be approximately equal to the periodic repetition of the true impulse response, i.e. \[ y(t) \cong \sum_{n=-\infty}^{\infty}h(t;\tau+nkT) \] and \(y(t)\) would be approximately equal to \(h(t;\tau)\) for \(\tau \leq t \le \tau+kT\)

yt.drawio

Without loss of generality and for computation convenience, we set \(k=1\) thereafter.

The Fourier transform \(X(j\omega)\) of the T-periodic impulse train is: \[ X(j\omega)=\omega_c\sum_{n=-\infty}^{\infty}\delta(\omega-n\omega_c)\cdot e^{-j\omega\tau} \] Then the response \(y(t)\) is: \[ y(t)=\frac{1}{T}\sum_{n=-\infty}^{\infty}H(jn\omega_c;t)\cdot e^{jn\omega_c\cdot(t-\tau)} \] The expression for the approximate time-varying impulse response: \[ h(t,\tau) \cong y(t)= \left\{ \begin{array}{cl} \frac{1}{T}\sum_{n=-\infty}^{\infty}\sum_{m=-\infty}^{\infty}H_m(jn\omega_c)\cdot e^{jm\omega_ct+jn\omega_c\cdot (t-\tau)} & : \ \tau \leq t \lt \tau+T \\ 0 & : \ \text{elsewhere} \end{array} \right. \] Finally, the ISF \(\Gamma(\tau)\) is equal to \(h(t,\tau)\) when \(t=t_0\) if \(t_0 \gt \tau\) \[ \Gamma(\tau)\cong \frac{1}{T}\sum_{n=-\infty}^{\infty}\sum_{m=-\infty}^{\infty}H_m(jn\omega_c)\cdot e^{jm\omega_ct_0+jn\omega_c\cdot (t_0-\tau)} \] In practice, the summations are carried out over finite ranges of n and m, for example, -50~50

For each combination of n and m, the PAC analysis needs to be performed to compute \(H_m(jn\omega_c)\)\(m\)-th harmonic response to the excitation at \(n\omega_c\)

The detailed procedure for characterizing the ISF of this sampler is outlined as follows:

  • First, apply the proper input voltages that place the sampler in a metastable state and perform PSS

  • Second, perform PAC

  • Third, based on the simulated PAC response, pick a time point \(t_0\) at which the ISF is to be computed and derive the ISF

image-20260209212202355

One possible candidate for the ISF measurement point \(\color{red}t_0\) is the time at which the output voltage is amplified to the largest value. Figure 4(a) plots PAC response of the sampler to a small signal DC input — the time-varying transfer function evaluated at \(\color{red}\omega=0\) \[ H(0;t)=\sum_{m=-\infty}^{\infty}H_m(0) \cdot e^{jm\omega_c t} \] image-20220614214446328


The total area under the ISF is the sampling gain, which is equal to the time-varying gain measured at \(t_0\) to a small signal DC input (\(\omega=0\))

Because we have \(H(j\omega;t)=\int_{-\infty}^{\infty}h(t,\tau)\cdot e^{-j\omega(t-\tau)}d\tau\), i.e. Fourier transform \[ H(0;t)=\int_{-\infty}^{\infty}h(t,\tau)d\tau = \int_{-\infty}^{\infty}\Gamma(\tau)d\tau \]

1
2
time-varying gain at t0 H(0;t0): 19.486305
The total area under the ISF: 19.990230

Align pss_td.pss with ISF

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
****************************************************
Periodic Steady-State Analysis `pss': fund = 500 MHz
****************************************************
Trying `homotopy = gmin' for initial conditions.
DC simulation time: CPU = 4.237 ms, elapsed = 4.27389 ms.

===============================
`pss': time = (0 s -> 102.6 ns)
===============================

Opening the PSF file ../psf/pss.tran.pss ...
...
Important parameter values in tstab integration:
start = 0 s
outputstart = 0 s
stop = 102.6 ns
period = 2 ns
maxperiods = 20
step = 102.6 ps
...

tstab = 102.6 ns can be observed in pss simulation log

image-20220614214537033

1
2
3
4
5
tstab = 102.6e-9;
tshift = mod(tstab, Tc);
tt_shift = tt - tshift;
tt_shift_start_indx = find(tt_shift>=0, 1);
isf_shift = circshift(isf_re, -tt_shift_start_indx);

Align pss_fd.pss with ISF

Since both are frequency originated, time-shift is NOT needed

image-20220614214613574

1
2
3
4
5
6
7
8
function wv = wv_fd(fname,tt)
fd = csvread(fname, 1, 0);
DC = fd(1, 2);
w = 2*pi*fd(2:end, 1);
coef = fd(2:end, 2) + 1i*fd(2:end, 3);
exp_sup = 1i*w.*tt;
wv = sum(real(coef .* exp(exp_sup)), 1) + DC;
end

PSS + PAC Setup

  • clock frequency should be low enough to assure system response settle to zero.
  • Beat Frequency os PSS should be clock frequency
  • For PAC setup,
    • the Sweeptype is absolute
    • Input Frequency Sweep Range(Hz) should be large enough.
    • Sweep Type should be Linear and Step Size should equal PSS Beat Frequency(Hz)
    • SideBands should large enough, like 50 (i.e. 50*2 +1, positive, negative and 0)
    • Specialized Analyses should be None

one example: clock, i.e. beat frequency = 8G PAC: input frequency sweep from -400G to 400G and step is 8G, which is beat frequency, here K=1 Eq.(9) of paper

image-20260210191944390

freqaxis=out: freqaxis of PAC not only affect "Direct Plot"'s output but also simuation data i.e. the phase shift(imaginary part)

matlab matrix nonconjugate transpose:

transpose or .' cf. [https://www.mathworks.com/help/matlab/ref/transpose.html]

tstab in PSS

Using shooting PSS, the steady waveform starts from tstab+n*tperiod.

  • pss_td.pss is one period waveform starting from tstab+n*tperiod
  • pss_fd.pss is the complex fourier series coefficient of expanded to left and right pss_td.pss waveform (tstab+n*tperiod : tstab+(n+1)*tperiod)

We have to left-shift mod(tstab, tperiod) pss_fd.pss in order to align it with of pss_tb.pss

image-20220610222535614

simulation log

The below stop = 1.3 ns is actual tstab time, though Stop Time(tstab) field of pss form is filled with 0.3n

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
**************************************************
Periodic Steady-State Analysis `pss': fund = 1 GHz
**************************************************
DC simulation time: CPU = 208 us, elapsed = 211.954 us.

=============================
`pss': time = (0 s -> 1.3 ns)
=============================

Opening the PSF file ../psf/pss.tran.pss ...

Output and IC/nodeset summary:
save 1 (current)
save 2 (voltage)

Important parameter values in tstab integration:
start = 0 s
outputstart = 0 s
stop = 1.3 ns
period = 1 ns
maxperiods = 20
step = 1.3 ps
maxstep = 40 ps
ic = all
useprevic = no
...

pss: time = 64.01 ps (4.92 %), step = 31.63 ps (2.43 %)
...
pss: time = 1.224 ns (94.2 %), step = 40 ps (3.08 %)
pss: time = 1.3 ns (100 %), step = 35.99 ps (2.77 %)
...

PSS simulation result

image-20220610224100135

Align pss_tb and pss_fd

image-20220610225310243

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
clear;
clc;

freq = 1e9;
tstab = 1.3e-9;
Tp = 1e-9;

load('pss_td.matlab')
t = pss_td(:, 1);
ytd = pss_td(:, 2);
plot(t*1e9, ytd, 'k', 'LineWidth',6)
hold on;

% time domian from pss frequency domain information
coff_real = -0.155222;
coff_imag = -0.0247045;
wc = 2*pi*freq;
tfd = (0:1e-11:2e-9);
yfd = coff_real*cos(wc*tfd) - coff_imag*sin(wc*tfd);
plot(tfd*1e9, yfd, 'b')

% actual pss_td.pss one-period waveform
tfd_td = (tstab:1e-11:2e-9);
yfd_td = coff_real*cos(wc*tfd_td) - coff_imag*sin(wc*tfd_td);
plot(tfd_td*1e9, yfd_td, '--b', 'LineWidth', 4)

% align pss_fd with pss_tb by left shift mod(tstab, Tp) pss_fd
tshift = mod(tstab, Tp);
tfd_shift = tfd - tshift;
tfd_shift_start_indx = find(tfd_shift>=0, 1);
tfd_shift = tfd_shift(1, tfd_shift_start_indx:end);
yfd_shift = yfd(1, tfd_shift_start_indx:end);
plot(tfd_shift*1e9, yfd_shift, '-magenta', 'LineWidth', 2)
grid on;

xlabel('t (ps)');
ylabel('V(t)');
legend('Using pss\_td', 'Using pss\_fd', 'pss\_tb one period clip', 'Using pss\_fd with time shift', 'location', 'east');

Transient Method

TODO 📅

reference

J. Kim, B. S. Leibowitz and M. Jeeradit, "Impulse sensitivity function analysis of periodic circuits," 2008 IEEE/ACM International Conference on Computer-Aided Design, 2008, pp. 386-391, doi: 10.1109/ICCAD.2008.4681602. [https://websrv.cecs.uci.edu/~papers/iccad08/PDFs/Papers/05C.2.pdf]

M. Jeeradit et al., "Characterizing sampling aperture of clocked comparators," 2008 IEEE Symposium on VLSI Circuits, Honolulu, HI, USA, 2008, pp. 68-69 [https://people.engr.tamu.edu/spalermo/ecen689/sampling_aperature_comparators_vlsi_2008.pdf]

T. Toifl et al., "A 22-gb/s PAM-4 receiver in 90-nm CMOS SOI technology," in IEEE Journal of Solid-State Circuits, vol. 41, no. 4, pp. 954-965, April 2006 [https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=4d1f0442be77425ed34b9dcfd48fbfff954a707b]

Sam Palermo, ECEN 720 High-Speed Links: Circuits and Systems [Lecture 6: RX Circuits], [Lab4 - Receiver Circuits]

0%