Disclosed is a non-volatile memory device and a method of programming the
same. The non-volatile memory device is programmed by applying a wordline
voltage, a bitline voltage, and a bulk voltage to memory cells within the
device. During a programming operation for the device, the bulk voltage
is generated by a first pump. However, where the bulk voltage exceeds a
predetermined detection voltage, a second pump is further activated in
order to lower the bulk voltage.