Prove di misura di rumore di fase di oscillatori a quarzo

Crystal Oscillator Phase Noise Measurement Tests

RoV, 17/9/2009

Obiettivo è la misura del rumore di fase SSB di un oscillatore per il quale si dispone di due campioni identici e abbastanza stabili in frequenza da non richiedere un PLL per tenerli agganciati durante la misura classica con mixer (metodo "phase detector"). La misura è comunque fatta con un mixer, ma tollerando un battimento IF a bassa frequenza. La IF è acqiusita con una scheda audio di buona qualità.

Cominciamo con un po' di foto... gli oscillatori sono componenti surplus.

The objective is to measure the SSB phase noise of an oscillator for which two identical samples are available, stable enough in frequency not to require a PLL to keep them locked during the classic mixer measurement (phase detector method). The measurement is still done with a mixer, but tolerating a low-frequency IF beat. The IF is acquired with a good quality audio card.

Let's start with some photos... the oscillators are surplus components.

Oscillatore 1

oscillatore 1 (Driscoll a 124MHz + buffer e filtro)

oscillator 1 (Driscoll at 124MHz + buffer and filter)

Oscillatore 1 schermato

oscillatore 1 schermato alla meno peggio e attenuatore variabile

oscillator 1 shielded as best as possible and variable attenuator

Oscillatore 2 e mixer

oscillatore 2, mixer TFM-2 e si intravvede attenuatore 10dB da oscillatore 1

oscillator 2, TFM-2 mixer and you can glimpse 10dB attenuator from oscillator 1

Filtri

carico, filtri passa-basso e passa-alto da IF del mixer

load, low-pass and high-pass filters from mixer IF

Modulo audio USB

il modulo audio USB

the USB audio module

Schema di misura

Measurement Setup

Schema semplificato

schema semplificato

simplified schematic

Con 12.5V di alimentazione un oscillatore produce +7.3dBm e l'ho usato per pilotare il LO del mixer, l'altro qualcosa di meno. Ho misurato -4.5dBm sulla porta RF del mixer con l'attenuatore variabile impostato a 0dB e -14.5dBm con l'att. var. a 10dB.

Ho monitorato l'uscita (anzi, il nodo prima del C passa-alto da 470nF) con l'oscilloscopio, per poter aggiustare la differenza di frequenza degli oscillatori (agendo sul compensatore vicino al quarzo di uno dei due) prima di acquisire col modulo audio. Questa è stata un'operazione molto delicata, perché la frequenza degli oscillatori era un po' troppo alta rispetto alle differenze di pochi Hz che cercavo di ottenere... però per fortuna la stabilità era buona. Indubbiamente con oscillatori da 10-30 MHz sarebbe stato tutto più facile.

With 12.5V supply one oscillator produces +7.3dBm and I used it to drive the mixer LO, the other somewhat less. I measured -4.5dBm on the mixer RF port with the variable attenuator set to 0dB and -14.5dBm with the var. att. at 10dB.

I monitored the output (actually, the node before the 470nF high-pass C) with the oscilloscope, to be able to adjust the frequency difference of the oscillators (acting on the trimmer near the crystal of one of the two) before acquiring with the audio module. This was a very delicate operation, because the oscillator frequency was a bit too high compared to the few Hz differences I was trying to obtain... but fortunately the stability was good. Undoubtedly with 10-30 MHz oscillators everything would have been easier.

Vista oscilloscopio

vista all'oscilloscopio prima del passa-alto

oscilloscope view before the high-pass

Ho preso una serie di misure, ciascuna costituita da 1,000,000 di campioni a 192kHz/24bit e fatto l'analisi spettrale col metodo di Welch in Matlab. I parametri sono delicati, serve una finestra con lobi laterali estremamente bassi, altrimenti "l'ombra" della portante oscura il rumore da misurare: ho usato una Chebyshev di lunghezza 32768 e con 200dB di attenuazione dei lobi.

La prossima figura mostra i risultati dell'analisi spettrale.

I took a series of measurements, each consisting of 1,000,000 samples at 192kHz/24bit and performed spectral analysis with Welch's method in Matlab. The parameters are delicate, a window with extremely low side lobes is needed, otherwise the "shadow" of the carrier obscures the noise to be measured: I used a Chebyshev of length 32768 and with 200dB sidelobe attenuation.

The next figure shows the spectral analysis results.

Analisi spettrale

analisi spettrale

spectral analysis

Misura grigia: oscillatore 1 spento

Misura blu: attenuatore variabile a 10dB, oscillatori leggermente spostati in modo da vedere il battimento in banda passante e misurarlo (circa 250Hz). Modulo audio con guadagno al limite del clipping.

Misura verde: come la blu, però oscillatori portati più vicini possibile (battimento a qualche Hz).

Misura rossa: attenuatore variabile portato a 0dB, guadagno del modulo audio invariato. Il modulo non clippa, perché il battimento è basso in frequenza e attenuato dal filtro.

Come si può notare, fino a circa 2kHz la misura rossa sta circa 10dB sopra alla verde, indicando che stiamo veramente misurando il rumore dell'oscillatore. La misura rossa è significativa fino a circa 5kHz. Oltre i 5kHz c'è solo il rumore di fondo del modulo audio (più o meno piatto). Naturalmente si potrebbe migliorare la misura portando il battimento più vicino a 0 Hz e aumentando il guadagno audio; nel mio caso non è facile, perché gli oscillatori sono alti di frequenza e per spostarsi di Hz basta avvicinare il cacciavite...

