Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2019 Apr 1.
Published in final edited form as: IEEE Trans Biomed Circuits Syst. 2018 Apr;12(2):360–378. doi: 10.1109/TBCAS.2017.2781253

A Digitally Programmable Cytomorphic Chip for Simulation of Arbitrary Biochemical Reaction Networks

Sung Sik Woo 1, Jaewook Kim 2, Rahul Sarpeshkar 3,
PMCID: PMC5922985  NIHMSID: NIHMS954191  PMID: 29570063

Abstract

Prior work has shown that compact analog circuits can faithfully represent and model fundamental bio-molecular circuits via efficient log-domain cytomorphic transistor equivalents. Such circuits have emphasized basis functions that are dominant in genetic transcription and translation networks and DNA-protein binding. Here, we report a system featuring digitally programmable 0.35 µm BiCMOS analog cytomorphic chips that enable arbitrary biochemical reaction networks to be exactly represented thus enabling compact and easy composition of protein networks as well. Since all biomolecular networks can be represented as chemical reaction networks, our protein networks also include the former genetic network circuits as a special case. The cytomorphic analog protein circuits use one fundamental association-dissociation-degradation building-block circuit that can be configured digitally to exactly represent any zeroth-, first-, and second-order reaction including loading, dynamics, nonlinearity, and interactions with other building-block circuits. To address a divergence issue caused by random variations in chip fabrication processes, we propose a unique way of performing computation based on total variables and conservation laws, which we instantiate at both the circuit and network levels. Thus, scalable systems that operate with finite error over infinite time can be built. We show how the building-block circuits can be composed to form various network topologies such as cascade, fan-out, fan-in, loop, dimerization, or arbitrary networks using total variables. We demonstrate results from a system that combines interacting cytomorphic chips to simulate a cancer pathway and a glycolysis pathway. Both simulations are consistent with conventional software simulations. Our highly parallel digitally programmable analog cytomorphic systems can lead to a useful design, analysis, and simulation tool for studying arbitrary large-scale biological networks in systems and synthetic biology.

Index Terms: cytomorphic, biochemical reaction, reaction networks, transistor models, cellular models, biological circuit simulation, cancer circuits, glycolysis, synthetic biology, systems biology

I. Introduction

The large-scale simulation of stochastic biochemical reaction networks can play an important role in discovering pathways and parameters, analyzing intricate cell functions, predicting and preventing diseases, and designing synthetic circuits. However, biological networks often contain multi- scale, stochastic (noisy), nonlinear, non-modular, and feedback dynamical effects and therefore are extremely computationally intensive to simulate. For example, it has been estimated that it would take years to simulate the whole stochastic reaction events in an E. coli cell over one cell cycle [1]. In a recent work, a simulation of a single division of one of the smallest bacterium, M. genitalium, took 10 hours on a 128-node Linux cluster, even with highly simplified and mostly deterministic methods [2]. These methods do not implement the biologically exact Gillespie Stochastic Simulation Algorithm [3] for biochemical reaction network evolution.

To tackle this challenge, researchers have developed various hardware acceleration techniques that leverage parallelism by exploiting a number of CPUs, graphics processing units (GPUs), or field-programmable gate arrays (FPGAs) [4]–[7]. However, these techniques have a common drawback that simulation time inevitably increases as molecular population size or network scale increases. This drawback arises because conventional Gillespie algorithms [3], [8] require serial execution of each reaction event, and so more reaction events lead to longer simulation time. Although several algorithms such as tau-leaping methods [9]–[12] have been proposed to speed up the original Gillespie algorithm, they not only compromise accuracy but also are effective only when certain conditions (e.g., large molecular population for all species or distinct separation of timescales) are satisfied. Thus, previous solutions are ill-suited for simulation of general biological networks that naturally span multiple orders of magnitude in terms of timescale, molecular population size, and network size.

The approach that we propose has a fundamentally different nature from the previous solutions. It originates from the “cytomorphic mapping” shown in Fig. 1, which captures the deep mathematical similarities between the dynamics of a chemical reaction and subthreshold transistor operation [13]: For example, reactant and product concentrations are analogous to the electron concentrations at the source and the drain; forward and reverse reaction fluxes can be mapped into the forward and reverse electronic current flow; the chemical potential of an enzyme alters energy barriers to exponentially control reaction fluxes analogous to the way gate voltage exponentially control current flow; and remarkably, the two systems both exhibit the stochastics of Poisson shot noise.

Fig. 1.

Fig. 1

Deep similarities between a chemical reactions and transistor operation [13]. This “cytomorphic” mapping enables us to build efficient transistor circuits that quantitatively represent biochemical reaction networks.

Grounded on these similarities, we have revealed in our earlier publications that compact analog log-domain transistor circuits can be built to model chemical reactions efficiently and accurately [13]–[17]. In these realizations, we utilized the fact that electrochemical potential manifests itself as “log(chemical concentration) + energy” in chemistry and “log(electric current) + voltage” in transistors. That is, electric current represents concentration in this analogy. This arises from the logarithmic and exponential basis functions that transistors are born with. As such, it enables us to use log-domain analog circuits to create dynamical systems of the form

dxdt=C+Dx+E(xx)+Fu+G(xu) (1)
y=Hx+Ku

where x, y and u denote the vectors for reactant concentrations, output concentrations, and input variables, respectively [14], [16]. The matrix coefficients represent chemical-reaction kinetic parameters and ⊗ indicates the outer product. The above equation is general enough to create any combination of zeroth-, first-, and second-order chemical reactions.

Therefore, log-domain cytomorphic circuits built on top of this principle can be very effective in making a quantitative connection between chemistry and electronics. For example, prior work in [17] showcased how this approach can be lever-aged to implement an integrated circuit that models and simulates the dynamics of fundamental basis functions that are dominant in transcriptional networks. Reference [18] discusses how continuous-time signal processing inherent in this methodology, combined with the design of a novel noise generator based on amplified thermal noise, leads to highly parallel asynchronous stochastic simulation and network-size-invariant simulation time. These advantages enable massively parallel and high-speed simulation. Furthermore, the analogy described above suggests that analog circuit design principles accumulated over decades can be utilized to create highly efficient log-domain synthetic circuits in living cells [19] or to serve as a “unifying language” that symbolically represents molecular circuits, thereby helping analyze and design complex biological circuits [16].

One critical shortcoming of the chip presented in [17] was that the types of networks it could model were limited to relatively simple transcriptional networks. However, biochemical reaction networks such as protein and metabolite networks exhibit complex dynamics and various forms of network topologies including cascade, fan-out, fan-in, and loop topologies. Modeling and simulation of such networks require highly versatile computational units which can be flexibly reconfigured to represent any network connectivity including subtle effects like loading: the use of molecules in a downstream unit reduces the number of molecules in the upstream unit that it connects to, thus altering both their dynamics. Thus, the main goal of this paper is to describe a system that can model and simulate arbitrary biochemical reaction networks in cells by composing basic cytomorphic modular units. Just as digital devices such as CPUs or GPUs can be programmed to perform any desired computation, our flexible system can be programmed to simulate arbitrary biochemical reaction networks.

It is important to note that such an attempt based on analog hardware faces two critical challenges. First, as previous researchers have reported [14], [20], [21], solutions generated by such simulation easily diverge due to random mismatches inherent in analog circuits. Second, analog hardware tends to not be very flexible, which makes it difficult to simulate diverse networks using the same circuitry. To cope with both issues, we propose a methodology and framework that uses “total” variables and conservation laws for computation. In addition, within this framework, we engineer a “protein chip” which contains an array of universal association-dissociation-degradation building-block circuits (a.k.a. protein blocks) that leverage digital bits and digital circuits to enhance programmability and scalability of analog blocks.

The organization of this paper is as follows: Section II describes the use of total variables and conservation laws to address the divergence issue. Section III presents the overview of the system and the details of a protein block. Section IV shows how to compose and configure protein blocks to model various network topologies. Section V illustrates two simulation examples of biological networks, namely, a cancer pathway and a glycolysis pathway, that demonstrate the functionality of our system. Section VI summarizes the specifications of the protein chip. Section VII discusses the significance of our work and Section VIII concludes the paper.

II. Solving the Divergence Issue Using Total Variables and Conservation Laws

The mathematics of biochemical reactions requires that every time a product is created, each of the reactants is consumed. Because of this “loading” effect, an identical flux term appears in the differential equations for the product and reactants, but with opposite signs (assuming all stoichiometric coefficients are 1 or −1 for simplicity). Mismatches due to random variations in physical analog devices make it challenging to solve differential equations while preserving such detailed balance in the fluxes.

For instance, consider a simple transformation reaction AB. Previous methods have been attempted to solve this reaction by constructing two integrator circuits to separately solve the two differential equations for A and B, given by

d[A]dt=kf[A]+kr[B] (2)
d[B]dt=(1+mm1)kf[A](1+mm2)kr[B]

where kf and kr are the reaction rate constants for the forward and reverse reaction respectively, and mm1 and mm2 denote mismatch errors due to random variations in fabrication processes. To reach steady state, both d[A]/dt and d[B]/dt need to evolve to zero but such evolution can never occur if there is any mismatch. A mathematical proof illustrates why: The Jacobian or dynamic-evolution matrix corresponding to (2) is given by

J=[kfkr(1+mm1)kf(1+mm2)kr] (3)

and its eigenvalues can be calculated by solving

λ2+(kf+(1+mm2)kr)λ+((1+mm2)kfkr(1+mm1)kfkr)=0. (4)

If the two eigenvalues are defined as λ1 and λ2, the solution of (2) has the form of

[A]=c1eλ1t+c2eλ2t (5)
[B]=c3eλ1t+c4eλ2t

