IBM Skip to main content
  Home     Products & services     Support & downloads     My account  
  Select a country  
Journals Home  
  Systems Journal  
  ·  Current Issue  
  ·  Recent Issues  
  ·  Papers in Progress  
  ·  Search/Index  
  ·  Orders  
  ·  Description  
  ·  Author's Guide  
Journal of Research
and Development
  Staff  
  Contact Us  
Systems Journal  
Volume 39, Numbers 3 & 4, 2000
MIT Media Laboratory
 Table of contents: arrowHTML arrowPDF arrowASCII   This article: HTML arrowPDF arrowASCII   DOI: 10.1147/sj.393.0823 arrowCopyright info
   

Toward a table-top quantum computer

by Y. Maguire, E. Boyden, and N. Gershenfeld
To investigate the scaling issues for quantum computation using thermalized ensembles of spins, we are building a rudimentary quantum computer using nuclear magnetic resonance (NMR). We discuss the experimental issues facing the scalability of this technique including the number of qubits, issues of classical versus quantum behavior, and polarization. Due to the weak signals measured in NMR, the most significant challenge to practical devices is polarization enhancement. We present the architecture for a simple NMR spectrometer that is table-top, low-cost, and software-radio driven using commodity electronics and unconventional permanent magnet designs. Optimizations specific to using this machine as a computational device, such as probe design, compilation, and on-line control, are discussed.

With the quest for faster microcomputer chips in the semiconductor industry, exponential increases in speed must come at the exponentially increasing cost of some other resource. Advances in the semiconductor industry have capitalized on two resources: space, by shrinking the size of integrated circuitry in semiconductor fabrication; and money, by the ever increasing investment in fabrication plants. It is likely that we will, in the not too distant future, reach fundamental physical limits: transistors will be atomic in scale and memory will consist of only a handful of electrons. Time does not offer much help as a resource, because light takes 100 picoseconds (ps) to travel the 3 centimeters (cm) of a typical chip. Exponentially large physical space or energy are not realistically available resources. People have proposed DNA computers1 as a type of massive parallelism to solve computational problems. This solution does not scale either, because a computationally hard problem requires exponential amounts of DNA, which can quickly require samples more massive than the earth itself.1 The dream of quantum computing is that quantum mechanics provides an untapped, scalable exponential resource. Quantum computers can, in theory, factor numbers in exponentially fewer steps than classical computers (thus cracking modern cryptographic protocols), simulate quantum systems with exponentially fewer resources than now possible, and search databases in order(square rootN) queries rather than order(N) on an ordinary machine.

The power of quantum computing begins with a profound observation. Whereas a classical bit can be in one of two states, 0 or 1, a quantum bit, or “qubit” (e.g., a spin-1/2 particle) can be in a weighted superposition of both states. For example,

a|0> + b|1>

where a and b are complex numbers, and |a|2 + |b|2 = 1. When measured with a readout operator, the qubit appears to collapse to state |0> with probability |a|2, and to state |1> with probability |b|2. The state of two qubits can be written as

| Psi > =   ci|i> = a|00> + b|01> + c|10> + d|11>
summation
i

where |a|2 + |b|2 + |c|2 + |d|2 = 1, and the probability of measuring the amplitude of each state is given by the magnitude of its squared coefficient. In general, the state of n qubits is specified by 2n+1 - 1 real numbers—an exponential amount of information, relative to the number of physical particles required. Most of these states are entangled—to create them requires some kind of interaction between the qubits, and the qubits cannot be treated entirely independently from one another.

Designing quantum algorithms is made difficult by the fact that it is impossible to extract the entire exponential amount of information encoded in the state of a quantum system: only a polynomial amount of information can be read out, since a measurement collapses the exponential enormity of the state into a handful of classical values, with probabilities of occurrence given by the amplitudes as described in the previous paragraph. Furthermore, the only computational primitives allowed are unitary operators (which evolve the state of a system under Hamiltonian dynamics) that are reversible and therefore conserve probability. Nevertheless, a collection of wonderful algorithms have been discovered. In 1994, Peter Shor2 showed quantum computers could factor large numbers into prime factors in polynomial steps, compared to exponential steps3 on classical computers. Prime factorization is an essential part of modern public key cryptographic protocols, paramount to privacy in the electronic world. In 1997, Lov Grover4 demonstrated a search algorithm that could search an unsorted list for a single element quadratically faster on a quantum computer than on a classical computer.

Introduction to NMR

Liquid state nuclear magnetic resonance (NMR) is the manipulation of bulk degrees of freedom to obtain information about the underlying nuclear spins in an applied magnetic field. In order to understand how to build a quantum computer using NMR, we begin with the general requirements for a quantum computer.5

  1. It starts in a known state (a pure state such as the ground state).
  2. It is able to efficiently represent any unitary mapping from one state to another from a basic set of elementary unitary mappings.
  3. It is able to concatenate these mappings to form a circuit, that is maintain quantum states long enough to represent any unitary mapping.
  4. It performs projective measurement in order to read out the computation results.
