External Memory Interfaces (EMIF) IP User Guide: Agilex™ 5 FPGAs and SoCs

ID 817467
Date 7/08/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

9.1.1. Agilex 5 FPGA External Memory Interfaces (EMIF) IP Parameter Descriptions for LPDDR5

Each parameter with an adjacent checkbox can be auto-computed. The checkbox to the left of the parameter controls whether its value is auto-computed (true) or set manually (false). If there is no checkbox to the left of a parameter, then it must be set manually.
Table 178.  Group: Example Design / Example Design
Display Name Description
HDL Selection

This option lets you choose the format of HDL in which generated simulation and synthesis files are created. You can select either Verilog or VHDL.

(Identifier: EX_DESIGN_HDL_FORMAT)

Synthesis

Generate Synthesis Example Design

(Identifier: EX_DESIGN_GEN_SYNTH)

Simulation

Generate Simulation Example Design

(Identifier: EX_DESIGN_GEN_SIM)

Core Clock Freq

Frequency of the core clock in MHz. This clock drives the traffic generator and NoC initiator (If in NoC mode)

Note: This parameter can be auto-computed.

(Identifier: EX_DESIGN_CORE_CLK_FREQ_MHZ)

Core Refclk Freq

PLL reference clock frequency in MHz for PLL supplying the core clock

(Identifier: EX_DESIGN_CORE_REFCLK_FREQ_MHZ)

Traffic Generator Remote Access

Specifies whether the Traffic Generator control and status registers are accessible via JTAG, exported to the fabric, or just disabled

(Identifier: EX_DESIGN_HYDRA_REMOTE)

Table 179.  Group: General IP Parameters / High-Level Parameters
Display Name Description
Technology Generation

Denotes the specific memory technology generation to be used

Note: This parameter can be auto-computed.

(Identifier: MEM_TECHNOLOGY)

Memory Format

Specifies the packaging format of the memory device

(Identifier: MEM_FORMAT)

Memory Device Topology

Topology used by memory device

(Identifier: MEM_TOPOLOGY)

Memory Ranks

Total number of physical ranks in the interface

(Identifier: MEM_NUM_RANKS)

Number of Channels

Number of channels

(Identifier: MEM_NUM_CHANNELS)

Device DQ Width

If the device is a DIMM: Specifies the full DQ width of the DIMM.

If the interface is composed of discrete components: Specifies the DQ width of each discrete component.

(Identifier: MEM_DEVICE_DQ_WIDTH)

Number of Components Per Rank

Number of components per rank

(Identifier: MEM_COMPS_PER_RANK)

Enable Frequency Set Point 1

Specifies whether or not a second Frequency Set Point will be used for FSP-enabled technologies

(Identifier: PHY_FSP1_EN)

Enable Frequency Set Point 2

Specifies whether or not a third Frequency Set Point will be used for FSP-enabled technologies

(Identifier: PHY_FSP2_EN)

ECC Mode

Specifies the type of ECC (if any) and the required number of side-band bits per channel that will be used by this EMIF instance. While not all required side-band bits necessarily carry ECC bits, all need to be connected to the memory device. If enabling ECC requires more side-band bits than necessary ECC bits, then ECC bits are transmitted on the least significant side-band bits.

Note: This parameter can be auto-computed.

(Identifier: CTRL_ECC_MODE)

Total DQ Width

(Derived Parameter) This will be the width (in bits) of the mem_dq port on the memory interface.

For a component interface, it is calculated based on: (MEM_COMPS_PER_RANK * MEM_DEVICE_DQ_WIDTH + (8 bits if Side-band ECC is enabled, or 8 bits if AXI4 User Data is enabled in fabric modes, or 4 bits if AXI4 User Data is enabled in NoC mode)) * MEM_NUM_CHANNELS

For a DIMM-based interface, it is just MEM_DEVICE_DQ_WIDTH + (8 bits if side-band ECC is enabled, or 8 bits if AXI4 User Data is enabled in fabric modes, or 4 bits if AXI4 User Data is enabled in NoC mode) * MEM_NUM_CHANNELS.

(Identifier: MEM_TOTAL_DQ_WIDTH)

Memory Clock Frequency for Frequency Set Point 0

