1. A non-volatile memory device comprising: a memory array of non-volatile memory cells arranged in columns and rows, wherein the each memory cell in a column is coupled to an associated bit line; a first multiplexer coupled to a first end of each bit line to select bit lines during write operations to the memory array; and a second multiplexer coupled to a second end of each bit line to select bit lines during read operations from the memory array.