3.2.1. JESD204B Subsystem in Platform Designer
The JESD204B subsystem instantiates the following modules:
- F-Tile JESD204B Intel® FPGA IP
- F-Tile Reference and System PLL Clocks IP
- Reset sequencers
- Avalon® memory-mapped bridge
F-Tile JESD204B IP
The generated design example is a self-contained system with its own JESD204B IP core instantiation that is separate from the IP core that is generated from the IP tab. The JESD204B IP base core and PHY layer connect to System Console through the Avalon® memory-mapped interconnect. The JESD204B IP core uses three separate Avalon® memory-mapped ports:
- Base core TX data path—for accessing the TX CSR
- Base core RX data path—for accessing the RX CSR
- PHY layer—for accessing the transceiver PHY CSR
The structure of the design example varies depending on the values of these JESD204B IP core parameters:
- Data path:
- Duplex—both TX and RX data paths and CSR interfaces present
- Transmitter—only TX data path and CSR interface present
- Receiver—only RX data path and CSR interface present
F-Tile Reference and System PLL Clocks IP
The F-Tile Reference and System PLL Clocks IP must be instantiated for designs utilizing F-Tile transceiver PHY operating in system clocking mode.
Each system PLL can use any one of eight FGT reference clocks.
The system PLL instantiated in the design example is configured to run all available lanes at data rate/20 frequency, the same frequency as the native PMA clocking rate. The system PLL shares the same reference clock with the transceiver PLL reference clock.
Reset Sequencers
The reset sequencer is a standard Platform Designer component in the IP Catalog standard library. The reset sequencer generates the following system resets to reset various modules in the system:
- Core PLL reset—resets the core PLL
- TX/RX JESD204B IP core CSR reset—resets the TX/RX JESD204B IP core CSRs
- TX/RX JESD204B IP MAC and Tile reset—resets the TX/RX JESD204B IP core base module and the Tile
- TX/RX link reset—resets the TX/RX transport layer link interface
- TX/RX frame reset—resets the TX/RX transport layer, upstream and downstream modules
The reset sequencer has hard and soft reset options. The hard reset port connects to the global reset input pin in the top level design. The soft reset is activated via Parallel I/O's Avalon® memory-mapped interface by TCL scripts (System Console control). When you assert a hard or soft reset, the reset sequencer cycles through all the various module resets based on a pre-set sequence. The figure below illustrates the sequence and also shows how the reset sequencer output ports correspond to the modules that are being reset.
Two reset sequencers are used for independent TX and RX resets. The following tables show the reset sequencer input output port connections.
Reset Sequencer Input/Output | Reset Signal |
reset_in0 | mgmt_rst_in_n |
reset_out0 | core_pll_rst |
reset_out1 | jesd204_tx_avs_rst_n |
reset_out2 | jesd204_tx_rst_n |
reset_out3 | txlink_rst_n (transport layer) |
reset_out4 | txframe_rst_n (transport layer) |
Reset Sequencer Input/Output | Reset Signal |
reset_in0 | mgmt_rst_in_n |
reset_out0 | jesd204_rx_avs_rst_n |
reset_out1 | jesd204_rx_rst_n |
reset_out2 | rxlink_rst_n (transport layer) |
reset_out3 | rxframe_rst_n (transport layer) |
- Reset Release Intel FPGA IP deasserts the nINIT_DONE when the FPGA enters user mode.
- The deasserted global_rst_n releases the example design reset. The mgmt_rst_in_n deasserts the reset input of reset sequencers.
- The core PLL (IOPLL) resets are released.
- When the core PLL is locked, the JESD204B IP CSR resets (jesd204_tx/rx_avs_rst_n) are released and start CSR configuration.
- For the transmitter, when the CSR configuration is done, the core PLL is locked and the IP reset handshake indicates jesd204_tx_rst_ack_n==0, release JESD204B TX reset, jesd204_tx_rst_n.
- The jesd204_tx_rst_ack_n asserts to 1 when the TX tile is out of reset.
- Finally, the JESD204B IP asserts jesd204_tx_out_of_reset==1. The design example's txlink_rst_n and txframe_rst_n are released. The transport layer assembler and pattern generator are now active. The Avalon® streaming interface data transfer begins when JESD204B IP is ready.
- For the receiver, when CSR configuration is done, the core PLL is locked and the IP reset handshake indicates jesd204_rx_rst_ack_n==0, release JESD204B RX reset, jesd204_rx_rst_n.
- The jesd204_rx_rst_ack_n asserts to 1 when the RX tile is out of reset.
- Finally, the JESD204B IP asserts jesd204_rx_out_of_reset==1. The design example's rxlink_rst_n and rxframe_rst_n are released. The transport layer deassembler and pattern checker are now active. The jesd204_rx_link_valid asserts when the link is valid.
- Anytime you want to reset the design example, the reset can be applied through the PIO soft reset (hw_rst) or global_rst_n. The reset must be asserted when jesd204_tx_rst_ack_n and jesd204_rx_rst_ack_n are asserted to 1. Asserting the reset puts the core PLL, JESD204B IP, and design example components into the reset state.
Avalon® Memory-Mapped Bridge
All the Avalon® memory-mapped submodules in the JESD204B subsystem are connected via Avalon® memory-mapped interconnect to a single Avalon® memory-mapped bridge. This bridge is the single interface for Avalon® memory-mapped communications into and out of the subsystem.
JTAG to Avalon® Master Bridge
The JTAG-to- Avalon® memory-mapped interface master bridge provides a connection between the JTAG host to access the memory-mapped JESD204B IP, F-Tile PMA, PIO control and status, Reset Sequencer control, and SPI Master module.
When the Avalon® memory-mapped interface domain is operating at the mgmt_clk domain, the mgmt_clk is required to be 2x faster than JTAG clock. The mgmt_clk is set to be 100 Mhz in this design example.
- Avalon® Streaming Interface Serial Peripheral Interface and Avalon® Streaming Interface JTAG Interface—Accepts incoming data in bits and packs them into bytes.
- Avalon® Streaming Interface Bytes to Packets Converter—Transforms packets into encoded stream of bytes, and a likewise encoded stream of bytes into packets.
- Avalon® Streaming Interface Packets to Transactions Converter—Transforms packets with data encoded according to a specific protocol into Avalon® memory-mapped interface transactions, and encodes the responses into packets using the same protocol.
- Avalon® Streaming Interface Single Clock FIFO—Buffers data from the Avalon® Streaming Interface JTAG Interface core. The FIFO is only used in the JTAG to Avalon® Master Bridge.
For the bridges to successfully transform the incoming streams of bytes to Avalon® memory-mapped interface transactions, the streams of bytes must be constructed according to the protocols used by the cores.
- Data loss at the master interface
- Command to run indefinitely with no response at the system console
The following figure shows how a bytestream changes through the different layers in the bridges.
JESD204B Platform Designer Address Map
Access the address map of the submodules in the JESD204B subsystem by clicking on the Address Map tab in the Platform Designer window. You can access the Avalon® memory-mapped interface slaves through the following address map.
Avalon® Memory-Mapped Interface Slave Component | Address (32bit access, byte addressing) |
JESD204B RX IP Core | 0x000D_0000 – 0x000D_03FF |
JESD204B TX IP Core | 0x000C_0000 – 0x000C_03FF |
Reset Sequencer 0 | 0x000E_0000 – 0x000E_00FF |
Reset Sequencer 1 | 0x000E_0100 – 0x000E_01FF |
F-tile PMA AVMM | 0x0100_0000 – 0x017F_FFFF |
Core PLL reconfig | 0x0201_0000 – 0x0201_03FF |
SPI Control | 0x0202_0000 – 0x0202_001F |
PIO Control | 0x0202_0020 – 0x0202_002F |
PIO Status | 0x0202_0040 – 0x0202_004F |