EXAM: LINEARIZED WEATHSTONE BRIDGE
DC analysis

ClearAll[Vout]

ClearAll[Vc]

Quit

KLC node A

eq1=(Vc - Vos2)/R -Ip- (Vos2 -Vref)/R  + (Vout -Vos2)/Rf == 0

KLC node B

eq2=(Vc - (Vos1 + Vos2))/(R + dR) - ((Vos1 + Vos2) - Vref)/R-Im==0

Solving the system

sol=Solve[{eq1, eq2},{Vout,Vc}]

Vout=Vout /. sol[[1,1]]

Collect[Vout,{Vos1,Vos2,Im,Ip,Vref},Factor]

Vo1=Collect[Vout,{dR},Factor]

Ideal output

Voutid=Simplify[Vout /. {Vos1->0,Vos2->0,Im->0, Ip->0}]

Effect of the first amplifier voltage offset Vos1

Voutos1=Simplify[Vout /. {Vos2->0,Im->0, Ip->0}]

Collect[Voutos1,{dR},Factor]

Effect of the second amplifier voltage offset Vos2

Voutos2=Simplify[Vout /. {Vos1->0,Im->0, Ip->0}]

Collect[Voutos2,{Vos2,Vref},Factor]

Collect[Voutos2,{dR},Factor]

Effect of leakage currents Im Ip

Voutil=Simplify[Vout /. {Vos1->0,Vos2->0}]

Collect[Voutil,{dR},Factor]

Noise analysis

Quit

eqn1=(Vc - VnRAC- VnA2)/R - (VnA2 +VnRAD)/R  + (Voutn -VnA2)/Z - inRf== 0

eqn2=(Vc +VnRCB- (VnA1 + VnA2))/(R + dR) - ((VnA1 + VnA2) - VnRBD)/R==0

sol=Solve[{eqn1, eqn2},{Voutn,Vc}]

Voutn=Voutn /. sol[[1,1]]

Voutn1=Collect[Voutn,{VnA1,VnA2, VnRAC,VnRBD,VnRAD,VnRCB,inRf},Factor]

Collect[Voutn/.{dR->0,Z->Rf/(1+C*Rf*s),inRf->VnRf/Rf},{VnA1,VnA2, VnRAC,VnRBD,VnRAD,VnRCB,VnRf,Rf/R},Factor]

Effect of RAC

VoutnRAC=Simplify[Voutn /. {inRf->0,VnA1->0, VnA2->0,VnRAD->0, VnRCB -> 0, VnRBD -> 0}]

VoutnRACC=Collect[VoutnRAC /.Z -> Rf/(1+C*Rf*s),VnRAC, Factor]

VtnRAC = 4 k T R* (Rf/R)^2 * 1 / (4*Rf * C)

Effect of RAD

VoutnRAD=Simplify[Voutn /. {inRf->0,VnA1->0, VnA2->0,VnRAC->0, VnRCB -> 0, VnRBD -> 0}]

VoutnRADC=Collect[VoutnRAD /.Z -> Rf/(1+C*Rf*s),VnRAD, Factor]

VtnRAD = 4 k T R* (Rf/R)^2 * 1 / (4*Rf * C)

Effect of RCB

VoutnRCB=Simplify[Voutn /. {inRf->0,VnA1->0, VnA2->0,VnRAC->0, VnRAD -> 0, VnRBD -> 0}]

VoutnRCBC=Collect[VoutnRCB /.Z -> Rf/(1+C*Rf*s),VnRCB, Factor]

VtnRCB = 4 k T R* (Rf/R)^2 * 1 / (4*Rf * C)

Effect of RBD

VoutnRBD=Simplify[Voutn /. {inRf->0,VnA1->0, VnA2->0,VnRAC->0, VnRAD -> 0, VnRCB -> 0}]

VoutnRBDC=Collect[VoutnRBD /.Z -> Rf/(1+C*Rf*s),VnRBD, Factor]

VtnRBD = 4 k T (dR+R)* ((dR+R)*Rf/R^2)^2 * 1 / (4*Rf * C)

Effect of Rf

VoutnRf=Simplify[Voutn /. {VnRBD->0,VnA1->0, VnA2->0,VnRAC->0, VnRAD -> 0, VnRCB -> 0}]

VoutnRf/.Z -> Rf/(1+C*Rf*s)

VoutnRfC=Collect[VoutnRf /.{Z -> Rf/(1+C*Rf*s),inRf-> VnRf/Rf},VnRf, Factor]

VtnRf = 4 k T Rf*  1 / (4*Rf * C)

Effect of A1

VoutnA1=Simplify[Voutn /. {VnRBD->0,inRf->0, VnA2->0,VnRAC->0, VnRAD -> 0, VnRCB -> 0}]

VoutnA1C=Collect[VoutnA1 /.Z -> Rf/(1+C*Rf*s),VnA1, Factor]

VtnA1= 4 k T RA* (((dR+2 R)*Rf)/R^2)^2 * 1 / (4 Rf * C)

VtnA1/.dR-> 0

Effect of A2

VoutnA2=Simplify[Voutn /. {VnRBD->0,inRf->0, VnA1->0,VnRAC->0, VnRAD -> 0, VnRCB -> 0}]

VoutnA2C=Collect[VoutnA2 /.Z -> Rf/(1+C*Rf*s),{VnA2,R^2}, Factor]

VtnA2 = ∞

Total output noise Variance

VoutnSU = VtnA1 + VtnRf + VtnRBD + VtnRAC + VtnRAD + VtnRCB

Collect[VoutnSU ,(k T/C), Factor]

Collect[VoutnSU/.dR-> 0 ,(k T/C), Factor]

Vo1

Vo1/. {Im -> (5*10^-9), Ip -> (15*10^-9), Vos1 -> 10*10^-6, Vos2 -> 10*10^-6,  R->100}

(1/100) ((1/1000)-((19 Rf)/1000000))-((dR Rf ((41/2000000)-Vref))/10000)//N

Clear[void]

Quit[]
Quit[]

eq1 = {Gt == (Rf Vref a)/R,
V2nout == k*T /Cf (4 Rf/R +1),
fc == 1/ (2 Pi Rf Cf)}

sol1 = Solve[eq1, {Cf, Rf, R}]

sol1[[1,1]]

Cf=Cf /. sol1[[1,1]]

Rf = Rf/.sol1[[1,2]]

R = R/.sol1[[1,3]]

Cf/.{Gt-> 0.2, a -> 0.004, k -> 1.3807*^-23, T -> 273,  Vref -> 1, fc -> 100, V2nout -> 0.0001^2}

Rf/.{Gt-> 0.2, a -> 0.004, k -> 1.3807*^-23, T -> 273,  Vref -> 1, fc -> 100, V2nout -> 0.0001^2}

R/.{Gt-> 0.2, a -> 0.004, k -> 1.3807*^-23, T -> 273,  Vref -> 1, fc -> 100, V2nout -> 0.0001^2}

2.100690649493001`*^7/420138

eqs1 = void == (dR Rf/R^2*Vref)/.dR -> a R T

eqs2 = Vref == 100*(R*Im + Vos1 )/.dR -> a R T

eqs3=-((Im R Rf-Ip R Rf+2 Rf Vos1-R *0)/R)==vos

sol2=Solve[{eqs1, eqs2, eqs3},{R,Vref, Rf}]

solv=sol2/.{Im-> 70*10^-9, Ip->90*10^-9, Vos1 -> 0.001, Vos2-> 0.000, a ->  0.004, T->1, void-> 0.2, vos -> 0.2*10^-3}//N

eqs4 = eqs1/.Vos2 -> 0

eq