SlideShare a Scribd company logo
1 of 15
Group delay
Matlab vs cadence
theory
• Nice reference
• https://en.wikipedia.org/wiki/Group_delay_and_phase_delay
• Phase delay
Hand analysis for single pole (RC) case
Group delay phase delay
• Youtube link for following equations
• https://www.youtube.com/watch?v=m9tASJ9DaTY
One pole case
• Pole – 5e9
• Default cadence function is not giving expected results
• Written my own measurements
• Verfied the measurements vs hand analysis results from equation in above slide
• The same circuit as below is used for one pole and one zero case
• Inductor is made ‘0” for one pole case
procedure
Hand analysis
Comparing group delay between hand
analysis and cadence measurements
Matlab one pole case
• f_z1=[10^80]; % zero at infinite location
• f_p1=5e9;
• new=[];
• for i=1 % only one zero pole combination
• k=f_p1/f_z1(i);
• t_freq=logspace(1,11,100000);
• w_l=2*pi*t_freq;
• [b,a] = zp2tf(f_z1(i),f_p1,k);
• h=freqs(b,a,w_l);
• mag=20*log10(abs(h));
• subplot(2,1,1)
• semilogx(w_l,mag);
• hold on;
• phase = angle(h);
• pdiff =diff(phase);
• w_l_new=diff(w_l);
• grpdel = (pdiff./w_l_new)/(2*pi); % adding 2*pi since 2*pi get cancelled
between pdiff and w_l_new
• grpdel_max=max(grpdel);
• grpdel_min=min(grpdel);
• grpdel_pp=grpdel_max-grpdel_min
• new(i,1)=grpdel_pp;
• subplot(2,1,2)
• semilogx(w_l(1:end-1),grpdel)
• xlabel('Frequency (rad/s)')
• ylabel('Group delay (s)')
• end
• hold off
1. No matlab codes readily available for group delay
2. Default matlab codes (grpdelay) are for digital filters
1. https://www.mathworks.com/help/signal/ref/grpdelay.html
• Grpdelay function doesn’t give accurate results
• Waveform shapes from my code are same as that of spectre and also
handanalysis
• Got confused so much since both groupDelay (spectre) and grpdelay
(matlab) are inaccurate
• Finally settled with my methods by comparing with handanalysis
Matlab one pole case - results
One pole and one zero case
• Pole – 5e9
• Zero – 2e9, 3e9,4e9,5e9,6e9,7e9
• Circuit to produce a zero (R and L) and a pole (R and C)
• Dc gain = 1 (R1.gm.R1)
• Gm=R1*R1
spectre results
• As zero location is moved, dc gain is 0 but peak ac gain is decreasing
• Group delay peak to peak (gdpp) is highest when zero is at 2G
• 3G vs 7G – delta is 2G but gdpp is different
Matlab code
• f_z1=[2e9,3e9,4e9,5e9,6e9,7e9];
• f_p1=5e9;
• new=[];
• clf;
• for i=1:1:6
• k=f_p1/f_z1(i);
• t_freq=logspace(1,11,100000);
• w_l=2*pi*t_freq;
• [b,a] = zp2tf(f_z1(i),f_p1,k);
• h=freqs(b,a,w_l);
• mag=20*log10(abs(h));
• subplot(2,1,1)
• semilogx(w_l,mag);
• hold on;
• phase = angle(h);
•
• pdiff =diff(phase);
• w_l_new=diff(w_l);
• grpdel = (pdiff./w_l_new)./(2*pi);
• grpdel_max=max(grpdel);
• grpdel_min=min(grpdel);
• grpdel_pp=grpdel_max-grpdel_min;
• new(i,1)=grpdel_pp;
• subplot(2,1,2)
• semilogx(w_l(1:end-1),grpdel)
• xlabel('Frequency (rad/s)')
• ylabel('Group delay (s)')
• hold on;
• end
• hold off
• fprintf("%3.2e %s",new(1));
• fprintf("%3.2e %s",new(2));
• fprintf("%3.2e %s",new(3));
• fprintf("%3.2e %s",new(4));
• fprintf("%3.2e %s",new(5));
• fprintf("%3.2e %s",new(6));
Matlab results
• Frequency response matches with spectre results
• Peak gain when zero @ 2GHz – 7.94dB and 7Ghz - -2.9dB
• Matlab and spectre agree with each other
2 stage ctle, 2 zeroes, 4 poles
• f_z1=2.5e9;
• f_z2=2.75e9;
• f_p1=6e9;
• f_p2=7e9;
• f_p3=7e9;
• f_p4=8e9;
• f_p5=9e9;
• clf;
•
• k=(f_p1*f_p2*f_p3*f_p4*f_p5)/(f_z1*f_z2);
• f_p=[f_p1,f_p2,f_p3,f_p4,f_p5];
• f_z=[f_z1,f_z2]';
• t_freq=logspace(1,11,100000);
• w_l=2*pi*t_freq;
• [b,a] = zp2tf(f_z,f_p,k);
• h1=freqs(b,a,t_freq);
• hoverall=h1.*h1;
• mag1=20*log10(abs(h1));
• magoverall=20*log10(abs(hoverall));
• peaking=max(mag);
• new(i,1)=peaking;
• subplot(2,1,1)
• semilogx(t_freq,mag1);
• hold on
• subplot(2,1,2)
• semilogx(t_freq,magoverall);
• hold on;
• fprintf("%3.2f %s",new(1));
• Intention is to replicate fx3g2 ctle at 0 dc gain and peaking of 12dB
• See that the bw is degrading with 2 stages even though peak gain is increasing
• Get a rough idea of where poles & zeroes are
• 3 poles are obvious in the first stage, added 4,5 to model 3rd stage
Shunt peaking
Matlab code
• R=100;
• L=[0:1:10].*(10^-9);
• C=600e-15;
• clf;
• for i=1:1:length(L)
• num = [L(i) R];
• den=[L(i)*C R*C 1];
• H = tf(num,den);
• figure(1);
• hold on;
• bode(H)
• Bd = bode(H);
• dbdrop = -3;
• fb(i) = bandwidth(H,dbdrop);
• max_gain = max(abs(20*log10(bode(H))));
• size_Bd=size(Bd);
• dc_gain_array=reshape(Bd,[1,size_Bd(3)]);
• dc_gain=20*log10(dc_gain_array(1));
• peaking(i)=max_gain-dc_gain;
• end
• for i=1:1:length(L)
• fprintf("(%3.2f %3.4e) %s", peaking(i),fb(i))
• end
• hold off
• Inductor is swept from 0H to 5nH
• Peaking and bandwidth increase with inductance value and reaches 1.5dB, then peaking continues to increase
while band width decreases
• (0.00 1.6627e+10) (0.00 2.0567e+10) (0.00 2.6522e+10) (0.24 2.9946e+10) (1.24 3.0747e+10) (2.30
3.0638e+10) (3.30 3.0263e+10) (4.21 2.9829e+10) (5.04 2.9404e+10) (5.79 2.9012e+10) (6.48 2.8657e+10) >>
Bw decreases

