I am relatively inexperienced with ADCs so my apologies if this question is a bit naive but I could not find any clear answer here.
I am using an SDR receiver build on the LTC2145-14 clocked at 125 Mhz in order to measure power of weak sinusoidal signals. The analogue frontend of the ADC is quite simple, it is the one in the datasheet of the device, a 50 ohm resistor is connected to the high impedance differential A+ and A- analogue inputs and a wideband 1:1 balun connects this 50 ohm resistor to the input sma port of the receiver. No analogue op amp in the way, just a very loss loss anti-aliasing filter with a 52 Mhz cut off frequency to prevent reception of signals above the Nyquist frequency of 62.5 Mhz. With this set-up the input impedance of the receiver is a nice and fla 50 ohm from 100khz to about 50 Mhz.
To measure power, I simply convert the signal received in dBFS into actual true world dBm. Using an external rf power meter, I have determined empirically that the relationship between "dBFS" and "dBM" in my set-up is -10 dB . It does not change much across the whole dynamic range of the SDR receiver and across its frequency range either. For instance a signal generator delivering -40 dBm into my 50 ohms input impedance rf power meter will correspond to a signal reading of -50 dBFS when it is connected to my 50 ohm input impedance SDR receiver.
The trouble is that I am unable to explain this result by looking at the datasheet of the LTC2145-14!! The SENSE pin 63 of the LTC2125-14 chip is set to "0V" which corresponds to 1v peak to peak full scale, so +4 dBm into a 50 ohm load. So if 0 dBFS is corresponding to +4 dBM then according to the same logic, a signal of -40dBm should correspond to a signal of -44 dBFS but as explained above, I measure -50 dBFS and not -44 dBFS !!! There is a 6dB difference that I can not explain in anyway!
I concluded it is the SDR software that is responsible for this difference but I am not too sure really. Can someone better explain me where this 6dB difference comes from ? Is it the SDR software that I use that explains it ? Is the reasoning I am making erroneous and if yes, can someone explain me why ?
I'm not familiar with the LTC2125 and the SDR software at all, but I thought I'd bring up a couple of semi-random points I use when doing a similar exercise with a different family of ADCs. A lot of this will be common sense but we might as well cover these for completeness and as a sanity check.
You are probably beyond this but I thought I'd mention some of these generic things in case they help.
I hope your project goes well.
Thanks for your reply.
Yes I have factored in all the points except maybe your last bullet point regarding the ADC adjustment gain. As I am not familiar with ADCs I am not sure if I factored this correctly or not. As you can read below, it may (?) be the explanation
As I explained it, the ADC2145-14 and I think many others ADCs of Analogue Devices have a sense PIN that allow to select different "input range of the ADC". When this sense pin is set to ground the input range is 1vpp corresponding to 4 dBm under 50 ohm, when it is set to VCC it is 2vPP corresponding to 10 dBm under 50 ohm and that is precisely a 6dB difference....
My expectation (but I am not sure) is that if I select the 1vPP range, the noise floor of the ADC that I measure in a 500 hz bandwidth should also raise e by 6dB ?, so raise from -123 dBFS (500 Hz bandwidth) to -117dBFS (500 Hz bandwidth) but it does not happen!!! the noise floor stays the same after I select 1Vpp instead of 2Vpp..... It maybe the problem in fact ??? Maybe the device or the PCB is somehow damaged and I am actually unable to select the 1Vpp to range for some reasons.
Can you send raw data? You are correct if you only have a 50ohm source connected at you change from the 2V range to the 1V range then you will see the noise floor jump.
Are you using our demo board or is this on your own board? Can you send a schematic and layout?
The two boards are red pitaya 125-14 models. I have modified the analogue front-end as described above
- 1:1 ballun for 1 board and,
- the other board is using an LTC6403-1 op-amp fed in a differential way by a 1:16 transformer.
For the analogue front-end there is no diagram other than the ones I provided you already, so you have all info. For the rest, the only info publicly available is this one :
For the raw data samples, I can do it, I just need a nit of time.
Anyway, now that I know how it should work I will inspect the PCB for a possible fault preventing to select the 1Vpp range on 1;1 ballun board
From the schematic it looks like you are operating in the 1V range:
Yes, that is true, this is the default setting but I modified it.... As I said, there is something wrong with the board with the 1:1 balun, whatever the voltage of the sense Pin, the noise floor stays at -123 dBFS corresponding to -113 dBM, setting the sense PIn to 0 or 1 does not change the noise floor in dBFS. Now I understand that it is not normal and will check what is the problem.
On the other board everything works as expected
Ok I have checked the PCB of the board with the 1:1 balun, there was a fault, the sense pin was stuck on 0V. Now when I set the sense pinis set to +VCC the noise floor decreases by 6dB which is exactly what is expected.
I have made some measurements and my conclusion is that there is not much benefit to set the sense pin to 0V (1v pp) instead +Vcc (2v pp) . The measured noise floor in dBFS is 6dB higher when the sense pin is set to 1vPP (ground) but the noise floor in dBm is exactly the same if I chose 1vPP or 2vPP !! No changes !!! (remember there is no external noise , the input is connected to 50 ohm load). As a matter of fact using a range of 1vPP instead of 2Vpp only results in a loss of 6dB dynamic range ! everything else seems to be the same!! So far this application (SDR receiver), I do not see the point.
I also compared with the other board, the op-amp and the transformer have a theoretical gain of 18 dB (6dB for the op-amp and 12dB for the transformer), the noise floor in dBm drops from -113.5 dBm to -125 dBm, so that is about 11.5dB better. That is logical as it is corresponding to the noise free gain of the rf-transformer (12dB). The SNR ratio increases by the same amount of 11.5dB course since the transformer is noise free.
The LTC6403-1 in the second configuration does not improve the signal to noise ratio as it raises the noise floor by about 5.5 dB for a gain of 6dB, however its value is in allowing to provide an optimal input impedance of 804 ohms to the 1:4 rf transformer, so the input impedance is flat close to 50 ohms over the entire first Nyquist zone
Thanks for your help, things are conceptually clear by now
There is just one mystery that remains unsolved.
For both boards,independently of the way I set of the sense pin, the converting factor between dBFS to dBm is 6dB too low
For instance the board with the 1:1 balun when the sense pin is set to ground (1vPP so 4 dBm into 50 ohms), I measure a converting factor of -10, so for instance -20dBm at the input of the ADC corresponds to a reading of -30 dBFS with my receiver software. This makes full scale (so 0 dBFS reading my receiver) coresspond to +10 dBm . The problem is that 1 V peak to peak into 50 ohm is 4 dBm and not 10 dBm so either the receiver software is playing some tricks and a reading of 0dBFS on my receiver does not correspond to full scale or 4 dBm sor there is a 1/2 resistive divider at the rf input of the chip that is not documented in the data sheet.
I do not think the receiver software is playing tricks because I measure with my receiver software a -1 dB compression point (at 10 Mhz) around -3 dBFS which seems to me totally normal if 0dBFS is corresponding to ADC full scale. That leaves only the possibility for some strange behavior in the chip itself or some misinterpretations of the LT2145-14 specs on my part.
This begahvor does not change if I set the ref voltage to 2vPP instead of 1Vpp or if I use the other board with an op-amp and a 1:16 rf transformer. The converting factor dBFS to dBm is always 6dB too low and I can not explain it as all input impedance involved are strictly 50 ohms
I am really curious to understand the reason for this behavior and would appreciate your insight on this.
The benefit of using the 1V range is SFDR if you are using an anemic driver that can't drive 2Vpp without distorting.
1Vpp into 50ohms is 4dBm. 2Vpp int 50ohms is 10dBm. Check your math.
and you please carefully read what I write and out of courtesy give it the right attention !!!!
! I don(t need to check my math because from the first post I am saying clearly that 1Vpp into 50ohms is 4dBm. 2Vpp int 50ohms is 10dBm. Your answer is quite dissapointing and useless
This post can be closed I will not learn anything new and the initial question will unfortunately remain unanswered