Specifies the FSP0 operating frequency of the memory interface in MHz. If you change the memory frequency, you should update the memory latency parameters on the Memory tab and the memory timing parameters on the Mem Timing tab.

Note: This parameter can be auto-computed.

(Identifier: PHY_MEMCLK_FSP0_FREQ_MHZ)

Memory Clock Frequency for Frequency Set Point 1

Specifies the FSP1 operating frequency of the memory interface in MHz. If you change the memory frequency, you should update the memory latency parameters on the Memory tab and the memory timing parameters on the Mem Timing tab.

Note: This parameter can be auto-computed.

(Identifier: PHY_MEMCLK_FSP1_FREQ_MHZ)

Memory Clock Frequency for Frequency Set Point 2

Specifies the FSP2 operating frequency of the memory interface in MHz. If you change the memory frequency, you should update the memory latency parameters on the Memory tab and the memory timing parameters on the Mem Timing tab.

Note: This parameter can be auto-computed.

(Identifier: PHY_MEMCLK_FSP2_FREQ_MHZ)

Instance ID

Instance ID of the EMIF IP. EMIF in the same bank, or connected to related user logic (e.g. to the same INIU), should have unique IDs in order to distinguish them when using the side-band interface. Valid values are 0-6.

(Identifier: INSTANCE_ID)

Table 180.  Group: General IP Parameters / Memory Device Preset Selection
Display Name Description
Use Memory Device Preset from file for FSP 0

Specifies whether MEM_PRESET_ID_FSP0 will be a value from Quartus (if false), or a value from a custom preset file path (if true)

(Identifier: MEM_PRESET_FILE_EN_FSP0)

Memory Preset custom file path for FSP 0

Path to a .qprs file on the users disk for Frequency Set Point 0

(Identifier: MEM_PRESET_FILE_QPRS_FSP0)

Use Memory Device Preset from file for FSP 1

Specifies whether MEM_PRESET_ID_FSP1 will be a value from Quartus (if false), or a value from a custom preset file path (if true)

(Identifier: MEM_PRESET_FILE_EN_FSP1)

Memory Preset custom file path for FSP 1

Path to a .qprs file on the users disk for Frequency Set Point 1, if enabled

(Identifier: MEM_PRESET_FILE_QPRS_FSP1)

Use Memory Device Preset from file for FSP 2

Specifies whether MEM_PRESET_ID_FSP2 will be a value from Quartus (if false), or a value from a custom preset file path (if true)

(Identifier: MEM_PRESET_FILE_EN_FSP2)

Memory Preset custom file path for FSP 2

Path to a .qprs file on the users disk for Frequency Set Point 2, if enabled

(Identifier: MEM_PRESET_FILE_QPRS_FSP2)

Memory Preset for FSP 0

The name of a preset that the user would like to load for LPDDR5 Frequency Set Point 0, describing the memory device that this EMIF will be targeting.

Note: This parameter can be auto-computed.

(Identifier: MEM_PRESET_ID_FSP0)

Memory Preset for FSP 1

The name of a preset that the user would like to load for LPDDR5 Frequency Set Point 1, describing the memory device that this EMIF will be targeting.

Note: This parameter can be auto-computed.

(Identifier: MEM_PRESET_ID_FSP1)

Memory Preset for FSP 2

The name of a preset that the user would like to load for LPDDR5 Frequency Set Point 2, describing the memory device that this EMIF will be targeting.

Note: This parameter can be auto-computed.

(Identifier: MEM_PRESET_ID_FSP2)

Table 181.  Group: General IP Parameters / Advanced Parameters / PHY / Topology
Display Name Description
Asynchronous Enable

Specifies whether the user logic is clocked based on the clock provided by the IP (Sync), or by a separate user clock (Async). If true - async mode is used, if false - sync mode is used.

(Identifier: PHY_ASYNC_EN)

AC Placement

Indicates location on the device where the interface will reside (specifically, the location of the AC lanes in terms IO BANK and TOP vs BOT part of the IO BANK). Legal ranges are derived from device floorplan. By default (value=AUTO), the most optimal location is selected (to maximize available frequency and data width).

Note: This parameter can be auto-computed.

(Identifier: PHY_AC_PLACEMENT)

PLL Reference Clock Frequency

