Re-Ordering for LPDDR3 and LPDDR2

For LPDDR3 and LPDDR2, you can only re-order the signals for bytes 2 and 3.

Table 1. DQS, DQ, and DM Bytes
Byte Signals Re-Ordering Allowed?
0 DQS[0], DQ[7:0], DM[0] No
1 DQS[1], DQ[15:8], DM[1] No
2 DQS[2], DQ[23:16], DM[2] Yes
3 DQS[3], DQ[31:24], DM[3] Yes

When laying out your PCB, follow these guidelines:

Table 2. PCB Guidelines
Memory Function Guideline
LPDDR3, LPDDR2 MRR Connect DQS[0], DQ[7:0], DM[0] to the FPGA's DQS[0], DQ[7:0], and DM[0] pins correctly.
LPDDR3, LPDDR2 CA training Connect DQS[1], DQ[15:8], and DM[1] signals to the FPGA's DQS[1], DQ[15:8], and DM[1] pins correctly.
LPDDR3, LPDDR2 Write leveling Connect the prime DQ to the FPGA's prime DQ.
LPDDR3 DQ calibration Connect the prime DQ to the FPGA's prime DQ.

The following table shows examples of acceptable and unacceptable re-ordering. Examples A and B show DQ signal re-ordering in bytes 2 and 3, while Example C shows DQ re-ordering in bytes 0 and 1.

Table 3. Re-Ordering Examples
LPDDR3 DQ Example A: Acceptable FPGA DQ Example B: Acceptable FPGA DQ Example C: UNACCEPTABLE FPGA DQ
0 Prime DQ 0 Prime DQ 0 Prime DQ 8 Prime DQ
1 1 1 9
2 2 2 10
3 3 3 11
4 4 4 12
5 5 5 13
6 6 6 14
7 7 7 15
8 Prime DQ 8 Prime DQ 8 Prime DQ 0 Prime DQ
9 9 9 1
10 10 10 2
11 11 11 3
12 12 12 4
13 13 13 5
14 14 14 6
15 15 15 7
16 Prime DQ 24 Prime DQ 16 Prime DQ 16 Prime DQ
17 25 19 17
18 26 18 18
19 27 20 19
20 28 17 20
21 29 23 21
22 30 22 22
23 31 21 23
24 Prime DQ 16 Prime DQ 24 Prime DQ 24 Prime DQ
25 17 31 25
26 18 30 26
27 19 29 27
28 20 28 28
29 21 27 29
30 22 26 30
31 23 25 31