A data storage device (100, 200, 500), comprising: a plurality of Multi-Level Cell non-volatile memory devices (206, 504) comprising a plurality of lower pages and a corresponding plurality of higher-order pages; a controller (104, 202, 502) coupled to the plurality of MLC non-volatile memory devices (206, 504) and configured to write data to and read data from the plurality of lower pages and the corresponding plurality of higher-order pages; and a buffer (208, 504) comprising non-volatile memory (102, 508), the buffer (208, 504) being separate from the plurality of MLC non-volatile devices and coupled to the controller (104, 202, 502); wherein the controller (104, 202, 502) is configured to: accumulate data to be written to the MLC non-volatile memory devices (206, 504); allocate space in the buffer (208, 504) and write the accumulated data to the allocated space in the buffer (208, 504); write at least a portion of the accumulated data in a lower page of the MLC non-volatile memory devices (206, 504); and in the event of a loss of power; read data from the buffer (208, 504) and write at least a portion of the read data to the MLC non-volatile memory devices (206, 504) after power is restored to the data storage (100, 200, 500) device after the loss of power; and de-allocate space in the buffer (206, 504) that stores data written to the lower page when all higher-order pages corresponding to the lower page have been written in the MLC non-volatile memory devices (206, 504). a plurality of Multi-Level Cell non-volatile memory devices (206, 504) comprising a plurality of lower pages and a corresponding plurality of higher-order pages; a controller (104, 202, 502) coupled to the plurality of MLC non-volatile memory devices (206, 504) and configured to write data to and read data from the plurality of lower pages and the corresponding plurality of higher-order pages; and a buffer (208, 504) comprising non-volatile memory (102, 508), the buffer (208, 504) being separate from the plurality of MLC non-volatile devices and coupled to the controller (104, 202, 502); wherein the controller (104, 202, 502) is configured to: accumulate data to be written to the MLC non-volatile memory devices (206, 504); allocate space in the buffer (208, 504) and write the accumulated data to the allocated space in the buffer (208, 504); write at least a portion of the accumulated data in a lower page of the MLC non-volatile memory devices (206, 504); and in the event of a loss of power; read data from the buffer (208, 504) and write at least a portion of the read data to the MLC non-volatile memory devices (206, 504) after power is restored to the data storage (100, 200, 500) device after the loss of power; and de-allocate space in the buffer (206, 504) that stores data written to the lower page when all higher-order pages corresponding to the lower page have been written in the MLC non-volatile memory devices (206, 504). accumulate data to be written to the MLC non-volatile memory devices (206, 504); allocate space in the buffer (208, 504) and write the accumulated data to the allocated space in the buffer (208, 504); write at least a portion of the accumulated data in a lower page of the MLC non-volatile memory devices (206, 504); and in the event of a loss of power; read data from the buffer (208, 504) and write at least a portion of the read data to the MLC non-volatile memory devices (206, 504) after power is restored to the data storage (100, 200, 500) device after the loss of power; and de-allocate space in the buffer (206, 504) that stores data written to the lower page when all higher-order pages corresponding to the lower page have been written in the MLC non-volatile memory devices (206, 504).