1. A neural network circuit, comprising: plurality of digital electronic neurons; and an electronic synapse array comprising a plurality of digital synapses interconnecting the neurons; wherein each synapse has a corresponding multi-bit fine-grain value representing a synaptic weight of the synapse; wherein each neuron includes a learning module for updating a synaptic weight of a connected synapse based on one or more learning rules; wherein each learning module is independently reconfigurable; and wherein each learning module of each neuron includes one or more digital counters, each digital counter decays at a corresponding decay rate during each timestep, and each digital counter resets to a pre-determined value in response to the neuron generating a spike signal.