Specifies what PLL reference clock frequency the user will supply. It is recommended to use the fastest possible PLL reference clock frequency because it leads to better jitter performance.

Note: This parameter can be auto-computed.

(Identifier: PHY_REFCLK_FREQ_MHZ)

Table 182.  Group: General IP Parameters / Advanced Parameters / FPGA I/O / FPGA I/O Settings
Display Name Description
Voltage

The voltage level for the I/O pins driving the signals between the memory device and the FPGA memory interface.

(Identifier: PHY_IO_VOLTAGE)

Table 183.  Group: General IP Parameters / Advanced Parameters / FPGA I/O / FPGA I/O Settings / Address/Command
Display Name Description
Drive Strength

This parameter allows you to change the output on chip termination settings for the selected I/O standard on the Address/Command Pins. Perform board simulation with IBIS models to determine the best settings for your design.

(Identifier: GRP_PHY_AC_X_R_S_AC_OUTPUT_OHM)

Table 184.  Group: General IP Parameters / Advanced Parameters / FPGA I/O / FPGA I/O Settings / Memory Clock
Display Name Description
Drive Strength

This parameter allows you to change the output on chip termination settings for the selected I/O standard on the CK Pins. Perform board simulation with IBIS models to determine the best settings for your design.

(Identifier: GRP_PHY_CLK_X_R_S_CK_OUTPUT_OHM)

Table 185.  Group: General IP Parameters / Advanced Parameters / FPGA I/O / FPGA I/O Settings / Data Bus
Display Name Description
I/O Standard

Specifies the I/O electrical standard for the data bus pins. The selected I/O standard configures the circuit within the I/O buffer to match the industry standard.

(Identifier: GRP_PHY_DATA_X_DQ_IO_STD_TYPE)

Drive Strength

This parameter allows you to change the output on chip termination settings for the selected I/O standard on the DQ Pins. Perform board simulation with IBIS models to determine the best settings for your design.

(Identifier: GRP_PHY_DATA_X_R_S_DQ_OUTPUT_OHM)

Slew Rate

Specifies the slew rate of the data bus pins. The slew rate (or edge rate) describes how quickly the signal can transition, measured in voltage per unit time. Perform board simulations to determine the slew rate that provides the best eye opening for the data bus signals.

(Identifier: GRP_PHY_DATA_X_DQ_SLEW_RATE)

Input Termination

This parameter allows you to change the input on chip termination settings for the selected I/O standard on the DQ Pins. Perform board simulation with IBIS models to determine the best settings for your design.

(Identifier: GRP_PHY_DATA_X_R_T_DQ_INPUT_OHM)

Initial Vrefin

Specifies the initial value for the reference voltage on the data pins(Vrefin). The specified value serves as a starting point and may be overridden by calibration to provide better timing margins.

(Identifier: GRP_PHY_DATA_X_DQ_VREF)

Table 186.  Group: General IP Parameters / Advanced Parameters / FPGA I/O / FPGA I/O Settings / PHY Inputs
Display Name Description
PLL Reference Clock Input Termination

This parameter allows you to change the input on chip termination settings for the selected I/O standard on the refclk input pins. Perform board simulation with IBIS models to determine the best settings for your design.

(Identifier: GRP_PHY_IN_X_R_T_REFCLK_INPUT_OHM)

Table 187.  Group: General IP Parameters / Advanced Parameters / FPGA I/O / FPGA I/O Settings / Decision Feedback Equilization (DFE)
Display Name Description
DFE Tap 1

This parameter allows you to select the amount of bias used on tap 1 of the FPGA DFE

(Identifier: GRP_PHY_DFE_X_TAP_1)

DFE Tap 2

This parameter allows you to select the amount of bias used on tap 2 of the FPGA DFE

(Identifier: GRP_PHY_DFE_X_TAP_2)

DFE Tap 3

This parameter allows you to select the amount of bias used on tap 3 of the FPGA DFE

(Identifier: GRP_PHY_DFE_X_TAP_3)

DFE Tap 4

This parameter allows you to select the amount of bias used on tap 4 of the FPGA DFE

(Identifier: GRP_PHY_DFE_X_TAP_4)

