Hi Leif,
--- In soft_radio@yahoogroups.com, Leif Asbrink <l...@...> wrote:
> I have made measurements on the QS1R. The hardware is very good.
> The firmware version in the unit I tested was mediocre with
> very low suppression of aliasing spurs. In your application
> it would not matter at all since your front end would filter
> out the aliasing signals that are many MHz away from the
> desired frequency.
You wrote in an email to me that you found two large alias responses at the
sampling rates of 1.953125 MSPS and 62.5 kSPS. This was with the FPGA file
that supports operation of the QS1R with Winrad, not SDRMAXII. The other
sample rates supported in Winrad is 2.5 MSPS, 1.56250 MSPS, 1.25 MSPS, 625
kSPS, 312.5 kSPS, 250 kSPS, 156.25 kSPS, 125 kSPS, and 50 kSPS all in the same
FPGA file. The initial release of the FPGA file for Winrad included all of
those sample rates to be able to test the highest rate that any given PC would
be able to keep up with in Winrad. Unfortunately the 1.953125 MSPS and 62.5
kSPS rates were compromises because of how the filtering is implemented in one
single FPGA file to support all those rates. Normally I would just drop those
two offending rates from the list because they would not normally be used, for
example, to record the whole AM broadcast band you would select the 2.5 MSPS
rate or the 1.5625 MSPS rate or the 1.25 MSPS rate which would give you 2.0 MHz
and 1.25 MHz and 1 MHz bandwidths respectively. If someone needs a rate of
1.952135 MSPS a FPGA DDC file can be created that has very good alias
suppression at only that rate. Those two offending rates were a side effect of
including all those rates in a single FPGA file instead of creating a file for
each sample rate (which is then possible to pick filters that give overkill on
alias suppression among other parameters). It is a similar situation to certain
configurations of the AD6620 DDC in the SDR-IQ and SDR-14 - some selections of
filters produce very poor alias suppression and you just avoid setting those
filter parameters. I believe Perseus generally uses individual FPGA files for
each sample rate supported. It has nothing to do with firmware - it is
completely controlled by the filters in the particular FPGA DDC file that is
loaded.
> I have failed to get the information about
> how to include support for the QS1R in Linrad. It is said to
> be open source so I assume it is doable, but I have not
> found any API specification that could meke it reasonably
> easy for me.
I know that you have said that you don't do C++ (which is what QS1RServer and
SDRMAXIV are written in). I have tried to point you in past correspondence to
the libqsio shared library written in pure C which is the best example of how
to communicate with the QS1R. The open source code for this library has been
available from the beginning in the QS1R SVN which anyone can download and use.
In fact, many people have done so and are now interfacing to the QS1R hardware
in specialized applications with MATLAB, LABVIEW, and GNURadio to name a few.
With the library you have no better documentation on how to interface with the
QS1R than the actual C source code which can be used directly or as an example
of "HOW TO".
Phil N8VB