12#ifndef _SDRAM_SPD_DDR3_H_
13#define _SDRAM_SPD_DDR3_H_
591 UINT16 SerialNumber16[2];
592 UINT8 SerialNumber8[4];
648 UINT8 Reserved1[40 - 39 + 1];
650 UINT8 Reserved2[59 - 42 + 1];
658 UINT8 Reserved[116 - 64 + 1];
678 UINT8 Reserved[116 - 77 + 1];
685 UINT8 Reserved[116 - 63 + 1];
724 UINT8 Reserved[101 - 96 + 1];
725 UINT8 PersonalityByte[116 - 102 + 1];
736 UINT8 ModulePartNumber[145 - 128 + 1];
740 UINT8 ModuleRevisionCode[147 - 146 + 1];
744 UINT8 ManufacturerSpecificData[175 - 150 + 1];
759 UINT8 Reserved[255 - 176 + 1];
SPD3_TWTR_MIN_MTB_STRUCT tWTRmin
26 Minimum Internal Write to Read Command Delay Time (tWTRmin)
SPD3_TCK_MIN_FTB_STRUCT tCKminFine
34 Fine Offset for SDRAM Minimum Cycle Time (tCKmin)
SPD3_MODULE_ORGANIZATION_STRUCT ModuleOrganization
7 Module Organization
SPD3_TCK_MIN_MTB_STRUCT tCKmin
12 SDRAM Minimum Cycle Time (tCKmin)
SPD3_TRTP_MIN_MTB_STRUCT tRTPmin
27 Minimum Internal Read to Precharge Command Delay Time (tRTPmin)
SPD3_MODULE_MEMORY_BUS_WIDTH_STRUCT ModuleMemoryBusWidth
8 Module Memory Bus Width
SPD3_MODULE_THERMAL_SENSOR_STRUCT ModuleThermalSensor
32 Module Thermal Sensor
SPD3_TRAS_MIN_MTB_STRUCT tRASmin
22 Minimum Active to Precharge Delay Time (tRASmin), Least Significant Byte
SPD3_TRCD_MIN_MTB_STRUCT tRCDmin
18 Minimum RAS# to CAS# Delay Time (tRCDmin)
SPD3_TAA_MIN_MTB_STRUCT tAAmin
16 Minimum CAS Latency Time (tAAmin)
SPD3_SDRAM_DEVICE_TYPE_STRUCT SdramDeviceType
33 SDRAM Device Type
SPD3_SDRAM_DENSITY_BANKS_STRUCT SdramDensityAndBanks
4 SDRAM Density and Banks
SPD3_SDRAM_THERMAL_REFRESH_STRUCT ThermalAndRefreshOptions
31 SDRAM Thermal And Refresh Options
SPD3_TRFC_MIN_MTB_STRUCT tRFCmin
24-25 Minimum Refresh Recovery Delay Time (tRFCmin)
SPD3_TRC_MIN_MTB_STRUCT tRCmin
23 Minimum Active to Active/Refresh Delay Time (tRCmin), Least Significant Byte
SPD3_TRCD_MIN_FTB_STRUCT tRCDminFine
36 Fine Offset for Minimum RAS# to CAS# Delay Time (tRCDmin)
SPD3_TWR_MIN_MTB_STRUCT tWRmin
17 Minimum Write Recovery Time (tWRmin)
SPD3_MODULE_NOMINAL_VOLTAGE_STRUCT ModuleNominalVoltage
6 Module Nominal Voltage, VDD
SPD3_TFAW_MIN_MTB_STRUCT tFAWmin
29 Minimum Four Activate Window Delay Time (tFAWmin)
SPD3_DRAM_DEVICE_TYPE_STRUCT DramDeviceType
2 DRAM Device Type
UINT8 Reserved0
13 Reserved
SPD3_TFAW_MIN_MTB_UPPER_STRUCT tFAWMinUpper
28 Upper Nibble for tFAW
SPD3_TRP_MIN_FTB_STRUCT tRPminFine
37 Minimum Row Precharge Delay Time (tRPmin)
SPD3_CAS_LATENCIES_SUPPORTED_STRUCT CasLatencies
14-15 CAS Latencies Supported
SPD3_SDRAM_ADDRESSING_STRUCT SdramAddressing
5 SDRAM Addressing
SPD3_REVISION_STRUCT Revision
1 SPD Revision
SPD3_MAXIMUM_ACTIVE_COUNT_STRUCT MacValue
41 SDRAM Maximum Active Count (MAC) Value
SPD3_FINE_TIMEBASE_STRUCT FineTimebase
9 Fine Timebase (FTB) Dividend / Divisor
SPD3_SDRAM_OPTIONAL_FEATURES_STRUCT SdramOptionalFeatures
30 SDRAM Optional Features
SPD3_MODULE_TYPE_STRUCT ModuleType
3 Module Type
SPD3_DEVICE_DESCRIPTION_STRUCT Description
0 Number of Serial PD Bytes Written / SPD Device Size / CRC Coverage 1, 2
SPD3_TRAS_TRC_MIN_MTB_STRUCT tRASMintRCMinUpper
21 Upper Nibbles for tRAS and tRC
SPD3_TRC_MIN_FTB_STRUCT tRCminFine
38 Fine Offset for Minimum Active to Active/Refresh Delay Time (tRCmin)
SPD3_TRP_MIN_MTB_STRUCT tRPmin
20 Minimum Row Precharge Delay Time (tRPmin)
SPD3_TRRD_MIN_MTB_STRUCT tRRDmin
19 Minimum Row Active to Row Active Delay Time (tRRDmin)
SPD3_TAA_MIN_FTB_STRUCT tAAminFine
35 Fine Offset for Minimum CAS Latency Time (tAAmin)
SPD3_MEDIUM_TIMEBASE MediumTimebase
10-11 Medium Timebase (MTB) Dividend
UINT8 Week
Year represented in BCD (47h = week 47)
UINT8 Year
Year represented in BCD (00h = 2000)
UINT8 Location
Module Manufacturing Location.
SPD3_MEDIUM_TIMEBASE_DIVISOR_STRUCT Divisor
Medium Timebase (MTB) Divisor.
SPD3_MEDIUM_TIMEBASE_DIVIDEND_STRUCT Dividend
Medium Timebase (MTB) Dividend.
SPD3_UNBUF_MODULE_NOMINAL_HEIGHT ModuleNominalHeight
60 Module Nominal Height
SPD3_UNBUF_REFERENCE_RAW_CARD ReferenceRawCardUsed
62 Reference Raw Card Used
SPD3_UNBUF_MODULE_NOMINAL_THICKNESS ModuleMaximumThickness
61 Module Maximum Thickness
SPD3_LRDIMM_REFERENCE_RAW_CARD ReferenceRawCardUsed
62 Reference Raw Card Used
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_2_3QxOdtControlFor1866_2133
86 F[5,6]RC11 / F[5,6]RC10 - Rank 2 & 3 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_2_3QxOdtControlFor1333_1600
80 F[5,6]RC11 / F[5,6]RC10 - Rank 2 & 3 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_MODULE_DELAY_TIME MinimumModuleDelayTimeFor1_35V
92 Minimum Module Delay Time for 1.35 V
SPD3_LRDIMM_MDQ_TERMINATION_DRIVE_STRENGTH MdqTerminationDriveStrengthFor1866_2133
84 F1RC15 / F1RC14 - Additive Delay for ODT & CKE
SPD3_LRDIMM_EXTENDED_DELAY ExtendedDelay
69 F1RC11 / F1RC8 - Extended Delay for Y, CS and ODT & CKE
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_0_1QxOdtControlFor800_1066
73 F[3,4]RC11 / F[3,4]RC10 - Rank 0 & 1 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_TIMING_CONTROL_DRIVE_STRENGTH TimingControlDriveStrengthCaCs
67 F0RC3 / F0RC2 - Timing Control & Drive Strength, CA & CS
SPD3_LRDIMM_MDQ_TERMINATION_DRIVE_STRENGTH MdqTerminationDriveStrengthFor800_1066
72 F1RC15 / F1RC14 - Additive Delay for ODT & CKE
SPD3_LRDIMM_TIMING_DRIVE_STRENGTH DriveStrength
68 F0RC5 / F0RC4 - Drive Strength, ODT & CKE and Y
SPD3_LRDIMM_MR_1_2 MR_1_2RegistersFor1333_1600
83 MR1,2 Registers for 800 & 1066
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_4_5QxOdtControlFor800_1066
75 F[7,8]RC11 / F[7,8]RC10 - Rank 4 & 5 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_ADDITIVE_DELAY_FOR_QXCS_N_QXCA AdditiveDelayForCsCa
70 F1RC13 / F1RC12 - Additive Delay for CS and CA
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_0_1QxOdtControlFor1333_1600
79 F[3,4]RC11 / F[3,4]RC10 - Rank 0 & 1 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_4_5QxOdtControlFor1333_1600
81 F[7,8]RC11 / F[7,8]RC10 - Rank 4 & 5 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_MR_1_2 MR_1_2RegistersFor1866_2133
89 MR1,2 Registers for 800 & 1066
SPD3_LRDIMM_MODULE_ATTRIBUTES DimmModuleAttributes
63 Module Attributes
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_6_7QxOdtControlFor1333_1600
82 F[9,10]RC11 / F[9,10]RC10 - Rank 6 & 7 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_2_3QxOdtControlFor800_1066
74 F[5,6]RC11 / F[5,6]RC10 - Rank 2 & 3 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_0_1QxOdtControlFor1866_2133
85 F[3,4]RC11 / F[3,4]RC10 - Rank 0 & 1 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_MODULE_DELAY_TIME MaximumModuleDelayTimeFor1_35V
93 Maximum Module Delay Time for 1.35 V
SPD3_LRDIMM_MODULE_DELAY_TIME MinimumModuleDelayTimeFor1_25V
94 Minimum Module Delay Time for 1.25 V
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_6_7QxOdtControlFor1866_2133
88 F[9,10]RC11 / F[9,10]RC10 - Rank 6 & 7 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_MODULE_DELAY_TIME MaximumModuleDelayTimeFor1_25V
95 Maximum Module Delay Time for 1.25 V
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_6_7QxOdtControlFor800_1066
76 F[9,10]RC11 / F[9,10]RC10 - Rank 6 & 7 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_MDQ_TERMINATION_DRIVE_STRENGTH MdqTerminationDriveStrengthFor1333_1600
78 F1RC15 / F1RC14 - Additive Delay for ODT & CKE
SPD3_LRDIMM_MODULE_DELAY_TIME MaximumModuleDelayTimeFor1_5V
91 Maximum Module Delay Time for 1.5 V
SPD3_LRDIMM_MODULE_NOMINAL_THICKNESS ModuleMaximumThickness
61 Module Maximum Thickness
SPD3_MANUFACTURER_ID_CODE ManufacturerIdCode
65-66 Memory Buffer Manufacturer ID Code
SPD3_LRDIMM_MR_1_2 MR_1_2RegistersFor800_1066
77 MR1,2 Registers for 800 & 1066
SPD3_LRDIMM_MODULE_DELAY_TIME MinimumModuleDelayTimeFor1_5V
90 Minimum Module Delay Time for 1.5 V
UINT8 MemoryBufferRevisionNumber
64 Memory Buffer Revision Number
SPD3_LRDIMM_ADDITIVE_DELAY_FOR_QXODT_QXCKE AdditiveDelayForOdtCke
71 F1RC15 / F1RC14 - Additive Delay for ODT & CKE
SPD3_LRDIMM_RANK_READ_WRITE_QXODT_CONTROL Rank_4_5QxOdtControlFor1866_2133
87 F[7,8]RC11 / F[7,8]RC10 - Rank 4 & 5 RD & WR QxODT Control for 800 & 1066
SPD3_LRDIMM_MODULE_NOMINAL_HEIGHT ModuleNominalHeight
60 Module Nominal Height
SPD3_RDIMM_REGISTER_CONTROL_RESERVED Rc7Rc6
72 RC7 (MS Nibble) / RC6 (LS Nibble) - Reserved for Register Vendor
SPD3_RDIMM_REGISTER_CONTROL_RESERVED Rc13Rc12
75 RC12 (MS Nibble) / RC12 (LS Nibble) - Reserved
SPD3_RDIMM_REGISTER_REVISION_NUMBER RegisterRevisionNumber
67 Register Revision Number
SPD3_RDIMM_REGISTER_CONTROL_RESERVED Rc9Rc8
73 RC9 (MS Nibble) / RC8 (LS Nibble) - Reserved
SPD3_RDIMM_REGISTER_CONTROL_COMMAND_ADDRESS Rc3Rc2
70 RC3 (MS Nibble) / RC2 (LS Nibble) - Drive Strength, Command/Address
SPD3_RDIMM_REGISTER_CONTROL_CONTROL_CLOCK Rc5Rc4
71 RC5 (MS Nibble) / RC4 (LS Nibble) - Drive Strength, Control and Clock
SPD3_MANUFACTURER_ID_CODE RegisterManufacturerIdCode
65-66 Register Manufacturer ID Code
SPD3_RDIMM_REGISTER_CONTROL_RESERVED Rc15Rc14
76 RC15 (MS Nibble) / RC14 (LS Nibble) - Reserved
SPD3_RDIMM_REGISTER_CONTROL_RESERVED Rc11Rc10
74 RC11 (MS Nibble) / RC10 (LS Nibble) - Reserved
SPD3_RDIMM_REFERENCE_RAW_CARD ReferenceRawCardUsed
62 Reference Raw Card Used
SPD3_RDIMM_MODULE_NOMINAL_THICKNESS ModuleMaximumThickness
61 Module Maximum Thickness
SPD3_RDIMM_REGISTER_CONTROL_RESERVED Rc1Rc0
69 RC1 (MS Nibble) / RC0 (LS Nibble) - Reserved
SPD3_RDIMM_MODULE_ATTRIBUTES DimmModuleAttributes
63 DIMM Module Attributes
SPD3_RDIMM_THERMAL_HEAT_SPREADER_SOLUTION ThermalHeatSpreaderSolution
64 RDIMM Thermal Heat Spreader Solution
SPD3_RDIMM_REGISTER_TYPE RegisterType
68 Register Type
SPD3_RDIMM_MODULE_NOMINAL_HEIGHT ModuleNominalHeight
60 Module Nominal Height
SPD3_UNBUF_REFERENCE_RAW_CARD ReferenceRawCardUsed
62 Reference Raw Card Used
SPD3_UNBUF_ADDRESS_MAPPING AddressMappingEdgeConn
63 Address Mapping from Edge Connector to DRAM
SPD3_UNBUF_MODULE_NOMINAL_THICKNESS ModuleMaximumThickness
61 Module Maximum Thickness
SPD3_UNBUF_MODULE_NOMINAL_HEIGHT ModuleNominalHeight
60 Module Nominal Height
SPD3_MANUFACTURER_ID_CODE IdCode
Module Manufacturer ID Code.
SPD3_MANUFACTURING_DATE Date
Module Manufacturing Year, in BCD (range: 2000-2255)
SPD3_MANUFACTURING_LOCATION Location
Module Manufacturing Location.
SPD3_MANUFACTURER_SERIAL_NUMBER SerialNumber
Module Serial Number.
SPD3_MODULE_PART_NUMBER ModulePartNumber
128-145 Module Part Number
SPD3_MANUFACTURER_SPECIFIC ManufacturerSpecificData
150-175 Manufacturer's Specific Data
SPD3_MANUFACTURER_ID_CODE DramIdCode
148-149 Dram Manufacturer ID Code
SPD3_MODULE_SPECIFIC Module
60-116 Module-Specific Section
SPD3_CYCLIC_REDUNDANCY_CODE Crc
126-127 Cyclical Redundancy Code (CRC)
SPD3_BASE_SECTION General
0-59 General Section
SPD3_UNIQUE_MODULE_ID ModuleId
117-125 Unique Module ID
SPD3_MODULE_REVISION_CODE ModuleRevisionCode
146-147 Module Revision Code
UINT16 Reserved
Bits 15:15.
UINT8 CrcCoverage
Bits 7:7.
UINT8 BytesTotal
Bits 6:4.
UINT8 YExtendedDelay
Bits 1:0.
UINT8 RC8MdqOdtStrength
Bits 2:0.
UINT8 RC9MdqOdtStrength
Bits 6:4.
UINT8 RC8Reserved
Bits 3:3.
UINT8 RC9Reserved
Bits 7:7.
UINT8 RegisterType
Bits 7:4.
UINT8 DramRowCount
Bits 3:2.
UINT8 RegisterCount
Bits 1:0.
UINT8 MinimumDelayTime
Bits 0:6.
UINT8 FrontThickness
Bits 3:0.
UINT8 BackThickness
Bits 7:4.
UINT8 Driver_Impedance
Bits 1:0.
UINT8 RC11DA4ValueR0
Bits 5:5.
UINT8 RC11DA4ValueR1
Bits 7:7.
UINT8 RC11DA3ValueR0
Bits 4:4.
UINT8 RC11DA3ValueR1
Bits 6:6.
UINT8 RC10DA4ValueR0
Bits 1:1.
UINT8 RC10DA3ValueR0
Bits 0:0.
UINT8 RC10DA3ValueR1
Bits 2:2.
UINT8 RC10DA4ValueR1
Bits 3:3.
UINT8 AddressCommandOutputs
Bits 5:4.
UINT8 QxCS_nOutputs
Bits 7:6.
UINT8 Rank1Rank5Swap
Bits 1:1.
UINT8 AddressCommandPrelaunch
Bits 0:0.
UINT8 Y1Y3ClockOutputs
Bits 5:4.
UINT8 QxCkeOutputs
Bits 3:2.
UINT8 Y0Y2ClockOutputs
Bits 7:6.
UINT8 QxOdtOutputs
Bits 1:0.
UINT16 ContinuationCount
Bits 6:0.
UINT16 LastNonZeroByte
Bits 15:8.
UINT16 ContinuationParity
Bits 7:7.
UINT8 MaximumActivateCount
Bits 3:0.
UINT8 MaximumActivateWindow
Bits 5:4.
UINT8 VendorSpecific
Bits 7:6.
UINT8 PrimaryBusWidth
Bits 2:0.
UINT8 BusWidthExtension
Bits 4:3.
UINT8 OperationAt1_50
Bits 0:0.
UINT8 OperationAt1_25
Bits 2:2.
UINT8 OperationAt1_35
Bits 1:1.
UINT8 SdramDeviceWidth
Bits 2:0.
SPD3_MODULE_CLOCKED Clocked
128-255 Registered Memory Module Types
SPD3_MODULE_UNBUFFERED Unbuffered
128-255 Unbuffered Memory Module Types
SPD3_MODULE_REGISTERED Registered
128-255 Registered Memory Module Types
SPD3_MODULE_LOADREDUCED LoadReduced
128-255 Load Reduced Memory Module Types
UINT8 ThermalSensorPresence
Bits 7:7.
UINT8 ThermalSensorAccuracy
Bits 6:0.
UINT8 ModuleType
Bits 3:0.
UINT8 DramRowCount
Bits 3:2.
UINT8 RegisterType
Bits 7:4.
UINT8 RegisterCount
Bits 1:0.
UINT8 BackThickness
Bits 7:4.
UINT8 FrontThickness
Bits 3:0.
UINT8 CommandAddressAOutputs
Bits 5:4.
UINT8 CommandAddressBOutputs
Bits 7:6.
UINT8 Y1Y3ClockOutputs
Bits 5:4.
UINT8 Y0Y2ClockOutputs
Bits 7:6.
UINT8 ControlSignalsAOutputs
Bits 0:1.
UINT8 ControlSignalsBOutputs
Bits 3:2.
UINT8 RegisterRevisionNumber
Bits 7:0.
UINT8 HeatSpreaderSolution
Bits 7:7.
UINT8 HeatSpreaderThermalCharacteristics
Bits 6:0.
UINT8 ColumnAddress
Bits 2:0.
UINT8 RowAddress
Bits 5:3.
UINT8 BankAddress
Bits 6:4.
UINT8 SdramDeviceType
Bits 7:7.
UINT8 SignalLoading
Bits 1:0.
UINT8 ExtendedTemperatureRefreshRate
Bits 1:1.
UINT8 ExtendedTemperatureRange
Bits 0:0.
UINT8 AutoSelfRefresh
Bits 2:2.
UINT8 PartialArraySelfRefresh
Bits 7:7.
UINT8 OnDieThermalSensor
Bits 3:3.
UINT8 tFAWminUpper
Bits 3:0.
UINT8 tRCminUpper
Bits 7:4.
UINT8 tRASminUpper
Bits 3:0.
INT8 tRCDminFine
Bits 7:0.
UINT8 MappingRank1
Bits 0:0.
UINT8 RawCardExtension
Bits 7:5.
UINT8 FrontThickness
Bits 3:0.
UINT8 BackThickness
Bits 7:4.