Functional emulator designs for a memristor model with programmable analog and digital platforms

Hardware validation and verification studies for emulator circuits of the memristor element usually include either analog or digital realization results. In this study, the implementation stages of a memristor element using the Joglekar window function with programmable and reconfigurable analog and digital platforms are given together in order to observe the characteristic current–voltage relationship, experimentally. Herein, a Joglekar window function-based voltage-controlled memristor has been implemented with the field-programmable analog array (FPAA) platform for the first time. In fact, the FPAA platform has attracted attention thanks to its analog nature, rapid prototyping and low hardware cost specialties, and because different nonlinear functions can be easily constructed on this device. Similarly, the field-programmable gate array (FPGA) platform has recently been recognized for its parallel processing feature in digital signal processing studies. The FPGA-based digital implementation stages of the Joglekar window function-based memristor element are also addressed in this study. Thus, the FPAA and FPGA based memristor emulator designs are presented together in order to contribute the memristor-based analog and digital applications that is required to obtain real-time signals.


Introduction
In 1971, Leon Chua defined the most basic relation of the memristor element as relating the integrals of the timedependent electrical voltage and current signals in basic circuit theory [1]. This component, which is modeled as a twoterminal element and introduced as the fourth basic passive circuit element, soon attracted the attention of circuit theorists with its unique nonlinear properties that distinguish it from other passive circuit elements. Although the fundamental mathematical relation of the memristor was discovered in the 1970s, the first physical realization of this element was realized 40 years later by the teams of Stanley Williams and Hewlett Packard (HP) Laboratories in 2008. The remarkable features of the memristor element such as small size [2], low power consumption [3], high-speed operation [4], stable behavior [5], and multi-state operation [6] are mentioned in a report published by HP Company. Thus, interest in the use of the memristor elements in both scientific research and the electronics industry has seen a resurgence.
The resistance levels of this element have been employed during the use of the memristor element in digital and analog electronic applications. While few resistance levels of the memristor are employed in digital electronics applications, the ranges of resistance values between the minimum and maximum values are utilized to enable the actual calculation in analog applications. Several models including the linear ion drift model [7], nonlinear ion drift model [8], Simmons tunneling barrier model [9], and threshold adaptive memristor model (TEAM) [10], which highlight different characteristics of the memristor element, have been defined 1 3 for electronic applications in the literature. The nonlinear ion model, which is a voltage-controlled memristor model, stands out among these models because of its more pronounced current-voltage characteristics. On the other hand, nonlinear ion modeling has a limitation of value constraints. This restriction is reduced by defining different window functions that control the ion drift rate limits. The Biolek, Prodromakis, Strukov, and Joglekar window functions are some of the most common [11][12][13][14][15].
The success in the application of the Biolek window function model is due to its ability to eliminate the boundary lock problem on boundary points [16]. Although this function has offered a solution to the boundary lock problem, it cannot show continuity at the boundaries and causes drift velocity discontinuity at the boundaries. Similar to the Biolek window function, the Prodromakis window function model has also the boundary lock problem. There are two control parameters in the Prodromakis window function model, namely (p) and (j). While deciding the shape of the window function with the (p) parameter, the scale of the amplitude of the window function can be adjusted with the (j) parameter. The Strukov window function model is proposed to express the behavior in the boundary conditions of the HP model. The main purpose of its proposal is to ensure that the boundary conditions of the memristor element are limited to certain special conditions. However, in the Strukov window function model, no external field effect can change the state of the memristor, which is an important problem. Additionally, it is assumed that the memristor element remembers the amount of charge. However, while the memristor remembers the boundary conditions, it will not remember the charge amount. The Joglekar window function model is proposed to overcome this shortcoming of the Strukov window function. In addition, the nonlinearity property, which is one of the basic characteristics of the memristor, is met with the Joglekar window function. The Joglekar model is also successful in providing zero crossing and curvature adjustment, and its control can be performed with this model using the (p) parameter.
After modeling studies of the memristor element, its physical production and real-time electrical characteristic outputs have required the use of this element in different circuits and systems. In addition to the prototype produced by HP Company, several emulator circuits using different hardware have been implemented so that the memristor element can be used in experimental implementations. Chua [1] utilized operational amplifiers, transistors, diodes, capacitors, resistors, and potentiometers in their first analog emulator circuit. Mutlu and Karakulak [17] proposed another emulator circuit that includes a rectifier, differential amplifier, integrator, and nonlinear resistor structures. Pershin and Di Ventra [18] developed a programmable memristor emulator that includes a microprocessor, analog-to-digital converter (ADC) and digital potentiometer. Valsa et al. [19] implemented a voltage-controlled memristor emulator that generates voltage proportional to conductivity and flux. Kim et al. [20] proposed two different memristor emulator circuits that tend to increase and decrease depending on the polarity of the applied voltage. A memristor emulator was designed by Wang et al. [21] using a light-dependent resistor (LDR), and their designs have been proposed for educational purposes. Biolek et al. [22] proposed several memristor emulators using a current-feedback operational amplifier (CFOA), transimpedance operational amplifier (TOA) [23]. Several different integrated components such as opamp, multiplier and complementary metal-oxide-semiconductor (CMOS) have been used for emulating memristors in the literature [24][25][26]. Sodhi and Gandhi [27] designed a kit consisting of discrete elements that mimic memristor behavior, and this kit can be used for educational purposes. Xie et al. [28] proposed a new nonlinear logarithmic model to characterize the memristor device and a memristor emulator circuit. The use of discrete hardware in many of these implementations is disadvantageous because the values of the circuit elements should be fine-tuned in these designs. For this reason, in some studies, only the analysis results of the emulator circuits, which are developed for memristors, are presented in the circuit simulation program. For example, Batas and Fiedler [29] presented and discussed a SPICE implementation for a charge-controlled memristor. Similarly, Adzmi et al. [30] simulated memristor models in SPICE to compare the basic characteristics of various windowing functions.
In recent years, programmable and reconfigurable analog or digital elements have attracted considerable attention given their attractive features, enabling precise parameter adjustment, similar to the simplicity offered by simulation tools, and providing experimental outputs similar to measuring real-time electrical signals obtained by discrete hardware. In the literature, there have been various studies on the use of programmable and reconfigurable elements as an alternative solution for the realization of systems with different nonlinear functions. In some of these studies, analog or digital programmable hardware platforms have been preferred over different emulator circuits for testing and verifying designs using memristor elements. For example, Tahir and Saif [31] simulated a flux-controlled memristor model numerically, and performed the hardware implementation of this model using a field-programmable analog array (FPAA). Arık and Kılıç [32] used an FPAA device for experimental testing and validation of the memristor-based chaotic systems. Vourkas et al. [33] developed the first digital memristor emulator based on the voltage-controlled threshold memristor model. Tomez et al. [34] presented the fieldprogrammable gate array (FPGA)-based implementation results of the system designed by a hybrid system generator for three window functions based on the nonlinear dopant memristor model. Tolba et al. [35] proposed an FPGA-based implementation for a discrete memristor model (DMM) and continuous memristor model (CMM). Farooq et al. [36] designed the basic and complex memristor-transistor hybrid building blocks of heterogeneous island-style FPGA, which are combined to form a full hybrid heterogeneous FPGA architecture. Alombah et al. [37] exploited the model using three ordinary differential equations proposed by Muthuswamy [38] in 2010. The numerical analyses of this model were executed in the MATLAB program and verified using the FPGA platform.
In the literature, hardware validation and verification studies of the emulator circuits of the memristor element include usually either an analog or digital realization result [39,40]. In this study, the implementation stages of a Joglekar window function-based memristor element, which overcomes the shortcoming of the other functions, with the programmable and reconfigurable analog and digital platforms are given together in order to experimentally observe the characteristic current-voltage relationship of the nonlinear ion model. Herein, a voltage-controlled memristor modeled with the Joglekar window function is implemented with the FPAA platform for the first time, to the best of our knowledge. In fact, the FPAA platform has attracted attention thanks to its analog nature, rapid prototyping and low hardware cost specialties, and because different nonlinear functions can be constructed on this device easily. Similarly, the FPGA platform has been recognized for its parallel processing feature in digital signal processing in recent work, and the FPGA-based digital implementation stages of the Joglekar window function-based memristor element were also addressed in this study. Thus, in this study, the FPAAand FPGA-based memristor emulator designs are presented together in order to contribute to the memristor-based analog and digital applications that require real-time signals.
In this context, in Sect. 2, after a short introduction to the definitions of memristance and memductance concepts, the window functions, defined with different functions, are examined. In order to observe the hysteresis structure, which is the characteristic curve of the memristor element, an input signal is applied to the memristor element. The memristor element exhibits frequency-dependent operating characteristics, so that these characteristics can be observed thanks to this time-dependent input signal. The responses of the Joglekar window function-based memristor element to the sinusoidal input signals at different frequencies are observed with the numerical simulation results. In Sect. 3, the details of the design steps for the construction of the Joglekar window function-based memristor element on the FPAA platform are presented and the obtained FPAA-based implementation results are also given. During the FPAAbased design process, the amplitude and the frequency of the internal sinusoidal oscillator in the FPAA platform are set to the desired values, but there is usually no predefined sinusoidal oscillator structure in the FPGA platform. Thus, it is required to define a sinusoidal oscillator on the FPGA platform to observe characteristic outcomes of the memristor element. In this study, instead of applying an external signal from the signal generator to the FPGA platform utilizing with an analog to digital converter, a sinusoidal oscillator is built on the FPGA platform using the Van der Pol (VDP) oscillator definition. The oscillation frequency of the VDP oscillator is adjusted to the desired frequency and it is applied to the input of the Joglekar window function-based memristor element. In Sect. 4, the characteristic hysteresis curve of FPGA-based implemented memristor element is observed, successfully. Finally, since the FPAA and the FPGA platforms are analog and digital embedded system, respectively, their typical properties cannot be directly compared. On the other hand, in addition to the procedures in their design stages, the bottlenecks encountered in these design stages and the proposed solution approaches to eliminate these problems, and general outputs of these programmable platforms such as power consumption and memory usage are discussed in Sect. 5. The general results of this study are presented in the last section.

