Certain memories used in digital systems can experience data loss if too many physically-proximate data bits in the memory have the same bit value and surround a bit of opposite value. That is, if too many bits in physical proximity are zeros, data loss can occur for a one bit stored near the zeros. Similarly, if too many bits in physical proximity are ones, data loss can occur for a zero bit stored near the ones. To mitigate data loss in these types of memories, memory controllers may implement data randomization, also referred to as “data scrambling.” The data scrambling mechanisms use reproducible pseudo-random modifications to change data written to memory, and to change the data back to the original data when read from the memory. By changing the data, the mix of ones and zeros is changed in an attempt to reduce the number of like-bits in physical proximity.