ubx160_io HDL Worker
Ettus x310 UBX160 daughter board IO worker.
Detail
This worker provides control for the following sub-devices
ads62p48.hdl (ADC)
ubx160_cpld.hdl (UBX160 daughter board CPLD)
max2871.hdl (Frequency Synthesizer / VCO - RXLO1)
max2871.hdl (Frequency Synthesizer / VCO - RXLO2)
max2871.hdl (Frequency Synthesizer / VCO - TXLO1)
max2871.hdl (Frequency Synthesizer / VCO - TXLO2)
It drives the a number of GPIO signals, LEDs and SPI buses used for controlling the hardware on or associated with the x310 daughter board. Two instances of this worker (one for each daughter board) are used by the x310 platform.The worker connects to the Raw Property ports of its sub-devices, and uses these to drive the GPIO and SPI signals. This worker is controlled by the drc_x310.rcc worker. It is not necessary for the application to access the worker’s properties.
The following LEDs are driven by this worker
LED |
Signal |
Controlling Property |
Usage |
|---|---|---|---|
TXRX_TX |
LED_TXRX_TX |
ubx160_io.TX_EN_N |
Front panel RF TX/RX LED (RED) |
TXRX_RX |
LED_TXRX_RX |
ubx160_io.RX_EN_N |
Front panel RF TX/RX LED (GREEN) |
RX |
LED_RX |
ubx160_io.RX_ANT |
Front panel RF RX2 LED (GREEN) |
The RX front panel LED is illuminated by the Digital-radio-controller when the RX path is configured to use the RX2 input (SMA connector). The LED will be off when the RX2 input is not being used.
The TXRX front panel LED will be red when the TXRX (SMA connector) is actively transmitting. The LED will be green when the TXRX (SMA connector) is operating in receive mode. The LED will be off when the TXRX port is not being used. Setting the TX/RX port to be an input or output is controlled by the RX_ANT (receive antenna) property.
The following input GPIO signals are used to set the properties defined in the table below
GPIO |
Direction |
Property |
Usage |
|---|---|---|---|
LOCKD_RX |
input |
RX_LO_LOCKED |
RXLO lock detect. Active high |
LOCKD_TX |
input |
TX_LO_LOCKED |
TXLO lock detect. Active high |
RXLO1_SYNC |
input |
RXLO1_SYNC |
MAX2871 MUXOUT for RXLO1 set by the DRC to provide DLD digital lock detect |
RXLO2_SYNC |
input |
RXLO2_SYNC |
MAX2871 MUXOUT for RXLO2 set by the DRC to provide DLD digital lock detect |
TXLO1_SYNC |
input |
TXLO1_SYNC |
MAX2871 MUXOUT for TXLO1 set by the DRC to provide DLD digital lock detect |
TXLO2_SYNC |
input |
TXLO2_SYNC |
MAX2871 MUXOUT for TXLO2 set by the DRC to provide DLD digital lock detect |
The following GPIO signals are driven by this worker
GPIO |
Direction |
Property |
Usage |
|---|---|---|---|
ADC_RESET |
output |
ADS62P4 (ADC) device reset |
|
MCTRL_RESETn |
output |
CPLD_RST_N |
Active low reset of UBX160 daughter board CPLD |
MCTRL_RX2_EN |
output |
RX_ANT |
Selects the receive antenna 0 - RX2, 1 - TXRX |
MCTRL_ATR_TX |
output |
TX_EN_N |
Active low, enables transmit |
MCTRL_ATR_RX |
output |
RX_EN_N |
Active low, enables receive |
cFE_TXATT |
output |
TX_GAIN |
6-bit transmit gain control |
cFE_RXATT |
output |
RX_GAIN |
6-bit receive gain control |
MCTRL_SPI_ADR |
output |
CPLD SPI address selection The address selects between CPLD, RXLO1, RXLO2, TXLO1 and TXLO2 devices depending on the property being written |
|
ADC_SEN |
output |
ads62p48 slave enable selects between ads62p48 and db SPI devices |
|
TX_SEN |
output |
daughter board MCTRL-SEN signal slave enable, selects between ads62p48 and db SPI devices |
|
RX_SEN |
output |
daughter board SEN_RX signal set to ‘1’ not used |
|
RX_LSADC_SEN |
output |
low speed ADC slave enable set to ‘1’ not used |
|
RX_LSDAC_SEN |
output |
low speed DAC slave enable set to ‘1’ not used |
|
TX_LSADC_SEN |
output |
low speed ADC slave enable set to ‘1’ not used |
|
TX_LSDAC_SEN |
output |
low speed DAC slave enable set to ‘1’ not used |
TX_GAIN controls an HMC624A Digital Attenuator. Attenuation is in 0.5 dB steps to a maximum of 31.5 dB. RX_GAIN controls an HMC624A Digital Attenuator. Attenuation is in 0.5 dB steps to a maximum of 31.5 dB. The use of the motherboard fitted low speed ADC and DACs are not supported by this worker
The ubx160_io.hdl worker drives a single SPI bus. Note that the RX_LSADC, TX_LSADC. RX_MISO, TX_MISO signals are not driven.
The following SPI signals are driven by this worker
Signal |
Direction |
Usage |
|---|---|---|
DBx_SCLK |
output |
SPI clock, 1 MHz |
DBx_MOSI |
output |
SPI master out |
DBx_ADC_SEN |
output |
Select ADC slave |
DBx_TX_SEN |
output |
Select other slave |
Worker Properties
CP_CLK_FREQ_HZ_pType:
ulongAccess:
Parameter:
TrueWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
SPI_CLK_FREQ_HZ_pType:
ulongAccess:
Parameter:
TrueWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
RX_LO_LOCKEDType:
ucharAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
TX_LO_LOCKEDType:
ucharAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
RXLO1_SYNCType:
ucharAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
RXLO2_SYNCType:
ucharAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
TXLO1_SYNCType:
ucharAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
TXLO2_SYNCType:
ucharAccess:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
CPLD_RST_NType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
RX_GAINType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
TX_GAINType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
RX_ANTType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
TX_EN_NType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
RX_EN_NType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
Worker Ports
rawpropsType:
rawprop
Supported device worker:
ads62p48Connections:
Subdevice port:
rawpropsSupported worker port:
rawpropsIndex:
0
Supported device worker:
ubx160_cpldConnections:
Subdevice port:
rawpropsSupported worker port:
rawpropsIndex:
1
Supported device worker:
max2871Connections:
Subdevice port:
rawpropsSupported worker port:
rawpropsIndex:
5
Interfaces (other than data I/O ports):
Subdevice Connections:
Worker Signals
RX_LSADC_MISODirection:
inDifferential:
falsePin:
false
RX_MISODirection:
inDifferential:
falsePin:
false
TX_LSADC_MISODirection:
inDifferential:
falsePin:
false
TX_MISODirection:
inDifferential:
falsePin:
false
SCLKDirection:
outDifferential:
falsePin:
false
MOSIDirection:
outDifferential:
falsePin:
false
ADC_SENDirection:
outDifferential:
falsePin:
false
TX_SENDirection:
outDifferential:
falsePin:
false
RX_SENDirection:
outDifferential:
falsePin:
false
RX_LSADC_SENDirection:
outDifferential:
falsePin:
false
RX_LSDAC_SENDirection:
outDifferential:
falsePin:
false
TX_LSADC_SENDirection:
outDifferential:
falsePin:
false
TX_LSDAC_SENDirection:
outDifferential:
falsePin:
false
ADC_RESETDirection:
outDifferential:
falsePin:
false
LOCKD_RXDirection:
inDifferential:
falsePin:
false
LOCKD_TXDirection:
inDifferential:
falsePin:
false
CRXLO1_MUXDirection:
inDifferential:
falsePin:
false
CRXLO2_MUXDirection:
inDifferential:
falsePin:
false
cFE_RXATTDirection:
outWidth:
6Differential:
falsePin:
false
MCTRL_SPI_ADRDirection:
outWidth:
3Differential:
falsePin:
false
MCTRL_RESETnDirection:
outDifferential:
falsePin:
false
MCTRL_RX2_ENDirection:
outDifferential:
falsePin:
false
MCTRL_ATR_TXDirection:
outDifferential:
falsePin:
false
MCTRL_ATR_RXDirection:
outDifferential:
falsePin:
false
CTXLO1_MUXDirection:
inDifferential:
falsePin:
false
CTXLO2_MUXDirection:
inDifferential:
falsePin:
false
cFE_TXATTDirection:
outWidth:
6Differential:
falsePin:
false
LED_TXRX_RXDirection:
outDifferential:
falsePin:
false
LED_TXRX_TXDirection:
outDifferential:
falsePin:
false
LED_RXDirection:
outDifferential:
falsePin:
false
Utilization
Utilization reporting is not currently implemented.