Although flash memory solid state drives (FSSDs) outperform traditional hard disk drives
(HDDs), their performance still fails to cope up with the perennial doubling speeds of
microprocessors (CPUs) and network bandwidth, regardless of the available high bandwidth
in computer systems. This is mainly because flash memory has to slowly write
out-of-place which further induces erase and garbage collection (GC) operations apart
from the high risk of further delay caused by access conflict. Moreover, FSSDs employing
a cache mapping table (CMT) in DRAM suffer from a heavy cache-miss penalty when
exposed to high miss-rate workloads environments which further degrade FSSD performance.
Such implementations also fail to recover without page faults and amplified read
operations whenever the system experiences an unexpected power-cut because of the
sync interruption between volatile DRAM and flash mappings.
To alleviate this performance gap, various semiconductor institutions like Intel, Micron,
Samsung, and Hynix have developed faster and scalable non-volatile memory (NVM)
technology for use as main memory but so far none have produce a full NVM Phase Change Memory solid state drive (PCM-SSD). If we can use PCM as secondary memory
in SSD, we can build a future PCM-SSD (PSSD) to replace the slow traditional FSSD.
However, a careful design, on how to present the PSSD as a block device to the host while
concealing the underlying PCM energy consumption and endurance weaknesses is essential.
Moreover, the management of PCM in-place-updates ability and bit-addressability
should be not be overlooked.
In this dissertation, we propose a hardware assumption of an NVM-PCM to replace
NAND-flash memory as a next generation storage memory in storage systems devices
like SSDs. We introduce a PCM file translation layer called PhaseFTL. Our FTL can manage
the address mappings from the host file system to PCM and can hide the PCM energy
consumption and limited lifespan constrains together with providing an efficient wearleveling
algorithm for PCM blocks to wear down evenly. Moreover, PhaseFTL also efficiently
exploit the bit-addressability and in-place-update ability of PCM apart from being
robust from faults caused by sudden or unexpected power failures, for example. When
such occurs, our proposed system has effective fault recovery mechanisms that further
determines how the CMT is constructed or reconstructed during the system recovery
process.
Experimental results show that our PSSD can improve the overall SSD performance by
69% on average compared to traditional FSSDs while our PhaseFTL can efficiently manage
the PSSD operations whilst hiding its endurance weakness by propagating more write
traffic to DRAM and less to PCM cells. Furthermore, our system outperforms traditional
approaches on both lifespan management and robustness apart from the reduction of
access conflicts.