The numerical simulation of a Joglekar window function-based memristor element
Resistor, capacitor and inductor are basic passive circuit elements in circuit theory. These elements are defined by the relationship among the four circuit variables of current (i), voltage (v), electric charge (q), and magnetic flux (φ). Resistance (R) represents the relationship between voltage and current (dv = Rdi). Capacitance (C) represents the relationship between voltage and load (dq = Cdv), and inductance (L) represents the relationship between current and magnetic flux (dφ = Ldi). According to Faraday's Law, current (i) is equal to the derivative of electrical charge (q) and voltage (v) is equal to the derivative of magnetic flux (φ). It is clear that there are six different combinations of the four basic circuit variables, but only five combinations are expressed according to these definitions. In studies carried out in the 1970s, this deficiency was noticed and a fourth basic circuit element, the memristor, was introduced [1]. The relationship between the basic circuit elements and electrical variables is shown in Fig. 1.
The memristor represents the relationship between electrical charge and magnetic flux, completing the final combination. The memristor is a passive circuit element, whose resistance changes depending on the current flowing through itself. The resistance of the memristor element increases when current flows in one direction and decreases when it flows in the opposite direction. When the applied current is removed, it maintains the last resistance value until the current is applied again. This indicates that the memristor element acts as a memory resistor. The memristor, which is the portmanteau of memory Resistor, is also named because of this feature. If the relationship between charge and flux is defined as a function of charge (q), it is expressed as a charge-controlled memristor, called memristance, it has units in ohms (Ω) and memristance is expressed as in Eq. 1: If the relationship between charge and flux is defined as a function of flux (φ), it is expressed as a flux-controlled memristor, called memductance, it has units in siemens (S), and memductance is expressed as in Eq. 2: Although memristance and memductance have units of resistance and conductivity, respectively, these elements have many unique nonlinear properties such as a passivity criterion, closure theorem, existence and uniqueness theorem, compressed hysteresis loops and defined limiting linear properties [41]. The HP Company team produced the first physical memristor, namely the linear drift model. The HP memristor model is seen in Fig. 2. This element is produced by placing a thin film of titanium dioxide (TiO 2 ) between two platinum (Pt) electrodes [7]. In this model shown in Fig. 2, D represents the width of the element and consists of two regions. The first region denotes the electron vacancies doped with positive oxygen ions, and the second region denotes the undoped portion.
The width of the doped portion is defined by w and has a low resistance (R on ). Therefore, it is more conductive. The undoped region has higher resistance (R off ). When w = 0, the memristor resistance increases and acts as an open switch. When w = D, the memristor resistance decreases and acts as a closed switch. Considering the production process, the memristance expression depending on the variable w is defined as in Eq. 3: If a current i(t) is applied to the memristor, the boundary between the two regions moves across it due to the shift of the charged dopant. Considering that there is a linear ion drift in a uniform field charge, the voltage on the memristor is defined as in Eq. 4: x is the normalized version of the variable w and it is defined by x = w/D, x ϵ [0, 1]. The x(t) = 0 state corresponds to the M(x) = R off condition and the x(t) = 1 state corresponds to the M (x) = R on condition. In this case, Eq. 4 can be rewritten as: The electrical behavior of the memristor is related to the shift between the doped and the undoped regions and these regions are limited to the interval [0, D]. The situation at the boundaries is an important problem of the linear drift  1 3 approach. The voltage applied to the memristor element at the nanoscale causes a large electric field that creates significant nonlinearity in ionic convection and is resulted with a rapid and significant reduction in the energy barrier [8]. This nonlinearity is manifested in the borders, that is, the ion drift velocity approaches zero and no external excitation can change the state when the memristor is set to ON or OFF. To overcome this problem, a window function is introduced, and this nonlinearity in the state equations is updated in Eq. 6: In Eq. 6, f(x) represents the window function and µ v is the mobility of the electron vacancies. Depending on the structural dynamics of the memristor, we have changed the physical parameter to a fixed value, namely µ v R on /D 2 ≈ k. In this case, Eq. 6 becomes in Eq. 7: Several different window functions, generally defined by f(x) in Eq. 6, have been presented in the literature. These functions include the Strukov, Joglekar, Biolek and Prodromakis window function models. The Joglekar window function was preferred in this study because it is an improved model of the Strukov windowing function and is mathematically simpler than the Prodromakis window function. In 2009, Joglekar and Wolf discussed the approximate linear drift behavior and nonlinearity at the boundaries when 0 < w < D. They checked the nonlinearity (or linearity) of their functions with a second parameter (p), called the control parameter [12]. The equation proposed by Joglekar and Wolf is expressed as follows: The graph of the change of the f(x) function for different values of the p parameter is given in Fig. 3. The Joglekar model considers simple boundary conditions such as f(0) = f(1) = 0. In the case of (p → ∞), the Joglekar model turns into a rectangular window function and the state variable function approaches the linear drift model (f(0 < x < 1) ≈ 1). Therefore, in this model, p must be an integer and it is generally chosen at one, two or three values.
In this study, the parameters of the Joglekar system are adjusted as R on = 0.1 kΩ, R off = 16 kΩ, µ v = 30 × 10 −15 m 2 / (V s), D = 9 × 10 −9 m for the numerical simulation. The control parameter (p) is set to 1. The input voltage is selected as a sine wave with a 1 V peak voltage and frequencies at ω 1 = 0.25 rad/s, ω 2 = 2.5 rad/s and ω 3 = 50 rad/s, respectively. After applying the sinusoidal signals at different frequency values to the input of this memristor created using the Joglekar window function, the obtained numerical simulation results for this configuration are given in Fig. 4.
As seen in Fig. 4, almost no change is observed at the output of the memristor element at ω 1 = 0.25 rad/s. A symmetrical hysteresis curve is observed at ω 2 = 2.5 rad/s. Finally, when the sinusoidal input signal is ω 3 = 50 rad/s, the memristor element behaves like a resistor and the phase portrait representation, which is drawn to observe the input/ output relationship of the memristor, becomes a linear output like a resistor. Accordingly, a sinusoidal input signal at ω 2 = 2.5 rad/s frequency was determined to observe the characteristic hysteresis curve of the memristor structure, designed using the Joglekar window function for its hardware implementations on FPAA and FPGA platforms.