To implement any of the above requires that we understand the dynamics of nuclear spins when they act as an ensemble. Quantum statistical mechanics allows us to compute the equilibrium thermal state of the liquid. Moreover, if we know the dynamics of a single molecule, we can easily calculate the dynamics of the entire liquid. To begin, the dynamics of quantum systems are described by operators that map one quantum state to another, | Psi > arrow | Phi >. For the nuclear spins of our quantum computer, operators are finite dimensional matrices. The Hamiltonian special H is a special operator that describes the complete dynamics of a molecule under time evolution and also determines the energy eigenstates of the system. The Hamiltonian of a rapidly tumbling molecule in a liquid containing n spin-1/2 nuclei with a strong magnetic flux density ubvector2 = B0z carat is given by

special H = n planckgammai(B0 + deltaBi)Iiz +   2piplanckJijIizIjz
summation summation
i = 1 i < j

where Iiz represents the z-axis spin operator for nuclei i, gammai is the gyromagnetic ratio of spin i, deltaBi describes a local magnetic flux density adjustment for each spin i due to the local chemical environment, and Jij describes the coupling, in Hertz, between spins i and j. We assume for the discussion of the dynamics below that we are in the weak coupling limit where |gammaideltaBi - gammajdeltaBj| greater greater Jij. In equilibrium, the Hamiltonian dictates that spin i precesses quickly about the z-axis at a frequency gammaiB0/2pi adjusted by the local term, gammadeltaBi/2pi, the so-called chemical shift. This precession frequency is called the Larmor frequency. This fast oscillation (usually at several MHz) is slowly modulated by the J-coupling (which usually proceeds at a few Hz). These precession states are the equilibrium states of the system, called the eigenstates. With the energy eigenstates, we are now ready to begin to understand the spin dynamics. Given a (2n-1)-dimensional basis | a > of single-molecule eigenstates, we can write the state of a thermal liquid ensemble of molecules as a density matrix rho, where the matrix element rhoab is given by


rhoab = cac*b

where the average is taken over the thermal ensemble, and cac*a is the probability of being in the state | a >. Given a time-evolution operator

U(t1, t0) = e(ispecial H(t1 - t0))/planck

where special H is the Hamiltonian of the quantum system during the period from time t0 to time t1, the density matrix evolves as

rho(t1) = Urho(t0)U - 1

To know the dynamics of the system for all future times, we just need to know the initial state of the system. Quantum statistical mechanics provides the answer with the thermalized (maximum entropy) density matrix

rho(0) = e - special H/kBT/special F = 1 open parenthesis 1 + n planckgammaiB Iiz + . . . close parenthesis

summation
special F i = 1 kT

The partition function special F is the normalization factor such that tr(rho(0)) = 1. Because the Zeeman energies gammaiB0 are usually about 10-5 times smaller compared to kBT, the first two terms of the Taylor expansion of the exponential serve as a very good approximation, with the second term being about 10-5 times the magnitude of the first, constant term. If our measurement apparatus is a coil wrapped around the sample detecting the classical magnetization signal, it turns out that the constant term is not observable, so we ignore it and concentrate on the remainder (called the deviation density matrix). The only time-evolution operators of interest in this simple model of NMR (where we neglect relaxation mechanisms and higher order spin-spin interactions), will be the single-qubit rotations (theta = gammaiB1t),

Xi(theta) = eithetaIix

which corresponds to a magnetic flux density ubvector21 = 2B1 cos(gammai(B0 + deltaBi)t)x carat, resonant with spin i, for a time t. If we think of the spin dynamics in the frame rotating about the z-axis at its Larmor frequency, we can decompose this linearly polarized field into two counter-rotating circularly polarized fields, one of which rotates with this “rotating” frame, while the other rotates oppositely at 2gammai(B0 + deltaBi) relative to the nuclear magnetization. We can ignore the latter term and concentrate on the former. Then B1 becomes a static field and B0 becomes zero, a much easier system to analyze. The ubvector21 field simply rotates the spin in the Y-Z plane in this rotating frame. We can create this field with the same measurement coil and just control the amplitude, phase, and time duration of our radio-frequency (RF) field. If we time the pulse such that gammaiB1t = pi/2 for the RF field, this is known in NMR literature as a (pi/2)x pulse. Similarly,

Yi(theta) = eithetaIiy

correspond to performing similar operations along the y-axis. The double-qubit rotation

ZZij(theta) = e-ipiJtIizIjz

corresponds to evolving a pair of J-coupled spins for a time t.

It turns out the Xi, Yi, and ZZij time-evolution operators are computationally complete, in that together they can approximate any unitary operator with any desired accuracy. Using our coil and an arbitrary waveform RF generator, we can satisfy the second of the quantum computing requirements. This coil actually allows us to satisfy the last requirement as well since we use it to perform projective measurement. One subtle point is that some quantum algorithms have been designed to give out probabilistic results from single quantum systems. Fortunately, it has been shown6 that they can be modified to give deterministic results for ensemble systems.

