Skip to content

single_ch_tx_task

rfsoc_rfdc.transmitter.single_ch_tx_task

Attributes

Classes

SingleChTxTask(overlay, mode='iq2real')

Bases: OverlayTask

Single-Channel Tx Task

Source code in rfsoc_rfdc/transmitter/single_ch_tx_task.py
def __init__(self, overlay, mode="iq2real"):
    super().__init__(overlay, name="SingleChTxTask")
    # Hardware IPs
    self.dma_ip = self.ol.dac_datapath.data_mover_ctrl
    self.fifo_count_ip = AxiGPIO(
        self.ol.ip_dict['dac_datapath/fifo_count']).channel1
    # Initialize Tx channels
    self._channel_factory(mode)
    self._layout_factory(mode)
Attributes
dma_ip = self.ol.dac_datapath.data_mover_ctrl instance-attribute
fifo_count_ip = AxiGPIO(self.ol.ip_dict['dac_datapath/fifo_count']).channel1 instance-attribute
Functions
run()
Source code in rfsoc_rfdc/transmitter/single_ch_tx_task.py
def run(self):
    while self.task_state != TASK_STATE["STOP"]:
        if self.task_state == TASK_STATE["RUNNING"]:
            self.tx_ch.stream(duty_cycle=100)
            time.sleep(1)
        else:
            self.tx_ch.tx_dma.stop()
            time.sleep(1)