Ug - Jesd204b 683442 782339
Ug - Jesd204b 683442 782339
Ug - Jesd204b 683442 782339
IP Version: 20.1.0
Contents
2
Contents
8. Document Revision History for the JESD204B Intel FPGA IP User Guide..................... 173
3
683442 | 2023.07.20
Send Feedback
Note: For system requirements and installation instructions, refer to Intel FPGA Software
Installation & Licensing.
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
1. JESD204B IP Quick Reference
683442 | 2023.07.20
Item Description
Design Tools • Platform Designer parameter editor in the Intel Quartus® Prime software for design
creation and compilation
• Timing Analyzer in the Intel Quartus Prime software for timing analysis
• ModelSim* - Intel FPGA Edition, QuestaSim* simulator, Riviera-PRO*, VCS*/VCS MX,
and Xcelium* Parallel simulator software for design simulation or synthesis
Related Information
• JESD204B IP Core Design Example User Guide
Provides information about design examples for Arria V, Cyclone V, Stratix V,
and Intel Arria 10 devices using Intel Quartus Prime Standard Edition software.
• JESD204B Intel Arria 10 FPGA IP Design Example User Guide
• JESD204B Intel Stratix 10 FPGA IP Design Example User Guide
• JESD204B Intel Cyclone 10 GX FPGA IP Design Example User Guide
• JESD204B Intel Agilex 7 FPGA IP Design Example User Guide
• Intel FPGA Software Installation and Licensing
• Errata for JESD204B IP Core in the Knowledge Base
• AN803: Implementing ADC-Intel Arria 10 Multi-Link Design with JESD204B RX IP
Core
• AN804: Implementing ADC-Intel Stratix 10 Multi-Link Design with JESD204B RX IP
Core
• JESD204B Intel® FPGA IP Core – Support Center
• JESD204B Intel FPGA IP User Guide Archives on page 172
Provides a list of user guides for previous versions of the JESD204B IP core.
5
683442 | 2023.07.20
Send Feedback
Note: The full product name, JESD204B Intel FPGA IP, is shortened to JESD204B IP in this
document.
The JESD204B IP does not incorporate the Transport Layer (TL) that controls the
frame assembly and disassembly. The TL and test components are provided as part of
a design example component where you can customize the design for different
converter devices.
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
FPGA
Related Information
• V-Series Transceiver PHY User Guide
7
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
The Intel FPGA IP version (X.Y.Z) number can change with each Intel Quartus Prime
software version. A change in:
• X indicates a major revision of the IP. If you update the Intel Quartus Prime
software, you must regenerate the IP.
• Y indicates the IP includes new features. Regenerate your IP to include these new
features.
• Z indicates the IP includes minor changes. Regenerate your IP to include these
changes.
IP Version 20.1.0
Related Information
JESD204B Intel FPGA IP Release Notes
8
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Stratix V Final
Arria V Final
Cyclone V Final
The following terms define device support levels for Intel FPGA IP cores:
• Advance support—the IP core is available for simulation and compilation for this
device family. Timing models include initial engineering estimates of delays based
on early post-layout information. The timing models are subject to change as
silicon testing improves the correlation between the actual silicon and the timing
models. You can use this IP core for system architecture and resource utilization
studies, simulation, pinout, system latency assessments, basic timing assessments
(pipeline budgeting), and I/O transfer strategy (data-path width, burst depth, I/O
standards tradeoffs).
• Preliminary support—the IP core is verified with preliminary timing models for this
device family. The IP core meets all functional requirements, but might still be
undergoing timing analysis for the device family. It can be used in production
designs with caution.
• Final support—the IP core is verified with final timing models for this device family.
The IP core meets all functional and timing requirements for the device family and
can be used in production designs.
The JESD204B IP generates a single link with a single lane and up to a maximum of 8
lanes. If there are two ADC links that need to be synchronized, you have to generate
two JESD204B IP cores and then manage the deterministic latency and
synchronization signals, like SYSREF and SYNC_N, at your custom wrapper level.
The JESD204B IP supports duplex mode only if the LMF configuration for ADC (RX) is
the same as DAC (TX) and with the same data rate. This use case is mainly for
prototyping with internal serial loopback mode. This is because typically as a
unidirectional protocol, the LMF configuration of converter devices for both DAC and
ADC are not identical.
2.4. IP Variation
The JESD204B IP has three core variations:
• JESD204B MAC only
• JESD204B PHY only
• JESD204B MAC and PHY
9
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
In a subsystem where there are multiple ADC and DAC converters, you need to use
the Intel Quartus Prime software to merge the transceivers and group them into the
transceiver architecture. For example, to create two instances of the JESD204B TX IP
with four lanes each and four instances of the JESD204B RX IP with two lanes each,
you can apply one of the following options:
• MAC and PHY option
1. Generate JESD204B TX IP with four lanes and JESD204B RX IP with two lanes.
2. Instantiate the desired components.
3. Use the Intel Quartus Prime software to merge the PHY lanes.
• MAC only and PHY only option—based on the configuration above, there are a total
of eight lanes in duplex mode.
1. Generate the JESD204B Duplex PHY with a total of eight lanes. (TX skew is
reduced in this configuration as the channels are bonded).
2. Generate the JESD204B TX MAC with four lanes and instantiate it two times.
3. Generate the JESD204B RX MAC with two lanes and instantiate it four times.
4. Create a wrapper to connect the JESD204B TX MAC and RX MAC with the
JESD204B Duplex PHY.
Note: If the data rate for TX and RX is different, the transceiver does not allow duplex mode
to generate a duplex PHY. In this case, you have to generate a RX-only PHY on the RX
data rate and a TX-only PHY on the TX data rate.
N' Number of transmitted bits per sample (JESD204 word size, which is in 1-32
nibble group)
CF Number of control words per frame clock period per link 0-32
10
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Note: For Intel Stratix 10 devices, run-time access for certain registers have been disabled.
Refer to the TX and RX register map for more information.
The most critical parameters that must be set correctly during IP generation are the L
and F parameters. Parameter L denotes the maximum lanes supported while
parameter F denotes the size of the deskew buffer needed for deterministic latency.
The hardware generates during parameterization, which means that run-time
programmability can only fall back from the parameterized and generated hardware,
but not beyond the parameterized IP core.
You can use run-time configuration for prototyping or evaluating the performance of
converter devices with various LMF configurations. However, in actual production,Intel
recommends that you generate the JESD204B IP core with the intended LMF to get an
optimized gate count.
For example, if a converter device supports LMF = 442 and LMF = 222, to check the
performance for both configurations, you need to generate the JESD204B IP with
maximum F and L, which is L = 4 and F = 2. During operation, you can use the fall
back configuration to disable the lanes that are not used in LMF = 222 mode. You
must ensure that other JESD204B configurations like M, N, S, CS, CF, and HD do not
violate the parameter F setting. You can access the Configuration and Status Register
(CSR) space to modify other configurations such as:
• K (multiframe)
• device and lane IDs
• enable or disable scrambler
• enable or disable character replacement
F Parameter
This parameter indicates how many octets per frame per lane that the JESD204B link
is operating in.
• Intel Agilex 7 and Intel Stratix 10 (L-tile, H-tile, and E-tile) devices support F = 1–
256 (F = 3 available)
• Intel Cyclone 10 GX , Intel Arria 10, Stratix V, Arria V, Arria V GZ, and Cyclone V
devices support F = 1, 2, 4–256 (F = 3 not available)
To support the High Density (HD) data format, the JESD204B IP tracks the start of
frame and end of frame because F can be either an odd or even number. The start of
frame and start of multiframe wrap around the 32-bit data width architecture. The RX
IP outputs the start of frame (sof[3:0]) and start of multiframe (somf[3:0]),
which act as markers, using the Avalon streaming data stream. Based on these
markers, the transport layer build the frames.
In a simpler system where the HD data format is set to 0, the F will always be 1, 2, 4,
6, 8, and so forth. This simplifies the transport layer design, so you do not need to use
the sof[3:0] and somf[3:0] markers.
11
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Related Information
• Transmitter Registers on page 100
• Receiver Registers on page 123
The channel bonding mode that you select may contribute to the transmitter channel-
to-channel skew. A bonded transmitter datapath clocking provides low channel-to-
channel skew as compared to non-bonded channel configurations.
For Intel Stratix 10 L-tile and H-tile, Intel Arria 10, and Intel Cyclone 10 GX devices,
refer to PMA Bonding chapter of the respective Transceiver PHY User Guides , about
how to connect the ATX PLL and fPLL in bonded configuration and non-bonded
configuration. For the non-bonded configuration, refer to Implementing Multi-Channel
xN Non-Bonded Configuration. For bonded configuration, refer to Implementing x6/xN
Bonding Mode.
• In PHY-only mode, you can generate up to 32 channels, provided that the
channels are on the same side. In MAC and PHY integrated mode, you can
generate up to 8 channels.
Note: The maximum channels of 32 is for configuration simplicity. Refer to the
Intel FPGA Transceiver PHY User Guide for the actual number of channels
supported.
• In bonded channel configuration, the lower transceiver clock skew for all channels
result in a lower channel-to-channel skew.
— For Stratix V, Arria V, and Cyclone V devices, you must use contiguous
channels when you select bonded mode. The JESD204B IP automatically
selects between ×6, ×N or feedback compensation (fb_compensation)
bonding depending on the number of transceiver channels you set.
— For Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10 L-tile and H-tile
devices, you do not have to place the channels in bonded group contiguously.
Refer to Clock Network Selection for Bonded Mode for the clock network
selection. Refer to Channel Bonding section of the respective Transceiver PHY
User Guides for more information about PMA Bonding.
— For Intel Agilex 7 and Intel Stratix 10 E-tile devices, you must use contiguous
channels to enable channel bonding with NRZ PMA transceiver channels.
• In non-bonded channel configuration, the transceiver clock skew is higher and
latency is unequal in the transmitter phase compensation FIFO for each channel.
This may result in a higher channel-to-channel skew.
Table 6. Maximum Number of Lanes (L) Supported in Bonded and Non-Bonded Mode
Device Family Core Variation Bonding Mode Configuration Maximum Number of
Lanes (L)
12
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Stratix V Non-bonded 8
Arria V GZ
Cyclone V
Non-bonded 32 (2)
Non-bonded 8
Note: The clock network selection is not applicable for Intel Stratix 10 E-tile devices.
Intel Arria 10
Intel Cyclone 10 GX
Arria V ×N ×N
Cyclone V ×N ×N
Related Information
• V-Series Transceiver PHY User Guide
• Intel Arria 10 Transceiver PHY User Guide
• Intel Cyclone 10 GX Transceiver PHY User Guide
• L- and H-tile Transceiver PHY User Guide
• E-tile Transceiver PHY User Guide
• Intel Agilex 7 Device Data Sheet
• Intel Stratix 10 Device Datasheet
• Intel Arria 10 Device Datasheet
(2) The maximum lanes listed here is for configuration simplicity. Refer to the Intel FPGA
Transceiver PHY User Guides for the actual number of channels supported.
(3) Bonded mode is not supported for data rate > 15 Gbps. Refer to the respective datasheet for
the maximum data rate and channel span supported by the ×N clock network and the
transceiver power supply operating condition for your device.
13
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
(4)
Select Enable Soft PCS to achieve maximum data rate. For the TX IP core, enabling soft
PCS incurs an additional 3–8% increase in resource utilization. For the RX IP core, enabling
soft PCS incurs an additional 10–20% increase in resource utilization.
14
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Device Family PMA Speed Grade FPGA Fabric Data Rate Link Clock
Speed Grade FMAX
Enable Hard PCS Enable Soft PCS (MHz)
(Gbps) (Gbps) (4)
Intel Cyclone 10 GX <Any supported <Any supported 2.0 to 6.25 2.0 to 6.25 data
speed grade> speed grade> rate/40
Arria V GX/SX <Any supported <Any supported 1.0 to 6.55 — (11) data
speed grade> speed grade> rate/40
continued...
(4)
Select Enable Soft PCS to achieve maximum data rate. For the TX IP core, enabling soft
PCS incurs an additional 3–8% increase in resource utilization. For the RX IP core, enabling
soft PCS incurs an additional 10–20% increase in resource utilization.
(5) When using Soft PCS mode at 15.0 Gbps, the timing margin is very limited. You are advised
to enable high fitter effort, register duplication, and register retiming to improve timing
performance.
(6) Refer to the Intel Arria 10 and Intel Stratix 10 Device Datasheet for the maximum data rate
supported across transceiver speed grades and transceiver power supply operating conditions.
(7) For Intel Arria 10 GX 160, SX 160, GX 220 and SX 220 devices, the supported data rate is up
to 12.288 Gbps.
(8) For Intel Arria 10 GX 160, SX 160, GX 220 and SX 220 devices, the supported data rate is
11.0 Gbps.
(9) For Intel Arria 10 GX 160, SX 160, GX 220 and SX 220 devices, the supported data rate is
10.0 Gbps.
(10) When using Soft PCS mode at 12.5 Gbps, the timing margin is very limited. You are advised
to enable high fitter effort, register duplication, and register retiming to improve timing
performance.
15
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Device Family PMA Speed Grade FPGA Fabric Data Rate Link Clock
Speed Grade FMAX
Enable Hard PCS Enable Soft PCS (MHz)
(Gbps) (Gbps) (4)
Arria V GT/ST <Any supported <Any supported 1.0 to 6.55 4.0 to 7.5 data
speed grade> speed grade> (PMA direct) (11) rate/40
The following table lists the resources and expected performance of the JESD204B IP
core. These results are obtained using the Intel Quartus Prime software targeting the
following Intel FPGA devices:
• Cyclone V: 5CGTFD9E5F31I7
• Arria V GT/S/GT: 5AGXFB3H4F35C5
• Arria V GZ: 5AGZME5K2F40C3
• Stratix V: 5SGXEA7H3F35C3
• Intel Arria 10: 10AX115H2F34I2SGES
• Intel Stratix 10: 1SG280LN3F43E3VG
• Intel Cyclone 10 GX: 10CX105YF672I6G
All the variations for resource utilization are configured with the following parameter
settings:
JESD204B Subclass 1
PLL Type • ATX (for Intel Arria 10, Intel Cyclone 10 GX,
and Intel Stratix 10 L-tile and H-tile devices)
• CMU (for Arria V, Cyclone V, and Stratix V
devices)
continued...
(4)
Select Enable Soft PCS to achieve maximum data rate. For the TX IP core, enabling soft
PCS incurs an additional 3–8% increase in resource utilization. For the RX IP core, enabling
soft PCS incurs an additional 10–20% increase in resource utilization.
(11) Enabling Soft PCS does not increase the data rate for the device family and speed grade. You
are recommended to select the Enable Hard PCS option.
16
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Parameter Setting
Octets per frame (F) • 1 (For all devices, including Intel Stratix 10)
• 3 (For Intel Stratix 10 device only)
Note: The resource utilization data are extracted from a full design which includes the Intel FPGA
Transceiver PHY Reset Controller IP core. Thus, the actual resource utilization for the
JESD204B IP core should be smaller by about 15 ALMs and 20 registers.
Device Family Data Path Number of ALMs ALUTs Logic Memory Block
Lanes (L) Registers (M10K/M20K)
(12) (13)
(12) M10K for Arria V, Cyclone V devices, M20K for Arria V GZ, Stratix V, Intel Arria 10, Intel
Cyclone 10 GX, and Intel Stratix 10 devices.
(13) The Intel Quartus Prime software may auto-fit to use MLAB when the memory size is too
small. Conversion from MLAB to M20K or M10K was performed for the numbers listed above.
17
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Device Family Data Path Number of ALMs ALUTs Logic Memory Block
Lanes (L) Registers (M10K/M20K)
(12) (13)
(12) M10K for Arria V, Cyclone V devices, M20K for Arria V GZ, Stratix V, Intel Arria 10, Intel
Cyclone 10 GX, and Intel Stratix 10 devices.
(13) The Intel Quartus Prime software may auto-fit to use MLAB when the memory size is too
small. Conversion from MLAB to M20K or M10K was performed for the numbers listed above.
18
2. About the JESD204B Intel FPGA IP
683442 | 2023.07.20
Device Family Data Path Number of ALMs ALUTs Logic Memory Block
Lanes (L) Registers (M10K/M20K)
(12) (13)
Related Information
JESD204B Intel FPGA IP Parameters on page 36
(12) M10K for Arria V, Cyclone V devices, M20K for Arria V GZ, Stratix V, Intel Arria 10, Intel
Cyclone 10 GX, and Intel Stratix 10 devices.
(13) The Intel Quartus Prime software may auto-fit to use MLAB when the memory size is too
small. Conversion from MLAB to M20K or M10K was performed for the numbers listed above.
19
683442 | 2023.07.20
Send Feedback
3. Getting Started
Related Information
• Intel FPGA Software Installation & Licensing
• Introduction to Intel FPGA IP Cores
Provides general information about all Intel FPGA IP cores, including
parameterizing, generating, upgrading, and simulating IP cores.
• Creating Version-Independent IP and Platform Designer Simulation Scripts
Create simulation scripts that do not require manual updates for software or IP
version upgrades.
• Project Management Best Practices
Guidelines for efficient management and portability of your project and IP files.
The Intel Quartus Prime software installation includes the Intel FPGA IP library.
Integrate optimized and verified Intel FPGA IP cores into your design to shorten design
cycles and maximize performance. The Intel Quartus Prime software also supports
integration of IP cores from other sources. Use the IP Catalog (Tools ➤ IP Catalog)
to efficiently parameterize and generate synthesis and simulation files for your custom
IP variation. The Intel FPGA IP library includes the following types of IP cores:
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
3. Getting Started
683442 | 2023.07.20
Search for IP
Double-Click to Customize IP
The Intel Quartus Prime software installs IP cores in the following locations by default:
21
3. Getting Started
683442 | 2023.07.20
Note: The Intel Quartus Prime software does not support spaces in the installation path.
When the evaluation time expires for any licensed Intel FPGA IP in the design, the
design stops functioning. All IP cores that use the Intel FPGA IP Evaluation Mode time
out simultaneously when any IP core in the design times out. When the evaluation
time expires, you must reprogram the FPGA device before continuing hardware
verification. To extend use of the IP core for production, purchase a full production
license for the IP core.
You must purchase the license and generate a full production license key before you
can generate an unrestricted device programming file. During Intel FPGA IP Evaluation
Mode, the Compiler only generates a time-limited device programming file (<project
name>_time_limited.sof) that expires at the time limit.
22
3. Getting Started
683442 | 2023.07.20
Verify the IP in a
Supported Simulator
No
IP Ready for
Production Use?
Yes
Purchase a Full Production
IP License
Include Licensed IP
in Commercial Products
Note: Refer to each IP core's user guide for parameterization steps and implementation
details.
Intel licenses IP cores on a per-seat, perpetual basis. The license fee includes first-
year maintenance and support. You must renew the maintenance contract to receive
updates, bug fixes, and technical support beyond the first year. You must purchase a
full production license for Intel FPGA IP cores that require a production license, before
generating programming files that you may use for an unlimited time. During Intel
FPGA IP Evaluation Mode, the Compiler only generates a time-limited device
programming file (<project name>_time_limited.sof) that expires at the time
limit. To obtain your production license keys, visit the Intel FPGA Self-Service
Licensing Center.
The Intel FPGA Software License Agreements govern the installation and use of
licensed IP cores, the Intel Quartus Prime design software, and all unlicensed IP cores.
23
3. Getting Started
683442 | 2023.07.20
Related Information
• Intel FPGA Licensing Support Center
• Introduction to Intel FPGA Software Installation and Licensing
Note: Upgrading IP cores may append a unique identifier to the original IP core entity
names, without similarly modifying the IP instance name. There is no requirement to
update these entity references in any supporting Intel Quartus Prime file, such as the
Intel Quartus Prime Settings File (.qsf), Synopsys* Design Constraints File (.sdc),
or Signal Tap File (.stp), if these files contain instance names. The Intel Quartus
Prime software reads only the instance name and ignores the entity name in paths
that specify both names. Use only instance names in assignments.
IP Upgraded Indicates that your IP variation uses the latest version of the Intel FPGA IP core.
continued...
24
3. Getting Started
683442 | 2023.07.20
IP Component Outdated Indicates that your IP variation uses an outdated version of the IP core.
IP Upgrade Optional Indicates that upgrade is optional for this IP variation in the current version of the Intel
Quartus Prime software. You can upgrade this IP variation to take advantage of the latest
development of this IP core. Alternatively, you can retain previous IP core characteristics by
declining to upgrade. Refer to the Description for details about IP core version differences.
If you do not upgrade the IP, the IP variation synthesis and simulation files are unchanged
and you cannot modify parameters until upgrading.
IP Upgrade Required Indicates that you must upgrade the IP variation before compiling in the current version of
the Intel Quartus Prime software. Refer to the Description for details about IP core version
differences.
IP Upgrade Unsupported Indicates that upgrade of the IP variation is not supported in the current version of the
Intel Quartus Prime software due to incompatibility with the current version of the Intel
Quartus Prime software. The Intel Quartus Prime software prompts you to replace the
unsupported IP core with a supported equivalent IP core from the IP Catalog. Refer to the
Description for details about IP core version differences and links to Release Notes.
IP End of Life Indicates that Intel designates the IP core as end-of-life status. You may or may not be
able to edit the IP core in the parameter editor. Support for this IP core discontinues in
future releases of the Intel Quartus Prime software.
IP Upgrade Mismatch Provides warning of non-critical IP core differences in migrating IP to another device family.
Warning
IP has incompatible subcores Indicates that the current version of the Intel Quartus Prime software does not support
compilation of your IP variation, because the IP has incompatible subcores.
Compilation of IP Not Indicates that the current version of the Intel Quartus Prime software does not support
Supported compilation of your IP variation. This can occur if another edition of the Intel Quartus Prime
software, such as the Intel Quartus Prime Standard Edition, generated this IP. Replace this
IP component with a compatible component in the current edition.
25
3. Getting Started
683442 | 2023.07.20
Note: Beginning with the Intel Quartus Prime Pro Edition software version 19.1, IP upgrade
supports migration of IP released within one year of the Intel Quartus Prime Pro
Edition software version, as the following chart defines:
26
3. Getting Started
683442 | 2023.07.20
2. To upgrade one or more IP cores that support automatic upgrade, ensure that you
turn on the Auto Upgrade option for the IP cores, and click Auto Upgrade. The
Status and Version columns update when upgrade is complete. Example designs
that any Intel FPGA IP core provides regenerate automatically whenever you
upgrade an IP core.
3. To manually upgrade an individual IP core, select the IP core and click Upgrade in
Editor (or simply double-click the IP core name). The parameter editor opens,
allowing you to adjust parameters and regenerate the latest version of the IP core.
Generates/Updates Combined Simulation Setup Script for IP Runs “Auto Upgrade” on all Outdated Cores
Note: Intel FPGA IP cores older than Intel Quartus Prime software version 12.0 do
not support upgrade. Intel verifies that the current version of the Intel
Quartus Prime software compiles the previous two versions of each IP core.
The Intel FPGA IP Core Release Notes reports any verification exceptions for
Intel FPGA IP cores. Intel does not verify compilation for IP cores older than
the previous two releases.
Related Information
Intel FPGA IP Release Notes
27
3. Getting Started
683442 | 2023.07.20
• Filter IP Catalog to Show IP for active device family or Show IP for all
device families. If you have no project open, select the Device Family in IP
Catalog.
• Type in the Search field to locate any full or partial IP core name in IP Catalog.
• Right-click an IP core name in IP Catalog to display details about supported
devices, to open the IP core's installation folder, and for links to IP documentation.
• Click Search for Partner IP to access partner IP information on the web.
The parameter editor prompts you to specify an IP variation name, optional ports, and
output file generation options. The parameter editor generates a top-level Intel
Quartus Prime IP file (.ip) for an IP variation in Intel Quartus Prime Pro Edition
projects or Quartus IP file (.qip) for an IP variation in Intel Quartus Prime Standard
Edition projects.
(14) To include existing files, you must specify the directory path to where you installed the
JESD204B IP core. You must also add the user libraries if you installed the IP core Library in a
different directory from where you installed the Intel Quartus Prime software.
28
3. Getting Started
683442 | 2023.07.20
29
3. Getting Started
683442 | 2023.07.20
The Generate Example Design option generates supporting files for the
following entities:
• IP core for simulation—refer to Generating and Simulating the IP Testbench
• IP core design example for simulation—refer to Generating and Simulating the
Design Example section in the respective design example user guides.
• IP core design example for synthesis—refer to Compiling the JESD204B IP
Core Design Example section in the respective design example user guides.
8. Click Finish or Generate HDL to generate synthesis and other optional files
matching your IP variation specifications. The parameter editor generates the top-
level .ip, .qip or .qsys IP variation file and HDL files for synthesis and
simulation.
The top-level IP variation is added to the current Intel Quartus Prime project. Click
Project ➤ Add/Remove Files in Project to manually add a .qip or .qsys file
to a project. Make appropriate pin assignments to connect ports.
Note: Some parameter options are grayed out if they are not supported in a selected
configuration or it is a derived parameter.
Related Information
• JESD204B IP Core Design Example User Guide
Provides information about design examples for Arria V, Cyclone V, Stratix V,
and Intel Arria 10 devices using Intel Quartus Prime Standard Edition software.
• JESD204B Intel Arria 10 FPGA IP Design Example User Guide
• JESD204B Intel Stratix 10 FPGA IP Design Example User Guide
• JESD204B Intel Cyclone 10 GX FPGA IP Design Example User Guide
• JESD204B Intel Agilex 7 FPGA IP Design Example User Guide
To compile your design, click Start Compilation on the Processing menu in the Intel
Quartus Prime software. You can use the generated .ip or .qip file to include
relevant files into your project.
Related Information
• JESD204B IP Design Considerations on page 31
• Intel Quartus Prime Help
More information about compilation in Intel Quartus Prime software.
30
3. Getting Started
683442 | 2023.07.20
Related Information
Device Programming
For detailed information about the JESD204B design examples, refer to following user
guides:
Related Information
• JESD204B IP Core Design Example User Guide
Provides information about design examples for Arria V, Cyclone V, Stratix V,
and Intel Arria 10 devices using Intel Quartus Prime Standard Edition software.
• JESD204B Intel Arria 10 FPGA IP Design Example User Guide
• JESD204B Intel Stratix 10 FPGA IP Design Example User Guide
• JESD204B Intel Cyclone 10 GX FPGA IP Design Example User Guide
• JESD204B Intel Agilex 7 FPGA IP Design Example User Guide
You can connect standard interfaces like clock, reset, Avalon memory-mapped, Avalon
streaming, HSSI bonded clock, HSSI serial clock, and interrupt interfaces within
Platform Designer. However, for conduit interfaces, you are advised to export all those
interfaces and handle them outside of Platform Designer. (15) This is because conduit
interfaces are not part of the standard interfaces. Thus, there is no guarantee on
compatibility between different conduit interfaces.
Note: The Transport Layer provided in this JESD204B IP design example is not supported in
Platform Designer. Therefore, you must export all interfaces that connect to the
Transport Layer (for example, jesd204_tx_link interface) and connect them to a
transport layer outside of Platform Designer.
(15) You can also connect conduit interfaces within Platform Designer but you must create adapter
components to handle all the incompatibility issues like incompatible signal type and width.
31
3. Getting Started
683442 | 2023.07.20
Related Information
• JESD204B IP Core Design Example User Guide
Provides information about design examples for Arria V, Cyclone V, Stratix V,
and Intel Arria 10 devices using Intel Quartus Prime Standard Edition software.
• JESD204B Intel Arria 10 FPGA IP Design Example User Guide
• JESD204B Intel Stratix 10 FPGA IP Design Example User Guide
• JESD204B Intel Cyclone 10 GX FPGA IP Design Example User Guide
• JESD204B Intel Agilex 7 FPGA IP Design Example User Guide
You can create virtual pins to avoid making specific pin assignments for top-level
signals. This is useful when you want to perform compilation, but are not ready to
map the design to hardware. Intel recommends that you create virtual pins for all
unused top-level signals to improve timing closure.
Note: Do not create virtual pins for the clock or reset signals.
32
3. Getting Started
683442 | 2023.07.20
For Intel Agilex 7 and Intel Stratix 10 E-tile devices, use the E-Tile Channel Placement
Tool to get a valid pinout. Specify the transceiver mode as PMA direct - NRZ.
Related Information
E-Tile Channel Placement Tool
For E-tile devices, use the channel placement tool to assist you in making pin
assignments.
Note: For Intel Agilex 7 and Intel Stratix 10 E-tile devices, the transceiver PLL is within the
transceiver itself; so the design does not require external PLLs.
Intel recommends that you follow the PLL recommendations in the respective
Transceiver PHY user guides based on the data rates.
Note: The PMA width is 20 bits for Hard PCS and 40 bits for Soft PCS.
Related Information
• V-Series Transceiver PHY User Guide
• Intel Arria 10 Transceiver PHY User Guide
• Intel Cyclone 10 GX Transceiver PHY User Guide
• L- and H-tile Transceiver PHY User Guide
• E-tile Transceiver PHY User Guide
When you generate the JESD204B IP, your design is not yet complete and the
JESD204B IP is not yet connected in the design. The final clock names and paths are
not yet known. Therefore, the Intel Quartus Prime software cannot incorporate the
final signal names in the .sdc file that it automatically generates. Instead, you must
manually modify the clock signal names in this file to integrate these constraints with
the timing constraints for your full design.
This section describes how to integrate the timing constraints that the Intel Quartus
Prime software generates with your IP into the timing constraints for your design.
33
3. Getting Started
683442 | 2023.07.20
• JESD204B TX IP:
— txlink_clk
— reconfig_to_xcvr[0] (for Arria V, Cyclone V, and Stratix V devices only)
— reconfig_clk (for Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10
devices only)
— tx_avs_clk
• JESD204B RX IP:
— rxlink_clk
— reconfig_to_xcvr[0] (for Arria V, Cyclone V, and Stratix V devices only)
— reconfig_clk (for Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10
devices only)
— rx_avs_clk
In a functional system design, these clocks (except for reconfig_to_xcvr[0] clock)
are typically provided by the core PLL.
In the .sdc file for your project, make the following command changes:
• Specify the PLL clock reference pin frequency using the create_clock command.
• Derive the PLL generated output clocks from the PLL Intel FPGA IP (for Arria V,
Cyclone V and Stratix V) or IOPLL Intel FPGA IP (for Intel Arria 10 and Intel
Cyclone 10 GX) using the derive_pll_clocks command.
• For Intel Stratix 10 devices, Intel FPGA IOPLL IP core has SDC file which derives
the PLL clocks based on your PLL configurations. You need not add the
derive_pll_clocks command into your top level SDC file."
• Comment out the create_clock commands for the txlink_clk,
reconfig_to_xcvr[0] or reconfig_clk, and tx_avs_clk, rxlink_clk,
and rx_avs_clk clocks in the altera_jesd204.sdc file.
• Identify the base and generated clock name that correlates to the txlink_clk,
reconfig_clk, and tx_avs_clk, rxlink_clk, and rx_avs_clk clocks using
the report_clock command.
• Describe the relationship between base and generated clocks in the design using
the set_clock_groups command.
After you complete your design, you must modify the clock names in your .sdc file to
the full-design clock names, taking into account both the IP instance name in the full
design, and the design hierarchy. Be careful when adding the timing exceptions based
on your design, for example, when the JESD204B IP handles asynchronous timing
between the txlink_clk, rxlink_clk, pll_ref_clk, tx_avs_clk, rx_avs_clk,
and reconfig_clk (for Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10
devices only) clocks.
The table below shows an example of clock names in the altera_jesd204.sdc and
input clock names in the user design. In this example, there is a dedicated input clock
for the transceiver TX PLL and CDR at the refclk pin. The device_clk is the input
to the core PLL clkin pin. The IP and transceiver Avalon memory-mapped interfaces
have separate external clock sources with different frequencies.
34
3. Getting Started
683442 | 2023.07.20
However, if your design requires you to connect the rx_avs_clk and reconfig_clk
to the same clock, you need to put them in the same clock group.
The table below shows an example where the device_clk in this design is an input
into the transceiver refclk pin. The IP's Avalon memory-mapped interface shares the
same clock source as the transceiver management clock.
(16) For Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10 only.
(17) For Intel Agilex 7, Intel Stratix 10, Intel Cyclone 10 GX, and Intel Arria 10 only.
35
3. Getting Started
683442 | 2023.07.20
Original clock User design input Frequency Recommended SDC timing constraint
names in clock names (MHz)
altera_jesd204.sd
c
Main Tab
Data Path • Receiver Select the operation modes. This selection enables or disables the
• Transmitter receiver and transmitter supporting logic.
• Duplex • RX—instantiates the receiver to interface to the ADC.
• TX—instantiates the transmitter to interface to the DAC.
• Duplex—instantiates the receiver and transmitter to interface to
both the ADC and DAC.
Data Rate 1.0–19.2 Set the data rate for each lane.
• Intel Agilex 7 (E-tile)—2.0 Gbps to 19.2 Gbps
• Intel Stratix 10 (L-tile, H-tile, and E-tile)—2.0 Gbps to 16.0 Gbps
• Intel Cyclone 10 GX—2.0 Gbps to 6.25 Gbps
• Intel Arria 10—2.0 Gbps to 15.0 Gbps
• Stratix V—2.0 Gbps to 12.5 Gbps
• Cyclone V—1.0 Gbps to 5.0 Gbps
• Arria V—1.0 Gbps to 7.5 Gbps
• Arria V GZ—2.0 Gbps to 9.9 Gbps
Note: The maximum data rate is limited due to different device speed
grades, transceiver PMA speed grades, and PCS options. Refer to
Performance and Resource Utilization on page 14 for the
maximum data rate support.
continued...
36
3. Getting Started
683442 | 2023.07.20
Transceiver Tile • E-tile This option is available only when you target an Intel Stratix 10 device
• H-tile that supports both H-tile and E-tile. Select the transceiver tile you want
for your design.
When you select E-tile, you can only use soft PCS.
Note: For simplex variants with E-tile transceiver, the underneath
transceiver is in duplex mode. The merging of independent TX
and RX within a transceiver channel is not supported in this
version.
PLL Type • CMU Select the phase-locked loop (PLL) types, depending on the FPGA device
• ATX family. This parameter is not applicable to Intel Arria 10, Intel Cyclone
10 GX, and Intel Stratix 10 devices.
• Cyclone V—CMU
• Arria V—CMU
• Stratix V—CMU, ATX
PLL/CDR Reference Clock Variable Set the transceiver reference clock frequency for PLL or CDR.
Frequency • For Stratix V, Arria V, and Cyclone V devices, the frequency range
available for you to choose depends on the PLL type and data rate
that you select.
• For Intel Agilex 7, Intel Stratix 10, Intel Cyclone 10 GX, and Intel
Arria 10 devices, the frequency range available for you to choose
depends on the data rate.
VCCR_GXB and VCCT_GXB • 1.1V Select the supply voltage for the transceiver.
Supply Voltage for the • 1.0V For details about the minimum, typical, and maximum supply voltage
Transceiver specifications, refer to the Intel Stratix 10 Device Datasheet.
Note: Available only for Intel Stratix 10 L-tile and H-tile devices.
continued...
37
3. Getting Started
683442 | 2023.07.20
Enable Bit reversal and On, Off The JESD204B IP uses four 10-bit symbols (denoted as symbol3,
Byte reversal symbol2, symbol1, and symbol0) for the 8B/10B encoding scheme.
Symbol0 is the first symbol to be shifted out through the serial link
while symbol3 is the last symbol to be shifted out.
• Turn off this option to set the data transmission order to start from
the least significant bit (lsb) of each symbol. For example,
symbol0[0] is shifted out first, followed by symbol0[1], and so on
until the entire symbol0 is shifted out. The transmission continues
with symbol1[0] through symbol3[9].
• Turn on this option to set the data transmission order to start from
the most significant bit (lsb) of each symbol. For example,
symbol0[9] is shifted out first, followed by symbol0[8], and so on
until the entire symbol0 is shifted out. The transmission continues
with symbol1[9] through symbol3[0].
Enable Transceiver Dynamic On, Off Turn on this option to enable dynamic data rate change. For V series
Reconfiguration devices, when you enable this option, you need to connect the
reconfiguration interface to the transceiver reconfiguration controller.
(18)
For Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10 devices,
turn on this option to enable the Transceiver Native PHY reconfiguration
interface.
Enable Native PHY Debug On, Off Turn on this option for the Transceiver Native PHY IP core to include an
Master Endpoint (19) embedded Native PHY Debug Master Endpoint. This block connects
internally to the Avalon memory-mapped slave interface of the
Transceiver Native PHY and can access the reconfiguration space of the
transceiver. It can perform certain test and debug functions via JTAG
using System Console.
This parameter is valid only when you turn on the Enable Transceiver
Dynamic Reconfiguration parameter.
Note: Available only for Intel Agilex 7, Intel Stratix 10, Intel Cyclone
10 GX, and Intel Arria 10 devices.
Share Reconfiguration On, Off When enabled, Transceiver Native PHY presents a single Avalon
Interface (19) memory-mapped slave interface for dynamic reconfiguration of all
channels. In this configuration the upper address bits (Intel Stratix 10:
[log2<L>+10:11]; Intel Arria 10/Intel Cyclone 10 GX: [log2<L>+9:10])
of the reconfiguration address bus specify the selected channel. The
upper address bits only exist when L>1. Address bits (Intel Stratix 10:
[10:0]; Intel Arria 10/Intel Cyclone 10 GX: [9:0]) provide the register
offset address within the reconfiguration space of the selected channel.
L is the number of channel.
When disabled, the Native PHY IP core provides an independent
reconfiguration interface for each channel. For example, when a
reconfiguration interface is not shared for a four-channel Native PHY IP
instance, reconfig_address[9:0] corresponds to the
reconfiguration address bus of logical channel 0,
reconfig_address[19:10] correspond to the reconfiguration
address bus of logical channel 1, reconfig_address[29:20]
corresponds to the reconfiguration address bus of logical channel 2, and
reconfig_address[39:30] correspond to the reconfiguration
address bus of logical channel 3.
For configurations using more than one channel, this option must be
enabled when you turn on Enable Native PHY Debug Master
Endpoint.
continued...
(18) To perform dynamic reconfiguration, you have to instantiate the Transceiver Reconfiguration
Controller from the IP Catalog and connect it to the JESD204B IP core through the
reconfig_to_xcvr and reconfig_from_xcvr interface.
(19) To support the Transceiver Toolkit in your design, you must turn on this option.
38
3. Getting Started
683442 | 2023.07.20
Note: Available only for Intel Agilex 7, Intel Stratix 10, Intel Cyclone
10 GX, and Intel Arria 10 devices.
Provide Separate On, Off When enabled, transceiver dynamic reconfiguration interface presents
Reconfiguration Interface separate clock, reset, and Avalon memory-mapped slave interface for
for Each Channel each channel instead of a single wide bus. This option is only available
when Share Reconfiguration Interface is turned off.
Note: Available in Intel Quartus Prime Pro Edition only.
Enable Capability On, Off Turn on this option to enable capability registers, which provides high
Registers (19) level information about the transceiver channel's configuration.
Note: Available only for Intel Agilex 7, Intel Stratix 10, Intel Cyclone
10 GX, and Intel Arria 10 devices.
Set user-defined IP 0–255 Set a user-defined numeric identifier that can be read from the user
identifier identifier offset when you turn on the Enable Capability
Registers parameter.
Note: Available only for Intel Agilex 7, Intel Stratix 10, Intel Cyclone
10 GX, and Intel Arria 10 devices.
Enable Control and Status On, Off Turn on this option to enable soft registers for reading status signals
Registers (19) and writing control signals on the PHY interface through the embedded
debug. For more information, refer to the respective Transceiver User
Guides.
Note: Available only for Intel Agilex 7, Intel Stratix 10, Intel Cyclone
10 GX, and Intel Arria 10 devices.
Enable PRBS Soft On, Off Turn on this option to set the soft logic to perform pseudorandom binary
Accumulators (19) sequence (PRBS) bit and error accumulation when using the hard PRBS
generator and checker.
Note: Available only for Intel Agilex 7, Intel Stratix 10, Intel Cyclone
10 GX, and Intel Arria 10 devices.
Lanes per converter device (L) 1–8 Set the number of lanes per converter device.
Note: Refer to Performance and Resource Utilization on page 14
for the common supported range for L and the resource
utilization.
Converters per device (M) 1–256 Set the number of converters per converter device.
Enable manual F configuration On, Off Turn on this option to set parameter F in manual mode and enable
this parameter to be configurable. Otherwise, the parameter F is in
derived mode.
You have to enable this parameter and configure the appropriate F
value if the transport layer in your design is supporting Control
Word (CF) or High Density format(HD), or both.
Note: The auto derived F value using formula F= M*N'*S/(8*L)
may not apply if parameter CF or parameter HD, or both
are enabled.
Octets per frame (F) • 1–256 (for The number of octets per frame is derived from F= M*N'*S/(8*L).
Intel Stratix 10
devices only)
• 1, 2, 4–256
(for non Intel
Stratix 10
devices)
Converter resolution (N) 1–32 Set the number of conversion bits per converter.
Transmitted bits per sample (N') 1–32 Set the number of transmitted bits per sample (JESD204 word
size, which is in nibble group).
continued...
39
3. Getting Started
683442 | 2023.07.20
Samples per converter per 1–32 Set the number of transmitted samples per converter per frame.
frame (S)
Frames per multiframe (K) 1–32 Set the number of frames per multiframe. This value is dependent
on the value of F and is derived using the following constraints:
• The value of K must fall within the range of 17/F <= K <=
min(32, floor (1024/F))
• The value of F*K must be divisible by 4
Enable scramble (SCR) On, Off Turn on this option to scramble the transmitted data or descramble
the receiving data.
Control Bits (CS) 0–3 Set the number of control bits per conversion sample.
Control Words (CF) 0–32 Set the number of control words per frame clock period per link.
High density user data format On, Off Turn on this option to set the data format. This parameter controls
(HD) whether a sample may be divided over more lanes.
• On: High Density format
• Off: Data should not cross the lane boundary
Enable Error Code Correction On, Off Turn on this option to enable error code correction (ECC) for
(ECC_EN) memory blocks.
Phase adjustment request On, Off Turn on this option to specify the phase adjustment request to the
(PHADJ) DAC.
• On: Request for phase adjustment
• Off: No phase adjustment
This parameter is valid for Subclass 2 mode only.
Adjustment resolution step 0–15 Set the adjustment resolution for the DAC LMFC.
count (ADJCNT) This parameter is valid for Subclass 2 mode only.
Lane# checksum 0–255 Set the checksum for each lane ID.
Note: The PMA Adaptation parameters are available only for Intel Agilex 7 and Intel Stratix
10 E-tile devices. For more information about the PMA Adaptation parameters, refer
to the PMA Adaptation section in the E-tile Transceiver PHY User Guide.
Related Information
• E-Tile Transceiver PHY User Guide
• Performance and Resource Utilization on page 14
40
3. Getting Started
683442 | 2023.07.20
<variation name>.v or .vhd IP variation file, which defines a VHDL or Verilog HDL description of the custom IP.
Instantiate the entity defined by this file inside of your design. Include this file when
compiling your design in the Intel Quartus Prime software.
<variation name>.cmp A VHDL component declaration file for the IP variation. Add the contents of this file to
any VHDL architecture that instantiates the IP.
<variation name>.qip or .ip Contains Intel Quartus Prime project information for your IP variation.
<variation name>.tcl Tcl script file to run in Intel Quartus Prime software.
<variation name>.sip Contains IP library mapping information required by the Intel Quartus Prime
software.The Intel Quartus Prime software generates a . sip file during generation of
some Intel FPGA IPs. You must add any generated .sip file to your project for use by
NativeLink simulation and the Intel Quartus Prime Archiver.
<variation name>.spd Contains a list of required simulation files for your IP.
The testbench instantiates the JESD204B IP in duplex mode and connects with the
Intel FPGA Transceiver PHY Reset Controller IP. Some configurations are preset and
are not programmable in the JESD204B IP testbench. For example, the JESD204B IP
always instantiates in duplex mode even if RX or TX mode is selected in the JESD204B
parameter editor.
(20) For the ATX PLL supported range of reference clock frequencies, refer to the respective device
datasheet.
41
3. Getting Started
683442 | 2023.07.20
Reference
Clock
Generator ATX PLL
JESD204B
IP Core
Transceiver PHY Reset (TX)
Controller IP Core
Link Clock
Generator
JESD204B
Transceiver PHY Reset IP Core
Controller IP Core (RX)
AVS Clock
Generator
Packet
Packet
Checker
Note: Some configurations are preset and are not programmable in the JESD204B IP
testbench. For more details, refer to JESD204B IP Testbench on page 41 or the
README.txt file located in the <example_design_directory>/ip_sim folder.
42
3. Getting Started
683442 | 2023.07.20
To run the Tcl script using the Intel Quartus Prime software, follow these steps:
1. Launch the Intel Quartus Prime software.
2. On the View menu, click Utility Windows ➤ Tcl Console.
3. In the Tcl Console, type cd <example_design_directory>/ip_sim to go to
the specified directory.
4. Type source gen_sim_verilog.tcl (Verilog) or source gen_sim_vhdl.tcl
(VHDL) to generate the simulation files.
To run the Tcl script using the command line, follow these steps:
1. Obtain the Intel Quartus Prime software resource.
2. Type cd <example_design_directory>/ip_sim to go to the specified
directory.
3. Type quartus_sh -t gen_sim_verilog.tcl (Verilog) or quartus_sh -t
gen_sim_vhdl.tcl (VHDL) to generate the simulation files.
QuestaSim simulator
QuestaSim simulator
43
3. Getting Started
683442 | 2023.07.20
To simulate the testbench design using the ModelSim - Intel FPGA Edition/ModelSim -
Intel FPGA Starter Edition or QuestaSim simulator, follow these steps:
1. Launch the ModelSim - Intel FPGA Edition/ModelSim - Intel FPGA Starter Edition or
QuestaSim simulator.
2. On the File menu, click Change Directory ➤ Select
<example_design_directory>/ip_sim/testbench/<simulator name>.
3. On the File menu, click Load ➤ Macro file. Select run_altera_jesd204_tb.tcl.
This file compiles the design and runs the simulation automatically, providing a
pass or fail indication on completion.
To simulate the testbench design using the Aldec Riviera-PRO simulator, follow these
steps:
1. Launch the Aldec Riviera-PRO simulator.
2. On the File menu, click Change Directory ➤ Select
<example_design_directory>/ip_sim/testbench/<simulator name>.
3. On the Tool menu, click Execute Macro. Select run_altera_jesd204_tb.tcl.
This file compiles the design and runs the simulation automatically, providing a
pass or fail indication on completion.
To simulate the testbench design using the VCS, VCS MX (in Linux), or Cadence
simulators, follow these steps:
1. Launch the Synopsys VCS or VCS MX, or Cadence Xcelium Parallel simulator.
2. On the File menu, click Change Directory ➤ Select
<example_design_directory>/ip_sim/testbench/<simulator name>.
3. Run the run_altera_jesd204_tb.sh file. This file compiles the design and runs
the simulation automatically, providing a pass or fail indication on completion.
Related Information
Simulating Intel FPGA Designs
More information about Intel FPGA simulation models.
44
3. Getting Started
683442 | 2023.07.20
The testbench concludes by checking that all the packets have been received.
Note: For Intel Stratix 10 L-tile and H-tile devices, reset deassertion staggering of TX/RX
analog and digital reset happens before the assertion of TX/RX ready. The reset
staggering may incur long simulation time. You may observe the staggering of TX and
RX reset through tx_analogreset_stat, tx_digitalreset_stat,
rx_analogreset_stat, and rx_digitalreset_stat respectively.
45
683442 | 2023.07.20
Send Feedback
You can specify the datapath and wrapper for your design and generate them
separately.
The TX and RX blocks in the DLL utilizes the Avalon streaming interface to transmit or
receive data and the Avalon memory-mapped interface to access the CSRs. The TX
and RX blocks operate on 32-bit data width per channel, where the frame assembly
packs the data into four octets per channel. Multiple TX and RX blocks can share the
clock and reset if the link rates are the same.
jesd204_rx_top
ADC Application MAC (jesd204_rx_base) PHY (jesd204_rx_phy)
Layer SYSREF RX
SYNC~ Frame/Lane 8B/10B Driver
Alignment Decoder
Data Frame Descrambler Deserializer
Deassembly Character Buffer/
Replace/ Word
Monitor Aligner
Frame Clock
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
4. JESD204B IP Functional Description
683442 | 2023.07.20
Transceiver (Duplex)
TX CTL Per Device
Avalon-MM CSR Per Device
TX CSR
Per Device CSR CSR
To Avalon
Interface CSR
Bus Avalon-ST TX Frame 32 Bit PCS
Assembly Avalon-ST
Per Channel Soft Hard PCS
Per Device 32 Bits per Channel Data Link Serial Interface
Scrambler PCS and
Layer (TX) (TX_n, TX_p)
JESD204B (TX) Transceiver
(TX) Per Device
RXFRAME_CLK RXLINK_CLK
RX_INT SYSREF SYNC_N
RX CTL
Avalon-MM CSR Per Device
RX CSR
Per Device CSR CSR
To Avalon
Interface CSR
Bus RX Frame 32/40/80
Avalon-ST 32 Bit PCS
Deassembly Avalon-ST
Per Channel Soft PCS Hard PCS
Per Device 32 Bits per Channel Data Link Serial Interface
Descrambler PCS and
Layer (RX) (RX_n, RX_p)
JESD204B (RX) Transceiver
(RX) Per Device
JESD204B TX and RX Transport Layer with Base and Transceiver (Design Example)
32-Bit Architecture
The JESD204B IP consist of 32-bit internal datapath per lane. This means that
JESD204B IP expects the data samples to be assembled into 32-bit data (4 octets) per
lane in the transport layer before sending the data to the Avalon streaming data bus.
The JESD204B IP operates in the link clock domain. The link clock runs at (data
rate/40) because it is operating in 32-bit data bus after 8B/10B encoding.
As the internal datapath of the core is 32 bits, the (F × K) value must be in the order
of 4 to align the multiframe length on a 32-bit boundary. Apart from this, the
deterministic latency counter values such as LMFC counter, RX Buffer Delay (RBD)
counter, and Subclass 2 adjustment counter is the link clock count instead of frame
clock count.
The JESD204B IP and transport layer in the design example use the Avalon streaming
source and sink interfaces. There is no backpressure mechanism implemented in this
core. The JESD204B IP expects continuous stream of data samples from the upstream
device.
The Avalon memory-mapped slave interface provides access to internal CSRs. The
read and write data width is 32 bits (DWORD access). The Avalon memory-mapped
slave is asynchronous to the txlink_clk, txframe_clk, rxlink_clk, and
rxframe_clk clock domains. You are recommended to release the reset for the CSR
configuration space first. All run-time JESD204B configurations like L, F, M, N, N', CS,
CF, and HD should be set before releasing the reset for link and frame clock domain.
47
4. JESD204B IP Functional Description
683442 | 2023.07.20
Each write transfer has a writeWaitTime of 0 cycle while a read transfer has a
readWaitTime of 1 cycle and readLatency of 1 cycle.
Related Information
Avalon Interface Specifications
For more information about the Avalon streaming and Avalon memory-mapped
interfaces, including timing diagrams.
4.1. Transmitter
The transmitter block, which interfaces to DAC devices, takes one of more digital
sample streams and converts them into one or more serial streams.
48
4. JESD204B IP Functional Description
683442 | 2023.07.20
4.1.1.1. TX CGS
4.1.1.2. TX ILAS
49
4. JESD204B IP Functional Description
683442 | 2023.07.20
BID = Bank ID
50
4. JESD204B IP Functional Description
683442 | 2023.07.20
The JESD204B TX IP core also supports debug feature to continuously stay in ILAS
phase without exiting. You can enable this feature by setting the bit in
csr_ilas_loop register. There are two modes of entry:
• RX asserts SYNC_N and deasserts it after CGS phase. This activity triggers the
ILAS phase and the CSR stays in ILAS phase indefinitely until this setting changes.
• Link reinitialization through CSR is initiated. The JESD204B IP core transmits /K/
character and causes the RX converter to enter CGS phase. After RX deasserts
SYNC_N, the CSR enters ILAS phase and stays in that phase indefinitely until this
setting changes.
In ILAS loop, the multiframe transmission is the same where /R/ character (K28.0)
marks the start of multiframe and /A/ character (K28.3) marks the end of multiframe,
with dummy data in between. The dummy data is an increment of Dx.y.
The character replacement for non-scrambled mode in the IP core follows these
JESD204B specification rules:
• At end of frame (not coinciding with end of multiframe), which equals the last
octet in the previous frame, the transmitter replaces the octet with /F/ character
(K28.7). However, the original octet is encoded if an alignment character was
transmitted in the previous frame.
• At the end of a multiframe, which equals to the last octet in the previous frame,
the transmitter replaces the octet with /A/ character (K28.3), even if a control
character was already transmitted in the previous frame.
For devices that do not support lane synchronization, only /F/ character replacement
is done. At every end of frame, regardless of whether the end of multiframe equals to
the last octet in previous frame, the transmitter encodes the octet as /F/ character
(K28.7) if it fits the rules above.
The character replacement for scrambled data in the IP core follows these JESD204B
specification rules:
• At end of frame (not coinciding with end of multiframe), which equals to 0xFC
(D28.7), the transmitter encodes the octet as /F/ character (K28.7).
• At end of multiframe, which equals to 0x7C, the transmitter replaces the current
last octet as /A/ character (K28.3).
For devices that do not support lane synchronization, only /F/ character replacement
is done. At every end of frame, regardless of whether the end of multiframe equals to
0xFC (D28.7), the transmitter encodes the octet as /F/ character (K28.7) if it fits the
rules above.
51
4. JESD204B IP Functional Description
683442 | 2023.07.20
The 8B/10B encoder encodes the data before transmitting them through the serial
line. The 8B/10B encoding has sufficient bit transition density (3-8 transitions per 10-
bit symbol) to allow clock recovery by the receiver. The control characters in this
scheme allow the receiver to:
• synchronize to 10-bit boundary.
• insert special character to mark the start and end of frames and start and end of
multiframes.
• detect single bit errors.
The JESD204B IP core supports transmission order from MSB first as well as LSB first.
For MSB first transmission, the serialization of the left-most bit of 8B/10B code group
(bit "a") is transmitted first.
4.2. Receiver
The receiver block, which interfaces to ADC devices, receives the serial streams from
one or more TX blocks and converts the streams into one or more sample streams.
52
4. JESD204B IP Functional Description
683442 | 2023.07.20
4.2.1.1. RX CGS
The CGS phase is the link up phase that monitors the detection of /K28.5/ character.
After CGS phase, the receiver assumes that the first non-/K28.5/ character marks the
start of frame and multiframe. If the transmitter emits an initial lane alignment
sequence, the first non-/K28.5/ character is /K28.0/. Similar to the JESD204B TX IP
core, the csr_lane_sync_en is set to 1 by default, thus the RX core detects the /K/
character to /R/ character transition. If the csr_lane_sync_en is set to 0, the RX
core detects the /K/ character to the first data transition. An ILAS error and
unexpected /K/ character is flagged if either one of these conditions are violated.
When csr_lane_sync_en is set to 0, you have to disable data checking for the first
16 octets of data as the character replacement block takes 16 octets to recover the
end-of-frame pointer for character replacement. When csr_lane_sync_en is set to 1
(default JESD204B setting), the number of octets to be discarded depends on the
scrambler or descrambler block.
The receiver assumes that a new frame starts in every F octets. The octet counter is
used for frame alignment and lane alignment.
53
4. JESD204B IP Functional Description
683442 | 2023.07.20
Related Information
Scrambler/Descrambler on page 59
The frame alignment is monitored through the alignment character /F/. The
transmitter inserts this character at the end of frame. The /A/ character indicates the
end of multiframe. The character replacement algorithm depends on whether
scrambling is enabled or disabled, regardless of the csr_lane_sync_en register
setting.
In the JESD204B RX IP core, the same flexible buffer is used for frame and lane
alignment. Lane realignment gives a correct frame alignment because lane alignment
character doubles as a frame alignment character. A frame realignment can cause an
incorrect lane alignment or link latency. The course of action is for the RX to request
for reinitialization through SYNC_N. (22)
After the frame synchronization phase has entered FS_DATA, the lane alignment is
monitored via /A/ character (/K28.3/) at the end of multiframe. The first /A/ detection
in the ILAS phase is important for the RX core to determine the minimum RX buffer
release for inter-lane alignment. There are two types of error that is detected in lane
alignment phase:
• Arrival of /A/ character from multiple lanes exceed one multiframe.
• Misalignment detected during user data phase.
The realignment rules for lane alignment are similar to frame alignment:
• If two successive and valid /A/ characters are detected at the same position other
than the assumed end of multiframe—without receiving a valid/invalid /A/
character at the expected position between two /A/ characters—the receiver aligns
the lane to the position of the newly received /A/ characters.
• If a recent frame alignment causes the loss of lane alignment, the receiver
realigns the lane frame—which is already at the position of the first received /A/
character—at the unexpected position.
54
4. JESD204B IP Functional Description
683442 | 2023.07.20
The JESD204B RX IP core captures 14 octets of link configuration data that are
transmitted on the 2nd multiframe of the ILAS phase. The receiver waits for the
reception of /Q/ character that marks the start of link configuration data and then
latch it into ILAS octets, which are per lane basis. You can read the 14 octets captured
in the link configuration data through the CSR. You need to first set the
csr_ilas_data_sel register to select which link configuration data lane it is trying
to read from. Then, proceed to read from the csr_ilas_octet register.
The receivers in Subclass 1 and Subclass 2 modes store data in a memory buffer
(Subclass 0 mode does not store data in the buffer but immediately releases them on
the frame boundary as soon as the latest lane arrives.). The RX IP core detects the
start of multiframe of user data per lane and then wait for the latest lane data to
arrive. The latest data is reported as RBD count (csr_rbd_count) value which you
can read from the status register. This is the earliest release opportunity of the data
from the deskew FIFO (referred to as RBD offset).
The JESD204B RX IP core supports RBD release at 0 offset and also provides
programmable offset through RBD count. By default, the RBD release can be
programmed through the csr_rbd_offset to release at the LMFC boundary. If you
want to implement an early release mechanism, program it in the csr_rbd_offset
register. The csr_rbd_offset and csr_rbd_count is a counter based on the link
clock boundary (not frame clock boundary). Therefore, the RBD release opportunity is
at every four octets.
55
4. JESD204B IP Functional Description
683442 | 2023.07.20
Figure 14. Subclass 1 Deterministic Latency and Support for Programmable Release
Opportunity
SYSREF
SYSREF
The word aligner block identifies the MSB and LSB boundaries of the 10-bit character
from the serial bit stream. Manual alignment is set because the /K/ character must be
detected in either LSB first or MSB first mode. When the programmed word alignment
pattern is detected in the current word boundary, the PCS indicates a valid pattern in
the rx_sync_status (mapped as pcs_valid to the IP core). The code
synchronization state is detected after the detection of the /K/ character boundary for
all lanes.
The 8B/10B decoder decode the data after receiving the data through the serial line.
The JESD204B IP core supports transmission order from MSB first as well as LSB first.
The PHY layer can detect 8B/10B not-in-table (NIT) error and also running disparity
error.
4.3. Operation
56
4. JESD204B IP Functional Description
683442 | 2023.07.20
The JESD204B IP core maintains a LMFC counter that counts from 0 to (F × K/4)–1
and wraps around again. The LMFC counter starts counting at the deassertion of
SYNC_N signal from multiple DACs after synchronization. This is to align the LMFC
counter upon transmission and can only be done after all the converter devices have
deasserted its synchronization request signal.
The JESD204B IP core maintains a LMFC counter that counts from 0 to (F × K/4)–1
and wraps around again. The LMFC counter resets within two link clock cycles after
converter devices issue a common SYSREF frequency to all the transmitters and
receivers. The SYSREF frequency must be the same for converter devices that are
grouped and synchronized together.
The JESD204B IP core maintains a LMFC counter that counts from 0 to (F × K/4)–1
and wraps around again. The LMFC count starts upon reset and the logic device
always acts as the timing master. To support Subclass 2 for multi-link device, you
must deassert the resets for all JESD204B IP core links synchronously at the same
clock edge. This deassertion ensures that the internal LMFC counter is aligner across
multi-link. The converters adjust their own internal LMFC to match the master's
counter. The alignment of LMFC within the system relies on the correct alignment of
SYNC_N signal deassertion at the LMFC boundary.
The alignment of LMFC to RX logic is handled within the TX converter. The RX logic
releases SYNC_N at the LMFC tick and the TX converter adjust its internal LMFC to
match the RX LMFC.
57
4. JESD204B IP Functional Description
683442 | 2023.07.20
For the alignment of LMFC to the TX logic, the JESD204B TX IP core samples SYNC_N
from the DAC receiver and reports the relative phase difference between the DAC and
TX logic device LMFC in the TX CSR (dbg_phadj, dbg_adjdir, and dbg_adjcnt).
Based on the reported value, you can calculate the adjustment required. Then, to
initiate the link reinitialization through the CSR, set the value in the TX CSR
(csr_phadj, csr_adjdir, and csr_adjcnt). The values on the phase adjustment
are embedded in bytes 1 and 2 of the ILAS sequence that is sent to the DAC during
link initialization. On the reception of the ILAS, the DAC adjusts its LMFC phase by
step count value and sends back an error report with the new LMFC phase
information. This process may be repeated until the LMFC at the DAC and the logic
device are aligned.
Table 22. dbg_phadj, dbg_adjdir and dbg_adjcnt Values for Different SYNC_N
Deassertions
Case SYNC_N Signal Deassertion dbg_phadj dbg_adjdir dbg_adjcnt Value
Value Value
2 Happens at LMFC count value that is 1 0 Number of link clock cycles from the
equals or less than half of FxK/4 LMFC boundary to the detection of
value SYNC_N signal deassertion
3 Happens at LMFC count value that is 1 1 Number of link clock cycles from
more than half of FxK/4 value detection of the SYNC_N signal
deassertion to the next LMFC
boundary
LMFC Boundaries
txlink_clk
csr_f[7:0] 01
csr_k[4:0] 09
dbg_adjcnt[7:0] 00
dbg_adjdir
dbg_phadj
58
4. JESD204B IP Functional Description
683442 | 2023.07.20
txlink_clk
sync_n SYNC_N signal deassertion happens at LMFC count value that is equals or less than half of FxK/4 value
csr_f[7:0] 0f
csr_k[4:0] 01
dbg_adjcnt[7:0] 00 04
dbg_adjdir
dbg_phadj
txlink_clk
sync_n SYNC_N signal deassertion happens at LMFC count value that is more than half of FxK/4 value
csr_f[7:0] 0f
csr_k[4:0] 01
dbg_adjcnt[7:0] 00 03
dbg_adjdir
dbg_phadj
4.3.2. Scrambler/Descrambler
Both the scrambler and descrambler are designed in a 32-bit parallel implementation
and the scrambling/descrambling order starts from first octet with MSB first.
1 + x14 + x15
59
4. JESD204B IP Functional Description
683442 | 2023.07.20
In some applications, multiple converters are grouped together in the same group
path to sample a signal (referred as multipoint link). The FPGA can only start the
LMFC counter and its transition to ILAS after all the links deassert the synchronization
request. The JESD204B TX IP core provides three signals to facilitate this application.
The SYNC_N is the direct signal from the DAC converters. The error signaling from
SYNC_N is filtered and sent out as dev_sync_n signal. For Subclass 0, you need to
multiplex all the dev_sync_n signals in the same multipoint link and then input them
to the IP core through mdev_sync_n signal.
Figure 18. Subclass 0 — Combining the SYNC_N Signal for JESD204B TX IP Core
FPGA Device
JESD204B IP Core L
TX
SYNC_N
SYSREF SYNC_N Converter Device 0
DEV_SYNC_N
MDEV_SYNC_N
SYSREF Tied to
0 for Subclass 0
JESD204B IP Core L
TX
SYNC_N
SYSREF SYNC_N Converter Device 1
DEV_SYNC_N
MDEV_SYNC_N
JESD204B IP Core L
TX
SYNC_N
SYSREF SYNC_N Converter Device 2
DEV_SYNC_N
MDEV_SYNC_N
DAC Reference
Clock
FPGA Reference Clock Clock Chip SYNC* (1)
Note:
1. SYNC* is not associated to SYNC_N in the JESD204B specification. SYNC* refers to JESD204A (Subclass 0) converter devices that
may support synchronization via additional SYNC signaling.
For Subclass 1 implementation, you may choose to combine or not to combine the
SYNC_N signal from the converter device. If you implement two ADC converter devices
as a multipoint link and one of the converter is unable to link up, the functional link
still operates. You must manage the trace length for the SYSREF signal and also the
differential pair to minimize skew.
60
4. JESD204B IP Functional Description
683442 | 2023.07.20
The SYNC_N is the direct signal from the DAC converters. The error signaling from
SYNC_N is filtered and sent out as dev_sync_n output signal. The dev_sync_n
signal from the JESD204B TX IP core must loopback into the mdev_sync_n signal of
the same instance without combining the SYNC_N signal.
You must set the same RBD offset value (csr_rbd_offset) to all the JESD204B RX
IP cores within the same multipoint link for the RBD release (the latest lane arrival for
each of the links). The JESD204B RX IP core deskews and outputs the data when the
RBD offset value is met. The total latency is consistent in the system and is also the
same across multiple resets. Setting a different RBD offset to each link or setting an
early release does not guarantee deterministic latency and data alignment.
Figure 19. Subclass 1 — Combining the SYNC_N Signal for JESD204B TX IP Core
FPGA Device
JESD204B IP Core L
TX
SYNC_N
SYNC_N Converter Device 0
DEV_SYNC_N
SYSREF MDEV_SYNC_N
JESD204B IP Core L
TX
SYNC_N
SYNC_N Converter Device 1
DEV_SYNC_N
SYSREF MDEV_SYNC_N
JESD204B IP Core L
TX
SYNC_N
SYNC_N Converter Device 2
DEV_SYNC_N
SYSREF MDEV_SYNC_N
SYSREF (Subclass 1)
DAC Reference
FPGA Reference Clock Clock
Clock Chip
SYSREF and SYSREF SYSREF
Related Information
Programmable RBD Offset on page 151
61
4. JESD204B IP Functional Description
683442 | 2023.07.20
TX (Subclass 0)
TX (Subclass 1)
TX (Subclass 2)
Similar to Subclass 1 mode, the JESD204B TX IP core is in CGS phase upon reset
deassertion. The LMFC alignment between the converter and IP core starts after
SYNC_N deassertion. The JESD204B TX IP core detects the deassertion of SYNC_N and
compares the timing to its own LMFC. The required adjustment in the link clock
62
4. JESD204B IP Functional Description
683442 | 2023.07.20
domain is updated in the register map. You need to update the final phase adjustment
value in the registers for it to transfer the value to the converter during the ILAS
phase. The DAC adjusts the LMFC phase and acknowledge the phase change with an
error report. This error report contains the new DAC LMFC phase information, which
allows the loop to iterate until the phase between them is aligned.
RX (Subclass 0)
The JESD204B RX IP core drives and holds SYNC_N (dev_sync_n signal) low when it
is in reset. Upon reset deassertion, the JESD204B RX IP core checks if there is
sufficient /K/ character to move its state machine out of synchronization request.
Once sufficient /K/ character is detected, the IP core deasserts SYNC_N.
RX (Subclass 1)
The JESD204B RX IP core drives and holds the SYNC_N (dev_sync_n signal) low
when it is in reset. Upon reset deassertion, the JESD204B RX IP core checks if there is
sufficient /K/ character to move its state machine out of synchronization request.
Once the JESD204B IP link reset is deasserted and the next SYSREF pulse starts, the
IP core also ensures that at least one SYSREF rising edge is sampled before
deasserting SYNC_N. This is to prevent a race condition where the SYNC_N is
deasserted based on internal free-running LMFC count instead of the updated LMFC
count after SYSREF is sampled.
RX (Subclass 2)
The JESD204B RX IP core behaves the same as in Subclass 1 mode. In this mode, the
logic device is always the master timing reference. Upon SYNC_N deassertion, the ADC
adjusts the LMFC timing to match the IP core.
The JESD204B TX IP core can detect error reporting through SYNC_N when SYNC_N is
asserted for two frame clock periods (if F >= 2) or four frame clock periods (if F = 1).
When the downstream device reports an error through SYNC_N, the TX IP core issues
an interrupt. The TX IP core samples the SYNC_N pulse width using the link clock.
For a special case of F = 1, two frame clock periods are less than one link clock.
Therefore, the error signaling from the receiver may be lost. You must program the
converter device to extend the SYNC_N pulse to four frame clocks when F = 1.
The JESD204B RX IP core does not report an error through SYNC_N signaling. Instead,
the RX IP core issues an interrupt when any error is detected.
You can check the csr_tx_err, csr_rx_err0, and csr_rx_err1 register status to
determine the error types.
63
4. JESD204B IP Functional Description
683442 | 2023.07.20
TX/RX Device Clock: PLL selection during IP core The PLL reference clock used by the TX Transceiver PLL or
pll_ref_clk generation RX CDR.
This is also the recommended reference clock to the PLL
Intel FPGA IP core (for Arria V, Cyclone V, or Stratix V
devices) or IOPLL Intel FPGA IP core (for Intel Arria 10,
Intel Cyclone 10 GX, and Intel Stratix 10 devices).
TX/RX Link Clock: Data rate/40 The timing reference for the JESD204B IP core. The link
txlink_clk clock runs at data rate/40 because the IP core operates in a
32-bit data bus architecture after 8B/10B encoding.
rxlink_clk
For Subclass 1, to avoid half link clock latency variation, you
must supply the device clock at the same frequency as the
link clock.
The JESD204B transport layer in the design example
requires both the link clock and frame clock to be
synchronous.
TX/RX Frame Clock (in Data rate/(10 × F) The frame clock as per the JESD204B specification. This
design example): clock is applicable to the JESD204B transport layer and
txframe_clk other upstream devices that run in frame clock such as the
PRBS generator/checker or any data processing blocks that
rxframe_clk run at the same rate as the frame clock.
The JESD204B transport layer in the design example also
supports running the frame clock in half rate or quarter rate
by using the FRAMECLK_DIV parameter. The JESD204B
transport layer requires both the link clock and frame clock
to be synchronous. For more information, refer to the F1/
F2_FRAMECLK_DIV parameter description and its
relationship to the frame clock in the respective JESD204B
Intel FPGA IP design example user guides.
TX/RX Transceiver Serial Internally derived from the The serial clock is the bit clock to stream out serialized
Clock and Parallel Clock data rate during IP core data. The transceiver PLL supplies this clock and is internal
generation to the transceiver.
The parallel clock is for the transmitter PMA and PCS within
the PHY. This clock is internal to the transceiver and is not
exposed in the JESD204B IP core.
For Arria V, Cyclone V, and Stratix V devices, these clocks
are internally generated as the transceiver PLL is
encapsulated within the JESD204B IP core's PHY.
For Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10
L-tile and H-tile devices, you need to generate the
transceiver PLL based on the data rate and connect the
serial and parallel clock. You are recommended to select
medium bandwidth for the transceiver PLL setting. These
clocks are referred to as *serial_clk and
*bonding_clock in Intel Arria 10, Intel Cyclone 10 GX,
and Intel Stratix 10 L-tile and H-tile devices. Refer to the
respective Transceiver PHY IP Core User Guides for more
information.
TX/RX PHY Clock: Data rate/40 (for all devices The PHY clock generated from the transceiver parallel clock
txphy_clk except Arria V GT/ST in PMA for the TX path or the recovered clock generated from the
Direct mode) CDR for the RX path.
rxphy_clk
Data rate/80 (for There is limited use for this clock. Avoid using this clock
Arria V GT/ST devices in when PMA Direct mode is selected. Use this clock only if the
PMA Direct mode) JESD204B configuration is F=4 and the core is operating at
Subclass 0 mode. This clock can be used as input for both
the txlink_clk and txframe_clk, or rxlink_clk and
rxframe_clk.
When you set the PCS option to enable Hard PCS or Soft
PCS mode, the txphy_clk connects to the transceiver
tx_std_clkout signal and the rxphy_clk connects to
continued...
64
4. JESD204B IP Functional Description
683442 | 2023.07.20
TX/RX AVS Clock: 75–125 MHz The configuration clock for the JESD204B IP core CSR
jesd204_tx_avs_clk through the Avalon memory-mapped interface.
jesd204_rx_avs_clk
Transceiver Management 100 MHz–125 MHz (Intel The configuration clock for the transceiver CSR through the
Clock: Arria 10) Avalon memory-mapped interface. This clock is exported
reconfig_clk 100 MHz–125 MHz (Intel only when the transceiver dynamic reconfiguration option is
Cyclone 10 GX) enabled.
100 MHz–150 MHz (Intel This clock is only applicable for Intel Arria 10, Intel Cyclone
Stratix 10) 10 GX, and Intel Stratix 10 devices.
Related Information
• JESD204B IP Core Design Example User Guide
Provides information about design examples for Arria V, Cyclone V, Stratix V,
and Intel Arria 10 devices using Intel Quartus Prime Standard Edition software.
• JESD204B Intel Arria 10 FPGA IP Design Example User Guide
• JESD204B Intel Stratix 10 FPGA IP Design Example User Guide
• JESD204B Intel Cyclone 10 GX FPGA IP Design Example User Guide
• JESD204B Intel Agilex 7 FPGA IP Design Example User Guide
For the JESD204B IP in an FPGA logic device, you need one or two reference clocks as
shown in JESD204B Subsystem with Shared Transceiver Reference Clock and Core
Clock and JESD204B Subsystem with Separate Transceiver Reference Clock and Core
Clock. In the single reference clock design, the device clock is used as the transceiver
PLL reference clock and also the core PLL reference clock. In the dual reference clock
design, the device clock is used as the core PLL reference clock and the other
reference clock is used as the transceiver PLL reference clock. The available frequency
depends on the PLL type, bonding option, number of lanes, and device family. During
IP core generation, the Intel Quartus Prime software recommends the available
reference frequency for the transceiver PLL and core PLL based on user selection.
Note: Due to the clock network architecture in the FPGA, Intel recommends that you use the
device clock to generate the link clock and use the link clock as the timing reference.
You need to use the PLL Intel FPGA IP core (in Arria V, Cyclone V, and Stratix V
devices) or IOPLL Intel FPGA IP core (in Intel Arria 10, Intel Cyclone 10 GX, and Intel
Stratix 10 devices) to generate the link clock and frame clock. The link clock is used in
the JESD204B IP (MAC) and the transport layer. You are recommended to supply the
reference clock source through a dedicated reference clock pin.
Based on the JESD204B specification for Subclass 1, the device clock is the timing
reference and is source synchronous with SYSREF. To achieve deterministic latency,
match the board trace length of the SYSREF signal with the device clock. Maintain a
constant phase relationship between the device clock and SYSREF signal pairs going to
65
4. JESD204B IP Functional Description
683442 | 2023.07.20
the FPGA and converter devices. Ideally, the SYSREF pulses from the clock generator
should arrive at the FPGA and converter devices at the same time. To avoid half link
clock latency variation, you must supply the device clock at the same frequency as the
link clock.
The JESD204B protocol does not support rate matching. Therefore, you must ensure
that the TX or RX device clock (pll_ref_clk) and the PLL reference clock that
generates link clock (txlink_clk or rxlink_clk) and frame clock (txframe_clk
or rxframe_clk) have 0 ppm variation. Both PLL reference clocks should come from
the same clock chip.
Figure 20. JESD204B Subsystem with Shared Transceiver Reference Clock and Core
Clock
Note: This diagram is not applicable for Intel Agilex 7 and Intel Stratix 10 E-tile devices.
JESD204B IP
MAC PHY
SYSREF
JESD204B
Avalon-ST Avalon-ST Transceiver
User Logic Transport Clock Generator
PLL (2)
Layer
FPGA Device Trace
Clock SYSREF Converter Device
Matching (1) Clock
Trace Matching (1)
Converter Device
Notes:
1. The device clock to the Intel core PLL and SYSREF must be trace matched. The device clock to the converter device and SYSREF must be trace matched.
The phase offset between the SYSREF to the FPGA and converter devices should be minimal.
2. For Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10 L-tile and H-tile devices, the transceiver PLL is outside of the JESD204B IP. For Arria V, Cyclone V,
and Stratix V devices, the transceiver PLL is part of the JESD204B IP.
3. The core PLL provides the link clock and frame clock. The link clock and frame clock must be synchronous. The AVS clock (e.g. mgmt_clk) can be asynchronous
to the link and frame clock.
66
4. JESD204B IP Functional Description
683442 | 2023.07.20
Figure 21. JESD204B Subsystem with Separate Transceiver Reference Clock and Core
Clock
FPGA Device Core PLL (4)
(Normal Mode) (3)
Frame Clock avs_clock
Link Clock mgmt_clock
JESD204B IP Core
SYSREF FPGA Device Clock
MAC PHY Trace
Matching (1)
JESD204B
Avalon-ST Avalon-ST Transceiver
User Logic Transport Clock Generator
PLL (2)
Layer
FPGA Transceiver
Reference Clock SYSREF Converter Device
Clock
Trace Matching (1)
Converter Device
Notes:
1. The device clock to the Intel core PLL and SYSREF must be trace matched. The device clock to the converter device and SYSREF must be trace matched.
The phase offset between the SYSREF to the FPGA and converter devices should be minimal.
2. For Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10 L-tile and H-tile devices, the transceiver PLL is outside of the JESD204B IP core.
For Arria V, Cyclone V, Stratix V, and Intel Stratix 10 E-tile devices, the transceiver PLL is part of the JESD204B IP core.
3. The core PLL provides the link clock and frame clock. The link clock and frame clock must be synchronous. The AVS clock (e.g. mgmt_clk) can be asynchronous to the
link and frame clock.
4. You must use a dedicated reference clock input for the core PLL to compensate the FPGA clock network latency. This ensures that SYSREF is captured without any cycle variation.
Related Information
Clock Correlation on page 69
Due to the clock network architecture in the FPGA, JESD204B IP core does not use the
device clock to clock the SYSREF signal because the GCLK or RCLK is not fully
compensated. You are recommended to use the PLL Intel FPGA IP core (in Arria V,
Cyclone V, and Stratix V devices) or IOPLL Intel FPGA IP core (in Intel Arria 10, Intel
Cyclone 10 GX, and Intel Stratix 10 devices) to generate both the link clock and frame
clock. The PLL Intel FPGA IP core must operate in normal mode or source
synchronous mode and uses a dedicated reference clock pin as the input reference
clock source to achieve the following state:
• the GCLK and RCLK clock network latency is fully compensated.
• the link clock and frame clock at the registers are phase-aligned to the input of
the clock pin.
To provide consistency across the design regardless of frame clock and sampling clock,
the link clock is used as a timing reference.
The PLL Intel FPGA IP core should provide both the frame clock and link clock from the
same PLL as these two clocks are treated as synchronous in the design.
For Subclass 0 mode, the device clock is not required to sample the SYSREF signal
edge. The link clock does not need to be phase compensated to capture SYSREF.
Therefore, you can generate both the link clock and frame clock using direct mode in
67
4. JESD204B IP Functional Description
683442 | 2023.07.20
the PLL Intel FPGA IP core. If F = 4, where link clock is the same as the frame clock,
you can use the parallel clock output from the transceiver (txphy_clk or rxphy_clk
signal) except when the PCS option is in PMA Direct mode.
Related Information
Clock Correlation on page 69
The K parameter must be set between 1 to 32 and meet the requirement of at least a
minimum of 17 octets and a maximum of 1024 octets in a single multiframe. In a 32-
bit architecture, the K × F must also be in the order of four.
Based on hardware testing, to get a fixed latency, at least 32 octets are recommended
in an LMFC period so that there is a margin to tune the RBD release opportunity to
compensate any lane-to-lane deskew across multiple resets. If F = 1, then K = 32 is
optimal as it provides enough margin for system latency variation. If F = 2, then K =
16 and above (18/20/22/24/26/28/30/32) is sufficient to compensate lane-to-lane
deskew.
The JESD204B IP core implements the local multiframe clock as a counter that
increments in link clock counts. The local multiframe clock counter is equal to (F ×
K/4) in link clock as units. The rising edge of SYSREF resets the local multiframe clock
counter to 0. There are two CSR bits that controls SYSREF sampling.
• csr_sysref_singledet—resets the local multiframe clock counter once and
automatically cleared after SYSREF is sampled. This register also prevents CGS
exit to bypass SYSREF sampling.
• csr_sysref_alwayson—resets the local multiframe clock counter at every rising
edge of SYSREF that it detects. This register also enables the SYSREF period
checker. If the provided SYSREF period violates the F and K parameter, an
interrupt is triggered. However, this register does not prevent CGS-SYSREF race
condition.
Related Information
Clock Correlation on page 69
68
4. JESD204B IP Functional Description
683442 | 2023.07.20
Example 1
Targeted Device with LMF=222, K=16 and Data rate = 6.5 Gbps
Example 2
Targeted Device with LMF=244, K=16 and Data rate = 5.0 Gbps
Example 3
Targeted Device with LMF=421, K=32 and Data rate = 10.0 Gbps
(24) Eight link clocks mean that the local multiframe clock counts from values 0 to 7 and then loops
back to 0.
(25) The link clock and frame clock are running at the same frequency. You only need to generate
one clock from the Intel FPGA PLL or Intel FPGA IO PLL IP core.
(26) In this example, the frame clock may not be able to run up to 1 GHz in the FPGA fabric. The
JESD204B transport layer in the design example supports running the data stream of half rate
(1 GHz/2 = 500 MHz), at two times the data bus width or of quarter rate (1GHz/4 = 250 MHz),
at four times the data bus width.
69
4. JESD204B IP Functional Description
683442 | 2023.07.20
Targeted Device with LMF=883, K=32 and Data rate = 12.0 Gbps
Related Information
• Device Clock on page 65
• Link Clock on page 67
• Local MultiFrame Clock on page 68
You must provide a 25, 100, or 125 MHz free-running and stable clock to the
OSC_CLK_1 pin. The FPGA device's Internal Oscillator cannot be used for
transceiver calibration. Do not select this clock source as the Configuration clock
source in the Intel Quartus Prime software settings. For Intel Stratix 10 L-tile and H-
tile devices, refer to the Calibration section in the L- and H-Tile Transceiver PHY User
Guide.
(27) The JESD204B transport layer in the design example runs the data stream at half rate (400
MHz/2 = 200 MHz), two times the data bus width.
70
4. JESD204B IP Functional Description
683442 | 2023.07.20
Note: A critical warning message appears in the Intel Quartus Prime software if you do not
select any of the options for the Configuration clock source parameter.
Related Information
• L- and H-Tile Transceiver PHY User Guide
For more information about transceiver calibration.
• Intel Agilex 7 Configuration PHY User Guide
For more information about the OSC_CLK_1 requirements for Intel Agilex 7
devices.
• Intel Stratix 10 Configuration PHY User Guide
For more information about the OSC_CLK_1 requirements for Intel Stratix 10
devices.
Note: Ensure that the resets are synchronized to the respective clocks for reset assertion
and deassertion.
txlink_rst_n TX/RX Link Clock Active low reset. Intel recommends that you:
rxlink_rst_n • Assert the txlink_rst_n/rxlink_rst_n and
txframe_rst_n /rxframe_rst_n signals when
the transceiver is in reset.
• Deassert the txlink_rst_n and
txframe_rst_n signals after the Intel FPGA PLL
IP is locked and the tx_ready[] signal from the
Transceiver Reset Controller is asserted.
• Deassert the rxlink_rst_n and
rxframe_rst_n signals after the Transceiver CDR
rx_islockedtodata[] signal and rx_ready[]
signal from the Transceiver Reset Controller are
asserted.
The txlink_rst_n/rxlink_rst_n and
txframe_rst_n /rxframe_rst_n signals can be
deasserted at the same time. These resets can only be
deasserted after you configure the CSR registers.
txframe_rst_n TX/RX Frame Clock Active low reset controlled by the clock and reset unit.
rxframe_rst_n If the TX/RX link clock and the TX/RX frame clock has
the same frequency, both can share the same reset.
continued...
71
4. JESD204B IP Functional Description
683442 | 2023.07.20
tx_analogreset[L-1:0] Transceiver Native PHY Active high reset controlled by the transceiver reset
rx_analogreset[L-1:0] Analog Reset controller. This signal resets the TX/RX PMA.
The link clock, frame clock, and AVS clock reset
signals (txlink_rst_n/rxlink_rst_n,
txframe_rst_n/rxframe_rst_n and
jesd204_tx_avs_rst_n/jesd204_rx_avs_rst_n)
can only be deasserted after the transceiver comes
out of reset. (28)
Note: This signal is not applicable for Intel Agilex 7
and Intel Stratix 10 E-tile devices.
tx_analogreset_stat[L-1:0] Transceiver Native PHY TX PMA analog reset status port connected to the
rx_analogreset_stat[L-1:0] Analog Reset transceiver reset controller.(29)
Note: This signal is applicable only for Intel Stratix
10 L-tile and H-tile devices.
tx_digitalreset[L-1:0] Transceiver Native PHY Active high reset controlled by the transceiver reset
rx_digitalreset[L-1:0] Digital Reset controller. This signal resets the TX/RX PCS.
The link clock, frame clock, and AVS clock reset
signals (txlink_rst_n/rxlink_rst_n,
txframe_rst_n/rxframe_rst_n and
jesd204_tx_avs_rst_n/jesd204_rx_avs_rst_n)
can only be deasserted after the transceiver comes
out of reset. (28)
Note: This signal is not applicable for Intel Agilex 7
and Intel Stratix 10 E-tile devices.
tx_digitalreset_stat[L-1:0] Transceiver Native PHY TX PCS digital reset status port connected to the
rx_digitalreset_stat[L-1:0] Digital Reset transceiver reset controller.(29)
Note: This signal is applicable only for Intel Stratix
10 L-tile and H-tile devices.
jesd204_tx_avs_rst_n TX/RX AVS (CSR) Clock Active low reset controlled by the clock and reset unit.
jesd204_rx_avs_rst_n Typically, both signals can be deasserted after the core
PLL and transceiver PLL are locked and out of reset. If
you want to dynamically modify the LMF at run-time,
you can program the CSRs after AVS reset is
deasserted. This phase is referred to as the
configuration phase.
After the configuration phase is complete, then only
the txlink_rst_n/rxlink_rst_n and
txframe_rst_n/rxframe_rst_n signals can be
deasserted.
Related Information
• V-Series Transceiver PHY User Guide
• Intel Arria 10 Transceiver PHY User Guide
• Intel Cyclone 10 GX Transceiver PHY User Guide
• L- and H-tile Transceiver PHY User Guide
• E-tile Transceiver PHY User Guide
(28) Refer to the respective Transceiver PHY IP User Guides for the timing diagram of the
tx_analogreset, rx_analogreset, tx_digitalreset, and rx_digitalreset signals.
(29) Refer to the Intel Stratix 10 L- and H-tile Transceiver PHY IP User Guide for the timing
diagram of the tx_analogreset_stat, rx_analogreset_stat,
tx_digitalreset_stat, and rx_digitalreset_stat signals.
72
4. JESD204B IP Functional Description
683442 | 2023.07.20
GENERIC STATES TRANSCEIVER & PLL POWERUP AVALON SLAVE CONFIGURATION PHASE JESD204B IP OPERATION
6
rx_ready
jesd204_rx_avs_rst_n
rxlink_clk
rxlink_rst_n 7
rxframe_clk
rxframe_rst_n
8
sysref
a. The first reference clock is the calibration clock for the transceiver.
• For Intel Stratix 10 devices, this is the clock at the OSC_CLK_1 pin for the
calibration engine.
• For Intel Arria 10 and Intel Cyclone 10 GX devices, this is the clock at the
CLKUSR pin for the calibration engine.
• For Arria V, Cyclone V, and Stratix V devices, this is the clock for the
transceiver reconfiguration controller.
b. The second reference clock is the management clock for the transceiver
reconfiguration interface and the JESD204B IP core Avalon memory-mapped
interface.
• If the dynamic reconfiguration option is enabled for Intel Arria 10, Intel
Cyclone 10 GX, and Intel Stratix 10 devices, this reference clock is
connected to the reconfig_clk input port of the JESD204B IP core.
c. The third reference clock is the transceiver reference clock.
73
4. JESD204B IP Functional Description
683442 | 2023.07.20
• For Intel Stratix 10, you must provide the reference clock at the
transceiver dedicated reference clock input pin.
• For Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, and Stratix V
devices, this clock is also used as the reference clock for the core PLL
(IOPLL Intel FPGA IP core for Intel Arria 10 and Intel Cyclone 10 GX
devices; and PLL Intel FPGA IP core for Arria V, Cyclone V, and Stratix V
devices) if you share the device clock and the transceiver reference clock
(refer to Device Clock).
d. The fourth reference clock is the core PLL reference clock (device clock).
• For Intel Stratix 10, you must provide the reference clock at the dedicated
reference clock input pin at the IO bank.
• For Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, and Stratix V
devices, this is the reference clock for the core PLL (IOPLL Intel FPGA IP
core for Intel Arria 10 and Intel Cyclone 10 GX devices; and PLL Intel
FPGA IP core for Arria V, Cyclone V, and Stratix V devices) if you do not
share the device clock and the transceiver reference clock (refer to Device
Clock).
2. Configure the FPGA. Hold the RX transceiver channel in reset.
• For Intel Arria 10 and Intel Cyclone 10 GX devices, if the reference clock is not
available for the transceiver CDR before the FPGA is configured, you need to
hold the RX transceiver channels in reset and perform user calibration for the
RX transceiver channels after the reference clock is stable. For more
information about user calibration for the transceiver channels, refer to the
Calibration chapter in the Intel Arria 10 or Intel Cyclone 10 GX Transceiver
PHY User Guides.
3. You can program the ADC through its SPI interface before or after configuring the
FPGA. Ensure that the ADC PLL is locked before you proceed to the next step.
4. Ensure that the FPGA device clock core PLL is locked to the reference clock.
5. Deassert the FPGA RX transceiver channel reset. Do this by deasserting the reset
input pin of the Transceiver PHY Reset Controller.
6. Once the transceiver is out of reset (the rx_ready signal from the Intel FPGA
Transceiver PHY Reset Controller is asserted), deassert the Avalon memory-
mapped interface reset for the IP core. At the configuration phase, the subsystem
can program the JESD204B IP core if the default IP core register settings need to
change.
7. Deassert the link reset for the IP core and ensure the transport layer is out-of-
reset.
8. For subclass 1, the clock generator only starts to generate SYSREF pulses after
two link clock cycles since RX link reset deassertion. The ADC-RX link initializes
when the first rising edge of SYSREF is detected. For subclass 0, the link initializes
after the ADC is programmed and the RX link reset is deasserted.
Related Information
• V-Series Transceiver PHY User Guide
• Intel Arria 10 Transceiver PHY User Guide
• Intel Cyclone 10 GX Transceiver PHY User Guide
• L- and H-tile Transceiver PHY User Guide
74
4. JESD204B IP Functional Description
683442 | 2023.07.20
GENERIC STATES TRANSCEIVER & PLL POWERUP AVALON SLAVE CONFIGURATION PHASE JESD204B IP OPERATION
jesd204_tx_avs_rst_n
txlink_clk
txlink_rst_n 7
txframe_clk
txframe_rst_n
8
tx_serial_data /K/
PROGRAM DAC
PROGRAM DAC 9 DAC NOT PROGRAMMED DAC PLL LOCKED
10
sysref
a. The first reference clock is the calibration clock for the transceiver.
• For Intel Stratix 10 devices, this is the clock at the OSC_CLK_1 pin for the
calibration engine.
• For Intel Arria 10 and Intel Cyclone 10 GX devices, this is the clock at the
CLKUSR pin for the calibration engine.
• For Arria V, Cyclone V, and Stratix V devices, this is the clock for the
transceiver reconfiguration controller.
b. The second reference clock is the management clock for the transceiver
reconfiguration interface and the JESD204B IP core Avalon memory-mapped
interface.
• If the dynamic reconfiguration option is enabled for Intel Arria 10, Intel
Cyclone 10 GX, and Intel Stratix 10 devices, this reference clock is
connected to the reconfig_clk input port of the JESD204B IP core.
c. The third reference clock is the transceiver reference clock.
75
4. JESD204B IP Functional Description
683442 | 2023.07.20
• For Intel Stratix 10, you must provide the reference clock at the
transceiver dedicated reference clock input pin.
• For Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, and Stratix V,
this clock is also used as the reference clock for the core PLL (IOPLL Intel
FPGA IP core for Intel Arria 10 and Intel Cyclone 10 GX; and PLL Intel
FPGA IP core for Arria V, Cyclone V, and Stratix V devices) if you share the
device clock and the transceiver reference clock (refer to Device Clock).
d. The fourth reference clock is the core PLL reference clock (device clock).
• For Intel Stratix 10, you must provide the reference clock at the dedicated
reference clock input pin at the IO bank.
• For Intel Arria 10, Intel Cyclone 10 GX, Arria V, Cyclone V, and Stratix V,
this is the reference clock for the core PLL (IOPLL Intel FPGA IP core for
Intel Arria 10 and Intel Cyclone 10 GX devices; and PLL Intel FPGA IP core
for Arria V, Cyclone V, and Stratix V devices) if you do not share the
device clock and the transceiver reference clock (refer to Device Clock).
2. Configure the FPGA. Hold the TX transceiver PLL and channel in reset.
• For Intel Arria 10 and Intel Cyclone 10 GX devices, if the reference clock is not
available for the transceiver PLL before the FPGA is configured, you need to
hold the transceiver PLL and channels in reset and perform user calibration for
the transceiver PLL and TX channels after the reference clock is stable. For
more information about user calibration for the transceiver PLL and channels,
refer to the Calibration chapter in the Intel Arria 10 or Intel Cyclone 10 GX
Transceiver PHY User Guides.
3. Ensure that the FPGA device clock core PLL is locked to the reference clock.
4. Deassert the FPGA TX transceiver PLL and channel reset. Do this by deasserting
the reset input pin of the Transceiver PHY Reset Controller.
5. Ensure that the FPGA transceiver PLL is locked to the reference clock.
6. Once the TX transceiver PLL and channel are out of reset (the tx_ready signal
from the Transceiver PHY Reset Controller is asserted), deassert the Avalon
memory-mapped interface reset for the IP core. At the configuration phase, the
subsystem can program the JESD204B IP core if the default IP core register
settings need to change.
7. Deassert both the link reset for the IP core and ensure transport layer is out-of-
reset.
8. The TX IP core streams /K/ characters to the DAC after TX link reset is deasserted.
9. Program the DAC through its SPI interface.
10. For subclass 1, the clock generator only starts to generate SYSREF pulses after
two link clock cycles since TX link reset deassertion. The TX-DAC link initializes
when the first rising edge of SYSREF is detected.
11. For subclass 0, the link initializes after the DAC is programmed and the TX link
reset is deasserted.
4.6. Signals
The JESD204B IP core signals are listed by interface:
• Transmitter
• Receiver
76
4. JESD204B IP Functional Description
683442 | 2023.07.20
jesd204_tx_int Out-of-band
Note:
1. Refer to the Transmitter Signals table for actual signal width.
2. Refer to the Transmitter Signals table for actual signal name.
3. Refer to the Transmitter Signals table for actual signal width and name.
77
4. JESD204B IP Functional Description
683442 | 2023.07.20
(30) The Transceiver PHY Reset Controller IP core controls this signal.
78
4. JESD204B IP Functional Description
683442 | 2023.07.20
79
4. JESD204B IP Functional Description
683442 | 2023.07.20
Transceiver Interface
80
4. JESD204B IP Functional Description
683442 | 2023.07.20
reconfiguration is
enabled or disabled.
The Transceiver
Reconfiguration
Controller IP core also
supports various
calibration function
during transceiver
power up.
81
4. JESD204B IP Functional Description
683442 | 2023.07.20
Intel Stratix 10
• log2L*2048 if Share
Reconfiguration Interface =
On
• 11*L if Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel =
Off
• 11 bits per channel port if Share
Reconfiguration Interface =
Off and Provide Separate
Reconfiguration Interface for
Each Channel = On
reconfig_avmm_writedata[] For all devices except Intel Agilex 7 Input The input data.
reconfig_avmm_writedata_ch<0..L-1>[] and Intel Stratix 10 E-tile. This signal is only
• 32 if Share Reconfiguration available if you enable
Interface = On dynamic
• 32*L if Share Reconfiguration reconfiguration for
Interface = Off and Provide Intel Arria 10, Intel
Separate Reconfiguration Cyclone 10 GX, and
Interface for Each Channel = Intel Stratix 10
Off devices.
• 32 bits per channel port if Share
Reconfiguration Interface =
Off and Provide Separate
Reconfiguration Interface for
Each Channel = On
For Intel Stratix 10 E-tile devices.
• 8 if Share Reconfiguration
Interface = On
• 8*L if Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel =
Off
• 8 bits per channel port if Share
Reconfiguration Interface =
Off and Provide Separate
Reconfiguration Interface for
Each Channel = On
reconfig_avmm_readdata[] For all devices except Intel Agilex 7 Output The output data.
reconfig_avmm_readdata_ch<0..L-1>[] and Intel Stratix 10 E-tile. This signal is only
• 32 if Share Reconfiguration available if you enable
Interface = On dynamic
• 32*L if Share Reconfiguration reconfiguration for
Interface = Off and Provide Intel Arria 10, Intel
Separate Reconfiguration Cyclone 10 GX, and
Interface for Each Channel = Intel Stratix 10
Off devices.
• 32 bits per channel port if Share
Reconfiguration Interface =
Off and Provide Separate
Reconfiguration Interface for
Each Channel = On
continued...
82
4. JESD204B IP Functional Description
683442 | 2023.07.20
83
4. JESD204B IP Functional Description
683442 | 2023.07.20
jesd204_tx_link_valid 1 Input Indicates whether the data from the transport layer
is valid or invalid. The Avalon streaming sink
interface in the TX core cannot be backpressured and
assumes that data is always valid on every cycle
when the jesd204_tx_link_ready signal is
asserted.
continued...
84
4. JESD204B IP Functional Description
683442 | 2023.07.20
• 0—data is invalid
• 1—data is valid
jesd204_tx_avs_chipselect 1 Input When this signal is present, the slave port ignores all
Avalon memory-mapped signals unless this signal is
asserted. This signal must be used in combination
with read or write. If the Avalon memory-mapped
bus does not support chip select, you are
recommended to tie this port to 1.
jesd204_tx_avs_writedata[] 32 Input 32-bit data for write transfers. The width of this
signal and the jesd204_tx_avs_readdata[31:0]
signal must be the same if both signals are present
85
4. JESD204B IP Functional Description
683442 | 2023.07.20
JESD204 Interface
CSR
csr_l[] 5 Output Indicates the number of active lanes for the link. The
transport layer can use this signal as a run-time
parameter.
continued...
86
4. JESD204B IP Functional Description
683442 | 2023.07.20
csr_m[] 8 Output Indicates the number of converters for the link. The
transport layer can use this signal as a run-time
parameter.
csr_cs[] 2 Output Indicates the number of control bits per sample. The
transport layer can use this signal as a run-time
parameter.
csr_np[] 5 Output Indicates the total number of bits per sample. The
transport layer can use this signal as a run-time
parameter.
csr_hd 1 Output Indicates the high density data format. The transport
layer can use this signal as a run-time parameter.
Out-of-band (OOB)
Debug or Testing
jesd204_tx_dlb_data[] L*32 Output Optional signal for parallel data from the DLL in TX to
RX loopback testing. (31)
jesd204_tx_dlb_kchar_data[] L*4 Output Optional signal to indicate the K character value for
each byte in TX to RX loopback testing. (31)
csr_tx_testmode[] 4 Output Indicates the test mode for the JESD204B IP core
and the test pattern for the test pattern generator in
the design example.
Note: The test pattern generator is a component of
the design example and is not a part of the
JESD204B IP core.
continued...
(31) This signal is only for internal testing purposes. You can leave this signal disconnected.
87
4. JESD204B IP Functional Description
683442 | 2023.07.20
csr_tx_testpattern_a[] 32 Output A 32-bit fixed data pattern for testing purpose, such
as short transport layer test pattern. You can
configure the fixed data pattern through the TX
register user_test_pattern_a (offset 0xD4)
(32)
csr_tx_testpattern_b[] 32 Output A 32-bit fixed data pattern for testing purpose, such
as short transport layer test pattern. You can
configure the fixed data pattern through the TX
register user_test_pattern_b (offset 0xD8)
(32)
csr_tx_testpattern_c[] 32 Output A 32-bit fixed data pattern for testing purpose, such
as short transport layer test pattern. You can
configure the fixed data pattern through the TX
register user_test_pattern_c (offset 0xDC)
(32)
csr_tx_testpattern_d[] 32 Output A 32-bit fixed data pattern for testing purpose, such
as short transport layer test pattern. You can
configure the fixed data pattern through the TX
register user_test_pattern_d (offset 0xE0)
(32)
(32) You can connect this signal to the TX transport layer as test data samples or to the JESD204B
TX IP core to emulate data from the TX transport layer. You may ignore this signal if unused.
88
4. JESD204B IP Functional Description
683442 | 2023.07.20
jesd204_rx_int Out-of-band
Note:
1. Refer to the Receiver Signals table for actual signal width and name.
89
4. JESD204B IP Functional Description
683442 | 2023.07.20
rxlink_rst_n_reset_n 1 Input Reset for the RX link clock signal. This reset is an
active low signal.
rxphy_clk[] L Output Recovered clock signal. This clock is derived from the
clock data recovery (CDR) and the frequency
depends on the JESD204B IP core data rate.
• For PCS option in Hard PCS or Soft PCS mode,
this clock has the same frequency as the
rxlink_clk signal.
• For PCS option in PMA Direct mode, this clock is
half the frequency of rxlink_clk signal.
rx_digitalreset[] (33) L Input Reset for the transceiver PCS block. This reset is an
active high signal.
Note: This signal is not applicable for Intel Agilex 7
and Intel Stratix 10 E-tile devices.
rx_analogreset[] (33) L Input Reset for the CDR and transceiver PMA block. This
reset is an active high signal.
Note: This signal is not applicable for Intel Agilex 7
and Intel Stratix 10 E-tile devices.
rx_islockedtodata[] (33) L Output This signal is asserted to indicate that the RX CDR
PLL is locked to the RX data and the RX CDR has
changed from LTR to LTD mode.
Transceiver Interface
(33) The Transceiver PHY Reset Controller IP Core controls this signal.
90
4. JESD204B IP Functional Description
683442 | 2023.07.20
91
4. JESD204B IP Functional Description
683442 | 2023.07.20
reconfig_avmm_address[] Intel Arria 10 and Intel Cyclone 10 Input The Avalon memory-
reconfig_avmm_address_ch<0..L-1>[] GX mapped address.
• log2L*1024 if Share This signal is only
Reconfiguration Interface = available if you enable
On dynamic
• 10*L if Share reconfiguration for
Reconfiguration Interface = Intel Arria 10, Intel
Off and Provide Separate Cyclone 10 GX, and
Reconfiguration Interface Intel Stratix 10
for Each Channel = Off devices.
• 10 bits per channel port if
Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel
= On
Intel Stratix 10
• log2L*2048 if Share
Reconfiguration Interface =
On
• 11*L if Share
Reconfiguration Interface =
Off and Provide Separate
Reconfiguration Interface
for Each Channel = Off
• 11 bits per channel port if
Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel
= On
continued...
92
4. JESD204B IP Functional Description
683442 | 2023.07.20
reconfig_avmm_writedata[] For all devices except Intel Agilex Input The input data.
reconfig_avmm_writedata_ch<0..L-1>[] 7 and Intel Stratix 10 E-tile. This signal is only
• 32 if Share Reconfiguration available if you enable
Interface = On dynamic
• 32*L if Share reconfiguration for
Reconfiguration Interface = Intel Arria 10, Intel
Off and Provide Separate Cyclone 10 GX, and
Reconfiguration Interface Intel Stratix 10
for Each Channel = Off devices.
• 32 bits per channel port if
Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel
= On
For Intel Agilex 7 and Intel Stratix
10 E-tile devices.
• 8 if Share Reconfiguration
Interface = On
• 8*L if Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel
= Off
• 8 bits per channel port if Share
Reconfiguration Interface =
Off and Provide Separate
Reconfiguration Interface
for Each Channel = On
reconfig_avmm_readdata[] For all devices except Intel Agilex Output The output data.
reconfig_avmm_readdata_ch<0..L-1>[] 7 and Intel Stratix 10 E-tile. This signal is only
• 32 if Share Reconfiguration available if you enable
Interface = On dynamic
• 32*L if Share reconfiguration for
Reconfiguration Interface = Intel Arria 10, Intel
Off and Provide Separate Cyclone 10 GX, and
Reconfiguration Interface Intel Stratix 10
for Each Channel = Off devices.
• 32 bits per channel port if
Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel
= On
For Intel Agilex 7 and Intel Stratix
10 E-tile devices.
• 8 if Share Reconfiguration
Interface = On
• 8*L if Share Reconfiguration
Interface = Off and Provide
Separate Reconfiguration
Interface for Each Channel
= Off
• 8 bits per channel port if Share
Reconfiguration Interface =
Off and Provide Separate
Reconfiguration Interface
for Each Channel = On
continued...
93
4. JESD204B IP Functional Description
683442 | 2023.07.20
94
4. JESD204B IP Functional Description
683442 | 2023.07.20
jesd204_rx_link_data[] L*32 Output Indicates a 32-bit data from the DLL to the transport
layer. The data format is big endian, where the
earliest octet is placed in bit [31:24] and the latest
octet is placed in bit [7:0].
jesd204_rx_avs_chipselect 1 Input When this signal is present, the slave port ignores all
Avalon memory-mapped signals unless this signal is
asserted. This signal must be used in combination
continued...
95
4. JESD204B IP Functional Description
683442 | 2023.07.20
jesd204_rx_avs_writedata[] 32 Input 32-bit data for write transfers. The width of this
signal and the jesd204_rx_avs_readdata[31:0]
signal must be the same if both signals are present.
JESD204 Interface
96
4. JESD204B IP Functional Description
683442 | 2023.07.20
dev_lane_aligned 1 Output Indicates that all lanes for this device are aligned.
CSR
csr_l[] 5 Output Indicates the number of active lanes for the link. The
transport layer can use this signal as a run-time
parameter.
csr_m[] 8 Output Indicates the number of converters for the link. The
transport layer can use this signal as a run-time
parameter.
csr_cs[] 2 Output Indicates the number of control bits per sample. The
transport layer can use this signal as a run-time
parameter.
csr_np[] 5 Output Indicates the total number of bits per sample. The
transport layer can use this signal as a run-time
parameter.
csr_hd 1 Output Indicates the high density data format. The transport
layer can use this signal as a run-time parameter.
97
4. JESD204B IP Functional Description
683442 | 2023.07.20
Out-of-band (OOB)
Debug or Testing
jesd204_rx_dlb_data[] L*32 Input Optional signal for parallel data to the DLL in TX to
RX loopback testing. (34)
csr_rx_testmode[] 4 Output Indicates the test mode for the JESD204B IP core
and the test pattern for the test pattern checker in
the design example.
Note: The test pattern checker is a component of
the design example and is not a part of the
JESD204B IP core.
Refer to the rx_test register in the register map.
jesd204_rx_dlb_data_valid[] L Input Optional signal to indicate valid data for each byte in
TX to RX loopback testing. (34)
jesd204_rx_dlb_kchar_data[] L*4 Input Optional signal to indicate the K character value for
each byte in TX to RX loopback testing. (34)
Related Information
• AN 803: Implementing ADC-Intel Arria 10 Multi-Link Design with JESD204B RX IP
Core
• AN 804: Implementing ADC-Intel Stratix 10 Multi-Link Design with JESD204B RX
IP Core
4.7. Registers
The JESD204B IP core supports a basic one clock cycle transaction bus. There is no
support for burst mode and wait-state feature (the avs_waitrequest signal is tied
to 0). The JESD204B IP core Avalon memory-mapped slave interface has a data width
of 32 bits and is implemented based on word addressing. The Avalon memory-mapped
slave interface does not support byte enable access.
Each write transfer has a writeWaitTime of 0 cycle while a read transfer has a
readWaitTime of 1 cycle and readLatency of 1 cycle.
The following sections list the TX and RX core registers. The register address in the
register map is written based on byte addressing. The Platform Designer interconnect
automatically converts from byte to word addressing. You do not need to manually
shift the address bus. If the Avalon memory-mapped master interfaces to the IP core
Avalon memory-mapped slave without the Platform Designer interconnect, to perform
byte to word addressing conversion, you are recommended to shift the Avalon
(34) This signal is only for internal testing purposes. Tie this signal to low.
98
4. JESD204B IP Functional Description
683442 | 2023.07.20
Note: For Intel Stratix 10 devices, run-time access for certain registers have been disabled.
Refer to the TX and RX register map for more information.
All registers that are Read-Writable must be protected to comply with Security
Development Lifecycle (SDL) practices. You are required to perform the register
access protection.
RO Software read only (no effect on write). The value is hard-tied internally to either '0' or '1' and does not
vary.
RO/v Software read only (no effect on write). The value may vary.
RC • Software reads and returns the current bit value, then the bit is self-clear to 0.
• Software reads also cause the bit value to be cleared to 0.
99
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x0
Note: The bits that are compile-time specific are not configurable through register. You must
recompile to change the value.)
100
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x4
Offset: 0x8
101
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xC
Offset: 0x10
102
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x14
103
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x18
Offset: 0x1C
104
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x20
Offset: 0x50
105
4. JESD204B IP Functional Description
683442 | 2023.07.20
106
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x54
107
4. JESD204B IP Functional Description
683442 | 2023.07.20
108
4. JESD204B IP Functional Description
683442 | 2023.07.20
109
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x60
110
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x64
111
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x80
Note: The bits that are compile-time specific are not configurable through register. You must
recompile to change the value.)
112
4. JESD204B IP Functional Description
683442 | 2023.07.20
113
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x84
Offset: 0x88
114
4. JESD204B IP Functional Description
683442 | 2023.07.20
115
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x8C
Offset: 0x94
116
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x98
117
4. JESD204B IP Functional Description
683442 | 2023.07.20
118
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x9C
119
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xA0
Offset: 0xA4
120
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xB0
Offset: 0xB4
Offset: 0xC0
9:2 csr_fxk_h Upper bits of FxK[8:2]. This is a binary • RW for all Reset to
value minus 1. devices except parameter value
Link F multiply with Link K must be Intel Agilex 7 per IP generation.
divisible by 4. and Intel
Stratix 10
Note: The IP runs on 32-bit data
width boundary per channel, so • RO for Intel
you must always ensure that Agilex 7 and
FxK must be divisible by 4. Intel Stratix 10
devices
continued...
121
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xD0
Offset: 0xD4
Offset: 0xD8
122
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xDC
Offset: 0xE0
Offset: 0x0
Note: The bits that are compile-time specific are not configurable through register. You must
recompile to change the value.)
123
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x4
124
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x8
Offset: 0xC
125
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x10
Offset: 0x14
126
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x18
Offset: 0x1C
127
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x20
Offset: 0x50
128
4. JESD204B IP Functional Description
683442 | 2023.07.20
129
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x54
Note: The bits that are compile-time specific are not configurable through register. You must
recompile to change the value.)
130
4. JESD204B IP Functional Description
683442 | 2023.07.20
131
4. JESD204B IP Functional Description
683442 | 2023.07.20
132
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x58
Offset: 0x60
133
4. JESD204B IP Functional Description
683442 | 2023.07.20
0 Reserved Reserved R
Offset: 0x64
134
4. JESD204B IP Functional Description
683442 | 2023.07.20
4 csr_not_in_table_ Not in table error for all lanes, the RW1C 0x0
err received code group is not found in the
8b10b decoding table for either
disparity.
2 csr_lane_alignme Lane alignment error for all lanes, the RW1C 0x0
nt_err previous conversion samples may be in
error. End-of-multiframe marker (/A/)
position has misaligned.
Dynamic realignment is not supported
.
1 csr_frame_alignm Frame alignment error for all lanes, the RW1C 0x0
ent_err previous conversion samples may be in
error. End-of-frame marker (/F/ or /A/)
position has misaligned.
Dynamic realignment is not supported.
Offset: 0x74
135
4. JESD204B IP Functional Description
683442 | 2023.07.20
136
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x78
137
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x80
138
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x84
139
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x88
140
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x8C
141
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x94
142
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0x98
143
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xA0
Offset: 0xA4
144
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xA8
Offset: 0xAC
Offset: 0xC0
9:2 csr_fxk_h Upper bits of FxK[1:0]. This is a binary • RW for all Reset to
value minus 1. devices except parameter value
Link F multiply with Link K must be Intel Agilex 7 per IP generation
divisible by 4. and Intel
Stratix 10
Note: The IP runs on 32-bit data
width boundary per channel, so • RO for Intel
you must always ensure that Agilex 7 and
FxK must be divisible by 4. Intel Stratix 10
devices
Note: Run-time reconfiguration is
disabled for Intel Agilex 7 and
Intel Stratix 10 devices.
145
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xD0
Offset: 0xF0
146
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xF4
Offset: 0xF8
147
4. JESD204B IP Functional Description
683442 | 2023.07.20
Offset: 0xFC
148
4. JESD204B IP Functional Description
683442 | 2023.07.20
149
683442 | 2023.07.20
Send Feedback
Features available:
• Programmable RBD offset.
• Programmable LMFC offset.
Related Information
• Clock Correlation on page 69
• Constraining Incoming SYSREF Signal on page 151
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
The setup time is analyzed when you set the timing constraint for the SYSREF signal
in the user .sdc file. When the setup time is met, the SYSREF signal detection by the
IP is deterministic; the number of link clock cycles of SYSREF signal that arrives at the
FPGA pin to the LMFC counter resets, is deterministic.
Apply the set_input_delay constraint on the SYSREF signal with respect to device
clock in the user .sdc file:
The SYSREF IO delay is the board trace length mismatch between device clock and
SYSREF. For example:
The above statement constrains the FPGA SYSREF signal (sysref), with respect to the
FPGA device clock (device_clk) pin. The trace length mismatch resulted in 500 ps or
0.5 ns difference in time arrival at the FPGA pins between SYSREF and device clock.
In most cases, the register in the IP, which detects the SYSREF signal, is far away
from the SYSREF I/O pin. The long interconnect routing delay results in timing
violation. You are recommended to use multi-stages pipeline registers to close timing.
Use the same clock domain as the JESD204B IP's rxlink_clk and txlink_clk to
clock the multi-stages pipeline registers.
rxlink_clk or
txlink_clk
151
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
You must set a safe RBD offset value to ensure deterministic latency from one power
cycle to another power cycle. Follow these steps to set a safe RBD offset value:
1. Read the RBD count from the csr_rbd_count field in rx_status0 register. Record
the value.
2. Power cycle the JESD204B subsystem, which consists of the FPGA and converter
devices.
3. Read the RBD count again and record the value.
4. Repeat steps 1 to 3 at least 5 times and record the RBD count values.
5. Set the csr_rbd_offset accordingly with one LMFC count tolerance.
6. Perform multiple power cycles and make sure lane deskew error does not occur
using this RBD offset value.
The RBD count must be fairly consistent, within 2 counts variation from one power
cycle to another power cycle. In the following examples, the parameter values are L >
1, F=1 and K=32. The legal values of the LMFC counter is 0 to ((FxK/4)-1), which is 0
to 7. In Early RBD Release Opportunity for Latest Arrival Lane Within One Local Multi
Frame Scenario , the latest arrival lane variation falls within 1 local multiframe period.
In this scenario, if latency is not a concern, you can leave the default value of
csr_rbd_offset=0, which means the RBD elastic buffer is released at the LMFC
boundary. In Early RBD Release Opportunity for Latest Arrival Lane Across Two Local
Multi Frames Scenario , the latest arrival lane variation spans across 2 local
multiframes; the latest arrival lane variation happens before and after the LMFC
boundary. In this scenario, you need to configure the RBD offset correctly to avoid
lane deskew error as indicated in bit 4 of rx_err0 register.
152
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
Figure 27. Early RBD Release Opportunity for Latest Arrival Lane Within One Local Multi
Frame Scenario
In this example, the SYSREF pulse at rx_sysref port of the IP core is sampled by the internal register. After 2
link clock cycles, the LMFC counter resets. The delay from SYSREF sampled high to LMFC counter resets is
deterministic. The transition of /K/ character to /R/ character marks the beginning of ILAS phase. The number
of LMFC count of the /R/ character relative to the next LMFC boundary in the latest arrival lane is reported as
the RBD count. In the first power cycle, the /R/ character is received at 4 LMFC counts before the next LMFC
boundary, hence the RBD count = 4. In the second power cycle, the /R/ character is received at 3 LMFC counts
before next LMFC boundary, hence the RBD count = 3. In five power cycles, the RBD count varies from 3 to 5.
Since there are limited number of power cycles and boards for characterization, 1 LMFC count tolerance is
allocated as a guide to set early RBD release opportunity. Hence, setting csr_rbd_offset = 1 can safely release
the elastic buffer 1 LMFC count earlier at LMFC count 7 before the next LMFC boundary. A lane de-skew error
occurs when the RBD elastic buffer is released before the latest arrival lane.
Link clock
SYNC_N deasserted
at LMFC boundary
SYNC_N
1 link clock period = LMFC count
2 link clock cycle deterministic
delay from SYSREF sampled 1st LMFC boundary
high to 1stLMFC boundary 2nd LMFC boundary 3rd LMFC boundary 4th LMFC boundary
153
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
Figure 28. Early RBD Release Opportunity for Latest Arrival Lane Across Two Local Multi
Frames Scenario
In this example, the RBD count varies from 7 to 1; the /R/ character is received at the previous local
multiframe when the RBD count = 1; the /R/ character is received at the current local multiframe when the
RBD count = 0 and 7. In this scenario, deterministic latency is not guaranteed because the RBD elastic buffer is
released either at the current LMFC boundary when the RBD count = 0 and 1, or one local multiframe period
later at the next LMFC boundary when the RBD count = 7. You can fix this issue by setting the RBD offset so
that the RBD elastic buffer is always released at the next local multiframe. Setting csr_rbd_offset = 5 forces
the release of RBD elastic buffer 5 LMFC counts before the next LMFC boundary. This corresponds to LMFC
count of 3 at the current local multiframe. In this scenario, setting csr_rbd_offset not only optimizes user data
latency through the IP core, it also resolves the deterministic latency issue.
Link clock
Latest arrival
lane in second
power cycle
K K K K K K K K K K K R D D D D D D D
RBD count = 1 with reference to the current LMFC boundary
Latest arrival RBD elastic buffer
lane in fifth
power cycle
K K K K K K K K K K R D D D D D D D D is released at the
next LMFC
boundary during
RBD elastic buffer is released at the current the first power
LMFC boundary during the second and cycle when
fifth power cycle when csr_rbd_offset = 0 csr_rbd_offset = 0
Latency variation = 1 local multi-frame period
Aligned
outputs on all
lanes
K K K K K K K K K K K K K K R D D D D
1 link clock or LMFC Set csr_rbd_offset = 5
count to cater for
power cycle variation RBD Elastic
Buffers Released
In the example above, lane deskew error happens if the sum of the difference of /R/
character’s LMFC count in the earliest arrival lane to the latest arrival lane, and the
number of LMFC count up to the release of RBD elastic buffer exceeds the RBD elastic
buffer size. If this is the root cause of lane deskew error, setting RBD offset is one of
the techniques to overcome this issue. Not every RBD offset value is legal. Figure
below illustrates the technique to decide the legal RBD offset value.
Internal
LMFC Counter Free running LMFC counter 0 1 2 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1
RBD Elastic
Internal LMFC counter resets RBD elastic buffer size = 8 (1) buffers released
at LMFC
boundary when
csr_rbd_offset=0
Earliest arrival K K K K K K K K K K K R D D D D D D D D D D
lane
RBD count = 7 7 LMFC counts with
reference to the
next LMFC boundary
Latest arrival
lane
K K K K K K K K K K K K K K K R D D D D D D
Set csr_rbd_offset = 5
Aligned
outputs on all K K K K K K K K K K K K K K K K K R D D D D
lanes
Illegal csr_rbd_offset=1, 2, 3
exceeding RBD elastic buffer size
Legal csr_rbd_offset=4
within RBD elastic buffer size
Note: RBD Elastic
(1) RBD elastic buffer size = F x K/4; F = 1, K = 32 Buffers Released
154
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
Because the IP core does not report the position of the earliest lane arrival with
respect to the LMFC boundary, you must perform multiple power cycles to observe the
RBD count and tune the RBD offset accordingly until no lane deskew error occurs.
From the example in the figure above, the recommended RBD offset value is 4 or 5.
Setting RBD offset to 1, 2 or 3 is illegal because this exceeds the RBD elastic buffer
size for the F and K configurations.
Related Information
SYNC_N Signal on page 60
The TX LMFC offset can align the TX LMFC counter to the LMFC counter in DAC; the RX
LMFC offset can align the RX LMFC counter to the LMFC counter in ADC. Phase offset
between the TX and RX LMFC counters in the both ends of the JESD204B link
contributes to deterministic latency uncertainty. The phase offset is caused by:
• SYSREF trace length mismatch in the PCB between the TX and RX devices (FPGA
and converters).
• delay differences in resetting the LMFC counter when SYSREF pulses are detected
by the FPGA and converter devices.
155
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
SYSREF pulse is
1 sampled by ADC
Fourth LMFC
First LMFC Second LMFC Third LMFC
boundary
boundary boundary boundary
ADC
2 Internal 0 1 2 3 4 5 6 7 0 7 0 1 2 3 4 5 6 7 0 1
LMFC Counter
Free running
LMFC counter Internal LMFC 7
counter resets
SYNC_N deassertion is detected by ADC
SYNC_N ILAS transmission by ADC
arrival at TX 8
L Transmit
lanes K K K K K K K K K K K R D D D D D D
SYSREF pulse is
3 sampled by IP core
internal register
rx_sysref
Power cycle
Internal
LMFC Counter Free running LMFC counter 5 6 7 0 3 4 5 6 7 0 1 2 3 4 5
You should set a safe LMFC offset value to ensure deterministic latency from one
power cycle to another power cycle. In Selecting Illegal LMFC Offset Value for RX,
Causing Lane Deskew Error, the illegal csr_lmfc_offset values of 1, 2, and 3 causes
lane de-skew error because the RBD buffer size has exceeded.
156
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
Figure 31. Selecting Illegal LMFC Offset Value for RX, Causing Lane Deskew Error
SYSREF pulse is
sampled by IP core ‘s
internal register
rx_sysref
Internal
LMFC Counter Free running LMFC counter 0 1 2 0 1 4 5 6 7 0 1 2 3 4 5 6 7 0
Earliest arrival
lane K K K K K K K K K K K R D D D D D D D D D
Power cycle variation
Latest arrival
lane in multiple
power cycles
K K K K K K K K K K K R R R D D D D D D
Internal
LMFC Counter Free running LMFC counter 3 4 5 6 7 0 1 1 2 3 4 5 6 7 0 1 2 3
LMFC boundary is First LMFC boundary RBD elastic buffer Third LMFC boundary at new location
Internal LMFC counter resets delayed by 5 link clock at new location released
csr_lmfc_offset=3 when csr _rbd_offset=0 RBD elastic buffer
size is exceeded
Latest arrival
lane in multiple
power cycles K K K K K K K K K K K R R R D D D D D D
Note:
(1) RBD elastic buffer size = F x K/4; F = 1, K = 32
You can use the TX LMFC offset to align the LMFC counter in IP core to the LMFC
counter in DAC.
157
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
Figure 32. Example of Reducing LMFC Phase Offset between TX and RX LMFC Counter
Link clock
SYSREF pulse is
sampled by FPGA
IP core 2 link clock cycle deterministic delay from
SYSREF sampled high to the first LMFC boundary 1 link clock period Second LMFC Third LMFC
=LMFC count boundary boundary Fourth LMFC
1 tx_sysref boundary
First LMFC
boundary
Internal 0 1 2 3 4 5 6 7 7 0 1 2 3 4 5 6 7
LMFC Counter 0 0
Free running
LMFC counter
Internal LMFC counter resets
csr_lmfc_offset=0 SYNC_N deassertion is
SYNC_N 2 detected by the IP core 7 ILAS transmission by the FPGA 8
arrival at TX
L Transmit
lanes K K K K K K K K K K K R D D D D D D
Internal 4 5 6 7 0 1 2 3 3 4 5 6 7 0 1 2 3
LMFC Counter 4 4
Free running LMFC boundary is
LMFC counter delayed by 4 link clock
Internal LMFC counter resets First LMFC boundary
csr_lmfc_offset=4 at new location ILAS transmission by the FPGA
9 9
L Transmit
lanes K K K K K K K K K K K K K K K R D D D
Reduced LMFC 10
phase offset
3 SYSREF pulse is
sampled by DAC
Internal
LMFC Counter Free running LMFC counter 0 1 0 1 2 6 7 0 1 2 3 4 5
Alternative to tuning RBD offset at the DAC, adjusting TX LMFC offset in the FPGA
helps you to achieve deterministic latency. You should perform multiple power cycles
and read the RBD counts at the DAC to determine whether deterministic latency is
achieved and RBD elastic buffer size has not exceeded.
The SYSREF pipeline registers in the FPGA introduce additional latency to SYSREF
when detected by the IP core. Therefore, you can use TX LMFC offset to reduce or
eliminate this additional latency. The next figure illustrates the technique of optimizing
latency using TX LMFC offset.
158
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
Link clock
L Transmit
lanes K K K K K K K K K K K K K R D
2 link clock cycle deterministic LMFC boundary is Second LMFC boundary Third LMFC boundary at
delay from SYSREF sampled 5 delayed by 4 link clocks new location
at new location
high to LMFC counter resets
Internal Free running LMFC counter 4 5 6 7 0 3 4 5 6 7 0 3 4 5 6 7 0
LMFC Counter
Internal LMFC counter resets First LMFC boundary LMFC boundary is ILAS transmission by FPGA
4 csr_lmfc_offset=4 at new location 8
delayed by 4 link clocks
L Transmit
lanes K K K K K K K K K K K K K K R D
SYSREF pulse is
1 sampled by DAC
6 SYNC_N deasserted
SYNC_N transmitted by DAC at the LMFC boundary
Deterministic delay
from SYSREF sampled Second LMFC Third LMFC
high to the first LMFC First LMFC boundary boundary
boundary 2 boundary
Internal
LMFC Counter Free running LMFC counter 0 1 2 3 7 0 1 6 7 0 1 2 3 4 5
The converters resample the SYSREF signal and reset the internal LMFC counter. When
the link is initially established, the IP core automatically clears the
csr_sysref_singledet bit in the syncn_sysref_ctrl register (address 0x54)
159
5. JESD204B IP Deterministic Latency Implementation Guidelines
683442 | 2023.07.20
when it detects the SYSREF pulse. The IP core does not automatically resample the
SYSREF pulse unless the jesd204_tx_avs_rst_n or jesd204_rx_avs_rst_n
signal is asserted.
160
683442 | 2023.07.20
Send Feedback
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
Ensure that the sampling rate of the converter is within the minimum and maximum
requirements. For example, the ADC AD9250 has a minimum sampling rate of 40
Msps. For L = 2, M = 1 configuration, the minimum data rate of this ADC is calculated
this way:
The minimum data rate for the JESD204B link is effectively 611 Mbps.
Verify that the transceiver channel pin assignments—SYNC_N and SYSREF (for
Subclass 1 only)—device clock, and SPI interface are correct. Also verify the signal
polarity of the differential pairs like SYNC_N and transceiver channels are correct.
162
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
For Intel Arria 10, Intel Cyclone 10 GX, and Intel Stratix 10 devices, the Intel Quartus
Prime software generates two files, build_stp.tcl and <ip_core_name>.xml. You
can use these files to generate a Signal Tap file with probe points matching your
design hierarchy.
The Intel Quartus Prime software stores these files in the <debug stp directory>. The
<debug stp directory> is defined based on JESD204B wrapper and data path.
Receiver <ip_variant_name>/
altera_jesd204_rx_mlpcs_<Quartus_version>/synth/debug/stp
Receiver <ip_variant_name>/altera_jesd204_rx_<Quartus_version>/synth/
debug/stp
Synthesize your design by running Analysis and Synthesis in the Intel Quartus Prime
software.
1. Run analysis and synthesis.
2. Then open the Tcl console by clicking View ➤ Utility Windows ➤ Tcl Console.
3. Navigate to the <debug stp directory> as shown in File Directory.
4. Type the following command in the Tcl console:
source build_stp.tcl
The <stp file name>.stp file is generated in the <debug stp directory>.
6. The software generation script may not assign the Signal Tap acquisition clock in
the <stp file name>.stp file. Consequently, the Intel Quartus Prime software
automatically creates a clock pin (auto_stp_external_clock) for each
instance. To assign an acquisition clock for the generated STP file, Intel
recommends that you perform the following assignments:
JESD204B Duplex & Simplex (Both Base & PHY) or (PHY only) IP core:-
163
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
<instance_name>|inst_phy|inst_xcvr|*counter_*x_ready|r_reset -to
auto_fab*sld_signaltap_inst*
Note: The PHY signals are different for Intel Stratix 10 E-tile devices. Remove the
irrelevant signals and add the Intel Stratix 10 E-tile device PHY signals into
the Signal Tap Logic Analyzer. Refer to Removing Irrelevant Signals and
Adding E-Tile PHY Signals.
JESD204B Simplex (Base only) IP core:-
• For rx_link instance, assign the rxlink_clk signal.
• For tx_link instance, assign the txlink_clk signal.
Note: The GUI parameter editor allows you to choose the appropriate instance for
each IP core name if your design contains more than one JESD204B
instances. For simplex core, you need to choose the RX instance followed by
TX instance to generate the proper STP file.
7. Click Save to save the modified STP. A dialog box pops up with a message "Do
you want to enable Signal Tap File "<stp file name>" for the
current project?". Click Yes. Then, compile your design.
8. To program the FPGA, click Tools ➤ Programmer.
9. Open the generated STP file again if it has closed after step 6.
10. To observe the state of your IP core, click Run Analysis in the Signal Tap Logic
Analyzer.
You may see signals or Signal Tap instances that are red, indicating they are not
available in your design. In most cases, you can safely ignore these signals and
instances because the software generates wider buses and certain instances that
your design does not include.
1. Remove the following signals from the rx_phy and tx_phy instances:
164
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
• rx_phy
— rx_analogreset
— rx_digitalreset
— rx_cal_busy
— rx_seriallpbken
• tx_phy
— pll_locked
— tx_analogreset
— tx_digitalreset
— tx_cal_busy
2. In the rx_phy and tx_phy instances, use the node finder in the Signal Tap Logic
Analyzer to add the following signals:
• rx_phy
*|inst_phy|inst_xcvr_rx_pma_ready_rx_pma_ready[L-1:0]
*|inst_phy|inst_xcvr_rx_ready_rx_ready[L-1:0]
• tx_phy
*|inst_phy|inst_xcvr_tx_pma_ready_tx_pma_ready[L-1:0]
*|inst_phy|inst_xcvr_tx_ready_tx_ready[L-1:0]]
Note: L = number of lanes
To use the system console, your design must contain a Platform Designer subsystem
with the JTAG-to-Avalon-MM Master bridge or Nios® II Processor component. Connect
the JESD204B IP Avalon memory-mapped interface to the Avalon memory-mapped
master through the Platform Designer interconnect directly if the IP resides in the
Platform Designer subsystem. Otherwise, connect the Avalon memory-mapped
interface through the Merlin slave translator if the IP is not part of the Platform
Designer subsystem.
165
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
PHY Layer for All Devices Except Intel Stratix 10 E-tile Devices
Table 91. PHY Status Signals for All Supported Devices Except Intel Stratix 10 E-tile
Devices
Design Signals
RX • rx_is_lockedtodata
• rx_analogreset
• rx_digitalreset
• rx_cal_busy
TX • pll_locked
• pll_powerdown
• tx_analogreset
• tx_digitalreset
• tx_cal_busy
Use the rxphy_clk[0] or txphy_clk[0] signal as sampling clock for the Signal Tap
Logic Analyzer.
For a normal operation of the JESD204B RX path, the rx_is_lockedtodata bit for
each lane should be "1" while the rx_cal_busy, rx_analogreset, and
rx_digitalreset bit for each lane should be "0".
For a normal operation of the JESD204B TX path, the pll_locked bit for each lane
should be "1" while the tx_cal_busy, pll_powerdown, tx_analogreset, and
tx_digitalreset bit for each lane should be "0".
166
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
Table 92. PHY Status Signals for Intel Stratix 10 E-tile Devices
Design Signals
RX • rx_is_lockedtodata
• phy_rx_ready
• phy_rx_pma_ready
TX • phy_tx_ready
• phy_tx_pma_ready
Use the rxphy_clk[0] or txphy_clk[0] signal as the acquisition clock. Then add
the following set_false_path constraint in the SDC script.
set_false_path -from
<instance_name>|inst_phy|inst_xcvr|*counter_*x_ready|r_reset -to
auto_fab*sld_signaltap_inst*
Link Layer
Verify the RX and TX PHY-link layer interface operation through these signals in the
<ip_variant_name>_inst_phy.v:
RX • jesd204_rx_pcs_data
• jesd204_rx_pcs_data_valid
• jesd204_rx_pcs_kchar_data
• jesd204_rx_pcs_errdetect
• jesd204_rx_pcs_disperr
TX • jesd204_tx_pcs_data
• jesd204_tx_pcs_kchar_data
167
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
Verify the link layer operation through these signals in the <ip_variant_name>.v:
RX • jesd204_rx_avs_rst_n
• rxlink_rst_n_reset_n
• rx_sysref (for Subclass 1 only)
• rx_dev_sync_n
• jesd204_rx_int
• alldev_lane_aligned
• dev_lane_aligned
• rx_somf
Use the rxlink_clk signal as the sampling clock.
TX • jesd204_tx_avs_rst_n
• txlink_rst_n_reset_n
• tx_sysref (for Subclass 1 only)
• sync_n
• tx_dev_sync_n
• mdev_sync_n
• jesd204_tx_int
Intel recommends that you verify the JESD204B functionality by accessing the DAC
SPI registers or any debug feature provided by the DAC manufacturer.
168
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
c
b g h i
d
j
k
a
169
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
Transport Layer
170
6. JESD204B IP Debug Guidelines
683442 | 2023.07.20
can verify the user data arrangement (shown in the data mapping tables in the TX
Path Data Remapping section in the Design Examples for JESD204B IP Core User
Guide) by referring to the jesd204_tx_datain bus.
Related Information
• V-Series Transceiver PHY User Guide
• Intel Arria 10 Transceiver PHY User Guide
• Intel Cyclone 10 GX Transceiver PHY User Guide
• L- and H-tile Transceiver PHY User Guide
• E-tile Transceiver PHY User Guide
• AN 696: Using the JESD204B MegaCore Function in Arria V Devices
More information about the performance and interoperability of the JESD204B
IP core.
• AN 729: Implementing JESD204B IP Core System Reference Design with Nios II
Processor As Control Unit
An example of implementing a full-featured software control flow with various
user commands in a JESD204B system that incorporates a Nios II processor
• JESD204B Reference Design
Available design examples in Intel FPGA Design Store.
• JESD204B Intel FPGA IP Design Example User Guide
More information about the TX path data remapping in the Transport Layer.
• JESD204B Intel Arria 10 FPGA IP Design Example User Guide
• JESD204B Intel Stratix 10 FPGA IP Design Example User Guide
• JESD204B Intel Cyclone 10 FPGA IP Design Example User Guide
171
683442 | 2023.07.20
Send Feedback
IP versions are the same as the Intel Quartus Prime Design Suite software versions up
to v19.1. From Intel Quartus Prime Design Suite software version 19.2 or later, IP
cores have a new IP versioning scheme.
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
683442 | 2023.07.20
Send Feedback
2023.06.26 23.2 20.1.0 Updated the ordering code in Table: JESD204B Intel
FPGA IP Release Information.
2022.08.18 21.3 19.2.0 • Fixed broken link to the E-Tile Channel Placement
Tool in the Pin Assignments section.
• Updated the JESD204B Intel FPGA IP User Guide
Archives section.
2021.12.09 21.3 19.2.0 Corrected the support final for Intel Agilex 7 (E-tile)
devices from Advance to Final in Table: Intel Device
Family Support.
2021.11.01 21.3 19.2.0 • Updated the description for Control and Status
Registers clarify that registers that are Read-
Writable must be protected to comply with Security
Development Lifecycle (SDL) practices.
• Added support for QuestaSim simulator.
• Updated for latest branding standards.
continued...
Intel Corporation. All rights reserved. Intel, the Intel logo, and other Intel marks are trademarks of Intel
Corporation or its subsidiaries. Intel warrants performance of its FPGA and semiconductor products to current
specifications in accordance with Intel's standard warranty, but reserves the right to make changes to any ISO
products and services at any time without notice. Intel assumes no responsibility or liability arising out of the 9001:2015
application or use of any information, product, or service described herein except as expressly agreed to in Registered
writing by Intel. Intel customers are advised to obtain the latest version of device specifications before relying
on any published information and before placing orders for products or services.
*Other names and brands may be claimed as the property of others.
8. Document Revision History for the JESD204B Intel FPGA IP User Guide
683442 | 2023.07.20
2020.06.30 19.4 19.2.0 • Added the supported data rate for PMA speed grade
2 for Intel Agilex 7 E-tile devices and for PMA speed
grade 3 for Intel Stratix 10 E-tile devices in the
Performance and Resource Utilization section.
• Corrected the offset address for the receiver
lane_ctrl_1 register. The offset address should
be 0x8, not 0xC.
2020.03.03 19.4 19.2.0 Edited the Enable Bit reversal and Byte reversal
parameter description in the JESD204B Intel FPGA IP
Parameters section.
2019.12.16 19.4 19.2.0 • Updated the supported maximum data rate to 19.2
Gbps (for Intel Agilex 7 devices) in the JESD204B
IP Quick Reference, About the JESD204B Intel FPGA
IP, and Performance and Resource Utilization
sections.
• Updated the maximum data rate value option to
19.2 Gbps for Intel Agilex 7 devices for the Data
Rate parameter and edited the Enable Bit
reversal and Byte reversal parameter description
in the JESD204B Intel FPGA IP Parameters section.
continued...
174
8. Document Revision History for the JESD204B Intel FPGA IP User Guide
683442 | 2023.07.20
2019.10.07 19.3 19.2.0 • Added advance support for Intel Agilex 7 devices.
• Updated the supported maximum data rate to 17.4
Gbps (for Intel Agilex 7 devices) in the JESD204B
IP Quick Reference and About the JESD204B Intel
FPGA IP sections.
• Updated the JESD204B Intel FPGA IP Performance
table in the Performance and Resource Utilization
section with Intel Agilex 7 devices information.
• Updated the maximum data rate value option to
17.4 Gbps for Intel Agilex 7 devices in the
JESD204B Intel FPGA IP Parameters section.
• Added a reference link to the JESD204B Intel Agilex
7 FPGA IP Design Example User Guide.
2019.04.01 19.1 19.1 • Added support for Intel Stratix 10 E-tile devices.
• Revised the resource utilization data for version
19.1 in the Performance and Resource Utilization
section.
• Updated the JESD204B Intel FPGA IP Performance
table with Intel Stratix 10 E-tile device information
in the Performance and Resource Utilization section.
• Updated the Channel Bonding section to include
information about Intel Stratix 10 E-tile devices. For
Intel Stratix 10 E-tile devices, you must use
contiguous channels to enable channel bonding with
NRZ PMA transceiver channels.
• Added the Transceiver Tile option which is
available when you target an Intel Stratix 10 device
that supports both and H-tile and E-tile.
• Renamed the Enable Altera Debug Master
Endpoint parameter to Enable Native PHY
Debug Master Endpoint as per Intel rebranding in
the Intel Quartus Prime Pro Edition software. The
Intel Quartus Prime Standard Edition software still
uses Enable Altera Debug Master Endpoint.
• Added a note to refer to the PMA Adaptation section
in the Intel Stratix 10 E-tile Transceiver PHY User
Guide for more information about PMA Adaptation
parameters.
• Edited the Transmitter Signals and Receiver Signals
sections to add a note that certain signals are not
applicable for Intel Stratix 10 E-tile devices or
applicable only for Intel Stratix 10 L-tile and H-tile
devices.
• Added the following signals that are applicable only
for Intel Stratix 10 E-tile devices in the Transmitter
Signals and Receiver Signals sections:
— phy_tx_ready
— phy_rx_ready
— phy_tx_pma_ready
— phy_rx_pma_ready
— phy_tx_rst_n
— phy_rx_rst_n
— tx_serial_data_n
— rx_serial_data_n
• Added a note in the Pin Assignments section to use
the E-Tile Channel Placement Tool to get a valid
pinout for Intel Stratix 10 E-tile devices.
continued...
175
8. Document Revision History for the JESD204B Intel FPGA IP User Guide
683442 | 2023.07.20
176
8. Document Revision History for the JESD204B Intel FPGA IP User Guide
683442 | 2023.07.20
May 2017 2017.05.08 • Updated description for PLL/CDR Reference Clock Frequency in
JESD204B IP Core Parameters.
• Added somf[] for transmitter signal.
• Updated Run-Time Configuration to include statement on JESD204B IP
core parameterization for Intel Stratix 10 devices.
• Added note to Registers to indicate that disabled run-time access for
registers in Intel Stratix 10 devices.
• Updated data path preset value to simplex TX and simplex RX in Preset
Configurations for JESD204B IP Core Testbench table.
• Clarified the device family support for Stratix 10 devices.
• Added Transmitter and Receiver signal diagrams.
continued...
177
8. Document Revision History for the JESD204B Intel FPGA IP User Guide
683442 | 2023.07.20
178
8. Document Revision History for the JESD204B Intel FPGA IP User Guide
683442 | 2023.07.20
November 2015 2015.11.02 • Added data rate support of up to 13.5 Gbps for Intel Arria 10 and 7.5
Gbps for Arria V GT/ST devices.
• Updated the IP core FPGA performance and resource utilization values.
• Added a new table to define the clock network selection for bonded
mode in channel bonding.
• Added a new selection for PCS Option parameter—Enabled PMA Direct.
• Updated the preset value for link clock in JESD204B IP Testbench on
page 41.
• Updated the formula and description for TX/RX PHY clock.
• Updated the device clock section to recommend user to supply the
device clock with the same frequency as the link clock.
• Updated the description of txlink_clk, txphy_clk[], and
rxphy_clk[] signals.
• Changed the default value for RX Phase Compensation FIFO empty error
enable (csr_pcfifo_empty_err_en) CSR to 0. Refer to the RX
register map for details.
• Added a new section—Design Example with Nios II Processor Control
Unit.
• Added a new topic – Maintaining Deterministic Latency during Link
Reinitialization on page 159.
• Changed instances of Quartus II to Quartus Prime.
May 2015 2015.05.04 • Added support for Cyclone V FPGA device family.
• Updated the JESD204B IP Core Configuration values:
— M value from 1-32 to 1-256
— N' value from 4-32 to 1-32
• Updated the JESD204B IP Core FPGA Performance table.
• Updated the JESD204B IP Core FPGA Resource Utilization table.
• Added new parameters to the JESD204B IP Core Parameters table:
— Enable Capability Registers
— Set user-defined IP identifier
— Enable Control and Status Registers
— Enable Prbs Soft Accumulators
— Enable manual F configuration
• Added new topics:
— Timing Constraints For Input Clocks on page 33
— JESD204B IP Deterministic Latency Implementation Guidelines on
page 150
• Revised the note in "Simulating the IP Core Testbench" to state that
VHDL is not supported in Aldec Riviera (for Intel Arria 10 devices only).
• Updated the Control Unit Process Flow diagram.
December 2014 2014.12.15 • Updated the JESD204B IP Core FPGA Performance table with the data
rate range.
• Updated the JESD204B IP Core FPGA Resource Utilization table.
• Updated the JESD204B IP Core Parameters table with the following
changes:
— Revised the parameter name of Enable PLL/CDR Dynamic
Reconfiguration to Enable Transceiver Dynamic
Reconfiguration.
— Added information for a new parameter—Enable Altera Debug
Master Endpoint.
— Added details about the rule check for parameter N' value.
• Added a new topic—Integrating the JESD204B IP in Platform Designer
on page 31.
• Updated Overview of the JESD204B IP Core Block Diagram, Transmitter
Data Path Block Diagram, and Receiver Data Path Block Diagram.
• Added a new table—Register Access Type Convention—to describe the
access type for the IP core registers.
continued...
179
8. Document Revision History for the JESD204B Intel FPGA IP User Guide
683442 | 2023.07.20
June 2014 2014.06.30 • Updated Figure 2-1 to show a typical system application.
• Updated the list of core key features.
• Updated the Performance and Resource utilization values.
• Updated the Getting Started chapter to reflect the new IP Catalog and
parameter editor.
• Added the following new sections to further describe the JESD204B IP
core features:
— Channel Bonding
— Datapath Modes
— IP Core Variation
— JESD204B IP Core Testbench
— JESD204B IP Core Design Considerations
— TX Data Link Layer
— TX PHY Layer
— RX Data Link Layer
— RX PHY Layer
— Operation
— Dynamic Reconfiguration
— JESD204B IP Core Debug Guidelines
• Updated the Clocking scheme section.
• Added new transceiver signals that is supported in Intel Arria 10
devices.
• Updated the Transport Layer section.
• Added run-time reconfiguration parameter values in the System
Parameters section.
• Updated the file directory names.
180