where c1, c2, c3, and c4 are constants. Unless one eigenvalue is zero, this system cannot have a nonzero steady-state solution. From (4), it can be seen that a zero eigenvalue is obtained only when mm1 = mm2. Since mm1 and mm2 are random physical variables, their values cannot be exactly the same. Therefore, the solution diverges to either 0 or ∞, depending on the relative size of the mismatches.

Fig. 2(a) shows a case where a 1% mismatch between the two flux terms for the forward reaction is assumed (i.e., mm1=0.01 and mm2=0). Although the waveforms seem to approach steady state on a fast timescale, they eventually diverge to infinity on a slow timescale, no matter how small the mismatch is. In light of the fact that biological processes often span a wide range of timescales, such divergence can be catastrophic. We now discuss how the use of “total” variables can avoid such divergence in the differential equations.

Fig. 2.

Fig. 2

Simulation of a simple transformation reaction, AB, which shows the divergence problem and our scheme to prevent it. Parameters are set as kf = kr = 10 s−1, mm1 = mm3 = 0.01 (1% mismatch), mm2 = 0.01, [A]0 = 10 nM, and [B]0 = 0 nM. (a) The conventional way of simulating the dynamics of the reaction. Two differential equations expressed in the figure are solved, where mm1 and mm2 represent random mismatch. The inset shows the initial response (1s time span), where the solution seems to reach steady state. However, on a slow timescale, it diverges. (b) The result from our method, which does not diverge in the presence of mismatch (modeled as mm3). The trick is to compute the “free” amount of reactants by subtracting the amount of products from the amount of “total” reactants ([Atot] in this example). (c) A simplified block diagram of the circuit that simulates AB. Note the “use-it-and-lose-it” negative-feedback loop which yields the free amount of A. In our cytomorphic chips, concentration variables are represented by electric current. Thus, this subtraction is easily carried out by the conservation law of current (i.e., Kirchhoff’s current law).

Since outgoing fluxes from a reactant differential equation lead to precisely matched incoming fluxes in a product differential equation, the “total” stoichiometric number of reactant and product molecules remains conserved in a reaction. If the total concentration of products and reactants and the product concentrations are known, we can exploit this conservation law to determine the free-reactant molecular concentration by subtraction: As shown in an example of a binding reaction in Fig. 2(c) any created products are subtracted from the “total” amount of reactants via “use-it-and-lose-it” negative-feedback loops to obtain the “free” amount of reactant currently in the reaction. Since the total amount of reactant (or product) is represented by a conserved variable, there is no divergence. Due to the negative feedback inherent in all chemical reactions (reactant use lowers forward reaction flux and product creation increases backward reaction flux [13]), the amount of free reactant adjusts to a steady-state value that balances fluxes in a single product differential equation regardless of whether there is mismatch. In essence, by avoiding the use of redundant product and reactant fluxes that should be exactly the same in two differential equations in theory but simply cannot be equal in practice, mismatched fluxes do not integrate up to cause divergence. Rather, just a finite steady-state error is caused by random device mismatch, e.g., a mismatch between the input and output currents of a current mirror (modeled as mm3 in (6)). It may manifest itself as an offset error along the signal pathway. However, this error can be minimized via well-known analog-circuit techniques, digital calibration, or by digital programming of analog parameters to the relatively modest precision needed in biology. Furthermore, conservation laws in molecular number are easily mapped into conservation laws in electron number, i.e., Kirchhoff’s current law, in our analog circuits.

As an example, in the case of a transformation reaction, AB, our method results in a single differential equation and a conservation parameter, [Atot], that are represented as

[A]=[Atot](1+mm3)[B] (6)
d[B]dt=kf[A]kr[B]

where [Atot] is a total variable (=[A]+[B]) and mm3 represents a mismatch error. Since this method requires only one time derivative to reach zero to yield a steady-state solution, the resulting waveforms do not diverge in the presence of mismatch, as can be seen in Fig. 2(b). Mathematically speaking, since [Atot] is a constant, the time derivative of [A] is given by

d[A]dt=(1+mm3)d[B]dt=(1+mm3)kf[A]+(1+mm3)kr[B] (7)

and the Jacobian matrix becomes

J=[(1+mm3)kf(1+mm3)krkfkr]. (8)

It is easy to show that the latter matrix has a zero eigenvalue and a negative eigenvalue. Hence, regardless of the value of mm3, we obtain a non-zero steady-state solution with no divergence.

III. Architecture of the System

Fig. 3 depicts the overview of the hardware of our system. We have thus far implemented two kinds of cytomorphic chips – the “gene chip” [17] and the “protein chip” of this paper, which focus on the dynamics that show up in DNA/RNA networks and protein/metabolite networks, respectively. To enable large-scale simulations, a number of these chips are mounted on a printed-circuit board (PCB), where they interact with one another via molecular data packets with an FPGA.

Fig. 3.

Fig. 3

Overall architecture of the hardware of the system. On a cytomorphic board, many cytomorphic chips (i.e., gene chips [17] and protein chips) are connected to one another via an FPGA to run massively parallel simulations of stochastic biochemical reaction networks. Both of the cytomorphic chips contain various reconfigurable building-block circuits that are digitally programmed to model and simulate various cell functions. Reconfiguration of their parameters and intra- chip connectivity is achieved by electric currents created by DACs and digital bits stored in memory. Routing channels convey electric currents that represent state variables from one block to another as configured. ADCs are used to read out the value of state variables. Gene chips have mass action and Michaelis-Menten reaction blocks, Hill blocks, ITD blocks, analogic DACs, gain and time constant blocks, and stochastic circuits. Protein chips have protein blocks and stochastic circuits. A protein block is shown in the rightmost subfigure as an example.

Each chip contains an array of several digitally programmable analog building-block circuits that quantitatively model essential bio-molecular basis functions in cells. The circuits in a gene chip include 1) a “mass action and Michaelis-Menten reaction block” to map the mass-action kinetics of simple binding reactions, 2) a “Hill block” to model cooperative binding, 3) an “ITD block” to capture the dynamics associated with the bindings between inducer, transcription-factor, and DNA molecules, 4) an “analogic DAC” to model probabilistic gene transcription depending on the state of DNA promoters, 5) a “gain and time constant block” to set the gain and timescale of transcription and translation, and 6) a “stochastic circuit” to mimic the high levels of noise of low-copy-number molecules by amplifying inherent Poisson noise in transistors. Detailed descriptions of these circuits can be found in [17] and [18]. On the other hand, a protein chip contains several copies of association- dissociation-degradation circuits, or “protein blocks,” and stochastic circuits. The protein block is described in detail in Section III-A and the stochastic circuits are described in a companion paper [18].

The building-block circuits can be interconnected to one another via on-chip routing channels. Digital bits to define this connectivity, as well as reaction rates, initial conditions, Hill coefficients, and various switch configurations are stored in digital-memory devices such as SRAM blocks and shift registers. These memory devices are programmed by the FPGA, which can also read out any state variables from the chips or perform high-speed digital signal processing as needed. Note that analog-to-digital converters (ADCs) and digital-to-analog converters (DACs) allow for the chips to easily interface with traditional digital processors such as FPGAs, DSP processors, or standard digital computers, thereby enhancing the usability of our hardware as a flexible co-processor with existing tools. The details of the ADCs and DACs can be found in [17]. In the current implementation, a software program running in MATLAB communicates with the FPGA to send parameters for chip configuration and to receive chip data for real-time simulation and display. In essence, analog/digital circuits and continuous/discrete time operations collectively process information in a parallel and relatively seamless fashion to create a fast, flexible, and efficient device for biological simulations.

A. The Protein Block

The protein block implements a universal biochemical basis function, A+BC+D that can be configured to represent any arbitrary zeroth-, first-, and second-order reaction including association, dissociation, transformation, and substitution. The digital programmability of 6 parameters over a wide range of values as well as 3 configuration switches enables flexibility. The use of 18 input/output ports enables interconnections among several blocks such that any combination of reactions in a network can be modeled (see Section III-B and IV).

Fig. 4 shows a simplified transistor schematic of the protein block, where some input and output ports, switches, and current mirrors are omitted for simplicity. The current-mode circuit utilizes a BiCMOS process technology, which offers superior matching characteristics, high Early voltage, and an exponential current-voltage relationship over a wide range of current levels. The block consists of two subtractors which implement “use-it-and-lose-it” negative-feedback loops; a Hill block to compute the forward current rate with a Hill coefficient (IAfree·(IBfree/IKDfw)n) [17]; a multiplier to compute the reverse rate (ICfree·IDfree/IKDrv); a multiplier to compute the degradation (ICfree·IratC/IOne) rate; and an integrator that accumulates these rate currents to create an analog output current that proportionately represents the concentration of product molecules.

Fig. 4.

Fig. 4

Transistor schematic of the protein block.

This integrator is a three-input differential current-mode integrator designed specifically for the protein block. According to the translinear principle applied to the three loops around 1) Q1–Q4, 2) Q3–Q6, and 3) Q4 and Q7–Q9 [22], respectively, the time derivative of the output current is given by

dICtotdt=IkrCϕt·IfwIkrCϕt·IrvIkdegCϕt·Ideg=(forward rate)(reverse rate)(degradation rate) (9)

where Ifw corresponds to IAfree·(IBfree/IKDfw)n, Irv to ICfree·IDfree/IKDrv, and Ideg to ICfree·IratC/IOne respectively, and ϕt denotes the thermal voltage. The transistors M1, M2, M5, M6, and M8 serve as buffers (IBuf = 1 µA), and another buffer composed of M4 and Q5 and supplies the base current of Q3, Q4 and Q7 without causing any base-current loss from the capacitor node (VC) or voltage error due to the body effect [17]. CLK and CLK¯ are digital random clock signals generated by the stochastic circuit, which turn on and off the current charging the capacitor to induce fluctuations in the capacitor voltage [18].

