What does it mean by “Extended by TSP NCOs” for 0.1 - 3800MHz in section 5 general specification? How do we extend this functionality to reach the frequency range from 0.1 - 3800MHz? what is TSP NCOs and how do we use it? Is this something we do on LimeSDR or we need separate hardware to support this? Thank you.
My understanding is that the LMS7002M chip has an analogue tuner/mixer that can tune from 30MHz up to 3800MHz. Signals below 30MHz are accessed by sampling (e.g. at 60MSPS or higher/lower sample rate) and then those samples are digitally processed using standard DSP (Digital Signal Processing) techniques inside the TSP (digital Transceiver Signal Processor part of the LMS7002M). The TSP NCO’s (Numerical Controlled Oscillator) are 100% digital, so it is basically a mixer using maths.
Most people would either use the LMS7 API or a wrapper to the API. So you could tune below 30MHz and let everything happen automatically the default behaviour would be detailed in the LimeSuite LMS7 API code.
At the simplest level you could considered a TSP NCO as a digital sine wave, where it’s frequency, amplitude and phase can be mathematically adjusted. Or maybe as a digital local oscillator that exists only as numbers. That is mixed inside a digital tuner using multiplication. And that can then be decimated down to a lower sample rate and passed through a few general purpose FIR (Finite Impulse Response) filters . EVERYTHING that happens to a signal inside the TSP is mathematical in nature, it processes the signal only after it has been digitised.
If you use a wrapper/API and try to tune the center frequency below 30MHz the frequency would be set to 30MHz and the TSP NCO would be used to digitally access any frequency below 30MHz. The more I learn about the LMS7002M chip, the more complexity I see.
If you are using the API libraries or any software that use them, you do not really need to worry about it, it would be used automatically if it needs to be. If you are writing your own software, you can optimise the TSP parameters to your own application.
The main DLL/library would is part of LimeSuite and accessed through the LMS7 API.
SoapyLMS7 wrapper for the LimeSuite LMS7 API
gr-limesdr Plugin for GNURadio (uses the LimeSuite LMS7 API)
LimeSDR ExtIO Plugin for HDSDR (uses the LimeSuite LMS7 API)
SDRangel (uses the LimeSuite LMS7 API)
No, the TSP is a digital processor that is internal to the LMS7002M chip. At a fundamental level you could almost think of it as an ALU (Arithmetic Logic Unit) that can add, subtract and multiple numbers really really really fast.