FPAA-based implementation of a Joglekar window function-based memristor element
FPAA platforms are integrated circuits that offer stability, accuracy, and rapid prototyping techniques in the design of analog/hybrid circuits. This platform contains basic analog operations and can be electrically reprogrammed to perform different analog functions. The FPAA platform consists of input/output ports, a logic control unit, and several configurable analog blocks (CAB) that determine the memory of the element. In the designs where the memory of one FPAA board is not sufficient, these FPAA boards can be combined with each other [42]. Many of the analog operations take place in these CAB and the switched capacitor technique is used for these operations. The system implemented on an FPAA platform firstly is tested with a numerical analysis. This is because the FPAA device has a saturation level of ± 2 V. A rescaling procedure is applied to the parameters that exceed this saturation level. After rescaling, the predefined configurable analog module (CAM) blocks corresponding to the functions in the model are determined by utilizing the CAM block definition sheets. The interconnections between these CAM blocks are created on the interface program. The designed system is sent to the FPAA platform via serial port. The required measurements are recorded with an oscilloscope using the input and output units on the board. An AN231E04 platform produced by Anadigm, Inc. was used in this study. The Ana-digmDesigner2 program is used to program this board. In this program, there are several predefined configurable analog blocks in order to perform various analog functions. The CAM blocks, which are used for the FPAA-based implementation of the Joglekar window function-based memristor element, and the interconnections between these blocks are shown in Fig. 5. In this design, the following CAM blocks are used: SUMFIL-TER, TRANSFER FUNCTION, VOLTAGE, MULTIPLIER, DIVIDER, INTEGRATOR, HOLD, and OSCILLATOR. In the numerical simulation, a sinusoidal input signal with ω = 2.5 rad/s and 1 V amplitude is applied to the input of this model. It is seen that the memristor value exceeds the saturation level. After the rescaling stage, the parameters in Eq. 9 are rewritten as R on = 0.00625, R off = 1, k = 2.47, and the control parameter is set to 1 in the FPAA-based implementation of this memristor element modeled with the Joglekar window function.
According to these calculations, the function f(x) = 1 − (2x − 1) 2p was obtained using the TRANSFER FUNCTION block. The memristance function, namely M(x) = 0.00625x + (1 − x), was constructed using the SUM-FILTER block. The velocity of the boundary between the doped region and the undoped region, which is given by the dx(t)/dt = 2.47i(t)f(x) function, was built by the MULTI-PLIER block. A DIVIDER block was used to obtain the current, namely i(t) = v(t)/M(x). Finally, the v(t) sinusoidal input signal was implemented using an OSCILLATOR block. The integration process has realized by the INTEGRATOR block. The HOLD block is used to regulate the phase state between the MULTIPLIER and DIVIDER blocks. The constant parameters in Eq. 9 were implemented by the VOLT-AGE block that is a DC voltage source.
The CAM blocks used in the FPAA-based implementation of the Joglekar window function-based memristor element are presented in Fig. 5 [42] and the parameter settings of these blocks are summarized in Table 1.
The Joglekar window function-based memristor element was easily built with this interface program. Then, it was directly embedded in the AN231E04 board with a serial port with no need for extra conversion. Finally, the experimental measurements were recorded by a digital oscilloscope for this analog memristive system. Figure 6.a shows the time domain representations: The signal in the top side is the sinusoidal signal v(t) applied to the input of the Joglekar  window function-based memristor element and the current signal measured through the memristor element is given in the bottom side in Fig. 6a. In Fig. 6b, the characteristic hysteresis curve of this memristor element was obtained experimentally by the phase portrait representation, and this representation was formed by measuring the input sinusoidal signal v(t) against the output current i(t). Thus, a Joglekar window function-based memristor element was successfully implemented with the FPAA platform. The FPAA-based realization results and the numerical simulation results are compatible with each other.