Fig. 5(a) is a block diagram of the circuit in Fig. 4, showing its 7 inputs, 11 outputs, 6 parameters, and 3 switches. Among them, the following signals are the ones that are used most frequently: Atot / Btot / Cfree (inputs); Afree / Bfree / Ctot (outputs); and KDfw / kr (parameters). The remaining signals and parameters provide means for configuring arbitrary biochemical reaction networks in a flexible fashion as we discuss later. Note that kr and kdeg in Fig. 5(a) are mapped into the physical circuit parameters Ikr/C·ϕt and Ikdeg/C·ϕt, respectively. Fig. 5(b) shows a symbol for the protein block which displays the heart of its computation along with critical input and output ports for a common configuration where A and B interact to generate C.

Fig. 5.

Fig. 5

(a) Block diagram of the protein block. Each protein block receives 8 currents from DACs (Atot, Btot, KDfw, Dfree, KDrv, ratC, kr, and kdeg) and several digital bits from shift registers to configure a Hill coefficient (n) and switches (A_FB_EN, B_FB_EN, FF_EN, and Ctot switches). In addition, 7 input and 11 output ports described in Section III-B are connected to a global routing bus to make interconnections with other building blocks or ADCs. (b) Simplified symbol of the protein block, showing only the most commonly used input and output ports.

Our circuit also represents a D variable that can interact with C to effectively generate a reverse reaction current dependent on the concentrations of D and C. While this additional degree of freedom is useful in the most general cases for composing arbitrary networks as we discuss later, for simplicity, we shall begin with a discussion of just A, B, and C.

In a typical configuration for a binding reaction, where Dfree/KDrv=1, ratC=kdeg=0, and n=1, the model in Fig. 5(a) solves

d[Ctot]dt=kf[Afree][Bfree]kr[Cfree]
[Afree]=[Atot][Ctot] (10)
[Bfree]=[Btot][Ctot]

where kf=kr/KDfw. As seen from the above equations, the amount of the product Ctot is subtracted from the total amount of the reactants, Atot and Btot, to obtain the free amount of the reactants, Afree and Bfree. These two inherent “use-it-and-lose-it” feedback loops, explicitly represented in Fig. 5(a), model the effect of loading as explained in Section II and in Fig. 2.

If Atot and Btot are constants and Ctot is not used in any downstream reaction (i.e., Cfree=Ctot), the equations above are simply equivalent to the following set of familiar differential equations:

d[Cfree]dt=kf[Afree][Bfree]kr[Cfree]
d[Afree]dt=kf[Afree][Bfree]+kr[Cfree] (11)
d[Bfree]dt=kf[Afree][Bfree]+kr[Cfree].

B. Programmability of the Protein Block

The programmable components of a protein block may be summarized as follows:

  1. 6 parameters: (KDfw), (KDrv, kr), and (kdeg, ratC) are used to control forward, reverse, and degradation rates, respectively. The latter five parameters are set by the currents generated by DACs and programmable over a dynamic range of 100 dB. The Hill coefficient, n, can be tuned to be between 1 and 4 by programming the effective size of above-threshold transistors M35 and M36 in Fig. 4.

  2. 3 types of switches: The A_FB_EN and B_FB_EN switches are used to select the order of reaction. For a second-order reaction, they are both switched on such that the two “use-it-and-lose-it” feedback loops are in effect; for a first-order reaction, only A_FB_EN is on and Btot is set to be constant (or vice versa); and for a zeroth-order reaction, both are off, with Atot and Btot being constant. They are also switched off when reactants such as DNA or mRNA are recycled after use by polymerases or ribosomes and are thus effectively not consumed when products are made. These switches are also manipulated for certain network topologies. The four FF_EN switches and the Ctot switch in Fig. 5(a) are used for fan-in configurations (see Section IV-F).

  3. 7 input and 11 output ports: In Fig. 5(a), input ports include Atot, Btot, Cfree, Dfree, Cdeg, Cprod, and Ctot_in. Output ports include Ctot, Afree, Bfree, rate_fw, rate_rv, fw_up, rv_up, fw_tot, rv_tot, Cfree_cp, and Dfree_cp. Depending on the required connectivity, all of these input and output ports can be connected to any other ports via a routing bus composed of 100 parallel wires. Since variables are represented by electric currents, merging of multiple signals at a node results in addition or subtraction, depending on the direction of each current.

IV. Protein-Block Configurations for Modeling Arbitrary Network Topologies

As implied in the foregoing sections, computation in our system relies on the variables that represent the total quantities of species, a.k.a. the total variables. These variables include all the quantities of downstream species that originate from them. For example, for a cascade reaction network ABC (Fig. 6(a)), the definition of Atot, Btot, and Ctot is given by [Atot]=[Afree]+[Bfree]+[Cfree], [Btot]=[Bfree]+[Cfree], and [Ctot]=[Cfree], respectively. Then, as discussed in Section II, the free amount of B and C can be obtained by the conservation law: [Afree]=[Atot]−[Btot] and [Bfree]=[Btot]−[Ctot]. Thus, as shown in Fig. 6(a), the output of Block 1, [Btot], serves as the input to Block 2. [Bfree] is obtained in Block 2 and sent back to Block 1 to compute the reverse reaction rate, kr1[Bfree]. On the other hand, Fig. 6(b) describes an example of the case where a species is used in multiple places (fan-out topology): AB and AC. In this case, [Afree] is obtained by [Afree]=[Atot]−[Btot]−[Ctot] in Block 1 and sent to Block 2 to compute the forward reaction rate, kf2[Afree].

Fig. 6.

Fig. 6

Simple examples illustrating the use of total variables and conservation laws for computation. The diagrams in this figure are drawn based on the block in Fig. 2(c). (a) For an example network ABC (cascade topology), Block 1 computes the forward and reverse rates of AB and Block 2 computes those of BC. Block 1 takes Atot as an input and creates Btot at the output, which in turn serves as the input to Block 2 to create Ctot at its output. Since total variables contain all downstream quantities, it becomes that [Atot]=[Afree]+[Bfree]+[Cfree], [Btot]=[Bfree]+[Cfree], and [Ctot]=[Cfree]. Thus, the free quantities are given by [Afree]=[Atot]−[Btot] and [Bfree]=[Btot]−[Ctot], as shown in the figure. Note that Bfree obtained in Block 2 is brought back to Block 1 to compute the reverse reaction rate of AB. (b) For another example network AB and AC (fan-out topology), Block 1 and 2 simulates AB and AC, respectively. In this network, [Atot]=[Afree]+[Bfree]+[Cfree], [Btot]=[Bfree], and [Ctot]=[Cfree] and the amount of Afree can be computed by [Afree]=[Atot]−[Btot]−[Ctot]. Note that this is accomplished by sending Ctot to Block 1 to subtract it from Atot. The resulting Afree is sent to Block 2 to create the forward reaction rate of AC.

The above examples indicate that performing computation in a framework based on total variables and conservation laws calls for an unconventional way of handling state variables. Each block is responsible for appropriately processing signals that are sent from upstream and downstream blocks and propagating them to other blocks, depending on the network topology. Fig. 7 summarizes the configuration of protein blocks designed for each of the basic topologies. With these basic configurations, any complex network topology can be represented via composition of many such configurations. These basic configurations are explained in more detail below. To understand these explanations in detail, it is helpful to have Fig. 7 at hand.

Fig. 7.

Fig. 7

Configuration examples for various network topologies. Green, blue, and red blocks denote protein blocks, input variables, and output variables, respectively. (a) Cascade with degradation (∅→P, PQR, R→∅). (b) Fan-out (P+QR, P+ST). (c) Michaelis-Menten reaction (E+SESE+P). (d) Fan-in with degradation (∅→P, ∅→Q, PR, QR, R→∅).

A. Cascade (Fig. 7(a))

Cascade is a type of chemical process where a product of a reaction serves as a reactant of the following reaction. In our framework, it can be modeled as follows:

  1. Insert the current block’s Ctot to Atot (or Btot) of the next reaction block. In the current block, Afree=AtotCtot; Bfree=BtotCtot.

  2. In case a reverse reaction or a degradation reaction exists in the current block, bring Afree (or Bfree) from the next block to Cfree of the current block. Repeat step 1 and 2 until the end of the cascade chain.

  3. For the last block of the cascade chain, its Ctot is not used anywhere, such that Ctot and Cfree are identical as configured in the rightmost block in Fig. 7(a).

Note that in the example cascade network in Fig. 7(a) which models ∅→P, PQR, and R→∅, the leftmost block implements a zeroth-order reaction (∅→P). Thus, Atot should be a constant parameter, Btot/KDfw is set as 1, and both A_FB_EN and B_FB_EN should be switched off. Each of the two blocks on the right implements a first-order reaction (PQ and QR). Thus, the Atot port receives a variable, Btot/KDfw is 1, and only A_FB_EN is switched on.

When any species degrades, it is important to back propagate degradation fluxes in a given variable to all total variables upstream of it that it is a part of. Back propagation is accomplished by using rv_up and Cdeg ports, as in Fig. 7(a), and degradation rate constants are set by ratC and kdeg in Fig. 5(a).

Fig. 8 shows the chip simulation results of a simple cascade reaction network, PQRST. From Fig. 8(a), It can be seen that all [P] become [T] over time such that the final value of [T] matches with the initial value of [P]. Fig. 8(b) is the result when a degradation reaction T→∅ is added to the network. The value of [T] decreases, while all remaining free variables are invariant as expected.

