Post Go back to editing

ADF4371 with HMC1031/ADF4002, 20dB Phase Noise hit at 100Hz Foffset


I have an eval for the ADF4371 and I'm using an HMC1031 eval to lock the 100MHz ref to a precision 10MHz OCXO.  I am generating an 18GHz LO.  As seen here:

The problem here is measured PN at 100Hz offset.  With the on-board crystal reference PN @ 100Hz = -87dBc/Hz.  With HMC1031 PN @ 100Hz = -67dBc/Hz.

Notable design parameters:

- HMC1031 Loop BW set to 10Hz as outlined in the spec sheet page 12.

- 100MHz VCXO, CVHD-950, CMOS output

- The measure slew rate from the HMC1031/CVHD-950 better than on board 100MHz reference.

Thanks in advance!


Added other parts to title
[edited by: aandrews at 4:14 PM (GMT -4) on 24 Sep 2021]
  • Hi Chris,

    The Flicker FOM of HMC1031 is -252dBc/Hz. This gives -112dBc/Hz @ 100Hz offset @ 100MHz output.
    PNFLICK = Flicker FOM + 20log(fVCXO) − 10log(fOFFSET)

    If this is transferred to 18GHz;
    -112 -20log(18G/100M) = -67dBc/Hz.

    If I did not make any mistake in calculations, math says that your measurement is very accurate. The contributions from other sources (OCXO, VCXO, PLL floor FOM, loop filter) are not significant.

    When using CVHD in open loop, I would also expect to see something close to -87dBc/Hz. But it is possible that the instrument cannot track the signal as you advised. Perhaps you can try to force Vtune to a mid-level instead of connecting it to GND. Min and max levels might be problematic.


  • Hi Kazim,

    So based on the recommendations here:

    It looks like the ADF4002 would be a good fit to improve my phase noise performance by an additional 7dB based on the improved 1/f FOM of -259dBc/Hz of the ADF4002 vs. -252dBc/Hz for the HMC1031.

    However, I am not able to realize the performance suggested by the ADF4002 model in ADIsimPLL.  I am seeing generally the same performance with both the ADF4002 and the HMC1031.  I've been through a couple iterations on the loop filter and have double checked the setting in the Integer N software.  So I'm kind of stuck, any suggestions?



  • Hi Chris,

    Is it possible that you are around the measurement limits of your signal source analyzer? 


  • Hi Kudret,

    For the ADF4002 or the HMC1031 at 100MHz yes.  But at 18GHz output from the ADF4371 is definitely in the measurement range.  Switching between the 4002 and the 1031 as reference for the ADF4371 PN performance is degraded using the 4002 at all offsets.



  • Hi Chris,

    HMC1031 is dominating element for the 100Hz PN.

    When using ADF4002, it is possible that OCXO, VCXO and other elements are also contributing. CVHD-950 datasheet typical spec is -119dBc/Hz at 100Hz offset for 100MHz output. Can you please check the PN of OCXO? Did you model these components in ADIsimPLL when simulating your circuit?

    At these low levels supply noise may also affect the measurements.How do you power the ADF4002 and CVHD-950, are you using LDOs? Can you check with different bench power supplies? Is it possible to share the screenshot of your measurements?

    Regards, Kazim

  • Hi Kazim,

    I do not have an instrument that can measure PN of an OCXO.  So I rely on the measurements at RF to imply the PN at the reference frequency.

    I did model the 4002 in ADIsimPLL I can share if you would like to see it.  The SW shows -118dBc/Hz at 100Hz offset.  This would imply -72dBc/Hz at 18GHz.  This is acceptable if I could realize it.

    I am powering the ADF4002 eval unit from bench supplies.  I will try some other supplies and see if there is any improvements seen.  I will also share some screenshots of the measurements soon.



  • Hi Kazim,

    As seen below I was able to realize some improvement in PN performance of the ADF4002 by reducing power supply noise.  PN measured at 18GHz.

    PN plot:

    However, by implementing similar changes to the 1031 circuit I was able to improve the performance of that as well and it still outperforms the 4002.

