Step 2 of 3  ·  ← Step 1: PCM vs ReRAM  ·  PCM home  ·  Step 3: PCM crossbar  ·  Compare: the ReRAM version

How does a weight get written into a PCM cell?

In a PCM array the weights are conductances, and a cell is pushed to one with heat pulses and then checked. The idea is the same as for ReRAM, but the physics changes the rules: every pulse has the same polarity, SET crystallizes a little at a time, and RESET cannot step down. Follow one weight through the six steps below.

    Check yourself

    Why does a PCM write loop erase first, and why does an overshoot cost so much?

    SET pulses only shrink the amorphous dome, and RESET rebuilds the whole dome in one go, so there is no small step downwards. If a pulse lands above the tolerance band, the only fix is a RESET and a new climb. That is why the controller picks gentle pulses as it gets close. Set a large σ in step 5 and press “Try a different cell” to see restarts.

    The levels are evenly spaced in conductance. Why are they not evenly spaced in dome size?

    G = Gmax·(Gmin/Gmax)a, so conductance falls exponentially as the dome grows. Equal steps of G near Gmax need very small changes of a, and near Gmin the same G step needs a much larger one. Compare the “dome a” values in step 3 for level 1 and the top level.

    Why does open loop (no read-back) land so far from the aim on some cells?

    The same pulse shrinks the dome by a different factor on every cell, and the factor compounds over many pulses. Verify reads cancel that out by stopping each cell when it is close enough. Switch to “Open loop” in step 5 and press “Try a different cell” a few times.

    The verify read says the cell is exactly on target. A year later it reads lower. Did the write fail?

    No. The write was correct, but the amorphous glass relaxes and G falls as a power law of the time since the write. Drag “Time since write” in step 6. The verify read cannot see this, because it happens right after the pulse, so drift has to be handled separately (Step 1, section 4).

    A weight is written once and used a million times. Which cost matters more, the write or the read?

    If the weights are reused, the write cost (a RESET plus a climb of SET pulses and reads) is shared across all of those multiplies, while every multiply pays for its own read-out. The write is expensive in PCM, so it only pays off when the weights are reused many times, as in inference.

    What next

    Next: put the cells in a grid

    Step 3 is the PCM crossbar simulator. It repeats this loop for every cell of a matrix, then multiplies with it, including drift.

    Further reading

    The pulse voltages, pulse counts and conductances on this page come from an illustrative model, not from a real device. These papers describe real PCM weights and their imperfections (also listed in Step 1).

    1. Le Gallo, M. & Sebastian, A. An overview of phase-change memory device physics. Journal of Physics D: Applied Physics (2020). doi:10.1088/1361-6463/ab7794 Threshold switching, crystallization, resistance drift and noise, written with in-memory computing in mind.
    2. Burr, G. W. et al. Experimental demonstration and tolerancing of a large-scale neural network (165,000 synapses) using phase-change memory as the synaptic weight element. IEEE Transactions on Electron Devices (2015). doi:10.1109/TED.2015.2439635 Weights stored in a pair of PCM cells each, and what it took to tolerate their imperfections.
    3. Le Gallo, M. et al. A 64-core mixed-signal in-memory compute chip based on phase-change memory for deep neural network inference. Nature Electronics 6, 680–693 (2023). doi:10.1038/s41928-023-01010-1 A full chip with PCM weights, and the drift and noise problems it had to handle.

    Links can change, so searching the title and DOI always works.