Fig. 8.

Fig. 8

Chip simulation results for a cascade reaction network. (a) PQRST when only [P] has a nonzero initial concentration. (b) The result when a degradation reaction T→∅ is added to the network.

B. Fan-out (Fig. 7(b))

Fan-out is a network topology where one species acts as a reactant of multiple reactions. Assuming that [P] is such a species, the algorithm for network composition is as follows:

  1. Designate one block as the main block where [Ptot] comes in.

  2. Take the Ctot outputs of all the blocks where [P] is used as a reactant ([R] and [T] in Fig. 7(b)) and subtract them from [Ptot] of the main block to compute [Pfree]. Note that Ctot of the main block is subtracted inside the block by enabling the A_FB_EN switch in Fig. 4 and is thus not shown in Fig. 7(b).

  3. Send the resulting [Pfree] to Atot (or Btot) of another block that uses [P] as a reactant. For this non-main block, disable the A_FB_EN (or B_FB_EN) switch, since subtraction is already done in the main block.

  4. If there is a third block using [P] as a reactant, send the Afree output of the second block to the Atot (or Btot) port of the third block. Repeat this for all such blocks.

This method preserves scalability since it does not require additional subtractors or variable copiers (i.e., current mirrors) proportional to the number of fan-out blocks. Note also that Dfree/KDrv should be set as 1 for both protein blocks in Fig. 7(b) because the reverse reactions are first-order in this particular example.

C. Dissociation / Replacement

When a reaction has two products, as in dissociation and replacement reactions, we use two protein blocks to model it. Each block is designed to account for one product variable. However, the two blocks have identical forward and reverse rates. These rates are thus sent from rate_fw and rate_rv outputs of one block to Cprod and Cdeg inputs of the other block.

It should be pointed out that if the two products do not degrade or always degrade with the same rate, they will have the same value. In this case, there is no need to use the second block; we can just use two copies of a block’s Ctot to represent the two products, respectively.

D. Dimerization / Monomerization

Dimerization is a special case of a synthesis reaction which calls for special treatment. The key is to have the same species for the two reactants and to consider the fact that the production of one dimer consumes two monomers. Thus, the amount of the product should be subtracted twice from the reactant. This is achieved by creating a Ctot output with opposite polarity and sending it to the Atot port of the same block, in addition to inherent subtraction that occurs via a “use-it-and-lose-it” feedback loop.

On the other hand, monomerization is the reverse process of dimerization, where one reactant produces two products of a kind. Thus, half the amount of the product should be subtracted from the reactant. The trick to accomplish this is adding two copies of Ctot and treating it as the product, and then the desired subtraction is taken care of automatically.

When dimerization or monomerization reactions exist in the network, particular attention should be paid to make sure that correct degradation rates propagate upward. To handle this, the rates can be adjusted using kdeg parameters or by adding two copies of rv_up.

E. Michaelis-Menten Reaction (Fig. 7(c))

Michaelis-Menten kinetics is one of the most popular models of enzymatic dynamics. It forms a loop topology around the enzyme, which typically requires complex connections. However, we describe a simpler way of implementing a Michaelis-Menten reaction network (E+SESE+P):

  1. Use a block (Block 1) to model E+SES, a typical reversible synthesis reaction.

  2. Use another block (Block 2) to model ESP. As in a cascade configuration, connect Ctot of Block 1 to Atot of Block 2, and Afree of Block 2 to Cfree of Block 1.

  3. Add Ctot of Block 2 (=[Ptot]) to the Atot input of Block 1.

  4. When [Ptot] degrades, propagate the degradation rate to [EStot] and [Stot] but not to [Etot], by making appropriate connections between rv_up and Cdeg ports.

If [Ptot] does not degrade, the amount of [E] produced by ESE+P is equal to that of [Ptot]. Thus, adding [Ptot] to Atot of Block 1 yields the correct level of [Efree]. Furthermore, even when [Ptot] degrades, this configuration leads to mathematically correct results, and here is why: The expressions derived from the network in Fig. 7(c) are given by

[Efree]=[Etot][EStot]+[Ptot]
[Sfree]=[Stot][EStot] (12)
[ESfree]=[EStot][Ptot].

Since the degradation of [Ptot] propagates to [EStot] and [Stot], the amount of [ESfree] and [Sfree] are preserved as desired. Not only that, [Efree] is also preserved because the changes −[EStot] and +[Ptot] cancel out and [Etot] does not change as [Ptot] degrades (step 4). Therefore, all the results come out right.

Fig. 9 shows the chip simulation results for a typical Michaelis-Menten reaction configured as in Fig. 7(c). It can be observed that by the activity of enzymes, all substrates are gradually converted to products over time and the level of [ES] increases when the enzymes are at work.

Fig. 9.

Fig. 9

Chip simulation result for a Michaelis-Menten reaction (E+SESE+P).

F. Fan-in (Fig. 7(d))

Fan-in is the case when a species is produced by two or more different reactions, which necessitates the most sophisticated setup among all topologies. The basic principle is to add or subtract whatever flux that comes from or goes to other reaction branches, respectively, in the current and all upstream stages, just like the degradation flux is subtracted in the current and all upstream stages. If not implemented properly, this configuration may lead to physically impossible results where Ctot attempts to go above Atot or Btot or below zero. Thus, we describe a detailed algorithm for fan-in:

  1. Among all the blocks that produce the same species, designate one block as the main block (in Fig. 7(d), the top right block, for species [R]).

  2. Gather all rates in the main block. That is, send all the forward (rate_fw) and reverse rates (rate_rv) of non-main blocks to the Cprod and Cdeg port of the main block, respectively. This creates the “total” forward (fw_tot) and reverse (rv_tot) rates, which are used to compute Ctot in the main block. Degradation rates are also added to the Cdeg port.

  3. Send fw_tot and rv_tot to Cprod and Cdeg of the non-main blocks, respectively.

  4. In each of the non-main blocks, subtract its own forward and reverse rate from the total forward and reverse rate, respectively. This subtraction is accomplished by flipping the four FF_EN switches shown in Fig. 5(a), and the results are produced at the fw_up and rv_up port.

  5. Propagate fw_up and rv_up of each block to its upstream stages.

  6. Connect Ctot of the main block to Ctot_in of the non-main blocks, so that Afree and Bfree of these blocks can be calculated. For the non-main blocks, the Ctot switch shown in Fig. 5(a) should be toggled up for this purpose.

  7. The main block receives Cfree from a subsequent stage, or from its own Ctot port when no subsequent stage exists, as in Fig. 7(d). A copy of Cfree (i.e., Cfree_cp) is sent to the Cfree port of the non-main blocks, so that they can compute the reverse rates.

Note that the algorithm described above is a general method which works for any fan-in case. For certain cases, such as networks that consist of irreversible reactions or reactions that do not consume their reactants (e.g., transcription or translation), the configurations are much simpler.

G. Loop

Loop indicates the case in which the last reaction of a pathway regenerates the reactant of the first reaction. A well-known example in biology is the citric acid cycle, where oxaloacetate serves as both the first reactant and the final product. When the final reaction of a loop is irreversible, its configuration is relatively straightforward and similar to the strategy for Michaelis-Menten reactions described in Section IV-E.

On the other hand, when the final reaction is reversible, it can be implemented by the combination of fan-out and fan-in configurations. For example, a network given by PQRSP can be implemented by following the fan-out procedure (for [P]) and the fan-in procedure (for [R]).

V. Simulation Examples of Biological Processes

The protein chip was fabricated in an ams 0.35 µm BiCMOS technology. Fig. 10 shows a die micrograph of the chip, where essential components are labeled. To verify the functionality of the computational tool we created, we were motivated to simulate various biological networks by programming our chips, including cancer pathways and metabolic pathways. As examples, we present the results for a p53 signaling pathway [23] and a glycolysis pathway [24]. These simulations particularly focused on testing the versatility of protein blocks in terms of modeling various network topologies.

Fig. 10.

Fig. 10

Die micrograph of the 4.3 mm × 4.0 mm protein chip fabricated in an ams 0.35 µm BiCMOS technology. Shown in the right is the layout of one of the four identical protein groups.

The mathematical models of p53 and glycolysis pathways were obtained from BioModels Database [25], which offers curated computational models of a variety of biological processes in Systems Biology Markup Language (SBML) format [26]. To port such software models to our cytomorphic chips, we used the following procedure: First, a scale factor between biological time and chip time was determined by mapping the fastest timescale of the model to the fastest timescale of the chip. Second, a magnitude mapping was carried out such that the range of the level of state variables in the chip reliably covers that in the target biological network. Third, based on these time and magnitude mappings, biological parameters were converted to chip parameters. Finally, the model was analyzed in terms of the network topologies present in the model, which determined what kind of and how many building blocks were needed and how their input and output ports were interconnected.

As stated in Section III, the resulting chip parameters and connectivity information were conveyed to an FPGA, which programed cytomorphic chips. We used an Opal Kelly XEM6310 module which offers a Xilinx Spartan-6 FPGA and useful interfaces between a computer and the FPGA. After running a chip simulation, we compared its output with that obtained from conventional software simulation in COPASI [27] and MATLAB to verify the result.

A. p53 Signaling Pathway

The p53 signaling pathway is a network of great significance involved in DNA repair, apoptosis, and suppressing cancer. For this simulation, we used the two stochastic models in [23], the ARF and the ATM model, shown in Fig. 11(a) and 12(a), respectively. These models mathematically account for the activation and sustained oscillation of p53 due to DNA damage. The oscillation is caused by a negative feedback loop with delay arising from intermediate steps such as transcription and translation.

Fig. 11.

Fig. 11