FPGA-based implementation of a Joglekar window function-based memristor element
The important studies on the memristor element in digital systems are focused on two basic categories: utilizing for building of digital memories and designing memristor emulators with digital logic circuits. In the digital memory applications, the memristor acts as a switch thanks to its two-level resistor characteristic. If logic "0" and logic "1" values are assigned to a two-level resistor, the memristor becomes a memory cell that can store 1-bit and represents one of two possible outcomes of the Boolean function [43]. The studies on the effectiveness of the memristor element in different digital systems are another application field. Generally, the programmable and reconfigurable digital devices are chosen in these studies to prove the effectiveness of this element and the FPGA is a frequently used platform in these applications. A FPGA device is a programmable and reconfigurable digital electronic platform consisting of small digital blocks and interconnections between these blocks. FPGAs are digital ICs that operate in parallel and instantaneous ways contrary to systems with the standard processors. The FPGA device includes components such as programmable input/output units, programmable interconnections, clock channels and phase-locked loops (PLLs), memory units, multipliers and programmable logic blocks. FPGAs use a programming language to implement the functions that perform certain operations similar to FPAAs. A software development program is recommended by the manufacturer in order to organize the interconnections between these created units. Discrete-time definitions are used in the designs on FPGAs. If a system has a continuous time definition, this system is redefined as a discrete time system by utilizing from the various discretization methods and the accuracy of this transformation is tested with the numerical simulations. The discretized system is modeled with a suitable interface program using a hardware definition languages and it is embedded to the FPGA platform. The outputs of the FPGA are also digital, so its outputs are converted to the analog signals using a digital analog converter (DAC). The obtained experimental results can be measured from the an output of a DAC via an oscilloscope.
In this study, the Spartan-3AN platform produced by XILINX, Inc. was used. The programming of this FPGA platform is executed by the system generator for DSP (SG DSP ) tool [44]. This tool is developed by XILINX Company and allows direct conversion from MATLAB to IP core codes. The fixed-point definition, Q (32,18), was used in this design, and a Joglekar window function-based memristor element, which has a continuous time definition, was converted to a discrete time definition using the Euler discretization method as in the following equation: In Eq. 10, Δh is the discretization constant and its value is equal to 0.001. The values of the parameters in Eq. 10 were chosen the same as the numerical simulations in the previous sections.
In order to realize the i(t) = v(t)/M(x) expression, the dividing operation is not performed in the FPGA platform that is used in this study. To overcome this shortcoming, a current resource was designed for application to the input of the Joglekar window function-based memristor element, and v(t) = i(t)M(x) is realized. Thus, the basic hysteresis characteristic can be observed successfully. This current source i(t) was obtained as follows. Firstly, a van der Pol oscillator with oscillation frequency ω = 1.25 rad/s was designed, and the output voltage of this oscillator was converted to a current signal by passing it through a resistor. The obtained current source was defined using the i(t) = v source (t)/R source relation. Here, the value of the R source resistor is 20 kΩ. Then, the voltage measurement was recorded at the output of the memristor element by applying this current source to the memristor input. In fact, v source (t)-v(t) measurement was used in order to observe the characteristic memristor hysteresis curve. After applying Euler discretization and the values of the parameters which were substituted in Eq. 10, the final definition was obtained as in Eq. 11.
The designed scheme in SG DSP tool for the FPGA realization of the Joglekar window function-based memristor element in Eq. 11 is shown in Fig. 7. This design was converted to VHDL via the SG DSP tool and the final IP cores were embedded to the Spartan-3AN FPGA platform. The realtime experimental results were measured through a DAC via a digital oscilloscope. These results are given in Fig. 8. Figure 8a shows the time domain representations of the v source (t) sinusoidal signal (top side) and the v(t) voltage (bottom side) that is measured at the memristor output. Herein, the v source (t) voltage is obtained by the FPGA-based implementation of the VDP oscillator. This signal was applied to the input of the Joglekar window function-based memristor element and the measured v(t) voltage was recorded from the output of the memristor element. In Fig. 8b, the characteristic hysteresis curve is observed with the phase portrait representation, and this representation was formed by

