# Flash Core Module

IBM FlashCore Modules (FCM) are solid state technology computer data storage modules using PCI Express attachment and the NVMe command set. They are offered as an alternative to industry-standard 2.5" NVMe SSDs in selected arrays from the IBM FlashSystem family, with raw storage capacities of 4.8 TB, 9.6 TB, 19.2 TB and 38.4 TB. FlashCore modules support hardware self-encryption and real-time inline hardware data compression up to 115.2 TB address space, without performance impact.

## History

On September 17, 2007, Texas Memory Systems (TMS) announced the RamSan-500, the world's first enterprise-class flash-based solid state disk (SSD). The Flash Modules were designed from the ground up by Texas Memory Systems using proprietary form-factors, physical connectivity, hard-decision ECC algorithm, and flash translation layer (FTL) contained completely inside the SSD. The flash controllers used a hardware only data path that enabled lower latency than any other commodity controllers could achieve. This product marked the beginning of development of the RamSan All Flash Arrays (AFA) and hybrid DRAM and Flash Arrays, which included custom designed flash management and storage infrastructure management suite implemented in both software and hardware. TMS aggressively developed six more generations of flash controllers (for a total of seven generations) using SLC Nand Flash and adopting MLC Nand flash for the later generations. These flash controllers were offered in a variety of configurations and form factors that included embedded PowerPC processors, FPGAs, and daughter cards with additional flash nodes.
Over 15 TMS products were offered utilizing these flash controllers, including 4 PCIe drives, RamSan-10/20/70/80, that could be installed in off the shelf servers.
TMS was eventually acquired by IBM in 2012.
On January 16, 2014, IBM announced the FlashSystem 840 product, which was the first FlashSystem designed entirely by IBM post-acquisition of TMS. IBM branded the flash controller technology IBM MicroLatency technology, and touted how the technology lowered data access times from milliseconds to microseconds.
On February 19, 2015, IBM announced the FlashSystem 900 and V9000 products and re-branded the flash controller technology as IBM FlashCore technology, and described it as the suite of innovations and capabilities that can enable FlashSystem to help deliver better performance than enterprise disk systems. The flash modules themselves continued to be branded the IBM MicroLatency Modules. This version of the technology supported Micron's MLC flash chip technology. This was also the first generation of FlashCore and first enterprise AFA to offer at speed, inline hardware compression and decompression.
With the announcement of the FlashSystem 9100 on July 10, 2018, FlashCore technology was re-implemented into a standard 2+1⁄2-inch U.2 NVMe SSD form factor and rebranded as FlashCore Modules (FCM). This marks the first time that the original technology developed by TMS was packaged in such a way that conformed to an industry specification and was interchangeable with industry-standard SSDs used inside of an AFA.

## Technology

IBM FlashCore Modules utilize an FPGA and NAND flash memory chips from off-the-shelf vendors to implement the entire data path in hardware. Each FCM contains a single FPGA with an NVMe gateway and multi-core ARM processors. Other major components include DRAM, MRAM, and of course NAND Flash.
As with all FlashCore technology, the FTL is contained completely inside the FCM and the data path includes at speed, inline hardware compression and decompression. The controller design for IBM FCM uses techniques such as health binning, heat segregation, read voltage shifting, and hard-decision error correction codes to avoid re-reads and lower write amplification to provide consistent low latency.
There are currently 3 generations of FCM:
* FCM1.0 - U.2 NVMe PCIe gen 3, hybrid SLC-TLC NAND Flash, available in 3 different capacities, 4.8TBu / 21.99TBe, 9.6TBu / 21.99 TBe, and 19.2TBu / 43.98TBe
* FCM2.0 - U.2 NVMe PCIe gen 3, hybrid SLC-QLC NAND Flash, available in 4 capacities, 4.8TBu / 21.99TBe, 9.6TBu / 21.99 TBe, 19.2TBu / 43.98TBe, and 38.4TBu / 87.96TBe
** The Introduction of FCM2 was the industry's largest capacity enterprise SSD as well as the first enterprise SSD to offer exclusively QLC NAND Flash!
* FCM3.0 - U.2 NVMe PCIe gen 3 and gen 4, hybrid SLC-QLC NAND Flash, available in 4 capacities, 4.8TBu / 21.99TBe, 9.6TBu / 28.8 TBe, 19.2TBu / 57.6TBe, and 38.4TBu / 115.2TBe
** This version of FCM is a performance and infrastructure optimized enterprise QLC SSD.
** The larger 2 capacities double the compressor performance and increase decompressor performance by over 50%.
** Using the latest cutting edge FPGA technology, the larger capacities pick up gen 4 PCIe and a speed bump for the ARM cores.
** All capacities include an optimized infrastructure for a more efficient data path with reduced components.
In April 2017, IBM's flash portfolio represented more than 380 patents.