In a memory having a first power supply terminal configured to provide a first supply voltage, a second power supply terminal configured to provide a second supply voltage less than the first supply voltage, and a memory array of memory cells in which each memory cell is coupled to a first column line of a plurality of first column lines, a method comprising:
- selecting a set of first column lines from the plurality of first column lines for a memory write operation of a write value to a selected set of the memory cells coupled to the selected set of first column lines;
- generating a virtual ground voltage at a virtual ground node, wherein the virtual ground voltage is greater than the second supply voltage, and less than the first power supply voltage, wherein in a flipped voltage follower circuit having a current source coupled in series with a source follower transistor and a sink transistor between the first power supply terminal and the second power supply terminal, a first current electrode of the source follower transistor is coupled to the current source, and a second current electrode of the source follower transistor is coupled to the virtual ground node to generate the virtual ground voltage;
- and
- during the memory write operation:
- coupling all unselected first column lines of the plurality of first column lines to the virtual ground node;
- coupling each first column line of the selected set of first column lines to write circuitry configured to receive the write value, in which each memory cell of the selected set of memory cells stores a corresponding unique bit of the write value;
- and
- providing a current through each memory cell of the selected set of memory cells based on the write value, wherein, for each memory cell, the current is provided through the memory cell in a first direction when the corresponding unique bit has first value, and in a second direction, opposite the first direction, when the corresponding unique bit has a second value, different from the first value.