tn4041 Adding Ecc With ddr4 x16 Components
tn4041 Adding Ecc With ddr4 x16 Components
Introduction
Technical Note
Adding ECC to a Data Bus with DDR4 x16 Components
Introduction
Systems with lower density memory requirements use x16 DRAM components to save space, cost and power.
System designers who also have high data integrity requirements may want to implement ECC using an extra 8-
bit data path, making for some awkward combinations of components on the data bus. DDR4 creates additional
challenges caused by the different number of bank groups on x8 and x16 components. This technical note
provides guidance for adding ECC on a single-rank, point-to-point DDR4 data bus when using x16 components.
Note: All tables in this technical note are based on current production DDR4 devices available at the time of
publishing: 8Gb Rev. R (1α Z41C) and 16Gb Rev. F (1α Z42B). Component area is based on package size only and
does not include board area needed for signal routing.
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 1 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
Products and specifications discussed herein are for evaluation and reference purposes only and are subject to change by
Micron without notice. Products are only warranted by Micron to meet Micron's production data sheet specifications. All
information discussed herein is provided on an "as is" basis, without warranties of any kind.
TN-40-41: Adding ECC With DDR4 x16 Components
Important Notes and Warnings
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 2 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
DDR4 Bus Configurations
x16 x16
8 8 8 8
x32 Controller
b) With x8 Components
x8 x8 x8 x8
8 8 8 8
x32 Controller
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 3 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
DDR4 Bus Configurations
8 8 8 8 8 8 8 8
x64 Controller
b) With x8 Components
x8 x8 x8 x8 x8 x8 x8 x8
8 8 8 8 8 8 8 8
x64 Controller
The tables above show that when there is a choice between x16 and x8 components, the x16
configuration has clear advantages in board area and power consumption over the same density x8
configuration. In addition, the controller has fewer loads on the command/address/clock signals
when using true x16 components. The reduced loading can help with layout, signal integrity and even
controller power for driving these signals. Note that the x16 DDP components will present the same
command/address/clock signal loading and power as using x8 components, but will provide an
advantage in board area.
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 4 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
Adding ECC
Adding ECC
As mentioned in the introduction, the system requirements for some applications require an
additional level of data integrity and confidence, and this is commonly addressed using ECC. For 32-
and 64-bit data paths, ECC protection is provided by adding an extra 8 bits, making buses that are 40-
bits and 72-bits wide, respectively. (It is beyond the scope of this document to discuss the
implementation and merits of specific ECC schemes.)
There are several challenges when adding ECC to a DDR4 bus. The ECC component must be selected
to match the addressing used by the other components on the bus. Because x16 DDR4 components
have only two bank groups and x8 components have four bank groups, it is not possible to use a x8
component of half the density (as could be done for DDR3 designs). The addressing for a x8 DDR4
component forces the ECC device to be the same density as the x16 component, and half of the
density goes unused in the form of two extra bank groups.
The alternative is to use a x16 component for ECC. To make the row and column addressing match
the data components, the ECC component must have the same density. Using the same density x16
component has the advantage of simplifying the BOM somewhat (all DDR4 devices are identical), but
it does result in an unused byte lane on the ECC component.
We will examine both options.
ECC With an Additional x16 Component
As mentioned above, using an additional x16 component for ECC simplifies the DRAM portion of the
BOM because the same component is used for all placements on the bus, but it has disadvantages as
well. Compared to a x8 ECC component, the x16 power will be slightly higher and it will use a bit more
board space. In addition, there is an unused byte lane that must be terminated. The following figure
shows a high-level diagram of adding a x16 component for ECC.
Figure 3: Adding a x16 Component for ECC
a) x32 Data Path
8 8 8 8 8 8
NC
x40 Controller
8 8 8 8 8 8 8 8 8 8
NC
x72 Controller
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 5 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
Adding ECC
When using a x16 component for ECC, the lower byte lane (DQ[7:0]) must be used for the ECC bits.
DDR4 memory is capable of per-DRAM addressability (PDA), and this function is used during the
DDR4 device initialization sequence for VREFDQ calibration. PDA is enabled by DQ0, so the lower byte
lane must be used and connected to the controller.
The unused upper byte lane should be terminated as follows:
• DQ[15:8] can be left floating (ODT will terminate to VDDQ)
• UDM_n/UDBI_n should be terminated to VDDQ (allows DM or DBI to be enabled)
• UDQS_t should be terminated to VDDQ
• UDQS_c should be terminated to VSSQ
Figure 4 shows the details of these connections.
Figure 4: DDR4 x16 Component Connected as ECC Device
DQ[15:8] Float
UDM_n/UDBI_n VDD
UDQS_t
UDQS_c
Controller
DQ[7:0]
LDM_n/LDBI_n
LDQS_t
LDQS_c
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 6 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
Adding ECC
x16 x16 x8
8 8 8 8 8
x40 Controller
8 8 8 8 8 8 8 8 8
x72 Controller
Half of the bank groups are disabled by tying BG1 to VSSQ, as shown in Figure 6. This enables
command/address parity. Because the unused BG1 input on the x16 devices is treated as a zero, the
parity generated by both the x16 and the x8 devices will be the same.
Figure 6: DDR4 x8 Component Connected as ECC Device
BG1
Controller
DQ[7:0]
DM_n/DBI_n
DQS_t
DQS_c
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 7 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
Considerations for Using DDR4 x16 DDP
8 8 8 8 8
x40 Controller
8 8 8 8 8 8 8 8 8
x72 Controller
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 8 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
DDR4 Bus with ECC
Table 4: Key Parameters for x64 DDR4 Data Path With ECC
x64 Data Bus with ECC Density Component Area IDD7 @ 3200 MT/s
Using x8 ECC Component
8Gb x16 (4 pcs + 8Gb x8 ECC) 4GB 472.5 mm2 (Rev. R) 1055 mA
16Gb x16 (4 pcs + 16Gb x8 8GB 472.5 mm2 (Rev. F) 967 mA
ECC)
8Gb x8 (9 pcs) 8GB 742.5 mm2 (Rev. R) 1395 mA
16Gb x8 (9 pcs) 16GB 742.5 mm2 (Rev. F) 1503 mA
32Gb x16 DDP (4 pcs + 16Gb 16GB 472.5 mm2 (Rev. F) 1503 mA
x8 ECC)
Using x16 ECC Component
8Gb x16 (5 pcs) 4GB 487.5 mm2 (Rev. R) 1125 mA
16Gb x16 (5 pcs) 8GB 487.5 mm2 (Rev. F) 1000 mA
As the tables show, using x16 data components with a x8 component for ECC results in the lowest
power and the least board area. Using a x16 component for ECC simplifies the BOM (and thus the
procurement process) at the cost of small increases in power and board area, plus a slight added
complexity in terminating an unused byte lane.
The x16 DDP provides the same density and power as using all x8 components, but at the same
component area as the standard x16 with the x8 ECC component. Thus, you get twice the density in
the same board area.
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 9 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
Write CRC
Write CRC
System designers who wish to use the DDR4 write CRC feature as a debug or verification tool should
check that the DRAM used for ECC is suitable. While older generations of Micron DRAMs may not
support the write CRC feature when using a x16 as an ECC part, Micron's latest generations of DDR4
x16 (8Gb Die Rev E and Rev R, 16Gb Die Rev B, E, and F) will manage the write CRC correctly for the
lower byte as long as the upper DQ/DQS pins are floating.
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 10 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
Conclusion
Conclusion
There are several viable choices for adding ECC to low-density DDR4 buses. The optimal choice for
any design will be the balance of power, board space and BOM complexity (including additional
terminations for unused signals on the byte lane). The guidelines presented here will help the
designer find the implementation with the right balance for their needs.
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 11 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.
TN-40-41: Adding ECC With DDR4 x16 Components
Revision History
Revision History
Rev. B – 3/23
• Updated Write CRC section
• Updated Tables 1-4
Rev. A – 3/18
• Initial release
CCM005-524338224-10509
tn4041_adding_ecc_to_data_busddr4_x16.pdf - Rev. B 3/23 EN 12 Micron Technology, Inc. reserves the right to change products or specifications without notice.
© 2018 Micron Technology, Inc.. All rights reserved.