A write circuit for a large array of memory cells of a Magnetic Random
Access Memory ("MRAM") device. The write circuit can provide a
controllable, bi-directional write current to selected word and bit lines
without exceeding breakdown limits of the memory cells. Additionally, the
write circuit can spread out the write currents over time to reduce peak
currents.