Curvature compensation

image-20240903234720200

Tutorials | 08012023 | 1.2.1 Bandgap Voltage Regular |, [https://youtu.be/dz067SOX0XQ?si=PlYczw9UdneAX6Na]

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.

VBE

  • temperature coefficient of \(V_{BE}\) itself depends on the temperature,

  • temperature coefficient of the \(V_{BE}\) at a given temperature T depends on the magnitude of \(V_{BE}\) itself

\(\frac{kT}{q}\)​ is approximately 26mV, at room temperature 300K

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

constant-gm

aka. Beta-multiplier reference

image-20240803155734754

\(I_\text{out}\) is PTAT in case temperature coefficient of \(R_s\) is less than that of \(\mu_n\)


image-20240803201548623

Body effect of M2

image-20240803201803449

image-20240803202015668

image-20240803201941683


image-20231213235846243

Boris Murmann, Systematic Design of Analog Circuits Using Pre-Computed Lookup Tables

S. Pavan, "Systematic Development of CMOS Fixed-Transconductance Bias Circuits," in IEEE Transactions on Circuits and Systems II: Express Briefs, vol. 69, no. 5, pp. 2394-2397, May 2022

S. Pavan, "A Fixed Transconductance Bias Circuit for CMOS Analog Integrated Circuits", IEEE International Symposium on Circuits and Systems, ISCAS 2004, Vancouver , May 2004

Why employ MOSFETs in saturation?

gm, gds at fixed VGS

image-20231125224714658


\(g_{ds}\) is constant in saturation region

in triode region \[ g_{ds} = \mu_nC_{ox}\frac{W}{L}(V_{GS}-V_{TH}-V_{DS}) \]

Interestingly, \(g_m\) in the saturation region is equal to the inverse of \(R_\text{on}\) in the deep triode region.

gds_vgs.drawio

image-20240727140918647

gm, gds at fixed Id, VG

In triode region \[ I_D = \frac{1}{2}\mu_nC_{ox}\frac{W}{L}[2(V_{GS}-V_{TH})V_{DS}-V_{DS}^2] \] where \(I_D\) and \(V_G\) is fixed

Then \(V_S\) can be expressed with \(V_D\), that is \[ V_S = V_{GT} - \sqrt{(V_{GT}-V_D)^2+V_{dsat}^2} \] where \(V_{GT}=V_G-V_{TH}\), \(V_{dsat}\) is \(V_{DS}\) saturation voltage \[ g_m = \mu_nC_{ox}\frac{W}{L}\left(V_D-V_{GT}+\sqrt{(V_{GT}-V_D)^2+V_{dsat}^2}\right) \] Then \[ \frac{\partial g_m}{\partial V_D} \propto 1 - \frac{V_{GT}-V_D}{\sqrt{(V_{GT}-V_D)^2+V_{dsat}^2}} \gt 0 \]

That is, \(g_m \propto V_D\)


\[\begin{align} g_{ds} &= \mu_nC_{ox}\frac{W}{L}(V_{GS}-V_{TH}-V_{DS}) \\ &= \mu_nC_{ox}\frac{W}{L}(V_{GT}-V_{D}) \end{align}\]

That is, \(g_{ds} \propto -V_D\)

image-20240727171005401

Both gain and speed degrade once entering triode region, though Id is constant

Cascode MOS

The low threshold voltage of cascode MOS don't help decrease the minimum output voltage

cascode_vth.drawio

Channel-length modulation

❗ There it not channel-length modulation in the triode region

image-20240727095651984

\[\begin{align} I_D &=\frac{1}{2}\mu_nC_{ox}\frac{W}{L}(V_{GS}-V_{TH})^2(1+\frac{\Delta L}{L}) \\ I_D &=\frac{1}{2}\mu_nC_{ox}\frac{W}{L}(V_{GS}-V_{TH})^2(1+\lambda V_{DS}) \\ I_D &=\frac{1}{2}\mu_nC_{ox}\frac{W}{L}(V_{GS}-V_{TH})^2(1+\frac{V_{DS}}{V_A}) \end{align}\]

where \(\frac{\Delta L}{L}=\lambda V_{DS}\) and \(V_A=\frac{1}{\lambda}\)

\(\lambda\) is channel length modulation parameter

\(V_A\), i.e. Early voltage is equal to inverse of channel length modulation parameter

The output resistance \(r_o\)

\[\begin{align} r_o &= \frac{\partial V_{DS}}{\partial I_D} \\ &= \frac{1}{\partial I_D/\partial V_{DS}} \\ &= \frac{1}{\lambda I_D} \\ &= \frac{V_A}{I_D} \end{align}\]

Due to \(\lambda \propto 1/L\), i.e. \(V_A \propto L\) \[ r_o \propto \frac{L}{I_D} \] image-20220930001909262

image-20220930002003924

image-20220930002157365

The output resistance is almost doubled using Stacked FET in saturation region

\(V_t\) and mobility \(\mu_{n,p}\) are sensitive to temperature

  • \(V_t\) decreases by 2-mV for every 1\(^oC\) rise in temperature
  • mobility \(\mu_{n,p}\) decreases with temperature

Overall, increase in temperature results in lower drain currents

current mirror mismatch

The current mismatch consists of two components.

  • The first depends on threshold voltage mismatch and increases as the overdrive \((V_{GS} − V_t)\) is reduced.
  • The second is geometry dependent and contributes a fractional current mismatch that is independent of bias point.

\[ \Delta I_D = g_m\cdot \Delta V_{TH}+I_D\cdot \frac{\Delta(W/L)}{W/L} \]

where mismatches in \(\mu_nC_{ox}\) are neglected

\[\begin{align} \Delta V_{TH} &= \frac{A_{VTH}}{\sqrt{WL}} \\ \frac{\Delta(W/L)}{W/L} &= \frac{A_{WL}}{\sqrt{WL}} \end{align}\]

summary:

Size \(g_m\) \(\Delta V_{TH}\) \(\frac{\Delta(W/L)}{W/L}\) mismatch (%) simu (%)
W, L 1 1 1 \(I_{\Delta_{V_{TH}}}+I_{\Delta_{WL}}\) 3.44
W, 2L \(1/\sqrt{2}\) \(1/\sqrt{2}\) \(1/\sqrt{2}\) \(I_{\Delta_{V_{TH}}}/2+I_{\Delta_{WL}}/\sqrt{2}\) 1.98
2W, L \(\sqrt{2}\) \(1/\sqrt{2}\) \(1/\sqrt{2}\) \(I_{\Delta_{V_{TH}}}+I_{\Delta_{WL}}/\sqrt{2}\) 2.93
We get \(I_{\Delta_{V_{TH}}}\simeq 1.71\%\) and \(I_{\Delta_{WL}} \simeq 1.73\%\)

image-20221003001056211

image-20221002215942456

Biasing current source and global variation Monte Carlo

image-20221020225334767

image-20221020225502503

iwl: biased by mirror

iwl_ideal: biased by vdc source, whose value is typical corner


For local variation, constant voltage bias (vb_const in schematic) help reduce variation from \(\sqrt{2}\Delta V_{th}\) to \(\Delta V_{th}\)

For global variation, all device have same variation, mirror help reduce variation by sharing same \(V_{gs}\)

  1. global variation + local variation (All MC)

image-20221020225615633

  1. local variation (Mismatch MC)

image-20221020225701218

  1. global variation (Process MC)

image-20221020232515420

We had better bias mos gate with mirror rather than the vdc source while simulating sub-block.

This is real situation due to current source are always biased by mirror and vdc biasing don't give the right result in global variation Monte Carlo simulation (542.8n is too pessimistic, 13.07p is right result)

Operating points & Small gain theorem

Dr. Degang Chen, EE 501: CMOS Analog Integrated Circuit Design [https://class.ece.iastate.edu/djchen/ee501/2020/References.ppt]

image-20231202102259692

For any given constant values of u and v, the constant values of variables that solve the the feed back relationship are called the operating points, or equilibrium points.

Operating points can be either stable or unstable.

An operating point is unstable if any or some small perturbation near it causes divergence away from that operating point.

If the loop gain evaluated at an operating point is less than one, that operating point is stable.

This is a sufficient condition

image-20231202105749888

image-20231202105621385

With \(m_{1\to 2} = 1\) \[ \text{Loop Gain} \simeq \frac{V_{BN}-V_{T2}}{V_{BN}-V_{T2} + V_R} \tag{LG\_0} \] Assuming all MOS in strong inv operation, \(I\), \(V_{BN}\) and \(V_R\) is obtain \[\begin{align} I &= \frac{2\beta _1 + 2\beta _2 - 4\sqrt{\beta _1 \beta _2}}{R^2\beta _1 \beta _2} \\ V_{BN} &= V_{T2} + \frac{2}{R\beta _2}(1- \sqrt{\frac{\beta _2}{\beta _1}}) \\ IR &= \frac{2}{R}\left( \frac{1}{\sqrt{\beta_2}} - \frac{1}{\sqrt{\beta_1}} \right) \end{align}\]

Substitute \(V_{BN}\) and \(V_R\) of \((LG\_0)\) \[\begin{align} \text{Loop Gain} & \simeq \frac{1-\sqrt{\frac{\beta_2}{\beta_1}}}{\frac{\beta_2}{\beta_1} - 3\sqrt{\frac{\beta_2}{\beta_1}}+2} \\ &= \frac{1}{2-\sqrt{\frac{\beta_2}{\beta_1}}} \tag{LG\_1} \end{align}\]

Alternative approach for Loop Gain

using derivation of large signal

image-20231202132310478

image-20231202134138319


❗❗❗ R should not be on the other side

image-20231202104505264

Self-Biasing Cascode

image-20231212153054247


cascode_selfbias.drawio


v2i.drawio

reference

B. Razavi, "The Design of a Low-Voltage Bandgap Reference [The Analog Mind]," in IEEE Solid-State Circuits Magazine, vol. 13, no. 3, pp. 6-16, Summer 2021, doi: 10.1109/MSSC.2021.3088963

Autozeroing

offset is sampled and then subtracted from the input

Measure the offset somehow and then subtract it from the input signal

Residual Noise of Auto-zeroing

image-20240826212343905


image-20240826213958740

pnosie Noise Type: timeaverage

image-20240826214306376

Chopping

offset is modulated away from the signal band and then filtered out

Modulate the offset away from DC and then filter it out

Good: Magically reduces offset, 1/f noise, drift

Bad: But creates switching spikes, chopper ripple and other artifacts …

Chopping in the Frequency Domain

Square-wave Modulation

definition of convolution \(y(t) = x(t)*h(t)= \int_{-\infty}^{\infty} x(\tau)h(t-\tau)d\tau\)

for real signal \(H(j\omega)^*=H(-j\omega)\)

image-20240903222441433

\[ H(j\hat{\omega})*H(j\hat{\omega}) = \int_{-\infty}^{\infty}H(j\omega)H(j(\hat{\omega}-\omega))d\omega \]

sq_mod.drawio

Bandwidth & Gain Accuracy

image-20240903225224732

  • lower effective gain: DC level at the output of the amplifiers is a bit less than what it should be

  • chopping artifacts at the even harmonics: frequency of output is \(2f_{ch}\)

REF. [https://raytroop.github.io/2023/01/01/insight/#rc-charge-and-discharge]

Residual Offset of Chopping

image-20240903222425730

assume input spikes can be expressed as \[ V_\text{spike}(t) = V_o e^{-\frac{t}{\tau}} \]

Then, residual offset is

\[\begin{align} \overline{V_\text{os}} &= \frac{2\int_0^{T_{ch}/2}V_\text{spike}(t)dt}{T_{ch}} \\ &= 2f_{ch}V_o\int_0^{T_{ch}/2} e^{-\frac{t}{\tau}}dt\\ &= 2f_{ch}V_o\tau\int_0^{T_{ch}/2\tau} e^{-\frac{t}{\tau}}d\frac{t}{\tau} \\ &\approx 2f_{ch}V_o\tau \end{align}\]

Dynamic Element Matching (DEM)

TODO 📅

reference

C. C. Enz and G. C. Temes, "Circuit techniques for reducing the effects of op-amp imperfections: autozeroing, correlated double sampling, and chopper stabilization," in Proceedings of the IEEE, vol. 84, no. 11, pp. 1584-1614, Nov. 1996, doi: 10.1109/5.542410. [http://www2.ing.unipi.it/~a008309/mat_stud/MIXED/archive/2019/Articles/Offset_canc_Enz_Temes_96.pdf]

Qinwen Fan, Evolution of precision amplifiers

Kofi Makinwa, ISSCC 2007 Dynamic-Offset Cancellation Techniques in CMOS [https://picture.iczhiku.com/resource/eetop/sYkywlkpwIQEKcxb.pdf]

Kofi Makinwa. Precision Analog Circuit Design: Coping with Variability, [https://youtu.be/nA_DZtRqrTQ?si=6uyOpJhdnYm3iG9d] [https://youtu.be/uwRpP20Lprc?si=SGPta86jRCdECSob]

TODO 📅

spurs are carrier or clock frequency spectral imperfections measured in the frequency domain just like phase noise. However, unlike phase noise they are discrete frequency components.

  • Spurs are deterministic.

  • Spur power is independent of bandwidth.

  • Spurs contribute bounded peak jitter in the time domain.

reference spurs

https://www.linkedin.com/posts/chembiyan-t-0b34b910_pll-rfdesign-circuits-activity-7111435571448713216-9jng?utm_source=share&utm_medium=member_desktop

charge pump mismatch

Matching of the CP currents is also a critical part of PLL design. Leakage and mismatch in the CP will lead to deterministic jitter on the PLL output

Any difference between the charging and discharging currents can cause static phase offset as well as dynamic jitter, known as reference spur

peak2peak deterministic jitter \[ \text{DJ}_\text{PP} = \frac{\phi_{PP}}{2\pi}T_{osc} \]

1
2
3
4
5
6
7
8
9
kvco = 1e9;
Icp = 600e-6;
deltaI_Icp = 3e-2;
deltaI = deltaI_Icp*Icp;
ton = 100e-12;
C2 =0.5e-12;
Tosc = 1/15e9;

DJpp = kvco*deltaI*ton^2/(2*C2)*(deltaI_Icp + 1)*Tosc

W. Rhee, "Design of high-performance CMOS charge pumps in phase-locked loops," 1999 IEEE International Symposium on Circuits and Systems (ISCAS), Orlando, FL, USA, 1999, pp. 545-548 vol.2 [https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=3006edc15fdef2e71674d4170c10c62fd69f96a3]

Rhee, W. and Yu, Z., 2024. Phase-Locked Loops: System Perspectives and Circuit Design Aspects. John Wiley & Sons.

H. M. S. Fazeel, L. Raghavan, C. Srinivasaraman and M. Jain, "Reduction of Current Mismatch in PLL Charge Pump," 2009 IEEE Computer Society Annual Symposium on VLSI, Tampa, FL, USA, 2009, pp. 7-12, doi: 10.1109/ISVLSI.2009.45.

H. -G. Ko, W. Bae, G. -S. Jeong and D. -K. Jeong, "Reference Spur Reduction Techniques for a Phase-Locked Loop," in IEEE Access, vol. 7, pp. 38035-38043, 2019 [https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8671476]

reference

Timing 101 #6: The Case of the Spurious Phase Noise, Silicon Labs, [Part I], [Part II], [Part III]

ADC requirement

TODO 📅

ENOB - Not sufficient & not accurate enough - Based on SNDR - Assume unbounded Gaussian distribution

quantization noise is ~ bounded uniform distribution

Using unbounded Gaussian -> pessimistic BER prediction

CML vs. SST based driver

image-20240825194548697

Design Challenges Of High-Speed Wireline Transmitters [https://semiengineering.com/design-challenges-of-high-speed-wireline-transmitters/]

Decimation

  • Decimation is commonly employed to alleviate the high-speed requirement. However, decimation increases loop-latency which causes excessive dither jitter.

  • Decimation is basically, widen the data and slowing it down

  • Decimating by \(L\) means frequency register only added once every \(L\) UI, thus integral path gain reduced by \(L\) in linear model

intg_path_decim.drawio

Decimation by Summing

In DSP this is called boxcar filter

\(\sum d_n\), where \(d_n \in \{-1, 0, 1\}\)

  • Decimation via boxcar filter produces a DC gain, \(K_b\), corresponding to the decimation factor.

image-20240813222409404

Loop gain of proportional path is unchanged

Decimation by Voting

equivalent \(\sum d_n \lt 0 \to -1\), \(\sum d_n = 0 \to 0\) and \(\sum d_n\gt 0 \to 1\)

Compared to the boxcar filter, voting is able to reduce the loop delay and lower the output noise of the MMPD

  • Decimation via voting has a reduced gain, \(K_V\), which can be determined through simulation

image-20240813223338067

P. K. Hanumolu, M. G. Kim, G. -y. Wei and U. -k. Moon, "A 1.6Gbps Digital Clock and Data Recovery Circuit," IEEE Custom Integrated Circuits Conference 2006, San Jose, CA, USA, 2006, pp. 603-606

J. L. Sonntag and J. Stonick, "A Digital Clock and Data Recovery Architecture for Multi-Gigabit/s Binary Links," in IEEE Journal of Solid-State Circuits, vol. 41, no. 8, pp. 1867-1875, Aug. 2006

John T. Stonick, ISSCC 2011 tutorial. "DPLL Based Clock and Data Recovery" [https://www.nishanchettri.com/isscc-slides/2011%20ISSCC/TUTORIALS/ISSCC2011Visuals-T5.pdf]

Pavan Hanumolu, ISSCC 2015 tutorial. "Clock and Data Recovery Architectures & Circuits"

Liu, Tao, Tiejun Li, Fangxu Lv, Bin Liang, Xuqiang Zheng, Heming Wang, Miaomiao Wu, Dechao Lu, and Feng Zhao. 2021. "Analysis and Modeling of Mueller-Muller Clock and Data Recovery Circuits" Electronics 10, no. 16: 1888. https://doi.org/10.3390/electronics10161888

Gu, Youzhi & Feng, Xinjie & Chi, Runze & Chen, Yongzhen & Wu, Jiangfeng. (2022). Analysis of Mueller-Muller Clock and Data Recovery Circuits with a Linearized Model. 10.21203/rs.3.rs-1817774/v1.

BER with Quantization Noise

image-20240804110522955

\[ \text{Var}(X) = E[X^2] - E[X]^2 \] image-20240804110235178

Impulse Response or Pulse Response

image-20240807221637401

image-20240807224407213image-20240807224505987

TX FFE

TX FFE suffers from the peak power constraint, which in effect attenuates the average power of the outgoing signal - the low-frequency signal content has been attenuated down to the high-frequency level

image-20240727225120002

[https://www.signalintegrityjournal.com/articles/1228-feedforward-equalizer-location-study-for-high-speed-serial-systems]

S. Palermo, "CMOS Nanoelectronics Analog and RF VLSI Circuits," Chapter 9: High-Speed Serial I/O Design for Channel-Limited and Power-Constrained Systems, McGraw-Hill, 2011.

statistical eye

TODO 📅

Sanders, Anthony, Michael Resso and John D'Ambrosia. "Channel Compliance Testing Utilizing Novel Statistical Eye Methodology." (2004).

Eye-Opening Monitor (EOM)

An architecture that evaluates the received signal quality

data slicers, phase slicers, error slicers, scope slicers

image-20240922143125270

image-20240922144605196

Analui, Behnam & Rylyakov, Alexander & Rylov, Sergey & Meghelli, Mounir & Hajimiri, Ali. (2006). A 10-Gb/s two-dimensional eye-opening monitor in 0.13-??m standard CMOS. Solid-State Circuits, IEEE Journal of. 40. 2689 - 2699, [https://chic.caltech.edu/wp-content/uploads/2013/05/B-Analui_JSSC_10-Gbs_05.pdf]

reference

Paul Muller Yusuf Leblebici École Polytechnique Fédérale de Lausanne (EPFL). Pattern generator model for jitter-tolerance simulation; VHDL-AMS models

G. Balamurugan, A. Balankutty and C. -M. Hsu, "56G/112G Link Foundations Standards, Link Budgets & Models," 2019 IEEE Custom Integrated Circuits Conference (CICC), Austin, TX, USA, 2019, pp. 1-95, doi: 10.1109/CICC.2019.8780223.

Savo Bajic, ECE1392, Integrated Circuits for Digital Communications: StatOpt in Python [https://savobajic.ca/projects/academic/statopt]

Anritsu Company, "Measuring Channel Operating Margin," 2016. [https://dl.cdn-anritsu.com/en-us/test-measurement/files/Technical-Notes/White-Paper/11410-00989A.pdf]

JLSD - Julia SerDe [https://github.com/kevjzheng/JLSD]

charge pump with amplifier

This reduces the charge sharing effect, when the switch is turned on.

image-20240909221145643

Young, I.A., Greason, J.K., Wong, K.L.: A PLL Clock Generator with 5 to 110MHz of Lock Range for Microprocessors. IEEE Journal of Solid-State Circuits 27(11), 1599– 1607 (1992) [https://people.engr.tamu.edu/spalermo/ecen620/pll_intel_young_jssc_1992.pdf]

Johnson, M., Hudson, E.: A variable delay line PLL for CPU-coprocessor synchronization. IEEE Journal of Solid-State Circuits 23(10), 1218–1223 (1988) [https://sci-hub.se/10.1109/4.5947]

why 2nd loop filter ?

PI (proportional - integral) Loop Filter

image-20240907123938255

image-20240907124029346

image-20240907124018476

Switched Capacitor Banks

Q: why \(R_b\) ?

A: TODO 📅

image-20240901105919333

Hu, Yizhe. "Flicker noise upconversion and reduction mechanisms in RF/millimeter-wave oscillators for 5G communications." PhD diss., 2019.

S. D. Toso, A. Bevilacqua, A. Gerosa and A. Neviani, "A thorough analysis of the tank quality factor in LC oscillators with switched capacitor banks," Proceedings of 2010 IEEE International Symposium on Circuits and Systems, Paris, France, 2010, pp. 1903-1906

Injection Lock

TODO 📅

Phase Interpolator (PI)

!!! Clock Edges

And for a phase interpolator, you need those reference clocks to be completely the opposite. Ideally they would be triangular shaped

image-20240821203756602

four input clocks given by the cyan, black, magenta, red

John T. Stonick, ISSCC 2011 tutorial. "DPLL Based Clock and Data Recovery" [https://www.nishanchettri.com/isscc-slides/2011%20ISSCC/TUTORIALS/ISSCC2011Visuals-T5.pdf]

kink problem

image-20240919223032380

B. Razavi, "The Design of a Phase Interpolator [The Analog Mind]," IEEE Solid-State Circuits Magazine, Volume. 15, Issue. 4, pp. 6-10, Fall 2023.(https://www.seas.ucla.edu/brweb/papers/Journals/BR_SSCM_4_2023.pdf)

False locking

TODO 📅

  • divider failure
  • even-stage ring oscillator ( multipath ring oscillators)
  • DLL: harmonic locking, stuck locking

different frequency clock impact on edge

clock2clock.drawio

ck1 is div2 of ck0

  • edge of ck0 is affected differently by ck1

  • edge of ck1 is affected equally by ck0

limit cycle & hunting jitter

hunting jitter is also called as dithering jitter

CDR Loop Latency

Denoting the CDR loop latency by \(\Delta T\) , we note that the loop transmission is multiplied by \(exp(-s\Delta T)\simeq 1-s\Delta T\).The resulting right-half-plane zero, \(f_z\) degrades the phase margin and must remain about one decade beyond the BW \[ f_z\simeq \frac{1}{2\pi \Delta T} \]

This assumption is true in practice since the bandwidth of the CDR (few mega Hertz) is much smaller than the data rate (multi giga bits/second).

[Fernando , Marvell Italy."Considerations for CDR Bandwidth Proposal" https://www.ieee802.org/3/bs/public/16_03/debernardinis_3bs_01_0316.pdf]

Loop Bandwidth

The closed-loop −3-dB bandwidth is sometimes called the “loop bandwidth”

Continuous-Time Approximation Limitations

A rule of thumb often used to ensure slow changes in the loop is to select the loop bandwidth approximately equal to one-tenth of the input frequency.

image-20240806230158367

Gardner, F.M. (1980). Charge-Pump Phase-Lock Loops. IEEE Trans. Commun., 28, 1849-1858.

Homayoun, Aliakbar and Behzad Razavi. “On the Stability of Charge-Pump Phase-Locked Loops.” IEEE Transactions on Circuits and Systems I: Regular Papers 63 (2016): 741-750.

N. Kuznetsov, A. Matveev, M. Yuldashev and R. Yuldashev, "Nonlinear Analysis of Charge-Pump Phase-Locked Loop: The Hold-In and Pull-In Ranges," in IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 68, no. 10, pp. 4049-4061, Oct. 2021

clock distribution

X. Mo, J. Wu, N. Wary and T. C. Carusone, "Design Methodologies for Low-Jitter CMOS Clock Distribution," in IEEE Open Journal of the Solid-State Circuits Society, vol. 1, pp. 94-103, 2021

PFD

image-20240824220600632

symmetric???

Feedback Dividers

image-20240803225130324

  • Large values of N lowers the loop BW which is bad for jitter

Gunnman, Kiran, and Mohammad Vahidfar. Selected Topics in RF, Analog and Mixed Signal Circuits and Systems. Aalborg: River Publishers, 2017.

clock gating

clk_mux.drawio

PLL Type & Order

Type: # of integrators within the loop

Order: # of poles in the closed-loop transfer function

Type \(\leq\) Order

Why Type 2 PLL ?

  1. That is, to have a wide bandwidth, a high loop gain is required
  2. More importantly, the type 1 PLL has the problem of a static phase error for the change of an input frequency

AC-coupled buffer

image-20240720073616597

Since duty-cycle error is high frequency component, the high-pass filter suppresses the duty-cycle error propagating to the output

image-20240720005226736

  • The AC-coupling capacitor blocks the low-frequency component of the input
  • The feedback resistor sets common mode voltage to the crossover voltage

Bae, Woorham; Jeong, Deog-Kyoon: 'Analysis and Design of CMOS Clocking Circuits for Low Phase Noise' (Materials, Circuits and Devices, 2020)

Casper B, O’Mahony F. Clocking analysis, implementation and measurement techniques for high-speed data links: A tutorial. IEEE Transactions on Circuits and Systems I: Regular Papers. 2009;56(1):17–39

Clock Division with Jitter and Phase Noise

  • Multiplying the frequency of a signal by a factor of N using an ideal frequency multiplier increases the phase noise of the multiplied signal by \(20\log(N)\) dB.
  • Similarly dividing a signal frequency by N reduces the phase noise of the output signal by \(20\log(N)\) dB

The sideband offset from the carrier in the frequency multiplied/divided signal is the same as for the original signal.

The 20log(N) Rule

If the carrier frequency of a clock is divided down by a factor of \(N\) then we expect the phase noise to decrease by \(20\log(N)\).The primary assumption here is a noiseless conventional digital divider.

The \(20\log(N)\) rule only applies to phase noise and not integrated phase noise or phase jitter. Phase jitter should generally measure about the same.

20log(N).png

What About Phase Jitter?

We integrate SSB phase noise L(f) [dBc/Hz] to obtain rms phase jitter in seconds as follows for “brick wall” integration from f1 to f2 offset frequencies in Hz and where f0 is the carrier or clock frequency.

phase jitter.png

Note that the rms phase jitter in seconds is inversely proportional to f0. When frequency is divided down, the phase noise, L(f), goes down by a factor of 20log(N). However, since the frequency goes down by N also, the phase jitter expressed in units of time is constant.

Therefore, phase noise curves, related by 20log(N), with the same phase noise shape over the jitter bandwidth, are expected to yield the same phase jitter in seconds.

[Timing 101: The Case of the Jitterier Divided-Down Clock, Silicon Labs]

[How division impacts spurs, phase noise, and phase]

[Phase Noise Theory: Ideal Frequency Multipliers and Dividers]

Bang-Bang Phase Detector

It's ternary, because early, late and no transition

Linearing BB-PD

BB Gain is the slope of average BB output \(\mu\), versus phase offset \(\phi\), i.e. \(\frac {\partial \mu}{\partial \phi}\),

BB only produces output for a transition and this de-rates the gain. Transition density = 0.5 for random data

\[ K_{BB} = \frac{1}{2}\frac {\partial \mu}{\partial \phi} \]

where \(\mu = (1)\times \mathrm{P}(\text{late}|\phi) + (-1)\times \mathrm{P}(\text{early}|\phi)\)

bb-PDF.drawio

Both jitter and amplitude noise distribution are same, just scaled by slope

Self-Noise Term

One price we pay for BB PD versus linear PD is the self-noise term. For small phase errors BB output noise is the full magnitude of the sliced data.

BB-PD don't have any measure as to how early or how late and the way that tell loop is locked, is over a long time average, BB-PD have an equal number of earlies and lates

\[\begin{align} \sigma_{BB} &= [E(X^2) - E(X)^2] \cdot \mathrm{P}(\text{trans}) \\ &= [1 - 0]\cdot 0.5 \\ &= 0.5 \end{align}\]

John T. Stonick, ISSCC 2011 TUTORIALS T5: DPLL-Based Clock and Data Recovery

Walker, Richard. (2003). Designing Bang-Bang PLLs for Clock and Data Recovery in Serial Data Transmission Systems. [pdf]

- Clock and Data Recovery for Serial Data Communications, focusing on bang-bang CDR design methodology, ISSCC Short Course, February 2002. [slides]

PLL bandwidth test

A step response test is an easy way to determine the bandwidth.

Sum a small step into the control voltage of your oscillator (VCO or NCO), and measure the 90% to 10% fall time of the corrected response at the output of the loop filter as shown in this block diagram

PLL Step Response Test

a first order loop \[ BW = \frac{0.35}{t} \space\space\space\space \text{(first order system)} \] Where \(BW\) is the 3 dB bandwidth in Hz and \(𝑡\)​ is the 10%/90% rise or fall time.

For second order loops with a typical damping factor of 0.7 this relationship is closer to: \[ BW = \frac{0.33}{t}\space\space\space\space \text{(second order system, damping factor = 0.7)} \]

[How can I experimentally find the bandwidth of my PLL?, https://dsp.stackexchange.com/a/73654/59253]

narrowband approximation

A sine wave with phase modulation is expressed as \[ y(t) = A_0 \sin(2\pi f_0 t + \phi _0 +\phi (t)) \] where \(\phi (t)\) is a time-varying phase modulation function

Assuming a narrowband phase modulation (PM), that is, the absolute amount of modulated phase is small enough

otherwise the modulation becomes frequency modulation (FM) and its analysis becomes more complex

\[ y(t) \simeq A_0 \sin(2\pi f_0 t +\phi _0) + A_0 \phi (t)\cos(2\pi f_0 t + \phi _0) \]

Because \(\cos \phi(t)\) and \(\sin \phi(t)\) are approximated to \(1\) and \(\phi (t)\), respectively

The Fourier transform of \(y(t)\) is \[ Y(f) = \frac{1}{2}A_0 e^{j\phi _0}\delta(f-f_0) -\frac{1}{2}A_0e^{-j\phi_0}\delta(f+f_0)+\frac{1}{2}A_0e^{j\phi_0}\Phi(f-f_0)-\frac{1}{2}A_0e^{-j\phi_0}\Phi(f+f_0) \]

where \(\Phi(f)\) is the Fourier transform pair of \(\phi(t)\)

The autocorrelation of \(y(t)\) is

\[\begin{align} R(\tau) &= E(y(t)y(t+\tau))\\ &= E([A_0\sin(2\pi f_0 t + \phi_0)+A_0\phi(t)\cos(2\pi f_0 t+\phi _0)]\\ &= \frac{1}{2}A_0^2 \cos(2\pi f_0 \tau)(1+R_{\phi}(\tau)) \end{align}\]

Fourier transform of \(R(\tau)\) is \[ S_y(f) = \frac{1}{4}A_0^2 \delta (f-f_0) + \frac{1}{4}A_0\delta(f+f_0) + \frac{1}{4}A_0^2S_\phi (f-f_0)+\frac{1}{4}A_0^2S_\phi (f+f_0) \] image-20240511221119938

Bae, Woorham; Jeong, Deog-Kyoon: 'Analysis and Design of CMOS Clocking Circuits for Low Phase Noise' (Materials, Circuits and Devices, 2020)

approximation limitation

Don't retain the same total power

image-20240720101133749

Leeson's model

Leeson's equation is an empirical expression that describes an oscillator's phase noise spectrum

image-20240718230819186

Limitation:

​ that the PSD diverges to infinity for very low values of the frequency offset \(f\)

Lorentzian Spectrum

image-20240720134811859

We typically use the two spectra, \(S_{\phi n}(f)\) and \(S_{out}(f)\), interchangeably, but we must resolve these inconsistencies. voltage spectrum is called Lorentzian spectrum


The periodic signal \(x(t)\) can be expanded in Fourier series as:

image-20240720141514040

Assume that the signal is subject to excess phase noise, which is modeled by adding a time-dependent noise component \(\alpha(t)\). The noisy signal can be written \(x(t+\alpha(t))\), the added excess phase \(\phi(t)= \frac{\alpha(t)}{\omega_0}\)

The autocorrelation of the noisy signal is by definition:

image-20240720141525576

The autocorrelation averaged over time results in:

image-20240720141659415

By taking the Fourier transform of the autocorrelation, the spectrum of the signal \(x(t + \alpha(t))\)​ can be expressed as

image-20240720141813256

It is also interesting to note how the integral in Equation 9.80 around each harmonic is equal to the power of the harmonic itself \(|X_n|^2\)

The integral \(S_x(f)\) around harmonic is \[\begin{align} P_{x,n} &= \int_{f=-\infty}^{\infty} |X_n|^2\frac{\omega_0^2n^2c}{\frac{1}{4}\omega_0^4n^4c^2+(\omega +n\omega_0)^2}df \\ &= |X_n|^2\int_{\Delta f=-\infty}^{\infty}\frac{2\beta}{\beta^2+(2\pi\cdot\Delta f)^2}d\Delta f \\ &= |X_n|^2\frac{1}{\pi}\arctan(\frac{2\pi \Delta f}{\beta})|_{-\infty}^{\infty} \\ &= |X_n|^2 \end{align}\]

The phase noise does not affect the total power in the signal, it only affects its distribution.

  • Without phase noise, \(S_v(f)\) is a series of impulse functions at the harmonics of \(f_o\).
  • With phase noise, the impulse functions spread, becoming fatter and shorter but retaining the same total power

AM-PM conversion

TODO 📅

Multirate Digital Signal Processing

TODO 📅

frequency convention

  • radian frequency \(\omega_0\) in rad/s
  • cyclic frequency \(f_0\) in Hz

sinc filter

image-20240903223100157

Energy signals vs Power signal

Topic 5 Energy & Power Signals, Correlation & Spectral Density [https://www.robots.ox.ac.uk/~dwm/Courses/2TF_2021/N5.pdf]


image-20240427155046131

image-20240719203550628



image-20240427155100927

image-20240719204148098

modulation & demodulation

image-20240826221237312

image-20240826221251379

Hossein Hashemi, RF Circuits, [https://youtu.be/0f3yZMvD2Jg?si=2c1Q4y6WJq8Jj8oN]

Coherent Sampling

To avoid spectral leakage completely, the method of coherent sampling is recommended. Coherent sampling requires that the input- and clock-frequency generators are phase locked, and that the input frequency be chosen based on the following relationship: \[ \frac{f_{\text{in}}}{f_{\text{s}}}=\frac{M_C}{N_R} \]

where:

  • \(f_{\text{in}}\) = the desired input frequency
  • \(f_s\) = the clock frequency of the data converter under test
  • \(M_C\) = the number of cycles in the data window (to make all samples unique, choose odd or prime numbers)
  • \(N_R\) = the data record length (for an 8192-point FFT, the data record is 8192s long)

\[\begin{align} f_{\text{in}} &=\frac{f_s}{N_R}\cdot M_C \\ &= f_{\text{res}}\cdot M_C \end{align}\]


irreducible ratio

An irreducible ratio ensures identical code sequences not to be repeated multiple times. Unnecessary repetition of the same code is not desirable as it increases ADC test time.

Given that \(\frac{M_C}{N_R}\) is irreducible, and \(N_R\) is a power of 2, an odd number for \(M_C\) will always produce an irreducible ratio

Assuming there is a common factor \(k\) between \(M_C\) and \(N_R\), i.e. \(\frac{M_C}{N_R}=\frac{k M_C'}{k N_R'}\)

The samples (\(n\in[1, N_R]\))

\[\begin{align} y[n] &= \sin\left( \omega_{\text{in}} \cdot t_n \right) \\ &= \sin\left( \omega_{\text{in}} \cdot n\frac{1}{f_s} \right) \\ & = \sin\left( \omega_{\text{in}} \cdot n\frac{1}{f_{\text{in}}}\frac{M_C}{N_R} \right) \\ & = \sin\left( 2\pi n\frac{M_C}{N_R} \right) \end{align}\]

Then

\[\begin{align} y[n+N_R'] &= \sin\left( 2\pi (n+N_R')\frac{M_C}{N_R} \right) \\ & = \sin\left( 2\pi n \frac{M_C}{N_R} + 2\pi N_R'\frac{M_C}{N_R}\right) \\ & = \sin\left( 2\pi n \frac{M_C}{N_R} + 2\pi N_R'\frac{kM_C'}{kN_R'} \right) \\ & = \sin\left( 2\pi n \frac{M_C}{N_R} + 2\pi M_C' \right) \\ & = \sin\left( 2\pi n \frac{M_C}{N_R}\right) \end{align}\]

So, the samples is repeated \(y[n] = y[n+N_R']\). Usually, no additional information is gained by repeating with the same sampling points.


Example \[ N \cdot \frac{1}{F_s} = M \cdot \frac{1}{F_{in}} \]

where \(F_s\) is sample frequency, \(F_{in}\) input signal frequency.

And \(N\) often is 256, 512; M is 3, 5, 7, 11.

channel loss

  • skin effect loss
  • dielectric loss

image-20240810102618245

phase delay & group delay

image-20240810094519487

  • Phase delay directly measures the device or system time delay of individual sinusoidal frequency components in the steady-state conditions.
  • In the ideal case the envelope delay is equal to the phase delay
  • envelope delay is a more sensitive measure of aberrations than phase delay

phase delay

image-20240808212730768

If the phase delay peaks (exceeds the low-frequency value) you can expect to see high-frequency components late in the step response. This causes ringing.

group delay

image-20240808213806803

image-20240808220657443

image-20240808220740349


steady-state at this frequency is a polarity flip; a 180 degrees phase shift; which is a transfer function of H(s)=-1. \[ H(s) = e^{j\pi} \] That is \(\phi(\omega) = \pi\) \[ \tau_p = \frac{\pi}{\omega} \] and \[ \tau_g = \frac{\partial \pi}{\partial \omega}=0 \]


Hollister, Allen L. Wideband Amplifier Design. Raleigh, NC: SciTech Pub., 2007.

Pupalaikis, Peter. (2006). Group Delay and its Impact on Serial Data Transmission and Testing. [https://cdn.teledynelecroy.com/files/whitepapers/group_delay-designcon2006.pdf]

[Pupalaikis et al., “Eye Patterns in Scopes”, DesignCon, Santa Clara CA, 2005https://cdn.teledynelecroy.com/files/whitepapers/eye_patterns_in_scopes-designcon_2005.pdf]

Starič, P. & Margan, E.. (2006). Wideband Amplifiers. 10.1007/978-0-387-28341-8.

Alan V. Oppenheim, Alan S. Willsky, and S. Hamid Nawab. 1996. Signals & systems (2nd ed.). Prentice-Hall, Inc., USA.

Phase delay vs group delay: Common misconceptions. [https://audiosciencereview.com/forum/index.php?threads/phase-delay-vs-group-delay-common-misconceptions.39591/]

z-domain & sampled analysis

TODO 📅

A sampled system almost always has more stability problems than arise in continuous-time systems.

  • In particular, an analog, second-order PLL is unconditionally stable for any value of loop gain
  • but the sampled equivalent will go unstable if the gain is made too large

F. Gardner, "Charge-Pump Phase-Lock Loops," in IEEE Transactions on Communications, vol. 28, no. 11, pp. 1849-1858, November 1980, doi: 10.1109/TCOM.1980.1094619

Feedback Rearrange

loop-refactor.drawio

The closed loop transfer function of \(Y/X\) and \(Y_1/X_1\) are almost same, except sign

\[\begin{align} \frac{Y}{X} &= +\frac{H_1(s)H_2(s)}{1+H_1(s)H_2(s)} \\ \frac{Y_1}{X_1} &= -\frac{H_1(s)H_2(s)}{1+H_1(s)H_2(s)} \end{align}\]

loop-refactor-partion.drawio

define \(-Y_1=Y_n\), then \[ \frac{Y_n}{X_1} = \frac{H_1(s)H_2(s)}{1+H_1(s)H_2(s)} \] loop-refactor-partion-general.drawio

image-20240805231921946

Saurabh Saxena, IIT Madras. Clocking for Serial Links - Frequency and Jitter Requirements, Phase-Locked Loops, Clock and Data Recovery

Convolution of probability distributions

The probability distribution of the sum of two or more independent random variables is the convolution of their individual distributions.

image-20240804104528903

Thermal noise

Thermal noise in an ideal resistor is approximately white, meaning that its power spectral density is nearly constant throughout the frequency spectrum.

When limited to a finite bandwidth and viewed in the time domain, thermal noise has a nearly Gaussian amplitude distribution

image-20240804102454281

Barkhausen criteria

Barkhausen criteria are necessary but not sufficient conditions for sustainable oscillations

image-20240720090654883

it simply "latches up" rather than oscillates

NRZ Bandwidth

image-20240607221359970

Maxim Integrated,NRZ Bandwidth - HF Cutoff vs. SNR [https://pdfserv.maximintegrated.com/en/an/AN870.pdf]

\(0.35/T_r\)

image-20240607222440796

\(0.5/T_r\)

TODO 📅

System Type

Control of Steady-State Error to Polynomial Inputs: System Type

image-20240502232125317

control systems are assigned a type number according to the maximum degree of the input polynominal for which the steady-state error is a finite constant. i.e.

  • Type 0: Finite error to a step (position error)
  • Type 1: Finite error to a ramp (velocity error)
  • Type 2: Finite error to a parabola (acceleration error)

The open-loop transfer function can be expressed as \[ T(s) = \frac{K_n(s)}{s^n} \]

where we collect all the terms except the pole (\(s\)) at eh origin into \(K_n(s)\),

The polynomial inputs, \(r(t)=\frac{t^k}{k!} u(t)\), whose transform is \[ R(s) = \frac{1}{s^{k+1}} \]

Then the equation for the error is simply \[ E(s) = \frac{1}{1+T(s)}R(s) \]

Application of the Final Value Theorem to the error formula gives the result

\[\begin{align} \lim _{t\to \infty} e(t) &= e_{ss} = \lim _{s\to 0} sE(s) \\ &= \lim _{s\to 0} s\frac{1}{1+\frac{K_n(s)}{s^n}}\frac{1}{s^{k+1}} \\ &= \lim _{s\to 0} \frac{s^n}{s^n + K_n}\frac{1}{s^k} \end{align}\]

  • if \(n > k\), \(e=0\)
  • if \(n < k\), \(e\to \infty\)
  • if \(n=k\)
    • \(e_{ss} = \frac{1}{1+K_n}\) if \(n=k=0\)
    • \(e_{ss} = \frac{1}{K_n}\) if \(n=k \neq 0\)

where we define \(K_n(0) = K_n\)

PID

TODO 📅

  • a Proportional term to close the feedback loop
  • an Integral term to assure zero error to constant reference and disturbance inputs
  • a Derivative term to improve (or realize!) stability and good dynamic response

Nyquist's Stability Criterion

TODO 📅

[Michael H. Perrott, High Speed Communication Circuits and Systems, Lecture 15 Integer-N Frequency Synthesizers]

\(s\)- and \(z\)-Domains Conversion

image-20240429220303281

image-20240429215455332

Staszewski, Robert Bogdan, and Poras T. Balsara. All-digital frequency synthesizer in deep-submicron CMOS. John Wiley & Sons, 2006.

Spectral content of NRZ

image-20231111100420675

image-20231111101322771

image-20231110224237933

Lecture 26 Autocorrelation Functions of Random Binary Processes [https://bpb-us-w2.wpmucdn.com/sites.gatech.edu/dist/a/578/files/2003/12/ECE3075A-26.pdf]

Lecture 32 Correlation Functions & Power Density Spectrum, Cross-spectral Density [https://bpb-us-w2.wpmucdn.com/sites.gatech.edu/dist/a/578/files/2003/12/ECE3075A-32.pdf]

sinusoidal steady-state and frequency response

image-20231104104933781

image-20231104104946203

image-20231104105056345

image-20231104105139814

image-20231104105223549

Due to KCL and \(u(t)=e^{j\omega t}\) and \(y(t)=H(j\omega)e^{j\omega t}\), we have ODE:

\[\begin{align} \frac{u(t) - y(t)}{R} = C \frac{dy(t)}{dt} \\ e^{j\omega t} - H(j\omega) e^{j\omega t} = H(j\omega)\cdot j\omega e^{j\omega t} \\ \end{align}\]

\(H(j\omega)\) is obtained as below \[ H(j\omega) = \frac{1}{1+j\omega} \]

image-20231104135855739

Initial Value Theorem & Final Value Theorem

Two valuable Laplace transform theorem

  • Initial Value Theorem, which states that it is always possible to determine the initial value of the time function \(f(t)\) from its Laplace transform \[ \lim _{s\to \infty}sF(s) = f(0^+) \]

  • Final Value Theorem allows us to compute the constant steady-state value of a time function given its Laplace transform \[ \lim _{s\to 0}sF(s) = f(\infty) \]

    If \(f(t)\) is step response, then \(f(0^+) = H(\infty)\) and \(f(\infty) = H(0)\), where \(H(s)\) is transfer function

Butterworth filter

function varargout = butter(n, Wn, varargin)

% BUTTER Butterworth digital and analog filter design.

% [B,A] = BUTTER(N,Wn) designs an Nth order lowpass digital

% Butterworth filter and returns the filter coefficients in length

% N+1 vectors B (numerator) and A (denominator). The coefficients

% are listed in descending powers of z. The cutoff frequency

% Wn must be 0.0 < Wn < 1.0, with 1.0 corresponding to

% half the sample rate.

\[ w_n = \frac{f_c}{0.5f_s} \]

where \(f_c\) is cutoff frequency, \(f_s\) is sampling frequency

\[ \Phi = \omega T_s \text { ,}\Phi \in [0,2\pi] \]

Find the relationship between \(\omega_n\) and

\[\begin{align} \Phi &= 2\pi f_c \frac{1}{f_s} \\ &=\pi \frac{f_c}{0.5f_s} \\ &= \pi \omega _n \end{align}\]

Given \(f_c\) is 300 Hz and \(f_s\) is 1000 Hz, we get \[ \omega_n = \frac{f_c}{0.5*f_s} = 0.6 \] and in rad/sample unit, cutoff frequency is \[ \Phi = \pi * \omega_n = 0.6 \pi \text {, unit: rad/sample} \]

Z-transform

\[ z= e^{-j\Phi} \]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
fc = 300;
fs = 1000;

[b,a] = butter(6,fc/(fs/2));
fprintf('The numerator b is:\n ');
fprintf('%g ', b);
fprintf('\n');
fprintf('The denominator a is:\n ');
fprintf('%g ', a);
fprintf('\n');

figure(1)
freqz(b, a);
ylim([-400, 100])

The numerator (b) and denominator (a) depend on the cutoff frequency and the order; the cutoff frequency is denominated with \(\omega_n\) . Just multiply the \(\pi\), we get the Z-transform \(\Phi\) rad/sample, which is the plot of freqz(b, a)

image-20220407100948965

Transfer function with sample information

\[ z = e^{-j\omega T_s} \]

image-20220407103451265

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
figure(2)
ylim([-400, 100])
[h,f] = freqz(b,a,[],fs);
hdb20 = 20*log10(abs(h));
subplot(3,1,1)
plot(f, hdb20, 'b')
ylim([-400, 100])
title('DTFT with freqz and sample rate')
xlabel('Frequency (Hz)')
ylabel('Mag (dB)')
grid on;

subplot(3,1,2)
sys = tf(b, a, 1/fs);
[mag, phs, wout] = bode(sys);
wout = wout(:);
whz = wout/2/pi;
hdb = 20*log10(mag(:));
plot(whz, hdb, 'r-o');
ylim([-400, 100])
title('DTFT with bode and sample period')
xlabel('Frequency (Hz)')
ylabel('Mag (dB)')
grid on;


subplot(3,1,3)
plot(f, hdb20,'b', whz, hdb, 'ro');
legend('freqz', 'bode')
ylim([-400, 100])
title('overlay and comparision')
xlabel('Frequency (Hz)')
ylabel('Mag (dB)')
grid on;

Time Domain from Frequency Domain

Assume input is sampled by \(f_s\)

1
2
3
4
5
6
7
8
9
10
11
figure(3)
% assume x is sampled by fs
x = rand(1, 50);
y = filter(b, a, x);
xt = (1:50);
plot(xt, x, '-s', xt, y, '-o')
legend('input', 'output')
xlabel('Sample')
ylabel('mag')
title('filter in Time domain')
grid on;

image-20220407113330972

Bilinear Transformation

Bilinear Transformation, also known as Bilinear Approximation, an algebraic transformation between the variables \(s\) and \(z\) that maps the entire \(j\Omega\)-axis in the \(s\)-plane to one revolution of the unit circle in the \(z\)-plane.

That is, with this approach, \(-\infty \le \Omega \le +\infty\) maps onto \(-\pi \le \omega \le +\pi\), the transformation between the continuous-time and discrete-time frequency variables is necessarily nonlinear.

With \(H_c(s)\) denoting the continuous-time system function and \(H(z)\) the discrete-time system function, the bilinear transformation corresponds to replacing \(s\) by \[ s=\frac{2}{T_d}\left( \frac{1-z^{-1}}{1+z^{-1}} \right) \]

that is, \[ H(z) = H_c\left( \frac{2}{T_d}\left( \frac{1-z^{-1}}{1+z^{-1}} \right) \right) \]

Different Variants of the PSD Definition

In the practice of engineering, it has become customary to use slightly different variants of the PSD definition, depending on the particular application or research field.

  • Two-Sided PSD, \(S_x(f)\)

    this is a synonym of the PSD defined as the Fourier Transform of the autocorrelation.

  • One-Sided PSD, \(S'_x(f)\)

    this is a variant derived from the two-sided PSD by considering only the positive frequency semi-axis.

    To conserve the total power, the value of the one-sided PSD is twice that of the two-sided PSD \[ S'_x(f) = \left\{ \begin{array}{cl} 0 & : \ f \geq 0 \\ S_x(f) & : \ f = 0 \\ 2S_x(f) & : \ f \gt 0 \end{array} \right. \]

image-20230603185546658

Note that the one-sided PSD definition makes sense only if the two-sided is an even function of \(f\)

If \(S'_x(f)\) is even symmetrical around a positive frequency \(f_0\), then two additional definitions can be adopted:

  • Single-Sideband PSD, \(S_{SSB,x}(f)\)

    This is obtained from \(S'_x(f)\) by moving the origin of the frequency axis to \(f_0\) \[ S_{SSB,x}(f) =S'_x(f+f_0) \] This concept is particularly useful for describing phase or amplitude modulation schemes in wireless communications, where \(f_0\) is the carrier frequency.

    Note that there is no difference in the values of the one-sided versus the SSB PSD; it is just a pure translation on the frequency axis.

  • Double-Sideband PSD, \(S_{DSB,x}(f)\)

    this is a variant of the SSB PSD obtained by considering only the positive frequency semi-axis.

    As in the case of the one-sided PSD, to conserve total power, the value of the DSB PSD is twice that of the SSB \[ S_{DSB,x}(f) = \left\{ \begin{array}{cl} 0 & : \ f \geq 0 \\ S_{SSB,x}(f) & : \ f = 0 \\ 2S_{SSB,x}(f) & : \ f \gt 0 \end{array} \right. \]

image-20230603222054506

Note that the DSB definition makes sense only if the SSB PSD is even symmetrical around zero

Poles and Zeros of transfer function

poles

\[ H(s) = \frac{1}{1+s/\omega_0} \]

magnitude and phase at \(\omega_0\) and \(-\omega_0\) \[\begin{align} H(j\omega_0) &= \frac{1}{1+j} = \frac{1}{\sqrt{2}}e^{-j\pi/4} \\ H(-j\omega_0) &= \frac{1}{1-j} = \frac{1}{\sqrt{2}}e^{j\pi/4} \end{align}\]

system response \(y(t)\) of input \(\cos(\omega_0 t)\), note \(\cos(\omega_0t) = \frac{1}{2}(e^{j\omega_0 t} + e^{-j\omega_0 t})\) \[\begin{align} y(t) &= H(j\omega_0)\cdot \frac{1}{2}e^{j\omega_0 t} + H(-j\omega_0)\cdot \frac{1}{2}e^{-j\omega_0 t} \\ &= \frac{1}{\sqrt{2}}\cos(\omega_0t-\pi/4) \end{align}\]

\(\cos(\omega_0 t)\), with frequency same with pole DON'T have infinite response

That is, pole indicate decrease trending

zeros

similar with poles, \(\cos(\omega_0 t)\), with frequency same with zero DON'T have zero response

\[ H(s) = 1+s/\omega_0 \]

magnitude and phase at \(\omega_0\) and \(-\omega_0\) \[\begin{align} H(j\omega_0) &= 1+j = \sqrt{2}e^{j\pi/4} \\ H(-j\omega_0) &= 1-j = \sqrt{2}e^{-j\pi/4} \end{align}\]

system response \(y(t)\) of input \(\cos(\omega_0 t)\), note \(\cos(\omega_0t) = \frac{1}{2}(e^{j\omega_0 t} + e^{-j\omega_0 t})\) \[\begin{align} y(t) &= H(j\omega_0)\cdot \frac{1}{2}e^{j\omega_0 t} + H(-j\omega_0)\cdot \frac{1}{2}e^{-j\omega_0 t} \\ &= \sqrt{2}\cos(\omega_0t+\pi/4) \end{align}\]

baud rate

symbol rate, modulation rate or baud rate is the number of symbol changes per unit of time.

  • Bit rate refers to the number of bits transmitted between two devices per unit of time
  • The baud or symbol rate refers to the number of symbols that can be sent in the same amount of time

reference

Stephen P. Boyd. EE102 Lecture 10 Sinusoidal steady-state and frequency response [https://web.stanford.edu/~boyd/ee102/freq.pdf]

Gene F. Franklin, J. David Powell, and Abbas Emami-Naeini. 2018. Feedback Control of Dynamic Systems (8th Edition) (8th. ed.). Pearson.

Inter-Symbol Interference (or Leaky Bits) [http://blog.teledynelecroy.com/2018/06/inter-symbol-interference-or-leaky-bits.html]

[AN001] Designing from zero an IIR filter in Verilog using biquad structure and bilinear discretization. URL:[https://www.controlpaths.com/articles/an001_designing_iir_biquad_filter_bilinear/]

Frequency warping using the bilinear transform. URL:[https://www.controlpaths.com/2022/05/09/frequency-warping-using-the-bilinear-transform/]

Digital control loops. Theoretical approach. URL:[https://www.controlpaths.com/2022/02/28/digital-control-loops-theoretical-approach/]

Simulation of DSP algorithms in Verilog. URL:[https://www.controlpaths.com/2023/05/20/simulation-of-dsp-algorithms-in-verilog/]

Implementing a digital biquad filter in Verilog. URL:[https://www.controlpaths.com/2021/04/19/implementing-a-digital-biquad-filter-in-verilog/]

Implementing a FIR filter using folding. URL:[https://www.controlpaths.com/2021/05/17/implementing-a-fir-filter-using-folding/]

Oppenheim, Alan V. and Cram. “Discrete-time signal processing : Alan V. Oppenheim, 3rd edition.” (2011).

Extras: PID Compensator with Bilinear Approximation URL:[https://ctms.engin.umich.edu/CTMS/index.php?aux=Extras_PIDbilin]

Sampled Thermal Noise

The aliasing of the noise, or noise folding, plays an important role in switched-capacitor as it does in all switched-capacitor filters

image-20240425215938141

Assume for the moment that the switch is always closed (that there is no hold phase), the single-sided noise density would be

image-20240428182816109

image-20240428180635082

\(v_s[n]\) is the sampled version of \(v_{RC}(t)\), i.e. \(v_s[n]= v_{RC}(nT_C)\) \[ S_s(e^{j\omega}) = \frac{1}{T_C} \sum_{k=-\infty}^{\infty}S_{RC}(j(\frac{\omega}{T_C}-\frac{2\pi k}{T_C})) \cdot d\omega \] where \(\omega \in [-\pi, \pi]\), furthermore \(\frac{d\omega}{T_C}= d\Omega\) \[ S_s(j\Omega) = \sum_{k=-\infty}^{\infty}S_{RC}(j(\Omega-k\Omega_s)) \cdot d\Omega \]

image-20240428215559780

image-20240425220033340

The noise in \(S_{RC}\) is a stationary process and so is uncorrelated over \(f\) allowing the \(N\) rectangles to be combined by simply summing their noise powers

image-20240428225949327

\[ X(j\Omega)d\Omega = \frac{1}{T_c}X(e^{j\omega})d\omega \]

ref. [Frequency-Domain Representation of Sampling] of EQ.(31) in the blog

image-20240428225949327

image-20240425220400924

where \(m\) is the duty cycle


Below analysis focus on sampled noise

image-20240427183257203

image-20240427183349642

image-20240427183516540

image-20240427183458649

  • Calculate autocorrelation function of noise at the output of the RC filter
  • Calculate the spectrum by taking the discrete time Fourier transform of the autocorrelation function

image-20240427183700971

Kundert, Ken. (2006). Simulating Switched-Capacitor Filters with SpectreRF.

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

Boris Murmann, EE315B VLSI Data Conversion Circuits, Autumn 2013

- Noise Analysis in Switched-Capacitor Circuits, ISSCC 2011 / tutorials

Tania Khanna, ESE568 Fall 2019, Mixed Signal Circuit Design and Modeling URL: https://www.seas.upenn.edu/~ese568/fall2019/

Matt Pharr, Wenzel Jakob, and Greg Humphreys. 2016. Physically Based Rendering: From Theory to Implementation (3rd. ed.). Morgan Kaufmann Publishers Inc., San Francisco, CA, USA.

Bernhard E. Boser . Advanced Analog Integrated Circuits Switched Capacitor Gain Stages [https://people.eecs.berkeley.edu/~boser/courses/240B/lectures/M05%20SC%20Gain%20Stages.pdf]

R. Gregorian and G. C. Temes. Analog MOS Integrated Circuits for Signal Processing. Wiley-Interscience, 1986

Trevor Caldwell, Lecture 9 Noise in Switched-Capacitor Circuits [http://individual.utoronto.ca/trevorcaldwell/course/NoiseSC.pdf]

spectrum analyzer

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

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

image-20240522214004545

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

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

Then, 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}\)

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-20240522214340882

The solution to the scaling problem in the case of a PSD obtained from a sine-wave scaled FFT is similarly simple. All we need do is provide the value of NBW

APPENDIX A - SPECTRAL ESTIMATION - A.2 Scaling and Noise Bandwidth

Pavan, Shanthi, Richard Schreier, and Gabor Temes. (2016) 2016. Understanding Delta-Sigma Data Converters. 2nd ed. Wiley.

  • For a filter with infinitely steep roll-off, the noise bandwidth (NBW) is equal to the filter's bandwidth,
  • while for a filter with a single-pole roll-off, NBW is 2 times the 3-dB bandwidth

reference

David Herres, The difference between signal under-sampling, aliasing, and folding URL: https://www.testandmeasurementtips.com/the-difference-between-signal-under-sampling-aliasing-and-folding-faq/

Pharr, Matt; Humphreys, Greg. (28 June 2010). Physically Based Rendering: From Theory to Implementation. Morgan Kaufmann. ISBN 978-0-12-375079-2. Chapter 7 (Sampling and reconstruction)

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

1
2
3
4
5
6
7
8
git clone git@github.com:mkubecek/vmware-host-modules.git
cd vmware-host-modules/
git checkout origin/workstation-17.0.2
make -j`nproc`
sudo make install
sudo modprobe -v vmmon
sudo modprobe -v vmnet
sudo vmware-networks --start

This cascode compensation topology is popularly known as ahuja compensation

The cause of the positive zero is the feedforward current through \(C_m\).

To abolish this zero, we have to cut the feedforward path and create a unidirectional feedback through \(C_m\).

  1. Adding a resistor(nulling resistor) is one way to mitigate the effect of the feedforward current.

  2. Another approach uses a current buffer cascode to pass the small-signal feedback current but cut the feedforward current

People name this approach after the author Ahuja

The benefits of Ahuja compensation over Miller compensation are severa

  • better PSRR

  • higher unity-gain bandwidth using smaller compensation capacitor

  • ability to cope better with heavy capacitive and resistive loads

Miller's approximation

image-20240130224043511

Right-Half-Plane Zero

\[ \left[(v_i - v_o)sC_c - g_m v_i\right]R_o = v_o \] Then \[ \frac{v_o}{v_i} = -g_mR_o\frac{1-s\frac{C_c}{g_m}}{1+sR_oC_c} \] right-half-plane Zero \(\omega _z = \frac{g_m}{C_c}\)

Equivalent cap

The amplifier gain magnitude \(A_v = g_m R_o\) \[ I_\text{c,in} = (v_i - v_o)sC_c \] Then \[\begin{align} I_\text{c,in} &= (v_i + A_v v_i)sC_c \\ & = v_i s (1+A_v)C_c \end{align}\]

we get \(C_\text{in,eq}= (1+A_v)C_c\simeq A_vC_c\)

Similarly \[\begin{align} I_\text{c,out} &= (v_o - v_i)sC_c \\ & = v_o s (1+\frac{1}{A_v})C_c \end{align}\]

we get \(C_\text{out,eq}= (1+\frac{1}{A_v})C_c\simeq C_c\)

cascode compensation

image-20240817193513058

image-20240817201727109

Of course, , if the capacitance at the gate of \(M_1\) is taken into account, pole splitting is less pronounced.


including \(r_\text{o2}\)

image-20240819202642809 \[ \frac{V_{out}}{I_{in}} \approx \frac{-g_{m1}R_SR_L(g_{m2}+C_Cs)}{\frac{R_S+r_\text{o2}}{r_\text{o2}}R_LC_LC_Cs^2+g_{m1}g_{m2}R_LR_SC_Cs+g_{m2}} \] The poles as

\[\begin{align} \omega_{p1} &\approx \frac{1}{g_{m1}R_LR_SC_c} \\ \omega_{p2} &\approx \frac{g_{m2}R_Sg_{m1}}{C_L}\frac{r_\text{o2}}{R_S+r_\text{o2}} \end{align}\]

and zero is not affected, which is \(\omega_z =\frac{g_{m2}}{C_C}\)

the above model simulation result is shown below

image-20240819221653262

the zero is located between two poles

take into the capacitance at the gate of \(M_1\) and all other second-order effect

image-20240819222727276

intuitive analysis of zero

miller compensation

  • zero in the right half plane \[ g_\text{m1}V_P = sC_c V_P \]

cascode compensation

  • zero in the left half plane \[ g_\text{m2}V_X = - sC_c V_X \]

zero_loc.drawio

How to Mitigate Impact of Zero

cascode_compensation

dominant pole \[ \omega_\text{p,d} = \frac {1} {R_\text{eq}g_\text{m9}R_{L}C_{c}} \] first nondominant pole \[ \omega_\text{p,nd} = \frac {g_\text{m4}R_\text{eq}g_\text{m9}} {C_L} \] zero \[ \omega_\text{z} = (g_\text{m4}R_\text{eq})(\frac {g_\text{m9}} {C_c}) \] a much greater magnitude than \(g_\text{m9}/C_C\)

Lectures

EE 240B: Advanced Analog Circuit Design, Prof. Bernhard E. Boser [OTA II, Multi-Stage]

Papers

B. K. Ahuja, "An improved frequency compensation technique for CMOS operational amplifiers," in IEEE Journal of Solid-State Circuits, vol. 18, no. 6, pp. 629-633, Dec. 1983, doi: 10.1109/JSSC.1983.1052012.

D. B. Ribner and M. A. Copeland, "Design techniques for cascoded CMOS op amps with improved PSRR and common-mode input range," in IEEE Journal of Solid-State Circuits, vol. 19, no. 6, pp. 919-925, Dec. 1984, doi: 10.1109/JSSC.1984.1052246.

Abo, Andrew & Gray, Paul. (1999). A 1.5V, 10-bit, 14MS/s CMOS Pipeline Analog-to-Digital Converter.

Book's chapters

Design of analog CMOS integrated circuits, Behzad Razavi

  • 10.5 Compensation of Two-Stage Op Amps
  • 10.7 Other Compensation Techniques

Analog Design Essentials, Willy M.C. Sansen

  • chapter #5 Stability of operational amplifiers - Compensation of positive zero

Analysis and Design of Analog Integrated Circuits 5th Edition, Paul R. Gray, Paul J. Hurst, Stephen H. Lewis, Robert G. Meyer

  • 9.4.3 Two-Stage MOS Amplifier Compensation

CMOS Analog Circuit Design 3rd Edition, Phillip E. Allen, Douglas R. Holberg

  • 6.2.2 Miller Compensation of the Two-Stage Op Amp

reference

B. K. Ahuja, "An Improved Frequency Compensation Technique for CMOS Operational Amplifiers," IEEE 1. Solid-State Circuits, vol. 18, no. 6, pp. 629-633, Dec. 1983.

U. Dasgupta, "Issues in "Ahuja" frequency compensation technique", IEEE International Symposium on Radio-Frequency Integration Technology, 2009.

R. 1. Reay and G. T. A. Kovacs, "An unconditionally stable two-stage CMOS amplifier," IEEE 1. Solid-State Circuits, vol. 30, no. 5, pp. 591- 594, May 1995.

A. Garimella and P. M. Furth, "Frequency compensation techniques for op-amps and LDOs: A tutorial overview," 2011 IEEE 54th International Midwest Symposium on Circuits and Systems (MWSCAS), 2011, pp. 1-4, doi: 10.1109/MWSCAS.2011.6026315.

H. Aminzadeh, R. Lotfi and S. Rahimian, "Design Guidelines for Two-Stage Cascode-Compensated Operational Amplifiers," 2006 13th IEEE International Conference on Electronics, Circuits and Systems, 2006, pp. 264-267, doi: 10.1109/ICECS.2006.379776.

H. Aminzadeh and K. Mafinezhad, "On the power efficiency of cascode compensation over Miller compensation in two-stage operational amplifiers," Proceeding of the 13th international symposium on Low power electronics and design (ISLPED '08), Bangalore, India, 2008, pp. 283-288, doi: 10.1145/1393921.1393995.

Stabilizing a 2-Stage Amplifier URL:https://everynanocounts.com/2016/11/10/stabilizing-a-2-stage-amplifier/

0%