Decoherence is the process by which a quantum system loses quantum coherence to its environment and becomes classical. In NMR, decoherence is measured by how long a spin on one molecule stays in phase coherence with another molecule. This interval is called the spin-spin relaxation time, T2. The beauty of NMR for quantum computing is that T2 is much larger than the gate speed. This allows hundreds, even thousands of quantum gates to be implemented, allowing the third quantum computing requirement to be satisfied. One can see why this is possible: the nucleus is a perfect, frictionless trap, surrounded by a cloud of electrons that shield most external decoherence mechanisms; we are spreading relatively few degrees of freedom over the order(21023)-sized Hilbert space of a typical liquid. No other system to date has shown such long coherence times and, paradoxically, the ability to control the nuclear states on fast time scales. Quantum error correction is a wonderful theory that has shown that one can compute indefinitely if the decoherence rate per gate is less than a threshold,7-10 which has been estimated to be between order(10-4) to order(10-6) per gate.11 At the cost of many more ancilla spins, NMR is the closest demonstrated technology (order(10-3)) to reaching this threshold. By modifying the chemistry of the liquids, researchers at IBM12 are improving this threshold for NMR.

We have not satisfied the first quantum computing requirement, the creation of a pure state. A thermalized liquid only gives us the mixed state provided by the almost maximum entropy mixed state. One might think this is impossible, since to go from a high entropy state to a zero entropy state requires nonunitary operators. The key insight from a couple of groups is that there are degrees of freedom for rejecting this entropy.6,13,14 Logical labeling uses extra spins to label the remaining spins as ground state spins; spatial labeling uses external gradient fields to erase terms in the density matrix by creating a spatial superposition of quantum computers and then mixing them together; temporal labeling creates a series of experiments that are temporally averaged to give an initial ground state and the corresponding evolution. For prototyping our quantum computer, we use an inefficient but conceptually simple method, exhaustive averaging. For two qubits, one might run three experiments, for example, using preparatory gates to create deviation density matrices

Open bracket 1 0 0 0 Close bracket , Open bracket 1 0 0 0 Close bracket , Open bracket 1 0 0 0 Close bracket
0 0.6 0 0 0 -0.6 0 0 0 -1 0 0
0 0 -0.6 0 0 0 -1 0 0 0 0.6 0
0 0 0 -1 0 0 0 0.6 0 0 0 -0.6

performing the desired computation on each, then averaging the three experimental results—which gives the same result as if one had performed the computation on a state equal to the average of the three initial density matrices,

Open bracket 1.33 0 0 0 close bracket + Open bracket -0.33 0 0 0 close bracket
0 0 0 0 0 -0.33 0 0
0 0 0 0 0 0 -0.33 0
0 0 0 0 0 0 0 -0.33

The second term is unobservable and the first term is a pure state. This works because quantum mechanics is linear, and just as a Cartesian vector can be resolved into x, y, and z terms, we can resolve our density matrix into more easily manipulated components.14

Issues for thermal nuclear resonance

In this section we discuss issues facing the scaling of liquid nuclear resonance to nontrivial computational complexity. We begin with spin polarization and its essential role in the scalability of quantum computers, then address the both quantum and classical nature of NMR in thermal liquids, and finally discuss how to increase the number of qubits in the system.

Polarization. It seems counterintuitive to be able to make the observable term of the thermalized density matrix behave exactly as if it were in the ground state of the system. Delving deeper, consider the largest signal that can be observed by logical labeling to be the difference between the most probable and least probable terms of the density matrix:15,6

S = ((rhoeq)max - (rhoeq)min)gammaplanck(Iz)max

Solving this using the equation for the thermalized density matrix rho(0) given earlier in this section yields

S = N gammaplanck sinh (gammaplanckB0/2)


2N (cosh (ßgammaplanckB0/2))N

The plot of this function is shown in Figure 1A, with a baseline set as spin noise, where quantum information is lost to the environment via stimulated emission with the coil.16 It is apparent that between 20 and 50 qubits, no current technique can measure the quantum computing signal. Looking at the problem in the domain of polarization, Figure 1B shows the polarization needed to extract a specific number of qubits with a signal-to-noise ratio of 3 decibels (dB) relative to spin noise. This plot shows the spin polarization must approach unity to make the system perform better than classical systems. Both plots show that the Boltzmann limit is not scalable for quantum computation.

Figure 1Figure 1

It would be nice to dramatically increase the spin polarization but keep rotational and translational degrees of freedom thermalized. Optical pumping17 is a technique potentially able to accomplish this. Each quantum of circularly polarized light carries one unit of angular momentum that can put an atom into a highly polarized electronic state. The electronic polarization can then polarize the nuclear spins through relaxation mechanisms. In noble gases that do not interact and have simple electronic orbitals, close to 50 percent polarizations have been obtained. Happer et al.18 did pioneering work on optical pumping of rubidium gases that transfer polarization to either xenon-129 or helium-3. Transferring this polarization to nuclear states efficiently is an open, difficult question, but one that needs to be addressed. Another reason to have optical photons interact with nuclear spins is for quantum error correction. To implement any error correction algorithm, one needs a way to reject errors in the calculation in a way that does not influence the other spins that carry valuable information. A photon channel could be a means to do this—if a spin is polarized by optical pumping its previous state is erased. In summary, polarization is the most serious challenge facing practical quantum computation using ensembles of thermalized nuclear systems. If it can be done, remaining challenges should be surmountable, as will be shown below.