More Related Content

Similar to group_delay_exp.pptx

Similar to group_delay_exp.pptx (20)

Root Locus Method - Control System - Bsc Engineering
Root Locus Method - Control System - Bsc EngineeringRoot Locus Method - Control System - Bsc Engineering
Root Locus Method - Control System - Bsc Engineering
 
Root Locus Method - Control System - Bsc Engineering
Root Locus Method - Control System - Bsc EngineeringRoot Locus Method - Control System - Bsc Engineering
Root Locus Method - Control System - Bsc Engineering
 
Lecture 21 problem reduction search ao star search
Lecture 21 problem reduction search ao star searchLecture 21 problem reduction search ao star search
Lecture 21 problem reduction search ao star search
 
Lecture 21 problem reduction search ao star search
Lecture 21 problem reduction search ao star searchLecture 21 problem reduction search ao star search
Lecture 21 problem reduction search ao star search
 
Understanding CTLE
Understanding CTLEUnderstanding CTLE
Understanding CTLE
 
Understanding CTLE
Understanding CTLEUnderstanding CTLE
Understanding CTLE
 
parallel programming.ppt
parallel programming.pptparallel programming.ppt
parallel programming.ppt
 
parallel programming.ppt
parallel programming.pptparallel programming.ppt
parallel programming.ppt
 
