EEC210 Diff. Pair Simulation - Problem Set #3 Problem #4 * * Amplifier parameters * .param gm1=1m gm2=1m .param r1=10.1k r2=9.9k .param rtail=1meg * * Amplifier Circuit * .subckt amp (i1 i2 o1 o2) gm1 o1 t i1 t gm1 gm2 o2 t i2 t gm2 r1 o1 0 r1 r2 o2 0 r2 rtail t 0 rtail .ends amp * * Two identical copies of the amplifier are used. One is used for a * pure dm input. The other is used for a pure cm input. * * AMPLIFIER WITH DM INPUT * xdm (i1d i2d o1d o2d) amp vi1d i1d 0 halfvdm ei2d i2d 0 i1d 0 -1 .param halfvdm=0.5 * * AMPLIFIER WITH CM INPUT * xcm (i1c i2c o1c o2c) amp ei1c i1c 0 i1d 0 2 ei2c i2c 0 i1c 0 1 * * ANALYSIS * .dc vi1d 0 halfvdm halfvdm .print dc v(o1d, o2d) v(o1d) v(o2d) .print dc v(o1c, o2c) v(o1c) v(o2c) .measure dc a_dm find v(o1d, o2d) at=halfvdm .measure dc a_cm find par('(v(o1c)+v(o2c))/2.') at=halfvdm .measure dc a_cm2dm find v(o1c, o2c) at=halfvdm .measure dc a_dm2cm find par('(v(o1d)+v(o2d))/2.') at=halfvdm .measure a_dm/a_cm param='a_dm/a_cm' .measure a_dm/a_cm2dm param='a_dm/a_cm2dm' .measure a_dm/a_dm2cm param='a_dm/a_dm2cm' .end