Reply Children
  • Hi Chris,

    Using the battery as the supply is the best. Good to see that worked fine. It looks like the loop bandwidth of two setups are highly different.

    In HMC1031 measurement, the slope is 20dB/decade which is probably the PN of on-board VCXO. Then I would guess the LBW is very narrow, around 10Hz. Also I cannot see any filter corner for first loop, just a corner for ADF4371.

    On the other hand, the 10dB/decade slope indicates the 1/f noise of the ADF4002 and there is a corner around 5kHz which supposed to be the LBW. What is the simulated LBW in ADIsimPLL for ADF4002? What is the VCO gain that you used for simulation?

    Regards, Kazim

  • Hi Chris,

    Could you also please send your 4 writes to ADF4002 for the first setup too?



  • Hi Kazim,

    Yes, you are correct the LBW for the 1031 is set to 10Hz and the 4002 is 5kHz.  I initially tried to design a 10Hz loop filter for the 4002 but it was looking like the values were unrealizable or unusually large at least.  So I set LBW to 5kHz thinking the 100Hz offset was going to be dominated by the chip anyway and I could revisit the LBW after I confirmed the performance.  I will take another look at this.

    Here is the tuning gain used for the SimPLL model, data points are measured:

  • Hi Alex,

    I did not write any code to program the 4002 yet so I'm not sure how the data is being written.  I am using the SW provided with the eval kit at the moment.

    Here are the settings and reg values:

  • Were you able to compare HMC1031 vs ADF4002 with similar LBW filters? Also could you send your ADIsimPLL files for both the designs

  • Hi Alex,

    I do not think the HMC1031 is available to simulate in ADIsimPLL.  I am using it on an eval card set up for 10Hz LBW as per the data sheet.

    As for the ADF4002 the odd thing is the lower the LBW the worse the low end noise becomes as shown below:

    LBW = 1KHz

    LBW = 10Hz

    �חA�חA������>�Q����?.@�@Y@@�@�sA@.@.��cAcustom�?@�@j�@CPP_3CR�3 poles for 4th order loop
    Reversed form of common passive filter, same spur attenuation
    Reduced phase noise, can increase locktime if R2 not smallY@I@$@�Y�.5@@-('S��@�OA�������?ADF4002���<�?�?*@�?�׷A _��A�@�9@p�@|�@�@�?�?`s��?�?�?�k�*�(>0�k�*�(>�A:��9>i�:�0�yU>H�����z>@�]�I�,@�?��A@@�˘A{�G�zt?0{�G�zD?{�G�zT?���Q�^?{�G�zd?������i?���Q�n?�Q���q?{�G�zt?�k�@,i�)+P>I�����Z>@0@@�O@����MbP?{�G�zD?0{�G�zD?{�G�zT?���Q�^?{�G�zd?������i?���Q�n?�Q���q?{�G�zt?custom��&�.>����ư>e��A�?T�@�חA@=חA�חAp�~�=<�?p��A{�G�z�?�ߔA�(\����?�)�A��Q��?`l�A�������?કA
    ףp=@p{�A\���(\
    �cA�?PD Freq.�cA�̌?j�@�?0@HzODesign FreqS�חA�̌?.�A�?0PHzODesign FreqMax Freqs�חA�̌?���A�?0PHzOMin Freqs�חA�̌?�חA�?0PHzORef Divider�?�̌?y@�?@OChannel Spc.�cA�̌?j�@�?0@HzOModulus�̌?�?�?@OdisabledRef DoublerOdisabledenabledModulus2�̌?�?�?@O
    Ref Div (Ext)�?�̌?�?�?@O
    ףp=@\���(\
    ~C����MQ[ǫ@A+'�E`��ߒY\YdA��mu-Ah�f>6�qAm��ƃq����2.�dAP:�by�X���	u�]�ۨ e�RAc�*Aѿ2�kGW���!��@A��!��A�#�2^�P[A�=��z�W���$�'A�m۞�VA۶m۶c_AX	�����customVCO�N2 point
    Tuning Law�N
    Kv (ideal)2 pointDatasheet KvTablef(V0)�חA�̌?�חA�?0PHz�NF1=חA�̌?W��A�?0PHz�NF2�חA�̌?��A�?0PHz�NKvT�@�̌?�SA�?0@Hz/V�NV1�̌?�������?�?0@V�NV2@�̌?@�?0@V�N
    Input Cap.p�~�=�̌?�����|�=�?0@F�N
    Point / FloorPhase Noise8ONoneCorner / Floor
    Point / FloorLeeson
    Test Freq.�חA�̌?�חA�?0@Hz8ONoise Figure@�̌?@�?0@dB8OCorner Freq.j�@�̌?j�@�?0@Hz8OFlicker Corner@�@�̌?�?0@Hz8OPN Floor�d��̌?�d�@0@dBc/Hz8OPhase Noise`c��̌?Y�@0@dBc/Hz8O  at frequency��@�̌?��@�?0@Hz8OResonator Power�̌?�?0@dBm8OLoaded Q>@�̌?I@�?0@8Ocustom��&�.>����ư>e��A�?T�@�חA@=חA�חAp�~�=<�?p��A{�G�z�?�ߔA�(\����?�)�A��Q��?`l�A�������?કA
    ףp=@p{�A\���(\
    ףp@�F��A@@��A�d�j�@@�@`c���@>@@�חA��&�.>�?L(ext)��&�.>�̌?��&�.>�?0@H�N	Divider N�?�̌?�?�?@�NTuning Band�NV0�?�̌?�?0@V�NDriver Current�̌?�?0@A�N�?Y@I@$@�Y�.5@@-('S��@�OA�������?CPP_3CRPhase MarginSpecify:�NPhase MarginPole / Zero
    ComponentsLoop Bandwidth$@�̌?��@�?0@Hz�NPhase MarginI@�̌?�F@�?0@deg�N	Pole Loc.�Y�.5@@�̌?���Y^�@�?0@Hz�N	Last PoleY@�̌?�@�?0@Hz�N	Zero Loc.-('S��@�̌?�kbN�@�?0@Hz�NPole 3 Loc.�OA�̌?�OA�?0@Hz�NQ�������?�̌?�������?�?@�NC1
    s�?�̌?:�0�yE>�?0@F�NC29���}Q?�̌?H�����z>�?0@F�NC3~|sw#�>�̌?��&�.>�?0@F�NR1�s�n)H@�̌?@�@�?0@@�NR2wk�vk/`@�̌?@�@�?0L@�NR20P�@�̌?@�@�?0@OR21��@�̌?��@�?0@OC20T�qs*�>�̌?:�0�yE>�?0@OVcc@�̌?@�?0@VOV diode333333�?�̌?333333�?�?0@V
    AnalogDevices���<�?ADF4002Chip�NXADF4116ADF4117ADF4118ADF4110ADF4111ADF4112ADF4113	ADF4113HVADF4212L_RFADF4212L_IFADF4106ADF4107ADF4108ADF41020ADF4001ADF4002ADF4007ADF4218L_RFADF4218L_IF
    ADF4252_IFADF4153ADF4153AADF4154ADF4156ADF4157ADF4158ADF4159ADF4159AADF4169ADF4193ADF4196ADF4350ADF4351ADF4150	ADF4150HV	ADF4152HVADF4151ADF4355	ADF4355-2	ADF4355-3ADF5355ADF4356ADF5356ADF4155ADF4371ADF4372ADF41513	ADF4360-0	ADF4360-1	ADF4360-2	ADF4360-3	ADF4360-4	ADF4360-5	ADF4360-6	ADF4360-7	ADF4360-8	ADF4360-9ADF9010ADF7010ADF7011ADF7012ADF7901ADF7020	ADF7020-1ADF7021ADF7025ADRF6690ADRF6701ADRF6702ADRF6703ADRF6704ADRF6601ADRF6602ADRF6603ADRF6604ADRF6655ADRF6750ADRF6850ADRF6801ADRF6806ADRF6807ADRF6620ADRF6755ADRF6720ADRF6820ADRF6821ADRF6612NormalMode�NNormalPrescaler P�?�̌?�?�?`@�N
    Min ctgs div.�?�̌?�?�?`@�NCounter Bits*@�̌?*@�? @�N	Min value�?�̌?�?�? @�N	Max Freq.�׷A�̌?�׷A�?0 @Hz�N	Min Freq.�̌?�?0 @Hz�NMax PS Out Freq _��A�̌? _��A�?0`@Hz�NRset�@�̌?@�@�?0@�NVx�9@�̌?�9@�?0 @V�NR0�̌?�?0@�NRset Minp�@�̌?p�@�?0@�NRset Max|�@�̌?|�@�?0@�NRset Nom�@�̌?�@�?0@�N�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?�?Counter Bits,@�̌?,@�? @�N	Min value�?�̌?�?�? @�N	Max Freq.��A�̌?��A�?0 @Hz�N	Min Freq.�̌?�?0 @Hz�NCharge PumpPhase Detector�NCharge PumppositivePolarity�NpositivenegativeVp@�̌?@�?0 @V�NVmin�̌?�?0 @V�NVmax@�̌?@�?0 @V�N	Max Freq.�˘A�̌?�˘A�?0 @Hz�NPN Floor�k��̌?�k�@0@dBc/Hz�N
    CP Current{�G�zt?�̌?{�G�zt?�?8@A�N{�G�zD?{�G�zT?���Q�^?{�G�zd?������i?���Q�n?�Q���q?{�G�zt?Leakage�̌?�?0@A�NAnalogue ODLock Detect�NNoneAnalogueAnalogue ODAn. OD PtypeDig. FilterVlow�̌?�?0@V�NVhigh@�̌?�?0@V�NT Pass,i�)+P>�̌?,i�)+P>�?0@s�NN Pass@�̌?@�?	 @�N@@T FailI�����Z>�̌?I�����Z>�?0@s�NNoneSpeedup Mode�NNoneRef CounterTimeout�NRef Counter	Ext Timer
    Ref Intervals�O@�̌?�O@�?@�NTimeout Period����MbP?�̌?����MbP?�?0 @s�NFastlock Icp{�G�zD?�̌?{�G�zt?�?8@A�N{�G�zD?{�G�zT?���Q�^?{�G�zd?������i?���Q�n?�Q���q?{�G�zt?Charge Txfr�̌?�?0�@C�NIcp Timeout@P@�̌?@P@�?@�NStep Cycles�?�̌?�?�?@�N	SW1/2 Res�̌?�?0@�NSW3 Res�̌?�?0@�NSw. TimeoutR@�̌?R@�?@�N
    Noise Mode�NOFFCSR�NOFFONFracN Spur Base�F��̌?�F��?0 @dBc�NAB Pulse�k�*�(>�̌?�k�*�(>�?8 @s�N�k�*�(>�A:��9>
    IBS (in band)I��̌?I��?0`@dBc�NFixed PS�?�̌?�?�?`@�N	SDM Order�̌?�?C`@�N1/f PN@10kHz�]��̌?�]��?0 @dBc/Hz�N	Rset Inom�̌?�?0 @�N
    FracN Mode�NOFFHiK Mode�NOFFONI Offset�̌?�?0	@A�NOFF
    Offset Dir�NOFFSourceSinkI sink�̌?�?0`@A�NR Load�̌?�?0`@�N"OffCPCHI/LO�NOffCPCHICPCLOBoth"OFFCPMID�NOFFONVpreset�������?�̌?�������?���=0 @�Nusercustom	Reference�N	Reference	Frequencys�cA�̌?�cA�?0PHz�NNonePhase Noise8ONoneCorner / Floor
    Point / FloorLeeson
    Test Freq.�cA�̌?�חA�?0@Hz8ONoise Figure@�̌?@�?0@dB8OCorner Freq.@�@�̌?j�@�?0@Hz8OFlicker Corner�̌?�?0@Hz8OPN Floor@e��̌? f�@0@dBc/Hz8OPhase Noise@`��̌?Y�@0@dBc/Hz8O  at frequency@�@�̌?��@�?0@Hz8OResonator Power�̌?�?0@dBm8OLoaded Q@�@�̌?I@�?0@8ODDSMin Freq$@ A$@�?0@HzOMax Freq�חA A��.A�?0@HzOPts per Decade$@�̌?$@�?@OAnalysis ats�חA�̌?�חA��K0SHzO�חA�חA&���$�?�חA$@GPhaseNoiseMasks� VCO Band Sel;O
    Start Frequency�̌?�חA�?0PHz.O	Frequency�חA�̌?���A�?0PHz.O
    Max Time Step������>�̌?�?�?0@s.O	Stop Time�Q����?�̌?{�G�z�?�?0@s.OPower OnType.OPower On"FSK
    Modulation6OFSKPSKSingle RampSingle SawtoothSawtoothTriangleDeviation (p-p)cY@�̌?Y@�?0PHz6O	Data Rate@�@�̌?@�@�?0PHz6ORamp DevcY@�̌?Y@�?0PHz6O	Ramp TimeY@�̌?Y@�?0@s6OMod. PeriodY@�̌?Y@�?0@s6O
    Mod. Freq.cY@�̌?Y@�?0PHz6OCLK1@�̌?@�?@6OCLK2 @�̌? @�?@6ON steps`@�̌?`@�?@6ODEV�@�̌?�@�?@6O VCO Autocal.7O
    Max Freq step�̌?�?0@Hz7OBSC Div�?�̌?�?�?@7O
    DEV_OFFSET @�̌? @�?@6OCLK2�F@�̌?�F@�?@6ODEV�@�̌?�@�?@6O
    DEV_OFFSET"@�̌?"@�?@6ON steps@�̌?@�?@6ORamp DevcY@�̌?Y@�?0PHz6O"disable
    Ramp Delay6Odisableenable"FpdClock Source6OFpdCLK1Delay Start WordY@�̌?Y@�?A6ODelay�̌?�?0@s6O"disableTriangle Delay6Odisableenable"disableEnable Fastlock6Odisableenable"disableRamp FSK6OdisableenableDEV�@�̌?�@�?@6O
    DEV_OFFSET"@�̌?"@�?@6O	DeviationcY@�̌?Y@�?0PHz6OPhase Value�@�̌?�@�?@6OPhase Deviation�V@�̌?�V@�?0@deg6OTimeout�?�̌?�?�?@7O
    SL Timeout�?�̌?�?�?@7OALC Timeout�?�̌?�?�?@7O"OFF
    Ramp Analysis9OOFFON
      Ramp No.@�̌?@�?A9O  Skip Start@�̌?@�?A9O
      Skip End�̌?�?A9O VCO Band Sel;O100, 1k, 10k, 100k, 1M@�@�@
    �-���?�sA@�@��@�r@��@j�@L�@j�@L�@@�@$@$@�?@�Y@�����Y�(n~���Y�<����b�L)��od����@�@�@�>�nn`�y}�nn`�)�x� k�<ٵ��7i����@���@���_c�	���_c�"p�_�q�&4�~�6n����@�j�@DF4���d��G4���d��5����r���ԃg�q����@���.A�4d*��d��4d*��d�������r�<����r����@
    custom	Prescaler�PDivide N@�̌?@�?@�PCorner@�@�̌?@�@�?0@Hz�P
    1/f Corner�̌?�?0@Hz�P1/f exponent�?�̌?�?�?@�PPN Floord��̌?d��?0@dBc/Hz�PPN Level�a��̌?�a��?0@dBc/Hz�P
    Meas Freq Out�חA�̌?�חA�?0@Hz�P   at @�@�̌?@�@�?0@Hz�PAuxiliary Outputs�P"DisableOutput�PDisableEnable"VCOSource�PVCODivider	Divider N@�̌?@�?@�P"DisableDivide by 2�PDisableEnable	Frequency@�@�̌?@�@�?0@Hz�P�?
    Select Output�P�?�?custom
    Offset Osc�N	Frequencys�cA�̌?�cA�?0PHz�NNonePhase Noise8ONoneCorner / Floor
    Point / FloorLeeson
    Test Freq.�cA�̌?�חA�?0@Hz8ONoise Figure@�̌?@�?0@dB8OCorner Freq.@�@�̌?j�@�?0@Hz8OFlicker Corner�̌?�?0@Hz8OPN Floor@e��̌? f�@0@dBc/Hz8OPhase Noise@`��̌?Y�@0@dBc/Hz8O  at frequency@�@�̌?��@�?0@Hz8OResonator Power�̌?�?0@dBm8OLoaded Q@�@�̌?I@�?0@8ODDS	LBW Start@�@ A@�@�?0PHz:OLBW Stopj�@ Aj�@�?0PHz:OPts per decade4@�̌?4@�?@:OqZ;�PLLWBDocFmt8131ac8137b69fb4522
    Components�Pd���������System.VCO.PhaseNoiseVCO Phase Noise�����@����System.VCO.TuningLawVCO Freq vs Volts@���������System.VCO.TuningSensitivityVCO Kv vs Voltsd|����$���System.Reference.PhaseNoiseRef Phase Noise�|���$���System.Prescaler.PhaseNoisePrescaler Phase Noise
    FreqDomain�P�����System.FreqDomain.LoopGainOpen Loop Gain and Phase�l����System.FreqDomain.RefToOutputClosed Loop Gain��������"System.FreqDomain.OutputPhaseNoiseOutput Phase Noise.��������� System.FreqDomain.ReferenceSpursReference Spurs�����m����$System.FreqDomain.ModulationResponseFM Response
    TimeDomain�P���� ����#System.TimeDomain.TransientResponse	Frequency���� ���� System.TimeDomain.FrequencyError|Freq Error|���� $���%System.TimeDomain.PhaseDetectorOutputPhase Detector Output ���������"System.TimeDomain.OutputPhaseErrorOutput Phase Error ���������"System.TimeDomain.LockDetectOutputLock Detect OutputR����@v���System.TimeDomain.RampAnalysis	Schematic�P8ADF4002CPP_3CRAnLockDetectOD	ReferenceAuxd�Pp���@����!System.FreqDomain.AuxOPPhaseNoiseOutput Phase NoiseJitterSweepf�Pd���������System.Sweep.JitterIntegrated Jitterd���������System.Sweep.JitterAnalysis
    Offset Osce�P8����|���%System.FreqDomain.OffsetOscPhaseNoiseOffset Osc Phase Noise�8���|���-System.FreqDomain.OffsetOscModulationResponseOffset Osc Modulation responseqZ;�PLLWBDocFtr38392e6b13fe068a9d6X

    The application would not upload a .PLL file so I changed to .TXT.  I hope you can simply rename and open in ADIsimPLL.