Is it really quantum? Even before we begin to address issues of polarization, it is paramount to determine if a mixed state system, in which the quantum system is represented by an ensemble of quantum systems, actually has the requirements to perform quantum computing. This was a question in the original paper by Gershenfeld and Chuang.6 The paper showed how to do state preparation, algorithms, and readout on an NMR system, but it was not clear that quantum information processing was actually being carried out in the system. Shack and Caves19 have almost answered this question. They show that for a number of qubits less than 16, at a modest spin polarization of epsilon = 2 × 10-6, the density matrix during the entire experiment is fully separable. Being separable means that the statistics of any measurement of the density matrix can be fully described by classical probabilities. In the high temperature limit the quantum computing signal can be simplified to

S = N planckgammaB0 = N epsilon



2N 2kBT 2N + 1

The density matrix of the spins in NMR can be described classically19 if

S less or = to eta identity 1

1 + 22N - 1

This means that for N smaller than a certain number, entanglement cannot exist. One could rephrase the calculations and ask “What is the minimum polarization needed so that a bulk NMR system with a number of qubits greater than one has a density matrix that is not separable?” The minimum polarization is 44.4 percent. Fortunately, this is not the end of the story: quantum computing is not just about the density matrix, it is also about unitary evolution. Shack and Caves19 show that if a unitary transform can be written as an outer product of matrices

V = V1o timesV2 . . . o timesVN

then a classical description with positive transition probabilities also can fully describe the system.

However, when they tried to include entangling unitaries, operators that cannot be written as in the equation above, they found a classical system could describe the system with classical transition probabilities only at the expense of an exponential decrease epsilon in signal-to-noise ratio for each step. They further showed that an exponential signal decrease per step can be avoided for K entangling unitaries by adding N ancillary qubits. K is the largest integer such that

epsilon less or = to etaK+1

For the classical system to be able to use a single entangling unitary with no signal reduction at a polarization of 2 × 10-6, this corresponds to K = 6 qubits. One could pose the question, “What is the minimum polarization such that for N greater or = to 2, no entangling unitaries can be simulated by the classical system without exponential signal decrease?” For 2 qubits, this corresponds to 3.9 × 10-3, above the range of current spectrometers, but within the realm of possibility of even conventional polarization enhancement techniques such as the Nuclear Overhauser Effect20—dynamic nuclear polarization with electrons. The model used by the authors for avoiding exponential signal decrease is only one of many possibilities: for a system to perform genuine information processing, all possible classical models cannot account for the entangling unitary evolutions without an exponential cost. Most believe that although the initial state of thermal NMR is separable, the dynamics will not be.

The question of whether NMR is quantum or not is an academic question—unity polarization, as addressed in the previous section, is paramount for scalable quantum computation. With unity polarization both the initial states and the dynamics will surely be quantum mechanical.

Number of qubits. The last major barrier for thermal NMR quantum computing is the number of qubits. To be able to implement error correction on a quantum computer may require somewhere between 10 and 100 qubits to describe a single qubit.10 To represent thousands of fully coupled qubits with separate resonances is impossible with current techniques. Fortunately, Seth Lloyd21 provided a solution. If one has a polymer chain of the type D-A-B-C-A-B-C … , where each letter corresponds to a unique resonance of a nuclear species, then this system is capable of performing any quantum computation. This architecture suffers a slight slowdown to pass information up and down the chain, but the huge gains that quantum algorithms offer are still preserved. This architecture is called a Single Instruction Multiple Data (SIMD) cellular automata. Recently, it has been shown22 that only … A-B-A-B … is necessary, which will make molecular synthesis considerably easier.

Hardware for the table-top quantum computer

We have begun the development of instrumentation to address the issues raised in the previous section. An NMR quantum computer starts with a collection of molecules in a liquid, where each molecule is a redundant quantum computer. In the presence of our homogeneous magnet field, a small percentage of these spins align with the magnetic field and begin to precess. By applying amplitude, frequency, phase and time controlled magnetic energy, we can rotate the spins around an arbitrary axis in the Hilbert space. To do this, we wrap a coil around the liquid sample, and add reactive elements to make it resonant at several frequencies. We use a digitally controlled transmitter that generates these waveforms. With sensitive electronics and a switch, we can detect the magnetization of the liquid and perform a measurement of the quantum state. A general system diagram is shown in Figure 2.

Figure 2Figure 2

Computational optimizations. Current commercial NMR spectrometers are incredible machines capable of doing a range of tasks, such as imaging and quantitative chemical structure determination. With the instrumentation outlined below, we hope to match current spectrometers in performance but end up with a device that can be treated more as a computer. Since we are trying to make a computer, there are optimizations that we can do to improve our system performance and size over commercial NMR spectrometers. The first has to do with the sample—commercial systems need to routinely analyze a number of samples. As a result, these systems are engineered for cylindrical symmetry for easy access. The ends contribute an inhomogeneity in the RF field, leading to errors in the computational gates. The major constraint for this configuration is that the active region of a sample cannot be larger than about 1.5 cm in length and 1 cm in diameter. For our computer, we need only a single sample and can engineer our system for spherical symmetry with no end effects. A spherical probe would have higher RF homogeneity and allow much smaller magnet designs.

