One Gray Code Fits All: Optimizing Access Time with Bi-Directional Programming for QLC SSDs

Shaoqi Li, Tianyu Wang, Yongbiao Zhu, Chenlin Ma, Yi Wang, Zhaoyan Shen, Zili Shao · 2025

Gray code, a voltage-level-to-data-bit translation scheme, is widely used in QLC SSDs. However, it causes the four data bits in QLC to exhibit significantly different read and write performance with up to 8 × latency variation, severely impacting the worst-case performance of QLC SSDs. This paper presents BDP, a novel Bi-Directional Programming scheme. Based on a fixed Gray code, BDP combines both the normal (forward) and reverse programming directions to enable runtime programming direction arbitration. Experimental results show that BDP can effectively improve the read and write performance of SSD compared to representative schemes.

Read the paper · More papers on PaperTik