A compensation system for an array of magnetic memory cells measures local operating
conditions and compensates for changes in the operating characteristics of the
magnetic memory cells in the array that result from the changes in the operating
conditions. The magnetic field strength near the magnetic memory array is measured.
If the magnetic field strength rises above, or falls below certain predetermined
threshold values, the write current used to alter the orientation of the magnetic
fields in the magnetic memory cells is altered based upon the predetermined operating
characteristics of the memory cells. A solenoid or similar type magnetic field
generator may also be used to substantially compensate for variations in the sensed
magnetic fields. In addition, the temperature of the environment in which the magnetic
memory cells are operating is sensed and appropriate changes made in the write
current. Temperature control means may also be used to compensate for sensed changes
in the local operating environment.