Since we are interested in a computational result rather than a chemical spectrum, we can use a single qubit to serially produce an answer. This poses an enormous advantage since we can make a very high Q electrical,23 optical,24 or mechanical readout system (decoupled from the transmitter in the last two cases) that could dramatically improve our sensitivity. Another technique is to use an electron channel to measure an answer. This is an old technique20 called ENDOR, or Electron-Nuclear Double Resonance. Going through the electron channel will optimistically give a gyromagnetic ratio of improvement. The gyromagnetic ratio is inversely proportional to rest mass, and thus approximately three orders of magnitude improvement in signal can be obtained. Species-dependent relaxation mechanisms may make this approach insubstantial, but is worth investigating further for candidate quantum computing molecules.

Magnet design. To make a table-top system, one needs a compact, homogeneous magnetic field. We are investigating permanent magnet structures to solve this problem. There are a number of constraints for the system: small enough to fit on a table-top; as high a magnetic flux density as possible; a homogeneity of the flux density across the sample of about one part per billion. The latter two points require some justification. The basic signal-to-noise ratio for a coil is proportional to B07/4.25 Given NMR signals are extremely small, it is important to maximize this signal-to-noise ratio. If there are spatial field variations, there will be spins in the sample that will resonate slightly faster or slower than others. With the spins out of phase, this is an artificial means of introducing coherence that shortens the maximum possible coherence time of the liquid. Empirically, it has been found that for a homogeneity of one part per billion, all experimentally induced decoherence will be smaller than the natural decoherence processes. Due to manufacturing tolerances, this lofty goal cannot be reached in practice solely from the magnet alone. The field must be corrected in a controlled manner with slight perturbations, a process called shimming. With shimming, the magnet tolerance required is about 1 to 10 parts per million (ppm). This will be explained in more depth in the next section.

We have done finite element modeling of two basic magnet geometries. The first is based on an arrayed magnet geometry invented by Klaus Halbach.26 It can be shown27 that for a magnetization distribution within a cylindrical volume as shown in Figure 3, one can obtain a perfectly homogeneous solution within the volume of field strength

Figure 3Figure 3

|B| = Br ln(r2/r1)

Br is the remanent flux density, that is the flux density output in a zero magnetic field. This is quite surprising since one is able to obtain flux densities inside the volume that are much larger than this remanence. To construct this magnet, Halbach developed an approximation using segments of magnets that achieve a high order approximation to this field. The finite element model is shown in Figure 4. The design goal was to achieve 1 ppm homogeneity over a 1 cm diameter sphere in the middle of the magnet. This was accomplished with r1 = 2 cm, r2 = 6.5 cm, |ubvector| = 1.513 T.

Figure 4Figure 4

This is very encouraging, but from a practical point of view has a couple of limitations. Manufacturing tolerances on modern rare earth magnets, usually made by sintering, pressure bonding, or extruding are about 1 to 10 thousandths of an inch and the error on the magnetization angle can approach two degrees. These two facts make the best possible homogeneity on the order of one part per million. Two insights lead to alternatives. The first is to construct the magnet out of many tiny magnets. With enough magnets, the statistics of the distribution of errors for the ensemble of magnets average out high spatial frequencies in the magnetic field. The second method is more practical and simply requires judicious placement of high permeability materials. From Laplace's equation, taking the Fourier transform in space yields

Phi(k) = 1F(k)

(kk)µ

where F(k) is the spatial Fourier transform of nablaM, the magnetization. The frequency component F(k)dk will be attenuated by a factor of (kk)µ. For ferromagnetic materials with µr approaching 100000, the high permeability enhances the filtering of Laplace's equation by a factor µr over using permanent magnet materials alone. Fermilab28 took advantage of this point in the design of their antiproton recycler ring, where they required small, homogeneous magnets. They iteratively shaped the pole pieces of a traditional H-loop design.

Shimming. Shimming, or the modification of the bias magnetic field by precisely controlled electromagnets (or, in some cases, permanent magnets, µ-metal, and chunks of steel), can increase the homogeneity of the bias magnetic field by several orders of magnitude. This is essential for NMR due to the fact that nonidealities in the magnetic field can greatly reduce the lifetime of quantum coherences and blur features in the NMR spectrum. The observed signal will be a sum of the signals of many different isochromats, or collections of spins at the same frequency. A broadening of a waveform in the frequency-domain is associated with a shrinking of the length of the signal in the time-domain, since as the signal components at various frequencies dephase and become random with respect to one another, their sum tends toward zero. To perform a quantum computation, the signal must not decay below the noise level until the computation is complete. Thus we require that the homogeneity of our magnetic field be within one part in 109.

In a region without currents, a magnetic field obeys Laplace's equation, nabla2ubvector2 ~ nabla2B = 0, which can be solved in terms of spherical harmonics. (We set the x- and y-components of the magnetic field to zero, and consider only the z-component, which we refer to as B, in the following discussion.) Spherical harmonics are enumerated by indices (l, m), which are called the order and the degree, respectively. For m = 0, the zonal harmonics, one has cylindrical symmetry (i.e., the polar coordinate phi is irrelevant), which is appropriate for many magnets, where the dominant inhomogeneity is due to cylindrical end effects. The equation for B at the point (r, theta, phi) is then of the form

B(r, theta) = summation Cn(r/a)nPn(costheta)

where Pn is the nth Legendre polynomial, and Cn and a are parameters. In general, the complete solution for all (l, m) (including the tesseral terms, for which m neq 0) is, for the point (r, theta, phi),

B = infinity l Cn(r/a)lPlm(costheta)cos(m(phi - psilm))
summation summation
l=0 m=0

