solrcarlos
Newbie level 5
- Joined
- Aug 6, 2012
- Messages
- 8
- Helped
- 1
- Reputation
- 2
- Reaction score
- 1
- Trophy points
- 1,283
- Activity points
- 1,322
Hello guys,
I am designing a differential mixer and I am facing some problems with measuring its conversion gain and IIP3. Trying to solve this problem I am using a block in verilogA of an ideal mixer, but the IIP3 and ConvGain set in the block are not the one I am measuring. Hereby is the code used.
What is wrong with all these ? Thank you so much guys!
- - - Updated - - -
Just to add information to the problem.
View attachment IIP3_A1_A3_v2.png
Should I just consider that IIP3 and the gain as the OIP-IIP3 given by the graphic?
I am designing a differential mixer and I am facing some problems with measuring its conversion gain and IIP3. Trying to solve this problem I am using a block in verilogA of an ideal mixer, but the IIP3 and ConvGain set in the block are not the one I am measuring. Hereby is the code used.
Code:
****** INPUT SPECTRUM
.EXTRACT FSST LABEL=VDB_RF YVAL(VDB(RF+,RF-), F_RF)
.EXTRACT FSST LABEL=PDBM_RF YVAL(PDBM(VIN), F_RF)
****** OUTPUT SPECTRUM
.EXTRACT FSST LABEL=VDB_IF YVALl(VDB(IF+,IF-), F_IF)
.EXTRACT FSST LABEL=PDBM_IF YVAL(PDBM(Rload), F_IF)
****** CONVERSION GAIN
.EXTRACT FSST LABEL=AV_DB MEAS(VDB_IF) - MEAS(VDB_RF)
.EXTRACT FSST LABEL=AP_DB MEAS(PDBM_IF) - MEAS(PDBM_RF)
****** IIP3 CALCULATIONS ******
.EXTRACT FSST LABEL=O1 yval(VDB(IF+,IF-), F_IF)
.EXTRACT FSST LABEL=O3_A yval(VDB(IF+,IF-), F_LO - (2*F_RF - F_FUND3) )
.EXTRACT FSST LABEL=O3_B yval(VDB(IF+,IF-), F_LO - (2*F_FUND3 - F_RF) )
.EXTRACT FSST LABEL=IM3_1 { meas(O1) - ( meas(O3_A) + meas(O3_B) )/2 }
.EXTRACT FSST LABEL=IIP3_A3 { meas(IM3_1)/2 + Pin }
- - - Updated - - -
Just to add information to the problem.
View attachment IIP3_A1_A3_v2.png
Should I just consider that IIP3 and the gain as the OIP-IIP3 given by the graphic?
Last edited by a moderator: