Patent ID: 7872925

Claim:
A method of programming a nonvolatile semiconductor memory device, the method comprising: providing a memory cell array including a plurality of memory cells, each memory cell storing data programmed via a corresponding bit line; providing a plurality of page buffers, each page buffer storing data apparent on a corresponding bit line and comprising a main latch block storing a main latch data; providing a cache latch block storing a cache latch data; providing an output driver gated by the main latch data and unidirectionally driving an internal output line to an output driving voltage in accordance with a logic level of the main latch data; loading cache latch data into a cache latch block of a page buffer in accordance with a logical state of input data provided by an external source; dumping main latch data into a main latch block of the page buffer in accordance with the cache latch data; programming a memory cell of a memory cell array of the nonvolatile semiconductor memory device with a corresponding bit line in accordance with the main latch data; and loading next data in the cache latch block during the programming of the memory cell.