where Plm is called the associated Legendre polynomial, and the last phi dependent cosine term sinusoidally modulates the magnetic field as one traces a circle in the xy plane. All the harmonics except for l = m = 0 contribute to the inhomogeneities, since a homogeneous field, by definition, has a magnitude which does not depend on any coordinates. Since the higher-order terms rapidly decrease in amplitude for most realistic solutions of Laplace's equation, adjusting a few terms should suffice to remove most inhomogeneities: this is the motivation for including between 10 and 30 shim coils with every modern NMR spectrometer.

Spherical harmonics are orthogonal, so in theory one should be able to tune each coil just once. In reality they are not precisely orthogonal, since a small translation of one coil with respect to another leads to high-order interferences between the various orders. Thus shimming with orthogonal coils is a slightly nonlinear problem, and for a spectrometer with n shim coils, one must conduct a search over an n-dimensional space of coil currents, trying to maximize the height and narrowness of the peaks in the spectrum. Many cumulative weeks of human effort are usually required for the shimming operation for the lifetime of a spectrometer, but small corrections are usually automatable. We are very interested in making shimming an on-line process, where a classical computer is continuously correcting the shim currents for maximum resolution with no human intervention. The purpose is to begin to abstract away the spectrometer aspect of the machine and focus on the computational aspects. To do so will require modern nonlinear search methods, as will be described in the software section.

For a 1 tesla (T) magnetic flux density with part-per-100000 homogeneity, in order to get part-per-billion homogeneity, the error in these small fields must be on the order of 10-5 Gauss, roughly 10000 times smaller than the Earth's magnetic field. The physical coils we developed are planar, as shown in Figure 5. They are simply designed and fabricated using normal techniques for printed circuit boards. This is an old technique, as planar, orthogonal shimming was developed29 in the 1950s to shim electromagnets, but fell out of favor when superconducting magnets became adopted. We have built electronics to address any number of coils: each coil has a bipolar 16-bit digital-to-analog converter (DAC) capable of outputting between -100 and 100 milliampere (mA) of current, so that the least significant bit corresponds to 305 µ A of current. For a 25-turn coil of diameter 5 cm, this creates a magnetic field with magnitude ~1 gauss (G) (1 cm away from the coil center), so that the least significant bit corresponds to about 10-5 G. Thus the specified hardware is, at least in theory, capable of creating the necessary fields. The actual performance depends on many things, including the stability of the shimming system's power supply, the susceptibility of the electronics to external noise, and unavoidable noise imposed by the laws of thermodynamics.

Figure 5Figure 5

Transmitter. To generate arbitrary time series RF signals without prohibitive amounts of analog hardware, we have investigated minimal software radio approaches. With permanent magnet systems, resonance frequencies will reach only about 80 megahertz (MHz). This is well within the domain of the best digital-to-analog converters. In making a robust transmitter for NMR, one must be very careful with transmitter noise, phase noise of the oscillator, and long-term stability. To begin development, we began with a VXI-based, 40 million sample per second DAC made by Hewlett-Packard. The HPE1445 has 13 bits of digital resolution and generates arbitrary waveforms of any duration, and the clock is derived from a very stable oven-controlled crystal oscillator (OCXO). Initially, we have been interested in creating a system that can address two heteronuclear species such as protons and carbon-13 (many more qubits can exist in each heteronuclear subspace). We constructed a small analog board that takes the DAC output and, with filtering, creates simultaneous arbitrary waveforms for both species. A photograph of the board is shown in Figure 6. The signal from the DAC is split into two paths and is filtered, then converted by an RF mixer to each respective Larmor frequency. The local oscillators, also made by Hewlett-Packard, are switched between transmit and receive mode by gallium arsenide switches made by Microwave Associates (M/A-COM). These switches were chosen for their unusually high isolation of about 70 dB between channels and fast switching speed. High isolation is important because any unnecessary noise leakage to the receiver will degrade receiver performance and allow high power transmit pulses to be demodulated in the receiver. Control of the transmitter switches and other functions on this board and the receiver was accomplished with a Hitachi 32-bit processor.

Figure 6Figure 6

Receiver. The signal magnitude produced by a coil interacting with the spin magnetization after a (pi/2) pulse is given30 by

S proportional Ns ß(gammaB0)2(LVseta)½,

where Ns is the number of spins, ß is a parameter to indicate the inhomogeneity of the field B1, L is the coil inductance, Vs is the sample volume, and eta is the ratio of the volume of the active sample region to the coil. The noise term, due to fluctuation-dissipation, is the traditional Johnson type (ignoring equipartition and spin-noise16):

N=root(F4kbTRDeltaf,)

