Op-Amp convex optimization question

AI Thread Summary
The discussion revolves around understanding equation (9) from a document on convex optimization of OP-AMPs, specifically why it focuses solely on transistor channel widths (W) and lengths (L). The importance of matching geometries for transistors on the same die is emphasized to achieve good performance. Additionally, a user seeks clarification on their MATLAB cvx program, which is returning a "Failed" status, suspecting that the issue may relate to the ratio of drain current equations for NMOS in saturation. The conversation highlights the need for accurate constraints and optimization parameters in the code. Overall, the thread aims to clarify both theoretical and practical aspects of optimizing OP-AMP designs.
perplexabot
Gold Member
Messages
328
Reaction score
5
Hey all. I have a question regarding an equation in a document I am reading about convex optimization of OP-AMPs. The document is attached, the equation is of section 3.4 and the equation number is (9). Can you please explain how it came to be? I understand that i3 = i4 = i5/2 but I don't understand why W's and L's are the only thing in this equation and why this equality holds.

An explanation for equation (10) would also be nice, but (9) is more important for me!

Thank you for your time.
 

Attachments

Engineering news on Phys.org
The transistor channel width & length are the main defining properties of the transistors in that circuit, since they are all on the same die. To get good matching, you need the geometries to be the same. Maybe I'm misunderstanding your question?
 
  • Like
Likes perplexabot
berkeman said:
The transistor channel width & length are the main defining properties of the transistors in that circuit, since they are all on the same die. To get good matching, you need the geometries to be the same. Maybe I'm misunderstanding your question?
Thanks, I was wondering if that fraction was originally the ratio of two Id (drain current) equations for NMOS in saturation with everything cancelling out except for the widths and lengths?

Also, if I may, I would like to know why my cvx Matlab program is ending with "Failed" status : (
Here is my code:
Code:
% Device sizing
clear; clc;
% given variables
mun = 600*(10^-2)^2;
mup = 200*(10^-2)^2;
Vtn = 0.7;
Vtp = -0.9;
lamn = 1/0.03;
lamp = 1/0.06;
Cox = 346*10^-6;
Vomin = 0.1*5;
Vomax = 0.9*5;
Vcmmin = 2.5 - 0.25;
Vcmmax = 2.5 + 0.25;
Vdd = 5;
Vss = 0;
%cvx optimization
cvx_begin gp
    variables L1 L2 L3 L4 L5 L6 L7 L8 W1 W2 W3 W4 W5 W6 W7 W8 Ib I5 I7 I1 I2
    minimize (5*(Ib+I5+I7));
    subject to
        %symmetry and matching
        W1/W2 == 1;
        L1/L2 == 1;
        W3/W4 == 1;
        L3/L4 == 1;
        L5/L7 == 1;
        L5/L6 == 1;
        %physical size limits
        L1 >= 0.8*10^-6;
        L2 >= 0.8*10^-6;
        L3 >= 0.8*10^-6;
        L4 >= 0.8*10^-6;
        L5 >= 0.8*10^-6;
        L6 >= 0.8*10^-6;
        L7 >= 0.8*10^-6;
        L8 >= 0.8*10^-6;
        W1 >= 2*10^-6;
        W2 >= 2*10^-6;
        W3 >= 2*10^-6;
        W4 >= 2*10^-6;
        W5 >= 2*10^-6;
        W6 >= 2*10^-6;
        W7 >= 2*10^-6;
        W8 >= 2*10^-6;
        %area limits
        L1*W1 + L2*W2 + L3*W3 + L4*W4+ L5*W5 + L6*W6 + L7*W7 <= 10000*(10^-6)^2;
        %input offset requirements
        (W3/L3)/(W6/L6)== (1/2)*((W5/L5)/(W7/L7));
        (W4/L4)/(W6/L6)== (1/2)*((W5/L5)/(W7/L7));
        %bias conditions
        I5 == (W5*L8*Ib)/(L5*W8);
        I7 == (W7*L8*Ib)/(L7*W8);
        I1 == I5/2;
        %more bias conditions : p
        sqrt((I1*L3)/((mun*Cox)/(2*W3))) <= Vcmmin - Vss - Vtp - Vtn;
        sqrt((I2*L3)/((mun*Cox)/(2*W3))) <= Vcmmin - Vss - Vtp - Vtn;
        sqrt((I1*L1)/((mup*Cox)/(2*W1))) + sqrt((I5*L5)/((mup*Cox)/(2*W5))) <= Vdd-Vcmmax + Vtp;
        sqrt((I7*L6)/((mun*Cox)/(2*W6))) <= Vomin - Vss;
        sqrt((I7*L7)/((mup*Cox)/(2*W7))) <= Vdd - Vomax;
        %small sig tf constraints
        Av = (2*Cox)/((lamn+lamp)^2)*sqrt(mun*mup*((W2*W6)/(L2*L6*I1*I7)));
cvx_end

All these constraints are from the document in my OP. Also the code is based on example 7.2 (page 24 of the document).
 
Last edited:
BUMP.

Anyone have a clue what I am doing wrong here? I feel like I am missing something big. I will dedicate some more time to it today. Any help will be greatly appreciated.
 
Hi all I have some confusion about piezoelectrical sensors combination. If i have three acoustic piezoelectrical sensors (with same receive sensitivity in dB ref V/1uPa) placed at specific distance, these sensors receive acoustic signal from a sound source placed at far field distance (Plane Wave) and from broadside. I receive output of these sensors through individual preamplifiers, add them through hardware like summer circuit adder or in software after digitization and in this way got an...
I have recently moved into a new (rather ancient) house and had a few trips of my Residual Current breaker. I dug out my old Socket tester which tell me the three pins are correct. But then the Red warning light tells me my socket(s) fail the loop test. I never had this before but my last house had an overhead supply with no Earth from the company. The tester said "get this checked" and the man said the (high but not ridiculous) earth resistance was acceptable. I stuck a new copper earth...
I am not an electrical engineering student, but a lowly apprentice electrician. I learn both on the job and also take classes for my apprenticeship. I recently wired my first transformer and I understand that the neutral and ground are bonded together in the transformer or in the service. What I don't understand is, if the neutral is a current carrying conductor, which is then bonded to the ground conductor, why does current only flow back to its source and not on the ground path...
Back
Top