1. A method for producing spike-dependent plasticity in an artificial synapse comprising: generating a pre-synaptic spiking event in a first neuron when a total integrated input to said first neuron exceeds a first predetermined threshold; wherein the first neuron comprises an integrate and fire circuit for integrating inputs received by the neuron; generating a post-synaptic spiking event in a second neuron when a total integrated input to said second neuron exceeds a second predetermined threshold; wherein the second neuron comprises an integrate and fire circuit for integrating inputs received by the neuron; after said pre-synaptic spiking event, applying a first pulse to a pre-synaptic node of a synapse having a phase change memory element; and after said post-synaptic spiking event, applying a second varying pulse to a postsynaptic node of said synapse; wherein current through said synapse is a function of the state of said second varying pulse at the time of said first pulse and relative timing of the pre-synaptic spiking event and the post-synaptic spiking event; wherein shape of each first pulse and shape of each second varying pulse are controlled for matching physical switching characteristics of each phase change memory element.