My efforts in bouncing signal off the moon (EME) naturally leads to an investigation of system performance and
optimisation. The conclusion quickly reached is that receiver performance is dictated by the noise performance of the
first stage in the chain - the Low Noise Preamplifier.
Specifically, the Noise Figure (or Noise Temperature, if you prefer) is one of the more important metrics to optimise.
A quick google search was enough to convince me that the prices being asked for a commercially manufactured PANFI (Precision Automatic Noise Figure Indicator) were well out of my league. Even second-hand units attract a stiff price. But I did stumble across a couple of interesting articles form several sources which showed that it is possible to build a cheap PANFI.
Well, maybe not so much "precision", but definitely "cheap"....
Armed with this information, as well as some excellent articles detailing noise measurement techniques from HP
(Useful Links), I felt confident that I could proceed down a similar path, and build a simple
Noise Figure Indicator which would be more than adequate for relative measurements, even if absolute Noise Figure measurements
would not be achievable.
So my main aims with this project are:
- Low cost.
- Use parts to hand.
- Use a modular approach to building - upgrade components when (if) resources allow.
- Settle on one measurement frequency only.
- Reasonable repeatability of measurement
- Use a 10bit ADC and micro-controller to average the measurements to reduce jitter.
- Perform second stage correction.
- Digital display.
- Compare this simplified design to commercial PANFIs.
- Investigate uncertainties and their minimisation.
- Build an instrument worth having.
- Use it for LNA testing and optimisation.
- Look at extending frequency coverage if at all viable.
- Learn lots.
The block diagram of my PANFI is shown to the right. There is nothing new here. Many similar designs exist both in the
commercial and amateur spheres (Useful Links).
The idea is to measure the output of the DUT under 2 conditions: With the external noise source switched off, and then with the external noise source switched on. From the ratio of these two measurements (the Y-factor), the noise figure (or noise temperature, if you prefer) may be calculated.
The issue arises that we are talking about some very small power densities (-174dBm/Hz), so quite a lot of extra amplification is required. This leads to more issues with noise immunity from extraneous sources, filtering and averaging, and dynamic ranges.
Perhaps some discussion of my design choices is warranted at this point:
- The MAR1 device was chosen for the gain block only because I have some on hand.
- The design frequency of 144MHz is set by the bandpass filter (a 7 pole Chebyschev design). I chose this frequency not only due to my interest in 144MHz EME, but also because makes a good compromise frequency for designing and building filters and detectors. Also, I have some capacitors on hand which suited the design.
- The detector is the (now) popular AD8306 logarithmic detector. Although there is a better detector available (AD8307), the '8306 is more than adequate for my measurement frequency of 144MHz. Also, I have the '8306 on hand.
- The micro-controller is an ATMEL ATMEGA64. My micro of choice for these sorts of projects. The built-in 10 bit ADC and "low noise" ADC conversion modes make for a good design choice. Also, I have the micro on-hand. (Can you detect a theme here?)
- The display is a 64x128 pixel graphic display. Big enough for displaying lots of data, easy enough to drive. I had purchased some old stock several years ago, so this project presented a good opportunity to use what I have on hand. (Am I starting to sound repetitious?)
The logarithmic detector really forms the heart of this project. A large dynamic range, coupled with a good accuracy is required
if any sensible results are to be expected. Fortunately, I was able to calibrate the AD8306 response against a lab signal generator.
I used a least-squares line of best fit to compute a transfer function for the detector.
I decided to put the LS linear fit algorithm into the ATMEGA64. In this way the calibration of the detector may be updated at any stage, without the need to re-flash the micro.
From the measurements shown, it may be seen that for input powers greater than -60dBm and less than -5dBm, the error is better than +-0.2dB. This is an adequate accuracy for the measurements I am undertaking.
A simple Chebychev bandpass filter is used to limit the NFM response.
This PANFI design uses the "Y-factor" method of excess noise measurement. As it turns out, it's a ridiculously simple method, once you get your head around the idea. I will refer any interested reader to the HP Application notes, as I cannot hope to better explain the idea.
Thermal noise (at room temperature) has an energy density of -174dBm/Hz. That's not a lot to measure. Even with the chosen
measurement bandwidth of approximately 15MHz, that's still only around -102dBm.
So any extraneous noise / interference MUST be removed. I found several techniques were required (over and above standard practice of hardware shielding, screening, filtering and decoupling). Some of the more unexpected discoveries during my software build are worth mentioning here.
- The measurements must be averaged over a significant sample size to ensure an accurate measurement. I settled on 15,000 ADC conversions per measurement. (That's 15,000 measurements with the noise source on, then 15,000 measurements with the noise source off).
- The micro-controller is put to sleep during an ADC conversion so as no noise from the crystal oscillator may spoil the measurement. This removed around 0.5dB of jitter from the measurement display.
- Floating point math is used throughout the calculations to achieve enough dynamic range whilst maintaining resolution.
- Second stage correction is worth implementing for better accuracy. As a side benefit the DUT gain is also computed.
- Once the DUT noise figure gets below 0.5dB, temperature compensation of the measurement is a must! I learned this the hard way (taking consecutive measurements with the room heater on showed this up very quickly).
I will not list my software here, but I am happy to discuss software with anyone interested in replicating this project. There are several
nuances in my design choices which have serendipitously resulted in a reasonable measurement "sweet-spot" for this instrument, so I do encourage anyone
interested to email me before embarking on a project like this.
I also wish to point out the software listing for Jim Koehler's (VE5FP) implementation has at one small error in the averaging routines. Again, please contact me before using his code.
A simple menu system adds some flexibility to the instrument. Data may be displayed as either a Noise Figure (dB), Noise Temperature (K), or Y-Factor.
Diode ENR and Ambient Temperature may be input, all from the 3 menu push buttons.
I also added a raw input power measurement mode, so as to make absolute power measurements (useful for sun-noise measurements).
A calibration routine is also added for second stage correction, so DUT gain is also computed and displayed.
I have been fortunate enough to be able to borrow a HP8970A (thanks Steph - you know who you are), and a commercial noise source from work. This has allowed some comparison measurements to be made. The photos below show the same nf measured. Clearly a lucky happenstance. Repeated tests are showing my meter to be within 0.1dB of the HP8790A. This in no way represents the accuracy of my measurement - only that it is repeatable, and within 0.1dB of a commercial PANFI. Nonetheless, I am happy with the result.
A Note About Uncertainties
This instrument is far from lab grade. So whilst it is nice to see a steady and repeatable measurement on the LCD screen, some thought should be given to what sort of error bounds should be given to the numbers.
- The simplest uncertainty to understand is the ENR (Excess Noise Ratio) of the noise source. This contributes a one for one error to the noise figure measurement. The better diodes are spec'd at +-0.3dB. There is no improving on that number without calibration in a proper standards laboratory.
- The accuracy of the logarithmic detector also adds to the uncertainty. In this case, a +-0.2dB error bound exists.
- Any mismatch in the noise source to DUT to PANFI connections produces multiple reflections, which will add in a vectorial sense and increase errors in measurements.
- The noise figure of the first MAR1 gain block will add errors to the measurement when the DUT Gain + nf is low in comparison with the nf of the MAR1.
So what can we say from all the above?
By far the first three uncertainties listed are the greatest, and a simplified approach would be to take the RSS
(Root Sum of Squares) of the uncertainties. This method works provided the uncertainties are uncorrelated (a fair assumption).
For my simplistic meter, we achieve:
ε = +-√(0.32 + 0.22)
ε = +-0.361dB
And that's before we even consider mismatch uncertainties!
There are other pitfalls to noise figure measurements. Again, I cannot hope to better explain than Messrs Colby and Heinz: "Accuracy of Noise Figure Measurement Systems".
So we see immediately that this simple meter will win no prizes for accuracy, but it makes for a great relative measurement
device, and it certainly didn't cost a lot.
Looking back at it now, I realise that I had everything needed in my electronics junk pile, with the exception of the power supply transformer. So for $12 I learned quite a bit about noise, and got a reasonable piece of test gear to boot.
- HP Application Notes
- Other PANFI ideas
- Further references