(a) The ARF model and of the p53 signaling pathway [23]. (b) Connectivity configuration for the model. Blocks 1–4 form a negative feedback loop (p53 productionMdm2mRNAMdm2Mdm2_p53p53 degradation) and Blocks 5–7 comprise a cascade reaction (IR eventdamDNAARFARF_Mdm2Mdm2 degradation) which triggers an oscillation in the loop. Note that the rates of Mdm2-dependent p53 degradation (Reaction 4) and ARF-dependent Mdm2 degradation (Reaction 14) are propagated to the blocks that produce p53tot (Block 1) and Mdm2tot (Block 4), respectively. Note also that Mdm2 reacts with both p53 and ARF, so the fan-out configuration is used for Block 2 and 7. (a) Reprinted figure originally published in [C. J. Proctor and D. A. Gray, “Explaining oscillations and variability in the p53-Mdm2 system,” BMC Syst. Biol., vol. 2, p. 75, 2008], available from: http://www.biomedcentral.com/1752-0509/2/75. Copyright 2008 Proctor and Gray; licensee BioMed Central Ltd. The latter article is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0).

Fig. 12.

Fig. 12

(a) The ATM model of the p53 signaling pathway [23]. (b) Connectivity configuration for the model. Blocks 1–4 form a negative feedback loop (p53 productionMdm2mRNAMdm2Mdm2_p53p53 degradation) and Block 5–8 comprise a cascade reaction (IR eventdamDNAATMAp53 and Mdm2 phosphorylation) which triggers an oscillation in the loop. Note that the rates of Mdm2-dependent p53 degradation (Reaction 4) and Mdm2_P degradation (Reaction 22) are propagated to the blocks that produce p53tot (Block 1) and Mdm2tot (Block 4), respectively. Note also that p53 and Mdm2 react with each other and also with ATMA, so fan-out configuration is used for Block 2, 7, and 8. (a) Adapted from the figure originally published in [C. J. Proctor and D. A. Gray, “Explaining oscillations and variability in the p53-Mdm2 system,” BMC Syst. Biol., vol. 2, p. 75, 2008], available from: http://www.biomedcentral.com/1752-0509/2/75. Copyright 2008 Proctor and Gray; licensee BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0).

In the ARF model, under normal conditions, the level of p53 is kept low since an increase in p53 concentration activates the production of Mdm2, and Mdm2 in turn enhances the degradation of p53. However, when DNA is damaged, the level of ARF protein rises, which sequesters Mdm2. As a result, the p53 level rises. On the other hand, in the ATM model, the sensing of DNA damage is carried out by ATM kinase, which phosphorylates p53 and Mdm2 to prevent their interactions and also enhances the degradation of Mdm2. Hence, the p53 level rises.

Table I and II summarize biochemical reactions and their rate constants, chip rate constants set via time and magnitude mappings, and corresponding chip parameters to configure building block circuits for the ARF and the ATM model, respectively. As can be found in the tables, for the ARF model, 106 s of biological time was mapped into approximately 1 s of chip time and 1 molecule was mapped into approximately 1 nA of current in the cytomorphic chip. 7 protein blocks were used to model 14 reactions with 8 state variables; in the ATM model, 105 s of biological time was mapped into approximately 1 s of chip time and 1 molecule was mapped into approximately 3 nA of current. 9 protein blocks were used to model 20 reactions with 11 state variables. To run stochastic simulations, stochastic circuits were used, whose details are described in [18]. Furthermore, to illustrate how block-to-block connections can be made, the connectivity configurations for the two models are presented in Fig. 11(b) and 12(b), respectively.

TABLE I.

Chip Parameters for p53 Simulation (ARF Model)

Reac
#
Reaction Biological
Rate Const
Chip
Rate Const
Blk
#
Atot
(nA)
Btot
(nA)
KDfw
(nA)
Dfree
(nA)
KDrv
(nA)
ratC kr
(nA)
kdeg
(nA)
A_FB
_EN
B_FB
_EN
1 ∅→p53 7.8E-2 mol s−1 7.8E4 nA s−1 1 94.6 10 10 0 N/A 1 197 197 0 0
2 p53+Mdm2Mdm2_p53 1.2E-3 mol−1s−1 1.2E3 nA−1s−1 2 p53tot Mdm2tot−ARF_Mdm2 0.724 10 10 1 200 0 1 1
3 Mdm2_p53p53+Mdm2 1.2E-5 s−1 1.2E1 s−1
4 Mdm2_p53Mdm2 8.3E-4 s−1 8.3E2 s−1
5 p53p53+Mdm2mRNA 1.0E-4 s−1 1.0E2 s−1 3 p53free 10 10 0 N/A 1 23.9 23.9 0 0
6 Mdm2mRNA→∅ 1.0E-4 s−1 1.0E2 s−1
7 Mdm2mRNAMdm2mRNA+Mdm2 5.0E-4 s−1 5.0E2 s−1 4 Mdm2mRNA 10 10 0 N/A 0.433 118 239 0 0
8 Mdm2→∅ 4.3E-4 s−1 4.3E2 s−1
9 IRIR+damDNA 8.0E-2 s−1 8.0E4 s−1 5 25 (IR pulse) 400 10 0 N/A 1 478 4.78 0 0
10 damDNA→∅ 2.0E-5 s−1 2.0E1 s−1
11 damDNAdamDNA+ARF 3.3E-5 s−1 3.3E1 s−1 6 damDNA 10 10 0 N/A 1 7.89 23.9 0 0
13 ARF→∅ 1.0E-4 s−1 1.0E2 s−1
12 Mdm2+ARFARF_Mdm2 1.0E-2 mol−1s−1 1.0E4 nA−1s−1 7 Mdm2free ARFtot 0.5 0 N/A 1 1200 239 0 1
14 ARF_Mdm2ARF 1.0E-3 s−1 1.0E3 s−1

Reaction numbers are consistent with the original model in [23] and in Fig. 11(a). KDrv of N/A refers to “no reverse reaction”, in which case KDrv can be set as any value. All Hill coefficients are 1. The unit “mol” in biological rate constants denotes the number of molecules. IR indicates the dose of irradiation and damDNA indicates the amount of damaged DNA.

TABLE II.

Chip Parameters for p53 Simulation (ATM Model)

Reac
#
Reaction Biological
Rate Const
Chip
Rate Const
Blk
#
Atot
(nA)
Btot
(nA)
KDfw
(nA)
Dfree
(nA)
KDrv
(nA)
ratC kr
(nA)
kdeg
(nA)
A_FB
_EN
B_FB
_EN
1 p53mRNAp53mRNA+p53 6.0E-3 s−1 6.0E2 s−1 1 p53mRNA 10 5 0 N/A 1 71.7 19.7 0 0
2 p53+Mdm2Mdm2_p53 1.2E-3 mol−1s−1 3.9E1 nA−1s−1 2 p53tot−p53_P Mdm2tot−Mdm2_P 2.17 10 10 0 20 0 1 1
3 Mdm2_p53p53+Mdm2 1.2E-5 s−1 1.2E0 s−1
4 Mdm2_p53Mdm2 8.3E-4 s−1 8.3E1 s−1
5 p53p53+Mdm2mRNA 1.0E-4 s−1 1.0E1 s−1 3 p53free+p53_P 10 10 0 N/A 1 2.39 2.39 0 0
6 Mdm22mRNA→∅ 1.0E-4 s−1 1.0E1 s−1
19 p53_Pp53_P+Mdm2mRNA 1.0E-4 s−1 1.0E1 s−1
7 Mdm2mRNAMdm2mRNA+Mdm2 5.0E-4 s−1 5.0E1 s−1 4 Mdm2mRNA 10 10 0 N/A 1.08 11.8 9.56 0 0
8 Mdm2→∅ 4.3E-4 s−1 4.3E1 s−1
9 IRIR+damDNA 8.0E-2 s−1 8.0E3 s−1 5 75 (IR pulse) 400 10 0 N/A 1 47.8 0.478 0 0
10 damDNA→∅ 2.0E-5 s−1 2.0E0 s−1
15 damDNA+ATMIdamDNA+ATMA 1.0E-4 mol−1s−1 3.3E0 nA−1s−1 6 600 (ATMtot) ddmDNA 15 10 10 0 12 0 1 0
16 ATMAATMI 5.0E-4 s−1 5.0E1 s−1
17 ATMA+p53ATMA+p53_P 5.0E-4 mol−1s−1 1.7E1 nA−1s−1 7 p53free ATMA 30 10 0.1 0 120 0 0 0
18 p53_Pp53 5.0E-1 s−1 5.0E4 s−1
20 ATMA+Mdm2ATMA+Mdm2_P 2.0 mol−1s−1 6.7E2 nA−1 s−1 8 Mdm2free ATMA 0.75 10 10 1 120 9.56 0 0
21 Mdm2_PMdm2 5.0E-1 s−1 5.0E2 s−1
22 Mdm2_P→∅ 4.0E-4 s−1 4.0E1 s−1
23 ∅→p53mRNA 1.0E-3 mol s−1 3.0E2 nA s−1 9 30 10 10 0 N/A 1 2.39 2.39 0 0
24 p53mRAA→∅ 1.0E-4 s−1 1.0E1 s−1

Reaction numbers are consistent with the original model in [23] and in Fig. 12(a). KDrv of N/A refers to “no reverse reaction”, in which case KDrv can be set as any value. All Hill coefficients are 1. The unit “mol” in biological rate constants denotes the number of molecules. IR indicates the dose of irradiation and damDNA indicates the amount of damaged DNA. using the rapid equilibrium approximation, the rate constants for Mdm2 phosphorylation and dephosphorylation (reactions 20 and 21) were reduced by 100 times.

