I think i’ve narrowed down the problems with my code to the mux setting
for
the usrp system. Is there anywhere you could point me to for a list of
possible values for that mux, currently i’m just using one i found in a
demo
program but can’t seem to find a list of all possible values.
-Garrett McGrath
On Thu, May 18, 2006 at 08:11:30PM -0400, Garrett McGrath wrote:
I think i’ve narrowed down the problems with my code to the mux setting for
the usrp system. Is there anywhere you could point me to for a list of
possible values for that mux, currently i’m just using one i found in a
demo
program but can’t seem to find a list of all possible values.
-Garrett McGrath
Use the source, Luke
From usrp/host/lib/usrp_standard.h:
Receive mux:
/*!
- \brief Set input mux configuration.
- This determines which ADC (or constant zero) is connected to
- each DDC input. There are 4 DDCs. Each has two inputs.
- Mux value:
- 3 2 1
- 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
- ±------±------±------±------±------±------±------±------+
- | Q3 | I3 | Q2 | I2 | Q1 | I1 | Q0 | I0 |
- ±------±------±------±------±------±------±------±------+
- Each 4-bit I field is either 0,1,2,3
- Each 4-bit Q field is either 0,1,2,3 or 0xf (input is const zero)
- All Q’s must be 0xf or none of them may be 0xf
*/
bool set_mux (int mux);
Transmit mux:
/*!
- \brief Set output mux configuration.
-
3 2 1
- 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
- ±------------------------------±------±------±------±------+
- | | DAC3 | DAC2 | DAC1 | DAC0 |
- ±------------------------------±------±------±------±------+
- There are two interpolators with complex inputs and outputs.
- There are four DACs.
- Each 4-bit DACx field specifies the source for the DAC and
- whether or not that DAC is enabled. Each subfield is coded
- like this:
-
3 2 1 0
- ±±----+
- |E| N |
- ±±----+
- Where E is set if the DAC is enabled, and N specifies which
- interpolator output is connected to this DAC.
- N which interp output
-
- 0 chan 0 I
- 1 chan 0 Q
- 2 chan 1 I
- 3 chan 1 Q
*/
bool set_mux (int mux);
In the USRP source code directory, look for the file
doc/html/classusrp__standard__tx.html. Then you should find:
bool usrp_standard_tx::set_mux ( int mux )
Set output mux configuration.
3 2 1
1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
±------------------------------±------±------±------±------+
| | DAC3 | DAC2 | DAC1 | DAC0 |
±------------------------------±------±------±------±------+
There are two interpolators with complex inputs and outputs.
There are four DACs.
Each 4-bit DACx field specifies the source for the DAC and
whether or not that DAC is enabled. Each subfield is coded
like this:
3 2 1 0
+-+-----+
|E| N |
+-+-----+
Where E is set if the DAC is enabled, and N specifies which
interpolator output is connected to this DAC.
N which interp output
0 chan 0 I
1 chan 0 Q
2 chan 1 I
3 chan 1 Q
Regards,
Pascal