Close
About
FAQ
Home
Collections
Login
USC Login
Register
0
Selected
Invert selection
Deselect all
Deselect all
Click here to refresh results
Click here to refresh results
USC
/
Digital Library
/
University of Southern California Dissertations and Theses
/
Memristor device engineering and memristor-based analog computers for mobile robotics
(USC Thesis Other)
Memristor device engineering and memristor-based analog computers for mobile robotics
PDF
Download
Share
Open document
Flip pages
Contact Us
Contact Us
Copy asset link
Request this asset
Transcript (if available)
Content
Memristor Device Engineering
and
Memristor-Based Analog Computers for Mobile Robotics
by
Buyun Chen
A Dissertation Presented to the
FACULTY OF THE USC GRADUATE SCHOOL
UNIVERSITY OF SOUTHERN CALIFORNIA
In Partial Fulfillment of
the Requirements for the Degree
DOCTOR OF PHILOSOPHY
(ELECTRICAL ENGINEERING)
August 2022
Copyright 2022 Buyun Chen
ii
Dedication
To my mom, dad and Wei Sun for your love and support.
iii
Acknowledgements
First and foremost, I would like to thank my PhD advisor, Prof. Wei Wu for his mentorship and
support during my doctoral study. It is a great honor for me to be one of his PhD students. Not
only he guides and supports me during my entire doctoral study, his passion, devotion and curiosity
for science and technology also influence me on both my research work and life philosophy. He
showed me not only to be a good scientist and engineer, but also a great person who is always
willing to learn more and inspire others. The knowledge, philosophy, and passion for both research
and life I learnt from him is the lifelong treasure for me. Without his guidance and support, this
work would have never been accomplished.
I would also like to express my gratitude to my dissertation and PhD qualifying exam
committee members, Prof. Joshua Yang, Prof. Aiichiro Nakano, Prof. Stephan Haas, and Prof.
Rehan Kapadia for their kind service and support.
I would like to thank all my collaborators. My sincere appreciation to Prof. Mike Chen, Dr.
Shiyu Su, Hsiang Chun Cheng, Qiaochu Zhang, and Mayank Palaria for their collaboration and
contribution on building the memristor compatible CMOS chip for the microrobot, Prof. Quan
Nguyen and Ryan Bena for their collaboration and contribution on the theoretical discussion and
robotic simulation, Prof. Joshua Yang and Ye Zhuo for the discussion and collaboration on the
memristor-based optimization solver project, Prof. Han Wang, Dr. Xiaodong Yan, and Hefei Liu
for the help and collaboration on memristor-testing and characterization, Prof. Stephen B. Cronin
for the preparation of Al2O3 films, Prof. Aiichiro Nakano, Prof. Paulo Branicio, Prof. Rajiv Kalia,
and Prof. Priya Vashishta for the help on molecular dynamics simulations and corresponding
analysis, Prof. Fanxin Liu for taking the high-quality TEM and EDS images.
iv
I would also like to thank all our research group members. I really enjoyed working with my
lab mates in such friendly, encouraging, and helpful environments. I would like to thank Dr. Hao
Yang for his collaboration and discussions on memristor-related projects, Sushmit Hossain, Zerui
Liu, Yunxiang Wang, Deming Meng and Pan Hu for their collaboration and hard work on
memristor optimization solver project, Dr. Yuanrui Li, Dr. Boxiang Song, Dr. Yuhan Yao, Dr.
Yifei Wang, Dr. He Liu, Tse-Hsien Ou for their useful suggestions and discussions for the research
work. I am thankful for all the friendship and supports from them.
I also want to thank my friends and colleagues from other research groups and domains for
their suggestions and discussions. I would like to thank Emily Reed for her suggestions and
discussions for the paper manuscript, Dr. Hai Liu, Indu Aravind, Ruoxi Li for their help on the
experimental set up, Dongsheng Ding for his discussions on the theory of optimization, Yuewei
Na for his useful discussions of the neural network and algorithms.
I am so lucky to have fabulous friends to help and support me during these years. I would like
to thank Runhe Zhu, Emily Reed, Sarah Cooney, Shushan Arakelyan, Dongsheng Ding, Zalan
Fabian, Yinghua Hu, Meiying Li, Yijun Jiang, Yi Liu. Thank you all for being on my side all the
time and making my life eventful and full of great memories.
Last, and most importantly, I would like to thank my family. I cannot achieve this goal without
their love and support. I want to thank my mother for her love and sacrifice, and my father for his
encouragement and support. I also want to thank my girlfriend, Wei Sun. She and her love and
company, encouragement, and support help me through the most difficult and important period of
my doctoral study. I also want to show express appreciation to my cats, Coconut and Pumpkin, for
their love and company.
v
Table of Contents
Dedication ....................................................................................................................................... ii
Acknowledgements ........................................................................................................................ iii
List of Tables ................................................................................................................................ vii
List of Figures .............................................................................................................................. viii
Abstract ......................................................................................................................................... xii
Topic 1: Memristor Device Characteristics Engineering ................................................................ 1
Abstract ....................................................................................................................................... 2
Chapter 1 Introduction to the Memristor..................................................................................... 3
Chapter 2 Device Fabrication ..................................................................................................... 5
2.1 Device Fabrication............................................................................................................. 5
2.2 Controlling the Crystallinity of Switching Layer Material ............................................... 7
Chapter 3 Device Characterization .......................................................................................... 11
Chapter 4 Working Mechanism Study ..................................................................................... 17
Conclusion ................................................................................................................................. 21
Topic 2: Hybrid Analog-digital Computing Platform for Mobile Robotics ................................. 22
Abstract ..................................................................................................................................... 23
Chapter 5 Introduction ............................................................................................................. 24
5.1 Introduction to the Control of Modern Mobile Robotics ................................................ 24
5.2 Hybrid Computing Using Memristors ............................................................................. 25
Chapter 6 Analog-digital Hybrid Platform Enabled by Memristor.......................................... 27
6.1 Analog-digital Hybrid Computing Architecture ............................................................. 27
6.2 Hardware Acceleration of Kalman Filter ........................................................................ 34
6.3 Hardware Acceleration of Adaptive PD Controller ........................................................ 40
6.4 Comparison Between Different Computing Platforms ................................................... 47
Conclusion ................................................................................................................................. 53
vi
Topic 3: Memristor-Based Linear and Quadratic Programs Solver ............................................. 55
Abstract ..................................................................................................................................... 56
Chapter 7 Introduction ............................................................................................................. 58
7.1 Background...................................................................................................................... 58
7.2 Objectives ........................................................................................................................ 60
Chapter 8 The Study of LP/QP Optimization Circuit .............................................................. 64
8.1 Theory of LP/QP Optimization Circuit ........................................................................... 64
8.2 The LP/QP Optimization Circuit Simulation .................................................................. 69
8.3 The Implementation of a Practical Optimization Circuit ................................................ 73
8.3.1 Implementation of the Optimization Circuit with Practical Components ................ 73
8.3.2 Implementation of the Memristor-Based Optimization Circuit ................................ 78
Chapter 9 Application of Memristor-Based LP/QP Solver on Controlling MAV ................... 81
9.1 Introduction of the Control of MAV ............................................................................... 81
9.2 Robotics computing system design ................................................................................. 85
9.3 Software Hardware Codesign .......................................................................................... 86
9.3.1 Control Problem Formulation ................................................................................... 87
9.3.2 Analog Optimization Solver Design ......................................................................... 89
9.3.3 Chip Architecture ...................................................................................................... 96
9.3.4 Device Design and Characterization ......................................................................... 98
Conclusion ............................................................................................................................... 104
Chapter 10 Future Work ......................................................................................................... 106
10.1 Memristor High Speed Tuning Set Up ........................................................................ 106
10.2 Other Applications of Memristor-Based Analog Circuit ............................................ 108
10.2.1 Optimization Circuit for the Cognitive Domain Ontology ................................... 108
10.2.2 Analog Circuit for Boolean Satisfiability ............................................................. 111
Conclusion ............................................................................................................................... 116
References ................................................................................................................................... 117
vii
List of Tables
Table 2.1: Refractive index, crystallinity, and average grain size of Al2O3 at different deposition
temperatures. ................................................................................................................................... 8
Table 5.1: The comparison of electronically reconfigurable analog circuits using different
devices........................................................................................................................................... 25
Table 6.1: The comparison of speed and power efficiency on different platforms. ..................... 48
Table 8. 1: Simulation shows that LP Circuit has the same result with MATLAB simulation .... 71
Table 8.2: Simulation shows that QP Circuit has the same result with MATLAB simulation ..... 72
Table 8.3: Simulation result and experiment result of the analog optimization circuit. ............... 76
Table 8.4: Simulation result and experiment result of the analog optimization circuit with
memristors..................................................................................................................................... 80
viii
List of Figures
Figure 2.1: Pt/Al2O3/Ta/Pt cross point memristor. ......................................................................... 6
Figure 2.2: Controlling the crystallinity of Al2O3 by changing ALD temperature. ...................... 10
Figure 3.1: Electrical characteristics of the Pt/Al2O3/Ta/Pt cross point memristor. .................... 14
Figure 3.2: Modifying Pt/Al2O3/Ta/Pt memristor characteristics through controlling the
switching layer material (Al2O3) crystallinity. .............................................................................. 15
Figure 4.1: Working mechanism study. ....................................................................................... 18
Figure 6.1: The memristor-based hybrid analog-digital computing platform. ............................. 28
Figure 6.2: Schematic and electrical characteristics of the Pt/Al2O3/Ta/Pt memristor. ................ 29
Figure 6.3: Waveforms of potentiating pulses (a and c) and depressing pulses (b and d). ........... 31
Figure 6.4: The memristor can be set to the target states precisely by controlling the compliance
currents. ......................................................................................................................................... 32
Figure 6.5: (a and b) Two more memristors with multilevel conductance states performance. ... 34
Figure 6.6: Hardware acceleration of continuous-time analog Kalman filter. .............................. 35
Figure 6.7: (a and b) Circuit schematic diagram with the device’s parameters of the hardware
implementation of a continuous-time analog Kalman filter. ........................................................ 37
Figure 6.8: The robotic arm for testing the continuous time analog Kalman filter. ..................... 38
Figure 6.9: a) Estimated angle signal with the same Kalman gain using different sensors. b)
Estimated angle signal from the same analog Kalman filter under different temperatures. ......... 39
ix
Figure 6.10: Hardware acceleration of the analog PD controller. ................................................. 41
Figure 6.11: (a and b) Circuit schematic diagram with the device’s parameters of the hardware
implementation of a PD controller. ............................................................................................... 43
Figure 6.12: Experimental data of impulse responses of the mobile inverted pendulum during
the optimization process. .............................................................................................................. 45
Figure 6.13: The self-learning process on the hybrid computing platform and the optimal control
performance. ................................................................................................................................. 46
Figure 6.14: Circuit schematic diagram of the hybrid computing platform for the inverted
pendulum....................................................................................................................................... 49
Figure 6.15: Circuit diagram of the digital computing platform. ................................................. 52
Figure 7.1: The circuit architecture of the memristor-based analog optimization solver. ............ 62
Figure 7.2: The control architecture of a general plant model using analog optimization solver. 63
Figure 8.1: Converting constrained LP problem to LP analog optimization circuit. .................... 65
Figure 8.2: Converting constrained QP problem to QP analog optimization circuit. ................... 65
Figure 8.3: Schematic diagram for memristor-based analog LP/QP optimization circuit. ........... 67
Figure 8.4: the circuit simulation solving a LP problem using SPICE software. ......................... 71
Figure 8.5: the circuit simulation solving a QP problem using SPICE software. ......................... 72
Figure 8.6: Schematic design of the optimization circuit using off the shelf components. .......... 74
Figure 8.7: A bread board version of the analog optimization circuit .......................................... 75
x
Figure 8.8: Full schematics of the design of the PCB version of the analog optimization solver.
....................................................................................................................................................... 77
Figure 8.9: Experimental set up of the PCB version of the analog optimization solver. .............. 78
Figure 8.10: SPICE simulation of the analog optimization circuit solver. ................................... 79
Figure 8.11: Experimental set up of the PCB version of the analog optimization circuit with
memristors..................................................................................................................................... 80
Figure 9.1: Hybrid computing architecture for the MA V . ............................................................. 82
Figure 9.2: Robotic computing system design diagram................................................................ 86
Figure 9.3: Simulink model of the analog optimization circuit solver. ........................................ 93
Figure 9.4: (a and b) Comparison between the results from analog optimization solver and
digital optimization solver............................................................................................................. 94
Figure 9.5: V oltage applied on memristors during the control simulation period ........................ 95
Figure 9.6: Resistance values of memristors during the control simulation period ...................... 95
Figure 9.7: Integrating everything on one chip. ............................................................................ 96
Figure 9.8: Memristor-based analog optimization chip architecture. ........................................... 97
Figure 9.9: Multistate performance of memristor under current pulses. .................................... 100
Figure 9.10: (a and b) Conductance of memristor changes with compliance current pulses. .... 101
Figure 9.11: Memristor feedback tuning using current pulses ................................................... 102
Figure 9.12: Auto forming process of memristors ...................................................................... 103
xi
Figure 10.1: Architecture of tuning circuitry for memristors ..................................................... 107
Figure 10.2: Ball CDO with sharing among the possible solutions. ........................................... 108
Figure 10.3: The CDO layout in Fig.1 is configured to a weighted network with eight nodes. . 109
Figure 10.4: A simple N = 4 problem is simulated in SPICE ..................................................... 110
Figure 10.5: Analog circuit structure for solving SAT problems ................................................ 113
Figure 10.6: SPICE simulation of analog circuit for solving 2-SAT problems. ......................... 115
xii
Abstract
This dissertation focuses on the research of memristors based analog computing technology during
my Ph.D. study, from the bottom level, such as device performance engineering, to the top level,
including memristor-based Kalman filter circuit and linear controller circuit, memristor-based
analog optimization solver for robotics applications.
The first topic covers the method of device engineering for memristors. In this part of the
dissertation, we propose and demonstrate a new method of controlling the electrical performance
of memristor by tuning the growing temperature of the switching layer materials of the device.
Using different crystalline Al2O3 as switching layer of the device, the characteristics of
corresponding memristors can be modified precisely.
The second topic introduces a novel analog computing circuit using memristors. A memristor
-based hybrid computing platform was designed to boost the performance of mobile robotics. Both
Kalman filter and linear controller were implemented through memristor-based analog circuit. In
addition, a simple inverted pendulum robot was built to verify the feasibility of this computing
platform. The study shows that the performance of this prototype is much better than traditional
digital platform, and thus the control performance of the robot is further boosted.
In the third topic, we proposed and demonstrated a memristors based general analog
optimization solver circuit. A simple proof of concept of such circuit was built. In addition, we
investigated the feasibility using this analog computing chip on a micro robot. The study shows
that the method is feasible and will benefit the optimal control technique significantly from the
computing hardware perspective. This study paves the way of both the direction of device
optimization and the analog computing hardware for micro mobile robotics.
1
Topic 1:
Memristor Device Characteristics Engineering
2
Abstract
Memristor is a two terminal nonlinear device first proposed by Leon Chua in 1971(1). And the
device is first invented by HP labs in 2008 later(2). A memristor is essentially a two terminal
electrical component relating to electric charge and magnetic flux linkage. To consider the
characteristic of the memristor in a practical manner, the device’s resistance or conductance can
change by applying different voltages. Thus, the memristor is a nonlinear device. Simply speaking,
memristor is more like a potentiometer than a simple resistor. Though the device can be simply
described above, memristors can bring great benefits to many emerging applications that may play
important roles in the future generations of electronic systems, such as bio-inspired neuromorphic
computing, high density non-volatile memory, and field programmable gate arrays (FPGA).
Therefore, the memristor characteristics (such as operation voltage, On/Off ratio, and the number
of resistance states) must be engineered carefully for different applications. Here, we demonstrate
a new method to modify the memristor characteristics specifically by controlling the crystallinity
of switching layer material. Through setting the atomic layer deposition (ALD) temperature, the
crystallinity of deposited Al2O3 can be controlled. Using different crystalline Al2O3 as the
memristor switching layer, the characteristics of corresponding Pt/Al2O3/Ta/Pt cross point
memristors can be modified precisely. The high IV linearity, high On/Off ratio (around 10
8
), low
pulse operation voltage (2.5 V), and multilevel resistance states (141 states) of the Pt/Al2O3/Ta/Pt
cross point memristor are demonstrated. More importantly, the mechanism behind this
phenomenon is studied. This work deepens our understanding of the working mechanism of
memristors and paves the way for applying memristors for a broad spectrum of applications.
3
Chapter 1
Introduction to the Memristor
As its name indicates, the memristor is a combination of resistor and memory. It has characteristic
from both devices. A Memristor is a two terminal electrical component with tunable resistance. In
other word, any electrically configurable resistor can be essentially considered as a memristor.
And in this case, a memristor with a linear resistance has no difference with a common resistor.
The difference between a memristor and a resistor is that the resistance of the memristor is
nonlinear or tunable. Therefore, the memristor device can push the circuit from linear domain to
nonlinear domain and therefore creates more opportunity for electrical engineers to manipulate. A
memristor also behaves like a memory cell. Information can be stored as the resistance value of
the device. And the memristor can be programmed to different resistance, thus the information can
be changed or edited. Also, the memristor is non-volatile, which means the information can be
stored for a relatively long period without changing. Therefore, the memristor also behaves like a
memory device. The above characteristics makes memristor a perfect fit for a broad range of
applications in both the industry and academic.
Recently, the development of memristor(2) has attracted great interest among the
semiconductor industry. Significant progresses have been made in memristive device
development, including its integration with Si CMOS circuit(3), switching cycles up to 10
12(4)
,
switching speed down to 100 ps(5) and retention time up to a few years(6). So far, most efforts are
targeting at bio-inspired neuromorphic computing application(7). There are also many emerging
applications that can greatly benefit from memristors. For example, density of memristor can go
beyond 100G bits/cm
2
, which is a couple times higher than currently progressive flash memory
technologies(8, 9). Also, the switching power consumption for memristor can be 20 times smaller
4
than flash. Moreover, by using memristors as the reconfiguration bits in a FPGA, the FPGA is
expected to achieve a 5.18x area saving, a 2.28x speedup and a 1.63x power saving(10).
However, there are still many critical challenges to be resolved before applying memristors
for those applications. Different applications have different requirements for the characteristics of
memristors, such as operation voltage, On/Off ratio, the number of resistance states, and so on(6,
7, 11-14). Therefore, significant effort is still needed to tailor the existing memristor technologies
for specific applications. The traditional method to engineer memristor characteristics is by
selecting appropriate material stack and films thicknesses for both the switching and contact
layers(15), which cannot satisfy all needed requirements.
In this article, we report a new method to modify the memristor characteristics specifically by
controlling the crystallinity of switching layer material. Al2O3 was used in our Pt/Al2O3/Ta/Pt cross
point memristor as the switching layer material. By controlling the ALD temperature, the
crystallinity of Al2O3 changed from amorphous to polycrystalline, which affected the memristor
performance directly. Through choosing appropriate Al2O3 deposition temperature, the
Pt/Al2O3/Ta/Pt cross point memristor can have great characteristics, such as good I-V linearity,
high On/Off ratio (around 10
8
), low pulse operation voltage (2.5 V), and multilevel resistance
states (141 states). The mechanism of modifying memristor characteristics by controlling
switching layer crystallinity was also studied.
5
Chapter 2
Device Fabrication
2.1 Device Fabrication
In this work, memristors were fabricated in the lab of USC. To clarify, any device satisfies the
description in the previous section can be considered as a memristor device. Here in this thesis, I
only introduce the design, engineering, and associated applications of one kind of the memristor
device. Here, the Pt/Al2O3/Ta/Pt cross point memristor was used in this research, since the
electrical performance of this device satisfy the application that I visualized in the very beginning
of my doctoral study. The fabrication process of the Pt/Al2O3/Ta/Pt cross point memristor is shown
in Figure 2.1a. Si wafer that has 150 nm thermally grown SiO2 on top was used as the substrate.
First, the bottom electrodes were patterned by ultraviolet photolithography. Then, 2 nm Ti
(adhesion layer) and 20 nm Pt (bottom electrode metal) were deposited by the electron beam
evaporator, followed by a lift-off process. Next, an 8 nm Al2O3 blanket layer was deposited by
ALD as the memristor switching layer. The reason that ALD was chosen to deposit switching layer
material is that ALD temperature can be set precisely (80 °C, 120 °C, 160 °C, or 200 °C) to control
the crystallinity of deposited Al2O3(16, 17). The details will be introduced in the next section. Finally,
8 nm thick Ta and 20 nm thick Pt top electrode were defined by a second photolithography,
evaporation, and lift-off process to get the Pt/Al2O3/Ta/Pt cross point memristor. Figure 2.1b shows
the schematic of the Pt/Al2O3/Ta/Pt cross point memristor, which has a four layers structure. The
optical microscope image of the fabricated memristor is shown in Figure 2.1c.
6
Figure 2.1: Pt/Al2O3/Ta/Pt cross point memristor. a) The fabrication process. b) Schematic of the
Pt/Al2O3/Ta/Pt cross point memristor. c) Optical microscope image of the fabricated
Pt/Al2O3/Ta/Pt cross point memristor.
7
2.2 Controlling the Crystallinity of Switching Layer Material
To control the electrical behavior of the memristor, the material system needs to be carefully
engineered. From a fundamental physics point of view, the electrical characteristic of the device
is directly related to the conductive channels formed in the switching layer material. Therefore,
the device performance will change if the crystallinity of the switching layer material changes.
ALD is a chemical vapor deposition technique based on successive, separated, and self-
terminating gas-solid reactions of typically two gaseous reactants(16). Like other thin film
deposition techniques, the ALD temperature affects the crystallinity of deposited material(16, 17).
The deposited material undergoes transition from amorphous to crystalline at characteristic
temperature. Al2O3 can be deposited by ALD using water (H2O) and trimethylaluminum (TMA)
as precursors. To compare the crystallinity of Al2O3 films at different deposition temperatures, 200
cycles Al2O3 (around 16 nm) were deposited on Si substrate at four different temperatures (80 °C,
120 °C, 160 °C, and 200 °C), separately.
The refractive index of these four Al2O3 films were measured by ellipsometer. With the
increase of deposition temperature, the Al2O3 refractive index is increased, as shown in Table 2.1.
The data indicates that the Al2O3 deposited at higher temperature is denser. The corresponding X-
ray diffraction (XRD) spectra of Al2O3 films at these four different deposition temperatures are
shown in Figure 2.2a. The Al2O3 films deposited at 80 °C and 120 °C don’t have characteristic
peaks in the XRD spectra, while the Al2O3 films deposited at 160 °C and 200 °C have clear
characteristic peaks in the XRD spectra. These indicate that the Al2O3 films deposited at 80 °C and
120 °C are amorphous, while the Al2O3 films deposited at 160 °C and 200 °C are polycrystalline.
According to the Scherrer equation 𝜏 =
𝐾 𝜆 𝛽𝑐𝑜𝑠𝜃 (where 𝜏 is the average grain size, 𝐾 is a
dimensionless shape factor, 𝜆 is the X-ray wavelength, 𝛽 is the line broadening at half the
8
maximum intensity, and 𝜃 is the Bragg angle), the estimated average grain size of polycrystalline
Al2O3 can be calculated, as shown in Table 2.1. The average grain size of polycrystalline Al2O3 is
also increased with the increase of deposition temperature (Table 2.1), which is consistent with the
change of refractive index.
Figure 2.2b, 2.2c, 2.2d and 2e show the TEM images of Al2O3 films deposited at 80 °C and
200 °C, and the corresponding FFT spectra, respectively. It is noticeable that the Al 2O3 film
deposited at 80 °C is amorphous, while the Al2O3 film deposited at 200 °C is polycrystalline. These
are the direct evidence to demonstrate that the deposited Al2O3 film has transition from amorphous
to polycrystalline with the increase of deposition temperature. Above all, the crystallinity of
deposited Al2O3 can be controlled through the ALD temperature.
Al2O3 Deposition
Temperature
Refractive Index (𝜆 =
532𝑛𝑚 )
Crystallinity
Average Grain
Size
80℃ 1.630 Amorphous N/A
120℃ 1.647 Amorphous N/A
160℃ 1.652 Polycrystalline ~ 150.5nm
200℃ 1.656 Polycrystalline ~ 207.0nm
Table 2.1: Refractive index, crystallinity, and average grain size of Al2O3 at different deposition
temperatures.
9
10
Figure 2.2: Controlling the crystallinity of Al2O3 by changing ALD temperature. a) XRD spectra
of Al2O3 films at different deposition temperature (80 °C, 120 °C, 160 °C, and 200 °C). b) TEM
image of 80 ℃ deposited Al2O3 film, which is amorphous. The SiO2 layer is the native oxide layer
on top of the Si substrate. c) TEM photo of 200 ℃ deposited Al2O3 film, which is polycrystalline.
The SiO2 layer is the native oxide layer on top of the Si substrate. d) Corresponding FFT spectrum
of TEM photo in Figure 2.2b (Frequency range DC ~ 1/0.020 [1/nm]). e) Corresponding FFT
spectrum of TEM photo in Figure 2.2c (Frequency range DC ~ 1/0.020 [1/nm]).
11
Chapter 3
Device Characterization
Figure 3.1a shows the typical bipolar resistive switching I–V curves of the 5 by 5 μm
2
Pt/Al2O3/Ta/Pt cross point memristors, which use different temperatures (80 °C, 120 °C, 160 °C,
and 200 °C) deposited Al2O3 as the switching layer. The memristors can be switched from the Off
state (high resistance state) to the On state (low resistance state) after applying positive voltages
(Vset)(2). By sweeping negative bias (Vreset), the memristors can be switched from the On state to
the Off state, which is defined as the reset process. As shown in Figure 3.1a, the Set and Reset
voltage of Pt/Al2O3/Ta/Pt memristor are increased with the increase of Al2O3 deposition
temperature, which will be discussed in the next section. Figure 3.1b shows the linear plot of
resistive switching I–V curves of the Pt/Al2O3/Ta/Pt memristors using different temperatures
deposited Al2O3, which demonstrates our memristors have good I-V linearity(7). Using the Pt/80
°C deposited Al2O3/Ta/Pt cross point memristor as the example, the retention characteristic of our
memristors was investigated (Figure 3.1c and 3.1d). It indicates that the memristors are highly
stable in each state without degradation over 90h at elevated temperature (85 °C). After 90h, the
memristors in On state started to change to Off state.
The pulse switching measurements of the Pt/Al2O3/Ta/Pt memristors that use Al2O3 at
different deposition temperatures (80 °C, 120 °C, 160 °C, and 200 °C) are depicted in Figure 3.1e,
3.1f, 3.1g and 3.1h, respectively. To compare the difference of Pt/Al2O3/Ta/Pt memristors using
different temperature deposited Al2O3, 1000 switching cycles were done for Pt/80 °C deposited
Al2O3/Ta/Pt memristor, Pt/120 °C deposited Al2O3/Ta/Pt memristor, and Pt/160 °C deposited
Al2O3/Ta/Pt. To be noticed, the used pulse voltage was not very high (±2.5 V for 80 °C deposited
Al2O3 and 120 °C deposited Al2O3 memristor, +3.4 V and -3.0 V for 120 °C deposited Al2O3
12
memristor, and ±6.0 V for 200 °C deposited Al2O3 memristor). This is because that the memristors
were not switched off totally in pulse switching measurements. It can be demonstrated by
observing the On/Off ratio (< 10
4
) in the pulse switching measurements. The On/Off ratio in the
pulse switching measurements is much smaller than the On/Off ratio in the I-V curves (Figure
3.1a). Besides, for Pt/200 °C deposited Al2O3/Ta/Pt memristor, though ±6 V pulse were used, the
memristor was still hard to be switched. As a result, only several switching cycles (< 10) results is
shown in Figure 3.1h. It is noteworthy that the pulse switching results of different memristors are
very different, like resistance distribution (variation). The details and the reason behind the
difference of pulse switching results will also be introduced in the next section.
The number of resistance states is critical to memristors, which is an important feature for bio-
inspired neuromorphic computing(7, 13, 14). The greater number of resistance state of the
memristor means the more information the device can store. Therefore, one of the device
engineering directions is to keep maximizing the number of resistance state of the device. Even it
sounds simple to bring up this requirement, improving this characteristic of the device from a
physical world is not intuitive. Figure 3.2a and 3.2b show the I–V curves for Pt/80 °C deposited
Al2O3/Ta/Pt memristor and Pt/200 °C deposited Al2O3/Ta/Pt memristor with different resistance
states, respectively. The Pt/80 °C deposited Al2O3/Ta/Pt memristor can provide conductance
ranging from 70 to 350 μS, and the Pt/200 °C deposited Al2O3/Ta/Pt memristor can provide
conductance ranging from 70 to 2900 μS.
Through controlling the compliance currents, the memristor can be set to the target state
precisely, as shown in Figure 3.2c. The standard deviation of setting the memristor to an exact
resistance state is 9 μS. As a result, the Pt/80 °C deposited Al2O3/Ta/Pt memristor can provide 31
states (around 2
5
). The Pt/200 °C deposited Al2O3/Ta/Pt memristor can provide 141 states (more
13
than 2
8
), which is much better than the Pt/80 °C deposited Al2O3/Ta/Pt memristor. The reason
behind this will be explained in detail in the next section.
14
Figure 3.1: Electrical characteristics of the Pt/Al2O3/Ta/Pt cross point memristor. a) I-V curves
(plot in log scale) from 5 by 5 μm
2
Pt/Al2O3/Ta/Pt cross point memristors, which use different
temperatures (80 °C, 120 °C, 160 °C, and 200 °C) deposited Al2O3 as the switching layer. The
memristors can be set with a positive voltage sweep and then reset with a negative voltage sweep.
In the positive voltage sweep, the applied compliance currents for 80 °C, 120 °C, 160 °C, and
200 °C deposited Al2O3 memristors were 3 mA, 3 mA, 5 mA, and 5 mA, respectively. b) I-V
curves (plot in linear scale, same data as Figure 3.1a) from 5 by 5 μm
2
Pt/Al2O3/Ta/Pt cross point
memristors. The memristors have good I-V linearity. c) Retention test of Pt/80 °C deposited
Al2O3/Ta/Pt cross point memristors at 85 °C. 20 memristors were used to do the retention test.
Before the test, 10 memristors were set to On state, and other 10 memristors were set to Off states.
d) Number of the unchanged (not change from On state to Off state) Pt/80 °C deposited
Al2O3/Ta/Pt memristor in the 85 °C retention test with respect to the test time. e) The Pt/80 °C
deposited Al2O3/Ta/Pt memristor can be repeatedly switched between On and Off states with 3 μs
pulses (Positive pulse voltage: 2.5 V; Negative pulse voltage: −2.5 V). Here shows the 1000
switching cycles result. f) 1000 switching cycles result of the Pt/120 °C deposited Al2O3/Ta/Pt
memristor with 3 μs pulses (Positive pulse voltage: 2.5 V; Negative pulse voltage: −2.5 V). g)
1000 switching cycles result of the Pt/160 °C deposited Al2O3/Ta/Pt memristor with 3 μs pulses
(Positive pulse voltage: 3.4 V; Negative pulse voltage: −3.0 V). h) Pulse switching result of the
Pt/200 °C deposited Al2O3/Ta/Pt memristor with 3 μs pulses (Positive pulse voltage: 6.0 V;
Negative pulse voltage: −6.0 V). This device is hard to switch with pulses (switching cycles < 10).
15
Figure 3.2: Modifying Pt/Al2O3/Ta/Pt memristor characteristics through controlling the switching
layer material (Al2O3) crystallinity. a) Our memristor can be set to different resistance states by
using different the compliance currents. Here shows the I–V curves for Pt/80 °C deposited
Al2O3/Ta/Pt memristor with different resistances, which has 31 states (around 2
5
). b) I–V curves
16
for Pt/200 °C deposited Al2O3/Ta/Pt memristor with different resistances, which has 141 states
(more than 2
8
). c) Through controlling the compliance currents, our memristor can be set to the
target state precisely. Here show the ten set conductance states (200μS, 400μS, 600μS, 800μS,
1000μS, 1200μS, 14200μS, 1600μS, 1800μS, and 2000μS) of Pt/200 °C deposited Al2O3/Ta/Pt
memristor. d) The change of Set/Reset voltage of Pt/Al2O3/Ta/Pt memristor with respect to the
Al2O3 deposition temperature. e) The change of the On/Off ratio of Pt/Al2O3/Ta/Pt memristor with
respect to the Al2O3 deposition temperature. The On/Off ratios are calculated at read voltage 0.3
V according to the Figure 3.2a, 3.2f) Resistance distribution (2% to 98%) of the Pt/Al2O3/Ta/Pt
memristors that have different Al2O3 deposition temperatures at both On and Off states in the pulse
switching measurements (Figure 3.2e. 3.2f and 3.2g).
17
Chapter 4
Working Mechanism Study
As mentioned above, the Pt/200 °C deposited Al2O3/Ta/Pt memristor can provide much more
conductance states than the Pt/80 °C deposited Al2O3/Ta/Pt memristor. Besides, as shown in Figure
3.2d and 3.2e, the Set/Reset voltage and On/Off ratio of Pt/Al2O3/Ta/Pt memristors are increased
with the increase of Al2O3 deposition temperature. Moreover, Figure 3.2f shows the resistance
distribution of the Pt/Al2O3/Ta/Pt memristors that have different Al2O3 deposition temperatures at
both On and Off states in the pulse switching measurements. It is noteworthy that the variation and
On/Off ratio are different for different memristors. For example, the Pt/120 °C deposited
Al2O3/Ta/Pt memristor has the lowest variation and biggest On/Off ratio. All of these demonstrate
the Al2O3 deposition temperature affects the characteristics of Pt/Al2O3/Ta/Pt memristor can be
engineering by changing. In other word, the characteristics of Pt/Al2O3/Ta/Pt memristor can be
modified specifically by controlling the crystallinity of switching layer material (Al2O3).
Different crystalline Al2O3 layer has different grain size. In order to understand the effect of
switching layer material (Al2O3) crystallinity on the memristor behavior at the atomic level, multi-
million-atom molecular dynamics simulations of the active Al2O3 layer with different grain sizes
were performed. As shown in Figure 4.1a, realistic microstructures of Al2O3 layers at grain sizes
of 2 nm, 4 nm and 50 nm were constructed using a Voronoi-annealing scheme (see Molecular
Dynamics Simulations in the Experimental Section). Figure 4.1b shows the constructed
amorphous Al2O3 layer using a melt-quench scheme. The amorphous and 50 nm grain-sized Al2O3
layers are chosen to represent the Al2O3 layers deposited at 80 °C and 200 °C in the experiments,
respectively. Al2O3 layers at smaller grain sizes (2 nm and 4 nm) represent Al2O3 layers deposited
at intermediate temperatures (120 °C and 160 °C).
18
Figure 4.1: Working mechanism study. a) Microstructures of polycrystalline Al2O3 samples with
grain sizes of 2 nm, 4 nm and 50 nm used in MD simulations. b) Atomic structure of amorphous
Al2O3 system generated by a melt-quench scheme. c) Connected clusters of low-density voxels in
polycrystalline and amorphous Al2O3 structures identified using a depth-first-search method.
Connected clusters in each structure are denoted by different colors for clarity. d) Average cross-
sectional area (in the x-y plane) for each cluster of low-density voxels increases with increasing
19
grain size. e) Polycrystalline Al2O3 structures with larger grain sizes contain low-density clusters
of the longest length (along the z direction). f) Amorphous and small grained structures have a
significantly larger number density of connected voxel clusters than larger grain-sized structures.
The characteristics of Pt/Al2O3/Ta/Pt memristors are determined by the energetics of
formation and dissolution of conductive filaments. Besides, the grain boundaries and regions of
low local atomic density in the Al2O3 layer constituting potential pathways for the formation of
conductive filaments in the Pt/Al2O3/Ta/Pt memristors. As a result, the characteristics of
Pt/Al2O3/Ta/Pt memristors can be estimated by quantifying the dimension and connectivity of
grain boundaries and regions of low local atomic density in the Al2O3 layer. To quantify this, a
connected component analysis (using depth first search) of low-density voxels was performed (see
Molecular Dynamics Simulations in the Experimental Section). Here, the low-density voxels are
the 3Å ⨉ 3Å ⨉ 3Å regions containing no Al or O atoms. Connected component analysis identifies
all possible pathways for dissolution of conductive filaments. Figure 4.1c shows the results of the
connected component analysis on amorphous and polycrystalline structures highlighting the
structure and connectivity of local low-density voxels. The connected component analysis results
indicate that the amorphous (80 °C deposited) Al2O3 layer has a uniform distribution of small
clusters of connected low-density voxels. In contrast, clusters in other Al2O3 layers are more
heterogeneously distributed and exist exclusively at the grain boundaries.
It is reasonable to expect that the number of resistance states will be proportional to the cross-
sectional area (in the x-y plane) of connected clusters of low-density voxels. This is because that
the larger cross-sectional area of connected clusters of low-density voxels means more possible
diameters of conductive filament in memristors. Different conduction filament diameter is
20
corresponding to different resistance state. Figure 4.1d shows the change of cross-sectional area
(in the x-y plane) of connected clusters of low-density voxels with respect to the type of Al2O3
layer. The cross-sectional area of connected clusters increases from amorphous to polycrystalline
Al2O3 layer, and further monotonically increases with grain size. This behavior is consistent with
the experimental observation of the number of resistance states of Pt/80 °C deposited Al2O3/Ta/Pt
memristor and Pt/200 °C deposited Al2O3/Ta/Pt memristor (Figure 3.2a and 3.2b).
Figure 4.1e and 4.1f indicate that large grain-sized (high temperature deposited) Al2O3 layer
has fewer, but longer low-density clusters, while amorphous and small-grained (low temperature
deposited) Al2O3 layers contain a larger number of non-percolating clusters of smaller lengths. In
other word, with the increase of the grain size of Al2O3 layer (proportional to the Al2O3 deposition
temperature), the length of low-density clusters in Al2O3 layer also increase, while the density of
low-density clusters decreases. For longer low-density clusters, the needed Set/Reset voltage and
On/Off ratio are higher, which is consistent with experiment results (Figure 3.1a, 3.1b, 3.2d and
3.2e). Besides, the multiplicity of conductive pathways (proportional to the density of low-density
clusters) in Al2O3 layer will result in the variation in the electrical measurements of memristors. If
the density of low-density clusters in the Al2O3 layer is higher, the corresponding Pt/Al2O3/Ta/Pt
memristor will have higher variation. This also fits the experimental results (Figure 3.1e-3.1h and
Figure 3.2f).
21
Conclusion
In conclusion, this work proposes and demonstrates a method to modify the memristor
characteristics specifically by controlling the crystallinity of switching layer material. Through the
engineering of the characteristics of the material system of the device, the electrical behavior of
the device can be reliably modified. By setting the atomic layer deposition (ALD) temperature, the
crystallinity of deposited Al2O3 can be controlled. Using different crystalline Al2O3 as the
memristor switching layer, the characteristics of corresponding Pt/Al2O3/Ta/Pt cross point
memristors can be engineered. Good characteristics like high IV linearity, high On/Off ratio
(around 10
8
), low pulse operation voltage (2.5 V), and multilevel resistance states (141 states) were
obtained from our modified Pt/Al2O3/Ta/Pt memristors. This engineering method paves the way
of modifying the device electrical behavior to make it fit to different application domain. More
importantly, molecular dynamics simulations were performed to explain how the switching layer
crystallinity affects the characteristics of memristors qualitatively. The understanding of the
fundamental physics of the device will further guide us to explore more of the design and
engineering of the device in the future. We anticipate that, through modifying the characteristics
of memristors precisely, memristors can be used for a broad spectrum of applications soon.
22
Topic 2:
Hybrid Analog-digital Computing Platform for Mobile Robotics
23
Abstract
In recent years researchers have intensified their efforts to increase robot mobility, but little
attention has been paid to the development of an efficient computational platform for mobile
robotic systems until now. Currently, various algorithms in mobile robots are implemented on
digital platforms, where performance is inherently constrained by the limits of the von Neumann
architecture. Here, we propose and demonstrate a hybrid analog-digital computing platform
enabled by memristors on a mobile robotic system. The sensor fusion algorithm and the motion
control algorithm of the mobile robotic system are implemented on our hybrid analog-digital
computing platform with very low latency. Using a model-free optimization method, the mobile
robotic system can tune the conductance states of memristors through self-learning to achieve
optimal control performance. We also demonstrate that the mobile robotic system using our hybrid
analog-digital computing platform performs much better than the one using the digital platform.
24
Chapter 5
Introduction
5.1 Introduction to the Control of Modern Mobile Robotics
Presently, the most advanced mobile robotic system in the world has only 114 degrees of freedom
(DOFs) (18), which is much less than that in the human body (650 skeletal muscles) (19). This is
the reason that state-of-art robots cannot move as naturally as humans can. As a result, more DOFs
are necessary for the next generation of mobile robotic systems (20). However, until now little
attention has been paid to the development of the embedded computation with low latency and
low power consumption for increasing the DOFs of mobile robotic systems. Currently, mobile
robotic systems use digital computing platforms. As complementary metal-oxide-semiconductor
(CMOS) scaling approaches the end of the road, the improvement of the throughput of digital
processers and the computing power efficiency is nearing its end (21, 22). Nevertheless,
requirements for computing power increase commensurate with the DOFs of mobile robotic
systems. In other words, the high latency and the high-power consumption of digital platforms
severely limit the development of mobile robotic systems with higher DOFs.
The human brain (23) consists of the cerebrum, the cerebellum, and the brainstem. The
cerebrum is a major part of the brain in charge of vision, hearing, and thinking, while the
cerebellum plays an important role in sensor fusion and motion control. Through this cooperation
of the cerebrum and the cerebellum, the human brain can do multiple tasks simultaneously with
extremely low power consumption. Inspired by this, the ideal solution to break the bottleneck of
increasing the DOFs in robots is a hybrid analog-digital computation platform, in which the digital
component runs the high-level algorithm, while the analog component is responsible for sensor
fusion and motion control. In fact, 40 years ago, a similar approach was proposed (24, 25).
25
Unfortunately, this approach has never been adopted widely, because there was no electronically
reconfigurable and silicon integrated circuits compatible analog device to implement it efficiently.
5.2 Hybrid Computing Using Memristors
Luckily, with the development of memristors, it is now possible to implement such a system
efficiently. The memristor is a two-terminal IC compatible analog device, which can be
programmed to different conductance states (15, 26, 27). It also offers excellent scalability, broad
range of IV linearity, and non-volatile property. The tunable conductance states of the memristor
can perform both storing and processing information, enabling the memory and computation to be
integrated in a parallel architecture. In addition, as a single device with multiple states, memristor
has many advantages, such as space-saving and cost-effectiveness, over other electronics devices
(28) (Table 5.1). The memristor is a single device with multiple states, thus it is space-saving and
cost-efficient. Also, the linear IV characteristic of memristor makes it more suitable for
implementing linear equations.
Configurable circuits
Number of
devices
IV
characteristic
Circuits
Area
Control
Circuits
Switched capacitor Multiple Linear Large Need
Switched resistor Multiple Linear Large Need
Transistor Single Nonlinear Small Need
Memristor Single Linear Small Need
Table 5.1: The comparison of electronically reconfigurable analog circuits using different devices.
26
In our proposed hybrid platform, the sensor fusion and motion control are performed by the
memristors-based analog circuit with nearly no latency due to the nature of analog circuit. The
digital platform, however, needs to store and compute the information separately, which creates
more latency. Since the mobile robotic system requires the real-time control of a dynamical system,
it will benefit significantly from the low latency and low power consumption of the memristor-
based analog component. Also, the memristor-based analog component can operate independently
without using the computing resources from the digital component. This parallel computing
architecture enabled by the hybrid platform is essential for further increasing the DOFs of mobile
robotic systems. So far, the memristor-based hybrid computing platform has enhanced speed and
power in supervised learning, unsupervised learning, and reinforcement learning (29-33). However,
the use of the memristor-based computing platform in robotic systems is yet to be demonstrated.
In this study, we demonstrate a one DOF low-latency self-learning mobile robotic system
using our proposed hybrid analog-digital computing platform enabled by two memristors. The
sensor fusion algorithm (a Kalman filter) and the motion control (a PD controller) algorithm of the
mobile robotic system are implemented and accelerated by the memristors-based hybrid
computing platform. During the self-learning process, the conductance states of memristors are
tuned to achieve optimal control performance of the robot using random search optimization(34).
Our mobile robotic system (6 µs computation cycle time) performs much better (shorter settling
time, faster response, and better stability) than the same robot that uses the traditional digital
platform. This work paves the way for use of the memristor-based hybrid analog-digital computing
platform in a broad spectrum of applications, such as the Internet of Things (IoT) (35) and edge
computing (18).
27
Chapter 6
Analog-digital Hybrid Platform Enabled by Memristor
6.1 Analog-digital Hybrid Computing Architecture
A mobile inverted pendulum (36) is chosen to demonstrate our memristor-based analog-digital
hybrid platform. It is a mobile robotic system with many applications, such as hoverboards and
the Handle robot. However, the high-latency and high-power consumption in the current digital
platform limit the performance of the mobile inverted pendulum. Our proposed hybrid analog-
digital computing platform can solve the problems of the traditional digital platform.
Figure 6.1a and 6.1b shows our proposed hybrid analog-digital computing platform. The
digital component implements high-level algorithms (e.g. perception algorithm and decision-
making algorithm), which serve as the “cerebrum” of the robot brain. Meanwhile, memristor-based
analog components implement sensing and motion control algorithm, which act as the “cerebellum”
of the robot brain. More specifically, a continuous-time Kalman filter using a memristor-based
analog component was implemented, and it is responsible for the sensor fusion (Figure 6.1a). The
motion control function (Figure 6.1a) is realized by a proportional–derivative (PD) controller (36)
utilizing the memristor-based analog component. Figure 6.1c-6.1e show the home-built mobile
inverted pendulum, the memristor packaged on the chip carrier, and optical microscope image of
the Pt/Al2O3/Ta/Pt cross-point memristor, respectively. The details are introduced in the following.
This hybrid analog-digital computing platform has several benefits. First, since the
computation speed of the analog component is much faster than that of the digital component, the
latency of Kalman filter and motion control in our robot (computation cycle time is 6 µs) is
significantly reduced. Second, because the Kalman filter and motion control are both implemented
on the analog component, the signal can be directly read and processed from sensors to motion
28
controller without quantization error. There is no need for analog-to-digital converters (ADCs) and
digital-to-analog converters (DACs), thus significantly improving the performance and saving
power, space, and cost. Third, through this way, the Kalman filter algorithm and the motion control
algorithm are separated from the high-level algorithms, thus reducing the computation load of the
digital component.
Figure 6.1: The memristor-based hybrid analog-digital computing platform. a) Schematic
illustration of hybrid analog-digital computing platform. b) Schematic representation of the
biological inspiration from the brain structure. In the hybrid analog-digital computing platform,
29
the analog component acts as the cerebellum that controls the motion of the robot, while the digital
component acts as the cerebrum running the high-level algorithms. c) Image of the mobile robotic
system (i.e. the mobile inverted pendulum) in this work. d) Image of the memristors packaged on
the chip carrier. e) Optical microscope image of the fabricated Pt/Al2O3/Ta/Pt cross-point
memristor, the scale bar is 100 µm.
Figure 6.2: Schematic and electrical characteristics of the Pt/Al2O3/Ta/Pt memristor. a) I-V
characteristics of the Pt/Al2O3/Ta/Pt memristor (plot in linear scale) from 5 by 5 μm
2
Pt/
Al2O3/Ta/Pt cross-point memristors. This memristor has good I-V linearity and large On/Off ratio.
The insert of Figure 6.2a shows the structure of the Pt/Al2O3/Ta/Pt cross-point memristor. 20nm
Pt was deposited as top and bottom electrode. 8nm Ta and 10nm Al2O3 work as active layer and
switching layer respectively. b) The memristor can be precisely set to different conductance states
using DC sweep voltages with different compliance currents. Here shows the I–V characteristic
for Pt/Al2O3/Ta/Pt memristor with different conductance, which has 141 states (more than 2
7
). c)
The conductance state evolution under the pulse tuning method. d) Circuit schematic diagram for
30
pulse tuning. The bottom electrode of the memristor is connected to the drain of the transistor to
build a 1T1R structure. e) The pulses applied to obtain conductance increases, and f) conductance
decreases. During the set process, two pulse trains are applied on the top electrode of the memristor
(from 400 mV to 2000 mV) and the gate of the transistor (from 4000 mV to 4100 mV)
simultaneously to generate pulse needed to program the memristor. The reset voltage is 1950 mV
during the reset process.
Pt/Al2O3/Ta/Pt memristors were used for our proposed hybrid analog-digital computing
platform (37). The typical IV curve (Figure 6.2a) of our memristor demonstrates a good IV linearity,
which is necessary in implementing linear transfer function. The insert of Figure 6.2a shows the
four-layer structure of the Pt/Al2O3/Ta/Pt memristor. This memristor can be tuned to multiple
conductance states using both DC voltage sweep (Figure 6.2b) and voltage pulses (Figure 6.2c)
with different compliance current. The compliance current can be controlled using the serial
transistor with different voltages applied (Figure 6.2e, 6.2f) in the tuning circuit (Figure 6.2d). It
can be observed that the potentiating process is more linear than the depressing process. This is
due to the tuning protocol (Figure 6.3). The tuning method we are using is to control the device
robustly and precisely. Both potentiating pulses and depressing pulses are generated by our
customized tuning circuit. The pulse width in our customized digital tuning circuit is 10 ms. During
the potentiating process, the pulses voltage applied on the top electrode of the memristor ranges
from 400 mV to 2200 mV with increments of 200mV. While under the same amount of applied
voltage, the gate voltage of the transistor changes from 4150 mV to 4350 mV with increments of
50 mV to gradually increase the conductance of the memristor. In this way, a large range of tuning
current can be obtained, and thus the number of states of memristor can be optimized. After that,
31
100mV read voltage is applied on the memristor to measure its conductance without disturbing it.
In each depression epoch, the 2000mV reset voltage is used to reset the device first. Then the
device will be set again using the similar protocol in the potentiating process but with the opposite
sequence. Therefore, instead of moving in one direction during the potentiating process, the ion
moves back-and-forth inside the switching layer in each depression epoch. This is why the
depressing process is nonlinear. However, since the conductance states of the memristor are
selected using feedback detection with high accuracy, the non-linear second half of the pulse
tuning behavior will not affect the performance of the robotic system.
Figure 6.3: Waveforms of potentiating pulses (a and c) and depressing pulses (b and d).
32
Before the tuning process, the device needs to be electroformed using a single 5V pulse with
10 ms pulse width to high conductance (ON) state. As shown in Figure 6.4, the memristor can be
set to the 10 target states precisely from 200 μS to 2000 μS. This precise tunable behavior will
benefit the device in the application of analog computing. The conductance state of the
Pt/Al2O3/Ta/Pt memristor can be tuned precisely by controlling the compliance current with 9 μS
standard deviation with feedback detection.
Figure 6.4: The memristor can be set to the target states precisely by controlling the compliance
currents. Here shows the ten set conductance states (200μS, 400μS, 600μS, 800μS, 1000μS,
1200μS, 1400μS, 1600μS, 1800μS, and 2000μS) of the Pt/ Al2O3/Ta/Pt memristor.
33
As a result, the Pt/Al2O3/Ta/Pt memristor can provide 141 (more than 7 bits) conductance
states ranging from 450 to 3000 μS. The accuracy of our Pt/Al2O3/Ta/Pt memristor is better than
that of 8-bit microcontrollers (38), which are now widely used in embedded computing platforms.
From the analysis from the previous section, the memristor is operated by conductive ion, which
is relatively hard to be predicted and controlled compared with electron. Therefore, the variation
and reliability need to be tested for real applications. In this work, low device-to-device variation
(Figure 6.5a, 6.5b), high endurance (Figure 6.5c), and long retention time (Figure 6.5d) are
demonstrated in our Pt/Al2O3/Ta/Pt memristor. All these characteristics guarantee the reliability of
the analog component in the hybrid analog-digital platform.
34
Figure 6.5: (a and b) Two more memristors with multilevel conductance states performance. The
results indicate that different memristors provide the similar conductance range. In addition, the
device is automatically tuned with a feedback detection to select the desired conductance state.
Therefore, the repeatability of the device meets the requirement in the hybrid computing
application. c) 5000 switching cycles of the device. d) Retention tests of the device with multilevel
conductance states. The tests were conducted at room temperature (25 °C) for 10 hours. This shows
the stability of the device.
6.2 Hardware Acceleration of Kalman Filter
Precisely detecting the angle of the system is necessary for the control of a mobile inverted
pendulum. In our mobile inverted pendulum (Fig. 1C), an accelerometer and a gyroscope were
used to detect the angle and angular velocity signals of the mobile inverted pendulum, respectively.
The accelerometer measures the angle of the system by measuring the acceleration along the
vertical axis. However, the white noise in the sensor measured signal is inevitable, which causes
instability in the mobile inverted pendulum.
The Kalman filter (39-42) is the most commonly used method to perform signal preprocessing
and to filter the white noise. Traditionally, the analog signal is detected by the sensor and converted
to the digital signal via ADCs, and then transported to the digital processor through a
communication bus. After that, the signal is processed using a discrete-time Kalman filter on the
digital platform. All the above procedures consume enormous power and cause high latency (43).
To solve this problem, a memristor-based analog circuit is prototyped to realize the continuous-
time Kalman filter, as shown in (Figure 6.6a, 6.6b). In the continuous-time analog Kalman filter,
the measured signal is processed physically without transfer to the digital domain, thereby
35
minimizing both the latency and the quantization error. Therefore, the Kalman filter can be
accelerated significantly using hardware.
Figure 6.6: Hardware acceleration of continuous-time analog Kalman filter. a) Block diagram of
angle signal estimation with continuous-time analog Kalman filter. b) Circuit schematic diagram
of the hardware implementation of the continuous-time analog Kalman filter, where the Kalman
gain is implemented using a memristor. c) Measured raw data of the angle signal (black curve) and
the filtered data (red curve) by the continuous-time analog Kalman filter. The test was performed
on a rotating robotic arm (Figure 6.8). d) Estimated angle signal with different Kalman gains
(different conductance states of memristor). An overlarge conductance state causes overshoot
response (blue curve), while an insufficient conductance state causes overdamped response (black
36
curve). The optimized conductance state of the memristor (red curve) is chosen for the continuous-
time analog Kalman filter using binary search method.
In the continuous-time Kalman filter (39, 44), the system model and measure model of the
angle measurement can be defined as
[
𝜃 ̇ (𝑡 )
𝑏𝑖𝑎𝑠 ̇ (𝑡 )
] = [
0 −1
0 0
][
𝜃 (𝑡 )
𝑏𝑖𝑎𝑠 (𝑡 )
] + [
1
0
]𝜔 𝑚𝑒𝑎 (𝑡 ) + 𝑤 (𝑡 )
(6.1)
𝜃 𝑚𝑒𝑎 (𝑡 ) = [
1 0
][
𝜃 (𝑡 )
𝑏𝑖𝑎𝑠 (𝑡 )
] + 𝑣 (𝑡 )
(6.2)
where 𝜃 (𝑡 ) is the ideal angle of the system, 𝑏𝑖𝑎𝑠 (𝑡 ) is the bias error of the angular velocity,
𝜔 𝑚𝑒𝑎 (𝑡 ) is the measurement of the angular velocity, 𝑤 (𝑡 ) is the white noise of the system model,
𝜃 𝑚𝑒𝑎 (𝑡 ) is the measurement signal of the accelerometer, and 𝑣 (𝑡 ) is the white noise of the measure
model. In addition, 𝑤 (𝑡 ) and 𝑣 (𝑡 ) are mutually uncorrelated.
Using equations (6.1) and (6.2), the estimate update equation can be expressed as
[
𝜃 ̇ 𝑒𝑠𝑡 (𝑡 )
𝑏𝑖𝑎𝑠 ̇ 𝑒𝑠𝑡 (𝑡 )
] = [
0 −1
0 0
][
𝜃 𝑒𝑠𝑡 (𝑡 )
𝑏𝑖𝑎𝑠 𝑒𝑠𝑡 (𝑡 )
] + [
1
0
]𝜔 𝑚𝑒𝑎 (𝑡 ) + [
𝐾 1
𝐾 2
][𝜃 𝑚𝑒𝑎 (𝑡 ) − 𝜃 𝑒𝑠𝑡 (𝑡 )] (6.3)
where the vector [𝐾 1
𝐾 2
]
𝑇 is the Kalman gain (39) of the estimate update equation. Equation
(3) can be simplified further. Based on the readout signal of the sensor where the white noise is
negligible, it is reasonable to assume that the bias error from the gyroscope is a constant, and thus
the Kalman gain 𝐾 2
of the estimate bias is expected to be 0. In addition, the 𝑏𝑖𝑎𝑠 𝑒𝑠𝑡 (𝑡 ) can be
measured directly from the voltage output of the gyroscope and then the angular velocity can be
reconstructed, as shown in equation (6.4)
𝜔 𝑒𝑠𝑡 (𝑡 ) = 𝜔 𝑚𝑒𝑎 (𝑡 ) − 𝑏𝑖𝑎𝑠 𝑒𝑠𝑡 (𝑡 ) (6.4)
After the above simplifications, equation (6.4) can be expressed as
37
𝜃 ̇ 𝑒𝑠𝑡 (𝑡 ) = 𝜔 𝑒𝑠𝑡 (𝑡 ) + 𝐾 1
[𝜃 𝑚𝑒𝑎 (𝑡 ) − 𝜃 𝑒𝑠𝑡 (𝑡 )]
(6.5)
It has been proved that the Kalman gain will converge to a constant after several iterations(39).
Since the Kalman gain is implemented using a memristor, the memristor only needs to be
calibrated once. More importantly, the non-volatile nature of memristor ensures that the Kalman
gain 𝐾 1
is still reserved even though the mobile robotic system is shut off. The transfer function
block diagram (Figure 6.6a) shows the equation (6.5) in the frequency domain. Figure 6.6b shows
the circuit schematic diagram of the continuous-time analog Kalman filter. The circuit is designed
and built by using discrete devices. Memristors are packaged and connected on the circuits via
chip carriers. The detail parameters of the memristor-based analog Kalman filter circuit and its
circuit board implementation are shown in Figure 6.7.
Figure 6.7: (a and b) Circuit schematic diagram with the device’s parameters of the hardware
implementation of a continuous-time analog Kalman filter.
To test and optimize the continuous-time analog Kalman filter, a robotic arm is built, which
can swing between 45° and 135° horizontally (Figure 6.8). A robotic arm was built to test the
continuous-time analog Kalman filter. The robotic arm is based on a high torque servo motor
38
(Savox SC-1256TG). This servo motor has enough torque and response speed to work as a testing
platform. It can rotate from 45° to 135°. The servo is remote controlled by a transmitter.
The sensor is mounted on the robotic arm to measure various angles. The black curve in Figure
6.6c shows that the raw measured angle signal is very noisy. Since the noise causes instability in
the mobile inverted pendulum, the raw measured signal cannot be directly used to compute the
motion control signal. For comparison, the signal filtered by our continuous-time analog Kalman
filter (Figure 6.6c red curve) eliminates the noise and reconstructs the ideal signal. This
demonstrates the feasibility of our proposed analog Kalman filter.
Figure 6.8: The robotic arm for testing the continuous time analog Kalman filter.
39
The continuous-time analog Kalman filter was tested under different scenarios. As mentioned
above, the Kalman gain is determined by the conductance of the memristor. Therefore, the
dynamic response of the Kalman filter circuit depends on the conductance state of the memristor.
An overlarge conductance state causes overshoot response, while an insufficient conductance state
causes overdamped response. Figure 6.9 shows that the optimal conductance values of memristor
are different using the same sensor under different temperatures or different sensors even with the
same model (see method for details). Therefore, to achieve the best performance of the Kalman
filter, the conductance of the memristor needs to be optimized before using it in the robot.
Figure 6.9: a) Estimated angle signal with the same Kalman gain using different sensors. To be
noticed, different gyroscopes are all from the same model (model: SMAKN ENC-03RC). b)
Estimated angle signal from the same analog Kalman filter under different temperatures. All the
curves above are offset to show the comparison clearly.
40
To find the optimal conductance of the memristor, a binary search method is adopted. This
method chooses two conductance values of the memristor to generate both overshoot and
overdamped response at first. Then the conductance value of memristor is set to the middle of
these two conductance values. The search interval of the conductance is narrowed down to the
upper half if there is overdamped response of the circuit. Otherwise narrow it to the lower half.
After the optimal conductance state (Figure 6.6d red curve) of the memristor is chosen, there is no
overshoot (Figure 6.6d blue curve) or overdamped (Figure 6.6d black curve) response in the
filtered signal. Compared with the discrete-time Kalman filter implemented on the digital platform,
this continuous-time analog Kalman filter significantly accelerates the sensor fusion process and
reduces the computing load of the digital component.
6.3 Hardware Acceleration of Adaptive PD Controller
Except filtering the measured angle signal, the controller is also important to successfully balance
the mobile inverted pendulum. In reality, controlling a mobile inverted pendulum is not an easy
task, since the nonlinearity of the dynamical system is inevitable and difficult to analyze. Generally,
this nonlinearity of the mobile inverted pendulum mainly comes from the high latency due to the
long cycle time of the computation. Many nonlinear controllers have been proposed to mitigate
the nonlinear effect, such as neural network controllers and fuzzy logic controllers (45-47).
However, these controllers have not reduced the cycle time. The nonlinearity of the system still
exists, and thus limiting the upper bound of the robotic system performance. In this study, we
proposed and demonstrated an adaptive PD controller using a memristor-based hybrid analog-
digital computing platform, which significantly reduces the computation cycle time, thus
fundamentally solving the nonlinearity problem.
41
Figure 6.10: Hardware acceleration of the analog PD controller. a) Schematic of the mobile
inverted pendulum with the PD controller, which can be considered as a simple damped harmonic
42
oscillator. b) Block diagram of the transfer function of the mobile inverted pendulum with a PD
controller. c) Circuit schematic diagram of the hardware implementation of the analog PD
controller, where the damping ratio (𝐾 𝑑 /𝐾 𝑝 ) is implemented using a memristor. d) Hardware
structure of the control system of the mobile inverted pendulum. e) Experimental data of several
impulse responses of the mobile inverted pendulum at different conductance states of the
memristor. The red arrow indicates the disturbance.
The dynamic model of an ideal mobile inverted pendulum is very similar to the cart-pole
scenario (48). The body of the inverted pendulum is free to rotate due to the gravitational force.
To balance the body of the inverted pendulum, the inertial force generated by the acceleration of
the inverted pendulum needs to be equal to the force because of the gravity. The linear dynamic
model can be roughly defined as
𝐿 𝑑 2
𝜃 (𝑡 )
𝑑 𝑡 2
= 𝑔𝜃 (𝑡 ) − 𝑢 (𝑡 ) + 𝐿𝑤 (𝑡 )
(6.6)
where 𝑢 (𝑡 ) is the acceleration of the motion, 𝑤 (𝑡 ) is the disturbance of the environment, and
𝐿 is the length of the robot. Since the time constant of the motor is much longer than the cycle time,
the torque of the motor (i.e. acceleration of motion) can be considered as being proportional to the
voltage applied on the motor. Therefore, the function of the controller is to create proper movement
of the robot to balance itself.
According to previous research (36, 49), the 𝑢 (𝑡 ) is defined as
𝑢 (𝑡 ) = 𝐾 𝑝 𝜃 (𝑡 ) + 𝐾 𝑑 𝑑𝜃 (𝑡 )
𝑑𝑡
(6.7)
where 𝐾 𝑝 is the proportional term and 𝐾 𝑑 is the derivative term of the controller. By combining
equations (6.7) and (6.8), the mobile inverted pendulum can be considered as a damped harmonic
43
oscillator, and it can be modeled as
𝑑 2
𝜃 (𝑡 )
𝑑 𝑡 2
+
𝐾 𝑑 𝐿 𝑑𝜃 (𝑡 )
𝑑𝑡 +
𝐾 𝑝 − 𝑔 𝐿 𝜃 (𝑡 ) = 𝑤 (𝑡 )
(6.8)
The schematic representation and the block diagram of the mobile inverted pendulum with the
PD controller are shown in Figure 6.10a, 6.10b, respectively. In the PD controller, the 𝐾 𝑝 and 𝐾 𝑑
can be considered as the spring constant of a spring and the damping coefficient of a damper,
respectively. In the experiment, a single memristor is used to implement damping ratio 𝐾 𝑑 /𝐾 𝑝 of
the controller. The schematic diagram of the circuit is shown in Figure 6.10c. The damping ratio
is determined by the conductance state of the memristor. Figure 6.10d provides an overview of the
hardware structure of the control system of the mobile inverted pendulum. The impulse responses
(Figure 6.10e) of the mobile inverted pendulum are measured in the experiment. The result
indicates that as the conductance value of the memristor (damping ratio) increases, the oscillation
of the mobile inverted pendulum decreases as expected. The circuit parameters and the
implementation using off the shelf components with memristors are shown in Figure 6.11.
Figure 6.11: (a and b) Circuit schematic diagram with the device’s parameters of the hardware
implementation of a PD controller.
44
The conductance states of memristors need to be optimized for the mobile inverted pendulum
in different scenarios. In other words, the mobile inverted pendulum is expected to work in
different unknown situations, where the motion acceleration 𝑢 (𝑡 ) , depending on both the
interaction with the environment and the load on the robot, will be unpredictable. Therefore, the
parameters must be optimized in different cases. The random search algorithm is adopted as the
self-learning method in the robot. This is a model-free method, which can optimize the parameters
of the system without knowing the exact physical model of the robot. This optimization problem
can be expressed as
𝑚𝑖𝑛𝑖𝑚𝑖𝑧𝑒 𝐸 𝑒 𝑡 ,𝜔 [∑ 𝐶 𝑡 (𝑥 𝑡 ,𝑢 𝑡 )
𝑇 𝑡 =1
]
(6.9a)
𝑠 .𝑡 . 𝑥 𝑡 +1
= 𝑓 𝑡 (𝑥 𝑡 ,𝑢 𝑡 ,𝑒 𝑡 ) and 𝑢 𝑡 = 𝜋 (𝜏 𝑡 ;𝐾 + 𝜔 ) (6.9b)
where the cost function used to describe the system vibration can be written as
𝐶 (𝐾 ) = ∑(𝜃 𝐾 (𝑡 ) − 𝜃 0
)
2
𝑛 𝑡 =0
(6.9c)
where 𝜃 0
is 0 in the system. However, it is impossible to get all the physical parameters
accurately in reality, thus the traditional optimization method using gradient descent cannot be
applied. In order to know the tuning direction of parameters, the gradient 𝐺 (𝜔 ,𝐾 ) of the cost
function 𝐶 (𝐾 ) is tested from the system.
𝐺 (𝜔 ,𝐾 ) =
1
𝑚 ∑
𝐶 (𝐾 + 𝜎 𝜔 𝑖 ) − 𝐶 (𝐾 − 𝜎 𝜔 𝑖 )
2𝜎 𝜔 𝑖 𝑚 𝑖 =1
(6.10)
The flowchart in Figure 6.13a schematically illustrates the self-learning process. During each
learning epoch, the control performance of the certain memristor conductance value both with and
without introducing a small perturbation (adding a 200Ω resistor in serial) are tested. Then the cost
45
function can be calculated, and thus determines the direction of optimization. Both the simulated
and experimental data (Figure 6.13b) show that the cost function converges after 15 learning
epochs. Here, the Runge–Kutta method (50) is used to simulate the dynamic model of the mobile
inverted pendulum with nonlinearity, including both the latency and the finite acceleration effect.
As shown in the Figure 6.12, uring each learning epoch, both the control performance of each
memristor conductance value with (red curve) and without small perturbation (black curve) are
tested. Here shows that the cost function of the mobile robotic system quickly converges. This
indicates the feasibility of our optimization method.
Figure 6.12: Experimental data of impulse responses of the mobile inverted pendulum during the
optimization process.
46
Figure 6.13: The self-learning process on the hybrid computing platform and the optimal control
performance. a) Flowchart of the random search optimization algorithm implementation on the
memristor-based hybrid analog-digital computing platform. During each learning epoch, the
control performance of certain memristor conductance states with and without small perturbation
(adding 200Ω resistor) are tested. Then the cost function and its gradient are calculated from the
angle signal data accordingly. After that, the weight of the memristor is updated towards
minimizing the cost function. b) Simulated (black curve) and experimental (red curve) data of the
self-learning process. c) The settling time of the mobile inverted pendulum with the hybrid
platform (~ 1 s) is much shorter than the one with the digital platform (more than 3 s). The red
47
arrow indicates the disturbance. d) The difference of the slope (blue dashed line) of the angle signal
shows that the mobile robotic system using the hybrid platform has faster response than the one
using the digital platform. The red arrow indicates the disturbance.
The memristor-based hybrid platform shows much better performance in speed and energy
efficiency compared to the traditional digital platforms. Therefore, the control performance of the
mobile inverted pendulum is improved significantly using the hybrid platform with low latency.
As indicated in Figure 6.13, the settling time of the mobile inverted pendulum with our hybrid
analog-digital computing platform is about 1s. Using the traditional digital platform, the mobile
inverted pendulum is still not perfectly stabilized even after more than 3s. In addition, the mobile
inverted pendulum using our hybrid platform has a much faster response (Figure 6.13d) than the
one using a traditional digital platform. The comparison of the impulse responses of mobile
inverted pendulum using different platforms can be found in the supplementary movie The cycle
time of mobile inverted pendulum using our hybrid analog-digital computing platform (6 µs) is
significantly smaller than the one using a traditional digital platform (3034 µs), so the mobile
inverted pendulum using hybrid computing platform can achieve much better control performance.
The video of the control performance comparison between analog and digital platform can be
found online (https://www.youtube.com/watch?v=sJ26VmO4pB0).
6.4 Comparison Between Different Computing Platforms
To further prove the feasibility and improvement of our memristor-based hybrid analog digital
computing platform for mobile robots. Several types of digital computing platforms were used as
benchmark platforms. In the following, based on the up-to-date information that we are aware of,
we present a systematic study on the latency and power consumption of the memristor-based
48
hybrid analog-digital system, NXP MK60N512VLQ100 microcontroller-based system (the
comparison system we built) and Xlinx Zynq UltrScale+ FPGA based system (the best
performance we found in the literatures (50).
The performance is benchmarked by one computing cycle of the computing platform while
the robot is operating. To make the comparison straightforward and fair, the latency and energy
consumption is directly measured from the systems we built. The data of the FPGA based system
is reported from previous research. The comparison of the performance of different computing
platforms is summarized by the following Table 6.1:
Platform
Hybrid
Analog-digital
platform
NXP
MK60N512V
LQ with
MPU6050
(using DMP)
NXP
MK60N512V
LQ0 with
MPU6050
(not using
DMP)
Xlinx
Zynq UltrScale+
MPSoC
One
computin
g cycle
Sensor
Reading
Analog
Component:
0.25 µJ
Digital
Component:
2.68 µJ
4 µs
6793.1 µJ
9503 µs
2145 µJ
2934 µs
172.3 µJ
Kalman
Filter
62.8 µJ
86 µs
PD
Controller
8.6 µJ
12 µs
8.77 µJ
12 µs
3.9 µJ
Data
transfer to
PWM
1.47 µJ
2 µs
1.43 µJ
2 µs
1.46 µJ
2 µs
Total
4.4 µJ
6 µs
6803.13 µJ
9517 µs
2218.03 µJ
3034 µs
176.2 µJ
100 µs
Normalization
1×
1×
1546×
1586×
504×
506×
40×
16.6×
Table 6.1: The comparison of speed and power efficiency on different platforms.
49
Hybrid analog-digital system: The hybrid computing platform for the inverted pendulum is
customized printed circuit board with great flexibility. The detail design of the system can be found
in Figure 6.14.
Figure 6.14: Circuit schematic diagram of the hybrid computing platform for the inverted
pendulum. The memristor is selected to the tuning circuitry using solid state relays. The tuning
circuitry communicates with the digital circuitry used for calculating conductance tuning amount
via I2C bus.
50
Since the robotic system doesn’t need to be initialized very frequently, the tuning circuit will
not be used when the robot is operating. Therefore, we only consider the time and energy cost
caused by the hybrid computing platform. In the hybrid platform, the latency is dominated by the
digital process, which includes the time of reading the processed analog signal (4 µs) and the time
of the data transfer to the digital motor driver (2 µs). The power consumption is evaluated by
measuring the current flow into the system. To be noticed, the memristor-based analog component
consumes 0.25 µJ in each computation cycle. The main power consumption in our system is
dominated by the digital component, which is 4.15 µJ.
Digital computing system: The digital computing platform of the inverted pendulum used as
a comparison is designed using customized printed circuit board (PCB). Both the motherboard and
the motor driver is designed using PCB to achieve the best performance for benchmarking. The
digital computing platform is based on the NXP MK60N512VLQ100 microcontroller with 100
MHz ARM Cortex-M4 core combined with DSP, the same microcontroller that we used as the
digital component in the hybrid platform. The motion sensor that we chose is a widely used digital
Six-Axis (Gyro + Accelerometer) MEMS device, the InvenSense MPU-6050 with the digital
motion processor (DMP). The angle signal can be either processed with DMP or processed using
the microcontroller. Both cases are listed in the Table 6.1. Both the computing cycle time and the
energy cost are directly measured from the system.
FPGA based system: Recently, the FPGA has been widely used in the robotics application for
its high performance. Many researchers have demonstrated the mobile inverted pendulum using
FPGA-based platform (51-54). Here we chose the best performance system from literatures that
we are aware of. The data of the cycle time and power consumption of PD controller and Kalman
51
filter are reported by the previous research work (55). This system is based on the Xilinx PYNQ-
Z1 (XC7Z020-1CLG400C FPGA) with a dual-core ARM Cortex-A9 processor. The power
consumption of the PD controller and Kalman filter are 0.039W and 1.723W respectively. The
real time system runs at the cycle time of 0.1ms.
52
Figure 6.15: Circuit diagram of the digital computing platform. a) Circuit schematic diagram of
the digital computing platform. (b and c) Circuit layout and the print circuit board of the
motherboard of the robot. (d and e) Circuit layout and the print circuit board of the electrical speed
control board of the robot.
Summary of the comparison: Table 6.1 summarizes the time cost and energy consumption of
the memristor-based hybrid analog-digital system, NXP MK60N512VLQ100 microcontroller-
based system and Xlinx Zynq UltrScale+ FPGA based system. The comparison shows that the
hybrid computing platform has much better speed and power efficiency over the digital systems.
The computation is performed using the hybrid platform with nearly no latency due to the nature
of analog circuits. Since the information is stored as the resistance of them memristor, the
processing speed of the analog system is depending on the RC delay of the circuit, which is in the
range of microsecond using the off the shelf circuit components, or in the range of nanosecond
using integrated circuit technique. This bandwidth is significantly larger than the direct analog
reading out from the sensor. Therefore, the processing time of the analog sensor is negligible. A
digital system, however, needs time to process and transfer the data after the sensor reading. This
extra time will add the latency of the control period, thus weaken the control performance of the
robot. Therefore, even though the FPGA based system can process the signal with the shortest
amount of time, it still creates more latency and power consumption than an analog processing
circuit. Thus, from the above comparison between different information processing platform, we
can tell the significant improvement of the performance of the memristor-based hybrid analog
digital computing platform. In addition, there are still plenty of room for the hybrid computing
system to be optimized with the advantage of the integrated circuit technique.
53
Conclusion
We demonstrated a mobile inverted pendulum system with a hybrid analog-digital computing
platform using memristors. All the circuit components are built using conventional electronics
devices except memristors. This work is inspired by the biostructure of human brains. The
memristor-based analog components are designed to be a biomimetic implementation as the
“cerebellum” of the robot brain, while the digital component implementing high-level algorithms
serves as the “cerebrum” of the robot brain. The memristor-based analog component can operate
independently without consuming the computing power from the digital component. Through this
cooperation of the “cerebrum” and the “cerebellum”, the robot can do multiple tasks
simultaneously with a much shorter latency and lower power consumption. The power
consumption of the hybrid computing platform can be further reduced by integrating all the circuits
components on a single chip (56). In addition, the reconfigurable property of memristors enables
the self-learning capability of the mobile robot.
Appling proposed hybrid computing platform in robotics application offers advantages in
terms of reliability. The memristor in the Kalman filter only requires to be initialized once and the
memristor in the PD controller only needs to be initialized when the environment changes. The
non-volatile property of memristors reserves the conductance value even when the power of the
robotic system is off. Since the memristors are not frequently reprogrammed, the lifetime of the
memristor in the robotic application will be significantly longer than that of the memristor used in
other applications (e.g. memory). In addition, the robustness of the control system has more
tolerance for the programming deviation of memristors.
In conclusion, this work proposes and demonstrates a hybrid analog-digital computing
platform based on memristors. Both the Kalman filter algorithm and the control algorithm, the two
54
main functions of the cerebellum, are implemented and accelerated using this hybrid platform.
Adaptive learning capability is also demonstrated. Compared with conventional digital computing
platform, our hybrid computing platform yields significant enhancement in speed and energy
efficiency. The mobile inverted pendulum using the hybrid platform has better stability and faster
response because of the much lower latency. In this work, one DOF robot has been built to
demonstrate the feasibility of the hybrid computing platform with two memristors. Since the
hybrid platform saves more computing resources for high-level algorithms, it will significantly
improve the robustness and the performance of the mobile robotic systems with higher DOFs. We
anticipate that our memristor-based hybrid analog-digital computing platform can be used for a
broad spectrum of applications in the future, such as IoT and edge computing applications.
55
Topic 3:
Memristor-Based Linear and Quadratic Programs Solver
56
Abstract
Model predictive control (MPC), which is one of the optimal control technique, has wide
applications in chemical engineering(57), legged robotics(58), and autonomous driving(59). It is
an optimal control technique which can yield the optimal performance for control systems. The
implementation of MPC law to the small size and fast sampled applications have been intensively
studied in the past. One of the key challenges is that since the MPC is essentially solving a LP or
QP optimization problem, it is hard to implement such algorithm with fast speed and low power
consumption using digital platform (in the range of microsecond or smaller)(60, 61). This issue
limits the application of the MPC technique significantly since most applications in robotics
require real-time control signal output. Over several decades, a lot of researchers tried to address
this issue via different approaches. Most of these approaches focused on how to solve the
optimization problem more efficient using digital platform(61). The performance is improved
mainly by simplifying the algorithm using proper approximation or making the digital computing
platform more efficient, e.g. by using field programmable gates array (FPGA)(62). However, none
of these methods can change the time complexity of the algorithm. On the other hand, analog
circuit solving optimization circuit came out as a unique solution for this problem, since it
computes in analog domain and significantly reduce the computation time(60). Analog circuits
solving optimization problem has been extensively studied in the past. Due to the nature of analog
computing, the information can be stored and processed using the same location simultaneously at
analog circuits. However, digital computers require information moving back and forth between
the processing unit and the memory, thus the computing latency increases. Also, unlike the digital
circuit, which needs to transfer the information into digital domain and then start processing, the
analog circuit will process the information presented by analog signal directly after the sensor
57
reading. In this way, the optimization problem can be solved within the range of nanoseconds,
considering the time delay created by the parasite capacitors in the circuit(60). Many analog circuit
structures have been proposed, however, none of them has ever been adopted widely, owing to
technological limitations (lack of electronically reconfigurable devices and silicon integrated
circuits (IC)–compatible analog devices to implement such systems efficiently).
In this thesis, we proposed to demonstrate the analog linear and quadratic programs solver
using a memristor crossbar-based circuit. The memristor crossbar array will be used to replace the
resistor array proposed by the previous research. Unlike the resistor array, of which conductance
values cannot be changed, memristor crossbar can be reconfigured to different conductance values
with great flexibility(63). The conductance value can be controlled precisely (up to 9 µS) using
controlling compliance current tuning method enabled by transistors(63). Therefore, the
memristor-based analog circuits can be used to solve general optimization problem. This
technology will prompt the development of an analog model predictive controller, or any other
optimal control technique based on solving optimization problems a lot. Since the computing speed
will be improved from millisecond (run by digital computer) to nanosecond, it will significantly
broad the applications of the optimal control technique. For example, in the application of micro-
robots, the operating frequency is high(64). However, it is impossible to integrate a large powerful
digital computer on the micro-robot system for fast computation rate. The memristor-based analog
optimization solver can be used to solve this problem. Since the memristor array can be fabricated
in the range of nanometer, a large size of an array structure can be easily implemented(29).
Therefore, the memristor-based analog computing method can be used to solve a problem with
high dimension. This type of problem is hard to be solved using digital computer and it is referred
as the curse of dimension.
58
Chapter 7
Introduction
7.1 Background
As the era of robotics is coming, robots are becoming more intelligent. Model predictive control
techniques have been extensively studied and widely used in many advanced automatic systems,
such as legged robots, drones, autonomous vehicles, and so on(65). The model predictive control
method requires solving optimization problems in real-time and generates the optimal control
output for the plant model. This technique was first invented to control chemical plants. Since the
control cycle of the chemical plant is usually up to a few minutes, the computing power for solving
optimization problems in real-time is sufficient(57). However, in the application of robotics, the
control cycle is much smaller than that in the chemical plant. It requires a range of milliseconds or
smaller for the robot to give action. Therefore, the efficient computing technique to solve the core
of MP controller, which is essentially an optimization problem, in real-time is one of the key
challenges in the field of robotics.
Many approaches have been proposed and verified to address this problem. Analog circuit-
based linear and quadratic programming solver was studied extensively in the past. The research
work done by J. Dennis presents an analog electrical network for solving a quadratic programming
problem(66). In his work, the primal and dual variables are represented by the circuit currents and
voltages, respectively. A basic version of the circuit proposed by Dennis consists of resistors,
voltage sources, current sources, and diodes. In the later work, the circuits proposed by Chua,
Hopfield, and other researchers model the Karush-Kuhn-Tucker (KKT) conditions by representing
primal variables as voltages of capacitor and dual variables as currents(67). This is a beautiful
method since the circuit can be mapped to the KKT conditions. However, the convergence time of
59
the circuit is non-negligible since it takes time for the capacitors to reach the equilibrium. To
address the convergence time issue, the circuit designed and demonstrated by Sergey uses resistor
network combined with voltage sources(60). Passivity and KKT conditions of a tailored Quadratic
Program are used to prove that the analog circuit solves the associated LP or QP problem. The
proposed analog circuit can be used to repeatedly solve LP or QP problem with varying right-hand
side of the constraints and therefore it is suited for a linear MPC controller implementation. In this
work, switched resistor is used to change the circuit parameters, and thus different optimization
problems can be mapped on the circuit. However, none of them has been widely used in
applications, due to technological limitations. Without electronically reconfigurable devices and
silicon integrated circuits (IC)–compatible analog devices, the analog circuit-based linear and
quadratic programming solver cannot be implemented efficiently.
Here we proposed to use a memristor crossbar circuit-based structure to address this problem.
The analog circuit structure is first proposed by Dr. Sergey. In his work, resistors network is used
to implement the analog circuit-based linear and quadratic programming solver. This analog
circuit-based optimization solver solves a quadratic programming problem with the power
consumption of 4.32mW within 50ns(60). The simulation result also shows a better performance
of this technique in dealing with high-dimensional problems. However, the circuit system cannot
be implemented efficiently using resistors network only, since the resistance value of the resistor
will not change. To solve this issue, switched resistor array is used to implement different circuit
parameters. However, this is not an efficient way to solve this problem since the physical size of
the circuit is large, and thus it is hard to implement such circuit with high dimension. Therefore,
reconfigurability of this analog optimization solver will be its major limitation.
Luckily, with the development of memristors, it is now possible to implement such a system
60
efficiently. The idea of using a memristor-based linear and quadratic programming solver is to
replace the resistor array structure from the previous work of Dr. Sergey with a memristor crossbar
structure. As a single device with multiple states, the memristor can address the reconfigurability
issue of the previous design. The conductance values of memristors can be tuned very precisely
using one transistor one resistor structure. The number of states can be up to 7 bits based on our
previous work(63). Besides, memristor has many advantages, such as space-saving and cost-
effectiveness, over other electronic devices. Since memristor can be fabricated in the range of
several nanometers, it can be easily fabricated as a large array. Therefore, the memristor crossbar
array based analog optimization solver can be used to solve the optimization problem with large
dimension. Compared to transistors, the current voltage relation of memristors is more linear,
which makes the result produced by the analog circuit more accurate.
7.2 Objectives
The objective of this project is to demonstrate the feasibility of the analog optimization solver
using memristor crossbar array structure, which can potentially revolutionize the field of
computation, control, and robotics (Figure 7.1). In this thesis, we will cover the successful
implementation of a memristor-based analog optimization solver. We then used it to solve a control
problem based on solving optimization problem in real time on a robot platform (Figure 7.2). To
be more specific, different type of memristor were fabricated in the university lab to optimize the
device performance. And devices were tested using standard characterization tool. As a proof-of-
concept demonstration, we also designed and implemented both optimization circuits and
memristor tuning circuits on the print circuit board. After that, a selected linear or quadratic
optimization problem was mapped on our memristor computing platform, and the result was tested.
61
To design the system efficiently, both circuit simulation and math simulation of optimization
problem are conducted and evaluate the accuracy of the memristor-based analog optimization
solver. The whole platform will also be implemented on a robotic platform as the hardware
acceleration core for the computing unit. In our proposed project, the memristor was engineered
to meet the requirement of the circuit. Compared to previous research, this platform can solve a
general optimization problem and can be implemented efficiently on the future chip design. The
size of memristor crossbar circuit is small (in the range of nanometers) and can be easily scaled up
to solve high dimension optimization problem, which remains one of the great challenges for
digital computer. The energy consumption will be lower (in the range of milliwatts) and
computation speed will be much faster (in the range of nanosecond to microsecond). Although our
current plan is to implement using on chip memristor crossbar circuit and off chip peripheral
circuits. The integration of the whole computing system on a single chip is an ongoing project and
I will cover the progress of the initial stage of the integration. However, it will continue to be our
further research direction and will boost the performance of the analog linear or quadratic
optimization circuit significantly.
Figure 7.1 shows the circuit architecture we proposed to build. The memristor crossbar based
analog optimization solver contains memristor crossbar circuits, optimization circuits, memristor
tuning circuits, reading circuits and control circuits. The optimization computation is done by the
optimization circuit, memristor crossbar circuits and the reading circuit directly. The optimization
(Figure 7.1) circuit contains constrained circuit and cost circuit. The basic idea is to reach the
minimum voltage value of the cost circuit as well as obeying the constraint circuits. The rigorous
proof of the circuit is provided in previous research(60). The memristor tuning circuit and control
circuit is used for tuning the memristor crossbar array to the desired parameters.
62
Figure 7.1: The circuit architecture of the memristor-based analog optimization solver.
This part of the thesis will be mainly divided into three parts:
The first part of this thesis is mainly focused on the simulation study and experimental study
of the optimization circuit. The theory of building analog optimization solver is reviewed and
discussed. Both linear programming (LP) and quadratic programming (QP) circuit based on the
theory are discussed. I also simulate the analog circuit solving LP and QP problems theoretically
to verify the theory. Also, an experiment of building LP problem using practical circuit component
with memristors was investigated to verify the feasibility of using such circuit in a real application.
In the second part, based on the simulation result in the previous phase, the memristor crossbar
circuits, tuning circuits, and optimization circuits are proposed. A specific application of using
such memristor-based analog optimization solver is discussed. In this part, I will mainly discuss
the memristor-based analog chip solving an optimal control problem in the micro-robotics
63
application. The control problem formulation, software and hardware co-design, the optimization
circuit design and simulation, and the proposed chip architecture will be discussed in this part.
In the last part, I will discuss the future work and current challenges of the above project
related to device engineering and characterization, circuit design and control algorithm design. I
will also discuss some other potential applications of using memristor-based analog optimization
solver, such as in the application of Cognitive Domain Ontology (CDO). Lastly, I will talk about
another novel analog circuit architecture inspired by our current research that can solve the small
size SAT problem.
Figure 7.2: The control architecture of a general plant model using analog optimization solver.
64
Chapter 8
The Study of LP/QP Optimization Circuit
8.1 Theory of LP/QP Optimization Circuit
LP/QP optimization problem is used to minimize certain cost function (linear or quadratic) under
both equality and inequality constraints. This section will review the theory of solving LP/QP
optimization using analog circuit. Also, the implementation of the optimization circuit using
practical circuit component will be discussed. The general formulation of a LP optimization
problem is shown below:
min 𝑐 𝑇 𝑉 (8.1a)
𝑠 .𝑡 . 𝐴 𝑒𝑞
𝑉 = 𝑏 𝑒𝑞
(8.1b)
𝐴 𝑖𝑛𝑒𝑞 𝑉 ≤ 𝑏 𝑖𝑛𝑒𝑞 (8.1c)
where 𝑉 is a column vector, which is the optimization variables, 𝐴 𝑒𝑞
and 𝑏 𝑒𝑞
enforce the
equality constraints of the optimization variables. 𝐴 𝑖𝑛𝑒𝑞 and 𝑏 𝑖𝑛𝑒𝑞 enforce the inequality
constraints of the optimization variables. Both inequality and equality constraints determine the
feasibility set of the optimization variable.
The general QP optimization problem can be formulated as below:
min𝑉 𝑇 𝐻𝑉 + 𝑑 𝑇 𝑉 (8.2a)
𝑠 .𝑡 . 𝐴 𝑒𝑞
𝑉 = 𝑏 𝑒𝑞
(8.2b)
𝐴 𝑖𝑛𝑒𝑞 𝑉 ≤ 𝑏 𝑖𝑛𝑒𝑞 (8.2c)
where 𝑉 is a column vector, which is the optimization variables; 𝐻 determines the quadratic
cost term of the cost function; 𝑑 𝑇 determines the linear term of the cost function. 𝐴 𝑒𝑞
and 𝑏 𝑒𝑞
enforce the equality constraints of the optimization variables. 𝐴 𝑖𝑛𝑒𝑞 and 𝑏 𝑖𝑛𝑒𝑞 enforce the
65
inequality constraints of the optimization variables. Both inequality and equality constraints
determine the feasibility set of the optimization variable. The general idea is that the above
formulation of LP or QP optimization problem can be converted and solved by an analog circuit.
After the circuit is properly built, the answer of the optimization circuit can be easily found by
reading the output voltages from the circuit (Figure 8.1, 8,2).
Figure 8.1: Converting constrained LP problem to LP analog optimization circuit.
Figure 8.2: Converting constrained QP problem to QP analog optimization circuit.
The detail proof of the validation of the LP or QP circuit solver can be found in the previous
research(60). The general understanding of how this type of circuit work is intuitive for the LP
66
problem. Each row of circuit for the equality constraint will force the voltage on each output port
to obey the equality constraint in the original optimization problem. Similarly, each row of circuit
for the inequality constraints will force the output voltage to obey the rules of inequality constraints.
The ideal diode is used to force the inequality property. Therefore, the output voltages existing on
the circuit will automatically bounded by the feasibility set of the original problem. With the drive
of the cost circuit, only smallest value of voltage output will be on the circuit. And thus, this circuit
solves the LP optimization problem. However, the QP optimization circuit is not easy to be
described in an intuitive way. The precise research provides the detailed proof of the equivalence
between the quadratic optimization problem and the analog optimization circuit. Another thing
need to be noticed is that, unlike the mathematical formulation of the algorithm solving the
optimization problem, the analog optimization solver has its own limitation. For example, the
optimization problem must be convex to be solved by the circuit. Also, since the resistance value
of a resistor is always positive, each element in the constraint matrix must be non-negative. For
the quadratic optimization problem, the quadratic cost matrix must be positive definite with strictly
diagonal dominant elements. Though it seems that there seem many restrictions before solving an
optimization problem using analog circuit. It turns that most problem that we are interested in from
the real application can be easily transformed to satisfy the above requirements.
As we mentioned above, the optimization circuit structure was initially designed using
resistors array. Therefore, only one specific optimization problem can be solved by the circuit.
However, the general optimization solver will have more applications than one can only solve one
specific problem. Luckily, memristor can be considered as a variable linear resistor. Therefore,
memristor can be used in this analog optimization circuit as a reconfigurable device to change the
parameters of the circuit. Thus, the memristor-based analog optimization circuit can be considered
67
as a general optimization solver (as shown in the Figure 8.3). Similar reconfiguration property can
be also achieved by switching resistors or switching capacitors. However, the area of the switching
resistors can be huge than a single memristor device. Also, the resistance value of the switching
resistors cannot change continuously because of the switching MOSFET. Therefore, memristors
can designed scalable for a large size analog optimization solver in this case.
Figure 8.3: Schematic diagram for memristor-based analog LP/QP optimization circuit.
68
The sizes of the optimization circuit and memristor crossbar circuit depend on the
optimization problem that we are interested in. Since we proposed to build a general optimization
solver using analog circuits approach. We choose LP and QP problem with small size as a
demonstration. In the small size problem testing, the LP problem can be mapped to a 4*7 crossbar
structure and the QP problem can be mapped to a 3*3 crossbar structure. In the circuit simulation,
as the memristor model is not available in the software, we use a simple resistor model to replace
with memristor for verify the feasibility of the circuit. Both the circuit simulation and the
MATLAB simulation demonstrate the feasibility of the analog optimization solver. It is our
hypothesis that the experiment result will not be deviated too much from our simulation. The
memristor crossbar circuit-based optimization solver will be built to test if the experiment result
meets our expectation. Then we will move on the real case problem of control algorithm using
optimization solver for mobile robotics. In the real-world scenario, the accuracy of the circuit will
mostly depend on the tuning accuracy of memristors. It is our hypothesis that the accuracy of the
computing result meets the requirement of robotic control application using our memristors. Since
the robotic system has certain robustness, it can tolerate inaccuracy of the control output to some
extent. On the other hand, since our memristor can yield more than 7 bits number of states, the
control algorithm can be easily mapped on the memristor crossbar circuits. To testify the feasibility
of this goal, the robotics simulation of a real flying robot with optimal controller with control
barrier function constraint will be conducted and the corresponding controller will be transfer to a
specific quadratic optimization problem. A circuit simulation will be used to test the feasibility of
the analog optimization solver for this application.
To further test the performance of our computing platform, both the latency and the power
consumption will be directly measured to compare the performance between our method and the
69
traditional digital platform. As stated previously, it is our hypothesis that the computing efficiency
will be higher than the traditional digital platform. Based on our previous analysis, the latency of
our proposed circuit should be in the range of microsecond due to the parasite capacitors in the
printed circuit boards. The energy consumption should be in the range of milliwatts based on the
previous research. Though the theoretical analysis shows the promising result of our platform, it
is necessary that we can measure the computing platform directly and testify our hypothesis. Since
there are still a lot of unknown factors in the memristor-based optimization solver, the experimental
result will be more convincing.
Above is the minimum set of constructions and experiments to test our hypothesis. If we have
time and money left over after finishing these, what we can try to do is to build an optimization
co-processor on a single chip. The previous research we proposed to do mainly serve as a proof-
of-concept demonstration of the memristor crossbar array based linear and quadratic optimization
solver. As commonly used algorithms, both linear and quadratic optimization have wide
applications in many different fields. And there is no doubt that the on-chip integration technique
will boost the impact of our proposed memristor-based analog optimization solver. The computing
performance, including the power consumption and latency, will be significantly improved using
the on-chip integration technology. And we can also explore the application of this technique on
other fields, such as edge computing, micro-drones, and autonomous vehicles.
8.2 The LP/QP Optimization Circuit Simulation
In the primary work, the simulation of analog circuits solving LP and QP has been conducted as a
proof of concept. The MATLAB simulation can be used to testify the correctness of the circuit
design. At this primary stage, only small size of the LP and QP problem is chosen. As we stated
70
before, the size of the optimization problem will not affect our simulation result. The LP problem
we chose to simulate is as followed:
min 𝑓 (𝑥 ) = 𝑓 𝑇 𝑥 (8.3a)
𝑠 .𝑡 . 𝐴 𝑒𝑞
𝑥 = 𝐵 𝑒𝑞
𝑎𝑛𝑑 𝐴 𝑖𝑛𝑒𝑞 ≤ 𝐵 𝑖𝑛𝑒𝑞 (8.3b)
𝑤 ℎ𝑒𝑟𝑒 𝑓 = [
1
1
0
0
] 𝐴 𝑖𝑛𝑒𝑞 =
[
5
12
1 0 2
5
2
1 0 0
0 1 0 0
1 0 2 0
]
𝐵 𝑖𝑛𝑒𝑞 =
[
35
12
35
2
5
5
]
𝐴 𝑒𝑞
= [
1 0 1 0
0 1 0 1
] 𝐵 𝑒𝑞
= [
0
0
]
The linear programming problem was realized by Hopfield and Chua(67, 68). The problem
has already been transformed to the mathematical formation that can be solved by analog circuit.
71
Figure 8.4: the circuit simulation solving a LP problem using SPICE software.
Problem Type Result
MATLAB simulation result X = [-5 -5 5 5]
Circuit simulation result
V = [-5.0081229 -5.0233893
5.0081229 5.0233893] * 0.01
Table 8. 1: Simulation shows that LP Circuit has the same result with MATLAB simulation
The QP problem we chose to simulate is as followed:
𝑚𝑖𝑛 𝑓 (𝑥 ) =
1
2
𝑥 𝑇 𝐻𝑥 + 𝑓 𝑇 𝑥
(8.4a)
𝑠 .𝑡 . 𝐴 𝑒𝑞
𝑥 = 𝐵 𝑒𝑞
𝑎𝑛𝑑 𝐴 𝑖𝑛𝑒𝑞 ≤ 𝐵 𝑖𝑛𝑒𝑞 (8.4b)
𝑤 ℎ𝑒𝑟𝑒 𝐻 = [
9 −1
−1 19
−1 −1
−1 −1
−1 −1
−1 −1
9 −1
−1 19
] 𝑓 = [
0
0
0
0
]
𝐴 𝑖𝑛𝑒𝑞 = [
1 1
1 2
0 0
2 0
1 0
0 1
2 0
0 2
] 𝐵 𝑖𝑛𝑒𝑞 = [
−7
−1
5
4
]
Since the mathematical proof is the same, the dimension of the optimization problem can be
easily scaled up. Both equality constraint and inequality constraint conditions are used in the
optimization problem formulation and circuit simulation. The inequality constraint conditions are
implemented using ideal diode model in the simulation. In the real-world scenario, the ideal diode
can be implemented using a comparator and an analog switch circuit. The simulation results show
that the computation result of the given LP and QP problems matches the result calculated using
the digital computer. And the accuracy of the analog computing result is within 0.67% in the case
of using the analog circuit solver with the equality constraint within 1% error.
72
Figure 8.5: the circuit simulation solving a QP problem using SPICE software.
Problem Type Result
MATLAB simulation result X = [-4.3333 -2.6667]
Circuit simulation result V = [-4.3314 -2.6648]
Table 8.2: Simulation shows that QP Circuit has the same result with MATLAB simulation
73
8.3 The Implementation of a Practical Optimization Circuit
8.3.1 Implementation of the Optimization Circuit with Practical Components
The LP/QP optimization circuit simulated in the previous section is used to verify the theory of
analog optimization solver proposed by Dr. Vichik(60). As shown in Figure 8.4 and Figure 8.5, the
negative resistor is defined using ideal negative resistor model without nonlinear effect. And the
ideal diode is defined with zero forward bias, zero on resistance, and infinite off resistance.
However, those characteristics cannot be easily achieved in the real circuitry. In addition, the
resistance in the previous circuit is chose arbitrarily without considering the practical limitation of
memristor device. In practice, the memristor can be tuned within a certain range of resistance. In
this case, let’s assume the memristor can be programmed from 1k Ohm to 10k Ohm. Therefore,
the circuit needs to be designed to not only satisfy the requirement of the resistance range of the
memristor, but also remain the same result with the target optimization problem. Another limitation
of the memristor is that the voltage applied on the memristor cannot be higher than a certain range.
In the case of the memristor discussed in the previous section, the voltage across on the device
need to be limited to 300mV .
To satisfy the above requirement, let us investigate how to engineer the circuit parameter to
meet the resistance boundary of memristors. From the theory of the analog optimization circuit, it
can be easily derived that the result will not be changed when both the positive resistor and
negative resistor change the same amount of resistance in one row. This unique property allows us
to manipulate the parameters of the circuit easily. In addition, the voltage sources in both equality
constraints and inequality constraints can be scaled by the same amount of factor without change
the ratio between the individual element of the result vector. However, the result voltage needs to
be multiplied by the same factor to get the answer of the original optimization problem.
74
Other practical considerations are negative resistors and ideal diodes. As shown in Figure 8.6,
the negative resistor was implemented using operational amplifier (OP07) with different values of
resistors. On the other hand, the ideal diode was implemented using comparator (LM311) and
analog switch circuit (DG201). The detail analysis of practical implementation of negative resistor
and ideal diode can be found in the previous research(60).
Figure 8.6: Schematic design of the optimization circuit using off the shelf components.
For understanding the analog optimization circuit from experimental perspective, a bread
board version of the analog optimization circuit was built and tested (Figure 8.7). We chose the
optimization problem from equation 8.3 as a demonstration. In this experiment, only batteries are
used to serve as power supply to maximize the signal to noise ratio of the circuit. Since the
memristor requires lowering the voltage across on the electrode. The voltage sources of both
equality constraints and inequality constraints are limited to tens of millivolts. This value of
75
voltage is hard to be detected in the bread board version of testing. The voltage sources were
implemented using 16-bit DACs circuit (MCP4725) with a microcontroller. A voltage follower
circuit is needed to provide a proper isolation between the DAC and the optimization circuit.
Figure 8.7: A bread board version of the analog optimization circuit
As shown in the Figure 8.7, the experimental result (directly measured using multimeter) of
the optimization circuit matches both the circuit simulation and the MATLAB simulation, as we
expected. Since our goal is to build analog computing chip based on this optimization circuit theory,
this simple experiment provides some useful insight of the circuit before we start design our chip
solution. First, we learned that the circuit can be very sensitive the match between the negative
76
resistors and positive resistors. The resistors chose in the experiment were with 1% error. However,
the circuit cannot give proper result without carefully calibrating the value of negative resistors.
This is very important to the following IC design work since the resistance of IC devices will
fluctuate due to the surrounding environment temperature(69). Another thing that we learned is
that the equality constraint that determine the augmented variable can also affect the result very
easily. This is important since very likely most of the original optimization problem in practice
will have negative parameters in the constraint. That will require a mathematical transformation to
turn these negative parameters to positive parameters. After this process, augmented variables as
well as corresponding equality constraints will be introduced. Therefore, the matching between
the positive resistors and the negative resistors in these equality constraints are very important the
answer. And it can be very sensitive to be tuned. From the experimental result shown in the Table
8.3, it can be noticed that the absolute value between V1 and V3, V2 and V4 is not the same. And
this is due to the unbalance between the negative resistors and positive resistors in the first two
equality constraints. Another minor detail is that the operational amplifier must work properly in
the linear region. A poor calibrated optimization circuit can force the operational amplifier to work
in the saturation region, which will generate wrong results. This also needs to be considered when
designing the IC version of the negative resistors.
Problem Type Result
MATLAB simulation result X = [-5 -5 5 5]
Circuit simulation result
V = [-50.081229 -50.233893
50.081229 50.233893] mV
Experimental result V = [-50.4 -48.8 50.0 49.8] mV
Table 8.3: Simulation result and experiment result of the analog optimization circuit.
77
Figure 8.8: Full schematics of the design of the PCB version of the analog optimization solver.
To further boost the signal to noise ratio of the analog optimization circuit, a print circuit board
version of this circuit is designed and built. Since the connection of the bread board version analog
optimization circuit is not very stable. The PCB version will be easily tested and transferable to
other experiments. For the simplicity, the ideal diode is eliminated in this circuit. Since the active
diode is essentially an on/off switch depending on whether the corresponding constraint is active
or not. This print circuit board version of the optimization circuit is to further validate the
feasibility the memristor crossbar-based optimization circuit. eq 8.8 shows the schematic design
of the PCB version. The board was also tested using similar setup as the bread board version. All
the resistors in the PCB version of analog circuit optimization board were selected have a very
high accuracy (0.001%) to guarantee the performance.
78
Figure 8.9: Experimental set up of the PCB version of the analog optimization solver.
8.3.2 Implementation of the Memristor-Based Optimization Circuit
To further prove the feasibility of using memristor-based crossbar structure to construct the
optimization circuit, an analog optimization circuit with memristors was designed and built. The
memristors are wire bonded on the chip carrier and connected on the PCB(70). This time, we chose
a small scale QP problem for the demonstration. The QP problem is formulated as below:
𝑚𝑖𝑛 𝑓 (𝑥 ) =
1
2
𝑥 𝑇 𝐻𝑥 + 𝑓 𝑇 𝑥
(8.5a)
𝑠 .𝑡 . 𝑥 1+ 2 ∗ 𝑥 2 ≤ −6 (8.5b)
79
𝑤 ℎ𝑒𝑟𝑒 𝐻 = [
6 −1
−1 1
] 𝑓 = [
0
0
]
The SPICE simulation was conducted again to make sure the correct behavior of the solver.
Figure 8.10: SPICE simulation of the analog optimization circuit solver.
To be noticed, the voltage value of the constraint’s voltage sources was tuned to make sure the
voltage across on the memristor will not be larger than the threshold voltage, which is around
500mV in our case. The voltage source is set to 0 volts during the connection and disconnect of
the memristor to guarantee that the device resistance state will not be changed. The experimental
result is consistent with the results from both the digital solver and the circuit simulation. Therefore,
in this section, we demonstrated the feasibility of memristor-based analog optimization solver. And
we also proved that the memristor is essential for designing and building a general analog
optimization solver. In the next section, we will discuss the real application based on this technique.
It is necessary for us to carry a circuit experiment first before designing the IC chip.
80
Problem Type Result
MATLAB simulation result X = [-0.2069 -0.8966]
Circuit simulation result
V = [-2.0666003mV
-8.9666533mV]
Experimental result V = [-2mV -9mV]
Table 8.4: Simulation result and experiment result of the analog optimization circuit with
memristors.
Figure 8.11: Experimental set up of the PCB version of the analog optimization circuit with
memristors.
81
Chapter 9
Application of Memristor-Based LP/QP Solver on Controlling MAV
9.1 Introduction of the Control of MAV
This part of the thesis will focus on discussing the application of memristor-based analog linear
and quadratic programing solver in the mobile robot application(60, 63, 71). The objective of this
work is to investigate on the memristor-based hybrid computing platform for micro-unmanned
vehicle to achieve new functionality, unprecedented performance, and energy efficiency(38, 64,
72-77). As a continuation of the previous work in this thesis, this section will focus on discussing
a similar hybrid computing platform with the sensor fusion of inertia sensors and motion control
parts, the equivalent to cerebellum, in analogue circuits enabled by memristors, and the
programming, vision and high-level decision-making parts, the equivalent to cerebrum, in Si
digital circuits. Unlike implementing a simple PD controller and a one-dimensional Kalman filter
circuit, this section will discuss how the memristor-based analog optimization solver circuit can
boost the performance for micro air vehicle (MA V). Both the analog circuits and the digital circuits
will be integrated into a hybrid computing platform (Figure 9.1).
Currently, control system for MAVs is mostly based on simple linear PD control and their state
estimation relies on an external indoor motion capture system(47, 78). Consequently, most existing
MA Vs are controlled by human operators. However, autonomous micro drone or MAV need to not
only follow the desired path or waypoints but also actively avoid collisions with the environment
and obstacles(79-81). Especially, if we want to deploy MA Vs in military applications (e.g., fly
through a cluttered forest building to help military troops spy on potential threats), effective
obstacle avoidance at high-speed navigation is a critical feature. The key challenge here is how to
integrate effectively real-time image processing and high-level decision-making, which are very
82
demanding on computation, with the motion control loop, which is very demanding on response
time(82-84). Current computer board with such computing power is too large and consumes too
much energy for a micro robot with a very limited on-board power source and space. Autonomous
micro drones that fit in the palm of your hand will need to optimize their embedded computer
hardware to maximize the computational efficiency and speed under the limitation of size, weight,
power, and energy consumption.
Figure 9.1: Hybrid computing architecture for the MA V .
83
To solve the problem, we should learn from the nature. The control of the human body is
enabled by the highly sophisticated ultralow power computational capability of the human brain.
The human brain consists of the cerebrum, the cerebellum, and the brainstem. The cerebrum is a
major part of the brain in charge of vision, hearing, and thinking, while the cerebellum plays an
important role in inertia sensor fusion and motion control. On one hand, tasks carried by the
cerebellum are much simpler than those carried by the cerebrum; on the other hand, tasks carried
by the cerebellum typically require much faster response than those carried by the cerebrum.
Through this cooperation of the cerebrum and the cerebellum, the human brain can conduct
multiple tasks simultaneously with extremely low power consumption. Inspired by how brain
works, one possible solution to break the bottleneck of increasing complexity in UA V is a hybrid
analog-digital computation platform, in which the digital component runs the vision and high-level
algorithm (cerebrum), while the analog component is responsible for inertia sensor fusion and
motion control (cerebellum). Due to the nature of analog computing, the information can be stored
and processed at the same location simultaneously in analog circuits, and no analogue-to-digital
conversion (ADC) or digital-to-analog conversion (DAC) are needed, thus the computing latency
and energy consumption are reduced dramatically. On the other hand, analog circuits lag behind
digital circuits in precision, which has prevented the adoption of analog computing. Just like
cerebellum, inertia sensor fusion and motion control are very demanding in response time, with
relatively soft requirement on precision. Therefore, analog circuits fit extremely well to implement
the “cerebellum” of UAV . In the previous section of this thesis, we have demonstrated a simple
“cerebellum” of a two-wheel self-standing car using this analog-digital computing platform(63).
In this work, a continuous Kalman filter and a proportional-derivative (PD) controller were
implemented using memristor-based analog circuits, while the programming circuits were
84
implemented using standard Si digital circuit mentioned above. Great improvements in
performance and energy consumption over existing technologies have been achieved.
While similar or more improvements are expected, MAV is more complex than the simple
two-wheel car, therefore, inertia sensor fusion with more degree of freedoms (DOFs) and a much
more powerful control algorithm based on optimal control method will be used in the proposed
work. The number of DOFs increases from one to six of free-floating base dynamics. The robot
orientation will be estimated using an on-board inertial measurement unit (IMU) sensor embedded
on the MAV. In combination with the continuous Kalman filter, that we just demonstrated in the
previous work, we can get a good estimation of orientation and angular velocity, which are critical
for balancing control of a drone. Therefore, our previous memristor-based analogue Kalman filter
will be scaled up from 1 DOF to 3 DOFs for orientation and 3 DOFs for position.
An effective autonomous MAV needs to navigate with high agility around cluttered and
dynamic environment. Obstacle avoidance is one of the most critical capabilities for such robots.
Therefore, the control system needs to address simultaneously stability (i.e., keeping the drone
balanced) and safety (i.e., enforcing collision free constraints with static and dynamic obstacles).
Optimal control algorithm can help address these challenges while optimizing energy consumption
for the robot maneuvers. However, optimal controller is formulated essentially by a constraint
optimization problem, which requires a high computing power. For the purpose of controlling
motion of a micro robotic system, which doesn’t have a power computer onboard, there is still a
big technology gap between current computation capability and the demand with constrains on
power and space. Therefore, to guarantee and improve the performance of the optimal controller,
it is critical to frog leap the computing platform to perform this specific algorithm effectively with
the minimum power consumption. The optimal controller is based on solving real-time quadratic
85
and linear programs optimization problems. As we discussed earlier, the analog optimization
solver circuit can be used to solve the linear and quadratic optimization problem in real time. In
addition, as the state of the MAV will change during the flight, a general optimization solver circuit
need to be built to control robot over time. Therefore, the analog QP/LP solver circuits will be
enabled by a memristor circuit, which offers the capability of reconfiguring the circuit parameters.
This proposed computing architecture will solve the current issue of controlling a MAV.
This project requires cross-functional teams’ collaboration from different research groups,
including device design, fabrication, characterization and optimization, mixed signal integrated
circuit design and testing, control algorithm design, and system integration and validation. In this
thesis, I will focus on discuss about the software-hardware co-design (how to transform a control
algorithm to an analog circuit solver), overall chip architecture, and device optimization.
9.2 Robotics computing system design
In this section, we will introduce the system level structure of the computing platform of the MA V .
As shown in the above Figure 9.2, both Kalman filter algorithm and controller algorithm will be
implemented using the memristor-based analog computing chip. The details of the controller
algorithm and how it can be transferred to memristor-based optimization circuit will be discussed
in the next section. In this way, the heaviest computing task of the algorithm flying the MA V will
run on the analog solver. For the rest of the computing tasks, including the sensor reading and data
transformation, will be implemented on the microcomputer on board.
Essentially, the analog computing chip will focus on the motion control algorithm for the MA V ,
which is very similar with the inverted pendulum robot that we introduced in our previous work.
However, at this time, instead of having an analog PD controller, an optimization-based controller
86
will be implemented using the memristor-based analog optimization circuit to gain better
performance. The Kalman filter will be used in the similar way as we did in the inverted pendulum
robot project. But this time, there are three freedoms of the MA V , instead of one in the inverted
pendulum. To be noticed, for the simplicity of this project, only linear Kalman filter will be
implemented for the analog circuit. Though the extended Kalman filter shows better performance
when the MA V flies in an aggressive way, it is very hard to be implemented using analog circuit.
Also, the main purpose of this project is to verify the feasibility of the memristor-based analog
optimization solver in the micro-robot applications.
Figure 9.2: Robotic computing system design diagram.
9.3 Software Hardware Codesign
In this section, I will introduce the software hardware codesign for implementing the optimization-
based controller to an memristor-based analog optimization solver. First, I will briefly discuss what
87
the controller architecture looks like and how the control problem is mathematically formulated as
a quadratic optimization problem. Then I will focus on how to transfer a mathematical optimization
problem to a memristor-based analog optimization solver. I will also discuss how to optimize the
memristor-based analog optimization solver based on the requirement of the engineering project.
This is a novel way to design both hardware and software. Furthermore, we also try to bring the
emerging memristor technology into this project. So, there are many requirements and
consideration when we try to put everything together in one piece. The design philosophy is quite
different for each team, and thus the work is quite challenging. The algorithm design team used to
work pure on the digital side. However, for the analog circuit, the precision is very limited
compared to the digital computer. Therefore, certain approximation and simulation must be done
to make the algorithm fit the analog circuit. For the integrated circuit design team, they used to
work mostly on the simulation with mature modelling of devices. However, for the memristor
device fabricated by the device team, there is no such model currently. And the device itself has
many limitations, such as limited number of states, easily disturbed by large voltage or current. So,
a thorough system design and validation work needs to be done to make everything work.
9.3.1 Control Problem Formulation
In this project, an optimal control problem is formulated, and it will be solved by the memristor-
based circuit that represents a quadratic program optimization solver. To make the controller being
solved in real time as a feedback control method, an adapting control algorithm based on a
linearized dynamics of the robotic system is used in this project. This method will guarantee that
the optimal controller can be formulated as a convex quadratic programing optimization problem.
In this stage of this project, to simplify the optimal control method and the complexity of the
88
optimization solver, the control barrier functions (CBF) method is used to address the obstacle
avoidance constraints(85-88). This approach uses a single linear constraint to guarantee the safety
critical constraints for an infinite horizon. More importantly, the CBF constraint is embedded with
the system dynamics. Through this way, the set of enforcing the constraint in the real robot
hardware is feasible. In contrast, the conventional MPC approach will need to enable collision free
constraints and system dynamics constraints simultaneously for every time step in the prediction
horizon of the controller. Therefore, the size of the conventional MPC controller will grow
exponentially with the number of prediction horizon and the number of obstacles. However, the
CBF based method only results in a single constraint for each obstacle without considering the
length of the prediction horizon. Through this method, both the size of the mathematical
optimization problem and the complexity of the corresponding analog optimization solver is
simplified significantly without losing the essential functionality of the controller for the MAV .
The position controller is implemented using linear quadratic regulator (LQR) controller with
both control Lyapunov function and control barrier function constraints. The LQR controller
determines the position of the drone. The desired trajectory is defined by 𝑟⃗
𝑑 and the actual
trajectory of the drone is 𝑟⃗ :
𝑥⃗
𝑑 = [𝑟⃗
𝑑 𝑟⃗
𝑑 ̇ ]
𝑇
(9.1)
𝑥⃗ = [𝑟⃗ 𝑟⃗
̇ ]
𝑇
(9.2)
𝑥⃗
𝑒 = 𝑥⃗
𝑑 − 𝑥⃗ (9.3)
𝜇 ⃗
𝑑 = 𝐾 𝑙𝑞𝑟 𝑥⃗
𝑒 + 𝑟⃗
̈ 𝑑
(9.4)
The 𝑥⃗
𝑒 is the feedback error of the robotic system. The 𝜇 ⃗
𝑑 is the control output with 𝐾 𝑙𝑞𝑟 as
the LQR gain and an additional feedforward term 𝑟⃗
̈ 𝑑 for fast response for the drone. To implement
the safety boundary introduced before in this section, the safter critical optimizer applies a
89
minimally deviant correction to the LQR output based on user-defined constraints. To achieve the
constrained stabilization of the system, the optimizer is based on the combining of control
Lyapunov and barrier function. The system can be defined by the following optimization problem:
min
𝜇⃗ ⃗⃗
‖𝜇 ⃗ − 𝜇 ⃗
𝑑 ‖
2
2
(9.5)
𝑠 .𝑡 . 𝐴 𝑐𝑙𝑓 𝜇 ⃗ ≤ 𝑏 𝑐𝑙𝑓 (9.6)
𝐴 𝑐𝑏𝑓 𝜇 ⃗ ≤ 𝑏 𝑐𝑏𝑓 (9.7)
𝐴 𝜇 𝜇 ⃗ ≤ 𝑏 𝜇 (9.8)
Where the 𝐴 𝑐𝑙𝑓 𝜇 ⃗ ≤ 𝑏 𝑐𝑙𝑓 is the control Lyapunov function(89, 90), which guarantees the
stability constraint of the robotic system. The 𝐴 𝑐𝑏𝑓 𝜇 ⃗ ≤ 𝑏 𝑐𝑏𝑓 is the control barrier function, which
guarantees the safety constraint of the system. The 𝐴 𝜇 𝜇 ⃗ ≤ 𝑏 𝜇 defines the saturation of the control
output of the system, which is the maximum throttle of the propellers on the drone. Since this
problem is a convex quadratic optimization problem, it can be implemented using the memristor-
based analog optimization circuit. The detail of the transformation between the mathematical
problem and the practical circuitry is discussed in the next section.
9.3.2 Analog Optimization Solver Design
As shown in the Figure 8.1, 8.2, the optimization problem formulated in the previous section can
be implemented using the circuit structure. Several mathematical transformations and engineering
approximations need to be considered to design a proper optimization circuit structure.
First, the linear term in the cost function needs to be removed. The optimization circuit with
only constraints circuitry will inherently solve an optimization circuit with a quadratic cost
function, which is defined as:
90
𝑄 = 𝑄 𝐴 = 𝑑𝑖𝑎𝑔 (1
𝑇 𝐴 ) − 𝐴 𝑇 𝑑𝑖𝑎𝑔 (1
𝑇 𝐴 )
−1
𝐴 (9.9)
where 𝐴 is the constraint matrix of both equality constraints and inequality constraints, 𝑄 𝐴 is
the inherent quadratic cost of the circuit with only constraints circuits. Then, by adding redundant
constraints, the inherent cost matrix can be adjusted to have same parameters with the quadratic
cost function that we are interested in.
𝑄 = 𝑄 𝐴 + 𝛼 𝑖𝑗
∆𝑄 𝑖𝑗
(9.10)
Since the mathematical insights are beyond the scope of this thesis, the detail mathematical
derivation and explanation can be found in the previous research(60). Removing the linear term
will simplify the process without considering augmenting the linear term. By changing the variable
of the original optimization problem, the optimization problem can be reformulated as below:
min 𝑢 ∗
2
(9.11a)
s.t 𝐴 𝑢 ∗
≤ 𝐵 +
1
2
∗ 𝐴𝑓
(9.11b)
where 𝑢 =𝑢 ∗
+ 𝑢 𝑑 = 𝑢 ∗
−
1
2
∗ 𝑓 . Second, the resistance values need to be rescaled to match
the memristor resistance value. Since the memristor tunable range is limited by the device physics,
the parameter of the optimization circuit needs to be designed to meet this requirement. The
memristor resistance value range we chose is from 700 Ohm to 3000 Ohm for the tunable range.
This range of resistance of memristor can be tuned both fast and reliably. From the theory of
optimization circuit, the equation of the constraint circuit is as follows.
[
1
𝑅 1
…
1
𝑅 𝑛 ][
𝑉 1
…
𝑉 𝑛 ] = 𝑏
(9.12)
Where, the negative resistor value is −
1
∑
1
𝑅 𝑛 , and the value of constraint voltage source is
𝑏 ∑
1
𝑅 𝑛 .
Therefore, by adding a scaler from both sides of the equation (9.12). The constraint conditions do
91
not change. Through this way, the circuit parameter can be rescaled to any value matches the device
parameters if the ratio between the lowest resistance value and the highest resistance value in the
circuit does not change.
Third, the redundant constraint needs to be added to solve the original problem. The redundant
constraint is used to push the inherent cost function of the optimization circuit with only constraints
circuit to a circuit that can solve another optimization problem. From the equation (9.10), it tells
that the redundant constraint circuit parameters need to be calculated based on the constraint
conditions and the cost function. However, this will complicate the optimization circuit
significantly since the redundant constraints circuit parameters need to be calculated each time
when the circuit parameters changes. This will add a significant overhead to the optimization
circuit and therefore it is hard to be directly implemented in the robot for real time application.
The engineering solution here is to make approximation of the original optimization problem to
eliminate this overhead issue. Since the cost matrix in this project is only a unit matrix. The
parameters of the cost function do not change. This property allows us to manipulate the cost
function easily. For example, if the cost function is multiplied by a scalar, the answer of the
optimization problem doesn’t change. In addition, the cost matrix is a diagonal matrix with zeros
in the off-diagonal elements. Therefore, if the diagonal elements in the approximated cost matrix
are significantly large compared to the off-diagonal elements, then the approximated cost matrix
can be roughly considered as a diagonal matrix. And thus, the answer of the optimization problem
does not change too much. And the higher the diagonal elements of the approximated cost matrix
are, the closer the approximated answer to the true answer will be. Through this way, the redundant
constraints can be added to push the diagonal elements of the cost function to very large so that
the off-diagonal elements from the inherent cost matrix defined by the constraint condition is
92
negligible. Therefore, this approximation can not only remove the overhead of adding redundant
constraint, but also provide very accurate results to the original optimization problem.
Finally, the value of the voltage sources and the resistance values in the redundant constraint
need to be properly adjusted to match the applicable voltage requirements on memristors. Since
the conductive filament inside the memristor is moved by the applied electric field, larger electric
field will change the resistance state of the device. For the device I used in this project, the applied
voltage across the memristor cannot be larger than 500 mV . Therefore, the voltage across the
memristor in the optimization circuit needs to be designed to meet this requirement(Figure 9.5).
From the equation (9.12), we notice that the answer can be rescaled when the constraint voltage is
rescaled as the same scalar. And the voltage across on the memristor will be rescaled as well.
Through this method, the voltage across on the memristors can be designed to meet this
requirement. Another way to tune this analog optimization circuit to meet the voltage requirements
is to increase the resistance value of the redundant constraints. This will make the approximation
weaker but at the same time it can lower the current flow into the memristors. Therefore, the
voltage across on the memristor will be lowered.
After all the design requirements and approximations discussed, the optimization circuit can
be designed in Figure 9.3. The basic circuit structure is implemented in the MATLAB Simulink to
be implemented in the controller simulation so that it can solved the quadratic optimization
problem for the controller. It is very interesting that we developed this analog optimization solver
in the digital simulation and the result turns to be as fine as the digital solver. As shown in the
Figure 9.4, the results from digital solver and analog solver are almost identical. Theoretically, the
result should be the same between the analog solver and the digital solver.
93
Figure 9.3: Simulink model of the analog optimization circuit solver.
However, the practical circuits have many limitations. And these limitations will cause the
error between the true solution, which is solved by the digital solver, with the solution from the
analog optimization circuit. To keep improving the performance of the analog solver, the
94
limitations of the analog circuit-based solver need to be discussed. First, the constraint voltage
sources have quantization error. In the digital solver, the constraint can be up to a 64-bit binary
Figure 9.4: (a and b) Comparison between the results from analog optimization solver and digital
optimization solver.
number. However, the resolution of the DACs cannot be 64 bits. For practical concern, 8-bit DACs
were designed to be the constraint voltage sources. Second, the tunable parameters of the
memristors and negative resistor also have a practical limitation. 7-bit switch resistors are used to
implemented on the negative resistor. And 6 memristors are used in the constraint circuit. Similarly,
the switch resistor array and the memristors can also have quantization error. Besides the
memristor cannot be tunned with very high precision since it will add more time consumption.
Therefore, in this case, memristors were tuned to be within 20 Ohm error in the optimization circuit
(As shown in the Figure 9.6). After considering all the noises and limitations of the practical analog
circuits, the analog optimization solver still provides similar results with the digital solver with
much higher speed (In the range of nanosecond depending on the RC delay).
95
Figure 9.5: V oltage applied on memristors during the control simulation period
Figure 9.6: Resistance values of memristors during the control simulation period
96
9.3.3 Chip Architecture
In this project, eventually all the circuit components will be integrated together to put on the MA V
to gain better performance. In the previous inverted pendulum robot system, the hybrid computing
platform is partially proved using the PCB prototype built with commercial evaluation boards and
discrete components. Even though the preliminary work shows improvement compared to the
digital computing platform. A MA V requires extra orders of magnitude enhancement on the energy
efficiency and latency. Integrated circuit chip will have much smaller RC delay compared to the
PCB solution. Since the speed of the computation for the analog circuit depends on the RC delay.
This will further increase the performance of the analog computing circuit. In addition, unlike the
inverted pendulum robot, the MA V is a very small robotic platform, which is called a microrobot.
Therefore, the weight of additional circuit that it can carry is very limited. Therefore, as shown in
Fig. 9.7, in this project, we will eventually implement all the functional blocks (except the
memristor devices), such as tuning circuits, microcontrollers, memories, Kalman filter, and PD
control, on an integrated circuit (IC) chip that is fabricated by a dedicated semiconductor foundry
and then fabricate memristor devices on the top of the chip in the university. The target size and
weight for the electronics should be less than 20×20×10 mm3 and 10 g, respectively.
Figure 9.7: Integrating everything on one chip.
97
To ensure the success of integration of the whole system, we use a divide and conquer
technique to design and verify the chip from step by step. In the current phase of this project, only
analog optimization circuit solver is designed. For the analog optimization circuit solver circuit,
the core circuit structure is the same circuit structure discussed in the last chapter.
Figure 9.8: Memristor-based analog optimization chip architecture.
98
There are three 8 bits ADCs in the reading circuit for reading the result of analog optimization
solver. The number of bits of the ADC is determined by the control simulation we introduced in
the last section. There is no apparent degradation in the control performance when the quantization
error of the 8 bits ADCs is introduced to the system. There are thirteen 8 bits DACs in the analog
optimization solver as constraint voltage sources. Similarly, the number of bits of DACs are
determined by control simulation by observing the system performance of mobility. Two 7 bits
switching resistors were used in the negative resistors. The rest of the negative resistors are fixed
values therefore they can be implemented using conventional electronics components. As
discussed before, there are six memristors in total in the current version of the optimization circuit.
The memristors are connected to CMOS circuit with transmission gates as switches buried under
the die. Aluminum electrode will be exposed out on the chip to fabricate these memristors. The
detail of how to package memristors and the chip together will be introduced in the next section.
In this primary phase of this project. The tuning circuit will be implemented using off the shelf
component current DAC outside the chip. This version of chip will mainly focus on testing the
optimization circuit solver and analog digital interface design. Also, since the memristor devices
are still under optimizing, the tuning spec of the memristor need to be tested further.
9.3.4 Device Design and Characterization
The memristor devices used in the analog optimization solver chip has a similar structure with
devices that we present before in the previous chapters. However, since devices will be fabricated
on the mixed signal integrated circuit chips. The device fabrication process will be different from
the previous process in this thesis. The details on the new device fabrication process and challenges
will be covered in the next chapter. On the other hand, the device characterization is an extension
99
of our previous work. In the inverted pendulum robot project, memristors is used as a tunable
resistor in both Kalman filter and PD controller. According to our previous analysis, the resistance
values of memristors only need to be tuned once and then the robot can rely on these parameters
without further tuning procedure, unless the environment changes. However, as we discussed in
the previous section on the control problem formulation and analog optimization solver design.
The memristor needs to be tuned in real time while the MA V is flying. Therefore, an efficient
tuning method needs to be developed to satisfy this requirement.
Previously, the memristor was tuned by the voltage pulses provided from DACs. And the
compliant current is controlled by changing the gate voltage of the MOSFET serial with the
memristor. However, this method is redundant since, essentially, the resistance state of the
memristor is tuned by the current flow inside to the memristor. Therefore, instead of using voltage
pulses with controlled compliant current, a controlled current pulse can also tune the memristor’s
resistance state. In addition, the DAC designing on our chip in this project will be essentially a
current DAC with transimpedance amplifier to convert the controlled current to voltage. Therefore,
a current pulse will be easier to be implemented on chip. In addition, this current tuning method
design will simplify our hardware design for both memristor crossbar array and DACs.
As shown in the above Figure 9.9, the memristor can be tuned to multiple states using the
current pulse method also. The experimental result of the current pulse tuning method is very
similar to the voltage pulse tuning with compliance current. Here, 160 °C Al2O3 deposited
memristor device was tested using 1µA to 2000 µA current pulses with step current of 10 µA. The
device can be reliably tuned from 400 Ohm to 3000 Ohm, which can satisfy the requirement of
analog optimization solver.
100
Figure 9.9: Multistate performance of memristor under current pulses.
Another issue of the memristor tuning is the speed of tuning. Since the memristor will be tuned
in real time when the robot is operating, the optimization on how to tune the memristor fast enough
to match the real time requirement of the robot is another challenge. In this project, the target
control period is set to 1ms. Therefore, 6 memristors need be tuned with in several hundred µs to
save rooms for the rest of computation task and signal processing. Previously, the memristor was
tuned and measured to make sure the resistance state is tuned properly. However, this method is
very slow and typically require more than 100 cycles. To further boost the speed of memristor
tuning, a function-based auto-tuning algorithm was invented and implemented on the memristor
characterization procedure. Both single device and multiple devices have been tested under current
101
pulses. As shown in the Figure 9.10, a polynomial fit function can be found to define the relation
between the device conductance and the pulse compliance current. To be noticed, there is no
measurement feedback in this test, the device is tuned by the current pulse once before getting
measured each time. This test showed a rough correlation between the device conductance state
and the tuning current. As shown in the Figure 9.10, for each device, this correlation is very
repeatable. As for different devices, though there are larger variations between devices, the overall
correlation can be roughly fitted using a polynomial curve. Through this way, a function based
auto tuning method can be designed. For a target resistance or conductance state, the initial value
of the current pulse can be determined by the fit function and then the device will be fine-tuned by
adding additional step current until the resistance value meets the requirement.
Figure 9.10: (a and b) Conductance of memristor changes with compliance current pulses.
As shown in the Figure 9.11, the memristor can be tuned to target resistance values within 30
cycles, which is much faster than the previous tuning method. To be noticed, the current pulses
102
width generated by the semiconductor analyzer (Keithley 4200) can only be configured to be 35ms,
which is still quite slow compared to our target time. Therefore, a customized tuning circuit will
be designed and configured to characterize the memristor devices. This work is still in progress
and will be discussed in detail in the next chapter. But previous research shows that the switching
speed of the memristor can be set in the range of hundreds of picoseconds. Therefore, the
memristor should be able to be tuned in the range of nanosecond, which can satisfy the requirement
of this project.
Figure 9.11: Memristor feedback tuning using current pulses
103
Another challenge is the auto-forming procedure. The memristor we designed is an ion-based
device, therefore the device is not forming free. Therefore, for uniform device performance and
reliable tuning, it is very important to form the conductive filaments of memristors after they have
been fabricated. An auto-forming procedure needs to be designed to integrate the device on chip.
A program has been developed for the automatic forming of the memristors. This program can set
and reset the memristors multiple times according to the number of cycles, compliance current and
reset resistance provided by the user. During the auto-forming process, several iterations of
switching on and off procedure were performed. The device was formed using 1mA compliance
current. The first set voltage of the memristors was around 7V , which is quite high for the on-chip
integration. Therefore, this can be another research.
Figure 9.12: Auto forming process of memristors
2 4 6 8 10 12 14 16 18 20
Number of Cycles
0
1
2
3
4
5
6
7
Set Voltage (V)
Auto-forming
104
As shown in the Figure 9.12, The set voltage decreases as the filament forms. From our
experiment results, at least 30 forming cycles are required for the best performance and reliable
tuning of the memristors. But the forming of the memristor will only need to be done once.
Therefore, the time and power efficiency of forming is not considered as part of the robotic
computing system.
Conclusion
In this section, we proposed a memristor crossbar array based analog circuit optimization solver
and its application on the MA V. As we stated previously, this analog optimization solver can be
used to solve LP or QP problem with much higher computing efficiency compared to traditional
computing method. Theoretically, the time complexity of the proposed analog computing method
can have the time complexity from O(n) to O(n
2
), which is a significantly improvement compared
to the traditional digital computing method (O(n
3
))(60). Also, the power consumption can be
lowered to the range of milliwatts. With the help of memristor crossbar array, a denser circuit
structure can be implemented, and thus higher dimension optimization problem can be easily
solved using our platform. More importantly, since the memristor can provide multiple
conductance states, a general optimization solver can be implemented using our approach. Once
the feasibility of our proof-of-concept computing platform is testified, this technique can be used
in many different applications. In our research, we proposed to use a robotic platform to explore
one of the possible applications. There is no doubt that this research can have more impact on other
applications, such as edge computing, autonomous vehicle, micro-robotics, big data and so on. As
the computation moving to the edge, the needs of computing platform for specific application are
increasing. However, since the digital computing is nearly at its limit, the lack of suitable
105
embedded computing platform will become one the main challenges in many applications. The
memristor-based optimization solver proposed by us can be considered as one of the candidates to
solve this problem. In addition, LP or QP problem are widely used in many scientific computation
fields, from business model to economics. However, large dimensions computation is hard to be
done in real time by traditional digital computing platform, since there is a curse of dimension.
One of our future research directions is to use the large dimension array structure of memristor to
solve such problems. From the perspective from device research, the platform proposed by us can
be also used as a benchmark platform for memristor devices. Since our proposed analog
optimization solver can be used in wide applications and many real-world scenarios, it will benefit
from application driven device engineering of memristors. Specific device engineering research
can be conducted based on our platform. From the perspective of the study of solid-state circuit,
analog computation has been overlooked for decades as the digital circuits scale down to
nanometers and become faster and faster. However, as the Moore’s law approaches its end, the
digital circuit is unlikely to reach higher speed. The analog computing method, as a promising
candidate, may come back to the game again. As we stated previously, though digital computer
has huge success and cannot be replaced in the foreseeable future, analog computing can still play
an important role in some specific applications. In our case, the computation for linear and
quadratic optimization is one of these. The future research direction in our project will involve in
on chip integration of the memristor crossbar array based analog optimization processor. This will
further boost the performance of our current design and will make this technology more practical
in many applications. We also hope that our research can inspire more researchers think about
different ways of computation and try to further push the technological limit as well as the
boundary of our knowledge.
106
Chapter 10
Future Work
10.1 Memristor High Speed Tuning Set Up
In the previous sections, I discussed about using memristor-based analog circuit to solve
convex optimization problem. In the application of this solver, especially the one in the MAV
application. The solver is used to solve a quadratic optimization problem in the real time to enforce
a safety critical controller for the MA V . As we mentioned earlier, though the structure of the
optimization problem remains the same during the entire control period, the parameters of the
optimization problem will change overtime. The tuning speed of the device needs to be optimized
in the range of nanosecond or less to allow memristors work in the real time application. This is
one of the main challenges of using memristor device in the circuit for this application. In fact, this
is also critical for other applications required changing states of the memristor devices during use.
Most of the previous research states that the memristor can be tuned once in their application as
well as our previous research. For the memristor PD controller circuit and Kalman filter circuit,
devices don’t need to be tuned very fast. As we mentioned earlier, only several cases, such as
initialization or changing environment will require retuning of the memristor. Therefore, if the
tuning range of the memristor satisfy the requirement, the system will function properly. However,
the memristor-based optimization solver requires the memristor can be tuned in a fast speed. And
that will allow us to build a general analog optimization solver, which will broaden this type of
applications in more areas, such as legged robot control, self-driving cars and so on. Therefore,
improving the tuning speed is critical in this project. As mentioned earlier in the previous section,
the memristor is tuned using current pulses instead of voltage pulses with different compliance
current to simply the tuning circuit design. Therefore, for further boost the tuning speed, the device
107
needs to be characterized using current pulse in the range of nanosecond or microsecond. However,
to the best of our knowledge, all the semiconductor characterization equipment provides only short
voltage pulses. For the current pulses provided by our semiconductor analyzer (Keithley 4200),
the pulse width is 35ms, which does not satisfy our requirement. Therefore, the design of a
customized tuning circuitry is needed in our project. We choose to use high speed current DAC
(LTC2000) with FPGA control circuit to demonstrate the current pulse tuning of memristors. As
shown in the Figure 10.1, the high speed memristor characterization set up contains the current
pulse generation part and measurement and reset part. The current pulse generation in this design
version is only used tune the memristor. The measurement of the memristor resistance value and
the reset of the memristor is achieved by a customized design PCB board. Analog switch circuit is
used to select memristor to either tuning circuit or measurement and reset circuit. Memristors are
wire bonded on the chip carrier and then mounted on the PCB board.
Figure 10.1: Architecture of tuning circuitry for memristors
108
10.2 Other Applications of Memristor-Based Analog Circuit
10.2.1 Optimization Circuit for the Cognitive Domain Ontology
Cognitive agents are used in autonomous systems which make decisions in real time. The agent
examined is the Cognitively Enhanced Complex Event Processing (CECEP) architecture, which
is an autonomous decision support tool(91, 92). However, the process of the decision-making can
be time and power consuming. The Cognitive Domain Ontology (CDO) is one of the most time-
consuming and key components of CECEP. CDOs can store knowledge from a wide variety of
applications and process them with complex constraints. Thus, determining the optimal solutions
in tasks of CDOs can be very time consuming in traditional digital computing architecture.
Therefore, developing a task-oriented hardware computing method specifically targeting the above
problems is needed.
Figure 10.2: Ball CDO with sharing among the possible solutions.
109
Memristor-based optimization solver can be considered as one of the possible methods in
addressing the above issue(93). Since determining the optimal solution from a certain knowledge
domain with complex constraints is essentially solving an optimization problem. Previous research
shows that the analog optimization solver can improve the computational efficiency significantly
compared with traditional method(93). The reconfigurability of memristor will enable the circuit
to store new information or learn new knowledge. Memristor is an electronic device with
characteristics of both resistor and memory. It can be reprogrammed to different resistance level
to store the information. A memristor can also be considered as a resistor which will determine the
mathematical representation of analog circuits. This characteristic makes memristor a perfect
candidate in the application of in memory computation. Another advantage of using memristor-
based optimization solver is that the memristor crossbar is scalable for high dimensional problems.
Figure 10.3: The CDO layout in Fig.1 is configured to a weighted network with eight nodes.
110
Figure 10.4: A simple N = 4 problem is simulated in SPICE
To implement the CDOs problems using the memristor-based optimization solver, the CDO
must be converted to weighted network form and reformulated as a LP or QP problem. The CDO
layout in Figure 10.2 is configured to a weighted network with eight nodes (Figure 10.3). The
black solid line represents the small weighted (or positive) connection W0, while the orange solid
line represents the large weighted (or negative) connection W1. The smallest weighted neighbors
of given input need to be found. To solve this, LP or QP optimization problems can be formulated
mathematically (equation (10.1)). Then a corresponding memristor-based analog circuit can be
111
generated correspondingly. To be notice, to solve a CDO problem with N nodes, a N by 2N+1
dimension of crossbar circuit is needed based on the LP formulation. The additional constraints
are used to guarantee the right solution. A simple N = 4 problem is simulated in SPICE to verify
the basic idea (Figure 10.4). To be notice, only one given input is simulated, therefore, the crossbar
is 4 by 6.
min∑𝑊 0 𝑜𝑟 1
𝑋 𝑖 2
𝑁 𝑖 =1
𝑠 .𝑡 . 𝑋 𝑖 ≥ 0; ∑𝑋 𝑖 ≥ 1
𝑁 𝑖 =1
(10.1)
10.2.2 Analog Circuit for Boolean Satisfiability
All problems solving by analog circuits we discussed in our thesis in the previous chapters are P
problems. P problems are solved easily in the in “polynomial time”. Thus, P problems are said to
be easy, or tractable. Solving NP-complete problems efficiently will significantly benefit to both
computer science and engineering(94). However, currently, those problems are hard to be solved
on digital computers with the von Neumann architecture. Therefore, the method for alternative
solutions to solve NP-complete problems is very attractive for both science and industry. Among
all the NP-complete problems, the Boolean satisfiability problem is a quite famous one. In the area
of both computer science and logic, the Boolean satisfiability problem (SAT) is the problem that
finds out if there is an answer that satisfies a given Boolean equation(95-97). In other words, the
problem asks whether the variables of a given Boolean formula can be replaced by TRUE or
FALSE in such a way that the formula still satisfies as a TRUE statement. If there exists an answer
for the variables, the formula is called satisfiable. On the other hand, if there is no such assignment,
the function expressed by the Boolean formula is FALSE for all possible variable assignments and
then the formula is unsatisfiable. For example, the Boolean formula "a AND b" is called as
112
satisfiable because one can find the values a = TRUE and b = TRUE, which make (a AND b) =
TRUE. However, "a AND NOT a" is unsatisfiable since if a is TRUE, not a must be FALSE, which
makes the formula unsatisfiable.
SAT is essential to many electronic design automation problems, and also has a wide
application in the field of decision, scheduling, error-correction and security domains. SAT is the
first problem that was proven to be NP-complete(95). This means that the problems are in the
complexity class of NP, including a large amount of decision, scheduling, and optimization
problems, are at most as difficult to solve as SAT. However, there is no known algorithm that can
efficiently solve SAT problem, and it is generally believed that no such algorithm exists using the
digital computer; yet this statement has not been proven theoretically. Many researchers dedicate
their lives in this problem. Much research has been done from pure algorithms or computer
architecture side. Heuristic SAT-algorithms can solve problem instances involving tens of
thousands of variables and formulas consisting of millions of symbols, which is sufficient for many
practical SAT problems from, e.g., artificial intelligence, circuit design, and automatic theorem
proving(98, 99). An efficient analog circuit solving SAT problem was also invented recently. This
analog solution transforms the SAT problem to an optimization problem and then introduce a
search type dynamics circuit to avoid local minima. In this section, with the inspiration of the
optimization circuit, we propose a more intuitive way of solving SAT problems.
The circuit mainly have two parts. One part is the memory cell on the left store the value of
Xi and ¬Xi. The other part is the constraints network on the right to modify the memory cell. All
the transistors are PMOS on the constraints network. The purpose of this circuit is to find out
whether the following equation (10.2) is True or not. Inspired from the intuitive understanding of
the optimization circuit, the voltage outputs satisfying the constraint circuits will automatically lie
113
in the feasibility set of the constraint condition of the optimization problem. Similarly, for the SAT
problem, if the circuit can be designed in a way that the output voltages will not exist unless they
satisfy the formula, then the output voltage should automatically obey the Boolean formula. From
this, a simple analog circuit is designed for the 3-SAT problem as shown in Figure 10.5.
Figure 10.5: Analog circuit structure for solving SAT problems
114
(¬X1 ∨ ¬X2 ∨ ¬X3) ∧ (¬X1 ∨ X2 ∨ ¬X3) ∧ … ∧ (¬X1 ∨ X2 ∨ ¬X3) = True (10.2)
The crossbar circuit is a configurable switching matrix which can configure the circuit to the
desire problem. Each constraint circuit will enforce each clause in the SAT problem. For example,
if the statement is (¬X1 ∨ ¬X2 ∨ ¬X3), then ¬X1, ¬X2, ¬X3 will be connected to the constraint
circuit. It can be easily observed that if all variables become 0 voltage, then the PMOS in the
constraint circuit will be turned on. Therefore, the 5V power supply voltage will drive the memory
cell input from low to high. In this way, the variables cannot be 0 voltage at the same time. In this
way, the voltage outputs that don’t satisfy the SAT problem cannot exist in this circuit. Therefore,
the SAT problem is satisfiable if the circuit can find an answer. Otherwise, the circuit will not
stabilize if the SAT problem is unsatisfied.
The simulations on small size problem (i = 2) were carrier on for this method. The circuits
map 2-SAT problem. In this case, a 2-SAT problem with 3 clauses will only have one answer. From
the results shown above in the Figure 10.6, the results from circuit simulation matches the
theoretical result of the SAT problem perfectly, which is consistent with our previous analysis
before. To be noticed, the above analysis is not rigorous mathematical proof of the above circuit
structure. The simulation only shows the feasibility of small size problem (2-SAT problem). A
more serious mathematical proof of the stability of this circuit in large scale needs to be addressed
in the future.
115
Figure 10.6: SPICE simulation of analog circuit for solving 2-SAT problems.
a) The circuit implement a simple 2-SAT problem of (𝑥 1⋁𝑥 2)⋀(𝑥 1⋁¬𝑥 2)⋀(¬𝑥 1⋁𝑥 2) = True.
b) The circuit implement a simple 2-SAT problem of (𝑥 1⋁𝑥 2)⋀(𝑥 1⋁¬𝑥 2)⋀(¬𝑥 1⋁¬𝑥 2) = True.
c) The circuit implement a simple 2-SAT problem of (𝑥 1⋁𝑥 2)⋀(¬𝑥 1⋁𝑥 2)⋀(¬𝑥 1⋁¬𝑥 2) = True.
d) The circuit implement a simple 2-SAT problem of (𝑥 1⋁¬𝑥 2)⋀(¬𝑥 1⋁𝑥 2)⋀(¬𝑥 1⋁¬𝑥 2) = True.
116
Conclusion
In this section, we discuss the continuation of my previous work and the future possibilities of
using memristor-based analog circuits to build optimization problem solvers. The key idea in the
entire thesis is to use the analog system with emerging device technology to solve problems faster
than the digital system. The philosophy behind this idea is that I am trying to see if there exists a
way of using a dynamic system to solve problems. It can be another dynamic system problem,
such as Kalman filter or PD controller. Or it can also be a math or logic problem, such as convex
optimization or SAT problem. The digital computer was invented and significantly improve or
enhance humankind. However, the way I see the digital computer is that it uses a method of
symbolism. The digital computer represents the data from the physical world into 0 or 1, or 0V or
5V . And this representation is pure in the logic domain without physical meaning unless we define
one. It is a great way of inventing such a complicated machine from the basic idea of the Turing
machine(100). However, I do believe that this may not be the most effective way of solving
problems since our brain, the most powerful computer in the world, seems not to operate in such
way. Therefore, I think it is worth exploring other possibilities of computation. We may not even
touch the limits of computation. But, as scientists, we should never stop asking these questions.
117
References
1. L. J. I. T. o. c. t. Chua, Memristor-the missing circuit element. 18, 507-519 (1971).
2. D. B. Strukov, G. S. Snider, D. R. Stewart, R. S. Williams, The missing memristor found.
nature 453, 80 (2008).
3. Q. Xia, W. Robinett, M. W. Cumbie, N. Banerjee, T. J. Cardinali, J. J. Yang, W. Wu, X. Li,
W. M. Tong, D. B. Strukov, Memristor− CMOS hybrid integrated circuits for
reconfigurable logic. Nano letters 9, 3640-3645 (2009).
4. M.-J. Lee, C. B. Lee, D. Lee, S. R. Lee, M. Chang, J. H. Hur, Y .-B. Kim, C.-J. Kim, D. H.
Seo, S. Seo, A fast, high-endurance and scalable non-volatile memory device made from
asymmetric Ta 2 O 5− x/TaO 2− x bilayer structures. Nature materials 10, 625 (2011).
5. A. C. Torrezan, J. P. Strachan, G. Medeiros-Ribeiro, R. S. Williams, Sub-nanosecond
switching of a tantalum oxide memristor. Nanotechnology 22, 485203 (2011).
6. H. Jiang, L. Han, P. Lin, Z. Wang, M. H. Jang, Q. Wu, M. Barnell, J. J. Yang, H. L. Xin, Q.
Xia, Sub-10 nm Ta channel responsible for superior performance of a HfO 2 memristor.
Scientific reports 6, 28525 (2016).
7. C. Li, M. Hu, Y . Li, H. Jiang, N. Ge, E. Montgomery, J. Zhang, W. Song, N. Dávila, C. E.
Graves, Analogue signal and image processing with large memristor crossbars. Nature
Electronics 1, 52 (2018).
8. Y . Ho, G. M. Huang, P. Li, in Proceedings of the 2009 International Conference on
Computer-Aided Design. (ACM, 2009), pp. 485-490.
9. A. J. Jagtap, The memristor and its applications in RAM and logic gates (California State
University, Long Beach, 2016).
10. J. Cong, B. Xiao, in 2011 IEEE/ACM international symposium on Nanoscale Architectures.
(IEEE, 2011), pp. 1-8.
11. D. Kumar, R. Aluguri, U. Chand, T.-Y . Tseng, Enhancement of resistive switching
properties in nitride based CBRAM device by inserting an Al2O3 thin layer. Applied
Physics Letters 110, 203102 (2017).
12. C. Li, L. Han, H. Jiang, M.-H. Jang, P. Lin, Q. Wu, M. Barnell, J. J. Yang, H. L. Xin, Q.
Xia, Three-dimensional crossbar arrays of self-rectifying Si/SiO 2/Si memristors. Nature
communications 8, 15666 (2017).
13. Z. Wang, S. Joshi, S. Savel’ev, W. Song, R. Midya, Y . Li, M. Rao, P. Yan, S. Asapu, Y .
Zhuo, Fully memristive neural networks for pattern classification with unsupervised
learning. Nature Electronics 1, 137 (2018).
118
14. Z. Wang, C. Li, W. Song, M. Rao, D. Belkin, Y. Li, P. Yan, H. Jiang, P. Lin, M. Hu,
Reinforcement learning with analogue memristor arrays. Nature Electronics 2, 115 (2019).
15. J. J. Yang, D. B. Strukov, D. R. Stewart, Memristive devices for computing. Nature
nanotechnology 8, 13 (2013).
16. R. L. Puurunen, Surface chemistry of atomic layer deposition: A case study for the
trimethylaluminum/water process. Journal of applied physics 97, 9 (2005).
17. V . Miikkulainen, M. Leskelä, M. Ritala, R. L. Puurunen, Crystallinity of inorganic films
grown by atomic layer deposition: Overview and general trends. Journal of Applied
Physics 113, 2 (2013).
18. Y . Asano, T. Kozuki, S. Ookubo, M. Kawamura, S. Nakashima, T. Katayama, I. Yanokura,
T. Hirose, K. Kawaharazuka, S. Makino, Y . Kakiuchi, K. Okada, M. Inaba, in 2016 IEEE-
RAS 16th International Conference on Humanoid Robots (Humanoids). (2016), pp. 876-
883.
19. S. V . Brooks, Current topics for teaching skeletal muscle physiology. Advances in
physiology education 27, 171-182 (2003).
20. S. Feng, E. Whitman, X. Xinjilefu, C. G. Atkeson, in 2014 IEEE-RAS International
Conference on Humanoid Robots. (2014), pp. 120-127.
21. M. M. Waldrop, The chips are down for Moore’s law. Nature News 530, 144 (2016).
22. R. S. Williams, What's Next?[The end of Moore's law]. Computing in Science Engineering
19, 7-13 (2017).
23. R. S. Frackowiak, Human brain function (Elsevier, 2004).
24. E. Devjanin, V . Gurfinkel, E. Gurfinkel, V . Kartashev, A. Lensky, A. Y. Shneider, L.
Shtilman, The six-legged walking robot capable of terrain adaptation. Mechanism Machine
Theory 18, 257-260 (1983).
25. V . Gurfinkel, E. Gurfinkel, A. Y . Shneider, E. Devjanin, A. Lensky, L. Shtilman, Walking
robot with supervisory control. Mechanism Machine Theory 16, 31-36 (1981).
26. H.-S. P. Wong, H.-Y . Lee, S. Yu, Y .-S. Chen, Y . Wu, P.-S. Chen, B. Lee, F. T. Chen, M.-J.
Tsai, in Proceedings of the IEEE. (2012), vol. 100, pp. 1951-1970.
27. D. B. Strukov, G. S. Snider, D. R. Stewart, R. S. Williams, The missing memristor found.
nature 453, 80-83 (2008).
28. E. H. Lee, S. S. J. Wong, Analysis and design of a passive switched-capacitor matrix
multiplier for approximate computing. IEEE Journal of Solid-State Circuits 52, 261-271
(2016).
119
29. S. H. Jo, T. Chang, I. Ebong, B. B. Bhadviya, P. Mazumder, W. Lu, Nanoscale memristor
device as synapse in neuromorphic systems. Nano letters 10, 1297-1301 (2010).
30. C. Li, Z. Wang, M. Rao, D. Belkin, W. Song, H. Jiang, P. Yan, Y . Li, P. Lin, M. Hu, N. Ge,
J. P. Strachan, M. Barnell, Q. Wu, R. S. Williams, J. J. Yang, Q. Xia, Long short-term
memory networks in memristor crossbar arrays. Nature Machine Intelligence 1, 49-57
(2019).
31. Z. Wang, S. Joshi, S. Savel’ev, W. Song, R. Midya, Y . Li, M. Rao, P. Yan, S. Asapu, Y .
Zhuo, H. Jiang, P. Lin, C. Li, J. H. Yoon, N. K. Upadhyay, J. Zhang, M. Hu, J. P. Strachan,
M. Barnell, Q. Wu, H. Wu, R. S. Williams, Q. Xia, J. J. Yang, Fully memristive neural
networks for pattern classification with unsupervised learning. Nature Electronics 1, 137-
145 (2018).
32. Z. Wang, C. Li, W. Song, M. Rao, D. Belkin, Y . Li, P. Yan, H. Jiang, P. Lin, M. Hu, J. P.
Strachan, N. Ge, M. Barnell, Q. Wu, A. G. Barto, Q. Qiu, R. S. Williams, Q. Xia, J. J. Yang,
Reinforcement learning with analogue memristor arrays. Nature Electronics 2, 115-124
(2019).
33. C. Li, M. Hu, Y . Li, H. Jiang, N. Ge, E. Montgomery, J. Zhang, W. Song, N. Dávila, C. E.
Graves, Z. Li, J. P. Strachan, P. Lin, Z. Wang, M. Barnell, Q. Wu, R. S. Williams, J. J. Yang,
Q. Xia, Analogue signal and image processing with large memristor crossbars. Nature
Electronics 1, 52-59 (2017).
34. D. C. Karnopp, Random search techniques for optimization problems. Automatica 1, 111-
121 (1963).
35. K. Ashton, That ‘internet of things’ thing. RFID journal 22, 97-114 (2009).
36. F. Grasser, A. D'arrigo, S. Colombi, A. C. Rufer, JOE: a mobile, inverted pendulum. IEEE
Transactions on industrial electronics 49, 107-114 (2002).
37. H. Yang, B. Chen, B. Song, D. Meng, S. C. Tiwari, A. Krishnamoorthy, X. Yan, Z. Liu, Y .
Wang, P. J. A. A. E. M. Hu, Memristive Device Characteristics Engineering by Controlling
the Crystallinity of Switching Layer Material. ACS Applied Electronic Materials, (2020).
38. J. Busquets, J. V . Busquets, D. Tudela, F. Pérez, J. Busquets-Carbonell, A. Barberá, C.
Rodríguez, A. J. García, J. Gilabert, in 2012 IEEE/OES Autonomous Underwater Vehicles
(AUV). (IEEE, 2012), pp. 1-10.
39. F. L. Lewis, L. Xie, D. Popa, Optimal and robust estimation: with an introduction to
stochastic control theory (CRC press, 2017).
40. R. E. Kalman, A new approach to linear filtering and prediction problems. (1960).
41. E. J. Lefferts, F. L. Markley, M. D. Shuster, Kalman Filtering for Spacecraft Attitude
Estimation. Journal of Guidance, Control and Dynamics 5, 417-429 (1982).
120
42. G. Hee Lee, F. Faundorfer, M. Pollefeys, in Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition. (2013), pp. 2746-2753.
43. H. Hur, H.-S. Ahn, Discrete-Time Filtering for Mobile Robot Localization Using Wireless
Sensor Network. IEEE Sensors Journal 13, 245-252 (2012).
44. B. Ristic, S. Arulampalam, N. Gordon, Beyond the Kalman filter. IEEE Aerospace
Electronic Systems Magazine 19, 37-38 (2004).
45. H. Lee, S. Jung, Balancing and navigation control of a mobile inverted pendulum robot
using sensor fusion of low cost sensors. Mechatronics 22, 95-105 (2012).
46. J. Seul, K. Sung Su, Control Experiment of a Wheel-Driven Mobile Inverted Pendulum
Using Neural Network. IEEE Transactions on Control Systems Technology 16, 297-303
(2008).
47. T. Abut, S. Soyguder, Real-time control and application with self-tuning PID-type fuzzy
adaptive controller of an inverted pendulum. Industrial Robot: the international journal of
robotics research and application 46, 159-170 (2019).
48. W. Zhong, H. Rock, in Proceedings of the 2001 IEEE International Conference on Control
Applications (CCA'01)(Cat. No. 01CH37204). (IEEE, 2001), pp. 896-901.
49. F. M. Atay, Balancing the inverted pendulum using position feedback. Applied
Mathematics Letters 12, 51-56 (1999).
50. S. Gottlieb, C.-W. Shu, Total variation diminishing Runge-Kutta schemes. Mathematics of
computation of the American Mathematical Society 67, 73-85 (1998).
51. J. Ordóñez Cerezo, E. Castillo Morales, J. M. Cañas Plaza, Control system in open-source
FPGA for a self-balancing robot. Electronics 8, 198 (2019).
52. V . Šetka, R. Čečil, M. Schlegel, in 2017 18th International Carpathian Control Conference
(ICCC). (IEEE, 2017), pp. 321-326.
53. S. Seok, A. Wang, M. Y . M. Chuah, D. J. Hyun, J. Lee, D. M. Otten, J. H. Lang, S. Kim,
Design principles for energy-efficient legged locomotion and implementation on the MIT
cheetah robot. Ieee/asme transactions on mechatronics 20, 1117-1129 (2014).
54. S. Sarathy, M. M. Hibah, S. Anusooya, S. Kalaivani, in 2018 International Conference on
Recent Trends in Electrical, Control and Communication (RTECC). (IEEE, 2018), pp. 65-
70.
55. G. Akgün, M. A. Elshimy, D. Göhringer, in 2018 International Conference on
ReConFigurable Computing and FPGAs (ReConFig). (IEEE, 2018), pp. 1-8.
56. T. Gokmen, Y . Vlasov, Acceleration of deep neural network training with resistive cross-
point devices: Design considerations. Frontiers in neuroscience 10, 333 (2016).
121
57. E. M. B. Aske, S. Strand, S. J. C. Skogestad, C. Engineering, Coordinator MPC for
maximizing plant throughput. 32, 195-204 (2008).
58. R. Grandia, F. Farshidian, R. Ranftl, M. J. a. p. a. Hutter, Feedback mpc for torque-
controlled legged robots. (2019).
59. H. Wang, B. Liu, X. Ping, Q. J. I. A. An, Path tracking control for autonomous vehicles
based on an improved MPC. 7, 161064-161073 (2019).
60. S. Vichik, F. J. C. Borrelli, C. Engineering, Solving linear and quadratic programs with an
analog circuit. 70, 160-171 (2014).
61. L. Xie, Y . Gu, A. Eskandari, M. J. J. o. E. E. Ehsani, Fast MPC-based coordination of wind
power and battery energy storage systems. 138, 43-53 (2012).
62. K.-V . Ling, B. F. Wu, J. J. I. P. V . Maciejowski, Embedded model predictive control (MPC)
using a FPGA. 41, 15250-15255 (2008).
63. B. Chen, H. Yang, B. Song, D. Meng, X. Yan, Y . Li, Y . Wang, P. Hu, T.-H. Ou, M. J. S. R.
Barnell, A memristor-based hybrid analog-digital computing platform for mobile robotics.
5, (2020).
64. Z. E. Teoh, S. B. Fuller, P. Chirarattananon, N. Prez-Arancibia, J. D. Greenberg, R. J. Wood,
in 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems. (IEEE,
2012), pp. 3209-3216.
65. A. Hernandez, H. Murcia, C. Copot, R. De Keyser, in Memorias del XVI Congreso
Latinoamericano de Control Automatico, Proceedings. (2014), pp. 618-623.
66. J. B. Dennis, "Mathematical programming and electrical networks", thesis, Massachusetts
Institute of Technology (1959).
67. M. P. Kennedy, L. O. J. I. T. o. C. Chua, Systems, Neural networks for nonlinear
programming. 35, 554-562 (1988).
68. D. Tank, J. J. I. t. o. c. Hopfield, systems, Simple'neural'optimization networks: An A/D
converter, signal decision circuit, and a linear programming circuit. 33, 533-541 (1986).
69. J. M. D. Pereira, O. Postolache, P. S. Girão, M. J. I. t. o. i. Cretu, measurement, Minimizing
temperature drift errors of conditioning circuits using artificial neural networks. 49, 1122-
1127 (2000).
70. J. J. I. j. o. h. LaDou, e. health, Printed circuit board industry. 209, 211-219 (2006).
71. P. J. S. R. Kassanos, Analog-digital computing let robots go through the motions. 5,
eabe6818 (2020).
122
72. T. A. Ward, C. J. Fearday, E. Salami, N. J. I. J. o. M. A. V . Binti Soin, A bibliometric review
of progress in micro air vehicle research. 9, 146-165 (2017).
73. D. J. Pines, F. J. J. o. a. Bohorquez, Challenges facing future micro-air-vehicle development.
43, 290-305 (2006).
74. J. Grasmeyer, M. Keennon, in 39th aerospace sciences meeting and exhibit. (2001), pp.
127.
75. M. Keennon, K. Klingebiel, H. Won, in 50th AIAA aerospace sciences meeting including
the new horizons forum and aerospace exposition. (2012), pp. 588.
76. A. Koubâa, A. Allouch, M. Alajlan, Y . Javed, A. Belghith, M. J. I. A. Khalgui, Micro air
vehicle link (mavlink) in a nutshell: A survey. 7, 87658-87680 (2019).
77. L. Lipera, J. D. Colbourne, M. B. Tischler, M. H. Mansur, M. C. Rotkowitz, P. Patangui,
in Annual Forum Proceedings-American Helicopter Society. (AMERICAN
HELICOPTER SOCIETY , INC, 2001), vol. 57, pp. 1998-2008.
78. M. N. Duc, T. N. Trong, Y . S. Xuan, in 2015 IEEE International Conference on
Mechatronics and Automation (ICMA). (IEEE, 2015), pp. 506-510.
79. S. Zingg, D. Scaramuzza, S. Weiss, R. Siegwart, in 2010 IEEE International Conference
on Robotics and Automation. (IEEE, 2010), pp. 3361-3368.
80. S. S. Mansouri, C. Kanellakis, E. Fresk, B. Lindqvist, D. Kominiak, A. Koval, P. Sopasakis,
G. J. I.-P. Nikolakopoulos, Subterranean MA V navigation based on nonlinear MPC with
collision avoidance constraints. 53, 9650-9657 (2020).
81. S. S. Mansouri, C. Kanellakis, G. Georgoulas, G. Nikolakopoulos, in 2018 IEEE
International Conference on Robotics and Biomimetics (ROBIO). (IEEE, 2018), pp. 880-
885.
82. S. Prophet, G. Scholz, G. F. Trommer, in 2017 24th Saint Petersburg International
Conference on Integrated Navigation Systems (ICINS). (IEEE, 2017), pp. 1-8.
83. A. Dai, S. Papatheodorou, N. Funk, D. Tzoumanikas, S. Leutenegger, in 2020 IEEE
international conference on robotics and automation (ICRA). (IEEE, 2020), pp. 9570-9576.
84. B. F. Jeon, H. J. Kim, in 2019 IEEE/RSJ International Conference on Intelligent Robots
and Systems (IROS). (IEEE, 2019), pp. 1115-1121.
85. A. D. Ames, X. Xu, J. W. Grizzle, P. J. I. T. o. A. C. Tabuada, Control barrier function based
quadratic programs for safety critical systems. 62, 3861-3876 (2016).
86. A. D. Ames, J. W. Grizzle, P. Tabuada, in 53rd IEEE Conference on Decision and Control.
(IEEE, 2014), pp. 6271-6278.
123
87. S.-C. Hsu, X. Xu, A. D. Ames, in 2015 American Control Conference (ACC). (IEEE, 2015),
pp. 4542-4548.
88. X. Xu, P. Tabuada, J. W. Grizzle, A. D. J. I.-P. Ames, Robustness of control barrier functions
for safety critical control. 48, 54-61 (2015).
89. P. Ogren, M. Egerstedt, X. Hu, in Proceedings of the 40th IEEE Conference on Decision
and Control (Cat. No. 01CH37228). (IEEE, 2001), vol. 2, pp. 1150-1155.
90. J. A. Primbs, V . Nevistić, J. C. J. A. J. o. C. Doyle, Nonlinear optimal control: A control
Lyapunov function and receding horizon perspective. 1, 14-24 (1999).
91. C. Yakopcic, N. Rahman, T. Atahary, T. M. Taha, A. Beigh, S. Douglass, in 2019
International Joint Conference on Neural Networks (IJCNN). (IEEE, 2019), pp. 1-8.
92. A. Janssen, C. Klein, M. J. P. E. Slors. (Taylor & Francis, 2017), vol. 20, pp. 123-128.
93. C. Yakopcic, N. Rahman, T. Atahary, T. M. Taha, S. Douglass, in 2017 IEEE National
Aerospace and Electronics Conference (NAECON). (IEEE, 2017), pp. 76-83.
94. T. Baker, J. Gill, R. J. S. J. o. c. Solovay, Relativizations of the P=?NP question. 4, 431-
442 (1975).
95. J. Gu, P. W. Purdom, J. Franco, B. W. Wah, "Algorithms for the satisfiability (SAT) problem:
A survey" (Cincinnati Univ oh Dept of Electrical and Computer Engineering, 1996).
96. J. J. I. T. o. s. Gu, man,, cybernetics, Local search for satisfiability (SAT) problem. 23,
1108-1129 (1993).
97. W. F. J. T. c. s. de La Vega, Random 2-SAT: results and problems. 265, 131-146 (2001).
98. O. J. D. A. M. Kullmann, Heuristics for SAT algorithms: Searching for some foundations.
(1998).
99. J. Marques-Silva, in Portuguese Conference on Artificial Intelligence. (Springer, 1999), pp.
62-74.
100. A. M. J. J. o. M. Turing, On computable numbers, with an application to the
Entscheidungsproblem. 58, 5 (1936).
Abstract (if available)
Abstract
This dissertation focuses on the research of memristors based analog computing technology during my Ph.D. study, from the bottom level, such as device performance engineering, to the top level, including memristor-based Kalman filter circuit and linear controller circuit, memristor-based analog optimization solver for robotics applications.
The first topic covers the method of device engineering for memristors. In this part of the dissertation, we propose and demonstrate a new method of controlling the electrical performance of memristor by tuning the growing temperature of the switching layer materials of the device. Using different crystalline Al2O3 as switching layer of the device, the characteristics of corresponding memristors can be modified precisely.
The second topic introduces a novel analog computing circuit using memristors. A memristor -based hybrid computing platform was designed to boost the performance of mobile robotics. Both Kalman filter and linear controller were implemented through memristor-based analog circuit. In addition, a simple inverted pendulum robot was built to verify the feasibility of this computing platform. The study shows that the performance of this prototype is much better than traditional digital platform, and thus the control performance of the robot is further boosted.
In the third topic, we proposed and demonstrated a memristors based general analog optimization solver circuit. A simple proof of concept of such circuit was built. In addition, we investigated the feasibility using this analog computing chip on a micro robot. The study shows that the method is feasible and will benefit the optimal control technique significantly from the computing hardware perspective. This study paves the way of both the direction of device optimization and the analog computing hardware for micro mobile robotics.
Linked assets
University of Southern California Dissertations and Theses
Conceptually similar
PDF
Nano-engineered devices for display and analog computing
PDF
Memristive device and architecture for analog computing with high precision and programmability
PDF
Applications enabled by plasmonic nano-finger and analog computing based on memristive devices
PDF
Circuit design with nano electronic devices for biomimetic neuromorphic systems
PDF
Memristor for parallel and analog data processing in the era of big data
PDF
Analog and mixed-signal parameter synthesis using machine learning and time-based circuit architectures
PDF
Energy-efficient computing: Datacenters, mobile devices, and mobile clouds
PDF
Intelligent near-optimal resource allocation and sharing for self-reconfigurable robotic and other networks
PDF
Low-dimensional material based devices for neuromorphic computing and other applications
PDF
Nano-engineered devices for optical application, biomedical detection and circuit accelerator
PDF
Semiconductor devices for vacuum electronics, electrochemical reactions, and ultra-low power in-sensor computing
PDF
Thermal analysis and multiobjective optimization for three dimensional integrated circuits
PDF
Nanomaterials for macroelectronics and energy storage device
PDF
III-V semiconductor heterogeneous integration platform and devices for neuromorphic computing
PDF
Synthesis, characterization, and device application of two-dimensional materials beyond graphene
PDF
Effectiveness of engineering practices for the acquisition and employment of robotic systems
PDF
Integrating material growth and device physics: building blocks for cost effective emerging electronics and photonics devices
PDF
Robot trajectory generation and placement under motion constraints
PDF
Towards high-performance low-cost AMS designs: time-domain conversion and ML-based design automation
PDF
Optimization-based whole-body control and reactive planning for a torque controlled humanoid robot
Asset Metadata
Creator
Chen, Buyun
(author)
Core Title
Memristor device engineering and memristor-based analog computers for mobile robotics
School
Viterbi School of Engineering
Degree
Doctor of Philosophy
Degree Program
Electrical Engineering
Degree Conferral Date
2022-08
Publication Date
07/21/2022
Defense Date
06/17/2022
Publisher
University of Southern California
(original),
University of Southern California. Libraries
(digital)
Tag
circuits,Control,device physics,memristors,OAI-PMH Harvest,optimization problem,robotics
Format
application/pdf
(imt)
Language
English
Contributor
Electronically uploaded by the author
(provenance)
Advisor
Wu, Wei (
committee chair
), Nakano, Aiichiro (
committee member
), Yang, Joshua (
committee member
)
Creator Email
buyunche@usc.edu
Permanent Link (DOI)
https://doi.org/10.25549/usctheses-oUC111373664
Unique identifier
UC111373664
Legacy Identifier
etd-ChenBuyun-10887
Document Type
Dissertation
Format
application/pdf (imt)
Rights
Chen, Buyun
Type
texts
Source
20220721-usctheses-batch-958
(batch),
University of Southern California
(contributing entity),
University of Southern California Dissertations and Theses
(collection)
Access Conditions
The author retains rights to his/her dissertation, thesis or other graduate work according to U.S. copyright law. Electronic access is being provided by the USC Libraries in agreement with the author, as the original true and official version of the work, but does not grant the reader permission to use the work if the desired use is covered by copyright. It is the author, as rights holder, who must provide use permission if such use is covered by copyright. The original signature page accompanying the original submission of the work to the USC Libraries is retained by the USC Libraries and a copy of it may be obtained by authorized requesters contacting the repository e-mail address given.
Repository Name
University of Southern California Digital Library
Repository Location
USC Digital Library, University of Southern California, University Park Campus MC 2810, 3434 South Grand Avenue, 2nd Floor, Los Angeles, California 90089-2810, USA
Repository Email
cisadmin@lib.usc.edu
Tags
circuits
device physics
memristors
optimization problem
robotics