MRAM: A Versatile Non-Volatile Memory for Next-Generation Computing | Synapse