Table 188.  Group: General IP Parameters / Advanced Parameters / Mem I/O / Memory I/O Settings / Data Bus On-Die Termination (ODT)
Display Name Description
Target Write Termination

Specifies the target termination to be used during a write

(Identifier: GRP_MEM_ODT_DQ_X_TGT_WR)

Non-Target Termination

Specifies the termination to be used for the non-target rank in a multi-rank configuration

(Identifier: GRP_MEM_ODT_DQ_X_NON_TGT)

Idle Termination

Specifies the termination to be used for RTT_PARK and DQS_RTT_PARK. For power savings it is recommended to leave this as disabled.

(Identifier: GRP_MEM_ODT_DQ_X_IDLE)

Drive Strength

Specifies the termination to be used when driving read data from memory

(Identifier: GRP_MEM_ODT_DQ_X_RON)

Data Clock Termination

Specifies the termination to be used for the data clock (WCK)

(Identifier: GRP_MEM_ODT_DQ_X_WCK)

Table 189.  Group: General IP Parameters / Advanced Parameters / Mem I/O / Memory I/O Settings / Data Bus Reference Voltage (Vref)
Display Name Description
VrefDQ Value

Specifies the initial VrefDQ value to be used

(Identifier: GRP_MEM_DQ_VREF_X_VALUE)

Table 190.  Group: General IP Parameters / Advanced Parameters / Mem I/O / Memory I/O Settings / Address/Command Bus On-Die Termination (ODT)
Display Name Description
Common Termination

Common termination value that can be applied to CA/CK/CS for LPDDR4 and can be applied to CA/CK for LPDDR5

(Identifier: GRP_MEM_ODT_CA_X_CA_COMM)

CA Termination Enable

Enable the common termination value on the CA bus. For LPDDR4, enabling CA termination will have no effect unless the ODT_CA bond pad is HIGH.

(Identifier: GRP_MEM_ODT_CA_X_CA_ENABLE)

CS Termination Enable

Enable the common termination value on the CS bus for LPDDR4. For LPDDR5, this enables the fixed-value 80 Ohm (RZQ/3) CS termination if it is supported by the memory.

(Identifier: GRP_MEM_ODT_CA_X_CS_ENABLE)

CK Termination Enable

Enable the common termination value on the CK bus

(Identifier: GRP_MEM_ODT_CA_X_CK_ENABLE)

Table 191.  Group: General IP Parameters / Advanced Parameters / Mem I/O / Memory I/O Settings / Address/Command Bus Reference Voltage (Vref)
Display Name Description
VrefCA Value

Specifies the initial VrefCA value to be used

(Identifier: GRP_MEM_VREF_CA_X_CA_VALUE)

Table 192.  Group: General IP Parameters / Advanced Parameters / Mem I/O / Memory I/O Settings / Decision Feedback Equilization (DFE)
Display Name Description
DFE Tap 1

This parameter allows you to select the amount of bias used on tap 1 of the memory DFE

(Identifier: GRP_MEM_DFE_X_TAP_1)

Table 193.  Group: General IP Parameters / Advanced Parameters / AXI Settings / AXI Interface Settings
Display Name Description
Enable Debug Tools

If enabled, the AXI-L port will be connected to SLD nodes, allowing for a system-console avalon manager interface to interact with this AXI-L subordinate interface.

(Identifier: DEBUG_TOOLS_EN)

AXI-Lite Port Access Mode

Specifies whether the AXI-Lite port is connected to the fabric, the NOC, or disabled

Note: This parameter can be auto-computed.

(Identifier: AXI_SIDEBAND_ACCESS_MODE)

Table 194.  Group: General IP Parameters / Advanced Parameters / Additional Parameters / Additional String Parameters
Display Name Description
User Extra Parameters

Semi-colon seperated list of key/value pairs of extra parameters

(Identifier: USER_EXTRA_PARAMETERS)

Table 195.  Group: Example Design / Performance Monitor
Display Name Description
Enable performance monitoring

Enable performance monitor on all channels for measuring read/write transaction metrics

(Identifier: EX_DESIGN_PMON_ENABLED)

Table 196.  Group: Example Design / Traffic Generator Program
Display Name Description
Traffic Generator Program

Specifies the traffic pattern to be run.

(Identifier: EX_DESIGN_HYDRA_PROG)