To explain how chip parameters are set, let us take Reaction 2 to 4 in Table I as examples. Starting from Block 2, we can configure protein blocks such that they yield the desired dynamics with the rate constants listed in the fourth column of Table I. First, Reaction 3 and 4 both reduce Mdm2_p53, so the sum of the two rate constants (8.42E2 s−1) is modeled using kr (it is also possible to model them separately using kr and kdeg). According to (9), the reverse rate is kr/(CΦt)·Cfree·(Dfree/KDrv) (every ‘I’ in (9) is omitted for simplicity), where Cfree (=Ctot) here represents Mdm2_p53 and Dfree/KDrv is set as 1. Thus, since C=9.2 nF for this test and Φt=25.9 mV, kr=200 nA gives the desired rate constant. The Atot and Btot port of Block 2 receive p53tot from Block 1 and Mdm2tot from Block 4, respectively. Besides, ARF_Mdm2 created in Block 7 comes to the Btot port with an opposite direction, to model the fan-out of Mdm2.

Next, we need to create the forward rate constant of 1.2E3 nA−1s−1. According to (9), the forward rate is kr/(CΦt)·Afree·(Bfree/KDfw)n, where Afree and Bfree represent p53free and Mdm2free, respectively, and n=1. Since kr/(CΦt) is set to be 8.42E2 s−1 above, KDfw=0.724 nA yields the desired forward rate constant (a slight error is due to rounding). Reaction 2 is a second-order reaction, so A_FB_EN and B_FB_EN are both set as 1 (i.e., switch is closed). To create a degradation rate at the rv_up port to propagate to the Cdeg port of Block 1, ratC is set as 1. Other protein blocks can be configured in a similar manner. As can be seen, this conversion process can easily become tedious and error prone when done manually. Thus, we are working toward developing a compiler which automates the task of processing biological model files to generate optimal chip configurations [28].

Fig. 13(a)–(h) show the simulation results of software and the chip for the two models, when a short irradiation event occurs at time=0. It can be seen that the chip simulations produce waveforms that are highly correlated to those of the software simulations, for both deterministic and stochastic simulations. For the ARF model, the percentage difference in the oscillation period between software and the chip is 1.67%. The discrepancy between software and the chip is primarily due to random mismatches between transistors. Bipolar differential-pair transistors and MOS differential-pair transistors are sized such that the resulting current mismatch has a standard deviation of 1% and 3.6%, respectively. Optimizing matching characteristics of the system will be an important topic for future studies. Other work, e.g. in [13], [29], has shown how digitally programmable analog systems can compensate for many mismatches and errors.

Fig. 13.

Fig. 13

(a) Deterministic and (b) stochastic simulation results of software for the ARF model. (c) Deterministic and (d) stochastic simulation results of software for the ATM model. (e) Deterministic and (f) stochastic simulation results of the chip for the ARF model. (g) Deterministic and (h) stochastic simulation results of the chip for the ATM model. The mean correlation coefficient between (a) and (e) is 0.627 and between (c) and (g) is 0.992.

Note that the oscillatory behavior of the ATM model is exhibited only when noise is added, due to the averaging effect present in the deterministic model [23]. Thus, it is a kind of biological phenomena which can only be studied by taking stochastic modeling approaches. For such phenomena, deterministic simulations are not sufficient to verify that the model adequately reflects the essence of the biological process and cannot explain the data acquired from biological experiments [12].

B. Glycolysis pathway

Glycolysis is one of the most important metabolic pathways that converts glucose into pyruvate. The target model presented in [24] consists of 10 biochemical reactions, most of which are enzyme-catalyzed reactions. Interestingly, the model contains many different types of reactions and topologies – irreversible and reversible reactions, Michaelis-Menten reactions, cascade (GLCF6PFBP→…), fan-out (e.g., ATP used in multiple reactions), fan-in (e.g., ADP produced in multiple reactions), and loop (e.g., NADDPG→⋯→ACANAD). Our goal was to emulate the oscillatory behavior of this network, which is known to provide insight into characterizing the kinetics of the pathway. All reactions and corresponding chip parameters are listed in Table III.

TABLE III.

Chip Parameters for Glycolysis Simulation

Reaction Block
#
Decomposed Reactions Atot
(nA)
Btot
(nA)
KDfw
(nA)
Dfree
(nA)
KDrv
(nA)
ratC kr
(nA)
kdeg
(nA)
n A_FB
_EN
B_FB
_EN
GLC+ATPF6P+ADP (E: HK, A: GLC, B: ATP,P: F6P, Q: ADP) 1 ∅→GLC→∅ 55 10 10 0 N/A 1 10 0.11 1 0 0
2 ∅→ATP→∅ 3.85 10 10 0 N/A 1 10 0.11 1 0 0
3 ∅→ADP→∅ 1.21 10 10 0 N/A 1 10 0.11 1 0 0
4 E+AEA 50 A 10 10 10 0 100 0 1 1 0
5 EA+BEAB EA B 6.3 10 10 0 100 0 1 1 0
6 EABE+P+Q, P→∅ EAB 10 10 0 N/A 1 10 0.11 1 0 0
F6P+ATPFBP+ADP (E: PFK, E': PFK_T, A: F6P, B: ATP, C: AMP, P: FBP, Q: ADP) 7 E+2AEA2 150 A 2.83 20 10 0 100 0 2 1 0
8 EA2+2BEA2B2 EA2 B 1 10 10 0 100 0 1 1 0
9 EA2B2E+2P+2Q, P→∅ EA2B2 10 10 0 N/A 1 10 0.11 1 0 0
10 E+2BE'+2C E B 7.67 C 1 0 100 0 2 0 0
FBP2GAP 11 FBP2GAP, GAP→∅ FBP 10 10 GAP 2 1 10 0.11 1 1 0
GAP+NADDPG+NADH (E: GAPDH, A: GAP, B: NAD, P: DPG, Q: NADH) 12 ∅→NAD→∅ 4.4 10 10 0 N/A 1 10 0.11 1 0 0
13 ∅→NADH→∅ 0.264 10 10 0 N/A 1 10 0.11 1 0 0
14 E+AEA 1000 A 100 10 10 0 100 0 1 1 0
15 EA+BEAB EA B 100 10 10 0 100 0 1 1 0
16 EABE+P+Q, P→∅ EAB 10 10 0 N/A 1 10 0.11 1 0 0
DPG+ADPPEP+ATP 17 DPG+ADPPEP+ATP, PEP→∅ DPG ADP 100 ATP 200 1 10 0.11 1 1 0
PEP+ADPPYR+ATP (E: PK, A: PEP, B: ADP, P: PYR, Q: ATP) 18 E+AEA 1000 A 20 10 10 0 100 0 1 1 0
19 EA+BEAB EA B 30 10 10 0 100 0 1 1 0
20 EABE+P+Q, P→∅ EAB 10 10 0 N/A 1 10 0.11 1 0 0
PYRACA (E: PDC, A: PYR, P: ACA) 21 E+AEA 200 A 30 10 10 0 100 0 1 1 0
22 EAE+P, P→∅ EA 10 10 0 N/A 1 10 0.11 1 0 0
ACA+NADHEtOH+NAD 23 ACA+NADHEtOH+NAD, EtOH→∅ ACA NADH 1 NAD 7000 1 0.1 0.11 1 1 1
F6PP 24 F6PP, P→∅ F6P 10 200 0 N/A 1 10 0.11 1 0 0
2ADPAMP+ATP 25 2ADPAMP+ATP, AMP→∅ ADP ADP 10 ATP 10 1 10 0.11 1 1 0

KDrv of N/A refers to “no reverse reaction”, in which case KDrv can be set as any value.

It should be noted that the rate laws of enzyme-catalyzed reactions in biochemical networks are often not expressed as mass action kinetics. However, it is in fact possible to decompose those rate equations into rates based on mass action kinetics. For example, the first reaction of the glycolysis pathway, GLC+ATPF6P+ADP, is known to be an irreversible ordered bi-bi mechanism. It has the rate expression of Vmax[GLC][ATP]/((KM1+[GLC])(KM2+[ATP])) (see Table 1 in [24]), where Vmax represents the maximum rate of this reaction and KM1 and KM2 represent Michaelis-Menten constants. This type of mechanism can be decomposed into a set of reactions with the form of E+AEA, EA+BEAB, and EABE+P+Q, as shown in Table III. Vmax can be set by Atot of Block 4 and kf (=kr/KDfw) of Block 6, and KM1 and KM2 can be set by KDfw of Block 4 and 5, respectively. Fig. 14(a) and 14(b) reveals that the chip simulation of this first enzymatic reaction (12 unidirectional reactions listed in Table III) produces the dynamics that are in good agreement with software simulation. Another reaction in the pathway, F6P+ATPFBP+ADP, involves allosteric inhibition and activation by ATP and AMP, respectively, and can be decomposed into the 8 unidirectional reactions shown in Table III [24], [30]. Their kinetic rate constants can be derived from the original “lumped” rate expression to yield the same dynamics.

Fig. 14.

Fig. 14

(a) Software and (b) chip simulation results for the 12 decomposed unidirectional reactions that model the first enzymatic reaction in the glycolysis pathway, GLC+ATPF6P+ADP. The mean correlation coefficient between (a) and (b) is 0.999.

To express complex nonlinear rate equations that appear frequently, it is possible to design a few dedicated circuits to create those equations. The Hill block and the analogic DAC are examples of such circuits. Functions such as delay are more suitable for digital processing and are readily processed by an FPGA. In cases where abstraction is acceptable, the input- output characteristics of a given function can be approximated using a Hill coefficient and a dissociation constant to set the slope and threshold of the curve.

The range of timescales and molecular concentration of the model suggested that 3270 s of biological time was suitable for mapping into 1 s of chip time and 1 mM of molecular concentration was suitable for mapping into 100 nA of current in the chip. Based on these mappings, the chip parameters were determined, as summarized in Table III. The 10 reactions in the glycolysis pathway were decomposed into 54 unidirectional reactions with 30 state variables. In addition to the 25 protein blocks listed in Table III, one additional block was required to model the Hill coefficient of the reverse rate of block 10. The connections between the input and output ports of the blocks were established, using 77 channels of the on-chip routing bus.

During the simulation, we found that the model is sensitive to errors in parameters and state variables caused by the limited resolution of DACs and transistor mismatches. Thus, we made two simplifications: First, since the ATP concentration barely changes in the model, we assumed that its level is constant. Second, to reduce the error caused by the DACs, chip-to-chip data communication is done via analog currents rather than digital bits. Future versions of cytomorphic chips will incorporate error compensation circuits, eliminating the need for these adjustments.

Fig. 15(a) and 15(b) show the results of the simulations run by software and the chip, respectively. It can be seen that the chip simulation is successful in capturing the small oscillations in the network. In periodic steady state, the period of oscillation in the chip simulation is 17.6% higher than that in the software simulation. The oscillation amplitude of NADH shows the biggest discrepancy, because it turns out to be particularly sensitive to the mismatches in the variables sent between the blocks in the feedback loop around NADH. The delay due to parasitic capacitances in the system also has an effect of increasing both the amplitude and period of oscillation.

Fig. 15.

Fig. 15

(a) Software and (b) chip simulation results for the whole reactions in the glycolysis model. The mean correlation coefficient between (a) and (b) is 0.677.

VI. Specifications of the Protein Chip

Table IV outlines the performance characteristics of the protein chip. Our system can easily handle over five orders of magnitude of molecular concentrations and reaction rate constants, an important feature as a general-purpose biochemical reaction simulator [31], [32]. A protein block currently occupies 0.04 mm2 in the chip. Note that this area will shrink with the use of modern process technologies, such as a 90 nm SiGe BiCMOS process, that offer smaller transistor sizes and better matching properties [33]–[37].

TABLE IV.

Performance Characteristics of the Protein Chip

Parameter Value
Technology ams 0.35 µm BiCMOS
Supply voltage 3.3 V
Maximum number of reactions 60
Maximum number of state variables 60
Number of protein blocks 20
Number of noise generators 4
Area occupied by one protein block 0.04 mm2
Dynamic range of variables (DAC output) 100 dB (100 pA–10 µA)
DAC SNDR 36.7 dB
Number of DACs per protein block 8
Hill coefficient range 1–4
Typical kr, kdeg range 0.4–40,000 s-1
Number of wires in the routing bus 100
Programming clock frequency 5 MHz
Programming time 70 µs
ADC sampling clock frequency 5–40 MHz
ADC readout time 2.5 µs–2 ms
ADC input range 100 pA–10 µA
ADC SNDR 35 dB (70 dB with digital calibration)
Number of ADCs per chip 24
Programmable SNR range of state variables (controlled by noise generators) 4–35 dB
Power consumption ~ 30 mW
Chip size 4.3 mm × 4.0 mm

VII. Discussion

The two simulation examples reveal the capability of cytomorphic chips to model and reproduce the essential dynamics of complex networks that contain various network topologies such as cascade, fan-out, fan-in, and loop. Employing modern process technologies and well-established error correction techniques will drastically improve the precision of our simulation in future chips [13], [33].

A recent prototype of our cytomorphic board has a computing power that enables modeling and simulation of up to 1,400 biochemical reactions. A proof-of-concept demonstration is presented in [18], along with speed, power, and accuracy performance comparisons between the board and software. Notably, it was shown that the board can yield a speedup of 311× over COPASI, a fast biochemical-reaction simulator, and 15,500× over conventional MATLAB simulation. This speedup comes not only from the system architecture in favor of parallel execution of tasks analogous to GPUs, but also from the invention of novel noise generators that use amplified thermal noise to create random fluctuations for low-copy-number molecules and processing stochastic events in the continuous- time domain. These factors allow our system to run stochastic simulations with network-size-invariant speed. As exemplified in the simulation of a p53 pathway, including stochasticity is crucial in exploring cellular phenomena driven by rare stochastic events, e.g., drug resistance, ageing, phenotypic heterogeneity, cancer, and Alzheimer’s disease. Our system can potentially provide a huge benefit in studying such phenomena.

VIII. Conclusion

Our work suggests that the combination of 1) exploiting the cytomorphic mapping to construct efficient digitally programmable analog transistor circuits, 2) solving the divergence issue through the use of total variables and conservation laws, 3) designing block-to-block connection rules that work for any network formation, and 4) unconventional continuous-time simulation to enable highly parallel processing of stochastic events leads to the creation of a fast and efficient computation tool which can speed up the simulation of large-scale stochastic biochemical reaction networks.

