JESD204B Intel® Arria® 10 FPGA IP Design Example User Guide

ID 683113
Date 10/14/2022
Public
Document Table of Contents

1.2.10. Software Control Flow

Note: The software control flow is only supported by the Nios Control design example.

The key feature of the Nios Control design example is the ability to control the behavior of the JESD204B system using a C-based, software control flow.

The software control flow allows you to perform the following tasks:

  • System reset—ability to reset individual modules (core PLL, transceiver PHY, JESD204B base Avalon-MM interface, link clock domain, and frame clock domain) independently or in sequence.
  • Initial and dynamic, real-time configuration of external converter devices via SPI interface.
  • Dynamic reconfiguration of key modules in the design example subsystem (for example, JESD204B IP core base layer, transceiver PHY, core PLL).
  • Error handling via interrupt service routines (ISR).
  • Status register readback.
  • Dynamic switching between real-time operation and test mode.

The software C code included as part of the design example only performs basic JESD204B link initialization. You can modify the code to perform some or all of the tasks above as per your system specifications. The software C code (main.c) executes a sequence of tasks as shown in the figure below.

Note: The software C code assumes that the Nios Control design is configured in duplex mode. Make your own modifications if using simplex mode design.
Figure 17. Software C Code Task Sequence

The JESD204B link initialization sequence accomplishes the following tasks:

  • Set the pattern type for the pattern generator and checker. The default pattern type is set to PRBS.
  • Set the loopback mode. The default is internal serial loopback mode.
  • Pulse SYSREF (required to meet Subclass 1 requirements)
  • Wait 10 seconds to allow for changes to take effect.
  • Report the link status.