where F is the noise figure of the receiver, kBT is Boltzmann's constant times the temperature, R is the resistance of the coil, and Deltaf is the input receiver bandwidth. For designing a receiver, we see it is important to minimize both the input bandwidth and the noise figure. Since signals in NMR are on the order of -150 to -130 dBm (dB relative to 1 mW), careful attention to these details is paramount for detecting signals. For the receiver, we started with a VXI-based, 20-million sample per second analog-to-digital converter (ADC) made by Hewlett-Packard. The HPE1437 is an amazing device capable of representing 23 bits of noise-free digital resolution. The maximum dynamic range of an ADC without processing gain is 1.76 + 6.02N dB, where N is the nominal bit resolution. Thus, the theoretical dynamic range of this device is 140.22 dB. However, since we routinely detect signals that are -130 dBm, analog electronics are still required to get the maximum digital resolution. With this, we developed a minimal receiver that performed some basic amplification and filtering. The signals from the protons and carbon-13 are amplified by an Avantek 105 amplifier, a 1.6 dB noise figure amplifier with 27 dB of gain. After a wide, bandpass filter, the signal is downconverted, filtered, and then amplified with an integrated device, the RF2612 made by RF Micro Devices. The signal is then buffered with an op amp and then combined for the HPE1437. The overall RF specifications for the board are a 1.7 dB NF, with 60-104 dB of gain. A photograph of the board is shown in Figure 7. The ADC digitally downsamples the signal to obtain the amplitude and phase of the signal and then applies digital filtering and downsampling to reduce the output data rate. What we hope we have shown is not that this system is superior to commercial systems, but is a simple, inexpensive, and software-driven one.

Figure 7Figure 7

FPGA version. The system that we have developed should be capable of doing all the tasks necessary to implement a quantum computer, but it is hardly table-top in size or function. With so many VXI modules and separate pieces, we sought a minimal implementation of all these functions. Field Programmable Gate Arrays (FPGAs) are software programmable devices that give one the ability to develop small microprocessors, memory controllers, waveform generators, and timers usually implemented in application-specific integrated circuits (ASICs). We are developing a couple of boards around these devices that we expect will be able to amply do all the required tasks of our current system. The design that is currently being implemented is shown in Figure 8. Control of the board is implemented using the Internet Protocol (IP) over Ethernet. An FPGA serves as a controller that interfaces to a small Ethernet physical interface and Memory Access Controller (MAC) using the User Datagram Protocol (UDP) over IP. A three-wire serial bus is optoisolated and carries data over a bus to the transmitter and receiver cards. The transmitter card has an FPGA controlling 512 kilobytes (kB) of static RAM and an Analog Devices AD9856, a 200 MHz complementary metal oxide semiconductor (CMOS) digital upconverter. Over Ethernet, one supplies the frequency, amplitude, and phase of a signal digitally and this 3" × 2" card creates the waveform with submicrosecond time resolution. The same analog receiver design described in the previous section is implemented here except that the signal is mixed down to a standard intermediate frequency of 455 kHz. A third board containing an FPGA with 512 kB of SRAM and the AD9260 samples the signal at 10 MSPS (mega samples per second) and 16-bit resolution. On the FPGA, digital filters and downsamplers are applied and the signal is digitally downconverted with a quadrature local oscillator to recover amplitude and phase. Over the three-wire serial bus, the data are transmitted to the FPGA Ethernet controller and can be sent to any device on our network to be visualized and processed. Timing control for this whole system is controlled by a small oven-controlled crystal oscillator, which has excellent phase noise characteristics and temperature/time stability. To add other spins, one simply needs to add a stack of the three aforementioned boards, a high power switch, and RF amplifier.

Figure 8Figure 8

Software

In this section we discuss the pieces of software needed to run on our quantum computer, including low-level programming to address our hardware and optimization software for shimming.

Pulse language and system design. We designed a programming language,31 q, to control the hardware presented in the last section. A q program is parsed by an interpreter, QOS (or Quantum Operating System), which runs on a PC. The job of QOS is to coordinate the timing and configuration of the hardware, compile pulse sequences into waveforms for broadcast, and process the signals that return. It is the digital core of the software-radio architecture of this NMR system. A q program is essentially assembly microcode of the basic operations for an NMR quantum computer. A sample q program that performs one of the three pulse sequences required for executing Grover's algorithm, which performs a search on N unsorted items with only order(square rootN) database accesses, is briefly explained in the accompanying sidebar.

Declare the program type
% This is a comment
% A name for this program — Grover's algorithm to discover the
% |>11 state
Qname('grover|11>')
Qsample('13CHC13')      % Molecule — chloroform
Qversion('1.0 esb')     % Program version
Qdecouplingstyle('minimal')   % Whether decoupling is on/off

Declare the molecular parameters
Qnumqbs(2) % number of qubits
% Proton(H) on chloroform is first qubit — give NMR specific information
% for qubit
Qspecies(1,'1H', 26.7510e7, 42574931.880108, 35000000, 1, 0.001, 5)
% Carbon(13C) is 2nd qubit
Qspecies(2,'13C', 6.7263e7, 10705040.871934, 8000000, 0.0159, 0.001, 5)

Prepare the state (for temporal averaging purposes)
% A square (hard) pulse (as opposed to a soft gradient or sinc pulse)
% applied about the y-axis for 90 degrees
Qy(1,90,square)
% wait for a specified time in decimal units
Qwait(0.002325581395349, dec, 0)
Qy(2, 90, square)
% An xpulse
Qx(2, -90, square)
Qy(2, 90, square)
Qy(1,-90, square)
Qx(1,-90, square)
Qy(2,90, square)
Qwait(0.002325581395349, dec, 0)
Qy(1,-90,square)
Qx(1,-90,square)
Qy(1,90,square)
Qy(2,-90,square)
Qx(2,-90,square)

