Professional Documents
Culture Documents
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 3
NVDIMM Cookbook
A User Guide that describes the building blocks and the interactions needed to
integrate a NVDIMM into a system
Part I
NVDIMM
Part II
BIOS
Part III
OS (Linux)
Part IV
System Implementations & Use Cases
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 4
Software
MRC + BIOS
(Memory Reference Code)
SAVE Trigger
DIMM Interface
NVDIMM Cookbook
ApprovedCPU/Memory Controller
SNIA Tutorial © 2015 Power
Storage Networking Industry Association. All Rights Supply
Reserved. 5
Part
PRESENTATION TITLE1
GOES HERE
NVDIMM
JEDEC NVDIMM Taxonomy
Single letter designator - combines the media technology (NAND, etc) and the access
mechanism (byte, block, etc.)
Supercaps
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 8
Adapted from SNIA presentations by AgigA Tech
NVDIMM-N How It Works
Supercaps
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 9
Adapted from SNIA presentations by AgigA Tech
NVDIMM-N How It Works
Supercaps
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 10
Adapted from SNIA presentations by AgigA Tech
NVDIMM-N How It Works
Supercaps
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 11
Adapted from SNIA presentations by AgigA Tech
NVDIMM-N How It Works
Supercaps
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 12
Adapted from SNIA presentations by AgigA Tech
NVDIMM-N How It Works
Supercaps
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 13
Adapted from SNIA presentations by AgigA Tech
NVDIMM Entry Process using ADR
(Asynchronous DRAM Re-fresh)
t y ocess us g
A B C
Board Logic
Shutdown down
Detects A/C
Asserts ADR all power rails
Power Loss
and clocks
D E F
CPU/Chipset
Flushes ADR
Puts all DIMMs Asserts
protected
in Self-Refresh ADR_COMPLETE
buffers
G
NVDIMM
Isolates DRAM
from host and Copies DRAM to Turns off
switches to Flash Supercap
Supercap power
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 15
Source: Viking NVDIMM tutorial for SNIA
NVDIMM-N DDR4 Platform HW
Support/JEDEC Standardization
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 16
DDR4 Legacy vs. JEDEC
Comparison
1st Gen 2nd Gen
Type Features
Legacy JEDEC
NV controller registers controlled by Host via i2c Yes Yes
DDR4 12V Power Pins (1,145) Yes Yes
DDR4 SAVE_n Pin (230) Yes Yes
NVDIMM/ NVDIMM Controller EVENT# Pin (78) Yes Yes
Firmware SPD for NVDIMM representation In Part number JEDEC SPD
Hardware
NV Controller registers DDR3 compatible JEDEC Registers
Memory Interface to Host RDIMM RDIMM/LRDIMM
JEDEC Raw Cards None LRDIMM
BIOS
NVDIMM-N BIOS Support Functions
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 19
Source; SNIA NVDIMM SIG
Standard BIOS Flow
NVDIMM support : Major change in MRC module, minor change in E820 module
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 21
NVDIMM Restore/Recovery MRC Flow
No
Yes
Save in Progress?
Note Restore Status
in MRC Output
Structure
No
Yes
Train all
DIMMs(including
NVDIMMs) like
Rewrite RC registers
standard DIMM
End of Restore
Does NVDIMM contain Process
valid Data? Assert CKE
No
No 22
NVDIMM training slides provided by Intel
E820 Table Example
• E820 is shorthand to refer to the facility by which the BIOS of x86-based computer
systems reports the memory map to the operating system or boot loader.
Note: ACPI 6.0 defines Type 7 for Persistent Memory and NFIT
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 23
Additional BIOS Considerations
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 24
Legacy vs JEDEC I2C Register
Implementation
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 25
Part
PRESENTATION TITLE3
GOES HERE
OS (Linux)
Memory Mapped File
Programming Model
Application Application
File I/O File I/O
Load/Store
Load/Store
File system
Driver cache Driver
RAM
HW
Persistent
Disk Memory
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 27
Source; SNIA NVM Programming TWG
Linux NVDIMM Software Architecture
Mgmt Block
User Space
Load / Store
Standard Raw Standard File
Management Library Device Access API NVM Library
File System
DAX Enabled
FS
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 29
Linux Work in progress
• http://pmem.io
• http://pmem.io/documents/NVDIMM_Namespace_Spec.pdf
• http://pmem.io/documents/NVDIMM_Driver_Writers_Guide.pdf
• http://pmem.io/documents/NVDIMM_DSM_Interface_Example.pdf
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 30
Part
PRESENTATION TITLE4
GOES HERE
S2600WT2 S2600CW
Wildcat Pass Cottonwood Pass
X10DRI X10DRH
S2600KP S2600TP
Kennedy Pass Taylor Pass
X10DRC-LN4+
X10DRT-P
• Intel NVDIMM support not POR but HW is enabled and BIOS available via SOW
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved.
NVDIMM-N DDR4 Platform
Energy Source Options
• JEDEC JC45.6 Byte Addressable Energy Backed Interface
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 33
Population Rules
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 34
Source; Intel
Example Optimal Interleaves
4GB NVDIMM
4GB NVDIMM
4GB NVDIMM
8GB DIMM
4GB NVDIMM
8GB DIMM
8GB DIMM
8GB DIMM
CH0 CH2 CH0 CH2
CPU CPU
4GB NVDIMM
8GB DIMM
4GB NVDIMM
8GB DIMM
8GB DIMM
CH1 CH3
8GB DIMM
CH1 CH3
Empty
Empty
Has a 4-way Interleave between normal Has a 4-way Interleave between normal
DIMMs, and optionally a 2-way interleave DIMMs, and optionally a 4-way interleave
between the NVDIMMs between the NVDIMMs
4GB NVDIMM
4GB NVDIMM
8GB DIMM
8GB DIMM
8GB DIMM
Empty
CPU CPU
4GB NVDIMM
8GB DIMM
8GB DIMM
CH1 CH3
8GB DIMM
CH1 CH3
Empty
Empty
Has a 4-way Interleave between normal Has a 2-way Interleave between normal
DIMMs DIMMs, and optionally a 2-way interleave
between the NVDIMMs
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 35
Source; Intel
Use Cases
• Enterprise Storage: Tiering, caching, write buffering and meta data storage
without an auxiliary power source
NVDIMM Cookbook
Approved SNIA Tutorial © 2015 Storage Networking Industry Association. All Rights Reserved. 36
Adapted from SNIA presentations by HP
Application Example:
Storage Bridge Bay (SBB)
Backplane
10GigE 10GigE
NIC NIC
PCIe PCIe
DDR3 DDR3
DDR3 CPU CPU DDR3
DDR3 DDR3
DDR3 DDR3
PCIe PCIe
NVRAM NVRAM
PCIe PCIe
Card Card
Backplane
Non-Transparent Bridge
(PCIe)
DDR3 DDR3
DDR3 CPU CPU DDR3
DDR3 DDR3
NVDIMM NVIDIMM
\\\
NVDIMM Solution
Persistent data stored in fast DRAM tier
Transaction Kernel
Kernel Module
Removes software stack from data-path Logs Optimization
Simplification
Accelerates SW-Apps !
•DRAM class latency & thru-put for persistent data
– 1000X lower latency
– 10X+ throughput increase