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

ID 817467
Date 4/01/2024
Public

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

Document Table of Contents

6.3.1. DDR4 Byte Lane Swapping

The data lane can be swapped when the byte lanes are utilized as DQ/DQS pins.

Byte lane swapping on utilized lanes is allowed when you swap all the DQ/DQS/DM/DBI pins in the same byte lane with the other utilized byte lanes. The rules for swapping DQ byte lanes are as follows:

  • You can only swap between utilized DQ lanes.
  • You cannot swap a DQ lane with an AC lane.
  • You cannot swap a DQ lane with an ECC lane when out-of-band ECC is enabled. For x40 interfaces, you cannot swap the highest-indexed DQ byte lane.
  • Additional restrictions apply when you use a x16 memory component:
    • You must place DQ group 0 and DQ group 1 on adjacent byte lanes, unless they are separated by AC lanes. These 2 groups must be connected to the same x16 memory component.
    • You must place DQ group 2 and DQ group 3 on adjacent byte lanes, unless they are separated by AC lanes. These 2 groups must be connected to the same x16 memory component.
    • If you use only one byte of the x16 memory component, you must use only the lower byte of the memory component.
Table 75.  Byte Lane Swapping
Address/Command Scheme Data Width usage BL7 P95:P84 BL6 P83:P72 BL5 P71:P60 BL4 P59:P48 BL3 P47:P36 BL2 P35:P24 BL1 P23:P12 BL0 P11:P0
Scheme 2 DDR4 x32 + ECC DQ[ECC] DQ3 DQ[2] DQ[1] AC2 AC1 AC0 DQ[0]

Example 1: DDR4 x 32 +ECC implemented with AC Scheme 2 using x8 memory component

BL7 is used as ECC DQ lane, while Lane 0, 4, 5 and 6 are used DQ lanes. Byte lane swapping between BL0,4,5,6 is allowed.