1. A method for reading a memory cell with first and second memory states, the memory cell including a first programmable resistance element having a programmable resistance, the method comprising: driving the first programmable resistance element with a first current and measuring a first electrical quantity at the first programmable resistance element; driving the first programmable resistance element with a second current and measuring a second electrical quantity at the first programmable resistance element; and detecting the first and second memory states by comparing the first electrical quantity with the second electrical quantity.