Perform Grover's algorithm including readout
Qx(1,180,square)
Qy(1,90,square)
Qx(2,180,square)
Qy(2,90,square)
Qwait(0.002325581395349, dec, 0)
Qy(2,-90,square)
Qx(2,90,square)
Qy(1,-90,square)
Qx(1,90,square)
Qwait(0.002325581395349, dec, 0)
Qy(2,-90,square)
Qx(2,-90,square)
Qy(1,-90,square)
Qx(1,-90,square)

Optimization for shimming. We built a machine-learning environment for QOS. Our initial priority was to continuously automate the tedious shimming process, but it quickly became apparent that with appropriate control software, the NMR spectrometer could automatically perform very complicated tasks. For example, one might then run a multidimensional NMR experiment like COSY (COrrelated SpectroscopY), extracting the various J-couplings between spins, as well as any other interactions that might be apparent. This is a very difficult task, requiring excellent hardware and software, since most real molecules in natural environments are difficult to differentiate from their surroundings.

All nonlinear search optimization techniques require a function to be optimized. Usually evaluating this function is an expensive thing to do—in our case, requiring many seconds per execution. Since we want to maximize the dephasing time (thus improving the homogeneity of the magnetic field), a suitable function is the sharpness of a peak in the 1-D NMR spectrum. Thus a simple protocol for calculating this sharpness is: run a pi/2 pulse program with specific values for the parameters being optimized, and collect the data from the NMR spectrometer. Then compute the power spectrum of the signal, and fit a Lorentzian (as described earlier) to the lineshape, extracting the sharpness omega0/a. The sharpness can be maximized using any of a number of methods—the Nelder-Mead downhill simplex method, Powell's direction set method, or the conjugate gradient method (using finite differences to calculate the gradient).

Results

Our results are preliminary but indicative of things to come. The plots outlined below are relatively trivial on commercial spectrometers, but our results come from a machine that is significantly less in cost and complexity. The plot in Figure 9 shows the intrinsic sensitivity of our spectrometer on a 0.5 cm3 50 percent glycerine in water sample. The sample was prepared in a 5 millimeter NMR tube and the data were collected for 3.28 milliseconds. This is short compared to the intrinsic coherence time of the protons in the liquid, but the sample has been inhomogeneously broadened by our low homogeneity test electromagnet. With over 50 dB of signal to noise over a bandwidth of approximately 1 kHz, our system is competitive with commercial systems, and with computational optimizations we are pursuing, we hope to develop our system beyond what is done commercially.

Figure 9Figure 9

The next plot is much more important. It is a correlation spectroscopy plot of the correlation of one spin to another. In this case, we are showing the correlation of a carbon atom and a hydrogen atom, proof that we can in principle create logical gates with our system. Richard Ernst32 invented this technique as a means to show coupling patterns between spins, that is to identify piJijIziIzj terms of the Hamiltonian from omegaIi, terms that were ambiguous in previous efforts. Without delving into the details of the rich subject of 2-D correlation spectroscopy, we have demonstrated an experiment that isolates the coupling term to show that the nonlinear term of the Hamiltonian is present. The experiment goes as follows: we apply a pi/2 pulse on the hydrogen spin that creates a (1/square root2)(|1> + |0>) state, then we let the system evolve for a variable time tau1 that is changed from experiment to experiment. During this time, the |0> state of the hydrogen spin will interact with the |0> state of the carbon spin to make this state resonate slightly faster during this time. The other |1> state of the hydrogen spin will interact with the |0> state of the carbon spins to resonate slightly slower. The difference in resonance frequency is the J coupling frequency. Our sample was 1 milliliter (mL) of C13 labeled chloroform with a coupling frequency of 215 Hz. A plot is shown in Figure 10, highlighting a splitting of the hydrogen resonance by 215 Hz. This is direct evidence of the coupling between spins, which with shimming will be used to implement gates. We could not go further because of the inhomogeneity of our magnet. With our shimming system, we should be able to implement a simple quantum algorithm.

Figure 10Figure 10

Conclusions

We have demonstrated the feasibility of a table-top NMR apparatus performing quantum computations, approaching the relevant performance of commercial spectrometers, and potentially scaling to nontrivial sizes through optimizations for computation rather than spectroscopy. Success beyond engineering diligence almost wholly depends on the success of unity polarization enhancement for thermal ensembles of nuclear spins. Optical pumping techniques show promise but still fall short of what is required for this technique to be useful. However, if this major obstacle can be overcome, we will have a machine that will have unprecedented computational degrees of freedom. This could potentially be very important not only for implementing quantum algorithms but also for controlling and manipulating large coherent quantum systems. Such a system could one day lend itself to simulating problems that physicists and semiconductor engineers only dream of. The important realization is that nature itself is a very powerful computational architecture. We just needed to figure out how to talk to it.

Acknowledgments

We gratefully acknowledge the MIT Media Lab's Things That Think consortium and the support of the Defense Advanced Research Projects Agency (DARPA) under the Nuclear Magnetic Resonance Quantum Computer (NMRQC) initiative. We thank our collaborators at Stanford, Berkeley, MIT, and IBM. Yael Maguire acknowledges financial support from IBM and the National Science Research Council of Canada (NSERC).

Cited references and note

Accepted for publication July 5, 2000.