# Neuromorphic Analog Machine Vision Enabled by Nanoelectronic Memristive Devices
## 2 State-of-the-Art Studies
### Memristor-Based Spiking ANNs
The latter property is very important for the hardware implementation of neuromorphic processors, since it directly affects the number of components used, the complexity of electrical circuits, and their energy consumption. The research in [11; 17; 57; 58; 59; 60; 61; 62] shows that even simple spike shapes (rectangular or triangular) and neuron models (leaky integrate-and-fire) make it possible to solve recognition problems in memristor-based SNNs, reducing energy consumption and increasing robustness [59] in comparison with formal ANNs. Unsupervised learning in such systems is based on the STDP mechanism and provided by the overlapped waveform of pre-spikes and post-spikes within a certain time window, which determines the behavior of memristive devices during the feedback process [11; 58; 60]. To generate presynaptic spikes, specialized electrical circuits based on analog switches, operational amplifiers, and current mirrors, such as in [63; 64; 65], have been developed. They are controlled digitally and externally using an FPGA or microcontroller, initiating spike generation based on the input data. With this approach, the spike generator acts as a device that encodes the input digital information received by the computer through an external interface in the form of a sequence of pulses represented in analog form. This makes it possible to encode any information--tabular, visual, audio, etc. However, in most papers, either the electrical circuits of spike generators are not considered in detail [10; 13; 15; 16; 20; 22; 57; 66; 67], since the authors pay more attention to signal processing inside the crossbar arrays, or multi-channel DACs are used as a generator while also having  
Figure 2: Spiking ANNs based on memristive devices. (**A**) Common architecture includes presynaptic neurons and postsynaptic neurons, connected by artificial synapses implemented with memristors. Presynaptic neurons generate spikes encoding input information. Spikes go through the memristive synapses and locally change their resistances in accordance with the STDP (spike timing-dependent plasticity) rule, providing the self-learning of the whole ANN. (**B**) The dependence of the change \(\Delta\)W in synaptic conductance on the interval \(\Delta t\) between a presynaptic spike and a postsynaptic spike for different current synaptic conductance values W. (**C**) A spiking neuron receives sequences of spikes on its inputs and, under certain conditions, generates a spike at its output; for example, in the LIF (leaky integrate-and-fire) model, each spike contributes to the neuron’s status—its amplitude, which decays over time; if a sufficient number of spikes contributes to the status in a certain time window, the neuron’s amplitude exceeds a threshold, and the neuron generates an output spike [2]. external control from an FPGA or microcontroller, as in [9; 24; 29; 61]. Such systems have versatility with respect to the type of information being processed, but require external control and interfaces for receiving data. Thus, memristive devices make it possible to implement in hardware artificial synapses for different ANN types [57; 66], e.g., for the formal ANNs, in which the processed information is encoded according to the signal amplitude, and for the spiking ANNs, in which the processed information is encoded according to the signal frequency. However, spiking ANNs are more biologically plausible, because they make it possible to realize unsupervised learning in terms of an STDP mechanism or paired-pulse facilitation [68; 69]. So, on the way of bringing together \"in-sensor computing\" and \"in-memory computing\", the most prospective system's architecture must be based on the spiking ANN architectures.