I livelli di rumore sono scalati correttamente in dB/Hz dal software, dove il riferimento è l'ampiezza numerica del segnale acquisito e l'analisi spettrale è unilaterale (somma i contributi di frequenze positive e negative). Ad esempio per una sequenza random di varianza 1 il livello tornato è circa -50dB, che derivano da -10*log10(96000), dove 96kHz è metà della frequenza di campionamento.

L'ampiezza del segnale invece non coincide con quella indicata. In questo caso basta prendere la varianza del segnale relativo alla misura blu, che appare come una sinusoide bella pulita:

Gray measurement: oscillator 1 off

Blue measurement: variable attenuator at 10dB, oscillators slightly shifted to see the beat in the passband and measure it (about 250Hz). Audio module with gain at the clipping limit.

Green measurement: like blue, but oscillators brought as close as possible (beat at a few Hz).

Red measurement: variable attenuator set to 0dB, audio module gain unchanged. The module doesn't clip, because the beat is low in frequency and attenuated by the filter.

As can be noted, up to about 2kHz the red measurement is about 10dB above the green, indicating that we're really measuring the oscillator noise. The red measurement is significant up to about 5kHz. Beyond 5kHz there's only the background noise of the audio module (more or less flat). Of course the measurement could be improved by bringing the beat closer to 0 Hz and increasing the audio gain; in my case it's not easy, because the oscillators are high in frequency and just bringing the screwdriver close to the trimmer moves the frequency a few Hz...

The noise levels are correctly scaled in dB/Hz by the software, where the reference is the numerical amplitude of the acquired signal and the spectral analysis is one-sided (sums the contributions of positive and negative frequencies). For example for a random sequence with variance 1 the returned level is about -50dB, which comes from -10*log10(96000), where 96kHz is half the sampling frequency.

The signal amplitude instead doesn't match what's indicated. In this case just take the variance of the signal relative to the blue measurement, which appears as a nice clean sinusoid:

Segnale riferimento

segnale ref

ref signal

σ(ref) = 0.0033 ovveroor -24.85dB.

Questo valore è da usare come riferimento usando la curva spettrale verde. Volendo usare quella rossa che è valida fino a frequenze più alte, occorre assumere che il riferimento sia 10dB più alto, o -14.85dB.

Ci sono poi altri due termini correttivi:

  • dobbiamo togliere 3dB al rumore per il fatto di aver usato due oscillatori che danno uguale contributo;
  • dobbiamo togliere 6dB al rumore per passare alla misura di rumore di fase SSB che è quella standard. Su questo 6 sono un po' incerto, io avrei messo 3 pensando che il rumore su una banda laterale ha metà potenza. Secondo "Foundations of Oscillator Circuits Design" del Gonzalez (a pag. 90, in riferimento al metodo "phase detector" con PLL) le ampiezze relative alle due bande laterali si sommano linearmente all'uscita del mixer e producono l'aumento di 6dB. In ogni caso il risultato cambia relativamente poco.

Complessivamente occorre sommare 14.85dB e togliere 9dB alla curva rossa. Risulta:

This value should be used as reference using the green spectral curve. If you want to use the red one which is valid up to higher frequencies, you need to assume the reference is 10dB higher, or -14.85dB.

There are then two other correction terms:

  • we must subtract 3dB from the noise for having used two oscillators that give equal contribution;
  • we must subtract 6dB from the noise to convert to SSB phase noise measurement which is the standard. On this 6 I'm a bit uncertain, I would have put 3 thinking that noise on one sideband has half the power. According to Gonzalez's "Foundations of Oscillator Circuits Design" (at page 90, referring to the "phase detector" method with PLL) the amplitudes relative to the two sidebands add linearly at the mixer output and produce the 6dB increase. In any case the result changes relatively little.

Overall, you need to add 14.85dB and subtract 9dB from the red curve. Result:

SSB phase noise

SSB phase noise

Qui il grafico è in scala di frequenze logaritmica estesa fino a 10kHz, dove già prevale il rumore del modulo audio. La gobba sulle bassissime frequenze deriva invece dall'imperfetto filtraggio della portante.

Naturalmente così facendo non ho misurato solo il rumore di fase, ma anche quello di ampiezza, che però di solito è più basso del primo. Inoltre nel rumore di ampiezza compare solo il contributo dell'oscillatore che entra sull'ingresso RF, perché lato LO il mixer è abbastanza immune da piccole variazioni di ampiezza. Questo problema sparirebbe nel caso della misura classica col PLL che sfasa i due oscillatori di 90°, che però è più complessa da realizzare.

Avrò fatto i conti giusti? Mah!

Here the graph is in logarithmic frequency scale extended up to 10kHz, where the audio module noise already prevails. The bump at very low frequencies instead comes from imperfect filtering of the carrier.

Of course by doing this I didn't measure only phase noise, but also amplitude noise, which however is usually lower than the first. Moreover in the amplitude noise only the contribution of the oscillator entering the RF input appears, because on the LO side the mixer is quite immune to small amplitude variations. This problem would disappear in the case of the classic measurement with PLL that phase-shifts the two oscillators by 90°, which however is more complex to implement.

Did I do the calculations right? Who knows!


Se ti interessano altre informazioni, puoi contattarmi all'indirizzo:

If you're interested in more information, you can contact me at:

IW3IPD contact

Torna alla mia home page Go back to my home page