Discussion
In the previous sections, the procedures in the FPAA-and FPGA-based implementations of the Joglekar window function-based memristor element were detailed. The results obtained from these implementations are quite similar to the numerical simulations. However, these programmable and reconfigurable analog/digital devices have intrinsic properties. For example, the memristor element, which has a continuous-time model definition, can be implemented with the analog FPAA element without any pre-conversion. This model has been discretized for its FPGA-based implementation and this discretization process causes a low amount of errors in the model. The design procedure of a continuous system on the FPGA platform is more complex than on the FPAA platform. Additionally, DAC or ADC must be used to measure the results of the designed system in the FPGA-based implementation process. On the other hand, the hardware capacities of each platform have been limited in the electronic designs. In order to compensate for limited memory problem, while FPAA platforms are able to be combined with each other, several different options of the FPGA platform are manufactured for various application fields. As mentioned in the introduction, even though a direct comparison is impossible between these platforms, it is clear that the FPGA platforms have large memory capacity in the current technology. The hardware usage value of the FPAA-and FPGA-based implementations of the Joglekar window function-based memristor element are summarized in Tables 2 and 3, respectively.
The analog FPAA and digital FPGA platforms have intrinsic software tools, and these tools offer opportunities for developing different projects. Thanks to these tools, the circuit edition process is maintained properly and robustly. The power consumption of the FPAA-and the FPGA-based implementation of the Joglekar window function-based memristor element was elicited using the development tools AnadigmDesigner2 and ISE Design Suite for FPAA and FPGA, respectively. While the power consumption is recorded as in Table 3 for the FPGA-based design, the power consumption is 164 ± 49 mW for the FPAA-based design. If the maximum operating frequency of these two platforms is considered, the FPAA has limited performance. While the signal processing operation can be implemented up to 2 MHz in the FPAA platform, the FPGA platform is able to operate at higher frequencies depending on the board used (Table 4).

Conclusions
Programmable and reconfigurable analog/digital platforms have been offered as an alternative perspective for realizing the nonlinear dynamical systems. In this study, FPAA-and FPGA-based memristor emulator designs were realized together in order to contribute to the memristorbased analog and digital applications that require real-time  signals. In the initial stage of these realizations, while the Joglekar window function-based memristor model was rescaled because of the saturation level of the FPAA platform, this model was discretized because of the digital nature of the FPGA platform. In fact, this model was subjected to a preliminary preparation process in both realizations. After the confirmation stage with numerical analysis results, the Joglekar window function-based memristor model was constructed using the software development tools of these programmable analog/digital platforms separately, and the constructed structures were embedded in these platforms. While FPAA-based analog realization results can be measured directly without requiring additional equipment, FPGA-based realization results were obtained through a DAC. Therefore, the analog and the digital memristor emulators were successfully realized with two programmable platforms and just one experimental setup as seen in Fig. 9.