Skip to content

cmac_task

CMAC (100 Gb Ethernet MAC) transceiver task for high-speed data transfer.

rfsoc_rfdc.cmac_task

Classes

CmacTask(overlay)

Bases: OverlayTask

Task for configuring CMAC 100G transceiver.

Initialize the task with the given overlay.

Source code in rfsoc_rfdc/cmac_task.py
def __init__(self, overlay):
    """Initialize the task with the given overlay."""
    super().__init__(overlay, name="RfdcTask")
    self.cmac = overlay.cmac_usplus_0

    # Put CMAC in internal Loopback Mode
    self.cmac.internal_loopback = 0

    # Bring up the CMAC Core
    self.cmac.start()
Attributes
cmac = overlay.cmac_usplus_0 instance-attribute
Functions
run()
Source code in rfsoc_rfdc/cmac_task.py
def run(self):
    while True:
        time.sleep(1)
        logging.info(self.cmac.getStats(False))