Druinsky_SIAMCSE15
Druinsky_SIAMCSE15Druinsky_SIAMCSE15
Druinsky_SIAMCSE15
 
Druinsky_SIAMCSE15
Druinsky_SIAMCSE15Druinsky_SIAMCSE15
Druinsky_SIAMCSE15
 
Design and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture NotesDesign and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture Notes
 
Design and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture NotesDesign and Analysis of Algorithms Lecture Notes
Design and Analysis of Algorithms Lecture Notes
 
CH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdfCH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdf
 
CH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdfCH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdf
 
Dsp manual
Dsp manualDsp manual
Dsp manual
 
Dsp manual
Dsp manualDsp manual
Dsp manual
 
Vectorization in ATLAS
Vectorization in ATLASVectorization in ATLAS
Vectorization in ATLAS
 
Vectorization in ATLAS
Vectorization in ATLASVectorization in ATLAS
Vectorization in ATLAS
 
Contrastive Divergence Learning
Contrastive Divergence LearningContrastive Divergence Learning
Contrastive Divergence Learning
 
Contrastive Divergence Learning
Contrastive Divergence LearningContrastive Divergence Learning
Contrastive Divergence Learning
 

More from SaiGouthamSunkara

More from SaiGouthamSunkara (14)

Phase noise transfer functions.pptx
Phase noise transfer      functions.pptxPhase noise transfer      functions.pptx
Phase noise transfer functions.pptx
 
CTLE pole zero precise analysis.pptx
CTLE pole zero precise     analysis.pptxCTLE pole zero precise     analysis.pptx
CTLE pole zero precise analysis.pptx
 
Real 2nd order LC PLL loop analysis.pptx
Real 2nd order LC PLL loop analysis.pptxReal 2nd order LC PLL loop analysis.pptx
Real 2nd order LC PLL loop analysis.pptx
 
OPAMP based Charge Pump intuition.pptx
OPAMP based Charge Pump   intuition.pptxOPAMP based Charge Pump   intuition.pptx
OPAMP based Charge Pump intuition.pptx
 
Why not dfe only in 28dB channel.pptx
Why not dfe only in    28dB channel.pptxWhy not dfe only in    28dB channel.pptx
Why not dfe only in 28dB channel.pptx
 
basic Bang bang Phase Frequency Det.pptx
basic Bang bang Phase Frequency Det.pptxbasic Bang bang Phase Frequency Det.pptx
basic Bang bang Phase Frequency Det.pptx
 
Noise vs phase noise relation.pptx
Noise    vs    phase noise relation.pptxNoise    vs    phase noise relation.pptx
Noise vs phase noise relation.pptx
 
Improving Phase noise in ring vco.pptx
Improving Phase noise in   ring vco.pptxImproving Phase noise in   ring vco.pptx
Improving Phase noise in ring vco.pptx
 
Transmitters split LDO architecture.pptx
Transmitters split LDO architecture.pptxTransmitters split LDO architecture.pptx
Transmitters split LDO architecture.pptx
 
NMOS LDO Cc effect on PSRR, poles zeros
NMOS LDO Cc effect on PSRR, poles  zerosNMOS LDO Cc effect on PSRR, poles  zeros
NMOS LDO Cc effect on PSRR, poles zeros
 
Analog 2nd order CDR JTOL derivation.pptx
Analog 2nd order CDR JTOL derivation.pptxAnalog 2nd order CDR JTOL derivation.pptx
Analog 2nd order CDR JTOL derivation.pptx
 
