1. A programmable logic array, comprising: a first group of spin transfer torque magnetic tunnel junction (MTJ) devices arranged in an array forming an input plane; a second group of MTJ devices arranged in a column forming an output plane, wherein the input plane and the output plane are combined to form a logic function based on a resistance state of each MTJ device; a plurality of programmable sources coupled to corresponding MTJ devices, wherein the programmable sources are configure to program the resistance state of corresponding MTJ devices; and a sense amplifier coupled to the output plane configured to detect a voltage level on the column and to generate a binary output voltage based on a comparison of the voltage level on the column to a threshold voltage.