Acknowledgments

This work was supported in part by grants from the National Science Foundation under CCF 1124247 and CCF 1348519, by funding from Massachusetts Institute of Technology and Dartmouth College to R. Sarpeshkar, and by NIH R01 award GM123032. S.S. Woo was also supported in part by a KFAS Fellowship.

Biographies

graphic file with name nihms954191b1.gif

Sung Sik Woo received the B.S. degree (summa cum laude) in electrical engineering from the Korea Advanced Institute of Science and Technology (KAIST), Daejeon, South Korea, in 2009 and the M.S. and Ph.D. degrees in electrical engineering and computer science from the Massachusetts Institute of Technology (MIT), Cambridge, MA, USA, in 2012 and 2016, respectively.

From 2010 to 2016, he worked as a member of the Analog Circuits and Biological Systems Group at MIT, focusing on the development of cytomorphic circuits and systems and bio-inspired collective analog computation systems. He is currently an Electrical Engineer at Formlabs, Somerville, MA, USA.

graphic file with name nihms954191b2.gif

Jaewook Kim received the B.S., M.S., and Ph.D. degrees in electrical engineering from the Korea Advanced Institute of Science and Technology (KAIST), Daejeon, South Korea, in 2006, 2008, and 2011, respectively.

From 2012 to 2017, he worked as a postdoctoral research associate in the Analog Circuits and Biological Systems Group at the Massachusetts Institute of Technology (MIT) and Dartmouth College, focusing on cytomorphic electronics and analog synthetic biology. Currently, he is a senior research scientist at the Korea Institute of Science and Technology (KIST), Seoul, South Korea. His current research interests include neuromorphic VLSI systems, artificial intelligence and synthetic biology.

Dr. Kim was a co-recipient of the 2009 IEEE Transactions on Circuits and System Society Guillemin–Cauer Best Paper Award.

graphic file with name nihms954191b3.gif

Rahul Sarpeshkar (M’98–F’18) received B.S. degrees in electrical engineering and physics from the Massachusetts Institute of Technology (MIT), Cambridge, MA, USA, and the Ph.D. degree from the California Institute of Technology, Pasadena, CA, USA.

Currently, he is the Thomas E. Kurtz Professor at Dartmouth College, Hanover, NH, USA, where he is also a Professor in the departments of Engineering, Physics, and Microbiology and Immunology. His research creates novel wet DNA-protein circuits in living cells and also advanced dry nano-electronic circuits on silicon chips. His longstanding work on analog and biological computation and his most recent work have helped pioneer the field of analog synthetic biology. His work on a glucose fuel cell for medical implants was featured by Scientific American among 2012's 10 World Changing Ideas. He holds over 36 awarded patents and has authored more than 130 publications, including one that was featured on the cover of Nature. His book Ultra Low Power Bioelectronics: Fundamentals, Biomedical Applications, and Bio-Inspired Systems revealed the deep connections between analog transistor circuits and biochemical circuits and founded the field of cytomorphic systems. His group holds several first or best records in analog, bio-inspired, synthetic biology, medical device, ultra low power, and energy harvesting systems. His work has applications in implantable medical devices for the deaf, blind, and paralyzed and in biotechnology and medical applications that benefit from cellular engineering. Before he joined Dartmouth’s faculty, he was a tenured professor at MIT, leading the analog circuits and biological systems group at the Research Lab of Electronics. Before joining MIT, he was a member of the technical staff of Bell Labs’ division of biological computation in their physics department.

Dr. Sarpeshkar has received several awards including the NSF Career Award, the ONR Young Investigator Award, and the Packard Fellows Award. He is an IEEE Fellow.

Contributor Information

Sung Sik Woo, Department of Electrical Engineering and Computer Science, Massachusetts Institute of Technology, Cambridge, MA 02139 USA and also with Thayer School of Engineering, Dartmouth College, Hanover, NH 03755 USA. He is now with Formlabs, Somerville, MA 02143 USA.

Jaewook Kim, Thayer School of Engineering, Dartmouth College, Hanover, NH 03755 USA. He is now with Korea Institute of Science and Technology (KIST), Seoul, South Korea.

Rahul Sarpeshkar, Departments of Engineering, Microbiology & Immunology, and Physics, Dartmouth College, Hanover, NH 03755 USA.

