Visible to Intel only — GUID: nbd1715109819370
Ixiasoft
1. About the External Memory Interfaces Agilex™ 5 FPGA IP
2. Agilex™ 5 FPGA EMIF IP – Introduction
3. Agilex™ 5 FPGA EMIF IP – Product Architecture
4. Agilex™ 5 FPGA EMIF IP – End-User Signals
5. Agilex™ 5 FPGA EMIF IP – Simulating Memory IP
6. Agilex™ 5 FPGA EMIF IP - DDR4 Support
7. Agilex™ 5 FPGA EMIF IP - DDR5 Support
8. Agilex™ 5 FPGA EMIF IP - LPDDR4 Support
9. Agilex™ 5 FPGA EMIF IP - LPDDR5 Support
10. Agilex™ 5 FPGA EMIF IP – Timing Closure
11. Agilex™ 5 FPGA EMIF IP – Controller Optimization
12. Agilex™ 5 FPGA EMIF IP – Debugging
13. Document Revision History for External Memory Interfaces (EMIF) IP User Guide
3.2.1. Agilex™ 5 EMIF Architecture: I/O Subsystem
3.2.2. Agilex™ 5 EMIF Architecture: I/O SSM
3.2.3. Agilex™ 5 EMIF Architecture: HSIO Bank
3.2.4. Agilex™ 5 EMIF Architecture: I/O Lane
3.2.5. Agilex™ 5 EMIF Architecture: Input DQS Clock Tree
3.2.6. Agilex™ 5 EMIF Architecture: PHY Clock Tree
3.2.7. Agilex™ 5 EMIF Architecture: PLL Reference Clock Networks
3.2.8. Agilex™ 5 EMIF Architecture: Clock Phase Alignment
3.2.9. User Clock in Different Core Access Modes
6.2.3.1. Address and Command Pin Placement for DDR4
6.2.3.2. DDR4 Data Width Mapping
6.2.3.3. General Guidelines
6.2.3.4. x4 DIMM Implementation
Data Bus Connection Mapping Flow
6.2.3.5. Specific Pin Connection Requirements
6.2.3.6. Command and Address Signals
6.2.3.7. Clock Signals
6.2.3.8. Data, Data Strobes, DM/DBI, and Optional ECC Signals
6.4.3.1. 1 Rank x 8 Discrete (Memory Down) Topology
6.4.3.2. 1 Rank x 16 Discrete (Memory Down) Topology
6.4.3.3. VREF_CA/RESET Signal Routing Guidelines for 1 Rank x 8 and 1 Rank x 16 Discrete (Memory Down) Topology
6.4.3.4. Skew Matching Guidelines for DDR4 (Memory Down) Discrete Configurations
6.4.3.5. Power Delivery Recommendation for DDR4 Discrete Configurations
6.4.3.6. DDR4 Simulation Strategy
12.1. Interface Configuration Performance Issues
12.2. Functional Issue Evaluation
12.3. Timing Issue Characteristics
12.4. Verifying Memory IP Using the Signal Tap Logic Analyzer
12.5. Debugging with the External Memory Interface Debug Toolkit
12.6. Generating Traffic with the Test Engine IP
12.7. Guidelines for Developing HDL for Traffic Generator
12.8. Guidelines for Traffic Generator Status Check
12.9. Hardware Debugging Guidelines
12.10. Create a Simplified Design that Demonstrates the Same Issue
12.11. Measure Power Distribution Network
12.12. Measure Signal Integrity and Setup and Hold Margin
12.13. Vary Voltage
12.14. Operate at a Lower Speed
12.15. Determine Whether the Issue Exists in Previous Versions of Software
12.16. Determine Whether the Issue Exists in the Current Version of Software
12.17. Try A Different PCB
12.18. Try Other Configurations
12.19. Debugging Checklist
12.20. Categorizing Hardware Issues
12.21. Signal Integrity Issues
12.22. Characteristics of Signal Integrity Issues
12.23. Evaluating Signal Integrity Issues
12.24. Skew
12.25. Crosstalk
12.26. Power System
12.27. Clock Signals
12.28. Address and Command Signals
12.29. Read Data Valid Window and Eye Diagram
12.30. Write Data Valid Window and Eye Diagram
12.31. Hardware and Calibration Issues
12.32. Memory Timing Parameter Evaluation
12.33. Verify that the Board Has the Correct Memory Component or DIMM Installed
Visible to Intel only — GUID: nbd1715109819370
Ixiasoft
6.2.3.4. x4 DIMM Implementation
DIMMS using a x4 DQS configuration require remapping of the DQS signals to achieve compatibility between the EMIF IP and the JEDEC standard DIMM socket connections.
The necessary remapping is shown in the table below. You can implement this DQS remapping in either RTL logic or in your schematic wiring connections.
DIMM | Quartus® Prime EMIF IP | |||
---|---|---|---|---|
DQS0_A | DQ[3:0]_A | DQS0 | DQ[3:0]_A | |
DQS5_A | DQ[7:4]_A | DQS1 | DQ[7:4]_A | |
DQS1_A | DQ[11:8]_A | DQS2 | DQ[11:8]_A | |
DQS6_A | DQ[15:12]_A | DQS3 | DQ[15:12]_A | |
DQS2_A | DQ[19:16]_A | DQS4 | DQ[19:16]_A | |
DQS7_A | DQ[23:20]_A | DQS5 | DQ[23:20]_A | |
DQS3_A | DQ[27:24]_A | DQS6 | DQ[27:24]_A | |
DQS8_A | DQ[31:28]_A | DQS7 | DQ[31:28]_A | |
DQS4_A | CB[3:0]_A | DQS8 | CB[3:0]_A | |
DQS9_A | CB[7:4]_A | DQS9 | CB[7:4]_A | |
DQS0_B | DQ[3:0]_B | DQS10 | DQ[3:0]_B | |
DQS5_B | DQ[7:4]_B | DQS11 | DQ[7:4]_B | |
DQS1_B | DQ[11:8]_B | DQS12 | DQ[11:8]_B | |
DQS6_B | DQ[15:12]_B | DQS13 | DQ[15:12]_B | |
DQS2_B | DQ[19:16]_B | DQS14 | DQ[19:16]_B | |
DQS7_B | DQ[23:20]_B | DQS15 | DQ[23:20]_B | |
DQS3_B | DQ[27:24]_B | DQS16 | DQ[27:24]_B | |
DQS8_B | DQ[31:28]_B | DQS17 | DQ[31:28]_B | |
DQS4_B | CB[3:0]_B | DQS18 | CB[3:0]_B | |
DQS9_B | CB[7:4]_B | DQS19 | CB[7:4]_B |
Data Bus Connection Mapping Flow
- Connect all FPGA DQ pins accordingly to DIMM DQ pins. No remapping is required.
- DQS/DQSn remapping is required either on the board schematics or in the RTL code.
When designing a board to support x4 DQS groups, Altera recommends that you make it compatible for x8 mode, for the following reasons:
- Provides the flexibility of x4 and x8 DIMM support.
- Allows use of x8 DQS group connectivity rules.
- Allows use of x8 timing rules for matching. Adhere to x4/x8 interoperability rules when designing a DIMM interface, even if the primary use case is to support x4 DIMMs only, because doing so facilitates debug and future migration capabilities. Regardless, the rules for length matching for two nibbles in a x4 interface must match those of the signals for a corresponding x8 interface, as the data terminations are turned on and off at the same time for both x4 DQS groups in an I/O lane. If the two x4 DQS groups were to have significantly different trace delays, it could adversely affect signal integrity. Trace delays for two nibbles packed within the IO12 lanes are matched using the same guidelines as a single x8 byte lane.