Low-power pulse oximetry and transimpedance amplifiers
Transcript of Low-power pulse oximetry and transimpedance amplifiers
Imperial College London
Department of Bioengineering
Low-power pulse oximetry
and transimpedance
amplifiers
Konstantinos N. Glaros
October 2011
Supervised by Dr. E. M. Drakakis,
Prof. M. Boutelle and Prof. T. Cass
Submitted in part fulfilment of the requirements for the degree of
Doctor of Philosophy of Imperial College London
and the Diploma of Imperial College London
Declaration
I herewith certify that all material in this dissertation is a product of
my own work or, if not, it has been appropriately referenced.
Konstantinos N. Glaros
2
Abstract
This work focuses on the design of low-power fully-integrated pulse ox-
imeter front-ends and transimpedance amplifiers. Mathematical mod-
elling and numerical simulations are employed to systematically quan-
tify the trade-offs involved in the design of such a front-end and in-
vestigate the specific challenges arising from the requirements for low-
power and full integration. The response speed, stability, power con-
sumption and noise characteristics of the front-end’s transimpedance
amplifier are identified as significant points of interest. The perform-
ance of several transimpedance amplifier topologies is investigated. To-
pologies based on switched integration of the input are shown to be
advantageous and employed in the design of a mixed-signal pulse ox-
imeter front-end which was fabricated in the AMS 0.35 µm technology.
Extensive electrical and physiological measurements are reported show-
ing that the proposed front-end can achieve LED power consumptions
below 400 µW and a total power consumption of less than 1 mW with
a mean signal-to-noise ratio exceeding 39 dB at the detector. This
performance is among the best ever reported and an order of mag-
nitude better than most commercial pulse oximeters. Ways to lower
this power consumption even further are identified. This work also re-
ports on a novel self-biased photoreceptor (transimpedance amplifier)
topology. A detailed comparison with previous state-of-the-art designs
is carried out that provides new, useful insights on the photoreceptors’
performance. The proposed design is concluded to be beneficial for
applications where extremely low power and fast settling are of high
significance.
3
To my friends and my family
4
Acknowledgements
My last four years have been a wonderful, yet long and rocky journey.
And as much as this thesis is a personal victory, I cannot imagine
writing these lines today without the invaluable help of people around
me along the way.
My huge, most heartfelt thanks is due to Manos Drakakis. He is the
reason this PhD commenced and, most importantly, continued when
the circumstances toughened. His clear thinking and guidance, his
optimism, but above all his human, good-hearted attitude have made
him an excellent supervisor. Mano, thanks for being a brilliant teacher
and a friend.
I am indebted to the Bodossaki Foundation and to Toumaz Techno-
logy. Their financial support enabled this work to start and continue
smoothly all the way to a successful end. I am particularly thankful
to Alison Burdett for her valued help.
A big thanks goes to Martyn Boutelle, for all his understanding,
patience and to-the-point guidance when trying to unlock the mysteries
of electrochemistry. Martyn, it has been a great pleasure to have known
you and have worked together.
My daily life in the office has been brightened by my amazing lab-
mates. Henry, Anoop, Tat, Aggele, Metha, Guang, Panayioti, Kosta,
Itir, Andrea thanks for all the lunchtimes, the bizarre discussions and
the uncountable drinks. Evi, Alex it has been great running this road
side by side. Andrea, our incredible team play was a fantastic start
to my PhD, only shadowed by the good friendship that followed. I
am grateful to all of you for your help with the everyday struggles, for
what I have learned from you, for enduring and even participating in
5
my experiments.
I would also like to thank the people at Toumaz; Andreas Katsia-
mis, Declan McDonagh, Alan Wong, Nick Kasparidis, Oliver King for
their useful advice and guidance during the design of the pulse oxim-
eter. I truly appreciate the help of Michelle and Delphine with the
electrochemical equipment and Kaushal with the chip photography.
Thinking back, I am amazed at how many more people cross my
mind that have affected my life the last four years. Their contributions
cannot be quantified and referenced, yet are of paramount importance.
Craig, for all the fun times, the long discussions and the creative ideas,
for enduring the rants and sharing my confusions and joys, thank you
so much. Dave, Pano, being there for me, celebrating my good times
and carrying me though the moments of turbulence, means a lot to
me. Gianni, Cecilia, Zisi, Alex, we may be thousands of miles apart,
but our strong, caring friendship fills me with warmth and courage in
my wanderings.
Clayponds has been a wonderful home for me. Dave, Hicham, Anna,
Carmel, Matt, Anna, Paul, Fabian and all the tens of other Claypon-
ders are definitely to blame for my ridiculously busy and wicked even-
ings and weekends that filled up my batteries when it was so necessary.
But above all else, from the depths of my heart, I would like to thank
my family. Mum, dad you are a great part of who I am today, what I
value and how I think. Your love, reason, support and sacrifices have
brought me this long. Thank you.
6
Contents
1 Pulse oximetry and prior art 17
1.1 Principles of pulse oximetry . . . . . . . . . . . . . . . 20
1.1.1 Oxygen saturation . . . . . . . . . . . . . . . . 20
1.1.2 Beer-Lambert model . . . . . . . . . . . . . . . 21
1.1.3 Limitations of the Beer-Lambert model and other
models . . . . . . . . . . . . . . . . . . . . . . . 27
1.1.4 Multi-wavelength pulse oximeters . . . . . . . . 29
1.1.5 Limitations of pulse oximeters . . . . . . . . . . 29
1.2 Pulse oximeter sensors and front-ends . . . . . . . . . . 32
1.2.1 Sensors . . . . . . . . . . . . . . . . . . . . . . . 32
1.2.2 Front-end architecture . . . . . . . . . . . . . . 34
1.2.3 Lowering the power . . . . . . . . . . . . . . . . 41
2 Low-power fully-integrated pulse oximeter front-ends 52
2.1 The signal in pulse oximetry . . . . . . . . . . . . . . . 53
2.2 Resolution specifications . . . . . . . . . . . . . . . . . 56
2.3 The power-stability trade-off . . . . . . . . . . . . . . . 61
2.4 Power-noise trade-off . . . . . . . . . . . . . . . . . . . 64
2.4.1 Analogue implementations . . . . . . . . . . . . 64
2.4.2 Sampled implementations . . . . . . . . . . . . 74
2.5 Two integrating transimpedance amplifier topologies . 80
2.5.1 Switched Integrator . . . . . . . . . . . . . . . . 80
2.5.2 Current mode Switched Integrator front-end . . 81
2.5.3 Voltage mode Switched Integrator front-end . . 85
2.5.4 Switching the TIA amplifier . . . . . . . . . . . 88
7
2.5.5 SNR performance of the integrating TIA topologies 90
2.5.6 LED current calibration . . . . . . . . . . . . . 95
2.6 Proposed PO front-end overview . . . . . . . . . . . . . 97
2.6.1 Forward path . . . . . . . . . . . . . . . . . . . 99
2.6.2 Feedback path . . . . . . . . . . . . . . . . . . . 100
2.6.3 Operation, programmability and biasing . . . . 101
2.7 Detailed front-end implementation . . . . . . . . . . . 103
2.7.1 Transimpedance amplifier . . . . . . . . . . . . 103
2.7.2 Switched integrator . . . . . . . . . . . . . . . . 105
2.7.3 Sample and hold . . . . . . . . . . . . . . . . . 106
2.7.4 High-pass filters/CFA . . . . . . . . . . . . . . 107
2.7.5 LED driver . . . . . . . . . . . . . . . . . . . . 109
2.7.6 Low leakage S/H . . . . . . . . . . . . . . . . . 112
2.7.7 Reference and biasing . . . . . . . . . . . . . . . 115
2.7.8 Calibration loop . . . . . . . . . . . . . . . . . . 118
2.7.9 Output stages and testing . . . . . . . . . . . . 120
2.7.10 Digital control . . . . . . . . . . . . . . . . . . . 121
2.7.11 Layout . . . . . . . . . . . . . . . . . . . . . . . 124
3 Measurements on the proposed PO front-end 132
3.1 Experimental setup and signal processing . . . . . . . . 132
3.2 SpO2 and PPG signal measurements . . . . . . . . . . . 136
3.2.1 SpO2 measurements . . . . . . . . . . . . . . . . 138
3.2.2 PPG signal measurements . . . . . . . . . . . . 140
3.3 LED characterization . . . . . . . . . . . . . . . . . . . 145
3.4 Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
3.4.1 External noise sources . . . . . . . . . . . . . . 148
3.4.2 Measurements . . . . . . . . . . . . . . . . . . . 151
3.5 Matching . . . . . . . . . . . . . . . . . . . . . . . . . 163
3.6 Calibration loop . . . . . . . . . . . . . . . . . . . . . . 165
3.7 Power and LED currents . . . . . . . . . . . . . . . . . 169
3.8 Comparison to previous work . . . . . . . . . . . . . . 173
8
4 A self-biased logarithmic photoreceptor with low set-
tling time 177
4.1 Delbruck’s statically-biased photoreceptor . . . . . . . 179
4.1.1 Circuit operation . . . . . . . . . . . . . . . . . 180
4.1.2 Small-signal analysis and stability . . . . . . . . 182
4.1.3 Noise . . . . . . . . . . . . . . . . . . . . . . . . 188
4.2 Delbruck and Oberhoff’s self-biased photoreceptor . . . 190
4.2.1 Small-signal analysis and comparison with stat-
ically-biased photoreceptor . . . . . . . . . . . . 191
4.2.2 Noise . . . . . . . . . . . . . . . . . . . . . . . . 197
4.3 A novel self-biased photoreceptor . . . . . . . . . . . . 198
4.3.1 Small-signal analysis and comparison with other
photoreceptors . . . . . . . . . . . . . . . . . . 199
4.3.2 Noise . . . . . . . . . . . . . . . . . . . . . . . . 206
4.3.3 Other versions of the proposed photoreceptor . 207
4.4 Simulations . . . . . . . . . . . . . . . . . . . . . . . . 208
4.4.1 Results for unity mirror ratio (M = 1) . . . . . 208
4.4.2 The power-stability trade-off (M > 1) . . . . . . 218
4.5 Measured results for the proposed photoreceptor. . . . 221
4.6 Photoreceptor comparison and pulse oximetry . . . . . 228
5 Conclusions and future work 232
5.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . 232
5.2 Future work . . . . . . . . . . . . . . . . . . . . . . . . 236
Contributions 242
Publications 244
Abbreviations and symbols 245
References 247
A Matlab code: PO front-end simulations 260
9
B FPGA code: PO front-end digital controller 279
10
List of Tables
1.1 Extinction coefficients of oxy- and reduced hemoglobin
at commonly used wavelengths . . . . . . . . . . . . . . 25
1.2 Pulse oximeter power consumption . . . . . . . . . . . 49
2.1 Typical PO parameters and values used for simulations 69
2.2 Topologies for SNR comparison . . . . . . . . . . . . . 92
2.3 Digitally programmable time durations . . . . . . . . . 124
2.4 Chip area . . . . . . . . . . . . . . . . . . . . . . . . . 126
3.1 Parameters for SpO2 measurements . . . . . . . . . . . 134
3.2 Measured SpO2 values under normal breathing . . . . . 138
3.3 Measured PPG signal contrasts under normal breathing 142
3.4 Estimated front-end SNR for three configurations . . . 153
3.5 Calibration loop variations across chips . . . . . . . . . 167
3.6 Measured results summary . . . . . . . . . . . . . . . . 169
3.7 Simulated average power consumption breakdown (ana-
logue) . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
3.8 Power consumptions of low-power pulse oximeters . . . 172
3.9 Peak LED current of pulse oximeters . . . . . . . . . . 175
4.1 Parameters used in simulations of the photoreceptors . 210
4.2 Summary of photoreceptor simulation results (M = 1) 219
4.3 Indicative simulation results for Delbruck’s photorecept-
ors with M > 1 . . . . . . . . . . . . . . . . . . . . . . 220
4.4 Design parameters for the fabricated proposed PR . . . 221
4.5 Measured results . . . . . . . . . . . . . . . . . . . . . 227
4.6 Comparison of photoreceptors’ features . . . . . . . . . 231
11
List of Figures
1.1 Absorption of light in tissue – the photoplethysmogra-
phic (PPG) signal . . . . . . . . . . . . . . . . . . . . . 23
1.2 Extinction coefficients of the most common hemoglobins
at the wavelengths of interest to pulse oximetry . . . . 25
1.3 Changes in absorbance of a hemoglobin solution with
oxygen saturation for commonly used wavelengths . . . 26
1.4 Calibration curves for pulse oximeters . . . . . . . . . . 26
1.5 Pulse oximeter operation modes . . . . . . . . . . . . . 33
1.6 Block diagram of a typical pulse oximeter . . . . . . . . 35
1.7 Typical transimpedance amplifier used in pulse oximeter
front-ends . . . . . . . . . . . . . . . . . . . . . . . . . 35
1.8 Indicative block diagram of a pulse oximeter condition-
ing block . . . . . . . . . . . . . . . . . . . . . . . . . . 38
1.9 Transimpedance amplifier proposed by Tavakoli et al. . 47
2.1 Frequency domain representation of the detected signal
in a pulse oximeter . . . . . . . . . . . . . . . . . . . . 54
2.2 Maximum acceptable relative error in measurement of
Ratio-of-ratios Λ . . . . . . . . . . . . . . . . . . . . . 57
2.3 Minimum required SNR for R and IR channels . . . . . 60
2.4 Typical linear transimpedance amplifier employed in the
SNR simulations . . . . . . . . . . . . . . . . . . . . . 61
2.5 Noise transfer functions for linear transimpedance amp-
lifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2.6 Block diagram of noise sources in an typical analogue
PO front-end . . . . . . . . . . . . . . . . . . . . . . . 67
12
2.7 SNR vs duty cycle for an analogue PO implementation
with a low-pass filter . . . . . . . . . . . . . . . . . . . 70
2.8 Frequency spectra of PO signal and required analogue
filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.9 SNR vs duty cycle for an analogue implementation with
a band-pass filter . . . . . . . . . . . . . . . . . . . . . 74
2.10 SNR vs duty cycle for a sampled implementation . . . 77
2.11 Switched integrator transfer function . . . . . . . . . . 81
2.12 Integrating TIA with Current mode Switched Integrator 82
2.13 Noise sources for integrating TIA with Current mode
Switched Integrator . . . . . . . . . . . . . . . . . . . . 85
2.14 Integrating TIA with Voltage mode Switched Integrator 85
2.15 Noise sources for integrating TIA with Voltage mode
Switched Integrator . . . . . . . . . . . . . . . . . . . . 87
2.16 SNR vs duty cycle for a sampled implementation with
switched amplifier . . . . . . . . . . . . . . . . . . . . . 89
2.17 SNR vs duty cycle for the simulated TIA topologies . . 93
2.18 LED current calibration in integrated TIAs . . . . . . . 96
2.19 System schematic . . . . . . . . . . . . . . . . . . . . . 98
2.20 Front-end operation phases . . . . . . . . . . . . . . . . 102
2.21 TIAF transimpedance amplifier . . . . . . . . . . . . . 104
2.22 Switched integrator . . . . . . . . . . . . . . . . . . . . 105
2.23 Simple sample and hold . . . . . . . . . . . . . . . . . 107
2.24 High-pass filters/CFAs . . . . . . . . . . . . . . . . . . 108
2.25 LED driver . . . . . . . . . . . . . . . . . . . . . . . . 110
2.26 Low-leakage Sample and Hold . . . . . . . . . . . . . . 111
2.27 Bias and reference current generation circuits . . . . . 116
2.28 Calibration loop for regulating the LED current . . . . 119
2.29 Output buffers . . . . . . . . . . . . . . . . . . . . . . 120
2.30 SPI programming interface . . . . . . . . . . . . . . . . 122
2.31 State diagrams for the FSM controlling the front-end
operation . . . . . . . . . . . . . . . . . . . . . . . . . 123
2.32 Microphotograph of the fabricated front-end . . . . . . 125
13
2.33 Low-leakage S/H capacitor matching . . . . . . . . . . 127
2.34 Layout of low-leakage switches . . . . . . . . . . . . . . 128
2.35 S/H layout and matching . . . . . . . . . . . . . . . . . 128
2.36 Layout and matching of high-pass filters . . . . . . . . 129
2.37 LED drivers layout . . . . . . . . . . . . . . . . . . . . 130
2.38 Shielding techniques . . . . . . . . . . . . . . . . . . . 131
3.1 Experimental setup . . . . . . . . . . . . . . . . . . . . 133
3.2 Pattern employed to detect peaks in PPG signal using
correlation . . . . . . . . . . . . . . . . . . . . . . . . . 135
3.3 Measured signals on a human subject . . . . . . . . . . 137
3.4 Measured SpO2 levels under normal breathing . . . . . 138
3.5 Measured SpO2 levels under forced apnoea . . . . . . . 139
3.6 SpO2 step distribution for events where desaturation was
detected . . . . . . . . . . . . . . . . . . . . . . . . . . 140
3.7 Measured peak-to-peak contrast values (ACpp/DC) for
PPG signals . . . . . . . . . . . . . . . . . . . . . . . . 141
3.8 Measured contrast attenuation under decreased oxygen
saturations . . . . . . . . . . . . . . . . . . . . . . . . . 144
3.9 LED-photodiode current transfer characteristics . . . . 146
3.10 LED current attenuation . . . . . . . . . . . . . . . . . 147
3.11 PSD and components of reference noise . . . . . . . . . 150
3.12 Noise PSD of voltage source Vph . . . . . . . . . . . . . 151
3.13 Noise sources and transfer functions in the implemented
PO front-end . . . . . . . . . . . . . . . . . . . . . . . 152
3.14 Estimated SNR vs integration time . . . . . . . . . . . 154
3.15 Variation of in-band output noise contributed by the
various noise sources with integration time . . . . . . . 155
3.16 Estimated SNR vs sampling frequency . . . . . . . . . 157
3.17 Estimated SNR vs average detected current . . . . . . 157
3.18 Estimated SNR variation with Iref , tint and fs . . . . . 160
3.19 LED power vs Iref , tint and fs . . . . . . . . . . . . . . 161
3.20 Power-efficiency vs Iref , tint and fs . . . . . . . . . . . 162
14
3.21 Gain variation across 20 chips . . . . . . . . . . . . . . 164
3.22 Difference in the detected voltages at the TIAF output
between channels at the first sample after a calibration 166
3.23 Errors at the output DC level . . . . . . . . . . . . . . 168
3.24 Output drift . . . . . . . . . . . . . . . . . . . . . . . . 168
4.1 Delbruck’s static photoreceptor . . . . . . . . . . . . . 179
4.2 Small-signal model of Delbruck’s statically-biased pho-
toreceptor . . . . . . . . . . . . . . . . . . . . . . . . . 182
4.3 Effect of capacitive voltage divider on Delbruck’s stat-
ically-biased photoreceptor settling time . . . . . . . . 187
4.4 Small-signal model of Delbruck’s statically-biased pho-
toreceptor with noise sources . . . . . . . . . . . . . . . 188
4.5 Noise transfer functions for Delbruck’s statically-biased
PR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
4.6 Delbruck’s and Oberhoff’s self-biased photoreceptor . . 191
4.7 Small-signal model of Delbruck’s self-biased PR . . . . 192
4.8 Effect of ratio Cm/Cin on the settling time of Delbruck’s
self-biased photoreceptor . . . . . . . . . . . . . . . . . 194
4.9 Comparison of settling time of Delbruck’s statically-
biased and self-biased photoreceptors . . . . . . . . . . 196
4.10 Small-signal model of Delbruck’s self-biased PR includ-
ing noise . . . . . . . . . . . . . . . . . . . . . . . . . . 197
4.11 General schematic of the proposed photoreceptor . . . 198
4.12 Attenuator networks for the proposed photoreceptor . . 199
4.13 Schematic of the investigated version of the proposed
photoreceptor . . . . . . . . . . . . . . . . . . . . . . . 200
4.14 Small-signal model of the proposed PR including noise
sources . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
4.15 Alternative versions of the proposed photoreceptor . . . 207
4.16 Schematics of simulated photoreceptors . . . . . . . . . 209
4.17 Transfer characteristics of photoreceptors . . . . . . . . 210
4.18 Small-signal frequency response of the photoreceptors . 212
15
4.19 Photoreceptors bandwidth vs input DC level . . . . . . 213
4.20 Simulated output settling time for the three photore-
ceptors . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
4.21 Relation between the settling time of an underdamped
second order system and its quality factor Q . . . . . . 215
4.22 Output noise PSD of the photoreceptors for two input
DC levels . . . . . . . . . . . . . . . . . . . . . . . . . 215
4.23 Integrated in-band output noise voltage of the photore-
ceptors . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
4.24 Minimum detectable contrast at the PR input . . . . . 217
4.25 Microphotograph of the fabricated proposed PR . . . . 221
4.26 Measured frequency response of the proposed PR . . . 222
4.27 Measured 2% PR settling time vs DC photocurrent . . 223
4.28 Changes in PR settling time due to non-idealities . . . 224
4.29 Measured noise responses for the proposed PR . . . . . 225
4.30 Superimposed frequency responses of 18 chips . . . . . 225
4.31 Transient response of proposed PR . . . . . . . . . . . 226
4.32 Measured photoreceptor AC output amplitude vs input
signal level . . . . . . . . . . . . . . . . . . . . . . . . . 227
16
1 Pulse oximetry and prior
art
Oxygen is essential to cells in the human body to convert glucose into
energy. It is transferred to them from the lungs bound in proteins in
the blood stream called hemoglobins. The percentage of hemoglobin
molecules in the arterial blood that are bound to oxygen molecules,
termed arterial oxygen saturation – SaO2, is an important indicator
of an individual’s health. For a healthy person this percentage ranges
between 95 and 100%.
Oxygen saturation can be accurately measured via chemical analysis
of a blood sample (e.g.through CO-oximetry). Pulse oximetry provides
an non-invasive alternative. It determines the oxygen saturation by ex-
ploiting the light absorption properties of oxygenated and deoxygenated
hemoglobin and the pulsed nature of arterial blood. In the most com-
mon setup, this is achieved by shining light from light-emitting-diodes
(LEDs) with two different wavelengths onto a highly perfused tissue,
typically on a finger or the earlobe, and detecting the transmitted or
reflected light by means of a photodiode. The measured light signals
are termed photoplethysmographic (PPG) signals and vary over time
in a manner correlated to the heart pulsation. They can be used to de-
termine both a patient’s heart rate, as well as their oxygen saturation.
When measured via a pulse oximeter the latter is termed SpO2.
Their provision for fast, non-noninvasive and relatively inexpensive
measurements, has led to pulse oximeters being widely adopted by
anaesthesiologists in operating theatres during the 1980s. The sub-
stantial improvements in oximeter accuracy in the last two decades,
17
accompanied by methods to extract additional information from the
measured PPG signals, such as respiration rate and amount of tissue
perfusion, have resulted in medical professionals showing an increased
amount of interest in SpO2. Coupled with the simplicity and low cost
of a basic pulse oximeter (PO), this has resulted in an abundance of
pulse oximeters in the market. Today, pulse oximeters are standard
equipment in operation theatres, intensive care units (ICUs), neonate
care units and, increasingly, hospital general wards.
The development of POs equipped with more robust signal pro-
cessing algorithms, exhibiting increased tolerance to motion artefacts,
lower power consumption and reduced cost, has also rendered available
small, relatively inexpensive portable oximeters that can be used by
anyone outside the hospital, in a home or recreational environment. At
the same time, pulse oximeter modules are increasingly considered for
inclusion in sensing platforms that provide continuous recording, stor-
age and transmission of a multitude of physiological signals, aiming on
the one hand to provide a detailed, accurate record of an individual’s
health status and on the other hand to trigger timely alerts when
critical health events occur. Such systems are currently under devel-
opment in both the industry and academia[1–6] and can significantly
improve the quality of provided care outside a clinical environment,
saving human lives and, secondarily, greatly reducing the need for hos-
pitalization and the associated costs.
The effectiveness of continuous SpO2 monitoring has been demon-
strated, for example, in patients with chronic obstructive pulmonary
disease (COPD), where using a PO to close the loop and regulate
continuously their oxygen provision, reduces the time spend under
hypoxia[7,8]. In another example, overnight pulse oximetry can be
employed for cheaper and more widespread diagnosis and monitoring
of sleep apnoea[9]. An extensive review of pulse oximeter applications
can be found in [10].
The effectiveness and widespread use of these portable oximeters is
limited by two main problems. The first, and probably most severe, is
18
errors due to artefacts in the measured signal initiated by the patients’
motion[11–13]. A large amount of work has been dedicated to their
identification and elimination, both via signal processing and through
improving the oximeter sensor. [14–28] are some indicative works,
although the list is by no means comprehensive.
The second, which is of main interest to this work, is power con-
sumption. Commercial POs typically use peak currents of tens of mA
to drive their LEDs in order to obtain an adequate signal at the de-
tector. Even though this current is commonly modulated by a square
wave with a low duty cycle (typically 5-25%), this still leads to average
power consumptions of a few mW in the best case, to tens of mW in
the majority of the cases[11].
One can argue that a few mW is a viable power consumption for
a rechargeable, portable oximeter. Using a 3 V supply provided by 2
AA batteries with an indicative capacity of 2000 mAh, a power con-
sumption of 5 mW translates to 1200 hours of operation with a single
charging, which is adequate for most purposes.
Then why try to reduce this power further? Firstly, it must be
appreciated that there is a trade-off between power consumption and
measured signal quality. A more power efficient oximeter design could
have a longer battery life, or provide higher quality measurements with
the same power consumption. Furthermore, there is increasing interest
in the use of more than two wavelengths in determining SpO2[26,29].
The reasons for that will be explained in a bit more detail later in
this chapter. In general terms, however, measuring more inputs allows
better identifying and correcting for interfering factors that have a
small, but potentially significant influence on the measurement. One
example of such factors are hemoglobins bound to other molecules than
oxygen (e.g. carboxyhemoglobin)[30]. Another is motion artefacts[26].
Finally, if the oximeter is to be introduced into a continuous monit-
oring system, a power consumption of mW may not be practical. The
power budgets of such systems are already very tight, with radio trans-
mitters having power consumptions of the same order of magnitude and
19
typically comprising a bottleneck for the battery life of such systems.
A lower power consumption would facilitate oximeter integration in
these systems.
This chapter presents an overview of previous work on pulse oxi-
meters. After providing a comprehensive explanation of a pulse oxim-
eter operation, based on mathematical models, it proceeds to present
old and recent work in the design of pulse oximeter sensor interfaces,
with a specific interest in power consumption.
1.1 Principles of pulse oximetry
1.1.1 Oxygen saturation
Oxyhemoglobin (HbO2) is the main carrier of oxygen in the blood.
When oxygen is delivered to the cells, hemoglobin transforms to re-
duced hemoglobin (Hb), which can then bind to new oxygen molecules
in the pulmonary blood vessels. Since these two forms of hemoglobin
operate to transport oxygen to the tissue they are called functional
hemoglobins.
However, they are not the only forms hemoglobin can take in the
blood[11]. It can bind to molecules other than oxygen. The most com-
mon of those are carbon monoxide (resulting in carboxyhemoglobin –
CbOHb) or hydrogen sulfide. It can also get oxidized to methemo-
globin. All these hemoglobins have reduced or zero capability for oxy-
gen transfer, and in large amounts can cause death. Hence, they are
dysfunctional hemoglobins. Their levels are normally below 1-2% in
healthy adults[11], although carboxyhemoglobin can increase to five
times as much in smokers[29].
The arterial oxygen saturation is defined as the percentage of hemo-
globin molecules bound to oxygen in arterial blood:
SaO2 =cHbO2
ctotal hemoglobin
× 100 [%] (1.1)
20
This is also called fractional oxygen saturation and is typically meas-
ured in vitro on a blood sample using a CO-oximeter.
Standard two-wavelength pulse oximeters usually measure the func-
tional oxygen saturation:
SpO2 =cHbO2
cHbO2 + cHbO× 100 [%] (1.2)
In this work the term oxygen saturation will refer to that measured
by a pulse oximeter, SpO2, unless stated otherwise.
1.1.2 Beer-Lambert model
The first (and simplest) model of pulse oximetry operation was based
on the Beer-Lambert law, that describes the attenuation of light when
it passes through a homogeneous solution containing a variety of light-
absorbing molecules. According to it, if a light with intensity Io enters a
volume occupied by a solution containing molecules of a light-absorbing
substance with a concentration c, then the intensity of the light trans-
mitted through the solution will be
I = Ioexp−ε(λ)cd (1.3)
where d is the optical path length and ε(λ) is a wavelength-dependent
quantity expressing how strongly the molecules of the particular sub-
stance absorb light, termed molar absorptivity or extinction coefficient
and measured in mol/m. The quantity
A = −ln(I
Io) = ε(λ)cd (1.4)
is the absorbance of the light from the substance.
In the presence of multiple absorbers, each with a concentration ci,
(1.3) is modified as
I = Ioexp∑i
(−εi(λ)cid) (1.5)
21
and the total light absorbance is:
A =∑i
Ai =∑i
εi(λ)cid (1.6)
Observe that if a solution contains molecules from N different com-
ponents and their extinction coefficients are known, measuring the ab-
sorbance at N different incident light wavelengths results in a set of
N equations that can be solved for the components’ concentrations.
This is the observation on which pulse oximeters, as well as all other
oximeters using light measurements are based.
When light is shone onto a blood perfused tissue, light is absorbed
by a large number of factors. These include tissue, bone, and arterial
and venous blood. Of interest to oximetry is mainly arterial blood, as
this contains the oxyhemoglobin molecules. Pulse oximetry uses the
pulsed nature of arterial blood to separate its absorption from that
of the rest of the tissue. Due to heart pulsation, the detected light
exhibits a small time varying component, strongly correlated to the
heart beat (Fig. 1.1). Typically, this is much smaller than the average
value of the detected light. We will refer to the detected light signal
and its waveform as the photoplethysmographic (PPG) signal, the time-
varying component as the pulsatile or AC component, and the average
detected light value as the non-pulsatile or DC component.
The origin of the pulsatile component is not entirely known. Factors
that have been suggested to contribute to it include the increased
amount of blood in the arterial blood vessels during systole[11,31],
the variation in the orientation of the erythrocytes between systole
and diastole[11,32], and displacement of the blood-free tissue surround-
ing the arteries during systole[33]. Whatever the cause, they can all
be simplistically modelled as an effective increase in the optical path
length between diastole and systole, ∆d.
Hence, the ratio of the light measured at the peak (diastole) and the
22
Fig. 1.1: Absorption of light in tissue – the photoplethysmographic (PPG) signal(from [11])
valley (systole) of the PPG signal, is:
ImaxImin
∣∣∣∣λ1
=Inpexp−(εHbO2(λ1)cHbO2 + εHb(λ1)cHb)d
Inpexp−(εHbO2(λ1)cHbO2 + εHb(λ1)cHb)(d+ ∆d)= exp(εHbO2(λ1)cHbO2 + εHb(λ1)cHb)∆d
(1.7)
εHbO2 and εHb are the extinction coefficients of the oxygenated and
deoxygenated hemoglobin respectively. Inp = Ioexp∑
i(−εi(λ)cid)expresses the absorption from the non-pulsatile components of the tis-
sue, which is the same for both measurements.
This measurement is independent of both the incident light intensity,
as well as the unknown absorption of the components in the tissue other
than the arterial blood. To eliminate the unknown path difference, ∆d,
the same ratio is measured at a different wavelength λ2, and the ratio
of ratios Λ is calculated:
Λ =−ln( Imax
Imin
∣∣λ1
)
−ln( ImaxImin
∣∣λ2
)
=εHbO2(λ1)cHbO2 + εHb(λ1)cHbεHbO2(λ2)cHbO2 + εHb(λ2)cHb
∆dλ1∆dλ2
=εHbO2(λ1)cHbO2 + εHb(λ1)cHbεHbO2(λ2)cHbO2 + εHb(λ2)cHb
(1.8)
23
The elimination of the optical path differences in (1.8) assumes that
they are the same for both measuring wavelengths. This is a reasonable
assumption for some cases, but it can lead to large errors in other. We
will return to this point in the next section.
By substituting from (1.2), (1.8) becomes:
Λ =εHbO2(λ1)SpO2 + εHb(λ1)(1− SpO2)
εHbO2(λ2)SpO2 + εHb(λ2)(1− SpO2)(1.9)
This equation indicates the existence of an one-to-one relationship
between the calculated ratio Λ and the oxygen saturation SpO2. Solv-
ing for SpO2:
SpO2 =εHb(λ1)− εHbO2(λ2)Λ
εHb(λ1)− εHbO2(λ1) + [εHbO2(λ2)− εHb(λ2)]Λ(1.10)
(1.10) enables calculating the oxygen saturation by measuring Λ and
is termed the calibration curve of the oximeter.
The wavelengths λ1, λ2 commonly employed in pulse oximetry are
red (R) and infrared (IR), with wavelengths of 660 nm and 900-940 nm
respectively. The absorption spectra of hemoglobins present in the
blood are shown in Fig. 1.2, and values for commonly used wavelengths
are reported in Table 1.1. The large difference in the extinction coef-
ficients of oxyhemoglobin (HbO2) and reduced hemoglobin (Hb) at
λ = 660 nm provides a high sensitivity of Λ to changes in SpO2. For
the same reason, it is desired that the difference in the extinction coef-
ficients is small in the second wavelength, so that the changes in Λ
do not significantly change the denominator of (1.10), thus leading to
an SpO2-Λ curve approximating a straight line. Wavelengths smaller
than 600 nm and larger than 1000 nm are not used due to excessive
absorption of the incident light by oxyhemoglobin and water in the
tissue respectively.
Fig 1.3 shows how light absorbance varies with oxygen saturation for
incident light with wavelengths of 660/940 nm in a sample with a fixed
total hemoglobin concentration of 1 mmol/l and a fixed optical path
24
Fig. 1.2: Extinction coefficients of the most common hemoglobins in blood at thewavelengths of interest to pulse oximetry (from [11])
Table 1.1: Extinction coefficients of oxy- and reduced hemoglobins at commonlyused wavelengths (from [11])
Wavelength [nm] Extinction coefficient [l ·mmol−1 · cm−1]
Hb HbO2
660 0.81 0.08940 0.18 0.29
length of 1 cm[11]. The absorbance for the red light increases rapidly
as the oxygen saturation decreases, whereas that of the infrared light
slightly decreases. For the same two wavelength values the oximeter
calibration curve resulting from the Beer-Lambert law (1.10) is plotted
in Fig. 1.4. The values of Λ range from about 0.28 for 100% SpO2 to
above 4 for values tending to zero. We will use this curve and (1.10)
in the next chapter to derive specifications for the required detected
signal in a pulse oximeter.
In most practical pulse oximeters, the value of Λ is not calculated as
in (1.8). Instead the peak-to-peak amplitude of the PPG signal (ACpp)
and its average level (DC – Fig. 1.1) are commonly used to calculate
25
Fig. 1.3: Changes in absorbance of a hemoglobin solution with functional oxygensaturation for commonly used wavelengths (from [11])
0 20 40 60 80 1000
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
SpO2 [%]
Ratio-of-ratios
Λ
Beer-LambertPhoton diffusion (from Schmitt)
Fig. 1.4: Calibration curves for pulse oximeters according to Beer-Lambert law andSchmitt’s analysis using a photon diffusion model that takes scatteringinto account[31]
26
the ratio-of-ratios as[11]:
Λ =
ACppDC
∣∣λ1
ACppDC
∣∣λ2
=cλ1cλ2
(1.11)
The AC to DC component ratio is sometimes also referred to as the
contrast of the signal. The reader can verify, that due to the small
value of this ratio, (1.8) and (1.11) will not give significantly different
results[11]. The expression chosen for Λ becomes even less important
if it is considered that oximeter calibration curves are virtually always
determined empirically (see following section).
1.1.3 Limitations of the Beer-Lambert model and
other models
The Beer-Lambert law treats the combination of blood and tissue as
a homogeneous solution of molecules that only absorb light. How-
ever, in real blood-perfused tissue, light is not only absorbed but also
scattered. In fact, scattering is what allows the light to be measured
across the fingertip in a transmittance mode oximeter, despite the high
light absorption from the finger bone[32].
Since the development of the first oximeter in the 70s[34,35], several
models including the scattering effect have been developed to model
and correct for the inaccuracies of oximeters calibrated based on the
Beer-Lambert law, especially under low oxygen saturation values. Us-
ing varying degrees of approximations to the radiative transfer equa-
tion they provide analytical[31,36–43] or numerical solutions[33,43,44]
describing the transport of light through the tissue and the influence
it has on SpO2 values measured by a pulse oximeter. Both single-
layered[31,36,39,40] and multi-layered[33,37,42,43] tissue models have
been examined.
This thesis will not deal with these works in detail. In general terms
however it can be said that scattering alters the average optical path
27
of each wavelength in a way that is dependent on the absorption of
light by hemoglobin molecules and thus on oxygen saturation. Hence,
the term∆dλ1∆dλ2
in (1.8) cannot be eliminated without leading to errors.
Fig. 1.4, for example, shows how an oximeter calibration curve calcu-
lated using the photo-diffusion theory varies from the Beer-Lambert
law[31]. The extinction coefficient for IR light is higher than that for
R light at high oxygen saturations (>80%) and lower at low oxygen
saturations (<80%). Thus, the mean optical path that a photon trans-
verses is larger for R than for IR light at high SpO2 and lower at low
SpO2. This modifies the term∆dλ1∆dλ2
, leading to the difference in the
slope of the calibration curve in comparison to that predicted by the
Beer-Lambert law that ignores scattering and assumes the same, con-
stant optical path length for both wavelengths. Theories incorporating
light scattering in tissue can also give a better account of the effect of
other parameters, like fractional tissue blood content, venous blood,
emitter-detector separation and skin color, have on the oximeter cal-
ibration curve[31].
Based on these models solutions ranging from modifications to the
calibration curve[31] to using different light wavelengths having a more
similar optical path than red and infrared[45] have been proposed to
improve the accuracy of pulse oximeters. Nevertheless, due to the large
variations of parameters between individuals, pulse oximeters are still
today calibrated empirically[11].
For a given oximeter setup, a large number of measurements for a
range of oxygen saturations are carried out on individuals. Curves are
fitted to the results using statistical methods to provide the final ox-
imeter calibration curve or even multiple curves to account for varying
conditions. Unfortunately, this means that most oximeters are calib-
rated for SpO2 higher than 70%, as it is not ethical to induce lower
oxygen saturation levels to humans.
The development of more finely tuned models describing the propaga-
tion of light through tissue, accurately accounting for more causes of
error by incorporating them in design time into the model is an open
28
problem. Its complexity however puts the effectiveness of such im-
provements under question. A potentially more promising approach
involves introducing extra parameters in the oximeter calibration curve
that can be measured and adjusted dynamically during the oximeters’
operation to minimize errors. Oximeters employing more than two
wavelengths can be used for this purpose.
1.1.4 Multi-wavelength pulse oximeters
Aoyagi et al.[26] discuss how a multi-wavelength oximeter can be used
to model, measure and correct errors induced by tissue and venous
blood. They also show that such an oximeter could exhibit higher
tolerance to motion artefacts. Multi-wavelength oximeters can also
measure concentrations of more than two components in the blood
concurrently (recall (1.6)). Such are for example the dysfunctional
hemoglobins methemoglobin and carboxyhemoglobin.
These hemoglobins are usually present at very low levels of a few
percent in the blood, but their levels can increase for smokers or under
certain conditions, like carbon monoxide poisoning[29,46]. As they
decrease the amount of reduced hemoglobin in the blood that can freely
bind to oxygen, they can lead to erroneous measurement of the real
(fractional) oxygen saturation by a pulse oximeter, leading for example
to SpO2 values of 90%, despite HbO2 being less than 30% of the total
blood hemoglobin[30].
Such oximeters are slowly starting to appear in the market[47]. Evid-
ently, employing multiple LEDs increases proportionally the oximeter
power consumption, rendering the use of this technique difficult in
portable low-power oximeters.
1.1.5 Limitations of pulse oximeters
Pulse oximeters in a real environment, like every monitoring method
that is not applied under strictly controlled external conditions, face
29
limitations that may lead to erroneous readings of a patient’s oxygen
saturation. The most important are:
• Motion artefacts. This is a general name for distortion in the
measured PPG signal caused by patient motion. These are most
commonly caused by displacements of the sensing probe[16] or
movements in the venous blood due to the patient motion[12].
Motion artefacts can have a large amplitude and hence can easily
corrupt the small AC component of the recorded PPG signal, or,
even worse, saturate the oximeter front-end. Since they are gen-
erated by the same sensing principle as the useful components
of the PPG signal, their removal through post-processing of the
recorded signal is not usually straightforward. Signal processing
techniques (e.g. [15,16,22,23,48–50]) and better sensor design
(e.g. [25,51–53]) have been suggested and applied before with
varying degrees of success to eliminate them. Despite the ad-
vances in their elimination over the last decade, motion artefacts
still constitute a large limitation in the fabrication of accurate
portable pulse oximeters which can be used outside a hospital
environment[12,54].
• Low oxygen saturations. Due to the experimental generation of
calibration curves, oximeters commonly exhibit errors in their
readings when used for oxygen saturations below 70%[11,31,45].
In fact, most general purpose commercial oximeters’ specifica-
tions do not provide any guarantee of correct operation for low
SpO2 values. This problem becomes even more relevant when
oximeters are used to monitor foetal oxygen saturation since its
levels are lower than those of adults[45]. A large amount of work
has been devoted in the last 20 years in improving this accuracy,
amongst others by deriving better theoretical models for pulse
oximeter operation (section 1.1.3).
• Dysfunctional hemoglobins. Dysfunctional hemoglobins also ab-
sorb the incident light in varying amounts (Fig. 1.2). For ex-
30
ample, carboxyhemoglobin has similar a extinction coefficient to
oxyhemoglobin for light wavelengths close to the red light. Since
this absorbed light is usually not accounted for in the oximeter
calibration curve – again, it would be unethical to induce carbon
monoxide poisoning to a human! – it leads to false readings, when
the dysfunctional hemoglobins are present at higher concentra-
tions than normal in the arterial blood. As these errors occur due
to the same measuring principle generating the useful part of the
signal, they are not readily identifiable and correctable. Fortu-
nately, their occurrence is not frequent. As discussed earlier,
multi-wavelength pulse oximeters provide a potential solution to
this problem.
• Anemia, reduced perfusion and vasoconstriction. Reduced counts
of red blood cells (anemia) or a reduced presence of blood ves-
sels in the probed tissue bed usually lead to poor recorded PPG
signals and hence larger errors in the measured oxygen satura-
tion[55]. The same applies to situations when vasoconstriction
occurs at the probed tissue sites, for example during hypother-
mia[56] or voluntary breath holding[57]. The relative amplitude
(AC/DC ratio) of the recorded PPG signal, can provide an in-
dication of such a condition occurring and is reported in some
commercial pulse oximeters (usually referred to as perfusion in-
dex [58]).
• Ambient light and light shunting. To prohibit detection of ambi-
ent light, oximeter sensors are usually pressed firmly against the
probed tissue. Similarly, some form of optical isolation ensures
that no light is coupled directly from the LED to the photodiode
without first interacting with the probed tissue. If the optical
isolation of the photodetector is not adequate, due to bad design
of the sensing probe or to patient movement, the resulting PPG
signal can be corrupted and lead to inaccurate SpO2 values[21].
31
• Response speed. Averaging to reduce uncertainty in the meas-
ured SpO2 value leads to most oximeters having a delay of a few
seconds in the reported SpO2 values. Furthermore, the distrib-
uted nature of the circulatory system, means that variations in
SpO2 values are measured with different delays at different meas-
uring sites. In general, sensing closer to the heart, like at the
ear or on the forehead, exhibits significantly smaller response
times in comparison to sensing at the extremities, like fingers or
toes[59,60].
For more information on pulse oximeter limitations the reader is
referred to [11,56,61].
1.2 Pulse oximeter sensors and front-ends
Having established an understanding of how the signal measured by
a pulse oximeter is translated to an SpO2 value, it is now time to
examine how this signal is acquired. This section will briefly discuss
the sensors used in pulse oximeters. Then, it will provide an overview
of a typical pulse oximeter front-end and will review previous pulse
oximeter designs, with particular focus on those that have attempted
to achieve low-power operation.
1.2.1 Sensors
Pulse oximeter sensor probes have been devised to measure a PPG sig-
nal from virtually any site on the body. The most commonly used site
in adults is the fingertip, due to the high perfusion and ease of sensor
attachment. Earlobes, toes and forehead are other popular measure-
ment sites[10,11].
In most commercial oximeters the photodiode is placed on the oppos-
ite side of the tissue than the LED, thus detecting the light transmitted
through the tissue. Thus, the sensor is termed a transmittance sensor
32
(a) (b)
Fig. 1.5: Pulse oximeter operation modes: (a) Transmittance and (b) reflectance
and the oximeter is operating in transmittance mode. However, sensors
where the LED and the photodiode are on the same side of the tissue
are gaining popularity in the last decade, mainly due to their potential
for probing various body sites, other than fingertips and earlobes. In
this case, reflectance sensors and mode of operation are used. Fig. 1.5
illustrates the two different configurations.
There is a vast amount of literature, both in academic works and pat-
ents, concentrating on designing pulse oximeter sensor probes, usually
aiming at increasing the accuracy or minimizing ambient light and/or
motion artefacts. Interesting works include the first Nellcor sensors[62],
the development of early[63–69] and recent[70–74] reflectance sensors,
multiple-wavelength sensors[75,76], sensors with improved perform-
ance under motion-artefacts[21,25,51,66] or low saturations[45,77] and
sensors employing other light sources than LEDs[78,79] or arrays of
detectors[76,80].
In the context of interest to this work, i.e. lowering the oximeter’s
power consumption, the work of Mendelson’s group is the most rel-
evant[71–73]. More specifically, in [72] it has been reported that a
reflectance pulse oximeter sensor with large detector area can lead to
detected signals with the same amplitude as a commercial transmit-
tance sensor, but using only one seventh of the LED drive current.
This is an interesting finding, as other experts in the field have argued
that reflectance sensors are likely to exhibit lower[31] or similar[32]
signal levels to transmittance sensors.
Using a commercial reflectance sensor, the author has measured de-
33
tector currents more than 10000 times smaller than the corresponding
LED currents (see chapter 3). This is an order of magnitude higher at-
tenuation than attenuations reported before for a transmittance sensor
probe[81]. However, conclusions cannot be drawn from such isolated
and poorly characterized data points.
The problem is complex, with several factors affecting the intens-
ity of the backscattered light, including separation, size and relative
positioning of emitter(s) and detector(s) and structure of the probed
tissue bed. A larger number of detailed, strictly controlled measure-
ments or simulation data from accurate tissue models are required to
find out whether reflectance sensors are indeed advantageous. The
author would only like to point out that any improvements in power
consumption stemming from better sensor design will probably act
multiplicatively to any benefits that may result from a more sensit-
ive detector front-end. If a sensor redesign results in the same de-
tected photocurrent with half the LED drive current, then a detector
front-end able to operate with half the detector current would allow a
combined reduction in the LED current by a factor of four.
1.2.2 Front-end architecture
The general structure of a pulse oximeter front-end is depicted in
Fig. 1.6. The photocurrent output from the photodetector, usually a
photodiode, is converted to a voltage through a transimpedance amp-
lifier (TIA). The signal is subsequently subject to various degrees of
conditioning aimed at carrying out one or more of the following func-
tions:
• filtering out noise and unwanted signal components
• separating the signal into AC and DC components
• providing further amplification, possibly different for the AC and
DC component of the signal, and adjusting the DC level to better
fit the A/D converter input dynamic range
34
Fig. 1.6: Block diagram of a typical pulse oximeter
Fig. 1.7: Typical transimpedance amplifier used in pulse oximeter front-ends
• demultiplexing the input signal into two channels
• sampling and holding the signal in preparation for the A/D con-
version
The signal is subsequently digitized via an A/D converter. A mi-
croprocessor processes the signal further to reduce the effect of motion
artefacts and noise and calculate the various quantities of interest like
oxygen saturation, perfusion index, respiration rate and heart rate.
The front-end also usually entails a module that adjusts parameters of
the system to adapt to changing conditions at the input and a module
that provides timing signals to synchronize the operation of the vari-
ous system blocks. These are often realised in the digital domain and
are part of the microprocessor. Finally, LED drivers are included to
provide the large output currents required by the LEDs in the sensor
probe.
We will now examine each of these blocks in more detail.
35
Transimpedance amplifier
The transimpedance amplifier most commonly assumes the form of a
single-stage linear transimpedance amplifier, formed via resistive feed-
back around an opamp[11,82–86](Fig. 1.7). Differential topologies are
sometimes opted for to reduce any common-mode input noise[11,86,87].
The feedback operation results in a reduced input impedance for the
TIA, allowing the measurement of fast changes in the detected photo-
current despite the usually large photodiode output capacitances (sec-
tion 2.3). A feedback capacitor is a very common accompaniment
ensuring stability, at the cost of TIA bandwidth[83,86,88–90].
The low input impedance, combined with the large achievable gains,
linear response and the very well understood operation have made this
topology the most popular choice. However, due to the large DC com-
ponent of the PPG signal, large values for the feedback resistor can
result in clipping at the amplifier’s output for large photocurrents. On
the other hand, small resistance values may lead to poor amplification
of the AC component for small photocurrents. To combat these limit-
ations in the input dynamic range the feedback resistor is sometimes
tunable to provide a range of gains[86,91].
Another solution to the limited dynamic range of the linear TIA,
especially under shrinking power supply voltages, has been sought
sometimes in employing logarithmic TIAs instead[92,93]. Their use
is also favoured by the fact that the SpO2 computation according to
the Beer-Lambert law involves the natural logarithm of the input, or,
as expressed by Tavakoli[93], by their inherent ability to respond to
signal contrasts (AC to DC component ratios), rather than absolute
signal levels. However, their reduced gain for high photocurrent levels,
which renders the signal more susceptible to corruption from noise
at subsequent stages, and their reduced speed, for low photocurrent
levels, have limited their use[93,94]. These disadvantages have been
combated to a large extend in [93], by using a high-gain multi-stage
TIA to increase the response speed and a capacitive attenuator in the
36
feedback loop to enhance the overall TIA closed-loop gain (for more
detailed information about logarithmic TIAs see also chapter 4).
Some designs have included a second stage in the TIA, to increase
the signal amplification even more[86,87,90,95]. A two stage design
has also been used in [94] in an attempt to combine the advantages of
the linear and logarithmic topologies towards a TIA with large signal
gain and fast operation across a wide input dynamic range.
The first stage TIA is almost always designed as a broadband ampli-
fier. The modulation of the LED current with narrow pulses to reduce
the power consumption leads to most of the signal power being distrib-
uted to a large number of harmonics of the fundamental modulating
frequency (section 2.1). A broadband amplifier permits most of the in-
put signal power to enter the front-end, or, in other words, allows the
detected signal to have sharp transitions and settle quickly[81,96,97].
Achieving a wide bandwidth while keeping the TIA gain high is a diffi-
cult problem[89,98], which some previous efforts tried to tackle meticu-
lously in their attempt to lower the oximeter’s power consumption[93].
Narrowband TIAs, having a response tuned to a particular harmonic
of the modulation frequency, or resonant circuits before the TIA have
also been proposed in the past[95,99], in an attempt to limit the input
noise bandwidth.
An alternative option that has been gaining interest in the few years
since this work started is to use an switched integrator (or integrating
charge amplifier, or charge summing amplifier) in the place of the TIA
or directly following it[100–103]. Such an approach has the advantage
that it might allow using amplifiers with lower gain-bandwidths than
the ones necessary in a broadband TIA[100]. Furthermore, it has also
been suggested that the integrating action of such a stage provides
noise filtering and hence could improve the SNR[100,101,103]. This
approach has been investigated and will be discussed in detail later in
this work (see chapter 2).
37
Fig. 1.8: Indicative block diagram of a pulse oximeter conditioning block
Signal conditioning
The signal conditioning stage shows the largest variation among the
implementations. It varies from none at all[104,105] to intricate cas-
cades of fifth order active-RC low-pass and band-pass filters and amp-
lifiers[86]. Almost all of the implementations include a band-pass or
high-pass filter (HPF) to extract the AC component of the measured
signal[82,84–86,88,90,92,95,106–108] and/or subtract the detected am-
bient light from the measured signal[83,109,110]. Realizations range
from typical active-RC biquadratic filters[82,83], to low-pass filters in
a feedback loop[85], or correlated-double-sampling implementations,
where a previously sampled low-frequency component is subtracted on
a capacitor[83,86,88,92,110,111] or via a summing amplifier[91].
Some POs additionally include low-pass filters to extract the sig-
nal DC component[88,90], although other designs approximate the DC
component by directly sampling the composite (AC+DC) measured
signal[108]. Low-pass filters are also used sometimes for anti-aliasing
purposes before the signal is sampled by the A/D converter or by a
sample-and-hold[107,111], or to estimate the power of a signal compon-
ent, usually accompanied by a peak detector[84]. They are commonly
realized as passive or active-RC filters.
One or more amplification stages are often present in the signal con-
ditioning chain to bring the amplitude of the AC signal component
38
close to the full A/D converter input range. The employed amplifi-
ers usually have a programmable gain[82,83,91,108,109] to allow for
varying input signal amplitudes without saturating the A/D.
Since most designs use a single photodiode at the detector end,
switches or sample-and-holds are employed to decompose the received
signal into signals corresponding to the, typically two, detected light
wavelengths. These modules are also known as demultiplexers. The
demultiplexing is usually carried out directly after the TIA[82,83,87,
91,108,109] or at the A/D converter[85]. RF noise limiting filters[92]
or DC rejection filters[110] are sometimes included between the TIA
and the demultiplexers. In some designs, a single channel is used for
all the received photocurrents, and the demodulation is carried out in
the digital domain, after the A/D conversion[92,104,107].
Designs with extensive signal conditioning are able to use A/D con-
verters with lower number of bits or slower sampling rates[83,91].
Hence, earlier pulse oximeter implementations usually follow this ap-
proach. With the advances in the technology and design of A/D con-
verters, many designs opt today for digitizing the signal directly after
the TIA[104,105,110,112,113] or without removing the DC compon-
ent[86,111], thus conveniently shifting most of the signal processing
in the digital domain. The downside is that the relatively fast, high-
resolution A/D converters required have a high power consumption.
Once digitized, the PPG signals undergo variable degrees of pro-
cessing, to extract the oxygen saturation value. The calculation al-
gorithms have evolved from simple implementations of (1.10), to in-
tricate signal processing machines employing adaptive filtering, decom-
position in various vector bases, and decision making algorithms to ef-
ficiently discriminate against noise and perform accurate calculations.
These could easily be the focus of a whole PhD thesis, and will not be
discussed in this work.
39
Parameter adjustment
Due to the large variability in the detected photocurrent in a pulse
oximeter, feedback mechanisms are almost always employed to adjust
parameters of the front-end. Most commonly this involves modify-
ing the gains of one or more amplifying stages[82,83,87,95,108,109], or
changing the LED driving currents[82,95,106,109,113,114], to maintain
a certain monitored parameter within a desired range. In most cases
this is aimed to better exploiting the A/D input range[91,95] or avoid-
ing saturating the front-end amplifiers. However, such mechanisms
have also been utilized to maintain a minimum desired signal-to-noise
ratio (SNR)[113] or minimize the front-end’s power consumption[114].
The monitored parameters have included the detected DC or AC
component levels[95,109,115], or some definition of SNR or quality of
the detected signal[113,116]. These are either measured directly on
the detected signal or, more often, extracted after processing. This
ranges from a simple low-pass filter with a large time constant for DC
level extraction[82], to algorithms implemented in the digital domain
to extract some measure of signal quality[113,116]. In most cases, the
control algorithms are implemented digitally with the feedback vari-
ables supplied via a D/A converter[107,109]. However, fully analogue
control schemes have also been employed, for example to control the
LED current[82] or the gain of the TIA feedback amplifier[93].
The LED driving current is amongst the most common feedback-
controlled signals. LED drivers are used to convert the controlled
signal, usually a voltage, to a current pulse fed through the LEDs. The
drivers usually use some mechanism (e.g. a small resistor in series with
the LED) to measure and control the current through the LEDs, rather
than the voltage across them[11]. To increase the efficiency with which
DC power is converted to LED power, more complicated topologies
involving inductors have also been recommended in the past[117].
40
1.2.3 Lowering the power
The different ”flavours” of front-ends that have been summarized in
the previous section, have been introduced in the last 30 years with
the main focus on increasing the accuracy of the SpO2 measurement.
Most of them were targeted to large bedside instruments to be used in
hospitals. In this case power consumption is not an issue. Therefore,
large LED currents having peak values of tens or hundreds of mA are
widely used in an attempt to maximize the detected pulsatile signal
and increase the accuracy of the measurement. This results in power
consumptions of tens or hundreds of mW. Such a power consumption
is impractical for a small, portable, battery-powered pulse oximeter.
The increasing demand on such devices in the last 10-15 years has led
manufacturers and researchers to seek ways to reduce this power con-
sumption without compromising the accuracy of the measurement. In
this section we will review the available in the public domain industrial
and academic efforts that have pursued this goal.
In 1988, Isaacson (Nonin) [92] described a pulse oximeter that uses a
single channel for both the R and IR photocurrents, with a logarithmic
amplifier and ambient light cancellation. An integrating A/D converter
was employed to obtain a PWM representation for the PPG signal
before digitization. No power consumption was reported, but a notably
low duty cycle of 0.8% with a LED switching frequency of 75 Hz was
mentioned.
Scharf and Athan[118,119] suggested a portable, low-power PO by
replacing the whole front-end with a single light-to-frequency converter
integrated circuit (TL220 from Texas Instruments). They argued that
in this way the size of the oximeter is greatly minimized, since the
TL220 die can be directly connected to a microprocessor die and small
surface-mount components can be used for the LEDs and the photode-
tector. Furthermore, the light-to-frequency converter replaces the com-
plex front-end, including a potentially power-hungry A/D converter,
with one integrated circuit (IC). No data was given on the final power
41
consumption of the whole system. However, the TL220 has a typical
power consumption of at least 35 mW. The LED power consumption
is added to this.
Kanemoto and Aoyagi (Nihon Kohden) reported an SpO2 calculation
method based on regression analysis of the R and IR samples rather
than calculating the peak values[120]. It was claimed that this enables
reducing the sampling rate, and thus also the power consumption.
Swedlow et al.[121] (Nellcor) proposed a PO that enters a low-power
sleep mode when the recorded physiological signals are stable. The
instrument then checks periodically every 20 s to verify if the condition
has changed and a transition to the fully ON state is necessary. No
numerical data were reported.
Sueppel et al.[110] (Mortara) proposed switching the front-end amp-
lifier and the LED drivers off when not in use to save power. They also
suggested switching a LED on only for 10 µs, with a sampling rate of
120 Hz. This is a duty cycle of 0.12% (!), which is almost an order of
magnitude lower than most commercial POs. It was claimed that in
this way the LED power consumption is reduced to 0.25 mW and the
total power consumption of the front-end to less than 10 mW. These
numbers, especially the LED power consumption, are indeed, to the
best of the author’s knowledge, the lowest reported up to today.
However, as these are provided in a patent, no measured results are
provided to support them. It is not discussed, for example, how a
settled measurement is obtained from the LEDs in just 10 µs. More
importantly, it is not examined how the front-end performs in terms of
noise, since no analogue filters are used in the front-end (apart from a
series capacitor that samples and subtracts the ambient light) and the
signal is directly sampled and converted via an A/D converter. The
range of the A/D converter is also not commented upon. It is perhaps
the high dynamic range of the A/D converter required for the direct
conversion that leads to the reported 10 mW power consumption, des-
pite the very low LED power consumption. As will be demonstrated
later in section 2.4.1, such low duty cycles combined with direct sam-
42
pling of the PPG signal, are bound to lead to poor SNRs at the de-
tector. A PPG signal may be detectable, but the front-end does not
provide a high enough resolution to discern small changes in SpO2.
On the contrary, Rantala and Backmann [97] provided a thorough
and very accurate discussion on how changing the duty cycle and the
sampling rate affects the SNR achieved by the front-end. On that basis,
they proposed regulating the LED drive, by changing the switching
frequency, pulse amplitude or duty cycle, to achieve a sufficient SNR
at the detector. It was not discussed how exactly this target SNR
would be calculated and what the desired value may be. No specific
implementation of the proposed idea or power consumption data were
reported.
Similar ideas have been proposed by most dominant pulse oximeter
manufacturers. Al-Ali [114] (Massimo) proposed switching to a low
duty cycle state when the signal is stable. The oximeter then switches
to a high power state when an event occurs (e.g. a desaturation or a
motion artefact) or when the signal quality is low. Hence, the average
LED power consumption can be reduced to 70 mW from over 500 mW.
Takeda et al.[115] (Nihon Kohden) recommended regulating the LED
drive to achieve a value for the detected AC component that falls within
a desired range. McCutcheon et al.[116] (Nellcor) suggested switching
to various low-power modes when the detected data matches predeter-
mined data profiles that indicate a non-critical condition. The reduc-
tion in power is achieved by lower sampling rates, or switching off one
LED or parts of the detector front-end. Nordstrom et al.[113] (Nellcor)
proposed dynamically measuring the noise in the front-end and chan-
ging both the LED drive current and the gain in the various stages of
the front-end to maintain an acceptable SNR. They suggested a min-
imum SNR of 8 and a maximum SNR of 128. No details or quantitative
data were provided on the implementation of the proposed algorithm.
Despite this large variety of proposed systems and algorithms, it is
difficult to quantitatively assess the state-of-the-art, due to the very
restricted data dissemination. Published academic works are usually a
43
better source for this purpose.
Rhee et al.[51] proposed a finger ring design for a sensor probe to
record PPG signals, with primary goal the reduction of motion arte-
facts. However, they also described a full front-end implementation,
including a microprocessor and a transceiver for wireless communica-
tion to a recording instrument. By combining several system paramet-
ers, including the LED drive current, microprocessor clock frequency
and transmitter bit rate, into a mathematical equation, they optimized
the clock frequency to achieve a minimal power consumption for the
whole system. For an optimal clock frequency of 74 kHz they reported
an impressive total power consumption of less than 1.5 mW, of which
340 µW is dedicated to the LEDs. Unfortunately, their work concen-
trated on reliable heart rate detection at the presence of artefacts.
Hence, no SpO2 measurements were provided. Furthermore, the noise
of the front-end was not considered and no SNR data were reported.
Wong et al.[122] reported an integrated front-end for heart rate mon-
itoring using a LED with a near-infrared (NIR) wavelength. They fo-
cused on achieving a cut-off frequency of as low as 0.25 Hz for the fully
on-chip low-pass filters, using a current-steering technique for their in-
tegrators. They reported a power consumption of 4.5 mW for their
front-end, with a LED duty cycle of 1% and a LED power consump-
tion of 0.2 mW. A single infrared LED was used, and only measured
results showing heart rate detection were shown. Most of the meas-
ured results were reported using an off-chip transimpedance amplifier.
An input noise figure was provided, but it was derived from simulation
data and it is not clear how it is calculated.
Based on this design, Wang et al. reported a multichannel system
for recording of a PPG signal from an earpiece sensor with motion
cancellation. They report a power consumption of 6 mW per sensing
channel and peak LED currents of 4− 8 mA with a 25% duty cycle.
As in [122], these numbers refer to reliable heart rate detection only,
and not SpO2 measurements.
Haahr et al.[74,101,103] developed an electronic patch for record-
44
ing and transmission of physiological data, with emphasis on SpO2
measurement. The patch includes a new large area annular photodi-
ode design in an attempt to lower the power of the reflectance PO.
However, the effort is concentrated on the patch and sensor develop-
ment, rather than optimizing the electronics. A power consumption of
45 mW is reported, of which 8.4 mW is dissipated on the two LEDs
operating at a 14% duty cycle.
Patterson et al.[100,102] proposed using a switched integrator as
the first stage to lower both the power consumption (as need for large
gain-bandwidth opamps is limited) and the wideband noise of the front-
end. Their published efforts, however, concentrate more on the sensor
placement and on artefact reduction and are not optimized for power.
The reported front-end consumes approximately 13 mW, 5 of which is
dissipated on the two LEDs.
Following a different path and concentrating on the signal processing,
Baheti et al.[123] proposed using compressive sensing techniques to
sample the input signal at random time intervals. In this way, 10-40
times less samples could be required to reconstruct the PPG signal to
an acceptable fidelity, thus heavily reducing the associated LED power
consumption. They demonstrated acceptable errors in the measure-
ment of heart rate and blood pressure from a PPG signal processed in
this way. This is a promising idea, but more research is required to
assess the viability of the proposed method in a practical environment.
A large volume of literature that is relevant to pulse oximeter front-
ends can also be found in the design of particle detectors. For example,
[124] demonstrated a design that, with a 130 dB input dynamic range
and an input-referred current noise of less than 3 pA, would be very
appealing for a PO front-end. However, its power consumption exceeds
10 mW. The picture is similar with most particle detectors, dominated
by the very strict noise requirements and fast – relative to those in a
PO – sampling frequencies[125]. Additionally, particle detectors do
not usually attempt to resolve a large DC component and a small AC
component concurrently and their input modulation is not commonly
45
controlled, as in a pulse oximeter. Due to these significant differences,
this work will not examine particle detector systems in detail.
The most systematic and complete academic effort to design a low-
power PO front-end known to the author is that of Tavakoli-Dastjerdi
[93,126]. In his PhD thesis he identified the settling time of the TIA
as the bottleneck for lowering the duty cycle of the LED driving cur-
rents, and hence the oximeters’ power consumption. To combat this,
the TIA design shown in Fig. 1.9 was proposed. It is a logarithmic
transimpedance amplifier, with a capacitive divider providing some
frequency-dependent attenuation in the feedback loop gain. The feed-
back amplifier needs to have a large gain to allow for fast settling of
the TIA output, despite the large photodiode output capacitance (see
also section 2.3 later). However, increasing the gain in a constant-
gain-bandwidth amplifier, limits its bandwidth, and thus the stability
of the feedback loop, as the dominant pole is set by the photodiode
capacitance and not the amplifier. To alleviate this problem Tavakoli
ingenuously employed an idea from distributed amplifiers: more than
one low-gain amplification stages are used in cascade. It can be shown
that, up to a certain number of stages, this leads to an extension in
the total gain-bandwidth of the amplifier, for the same total power
consumption.
To combat the low gain of logarithmic amplifiers, a capacitive divider
was added to the feedback loop to provide increased gain for the AC
component of the signal, in comparison to the DC component, an idea
adopted from Delbruck’s work[127]. A automatic-gain-control (AGC)
mechanism was also implemented to lower the feedback amplifier’s gain
for large input currents and avoid instability (a technique also discussed
in more detail in chapters 2 and 4).
Following the TIA, fully analogue circuit blocks were used for signal
conditioning and calculations generating a single output current cor-
responding to the ratio-of-ratios and thus to oxygen saturation. In this
way a very low total power consumption of 4.8 mW was achieved for
the whole system. Of this, 4.4 mW is consumed on the sensor LEDs.
46
Fig. 1.9: The transimpedance amplifier proposed in [93,126]
Unfortunately, the fully-analogue implementation comes with sev-
eral shortcomings. The low duty cycles limit drastically the power of
the measured signal (section 2.1). At the same time, the noise char-
acteristics of the front-end lead to an output SNR that might not be
high enough to resolve small changes in the measured SpO2 signal (sec-
tion 2.4.1). An SNR of 39 dB was calculated, but this estimate may
be optimistic (section 3.8). Furthermore, matching and accuracy lim-
itations in the analogue blocks used make it difficult to achieve errors
of below 5% that are required for an accurate SpO2 calculation (sec-
tion 2.2). We will examine this implementation and its shortcomings
in greater detail later on.
Despite its weaknesses Tavakoli-Dastjerdi’s work, apart from report-
ing a low-power PO front-end, is important for two more reasons.
Firstly, it questions the effectiveness of conventional oximeter front-end
design and poses the question whether power savings can be achieved
not only by designing better oximeter sensors, but by improving the
front-end. Secondly, and more importantly, it pursues this perform-
ance enhancement in a systematic way, using mathematical models to
analyse the trade-offs present in the front-end design.
These are exactly the same fundamental questions that this work
47
tries to address. Despite the large availability of POs, works dealing
with the trade-offs in their design are very limited. Aguillar-Pelaez
et al.[81] looked into the power trade-offs involved in choosing para-
meters of the system, like bandwidth and duty cycle of the LED cur-
rent. However, the important trade-off between the detector speed and
power consumption, was not taken into account, leading in proposing
a detector with a bandwidth of 1 GHz and a power consumption of
several mW.
The useful observations of both [93] and [81] did not consider the
effect of sampling on noise and signal, and hence are strictly applicable
only to fully analogue oximeter implementations. A sampled front-
end was considered in [97]. Very insightful examples were provided to
describe the effect of various parameters on SNR and power, but no
quantitative analysis and numerical results were reported.
In this thesis the results of these works are compiled and extended
upon, considering also, for the first time, the possibility of a fully-
integrated front-end implementation. The advantages of analogue and
sampled implementations are compared via simulations and the vari-
ous trade-offs are demonstrated and discussed. Following this analysis
a new, fully-integrated PO front-end topology is proposed that demon-
strably achieves a very low LED power consumption while maintaining
an adequate SNR for the detected signal.
Before concluding this section, however, there is a pressing ques-
tion that naturally arises: what is the current state-of-the-art power
consumption and how much are we trying to reduce it? The most
accurate answer that can be given is ”it is complicated”. The author
has scanned several commercial marketing brochures in an attempt to
answer this question. Using the quoted hours of operation and average
capacities for the battery type of each PO, where available, some indic-
ative power consumptions have been calculated and are summarized
in Table 1.2.
48
Tab
le1.2
:P
uls
eox
imet
erp
ower
con
sum
pti
on
Oxim
eter
Qu
oted
Bat
tery
Avg.
Su
pp
lyP
ower
hou
rsC
urr
ent
[mA
]a,b
[mW
]b
Nel
lcor
N-6
5c
154
xA
A(a
lk.)
173
1040
Non
inG
o221
1x
AA
A(a
lk.)
5786
Mas
sim
oR
ad-5
304
xA
A(a
lk.)
8752
0K
onic
aM
inol
taP
uls
ox-3
00i
301
xA
AA
8713
1E
dan
Inst
r.H
100B
36N
iMH
4.8
V(1
800m
Ah
)50
240
Med
Ch
oid
eM
D30
0C21
402
xA
AA
3090
Con
tec
Med
ical
CM
S50
DL
562
xA
AA
2142
Fav
orit
ePlu
sP
C-6
8B70
d2
xA
AA
1751
Non
inP
alm
sat
2500
804
xA
A(a
lk.)
3319
5H
untl
eigh
Min
iPu
lse
120
4x
AA
2213
0N
onin
8500
160
6x
AA
(alk
.)16
98S
PO
Med
ical
Pu
lseO
x61
0020
02
xA
A(1
200m
Ah
)13
39S
PO
Med
ical
Pu
lseO
x60
0050
03.
6V
Li
(1 2A
A)
27.
2S
PO
Med
ical
Ch
eckm
ate
1000
3.6
VL
i(1 2
AA
)1
3.6
SP
OM
edic
alO
EM
mod
ule
--
-1.
5d
Rh
eeet
al.
[51]
560
d3
VC
R20
32-
5VC
R20
160.
491
1.47d
Su
epp
elet
al.
[110
]-
--
10T
avak
oli[
93]
-3
V-
5V
1.4(
3V)
-0.
119(
5V)
4.8d
aB
atte
ryca
pac
itie
s(u
nle
ssst
ated
oth
erw
ise)
:2600
mA
h/
1200
mA
h/
1000
mA
hfo
rA
A/A
AA
/L
i1 2A
Ab
att
ery
bB
atte
ries
assu
med
inse
ries
cN
ellc
orqu
otes
the
sen
sor
pow
erco
nsu
mp
tion
tob
e52.
5m
Wd
No
dis
pla
y
49
These numbers should only be considered as a very rough estimate
of the state-of-the-art for several reasons. The quoted values refer to
total power consumption, including possibly power hungry displays.
The various oximeter sensor probes have different responses that po-
tentially affect the achievable power consumption. It is not clear how
measurements are distributed over the quoted hours of operation; as
was discussed earlier, some manufacturers put the oximeter in a sleep
mode when a stable signal is detected, or only take intermittent meas-
urements. But more importantly, there is no indication as to the qual-
ity of each oximeter’s measurement. All manufacturers claim the com-
monly required less than 2% error in 63% of the measurements for oxy-
gen saturations above 70%, but this provides little information about
the achievable SNR of the oximeter. As we will note numerous times
later, this is probably the most crucial factor determining the power
consumption. The difference in SNR and accuracy could be the main
reason behind the large differences in power consumption between the
expensive bedside oximeters used in hospital environments and the
portable, cheap oximeters intended for home and recreational use.
Taking all these considerations into account, Table 1.2 shows that
typical power consumptions are of the order of tens of mW per LED.
However, some systems have recently reported power consumptions of
less than 1 mW per LED. With the commonly used two LEDs and a
1 Ah 3 V Li battery, this translates to 1500 h of continuous operation,
which is probably enough for any practical purpose.
Nevertheless, smaller capacity batteries of 50− 100 mAh, which would
be preferential in disposable sensor patches[1] or health monitoring
sensor networks[128], drastically reduce these operation times. This is
more the case if the pulse oximeter is only one of the sensor interfa-
cing or communication subsystems powered by the battery, or if more
than two LEDs are used. As was discussed earlier, such systems are
becoming increasingly common to provide more accurate, continuous
and detailed monitoring of a patient’s condition. Reducing the LED
power consumption by an order of magnitude or more would greatly
50
facilitate the integration of accurate pulse oximeters in these portable
vital sign monitoring systems.
51
2 Low-power fully-integrated
pulse oximeter front-ends
The requirements for low power consumption and full integration pose
interesting challenges in the design of a pulse oximeter. This chapter
discusses these challenges before proceeding to present a novel pulse
oximeter front-end design, that can achieve a low LED power consump-
tion, while at the same time ensuring an adequate signal-to-noise ratio
at the measurement of the photoplethysmographic (PPG) signal.
For this purpose, the detected PPG signal is initially modelled math-
ematically. This provides very useful insights to the necessary charac-
teristics and challenges of a low power oximeter front-end design. The
calibration models discussed in chapter 1 are used to derive quantitat-
ive specifications for the required signal-to-noise ratio at the front-end.
The discussion then proceeds to examine the two main trade-offs
affecting LED power consumption in a PO, power-stability/speed and
power-noise. In particular, the forms these trade-offs assume under
two different types of front-ends, analogue and sampled, are investig-
ated. Simulation results are presented to show that under low-power
consumption operation, noise, rather than system speed, becomes the
bottleneck in the system performance, especially in a fully integrated
system.
The noise limitations posed on and by the transimpedance ampli-
fiers in both types of systems are analysed and it is shown that, if
designed appropriately, a sampled implementation can achieve higher
SNRs under low-power operation. Two newly developed sampled PO
front-ends are then presented, and some of their additional appealing
52
features explained. After verifying their potential for high-SNR, low-
power operation, a detailed ASIC implementation of one of them is
described.
2.1 The signal in pulse oximetry
The detected photocurrent in a pulse oximeter composes of a large DC
current and a small pulsatile AC component. The latter is typically
0.5-5% of the DC component. As this pulsatile component is generated
by heart pulsations, the frequencies of interest in the detected signal
span up to a maximum of 5 Hz. For simplicity the narrowband AC
component can be modelled with a single tone with frequency fo:
iac(t) = cαILEDcos(2πfot) (2.1)
In (2.1) ILED is the peak LED drive current. c is the AC/DC com-
ponent ratio, or, to borrow a term from photodetectors, the signal
contrast. α is a factor representing the average light attenuation by
the tissue and, if Idc is the DC component of the detected signal, is
defined as:
α =IdcILED
(2.2)
To save power the LED drive current is modulated by a square wave
with a frequency fs and a low duty cycle D. Using a Fourier series
expansion the LED current is[81]:
iLED(t) = (ILED +iac(t)
α)[D + 2
∞∑n=1
sin(nπD)
nπcos(2πnfst)] (2.3)
Using the modulation property, the detected photocurrent can then
be written as:
53
Fig. 2.1: Frequency domain representation of the detected photocurrent in a pulseoximeter. Only the positive frequencies of the Fourier transform of thesignal in (2.4) are plotted. The signal is symmetric around the verticalaxis. The AC component of the PPG signal is depicted with a finitebandwidth, rather than as an impulse. The plot is not to scale and relativedimensions have been exaggerated for better representation
iph(t) = DαILED1 + c sin(2πfot)
+ 2∞∑n=1
sinc(nπD) cos(2πnfst)
+ c∞∑n=1
sinc(nπD)[sin(2π(nfs + fo)t)
+ sin(2π(nfs − fo)t)]
(2.4)
A frequency domain representation of the detected photocurrent is
shown in Fig. 2.1. Equation (2.4) showcases many of the challenges
that need to be addressed in the design of a PO front-end. It can be
observed that modulating the LED current with the pulse train leads
to redistribution of the total signal power. The power of the baseband
is attenuated by the duty cycle for both the DC component and the AC
component (fo). The “lost” power is redistributed to the harmonics
nfs for the DC component, whereas that of the AC component, to the
intermodulation products at frequencies nfs ± fo.This is a very important property of the detected PPG signal in a
54
pulse oximeter front-end. If no signal power is to be wasted, a broad-
band detector is required, with a bandwidth that will allow the sig-
nal energy present in the higher signal harmonics to enter the front-
end[81,97]. Alternatively phrased, a detector with a small settling time
is required to allow settling of the measured signal before a measure-
ment is performed. A different approach is using a narrowband de-
tector, to detect the DC and AC components around a certain har-
monic of the modulation frequency (including DC). The cost for this
approach is that the measured signal energy is reduced (e.g. by D if
the baseband signal is detected).
These problems become even more significant in low-power pulse
oximeters, where low duty cycles are used to reduce the LED power.
A pulse train with a very low D resembles an impulse train, resulting in
a redistribution of the signal power across a large number of harmon-
ics (and bandwidth) and, consequently, a small power concentrated
around each harmonic of the modulation signal.
It can also be noted in (2.4) that the components at DC and the har-
monics of fs are 1/c times larger than the corresponding components of
the pulsatile part of the detected signal. That poses a problem for two
reasons: the large DC and switching components can saturate parts
of the front-end if they are not filtered out; and the AC component
usually needs to be filtered and amplified separately to be measured
with a good resolution.
We will return to these points later on and investigate their im-
portance in fully analogue and sampled oximeter front-ends. However,
firstly we will attempt to answer the question that the last point nat-
urally poses: what is the resolution required in the measurement of the
detected photocurrent? Or, equivalently, what is the required signal-
to-noise ratio (SNR) at a pulse oximeter front-end?
With the exception of [81] this question has not been addressed in
detail in published works. In the next section we will build on the
analysis of [81] to determine the required SNR value.
55
2.2 Resolution specifications
Most commercial pulse oximeters specify an error of ±2 digits in the
measurement of SpO2 for saturation ranges between 70%-100%[11].
This is usually specified as one standard deviation of the error dis-
tribution. That is, 63% of the measurements are expected to exhibit
an error within this range.
To derive a specification for the measured PPG signal from such a
requirement, the relationship used to calculate the SpO2 value from
the measured photocurrent needs to be considered. As has been dis-
cussed earlier, the AC and DC components of the measured signal
are used to calculate the ratio-of-ratios Λ (see eq. (1.11)). SpO2 is
then derived from Λ via an empirical relationship that is determined
by ad hoc calibration of each oximeter design. To determine a typ-
ical resolution requirement however, the theoretically derived SpO2-Λ
relationship based on Beer-Lambert law, (1.10), will be used.
By differentiating (1.10), the (relative) sensitivity of SpO2 to Λ can
be found to be:
SSpO2
Λ =dSpO2
dΛ
Λ
SpO2
= −(81− 0.73× SpO2)(18 + 0.11× SpO2)
22.05× SpO2
(2.5)
The maximum allowable (relative) error in Λ is:
∆Λ
Λ<
∆SpO2
SpO2
1
SSpO2
Λ
<∆SpO2
Λ
dΛ
dSpO2
(2.6)
If, similar to commercial oximeters, a maximum error of 2 digits is
required in the measurement of SpO2, and the Beer-Lambert calibra-
56
0 20 40 60 80 1002
4
6
8
10
12
14
16
18
20
SpO2 [%]
Max
imum
acceptable
relative
error
∆Λ Λ
[%]
Fig. 2.2: Maximum acceptable relative error in the measurement of Ratio-of-ratiosΛ, if a Beer-Lamber calibration curve is used
tion curve (1.10) is used, (2.6) can be expressed in terms of SpO2:
∆Λ
Λ<
2
Λ
dΛ
dSpO2
< − 2× 22.05
(0.11× SpO2 + 18)(81− 0.73× SpO2)
(2.7)
A plot of the maximum acceptable relative error in Λ is shown in
Fig. 2.2. The small Λ values for high saturations mean that large rel-
ative errors are acceptable, whereas for low saturations the acceptable
relative error decreases rapidly. This is one of the reasons that meas-
urements under low oxygen saturations are more error prone, since a
small relative error in Λ requires a high signal-to-noise ratio.
The (relative) error in Λ is related to errors in the measurement of
the AC/DC ratios for the, typically two, light channels cR, cIR
∆Λ
Λ=
√(∆cRcR
)2 + (∆cIRcIR
)2 (2.8)
57
which in turn relates to errors in the measured AC component
∆cici
=
√(∆ACiACi
)2 + (∆DCiDCi
)2 ≈ ∆ACiACi
(2.9)
since typically DCi ACi (i = R, IR).
The errors in the two channels, as well as the errors in the AC and
DC components have been assumed to be independent. This is a good
approximation if white noise is dominant and the measurements are
performed at different times. Fortunately, these conditions are usually
satisfied in a pulse oximeter front-end.
The error in the measurement is due to noise in the front-end and
will be considered the same for both the R and IR channels1:
∆cici
=N
ACi=
1
SNRi
(2.10)
Using (2.8)-(2.10) the relative error in Λ is:
∆Λ
Λ=
√(
1
SNRR
)2 + (1
SNRIR
)2 (2.11)
Minimizing the error across various saturation levels, while at the same
minimizing the LED power requires knowledge of the precise relations
between SNR, SpO2 and power, that are implementation dependent.
To proceed it will be assumed that the detected photocurrents have
the same DC levels, i.e. DCR = DCIR. This is not the optimal choice,
however it is the one followed in the proposed design. Under this
assumption SNRR = Λ× SNRIR, and (2.8) can be reformulated as:
∆Λ
Λ=
1
SNRR
√1 + Λ2 (2.12)
1This is a valid assumption unless the photocurrent-dependent thermal noise ofthe photodiode is dominant and the detected current levels are substantiallydifferent for the two channels. This is not usually the case.
58
The error in the SpO2 measurement due to noise is then:
∆SpO2 =1
SNRR
√1 + Λ2 × SSpO2
Λ × SpO2 (2.13)
If, similar to commercial oximeters, a maximum error of 2 digits is
required in the measurement of SpO2, the minimum required SNR for
the R channel can be derived as:
SNRR >
√1 + Λ2S
SpO2
Λ SpO2
2(2.14)
In a similar way, the minimum required SNR for the IR channel is
derived:
SNRIR >
√1 + Λ2S
SpO2
Λ SpO2
2Λ(2.15)
Equations (2.12)-(2.15) make no assumptions as to the form of the
SpO2-Λ relationship, and thus are valid in all cases, provided that
DCR = DCIR. If the Beer-Lamber calibration curve (1.10) is used,
the right hand sides of (2.14)-(2.15) are plotted in Fig. 2.3.
Since SNRR = Λ×SNRIR, it is enough to satisfy the SNR require-
ments for the R channel and those for the IR will automatically be
satisfied as well. For the range of oxygen saturations between 70% and
100% the minimum SNRR requirement assumes a maximum value of
26.73 or 28.5 dB for SpO2 = 70%.
In practice, it is often desirable to specify an oximeter’s SNR at
higher oxygen saturations, since it is hard to perform calibration meas-
urements on humans at such low saturation levels. As oxygen satur-
ation decreases down to 70%, the absorbance for red light increases,
while for infrared it slightly decreases (Fig. 1.3, Table 1.1). If every
other physiological parameter remains constant, the AC components,
and hence, SNRR and SNRIR will follow the same trend. Hence,
one might be tempted to simply specify the minimum SNRR of (2.14)
for SpO2 > 90%, since the SNRR will be higher at lower saturations.
However, if SpO2 is measured, as is common, at the extremities, this
59
0 20 40 60 80 10010
15
20
25
30
35
40
45
SpO2 [%]
Minim
um
SNR
[dB]
SNRR
SNRIR
Fig. 2.3: Minimum required SNR for R and IR channels for a Beer-Lamber calib-ration curve and a maximum error of 2 units in SpO2
is not adequate.
Low oxygen saturation levels lead to constriction of the peripheral
blood vessels to maintain the provision of oxygen to the vital central
organs[57]. This leads to a significant decrease in the pulsatile com-
ponent measured by the PO[129]. However, the author could not find
any published data quantifying this reduction. As will be discussed in
detail in chapter 3 the author’s measurements on a limited number of
subjects indicate a maximum reduction of 2-3 times for SpO2 < 90%.
Hence, a margin of 10 dB will be assumed to be adequate in this work,
leading to a requirement for a minimum SNR of 39 dB under normal
oxygen saturations.
The above analysis provides a specification that can be used to guide
the design of a low-power oximeter front-end. To derive the SNR of
39 dB a number of more (vasoconstriction for low saturations) or less
(Beer-Lambert law calibration curve) realistic assumptions have been
made, that will need to be adjusted for every design and as more
60
well characterized, publicly available quantitative physiological data
emerge. Inclusion of more factors that affect the accuracy of the meas-
urement in the calculations, like motion artefacts, will also lead to a
modification in the calculated SNR.
However, apart from the actual SNR value, the importance of this
analysis is that it highlights a structured, quantitative approach that
is a prerequisite to determining the limits in the design of low-power
pulse oximeters, which, at least from the published literature, seems to
be largely absent up to today. The achieved SNR under some stand-
ardized measurement setup should become an integral part of every
pulse oximeter specification.
2.3 The power-stability trade-off
To present this trade-off the simplest possible PO front-end configur-
ation, consisting of a resistive-feedback transimpedance amplifier, will
be considered (Fig. 2.4). The dynamics of this TIA have been thor-
oughly studied before[89]. It is a two-pole closed-loop system. In the
case of a PO the dominant pole is set by the large photodiode out-
put capacitance, Cd (typical values 100 pF-5 nF), together with the
small-signal input impedance of the TIA. The non-dominant pole is
determined by the feedback amplifier dominant pole.
To investigate the effect of the stability limitations on the power
Fig. 2.4: Typical transimpedance amplifier with linear resistive feedback employedin the SNR simulations
61
consumption, consider the open-loop transfer function:
AOL =Ao
1 + τas
1
1 +RfCds(2.16)
where 1/τa is the feedback amplifier dominant pole. The reader can
easily verify that the shunt-shunt feedback results in lowering the (low-
frequency) input impedance of the closed-loop system by the open-loop
DC gain to Rf/Ao. This is the impedance that appears in parallel to
the photodiode large output capacitance to form the dominant closed-
loop system pole and determine the response speed of the TIA. Hence,
a high open-loop gain Ao is required to achieve a low input impedance
allowing for fast settling of the pulsed photocurrent.
However, increasing Ao also increases the open-loop transfer function
crossover frequency Ao2πRfCd
, limiting the phase margin, and leading to
instability or ringing that increases the settling time. To avoid this,
the non-dominant pole, 1/2πτa, needs to be placed at or higher than
the crossover frequency, depending on the desirable phase margin. If
we require the closed-loop system to have only real poles, then, to a
good approximation, the non-dominant open loop pole needs to be at
least 4 times larger than the crossover frequency:
1
τa> 4
AoRfCd
(2.17)
Assuming that a typical voltage-mode opamp or OTA is used as a feed-
back amplifier, its pole can be expressed in terms of its gain-bandwidth
product (GBW):1
τa=GBW
Ao=gmiCo
1
Ao(2.18)
with gmi the transconductance of the input pair of the amplifier and
Co its load or compensation capacitance. Then, the stability condition
becomes:gmiAoCo
> 4AoRfCd
(2.19)
It is reasonable to assume that the input stage of the amplifier op-
62
erates in strong inversion to achieve a large gmi and hence lower input
referred thermal voltage noise. If Iamp is the bias current of the amp-
lifier, gmi = Iamp/(VGS − VTH) and (2.19) transforms to:
Iamp > 2(VGS − VTH)A2oCo
RfCd(2.20)
Eq. (2.20) expresses the basic speed-power trade-off present in the
TIA: beyond a certain point to ensure the presence of real poles in the
system, the amplifier power consumption needs to increase quadratic-
ally with the required photodiode pole speed-up, Ao.
To associate this trade-off with the PO operation and the LED power
consumption, we observe that the TIA output needs to settle within
the time an LED is ON. Under the real pole assumption the TIA
dynamics can be approximated using its dominant pole, Ao/(RfCd).
Its settling time within an accuracy of ε is then:
Ts = RfCdln(1/ε)
Ao(2.21)
If a LED duty cycle of D is used, with a sampling frequency of fs
per channel, then the minimum required TIA amplifier gain Ao would
be:
Ao >RfCd ln(1/ε)
Dfs (2.22)
which, considering (2.20) translates to a minimum bias current of:
Iamp > 2 ln(1/ε)2(VGS − VTH)f 2s
RfCoCdD2
(2.23)
Thus, while the LED power consumption decreases linearly with de-
creasing duty cycle D, the TIA consumption increases quadratically :
P = VDD × (DILED + 2ψ ln(1/ε)2(VGS − VTH)f 2s
RfCoCdD2
) (2.24)
ψ is a proportionality constant to account for the fact that the TIA
bias current is in reality larger than that used to bias its input stage.
63
(2.24) shows that there is clearly an optimal duty cycle for a given
system (Cd) and TIA amplifier design (Co, VGS−VTH). Too large a duty
cycle eases the TIA design but leads to excessive power consumption
in the LEDs. On the other hand, a very small duty cycle results in
the TIA consuming more power than the LEDs. A lot of commercial
pulse oximeter designs are a good example of the former, whereas [81]
is an example of the latter.
The optimum duty cycle can easily be calculated to be:
DoptP =2 ln(ε)2(VGS − VTH)f 2
sRfCoCdILED
(2.25)
2.4 Power-noise trade-off
Unfortunately, stability is not the only constraint the designer needs
to consider. In any sensor front-end, achieving an adequate signal-to-
noise ratio at the detector is a primary concern, and, as we will see in
this section, could pose a greater limitation on LED duty cycles than
the TIA stability. To investigate the noise limitations, it is necessary
to consider the signal processing following the TIA. In particular, we
will distinguish between two main options: a fully analogue signal
processing chain and a sampled signal processing chain. The latter
could include both a fully digital processing, as well as, a discrete-time
processing option, like switched-capacitor blocks.
2.4.1 Analogue implementations
In a well designed sensor interface the noise performance of the first
amplifying block is the most important. At the output of the first
amplifier the signal of interest should have a sufficiently high amplitude
that ensures it will not be corrupted by noise in subsequent signal
processing stages. However, fully analogue PO implementations suffer
from a severe degradation in the detected signal power when operated
under low LED duty cycles (see section 2.1). As a result, apart from
64
the TIA noise, the noise of the following stages in the signal chain
becomes of significance.
Usually in an analogue PO the amplifier is followed by some form of
bandpass filter. This serves to limit the noise, but primarily removes
the large DC and switching components in the detected signal, that
could saturate subsequent blocks in the signal chain. The noise of this
filter can become restrictive, especially if a fully integrated implement-
ation is considered. As any integrated filter noise scales proportionally
to kT/C[130,131], the noise performance is constrained by chip capa-
citor area.
We will now examine the main noise sources in more detail. In the
following it is assumed that a filter with a frequency response F (s) is
following the TIA and all noise densities are calculated at the output of
the filter, unless otherwise specified. Since the purpose of this filter is to
extract the AC component of the signal, we will refer to this as the AC
filter. In many commercial implementations this filter has a bandpass
response. However, in the following we assume a first-order low-pass
response for F (s) to simplify the simulations and the discussion2. As
the assumption is the same for all the compared responses this still
results in a fair comparison.
The TIA amplifier will be assumed to have a gain that satisfies (2.22)
and a large enough gain-bandwidth so that the closed-loop system
has real poles (see eq. (2.17)). Additionally, the minimum value the
amplifier gain-bandwidth can assume will be limited to the value that
can be achieved with the given amplifier bias current and an on-chip
bandwidth-limiting capacitance of 10 pF (see eq. (2.18)). The above
two conditions determine the amplifier pole as:
1
τa= max (
4AoRfCd
,gmiAoCo
) (2.26)
The TIA contributes noise due to the thermal noise of the resistor
2A bandpass response for F (s) would degrade the SNR further, since the imple-mentation of a low-frequency zero would introduce more noise (see also Fig. 2.9).
65
Fig. 2.5: Noise transfer functions for the resistor thermal noise (ATIARf) and amp-
lifier thermal noise (ATIAth) in a resistive feedback transimpedance amp-
lifier
in the feedback path and the thermal and flicker noise of the OTA
(Fig. 2.5):
SvnoRf = SvnRf
∣∣ATIARf ∣∣2 |F |2= 4kTRf
∣∣∣∣∣ 1
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|F |2(2.27)
SvnoOTAth= SvnOTAth |ATIAth |
2 |F |2
=4kγT
gmi
∣∣∣∣∣1 +RfCds
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|F |2(2.28)
SvnoOTA1/f= SvnOTA1/f
|ATIAth|2 |F |2
=KF ( Iamp
2)AF
CoxWL
η
g2mi
1
f
∣∣∣∣∣1 +RfCds
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|F |2(2.29)
In (2.29) Iamp is the OTAF tail current, KF ,AF process dependent
parameters commonly used to describe flicker noise, Cox the oxide ca-
pacitance, W and L the dimensions of the OTA transistors, and η
a factor that lumps the flicker noise contributions from all the OTA
transistors. For more specific information on the modelling of flicker
66
Fig. 2.6: Block diagram of noise sources in an typical analogue PO front-end
noise the reader can refer to Appendix A and [132].
The photodiode contributes shot noise due to the photocurrent and
the dark current:
SvnoPD = SinPD |ZTIACL |2 |F |2
= 2q(Iph + Idark)
∣∣∣∣∣ Rf
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|F |2(2.30)
The filter following the TIA has a total thermal noise proportional
to kT/Cfilt[130,131]. We will assume this filter to be the simplest
possible; a first order RC filter with (output) noise density:
Svnofilt = SvnRfilt|F |2
= 4kTRfilt
∣∣∣∣ 1
1 +RfiltCfilts
∣∣∣∣2 (2.31)
A block diagram summarizing the noise sources presented above is
shown in Fig. 2.6.
The purpose of the filter following the TIA is to attenuate the large
switching components and remove the noise outside the signal fre-
quency band, which extends up to 10 Hz (see section 2.1). Therefore its
cut-off frequency is much lower than that of the TIA, which commonly
has a bandwidth in the kHz range to support the required sub-ms set-
tling times. Hence, to calculate the total integrated noise introduced
67
from thermal noise sources at the output, the power spectral densit-
ies (PSDs) (2.27)-(2.28) and (2.30)-(2.31) should be integrated over a
noise bandwidth of NBW = 14RfiltCfilt
:
Nototth=√SvnoRf + SvnoOTAth
+ SvnoPD + Svnofilt ×√NBW (2.32)
The flicker noise is added to this to give the total integrated output
noise:
Notot =
√N2ototth
+
∫ ∞0
SvnoOTA1/fdf (2.33)
In an analogue implementation the AC component of the PPG signal
resides solely in the baseband and has a power (see section 2.1):
S2 = D2c2α2I2LED (2.34)
Hence the SNR obtained at the filter output is:
SNR =D2c2α2I2
LED
N2otot
(2.35)
In a very similar way, the SNR of a logarithmic TIA can be derived.
In that case, the linear feedback resistor, Rf , is replaced by the incre-
mental resistance of a diode-connected transistor, 1/gm. If an extra
gain of Lg is included in the TIA loop, like in [93,133], all the noise
sources are multiplied by this gain, whereas the gain of the feedback
amplifier needs to be replaced with A′o = Lg×Ao to maintain the same
dynamics. The detailed analysis will not be presented here, but the
interested reader is referred to chapter 4 for more details.
The SNR of (2.35) was simulated for a typical PO configuration
using Matlab, the values summarized in Table 2.1 and parameters from
the AMS 0.35 µm fabrication process[132,134]. The amplifier gain was
set equal to the minimum required (see (2.22)). The amplifier bias
current had a constant value of 5 µA and its bandwidth was given by
(2.26). An extra gain of 25 was assumed to be present in the loop
68
Table 2.1: Typical PO parameters and values used for simulations
Typical range Value used
Average DC photocurrent [nA] 50-10000 100PPG signal AC/DC [%] 0.25-5 2Duty cycle D [%] 1-25 0.1-10Sampling frequency fs [Hz] 30-1000 100TIA gain Rf [MΩ] 0.1-10 1Photodiode capacitance Cd [pF] 100-5000 100On-chip filter capacitance Cfilt [pF] - 10/100Filter cut-off fc [Hz] - 10TIA amplifier bias current [µA] - 5Settling accuracy [%] - 2
for the logarithmic TIA. The filter bandwidth was chosen to be 10 Hz
and a maximum possible integrated capacitor of 100 pF was assumed,
leading to a filter resistor or 159 MΩ. Note that this is not necessarily
an ohmic resistor, but could for example be the transconductor of a
Gm-C filter. To illustrate the effect of the integrated filter, the noise
at the output of the TIAs if no filter was included was also calculated.
A noise bandwidth of 10 Hz was assumed in this case.
Fig. 2.7 shows that the degradation in signal power due to pulsation
of the LED current leads to low SNRs for small duty cycles. These
are far below the 40 dB limit that was set as a requirement for an
accurate pulse oximeter in section 2.2. For the linear TIA, the noise
of the integrated filter is shown to dominate the noise performance,
even for a large filter capacitance of 100 pF. This is less the case for
the logarithmic TIA, due to its larger gain (for the DC input current
of 100 nA, its gain, Lggm
, is around 8.5 MΩ, compared to the 1 MΩ of
the linear TIA). Hence, both the TIA noise output and the signal get
amplified with respect to the noise of the AC filter. On the other hand,
the logarithmic TIA has a worse noise performance with respect to the
feedback resistance. The output noise PSD of the feedback resistance
has a DC value of4kTL2
g
gm. This is equivalent to the noise of a linear TIA
with a feedback resistance of 210 MΩ (compare with (2.27)), while its
69
0.1 1 10−20
−10
0
10
20
30
40
50
Duty cycle [%]
SNR
[dB]
LinTIALinTIA − F
AC
LogTIAG
LogTIAG
− FAC
ImplementationAC Additional Noise
filter in-loop integration(fc = 10 Hz) gain bandwidth
LinTIA No No 1 Hz-10 HzLinTIA-FAC LP No 1 Hz-1 MHzLogTIAG No 25 1 Hz-10 HzLogTIAG-FAC LP 25 1 Hz-1 MHz
Fig. 2.7: SNR vs duty cycle for an analogue PO implementation, with (green/cyan- FAC) and without (blue/red) a low-pass AC filter following the TIA. Thefilter significantly increases the noise, if integrated. A filter capacitanceof 100 pF was assumed
signal gain is only 8.5 MΩ. Similarly, for the same amplifier bias the
amplifier flicker noise is 25 times larger at the output of the logarithmic
TIA, whereas the signal gain is only 8.5 times that of the linear TIA.
The question naturally arises whether the observed severe degrada-
tion in SNR when a filter is included is due to the use of a simple first
order RC filter and if a more complex filter could improve the noise
performance.
A higher order filter with a sharper roll-off would have a smaller
noise bandwidth. If the cut-off frequency remains the same, i.e. just
above the maximum signal frequency of interest, this would provide an
improvement of up to 3.92 dB, as the noise bandwidth of a first order
70
filter is π2
times its cut-off frequency.
More interestingly, however, a filter with a passband gain higher
than unity could render the filter noise less significant, as that would
amplify both the signal and the noise components entering the filter
relative to the filter’s own noise. However, choosing the filter gain is
not straightforward, since linearity and power supply constraints have
to be taken into account.
The detected signal at the output of the TIA has large DC and
switching components (section 2.1 - Fig. 2.8). A passband gain larger
than unity could lead to amplification of these components internally
to the filter leading to distortion, even if they are finally attenuated at
the filter’s output. Furthermore, an attenuation of at least 60− 80 dB
is required to render the switching components significantly smaller
than the AC component. The filter gain G, its transfer function and
the LED modulation frequency fs must be chosen to ensure this at-
tenuation is achieved.
For a given modulation frequency, a higher filter gain requires a
sharper roll-off to achieve the same attenuation. This demands a
higher-order topology, leading to larger chip area, design complexity,
power consumption and filter noise (see (2.37)-(2.39) later on). Altern-
atively, fs could be increased to retain the same attenuation without
modifying the filter poles. For the same LED ON time, this would lead
to a higher power consumption on the LEDs, as the modulation duty
cycle would be increased.
Taking these considerations into account, the results of [130] can be
used to gain a more quantitative picture of the achievable perform-
ance. In that work, a bound is obtained for the achievable SNR in an
integrated Gm-C filter as:
SNR ≤ πCfiltV2
max
4kTξ
maxf H(f)∫∞0f |H ′(f)|2 df
(2.36)
H(f) it the filter transfer function, H ′(f) its derivative with respect
to frequency, Cfilt the total filter capacitance and Vmax the maximum
71
Fig. 2.8: Frequency spectra of PO signal and required analogue filter. All axes havelogarithmic scaling, but absolute (linear) values are annotated. fo denotesthe fundamental frequency of the measured signal and fs the switchingfrequency of the LEDs. f2, f3 and f1, f4 are the limits of the passbandand stopbands respectively and Mp,Ms the corresponding gains
signal amplitude. The above equation can be rewritten as
SNR ≤ V 2max
2
CfiltθkT
(2.37)
with
θ =2ξ
πG2
∫ ∞0
f |H ′(f)|2 df (2.38)
In (2.38), ξ > 1 is the excess noise factor of the transconductors used
in the implementation and G = maxfH(f) the filter peak gain. It has
been shown in [130] that, for a given bandpass filter specification, θ
has a lower bound:
θ >2ξ
πG2(
f1
f2 − f1
+f3
f4 − f3
)(Mp −Ms)2 (2.39)
In (2.39) f1, f2, f3, f4,Mp and Ms are the specifications of the pass-
band filter, graphically depicted in Fig. 2.8.
The SNR bound of (2.37) assumes that the signal has the maximum
possible amplitude Vmax allowed by the power supply and linearity
constraints. In a PO with a linear TIA this swing is practically never
achievable for the AC signal component. On the contrary, it is the
much larger DC and switching components that limit the maximum
72
signal amplitude. Therefore, to illustrate the effect of a better filter
design, the SNR of the TIA-filter combination was simulated in Matlab
under the same conditions as in Fig. 2.7, but with the SNR defined as:
SNR = D2c2α2I2LED
CfiltθkT
(2.40)
θ was calculated by considering (2.38) to be an equality and setting
the transconductor noise factor ξ to its minimum value of 1. It should
be stressed that (2.39), which was used to calculate the filter noise, de-
termines a lower bound, which is not necessarily achievable. Practical
integrated filters implementations could exhibit a noise significantly
larger than the one calculated by (2.37)-(2.39)[130].
The simulation results are plotted in Fig. 2.9. As predicted, higher
filter gains render the filter noise less significant and could potentially
increase the SNR. As the filter gain increases, the maximum achievable
SNR approaches that of a TIA not followed by any filter. This is
not surprising. The reader is reminded that a signal bandwidth of
10 Hz was used for the calculation of the SNR in the ”no filter” case.
Consequently, this calculation effectively corresponds to a TIA followed
by a noiseless low-pass filter with a ”brick-wall” roll-off at 10 Hz. Such
a filter is not realizable, but could, for example, be approximated if a
very high order filter was implemented with large external capacitances
to significantly reduce the filter noise θkT/Cfilt. Even in this case,
however, the obtainable SNR would not exceed that of the blue line in
Fig. 2.9.
The low SNR problem stems directly from the modulation of the
LED current with a low-duty-cycle square wave and will pose a problem
in any analogue pulse oximeter implementation. The alternative is to
sample the signal early in the signal processing chain. We will examine
this option in the following section.
73
0.1 1 10−20
−10
0
10
20
30
40
50
Duty cycle [%]
SNR
[dB]
LinTIALinTIA − F
AC
LinTIA − FAC
/BP − G=1
LinTIA − FAC
/BP − G=2
LinTIA − FAC
/BP − G=5
ImplementationAC Noise
filter integration(fc = 10 Hz) bandwidth
LinTIA No 1 Hz-10 HzLinTIA-FAC LP 1 Hz-1 MHzLinTIA-FAC/BP BP 1 Hz-1 MHz
Fig. 2.9: SNR vs duty cycle for a PO with a linear TIA followed by a first orderlow-pass filter (FAC), bandpass filters with various gains (FAC/BP) andno filter. A filter capacitance of 100 pF was assumed
2.4.2 Sampled implementations
Sampling the detected PPG signal at a frequency equal to the LED
switching frequency, fs, restores its AC amplitude to the value it had
before modulation, cαILED. If viewed in the frequency domain, the
power of the signal that had previously been dispersed across a multi-
tude of intermodulation components around the harmonics of the LED
modulation signal (Fig. 2.1) is shifted in frequency and added to that
of the baseband signal. In other words, signal aliasing due to sampling
at a sub-Nyquist rate is used to increase the signal power. It is exactly
here where the caveat lies: sub-sampling does not alias just the desired
signal component but also the wideband noise present all across the
spectrum.
74
Due to the requirement for low settling time, the TIA needs to have
a wide closed-loop bandwidth, much higher than that required to ac-
commodate the baseband PPG signal component (see section 2.3).
The noise within this bandwidth cannot be removed by filtering, as
this would increase the system’s settling time. Alternatively, filter-
ing would attenuate the power of the signal components in higher
frequencies, reducing the increase in the signal power after aliasing.
Consequently, this wideband noise will inevitably be sub-sampled and
superimposed to the baseband signal.
This problem is intensified by the noise-peaking effect in the TIA.
This leads to the amplifier noise being spread across a much wider
frequency band than the closed-loop bandwidth of the TIA, or, in
other words, to the noise bandwidth being much higher than the signal
bandwidth (see Fig. 2.5). The effect becomes more evident for low duty
cycles that require a high amplifier gain (eq. (2.22)). This noise can
be removed by using a noise anti-aliasing filter just before sampling.
This filter can be placed in the TIA loop, or can follow the TIA and
is a well documented technique used in TIA design[89].
In this section we will resort to simulations similar to the previous
section to examine the effect of noise sub-sampling and the significance
of a noise anti-aliasing filter in a sampled front-end implementation.
The same simple resistive feedback TIA is considered. Hence, the
noise sources of (2.27)-(2.30) are also present in this case. The TIA is
followed by a first order noise anti-aliasing RC filter, with a capacitance
of 100 pF. However, in this case the bandwidth of the filter is assumed
to be equal to the TIA closed-loop bandwidth (compared to the 10 Hz
cut-off of the AC filter in the analogue implementation). Once more,
this closed-loop bandwidth is adjusted to allow achieving the required
2% settling time for a given duty cycle (eq. (2.22)), by tuning the
amplifier’s gain.
The amplifier’s bandwidth is considered to be high enough to result
in a closed-loop system with real poles in all cases. At the same time, it
is constrained to be larger than the bandwidth which can be achieved
75
with an integrated capacitance of 10 pF and the given amplifier bias
current (see eq. (2.26)). At the filter output the signal is sampled by
a sample-and-hold (S/H), which we will consider ideal and noiseless.
The sample-and-hold is followed by a first order RC filter with a cut-
off frequency of 10 Hz which limits the noise bandwidth and provides
the AC component of the signal at the output. This is identical to
the AC filter of the previous section and is included to provide a fairer
comparison with the analogue implementation and ensure that any
gains in the noise performance do not stem from the omission of the
low-frequency AC filter.
The parameters summarized in Table 2.1 are used to simulate the
SNR at the system sampled output with and without a noise anti-
aliasing filter. Fig. 2.10 shows the results.
For low duty cycles, sampling results in a significant increase in the
signal power, which is now constant and independent of the duty cycle.
However, without a noise anti-aliasing filter the wide-band noise leads
to degradation in the SNR, particularly evident for low duty cycles.
There the high amplifier gain required to speed-up the photodiode
pole increases the amplifier noise, which is sub-sampled in the signal
frequency band, and becomes the dominant noise component3. A noise
anti-aliasing filter improves the SNR, allowing achieving the required
SNR with duty cycles lower than 0.5%.
For higher duty cycles large amplifier gains are not necessary and
thus the effect of sub-sampling the amplifier noise is limited. The
SNR of the sampled system tends to a constant level, as the 10 Hz AC
filter following the TIA dominates the noise performance. As explained
before, the sole purpose of this filter is to introduce the same filter noise
in the signal chain as in the analogue implementation. The sampled
signal has no switching components, and, as it is already sampled,
it can be fed directly to an A/D converter, without any anti-aliasing
3In the presented simulations the folded thermal noise ends up being larger thanthe flicker noise, which can dominate the noise performance in an analogueimplementation if no techniques to avoid it (e.g. chopping) are employed.
76
0.1 1 10−20
−10
0
10
20
30
40
50
Duty cycle [%]
SNR
[dB]
LinTIA−S−FAC
LinTIA−FNAL
−S−FAC
LinTIA−FAC
ImplementationNoise
SampleAC Noise
anti-aliasing filter integrationfilter (fc = 10 Hz) bandwidth
LinTIA-S-FAC No Yes LP 1 Hz-100 HzLinTIA-FNAL-S-FAC Yes Yes LP 1 Hz-100 HzLinTIA-FAC No No LP 1 Hz-1 MHz
Fig. 2.10: SNR vs duty cycle for a sampled implementation, with (green) andwithout (blue) a noise anti-aliasing low-pass filter. The filter was as-sumed to have a capacitance of 100 pF and a resistance equalizing thefilter cut-off with the TIA bandwidth. The fully analogue implement-ation with a trailing low-pass filter with a 10 Hz cut-off is redrawn forease of comparison
filter in between. The out-of-band noise could then be removed using
a digital filter, without any noise overhead.
It should be noted that the amplifier pole creates in this case an
additional noise-limiting low-pass filter. The change observed in the
slope of the SNR curve for the sampled amplifier without a noise anti-
aliasing filter (blue line) occurs because of the different limitations
imposed on the amplifier pole for low and high duty cycles. For small
duty cycles, a high amplifier gain is required to enable quick settling
of the output. In this case the stability of the loop limits the choice of
the minimum possible amplifier bandwidth (first term in (2.26)). On
77
the contrary, for high duty cycles high amplifier gains are not required
and the stability conditions are not the dominant limitation. Instead,
the minimum possible frequency of the amplifier pole is constrained by
the maximum integrated capacitance (second term in (2.26)).
In most realistic designs it is not possible to select the amplifier pole
as low as described by (2.26). Hence, a sampled TIA design without an
explicit noise anti-aliasing filter would have an even lower SNR than
that depicted in Fig. 2.10. On the contrary, the achievable SNR of
designs including a noise anti-aliasing filter is affected significantly less
by the choice of the amplifier pole.
As a consequence of the results presented above, a noise anti-aliasing
filter is employed in the implementations proposed in this work. This
takes the form of a switched integrator, as will be presented in the next
sections. Before continuing, however, it is instructive at this point to
compare the topologies examined above with previously published PO
designs.
As discussed in chapter 1, almost all published past PO designs
are sampled. Most of them sample the signal directly after the TIA
[82,83,87,91,104,105,108,109,112,113] or after a high-pass filter for am-
bient light cancellation [110,111]. Others, like [86,107], extract the AC
component of the signal by using analogue filtering blocks before sam-
pling, and hence fall under the analogue implementations presented in
the previous sections. [92] includes a noise-limiting filter between the
TIA and the S/H, but it is aimed at removing RF interference, rather
than limiting the noise bandwidth of the TIA.
To the best of the author’s knowledge, and to the extent such in-
formation can be extracted from a patent document, none of the above
implementations employs a noise anti-aliasing filter before the sampling
action. Instead, large photodiode currents are commonly used, in what
can be assumed to be an attempt to obtain an adequate SNR. Unfor-
tunately, experimental SNR performance is not quoted and thus it is
difficult to carry out comparisons to the above simulations.
The low-power implementations [51,93] published in academic re-
78
search literature extract the AC signal component using analogue fil-
ters and, consequently, are expected to have the SNR performance
of an analogue front-end implementation. Interestingly, [93] follows a
fully analogue implementation and does not sample the signal at any
point in the processing chain. As described in chapter 1 it employs
a logarithmic TIA in the first stage and external capacitors, of the
order of nF, to filter out the switching components. The logarithmic
implementation means, however, that the effective feedback resistance
is lower than 1 MΩ for currents larger than approximately 30 nA. The
capacitive divider included to boost the gain acts only as a second
amplification stage, amplifying both the signal and the feedback res-
istor, amplifier or photodiode noise. Thus, its SNR performance will
be worse than that of the analogue TIA with Rf = 1 MΩ without any
trailing AC filter, shown in Fig. 2.7.
Patterson et al.[100] and Duun et al.[101] have both proposed in-
cluding a switched integrator instead of/following the TIA, to limit
wideband noise and/or interference at the mains frequency. However,
they do not focus on noise aliasing as a problem. Additionally, the
proposed filter is either implemented after sampling[100] or finally not
opted for[101].
Ref. [97] is the only publication known to the author that specifically
concentrates on the problem of noise aliasing in the PO front-end and
stresses its significance in low-duty-cycle implementations. To alleviate
it, it proposes implementing an anti-aliasing filter directly after the
TIA. The filter’s bandwidth is adjusted as the duty cycle changes to
result in a signal bandwidth adequate for the timely settling of the
photocurrent, but which also limits the wideband noise that would
be subsampled in the following S/H. Despite the fact that the author
ignores the noise peaking effect and proposes this solution to avoid
aliasing of wideband input noise, this is essentially the same suggestion
to which the above analysis concluded. However, neither any specific
implementation of the proposed idea nor any performance results are
presented in that work.
79
2.5 Two integrating transimpedance
amplifier topologies
This section describes two sampled transimpedance amplifier imple-
mentations, based on the observations and conclusions of the preceding
analysis. The core idea behind the proposed front-ends is exploiting
a switched integrator as both a noise anti-aliasing filter, as well as, a
gain stage.
The switched integrator block is presented first. Then two forms of
it, a voltage-mode and a current-mode are used to develop the TIAs.
The TIA noise sources are analysed in detail and their SNR perform-
ance compared to the ones presented earlier. An additional technique
to reduce the effect of the TIA feedback amplifier thermal noise is also
described and employed in the proposed front-ends.
2.5.1 Switched Integrator
A switched integrator (SI) is a discrete-time system. It integrates its
input for a desired time interval, tint. The value resulting from the
integration is then sampled and held till the next sampling instance. In
an integrated circuit it is virtually always implemented via integration
of a current iin on a capacitor Cint:
vint =1
Cint
∫ tint
0
iin(t)dt (2.41)
It has been shown previously that such an operation can be repres-
ented by a sinc transfer function, depicted in Fig. 2.11, followed by an
impulse sampler[135,136]. In other words, an input of frequency f is
amplified by ZI(f) before sampling, where:
ZI =tintCint
sinc(tintf) (2.42)
The resulting signal is then sampled by the very familiar impulse
80
102
103
104
105
106
70
80
90
100
110
120
130
140
150
Frequency [Hz]
ZI(f)[dB]
−3dB Gain
0.443 / tint
Fig. 2.11: Switched integrator transfer function. tint and Cint are equal to 100 µsand 10 pF respectively, leading to a low-frequency gain of 10 MΩ. The3-dB bandwidth is 0.443
tint.
sampler, leading to an aliased output spectrum:
Vout(f) =∞∑
k=−∞
tintCint
sinc(tint(f − kfs))Vint(f − kfs) (2.43)
If the sampled signal is corrupt by additive noise with PSD SIn(f)
and a noise bandwidth of NBW , then the sub-sampling factor is Ns =
NBW/fs and the PSD of the folded noise after the sampling, SVn(f),
is:
SVn(f) =Ns∑
k=−Ns
∣∣∣∣ tintCintsinc(tint(f − kfs))
∣∣∣∣2 SIn(f − kfs) (2.44)
2.5.2 Current mode Switched Integrator front-end
The proposed front-end employing a current-mode switched integrator
(CSI) is shown in Fig. 2.12. The first stage (OTAF -Mf ) is a logar-
81
Fig. 2.12: Integrating TIA with Current mode Switched Integrator
ithmic TIA that ensures the required settling time can be achieved for
the detected photocurrent (see section 2.3 and chapter 4). It is then
followed by a capacitor in parallel with a switch. This is open during
the integration interval tint and closes periodically resetting the capa-
citor charge to zero, thus implementing a switched integrator. The
current mirror preceding the capacitor outputs a DC current (p× Iref )with a value close to the average detected photocurrent level, Iref (i.e.
p is smaller than, but close to, one). Thus, the majority of the photo-
current’s DC component is subtracted before it is fed to the capacitor,
effectively AC coupling the integrator. To provide adequate headroom
for the current-mirror and ensure the integrating capacitor does not
affect the photocurrent settling time, a second stage (OTAB-MBf ),
very similar to the input TIA, is used as a current buffer before the
capacitor.
The logarithmic TIA employed in the first stage of the front-end
now acts as a current buffer, with output the feedback transistor Mf
current. Its transfer function is:
HF =IfIph
=(A+ 1)gmfZd
1 + (A+ 1)gmfZd(2.45)
82
≈ 1
1 + CdAogmf
s
1
1 + τas
with Zd = Rd1+RdCds
the photodiode output impedance, gmf the small-
signal transconductance of Mf and A = Ao1+τas
the transfer function of
OTAF .
The noise at the switched integrator output just before sampling due
to the noise sources of the first stage is then:
Svnogmf = Singmf |1−HF |2 |ZI |2
≈ 2kTngmf
∣∣∣∣∣ 1
AogmfRd
1 +RdCds
1 + CdAogmf
s
∣∣∣∣∣2
|ZI |2(2.46)
SvnoOTAFth = SvnOTAFth
∣∣∣∣ A
(A+ 1)ZdHF
∣∣∣∣2 |ZI |2≈ 4kγT
gmiR2d
∣∣∣∣∣ 1 +RdCds
1 + CdAogmf
s
1
1 + τas
∣∣∣∣∣2
|ZI |2(2.47)
SvnoOTAF (1/f)= SvnOTAF (1/f)
∣∣∣∣ A
(A+ 1)ZdHF
∣∣∣∣2 |ZI |2≈ KF ( Iamp
2)AF
CoxWL
η
g2miR
2d
1
f
∣∣∣∣∣ 1 +RdCds
1 + CdAogmf
s
1
1 + τas
∣∣∣∣∣2
|ZI |2
(2.48)
The current mirror used to subtract the DC component also intro-
duces noise. This noise, to a good approximation, transfers directly to
the integrating capacitor with unity gain, and its output PSD before
sampling is:
Svnom = Sinm |ZI |2 (2.49)
where Sinm is the mirror noise PSD. To ensure accurate copying of the
current p× Iref , the mirror was implemented using PMOS transistors
with degeneration resistors of around 300 kΩ. The calculation of the
noise transfer functions from all the mirror internal noise sources to its
output is straightforward but lengthy and, as it does not provide any
83
significant insight, will not be presented here to avoid confusion. The
interested reader can check the transfer functions used in the simula-
tions in the Matlab codes provided in Appendix A.
The thermal noise of the OTA of the second stage (OTAB) is trans-
ferred to the output with a similar transfer function as (2.53):
SvnoOTABth = SvnOTABth |YBth|2 |ZI |2
=4kγBT
gmBir2oTIAF
∣∣∣∣∣∣1 + roTIAFCBis
1 + CBiABgmBf
s
1
1 + τBas
∣∣∣∣∣∣2
|ZI |2(2.50)
where roTIAF is the output resistance of the first stage buffer/current
mirror combination, gmBf the transconductance of the feedback tran-
sistor of the buffer and gmBi , CBi, τBa the transconductance of the
input pair, input capacitance and dominant time constant of OTAB
respectively. Note that, CBi is a capacitance much smaller than Cd.
Therefore, the thermal noise of OTAB is expected to exhibit peaking
at higher frequencies and thus have a much smaller effect at the output
than that of OTAF .
The thermal noise of the feedback transistor of the buffer (gmBi)
does not contribute to the output noise, as MBf is a cascode transistor
and its channel noise is effectively short-circuited[137].
Apart from the above mentioned, ”internal” to the topology noise
sources, noise is also introduced from the input and biasing sources.
As was mentioned before, the photodiode output exhibits shot noise
due to the photo- and dark currents (2.30):
SvnoPD = SinPD |HF |2 |ZI |2
= 2q(Iph + Idark)
∣∣∣∣∣ 1
1 + CdAogmf
s
1
1 + τas
∣∣∣∣∣2
|ZI |2(2.51)
For the following simulations, the DC bias sources (Vm, p× Idc, Vph)will be considered noiseless.
A block diagram for the noise sources of the CSI is shown in Fig. 2.13.
84
Fig. 2.13: Noise sources for integrating TIA with Current mode Switched Integ-rator
Fig. 2.14: Integrating TIA with Voltage mode Switched Integrator
2.5.3 Voltage mode Switched Integrator front-end
The proposed front-end employing a voltage-mode switched integrator
(VSI) is shown in Fig. 2.14. The first block is a conventional resistive
feedback, linear TIA that ensures that the required settling time can
be achieved despite the large photodiode output capacitance (see sec-
tion 2.3). It is then followed by a voltage-mode integrator. A switch
in parallel to the feedback capacitor resets the capacitor charge and
is open during the integration interval tint, thus implementing the
switched integrator. The positive input of the integrator is set to a
85
DC value Vref approximately equal to the DC value at the output of
the first TIA. Thus, a large part of the DC component of the signal is
removed, effectively AC coupling the switched integrator. In this way,
only the AC component of the signal is integrated. It will be examined
later in more detail how this can be achieved in practice (section 2.5.6).
The noise sources of the first stage of this front-end have already
been analysed in section 2.4.1. At the output of the SI the noise PSDs
due to these will be:
SvnoRf =SinRfR2int
|ZTIAFCL |2 |ZI |2
=4kT
RfR2int
∣∣∣∣∣ Rf
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|ZI |2(2.52)
SvnoOTAFth =SvnOTAFthR2int
|ATIAFth |2 |ZI |2
=4kγT
gmiR2int
∣∣∣∣∣1 +RfCds
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|ZI |2(2.53)
SvnoOTAF (1/f)=SvnOTAF (1/f)
R2int
|ATIAFth |2 |ZI |2
=ηKF ( Iamp
2)AF
g2miR
2intCoxWL
1
f
∣∣∣∣∣1 +RfCds
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|ZI |2(2.54)
The switched integrator itself introduces further noise, due to ther-
mal noise from its resistor Rint, and the amplifier. At the output of
the SI just before sampling, these PSDs are:
SvnoRint =SvnRintR2int
|ZI |2
=4kT
Rint
|ZI |2(2.55)
86
Fig. 2.15: Noise sources for integrating TIA with Voltage mode Switched Integrator
SvnoINTth = SvnOTAINTth
∣∣∣∣1 +1
Rint
ZI
∣∣∣∣2=
4kγ1T
gmint
∣∣∣∣1 +1
Rint
ZI
∣∣∣∣2(2.56)
with γ1, gmint the excess noise factor and input transconductance of
the switched integrator OTA.
Observe that for Rint = Rf the switched integrator leads to at least
doubling the thermal noise introduced by the TIAF ’s feedback resistor.
However, the gains occurring from reducing the undersampling of the
wideband TIAF thermal noise outweigh this cost.
Apart from the above mentioned, ”internal” to the topology noise
sources, noise is also introduced from the input and biasing sources.
As was mentioned before the photodiode output exhibits shot noise
due to the photo- and dark currents (2.30):
SvnoPD =SinPDR2int
|ZTIAFCL |2 |ZI |2
=2q(Iph + Idark)
R2int
∣∣∣∣∣ Rf
1 +RfCdAo
s
1
1 + τas
∣∣∣∣∣2
|ZI |2(2.57)
For the following simulations, the DC bias sources (Vph,Vref ) will be
considered noiseless.
A block diagram for the noise sources of the VSI is shown in Fig. 2.15.
87
2.5.4 Switching the TIA amplifier
Before using the analysis of the previous sections to evaluate the SNR
performance of the proposed integrating photoreceptor topologies in a
PO context, another simple noise-reducing technique employed in the
proposed designs will be briefly introduced.
As discussed previously, the input-referred TIA amplifier thermal
noise has a large bandwidth, and therefore leads to a large increase in
the baseband thermal noise when sampled with the sub-kHz frequen-
cies commonly employed in pulse oximeters. We saw that the PSD of
this noise is:
SvnOTAFth =4kγT
gmi∝ 1√
Iamp
where Iamp is the bias current of the TIA amplifier. If strong inver-
sion operation is assumed, to achieve a large gmi, then the reader can
observe that, while it is possible to lower the amplifier noise at the
cost of extra power consumption, this trade-off is a rather weak one –
a 100 times increase in Iamp would only provide a 10 dB reduction in
noise! Hence, a significant increase in the power consumption of the
TIA amplifier is required, if noticeable gains in SNR are to be achieved.
However, the amplifier does not need to be biased continuously, but
only for a time interval somewhat longer than the time for which the
LEDs are ON. In other words, it is possible to switch the amplifier ON
and OFF with a duty cycle similar to that used for the modulation of
the LED currents. In this way, a 10 dB larger SNR can be achieved
by an amplifier switched with a 1% duty cycle, with the same aver-
age power consumption, as if the amplifier would be biased to be ON
continuously. To the best of the author’s knowledge, this technique
has never been employed before in a published pulse oximeter for this
purpose.
To illustrate the effect this has on the SNR, the same simulation as
in section 2.4.2, is repeated here, but with all the OTAs switched ON
only when a LED is ON. Their bias current is also adjusted accordingly
so that they now have an average tail current of 5 µA. This means
88
0.1 1 10−20
−10
0
10
20
30
40
50
Duty cycle [%]
SNR
[dB]
LinTIA−S−FAC
LinTIA−FNAL
−S−FAC
LinTIA−FAC
Fig. 2.16: SNR vs duty cycle for the same implementations, as in Fig. 2.10, butwith the TIA switched ON only when a LED is ON. The TIA amplifier’sbias current is adjusted so that it has an average supply current of 5 µA.The noise-antialiasing filter was assumed to have a capacitance of 100 pFand a resistance equalizing the filter cut-off with the TIA bandwidth. AnAC low-pass filter with a 10 Hz cut-off is assumed at the output of allimplementations
that for a duty cycle of 0.1% the OTA tail current will be 5 mA.
As seen in Fig. 2.16, increasing the OTA tail current lowers the
sub-sampled amplifier noise even further, allowing for higher SNR un-
der low duty cycles for the sampled implementations. The effect of
the noise anti-aliasing filter is now smaller, as the OTA thermal noise
becomes less dominant. This does not necessarily mean that it can
be omitted. Note that, with the assumptions mentioned above, the
TIA amplifier has a supply current of 5 mA for a duty cycle of 0.1%.
Such a current may be undesirable in a battery-powered implementa-
tion. If lower biasing currents are used, the significance of the noise
anti-aliasing filter increases.
Similarly to Fig. 2.10, for higher duty cycles the SNR of the sampled
implementations saturates, since the noise of the 10 Hz AC filter as-
sumed at the output dominates. Once again, this filter is not necessary,
and the signal could be digitized directly with an A/D converter.
89
The analogue implementation is not affected by the switching of the
TIA amplifier. This is expected, since in that case no noise aliasing
occurs. At the baseband (f < 10 Hz) there is no noise-peaking and
the amplifier thermal noise is transferred to the output with a unity
gain. The front-end’s SNR is limited by loss in signal power at low
duty cycles and by the noise of the integrated AC filter at the output.
Switching the amplifier ON and OFF means that the capacitor at
the output node of the diode needs to be charged back to the desired
bias voltage across the photodiode (Vph) each time the amplifier is
turned ON. The variations in that voltage are now large, in contrast
to the case where the amplifier is continuously ON, when the voltage
at the output capacitance of the diode varies only by vo/Ao (where
vo is the voltage variation at the output of the TIA). To be able to
handle these variations quickly the amplifier can be placed in unity gain
configuration for a very short interval before an LED is turned ON.
Using this modification the amplifier can provide similar settling times
as the constantly biased amplifier, with the same power consumption
and reduced thermal noise.
2.5.5 SNR performance of the integrating TIA
topologies
Having analysed the noise limitations and suggested improvements,
the noise models described in the previous sections will now be used to
evaluate the SNR performance of the proposed integrating front-ends
and compare it to those more commonly used. Simulations are carried
out in Matlab, using the noise equations presented in sections 2.4.1 to
2.5.3.
The amplifier gain in all TIAs is adjusted to the minimum value
required to achieve the necessary system settling speed (see (2.22)),
without increasing the noise bandwidth excessively. At the same time,
it is constrained to be larger than the bandwidth which can be achieved
with an integrated capacitance of 10 pF and the given amplifier bias
90
current (see eq. (2.26)). Where a noise anti-aliasing filter (FNAL) is
employed after the TIA, its cut-off frequency is selected to be equal
to the closed-loop bandwidth of the TIA, so that noise and signal
bandwidths are equalised at the TIA output. The filter noise is then
included, as the noise of the resistor of a 1st order filter with a capacitor
value of 10 pF, which is the same value as the integrating capacitance
used in the integrating topologies (note the difference from the 100 pF
value used in earlier simulations). No additional filter is assumed after
the TIAs. The output noise is calculated by integrating in a frequency
band of 1-10 Hz for all TIAs.
The AC signal is considered to be 2% of the DC level. The amplifier
bias current is set to 5 µA if the amplifier is statically biased, whereas
it is changed to 5/D µA for the photoreceptors that employ a switched
amplifier. In this way, all photoreceptors have the same average power
consumption.
Except if stated explicitly otherwise, all the other parameters have
been chosen as in previous simulations (Table 2.1). The simulated
front-end TIA topologies are (Table 2.2):
(a) A linear TIA with a feedback resistance of 1 MΩ, followed by
sampling (LinTIA-S). This is the most commonly used configur-
ation in pulse oximeters.
(b) A linear TIA with a feedback resistance of 1 MΩ and a switched
amplifier, followed by a noise anti-aliasing filter and sampling
(LinTIASW -FNAL-S).
(c) A logarithmic TIA with an in-loop gain of 25 and a switched
amplifier, followed by a noise-antialiasing filter and sampling
(LogTIASW -FNAL-S).
(d) The integrating TIA proposed in section 2.5.2, employing a cur-
rent-mode switched integrator, with a switched amplifier and
sampling (CSI).
91
Table 2.2: TIA topologies employed in the SNR comparisons of Fig. 2.17
ImplementationNoise
SampleAdditional Switched
anti-aliasing in-loop amplifierfilter gain
LinTIA-S No Yes No NoLinTIASW -FNAL-S Yes Yes No YesLogTIASW -FNAL-S Yes Yes 25 YesCSI Yesa Yes Nob YesVSI Yesa Yes Nob Yes
a Included in the front-end (switched integrator).b Gain is provided after the first TIA stage (switched integrator).
(e) The integrating TIA proposed in section 2.5.3, employing a volt-
age-mode switched integrator, with a switched amplifier and sam-
pling (VSI).
The results are shown in Fig. 2.17(a) and Fig. 2.17(b) for a photo-
diode output capacitance of 100 pF and 1 nF respectively.
For low duty cycles (0.1-0.5%), the large amplifier gains needed, lead
to significant noise peaking. If no sampling is used, the very small duty
cycle diminishes the measured signal energy. If sampling is used the
sub-sampled wideband noise is folded into the baseband degrading the
SNR. This is even more pronounced for large photodiodes (Cd = 1 nF),
as the zero causing the noise peaking then moves to lower frequencies
(section 2.4.1 - Fig. 2.5).
For high duty cycles (>5%), the amplifier gain can be reduced, de-
creasing significantly the folded TIA amplifier thermal noise (Fig. 2.5).
In the cases where a noise anti-aliasing filter is used this dominates the
output noise and seriously degrades the SNR if the photoreceptor does
not exhibit a large gain: observe how the SNR of the LinTIA with
R = 1 MΩ (green) flattens, whereas that of the LogTIA with an ef-
fective AC gain of 25× 336.7 kΩ = 8.41 MΩ (red) keeps rising.
As Fig. 2.17 shows, the PO front-end performance can significantly
improve if a noise anti-aliasing filter, switching of the TIA amplifier
and sampling are used (compare to figures 2.7,2.10). As discussed in
previous chapters, most commercial pulse oximeter designs available
92
0.1 1 1015
20
25
30
35
40
45
50
55
60
Duty cycle [%]
SNR
[dB]
LinTIA−SLinTIA
SW−F
NAL−S
LogTIASW
−FNAL
−S
CSIVSI
(a)
0.1 1 10−10
0
10
20
30
40
50
60
Duty cycle [%]
SNR
[dB]
LinTIA−SLinTIA
SW−F
NAL−S
LogTIASW
−FNAL
−S
CSIVSI
(b)
Fig. 2.17: SNR vs duty cycle for the simulated TIA topologies with (a) Cd = 100 pFand (b) Cd = 1 nF. The switched integrator and filters’ capacitances areset to 10 pF
93
in the public domain use a simple linear TIA, followed by direct sam-
pling[82,83,87,91,104,105,108–113]. Their expected SNR is therefore
lower than that of the dark blue curve, if an average detected pho-
tocurrent level of 100 nA is used. However, photocurrents of several
µA are much more common in these implementations, leading to a
higher SNR at the expense of higher power consumption.
On the other hand, the low power front-end presented in [126] claims
achieving an adequate SNR with a photocurrent of less than 100 nA.
However, since no sampling is used, the SNR performance is expected
to be similar to that of the analogue logarithmic TIAs with an in-loop
gain in section 2.4.14. If the same topology is modified to include a
noise anti-aliasing filter and a sampler following the logarithmic TIA,
then the performance is boosted to that represented by the red line,
and is quite close to that achieved by the proposed integrating front-
ends.
The accuracy of the presented results has been verified via spot
PNOISE simulations using Spectre and the AMS 0.35 µm circuit ele-
ment models. This does not necessarily mean that the simulated SNR
is obtainable in a real PO front-end. Noise from internal or external
biasing sources will also contribute to the overall noise, degrading the
noise performance, even though it can be alleviated to a certain extent
by using differential implementations, as most of it is common-mode.
The presented results constitute a faithful comparison of the relat-
ive performance improvement that can be expected from the proposed
front-end topology. An accurate picture of the real SNR performance
can only be acquired by fabricating and measuring the proposed front-
end.
The integrating front-end employing a voltage-mode switched integ-
4The analysis in this thesis treats the pseudo-resistor transistor used in logarithmicTIAs with additional in-loop gain[93,127] as a very large linear resistor. Eventhough this is the same assumption followed in [93], this is not correct under thelarge swings in the detected photocurrent. In this case, the non-linearities ofthe pseudo-resistor may act to alter the SNR and/or the linearity performanceof the TIA. See also section 3.8
94
rator (VSI) is the one with the highest simulated SNR performance
and therefore it was the topology chosen for fabrication.
2.5.6 LED current calibration
Before presenting the implemented front-end in more detail there is
one more point that needs to be addressed. Both proposed integrating
front-ends assume that the average photocurrent level is known, so that
it can be subtracted before the detected signal is fed to the switched
integrator.
There are two ways of achieving this. Either by extracting the DC
level from the measured photocurrent (e.g. via a level detector), or by
regulating the LED current level so that a desired, known in advance,
average photocurrent level is achieved at the detector. The latter was
opted for in the implementations proposed in this work. More spe-
cifically, the detected current DC levels are set to a desired value (the
reference current Iref ), the same for both R/IR channels, via a feed-
back mechanism at regular intervals during the oximeter operation.
This approach has several advantages. Firstly, the detected current
level is always ensured to have a desired value, irrespective of variations
at the probed tissue site, for example due to different tissue absorption
characteristics among individuals. Secondly, knowledge of the average
DC level at the detector allows removing the DC component via simple
and relatively fast circuitry. This facilitates large AC gains at the
switched integrator stage without saturation problems. Finally, the
DC level does not need to be measured, eliminating the extra circuitry
that would be required for this purpose.
Implementations of the feedback control loop that regulates the de-
tected current DC level are shown in Fig. 2.18(a) and (b) for the CSI
and VSI respectively. The loop comprises an integral (I) controller
consisting of a floating capacitor (Ccal) or a voltage-mode integrator
(Rint, Cint) in the CSI and VSI respectively. During a calibration phase
a LED is switched ON and the output of the controller is directly con-
95
(a)
(b)
Fig. 2.18: Implementation of LED current calibration loop for (a) TIA with Cur-rent mode Switched Integrator and (b) TIA with Voltage mode SwitchedIntegrator. Switches Scal are closed during LED current calibration,whereas switches Sop are closed during normal operation
nected to the gate of a transistor acting as a transconductance to pro-
vide the LED current. The voltage value supplied to the LED driving
transistor is then sampled via a very precise, low-leakage sample-and-
hold (S/Hcal) and used to drive the LED until the next calibration
occurs. The same calibration procedure then follows for the other
LED.
The feedback loop does not include large time constants, that are
usually associated with the extraction of a DC level from the low-fre-
quency measured signal. Hence, the detected DC level can be fre-
quently reset to a desired value, to adapt to changes in the measuring
setup, for example due to displacement of the sensor probe. The ab-
96
sence of large time constants has the additional benefit that if the
oximeter is operated intermittently, an SpO2 measurement can be ob-
tained almost directly after switching the oximeter on, without the
need for settling of level-detection low-pass filters.
On the other hand, the lack of the averaging effect provided by the
large time constants can be a disadvantage: controlling the DC level in
this way is effectively equivalent to a point measurement of its value. If
this varies significantly before the next calibration, or if an error occurs
during the calibration, for example due to a motion artefact, then all
measurements before the next calibration are incorrect. Nevertheless,
large variations in the photocurrent DC level can be detected on-chip
to trigger a new calibration.
2.6 Proposed PO front-end overview
In this section the proposed PO front-end, designed around a Voltage-
mode Switched-Integrator, will be outlined to provide the reader with
a high level picture of the system. This description will act comple-
mentary to the descriptions in sections 2.5.3 and 2.5.6, by commenting
on implementation-specific details and blocks that have not been pre-
sented before. In the next section the implementation of the various
blocks will be discussed in more detail.
The proposed PO front-end is depicted in Fig. 2.19. Two signal
paths can be identified in the system: the forward path, dedicated to
measuring the photodiode current and the feedback path, employed to
control the LED drive current to achieve the desired average photo-
current level at the detector.
97
(a)
(b)
(c)
(d)
Fig
.2.
19:
(a)
Blo
cks
shar
edb
etw
een
forw
ard
an
dfe
edb
ack
path
san
db
oth
chan
nel
s:tr
an
sim
ped
an
ceam
pli
fier
(TIA
F),
swit
ched
inte
g-
rato
r(S
I)an
dre
fere
nce
gen
erati
on
(RE
F);
(b)
Forw
ard
path
:sa
mp
lean
dh
old
(S/H
),bu
ffer
,ca
paci
tive
-fee
db
ack
-am
pli
fier
(CFA
)an
dm
ult
iple
xed
outp
ut;
(c)
Fee
db
ack
path
:lo
w-l
eaka
ge
sam
ple
an
dh
old
an
dL
ED
dri
ver;
(d)
Ref
eren
cevo
ltage
gen
erat
ion
.T
he
enci
rcle
dvo
ltages
ind
icate
wh
ere
the
vari
ou
sb
lock
sare
con
nec
ted
98
2.6.1 Forward path
The forward path has to a large extent been described in section 2.5.3.
The first transimpedance amplifier in the front-end (TIAF ) employs
resistive feedback (Rf = 500 kΩ - Fig. 2.19(a)) and a switched OTA.
The TIAF is followed by a Voltage-mode Switched-Integrator (SI -
Fig. 2.19(a)). This serves to equalize the wide noise bandwidth of the
TIAF with the smaller signal bandwidth, reducing the noise aliasing oc-
curring in the sampling following the integrator (sections 2.4.2, 2.5.1).
In addition, it acts as a variable-gain amplification stage, which en-
ables large on-chip gains exceeding 50 MΩ that can be easily tuned via
the digitally controlled integration time. Finally, it realises a high-pass
filter transfer characteristic by having its positive input set to a DC
level equal to that of the output of the first stage, through the feedback
loop controlling the LED currents (sections 2.5.6, 2.6.2). In this way,
high AC gains can be employed, without saturating the detector due
to the large DC levels.
The first two blocks are the same for both the R and IR photocur-
rent measurement channels. This eliminates errors due to mismatch
between the two. After the integrator the two channels are separ-
ated(Fig. 2.19(b)). A simple sample-and-hold (S/H) block synchron-
ously samples the SI output and serves as a demultiplexer.
The S/H output is a continuous-time voltage that represents the
measured PPG signal. Effectively, the optical-to-electrical signal con-
version is complete at this stage. The following blocks carry out the
signal processing necessary (filtering, feature extraction, calculations
etc.) to compute the SpO2 value from the two PPG signals. This pro-
cessing could be implemented using analogue blocks, like in [93], to
obtain a fully operational pulse oximeter with a very low power con-
sumption and complexity. However, in this implementation the more
versatile and accurate option of digitizing the signal was chosen.
Before being fed to the A/D converter (ADC), the signal needs to
undergo conditioning to better exploit the ADC input range. Its DC
99
level should be changed to be close to half the A/D reference voltage
and its peak-to-peak swing should be as close to the full ADC input
range as possible, without at the same time risking saturating the
ADC.
In most previous PO implementations this is accomplished through
tunable voltage shifters and post-amplifiers, whose voltage shifts and
gain values are controlled by means of feedback implemented in the
microprocessor commonly utilized. In the proposed front-end both a
gain and a level shifting function are implemented in a single block
by using an amplifier with capacitive feedback (CFA) and capacitive
input coupling (Fig. 2.19(b)), similar to amplifiers popular in neural
recording applications[138].
The closed-loop gain of the CFA can be selected to be 1 or 5, allow-
ing for a further increase in the total amplification, if necessary. The
capacitive coupling of the input results in a high-pass filter (HPF) that
replaces the input DC component with the voltage value supplied to
the positive amplifier input. To avoid the slow settling associated with
the very low frequency pole generated by the pseudoresistor-capacitor
combination, a switch is used to reset the stored capacitor charge dur-
ing the calibration phase, when the input photocurrent DC level is set
via the feedback path (see section 2.6.2). The channel outputs are then
multiplexed to one pin to be connected to the A/D converter, which
in the current implementation is off-chip.
2.6.2 Feedback path
The feedback path has been presented before in section 2.5.6. The
employed implementation is shown in Fig. 2.19(c). The controller that
regulates the LED current consists of the same two first blocks used
in the forward path and the LED driver. The latter is implemented
via a source-degenerated single-transistor transconductor. The loop
is designed to have an adequate phase margin for all reasonable LED
current levels and tissue attenuations, and still settle within a few
100
milliseconds. The voltage value supplied to the LED driver is sampled
via a precise, low-leakage S/H and used to drive a LED till the next
calibration instant.
As expected, the S/H operation is crucial for the performance of the
control loop. Any errors due to charge injection or drift in the stored
value will have a large impact on the measured photocurrent, as the
held voltage directly drives a transistor gate. Section 2.7.6 describes
how these requirements are met.
Another critical requirement to avoid errors in the SpO2 calcula-
tion is very good matching between the feedback loop for the R and
IR channels. Sharing the TIAF and the SI stage between channels
eliminates mismatches due to offsets or gain errors. Careful layout
with common-centroid and interdigitating techniques is used to im-
prove matching between the S/H and the LED driver stages of the two
channels. The achieved performance is more than satisfactory for the
application requirements (see section 3.5).
2.6.3 Operation, programmability and biasing
Fig. 2.20(a) shows the main sequence of operations in the implemented
design. There are two main phases: calibration and measurement.
In the calibration phase (Fig. 2.20(b)), an LED is switched ON and
the calibration loop is allowed to settle. The voltage value driving
the LED is sampled by the low-leakage S/H. The SI is subsequently
bypassed and the CFA is reset. Following this, the LED is switched
OFF and the process is repeated for the other channel.
In a measurement cycle (Fig. 2.20(c)) the TIAF is switched ON and
placed in unity gain configuration to settle. The feedback resistor is
then switched back in the feedback path, the SI is reset and the system
is allowed time to settle. The photocurrent is integrated for a specified
time, at the end of which it is sampled by the S/H at the output
of the integrator. A measurement cycle for the other channel begins
after an appropriate delay, so that measurements are carried out at
101
(a)
(b)
(c)
Fig. 2.20: Front-end operation phases: (a) Top-level operation phases with Ncal
samples between calibrations; (b) Calibration phase sequence; and, (c)Measurement phase sequence
the desired programmed sample rate. Where necessary, small delays
of a few microseconds are introduced between phases to accommodate
settling of the various blocks.
From the above, it is evident that several finely-controlled timing sig-
nals are needed. These are provided by a custom-designed digital finite
state machine (FSM) operating at an 1 MHz clock, which is supplied
externally. The duration of all the phases is externally programmable
through a serial-to-parallel interface. The same applies to other para-
meters of the system, including the integrating capacitor, the gain of
the capacitive-feedback amplifier, the transimpedance amplifier bias
current and the desired DC photocurrent level.
The latter can be controlled with a resolution of approx. 30 nA up to
almost 2 µA. To achieve this, a binary programmable 64-level current
mirror scales the current generated by a typical CMOS strong-inversion
102
current reference[139]. The derived current is fed through a replica of
the input transimpedance amplifier (TIAR), whose output is connected
to the positive input of the SI (Fig. 2.19(d)). For both the current
reference and the transimpedance amplifier attention has been paid in
minimizing the flicker noise, by using large devices, and limiting the
noise bandwidth, by means of large load capacitors (10 pF) at their
output stages. The current reference also provides a bias current of
1 µA that is used to bias the rest of the system.
Finally, two testing buffers, with four multiplexed inputs each, are
also included on the chip to allow outputting internal signals to pins
with potentially large capacitive loads, without loading the internal
nodes of the system. The buffers are designed to drive large external
capacitors and can be switched off during normal operation to save
power.
2.7 Detailed front-end implementation
2.7.1 Transimpedance amplifier
As explained several times before, the main purpose of the first trans-
impedance amplifier in the chain, TIAF , is to speed-up the slow photo-
diode pole. Therefore, a high enough gain is required for the amplifier
OTA, while still satisfying the stability constraints (see section 2.3).
At the same time, however, the OTA needs to have an as low thermal
noise as possible. As we have seen, the latter requirement may be more
critical for accurate low-power operation, than a fast settling time for
the TIA. Hence, a large tail current is used to increase the transcon-
ductance of the OTA input transistor pair (section 2.5.4), despite the
resulting reduction in its gain. While a large tail current simplifies the
stability constraints, as it increases the gain-bandwidth, at the same
time it can be detrimental for the front-end’s power consumption, since
it can assume values up to a few mA.
For this reason, and to limit the number of transistors that introduce
103
M1,M2 [µm] 1000/2M3,M4 [µm] 600/2M5 [µm] 10/2M6 [µm] 1000/2Itail [µA] 1-15
Fig. 2.21: TIAF transimpedance amplifier
noise, a simple, one-stage NMOS OTA was used (Fig. 2.21). The tail
current is chosen to have digitally programmable values ranging from
100 µA to 1.5 mA. Large input transistors are used to reduce the VGS
drop and allow proper biasing of the tail transistor, even under high tail
currents, and low photodiode reverse bias voltages Vph. The resulting
large input capacitance is not very restrictive in this case, since the
photodiode output capacitances typically have values of hundreds of
pF.
A feedback resistance of 500 kΩ is chosen as a compromise between
lowering the resistor noise (see (2.52)) and allowing saturation-free
operation of the OTA for photodiode currents up to at least 2 µA.
To allow switching the amplifier to save power (section 2.5.4), a
switch is introduced at the tail current mirror. Since the input tran-
sistor of this mirror will always be on, a mirroring ratio of 100 was
selected to limit operation currents of this transistor to a few µA. A
switch is also added in parallel to the feedback resistor, that enables
placing the amplifier in unity gain configuration. In this way, when
the amplifier turns ON, the photodiode output capacitance is quickly
charged to a value very close to Vph by the full amplifier bias current,
rather than just the photodiode current. When the feedback resistor is
switched back in the feedback loop, only small modifications in the ca-
104
(a) (b)
(c)
M1,M2 [µm] 500/1M3,M4 [µm] 100/1M5,M6 [µm] 10/2M7 [µm] 100/0.5M8 [µm] 100/0.7Cc [fF] 542Cint1 [pF] 20.7Cint2 [pF] 2.15Rint [kΩ] 500M9 [µm] 10/0.35
M10,M11 [µm] 5/0.35M12,M13 [µm] 10/0.35Itail [µA] 1
(d)
Fig. 2.22: Switched integrator: (a) Top level schematic; (b) Switches; (c) OTAschematic; and (d) Parameter values
pacitor voltage are necessary, to reach its steady-state operating point
(due to the amplifier offset and finite-gain effects).
2.7.2 Switched integrator
A very well known voltage integrator topology is used for this block.
Two integrating capacitors of 2.1 pF and 20.7 pF are used in the feed-
back loop. A switch allows choosing between the 20.7 pF or the series
combination of the two, 1.9 pF, for low or high integrator gain respect-
ively (Fig. 2.22(a)).
A reset switch enables discharging the feedback capacitor before the
next input sample is integrated. It is implemented via a 10/0.35 µm
105
PMOS transistor (Fig. 2.22(b)). The selected size is a compromise
between lowering the ON resistance, that enables quick resetting of the
integrator, and reducing charge injection. To further reduce the latter,
dummy switches, with half the size of the main switch and switching
complementary to it, are used on either side, as is well known[140].
Note that, any remaining errors due to charge injection or clock coup-
ling will manifest themselves as a DC offset at the output, as the critical
switching from ON to OFF always follows a phase where the integrator
is in unity gain configuration, and thus the voltages on both sides of
the switch are constant and not input dependent. This DC error is
unimportant, as only the peak-to-peak variation of the output signal
is of interest.
If the OTA employed has a gain of A1 then the integrator is lossy
with a cut-off frequency of 12πA1RintCint
. Since an ideal integrator even
at low signal frequencies is required, the OTA needs to have a large
gain. Additionally, a large gain limits the changes in the virtual ground
potential with the output voltage (v− = Vph + voffset + vo/A1), that
would lead to an input-dependent gain error, and thus distortion.
Therefore, a two stage Miller OTA is used (Fig. 2.22(c)) with an
open-loop gain of 85 dB. Since the integrator is placed in unity gain
configuration when the capacitor charge is reset, a Miller compensation
capacitor of 0.5pF is used for stability. Large devices are used to reduce
the flicker noise at the OTA input.
The value of Rint is chosen by examining the noise equations (2.52)-
(2.56). From these relations it can be seen that it is desirable to max-
imize Rint. However, choosing Rint > Rf also attenuates the measured
signal power by (RfRint
)2 and is thus not beneficial. Hence, a sensible
choice is Rint = Rf = 500 kΩ.
2.7.3 Sample and hold
A basic S/H configuration was chosen for simplicity (Fig. 2.23). A
small sampling switch (1/1 µm) and a dummy switch at the sampling
106
M1,M3 [µm] 1/1M2,M4 [µm] 0.5/1CS/H [pF] 1.37
Fig. 2.23: Simple sample and hold
capacitor side are used to reduce charge injection. The relatively large
capacitors (1.4 pF) also reduce the effect of charge injection and im-
prove the matching between the S/H of the two channels.
The design is not optimal, as it suffers from charge injection, part of
which is also input-dependent, leading to potential distortion for large
signals. Using transient simulations for large inputs, it was verified
that these errors were of an acceptable magnitude for the particular
application. Furthermore, their significance is reduced by the fact that
the signal of interest is the ratio of the two sampled signals, and there-
fore similar errors on both of them are expected to have a smaller effect.
For this reason, the two S/H were carefully matched via symmetrical
layout techniques.
In a future design, the S/H and the buffer could be replaced by one
of the many available S/H in the literature (e.g. [137]), to achieve an
improved sampling performance.
A two-stage Miller OTA identical to that of the switched integrator
(Fig. 2.22(c)) but with Cc = 4 pF and Itail = 330 nA is used in a voltage
buffer configuration to isolate the S/H from the following stages.
2.7.4 High-pass filters/CFA
The capacitive feedback amplifier has a closed-loop gain set by the ratio
of the input to feedback capacitors. The value of the input capacitor
can be programmed to provide a gain of 1 or 5 (Fig. 2.24(c)). A small
PMOS switch (M1), which is OFF under normal operation, is used
107
(a)
CH1, CH2 [pF] 1.07CH3 [pF] 5.3M1 [µm] 1/0.35M2 [µm] 0.5/0.35
M3 −M6 [µm] 10/0.35M7 −M8 [µm] 5/0.35
Cc [pF] 0.54Itail [nA] 100
(b)
(c)
Fig. 2.24: High-pass filters/CFAs: (a) Top-level schematic; (b) parameter values,and (c) switch and multiplexer implementations
to provide a DC feedback path, instead of transistors connected as a
“pseudo-resistor”, commonly used in these configurations[138]. Even
though the OFF resistance of the switch is not very well defined, and
is sensitive to process and temperature variations, Spectre simulations
with the AMS models indicate cut-off frequencies smaller than a few
mHz with a feedback capacitor of 1 pF. These are at least two decades
lower than the useful signal frequencies allowing margin for variations.
Although this very large time constant is needed to achieve AC coup-
ling and DC level shifting of the input signal, it also creates a problem.
Every time the DC level of the input changes (e.g. because a differ-
ent value is programmed for the desired photocurrent), the high-pass
108
filter needs to settle to the new DC operating point – or the wrong
DC value will be subtracted from the detected signal. With such low
time constants this would take several hours, which is obviously not
practical.
This is the reason, why a switch is used in place of a possibly more
effective “pseudo-resistor” (Fig. 2.19b). At the end of each calibration
phase, the switched integrator is placed in unity gain, and the S/H
output is set to track its input. In this way, the output of the transim-
pedance amplifier, TIAF , is directly connected to the HPF input. The
HPF feedback switch is then closed, putting the amplifier in unity-gain
configuration and allowing for quick charging of the input capacitor to
the difference between the TIAF output DC level and the desired DC
value provided at the positive input of the HPF. Since, due to the
calibration mechanism, the average S/H output (or DC level) under
normal operation will be approximately equal to the TIAF average out-
put level, the HPF output will have a DC level close to that provided to
its positive input. DC errors due to charge injection from the switched
integrator reset switch or the S/H will only lead to small shifts in this
DC level, which do not constitute a problem for the subsequent ADC
input range.
Once again, since the peak-to-peak amplitude value of the output
signal is of interest, the DC errors do not affect the front-end’s accuracy.
On the contrary, the gain of the HPF can have a much more severe
impact on the front-end performance. As two different HPFs are used
for the R and IR signal channels, any mismatch in their gains translates
to an error in the calculated signal ratio and thus in SpO2. Therefore,
extreme care was paid in layout to match the capacitors of the two
HPFs, both with each other, and across the two channels.
2.7.5 LED driver
The LED driver needs to be able to provide LED currents spanning
at least two decades (100 µA-10 mA) to accommodate detected pho-
109
(a)
M1 −M4 [µm] 1/1M5 [µm] 1000/1M6 [µm] 500/0.35R3 [Ω] 200R4 [kΩ] 1
M1 −M4/RON [Ω] 10
(b)
Fig. 2.25: LED driver: (a) Schematic and (b) parameter values
tocurrent levels ranging between 10 nA and 1 µA with average tissue
attenuations between 103 and 104, depending on the physiology of the
probed site and the sensor type.
To provide this range of currents the LED driver in Fig. 2.25 was
selected. A voltage level is applied to the gate of M5, which acts as
a transconductor to generate the LED current. Source degeneration
is employed to lower the transistor’s transconductance and render the
LED current less sensitive to variations in the driving voltage. Such
variations will inevitably occur, since the required driving voltage is
stored in an analogue form, despite the low-leakage properties of the
S/H employed (see next section). Degeneration resistors ranging from
a few Ω to around 1 kΩ can be selected via the digital interface to ac-
commodate a range of LED currents with different effective transcon-
ductances for the driving transistor.
The driver NMOS transistor has a large W/L ratio to be able to
provide mA currents without an excessive VGS voltage. As the red
LEDs typically need 1.5− 2 V across them, a voltage headroom of
1.5− 1.8 V is available for the transistor VDS and the degeneration res-
istor. With a threshold voltage of 0.65 V for the NMOS transistor[134],
VGS should not exceed 2 V to ensure the driver transistor is saturated.
110
(a) (b)
(c)
M1 −M2 [µm] 30/1M3 −M10 [µm] 10/4M15 −M16 [µm] 100/2
Itail [µA] 1M17,M22 [µm] 0.5/0.35M18 −M21 [µm] 10/0.35
M23 [µm] 1/0.35M24 [µm] 0.5/0.35CLL [pF] 5.6CL [pF] 3
(d)
Fig. 2.26: Low-leakage Sample and Hold: (a) Top-level schematic; (b) switchesimplementations; (c) OTA schematic, and (d) parameters and sizes
The modulation of the LED current is realized using a PMOS switch
(M6), driven by the digital control circuitry. A large W/L ratio is again
chosen to lower the ON resistance of the switch and the associated
voltage drop.
111
2.7.6 Low leakage S/H
The potential required to be applied to the LED driver to achieve the
desired detected photocurrent level is determined in the calibration
phase. The estimated value is then sampled and stored for the interval
between two calibrations. As this value directly drives the gate of a
transistor, even small errors in the stored value result in large errors
in the LED current and consequently the detected photocurrent DC
level.
These errors lead to calculation of inaccurate AC/DC ratios for each
of the measured channels, as the DC component does not have the value
chosen during the calibration phase. However, if the errors affect both
channels in the same way, the ratiometric calculation of SpO2 reduces
their effect. Additionally, these cause the DC level at the TIAF output
to deviate from the value of vref chosen during the calibration phase.
This leads to a DC voltage difference across Rint and a DC current
flowing in/out of the switched integrator (see Fig. 2.19(a)) when the
LEDs are ON. Since the SI is chosen to have a large gain, in order to
amplify the small AC component, large DC currents will cause it to
saturate.
To illustrate the problem with an example, assume that the DC level
of the detected photocurrent is set to be 1 µA, via the feedback loop. If
the probed tissue introduces an attenuation of 10000 times, the corres-
ponding LED current would be 10 mA. With the proposed transistor
sizes and a gain factor of 170 µA/µm2 the LED driver transistor M5
(Fig. 2.25) has a transconductance of 58 mS[134]. Assume that the
switched integrator has a gain of 10 MΩ and a voltage headroom of
1 V. Then, a 10% change in the detected current DC level will cause it
to saturate. This corresponds to a change of 1 mA in the LED current
and 17.2 mV in the stored voltage value. If a new calibration is carried
out every 10 s, this corresponds to a drift in the stored voltage value
of 1.72 mV/s. If an integrated capacitor of 10 pF is used to store the
value, a leakage current of 18 fA is enough to cause such a drift. Such
112
a leakage current is not trivial to achieve. In the AMS 0.35 µm process
a 1 µm/0.35 µm transistor is specified to have a typical leakage cur-
rent of 0.5 pA with a 3.3 V voltage difference between its source and
its drain[134], whereas for a more realistic 1 V voltage difference, the
simulation models calculate a 150 fA leakage current.
To tackle this problem the S/H proposed by O’Halloran et al. [141]
was employed, which has demonstrated a leakage current as low as
10 aA. The S/H schematic is shown in Fig. 2.26. The sampling takes
place in 4 steps. The input signal is fed to the S/H input, while the
OTA is in unity gain configuration, presenting a potential equal to
vref + voffset OTALLSH at node A. Then, switch S1 is opened to remove
any path to node A, which is now floating. Thus, when S2 is sub-
sequently opened, no extra charge can be injected on the capacitor, as
this would also require extra charge to be injected to node A. Hence,
charge injection from S2, which would be input-dependent, is avoided.
At the same time, or after some delay, S3 closes, bringing the capacitor
around the OTA and presenting the sampled voltage value at the S/H
output.
The stored voltage value is corrupted via charge transferring away
from or towards the “floating” node A. This can occur for three reasons:
(a) Even if a voltage value of VDD/VSS is applied to the gate of
the PMOS / NMOS transistors forming switch S1 to turn them
OFF, some leakage current, of the order of hundreds of fA for the
chosen technology, still flows through their channel, if a voltage
difference exists between their drain and source[141].
(b) Current leaks through the reversed-biased drain and source junc-
tions of the transistors forming the switch[141].
(c) The capacitor dielectric is not a perfect insulator. For the poly-
poly capacitors in the chosen process, it is specified to have a
maximum leakage of 1 aA/µm2, which corresponds to a drift in
voltage of 1.163 mV/s[134].
113
To combat the first two problems the S1 switch shown in Fig. 2.26(b)
was used in the feedback path in [141]. A single PMOS transistor is
used. During the hold phase, its bulk, source, and drain are all set to
the same potential vref . Thus, both the diode reverse leakage current,
as well as the leakage through the transistor channel are to a great
extent eliminated, since no voltage difference exists to induce drift of
charges. To avoid forward biasing of the p-n junctions of M17, a reset
switch S5 is also included, that sets the output to zero just before a
new sampling begins (see [141] for details).
To limit the other major source of error, namely charge injection due
to switch S1, another capacitor, matched to the sampling capacitor, is
connected to the positive input of the OTA and used to sample voltage
vref . As both capacitors and switches S1/S4 are laid out to be well
matched, the error is greatly reduced.
These techniques can do nothing to alleviate the error due to leak-
age in the capacitor dielectric. To safeguard the front-end’s operation
against this problem, degeneration resistors were employed to lower
the LED driver’s transconductance (section 2.7.5), and thus, its sens-
itivity to changes in the stored voltage value (Fig. 2.25). In the above
presented example, a 100 Ω resistor in series with M5 reduces its small-
signal transconductance by 1 + gm5RLED to 8.53 mS, which is almost
a factor of 7. A change in the stored value of more than 100 mV can
now be tolerated without saturating the switched integrator. Note that
this modification reduces the sensitivity of the design to all the other
sources of leakage current as well. The cost is the reduced voltage
headroom available for the LED driver and the LED.
From the preceding discussion the reader may have acquired the
impression that the leakage in the capacitor dielectric is the most im-
portant source of error. Under this perspective, employing a S/H with
a 10 aA leakage current and a differential input might seem an overkill.
However, remember that, even if they do not saturate the front-end,
errors due to leakage currents or charge injection result in deviations
in the calculated AC/DC ratios. Despite the error tolerance of the ra-
114
tiometric SpO2 calculation this can constitute a problem. For example,
it is sometimes desired to measure the absolute value of the AC/DC
ratio as an indication of the tissue perfusion. More importantly, how-
ever, it is difficult to guarantee that the leakage currents or the charge
injection errors will be identical for the two channels. Even though a
4% error in the detected photocurrent will not saturate the front-end
in the example given above, if the corresponding error in the other
channel is 2%, a significant error in the SpO2 value will result. This
will be smaller if the deviations in the AC/DC ratios are reduced to
1% and 0.5%.
Therefore, there is a strong motivation to minimize the errors in
the S/H to the minimum possible. Furthermore, excellent matching
between the two S/H is required through careful layout (section 2.7.11).
2.7.7 Reference and biasing
A CMOS current reference was designed to generate all the bias cur-
rents. The same structure generates the programmable reference cur-
rent Iref . This current is fed through a TIA (TIAR), identical to the
one connected to the photodiode output (TIAF ), to generate the ref-
erence voltage vref (Fig. 2.27(a)). This is used as a control variable
to regulate the detected photocurrent DC level, via the calibration
scheme, as well as, to subtract this DC level at the switched integ-
rator stage under normal operation (see section 2.6.1). The advantage
of this approach is that the same reverse photodiode bias voltage Vph
is added to both the TIAF and TIAR outputs. Its precise value is
thus not significant. Moreover, a large part of the low frequency noise
present in Vph will be cancelled at the subtraction occurring on the
resistor Rint of the switched integrator block.
There are no strict accuracy specifications imposed on the current
generation. A difference of±20 % on the bias currents will not have any
significant impact on the accuracy and stability of the blocks involved.
Similarly, even though it will result in an absolute error in the detected
115
(a)
M1 [µm] 20/200M2 [µm] 30/200
M3 −M4 [µm] 50/200M5 [µm] 16/200M10 [µm] 0.5/200
M11 −M12 [µm] 10/250M13 [µm] 2/200M14 [µm] 1/100
M15 −M23 [µm] 100/1Cf [pF] 10.4RCR [kΩ] 19Icr [µA] 10Iref [nA] 50-3150
(b)
(c) (d)
Fig. 2.27: Bias and reference current generation circuits: (a) Top-level schematic;(b) parameter values; (c) current reference, and (d) start-up circuit
average photocurrent value, the SpO2 calculation will not be affected,
as the detected DC level of both the R and IR channels will still be
the same, and will be cancelled out when their ratio is calculated.
Therefore, a simple CMOS current reference with a structure similar
to a VT reference was designed (Fig. 2.27(c) / M1-M4), to generate a
nominal bias current of 10 µA. Binary scaled PMOS mirrors (M5 −M10) are then employed to generate the reference current, which can be
programmed in steps of 30 nA up to approx. 1.9 µA. A simple start-up
scheme using diodes was employed (Fig. 2.27(d)), with several of them
in series to achieve a pA static power dissipation. The successful start-
116
up of the reference was verified via Monte Carlo and process corner
simulations.
Contrary to accuracy, noise is a much more important design con-
sideration. Any noise generated from the reference will be directly
coupled into the signal path in a single-ended implementation, as will
be also shown in chapter 3 in greater detail. For this reason, very large
transistors are used in the current reference to reduce flicker noise. Ad-
ditionally, the scaling down of a large reference current was preferred
to scaling up a small reference current, despite the increased power
consumption. To justify this consider the PSD of the output thermal
current noise due to the current reference transistor M2:
SinREF = 4kTγgm2M2ref (2.58)
where Mref is here the programmable current mirror ratio, i.e. if tran-
sistors M2/M4 have a current Icr then the output reference current is
Iref = Mref × Icr. Assuming strong inversion operation, gm2 is propor-
tional to√Icr and
SinREF ∝ 4kTγ√IrefM
32 (2.59)
It is evident from 2.59 that, for a given desired Iref , the smaller M is,
the smaller the output thermal noise density due to the channel thermal
noise of M2. Similar relationships hold for all the four transistors of
the current reference (M1-M4).
To further limit the effect of this noise, a low-pass filter is employed
at the reference output mirror, formed by the OFF resistance of switch
S1 and a 10 pF capacitance. This limits significantly the thermal noise
bandwidth at the output, for all but the output transistor M12.
As in the case of the high-pass filters in the forward path, a switch
was used instead of a large pseudo-resistor, to enable fast settling of
the output when necessary. Every time a new reference current is pro-
grammed (by setting the ratio Mref ), the switch is closed (by asserting
117
the PROG EN signal - section 2.7.10) to quickly charge the capacitor
node to its new voltage value. Charge injection at the opening of the
switch means that some time should still be accounted for the reference
to settle to its steady state value, but this will be much smaller than
if a large resistor had been used.
A similar capacitor of 10 pF is used at the output of TIAR, in con-
junction with a small bias current for OTAR, to limit the output noise
bandwidth.
The cost for the decrease in noise using the techniques described
above is noticeably increased area and power consumption. These
could be avoided by realizing a differential version of the proposed
front-end, where the reference noise would be cancelled out.
2.7.8 Calibration loop
The LED current is regulated by an analogue feedback loop that en-
sures the desired photocurrent level is detected at the photodiode. The
loop comprises the transimpedance amplifier TIAF , the switched in-
tegrator and the LED driver (Fig. 2.28(a)). If the dynamics of the first
two are approximated using their dominant poles, a block diagram of
the linearised loop can be derived as in Fig. 2.28(b). The open loop
gain can be easily seen to be
GOLcal =gm5αRf
1 + gm5RLED
A1
1 + A1RintCints
1
1 +RfCdAo
s(2.60)
from which the open-loop crossover frequency is derived as
ωCcal =gm5αRf
1 + gm5RLED
1
RintCint(2.61)
To ensure a phase margin of 60, the non-dominant pole AoRFCd
should
be at least two times the crossover frequency:
AoRFCd
> 2gm5αRf
1 + gm5RLED
1
RintCint(2.62)
118
(a)
(b)
Fig. 2.28: Calibration loop for regulating the LED current: (a) Schematic and (b)linearised block diagram
From this, the minimum necessary Cint capacitance can be derived:
Cint > 2αRf
Rint
gm5Rf
1 + gm5RLED
CdAo
(2.63)
To obtain a simplified relationship, it can be observed that Rf =
Rint,gm5
1+gm5RLED< 1
RLEDand α =
IphILED
. Hence, (2.63) simplifies to:
Cint > 2IphRf
ILEDRLED
CdAo
(2.64)
From (2.64) it can be noted that large photodiode output capa-
citances pose a more stringent limitation on the loop stability, thus
requiring increased gains in the amplifier of the TIAF or large Cint val-
ues. The same holds for large photocurrents, as then the term IphRf
has to increase faster than ILEDRLED, since the latter is limited by the
119
(a)
M1 −M2 [µm] 1/0.35Cc [pF] 10Itail [µA] 5
(b)
Fig. 2.29: Output buffers: (a) Multiplexer and switches and (b) parameter values.
available voltage headroom at the LED driver.
In most configurations, the termIphRf
ILEDRLEDwill have values between
0.5-3 around the DC operating point. Then, with a photodiode output
capacitance Cd = 130 pF and Ao ≈ 150, Cint is required to be larger
than 1 pF.
In the proposed implementation, Cint was chosen to be 20.7 pF dur-
ing the calibration phase, i.e. equal to the largest of the two capacit-
ances used in the switched integrator under normal operation. This
more than satisfies the value calculated.
However, the analysis above is quite simplistic: stability around the
DC operating point does not also guarantee stability when large swings
occur in the system, for example when the system first turns on. Fur-
thermore, the front-end needs to be stable under different attenuation
factors and photodiode capacitances, since these vary between sens-
ing probes and configurations. For this reason, stability was verified
through detailed transient simulations in Spectre for values of Cd ran-
ging from 100 pF to 1 nF, attenuation α values from 10−4 to 10−3 and
LED currents up to 20 mA.
2.7.9 Output stages and testing
The front-end output connects to an external A/D converter in order
to be digitized. Furthermore, it is desirable that this output can be
measured using a scope probe. Therefore, a low impedance output is
120
necessary that also has enough current drive capability to avoid any
stability or accuracy errors under the presence of large external capa-
citances (e.g. the 10− 50 pF input capacitance of a scope). For this
purpose a voltage buffer implemented using a two-stage Miller OTA
was employed at the output. Two similar buffers were used to output
eight internal voltages to two output pads, via digitally programmable
4:1 analogue multiplexers (Fig. 2.29).
These buffers were designed to be able to drive load capacitances of
50 pF with a phase margin of 65 and a settling time less than 20 µs
for a step input from 1 to 1.5 V. As a consequence, they exhibit a high
power consumption.
Note that the buffers are merely included for testing and are not
necessary for the operation of the front-end. Even if the A/D converter
is off-chip, it will not present a load capacitance of 50 pF, nor will it
require settling times of µs, as at the output of the front-end the signal
is continuous in time with frequencies of a few Hz. A shutdown input
is provided to turn the testing buffers off under normal operation.
2.7.10 Digital control
The digital part of the design enables external programming of the
chip operation and provides the timing signals for the operation of the
various switches. The logic involved is very simple, consisting just of
registers, counters and a large finite-state-machine (FSM).
For the programming, a 162-bit serial register is used, to realize
an SPI-like interface (Fig. 2.30). One bit of data present at the DIN
input is shifted in the register every time a rising edge arrives at the
SCLK input, provided that the PROG EN signal is high. At the end of
the programming, PROG EN changes to low and the data are latched
into registers. Then, PROG EN needs to be brought back to high for
a few milliseconds to allow for the reference current to settle to its
programmed value (see section 2.7.7).
Subsequently, normal operation begins when PROG EN is set to zero
121
(a)
(b)
Fig. 2.30: SPI programming interface: (a) Interface terminals and (b) Typical tim-ing diagram
again and START changes to high. All operations are controlled by
one FSM, that provides all the timing signals. A diagram of the FSM
states is shown in Fig. 2.31. The FSM stays at each state for a pre-
defined duration, either programmed or hard-wired. This is achieved
by resetting a counter once a state transition occurs and comparing
the counter output to the predefined time to decide when the FSM will
move to the next state. Table 2.3 summarizes all the time durations
that are externally programmable, along with a description. Fig. 2.31
shows the different operation states, along with the time durations for
each.
The clock was chosen to be 1 MHz to provide a time resolution of
1 µs. Despite the relatively fast switching speed the power consump-
tion of the digital blocks is still estimated to tens of µW. This is
because the majority of the registers involved in the control circuitry,
switch at a frequency much lower than 1 MHz. In fact, the only unit
switching at this frequency is the counter tracking the time duration
of each FSM state.
122
(a) (b)
(c)
Fig. 2.31: State diagrams for the FSM controlling the front-end operation: (a)Phases of operation; (b) measurement phase; and (b) calibration phase
123
Table 2.3: Digitally programmable time durations
Time variable DescriptionValue range
(clock cycles)
T RST Delay between START andnormal operation
64
T PR SETUP TIAF settling time (unitygain configuration)
1 - 31
T CAL LED calibration 1 - 16383T CAL DEL Delay interval for settling
after various steps in thecalibration process
1 - 1023
T SETTLE R/IR Settling time for TIAF
(feedback resistor in loop)1 - 4095
T INT R/IR Integration time 1 - 4095T TRACK S/H track time 1 - 63T SH SETTLE S/H settle time 1 - 63T IDLE R/IR LED OFF time 1 - 16383
All the digital logic was designed using VHDL with automatic syn-
thesis (Cadence RTL Compiler) and place & routing tools (Cadence
SoC Encounter). The VHDL code is available in Appendix B. Appro-
priate constraint files, also provided in the appendix, were employed
to ensure that the external clock provided by an FPGA is able to drive
all the register clock inputs. They also make certain that the internal
control signals can drive the long wires conveying the timing signals to
the switches that are laid out in proximity to the analogue circuitry.
2.7.11 Layout
The chip was laid out in the AustriaMicroSystems 0.35 µm 2P4M tech-
nology. Fig. 2.32 is a microphotograph of the layout of the full chip with
the various blocks annotated. The areas of the blocks are summarized
in Table 2.4. The layout was carried out manually using common-
centroid and interdigitating techniques[142], as well as shielding, to
achieve, in order of priority:
• Good matching between R and IR channels
124
Fig. 2.32: Microphotograph of the fabricated front-end
• Good matching within circuit structures where necessary (e.g.
OTA input stages, current mirrors)
• Small coupling between channels
• Small crosstalk from digital to analogue signals
In this section a few comments on points where special attention was
needed will be made.
Transimpedance amplifier TIAF
The OTA of this amplifier is biased with a programmable tail current
ranging from 100 µA to 1.5 mA. As the metal layers 1-3 can support
125
Table 2.4: Chip area
Block Area [µm2]
TIAF (excl. resistor) 43200Switched integrator (excl. resistor) 46170
TIAR (excl. resistor) 44000Rf , Rint, Rref 46170
Current reference 116963Sample-and-holds 5950High-pass filters 68320
Low-leakage S/Hs 105560LED drivers 113050
Internal buffers 72988Output buffers 86160Digital control 214200
Total (incl. rings) 1351350
a maximum current density of 1 µA/µm, an appropriate width, larger
than the minimum, was chosen for the OTA routing wires. Further-
more, the resistors of the TIAF , the switched integrator and the TIA
of the reference generation, TIAR, were interdigitated to provide a cer-
tain level of matching between them. Some mismatch is not crucial in
this case, since it will manifest as the same gain error in both R and
IR channels.
Low leakage S/H
As was explained in section 2.7.6, very good matching is required for
the stored voltage value across the two channels. Furthermore, good
matching is required between the feedback capacitor, that stores the
sampled voltage value, and the extra capacitor that stores the value
of the reference voltage provided to the positive input of the OTA, to
minimize the offset induced from charge injection. Therefore, a sym-
metric layout was used for all four capacitors, to match both the two
capacitors in each S/H block, as well as the corresponding capacitors
between the two S/H (Fig. 2.33). The two OTAs were also laid out
126
Fig. 2.33: Capacitor matching for low-leakage S/H. Best matching is achievedbetween the capacitors of each S/H, i.e. A/B and A’/B’ respectively
symmetrically and in close proximity.
Another significant consideration is avoiding latch-up. Because the
bulk of some switches is connected to the positive input voltage, rather
than the positive power supply, to reduce leakage (see section 2.7.6),
it is possible for the source or drain p-n junctions of these switches to
become forward-biased, injecting carriers into the substrate. This situ-
ation occurs when the S/H input voltage exceeds the voltage provided
to the positive input of the OTA, equal to the reference voltage vref ,
and is more likely to happen for large LED currents.
To avoid this problem, it was ensured via Spectre simulations that
the voltage provided to the LED driver and sampled by the S/H does
not exceed the corresponding reference voltage by more than 200 mV
for LED currents up to 20 mA and with the appropriate degenera-
tion resistor used in the LED driver. However, as a precaution, these
switches were also surrounded by a double guard ring, to provide car-
127
Fig. 2.34: Layout of the low-leakage switches. The switches of the two channelsare laid out in proximity and symmetrically. Transistors having a wellnot connected to the positive supply are surrounded by double ring tolimit the possibility of a latch-up
Fig. 2.35: Layout of the simple S/Hs in the forward path. The switches are inclose proximity and the capacitors are matched using a common-centroidlayout
rier collection points and lower the substrate resistance between them
and neighbouring structures.
Forward path S/H
The switches for the two S/H were positioned next to each other,
whereas a simple common centroid layout was used to match the two
S/H capacitors.
128
Fig. 2.36: Layout of the two HPFs. The two blocks are positioned in close prox-imity. The capacitors setting the gain (A/B/C) are matched to reducevariations. Symmetrical layout is used to achieve matching between thegains of the two channels (A-A’,B-B’,C-C’)
High pass filters
The OTAs of the two filters were laid-out next to each other. The
capacitors used were matched with each other within each filter, as
well as, across the two filters, with an emphasis on the cross-channel
matching, as similar gain errors in both channels cancel out in the SpO2
calculation. The layout pattern employed is shown in Fig. 2.36.
LED drivers
The transistors and metal interconnections in the LED driver carry
peak currents with values up to tens of mA. Therefore, the path widths
and VIA sizes were selected to ensure that the peak current densities
can be accommodated. Similarly, the transistors, switches and degen-
eration resistors (realized in a high-resistivity poly layer), were split
into appropriately wide fingers to support these currents.
The LED drivers are surrounded by a double ring. The outputs
connected to the LEDs are routed at a distance from the rest of the
analogue circuits to isolate their large substrate return currents. The
same applies to the supply biasing the guard rings, which is connected
to the global power supply off-chip.
129
Fig. 2.37: LED drivers layout. Large device fingers and paths are used. Doublering surrounds the structures
Shielding
Shielding was used to avoid coupling between the R and IR channels
and cross-talk due to switching on digital signal lines. For this purpose,
the signal lines for the two channels, as well as the digital control sig-
nals, were routed at a distance from each other where possible. Where
crossing of signal paths occurs this was carried out on different metal
layers, at least two levels apart. For example, one signal was routed
on Metal 1 and the other on Metal 3. At the crossing point, a layer
of the in-between metal was placed, with at least twice the area of
the crossing, and tied to a constant potential (Fig. 2.38(a)). Simil-
arly, where signal lines from different channels are routed together, a
”wall” comprising all metal layers tied to ground is routed between
them (Fig. 2.38(b)).
Both techniques increase the ground capacitances of the signal paths
and require larger drivers at the digital control block, increasing the
power consumption. However, coupling between signals is thus signi-
ficantly reduced. For particularly sensitive blocks, like the low-leakage
130
(a) Signals crossing on dif-ferent layers
(b) Parallel routing of sig-nals with a grounded”wall” in between
Fig. 2.38: Shielding techniques. Metal 1 is painted in blue, metal 2 in white andmetal 3 in yellow. Vias are represented by solid-coloured squares
S/H this was also verified via post-layout simulations.
131
3 Measurements on the
proposed PO front-end
This chapter reports on experimental results acquired using the pro-
posed oximeter front-end. Electrical measurements are used to eval-
uate critical performance figures, such as gain, matching and power
consumption. Additionally, PPG signals and SpO2 measurements are
recorded from volunteers to assess the front-end’s functionality and
performance.
3.1 Experimental setup and signal
processing
To perform the measurements, a dedicated 4 layer printed circuit board
(PCB) has been designed to interface to the integrated circuit (IC). The
board is powered by 4 standard AA batteries, and voltage regulators
are employed to derive any voltages not directly available from the bat-
teries (TPS73150 and LP3878-ADJ). The ADS1259 14.4 Ksps 24-bit
A/D converter is used to digitize the IC outputs, with its internal ref-
erence of 2.5 V. A ZestSC1 FPGA board by Orange Tree Technologies
is employed to program the IC and the A/D via their serial-to-parallel
interface, provide the IC clock and handle the data transfer between
the PCB and a personal computer via its USB interface. Pictures of
the experimental setup are shown in Fig. 3.1.
On the computer side a mixture of C and Matlab code controls the
communications. Matlab is also used for all the subsequent signal
132
(a)
(b)
Fig. 3.1: Experimental setup: (a) Pulse oximeter components, and (b) signal meas-urements with a PC
133
Table 3.1: Parameters for SpO2 measurements
Configuration
A B C
Power Supply [V] 3.3 3.3 3.3Avg. detected photocurrent Iref [nA] 110 44 427
Integration time tint [µs] 220 620 320Sampling frequency fs [Hz] 100 100 100
Duty cycle D [%] 3 7 4Calibration interval Tcal [s] 5 5 5
processing and visualization. Transient measurements with sampling
rates faster than 2 kHz have been carried out using a 7300A LeCroy
oscilloscope.
A commercial SPOmedical 6106 reflectance finger probe was used
for sensing.
Measurements were performed under three different configurations
for the PO front-end, summarized in Table 3.1. Three sets of para-
meter values–for the reference current (Iref ), integration time (tint)
and sampling frequency (fs)–were chosen to obtain a low-power (A),
a low-LED-peak-current (B) and a high-SNR (C) configuration.
The same signal processing is applied in all three cases. The output
signal is demultiplexed into the original R and IR photoplethysmo-
graphic (PPG) signals. Each of these is filtered via a 2nd order IIR
Butterworth filter with a cut-off frequency of 10 Hz, to eliminate the
out-of-band noise.
The next step in the SpO2 calculation is detecting the PPG signal
peaks, so that the amplitude of the AC component of the R and IR
PPG signals can be calculated. Any algorithm for peak detection pre-
viously reported in the literature can be employed. In this work, the
filtered PPG signal is correlated with a pattern extracted from a PPG
signal recorded on the author’s fingertip (Fig. 3.2), for each interval
between two subsequent calibrations (5 s duration).
The pattern was adjusted to have a zero mean and was chosen to
134
0 10 20 30 40−0.1
−0.05
0
0.05
0.1
0.15
Sample
Value
Fig. 3.2: Pattern used to detect peaks in PPG signal via correlation
represent the sharp drop in the measured PPG signals during the trans-
ition from diastole to systole. Thus, the correlation result is exhibiting
peaks at the locations of these sharp transitions. A PPG signal max-
imum and minimum is then expected to occur just before and after a
transition respectively.
To detect the correlation peaks a simple comparison with a threshold
is used. The threshold value is chosen for each 5 s interval as a third of
the maximum correlation value. This ”adaptive” threshold selection
is necessary to allow detection for a large range of AC PPG signal
amplitudes.
The maxima and minima in the vicinity of each correlation peak
(± 18 samples) are detected. Peaks close to the calibration times are
ignored to avoid errors due to large transitions in the signal. The
AC value of the PPG signal is calculated as the difference between
neighbouring maxima and minima, corrected for ramp-like baseline
drifts (see [11], p.135-143). A Λ value is then derived by dividing the
closely spaced in time AC values for the two PPG signals:
Λ =ACppRACppIR
(3.1)
135
To derive an accurate SpO2 value, a calibration of the system on
human subjects is necessary. Such a calibration is time consuming
and, more importantly, requires trials involving inducing desaturation
to human subjects. However, the intention of this work was not to
produce a fully-functional, ready for commercial use pulse oximeter.
Instead the primary goal was to demonstrate that the proposed oxim-
eter front-end can achieve the desired resolution, that is, that it can
detect small enough changes in SpO2, despite the reduced power con-
sumption. Therefore, the SpO2-Λ relationship from [93] has been used
instead:
SpO2 = 108− 20Λ− 0.375Λ2 (3.2)
Finally, a median filter using two samples preceding and following
each calculated SpO2 value was applied to remove any large variations
in the derived SpO2 signal, that can occur, for example, if a single peak
fails to be detected.
3.2 SpO2 and PPG signal measurements
Measurements were performed on 13 subjects, 10 males and 3 females,
with ages predominantly between 20-30 years old. The subjects were
seated with the probe on the index finger of their left hand and their
arm resting on a desk. Two sets of experiments were performed.
In the first set, from now on termed ”forced apnoea” experiments,
during a 5 min period the subjects were asked twice to forcibly exhale
and hold their breath for as long as possible. Relaxation time was
allowed before and between breathholds to allow the measured SpO2
signal to return to the level measured under normal breathing. The
start and stop times of each breath holding were recorded. Fig. 3.3
shows typical signals recorded from one of the subjects. For this set of
experiments the parameters or configuration A were used (Table 3.1).
In the second set of experiments, from now on termed ”normal
breathing”, PPG and SpO2 signals were measured with the subject
136
40 45 50 55 601.45
1.5
1.55
1.6
1.65
1.7
1.75
StopBreathing
Time [s]
PPG
signal[V
]
RIR
(a)
0 50 100 150 200 250 3000.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
AC
pp[V
]
Time [s]
StopB StopB
StartB StartB
RIR
(b)
0 50 100 150 200 250 30084
86
88
90
92
94
96
98
Time [s]
SpO
2[%
]
StopB StopB
StartB StartB
(c)
Fig. 3.3: Measured signals for one of the subjects: (a) PPG signals for R/IR chan-nels just before and after the start of a breath hold; (b) Calculated ACpp
values for R/IR channel–a mean value is calculated for every 5 s intervalbetween calibrations; (c) Calculated SpO2 signal. The vertical lines an-notate instances where the subject stopped (StopB) or started (StartB)breathing
137
1 2 3 4 5 6 7 8 9 10 11 12 1390
95
100
105
Subject
SpO2
µ44
±σ44
=96.54±0.87 %µ
110±σ
110=96.49±0.84 %
µ427
±σ427
=96.52±0.92 %
44 nA110 nA427 nA
Fig. 3.4: Measured SpO2 levels under normal breathing
Table 3.2: Measured SpO2 values under normal breathing
ConfigurationSpO2 [%]
mean±s.d.[range]
A 96.5±0.87 [94.6 - 97.6]B 96.5±0.84 [94.7 - 97.7]C 96.5±0.92 [94.4 - 98.1]
breathing normally for 2 min. The purpose of these experiments was
to obtain information about the values and variation of the PPG sig-
nal parameters among different individuals. All three configurations
(A,B,C - Table 3.1) were used.
3.2.1 SpO2 measurements
The average SpO2 levels measured for the 13 subjects in the normal
breathing experiments are shown in Fig. 3.4. Average values, standard
deviations and measured SpO2 range are also summarized in Table 3.2.
The measured values are within the range expected for a healthy in-
138
1 2 3 4 5 6 7 8 9 10 11 12 1370
75
80
85
90
95
100
105
110
Subject
SpO
2[%
]
µnorm ± σnorm = 97.06± 0.88%µmin ± σmin = 90.05± 3.31%
NormalMinimumDuration
0
20
40
60
80
100
120
Breathhold
duration[s]
Fig. 3.5: Measured SpO2 levels under forced apnoea. Normal SpO2 levels are cal-culated for each subject for time intervals between breathholds, after theSpO2 signal returns to a high level. The lower SpO2 value achieved in thetwo breathholds is plotted. The orange bars indicate minimum values notdetected as a desaturation event, as they differ less than 2 units from thenormal levels
dividual (> 95%)[11], perhaps in the presence of a systematic negative
bias, attributable to the arbitrary calibration relationship (3.2). The
similar SpO2 levels measured among the subjects support this explan-
ation. However, since no calibration was performed on the prototype
system, there is little value in comparing the absolute measured val-
ues to those of a commercial PO. The SpO2 values are also consistent
between different measurement configurations, indicating that the pro-
posed front-end can successfully be operated with different parameters,
potentially even with the same SpO2-Λ calibration curve.
Fig. 3.5 shows the normal and minimum SpO2 values measured for
each subject during the forced apnoea experiments. The maximum
breath holding times are also plotted for each subject.
The SpO2 levels measured while the subjects were breathing nor-
mally were 97± 0.88[95− 98.4]% (mean±s.d.[range]). A desaturation
event was defined as a drop higher than 2 units in a subject’s SpO2 level
139
2 4 6 8 10 12 14
1
2
3
4
5
SpO2 step [%]
Number
ofsubjects
0
2
4
6
8
10
12
14
16
18
20
µ =5.76σ =3.43min=2.33max=15.04
Number
ofevents
Fig. 3.6: SpO2 step distribution for events where desaturation was detected
after breath holding. Under this definition, 20 desaturation events were
detected in 25 breath holding efforts. This number increased to 18/20
events, when breath holdings with durations smaller than 20 s were ex-
cluded. The detected changes in SpO2 level were 5.8± 3.4 [2.3− 15]%.
More than 50% of these changes were below 5% (Fig. 3.6). Other
characteristics of the SpO2 signal during induced hypoxia, like a delay
between breath holding and the measured change in the SpO2 signal
on a finger probe have also been observed (measured delays 33± 12.4 s
between breath holding and SpO2 falling by 2%).
These results demonstrate that the proposed oximeter front-end is
able to resolve changes in SpO2 to levels similar to those typically
specified for commercial POs, despite the reduced power consumption.
3.2.2 PPG signal measurements
The PPG signals recorded during the normal breathing experiments
were processed to estimate the ACpp/DC signal levels under normoxia.
These values will later be used to estimate the front-end’s SNR. The
results for the 13 subjects are shown in Fig. 3.7 and Table 3.3, for all
140
1 2 3 4 5 6 7 8 9 10 11 12 130
1
2
3
4
5
6
Subject
Con
trastR
pp[%
]
µ44 ± σ44 = 2.43± 1.14%µ110 ± σ110 = 2.81± 1.49%µ427 ± σ427 = 2.52± 1.46%
44 nA110 nA427 nA
(a)
1 2 3 4 5 6 7 8 9 10 11 12 130
1
2
3
4
5
6
7
8
9
10
Subject
Con
trastIR
pp[%
]
µ44 ± σ44 = 4.29± 1.73%µ110 ± σ110 = 4.87± 2.35%µ427 ± σ427 = 4.35± 2.31%
44 nA110 nA427 nA
(b)
Fig. 3.7: Measured peak-to-peak contrast values (ACpp/DC) for (a) R and (b) IRPPG signals
141
Table 3.3: Measured PPG signal contrasts under normal breathing
ConfigurationContrast Rpp [%] Contrast IRpp [%]mean±s.d.[range] mean±s.d.[range]
A 2.43±1.14 [0.82 - 4.76] 4.29±1.73 [1.5 - 7.22]B 2.81±1.49 [0.55 - 5.11] 4.87±2.35 [1.08 - 8.59]C 2.52±1.46 [0.79 - 5.21] 4.35±2.31 [1.54 - 8.59]
three front-end configurations.
Apart from the absolute contrast values, two more observations can
be made. Firstly, the contrast can vary by more than a factor of 5
between different individuals. The gain, voltage headroom and noise
levels of the front-end need to be such that this range of signals can
be successfully accommodated. Secondly, the average contrast value
is not constant, but varies between the different configurations. This
could be related to the different interaction between light and tissue
under the different configurations. For example, one configuration may
lead to more photons being scattered by pulsatile tissue components.
As the DC current level relates directly to the LED power consump-
tion, the contrast value is in a sense a measure of how efficiently the
dissipated LED power converts to the measured AC signal. Hence, cer-
tain operating conditions may be more favourable in terms of power
consumption/signal power trade-off. However, other factors like vari-
ation of tissue attenuation with incident light and the noise levels of
the different configurations need to be considered to decide whether
certain parameters lead to more favourable SNRs. We will return to
this topic in the next sections.
The PPG signals recorded during forced apnoea experiments were
used to estimate the reduction in the detected AC signal values dur-
ing desaturation, due to vasoconstriction (see section 2.2). For this
purpose, the detected peak-to-peak AC signal was measured for time
intervals between the SpO2 establishing a normal level and the initi-
ation of a breath holding, considered to be intervals of normoxia. The
AC signal amplitude was then also extracted for an interval starting
142
10 s after the initiation of a breath holding and extending up to the end
of the desaturation event. The choice to associate the reduced AC sig-
nal measurement interval with the start of the breath holding, rather
than the desaturation event, was made due to noticeable reduction in
the AC signal after breath holding, which might be explained by the
vasoconstriction starting before the actual drop in oxygen saturation
is detected at the finger probe. The measured attenuations in the R
and IR PPG signals are shown in Fig. 3.8.
For the R channel the AC signal was measured to be reduced by
1.63±0.52[0.96−2.8] times, with the largest reduction associated with
a measured SpO2 value of 84%. A further point measurement with one
subject that managed to bring the measured SpO2 value down to 70%
showed a 2.3 times reduction.
Clearly, these values do not provide accurate and comprehensive in-
formation with respect to the PPG signal power under low oxygen
saturations. The sample size is small and each subject exhibits dif-
ferent SpO2 values during the apnoea induced desaturations. More
extensive measured results, under controlled reductions in the SpO2
levels and with a properly calibrated oximeter need to be carried out.
Nevertheless, they provide some confidence that the SNR overhead of
10 dB that was budgeted in section 2.2 to achieve an adequate SNR
down to SpO2 values of 70% is sufficient for the particular setup.
Concluding this section, the author would like to point out that there
is a lack of high quality, systematic PPG signal characterization in the
literature. This is understandable to a certain degree, as the repor-
ted results are strongly dependent on the measurement setup (sensor
type, position, geometry, enclosure etc.). A transmission type sensor
recording on the earlobe could give very different results. However, it
is the author’s belief that wider availability of extensive such data is
paramount in enabling better engineered oximeters in the future. The
reported results will hopefully contribute to this effort.
143
1 1.5 2 2.5 3
1
2
3
R contrast attenuation [times]
Number
ofsubjects
0
2
4
6
8
10
12
µ = 1.64σ = 0.52min = 0.96max = 2.80
Number
ofsubjects
(a)
1 1.5 2 2.5 3 3.5 4
1
2
3
IR contrast attenuation [times]
Number
ofsubjects
0
2
4
6
8
10
12
µ = 1.92σ = 0.79min = 1.20max = 4.00
Number
ofsubjects
(b)
Fig. 3.8: Measured contrast attenuation under decreased oxygen saturations for (a)R and (b) IR PPG signals
144
3.3 LED characterization
As was described in section 2.5.6, for each front-end configuration the
desired average photocurrent level Iref at the detector is specified.
The calibration loop then ensures that a suitable LED current ILED is
provided to achieve such a photocurrent. As a result the LED power
consumption varies with the absorption and scattering characteristics
of the probed tissue, and will be different for each individual. These are
within this work simplistically lumped to a single attenuation factor
α, so that Iph = αILED.
A Keithley 2602A SourceMeter was used as both a current source
and a current meter to measure the transfer function of the LED-
finger-photodetector system for the employed sensor probe and for each
of the 13 subjects. The transfer functions, as well as the measured
attenuation factors, are shown in Fig. 3.9 and Fig. 3.10 respectively.
Even though the subjects’ fingers were covered during the measure-
ment to reduce interference from ambient light, the measurements still
exhibit large variability for low LED currents/photocurrents. This can
be attributed to variations in fitting of the sensing probe to differ-
ent individuals’ fingers; part of the LED current can be directly shunt
to the photodiode causing the variation of plateaus in the left of the
graphs in Fig. 3.9. Since the attenuation is also calculated from the
measurements in Fig. 3.9, the values for LED currents smaller than
100 µA, exhibit a high degree of uncertainty. Fortunately, all the used
configurations correspond to LED currents larger than this value.
Similarly to the results in the previous section, different LED cur-
rents are accompanied by different attenuation factors. This can be
again attributed to different locations in the probed tissue contribut-
ing to the back-scattered signal for different incident light levels. Such
variations, albeit not very large, would render certain LED currents
preferable in terms of power-efficiency of the oximeter operation. As
with the PPG signals, a wider availability of extensive oximeter sensor
characteristics would allow designers to exploit these regions of opera-
145
101
102
103
104
105
100
102
104
R LED current [µA]
PD
current[nA]
(a)
101
102
103
104
105
100
102
104
IR LED current [µA]
PD
current[nA]
(b)
Fig. 3.9: LED-photodiode current transfer characteristics for the (a) R and (b) IRLEDs used in the measurement setup. The thick black line indicates themean value and the error bars ± one standard deviation
146
101
102
103
104
105
102
103
104
105
R LED current [µA]
AttenuationR
(1 α)
(a)
101
102
103
104
105
102
103
104
105
IR LED current [µA]
AttenuationIR
(1 α)
(b)
Fig. 3.10: LED current attenuation curves for (a) R and (b) IR LEDs. The thickblack line indicates the mean value and the error bars ± one standarddeviation
147
tion. Alternatively, a flexible, highly-programmable interface, similar
to the proposed one, could utilize adaptive algorithms to detect and
employ the more power-efficient regions of operation, for a given meas-
urement setup and individual. In both cases, significant power savings
could be attained.
3.4 Noise
3.4.1 External noise sources
The noise model presented in chapter 2 only considered noise sources
internal to the TIA with VSI topology, as well as the photodiode noise,
in order to compare its SNR performance to other TIA topologies. It
was argued, that influence of external noise could be mitigated to a
great degree by employing differential circuit design methods. How-
ever, as the current implementation is single-ended, to interpret the
noise measurements of the next section the noise model needs to be
complemented to include some external noise sources.
The most important of these is noise from the reference generation
circuits, which are used to program the desired reference current level.
This noise is presented to the positive input of the switched integrator,
and thus contributes to the output noise. If the PSD of this noise is
SvnREF then the noise PSD at the output of the switched integrator,
before sampling, is:
SvnoREF =
∣∣∣∣1 +1
Rint
ZI
∣∣∣∣2 SvnREF (3.3)
It is important to notice that, similar to the SI thermal noise (2.56),
even if a very large Rint is employed, the reference noise is always
present at the output.
In the presented implementation this noise can be attributed to a
multitude of sources, which can be divided into three categories:
(a) thermal noise from the current reference transistors which is
148
filtered by the low-pass filter at the reference output (see sec-
tion 2.7.7)
(b) thermal noise from OTAR, RREF and current reference transist-
ors following the low-pass filter
(c) flicker noise, mainly from the OTAR transistors.
The noise PSD from each category has a different shape. The sources
in category (a) introduce noise over a small bandwidth (calculated to
be ≈120 Hz from simulations). The bandwidth of noise in category (b)
is limited by the gain-bandwidth of OTAR (calculated ≈50 kHz form
simulations). Finally, the latter introduce significant noise only at low
frequencies.
Fig. 3.11 shows the noise PSD at the output of the reference gen-
eration circuits, SvnREF , as calculated by Spectre PNOISE simulations
for an output reference current of 225 nA. To aid the interpretation
of the noise results in the following sections, we will approximate this
noise as a sum of two components, corresponding to categories (a) and
(b) respectively
SvnREF = SvnREFNB+ SvnREFWB
(3.4)
where the subscripts NB,WB denote narrow-band and wide-band
noise. The two components are also plotted in Fig. 3.11. It can be
seen that their sum results in a reasonable approximation of SvnREF .
It should be noted that the relative magnitudes of the two noise com-
ponents change with the reference current. The thermal channel noise
of the transistors in the CMOS reference current generator dominates
for large reference currents, since it is attenuated less by the program-
mable mirror that generates the reference current (see section 2.7.7).
For smaller reference currents the thermal noise from the OTA and the
resistor employed in the TIA of the reference generation (OTAR, TIAR
- Fig. 2.19(d)) also become important.
149
100
101
102
103
104
105
106
−150
−145
−140
−135
−130
−125
−120
Frequency [Hz]
PSD
[dBV/√
Hz]
Sv_ref1
Sv_ref2
Sv_ref1
+Sv_ref2
simulated Sv_ref
Fig. 3.11: PSD and components of reference noise vnREF
To reduce vnoREF large capacitors (10 pF) were employed at the out-
puts of both the reference current generator and the TIAR to limit
the noise bandwidth. Despite this choice, as we will see in the meas-
ured results later on, the reference noise is still significant in the final
design. Further reductions in this noise would require a new, low-noise
programmable current reference design or the use of a differential form
of the proposed front-end.
The voltage source providing the photodiode reverse bias voltage Vph
also introduces noise. Since it is applied at the positive inputs of the
TIAF and TIAR (Fig. 2.19), its output noise PSD before sampling can
be calculated to be:
SvnoV PH = SvnV PH
∣∣∣∣1 +ATIAFth − ATIARth
R2int
ZI
∣∣∣∣2 (3.5)
SvnV PH is the noise PSD of the external voltage source, shown as
measured in Fig. 3.12. ATIAFth and ATIARth are the noise transfer
functions of TIAF , TIAR from their positive input to their output.
ATIAFth is identical to the transfer function for the TIAF thermal noise
(Fig. 2.5). ATIARth assumes a unity gain up to the gain-bandwidth of
150
100
101
102
103
104
−155
−150
−145
−140
−135
−130
−125
−120
−115
−110
−105
Frequency [Hz]
PSD
[dBV/√
Hz]
Fig. 3.12: Noise PSD of voltage source Vph
OTAR, since, due to the large output resistance of the current refer-
ence, TIAR acts as a voltage buffer for any sources connected to its
positive input.
For low frequencies ATIAFth and ATIARth cancel out. For higher fre-
quencies ATIAFth amplifies the noise (noise peaking - Fig. 2.5). How-
ever, as can be seen in Fig. 3.12, the noise is attenuated for higher
frequencies. Eventually, the most important component of SvnoV PHresults from the unity gain term in (3.5).
In the current design a low-noise voltage regulator is used to provide
Vph. Eliminating this noise would require a differential implementation.
Fig. 3.13 shows a block diagram summarizing all the thermal noise
sources and transfer functions for the fabricated front-end.
3.4.2 Measurements
In order to measure the noise of the system, a constant photocurrent
input needs to be provided to the front-end. For this purpose, a piece
of white paper was placed in the oximeter probe to function as a time-
invariant reflecting surface. For each desired value of average detected
151
Fig. 3.13: Noise sources and transfer functions in the implemented PO front-end.The diagram includes external noise sources, not present in Fig. 2.15
photocurrent (reference current), it was tested that the average detec-
ted photocurrent was equal to that resulting when a finger was placed
in the oximeter probe–although the LED current was different, as ex-
pected, due to the different attenuation in the two cases. The system
was placed in a closed box to avoid interference from ambient light.
Different settings for the reference current (Iref ), integration time (tint)
and sampling frequency (fs) were specified. For each case 2 min re-
cords of the front-end’s output were obtained via the A/D converter
and the FPGA interface. A modified periodogram was calculated for
the acquired signal using the Hanning window. The in-band noise was
then derived via integration of the PSD estimate N(f) for frequen-
cies 0.1 - 10 Hz, as this is the frequency band where the SpO2 signal
resides[11].
To estimate an indicative SNR figure, the signal power was calcu-
lated by multiplying the detected DC level with the average contrast
c = ACpp/DC under normoxia estimated in section 3.2. This was then
multiplied by the gain tintCint
, with Cint=20.7 pF. Only the SNR for the
R channel was considered, since for DCR = DCIR, it is lower than that
of the IR channel under normal SpO2 values (see section 2.2). Since
ACpp is calculated via subtraction of two detected signal values, 3 dB
152
Table 3.4: Estimated front-end SNR for three configurations
Configuration
A B C
Avg. detected photocurrent Iref [nA] 110 44 427Integration time tint [µs] 220 620 320
Duty cycle D [%] 3 7 4Mean contrast p-p cR [%] 2.81 2.43 2.52
Noise [µV] 259 321 445SNR [dB] 39 37 48.5
were subtracted from the calculated SNR to account for the fact that
noise distorts both measured values (as the output noise is expected
to be white, noise values at different time instances were considered
uncorrelated). Summarizing, the SNR was calculated as:
SNR = 20log10
cR × Iref tintCint√∫ 10
0.1N(f)df
− 3 (3.6)
Table 3.4 shows the estimated SNR values for the three configurations
calculated using the measured noise results. The proposed low-power
configuration A achieves an average SNR close to the 40 dB value spe-
cified in section 2.2. If a higher SNR is required this can be obtained
by increasing the LED power consumption (current and duty cycle),
as in configuration C. In applications where a low peak supply current
is desirable, for example due to constraints imposed by the battery,
peak current can be easily traded-off for integration time, maintaining
similar power consumption and SNR levels, as in configuration B.
As has been noted several times before, certain selections of front-end
parameters can lead to a more power-efficient operation. In the rest of
this section we will investigate how the different parameters affect the
achievable SNR. The discussion will focus on obtaining a qualitative
picture of how the SNR changes with variations in the parameters
and explaining the various SNR trade-offs, rather than on extracting
153
101
102
103
15
20
25
30
35
40
45
50
55
tint [µs]
SNR
[dB]
SimulatedMeasured
Fig. 3.14: Estimated SNR vs integration time (Iref = 225 nA, Fs = 100 Hz)
closed-form expressions describing them. For the SNR calculations a
contrast value of 2.5% will be used. While, as it was seen in section 3.2,
this value varies between different front-end configurations, the results
in section 3.2 suggest that the chosen value is a reasonable estimate.
For comparison purposes, simulated results of the estimated SNR
have also been generated. These results were obtained using the models
developed in chapter 2 and section 3.4.1 and the measured or simulated
PSDs plotted in Fig. 3.11 and Fig. 3.12 (see also Appendix A). The
same equation (3.6) is used to estimate the SNR from the simulated
output noise.
Fig. 3.14 shows a representative case of how SNR varies with the
integration time tint. Increasing tint increases proportionally the low
frequency gain tintCint
while at the same time limits the 3-dB cut-off0.443tint
of the switched integrator transfer function, ZI (section 2.5.1).
The former leads to a proportional increase in the amplification of the
signal and some noise sources. The latter reduces the sub-sampling
factor 0.443πtintfs
for any noise PSD with bandwidth larger than 0.443tint
that
is filtered by the SI.
154
101
102
103
−105
−100
−95
−90
−85
−80
−75
−70
−65
tint [µs]
Integrated
outputnoise
[dBV/√
Hz]
Rf
Rint
OTAF
PD
Vph
RefNB
RefWB
Refsim
Fig. 3.15: Simulated integrated output noise versus integration time for the variousnoise sources (Iref = 225 nA, Fs = 100 Hz). The integration bandwidthis 1-10 Hz
Therefore, the noise sources could be categorized in three groups,
with respect to how their effect changes with tint:
(a) sources not significantly affected by the switched integrator trans-
fer function (vnV PH- see (3.5)), remaining constant as tint changes,
(b) sources which have a bandwidth smaller than 0.443tint
, whose output
noise after sampling increases proportionally to tint (vnREFNB - see
(3.3)-(3.4)), and
(c) sources which have a bandwidth larger than 0.443tint
and are shaped
by the SI (vnRf , vnOTAFth , vnRint , vnOTAINTth , inPD , vnREFWB- see
(2.52) to (2.57)) and (3.3). As tint increases, their PSD is mul-
tiplied by a higher low frequency gain (tint/RintCint)2, but sub-
sampled by a smaller factor 0.443πtintfs
, leading to an increase propor-
tional to√tint.
Fig. 3.15 shows how the in-band noise contributed by the various
noise sources was simulated to vary with tint.
155
For low tint values, tintRintCint
is comparable to 1 and the unity com-
ponents of (3.3),(3.5) dominate. Hence, the output noise from the
bias source Vph and the reference generation circuits is dominant and
almost constant with tint. On the other hand, the measured ACpp in-
creases linearly with tint, leading to SNR increasing approximately by
20 dB/decade.
For moderate tint values ( tintRintCint
< 10, tint < 100µs), noise sources
with “wide” bandwidth (category (c) above) dominate, resulting in
an increase in noise proportional to√tint. As ACpp keeps increasing
linearly with tint, the SNR increases by 10 dB/decade.
For higher tint ( tintRintCint
> 10) the output noise generated by the
narrow-band noise sources of the on-chip reference, vnREFNB , domin-
ates. Since this increases proportionally with tint (category(b) above),
the measured SNR saturates to a constant value.
The above trends are confirmed by the simulation results (see Fig.
3.14 and Fig. 3.15). The difference of 5-8 dB observed for low to mod-
erate integration times is attributed to two factors. Firstly, the current
generated by the fabricated current reference was measured to be about
15% higher than the simulated one. This increases slightly the noise
contributed by the reference generation circuits. Furthermore, addi-
tional noise is induced to the analogue ground by the operation of the
FPGA board. This noise is directly coupled to the output of the reg-
ulator providing Vph. The presence of this noise has been confirmed
experimentally and it has been verified that it degrades the estimated
SNR if it is qualitatively introduced in the simulations. However, the
available experimental setup renders its accurate measurement diffi-
cult. Hence, all the simulations assume the noise PSD of Vph as meas-
ured with the FPGA board disconnected (Fig. 3.12).
The variation of the SNR with the sampling frequency can be seen in
Fig. 3.16. As this corresponds to a value of tint where the sub-sampled
noise sources are dominant, the effect of noise aliasing is clearly evident;
increasing fs reduces the sub-sampling factor 0.443πtintfs
, by which the noise
PSD is multiplied, and hence the integrated output noise increases as
156
102
103
40
42
44
46
48
50
52
54
fs [Hz]
SNR
[dB]
SimulatedMeasured
Fig. 3.16: Estimated SNR vs sampling frequency (Iref = 225 nA, tint = 220 µs)
101
102
103
25
30
35
40
45
50
55
60
Iref [nA]
SNR
[dB]
SimulatedMeasured
Fig. 3.17: Estimated SNR vs average detected current (fs = 100 Hz, tint = 220 µs)
√fs, leading to an SNR increase of approximately 10 dB/decade. The
simulation results show the same trend.
Fig. 3.17 depicts how SNR changes with Iref . The only noise sources
affected by changes in Iref are the photodiode noise and the reference
noise. Using (2.57) and (3.3) the former can be easily shown to be
157
negligible. As is described in detail in 2.7.7, Iref is derived by down-
scaling the current generated by the CMOS current reference via a
programmable current mirror. As Iref increases, the multiplication
factor (Mref ) increases, and so does its output noise vnREF . For small
Iref this noise is not dominant and the SNR increases by 20 dB/decade.
For larger currents, the reference noise dominates limiting the SNR to
a constant value.
The simulated SNR changes in the same way as in the measured
results for low Iref values, but does not saturate for high - although
its rate of increase reduces. PNOISE simulation results from Spectre
confirm that the thermal noise at the reference output due to the cur-
rent reference transistors increases proportionally to Iref , as predicted.
However, in the simulations this is not the dominant source of noise
even for high reference currents. Instead, the thermal noise introduced
by the switch S1 of the low-pass filter employed in the current reference
dominates (see Fig. 2.27c). This increases slower than linear with Iref
and hence the SNR does not saturate for currents up to 2 µA.
The reader should appreciate that it is challenging to predict accur-
ately the noise performance of the fabricated current reference through
simulations for two reasons. Firstly, the unconventional sizing used for
the current reference transistors (L W ) puts into question the accur-
acy of the foundry models, which have been derived by characterizing
transistors with very different sizes. Secondly, process variations inev-
itably result in variations in the generated reference current, the mirror
ratios and the values of the capacitors employed to limit the noise.
From the measured results it can be observed that the switched
integrator employed in the proposed architecture is effective for mod-
erate integration times and photodiode current values. For these op-
eration regions, it limits the noise bandwidth allowing an increase of
10 dB/decade in SNR with tint. If the SI was omitted, the output noise
would be more heavily sub-sampled leading to a smaller SNR. Unfortu-
nately, the dominance of vnV PH at low tint values, where sub-sampling
is even more severe, does not allow the same effect to manifest itself in
158
the measured results. Reducing this noise, or adopting a differential
implementation to cancel it, would allow higher SNRs to be achieved
for lower tint, and thus further reduction in the LED power consump-
tion.
Similarly, a differential implementation or a redesign of the reference
current generator, would allow obtaining even higher SNRs by increas-
ing Iref to values more than 600 nA, at the cost of power consumption.
Having described the effect of the different parameters individually,
the digital programmability can now be exploited to seek optimal op-
erating regions for the front-end. Fig. 3.18 shows the variation in the
measured SNR with tint, Iref and fs. The results follow the trends
described above, with the SNR contours roughly resembling in shape
constant average photocurrent curves for moderate values of tint and
Iref , towards the centre of the graph. Note that this does not hint to-
wards a proportional relation between average photocurrent and SNR,
as the contours are not equally spaced and the SNR is expressed in
dB.
It is instructive to investigate how the same parameters affect the
LED power. This can be calculated as:
PLED = 3.3DIref (AttR + AttIR) (3.7)
with D = (tint + 80× 10−6)fs the LED duty cycle, and AttR, AttIR the
mean attenuation of the average LED current through the tissue, as
measured in section 3.3. The results are shown in Fig. 3.19. Using this
data it is now finally possible to determine the most power-efficient
areas of operation for the proposed implementation. For this purpose,
a figure of merit is defined as:
FOMPEff =10
SNR[dB]20
PLED(3.8)
This is plotted against the various parameters in Fig. 3.20. In the
current implementation more power-efficient operation is achieved for
159
30
36
40
46
t int[µs]
(a)100
200
500
30
36
40
46
52
t int[µs]
(b)100
200
500
3036
40
4652
t int[µs]
Iref [nA]
(c)
10 100 1000
100
200
500
20
25
30
35
40
45
50
55
Fig. 3.18: Estimated SNR variation with Iref , tint and fs (a) 100 Hz, (b) 200 Hzand (c) 400 Hz. The SNR is plotted with contour curves placed every2 dB
160
0.10.2
0.5
12 5
t int[µs]
(a)
40100
200
500
0.10.2 0.5
1
2
510
t int[µs]
(b) 40
100
200
500
0.1
0.20.5
1
25
10
t int[µs]
(c)
Iref [nA]
40
10 100 1000
100
200
500
0.01
0.1
1
10
Fig. 3.19: Estimated LED average power consumption for fs (a) 100 Hz, (b) 200 Hzand (c) 400 Hz. The difference in value between neighbouring contoursis not constant. A solid black line indicates the points corresponding toSNR = 40 dB
161
2
3
45
6
7
(a)
t int[µs]
46
4030
100
200
500
234
5
(b)
t int[µs]
464030100
200
500
1
2
3
(c)
t int[µs]
Iref [nA]
4640
30
10 100 1000
100
200
500
1
2
3
4
5
6
7
8
9
Fig. 3.20: FOMPEff for fs (a) 100 Hz, (b) 200 Hz and (c) 400 Hz. Higher valuescorrespond to more power-efficient regions of operation. Thick blacklines indicate points of constant SNR
162
medium values of integration time tint and photocurrent Iref . This
is due to the dominance of the reference noise for high currents and
the noise of the source providing the photodiode reverse bias voltage
for low integration times. Increasing the sampling frequency always
decreases the FOMPEff , as the SNR increases at a lower rate than
the linear increase in power. Although admittedly case-specific, such
diagrams could be of much use in the design of pulse oximeters in the
future.
3.5 Matching
Determining SpO2 requires measuring two ACpp amplitudes (see (1.11)-
(3.2)). Therefore, matching between channels is crucial for the accurate
measurement of the ratio Λ.
To measure the variations in gains in the two channels the PO was
programmed for a photocurrent of 110 nA and excited via a current
source with a 2 Hz sinusoidal output of 5 nA amplitude with 110 nA
DC offset. Fig. 3.21 shows the gain variation across 20 chips. The
gain of the R channel and the gain ratio between the two channels are
plotted.
The matching is excellent, leading to gain ratio variations of smaller
than 0.2%, which is a much smaller error than the 1% error required
for a 40 dB SNR.
163
10.9 10.95 11 11.05
1
2
3
4
5
AC Gain [MΩ]
Number
ofChips
µ = 10.953 MΩσ = 0.0282 MΩN = 20
(a)
0.997 0.998 0.999 1 1.001 1.002 1.003
1
2
3
4
Gain Ratio (R/IR)
Number
ofChips
µ = 1.000σ = 0.00127N = 20
(b)
Fig. 3.21: Gain variation across 20 chips: (a) R channel gain; (b) Ratio of channelgains
164
3.6 Calibration loop
In the proposed front-end the measurement of the DC component of
the detected PPG signals is replaced by the calibration feedback loop
that sets the detected R and IR current levels to a desired value (sec-
tion 2.5.6). The accuracy of this loop is crucial for the correct operation
of the oximeter. To evaluate this, a white paper was placed in the fin-
ger probe to provide a constant reflected light input to the photodiode.
For every chip the calibration was activated 8 times, every 2 seconds,
for each of the R/IR channels. The total calibration time for each
channel was 17ms, with the IR channel calibration following directly
after that of the R channel. Between calibrations the front-end was
operating in measurement mode, turning an LED ON and perform-
ing a measurement every 10 ms (fs=50 Hz). The TIAF output was
measured during the first time each LED was turned ON following a
calibration. An average of the 8 thus obtained voltage measurements
was calculated for each chip. The TIAF output was chosen for these
measurements, as its earlier location in the signal acquisition chain
provides a more accurate estimate of the detected photocurrent than
the front-end output.
The measured voltage level across 20 ICs was 1225.1± 4.21[1218−1232] mV (mean±s.d.[range]) for the R channel and 1224.7±4.25[1218−1232] mV for the IR channel, with the reverse photodiode voltage
Vph = 1.012 V. More significant is, however, the matching between
the detected levels between the two channels, depicted in Fig. 3.22.
The results show excellent matching between channels, with the max-
imum measured variation corresponding to 523 µV(1.225−1.012) V
= 0.246% of
the average detected DC signal level.
Another issue that may degrade the performance of the calibra-
tion scheme is the accurate and variation-free storage of the voltage
level supplied to the LED driving circuitry between calibrations, as
explained in section 2.6.2. The performance of the low-leakage S/H
employed for that purpose is crucial. The two main limitations are
165
100 200 300 400 500 600
1
2
3
4
Voltage difference R - IR [µV ]
Number
ofChips
µ = 365.09 µVσ = 102.96 µVN = 20
Fig. 3.22: Difference in the detected voltages at the TIAF output between the R/IRchannels at the first measured sample after a calibration is performed
errors in the sampled value due to charge injection and drift in the
stored value due to leakage[141]. To alleviate charge injection errors
a differential sample and hold topology was used, in conjunction with
a well matched layout (section 2.7.6). The measurements depicted in
Fig. 3.22 confirm that, even though there are charge injection errors,
these are well matched between the two channels.
The drift in the stored voltage of the low-leakage S/H cell was meas-
ured by carrying out a calibration for one reference current (350 nA)
and then operating the front-end in measurement mode for 5 min,
without performing any more calibrations. The measured difference
∆VSH in the stored value after 5 min across 10 chips was 0.56 ±0.56[0.113− 1.96] mV corresponding to a drift rate of 1.36± 2.21[0.6−6.64] µV/s.
The relative variation in the LED current will then begm5∆VSHILED
, with
gm5 the transconductance of the transistor driving the LED (Fig. 2.25).
Even for the maximum possiblegm5
ILEDvalue of 1
Vt= 38.61, the maximum
variation in the LED current is less than 1.6% over a period of 1 min.
In practice,gm5
ILEDwill be much smaller than 38.61, since the transistor
166
Table 3.5: Calibration loop variations across chips
ParameterValue
mean±s.d.[range]
Post-calibration TIAF 365.1±103 [175.4-522.5]output level difference [µV]a
S/H stored value drift [µV/s]b 1.36±2.21[0.6-6.64]
a Data for Iref=390 nA, 20 chips.b Data for Iref=350 nA, 10 chips.
driving the LED is not operating in weak inversion and source degen-
eration has been employed to reduce its transconductance (Fig. 2.25).
Moreover, variations in the measured PPG signal will usually require
the interval between calibrations to be much smaller than 1 min. In
the SpO2 measurements of section 3.2 a calibration interval of 5 s was
used.
The above results suggest that the proposed calibration scheme works
well as an alternative to the traditional DC level measurements in a
PO front-end.
For the sake of completeness, it should be noted again at this point
that the results reported in this section are all measured at the out-
put of the TIAF . Similar measurements at the front-end output have
indicated much larger differences in the average levels of the two chan-
nels after calibration and larger drift rates than those reported here.
Fig. 3.23 shows typical transient measurements obtained at the output
with a 2 Hz sinusoidal input with ACpp/DC set to 10 nA/110 nA. The
jumps in the output DC level are due to a difference in the config-
uration of the calibration loop during resetting of the HPF. Fig. 3.24
shows the front-end output during a drift testing experiment as de-
scribed earlier. The much larger drift is attributed to the leaky reset
switch of the HPF. However, even though these problems lead to a
difference in the R/IR DC levels at the output, this does not affect
the accuracy of the measurements. The R/IR DC photocurrent levels
detected at the input are virtually equal, as shown earlier, and the
167
0 20 40 60 80 100
1.3
1.35
1.4
1.45
1.5
1.55
1.6
1.65
1.7
Time [s]
R/IR
channel
output[V
]
RIR
Fig. 3.23: Typical transient response for a constant sinusoidal input with 5 nAamplitude and 110 nA DC level and a calibration performed every 5 s.Variations at the output DC level are due to differences in the resettingof the HPF stage between the two channels
0 20 40 60 80 100 1201.2
1.3
1.4
1.5
1.6
1.7
Time [s]
R/IR
channel
output[V
]
Fig. 3.24: Output drift for R/IR channels with a constant input and a single cal-ibration followed by a 5 minute period without re-calibration. The driftis attributed to the leaky HPF reset switch
168
calculation of AC peak-to-peak amplitudes via subtraction cancels the
errors in the DC components.
If the output voltage headroom is more restricted in a future version
of the front-end, the HPF needs to be carefully redesigned to address
these problems, for example by using a low-leakage switch.
3.7 Power and LED currents
The front-end can be separated into three sections in terms of power
consumption: the analogue part, the digital control circuitry and the
LEDs. To measure the power of each section, a separate power supply
line was used for each of them. Under normal operation all three supply
Table 3.6: Measured results summary
Configuration A B C
Technology AMS 0.35 µm
Chip areaa[mm2] 1.351/1.149
Supply [V] 3.3
Iref [nA] 110 44 427
tint [µs] 220 620 320
fs [Hz] 100
Duty cycle D [%] 3 7 4
Mean attenuation R 18844 20172 16084
Mean attenuation IR 9990 12495 7692
Mean pp contrast R [%] 2.81 2.43 2.52
Mean pp contrast IR [%] 4.87 4.29 4.35
Integr. noise (0− 10 Hz) [µV] 259 321 445
SNRb [dB] 39 37 48.5
Peak ILEDb [mA] 2.05 0.87 7.1
LED powerb [mW] 0.309 0.325 1.36
Average power (analogue) [µW] 363
Average power (digital) [µW] 165
Total powerb [mW] 0.837 0.853 1.888
a Including/Not including current reference and test struc-tures.b Estimated mean values. See text.
169
lines are connected to the same voltage on the PCB. To estimate the
power consumption a bench-top power supply with a ”sense” output
was used. This enables introducing a resistor in series with the power
supply, while still providing the desired supply voltage to the tested
circuit, despite the voltage drop on the resistor. The voltage difference
across the resistor can then be used to estimate the average supply
current.
Using this method, the analogue part of the front-end was measured
to have an average supply current of 110 µA and the digital part a
current of 50 µA. This power is estimated to be practically the same for
all three configurations (A,B,C), as the clock and sampling frequencies
are identical, and the only front-end current that changes with the
varying parameters is the average current supplied to the OTA of the
TIAF (see section 2.5.4). This is equal to D × Iamp and is estimated
to vary from 2 µA to 7 µA.
The LED power consumption has been estimated before in sec-
tion 3.4.2, by measuring the mean attenuation Att of the LED light
when backscattered from the subjects’ fingers. The reliability of this
estimation of the average LED current was also verified by compar-
ing the computed values to the average current drawn from the LED
power supply line when testing the device on one of the author’s fin-
gers. The estimated average LED power consumption for the three
configurations is shown in Table 3.6.
The LED power is successfully reduced below 330 µW, while still
achieving an SNR very close to the derived specification of 40 dB (sec-
tion 2.2). At the same time, the peak currents of the LEDs are limited
below 5 mA, even for the higher SNR configurations. These values
are about an order of magnitude lower than those commonly used in
commercial pulse oximeters[11,93], as will be discussed in more detail
in the following section.
The experimental results show that for the low-power configurations
the analogue front-end ends up consuming a significant part of the total
power consumption. This consumption stems mainly from an effort to
170
Table 3.7: Simulated average power consumption breakdown (analogue)
BlockSupply Percent [%]
current [µA]
Reference/bias current generation 21 28.30Switched integrator OTA 17 23.00
S/H buffers 10 13.50Low-leakage S/H OTA 6 8.10
VREF buffer 5 6.80A/D buffer 5 6.80HPF OTA 3 4.00
Reference OTA (OTAR) 2.5 3.40TIAF OTA (OTAF )a 1 1.35
Others 9 12.20
Total 74 100
a Bias current Iamp = 100 µA and duty cycle D = 1%
reuse large parts of the design to minimize layout time, leading to sub-
optimal blocks. It is not, however, the price paid for the low LED
power.
A breakdown of the power consumption of the different blocks, ob-
tained from simulation results, is shown in Table 3.7. 28% of the static
power is consumed on the CMOS current reference. While directly re-
ducing the reference supply current would arguably increase its output
noise and lead to a degraded SNR, more noise-efficient designs or even
a differential topology could be used, to reduce or fully eliminate the
reference noise. A further 23% of the static supply current is drawn by
the switched integrator and another 20% by internal unity-gain buf-
fers, not connected to an output pad. These can be limited by careful
optimization of the respective blocks, without any significant impact
on performance. The author believes that a static power consumption
of under 100 µW is a realistic expectation for a future design, although
that remains to be proven.
Concerning the digital part, the power can be easily reduced fur-
ther if a clock frequency smaller than the employed 1 MHz is used.
This frequency determines the minimum time step that can be used in
171
the front-end’s operation. That could be increased to 10 µs from the
current 1 µs, without any performance penalty.
Concluding this section it should be noted that the reported power
does not include power for clock generation, A/D conversion or any
digital or analogue signal processing following the front-end. If the
front-end is used as part of a larger sensor interfacing system (e.g.
[1]), these blocks will typically be already available. If not, the design
of a 100 kHz clock generator, a 200 Sps 12-bit A/D converter and an
embedded processor with a low clock frequency or a low-power radio
to transmit the data to a processing node is possible with a power
budget of few hundreds of µW[1,51,143]. Alternatively, more power-
efficient, yet imprecise, analogue signal processing solutions like the
one proposed in [126] could be employed.
Table 3.8: Power consumptions of low-power pulse oximeters
Oximeter Power [mW]Sensor
Modea
SPOMedical 6100 (Total/LEDs) 13b/1.57c R
SPOMedical CheckMate 3.3b R
SPOMedical OEM module 1.5 -
Sueppel et al.[110] (Total/LEDs) 10/0.25 -
Rhee et al.[51] (Total/LEDs) 1.47/0.342 T
Tavakoli et al.[126] (Total/LEDs) 4.8/4.2 T
Wong et. ald[122] 4.7 T
This work (Total/LEDs)e 0.85/0.31 R
a Transmittance / Reflectanceb Assumed battery capacities: 2600 mAh / 1000 mAh for one AA/Li12AA battery. Batteries assumed in series.c Measuredd Uses only one LED (IR) to determine heart ratee Front-end only
172
3.8 Comparison to previous work
To the best of the author’s knowledge, this is the first ever reported
fully-integrated PO front-end. As we saw in chapter 1, this is not
trivial, as integrating the filter capacitors can significantly degrade the
SNR, especially under low duty-cycle operation.
With respect to power consumption, it is difficult to carry out a
fair comparison with the multitude of other available implementations.
As was discussed earlier, industrial implementations very rarely quote
their technical specifications and few academic efforts have investigated
the power consumption of a pulse oximeter[51,81,93]. Even when these
numbers are reported or can be derived from marketing documentation,
it must have been made clear by now from this thesis that they are
meaningless without the provision of an associated SNR figure. To the
best of the author’s knowledge, this work is the first to report measured
SNR estimations related to SpO2 signals in the public domain. The
use of different types of sensor probes makes the value of a comparison
between just power consumptions even more questionable.
Nevertheless, for the reference of the reader, the oximeters in Table
1.2 with the lowest power consumptions are compiled in Table 3.8. The
proposed front-end achieves a LED power consumption more than 4
times smaller than all implementations, but those of [51,110]. Most
commercial POs feature a power consumption more than an order of
magnitude higher (see Table 1.2 and [93]).
The oximeter of [110] is the one with the lowest reported LED power
consumption. This is claimed to be achieved by switching the LED
drivers and the front-end amplifier off when not in use. However, as
the numbers are reported in a patent document, no SNR or PPG signal
data are provided for comparison (see also discussion in section 1.2.3).
In the oximeter reported in [51] a remarkably low LED and over-
all power consumption is achieved by using an algorithm to optimize
the system’s clock speed and bit transmission speed. Recordings of
PPG signals are shown, and heart rate is successfully detected, even
173
at the presence of motion artefacts. However, no noise considerations
are taken into account and no SNR or SpO2 measurement results are
reported. Therefore, at least from the reported results, it is not clear
whether the proposed parameters for the low-power system operation
can provide the resolution required in the SpO2 measurement.
The only other low-power design reporting SNR calculations[93] ob-
tains the reduction in power by employing a fully-analogue implement-
ation and a logarithmic TIA with a high gain-bandwidth and fast set-
tling (see section 1.2.3). Using the parameters proposed by the au-
thors in [93], the quoted minimum detectable signal contrast is 0.022%
(p.191). For a PPG signal with 2% contrast at first consideration this
implies an SNR of 39 dB, which is adequate. However, these calcula-
tions are incomplete.
Since the implementation is fully analogue and a duty cycle of about
3% is used, the power in the baseband of the detected signal is 0.03
times lower than the AC peak-to-peak amplitude (section 2.1). The
achieved signal power therefore would be 30 times lower, leading to an
SNR of approximately 8.7 dB. On the other hand, the quoted noise
of 115 µV for the photoreceptor is calculated for its entire 2.1 kHz
bandwidth (p.146). However, most of this noise is filtered out by the
4th order low-pass filter following the photoreceptor, which has a cut-
off frequency of 7 Hz. In that case, the in-band photoreceptor noise
reduces to approximately 115×√
72100
= 6.64 µV. Hence, the remain-
ing noise from the switching components and the ”ratio-computation”
block, 30 µV and 34 µV respectively, becomes dominant, leading to a
total in-band noise at the output of 46 µV (see p. 190 in [93]). Under
these adjustments, the SNR is calculated to be 17.31 dB, which would
lead to inaccurate SpO2 measurements.
The note of caution briefly mentioned in section 2.5.5 should be
repeated here. Both the above analysis of [93] and the analysis in [93]
treat the pseudo-resistor employed in that topology as a high-value
linear resistor, a hypothesis of questionable basis given the large swings
in the detected photocurrents. The measured PPG signals depicted
174
Table 3.9: Peak LED current of pulse oximeters
OximeterMax. peak Sensor
current [mA] Modea
SPOMedical PulseOx 6100 50b RTavakoli et. al [126] 20 THaahr et. al [103] 10 RThis work 2.05 R
a Transmittance / Reflectanceb Measured
in [93], as well as the quoted SpO2 measurements, suggest an SNR
performance better than the 17.31 dB. The author believes that the
cause for this higher SNR lies precisely in the non-linearities of the
pseudo-resistor under the large photocurrent swings. However, more
in-depth analysis is required to accurately and quantitatively describe
the mechanisms in action in that case.
It is also interesting to compare the peak LED currents used by
various implementations, for which such information is available (see
Table 3.9). The peak current of the proposed front-end is more than
an order of magnitude lower than both the oximeter in [126] and the
SPOMedical 6100. Comparison with the latter is more meaningful, as
both have been measured using exactly the same sensor probe, oper-
ating in reflectance mode.
It should be stressed again, that these comparisons are only indicat-
ive, since no SNR data is available for the commercial oximeters; higher
LED currents could be used to achieve an SNR largely exceeding the
40 dB that was set as a minimum requirement in this work.
It should also be noted that the proposed front-end was evaluated
using a reflectance probe. Whereas in our case the (measured) attenu-
ation values ranged from 10000-30000, lower attenuations of around
1000 have been reported before for transmittance probes[81] (even
though the literature is not conclusive on whether reflectance probes
always exhibit weaker signals - section 1.2.1). It is therefore likely that
175
using a transmittance sensing probe, the peak LED currents could be
reduced further. This, however, remains to be evaluated, especially
accompanied by SNR measurements, in the future.
Finally, as has been discussed in section 3.7, the implementation pre-
sented here is not optimal; an optimization of some internal blocks for
lower power consumption and a transition to a differential implement-
ation will enable lowering even further the noise floor and the static
power consumption of the front-end. The author believes that a power
consumption of less than 100 µW/LED is a realistic target for a second
version of the proposed system.
176
4 A self-biased logarithmic
photoreceptor with low
settling time
Logarithmic photoreceptors are circuit blocks that transform a light
signal to an electrical one having a logarithmic input-output relation-
ship. They commonly comprise a photodiode and a logarithmic trans-
impedance amplifier (TIA), converting the sensed photocurrent into a
voltage.
Their logarithmic response results in very appealing characteristics
for a pulse oximeter front-end. Firstly, they can operate without sat-
urating for a very wide range of input photocurrents. Furthermore,
their small-signal output is directly proportional to the contrast of the
input photocurrent, which is the quantity of interest for the calcula-
tion of SpO2. Finally, for low input photocurrents they can achieve
relatively high gains without the chip area overhead associated with
an integrated ohmic resistor. For these reasons, logarithmic TIAs have
been proposed before for pulse oximeter front-ends[92–94,126].
However, a series of limitations has constrained their use. Their in-
put dependent incremental feedback resistance (1/gm) results in slow
response speeds for low illuminations[93,127,133]. It additionally leads
to a decreasing sensitivity for large input signals which can comprom-
ise their output signal-to-noise ratio[93,127]. Finally, the sensitivity of
their output to process variations and mismatch, due to the employ-
ment of MOS transistors operating in the weak inversion (WI) region,
limits their use in application where matched responses are necessary –
177
a problem termed Fixed Pattern Noise in applications involving arrays
of photoreceptors[127,144].
Delbruck et al. in their pioneering work[127,133] analysed and ad-
dressed some of these problems, by introducing an input and frequency
dependent filtering network in the feedback loop. This provides the
photoreceptor with a band-pass response, eliminating the susceptible
to variability DC component. Furthermore, it allows increasing the
photoreceptor’s gain for the AC signals of interest (see section 4.1).
The low-speed problem was addressed by Tavakoli et al., as discussed
previously, by replacing the feedback amplifier with a chain of low-
gain amplifiers to achieve higher gain-bandwidths and faster response
times[93].
When a wide input dynamic range is required under low power oper-
ation, one more problem arises. The slow response speed for low photo-
currents requires feedback amplifiers with large gains. However, large
input currents lower the small-signal feedback resistance and move the
dominant system pole – usually caused by the large photodiode out-
put capacitance – closer to the amplifier poles. To avoid instability the
latter need to be located at high frequencies. Considering the constant
gain-bandwidth product (GBW) of a voltage feedback amplifier, this
requires amplifiers with large gain-bandwidth products or small gains.
For a given fabrication technology, increasing an amplifier’s GBW
requires increasing its power consumption. While a large GBW en-
sures stability for large inputs, the extra power is wasted if the input
photocurrent is small. On the other hand, an amplifier with a small
gain leads to a slow response speed for low input currents. To achieve
a compromise between the conflicting requirements for low and high
input currents feedback loops controlling the gain and/or the band-
width of the amplifier according to the input signal magnitude have
been proposed[93,145,146].
This chapter examines in detail the photoreceptors proposed by Del-
bruck and his co-authors that have formed the basis for subsequent
works. By compiling previously published[93,127,145,147] and novel
178
results, it provides useful insights into the operation of logarithmic
photoreceptors. Then it advances to propose a novel, self-biased logar-
ithmic photoreceptor that employs positive feedback to realize adapt-
ive biasing of the photoreceptor according to the input current level.
Through extensive comparison to previous designs, it is shown that the
novel photoreceptor can be of use in applications where fast settling
under very low power consumptions is required.
4.1 Delbruck’s statically-biased
photoreceptor
This photoreceptor was originally introduced by Delbruck in [127,133].
The circuit schematic is shown in Fig. 4.1(a). Before performing a
detailed small-signal analysis, it is useful to examine qualitatively the
circuit operation.
(a) (b)
Fig. 4.1: (a) Delbruck’s statically-biased photoreceptor; (b) Typical pseudo-resistor(M5) I-V characteristic (from[127])
179
4.1.1 Circuit operation
The photoreceptor (PR) comprises a high gain amplifier formed by
M1-M3 in a negative feedback configuration, with a weakly inverted
MOS transistor (M2) in the feedback path. The amplifier is biased by
a constant current source (M3) and has a gain of Aamp=gm1(ro3‖ro1).
The feedback path also contains transistor M5, which, together with
capacitors Cd1 and Cd2 form a frequency dependent voltage divider.
M5 is a PMOS transistor with its gate and drain connected together
and its bulk and source connected together as well, and so it acts
as a diode for both positive and negative drain-source voltages (see
its characteristic in Fig. 4.1(b) and [127]). Thus, as long as there is
a negligible current flowing through M5, it functions as a very large
resistance R (in small-signal terms this is the inverse of the slope of
the characteristic in Fig. 4.1(b)). In the AMS 0.35 µm technology, for
a PMOS device with dimensions 10/1 µm with zero current through
it, this resistance was simulated to exceed 1 TΩ.
As will be shown later in more detail, the voltage gain of the capacit-
ive divider formed by Cd1, Cd2 and R is F = 1+RCd1s1+R(Cd1+Cd2)s
. Hence, for
frequencies larger than fd = 12πR(Cd1+Cd2)
the combination of Cd1,Cd2
and R functions as a capacitive divider with voltage gain of F =Cd1
Cd1+Cd2. For frequencies smaller than fd, the capacitances act as open
circuits and the voltage gain F is equal to 1.
As in previously examined similar TIA topologies, the purpose of the
feedback configuration is to speed-up the pole generated by the usually
large photodiode output capacitance (included in Cin in Fig. 4.1(a)).
To observe this action qualitatively, notice that when the input cur-
rent increases, the voltage vin decreases. This decrease is presented at
the gate of M2 amplified by the gain of the amplifier-voltage divider
combination A = Aamp×F , causing vg2 to increase by A∆vin. For the
same current through M2 this results in an increase in the voltage vin.
In other words, the increase in the current of M2 is accommodated by
increasing its gate voltage A times more, than its source voltage would
180
decrease if its gate voltage was constant. In that sense, the source
voltage vin varies A times less than if M2 was simply a diode-connected
transistor, and so the input-impedance of the circuit is 1/(A × gm2).
In this way, the pole associated with the input node is now located at
A× gm2/Cin and the input-node pole is effectively sped-up by A.
Returning to the network of M5-Cd1-Cd2, it has a double function.
Firstly, it provides a frequency dependent gain from the gate of M2 to
the circuit output (vo = 1Fvg2
). But vg2 is the log-compressed version of
the input current, since vin is effectively held at a constant value by the
feedback loop. Thus, for signal frequencies larger than fd a gain of 1/F
(F < 1) is established between vg2 and the output vo, making the total
closed-loop I-to-V conversion gain equal to 1/(Fgm2). With proper
selection of the capacitances’ ratio this can provide an amplification of
larger than 10 for signal components with frequencies larger than fd,
drastically increasing the sensitivity of the photoreceptor. At the same
time, the closed-loop DC gain remains 1/gm2 (F = 1). Thus, offsets
and DC mismatch effects are amplified with a lower gain at the output
of the photoreceptor. In effect, a bandpass input-output characteristic
is achieved at the cost of a reduction in speed as will be seen in the
next section.
Secondly, transistor M5 allows the photoreceptor output to adapt
faster to large changes in the input signal, than to small changes, a
characteristic that is common also in biological photoreceptors[127].
For large changes at the output M5 starts being forward biased, cur-
rent flows through it and its resistance is drastically reduced. Thus
Cd2 is charged quickly to its new steady-state value. After the pho-
toreceptor input reaches a new average level, M5 starts acting again
as a very large resistance. This rational, i.e. the quick adaptation to
large changes in the transient input, was why Delbruck initially in-
troduced this transistor, or, as he prefers to refer to it, the “adaptive
element”[133].
181
Fig. 4.2: Small-signal model of Delbruck’s statically-biased photoreceptor
4.1.2 Small-signal analysis and stability
The small-signal model of Delbruck’s statically-biased PR can be seen
in Fig. 4.2. The body effect, as well as Cgs2 and Cgd1 are ignored to
simplify calculations.
There are three nodes in the circuit, with node voltages vo, vg2 and
vin. The three node equations are:
gm2(vg2 − vin) = iin + vinCins (4.1)
vo = − gm1ro
1 + ro[Co + 1+RCd1s1+R(Cd1+Cd2)s
Cd2]svin (4.2)
vg2 =1 +RCd1s
1 +R(Cd1 + Cd2)svo (4.3)
where ro=ro1‖ro3 the total output impedance of the amplifier.
At frequencies larger than fd = 12πR(Cd1+Cd2)
, eq. (4.2) and (4.3)
simplify to
vg2 =Cd1
Cd1 + Cd2
vo = Fvo (4.4)
vo = − gm1ro1 + ro(Co + Cp)s
vin (4.5)
with Cp=Cd1Cd2/(Cd1 + Cd2).
Combining (4.1),(4.4) and (4.5) and considering A = gm1roF 1
we get the transfer function of the photoreceptor:
voiin
=1
gm2F
11ACingm2
ro(Co + Cp)s2 + [ CinAgm2
+ ro(Co+Cp)
A]s+ 1
(4.6)
182
As low-current operation is of main interest, WI operation can be
assumed for both M1 and M2. Hence, gm1 = M × gm2, where M
denotes how many times larger the amplifier bias current is than the
DC level of the input current.
Using this, and the time constant notation
τ =Cingm2
τo = ro(Co + Cp) =A
gm1F(Co + Cp) =
A
MFgm2
(Co + Cp)
(4.7)
the closed-loop transfer function of the photoreceptor can be reformat-
ted as:voiin
=1
gm2F
11Aττos2 + [ τ
A+ τo
A]s+ 1
(4.8)
Intuitively it is expected that as the amplifier gain increases, the
input pole will come close to the output pole and lead to overshoot and
instability. If the system has complex poles then its natural frequency
and quality factor can be calculated to be:
Q =√A
√ττo
τ + τo=√A
√CinA
Co+CpMF
CinA
+ Co+CpMF
ωn =
√A
ττo=
A
gm2
√MF√
Cin(Co + Cp)
(4.9)
From (4.8) the condition for real poles can be derived to be A <
τ/4τo, or, given the weak inversion operation assumption stated earlier:
A <1
2
√Cin
Co + Cp×M × F (4.10)
If this condition holds and assuming τ τo (which is the usual case
in a photoreceptor interfacing a diode) the two real poles of the circuit
183
can be calculated to be:
p1 = − 1
τo= − gm2FM
A(Co + Cp)
p2 =A
τ=Agm2
Cin
(4.11)
This ”hand” analysis, though approximate, offers some significant
insights:
(a) Pole scaling with gain: If the biasing currents of the circuit are
considered defined and WI operation is assumed (and so gm2 and
gm1=Mgm2 are set), both of the circuit’s poles move as the open
loop gain A increases. But, whereas the input pole is sped-up
by A (p2) the output pole is slowed-down by A/F (see (4.11)).
This is reasonable, as, if the amplifier bias current is set, the
only way to increase the amplifier gain is by increasing its output
resistance, leading to a proportional increase in the time constant
associated with the output node. In essence, this is due to the
constant gain-bandwidth product of the voltage amplifier for a
given amplifier bias current.
(b) Pole scaling with input current level : If the amplifier bias current
and gain are constant, then the output pole is constant independ-
ent of the input current level. However, as the input DC current
level increases, the input pole approaches the output pole leading,
for large input currents, to overshoot at the output and eventu-
ally to instability. Thus, if Delbruck’s statically-biased photo-
receptor is desired to have a large input dynamic range, some
adaptive mechanism is necessary to increase the input-output
pole separation when the input current is increased. One way to
achieve this is by moving the output pole to higher frequencies,
for example by increasing the amplifier bias current (see point
(d)). Another is to employ an automatic gain control (AGC)
mechanism to reduce the amplifier gain so that the input pole is
184
sped-up by a smaller amount (which is not usually a problem,
since a large speed-up is only necessary for small values of the
input current).
(c) Maximum allowable gain for a given Q: For τ τo as is com-
monly the case, it can be derived from (4.9) that:
Amax < Q
√M × F × CinCo + Cp
(4.12)
Thus, the possible input pole speed-up for a given maximum
overshoot value is defined by the square root of the ratio of the
input node capacitance to the output node capacitance, or in
other words, by how separate the input and the output poles are.
For example, if M = F = 1, Cin = 100 pF and Co+Cp = 100 fF,
then the maximum allowable gain is approximately 30×Q.
(d) Bias current ratio M : (4.11) shows clearly that if M is increased
the output pole moves proportionally away from the input pole.
In this way, a larger open loop gain (and thus a larger speed-up
of the input pole) can be obtained without the system having
any overshoot, even if the input and output capacitances have
similar values (see (4.12)). The cost is the proportional increase
in the static power consumption, as this is approximately P =
Vdd × (M + 1) × IinDC . So, Delbruck’s circuit provides a way of
trading power consumption for input-output pole separation, and
thus, stability.
(e) Voltage divider ratio F : As explained before, the smaller the di-
vider ratio is, the larger the AC gain in mid-frequencies 1/F .
However, the open-loop gain is A = gm2roMF . Thus, for con-
stant current-levels, the smaller F is, the smaller the input pole
speed-up. To keep the input pole speed-up constant the amplifier
gain needs to be increased accordingly. There are two ways to
do that: One is to increase the amplifier bias current (increase
185
M) while keeping ro constant with sizing, which increases the
power consumption. The other, is to increase ro, which leads the
output-pole to move closer to the input pole, degrading the loop
stability.
(f) Capacitive divider and settling time: In addition to the input
pole slow-down that results if the mid-band AC gain is increased
by tuning F , the inclusion of the voltage divider also has a sig-
nificant impact on the settling time of the photoreceptor due to
the creation of a low-frequency pole-zero pair, whose separation
increases as the required AC gain increases. Fig. 4.3 shows set-
tling times derived through Matlab simulations of the system
described by equations (4.18)-(4.20) for different values of the
“adaptive element” conductance and for a realistic set of para-
meters values (given in the figure). The AC gain is varied by
keeping Cd1 constant and increasing Cd2. All capacitances have
been normalized to the input capacitance Cin and all transcon-
ductances to transconductance gm2. As expected, the maximum
speed-up is achieved when no voltage divider is used (F = 1).
However, the inclusion of even a small AC gain degrades the
input-pole speed-up by significantly more than 1/F , as predicted
by the simplified small-signal analysis. The use of the voltage-
dependent pseudo-resistor M5 only partially improves the per-
formance, by providing a faster adaptation for large changes in
the output voltage (in other words, reducing RG for large output
voltage steps). As can be seen, even for very low (unrealistic)
values of the adaptive element conductance (RG < 10−3), the
settling time is still significantly compromised.
Concluding this section, two more things should be brought under
the reader’s attention. Firstly, in most of the above analysis weak inver-
sion operation was assumed, and thus most of the derived relationships
strictly hold only under this assumption (and all the other approxim-
ations mentioned in each case). However, the qualitative conclusions
186
100
101
102
10−3
10−2
10−1
100
101
102
Mid-band AC gain (1/F)
Normalized
settlingtimeTs/3.91τ
F/Aamp
RG = 10−6
RG = 10−5
RG = 10−4
RG < 10−3
RG = 10−3
(a)
Variable Value
Co/Cin 10−6
Cd1/Cin 10−5
Aamp 1000
F Cd1Cd1+Cd2
M 1
gm1 Mgm2
roAampMgm2
RGGgm2
(b)
Fig. 4.3: Effect of capacitive voltage divider on Delbruck’s statically-biased photo-receptor settling time. G is the small-signal conductance of the ”adaptiveelement”, M5
187
Fig. 4.4: Small-signal model of Delbruck’s statically-biased photoreceptor withnoise sources
deduced can generally be extrapolated to strong inversion operation,
although some care is needed when doing that.
Secondly, in most of the above analysis it was assumed that the
amplifier gain can be tuned at will. However, under weak inversion
operation the intrinsic gain of the amplifier is gm1ro = 1/(λnVT ), with
λ the factor commonly used to model the finite output resistance of
the transistor (Early effect). Even though the factor λ is inversely
proportional to the length of M1 and M3, the minimum gain is still
constrained by the feature size of the technology. If smaller gains
are required, these can be achieved by increasing the amplifier bias
current, forcing M1 to move towards the moderate and strong inversion
regions, and increasing its transconductance. Obviously, this approach
increases the power consumption.
4.1.3 Noise
In this section we will analyse the output noise of Delbruck’s statically-
biased photoreceptor. We will mainly consider the transistor channel
thermal noise. As known, this can be described through current noise
densities
Sini =8
3kTgmi (4.13)
where the subscript i denotes the corresponding transistor, M1-M4.
The various noise sources are depicted in the small-signal model in
Fig. 4.4.
Under the same assumptions made to derive (4.8), the noise transfer
188
functions can easily be calculated to be:
Zni =vnoiini
=1
Fgm1
1 + τs1Aττos2 + [ τ
A+ τo
A]s+ 1
i = 1, 3 (4.14)
Zn2 =vno2in2
=1
Fgm2
11Aττos2 + [ τ
A+ τo
A]s+ 1
(4.15)
Two important observations can be made in the above equations.
Firstly, note that the DC gain of the transfer function for the thermal
noise of the feedback transistor M2 scales inversely proportionally to
gm2. Since the PSD for this noise, Sin2 , is proportional to gm2, the
output noise PSD decreases (as 1/gm2) when the input current level
increases. At the same time, however, if real poles are assumed and
the system is approximated by its dominant pole, the noise bandwidth
of transfer function Zn2 is approximately:
NBW2 =π
2
1
2πτ=
1
4τ=Agm2
4Cin(4.16)
As a result, the total integrated noise at the output of the photore-
ceptor due to the feedback transistor is:
No2 =√Sin2|Zn2(0)|2NBW2
=
√8
3kT
1
F 2
A
4Cin
(4.17)
Hence, it is independent of gm2 and the input current level.
Secondly, it is instructive to note that (4.14) has a zero, equal to the
dominant open-loop system pole (1/τ), determined by Cd in parallel to
gm2. Consequently, Delbruck’s logarithmic photoreceptor exhibits the
same noise-peaking effect for the feedback amplifier noise, as the one we
encountered before in the analysis of linear TIAs (see section 2.4.1).
A plot of the noise transfer functions is shown in Fig. 4.5. Similar
to linear TIAs, the noise bandwidth is larger than the photoreceptor
closed-loop bandwidth and may limit its SNR if additional filtering
is not employed. For a given desired closed-loop system bandwidth,
189
Fig. 4.5: Noise transfer functions for Delbruck’s statically-biased PR
this effect becomes more pronounced for large photodiode capacitances
and incremental feedback resistances, due to the increased gain of the
feedback amplifier. The same applies for large feedback amplifier gain-
bandwidths, which will be necessary if large input-pole speed-ups are
required, to ensure stability (section 2.3).
Finally, note that the AC gain factor, 1/F , also multiplies all noise
sources. Therefore, the photoreceptor’s SNR cannot be increased by
changing the capacitive divider ratio. This only serves to improve the
SNR with respect to noise introduced by stages following the photore-
ceptor.
4.2 Delbruck and Oberhoff’s self-biased
photoreceptor
As explained earlier, maintaining stable operation without wasting
power under both small and large input currents requires an adaptive
mechanism to increase the amplifier bandwidth or reduce the amplifier
gain for large input currents. A compact and low-power way to do so
is by biasing the amplifier using a replica of the input current. The
circuit schematic is shown in Fig. 4.6[145].
This circuit has all of the characteristics of the statically-biased pho-
190
Fig. 4.6: Delbruck’s and Oberhoff’s self-biased photoreceptor
toreceptor: potential for low input impedance, logarithmic transfer
characteristic, different gain and adaptation speed for AC and DC in-
puts and ability to trade-off power for input-output pole separation,
by changing the mirror ratio. All the comments made for the static-
ally-biased photoreceptor hold in this case as well.
However, employing a mirror to bias the amplifier from the input
current creates a positive feedback loop: if iin increases, vin decreases
causing vo to increase due to the negative gain of the feedback amplifier.
The increase in vo increases the current through M2, which is mirrored
back through M3 causing further increase in vo. To avoid oscillations, a
large capacitor Cm is introduced at the gates of the mirror, to delay the
positive feedback[145]. However, as will be shown in the next section
this capacitance needs to be at least as large as the input capacitance
and thus significantly degrades the circuit speed.
4.2.1 Small-signal analysis and comparison with
statically-biased photoreceptor
The small signal model of the self-biased PR, ignoring again Cgs2,
Cgd1 and the body effect, is shown in Fig. 4.7. The nodal equations
191
Fig. 4.7: Small-signal model of Delbruck’s self-biased PR
describing the circuit are:
gm2(vg2 − vin) = iin + vinCins (4.18)
vo = [Mgm2(vg2 − vin)
1 + Cmgm3
s−gm1vin]
ro
1 + ro[Co + 1+RCd1s1+R(Cd1+Cd2)s
Cd2]s(4.19)
vg2 =1 +RCd1s
1 +R(Cd1 + Cd2)svo (4.20)
where again ro = ro1‖ro4 is the total output impedance of the amplifier,
and M the M3-M4 mirror ratio.
At frequencies larger than fd = 12πR(Cd1+Cd2)
, eq. (4.19) and (4.20)
simplify to:
vg2 =Cd1
Cd1 + Cd2
vo = Fvo (4.21)
vo = [Mgm2(vg2 − vin)
1 + Cmgm3
s− gm1vin]
ro1 + ro[Co + Cp]s
(4.22)
with Cp=Cd1Cd2/(Cd1 + Cd2).
From (4.18), (4.21) and (4.22) and under the assumptions A =
gm1roF 1 and gm1 = Mgm2 (weak inversion operation), the pho-
toreceptor’s transfer function can be derived as
voiin
=roM(2 + τms)
D1(s)(4.23)
192
where
D1(s) = ττmτos3 + (ττm + τoτm + τoτ)s2
+ [τo + τm + τ + A(τm − τ)]s+ A+ 1(4.24)
and
τ =Cingm2
τo = ro(Co + Cp) =A
gm1F(Co + Cp) =
A
MFgm2
(Co + Cp)
τm =Cmgm3
(4.25)
Contrary to the statically-biased photoreceptor, this is a three pole
system, so it would be rather complicated and meaningless to perform
a detailed hand analysis.
A conclusion that can be drawn, however, directly from eq. (4.23)-
(4.24) is that the compensation capacitor used at the mirror, Cm, must
be at least as large as the capacitance at the input node, Cin, to achieve
stability. If not, the coefficient of s in the denominator – which is
associated with damping – would become negative, leading to roots in
the right hand plane.
To investigate the required magnitude of the compensation capacit-
ance Cm the case where τ, τm τo will be considered, which is usually
true if a reasonably sized photodiode is used. Under that assump-
tion, the system can be approximated with 2nd order dynamics and
the transfer function becomes:
voiin
=1
gm2F
(2 + τms)ττmAs2 + (τm − A−1
A+1τ)s+ 1
(4.26)
It is useful to observe the normalized settling time of the system in
(4.26) with varying ratio Xm = τm/τ = Cm/Cin and varying values of
gain A (Fig. 4.8).
The input pole is efficiently sped-up only for a specific range of
193
1 1.5 2 2.5 3 3.5 4 4.5 510
−3
10−2
10−1
100
101
102
Xm = Cm/Cin
Norm
alized
settlingtimeTs/τ
A=10A=100A=1000
Fig. 4.8: Effect of ratio Cm/Cin on the settling time of Delbruck’s self-biased pho-toreceptor
values of the mirror-compensation capacitance Cm, in this case around
2 times the input capacitance Cin. However, even small deviations in
the compensation capacitance value (of the order of < 10%) result in
a significant increase in the settling time.
This is not an unexpected result. The poles and the zeros of the
second order system in (4.26) are:
p1 = −1
τ
1
Xm − 1
p2 = −Aτ
Xm − 1
Xm
z = − 2
Xmτ
(4.27)
Note that for Xm = 2, p1 and z cancel out. For Xm 6= 2, there is a
dominant pole-zero pair at low frequencies (p1 and z) that significantly
limits the speed of the resulting system. Observe also that, even for
Xm = 2, the input-pole speed-up achieved by the system will be A/2,
194
that is, half of the corresponding speed-up offered by the statically-
biased photoreceptor.
The relations derived above are valid if the output pole is at much
higher frequencies than the poles of the mirror-compensation and the
input pole. To get a more complete picture, and compare the behaviour
of the two photoreceptors, the systems modelled by eq. (4.6) and (4.23)
were simulated using Matlab. Fig. 4.9 depicts the ratio of the settling
times of the two systems for different ratios of output to input time
constant Xo and different gains A. The ratio Xo is calculated as:
Xo =τoτ
=ro(Co + Cp)
Cingm2
=
AMgm2F
(Co + Cp)Cingm2
=A
MF
Co + CpCin
=A
MFCr
(4.28)
The simplifications in (4.28) assume WI operation and constant bias
current for the amplifier, implying that the gain A varies by changing
the amplifier’s output resistance. The ratio Xm is set to its optimal
value of 2, the current mirror gain to M = 1 and the capacitive divider
ratio to F = 1.
There are several things to be noted in Fig. 4.9:
(a) For both photoreceptors the speed-up of the input pole is much
less than the open loop gain, unless the separation of the input
and output poles is very large (Cr very small – see also comment
(c) about the maximum allowable gain in section 4.1.2).
(b) For gains smaller than approximately the square root of the ratio
Cr (that is, where the closed-loop system has real poles or small
peaking), the statically-biased photoreceptor is better than the
self-biased one by a factor of two (as predicted). For larger gains,
both exhibit significant peaking and their performance becomes
comparable.
195
101
102
103
10−3
10−2
10−1
100
101
102
Open loop gain A
Nor
mal
ized
set
tling
tim
e T s/τ
Cr =10
−2
Cr =10
−3
Cr =10
−4
Cr =10
−5
Cr = 10−6
Self biasedStatically biased
3.91/A
M = 1, F = 1,Xm = 2Cr =
Co+Cp
Cin
Fig. 4.9: Comparison of settling time of Delbruck’s statically-biased and self-biasedphotoreceptors through Matlab simulations of their small-signal transferfunctions. The compensation capacitor of the self-biased photoreceptor isset to 2× Cin to minimize its settling time
(c) For large output-input capacitance ratios (Cr > 10−3) the feed-
back loop does not offer any significant speed-up. This does not
mean that the photoreceptors can’t be used. Rather than that,
extra power should be sacrificed to increase the input-output
pole separation, by increasing the current-mirror ratio M (see
also discussion in comment (d)-section 4.1.2 and 4.4.2).
It should be noted that a large part of the analysis assumes that the
open-loop gain A can be easily tuned. As commented before, this is
not always the case. Furthermore, the preceding analysis, both for the
statically-biased and the self-biased photoreceptors, ignored the finite
output resistances of the transistors, the bulk effect and the gate-source
capacitance of M2, which couples the input and the output. As will
be seen later in simulation results, these effects result in a degraded
performance compared to the one predicted by the simplified hand
calculations.
196
Fig. 4.10: Small-signal model of Delbruck’s self-biased PR including noise
4.2.2 Noise
The analysis is similar to that of the statically-biased photoreceptor.
The transistor thermal current noise sources are depicted in the small-
signal model in Fig. 4.10.
The noise transfer functions for the four noise sources are:
Zni =vnoiini
=Mro(1 + τs)(1 + τms)
D1(s)i = 1, 4 (4.29)
Zn2 =vno2in2
=Mro[1 + (τm − τ)s]
D1(s)(4.30)
Zn3 =vno3in3
=Mro(1 + τs)
D1(s)(4.31)
D1(s) is the characteristic polynomial of the closed-loop system
(eq. (4.24). To obtain a better impression about the form of these
transfer functions, if we again approximate the photoreceptor with a
2nd order system (eq. (4.26)) and assume perfect pole-zero cancellation
for the mirror pole (τm = 2τ or Xm = 2), the above simplify to:
Zni =(1 + 2τs)
2Fgm2(1 + τAs)
i = 1, 4 (4.32)
Zni =1
2Fgm2(1 + τAs)
i = 2, 3 (4.33)
The same noise-peaking effect as in the statically-biased photore-
ceptor can be observed for the amplifier noise, whereas the noise of
197
M2, M3 is filtered by the same low-pass transfer function as the in-
put current. The AC gain is again half of that of the statically-biased
photoreceptor, as expected.
4.3 A novel self-biased photoreceptor
In this section a novel self-biased photoreceptor circuit is presented.
The proposed photoreceptor utilizes mainly positive feedback to re-
duce the input impedance of the circuit, inspired by blocks previously
designed to lower the input impedance of current conveyors[148] or the
output impedance of voltage buffers[149]. The photoreceptor will be
analysed in detail to examine the relative advantages and disadvant-
ages in comparison to the previously presented photoreceptors.
The photoreceptor circuit is shown in Fig. 4.11. The circuit is based
on a positive feedback loop with a gain close to unity and the use of
matched transistors M1, M2 to lower the input impedance. An increase
in the input current is sensed by the mirror of M3-M4 and fed through
the diode connected transistor M1. This causes the voltage at the gate
of M1 to increase. The attenuator is a network with voltage input
and output and a voltage gain very close to, but smaller than, one.
Fig. 4.11: General schematic of the proposed photoreceptor
198
(a) (b)
(c)
Fig. 4.12: Networks that can operate as voltage attenuators for the proposed pho-toreceptor: (a) capacitive divider; (b) source follower, and (c) resistivedivider
Thus, an increase in the input current is mainly accommodated by an
increase in the gate voltage of M2, resulting in a much smaller change
at its source voltage, and hence, in a much lower input impedance.
The attenuator could be realized as any of the networks in Fig. 4.12.
Each of them has advantages and disadvantages that will be explained
later on.
4.3.1 Small-signal analysis and comparison with
other photoreceptors
We will concentrate the analysis on the version of the circuit shown
in Fig. 4.13(a). Other possible versions of the proposed photoreceptor
will be commented upon briefly later on.
The small-signal equivalent is shown in Fig. 4.13(b). To simplify the
199
(a) (b)
Fig. 4.13: (a) Schematic of the investigated version of the proposed PR and (b) itssmall-signal model
analysis the body effect, the output resistances of the transistors, the
Cgs2 of the input transistor, as well as the cascode transistors of the
mirror, will be ignored.
Under these simplifications the three node equations are:
gm2(vg2 − vin) = iin + vinCins (4.34)
vo =gm2(vg2 − vin)
gm3 + Cms(4.35)
vg2 = − Mgm3vo
(gm1 + C1s)1+R(Cd1+Cd2)s
RCd1s+ Cd2s
(4.36)
At frequencies larger than fd = 12πR(Cd1+Cd2)
, eq. (4.36) simplifies to:
vg2 = −Mgm3
gm1
Cd1
Cd1 + Cd2
1
1 + (C1+Cp)
gm1svo
= −Mgm3
gm1
k
k + 1
1
1 + (C1+Cp)
gm1svo
(4.37)
where k = Cd1/Cd2 has been assumed to be much larger than 1, and, as
200
before, Cp = Cd1Cd2/(Cd1+Cd2). Note that, comparing to the previous
photoreceptors, F = k/(k + 1).
Combining (4.34), (4.35) and (4.37), the photoreceptor transfer func-
tion is calculated to be:
voiin
= − 1
gm3
(1 + τ1s)
(1 + τs)(1 + τms)(1 + τ1s)− kk+1
MCingm1
s(4.38)
where:
τ =Cingm2
τm =Cmgm3
τ1 =C1 + Cpgm1
=C1 + CpMgm2
(4.39)
Assuming WI operation and matched transistors M1 and M2, so that
gm1 = Mgm2, the transfer function becomes
voiin
=1
gm3
1 + τ1s
D2(s)(4.40)
where
D2(s) =τmτ1τs3 + (ττm + ττ1 + τmτ1)s2
+ (τ1 + τm + τ − k
k + 1τ)s+ 1
(4.41)
Again, the system has a 3rd order transfer function and complete
hand analysis is difficult. It is already evident in (4.41), however, that
if k 1 the time constant corresponding to the input pole gets largely
attenuated in the damping factor term, increasing the speed of the
system.
To derive some more conclusions, we can approximate the system
of (4.40)-(4.41) with a 2nd order equation, assuming that the time
constant of the input pole is much larger than the other two (τ
201
τm, τ1), as is usually the case:
voiin' 1
gm3
1 + τ1s
τ(τ1 + τm)s2 + (τ1 + τm + τk+1
)s+ 1(4.42)
Setting the input pole speed-up equal to A = k + 1 (note that in
this case A is not the open loop gain) we can calculate the system’s
natural frequency and quality factor in the case of complex poles:
Q =
√τ(τ1 + τm)
τ1 + τm + τA
ωn =1√
τ(τ1 + τm)
(4.43)
In this case the condition for real poles can be calculated to be
A <τ
(τ1 + τm)(2√
ττ1+τm
− 1)
ττ1,τm=⇒
A <1
2
√τ
τ1 + τm
(4.44)
and the real poles are:
p1 = −Aτ
p2 = − 1
A(τ1 + τm)(4.45)
Based on this analysis we can make the following observations:
(a) Pole scaling with gain and maximum allowable gain for a par-
ticular Q: The proposed photoreceptor has similar behaviour to
Delbruck’s statically-biased photoreceptor. When the gain in-
creases, the input-node pole is sped-up and the second pole of
the system (that is in effect the additive dynamics of the other
two system poles) is slowed down by the same amount. Hence,
the ratio of the dominant (input) to the non-dominant time con-
stant of the circuit decreases as the square of the speed-up A.
The maximum allowable gain for a particular Q value can be
202
calculated from (4.43) to be:
Amax <
√τ
τ1 + τm
Q
1−Q√
τ1+τmτ
(4.46)
which is again effectively the same result as in the case of the
statically-biased photoreceptor.
(b) Pole scaling with input current level : Observe that all time con-
stants in the circuit are inversely proportional to the input cur-
rent. Thus, all the poles move to higher frequencies as the input
current increases, and there is no need for an extra adaptation
mechanism as in the case of the statically-biased photoreceptor.
(c) Capacitances and low-frequency pole-zero pairs : Contrary to Del-
bruck’s self-biased photoreceptor, the proposed circuit doesn’t
need a large, off-chip compensation capacitance to achieve stabil-
ity (although there are some other requirements – see comment
(d)). The capacitors used for the attenuator can be very small,
since only their ratio matters. In fact, as we will see later, the
parasitic gate capacitance of M2 could be used in the place of
Cd2. Moreover, in the proposed photoreceptor the voltage trans-
fer ratio of the capacitive divider has to be very close to 1, leading
to a very small separation of the low-frequency pole-zero pair in-
troduced by the divider and M5. Note also that this pole-zero
pair is now located in the feedback path, in comparison to the
forward path of Delbruck’s PRs.
All the above allow the proposed photoreceptor to achieve a sig-
nificantly improved settling speed in comparison to Delbruck’s
self-biased photoreceptor and a better settling speed for large
steps of the input than Delbruck’s PRs that use a voltage di-
vider (see also discussion in point (f) of section 4.1.2).
(d) Stability and matching : From the preceding analysis it is not ob-
vious that the proposed photoreceptor may be unstable, which is
203
unexpected, considering the use of positive feedback. This mis-
leading impression stems from the fact that perfect WI operation
and matching has been assumed for M1 and M2.
Suppose that for some reason (that could be matching, body-
effect or moderate inversion effects) gm1 = χMgm2, where χ is
a factor describing the mismatch between gm1 and gm2. Then,
the factor of the s-term (damping) in the transfer function would
become τ1 + τm + χ(k+1)−kk+1
τ . This term needs to be positive for
the system to be stable. Considering the usual case, where τ is
the dominant time constant, this translates to χ > kk+1
. At the
same time, if useful speed-up of the input pole is to be achieved,
χ cannot assume values much larger than 1. Fortunately, as will
be seen in the reported results, it is not hard to achieve a value of
χ that satisfies these restrictions, if M = 1 and M1 and M2 have
similar VBS voltages, due to the good matching possible between
on-chip transistors. Note that, matching of on-chip transistors,
is a less restrictive requirement than matching of a photodiode
output capacitance and an off-chip capacitor.
(e) Current mirror ratio M : In Delbruck’s photoreceptors it was pos-
sible to trade off power for system pole separation, by varying the
mirror ratio (or the ratio of input current to the amplifier’s bias
current). In theory, this is also possible for one of the proposed
photoreceptor poles (1/τ1) but not for the mirror pole 1/τm (see
(4.39)). In the case however that τ1 is much larger than τm (for
example due to parasitic capacitances of the voltage divider’s
capacitor plates), increasing M could speed-up the response.
However, the preceding analysis assumed that the transconduct-
ances of M1 and M2 are linearly related to their drain current.
As known, this is true only approximately for a MOS operating
in WI. If the mirror ratio is increased to Mnew > 1, M1 moves
closer to the moderate inversion region, and its transconduct-
ance increases to a value gm1(new) = Mnewψgm1(old), with ψ < 1.
204
Hence, gm1(new)/Mnew will become smaller than gm2 potentially
leading to instability (see discussion in point (d)). Therefore, if
MOS transistors in WI are used, the circuit stability should be
carefully evaluated if values of M > 1 are considered. Note that
if M1 and M2 were bipolar transistors, gm1 and gm2 would be scal-
ing linearly with the collector current across a significantly larger
range of currents, facilitating stability for M > 1. However, the
effect of the base currents would then need to be considered as
well.
(f) DC/AC gain and adaptive behaviour : Delbruck’s photoreceptors
used the combination of the capacitive divider and the “adaptive
element” M5 to achieve different gain for the DC and AC com-
ponents of the signal (bandpass characteristic) and faster adapt-
ation to fast varying signals. Due to the different position of this
network in the feedback loop, the proposed circuit does not have
different AC and DC gain. However, large changes in the output
signal would still cause a non-negligible current to flow through
M5, leading to faster charging of Cd2 to its new steady-state value.
The absence of a bandpass characteristic is a disadvantage, es-
pecially considering the variations in the output DC component
due to variations in the parameters of the output transistor M3.
However, in cases where temporal rather than spatial variation
is measured – and a pulse oximeter is one of them – a bandpass
characteristic can be achieved by introducing a high-pass filter
in cascade with the photoreceptor. This is a technique employed
in more recent implementations of Delbruck’s PRs as well[150].
(g) Open loop gain tunability : Contrary to Delbruck’s photorecept-
ors, where the input-pole speed-up is determined by a high-gain
feedback amplifier, in the proposed photoreceptor, it is determ-
ined by the ratio of Cd1 and Cd2. Thus, it is more readily tunable
at design time to avoid large overshoots and degradation in the
system speed (see also comments at the end of section 4.1.2).
205
Fig. 4.14: Small-signal model of the proposed PR including noise sources
4.3.2 Noise
Considering the noise performance of the proposed photoreceptor, un-
der the same assumptions made for the calculation of (4.40), the trans-
fer functions to its output for the thermal noise current sources of the
four transistors in1 − in4, can be calculated to be
Zni =vnoiini
=1
gm1
kk+1
τs
D2(s)i = 1, 4 (4.47)
Zn2 =vno2in2
=1
gm3
τs(1 + τ1s)
D2(s)(4.48)
Zn3 =vno3in3
=1
gm3
(1 + τs)(1 + τ1s)
D2(s)(4.49)
D2(s) is the denominator of the closed-loop system transfer function
(eq. (4.41)). The noise sources are depicted in the small-signal model
of the proposed PR in Fig. 4.14
Similarly to Delbruck’s photoreceptors, the proposed design also ex-
hibits noise-peaking1. Interestingly, this is true for the thermal noise
of all transistors, including M3, i.e. the transistor that performs the
logarithmic I-V conversion.
1The reader might be surprised by the fact that the transfer functions seem to havea zero at the origin. This is a consequence of considering the photodiode outputresistance, Rd, infinite. For very low frequencies the gain of Zn1, Zn2, Zn4 tendsto 1
gm1gm2Rd.
206
(a) (b)
Fig. 4.15: Alternative versions of the proposed photoreceptor with (a) source fol-lower and (b) ”pseudo-resistive” divider as attenuator
4.3.3 Other versions of the proposed
photoreceptor
Different networks can be used as attenuators in the proposed pho-
toreceptor, to achieve a feedback loop gain very close to, but smaller
than, one (Fig. 4.12). In this section two alternative versions of the
proposed PR will be briefly commented upon.
The circuit in Fig. 4.15(a) uses a source follower in the feedback
loop. The attenuation factor is gm8rob1+gm8rob
, with rob the output resistance
of the current source. The input-pole is sped-up by the intrinsic gain
of the transistor if it is located far enough from the non-dominant
poles of the circuit. Thus, this variant could offer similar speed-up to
Delbruck’s photoreceptors under certain conditions. Furthermore, it
does not require the use of extra capacitors.
One potential problem with this implementation is revealed when
the body-effect is considered. As was discussed previously, very good
matching is required between M1 and M2. In this case, however, they
are biased to operate with different gate voltages. If the transistors
207
are not in separate wells, so that VBS can be set to 0, this results to a
different subthreshold slope factor n between the two, leading gm1 to
become smaller than gm2 and potentially causing instability. The prob-
lem could be partially mitigated if extra voltage shifters are used to
bring the two gate voltages to similar levels, at the cost of extra power
consumption, or by introducing again a capacitive-divider/attenuator
after the source follower, to compensate for the difference in the slope
factor by lowering the feedback loop gain. However, it is not safe to
design based on different slope factor values, and thus such implement-
ations have not been investigated in detail.
Other disadvantages of this implementation are difficulty to tune the
input-pole speed-up at design time, similarly to Delbruck’s PRs, and
increased power consumption due to the voltage follower(s).
Another way to avoid using on-chip capacitances is by utilizing a
small ohmic resistance in series with very large pseudo-resistors to form
the voltage divider (Fig. 4.15(b)). The large resistors can be easily im-
plemented on-chip by cascading transistors connected similarly to the
adaptive element M5. The disadvantage of this approach is again that
the gain of the feedback loop, 2Rr+2R
, is not easily tunable, and, for real-
istic values of r, very close to one. This leads to large overshoots and
degraded settling speed performance. Possible degradation of the noise
performance of the photoreceptor is also one consideration regarding
this implementation.
4.4 Simulations
4.4.1 Results for unity mirror ratio (M = 1)
All three photoreceptors were implemented in the AMS 0.35 µm tech-
nology and simulated using Cadence IC Design Framework (Spectre).
For Delbruck’s photoreceptors an extra cascode transistor M6 is used
to suppress the Miller effect on Cgd1[127], whereas no capacitive divider
is included, as simulations have shown that it degrades the settling time
208
(a)
(b) (c)
Fig. 4.16: Schematics of the simulated photoreceptors: (a) statically-biased PR;(b) self-biased PR, and (c) proposed PR
of the photoreceptor for large steps at the input (see discussion in (f) -
section 4.1.2). For clarity and ease of reference the photoreceptor cir-
cuits used in the simulations are repeated in Fig. 4.16. The circuit and
bias parameters used are summarized in Table 4.1, and are the same for
the three photoreceptors, with the exception of M3, M4 that are larger
in the proposed PR to ensure good matching and compensate for the
smaller range for which PMOS transistors conform to an exponential
V-to-I characteristic.
To carry out a fair comparison, it is assumed that the bias current of
the amplifier in Delbruck’s statically-biased PR is scaled to be equal to
209
Table 4.1: Parameters used in simulations of the photoreceptors
Delbruck Proposed
M1,M2 [µm] 100 / 1M3,M4 [µm] 100 / 1 400 / 1M5 [µm] 10 / 0.35
M6,M7 [µm] 60 / 0.35Iamp M × Iin DC -
VDD [V] 3VSS [V] 0M 1
Cin [nF] 1Cm [nF] 2Cd1 [pF] - 2.3Cd2 [pF] - 0.1
10−1
100
101
102
103
104
105
10−3
10−2
10−1
IinDC[nA]
Outputpulseam
plitude[V
]
Delbruck statically−biased
Delbruck self−biased
Proposed
con=1%
con=3.16%
con=10%
con=31.6%
Fig. 4.17: Transfer characteristics of photoreceptors
the DC level of the input signal (or in other words an AGC mechanism
is assumed to be present, albeit not implemented with a circuit). The
photodiode is simulated as an ideal current source with an output
resistance of 1 GΩ and an output capacitance of 1 nF.
210
Transfer characteristic (DC analysis)
As explained earlier, a logarithmic PR has a small-signal output pro-
portional to the contrast of the input light signal, irrespective of the
input light average intensity level. To test this behaviour a square
wave with varying DC offset and amplitude is used as an input. The
DC offset represents the average intensity of the light source, whereas
the ratio of the square wave peak amplitude to the DC level represents
the contrast of the light signal. At the output of the photoreceptor the
amplitude of the square wave is measured for different values of input
DC level and contrast. The simulation results are plotted in Fig. 4.17.
As expected, for small input currents, the peak amplitude of the
square wave at the output of all three PRs is proportional to the con-
trast of the input signal (with a gain of approx. 33 mV per 100%
contrast) and quite insensitive to its mean intensity. However, for lar-
ger input currents the small-signal gain of the PRs changes with the
input level. This can be attributed to deviations from the ideal ex-
ponential characteristic for the MOS transistor which carries out the
I-to-V conversion, due to the transistor approaching the moderate and
strong inversion regions. Such deviations because of transistor leakage
can also explain the decreasing curves for low input currents.
AC response
The small-signal frequency response of the three systems is shown in
Fig. 4.18 for values of IinDC = 10 nA and IinDC = 10 µA. Note that,
the DC gain and bandwidth scale inversely proportionally and pro-
portionally with the input signal DC level respectively. Furthermore,
Delbruck’s self-biased PR exhibits double the DC gain than the other
two, due to the type of positive feedback employed (see eq. (4.23)).
Delbruck’s PRs achieve higher bandwidth than the proposed one, and,
at the same time, exhibit significantly more peaking. The peaking
results from the closely spaced input and output poles for M = 1 in
conjunction with the high gain of the feedback amplifier that, in WI,
211
10−2
100
102
104
106
108
10−2
100
102
104
106
108
Frequency [Hz]
Magnitude[Ω]
Delbruck statically−biased
Delbruck self−biased
Proposed
IDC
=10nA
IDC
=10 µA
Fig. 4.18: Small-signal frequency response of the photoreceptors
approaches 1000. As explained in section 4.1.2, it is difficult to tune
this gain at will to avoid this effect. On the contrary, in the proposed
PR, the feedback loop gain can be easily tuned by manipulating the
ratio of the capacitors in the voltage divider and can be set to a lower
value to avoid peaking, as in this case. As will be seen this leads to an
improvement in the settling performance of the photoreceptor.
The bandwidth of the three PRs as a function of the input DC
current level is plotted in Fig. 4.19. It scales linearly with the input
DC level, as expected, except for large currents, when the transistors
start approaching the moderate inversion region.
Transient performance
An input signal consisting of a square wave superimposed on a variable
DC level with a 10% contrast was employed to test the small-signal
settling speed of the PRs. The 2% settling times are calculated for
different input DC levels and contrast values. The acquired results are
shown in Fig. 4.20. It can be seen that the proposed PR can achieve a
smaller settling time than Delbruck’s statically-biased PR for low input
212
10−1
100
101
102
103
104
100
102
104
106
108
IinDC[nA]
Frequency
[Hz]
Delbruck statically−biased
Delbruck self−biased
Proposed
Fig. 4.19: Photoreceptors bandwidth vs input DC level
100
101
102
103
104
105
10−7
10−6
10−5
10−4
10−3
10−2
10−1
IinDC[nA]
2%settlingtime[s]
Delbruck statically−biased
Delbruck self−biased
Proposed
3.91Cin
/gm2
Fig. 4.20: Simulated output settling time for a step decrease at the input equal to20% of the input DC level (10% contrast)
213
currents. This happens mainly because the proposed photoreceptor ex-
hibits a much smaller quality factor Q, than Delbruck’s photoreceptor.
Fig. 4.21 shows a diagram of the relation between the settling time
and the quality factor of an underdamped second order system. For
IinDC = 10 nA, the proposed photoreceptor has a Q of 0.54 (θ = 23),
whereas Delbruck’s photoreceptor has a Q > 8 (θ > 86). To compare
the settling time of the two using Fig. 4.21 it should also be taken into
account that as the gain increases the poles also move closer to the
imaginary axis, leading to a significant reduction in the real part of
the poles Re(p). Hence, even though in both cases the settling time
would be 3-4 times Re(p), in the large-Q case Re(p) would be smal-
ler than in the low-Q case. For the given input DC current the real
part of the poles is simulated to be -937 for the proposed and -173 for
Delbruck’s photoreceptor.
Furthermore, as predicted, Delbruck’s self-biased photoreceptor is
much slower than the other two due to the low-frequency pole-zero pair
introduced at the mirror to ensure stability (see section 4.2.1). This
happens despite the fact that the compensation capacitor was selected
to be twice the input capacitor to achieve good cancellation of the
low-frequency pole-zero pair. This can probably be attributed to the
factors that had not been taken into account in the simplified small-
signal hand analysis (finite output resistances, body effect, parasitic
capacitances coupling the input and the output).
Noise
In Fig. 4.22 the noise PSD at the output of the three photoreceptors for
two input current DC levels is plotted. Both the scaling of the output
thermal noise PSD with gm2 and the onset of the noise-peaking effect
at frequencies close to the open-loop dominant pole, 1/τ , are clearly
visible.
The integrated voltage noise at the output of the PRs is depicted
in Fig. 4.23, for different DC input levels. The interval of integration
214
Fig. 4.21: Relation between the settling time Ts of an underdamped second ordersystem and its quality factor Q. Re(P ) is the real part of the complexpoles and θ is given by tan2 θ = 4Q2 − 1 (from [151])
10−2
100
102
104
106
10−16
10−14
10−12
10−10
10−8
10−6
Frequency [Hz]
Noise
PSD
[V2/H
z]
Delbruck statically−biased
Delbruck self−biased
Proposed
IDC
=10nAIDC
=1 µA
Fig. 4.22: Output noise PSD of the photoreceptors for two input DC levels
215
10−1
100
101
102
103
104
10−4
10−3
10−2
IinDC[Hz]
Integrated
outputnoise
[V]
Delbruck statically−biased
Delbruck self−biased
Proposed
Fig. 4.23: Integrated in-band output noise voltage of the photoreceptors
is, as is common, the bandwidth of each PR. The proposed PR can
be seen to have a lower in-band integrated output voltage noise than
the other two. This is due to its smaller noise-peaking and bandwidth.
Note that the noise has a very weak dependence on the input current
level, due to the scaling of all the poles and the feedback amplifier gain
with the input current due to the AGC employed (see sections 4.1.3,
4.2.2 and 4.3.2)2.
From Fig. 4.23 the input referred in-band integrated current noise
can be calculated by dividing the output voltage noise with the gain of
the photoreceptor for each input DC level. The input noise divided by
the DC input level provides an indication of the minimum detectable
contrast at the input of the photoreceptor. This is plotted in Fig. 4.24.
The proposed photoreceptor can detect input contrasts smaller than
1%, in comparison to a value of more than 7% for Delbruck’s statically-
biased photoreceptor. The self-biased PR performs somewhat better
2The sharp increase in the output noise of Delbruck’s photoreceptors is due thenon-adaptive biasing used for the cascode transistor in the simulations. Forcurrents larger than about 1 nA M6 comes out of saturation, resulting in a stepincrease in the feedback amplifier gain and consequently, Q and output noise
216
10−1
100
101
102
103
104
10−1
100
101
102
IinDC[Hz]
Minim
um
detectable
contrast
[%]
Delbruck statically−biased
Delbruck self−biased
Proposed
Fig. 4.24: Minimum detectable contrast at the photoreceptor input. The inputnoise is calculated by dividing the output in-band noise in Fig. 4.23 withthe DC gain of each photoreceptor
due to its double DC gain in comparison to the statically-biased PR.
It should be remarked that the above calculation of the minimum
detectable input signal assumes that the full bandwidth of the photo-
receptor is used for the input signal. If the signal to be measured has a
finite bandwidth that is much smaller than the photoreceptor’s band-
width (something which is true for example in a pulse oximeter), the
minimum detectable signal can be decreased even further by filtering
out the noise that is outside the useful signal bandwidth in the stages
following the photoreceptor.
Dynamic range
The dynamic range of the photoreceptors is defined by what the min-
imum and maximum acceptable input DC levels are. This is clearly
dependent on the specific application where the photoreceptor is to be
used.
In most systems, the minimum detectable input signal is related to
217
the system’s noise level. In this case, however, the minimum detectable
input contrast is a weak function of the input DC level. It is more
reasonable to determine the minimum acceptable DC input level by
the desired settling speed of the photoreceptor. For example, if an
application requires a minimum settling time of 200 µs for a contrast
of 10%, the minimum possible input DC level is about 41 nA for the
proposed photoreceptor and about 185 nA for Delbruck’s statically-
biased photoreceptor (Fig. 4.20).
The maximum acceptable DC input level may be determined by
whether the PR can operate without saturating or becoming unstable.
In this case, all PRs can accept inputs exceeding 100 µA (remember
that an AGC was employed for the statically-biased PR). An alternat-
ive option would be to determine the maximum DC level by the accept-
able inaccuracy in the measurement of the contrast value caused by the
transistor approaching the moderate inversion region (see Fig. 4.17).
For example, if a deviation of ±10% from an average constant value for
the contrast is acceptable then Delbruck’s PRs can function satisfact-
orily in the range of approximately 3.5 nA-1 µA, whereas the proposed
PR in a range of 0.2 nA-1 µA. Note that, if the accuracy specifications
are tight, they may pose a limit on the lowest acceptable signal as well,
stricter from the one imposed by the speed constraints. For such an
application, one may want to employ a bipolar transistor for the con-
version instead.
For the above derived upper and lower input limits, then Delbruck’s
statically-biased photoreceptor would have a useful dynamic range
(DR) of 14.7 dB, whereas the proposed photoreceptor a DR of 27.7 dB.
For easier reference some of the simulation results discussed in this
section are gathered in Table 4.2.
4.4.2 The power-stability trade-off (M > 1)
The simulation results presented above show that the proposed photo-
receptor exhibits a better performance than the ones proposed by Del-
218
Table 4.2: Summary of photoreceptor simulation results (M = 1)
Delbruck’sstatically-
biased
Delbruck’sself-biased
Proposed
VDD/VSS [V] 3/0
CIN [nF] 1
Mirror Ratio (M) 1
AGC Yes No No
BW a[kHz] 4.68 3.31 0.74
Qa 8.75 6.54 0.54
2% settling timea [µs] 3460 7080 831
In-band integratedvoltage noisea [µV]
4150 3565 171
Minimum detectablecontrasta [%]
13.3 4.9 0.51
Indicative DRb [dB] 14.7 7.6 27.7
Saturation-free DR [dB] >100
DC supply currenta [nA] 20
a At IinDC= 10 nA.
b Maximum settling time of 200 µs and AC gain variation of 10%. See text.
bruck almost in every performance measure. This comparison is fair, if
the same (low) power specifications are imposed on all PRs. However,
it conceals an important design feature of Delbruck’s photoreceptors.
As mentioned several times before, they provide the option to trade
power consumption for input-output pole separation, and thus, less
peaking and smaller settling times. This is not possible in the MOS
implementation of the proposed photoreceptor (see section 4.3.1).
Hence in Table 4.3, some indicative simulation results for Delbruck’s
photoreceptors with different mirror ratios are provided as well.
It is clear that a significant speed-up is possible at the expense of
extra static power consumption. However, the speed of the self-biased
receptor remains severely compromised due to the large compensation
capacitor used. Note also that due to the increased bandwidth, the
in-band noise performance remains significantly worse than the one of
219
Table 4.3: Indicative simulation results for Delbruck’s photoreceptors with M > 1
Delbruckstatically-
biased
Delbruckself-biased
Delbruckstatically-
biased
Delbruckself-biased
VDD/VSS [V] 3/0
CIN [nF] 1
Mirror Ratio (M) 10 100
BW a [kHz] 14.4 8.6 37 10.6
Qa 3.2 2.3 1.1 1
2% settling timea [µs] 411 6910 48 5286
In-band integratedvoltage noisea [µV]
4155 2660 3040 884
Minimum detectablecontrasta [%]
13.4 3.6 9.9 1.2
DC supply currenta [nA] 110 1010a At IinDC
= 10 nA
the proposed photoreceptor.
220
4.5 Measured results for the proposed
photoreceptor.
The proposed PR was fabricated in the AMS 0.35 µm 4-metal-2-poly
technology. A microphotograph of the fabricated PR, together with
the testing structures is shown in Fig. 4.25. All the parameters were
chosen to be the same as in the simulations (Table 4.1), with the ex-
ception of M3 and M4, which were sized 12.5/1 µm to push the mirror
pole to higher frequencies and enable stable operation for larger input
currents. However, the presence of non-idealities in the experimental
setup resulted in a different value for some of the other parameters as
well.
Due to cable and instrument output capacitances, a discrete capa-
Table 4.4: Design parameters for the fabricated proposed PR
VDD [V] 3
VSS [V] 0
M1 −M2 [µm] 100 / 1
M3 −M4 [µm] 12.5 / 1
M6 −M7 [µm] 60 / 0.35
Cd1 [pF] 2.3
Cd2 [fF] 180
Cin [nF] 1.4
Vcasc [V] 2.2
Fig. 4.25: Microphotograph of the fabricated proposed PR
221
101
102
103
104
105
−110
−100
−90
−80
−70
−60
−50
−40
Frequency [Hz]
Amplitude[dBVp]
1 nA10 nA100 nA1 µA
Fig. 4.26: Measured frequency response of the proposed PR for various input DClevels (10% input contrast, reference resistance 1 Ω). The dashed linesrepresent the corresponding curves calculated from Spectre simulations
citance Cin of 1 nF is increased to 1.4 nF in the experimental setup.
Furthermore, parasitic capacitances increase the effective value of ca-
pacitance Cd2. Using a parasitic extraction tool (Assura), the real value
of Cd2 is estimated to be 180 fF. For ease of reference, the parameters
for the measured setup are summarized in Table 4.4.
The frequency response was measured using an SRS785 spectrum
analyser together with a transconductance amplifier very similar to
the one in [152] for voltage-to-current conversion at the input. An
input signal with 10% contrast was used. Fig. 4.26 shows the closed-
loop frequency response of the PR. The response scales almost linearly
with the photocurrent DC level, and no peaking is introduced for cur-
rent levels up to a few µA, as the non-dominant pole moves together
with the dominant one (see section 4.3.1). For higher currents the
assumption of gm1 = gm2 starts to be compromised, introducing some
small peaking (see discussion in section 4.3.1). For currents 1 nA-1 µA,
where no peaking exists, the PR bandwidth is measured to be 10.5-12
times larger than the frequency of the input pole 1/2πτ , which is close
to the value of 13.8 predicted by (4.42) for small signals.
To measure the settling time, a pulsed current from a Keithley 6221
222
100
101
102
103
104
10−8
10−6
10−4
10−2
100
IINDC[nA]
Tim
e[s]
Rise timeSettling time3.91(Cin/gm2)Simulation
Fig. 4.27: Measured 2% PR settling time vs DC photocurrent. The PR input isa square wave with amplitude 10% of its DC level, i.e. a signal with10% contrast. The green dashed curves represent corresponding Spectresimulation results.The black dashed line depicts the theoretical (small-signal) 2% settling time for an open-loop system with one pole equal tothe input pole (1/τ) of the PR. An up to nine-fold reduction in settlingtime can be observed
current source was fed to the input and the output was measured via
a fast oscilloscope. Fig. 4.27 shows the measured settling time of the
fabricated PR for different input photocurrent levels. The settling
time of the PR scales with the input DC level as expected and has
a mean value of 0.49τ for input current values between 10 nA and
1 µA. The deviations for higher currents are attributed to limitations
in the settling time of the current source output, as well as the peaking
(Fig. 4.26) which increases the settling time.
The meticulous reader might notice that the measured settling time
is larger than the one simulated in Fig. 4.20. This is because the
proposed PR was optimized for an input capacitance of 1 nF and a
capacitance Cd2 of 100 fF. As discussed in the beginning of the section,
these are increased to 1.4 nF and 180 fF in the experimental setup. The
former due to cable and instrument output capacitances and the latter
due to parasitic on-chip capacitances. Fig. 4.28 illustrates how these
non-idealities affect the settling time through simulation results.
223
100
101
102
103
104
10−6
10−5
10−4
10−3
10−2
10−1
IINDC[nA]
Tim
e[s]
Sim − Cin
=1nF
Sim − Cin
=1.4nF − no parasit.
Sim − Cin
=1.4nF + parasit.
Measured
Fig. 4.28: Changes in the 2% settling time of the proposed PR due to non-idealities.The parasitic capacitances from connection cables and the Keithley out-put, amounting to 400 fF have the most significant effect. The parasitic80 fF capacitance in parallel to Cd2 also slightly increases the settlingtime
The noise response of the PR for three values of the input photo-
current is shown in Fig. 4.29. The peaking effect induced by the zeros
in (4.47)-(4.49) as discussed in section 4.3.2 is evident, along with the
scaling of the noise power density with the input photocurrent. The
deviations between simulation and measured results for low frequencies
are due to flicker noise of the power supply used in the measurements
(TTi PL320). Note that because this noise is coupled to the source of
M3, it is transferred directly to the output of the photoreceptor.
As discussed in section 4.3.1, matching is crucial for the successful
operation of the proposed PR, as it may limit the achievable input pole
speed-up. To examine the effect of mismatch and process variations
the frequency responses of 18 chips are superimposed in Fig. 4.30. The
results indicate good matching across chips.
The transient response of the proposed PR is depicted in Fig. 4.31.
The PR can respond to input signals with DC levels spanning over 5
orders of magnitude without saturating. A characteristic property of
logarithmic PRs, the gain adaptation with the input DC level so that
an input of a constant contrast results at the same output irrespective
224
100
101
102
103
104
105
−150
−140
−130
−120
−110
−100
−90
Frequency [Hz]
NoisePSD
[dBV/√Hz]
1 nA10 nA100 nA1 µA
Fig. 4.29: Measured and simulated noise responses for various input photocur-rent levels (reference resistance 1 Ω). The dashed curves correspondto Spectre simulation results of the proposed PR. The difference in lowfrequencies is attributed to flicker noise from the power supply used inthe experiments that is not part of the simulations. The noise peakingcaused by the zeros in (4.47)-(4.49) can be observed
102
103
104
105
−85
−80
−75
−70
−65
−60
−55
−50
−45
Frequency [Hz]
Amplitude[dBVp]
N=18
Fig. 4.30: Superimposed frequency responses of 18 chips (10% input contrast, ref-erence resistance 1 Ω)
225
0 5 10 15 20 25 30 35 402.3
2.4
2.5
2.6
2.7
2.8
2.9
Time [s]
Outputvoltage[V
]
100pA
10uA
Fig. 4.31: Transient response of the proposed PR. The input DC level changes by afactor of 10 every 5.5 s. For each DC level, the square wave correspondsto an input change by a factor of 2 (100% contrast)
of the average level of the input, is clearly visible for smaller input
currents. For larger currents, the transistor carrying out the I-V con-
version (M3) approaches the moderate inversion region of operation
and the AC gain decreases with the input at a slower than linear rate.
To show this effect clearer, the output peak-to-peak amplitude for
an input square wave with an amplitude equal to 10% of the corres-
ponding input DC level is plotted in Fig. 4.32. For input levels larger
than 10 nA the (small-signal) AC gain deviates from the ideal value of
nVT (approximately 3.7 mV/10% change at the input in Fig. 4.32). To
maintain the small-signal gain for larger currents, larger transistors,
preferably NMOS, should be used for the logarithmic I-V conversion.
Note for example that in the simulation results in Fig. 4.17 the pro-
posed PR exhibits an AC gain less dependent to the input DC level,
due to the use of a transistor M3 with size 400/1 µm, compared to
12.5/1 µm for the fabricated PR.
Based on these results, the proposed PR exhibits an input dynamic
range in excess of 100 dB, with a saturation-free output. This input
DR is limited to two decades if an output variation less than 10% is
226
100
101
102
103
104
3
4
5
6
7
8
9
IinDC[nA]
Outputpulseamplitude[m
V]
Fig. 4.32: Photoreceptor AC output amplitude vs input signal level. The inputis a square wave with an amplitude 10% of its average DC level (10%contrast)
Table 4.5: Measured results
IIN DC [nA] 1 10 100 1000
3-dB Bandwidth [Hz] 53 466 5171 57384
Speed-up (small-signal)a 11.9 10.4 11.6 12.9
2% settling time [µs] 21600 2031 223 26.9
Speed-up (10% contrast) 8.59 9.12 8.3 6.9
Integr. in-band output noise [µV] 83 72.5 77.1 155.9
DRb- output not saturated [dB] >100dB
DR - output 10% accuracyc[dB] >40dB
Area (total/cap. divider) [µm2] 12800 / 7000a Bandwidth/2πτb Dynamic Rangec For a constant input contrast, the output does not deviate more than
10% from the measured value for a low input photocurrent (i.e. for weakinversion operation) when the average input level increases.
required for a constant contrast input.
For ease of reference the measured results are summarized in Table
4.5.
227
4.6 Photoreceptor comparison and pulse
oximetry
To conclude this chapter we will summarize the relative advantages
and disadvantages of the three presented photoreceptors concentrating
mainly on their suitability for practical use.
As has been discussed, a significant limitation of TIAs with logar-
ithmic response is the slow speed for low input photocurrents. Del-
bruck’s statically-biased photoreceptor without a capacitive divider,
can offer the fastest operation of the three if the power budget of the
application is not too tight. If only one photoreceptor is required and
response speed is to be optimized, the difference between 10 nA and
100 nA supply current is probably not significant. However, if a few
photoreceptors are used, for example in an array, then this difference
starts to become considerable, and the proposed photoreceptor could
be a more appealing option.
The main disadvantage of Delbruck’s photoreceptor is the need for
an AGC in applications where large input dynamic range is required.
In the absence of an AGC, the photoreceptor becomes either unstable
for large input currents, or has an excessive power dissipation for small
input currents (see section 4.1.2). It is in these applications where the
self-biased photoreceptors are useful, since they incorporate the AGC.
Between the two self-biased photoreceptors, the proposed one exhibits
a much faster response. The downside is that it can become unstable
for very large photocurrents if large transistors are used. This can occur
because it is not possible to move the non-dominant system poles to
higher frequencies at will (as can be done by increasing M in Delbruck’s
photoreceptors) and because mismatch can become a limitation when
the transistors enter the moderate inversion region.
Implementing an AGC circuit to achieve a large DR for Deblruck’s
statically-biased PR would increase the photoreceptor area. An AGC
mechanism typically employs a large capacitance to estimate the input
signal level through averaging and adjust the biasing or some other
228
parameter of the controlled system. How much of a problem this area
overhead is depends on the application. If a single PR is used, then the
area overhead of an AGC circuit will probably be very large, especially
if the input signal has low frequency content. However, if an array of
PRs is used, then it is likely that a single AGC circuit can be used for
all of them, hence resulting in a small area overhead per PR.[150] is
an example where Delbruck’s self-biased PR has been used in such a
way before, employing the biasing mirror (M3-M4) for groups of PRs.
The proposed PR does not require a capacitance as large as Del-
bruck’s self-biased PR to implement the AGC mechanism. However,
in the proposed form it requires implementing a capacitive divider per
photoreceptor, which results in increased area. As has been discussed,
alternative versions of the proposed PR could alleviate this problem by
using a source follower or a resistive divider in their positive feedback
loop. However, in that case, the speed performance will most probably
be similar to that of Delbruck’s statically-biased photoreceptor, as the
open loop gain could not be easily set to a low value.
An important aspect of Delbruck’s photoreceptors that has not been
considered in great detail in this chapter is the ability to use a fre-
quency-dependent voltage divider in the feedback loop to achieve a
band-pass input-output characteristic and an AC gain larger thannVTIinDC
. These are invaluable characteristics for logarithmic PRs, since
their AC gain (without a capacitive divider) is relatively low and they
exhibit high variability in their output DC level for a given input (com-
monly termed fixed pattern noise – FPN [144,150,153–155]) due to their
WI operation. The proposed PR does not have these advantages. How-
ever, a band-pass filter following the PR can achieve exactly the same
results. Recent implementations of Delbruck’s PR have used such a
configuration instead of including a capacitive divider[150].
The disadvantage of including the capacitive divider proposed by
Delbruck[133] – or, equivalently, a band-pass filter following the PR –
is that it results in increased settling times. Even though the proposed
pseudo-resistor (M5) will improve the settling behaviour for large input
229
steps, the settling times will still be higher than in the absence of a
capacitive divider. This is a price that has to be paid to acquire the
benefit of low-frequency signal rejection.
An important clarification must be made at this point. A longer
settling time does not imply that the photoreceptor’s output cannot
be used. Consider for example the case of pulse oximetry. Because
the photoreceptor input is modulated in a controlled manner, it is
arguably still possible to measure changes in the output accurately.
If the output is always measured at a short and fixed delay after a
LED is turned ON, then the difference in the values measured at two
different instances will be proportional to the difference in the input
values when the LED was turned ON. Even though the system does
not settle, if it is linear its output will still be proportional to the input.
To explain this better, consider the response of a 1st order TIA
system with a gain of R and a dominant time constant of τ to a step
current input of i(0), measured t1 seconds after the step:
vout(t1) = R× i(0)× (1− e− t1τ ) (4.50)
If t1 and R are always the same, then the measured vout(t1) is propor-
tional to the step value, provided that the input is relatively constant
for the interval between the start of the step and when the measure-
ment is taken.
A PR with a capacitive divider is also useful in applications where
detection of a change at the output is of importance, rather than its
exact value. Pixel arrays operating in continuous time based on event
detection are an example of such an application[150,153].
Considering noise, the proposed photoreceptor has a better perform-
ance, if the total in-band noise is taken into account. However, this
advantage is not that significant if the processed signal has a narrower
bandwidth than the photoreceptor, since then the noise would be in-
tegrated over the same bandwidth for both photoreceptors and their
performance would be similar.
230
Table 4.6: Comparison of photoreceptors’ features
Delbruckstatically-
biased
Delbruckself-
biasedProposed
AGC required forlarge DR
Yes No No
Off-chip capacitor No Yes No
Trade power forstability/speed
Possible PossibleNot
possible
SettlingSpeed
Voltagedivider
Low Low -
Novoltagedivider
High Low High
Mirrorratio > 1
Very high Low -
Different DC/AC gain(bandpass transfer
function)Possible Possible
Notpossiblea
Matching important(for PR stability)
No No Yes
In-band noise Moderate Moderate Low
On-chip capacitorsrequired
No No Yesb
a Possible with a band-pass filter following the PR.b Not in all the versions of the proposed PR.
The basic features of the different photoreceptors are summarized in
Table 4.6.
How do all these relate to pulse oximetry? As analysed in [93], a
simple PR, without a capacitive divider, does not have a high enough
gain to satisfy the application requirements. This is especially so if the
noise of possibly integrated filters following the PR is considered, as
we saw in chapter 2. This is the reason the proposed PR has not been
opted for in the presented oximeter front-end. However, a PR incorpor-
ating the capacitive divider could satisfy the application requirements,
especially if its output is sampled after a noise-antialiasing filter (see
chapter 2).
231
5 Conclusions and future
work
5.1 Summary
The main goal of this work was to research the design of a low-power,
fully integrated, accurate pulse oximeter front-end. Such a front-end
can improve the level of provided healthcare by facilitating the fabric-
ation of portable pulse oximeters with increased accuracy or by being
integrated in sensing platforms providing continuous monitoring, re-
cording and transmission of a person’s vital signals.
Most commercially available pulse oximeters exhibit power consump-
tions of several mW. If portability is a requirement, this renders them
poor candidates for integration in such platforms or for use with emer-
ging, potentially more accurate oxygen saturation measurement tech-
niques employing multiple light wavelengths (chapter 1).
The power consumption of a pulse oximeter is strongly related to the
signal-to-noise ratio with which the front-end can measure the photo-
plethysmographic signals involved in pulse oximetry. Hence, this work
first attempted to systematically derive an SNR specification by com-
bining mathematical models of an oximeter’s operation with commonly
used clinical oximeter specifications (section 2.2).
Using a simplified Beer-Lambert model it was estimated that an SNR
of around 30 dB is required at an SpO2 value of 70%, to achieve the
typically specified smaller than 2% error in the measurement of oxygen
saturations between 70 and 100%. This SNR requirement becomes
stricter if it is specified at a higher, normal oxygen saturation. A value
232
of 39 dB at a normal oxygen saturation was identified as desirable from
the above models and measurements carried out on 13 volunteers.
Achieving high SNR values becomes particularly challenging in a
low-power, fully-integrated front-end. It was shown that the modula-
tion of the emitted light signal with small duty cycles to save power
spreads the useful signal power across a wide frequency band. As a res-
ult, a broadband transimpedance amplifier is required at the detector.
However, high bandwidth, low-power consumption and stability of the
amplifier are conflicting requirements, requiring careful optimization
of the employed duty cycle to strike a balance between the power con-
sumed at the LEDs and that consumed in the amplifier (section 2.3).
The spread of power across a wide frequency band also restricts the
achievable SNR at the front-end, in different ways for analogue and
sampled front-end implementations. In the former, only the signal
power present at low frequencies (1-5 Hz) contributes to the measure-
ment, resulting in a drastic degradation of the SNR for low duty cycles.
The requirement for a fully integrated implementation limits the SNR
even further, since the noise performance of any filters, which need to
be part of an analogue front-end, is limited by the available area for
integrated capacitors (section 2.4.1).
Sampled implementations avoid the problem of reduced signal power,
as sampling results in a continuous signal with the same peak amp-
litude as the modulated signal. Yet, since this is effectively a result
of signal aliasing, it is accompanied by an increase in the measured
noise, due to the noise being sampled at sub-Nyquist frequencies as
well. This problem is exacerbated by the fact that a wideband TIA is
used as the first block–to be able to detect the broadband modulated
signal–and that, for the large photodiodes commonly encountered in
a PO, a significant noise-peaking effect occurs at the output of the
TIA. The latter leads to a wide noise bandwidth, larger than that of
the signal, and can result in the sampled TIA noise limiting the SNR
performance (section 2.4.2).
To combat this problem, this work proposed employing a switched
233
integrator after the TIA to act both as a gain stage and a noise-limiting
filter. Additionally, a switched biasing scheme for the TIA can lower its
noise contribution without increasing its power consumption. Through
numerical simulations it was shown that such an approach can lead to
a significant increase in the achieved SNR for low LED duty cycles
compared to previous oximeter designs (section 2.5.5).
Based on these observations, two new PO front-ends were presented
and analysed in detail (section 2.5). Apart from the switched integ-
rator, they also incorporate a novel, fast control loop to regulate the
light emitted by the LEDs, so that the detected signal has the desired
average level, irrespective of variations at the oximeter probe or the
probed tissue. The loop comprises a state-of-the-art very low-leakage
sample-and-hold and the same analogue blocks used in the first stages
of the front-end, leading to increased matching between measurement
channels and between calibration and measurement. Precisely con-
trolling the average detected signal level enables using the switched
integrator as a high-pass filter with a potentially large (>20 MΩ), digit-
ally programmable, on-chip transimpedance gain to selectively amplify
the AC components of interest of the measured PPG signal. Further-
more, it eliminates the need to extract the DC level of the measured
signal, which is required in calculating the oxygen saturation (sec-
tion 2.5.6).
A PO front-end employing the proposed improvements was designed
and fabricated in the commercially available AMS 0.35 µm technology
(section 2.6). The final chip incorporates digital circuits to allow ex-
ternal programming of a wide range of parameters of the system’s
operation. Furthermore, it can interface directly to commercial PO
sensors and to a personal computer via an A/D converter, an FPGA
board and a USB interface.
The performance of the fabricated chip was evaluated by means
of extensive electrical and physiological measurements on volunteers
(chapter 3). It was estimated that it can achieve the required SNR of
39 dB, with a power consumption lower than 1 mW for the whole front-
234
end and around 300 µW for both of the oximeters’ LEDs. This power
consumption is more than 4 times lower than that of the majority of
previously published pulse oximeters (section 3.7).
The available programmability was exploited to show the influence of
various system parameters on its performance and conclude that there
are optimal operating regions for low power, high SNR or low LED
current (section 3.4.2). Electrical measurements were used to demon-
strate the high accuracy of the proposed control loop (section 3.6), as
well as, the excellent matching achieved between the front-end’s two
measurement channels (section 3.5).
On the other hand, the measurements highlighted weaknesses of the
proposed system, mainly in terms of noise performance. Noise from
the external voltage sources used to reverse-bias the probe photodiode
limited the obtainable SNR for low duty cycles, while noise from refer-
ence generation circuits lead to the SNR saturating for high detected
current levels (section 3.4.2). Fortunately, these problems can be alle-
viated in future designs via a more noise-efficient design, or, perhaps
more appropriately, using a fully-differential implementation.
The author believes that future versions of the front-end will be
realistically able to achieve power consumptions of less than 100 µW
per LED and less than 300 µW for the whole front-end.
Finally, in the attempt to design a power-efficient TIA with fast
settling for the oximeter front-end, this work also investigated certain
logarithmic photoreceptor topologies. The photoreceptors that were
proposed in the pioneering work of Delbruck et al.[127,133,145] were
examined in great detail, providing new, useful insights into their op-
eration (chapter 4).
A novel photoreceptor/TIA topology, employing positive feedback to
speed-up the slow pole generated by the photodiode output capacit-
ance, has been conceived and compared to Delbruck’s photoreceptors
(section 4.3.1). Simulation results demonstrated that the proposed
TIA can achieve faster settling times than Delbruck’s PRs, when cur-
rent is sensed from sources with large output capacitances and very
235
low-power operation and wide input dynamic range are of ultimate
importance (section 4.4).
A version of the proposed PR was fabricated using the AMS 0.35 µm
technology and its operation verified through measurements (section
4.5). The results show good agreement with the simulated perform-
ance, demonstrating that the proposed PR can speed up a slow pole
originating from a 1.4 nF capacitance by an average of 11 times, with
a supply current only twice as high as the input current.
The positive feedback techniques utilized in the proposed photore-
ceptor circuit can be employed in a wide variety of current-sensing
interfaces, where the input current source is characterized by a wide
output range and a large output capacitance. In such setups they can
provide a moderately sped-up current measurement with a very low
power consumption.
5.2 Future work
The measured results on the proposed PR demonstrated the feasibility
of the proposed positive feedback scheme. However, the PR occupies
a large area and offers only a moderate speed-up of one order of mag-
nitude. Potential paths for future development include:
• Preliminary simulation results show that the PR area can be
significantly reduced if it is not imperative that the PR has a
constant response to a constant input contrast across a wide
range of input DC levels. However, the effect of this reduction
on matching (and hence on circuit stability) should be carefully
considered.
• The alternative photoreceptor versions proposed here should be
considered in more detail, as they offer the advantage of a greatly
reduced area. The version employing a source follower is more
promising. A way of tuning the feedback gain of this imple-
mentation to a desired value, would allow using it without large
236
peaking at the output.
• Versions of the PR with reduced area could be used in pixel
arrays that attempt to process quickly changing visual scenes
while consuming low power and generating a small amount of
output data (e.g. [150,153,156,157]). However, the proposed PR
versions still have a low gain and exhibit a large variability in
their output DC level, due to their weak inversion operation.
An area-efficient mechanism to amplify temporal changes and
reject the problematic DC component is required, similar to the
capacitive divider in Delbruck’s PRs, or the capacitive-feedback
amplifier employed in later versions[150].
• The inability to spend power to move all the circuit’s parasitic
poles to higher frequencies is a limitation of the proposed PR.
The extend to which this constraint limits its practical use should
be evaluated and possible solutions investigated.
• Potential applications of a reduced-area version of the proposed
PR as a compact, low-power first stage in current-sensing inter-
faces should be considered, whether it is employed as a trans-
impedance amplifier or as the input stage of a current conveyor
(e.g. [146,148,158,159]).
The performance of the proposed low-power pulse oximeter front-
end can be improved through a number of relatively straightforward
modifications:
• A fully differential version of the proposed front-end can reduce
noise from the reference generation circuits or external noise
sources. This will allow operation under even lower duty cycles
and LED power consumptions (section 3.4.2).
• All the individual OTAs and the reference generation circuits can
be optimized to be more area-, noise- and power-efficient.
237
• The performance of the fabricated front-end with a transmittance
probe should be evaluated. This could lead to operation with
lower peak LED currents (section 3.8).
• It can be investigated whether the first two blocks of the front-
end (linear TIA and SI) can be substituted by just a switched
integrator. The high-pass filtering operation can be performed in
the current domain by subtracting a DC current from the detec-
ted signal before it enters the SI. Preliminary simulation results
show that this is possible and can reduce the chip area (but not
necessarily improve the noise performance). However, the set-
tling performance of the system should be carefully considered.
• The capability for ambient light measurement can be included
in the system, especially if it is to be used under lower than the
currently detected photocurrents.
• The LED light control scheme can be expanded to automatic-
ally detect and perform calibrations at non-regular time inter-
vals. This could be triggered by simple level detection circuits,
for example to avoid saturations in the signal processing chain,
or it could be controlled by more elaborate signal processing al-
gorithms to ensure an adequate signal quality at the detector.
• Extending this concept, a digitally configurable front-end could
change parameters of its operation (like the integration time or
the sampling frequency) to achieve more power-efficient opera-
tion (see section 3.4.2). Compressive sensing techniques could
also be employed for this purpose[123].
• The front-end can be turned into a fully operational pulse ox-
imeter with the inclusion of a low-power on-chip A/D converter
and a microprocessor. An on-chip radio can also be employed
to transmit the measured information to a data collection sta-
tion. The development of signal processing algorithms, including
238
a strategy to handle motion artefacts, would be an integral step
in such an endeavour.
These small changes will improve the functionality or the system
performance, but will not provide huge gains in power or achievable
measurement accuracy. These can only be achieved through better
understanding and more fundamental redesigning of the pulse oximeter
system and measurement.
The oximeter sensor is clearly the most critical component of the
system and a lot of research work, both in industry and academia, has
already been undertaken in improving it (chapter 1). The gradually
emerging sensors employing multiple light wavelengths are the most
radical departure from the pulse oximeter as it has been employed the
last decades, and have, to the author’s opinion, the greater potential
for improving the accuracy of pulse oximeters. At the same time, they
might allow spectrophotometric measurements of other molecules of
medical interest (e.g. glucose).
More research is also required into reflectance mode oximeter sensors
under tightly controlled experimental setups, as there is currently con-
flicting literature regarding their efficiency in comparison to transmit-
tance mode sensors (section 1.2.1). In particular, the claim that re-
flectance sensors with large area can have the same signal output as
transmittance sensors but with lower power consumption[72,73] needs
to be tested more thoroughly.
An expansion of that idea, that time and finances did not allow
the author to pursue, is employing arrays of multiple light detecting
elements–an idea that lately started being investigated by the industry
as well[80,160]. This would allow for example to take advantage or
the unavoidably non-uniform distribution of backscattered light. Only
some of the detectors, corresponding to areas where the backscattered
light exhibits high quality or SNR, would be connected to the measur-
ing front-end, thus limiting both the capacitance and the dark current
noise. A ”profiling” action could allow determining these preferential
239
detectors for each individual upon starting the oximeter operation.
In yet another step, such arrays could be employed to provide inform-
ation not only on temporal but also spatial variability of parameters
related to the blood flow or composition. Such devices might not be
useful in the context of oxygen saturation measurement, but could for
example be used to obtain information about a patient’s circulatory
system and detect related problems.
The design of more accurate (and potentially power-efficient) sensors
is tightly coupled with the development of more refined models describ-
ing the operation of a pulse oximeter. Despite the more than 30 year
old history of pulse oximeters, developing a model describing very ac-
curately the light-tissue interaction is still an open problem. Even
though the accurate prediction of a pulse oximeter response for any
given individual will probably remain an elusive goal, the development
of multi-parametric models that could be adapted to each individual
at the time of measurement is certainly worth investigating (see for
example [26,161]).
Finally, more, better characterized and publicly available data of
oxygen saturation and PPG signal measurements with pulse oximeters
are required. More specifically, systematic research is required to
identify and possibly quantify the characteristics of the measured PPG
signal that are crucial for an accurate SpO2 measurement. Such efforts
will allow the engineering community to both better assess the current
state-of-the-art, and identify potential paths forward. This work has
identified the SNR at the output of the electronic front-end as one such
characteristic that should always be considered. The conventional com-
parison to a gold standard (co-oximeter) used today to evaluate pulse
oximeters, is a clinically very meaningful test, but treats the system at
a very high level that avoids identifying specific imperfections.
The author is of course aware that some of the above are much
easier stated as a wishlist than realized, especially in an physiological
signal measurement characterized by large variability and uncertainty.
However, systematic investigation of all options with openly available
240
data and conclusions is the only efficient way to establish whether the
limits in achievable pulse oximeter performance have been reached, or
whether further improvements are possible and worth pursuing.
241
Contributions
The original contributions of this work include:
• A research of the state-of-the-art of pulse oximeter electronic
front-ends, focusing particularly on low-power operation.
• An improved systematic derivation of SNR specifications for a
pulse oximeter front-end.
• The identification, modelling and detailed explanation of lim-
its in low-power pulse oximeter front-end performance, including
stability, power and noise trade-offs, in possibly fully integrated
analogue and sampled front-end implementations.
• Two novel pulse oximeter designs, which are, to the best of the
author’s knowledge, the first ever reported that can be fully in-
tegrated and achieve amongst the lowest power consumptions re-
ported to date while maintaining an adequate SNR in the PPG
signal measurement.
• A fabricated pulse oximeter front-end with a high degree of di-
gital programmability accompanied by very detailed electrical
and physiological measurements characterizing its operation and
providing useful insights for possible future improvements.
• A novel, active, self-biased logarithmic transimpedance amplifier
suitable for applications where a fast measurement is required
from current inputs with large output capacitances under very
low power consumption.
242
• An in-depth comparative analysis of previous logarithmic photo-
receptor designs providing new insights into their operation.
243
Publications
• K. N. Glaros and E. M. Drakakis. Trade-offs for low power integrated
pulse oximeters. In IEEE Biomed. Circuits Syst. Conf., pages 245–
248, 2009.
• K. N. Glaros and E. M. Drakakis. Self-biased logarithmic photore-
ceptor with low settling time. IEEE Trans. Circuits Syst. I, 2012.
accepted for publication.
• K. N. Glaros and E. M. Drakakis. A sub-mW fully-integrated pulse
oximeter front-end. IEEE Trans. Biomed. Circuits Syst., 2012.
submitted for publication.
244
Abbreviations and symbols
α Average light attenuation by the tissue
Λ Ratio-of-ratios of AC/DC signal components, see equation (1.11)
c AC/DC component ratio (contrast), see equation (2.1)
Cd Photodiode output capacitance
D Duty cycle
fs Sampling/LED switching frequency
Iref Desired average detected photocurrent at the input of a PO
front-end
tint Switched integrator integration time
ADC Analog-to-Digital (A/D) converter
AGC Automatic gain control
ASIC Application specific integrated circuit
CFA Capacitive feedback amplifier
CSI PO front-end employing a Current-mode Switched Integrator
DR Dynamic range
FSM Finite state machine
GBW Gain-bandwidth product
245
Hb2 Reduced hemoglobin
HbO2 Oxygenated hemoglobin
HPF High-pass filter
IC Integrated circuit
IR Infrared
LED Light emitting diode
NBW Noise bandwidth
OTA Operational transconductance amplifier
PCB Printed circuit board
PO Pulse oximeter
PPG Photoplethysmographic
PR Photoreceptor
PSD Power spectral density
R Red
SpO2 Arterial oxygen saturation measured by a pulse oximeter, see
equation (1.2)
S/H Sample-and-hold
SI Switched integrator
SNR Signal-to-noise-ratio
SPI Serial to parallel interface
TIA Transimpedance amplifier
VSI PO front-end employing a Voltage-mode Switched Integrator
WI Weak inversion
246
References
[1] A. C. W. Wong, D. McDonagh, G. Kathiresan, O. C. Omeni, O. El-Jamaly,
T. C. K. Chan, P. Paddan, and A. J. Burdett. A 1V, micropower system-
on-chip for vital-sign monitoring in wireless body sensor networks. In Dig.
Tech. Papers IEEE Int. Solid-State Circuits Conf., pages 138–602, 2008. 18,
50, 172
[2] R. Matthews, N.J. McDonald, P. Hervieux, P.J. Turner, and M.A. Steindorf.
A wearable physiological sensor suite for unobtrusive monitoring of physiolo-
gical and cognitive state. In Annu. Int. Conf. IEEE Eng. Med.-Biol. Soc.,
pages 5276–5281, Aug. 2007. 18
[3] E. Jovanov, C. Poon, G.Z. Yang, and YT Zhang. Guest editorial body sensor
networks: From theory to emerging applications. IEEE Trans. Inf. Technol.
Biomed., 13(6):859–863, 2009. 18
[4] K. Wac, R. Bults, B. van Beijnum, I. Widya, V. Jones, D. Konstantas,
M. Vollenbroek-Hutten, and H. Hermens. Mobile patient monitoring: The
mobihealth system. In Annu. Int. Conf. IEEE Eng. Med.-Biol. Soc., pages
1238 –1241, Sept. 2009. 18
[5] J. Yoo, Long Yan, Seulki Lee, Yongsang Kim, and Hoi-Jun Yoo. A 5.2
mW self-configured wearable body sensor network controller and a 12 µW
wirelessly powered sensor for a continuous health monitoring system. IEEE
J. Solid-State Circuits, 45(1):178–188, January 2010. 18
[6] P.S. Pandian, K. Mohanavelu, K.P. Safeer, T.M. Kotresh, D.T. Shakunthala,
Parvati Gopal, and V.C. Padaki. Smart vest: Wearable multi-parameter
remote physiological monitoring system. Med. Eng. Phys., 30(4):466 – 477,
2008. 18
[7] M.G. Iobbi, A.K. Simonds, and R.J. Dickinson. Oximetry feedback flow
control simulation for oxygen therapy. J. Clin. Monitor. Comp., 21(2):115–
123, 2007. 18
[8] Z. Zhu, R.K. Barnette, K.M. Fussell, R.M. Rodriguez, A. Canonico, and
R.W. Light. Continuous oxygen monitoring–a better way to prescribe long-
term oxygen therapy. Intens. Care Med., 99(11):1386–1392, 2005. 18
247
[9] N. Netzer, A.H. Eliasson, C. Netzer, and D.A. Kristo. Overnight pulse oxi-
metry for sleep-disordered breathing in adults. Chest, 120(2):625, 2001. 18
[10] J. Allen. Photoplethysmography and its application in clinical physiological
measurement. Physiol. Meas., 28(3):1–11, 2007. 18, 32
[11] John G. Webster. Design of pulse oximeters. Medical science series. Institute
of Physics Pub., Bristol; Philadelphia, 1997. 19, 20, 22, 23, 25, 26, 27, 28,
30, 32, 36, 40, 56, 135, 139, 152, 170
[12] M.T. Petterson, V.L. Begnoche, and J.M. Graybeal. The effect of mo-
tion on pulse oximetry and its clinical significance. Anesth. Analg., 105(6S
Suppl):S78, 2007. 19, 30
[13] O. Such. Motion tolerance in wearable sensors-the challenge of motion arti-
fact. Annu. Int. Conf. IEEE Eng. Med.-Biol. Soc., pages 1542–1545, 2007.
19
[14] F. M. Coetzee and Z. Elghazzawi. Noise-resistant pulse oximetry using a
synthetic reference signal. IEEE Trans. Bio-Med. Eng., 47(8):1018–1026,
2000. 19
[15] J.M. Goldman, M.T. Petterson, R.J. Kopotic, and S.J. Barker. Masimo
signal extraction pulse oximetry. J. Clin. Monitor. Comp., 16(7):475–483,
2000. 19, 30
[16] M.J. Hayes and P.R. Smith. A new method for pulse oximetry possessing
inherent insensitivity to artifact. IEEE Trans. Bio-Med. Eng., 48(4):452–461,
2001. 19, 30
[17] P. Renevey, R. Vetter, J. Krauss, P. Celka, and Y. Depeursinge. Wrist-located
pulse detection using IR signals, activity and nonlinear artifact cancellation.
In Annu. Int. Conf. IEEE Eng. Med.-Biol. Soc., volume 3, pages 3030–3033
vol.3, 2001. 19
[18] D.A. Hanna and J.A. Pologe. Method and system for improving photople-
thysmographic analyte measurements by de-weighting motion-contaminated
data, 2002. US Patent 6,408,198. 19
[19] A.M. Terry. Cepstral domain pulse oximetry, 2003. US Patent 6,650,918. 19
[20] M.A. Norris. Wavelet transform of a plethysmographic signal, 2007. US
Patent App. 2007/0004977. 19
[21] R. Dresher. Wearable Forehead Pulse Oximetry: Minimization of Motion
and Pressure Artifacts. Msc thesis, Worcester Polytechnic Institute, 2006.
19, 31, 33
248
[22] J.Y.A. Foo and S.J. Wilson. A computational system to optimise noise rejec-
tion in photoplethysmography signals during motion or poor perfusion states.
Med. Biol. Eng. Comput., 44(1):140–145, 2006. 19, 30
[23] B.S. Kim and S.K. Yoo. Motion artifact reduction in photoplethysmo-
graphy using independent component analysis. IEEE Trans. Bio-Med. Eng.,
53(3):566–568, 2006. 19, 30
[24] K. Ito, M. Yarita, and T. Shibasaki. Method for reducing noise, and pulse
photometer using the method, 2006. US Patent 7,025,728. 19
[25] L. Wang, B.P.L. Lo, and G.Z. Yang. Multichannel reflective PPG earpiece
sensor with passive motion cancellation. IEEE Trans. Biomed. Circuits Syst.,
1(4):235–241, 2007. 19, 30, 33
[26] M. Aoyagi, T. Fuse, N. Kobayashi, K. Machida, and K. Miyasaka. Mul-
tiwavelength pulse oximetry: Theory for the future. Anesth. Analg.,
105(6):S53–S58, 2007. 19, 29, 240
[27] C.R. Baker Jr. Method for enhancing pulse oximetry calculations in the
presence of correlated artifacts, 2008. US Patent 7,392,075. 19
[28] C.R. Baker Jr. Estimation of a physiological parameter using a neural net-
work, 2009. US Patent 2009/0287070. 19
[29] S.J. Barker and J.J. Badal. The measurement of dyshemoglobins and total
hemoglobin by pulse oximetry. Current Opinion in Anesthesiology, 21(6):805,
2008. 19, 20, 29
[30] S.J. Barker and K.K. Tremper. The effect of carbon monoxide inhalation
on pulse oximetry and transcutaneous PO2. Anesthesiology, 66(5):677, 1987.
19, 29
[31] J. M. Schmitt. Simple photon diffusion analysis of the effects of multiple
scattering on pulse oximetry. IEEE Trans. Bio-Med. Eng., 38(12):1194–1203,
1991. 22, 26, 27, 28, 30, 33
[32] P.D. Mannheimer. The light–tissue interaction of pulse oximetry. Anesth.
Analg., 105(6S Suppl):S10, 2007. 22, 27, 33
[33] J. L. Reuss. Multilayer modeling of reflectance pulse oximetry. IEEE Trans.
Bio-Med. Eng., 52(2):153–159, 2005. 22, 27
[34] T. Aoyagi, M. Kishi, K. Yamaguchi, and S. Watanabe. Improvement of the
earpiece oximeter. In Abstracts, 13th Annual Meeting of the Japan Society
of Medical Electronics and Biological Engineering, page 9091, Osaka, Japan,
1974. 27
249
[35] T. Aoyagi. Pulse oximetry: its invention, theory, and future. J. Anesth.,
17(4):259–266, 2003. 27
[36] L. Reynolds, C. Johnson, and A. Ishimaru. Diffuse reflectance from a finite
blood medium: applications to the modeling of fiber optic catheters. Appl.
Optics, 15(9):2059–2067, 1976. 27
[37] S. Takatani and M.D. Graham. Theoretical analysis of diffuse reflectance
from a two-layer tissue model. IEEE Trans. Bio-Med. Eng., (12):656–664,
1979. 27
[38] V. Twersky. Absorption and multiple scattering by biological suspensions.
J. Opt. Soc. Am., 60(8):1084–1093, 1970. 27
[39] R. Graaff, JG Aarnoudse, FFM De Mul, and HW Jentink. Light propagation
parameters for anisotropically scattering media based on a rigorous solution
of the transport equation. Appl. Optics, 28(12):2273–2279, 1989. 27
[40] J.M. Steinke and A.P. Shepherd. Diffusion model of the optical absorbance
of whole blood. J. Opt. Soc. Am. A, 5(6):813–822, 1988. 27
[41] J.P. De Kock and L. Tarassenko. Pulse oximetry: Theoretical and experi-
mental models. Med. Biol. Eng. Comput., 31(3):291–300, 1993. 27
[42] J.M. Schmitt, G.X. Zhou, E.C. Walker, and R.T. Wall. Multilayer model of
photon diffusion in skin. J. Opt. Soc. Am. A, 7(11):2141–2153, 1990. 27
[43] R.F. Bonner, R. Nossal, S. Havlin, and G.H. Weiss. Model for photon mi-
gration in turbid biological media. J. Opt. Soc. Am. A, 4(3):423–432, 1987.
27
[44] R. Graaff, M.H. Koelink, F.F.M. De Mul, W.G. Zijistra, A.C.M. Dassel, and
J.G. Aarnoudse. Condensed Monte Carlo simulations for the description of
light transport. Appl. Optics, 32(4):426–434, 1993. 27
[45] P. D. Mannheimer, J. R. Cascini, M. E. Fein, and S. L. Nierlich. Wavelength
selection for low-saturation pulse oximetry. IEEE Trans. Bio-Med. Eng.,
44(3):148–158, 1997. 28, 30, 33
[46] M.R. Law, J.K. Morris, H.C. Watt, and N.J. Wald. The dose-response re-
lationship between cigarette consumption, biochemical markers and risk of
lung cancer. British journal of cancer, 75(11):1690, 1997. 29
[47] S.J. Barker, J. Curry, D. Redford, and S. Morgan. Measurement of carboxy-
hemoglobin and methemoglobin by pulse oximetry: a human volunteer study.
Anesthesiology, 105(5):892, 2006. 29
250
[48] L.B. Wood and H.H. Asada. Noise cancellation model validation for reduced
motion artifact wearable PPG sensors using MEMS accelerometers. Annu.
Int. Conf. IEEE Eng. Med.-Biol. Soc., pages 3525–3528, 2006. 30
[49] K.A. Reddy, B. George, and V.J. Kumar. Use of fourier series analysis for
motion artifact reduction and data compression of photoplethysmographic
signals. IEEE Trans. Instrum. Meas., 58(5):1706–1711, 2009. 30
[50] M.J. Hayes and P.R. Smith. Artifact reduction in photoplethysmography.
Appl. Optics, 37(31):7437–7446, 1998. 30
[51] Rhee Sokwoo, Yang Boo-Ho, and H. H. Asada. Artifact-resistant power-
efficient design of finger-ring plethysmographic sensors. IEEE Trans. Bio-
Med. Eng., 48(7):795–805, 2001. 30, 33, 44, 49, 78, 172, 173
[52] H.H. Asada, H.H. Jiang, and P. Gibbs. Active noise cancellation using mems
accelerometers for motion-tolerant wearable bio-sensors. Annu. Int. Conf.
IEEE Eng. Med.-Biol. Soc., 1:2157–2160, 2004. 30
[53] P. Wei, R. Guo, J. Zhang, and YT Zhang. A new wristband wearable sensor
using adaptive reduction filter to reduce motion artifact. Int. Conf. Inform.
Tech. Applicat. Biomed., pages 278–281, 2008. 30
[54] S.J. Barker and N.K. Shah. The effects of motion on the performance of
pulse oximeters in volunteers (revised publication). J. Anesth., 86(1):101,
1997. 30
[55] J.W. Severinghaus and S.O. Koh. Effect of anemia on pulse oximeter accuracy
at low saturation. J. Clin. Monitor. Comp., 6(2):85–88, 1990. 31
[56] L.A. Jensen, J.E. Onyskiw, and NGN Prasad. Meta-analysis of arterial
oxygen saturation monitoring by pulse oximetry in adults. Heart Lung,
27(6):387–408, 1998. 31, 32
[57] U.A. Leuenberger, J.C. Hardy, M.D. Herr, K.S. Gray, and L.I. Sinoway.
Hypoxia augments apnea-induced peripheral vasoconstriction in humans. J.
Appl. Physiol., 90(4):1516, 2001. 31, 60
[58] A.P. Lima, P. Beelen, and J. Bakker. Use of a peripheral perfusion index
derived from the pulse oximetry signal as a noninvasive indicator of perfusion.
Crit. Care Med., 30(6):1210, 2002. 31
[59] DB MacLeod, LI Cortinez, JC Keifer, D. Cameron, DR Wright, WD White,
EW Moretti, LR Radulescu, and J. Somma. The desaturation response time
of finger pulse oximeters during mild hypothermia*. Anaesthesia, 60(1):65–
71, 2005. 32
251
[60] SJ Choi, HJ Ahn, MK Yang, CS Kim, WS Sim, JA Kim, JG Kang, JK Kim,
and JY Kang. Comparison of desaturation and resaturation response times
between transmission and reflectance pulse oximeters. Acta Anaesth. Scand.,
54(2):212–217, 2010. 32
[61] JW Severinghaus and JF Kelleher. Recent developments in pulse oximetry.
Anesthesiology, 76(6):1018, 1992. 32
[62] W. New Jr and J.E. Corenman. Calibrated optical oximeter probe, 1987. US
Patent 4,700,708. 33
[63] Y. Mendelson and B. D. Ochs. Noninvasive pulse oximetry utilizing skin
reflectance photoplethysmography. IEEE Trans. Bio-Med. Eng., 35(10):798–
805, 1988. 33
[64] S. Takatani, H. Noda, H. Takano, and T. Akutsu. A miniature hybrid reflec-
tion type optical sensor for measurement of hemoglobin content and oxygen
saturation of whole blood. IEEE Trans. Bio-Med. Eng., 35(3):187–198, 1988.
33
[65] H. Secker. Sensor, apparatus and method for non-invasive measurement of
oxygen saturation, 1994. US Patent 5,285,783. 33
[66] M. Niwa. Pulse oximeter with physical motion sensor, 1991. US Patent
5,025,791. 33
[67] M. Nogawa, T. Kaiwa, and S. Takatani. A novel hybrid reflectance pulse
oximeter sensor with improved linearity and general applicability to various
portions of the body. 4:1858–1861, 1998. 33
[68] P.D. Mannheimer. Isolated layer pulse oximetry, 1998. US Patent 5,746,206.
33
[69] P.D. Mannheimer and M.E. Fein. Non-contact optical monitoring of physiolo-
gical parameters, 1999. US Patent 5,995,856. 33
[70] T. Aoyagi, M. Fuse, S. Takeda, C. Xie, and M. Kanemoto. Probe and ap-
paratus for determining concentration of light-absorbing materials in living
tissue, 2003. US Patent 6,671,526. 33
[71] M. Savage, C. Pujary, and Y. Mendelson. Optimizing power consumption
in the design of a wearable wireless telesensor: comparison of pulse oximeter
modes. In Annu. Proc. IEEE Bioeng. Conf., pages 150–151, 2003. 33
[72] C. J. Pujary. Investigation of photodetector optimization in reducing power
consumption by a noninvasive pulse oximeter sensor. Master’s thesis,
Worcester Polytechnic Institute, 2004. 33, 239
252
[73] P. Branche and Y. Mendelson. Signal quality and power consumption of
a new prototype reflectance pulse oximeter sensor. In Annu. Proc. IEEE
Bioeng. Conf., pages 42–43, 2005. 33, 239
[74] R. G. Haahr, S. Duun, K. Birkelund, P. Raahauge, P. Petersen, H. Dam,
L. Norgaard, and E. V. Thomsen. A novel photodiode for reflectance pulse
oximetry in low-power applications. In Annu. Int. Conf. IEEE Eng. Med.-
Biol. Soc., pages 2350–2353, 2007. 33, 44
[75] Y. Mendelson. A pulse oximeter and a method of its operation, 2002. Patent
WO 02/28274. 33
[76] A. Al-Ali and Y. Abdul-Hafiz. Multiple wavelength sensor interconnect, 2009.
US Patent 7,563,110. 33
[77] J.R. Casciani, P.D. Mannheimer, S.L. Nierlich, and S.J. Ruskewicz. Pulse
oximeter and sensor optimized for low saturation, 2006. U.S. Patent
2006/0211929. 33
[78] K.A. Aronow and J.A. Pologe. Noninvasive medical monitoring instrument
using surface emitting laser devices, 2001. US Patent 6,253,097. 33
[79] G. Hausmann, M.P. O’neil, and P. Mannheimer. System and method for prac-
ticing spectrophotometry using light emitting nanostructure devices, Septem-
ber 20 2006. US Patent App. 20,080/071,154. 33
[80] C.V. Medina. Use of photodetector array to improve efficiency and accuracy
of an optical medical sensor, 2010. US Patent 2010/0331640. 33, 239
[81] E. A. Pelaez and E. R. Villegas. Led power reduction trade-offs for ambulat-
ory pulse oximetry. In Annu. Int. Conf. IEEE Eng. Med.-Biol. Soc., pages
2296–2299, 2007. 34, 37, 48, 53, 55, 64, 173, 175
[82] D. Gorney, S. Taylor, and D. Nelson. Oximeter apparatus, 1989. Patent EP
0316073. 36, 38, 39, 40, 78, 94
[83] R.S. Potratz. Condensed oximeter system with noise reduction software,
1994. US Patent 5,351,685. 36, 38, 39, 40, 78, 94
[84] I. Takahashi. Method and apparatus for accurately measuring the saturated
oxygen in arterial blood by substantially eliminating noise from the meas-
urement signal, 1999. US Patent 5,995,859. 36, 38
[85] M.A. Norris. Pulse oximeter with improved DC and low frequency rejection,
2001. Patent WO 01/43633. 36, 38, 39
[86] A. Dettling. Improved photoplethysmographic instrument, 2001. Patent WO
01/43632. 36, 37, 38, 39, 78
253
[87] P.W. Cheung, K.F. Gauglitz, S.W. Hunsaker, S.J. Prosser, D.O. Wagner,
and R.E. Smith. Method and apparatus for the automatic calibration of
signals employed in oximetry, 1990. US Patent 4,913,150. 36, 37, 39, 40, 78,
94
[88] S.A. Wilber. Blood constituent measuring device and method, 1982. Patent
WO 82/03322. 36, 38
[89] J. G. Graeme. Photodiode amplifiers: op amp solutions. McGraw-Hill Pro-
fessional, 1995. 36, 37, 61, 75
[90] W. Baker and J.C. Stevens. Pulse oximetry, 1995. US Patent 5,431,159. 36,
37, 38
[91] M.P. Zelin. Blood constituent measuring device and method, 1989. US Patent
4,819,752. 36, 38, 39, 40, 78, 94
[92] P.O. Isaacson, D.W. Gadtke, V.D. Heidner, and N.F. Nordling. Single chan-
nel pulse oximeter, 1988. US Patent 4,773,422. 36, 38, 39, 41, 78, 177
[93] M. D. Tavakoli. An Analog VLSI Front End for Pulse Oximetry. Phd thesis,
MIT, 2006. 36, 37, 40, 46, 47, 48, 49, 68, 78, 79, 94, 99, 136, 170, 173, 174,
175, 177, 178, 231
[94] M. J. Hayes. A nonlinear optical preamplifier for sensing applications. IEEE
Trans. Circuits Syst. I, 49(1):1–9, 2002. 36, 37, 177
[95] A.D. Martin. Blood parameter monitoring apparatus and methods, 1989.
Patent EP319160. 37, 38, 40
[96] K. N. Glaros and E. M. Drakakis. Trade-offs for low power integrated pulse
oximeters. In IEEE Biomed. Circuits Syst. Conf., pages 245–248, 2009. 37
[97] B. Rantala and A. Backman. Pulse oximeter, 2005. US Patent 6,912,413.
37, 43, 48, 55, 79
[98] E. Sackinger. The transimpedance limit. IEEE Trans. Circuits Syst. I,
57(8):1848–1856, 2010. 37
[99] E. Kinast. Pulse oximeter, 1999. US Patent 5,995,858. 37
[100] J. A. C. Patterson, D. C. McIIwraith, and Guang-Zhong Yang. A flexible,
low noise reflective PPG sensor platform for ear-worn heart rate monitoring.
In Sixth International Workshop on Wearable and Implantable Body Sensor
Networks, volume 0, pages 286–291, 2009. 37, 45, 79
254
[101] S. Duun, R.G. Haahr, O. Hansen, K. Birkelund, and E.V. Thomsen. High
quantum efficiency annular backside silicon photodiodes for reflectance pulse
oximetry in wearable wireless body sensors. J. Mircomech. Microeng.,
20(7):075020, 2010. 37, 44, 79
[102] J.A.C. Patterson and G.Z. Yang. Ratiometric artifact reduction in low
power reflective photoplethysmography. IEEE Trans. Biomed. Circuits Syst.,
5(4):330–338, 2011. 37, 45
[103] R. G. Haahr, S. B. Duun, M. H. Toft, B. Belhage, J. Larsen, K. Birkelund,
and E. V. Thomsen. An electronic patch for wearable health monitoring
by reflectance pulse oximetry. IEEE Trans. Biomed. Circuits Syst. to be
published. 37, 44, 175
[104] A.M. Terry. Multi-domain motion-estimation and plethysmographic recog-
nition using fuzzy neural-nets, 2005. Patent WO 2005/020798. 38, 39, 78,
94
[105] E. Petersen, W. Shea, and B.B. Chew. Multi-bit ADC with sigma-delta
modulation, 2008. US Patent 7,355,539. 38, 39, 78, 94
[106] A.C. Taylor. Pulse oximeter, July 26 1988. US Patent 4,759,369. 38, 40
[107] A. Al-Ali, M.K. Diab, M.E. Kiani, R.J. Kopotic, and D. Tobler. Stereo pulse
oximeter, 2001. US Patent 6,334,065. 38, 39, 40, 78
[108] J. Moon, H. Visser, and R. Hunt. Body-worn vital signal monitor, 2011. US
Patent 2011/0066044. 38, 39, 40, 78, 94
[109] J.D. Bryars. Data acquisition system for pulse oximeters, 2005. Patent WO
2005/009221. 38, 39, 40, 78, 94
[110] B.E. Sueppel and D.W. Mortara. Low power pulse oximeter, 2004. US Patent
6,697,655. 38, 39, 42, 49, 78, 94, 172, 173
[111] M.J.R. Polson and G.L. Morris. Pulse oximeter with improved accuracy and
response time, March 2 1993. US Patent 5,190,038. 38, 39, 78, 94
[112] D.A. Hanna. Oversampling pulse oximeter, 2001. Patent WO 01/44781. 39,
78, 94
[113] B. Nordstrom, W. Shea, and E. Petersen. Techniques for detecting heart
pulses and reducing power consumption in sensors, 2007. US Patent
7,162,288. 39, 40, 43, 78, 94
[114] A. Al-Ali. Low power pulse oximeter, 2004. US Patent 6,697,658. 40, 43
255
[115] S. Takeda, N. Kobayashi, and H. Kubota. Apparatus for determining concen-
trations of light absorbing substances in blood, 2007. US Patent 7,313,426.
40, 43
[116] I. McCutcheon, S. Amundson, and E. Petersen. Pulse oximeter with adaptive
power conservation, 2009. US Patent App. 12/409,715. 40, 43
[117] T. Inai. Drive circuit for light-emitting diode in pulse oximeter, 1997. US
Patent 5,590,652. 40
[118] J.E. Scharf and S. Athan. Direct digital capture of pulse oximetry wave-
forms. In Biomedical Engineering Conference, 1993., Proceedings of the
Twelfth Southern, pages 230 –232, 1993. 41
[119] S.P. Athan and J.E. Scharf. Portable pulse oximeter, 1996. US Patent
5,575,284. 41
[120] M. Kanemoto, N. Kobayashi, and T. Aoyagi. Apparatus and method for
measuring oxygen saturation in blood and apparatus and method for meas-
uring concentration of light-absorbing materials in blood, 1997. US Patent
5,690,104. 42
[121] D.B. Swedlow, M.J. Bernstein, C.E. Porges, J.E. Luecke, and M.W. Noot-
baar. Medical diagnostic apparatus with sleep mode, July 20 1999. US Patent
5,924,979. 42
[122] A. Wong, Pun Kong-Pang, Zhang Yuan-Ting, and K. Hung. A near-infrared
heart rate measurement IC with very low cutoff frequency using current
steering technique. IEEE Trans. Circuits Syst. I, 52(12):2642–2647, 2005.
44, 172
[123] P.K. Baheti and H. Garudadri. An ultra low power pulse oximeter sensor
based on compressed sensing. 2009 Body Sensor Networks, pages 144–148,
2009. 45, 238
[124] C.D. Boles, B.E. Boser, B.H. Hasegawa, and J.A. Heanue. A multimode
digital detector readout for solid-state medical imaging detectors. IEEE J.
Solid-State Circuits, 33(5):733–742, 1998. 45
[125] N. Schemm, S. Balkir, and M.W. Hoffman. A 4-µW CMOS front end for
particle detection applications. IEEE Trans. Circuits Syst. II, 57(2):100–104,
2010. 45
[126] M. Tavakoli, L. Turicchia, and R. Sarpeshkar. An ultra-low-power pulse ox-
imeter implemented with an energy-efficient transimpedance amplifier. IEEE
Trans. Biomed. Circuits Syst., 4(1):27–38, 2010. 46, 47, 94, 172, 175, 177
256
[127] T. Delbruck and C. A. Mead. Analog VLSI phototransduction by continuous-
time, adaptive, logarithmic photoreceptor circuits. CNS memo no. 30, Cali-
fornia Institute of Technology, 1996. 46, 94, 177, 178, 179, 180, 181, 208,
235
[128] A. Milenkovic, C. Otto, and E. Jovanov. Wireless sensor networks for per-
sonal health monitoring: Issues and an implementation. Comput. Commun.,
29(13-14):2521–2533, 2006. 50
[129] A. Lima and J. Bakker. Noninvasive monitoring of peripheral perfusion. J.
Clin. Monitor. Comp., 31(10):1316–1326, 2005. 60
[130] G. Efthivoulidis, L. Toth, and Y. P. Tsividis. Noise in Gm-C filters. IEEE
Trans. Circuits Syst. I, 45(3):295–302, 1998. 65, 67, 71, 72, 73
[131] C. Toumazou, G.S. Moschytz, and B. Gilbert, editors. Trade-offs in analog
circuit design: the designer’s companion. Kluwer Academic Pub, 2002. 65,
67
[132] AustriaMicroSystems. 0.35 µm CMOS C35 Noise Parameters, ENG - 189,
Rev. 5.0, 2008. 67, 68
[133] T. Delbruck and C. A. Mead. Adaptive photoreceptor with wide dynamic
range. In IEEE Int. Symp. Circuits Syst., volume 4, pages 339–342, 1994.
68, 177, 178, 179, 181, 229, 235
[134] AustriaMicroSystems. 0.35 µm CMOS C35 Process Parameters, ENG - 182,
Rev. 6.0, 2008. 68, 110, 112, 113
[135] G. Xu and J. Yuan. Performance analysis of general charge sampling. IEEE
Trans. Circuits Syst. II, 52(2):107–111, 2005. 80
[136] A. Mirzaei, S. Chehrazi, R. Bagheri, and A.A. Abidi. Analysis of first-order
anti-aliasing integration sampler. IEEE Trans. Circuits Syst. I, 55(10):2994–
3005, 2008. 80
[137] B. Razavi. Design of Analog CMOS Integrated Circuits. Series in Electrical
and Computer Engineering. McGraw-Hill, New York, USA, 2001. 84, 107
[138] R. R. Harrison and C. Charles. A low-power low-noise CMOS amplifier for
neural recording applications. IEEE J. Solid-State Circuits, 38(6):958–965,
2003. 100, 108
[139] E. Vittoz and J. Fellrath. CMOS analog integrated circuits based on weak
inversion operations. IEEE J. Solid-State Circuits, 12(3):224–231, 1977. 103
[140] W.M.C. Sansen. Analog design essentials. Springer, 2006. 106
257
[141] M. O’Halloran and R. Sarpeshkar. A 10-nW 12-bit accurate analog storage
cell with 10-aA leakage. IEEE J. Solid-State Circuits, 39(11):1985–1996,
2004. 113, 114, 166
[142] R.A Hastings. The art of analog layout. Prentice Hall, 2001. 124
[143] R.F. Yazicioglu, T. Torfs, J. Penders, I. Romero, H. Kim, P. Merken,
B. Gyselinckx, H.J. Yoo, and C. Van Hoof. Ultra-low-power wearable bi-
opotential sensor nodes. Annu. Int. Conf. IEEE Eng. Med.-Biol. Soc., pages
3205–3208, sept. 2009. 172
[144] S. Kavadias, B. Dierickx, D. Scheffer, A. Alaerts, D. Uwaerts, and
J. Bogaerts. A logarithmic response CMOS image sensor with on-chip cal-
ibration. IEEE J. Solid-State Circuits, 35(8):1146 –1152, aug 2000. 178,
229
[145] T. Delbruck and D. Oberhoff. Self-biasing low power adaptive photoreceptor.
In IEEE Int. Symp. Circuits Syst., volume 4, pages 844–7, 2004. 178, 190,
191, 235
[146] A. Basu, R. W. Robucci, and P. E. Hasler. A low-power, compact, adaptive
logarithmic transimpedance amplifier operating over seven decades of cur-
rent. IEEE Trans. Circuits Syst. I, 54(10):2167–2177, 2007. 178, 237
[147] A. Basu, K. Odame, and P. Hasler. Dynamics of a logarithmic transimped-
ance amplifier. In IEEE Int. Symp. Circuits Syst., pages 1673–1676, 2007.
178
[148] H. W. Cha and K. Watanabe. Wideband CMOS current conveyor. Electron.
Lett., 32(14):1245–1246, 1996. 198, 237
[149] K. Manetakis and C. Toumazou. A new high-frequency very low output-
impedance CMOS buffer. In IEEE Int. Symp. Circuits Syst., volume 1,
pages 485–488 vol.1, 1996. 198
[150] P. Lichtsteiner, C. Posch, and T. Delbruck. A 128×128 120 dB 15 µs latency
asynchronous temporal contrast vision sensor. IEEE J. Solid-State Circuits,
43(2):566 –576, 2008. 205, 229, 230, 237
[151] M. E. Schlarmann and R. L. Geiger. Relationship between amplifier settling
time and pole-zero placements for second-order systems. In Proc. IEEE
Midwest Symp. Circuits Syst., volume 1, pages 54–59, 2000. 215
[152] D. Python and C.C. Enz. A micropower class-AB CMOS log-domain filter
for DECT applications. IEEE J. Solid-State Circuits, 36(7):1067 –1075, July
2001. 222
258
[153] J.A. Leero-Bardallo, T. Serrano-Gotarredona, and B. Linares-Barranco. A
3.6 µs latency asynchronous frame-free event-driven dynamic-vision-sensor.
IEEE J. Solid-State Circuits, 46(6):1443 –1455, 2011. 229, 230, 237
[154] E. Labonne, G. Sicard, and M. Renaudin. An on-pixel FPN reduction method
for a high dynamic range CMOS imager. Dig. Tech. Papers IEEE Int. Solid-
State Circuits Conf., pages 332 –335, sept. 2007. 229
[155] Yang Ni and K. Matou. A CMOS log image sensor with on-chip FPN com-
pensation. Dig. Tech. Papers IEEE Int. Solid-State Circuits Conf., pages 101
–104, sept. 2001. 229
[156] J.A. Lenero-Bardallo, T. Serrano-Gotarredona, and B. Linares-Barranco.
A five-decade dynamic-range ambient-light-independent calibrated signed-
spatial-contrast AER retina with 0.1-ms latency and optional time-to-first-
spike mode. IEEE Trans. Circuits Syst. I, 57(10):2632–2643, 2010. 237
[157] C. Posch, D. Matolin, and R. Wohlgenannt. A QVGA 143dB dynamic range
asynchronous address-event PWM dynamic image sensor with lossless pixel-
level video compression. Dig. Tech. Papers IEEE Int. Solid-State Circuits
Conf., pages 400 –401, feb. 2010. 237
[158] L. Zhang, Z. Yu, and X. He. Design and implementation of ultralow current-
mode amplifier for biosensor applications. IEEE Trans. Circuits Syst. II,
56(7):540–544, 2009. 237
[159] M.M. Ahmadi and G.A. Jullien. Current-mirror-based potentiostats for
three-electrode amperometric electrochemical sensors. IEEE Trans. Circuits
Syst. I, 56(7):1339–1348, 2009. 237
[160] B. Scharf. Synchronous light detection utilizing CMOS/CCD sensors for
oximetry sensing, June 30 2008. US Patent App. 2009/0326347. 239
[161] T. Aoyagi, M. Kanemoto, M. Fuse, and T. Ukawa. Pulse oximetry and pulse
oximeter, June 18 2009. US Patent App. 2009/0318787. 240
259
A Matlab code: PO
front-end simulations
Listing A.1: Matlab code: Analogue TIA SNR (Fig. 2.7)
%% Compare SNR for analogue TIAs for Pulse Oximeters% With or without integrated AC filter followint the TIAs%% K.N. Glaros% Imperial College London%
FLICKER =1;
%Constantsq=1.6e-19;kT=1.6e -19*0.0259;n=1.3;Vt =0.0259;KPn =170e-6;KPp =58e-6;con =0.02; % Contrast minimumepsilon =2e-2; % Settling accuracyT=10e-3; % LED Switching Period
%Frequency range - resolutionf_init =1;f_final =1e6;Fs=100;Npp =100; % Need to be at least Fs/finit to get enough points in the lowest decadef=f_init :(Fs/Npp):f_final;fint=f_init :(Fs/Npp):BWsig;% Signal bandwidth for noise integration and AC filtersBWsig =10;
% Common element ValuesC=100e-12; %Filter capacitanceRd=1e9; % Photodiode capacitance and resistanceCd=100e-12;Cc=10e-12; % Amplifier compensation capacitance - determines minimum GBW
% Common biasing valuesIdc =100e-9;W_a_n =1000e-6;L_a_n=3e-6;W_L_a_n=W_a_n/L_a_n;W_a_p =600e-6;L_a_p=2e-6;W_L_a_p=W_a_p/L_a_p;gm2=Idc/n/Vt; % Feedback transistor of first PR stageLg=25; % Logarithmic TIA extra gain (capacitive divider)R=1e6;Isn =2*KPn*W_L_a_n*n*Vt^2; % Specific currents for region calculationsIsp =2*KPp*W_L_a_p*n*Vt^2;
% Flicker noise parameters (SPICE 1 model)KFn =2.17e-26;AFn =1.507;KFp =1.191e-26;AFp =1.461;Cox =3.9*8.85e -12/7.6e-9;
D_list=logspace (-3,-1,10);
for i=1: length(D_list)D=D_list(i);tau=D*T;
%%% Calculate SNR for linTIA with analogue output , no switched amp and no AC LPF% (LinTIA)%
% Frequency range for noise integration - only up to AC frequency!
260
fint=f_init :(Fs/Npp):BWsig;Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% No AC filter!FILTER =0;Rf2=FILTER /2/pi/C/BWsig;
% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;
N_R =4*kT/R;N_Rf2 =4*kT*Rf2; % This one is voltage!
N_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=BWsigif FILTER ==1
Fil=abs (1./(f/BWsig*j+1));else Fil=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)No_R_linPR_NSW_NF_a=A_R .^2.* N_R;%Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_NF_a =2* Aath .^2.* Nath_n;%Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_NF_a =2* Aath .^2.* Nath_p;No_Rf2_linPR_NSW_NF_a=N_Rf2*Fil .^2;No_pd_linPR_NSW_NF_a=A_R .^2.* N_pd;
No_tot_linPR_NSW_NF_a=sqrt(trapz(fint ,No_R_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_NF_a (1: length(fint))));
SNR_linPR_NSW_NF_a(i)=20* log10(con*Idc*R*D/No_tot_linPR_NSW_NF_a);
%%% Calculate SNR for linTIA with analogue output , no switched amp and AC LPF% (LinTIA -FAC)%fint=f; % Integrate noise over the whole frequency range!
Iamp=5e-6;gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% Include AC filter (and its noise !)FILTER =1;Rf2=FILTER /2/pi/C/BWsig;
% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents
if (FLICKER)Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=BWsigif FILTER ==1
Fil=abs (1./(f/BWsig*j+1));else Fil=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)No_R_linPR_NSW_F_a=A_R .^2.* N_R;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_F_a =2* Aath .^2.* Nath_n;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_F_a =2* Aath .^2.* Nath_p;No_Rf2_linPR_NSW_F_a=N_Rf2*Fil .^2;No_pd_linPR_NSW_F_a=A_R .^2.* N_pd;
261
No_tot_linPR_NSW_F_a=sqrt(trapz(fint ,No_R_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_F_a (1: length(fint))));
SNR_linPR_NSW_F_a(i)=20* log10(con*Idc*R*D/No_tot_linPR_NSW_F_a);
%%% Calculate SNR for logPR with gain , analogue output , no switched amp and% no AC LPF% (LogTIAG)%
% frequency band for noise calculation - up to AC frequency!fint=f_init :(Fs/Npp):BWsig;Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% No AC filterFILTER =0;FILTER_NOISE =0;Rf=FILTER_NOISE /2/pi/C/BWsig;
if FILTER ==1Fil=abs (1./(f/BWsig*j+1));
else Fil=ones(1,length(f));end;
Ao=Lg*1/ gm2*Cd/T*log(1/ epsilon)/D; % Ao is the amplifier ’s dc gain!fa=max([gma_n/Cc/Ao/2/pi 4*Ao/Lg*gm2/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =8/3* kT*gm2;Nf=4*kT*Rf;N_pd =2*q*Idc;
% Assume gain 1/Lg from zero frequency (capacitive div effective at very% low freqs)A_R=abs(Lg/gm2 ./(2*pi*Cd/Ao/gm2*Lg*f*j+1).*Fil);Aath=abs(Lg/gma_n *(2*pi*Cd/gm2*f*j+1) ./(2*pi*Cd/Ao/gm2*Lg*f*j+1).*Fil./(f/fa*j+1));
No_R_logPRG_NSW_NF_a=A_R .^2.* N_R;% Noise doubled to account for two transistorsNo_ath_n_logPRG_NSW_NF_a =2* Aath .^2.* Nath_n;% Noise doubled to account for two transistorsNo_ath_p_logPRG_NSW_NF_a =2* Aath .^2.* Nath_p;No_Rf_logPRG_NSW_NF_a=Nf*Fil .^2;No_pd_logPRG_NSW_NF_a=A_R .^2.* N_pd;
No_tot_logPRG_NSW_NF_a=sqrt(trapz(fint ,No_R_logPRG_NSW_NF_a (1: length(fint)))+trapz(fint ,No_ath_n_logPRG_NSW_NF_a (1: length(fint)))+trapz(fint ,No_ath_p_logPRG_NSW_NF_a (1:length(fint)))+trapz(fint ,No_Rf_logPRG_NSW_NF_a (1: length(fint)))+trapz(fint ,No_pd_logPRG_NSW_NF_a (1: length(fint))));
SNR_logPRG_NSW_NF_a(i)=20* log10(con*Idc/gm2*Lg*D/No_tot_logPRG_NSW_NF_a);
%%% Calculate SNR for logPR with gain , analogue output , no switched amp and% AC LPF% (LogTIAG -FAC)%
% integrate noise over the whole frequency range!fint=f_init :(Fs/Npp):f_final;Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% Include AC filterFILTER =1;FILTER_NOISE =1;Rf=FILTER_NOISE /2/pi/C/BWsig;
if FILTER ==1Fil=abs (1./(f/BWsig*j+1));
else Fil=ones(1,length(f));end;
Ao=Lg*1/ gm2*Cd/T*log(1/ epsilon)/D; % Ao is the amplifier ’s dc gain!fa=max([gma_n/Cc/Ao/2/pi 4*Ao/Lg*gm2/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =8/3* kT*gm2;Nf=4*kT*Rf;N_pd =2*q*Idc;
262
% Assume gain 1/Lg from zero frequency (capacitive div effective at very% low freqs)A_R=abs(Lg/gm2 ./(2*pi*Cd/Ao/gm2*Lg*f*j+1).*Fil);Aath=abs(Lg/gma_n *(2*pi*Cd/gm2*f*j+1) ./(2*pi*Cd/Ao/gm2*Lg*f*j+1).*Fil./(f/fa*j+1));
No_R_logPRG_NSW_F_a=A_R .^2.* N_R;% Noise doubled to account for two transistorsNo_ath_n_logPRG_NSW_F_a =2* Aath .^2.* Nath_n;% Noise doubled to account for two transistorsNo_ath_p_logPRG_NSW_F_a =2* Aath .^2.* Nath_p;No_Rf_logPRG_NSW_F_a=Nf*Fil .^2;No_pd_logPRG_NSW_F_a=A_R .^2.* N_pd;
No_tot_logPRG_NSW_F_a=sqrt(trapz(fint ,No_R_logPRG_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_n_logPRG_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_p_logPRG_NSW_F_a (1: length(fint)))+trapz(fint ,No_Rf_logPRG_NSW_F_a (1: length(fint)))+trapz(fint ,No_pd_logPRG_NSW_F_a (1: length(fint))));
SNR_logPRG_NSW_F_a(i)=20* log10(con*Idc/gm2*Lg*D/No_tot_logPRG_NSW_F_a);
end;
Listing A.2: Matlab code: Analogue TIA SNR with band-pass filters (Fig. 2.9)
%% Compare SNR for analogue TIAs for Pulse Oximeters% Examine the effect of lowpass and/or bandpass AC filters with gain% following the TIA%% K.N. Glaros% Imperial College London%
FLICKER =1;
%Constantsq=1.6e-19;kT=1.6e -19*0.0259;n=1.3;Vt =0.0259;KPn =170e-6;KPp =58e-6;con =0.02; % Contrast minimumepsilon =2e-2; % Settling accuracyT=10e-3; % Sampling/LED switching frequency
%Frequency range - resolutionf_init =1;f_final =1e6;Fs=100;Npp =100; % Need to be at least Fs/finit to get enough points in the lowest decadef=f_init :(Fs/Npp):f_final;% AC signal bandwidth for AC filters and noise integrationsBWsig =10;
% Common element ValuesC=100e-12; %Filter capacitanceRd=1e9; % Photodiode output resistance and capacitanceCd=100e-12;Cc=10e-12; % Amplifier compensation capacitance - determines minimum GBW
% Common biasing valuesIdc =100e-9;W_a_n =1000e-6;L_a_n=3e-6;W_L_a_n=W_a_n/L_a_n;W_a_p =600e-6;L_a_p=2e-6;W_L_a_p=W_a_p/L_a_p;gm2=Idc/n/Vt; % Feedback transistor of first PR stageR=1e6;Isn =2*KPn*W_L_a_n*n*Vt^2; %Specific currents for calculating region of operationIsp =2*KPp*W_L_a_p*n*Vt^2;
% Flicker noise parameters (SPICE 1 model)KFn =2.17e-26;AFn =1.507;KFp =1.191e-26;AFp =1.461;Cox =3.9*8.85e -12/7.6e-9;
D_list=logspace (-3,-1,10);% Bandpass filter gainsGf_list =[1 2 5];for i=1: length(D_list)
D=D_list(i);tau=D*T;
%%% Calculate SNR for linTIA with analogue output , no switched amp and no AC LPF% (LinTIA)%
% noise integrated up to AC frequency!fint=f_init :(Fs/Npp):BWsig;
Iamp=5e-6;gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
263
% No AC filter!FILTER =0;Rf2=FILTER /2/pi/C/BWsig;% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents
if (FLICKER)Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=f_CLif FILTER ==1
Fil=abs (1./(f/BWsig*j+1));else Fil=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)No_R_linPR_NSW_NF_a=A_R .^2.* N_R;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_NF_a =2* Aath .^2.* Nath_n;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_NF_a =2* Aath .^2.* Nath_p;No_Rf2_linPR_NSW_NF_a=N_Rf2*Fil .^2;No_pd_linPR_NSW_NF_a=A_R .^2.* N_pd;
No_tot_linPR_NSW_NF_a=sqrt(trapz(fint ,No_R_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_NF_a (1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_NF_a (1: length(fint))));
SNR_linPR_NSW_NF_a(i)=20* log10(con*Idc*R*D/No_tot_linPR_NSW_NF_a);
%%% Calculate SNR for linTIA with analogue output , no switched amp and AC LPF% (LinTIA - FAC)%
% Integrate noise over the whole frequency range!fint=f_init :(Fs/Npp):f_final;
Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% Include AC fitler - and noise!FILTER =1;Rf2=FILTER /2/pi/C/BWsig;% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents
if (FLICKER)Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=f_CLif FILTER ==1
Fil=abs (1./(f/BWsig*j+1));else Fil=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)No_R_linPR_NSW_F_a=A_R .^2.* N_R;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_F_a =2* Aath .^2.* Nath_n;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_F_a =2* Aath .^2.* Nath_p;No_Rf2_linPR_NSW_F_a=N_Rf2*Fil .^2;No_pd_linPR_NSW_F_a=A_R .^2.* N_pd;
No_tot_linPR_NSW_F_a=sqrt(trapz(fint ,No_R_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_F_a (1: length(fint))));
SNR_linPR_NSW_F_a(i)=20* log10(con*Idc*R*D/No_tot_linPR_NSW_F_a);
for k=1: length(Gf_list)
264
%%% Calculate SNR for linTIA with analogue output , no switched amp and BPF% Uses GmC BPF limits from Efthivoulidis/Tsividis% (LinTIA -FAC/BP -G)%
% Integrate noise over the whole frequecny range!fint=f_init :(Fs/Npp):f_final;
Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% Bandpass AC filter!FILTER =1;Gf=Gf_list(k); % Filter specificationsMp =0.707;Ms =0.01;f1 =0.01;f2=0.1;f3=10;f4=100;theta =2/pi/Gf^2*(f1/(f2-f1)+f3/(f4 -f3))*(Mp -Ms)^2;% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents
if (FLICKER)Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_f2=theta*kT/C; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes)
if FILTER ==1[order ,Wn]= buttord (2*pi*[f2 f3],2*pi*[f1 f4],3,-20*log10(Ms/Gf),’s’);[b,a]= butter(order ,Wn ,’s’);Fil=Gf*freqs(b,a,2*pi*f);
else Fil=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)No_R_linPR_NSW_FBP_a=A_R .^2.* N_R;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_FBP_a =2* Aath .^2.* Nath_n;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_FBP_a =2* Aath .^2.* Nath_p;% distribute noise uniformly across frequenciesNo_f2_linPR_NSW_FBP_a=N_f2*ones(1,length(fint))/fint(end);No_pd_linPR_NSW_FBP_a=A_R .^2.* N_pd;
No_tot_linPR_NSW_FBP_a=sqrt(trapz(fint ,No_R_linPR_NSW_FBP_a (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_FBP_a (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_FBP_a (1: length(fint)))+trapz(fint ,No_f2_linPR_NSW_FBP_a (1:length(fint)))+trapz(fint ,No_pd_linPR_NSW_FBP_a (1: length(fint))));
SNR_linPR_NSW_FBP_a(i,k)=20* log10(con*Idc*R*D*Gf/No_tot_linPR_NSW_FBP_a);
end;
end;
Listing A.3: Matlab code: Aliased spectrum calculation
% Function to calculate folded power spectrum due to sub -sampling% Fs MUST be included in the frequency vector f% Frequency vector must be linear%% Assumes X is a single -sided PSD%% f is assumed to be linear -constant step vectorfunction S=foldspectrum2(f,X,Fs)L=length(f);Df=f(2)-f(1);if (Fs>f(L))
error(’Signal frequency range is smaller than sampling frequency!’);end;i_Fs=find(abs(f-(Fs/2))<Df/100); % Matlab ’s find screws up due to precisionf2=-(f(L)-Df):Df:(f(L)-Df); % Create double sided spectrumX=X./2; % Half the PSD to generated double sided PSDX2(1:(L-1))=X(L:(-1):2);X2(L:(2*L-1))=X(1:L);X2(L)=X(1);SSR=round(f(length(f))/Fs);S=zeros (1,2* i_Fs);
265
for k=1:(SSR -1)S=S+abs(X2((L+(2*k-1)*i_Fs -1):(L+(2*k+1)*i_Fs -2))); % positiveS=S+abs(X2((L-(2*k+1)*i_Fs +1):(L-(2*k-1)*i_Fs))); % negative
end;S=S+abs(X2((L-i_Fs):(L+i_Fs -1)));% Return single sided spectrumS=2*[S((i_Fs +1) :(2* i_Fs)) S(1: i_Fs)];
Listing A.4: Matlab code: Sampled TIA SNR (Fig. 2.10)
%% Compare SNR for sampled/analogue TIAs for Pulse Oximeters% AC LPF included to compare with analogue TIAs%% K.N. Glaros% Imperial College London%
FLICKER =1;
%Constantsq=1.6e-19;kT=1.6e -19*0.0259;n=1.3;Vt =0.0259;p=1.05; % How much larger the mirror output current is from IdcKPn =170e-6;KPp =58e-6;con =0.02; % Contrast minimumepsilon =2e-2; % Settling accuracyT=10e-3; % Sampling/LED switching frequency
%Frequency range - resolutionf_init =1;f_final =1e6;Fs=100;Npp =100; % Need to be at least Fs/finit to get enough points in the lowest decadef=f_init :(Fs/Npp):f_final;% AC signal frequency for noise integration/AC filterBWsig =10;
% Common element ValuesC=100e-12; %Integrating and filter capacitanceRd=1e9; % Photodiode output capacitance and resistanceCd=100e-12;Cc=10e-12; % Amplifier compensation capacitance - determines minimum GBW
% Common biasing valuesIdc =100e-9;W_a_n =1000e-6;L_a_n=3e-6;W_L_a_n=W_a_n/L_a_n;W_a_p =600e-6;L_a_p=2e-6;W_L_a_p=W_a_p/L_a_p;gm2=Idc/n/Vt; % Feedback transistor of first PR stageR=1e6;
Isn =2*KPn*W_L_a_n*n*Vt^2; % Specific currents for determining region of operationIsp =2*KPp*W_L_a_p*n*Vt^2;
% Flicker noise parameters (SPICE 1 model)KFn =2.17e-26;AFn =1.507;KFp =1.191e-26;AFp =1.461;Cox =3.9*8.85e -12/7.6e-9;
D_list=logspace (-3,-1,10);
for i=1: length(D_list)D=D_list(i);tau=D*T;% 8us track time for S/Htsh =((10e-3) -(8e-6))/10e-3;
% Noise -antialising first order filter cut -offfc=1/T*log(1/ epsilon)/D*1/2/pi;
Zih=abs(tau/C*sinc(f*tau)); %Integrate and hold transfer function (magnitude)f1=f(1: find(f==Fs)); % Frequency range after samplingAih=tsh*sinc(tsh*f1/Fs); % Voltage track and hold transfer function
%%% Calculate SNR for linTIA with sampled output , no switched amp ,% no noise -antialiasing LPF and AC LPF filter% (LinTIA -S-FAC)%
% Integrate noise over the whole frequency range (fs)!fint=f_init :(Fs/Npp):Fs;
Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% No noise antialiasing filter
266
FILTER =0;FILTER_NOISE =0;Rf=FILTER_NOISE /2/pi/C/fc;% AC filterFILTER2 =1;Rf2=FILTER2 /2/pi/C/BWsig;
% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents
if (FLICKER)Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;Nf=4*kT*Rf; % This one is voltageN_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes)% Noise antialiasing LPF cut -off=closed loop bandwidth(fc)if FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;% AC filter cut -off=signal bandwidthif FILTER2 ==1
Fil2=abs (1./( f1/BWsig*j+1));else Fil2=ones(1,length(f1));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)% Magnitude is converted to power here!No_R_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_R ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_NF =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_n ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_NF =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_p ,Fs).*Fil2 .^2;No_f_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(Fil).^2.*Nf,Fs).*Fil2 .^2;No_Rf2_linPR_NSW_NF=N_Rf2*Fil2 .^2;No_pd_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_pd ,Fs).*Fil2 .^2;
No_tot_linPR_NSW_NF=sqrt(trapz(fint ,No_R_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_f_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_NF(1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_NF (1: length(fint))));
SNR_linPR_NSW_NF(i)=20* log10(con*Idc*R/No_tot_linPR_NSW_NF);
%%% Calculate SNR for linTIA with sampled output ,no switched amp ,% noise -antialasing LPF and AC LPF% (LinTIA -FNAL -S-FAC)%
% Integrate noise over the whole frequency range (fs)!fint=f_init :(Fs/Npp):Fs;
Iamp=5e-6;gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% Include both noise -antialiasing and AC LPF!FILTER =1;FILTER_NOISE =1;FILTER2 =1;Rf=FILTER_NOISE /2/pi/C/fc;Rf2=FILTER2 /2/pi/C/BWsig;
% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;
fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;Nf=4*kT*Rf; % this one is voltage!N_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes)% Noise antialiasing LPF cut -off=closed loop bandwidth (fc)if FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));
267
end;% AC filter cut -off=signal bandwidthif FILTER2 ==1
Fil2=abs (1./( f1/BWsig*j+1));else Fil2=ones(1,length(f1));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)% Magnitude is converted to power here!No_R_linPR_NSW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_R ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_n ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_p ,Fs).*Fil2 .^2;No_f_linPR_NSW_F=Aih .^2.* foldspectrum2(f,(Fil).^2.*Nf,Fs).*Fil2 .^2;No_Rf2_linPR_NSW_F=N_Rf2*Fil2 .^2;No_pd_linPR_NSW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.* N_pd ,Fs).*Fil2 .^2;
No_tot_linPR_NSW_F=sqrt(trapz(fint ,No_R_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_f_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_F (1:length(fint)))+trapz(fint ,No_pd_linPR_NSW_F (1: length(fint))));
SNR_linPR_NSW_F(i)=20* log10(con*Idc*R/No_tot_linPR_NSW_F);
%%% Calculate SNR for linTIA with analogue output , no switched amp ,% no noise -antialising filter and AC LPF%%
% Integrate noise over the whole frequency range!fint=f_init :(Fs/Npp):f_final;
Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
% No noise antialiasing filterFILTER =0;FILTER_NOISE =0;Rf=FILTER_NOISE /2/pi/C/fc;% AC filter includedFILTER2 =1;Rf2=FILTER2 /2/pi/C/BWsig;
% Adaptive amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes)% Noise antialiasing LPF cut -off=closed loop bandwidth (fc)if FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;% AC filter cut -off=signal bandwidthif FILTER2 ==1
Fil2=abs (1./(f/BWsig*j+1));else Fil2=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil2 ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil2);
% Output noise (powers)No_R_linPR_NSW_F_a=A_R .^2.* N_R;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_F_a =2* Aath .^2.* Nath_n;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_F_a =2* Aath .^2.* Nath_p;No_Rf2_linPR_NSW_F_a=N_Rf2*Fil2 .^2;No_pd_linPR_NSW_F_a=A_R .^2.* N_pd;
No_tot_linPR_NSW_F_a=sqrt(trapz(fint ,No_R_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_F_a (1: length(fint))));
SNR_linPR_NSW_F_a(i)=20* log10(con*Idc*R*D/No_tot_linPR_NSW_F_a);
end;
268
Listing A.5: Matlab code: Sampled TIA with switched amplifier biasing SNR
(Fig. 2.16)
%% Compare SNR for sampled/analogue TIAs for Pulse Oximeters% Switched bias for the TIA amplifier is included to lower its noise% AC LPF included to compare with analogue TIAs%% K.N. Glaros% Imperial College London%
FLICKER =1;
%Constantsq=1.6e-19;kT=1.6e -19*0.0259;n=1.3;Vt =0.0259;KPn =170e-6; % Transistor beta factorsKPp =58e-6;con =0.02; % Contrast minimumepsilon =2e-2; % Settling accuracyT=10e-3; % Sampling/LED switching frequency
%Frequency range - resolutionf_init =1;f_final =1e6;Fs=100;Npp =100; % Need to be at least Fs/finit to get enough points in the lowest decadef=f_init :(Fs/Npp):f_final;% AC signal frequencies for AC filter/noise integrationsBWsig =10;
% Common element ValuesC=100e-12; % Integrating and filter capacitanceRd=1e9; % Photodiode output resistance and capacitanceCd=100e-12;Cc=10e-12; % Amplifier compensation capacitance - determines minimum GBW
% Common biasing valuesIdc =100e-9;W_a_n =1000e-6;L_a_n=3e-6;W_L_a_n=W_a_n/L_a_n;W_a_p =600e-6;L_a_p=2e-6;W_L_a_p=W_a_p/L_a_p;gm2=Idc/n/Vt; % Feedback transistor of first PR stageR=1e6;
Isn =2*KPn*W_L_a_n*n*Vt^2; % Specific current for determining region of operationIsp =2*KPp*W_L_a_p*n*Vt^2;
% Flicker noise parameters (SPICE 1 model)KFn =2.17e-26;AFn =1.507;KFp =1.191e-26;AFp =1.461;Cox =3.9*8.85e -12/7.6e-9;D_list=logspace (-3,-1,10);
for i=1: length(D_list)D=D_list(i);tau=D*T;% 8us track time for S/Htsh =((10e-3) -(8e-6))/10e-3;
% First order noise -antialiasing filter cut -off (close -loop BW)fc=1/T*log(1/ epsilon)/D*1/2/pi;
Zih=abs(tau/C*sinc(f*tau)); %Integrate and hold transfer function (magnitude)f1=f(1: find(f==Fs)); % Frequency range after samplingAih=tsh*sinc(tsh*f1/Fs); % Voltage track and hold transfer function
%%% Calculate SNR for linTIA with sampled output , switched amp ,% no noise -antialiasing LPF and AC LPF% (LinTIA -S-FAC)%
% Integrate noise over the whole frequency range (fs)!fint=f_init :(Fs/Npp):Fs;% Switched biasing for TIA amplifierIamp=5e-6/D;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
% No noise -antialiasing LPFFILTER =0;FILTER_NOISE =0;Rf=FILTER_NOISE /2/pi/C/fc;
269
% AC filter included - and noise!FILTER2 =1;Rf2=FILTER2 /2/pi/C/BWsig;% Adaptive TIA amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;Nf=4*kT*Rf; % This one is voltageN_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes)% Noise antialiasing LPF cut -off=closed loop bandwidth(fc)if FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;% AC filter cut -off=signal bandwidthif FILTER2 ==1
Fil2=abs (1./( f1/BWsig*j+1));else Fil2=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)% Magnitude is converted to power here!No_R_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_R ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_NF =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_n ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_NF =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_p ,Fs).*Fil2 .^2;No_f_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(Fil).^2.*Nf,Fs).*Fil2 .^2;No_Rf2_linPR_NSW_NF=N_Rf2*Fil2 .^2;No_pd_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_pd ,Fs).*Fil2 .^2;
No_tot_linPR_NSW_NF=sqrt(trapz(fint ,No_R_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_f_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_NF(1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_NF (1: length(fint))));
SNR_linPR_NSW_NF(i)=20* log10(con*Idc*R/No_tot_linPR_NSW_NF);
%%% Calculate SNR for linTIA with sampled output ,switched amp ,% noise -antialiasing LPF and AC filter% (LinTIA -FNAL -S-FAC)%
% Integrate noise over the whole frequency range (fs)!fint=f_init :(Fs/Npp):Fs;% Switched biasing for TIA amplifierIamp=5e-6/D;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
% Include noise -antialiasing and AC LPFFILTER =1;FILTER_NOISE =1;Rf=FILTER_NOISE /2/pi/C/fc;FILTER2 =1;Rf2=FILTER2 /2/pi/C/BWsig;% Adaptive TIA amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;Nf=4*kT*Rf; % this one is voltage!N_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes)
270
% Noise antialiasing LPF cut -off=closed loop bandwidth(fc)if FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;% AC filter cut -off=signal bandwidthif FILTER2 ==1
Fil2=abs (1./( f1/BWsig*j+1));else Fil2=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)% Magnitude is converted to power here!No_R_linPR_NSW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_R ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_n ,Fs).*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_p ,Fs).*Fil2 .^2;No_f_linPR_NSW_F=Aih .^2.* foldspectrum2(f,(Fil).^2.*Nf,Fs).*Fil2 .^2;No_Rf2_linPR_NSW_F=N_Rf2*Fil2 .^2;No_pd_linPR_NSW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.* N_pd ,Fs).*Fil2 .^2;
No_tot_linPR_NSW_F=sqrt(trapz(fint ,No_R_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_f_linPR_NSW_F (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_F (1:length(fint)))+trapz(fint ,No_pd_linPR_NSW_F (1: length(fint))));
SNR_linPR_NSW_F(i)=20* log10(con*Idc*R/No_tot_linPR_NSW_F);
%%% Calculate SNR for linTIA with analogue output , switched amp ,% no noise -antialiasing fiter and AC LPF% (LinTIA -FAC)%
% Integrate noise over the whole frequency range!fint=f_init :(Fs/Npp):f_final;% Switched biasing for TIA amplifierIamp=5e-6/D;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
% No noise -antialiasing LPFFILTER =0;FILTER_NOISE =0;Rf=FILTER_NOISE /2/pi/C/fc;% Include AC filterFILTER2 =1;Rf2=FILTER2 /2/pi/C/BWsig;% Adaptive TIA amplifier gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_Rf2 =4*kT*Rf2; % This one is voltage!N_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=f_CL% Noise antialiasing LPF cut -off=closed loop bandwidth(fc)if FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;% AC filter cut -off=signal bandwidthif FILTER2 ==1
Fil2=abs (1./(f/BWsig*j+1));else Fil2=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)No_R_linPR_NSW_F_a=A_R .^2.* N_R.*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_F_a =2* Aath .^2.* Nath_n .*Fil2 .^2;% Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_F_a =2* Aath .^2.* Nath_p .*Fil2 .^2;No_Rf2_linPR_NSW_F_a=N_Rf2*Fil2 .^2;No_pd_linPR_NSW_F_a=A_R .^2.* N_pd.*Fil2 .^2;
271
No_tot_linPR_NSW_F_a=sqrt(trapz(fint ,No_R_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_Rf2_linPR_NSW_F_a (1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_F_a (1: length(fint))));
SNR_linPR_NSW_F_a(i)=20* log10(con*Idc*R*D/No_tot_linPR_NSW_F_a);
end;
Listing A.6: Matlab code: Integrating and other TIA SNR (Fig. 2.17)
%% Compare SNR for various TIAs for Pulse Oximeters% Included integrating TIAs with VSI ,CSI%% K.N. Glaros% Imperial College London%
FLICKER =1;
%Constantsq=1.6e-19;kT=1.6e -19*0.0259;n=1.3;Vt =0.0259;p=1.05; % How much larger the mirror output current is from IdcKPn =170e-6; % Current factors for transistorsKPp =58e-6;con =0.02; %Contrast minimumepsilon =2e-2; % Settling accuracyLg=25; % Capacitive gain for logarithmic amplifierT=10e-3; % LED switching frequency
%Frequency range - resolutionf_init =1;f_final =1e6;Fs=100;% Need to be at least Fs/finit to get enough points in the lowest decadeNpp =100;f=f_init :(Fs/Npp):f_final;% Signal bandwidth for noise calculationBWsig =10;
% Common element ValuesC=10e-12; %Integrating and filter capacitanceRd=1e9; % Photodiode output capacitance and resistanceCd=1000e-12;Cc=10e-12; % Amplifier compensation capacitance - determines minimum GBW
% Common biasing valuesIdc =100e-9;W_a_n =1000e-6; % Dimensions of TIAF input transistorsL_a_n=3e-6;W_L_a_n=W_a_n/L_a_n;W_a_p =600e-6;L_a_p=2e-6;W_L_a_p=W_a_p/L_a_p;gm2=Idc/n/Vt; % Feedback transistor of first TIA stage in LogPRR=1e6; % Linear TIA feedback resistance
% Specific currents for region of operation determinationIsn =2*KPn*W_L_a_n*n*Vt^2;Isp =2*KPp*W_L_a_p*n*Vt^2;
% Flicker noise parameters (SPICE 1 model)KFn =2.17e-26;AFn =1.507;KFp =1.191e-26;AFp =1.461;Cox =3.9*8.85e -12/7.6e-9;
D_list=logspace (-3,-1,10);
for i=1: length(D_list)D=D_list(i);tau=D*T;% 8us track time for S/Htsh =((10e-3) -(8e-6))/10e-3;
% First order noise anti -aliasing filter cut -off% (equal to TIA closed -loop bandwidth)fc=1/T*log(1/ epsilon)/D*1/2/pi;
Zih=abs(tau/C*sinc(f*tau)); %Integrate and hold transfer function (magnitude)f1=f(1: find(f==Fs));Aih=tsh*sinc(tsh*f1/Fs); % Voltage track and hold transfer function
%%% Calculate SNR for linTIA with sampled output , no switched amp and no LPF% (LinTIA -S)%fint=f_init :(Fs/Npp):BWsig; % frequency band for noise calculation
Iamp=5e-6;
gma_n=Iamp /2/n/Vt; %WI now that currents are smallgma_p=Iamp /2/n/Vt;
272
% No filter in this case!FILTER =0;FILTER_NOISE =0;Rf=FILTER_NOISE /2/pi/C/fc;
% Adaptive gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;Nf=4*kT*Rf; % This one is voltageN_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=f_CLif FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
% Output noise (powers)% Magnitude is converted to power here!No_R_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_R ,Fs);%Noise doubled to account for two transistorsNo_ath_n_linPR_NSW_NF =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_n ,Fs);%Noise doubled to account for two transistorsNo_ath_p_linPR_NSW_NF =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_p ,Fs);No_f_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(Fil).^2.*Nf,Fs);No_pd_linPR_NSW_NF=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_pd ,Fs);
No_tot_linPR_NSW_NF=sqrt(trapz(fint ,No_R_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_ath_n_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_ath_p_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_f_linPR_NSW_NF (1: length(fint)))+trapz(fint ,No_pd_linPR_NSW_NF(1: length(fint))));
SNR_linPR_NSW_NF(i)=20* log10(con*Idc*R/No_tot_linPR_NSW_NF);
%%% Calculate SNR for linTIA with sampled output , switched amp% and noise -antialiasing LPF% (LinTIAsw -FNAL -S)%fint=f_init :(Fs/Npp):BWsig; % frequency band for noise calculation
% Swiched TIAIamp=5e-6/D;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
% Noise anti -aliasing filter includedFILTER =1;FILTER_NOISE =1;Rf=FILTER_NOISE /2/pi/C/fc;
% Adaptive gainAo=R*Cd/T*log (1/ epsilon)/D;
fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Noise sources (powers) - currents% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;Nf=4*kT*Rf;N_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=f_CLif FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;
Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1).*Fil ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1).*Fil);
273
% Output noise (powers)
% Magnitude is converted to power here!No_R_linPR_SW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_R ,Fs);%Noise doubled to account for two transistorsNo_ath_n_linPR_SW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_n ,Fs);No_ath_p_linPR_SW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_p ,Fs);No_f_linPR_SW_F=Aih .^2.* foldspectrum2(f,(Fil).^2.*Nf ,Fs);%Magnitude is converted to power here!No_pd_linPR_SW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.* N_pd ,Fs);
No_tot_linPR_SW_F=sqrt(trapz(fint ,No_R_linPR_SW_F (1: length(fint)))+trapz(fint ,No_ath_n_linPR_SW_F (1: length(fint)))+trapz(fint ,No_ath_p_linPR_SW_F (1: length(fint)))+trapz(fint ,No_f_linPR_SW_F (1: length(fint)))+trapz(fint ,No_pd_linPR_SW_F (1: length(fint))));
SNR_linPR_SW_F(i)=20* log10(con*Idc*R/No_tot_linPR_SW_F);
%%% Calculate SNR for LogPR with sampled output , capacitive gain ,% switched amp and noise -antialiasing LPF% (LogTIAsw -FNAL -S)%fint=f_init :(Fs/Npp):BWsig; % frequency band for noise calculation% Switched amplifier biasingIamp=5e-6/D;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
% Include Noise antialiasing filter (and noise)FILTER =1;FILTER_NOISE =1;Rf=FILTER_NOISE /2/pi/C/fc;
% Ao is the amplifier ’s dc gain!Ao=Lg*1/ gm2*Cd/T*log(1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/Lg*gm2/Cd/2/pi]); % Amplifier non -dominant pole% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =8/3* kT*gm2;Nf=4*kT*Rf;N_pd =2*q*Idc;
% Transfer functions (magnitudes) - with LPF of fc=f_CLif FILTER ==1
Fil=abs (1./(f/fc*j+1));else Fil=ones(1,length(f));end;
% Assume gain 1/Lg from zero frequency (capacitive div effective at very% low freqs)Aath=abs(Lg/gma_n *(2*pi*Cd/gm2*f*j+1) ./(2*pi*Cd/Ao/gm2*Lg*f*j+1).*Fil./(f/fa*j+1));
A_R=abs(Lg/gm2 ./(2*pi*Cd/Ao/gm2*Lg*f*j+1).*Fil);
% Output noise (powers)% Magnitude is converted to power here!No_R_logPRG_SW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.*N_R ,Fs);% Noise doubled to account for two transistorsNo_ath_n_logPRG_SW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_n ,Fs);% Noise doubled to account for two transistorsNo_ath_p_logPRG_SW_F =2*Aih .^2.* foldspectrum2(f,(Aath).^2.* Nath_p ,Fs);No_f_logPRG_SW_F=Aih .^2.* foldspectrum2(f,(Fil).^2.*Nf,Fs);No_pd_logPRG_SW_F=Aih .^2.* foldspectrum2(f,(A_R).^2.* N_pd ,Fs);
No_tot_logPRG_SW_F=sqrt(trapz(fint ,No_R_logPRG_SW_F (1: length(fint)))+trapz(fint ,No_ath_n_logPRG_SW_F (1: length(fint)))+trapz(fint ,No_ath_p_logPRG_SW_F (1: length(fint)))+trapz(fint ,No_f_logPRG_SW_F (1: length(fint)))+trapz(fint ,No_pd_logPRG_SW_F (1:length(fint))));
SNR_logPRG_SW_F(i)=20* log10(con*Idc/gm2*Lg/No_tot_logPRG_SW_F);
%%% Calculate SNR for CSI with switched amp%%fint=f_init :(Fs/Npp):BWsig; % frequency band for noise calculation
% Cascode mirror degeneration resistorsRm1 =300e3; % Input stage of mirrorRm2 =285e3;
% Swiched amplifier biasingIamp=5e-6/D;
% Cascode mirror transcoductances
274
gm_m1=Idc/n/Vt; % Input stage of mirrorgm_m2=Rm1/Rm2*Idc/n/Vt;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
% Adaptive gainAo=1/gm2*Cd/T*log(1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao*gm2/Cd/2/pi]); % Amplifier non -dominant pole% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;Nm_Rm1 =4*kT/Rm1;Nm_Rm2 =4*kT/Rm2;Nm_Tm1 =8/3*kT*n*gm_m1;Nm_Tm2 =8/3*kT*n*gm_m2;N_pd =2*q*Idc;
% Noise transfer functions (magnitude)
% Mirror resistors/transistorsHm_Rm1=gm_m2*Rm1 /(1+ gm_m2*Rm2);Hm_Rm2=gm_m2*Rm2 /(1+ gm_m2*Rm2);Hm_Tm1=gm_m2/gm_m1 /(1+ gm_m2*Rm2);Hm_Tm2 =1/(1+ gm_m2*Rm2);% Amplifier thermal noiseHath=abs(1/ gma_n/Rd*(2*pi*Rd*Cd*f*j+1) ./(2*pi*Cd/Ao/gm2*f*j+1)./(f/fa*j+1));
% Output noise (powers)% Magnitude is converted to power here!No_Rm1_IintPR=Aih .^2.* foldspectrum2(f,( Hm_Rm1 .*Zih).^2.* Nm_Rm1 ,Fs);No_Rm2_IintPR=Aih .^2.* foldspectrum2(f,( Hm_Rm2 .*Zih).^2.* Nm_Rm2 ,Fs);% Noise doubled to account for two transistorsNo_ath_n_IintPR =2*Aih .^2.* foldspectrum2(f,(Hath.*Zih).^2.* Nath_n ,Fs);% Noise doubled to account for two transistorsNo_ath_p_IintPR =2*Aih .^2.* foldspectrum2(f,(Hath.*Zih).^2.* Nath_p ,Fs);No_Tm1_IintPR=Aih .^2.* foldspectrum2(f,( Hm_Tm1 .*Zih).^2.* Nm_Tm1 ,Fs);No_Tm2_IintPR=Aih .^2.* foldspectrum2(f,( Hm_Tm2 .*Zih).^2.* Nm_Tm2 ,Fs);No_pd_IintPR=Aih .^2.* foldspectrum2(f,Zih .^2.*N_pd ,Fs);
No_tot_IintPR=sqrt(trapz(fint ,No_Tm1_IintPR (1: length(fint)))+trapz(fint ,No_Tm2_IintPR (1:length(fint)))+trapz(fint ,No_Rm1_IintPR (1: length(fint)))+trapz(fint ,No_Rm2_IintPR (1:length(fint)))+trapz(fint ,No_ath_n_IintPR (1: length(fint)))+trapz(fint ,No_ath_p_IintPR (1: length(fint)))+trapz(fint ,No_pd_IintPR (1: length(fint))));
SNR_IintPR(i)=20* log10(con*Idc*tau/C/No_tot_IintPR);
%%% Calculate SNR for VSI with switched amp%%fint=f_init :(Fs/Npp):BWsig; % frequency band for noise calculation% Switched amplifier biasIamp=5e-6/D;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
Rint=R; % Voltage integrator resistance
% Adaptive gainAo=R*Cd/T*log (1/ epsilon)/D;fa=max([gma_n/Cc/Ao/2/pi 4*Ao/R/Cd/2/pi]); % Amplifier non -dominant pole
% Flicker noise is added as a current density (see AMS SPICE model% documentation)if (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_Rint =4*kT*Rint; % This one is voltage due to AihN_pd =2*q*Idc;
% Noise transfer functions (magnitudes)Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1) ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1));
275
%Integrate and hold transfer function (magnitude)Aih=abs(tau/C/Rint*sinc(f*tau));f1=f(1: find(f==Fs));Ash=tsh*sinc(tsh*f1/Fs);
% Output noise (powers)% Magnitude is converted to power here!No_R_VintPR=Ash .^2.* foldspectrum2(f,(A_R.*Aih).^2.*N_R ,Fs);% Noise doubled to account for two transistorsNo_ath_n_VintPR =2*Ash .^2.* foldspectrum2(f,(Aath.*Aih).^2.* Nath_n ,Fs);% Noise doubled to account for two transistorsNo_ath_p_VintPR =2*Ash .^2.* foldspectrum2(f,(Aath.*Aih).^2.* Nath_p ,Fs);No_Rint_VintPR=Ash .^2.* foldspectrum2(f,(Aih).^2.* N_Rint ,Fs);No_f_VintPR=Ash .^2.* foldspectrum2(f,(Fil).^2.*Nf,Fs);No_pd_VintPR=Ash .^2.* foldspectrum2(f,(A_R.*Aih).^2.* N_pd ,Fs);
No_tot_VintPR=sqrt(trapz(fint ,No_R_VintPR (1: length(fint)))+trapz(fint ,No_ath_n_VintPR (1:length(fint)))+trapz(fint ,No_ath_p_VintPR (1: length(fint)))+trapz(fint ,No_Rint_VintPR(1: length(fint)))+trapz(fint ,No_pd_VintPR (1: length(fint))));
SNR_VintPR(i)=20* log10(con*Idc*R/Rint*tau/C/No_tot_VintPR);
end;
Listing A.7: Matlab code: SNR of fabricated TIA including external noise sources
(Figs. 3.14-3.17)
%% Calculate theoretically the VSI noise and compare with the measured% results%% K.N. Glaros% Imperial College London%
FLICKER =1; %Only for the first stageEXT_NOISE =1;
%Constantsq=1.6e-19;kT=1.6e -19*0.0259;n=1.3;Vt =0.0259;KPn =170e-6; % Current factors for transistorsKPp =58e-6;con =0.025; %Contrast for calculations (p-p)epsilon =2e-2; % Settling accuracyT=10e-3; % LED switching frequency
%Frequency range - resolutionf_init =1;f_final =1e6;Fs=100;% Need to be at least Fs/finit to get enough points in the lowest decadeNpp =100;f=f_init :(Fs/Npp):f_final;% Signal bandwidth for noise calculationBWsig =10;
% Common element ValuesC=20.7e-12; %Integrating capacitanceRd=1e9; % Photodiode output capacitance and resistance (resistance arbitrary)Cd=130e-12;Cc=10e-12; % Amplifier compensation capacitance - determines minimum GBW
% Biasing valuesIdc =225e-9;
W_a_n =1000e-6; %Dimensions of TIA amplifier input transistorsL_a_n=3e-6;W_L_a_n=W_a_n/L_a_n;W_a_p =600e-6;L_a_p=2e-6;W_L_a_p=W_a_p/L_a_p;gm2=Idc/n/Vt; % Feedback transistor of first TIA stage in LogPRR=500e3; % Linear TIA feedback resistance
% Specific currents for region of operation determinationIsn =2*KPn*W_L_a_n*n*Vt^2;Isp =2*KPp*W_L_a_p*n*Vt^2;
% Flicker noise parameters (SPICE 1 model)KFn =2.17e-26;AFn =1.507;KFp =1.191e-26;AFp =1.461;Cox =3.9*8.85e -12/7.6e-9;
t_int=logspace (-5,-3,10);
% Load VREF noise from PNOISE simulations with Cadence Spectre[f_REF ,N_REF]= textread(’Nvref_230nA_1MHz.csv’,’%f,%f’,’headerlines ’ ,1);N_REF=interp1(f_REF ,N_REF ,f);
% Approximate components for reference noiseVref1=abs (750e -9./(1+j*f/120)).^2;Vref2=abs (180e -9./(1+j*f/110e3)).^2;
for i=1: length(t_int)
276
tau=t_int(i);D=tau/T;% 10us track time for S/Htsh =((10e-3) -(10e-6))/10e-3;
Zih=abs(tau/C*sinc(f*tau)); %Integrate and hold transfer function (magnitude)f1=f(1: find(f==Fs));Aih=tsh*sinc(tsh*f1/Fs); % Voltage track and hold transfer function
%%% Calculate SNR for VSI with constant bias amp%%fint=f_init :(Fs/Npp):BWsig; % frequency band for noise calculation
% TIAF amplifier bias conditionsIamp =100e-6;
if (Iamp /2)<Isn %Separate between WI and SI transconductancegma_n=Iamp /2/n/Vt;
elsegma_n=sqrt (2*KPn*W_L_a_n*Iamp /2);
end;if (Iamp /2)<Isp %Separate between WI and SI transconductance
gma_p=Iamp /2/n/Vt;else
gma_p=sqrt (2*KPp*W_L_a_p*Iamp /2);end;
% TIAR amplifier bias conditions and parametersIamp_R =200e-9;
gmaR_n=Iamp_R /2/n/Vt;gmaR_p=Iamp_R /2/n/Vt;Cin_R =500*0.86e-15;Ao_R =800;GBWa_R =36000;
Rint=R; % Voltage integrator resistance
% Gain and Amplifier Bandwidth are now constant% Results from Cadence simulationsAo=158;fa=10e6;
% Noise sources (powers) - currentsif (FLICKER)
Nath_n =8/3*kT*gma_n +1/Cox/L_a_n ^2*KFn*(Iamp /2)^AFn./f;Nath_p =8/3*kT*gma_p +1/Cox/L_a_p/W_a_p*KFp*(Iamp /2)^AFp./f;
elseNath_n =8/3*kT*gma_n;Nath_p =8/3*kT*gma_p;
end;N_R =4*kT/R;N_Rint =4*kT*Rint; % This one is voltage due to AihN_pd =2*q*Idc;
% Noise from photodiode reverse biasload ’Vreg_noise.mat’N_Vph=[Nreg zeros(1,(f_final -102e3)/(Fs/Npp))];
% Noise transfer functions (magnitudes)Aath=abs(1/ gma_n *(2*pi*Cd*R*f*j+1) ./(2*pi*Cd/Ao*R*f*j+1) ./(f/fa*j+1));A_R=abs(R./(2*pi*Cd/Ao*R*f*j+1));
% TIA_R is effectively a unity gain buffer for positive noise% (open loop gain is Ao up to the amplifier pole and the amplifier pole is the dominant
one)A_TIARth=abs (1/ gmaR_n ./(f/GBWa_R*j+1));
%% %Integrate and hold transfer function (magnitude)
Aih=abs(tau/C/Rint*sinc(f*tau));f1=f(1: find(f==Fs));Ash=tsh*sinc(tsh*f1/Fs);
if (EXT_NOISE)A_Vph=abs (1+( Aath*gma_n -A_TIARth*gmaR_n).*Aih);Z_Iref =(1+ Aih);
elseA_Vph =0;Z_Iref =0;
end;
% Output noise (powers)% Magnitude is converted to power here!No_R_VintPR=Ash .^2.* foldspectrum2(f,(A_R.*Aih).^2.*N_R ,Fs);% Noise doubled to account for two transistorsNo_ath_n_VintPR =2*Ash .^2.* foldspectrum2(f,(Aath.*Aih).^2.* Nath_n ,Fs);% Noise doubled to account for two transistorsNo_ath_p_VintPR =2*Ash .^2.* foldspectrum2(f,(Aath.*Aih).^2.* Nath_p ,Fs);No_Rint_VintPR=Ash .^2.* foldspectrum2(f,(Aih).^2.* N_Rint ,Fs);No_pd_VintPR=Ash .^2.* foldspectrum2(f,(A_R.*Aih).^2.* N_pd ,Fs);
No_Vph_VintPR=Ash .^2.* foldspectrum2(f,A_Vph .^2.* N_Vph ,Fs);No_Iref_VintPR=Ash .^2.* foldspectrum2(f,Z_Iref .^2.* N_REF ,Fs);
277
No_tot_VintPR=sqrt(trapz(fint ,No_R_VintPR (1: length(fint)))+trapz(fint ,No_ath_n_VintPR (1:length(fint)))+...
trapz(fint ,No_ath_p_VintPR (1: length(fint)))+trapz(fint ,No_Rint_VintPR(1: length(fint)))+...
trapz(fint ,No_pd_VintPR (1: length(fint)))+trapz(fint ,No_Vph_VintPR (1:length(fint)))+...
trapz(fint ,No_Iref_VintPR (1: length(fint))));% Evaluate noise componentsNo_R_int(i)=sqrt(trapz(fint ,No_R_VintPR (1: length(fint))));No_amp_int(i)=sqrt(trapz(fint ,No_ath_n_VintPR (1: length(fint)))+trapz(fint ,No_ath_p_VintPR
(1: length(fint))));No_Rint_int(i)=sqrt(trapz(fint ,No_Rint_VintPR (1: length(fint))));No_pd_int(i)=sqrt(trapz(fint ,No_pd_VintPR (1: length(fint))));No_Vph_int(i)=sqrt(trapz(fint ,No_Vph_VintPR (1: length(fint))));No_Iref_int(i)=sqrt(trapz(fint ,No_Iref_VintPR (1: length(fint))));No_tot_int(i)=sqrt(trapz(fint ,No_R_VintPR (1: length(fint)))+trapz(fint ,No_ath_n_VintPR (1:
length(fint)))+...trapz(fint ,No_ath_p_VintPR (1: length(fint)))+trapz(fint ,No_Rint_VintPR
(1: length(fint)))+...trapz(fint ,No_pd_VintPR (1: length(fint)))+trapz(fint ,No_Vph_VintPR (1:
length(fint)))+...trapz(fint ,No_Iref_VintPR (1: length(fint))));
%Subtract 3dB to account for signal calculation via subtractionSNR_VintPR(i)=20* log10(con*Idc*R/Rint*tau/C/No_tot_VintPR) -3;
end;
278
B FPGA code: PO
front-end digital controller
Listing B.1: FPGA Code: PO Top level controller
--------------------------------------------------------------------------------- K.N. Glaros-- Imperial College London-- Top level controller for Pulse Oximeter-- 15/08/2010---------------------------------------------------------------------------------library IEEE;use IEEE.STD_LOGIC_1164.ALL;
entity Controller_v3 is
Port (rst: in STD_LOGIC;clk: in STD_LOGIC;sin: in STD_LOGIC;sclk: in STD_LOGIC;prog_en: in STD_LOGIC;start: in STD_LOGIC;PR_setup : out STD_LOGIC;PR_off : out STD_LOGIC;settle : out STD_LOGIC;R_bar : out STD_LOGIC;IR_bar : out STD_LOGIC;ch : out STD_LOGIC;S_R : out STD_LOGIC;S_IR : out STD_LOGIC;HPF_rst_R: out STD_LOGIC;HPF_rst_IR: out STD_LOGIC;en_cal_R : out STD_LOGIC;CSH_R_S : out STD_LOGIC;CSH_R_CLKD : out STD_LOGIC;CSH_R_CLK2D : out STD_LOGIC;CSH_R_OUTRST : out STD_LOGIC;
en_cal_IR : out STD_LOGIC;CSH_IR_S : out STD_LOGIC;CSH_IR_CLKD : out STD_LOGIC;CSH_IR_CLK2D : out STD_LOGIC;CSH_IR_OUTRST : out STD_LOGIC;
LED_R_sel : out STD_LOGIC_VECTOR (3 DOWNTO 0);
Iamp : out STD_LOGIC_VECTOR (3 DOWNTO 0);Iref : out STD_LOGIC_VECTOR (5 DOWNTO 0);
int_gain_low : out STD_LOGIC;gain2_R: out STD_LOGIC;gain2_IR: out STD_LOGIC;
debug: out STD_LOGIC;out_R_sel: out STD_LOGIC_VECTOR (1 DOWNTO 0);out_IR_sel: out STD_LOGIC_VECTOR( 1 DOWNTO 0);
ext_adc: out STD_LOGIC;conv_start: out STD_LOGIC
);end Controller_v3;
architecture Behavioral of Controller_v3 is
COMPONENT PO_ctrl_v3PORT(
rst : IN std_logic;clk : IN std_logic;prog_en : IN std_logic;start: in STD_LOGIC;times : IN std_logic_vector (117 downto 0);config_bits : IN std_logic_vector (43 downto 0);PR_setup : OUT std_logic;PR_off : OUT std_logic;settle : OUT std_logic;R_bar : OUT std_logic;IR_bar : OUT std_logic;
279
ch : OUT std_logic;S_R : OUT std_logic;S_IR : OUT std_logic;HPF_rst_R : OUT std_logic;HPF_rst_IR : OUT std_logic;en_cal_R : OUT std_logic;CSH_R_S : OUT std_logic;CSH_R_CLKD : OUT std_logic;CSH_R_CLK2D : OUT std_logic;CSH_R_OUTRST : OUT std_logic;en_cal_IR : OUT std_logic;CSH_IR_S : OUT std_logic;CSH_IR_CLKD : OUT std_logic;CSH_IR_CLK2D : OUT std_logic;CSH_IR_OUTRST : OUT std_logic;LED_R_sel : OUT std_logic_vector (3 downto 0);Iamp : OUT std_logic_vector (3 downto 0);Iref : OUT std_logic_vector (5 downto 0);int_gain_low : OUT std_logic;gain2_R : OUT std_logic;gain2_IR : OUT std_logic;debug : OUT std_logic;out_R_sel : OUT std_logic_vector (1 downto 0);out_IR_sel : OUT std_logic_vector (1 downto 0);ext_adc : OUT std_logic;
conv_start: OUT std_logic);
END COMPONENT;
COMPONENT config_regPORT(
sin : IN std_logic;sclk : IN std_logic;rst : IN std_logic;en : IN std_logic;config_reg : OUT std_logic_vector (161 downto 0));
END COMPONENT;
signal config_reg_out: std_logic_vector (161 DOWNTO 0);
BEGIN
Core: PO_ctrl_v3 PORT MAP (rst => rst ,clk => clk ,prog_en => prog_en ,start => start ,times => config_reg_out (117 DOWNTO 0),config_bits => config_reg_out (161 DOWNTO 118),PR_setup => PR_setup ,PR_off => PR_off ,settle => settle ,R_bar => R_bar ,IR_bar => IR_bar ,ch => ch ,S_R => S_R ,S_IR => S_IR ,HPF_rst_R => HPF_rst_R ,HPF_rst_IR => HPF_rst_IR ,en_cal_R => en_cal_R ,CSH_R_S => CSH_R_S ,CSH_R_CLKD => CSH_R_CLKD ,CSH_R_CLK2D => CSH_R_CLK2D ,CSH_R_OUTRST => CSH_R_OUTRST ,en_cal_IR => en_cal_IR ,CSH_IR_S => CSH_IR_S ,CSH_IR_CLKD => CSH_IR_CLKD ,CSH_IR_CLK2D => CSH_IR_CLK2D ,CSH_IR_OUTRST => CSH_IR_OUTRST ,LED_R_sel => LED_R_sel ,Iamp => Iamp ,Iref => Iref ,int_gain_low => int_gain_low ,gain2_R => gain2_R ,gain2_IR => gain2_IR ,debug => debug ,out_R_sel => out_R_sel ,out_IR_sel => out_IR_sel ,ext_adc => ext_adc ,conv_start => conv_start
);
Prog_reg: config_reg PORT MAP (sin => sin ,sclk => sclk ,rst => rst ,en => prog_en ,config_reg => config_reg_out
);
end Behavioral;
Listing B.2: FPGA Code: PO controller
------------------------------------------------------------------------------------ K.N. Glaros-- Imperial College London-- Pulse Oximeter Controller
280
-- 29/06/2010------------------------------------------------------------------------------------library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.NUMERIC_STD.ALL;
entity PO_ctrl_v3 isPort (rst: in STD_LOGIC;
clk: in STD_LOGIC;prog_en: in STD_LOGIC;start: in STD_LOGIC;
times: in STD_LOGIC_VECTOR (117 DOWNTO 0);config_bits: in STD_LOGIC_VECTOR (43 DOWNTO 0);
PR_setup : out STD_LOGIC;PR_off : out STD_LOGIC;settle : out STD_LOGIC;R_bar : out STD_LOGIC;IR_bar : out STD_LOGIC;
ch : out STD_LOGIC;S_R : out STD_LOGIC;S_IR : out STD_LOGIC;
HPF_rst_R: out STD_LOGIC;HPF_rst_IR: out STD_LOGIC;
en_cal_R : out STD_LOGIC;CSH_R_S : out STD_LOGIC;CSH_R_CLKD : out STD_LOGIC;CSH_R_CLK2D : out STD_LOGIC;CSH_R_OUTRST : out STD_LOGIC;
en_cal_IR : out STD_LOGIC;CSH_IR_S : out STD_LOGIC;CSH_IR_CLKD : out STD_LOGIC;CSH_IR_CLK2D : out STD_LOGIC;CSH_IR_OUTRST : out STD_LOGIC;
LED_R_sel : out STD_LOGIC_VECTOR (3 DOWNTO 0);
Iamp : out STD_LOGIC_VECTOR (3 DOWNTO 0);Iref : out STD_LOGIC_VECTOR (5 DOWNTO 0);
int_gain_low : out STD_LOGIC;gain2_R: out STD_LOGIC;gain2_IR: out STD_LOGIC;
debug: out STD_LOGIC;out_R_sel: out STD_LOGIC_VECTOR (1 DOWNTO 0);out_IR_sel: out STD_LOGIC_VECTOR( 1 DOWNTO 0);
ext_adc: out STD_LOGIC;conv_start: out STD_LOGIC
);end PO_ctrl_v3;
architecture Behavioral of PO_ctrl_v3 is
COMPONENT shift_regGENERIC (w : INTEGER);PORT(
rst : IN std_logic;clk : IN std_logic;d : IN std_logic;o : OUT std_logic);
END COMPONENT;
TYPE fsm_state IS (reset , cal_R_setup , cal_IR_setup , cal_R , cal_IR , cal_R_track ,cal_IR_track , cal_R_hold , cal_IR_hold , cal_R_HPF , cal_IR_HPF , post_cal , R_setup ,R_settle , R_integ , R_track , R_SH_settle , R_idle , IR_setup , IR_settle , IR_integ ,IR_track , IR_SH_settle , IR_idle , amb_setup , amb_settle , amb_integ , amb_track ,amb_SH_settle , amb_idle , cal_cnt_rst_state);
SIGNAL ss, ss_next : fsm_state;SIGNAL time_counter , duration: STD_LOGIC_VECTOR (15 DOWNTO 0);SIGNAL state_change: STD_LOGIC;
SIGNAL cal_counter : std_logic_vector (15 DOWNTO 0);SIGNAL cal_counter_incr , cal_counter_rst ,cal_counter_en , cal_counter_en_del: STD_LOGIC;-- internal signals to use for registered FSM outputsSIGNAL PR_setup_int , PR_on_int , settle_int , R_int , IR_int , ch_int , S_R_int , S_IR_int ,
HPF_rst_R_int , HPF_rst_IR_int , en_cal_R_int , CSH_R_S_int , CSH_R_CLKD_int ,CSH_R_CLK2D_int , CSH_R_OUTRST_int , en_cal_IR_int , CSH_IR_S_int , CSH_IR_CLKD_int ,CSH_IR_CLK2D_int , CSH_IR_OUTRST_int , conv_start_int , int_gain_low_int ,cal_counter_incr_int , cal_counter_rst_int: STD_LOGIC;
--time signalsSIGNAL T_PR_setup , T_track ,T_SH_settle: STD_LOGIC_VECTOR (5 DOWNTO 0);SIGNAL T_settle_R , T_settle_IR , T_int_R , T_int_IR: STD_LOGIC_VECTOR (11 DOWNTO 0);--used for settling of HPF AND tracking time for cal SHSIGNAL T_cal_del: STD_LOGIC_VECTOR (9 DOWNTO 0);SIGNAL T_cal , T_idle_R , T_idle_IR: STD_LOGIC_VECTOR (13 DOWNTO 0);
--configuration bitsSIGNAL N_cal: STD_LOGIC_VECTOR (15 DOWNTO 0);SIGNAL int_gain_low_ctrl: STD_LOGIC;SIGNAL conv_start_high: STD_LOGIC;SIGNAL conv_cont: STD_LOGIC;SIGNAL cal_en: STD_LOGIC;SIGNAL single_channel: STD_LOGIC;SIGNAL amb_en: STD_LOGIC;-- signal to provide inverted outputsSIGNAL PR_on , R, IR: STD_LOGIC;
281
BEGIN
-- assignment of timing vector to signalsT_cal <=times (13 DOWNTO 0);T_cal_del <=times (23 DOWNTO 14);T_PR_setup <= times (29 DOWNTO 24);T_track <= times (35 DOWNTO 30);T_settle_R <= times (47 DOWNTO 36);T_int_R <= times (59 DOWNTO 48);T_idle_R <= times (73 DOWNTO 60);T_settle_IR <=times (85 DOWNTO 74);T_int_IR <= times (97 DOWNTO 86);T_idle_IR <=times (111 DOWNTO 98);T_SH_settle <=times (117 DOWNTO 112);
-- assignment of configuration bits to signals/outputs ( constants !)-- latchedconfig_bits_reg: PROCESSBEGINWAIT UNTIL clk ’EVENT and clk=’1’;IF rst=’1’ THEN
LED_R_sel <=( OTHERS=>’0’);N_cal <=( OTHERS=>’0’);Iref <=( OTHERS=>’0’);Iamp <=( OTHERS=>’0’);int_gain_low_ctrl <=’0’;gain2_R <=’0’;gain2_IR <=’0’;debug <=’0’;out_R_sel <=( OTHERS=>’0’);out_IR_sel <=( OTHERS=>’0’);ext_adc <=’0’;conv_start_high <=’0’;conv_cont <=’0’;cal_en <=’0’;single_channel <=’0’;amb_en <=’0’;
ELSEIF prog_en=’0’ THEN
LED_R_sel <= config_bits (3 DOWNTO 0);N_cal <= config_bits (19 DOWNTO 4);Iref <= config_bits (25 DOWNTO 20);Iamp <= config_bits (29 DOWNTO 26);int_gain_low_ctrl <= config_bits (30);gain2_R <= config_bits (31);gain2_IR <= config_bits (32);debug <= config_bits (33);out_R_sel <= config_bits (35 DOWNTO 34);out_IR_sel <= config_bits (37 DOWNTO 36);ext_adc <= config_bits (38);conv_start_high <= config_bits (39);conv_cont <= config_bits (40);cal_en <= config_bits (41);single_channel <= config_bits (42);amb_en <= config_bits (43);
END IF;END IF;END PROCESS config_bits_reg;
-- generate delayed clocks - CSH_S is clk_barclk_del1: shift_reg GENERIC MAP (6) PORT MAP ( rst=>rst , clk=>clk , d=>CSH_R_S_int , o=>
CSH_R_CLKD_int);clk_del2: shift_reg GENERIC MAP (6) PORT MAP ( rst=>rst , clk=>clk , d=>CSH_R_CLKD_int , o=>
CSH_R_CLK2D_int);clk_del3: shift_reg GENERIC MAP (6) PORT MAP ( rst=>rst , clk=>clk , d=>CSH_IR_S_int , o=>
CSH_IR_CLKD_int);clk_del4: shift_reg GENERIC MAP (6) PORT MAP ( rst=>rst , clk=>clk , d=>CSH_IR_CLKD_int , o=>
CSH_IR_CLK2D_int);
-- generate output reset signal for LL S/H - CSH_S is clk_barCSH_R_OUTRST_int <= (not CSH_R_S_int) nor (CSH_R_CLK2D_int);-- signal is registered together with FSM outputsCSH_IR_OUTRST_int <= (not CSH_IR_S_int) nor (CSH_IR_CLK2D_int);
PR_off <=not PR_on; -- inverted outputsR_bar <=not R;IR_bar <=not IR;
state_fsm: PROCESSBEGIN
WAIT UNTIL clk ’EVENT and clk=’1’;-- make possible the use of start as a FSM reset signalIF rst=’1’ or start=’0’ THEN
ss <= reset;ELSE
ss <= ss_next;END IF;
END PROCESS state_fsm;
next_state_fsm: PROCESS(ss,state_change , N_cal , cal_counter ,cal_en ,single_channel ,amb_en)BEGIN
ss_next <=ss;IF state_change=’1’ THEN
CASE ss ISWHEN reset =>
IF cal_en=’1’ THENss_next <= cal_R_setup;
ELSEss_next <= R_setup;
END IF;WHEN cal_R_setup => ss_next <= cal_R;WHEN cal_R => ss_next <= cal_R_track;WHEN cal_R_track => ss_next <= cal_R_hold;
282
WHEN cal_R_hold => ss_next <= cal_R_HPF;WHEN cal_R_HPF => ss_next <= cal_IR_setup;WHEN cal_IR_setup => ss_next <= cal_IR;WHEN cal_IR => ss_next <= cal_IR_track;WHEN cal_IR_track => ss_next <= cal_IR_hold;WHEN cal_IR_hold => ss_next <= cal_IR_HPF;WHEN cal_IR_HPF => ss_next <= post_cal;WHEN post_cal => ss_next <= R_setup;WHEN R_setup => ss_next <= R_settle;WHEN R_settle => ss_next <= R_integ;WHEN R_integ => ss_next <= R_track;WHEN R_track => ss_next <= R_SH_settle;WHEN R_SH_settle => ss_next <= R_idle;WHEN IR_setup => ss_next <= IR_settle;WHEN IR_settle => ss_next <= IR_integ;WHEN IR_integ => ss_next <= IR_track;WHEN IR_track => ss_next <= IR_SH_settle;WHEN IR_SH_settle => ss_next <= IR_idle;WHEN R_idle =>
IF single_channel =’0’ THENss_next <= IR_setup;
ELSEIF cal_counter = N_cal THEN
ss_next <= cal_R_setup;ELSE
ss_next <= R_setup;END IF;
END IF;WHEN IR_idle =>
IF amb_en=’1’ THEN -- use IR measurement cycle to measure ambient lightss_next <= amb_setup;
ELSEIF cal_counter = N_cal THEN
ss_next <= cal_R_setup;ELSE
ss_next <= R_setup;END IF;
END IF;WHEN amb_setup => ss_next <= amb_settle;WHEN amb_settle => ss_next <= amb_integ;WHEN amb_integ => ss_next <= amb_track;WHEN amb_track => ss_next <= amb_SH_settle;WHEN amb_SH_settle=> ss_next <= amb_idle;WHEN amb_idle =>
IF cal_counter = N_cal THENss_next <= cal_cnt_rst_state;
ELSEss_next <= R_setup;
END IF;WHEN cal_cnt_rst_state => ss_next <= cal_R_setup;END CASE;
END IF;END PROCESS next_state_fsm;
state_duration_proc:PROCESS(ss, T_cal , T_cal_del , T_PR_setup , T_track , T_settle_R , T_int_R , T_idle_R ,
T_settle_IR , T_int_IR , T_idle_IR , T_SH_settle)BEGIN
CASE ss ISWHEN reset => duration <= X"0064";WHEN cal_R_setup => duration <= std_logic_vector(resize(unsigned(T_PR_setup) ,16));WHEN cal_R => duration <= std_logic_vector(resize(unsigned(T_cal) ,16));WHEN cal_R_track => duration <= std_logic_vector(resize(unsigned(T_cal_del) ,16));WHEN cal_R_hold => duration <= std_logic_vector(resize(unsigned(T_cal_del) ,16));WHEN cal_R_HPF => duration <= std_logic_vector(resize(unsigned(T_cal_del) ,16));WHEN cal_IR_setup => duration <= std_logic_vector(resize(unsigned(T_PR_setup) ,16));WHEN cal_IR => duration <= std_logic_vector(resize(unsigned(T_cal) ,16));WHEN cal_IR_track => duration <= std_logic_vector(resize(unsigned(T_cal_del) ,16));WHEN cal_IR_hold => duration <= std_logic_vector(resize(unsigned(T_cal_del) ,16));WHEN cal_IR_HPF => duration <= std_logic_vector(resize(unsigned(T_cal_del) ,16));WHEN post_cal => duration <= std_logic_vector(resize(unsigned(T_cal_del) ,16));WHEN R_setup => duration <= std_logic_vector(resize(unsigned(T_PR_setup) ,16));WHEN R_settle => duration <= std_logic_vector(resize(unsigned(T_settle_R) ,16));WHEN R_integ => duration <= std_logic_vector(resize(unsigned(T_int_R) ,16));WHEN R_track => duration <= std_logic_vector(resize(unsigned(T_track) ,16));WHEN R_SH_settle => duration <= std_logic_vector(resize(unsigned(T_SH_settle) ,16));WHEN R_idle => duration <= std_logic_vector(resize(unsigned(T_idle_R) ,16));WHEN IR_setup => duration <= std_logic_vector(resize(unsigned(T_PR_setup) ,16));WHEN IR_settle => duration <= std_logic_vector(resize(unsigned(T_settle_IR) ,16));WHEN IR_integ => duration <= std_logic_vector(resize(unsigned(T_int_IR) ,16));WHEN IR_track => duration <= std_logic_vector(resize(unsigned(T_track) ,16));WHEN IR_SH_settle => duration <= std_logic_vector(resize(unsigned(T_SH_settle) ,16));WHEN IR_idle => duration <= std_logic_vector(resize(unsigned(T_idle_IR) ,16));WHEN amb_setup => duration <= std_logic_vector(resize(unsigned(T_PR_setup) ,16)); -- IR
parameters for ambientWHEN amb_settle => duration <= std_logic_vector(resize(unsigned(T_settle_IR) ,16));WHEN amb_integ => duration <= std_logic_vector(resize(unsigned(T_int_IR) ,16));WHEN amb_track => duration <= std_logic_vector(resize(unsigned(T_track) ,16));WHEN amb_SH_settle => duration <= std_logic_vector(resize(unsigned(T_SH_settle) ,16));WHEN amb_idle => duration <= std_logic_vector(resize(unsigned(T_idle_IR) ,16));WHEN cal_cnt_rst_state => duration <= X"0001";
END CASE;END PROCESS state_duration_proc;
FSM_output_reg: PROCESS -- register all FSM outputs
BEGIN
WAIT UNTIL clk ’EVENT and CLK=’1’;PR_setup <= PR_setup_int;PR_on <= PR_on_int;settle <= settle_int;R<= R_int;IR <= IR_int;
283
ch <= ch_int;S_R <= S_R_int;S_IR <= S_IR_int;HPF_rst_R <= HPF_rst_R_int;HPF_rst_IR <= HPF_rst_IR_int;en_cal_R <= en_cal_R_int;CSH_R_S <= CSH_R_S_int;CSH_R_CLKD <=not CSH_R_CLKD_int; -- inversions required because CSH_R_S is clk_barCSH_R_CLK2D <=not CSH_R_CLK2D_int;CSH_R_OUTRST <= CSH_R_OUTRST_int;en_cal_IR <= en_cal_IR_int;CSH_IR_S <= CSH_IR_S_int;CSH_IR_CLKD <=not CSH_IR_CLKD_int;CSH_IR_CLK2D <=not CSH_IR_CLK2D_int;CSH_IR_OUTRST <= CSH_IR_OUTRST_int;conv_start <= conv_start_int;int_gain_low <= int_gain_low_int;cal_counter_incr <= cal_counter_incr_int;cal_counter_rst <= cal_counter_rst_int;
END PROCESS FSM_output_reg;
control_signals_combinatorial: PROCESS(ss, int_gain_low_ctrl , conv_start_high , conv_cont)
BEGIN
R_int <= ’0’;IR_int <= ’0’;PR_on_int <= ’0’;PR_setup_int <= ’0’;settle_int <= ’0’;int_gain_low_int <= int_gain_low_ctrl;S_R_int <=’0’;S_IR_int <=’0’;
HPF_rst_R_int <=’0’;HPF_rst_IR_int <=’0’;en_cal_R_int <=’0’;en_cal_IR_int <=’0’;CSH_R_S_int <=’1’;CSH_IR_S_int <=’1’;cal_counter_incr_int <=’0’;cal_counter_rst_int <=’0’;
-- set default conv_start variable value (used in other states than "idle")conv_start_int <= conv_cont xnor conv_start_high;
CASE ss ISWHEN reset =>
ch_int <=’0’;cal_counter_rst_int <=’1’;
WHEN cal_R_setup =>en_cal_R_int <=’1’;R_int <=’1’;PR_on_int <=’1’;PR_setup_int <=’1’;ch_int <=’1’;int_gain_low_int <=’1’; -- always set low gain at calibration phase for stability
purposesWHEN cal_IR_setup =>
en_cal_IR_int <=’1’;IR_int <=’1’;PR_on_int <=’1’;PR_setup_int <=’1’;ch_int <=’0’;int_gain_low_int <=’1’;
WHEN cal_R =>en_cal_R_int <=’1’;R_int <=’1’;PR_on_int <=’1’;ch_int <=’1’;int_gain_low_int <=’1’;
WHEN cal_IR =>en_cal_IR_int <=’1’;IR_int <=’1’;PR_on_int <=’1’;ch_int <=’0’;int_gain_low_int <=’1’;
WHEN cal_R_track =>en_cal_R_int <=’1’;R_int <=’1’;PR_on_int <=’1’;CSH_R_S_int <=’0’;ch_int <=’1’;int_gain_low_int <=’1’;
WHEN cal_IR_track =>en_cal_IR_int <=’1’;IR_int <=’1’;PR_on_int <=’1’;CSH_IR_S_int <=’0’;ch_int <=’0’;int_gain_low_int <=’1’;
WHEN cal_R_hold => -- this state keeps the SH input constant while the held valuesettles
en_cal_R_int <=’1’;R_int <=’1’;PR_on_int <=’1’;ch_int <=’1’;int_gain_low_int <=’1’;
WHEN cal_IR_hold =>en_cal_IR_int <=’1’;IR_int <=’1’;PR_on_int <=’1’;ch_int <=’0’;int_gain_low_int <=’1’;
WHEN cal_R_HPF => -- this state resets the HPF to the held input DC levelR_int <=’1’;PR_on_int <=’1’;
284
ch_int <=’1’;settle_int <=’1’;S_R_int <=’1’;HPF_rst_R_int <=’1’;int_gain_low_int <=’1’;
WHEN cal_IR_HPF =>IR_int <=’1’;PR_on_int <=’1’;ch_int <=’0’;settle_int <=’1’;S_IR_int <=’1’;HPF_rst_IR_int <=’1’;
WHEN post_cal =>ch_int <=’0’;settle_int <=’0’;S_IR_int <=’0’;S_R_int <=’0’;
WHEN R_setup =>cal_counter_incr_int <= ’1’;ch_int <=’1’;PR_on_int <=’1’;PR_setup_int <=’1’;settle_int <=’1’;
WHEN IR_setup =>ch_int <=’0’;PR_on_int <=’1’;PR_setup_int <=’1’;settle_int <=’1’;
WHEN R_settle =>ch_int <=’1’;PR_on_int <=’1’;R_int <=’1’;settle_int <=’1’;
WHEN IR_settle =>ch_int <=’0’;PR_on_int <=’1’;IR_int <=’1’;settle_int <=’1’;
WHEN R_integ =>ch_int <=’1’;PR_on_int <=’1’;R_int <=’1’;
WHEN IR_integ =>ch_int <=’0’;PR_on_int <=’1’;IR_int <=’1’;
WHEN R_track =>ch_int <=’1’;PR_on_int <=’1’;R_int <=’1’;S_R_int <=’1’;
WHEN IR_track =>ch_int <=’0’;PR_on_int <=’1’;IR_int <=’1’;S_IR_int <=’1’;
WHEN R_SH_settle =>ch_int <=’1’;PR_on_int <=’1’;R_int <=’1’;
WHEN IR_SH_settle =>ch_int <=’0’;PR_on_int <=’1’;IR_int <=’1’;
WHEN R_idle =>ch_int <=’1’;settle_int <=’1’;IF conv_start_high =’1’ THEN
conv_start_int <=’1’;ELSE
conv_start_int <=’0’;END IF;
WHEN IR_idle =>ch_int <=’0’;settle_int <=’1’;IF conv_start_high =’1’ THEN
conv_start_int <=’1’;ELSE
conv_start_int <=’0’;END IF;-- IR control signals for ambient measurement (except for IR_ON of course !)
WHEN amb_setup =>ch_int <=’0’;PR_on_int <=’1’;PR_setup_int <=’1’;-- alternating ch_int pattern for ambient measurement just for debugging
WHEN amb_settle =>ch_int <=’1’;PR_on_int <=’1’;settle_int <=’1’;
WHEN amb_integ =>ch_int <=’0’;PR_on_int <=’1’;
WHEN amb_track =>ch_int <=’0’;PR_on_int <=’1’;S_IR_int <=’1’;
WHEN amb_SH_settle =>ch_int <=’0’;PR_on_int <=’1’;
WHEN amb_idle =>ch_int <=’0’;settle_int <=’1’;IF conv_start_high =’1’ THEN
conv_start_int <=’1’;ELSE
conv_start_int <=’0’;END IF;
285
WHEN cal_cnt_rst_state =>ch_int <=’0’;cal_counter_rst_int <=’1’;
END CASE;
END PROCESS control_signals_combinatorial;
time_compare_proc:PROCESS(rst , time_counter , duration , start)BEGIN
IF rst=’1’ or start=’0’ THENstate_change <=’0’;
ELSEstate_change <=’0’;IF unsigned(time_counter) = unsigned(duration) THEN
state_change <=’1’;END IF;
END IF;END PROCESS time_compare_proc;
time_counter_proc:PROCESS(rst ,clk ,start)BEGIN
IF rst=’1’ or start=’0’ THENtime_counter <=( OTHERS=>’0’);
ELSEIF clk ’EVENT AND clk=’1’ THEN
IF state_change=’1’ THENtime_counter <=( OTHERS=>’0’);
ELSEtime_counter <= std_logic_vector(unsigned(time_counter)+to_unsigned (1,1));
END IF;END IF;
END IF;END PROCESS time_counter_proc;
cal_counter_proc:PROCESS(cal_counter_rst ,cal_counter_incr , clk , cal_counter_en)BEGIN
IF cal_counter_rst =’1’ THENcal_counter <=( OTHERS=>’0’);
ELSIF cal_counter_en =’1’ THENIF clk ’EVENT and clk=’1’ THEN
cal_counter <= std_logic_vector(unsigned(cal_counter)+to_unsigned (1,1));END IF;
END IF;END PROCESS cal_counter_proc;
-- used to generate a pulse with 1 clk cycle duration to drive the en of a counter-- instead of the clk inputone_cycle_pulse_gen:PROCESS(rst ,clk ,cal_counter_incr , cal_counter_en_del)BEGIN
IF rst=’1’ THENcal_counter_en_del <=’0’;
ELSIF clk ’EVENT and clk=’1’ THENcal_counter_en_del <= not cal_counter_incr;
END IF;cal_counter_en <= cal_counter_incr and cal_counter_en_del;
END PROCESS one_cycle_pulse_gen;
end Behavioral;
Listing B.3: FPGA Code: Programming register
--------------------------------------------------------------------------------- K.N. Glaros-- Imperial College London-- Programming register for Pulse Oximeter-- 15/08/2010---------------------------------------------------------------------------------library IEEE;use IEEE.STD_LOGIC_1164.ALL;
entity config_reg isPort ( sin : in STD_LOGIC;
sclk : in STD_LOGIC;rst : in STD_LOGIC;en : in STD_LOGIC;config_reg : out STD_LOGIC_VECTOR (161 downto 0));
end config_reg;
architecture Behavioral of config_reg is
SIGNAL pre_reg: STD_LOGIC_VECTOR(config_reg ’RANGE);
BEGIN
PROCESS(sclk ,rst ,en)BEGIN
IF rst=’1’ THENpre_reg <=( OTHERS=>’0’);
ELSIF sclk ’EVENT and sclk=’1’ THENIF en=’1’ THEN
pre_reg(pre_reg ’HIGH DOWNTO 1) <=pre_reg(pre_reg ’HIGH -1 DOWNTO 0);pre_reg (0) <=sin;
END IF;END IF;
END PROCESS;
config_reg <= pre_reg;
286
end Behavioral;
Listing B.4: FPGA Code: Shift register
--------------------------------------------------------------------------------- K.N. Glaros-- Imperial College London-- Shift register for Pulse Oximeter-- 12/08/2010---------------------------------------------------------------------------------library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.NUMERIC_STD.ALL;
entity shift_reg isGeneric (w : INTEGER);Port ( rst : in STD_LOGIC;
clk : in STD_LOGIC;d : in STD_LOGIC;o : out STD_LOGIC);
end shift_reg;
architecture Behavioral of shift_reg is
SIGNAL reg: STD_LOGIC_VECTOR(w-1 DOWNTO 0);
BEGINPROCESSBEGIN
WAIT UNTIL clk ’EVENT AND clk=’1’;IF rst=’1’ THEN
reg <=( OTHERS=>’0’);ELSE
reg <=reg(w-2 DOWNTO 0)&d;END IF;
END PROCESS;
o<=reg(w-1);
end Behavioral;
287