ad9146 HDL Worker
Device worker for the AD9146 Dual, 16-Bit, 1230 MSPS DAC.
Detail
Registers
The raw properties corresponding to the AD9146 registers are directly
connected to the rawprops interface. This is required to be connected to a
separate SPI worker that converts reads and writes to the raw properties to SPI
transfers to the device.
Data transmission
The AD9146 receives data over an 8-bit parallel LVDS bus with a source synchronous clock. The data is transmitted as edge aligned DDR data at twice the sample rate, with the I channel data transferred on the first two clock edges and the Q channel data transferred on the second two clock edges. This is illustrated by the following diagram from the datasheet:
To transmit the data several clock domains are used that are generated by the LMK04816 worker and distributed of a devsignals interface. It is important that these clocks have the correct phase relationship, and that the correct constraints are used, to ensure that correct timing is achieved on the LVDS interface.
The data is received over a devsignals interface using the qdac-16-signals
protocol. This is intended to interface to a data_sink_qdac_csts device
worker. The radclk clock domain is supplied over the devsignals interface
to be used to clock the data.
The data transmitted to the DAC is updated when both the valid signal from the
devsignals interface and the enable property are asserted. This allows the
DRC to enable the data stream when the full RF path has been configured.
Worker Properties
enableType:
boolAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
commType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
power_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
tx_enable_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
data_formatType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
interrupt_enable_0Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
interrupt_enable_1Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
event_flag_0Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
event_flag_1Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
clock_receiver_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_pad_0x09Type:
ucharArray dimensions:
['1']
Access:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
pll_control_0Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_pad_0x0bType:
ucharArray dimensions:
['1']
Access:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
pll_control_1Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
pll_control_2Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
pll_status_0Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
pll_status_1Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sync_control_0Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sync_control_1Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sync_status_0Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sync_status_1Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_pad_0x14Type:
ucharArray dimensions:
['1']
Access:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
data_receiver_statusType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
dci_delayType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
fifo_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
fifo_status_0Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
fifo_status_1Type:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_pad_0x1aType:
ucharArray dimensions:
['1']
Access:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
datapath_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
hb1_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
hb2_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
datapath_configType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
chip_idType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_pad_0x20_to_0x37Type:
ucharArray dimensions:
['24']
Access:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
i_phase_adj_lsbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
i_phase_adj_msbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_phase_adj_lsbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_phase_adj_msbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
i_dac_offset_lsbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
i_dac_offset_msbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_dac_offset_lsbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_dac_offset_msbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
i_dac_fs_adjustType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
i_dac_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
i_aux_dac_dataType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
i_aux_dac_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_dac_fs_adjustType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_dac_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_aux_dac_dataType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
q_aux_dac_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
die_temp_range_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
die_temp_lsbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
die_temp_msbType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_pad_0x4b_to_0x66Type:
ucharArray dimensions:
['28']
Access:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
sed_controlType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_i0_lsbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_i0_msbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_q0_lsbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_q0_msbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_i1_lsbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_i1_msbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_q1_lsbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
compare_q1_msbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sed_i_lsbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sed_i_msbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sed_q_lsbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
sed_q_msbsType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
ocpi_pad_0x74_to_7eType:
ucharArray dimensions:
['11']
Access:
Parameter:
FalseWritable:
FalseInitial:
FalseVolatile:
FalseRead back:
False
Default value:
None
revisionType:
ucharAccess:
Parameter:
FalseWritable:
TrueInitial:
FalseVolatile:
TrueRead back:
False
Default value:
None
Worker Ports
devrfclkrawpropsSupported device worker:
data_sink_qdac_cstsConnections:
Subdevice port:
devSupported worker port:
devIndex:
None
Interfaces:
Subdevice Connections:
Utilization
Utilization reporting is not currently implemented.