A three tier memory has an upper sub block, a lower sub block, and a middle sub block. In the present disclosure, rather than precharging the upper and lower sub blocks, use is made of the middle sub block using a
firmware (FW) scheme. Upon receiving a write request from a host, the FW will
route the data to the middle sub block (SB1) through
reverse order programming (ROP) so that the SB1 is pre-charged through the source side through the lower sub block (SB0). Once the SB1 is written, data is then routed to the SB0 and then to the upper sub block (SB2). When there is a
garbage collection (GC) request, the FW will move the data from the SB2 and then erase the SB2. Then the data moves from the SB0 and SB0 is erased. Finally, the data moves from the SB1 and then SB1 is erased.