CTLE Transfer curve vout/vin with degene
CTLE Transfer curve vout/vin with degeneCTLE Transfer curve vout/vin with degene
CTLE Transfer curve vout/vin with degene
 
LFEQ CTLE and speculative DFE.pptx
LFEQ CTLE and speculative DFE.pptxLFEQ CTLE and speculative DFE.pptx
LFEQ CTLE and speculative DFE.pptx
 
folded_cascode ahuja compensation.pptx
folded_cascode ahuja compensation.pptxfolded_cascode ahuja compensation.pptx
folded_cascode ahuja compensation.pptx
 

Recently uploaded

Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Christo Ananth
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
rknatarajan
 

Recently uploaded (20)

Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur EscortsRussian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
Russian Call Girls in Nagpur Grishma Call 7001035870 Meet With Nagpur Escorts
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTINGMANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
MANUFACTURING PROCESS-II UNIT-1 THEORY OF METAL CUTTING
 
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and workingUNIT-V FMM.HYDRAULIC TURBINE - Construction and working
UNIT-V FMM.HYDRAULIC TURBINE - Construction and working
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 

group_delay_exp.pptx

  • 2. theory • Nice reference • https://en.wikipedia.org/wiki/Group_delay_and_phase_delay • Phase delay
  • 3. Hand analysis for single pole (RC) case Group delay phase delay • Youtube link for following equations • https://www.youtube.com/watch?v=m9tASJ9DaTY
  • 4. One pole case • Pole – 5e9 • Default cadence function is not giving expected results • Written my own measurements • Verfied the measurements vs hand analysis results from equation in above slide • The same circuit as below is used for one pole and one zero case • Inductor is made ‘0” for one pole case procedure Hand analysis
  • 5. Comparing group delay between hand analysis and cadence measurements
  • 6. Matlab one pole case • f_z1=[10^80]; % zero at infinite location • f_p1=5e9; • new=[]; • for i=1 % only one zero pole combination • k=f_p1/f_z1(i); • t_freq=logspace(1,11,100000); • w_l=2*pi*t_freq; • [b,a] = zp2tf(f_z1(i),f_p1,k); • h=freqs(b,a,w_l); • mag=20*log10(abs(h)); • subplot(2,1,1) • semilogx(w_l,mag); • hold on; • phase = angle(h); • pdiff =diff(phase); • w_l_new=diff(w_l); • grpdel = (pdiff./w_l_new)/(2*pi); % adding 2*pi since 2*pi get cancelled between pdiff and w_l_new • grpdel_max=max(grpdel); • grpdel_min=min(grpdel); • grpdel_pp=grpdel_max-grpdel_min • new(i,1)=grpdel_pp; • subplot(2,1,2) • semilogx(w_l(1:end-1),grpdel) • xlabel('Frequency (rad/s)') • ylabel('Group delay (s)') • end • hold off 1. No matlab codes readily available for group delay 2. Default matlab codes (grpdelay) are for digital filters 1. https://www.mathworks.com/help/signal/ref/grpdelay.html • Grpdelay function doesn’t give accurate results • Waveform shapes from my code are same as that of spectre and also handanalysis • Got confused so much since both groupDelay (spectre) and grpdelay (matlab) are inaccurate • Finally settled with my methods by comparing with handanalysis
  • 7. Matlab one pole case - results
  • 8. One pole and one zero case • Pole – 5e9 • Zero – 2e9, 3e9,4e9,5e9,6e9,7e9 • Circuit to produce a zero (R and L) and a pole (R and C) • Dc gain = 1 (R1.gm.R1) • Gm=R1*R1
  • 9. spectre results • As zero location is moved, dc gain is 0 but peak ac gain is decreasing • Group delay peak to peak (gdpp) is highest when zero is at 2G • 3G vs 7G – delta is 2G but gdpp is different
  • 10. Matlab code • f_z1=[2e9,3e9,4e9,5e9,6e9,7e9]; • f_p1=5e9; • new=[]; • clf; • for i=1:1:6 • k=f_p1/f_z1(i); • t_freq=logspace(1,11,100000); • w_l=2*pi*t_freq; • [b,a] = zp2tf(f_z1(i),f_p1,k); • h=freqs(b,a,w_l); • mag=20*log10(abs(h)); • subplot(2,1,1) • semilogx(w_l,mag); • hold on; • phase = angle(h); • • pdiff =diff(phase); • w_l_new=diff(w_l); • grpdel = (pdiff./w_l_new)./(2*pi); • grpdel_max=max(grpdel); • grpdel_min=min(grpdel); • grpdel_pp=grpdel_max-grpdel_min; • new(i,1)=grpdel_pp; • subplot(2,1,2) • semilogx(w_l(1:end-1),grpdel) • xlabel('Frequency (rad/s)') • ylabel('Group delay (s)') • hold on; • end • hold off • fprintf("%3.2e %s",new(1)); • fprintf("%3.2e %s",new(2)); • fprintf("%3.2e %s",new(3)); • fprintf("%3.2e %s",new(4)); • fprintf("%3.2e %s",new(5)); • fprintf("%3.2e %s",new(6));
  • 11. Matlab results • Frequency response matches with spectre results • Peak gain when zero @ 2GHz – 7.94dB and 7Ghz - -2.9dB • Matlab and spectre agree with each other
  • 12. 2 stage ctle, 2 zeroes, 4 poles • f_z1=2.5e9; • f_z2=2.75e9; • f_p1=6e9; • f_p2=7e9; • f_p3=7e9; • f_p4=8e9; • f_p5=9e9; • clf; • • k=(f_p1*f_p2*f_p3*f_p4*f_p5)/(f_z1*f_z2); • f_p=[f_p1,f_p2,f_p3,f_p4,f_p5]; • f_z=[f_z1,f_z2]'; • t_freq=logspace(1,11,100000); • w_l=2*pi*t_freq; • [b,a] = zp2tf(f_z,f_p,k); • h1=freqs(b,a,t_freq); • hoverall=h1.*h1; • mag1=20*log10(abs(h1)); • magoverall=20*log10(abs(hoverall)); • peaking=max(mag); • new(i,1)=peaking; • subplot(2,1,1) • semilogx(t_freq,mag1); • hold on • subplot(2,1,2) • semilogx(t_freq,magoverall); • hold on; • fprintf("%3.2f %s",new(1)); • Intention is to replicate fx3g2 ctle at 0 dc gain and peaking of 12dB • See that the bw is degrading with 2 stages even though peak gain is increasing • Get a rough idea of where poles & zeroes are • 3 poles are obvious in the first stage, added 4,5 to model 3rd stage
  • 14. Matlab code • R=100; • L=[0:1:10].*(10^-9); • C=600e-15; • clf; • for i=1:1:length(L) • num = [L(i) R]; • den=[L(i)*C R*C 1]; • H = tf(num,den); • figure(1); • hold on; • bode(H) • Bd = bode(H); • dbdrop = -3; • fb(i) = bandwidth(H,dbdrop); • max_gain = max(abs(20*log10(bode(H)))); • size_Bd=size(Bd); • dc_gain_array=reshape(Bd,[1,size_Bd(3)]); • dc_gain=20*log10(dc_gain_array(1)); • peaking(i)=max_gain-dc_gain; • end • for i=1:1:length(L) • fprintf("(%3.2f %3.4e) %s", peaking(i),fb(i)) • end • hold off • Inductor is swept from 0H to 5nH • Peaking and bandwidth increase with inductance value and reaches 1.5dB, then peaking continues to increase while band width decreases • (0.00 1.6627e+10) (0.00 2.0567e+10) (0.00 2.6522e+10) (0.24 2.9946e+10) (1.24 3.0747e+10) (2.30 3.0638e+10) (3.30 3.0263e+10) (4.21 2.9829e+10) (5.04 2.9404e+10) (5.79 2.9012e+10) (6.48 2.8657e+10) >>