References

  • 1.Schwehm M. Fast stochastic simulation of metabolic networks. Proc. German Conf. Bioinformatics; Braunschweig; Germany. Oct. 2001; pp. 223–226. [Google Scholar]
  • 2.Karr JR, Sanghvi JC, Macklin DN, Gutschow MV, Jacobs JM, Bolival B, Assad-Garcia N, Glass JI, Covert MW. A whole-cell computational model predicts phenotype from genotype. Cell. 2012 Jul.150(2):389–401. doi: 10.1016/j.cell.2012.05.044. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 3.Gillespie DT. Exact stochastic simulation of coupled chemical reactions. J Phys. Chem. 1977;81(25):2340–2361. [Google Scholar]
  • 4.Sumiyoshi K, Hirata K, Hiroi N, Funahashi A. Acceleration of discrete stochastic biochemical simulation using GPGPU. Front. Physiol. 2015;6 doi: 10.3389/fphys.2015.00042. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 5.Li H, Petzold L. Efficient parallelization of the stochastic simulation algorithm for chemically reacting systems on the graphics processing unit. Int. J. High Perform. Comput. Appl. 2010 May;24:107–116. [Google Scholar]
  • 6.Roberts E, Magis A, Ortiz JO, Baumeister W, Luthey-Schulten Z. Noise contributions in an inducible genetic switch: a whole-cell simulation study. PLoS Comput. Biol. 2011 Mar.7(3):e1002010. doi: 10.1371/journal.pcbi.1002010. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 7.Salwinski L, Eisenberg D. In silico simulation of biological network dynamics. Nat. Biotechnol. 2004 Aug.22(8):1017–1019. doi: 10.1038/nbt991. [DOI] [PubMed] [Google Scholar]
  • 8.Gibson MA, Bruck J. Efficient exact stochastic simulation of chemical systems with many species and many channels. The J. Phys. Chem. 2000;104(9):1876–1889. [Google Scholar]
  • 9.Gillespie DT. Approximate accelerated stochastic simulation of chemically reacting systems. J Phys. Chem. 2001;115(4):1716–1733. [Google Scholar]
  • 10.Gillespie DT. Stochastic simulation of chemical kinetics. Annu. Rev. Phys. Chem. 2007;58:35–55. doi: 10.1146/annurev.physchem.58.032806.104637. [DOI] [PubMed] [Google Scholar]
  • 11.Rathinam M, Petzold LR, Cao Y, Gillespie DT. Stiffness in stochastic chemically reacting systems: The implicit tau-leaping method. J Chem. Phys. 2003 Dec.119(24):12784–12794. [Google Scholar]
  • 12.Wilkinson DJ. Stochastic modelling for quantitative description of heterogeneous biological systems. Nat. Rev. Genet. 2009 Feb.10(2):122–133. doi: 10.1038/nrg2509. [DOI] [PubMed] [Google Scholar]
  • 13.Sarpeshkar R. Ultra Low Power Bioelectronics: Fundamentals, Biomedical Applications, and Bio-Inspired Systems. Cambridge, U.K.: Cambridge Univ. Press; 2010. [Google Scholar]
  • 14.Mandal S, Sarpeshkar R. Log-domain circuit models of chemical reactions. Proc. IEEE Int. Symp. Circuits and Systems; Taipei; Taiwan. May 2009; pp. 2697–2700. [Google Scholar]
  • 15.Danial R, Woo SS, Turicchia L, Sarpeshkar R. Analog transistor models of bacterial genetic circuits; Proc. IEEE Biological Circuits and Syst. Conf; San Diego, CA, USA. Nov. 2011; pp. 333–336. [Google Scholar]
  • 16.Teo JJY, Woo SS, Sarpeshkar R. Synthetic biology: a unifying view and review using analog circuits. IEEE Trans. Biomed. Circuits Syst. 2015 Aug.9(4):453–474. doi: 10.1109/TBCAS.2015.2461446. [DOI] [PubMed] [Google Scholar]
  • 17.Woo SS, Kim J, Sarpeshkar R. A cytomorphic chip for quantitative modeling of fundamental bio-molecular circuits. IEEE Trans. Biomed. Circuits Syst. 2015 Aug.9(4):527–542. doi: 10.1109/TBCAS.2015.2446431. [DOI] [PubMed] [Google Scholar]
  • 18.Kim J, Woo SS, Sarpeshkar R. Fast and precise emulation of stochastic biochemical reaction networks with amplified thermal noise in silicon chips. IEEE Trans. Biomed. Circuits Syst. 2018 Apr.12(2):379–389. doi: 10.1109/TBCAS.2017.2786306. [DOI] [PubMed] [Google Scholar]
  • 19.Daniel R, Rubens JR, Sarpeshkar R, Lu TK. Synthetic analog computation in living cells. Nature. 2013 May;497(7451):619–623. doi: 10.1038/nature12148. [DOI] [PubMed] [Google Scholar]
  • 20.Cowan GER, Melville RC, Tsividis YP. A VLSI analog computer/digital computer accelerator. IEEE J. Solid-State Circuits. 2006 Jan.41(1):42–53. [Google Scholar]
  • 21.MacNichol E. An analog computer to simulate systems of coupled bimolecular reactions. Proc. IRE. 1959 Nov.47(11):1816–1820. [Google Scholar]
  • 22.Gilbert B. Translinear circuits: an historical overview. Analog Integr. Circuits Signal Process. 1996 Mar.9(2):95–118. [Google Scholar]
  • 23.Proctor CJ, Gray DA. Explaining oscillations and variability in the p53-Mdm2 system. BMC Syst. Biol. 2008;2:75. doi: 10.1186/1752-0509-2-75. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 24.Nielsen K, Sørensen PG, Hynne F, Busse H-G. Sustained oscillations in glycolysis: an experimental and theoretical study of chaotic and complex periodic behavior and of quenching of simple oscillations. Biophys. Chem. 1998 May;72(1–2):49–62. doi: 10.1016/s0301-4622(98)00122-7. [DOI] [PubMed] [Google Scholar]
  • 25.Juty N, Ali R, Glont M, Keating S, Rodriguez N, Swat M, Wimalaratne S, Hermjakob H, Le Novère N, Laibe C, Chelliah V. Bio-Models: content, features, functionality, and use. CPT Pharmacometrics Syst. Pharmacol. 2015 Feb.4(2):55–68. doi: 10.1002/psp4.3. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 26.Hucka M, Finney A, Sauro HM, Bolouri H, Doyle JC, Kitano H, the rest of the SBML Forum. Arkin AP, Bornstein BJ, Bray D, Cornish-Bowden A, Cuellar AA, Dronov S, Gilles ED, Ginkel M, Gor V, Goryanin II, Hedley WJ, Hodgman TC, Hofmeyr J-H, Hunter PJ, Juty NS, Kasberger JL, Kremling A, Kummer U, Le Novère N, Loew LM, Lucio D, Mendes P, Minch E, Mjolsness ED, Nakayama Y, Nelson MR, Nielsen PF, Sakurada T, Schaff JC, Shapiro BE, Shimizu TS, Spence HD, Stelling J, Takahashi K, Tomita M, Wagner J, Wang J. The systems biology markup language (SBML): a medium for representation and exchange of biochemical network models. Bioinformatics. 2003 Mar.19(4):524–531. doi: 10.1093/bioinformatics/btg015. [DOI] [PubMed] [Google Scholar]
  • 27.Hoops S, Sahle S, Gauges R, Lee C, Pahle J, Simus N, Singhal M, Xu L, Mendes P, Kummer U. COPASI—a COmplex PAthway SImulator. Bioinformatics. 2006 Dec.22(24):3067–3074. doi: 10.1093/bioinformatics/btl485. [DOI] [PubMed] [Google Scholar]
  • 28.Achour S, Sarpeshkar R, Rinard MC. PLDI 2016. Santa Barbara, CA, USA: Jun. 2016. Configuration synthesis for programmable analog devices with Arco; pp. 177–193. [Google Scholar]
  • 29.Sarpeshkar R, Salthouse C, Sit JJ, Baker M, Zhak S, Lu T, Turicchia L, Balster S. An ultra-low-power programmable analog bionic ear processor. IEEE Trans. Biomed. Eng. 2005 Apr.52(4):711–727. doi: 10.1109/TBME.2005.844043. [DOI] [PubMed] [Google Scholar]
  • 30.Termonia Y, Ross J. Oscillations and control features in glycolysis: numerical analysis of a comprehensive model. Proc. Natl. Acad. Sci. USA. 1981 May;78(5):2952–2956. doi: 10.1073/pnas.78.5.2952. [DOI] [PMC free article] [PubMed] [Google Scholar]
  • 31.Alon U. An Introduction to Systems Biology: Design Principles of Biological Circuits. Boca Raton, FL, USA: Chapman and Hall; 2007. [Google Scholar]
  • 32.Moran U, Phillips R, Milo R. Snapshot: Key numbers in biology. Cell. 2010;141(7):1262–1262.e1. doi: 10.1016/j.cell.2010.06.019. [DOI] [PubMed] [Google Scholar]
  • 33.Pelgrom MJM, Tuinhout HP, Vertregt M. Int. El. Devices Meet. San Francisco, CA, USA: Dec. 1998. Transistor matching in analog CMOS applications; pp. 915–918. [Google Scholar]
  • 34.Maricau E, Gielen G. Analog IC Reliability in Nanometer CMOS. ch. 2 New York, NY: Springer; 2013. CMOS reliability overview. [Google Scholar]
  • 35.Annema AJ, Nauta B, van Langevelde R, Tuinhout H. Analog circuits in ultra-deep-submicron CMOS. IEEE J. Solid-State Circuits. 2005 Jan.40(1):132–143. [Google Scholar]
  • 36.Pekarik JJ, et al. 2014 IEEE Bipolar/BiCMOS Circuits and Technology Meeting (BCTM) Coronado, CA, USA: 2014. A 90nm SiGe BiCMOS technology for mm-wave and high-performance analog applications; pp. 92–95. [Google Scholar]
  • 37.Yuan X, et al. Transistor mismatch properties in deep-submicrometer CMOS technologies. IEEE Trans. Electron Devices. 2011 Feb.58(2):335–342. [Google Scholar]

RESOURCES