[go: up one dir, main page]

US20190042965A1 - Apparatus and method for a field programmable quantum array - Google Patents

Apparatus and method for a field programmable quantum array Download PDF

Info

Publication number
US20190042965A1
US20190042965A1 US15/942,300 US201815942300A US2019042965A1 US 20190042965 A1 US20190042965 A1 US 20190042965A1 US 201815942300 A US201815942300 A US 201815942300A US 2019042965 A1 US2019042965 A1 US 2019042965A1
Authority
US
United States
Prior art keywords
quantum
qbit
lattice
location
locations
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US15/942,300
Inventor
James Clarke
Sonika Johri
Adam Holmes
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US15/942,300 priority Critical patent/US20190042965A1/en
Publication of US20190042965A1 publication Critical patent/US20190042965A1/en
Priority to CN201910150188.0A priority patent/CN110321128A/en
Priority to DE102019105154.1A priority patent/DE102019105154A1/en
Assigned to INTEL CORPORATION reassignment INTEL CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HOLMES, ADAM, CLARKE, JAMES, JOHRI, SONIKA
Abandoned legal-status Critical Current

Links

Images

Classifications

    • G06N99/002
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/20Models of quantum computing, e.g. quantum circuits or universal quantum computers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/40Physical realisations or architectures of quantum processors or components for manipulating qubits, e.g. qubit coupling or qubit control
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/60Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N10/00Quantum computing, i.e. information processing based on quantum-mechanical phenomena
    • G06N10/80Quantum programming, e.g. interfaces, languages or software-development kits for creating or handling programs capable of running on quantum computers; Platforms for simulating or accessing quantum computers, e.g. cloud-based quantum computing

Definitions

  • the embodiments of the invention relate generally to the field of quantum computing. More particularly, these embodiments relate to an apparatus and method for a field programmable quantum array.
  • Quantum computing refers to the field of research related to computation systems that use quantum mechanical phenomena to manipulate data. These quantum mechanical phenomena, such as superposition (in which a quantum variable can simultaneously exist in multiple different states) and entanglement (in which multiple quantum variables have related states irrespective of the distance between them in space or time), do not have analogs in the world of classical computing, and thus cannot be implemented with classical computing devices.
  • FIGS. 1A-1F illustrate various views of an example quantum dot device, in accordance with one embodiment
  • FIG. 2 illustrates one embodiment of a quantum controller for analyzing a quantum runtime and responsively adjusting a quantum processor
  • FIG. 3 illustrates an example qbit lattice with full occupancy
  • FIG. 4 illustrates another example qbit lattice with a plurality of vacant locations not containing qbits
  • FIG. 5 illustrates a method in accordance with one embodiment of the invention.
  • a quantum computer uses quantum-mechanical phenomena such as superposition and entanglement to perform computations.
  • quantum computation uses quantum bits (qbits), which can be in superpositions of states.
  • Qbits may be implemented using physically distinguishable quantum states of elementary particles such as electrons and photons. For example, the polarization of a photon may be used where the two states are vertical polarization and horizontal polarization. Similarly, the spin of an electron may have distinguishable states such as “up spin” and “down spin.”
  • Qbit states are typically represented by the bracket notations
  • a bit is exclusively in one state or the other, i.e., a ‘0’ or a ‘1.’
  • qbits in quantum mechanical systems can be in a superposition of both states at the same time, a trait that is unique and fundamental to quantum computing.
  • Quantum computing systems execute algorithms containing quantum logic operations performed on qubits.
  • the sequence of operations is statically compiled into a schedule and the qubits are addressed using an indexing scheme.
  • This algorithm is then executed a sufficiently large number of times until the confidence interval of the computed answer is above a threshold (e.g., ⁇ 95+%). Hitting the threshold means that the desired algorithmic result has been reached.
  • Qbits have been implemented using a variety of different technologies which are capable of manipulating and reading quantum states. These include, but are not limited to quantum dot devices (spin based and spatial based), trapped-ion devices, superconducting quantum computers, optical lattices, nuclear magnetic resonance computers, solid-state NMR Kane quantum devices, electrons-on-helium quantum computers, cavity quantum electrodynamics (CQED) devices, molecular magnet computers, and fullerene-based ESR quantum computers, to name a few. While a quantum dot device is described below in relation to certain embodiments of the invention, the underlying principles of the invention may be employed in combination with any type of quantum processor including, but not limited to, those listed above. The particular physical qbit implementation is orthogonal to the embodiments of the invention described herein.
  • Quantum dots are small semiconductor particles, typically a few nanometers in size. Because of this small size, quantum dots operate according to the rules of quantum mechanics, having optical and electronic properties which differ from macroscopic entities. Quantum dots are sometimes referred to as “artificial atoms” to connote the fact that a quantum dot is a single object with discrete, bound electronic states, as is the case with atoms or molecules.
  • FIGS. 1A-1F are various views of a quantum dot device 100 , which may be used with embodiments of the invention described below.
  • FIG. 1A is a top view of a portion of the quantum dot device 100 with some of the materials removed so that the first gate lines 102 , the second gate lines 104 , and the third gate lines 106 are visible.
  • FIGS. 1A and description herein may refer to a particular set of lines or gates as “barrier” or “quantum dot” lines or gates, respectively, this is simply for ease of discussion, and in other embodiments, the role of “barrier” and “quantum dot” lines and gates may be switched (e.g., barrier gates may instead act as quantum dot gates, and vice versa).
  • FIG. 1B-1F are side cross-sectional views of the quantum dot device 100 of FIG. 1A ; in particular, FIG. 1B is a view through the section B-B of FIG. 1A , FIG. 1C is a view through the section C-C of FIG. 1A , FIG. 1D is a view through the section D-D of FIG. 1A , FIG. 1E is a view through the section E-E of FIG. 1A , and FIG. 1F is a view through the section F-F of FIG. 1A .
  • the quantum dot device 100 of FIG. 1 may be operated in any of a number of ways.
  • electrical signals such as voltages, currents, radio frequency (RF), and/or microwave signals, may be provided to one or more first gate line 102 , second gate line 104 , and/or third gate line 106 to cause a quantum dot (e.g., an electron spin-based quantum dot or a hole spin-based quantum dot) to form in a quantum well stack 146 under a third gate 166 of a third gate line 106 .
  • a quantum dot e.g., an electron spin-based quantum dot or a hole spin-based quantum dot
  • Electrical signals provided to a third gate line 106 may control the electrical potential of a quantum well under the third gates 166 of that third gate line 106 , while electrical signals provided to a first gate line 102 (and/or a second gate line 104 ) may control the potential energy barrier under the first gates 162 of that first gate line 102 (and/or the second gates 164 of that second gate line 104 ) between adjacent quantum wells.
  • Quantum interactions between quantum dots in different quantum wells in the quantum well stack 146 (e.g., under different quantum dot gates) may be controlled in part by the potential energy barrier provided by the barrier potentials imposed between them (e.g., by intervening barrier gates).
  • the quantum dot devices 100 disclosed herein may further include a source of magnetic fields (not shown) that may be used to create an energy difference in the states of a quantum dot (e.g., the spin states of an electron spin-based quantum dot) that are normally degenerate, and the states of the quantum dots (e.g., the spin states) may be manipulated by applying electromagnetic energy to the gates lines to create quantum bits capable of computation.
  • the source of magnetic fields may be one or more magnet lines, as discussed below.
  • the quantum dot devices 100 disclosed herein may, through controlled application of electromagnetic energy, be able to manipulate the position, number, and quantum state (e.g., spin) of quantum dots in the quantum well stack 146 .
  • a gate dielectric 114 may be disposed on a quantum well stack 146 .
  • a quantum well stack 146 may include at least one quantum well layer 152 (not shown in FIG. 1 ) in which quantum dots may be localized during operation of the quantum dot device 100 .
  • the gate dielectric 114 may be any suitable material, such as a high-k material.
  • Multiple parallel first gate lines 102 may be disposed on the gate dielectric 114 , and spacer material 118 may be disposed on side faces of the first gate lines 102 .
  • a patterned hardmask 110 may be disposed on the first gate lines 102 (with the pattern corresponding to the pattern of the first gate lines 102 ), and the spacer material 118 may extend up the sides of the hardmask 110 , as shown.
  • the first gate lines 102 may each be a first gate 162 . Different ones of the first gate lines 102 may be electrically controlled in any desired combination (e.g., each first gate line 102 may be separately electrically controlled, or some or all the first gate lines 102 may be shorted together in one or more groups, as desired).
  • Multiple parallel second gate lines 104 may be disposed over and between the first gate lines 102 . As illustrated in FIG. 1 , the second gate lines 104 may be arranged perpendicular to the first gate lines 102 . The second gate lines 104 may extend over the hardmask 110 , and may include second gates 164 that extend down toward the quantum well stack 146 and contact the gate dielectric 114 between adjacent ones of the first gate lines 102 , as illustrated in FIG. 1D . In some embodiments, the second gates 164 may fill the area between adjacent ones of the first gate lines 102 /spacer material 118 structures; in other embodiments, an insulating material (not shown) may be present between the first gate lines 102 /spacer material 118 structures and the proximate second gates 164 .
  • spacer material 118 may be disposed on side faces of the second gate lines 104 ; in other embodiments, no spacer material 118 may be disposed on side faces of the second gate lines 104 .
  • a hardmask 115 may be disposed above the second gate lines 104 . Multiple ones of the second gates 164 of a second gate line 104 are electrically continuous (due to the shared conductive material of the second gate line 104 over the hardmask 110 ). Different ones of the second gate lines 104 may be electrically controlled in any desired combination (e.g., each second gate line 104 may be separately electrically controlled, or some or all the second gate lines 104 may be shorted together in one or more groups, as desired). Together, the first gate lines 102 and the second gate lines 104 may form a grid, as depicted in FIG. 1 .
  • third gate lines 106 may be disposed over and between the first gate lines 102 and the second gate lines 104 . As illustrated in FIG. 1 , the third gate lines 106 may be arranged diagonal to the first gate lines 102 , and diagonal to the second gate lines 104 . In particular, the third gate lines 106 may be arranged diagonally over the openings in the grid formed by the first gate lines 102 and the second gate lines 104 .
  • the third gate lines 106 may include third gates 166 that extend down to the gate dielectric 114 in the openings in the grid formed by the first gate lines 102 and the second gate lines 104 ; thus, each third gate 166 may be bordered by two different first gate lines 102 and two different second gate lines 104 .
  • the third gates 166 may be bordered by insulating material 128 ; in other embodiments, the third gates 166 may fill the openings in the grid (e.g., contacting the spacer material 118 disposed on side faces of the adjacent first gate lines 102 and the second gate lines 104 , not shown). Additional insulating material 117 may be disposed on and/or around the third gate lines 106 . Multiple ones of the third gates 166 of a third gate line 106 are electrically continuous (due to the shared conductive material of the third gate line 106 over the first gate lines 102 and the second gate lines 104 ). Different ones of the third gate lines 106 may be electrically controlled in any desired combination (e.g., each third gate line 106 may be separately electrically controlled, or some or all the third gate lines 106 may be shorted together in one or more groups, as desired).
  • FIGS. 1A-F illustrate a particular number of first gate lines 102 , second gate lines 104 , and third gate lines 106 , this is simply for illustrative purposes, and any number of first gate lines 102 , second gate lines 104 , and third gate lines 106 may be included in a quantum dot device 100 .
  • Other examples of arrangements of first gate lines 102 , second gate lines 104 , and third gate lines 106 are possible.
  • Electrical interconnects e.g., vias and conductive lines
  • accumulation regions that may be electrically coupled to the quantum well layer of the quantum well stack 146 (e.g., laterally proximate to the quantum well layer).
  • the accumulation regions may be spaced apart from the gate lines by a thin layer of an intervening dielectric material.
  • the accumulation regions may be regions in which carriers accumulate (e.g., due to doping, or due to the presence of large electrodes that pull carriers into the quantum well layer), and may serve as reservoirs of carriers that can be selectively drawn into the areas of the quantum well layer under the third gates 166 (e.g., by controlling the voltages on the quantum dot gates, the first gates 162 , and the second gates 164 ) to form carrier-based quantum dots (e.g., electron or hole quantum dots, including a single charge carrier, multiple charge carriers, or no charge carriers).
  • a quantum dot device 100 may not include lateral accumulation regions, but may instead include doped layers within the quantum well stack 146 . These doped layers may provide the carriers to the quantum well layer. Any combination of accumulation regions (e.g., doped or non-doped) or doped layers in a quantum well stack 146 may be used in any of the embodiments of the quantum dot devices 100 disclosed herein.
  • Quantum algorithms often require compilation into multi-qubit gates which are performed between qubits which are physically interconnected on a qubit plane (e.g., such as the quantum dot device described above).
  • a quantum system in which shuttling physical qubits between dot sites is faster and more robust than performing two qubit swap gates, there is an optimization tradeoff between introducing sparsity into a qubit lattice to increase the effective connectivity of the physical device, at the expense of losing computational elements.
  • Different quantum workloads may present a wide range of computational patterns, which may execute optimally on machines with different levels and types of physical connectivity.
  • quantum processors are selectively reconfigured to vacate or fill quantum dot sites in order to raise or lower the local connectivity in certain regions.
  • Quantum algorithms consist of quantum logic operations performed on qubits. The sequence of operations is statically compiled into a schedule appropriate for a specific physical quantum processor's description with respect to qubit connectivity and control constraints (i.e., a specific number of qbits and control lines having a specified physical arrangement within the quantum processor). L For certain algorithms, quantum dot devices offer a regime where shuttling individual qubits between dot sites may be both faster and more robust than performing multi-qubit gate operations.
  • One embodiment of the invention includes a dynamic scheduler which reconfigures the occupation of quantum dot sites in a physical quantum machine in response to specific computational sequences.
  • the dynamic scheduler analyzes the logical program specifications and identifies computational patterns presented within those specifications. For example, the dynamic scheduler may detect computational hot and cold zones and characterize them as such.
  • an adaptive machine configuration controller chooses occupation densities on the physical quantum processor (e.g., shuttling electrons between quantum dot sites). The dynamic scheduler then adjusts the physical machine schedule to accommodate the new machine configuration.
  • FIG. 2 illustrates one embodiment of a quantum computing architecture which includes a quantum processor 260 comprising a plurality of qbits 265 which are manipulated in response to signals from a quantum controller 205 .
  • the signals may include, for example, electrical or electromagnetic signals which adjust potentials in specific regions of a quantum dot device to move electrons between quantum dot locations.
  • the quantum controller 205 executes a quantum runtime 202 to perform a sequence of operations on the quantum processor 260 .
  • the quantum controller 205 may include a memory for storing the quantum runtime 201 and a processor for processing the quantum runtime.
  • the programmer writes quantum program code 200 (i.e., source code) which is translated into the quantum runtime 202 by a compiler 201 .
  • the quantum controller 205 may include both a general purpose processor to execute software (e.g., the quantum runtime 202 ) and specialized circuitry including electromagnetic transceivers and voltage control circuits to control the qbits.
  • the quantum processor 260 in response to execution of the quantum runtime code 201 , performs operations on the qbits 265 to generate results 270 . In one implementation, multiple iterations of a particular operation or a series of operations are required to generate the final results 270 .
  • a dynamic scheduler 230 schedules operations to be performed on the quantum processor 260 as specified by the quantum runtime 202 .
  • the dynamic scheduler 230 analyzes the logical program specifications of the quantum runtime 202 and identifies computational patterns presented within those specifications. For example, the dynamic scheduler 230 may detect computational hot and cold zones over time and characterize them to the adaptive machine configuration controller 240 .
  • the adaptive machine configuration controller 240 chooses and configures occupation densities on the physical quantum processor 260 . In one implementation, this involves a sequence of shuttling operations to move electrons to different vacant quantum dot locations (potentially moving through multiple vacant locations before arriving at the desired location). As discussed above, moving a qbit between quantum dots may be accomplished using electrical signals provided gate lines to control the potential energy barrier between adjacent quantum wells. Moreover, once the qbits have been set at the desired locations, quantum interactions between qbits in different quantum wells may be controlled at least in part by the barrier potentials imposed between them (e.g., by intervening barrier gates).
  • the dynamic scheduler 230 then adjusts the physical quantum processor 260 schedule in view of the occupation modifications performed by the adaptive machine configuration controller 240 . For example, if the adaptive machine configuration controller 240 has configured a sparse quantum processor with numerous vacant locations, the dynamic scheduler may change certain swap gate operations to shuttle operations (e.g., where a qbit is adjacent to a vacant location rather than an occupied location).
  • one or more physical layer devices perform the underlying operations on the qbits 265 as specified by the adaptive machine configuration controller 240 and dynamic scheduler 230 .
  • the physical layer devices may include precisely targeted and calibrated electromagnetic transmitters to generate microwaves or other electromagnetic waves to manipulate the qbits 265 and may also include precise voltage regulation devices to raise and lower barrier potentials between quantum wells.
  • the results 270 of the qbit operations are stored in a database, file system, or other form of data storage structure. While illustrated separately from the quantum runtime 202 and quantum controller 205 , the results 270 , quantum controller 205 and quantum runtime 202 may all be implemented on the same physical computing device such as a server or workstation with a memory, at least one processor, a storage device and a serial and/or wireless communication interfaces to couple the quantum controller 205 to a network.
  • one embodiment of the quantum runtime 202 transmits operations to the quantum controller 205 in accordance with the Open Quantum Assembly Language (QASM), an intermediate representation for quantum instructions.
  • QASM Open Quantum Assembly Language
  • the underlying principles of the invention are not limited to any particular language.
  • the dynamic scheduler 230 is coupled to (or includes) a translation lookaside buffer (TLB) 232 to translate virtual qbit addresses to physical qbit addresses to physically access the qbits 265 .
  • the dynamic scheduler 230 changes physical qubit addressing within the TLB 232 in accordance with the configuration changes made by the adaptive machine configuration controller 240 .
  • the dynamic scheduler 230 may associate new physical addresses to virtual addresses for a new set of qbit locations within the quantum processor 260 in response to the changes made by the adaptive machine configuration controller 240 .
  • Quantum applications are characterized by a diverse range of computational patterns, yet physical quantum machines are today designed to be fabricated a single time and statically maintained. Selectively choosing occupation densities for areas of a 2-Dimensional qubit lattice enables devices to change their effective local connectivity, allowing them to take advantage of computational pattern differences among quantum applications.
  • FIG. 3 illustrates an example of a qubit lattice comprising nine interconnected qbits 301 - 309 .
  • a qbit is positioned at each site of the lattice (i.e., the occupational density is 100%).
  • the controller in order to move qbit 305 from its current location to another location in the lattice, such as the location of qbit 303 , the controller must perform one or more “swap” operations sometimes referred to as “two qbit gates” or “swap gates.”
  • a swap gate operation must first be performed between qbit 305 and qbit 302 (or 306 ) so that qbit 305 is adjacent to qbit 303 . Following the swap gate operation, qbits 302 and 305 will have switched locations.
  • swap gate operations may be the most efficient way to proceed for some algorithms, they produce additional noise and can be problematic on certain quantum processors.
  • other algorithms will run significantly more efficiently using shuttling operations in which the qbits are moved through vacant locations in a lattice to reach a destination.
  • shuttling operations in which the qbits are moved through vacant locations in a lattice to reach a destination.
  • shuttling pathways allows for physically separated qubits to interact quickly, effectively increasing device connectivity.
  • the lattice shown in FIG. 3 is incapable of shuttling, however, because each location is occupied.
  • FIG. 4 illustrates one embodiment of a qbit lattice 400 in which only 1 ⁇ 3 of the 49 locations 401 - 407 , 411 - 417 , 421 - 427 , 431 - 437 , 441 - 447 , 451 - 457 , 461 - 467 , 411 - 417 contain qbits (i.e., it has 1 ⁇ 3 occupation).
  • darkly-colored circles 401 , 404 , 407 , 413 , 416 , 422 , 425 , 431 , 434 , 437 , 443 , 446 , 452 , 455 , 461 , 464 , and 467 are quantum dots which contain qbits while the remaining unmarked locations are vacant.
  • the qbits in FIG. 4 are distributed evenly throughout the lattice so that any qbit can be moved to interact with any other qbit without the need for performing swap gate operations.
  • the bolded interconnection lines indicate the different pathways qbit 434 can be shuttled to reach other qbits in the lattice without the need for swap gate operations.
  • FIG. 4 is one of many possible arrangements of the qbit lattice. Moreover, while the arrangement in FIG. 4 may be ideal for some quantum algorithms it will not be ideal for other quantum algorithms. Consequently, in one embodiment, the dynamic scheduler 230 tunes the connectivity of areas of the lattice selectively, by scanning the quantum algorithms included in the quantum runtime 202 and detecting and profiling computational patterns to identify the most efficient arrangement of qbits and vacant locations. Based on this information, the adaptive machine configuration controller 240 dynamically initializes a pattern/sequence of chip control voltages to create specific device occupation densities and patterns, by vacating (or filling) quantum dot sites with physical qubits. Once the desired pattern has been established, one embodiment of the dynamic scheduler 230 adjusts the machine code of the quantum runtime 202 in accordance with the reconfigured device topology. As mentioned, this may involve changing one or more swap gate operations to shuttle operations.
  • FIG. 5 A method in accordance with one embodiment of the invention is illustrated in FIG. 5 .
  • the method may be implemented within the context of the system architectures described above, but is not limited to any particular system architecture.
  • the quantum runtime is compiled and executed and at 501 , a qbit lattice comprising a plurality of locations is initialized so that some locations include qbits and other locations are unoccupied.
  • the quantum runtime is scanned/analyzed to detect and profile computational patterns. For example, the physical interactions between qbits required to implement a plurality of quantum gates may be identified.
  • the interconnection lattice is dynamically reconfigured based on the computational patterns to create specific device occupation densities and patterns by vacating/filling quantum dot locations with physical qbits.
  • the code of the quantum runtime is adjusted in accordance with the reconfigured device topology. For example, one or more operations may be swapped in place of existing operations within the quantum runtime or the quantum runtime may be supplemented with the new operations.
  • the quantum program code 200 may be dynamically updated and recompiled by the compiler 201 prior to execution.
  • the adaptive scheduler injects the modified quantum operations to the qbit lattice.
  • shuttling of qbits may be performed to physically move the qbits desired locations in the lattice.
  • the dynamic scheduler 230 evaluates the characteristics of the specific quantum processor 260 in use when evaluating the quantum runtime and rendering configuration decisions.
  • Embodiments of the invention may include various steps, which have been described above.
  • the steps may be embodied in machine-executable instructions which may be used to cause a general-purpose or special-purpose processor to perform the steps.
  • these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
  • instructions may refer to specific configurations of hardware such as application specific integrated circuits (ASICs) configured to perform certain operations or having a predetermined functionality or software instructions stored in memory embodied in a non-transitory computer readable medium.
  • ASICs application specific integrated circuits
  • the techniques shown in the figures can be implemented using code and data stored and executed on one or more electronic devices (e.g., an end station, a network element, etc.).
  • Such electronic devices store and communicate (internally and/or with other electronic devices over a network) code and data using computer machine-readable media, such as non-transitory computer machine-readable storage media (e.g., magnetic disks; optical disks; random access memory; read only memory; flash memory devices; phase-change memory) and transitory computer machine-readable communication media (e.g., electrical, optical, acoustical or other form of propagated signals—such as carrier waves, infrared signals, digital signals, etc.).
  • non-transitory computer machine-readable storage media e.g., magnetic disks; optical disks; random access memory; read only memory; flash memory devices; phase-change memory
  • transitory computer machine-readable communication media e.g., electrical, optical, acoustical or other form of propagated signals—such as carrier waves, infrared signals, digital signals, etc.
  • such electronic devices typically include a set of one or more processors coupled to one or more other components, such as one or more storage devices (non-transitory machine-readable storage media), user input/output devices (e.g., a keyboard, a touchscreen, and/or a display), and network connections.
  • the coupling of the set of processors and other components is typically through one or more busses and bridges (also termed as bus controllers).
  • the storage device and signals carrying the network traffic respectively represent one or more machine-readable storage media and machine-readable communication media.
  • the storage device of a given electronic device typically stores code and/or data for execution on the set of one or more processors of that electronic device.
  • a method comprising: analyzing quantum runtime code to detect quantum computational patterns within the quantum runtime code; dynamically configuring a quantum bit (qbit) lattice based on the detected quantum computational patterns, the qbit lattice comprising a plurality of locations and dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and modifying at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
  • qbit quantum bit
  • Example 1 wherein dynamically reconfiguring comprises shuttling at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
  • shuttling comprises moving the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
  • Example 3 The method of Example 3 wherein the qbit is moved to the plurality of intermediate locations and the second location without performing a swap gate operation.
  • Example 1 wherein analyzing comprises identifying physical interactions between qbits specified within the quantum runtime code.
  • Example 1 wherein analyzing comprises identifying one or more quantum gates implemented by the quantum runtime code.
  • Example 1 The method of Example 1 wherein the qbit lattice comprises a quantum dot device.
  • each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
  • Example 8 The method of Example 8 wherein each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
  • Example 9 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
  • RF radio frequency
  • An apparatus comprising: a quantum bit (qbit) lattice comprising a plurality of qbit locations; a quantum controller to execute quantum runtime code; a dynamic scheduler to analyze the quantum runtime code to detect quantum computational patterns within the quantum runtime code; an adaptive machine configuration controller to dynamically configure the qbit lattice based on the detected quantum computational patterns, the qbit lattice dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and the dynamic scheduler to modify at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
  • qbit quantum bit
  • Example 11 wherein, to dynamically configure the qbit lattice, the adaptive machine configuration controller is to shuttle at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
  • Example 12 The apparatus of Example 12 wherein the adaptive machine configuration controller is to move the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
  • Example 13 The apparatus of Example 13 wherein the adaptive machine configuration controller moves the qbit to the plurality of intermediate locations and the second location without performing a swap gate operation.
  • Example 11 The apparatus of Example 11 wherein, to analyze the quantum runtime code, the dynamic scheduler is to identify physical interactions between qbits specified within the quantum runtime code.
  • Example 11 wherein, to analyze the quantum runtime code, the dynamic scheduler is to identify one or more quantum gates implemented by the quantum runtime code.
  • Example 11 The apparatus of Example 11 wherein the qbit lattice comprises a quantum dot device.
  • each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
  • each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
  • Example 19 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
  • RF radio frequency
  • a machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform the operations of: analyzing quantum runtime code to detect quantum computational patterns within the quantum runtime code; dynamically configuring a quantum bit (qbit) lattice based on the detected quantum computational patterns, the qbit lattice comprising a plurality of locations and dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and modifying at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
  • qbit quantum bit
  • the machine-readable medium of Example 21 wherein dynamically reconfiguring comprises shuttling at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
  • shuttling comprises moving the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
  • Example 23 The machine-readable medium of Example 23 wherein the qbit is moved to the plurality of intermediate locations and the second location without performing a swap gate operation.
  • Example 21 The machine-readable medium of Example 21 wherein analyzing comprises identifying physical interactions between qbits specified within the quantum runtime code.
  • Example 21 The machine-readable medium of Example 21 wherein analyzing comprises identifying one or more quantum gates implemented by the quantum runtime code.
  • Example 21 The machine-readable medium of Example 21 wherein the qbit lattice comprises a quantum dot device.
  • each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
  • each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
  • the machine-readable medium of Example 29 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
  • RF radio frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Computational Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Logic Circuits (AREA)
  • Optical Modulation, Optical Deflection, Nonlinear Optics, Optical Demodulation, Optical Logic Elements (AREA)
  • Superconductor Devices And Manufacturing Methods Thereof (AREA)

Abstract

An apparatus and method are described for a field programmable quantum array. For example, one embodiment of an apparatus comprises: a quantum bit (qbit) lattice comprising a plurality of qbit locations; a quantum controller to execute quantum runtime code; a dynamic scheduler to analyze the quantum runtime code to detect quantum computational patterns within the quantum runtime code; an adaptive machine configuration controller to dynamically configure the qbit lattice based on the detected quantum computational patterns, the qbit lattice dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and the dynamic scheduler to modify at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.

Description

    BACKGROUND Field of the Invention
  • The embodiments of the invention relate generally to the field of quantum computing. More particularly, these embodiments relate to an apparatus and method for a field programmable quantum array.
  • Description of the Related Art
  • Quantum computing refers to the field of research related to computation systems that use quantum mechanical phenomena to manipulate data. These quantum mechanical phenomena, such as superposition (in which a quantum variable can simultaneously exist in multiple different states) and entanglement (in which multiple quantum variables have related states irrespective of the distance between them in space or time), do not have analogs in the world of classical computing, and thus cannot be implemented with classical computing devices.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • A better understanding of the present invention can be obtained from the following detailed description in conjunction with the following drawings, in which:
  • FIGS. 1A-1F illustrate various views of an example quantum dot device, in accordance with one embodiment;
  • FIG. 2 illustrates one embodiment of a quantum controller for analyzing a quantum runtime and responsively adjusting a quantum processor;
  • FIG. 3 illustrates an example qbit lattice with full occupancy;
  • FIG. 4 illustrates another example qbit lattice with a plurality of vacant locations not containing qbits; and
  • FIG. 5 illustrates a method in accordance with one embodiment of the invention.
  • DETAILED DESCRIPTION
  • In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the invention described below. It will be apparent, however, to one skilled in the art that the embodiments of the invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form to avoid obscuring the underlying principles of the embodiments of the invention.
  • Introduction
  • A quantum computer uses quantum-mechanical phenomena such as superposition and entanglement to perform computations. In contrast to digital computers which store data in one of two definite states (0 or 1), quantum computation uses quantum bits (qbits), which can be in superpositions of states. Qbits may be implemented using physically distinguishable quantum states of elementary particles such as electrons and photons. For example, the polarization of a photon may be used where the two states are vertical polarization and horizontal polarization. Similarly, the spin of an electron may have distinguishable states such as “up spin” and “down spin.”
  • Qbit states are typically represented by the bracket notations |0< and |1<. In a traditional computer system, a bit is exclusively in one state or the other, i.e., a ‘0’ or a ‘1.’ However, qbits in quantum mechanical systems can be in a superposition of both states at the same time, a trait that is unique and fundamental to quantum computing.
  • Quantum computing systems execute algorithms containing quantum logic operations performed on qubits. The sequence of operations is statically compiled into a schedule and the qubits are addressed using an indexing scheme. This algorithm is then executed a sufficiently large number of times until the confidence interval of the computed answer is above a threshold (e.g., ˜95+%). Hitting the threshold means that the desired algorithmic result has been reached.
  • Qbits have been implemented using a variety of different technologies which are capable of manipulating and reading quantum states. These include, but are not limited to quantum dot devices (spin based and spatial based), trapped-ion devices, superconducting quantum computers, optical lattices, nuclear magnetic resonance computers, solid-state NMR Kane quantum devices, electrons-on-helium quantum computers, cavity quantum electrodynamics (CQED) devices, molecular magnet computers, and fullerene-based ESR quantum computers, to name a few. While a quantum dot device is described below in relation to certain embodiments of the invention, the underlying principles of the invention may be employed in combination with any type of quantum processor including, but not limited to, those listed above. The particular physical qbit implementation is orthogonal to the embodiments of the invention described herein.
  • Quantum Dot Devices
  • Quantum dots are small semiconductor particles, typically a few nanometers in size. Because of this small size, quantum dots operate according to the rules of quantum mechanics, having optical and electronic properties which differ from macroscopic entities. Quantum dots are sometimes referred to as “artificial atoms” to connote the fact that a quantum dot is a single object with discrete, bound electronic states, as is the case with atoms or molecules.
  • FIGS. 1A-1F are various views of a quantum dot device 100, which may be used with embodiments of the invention described below. FIG. 1A is a top view of a portion of the quantum dot device 100 with some of the materials removed so that the first gate lines 102, the second gate lines 104, and the third gate lines 106 are visible. Although many of the drawings and description herein may refer to a particular set of lines or gates as “barrier” or “quantum dot” lines or gates, respectively, this is simply for ease of discussion, and in other embodiments, the role of “barrier” and “quantum dot” lines and gates may be switched (e.g., barrier gates may instead act as quantum dot gates, and vice versa). FIGS. 1B-1F are side cross-sectional views of the quantum dot device 100 of FIG. 1A; in particular, FIG. 1B is a view through the section B-B of FIG. 1A, FIG. 1C is a view through the section C-C of FIG. 1A, FIG. 1D is a view through the section D-D of FIG. 1A, FIG. 1E is a view through the section E-E of FIG. 1A, and FIG. 1F is a view through the section F-F of FIG. 1A.
  • The quantum dot device 100 of FIG. 1 may be operated in any of a number of ways. For example, in some embodiments, electrical signals such as voltages, currents, radio frequency (RF), and/or microwave signals, may be provided to one or more first gate line 102, second gate line 104, and/or third gate line 106 to cause a quantum dot (e.g., an electron spin-based quantum dot or a hole spin-based quantum dot) to form in a quantum well stack 146 under a third gate 166 of a third gate line 106. Electrical signals provided to a third gate line 106 may control the electrical potential of a quantum well under the third gates 166 of that third gate line 106, while electrical signals provided to a first gate line 102 (and/or a second gate line 104) may control the potential energy barrier under the first gates 162 of that first gate line 102 (and/or the second gates 164 of that second gate line 104) between adjacent quantum wells. Quantum interactions between quantum dots in different quantum wells in the quantum well stack 146 (e.g., under different quantum dot gates) may be controlled in part by the potential energy barrier provided by the barrier potentials imposed between them (e.g., by intervening barrier gates).
  • Generally, the quantum dot devices 100 disclosed herein may further include a source of magnetic fields (not shown) that may be used to create an energy difference in the states of a quantum dot (e.g., the spin states of an electron spin-based quantum dot) that are normally degenerate, and the states of the quantum dots (e.g., the spin states) may be manipulated by applying electromagnetic energy to the gates lines to create quantum bits capable of computation. The source of magnetic fields may be one or more magnet lines, as discussed below. Thus, the quantum dot devices 100 disclosed herein may, through controlled application of electromagnetic energy, be able to manipulate the position, number, and quantum state (e.g., spin) of quantum dots in the quantum well stack 146.
  • In the quantum dot device 100 of FIG. 1, a gate dielectric 114 may be disposed on a quantum well stack 146. A quantum well stack 146 may include at least one quantum well layer 152 (not shown in FIG. 1) in which quantum dots may be localized during operation of the quantum dot device 100. The gate dielectric 114 may be any suitable material, such as a high-k material. Multiple parallel first gate lines 102 may be disposed on the gate dielectric 114, and spacer material 118 may be disposed on side faces of the first gate lines 102. In some embodiments, a patterned hardmask 110 may be disposed on the first gate lines 102 (with the pattern corresponding to the pattern of the first gate lines 102), and the spacer material 118 may extend up the sides of the hardmask 110, as shown. The first gate lines 102 may each be a first gate 162. Different ones of the first gate lines 102 may be electrically controlled in any desired combination (e.g., each first gate line 102 may be separately electrically controlled, or some or all the first gate lines 102 may be shorted together in one or more groups, as desired).
  • Multiple parallel second gate lines 104 may be disposed over and between the first gate lines 102. As illustrated in FIG. 1, the second gate lines 104 may be arranged perpendicular to the first gate lines 102. The second gate lines 104 may extend over the hardmask 110, and may include second gates 164 that extend down toward the quantum well stack 146 and contact the gate dielectric 114 between adjacent ones of the first gate lines 102, as illustrated in FIG. 1D. In some embodiments, the second gates 164 may fill the area between adjacent ones of the first gate lines 102/spacer material 118 structures; in other embodiments, an insulating material (not shown) may be present between the first gate lines 102/spacer material 118 structures and the proximate second gates 164. In some embodiments, spacer material 118 may be disposed on side faces of the second gate lines 104; in other embodiments, no spacer material 118 may be disposed on side faces of the second gate lines 104. In some embodiments, a hardmask 115 may be disposed above the second gate lines 104. Multiple ones of the second gates 164 of a second gate line 104 are electrically continuous (due to the shared conductive material of the second gate line 104 over the hardmask 110). Different ones of the second gate lines 104 may be electrically controlled in any desired combination (e.g., each second gate line 104 may be separately electrically controlled, or some or all the second gate lines 104 may be shorted together in one or more groups, as desired). Together, the first gate lines 102 and the second gate lines 104 may form a grid, as depicted in FIG. 1.
  • Multiple parallel third gate lines 106 may be disposed over and between the first gate lines 102 and the second gate lines 104. As illustrated in FIG. 1, the third gate lines 106 may be arranged diagonal to the first gate lines 102, and diagonal to the second gate lines 104. In particular, the third gate lines 106 may be arranged diagonally over the openings in the grid formed by the first gate lines 102 and the second gate lines 104. The third gate lines 106 may include third gates 166 that extend down to the gate dielectric 114 in the openings in the grid formed by the first gate lines 102 and the second gate lines 104; thus, each third gate 166 may be bordered by two different first gate lines 102 and two different second gate lines 104. In some embodiments, the third gates 166 may be bordered by insulating material 128; in other embodiments, the third gates 166 may fill the openings in the grid (e.g., contacting the spacer material 118 disposed on side faces of the adjacent first gate lines 102 and the second gate lines 104, not shown). Additional insulating material 117 may be disposed on and/or around the third gate lines 106. Multiple ones of the third gates 166 of a third gate line 106 are electrically continuous (due to the shared conductive material of the third gate line 106 over the first gate lines 102 and the second gate lines 104). Different ones of the third gate lines 106 may be electrically controlled in any desired combination (e.g., each third gate line 106 may be separately electrically controlled, or some or all the third gate lines 106 may be shorted together in one or more groups, as desired).
  • Although FIGS. 1A-F illustrate a particular number of first gate lines 102, second gate lines 104, and third gate lines 106, this is simply for illustrative purposes, and any number of first gate lines 102, second gate lines 104, and third gate lines 106 may be included in a quantum dot device 100. Other examples of arrangements of first gate lines 102, second gate lines 104, and third gate lines 106 are possible. Electrical interconnects (e.g., vias and conductive lines) may contact the first gate lines 102, second gate lines 104, and third gate lines 106 in any desired manner.
  • Not illustrated in FIG. 1, are accumulation regions that may be electrically coupled to the quantum well layer of the quantum well stack 146 (e.g., laterally proximate to the quantum well layer). The accumulation regions may be spaced apart from the gate lines by a thin layer of an intervening dielectric material. The accumulation regions may be regions in which carriers accumulate (e.g., due to doping, or due to the presence of large electrodes that pull carriers into the quantum well layer), and may serve as reservoirs of carriers that can be selectively drawn into the areas of the quantum well layer under the third gates 166 (e.g., by controlling the voltages on the quantum dot gates, the first gates 162, and the second gates 164) to form carrier-based quantum dots (e.g., electron or hole quantum dots, including a single charge carrier, multiple charge carriers, or no charge carriers). In other embodiments, a quantum dot device 100 may not include lateral accumulation regions, but may instead include doped layers within the quantum well stack 146. These doped layers may provide the carriers to the quantum well layer. Any combination of accumulation regions (e.g., doped or non-doped) or doped layers in a quantum well stack 146 may be used in any of the embodiments of the quantum dot devices 100 disclosed herein.
  • Apparatus and Method For a Field Programmable Quantum Array
  • Quantum algorithms often require compilation into multi-qubit gates which are performed between qubits which are physically interconnected on a qubit plane (e.g., such as the quantum dot device described above). In a quantum system in which shuttling physical qubits between dot sites is faster and more robust than performing two qubit swap gates, there is an optimization tradeoff between introducing sparsity into a qubit lattice to increase the effective connectivity of the physical device, at the expense of losing computational elements. Different quantum workloads may present a wide range of computational patterns, which may execute optimally on machines with different levels and types of physical connectivity. In one embodiment of the invention, in response to these types of computational patterns, quantum processors are selectively reconfigured to vacate or fill quantum dot sites in order to raise or lower the local connectivity in certain regions.
  • In existing quantum processors, scheduling and mapping operations do not consider devices with reconfigurable topologies. Instead, devices are assumed to be statically configured and schedules are designed with this assumption. Adaptive techniques in quantum computing are now being researched for some control methods, but not based on reconfiguring physical device connectivity or topology.
  • Quantum algorithms consist of quantum logic operations performed on qubits. The sequence of operations is statically compiled into a schedule appropriate for a specific physical quantum processor's description with respect to qubit connectivity and control constraints (i.e., a specific number of qbits and control lines having a specified physical arrangement within the quantum processor). L For certain algorithms, quantum dot devices offer a regime where shuttling individual qubits between dot sites may be both faster and more robust than performing multi-qubit gate operations.
  • One embodiment of the invention includes a dynamic scheduler which reconfigures the occupation of quantum dot sites in a physical quantum machine in response to specific computational sequences. In particular, one embodiment of the dynamic scheduler analyzes the logical program specifications and identifies computational patterns presented within those specifications. For example, the dynamic scheduler may detect computational hot and cold zones and characterize them as such. Using the data identified by the dynamic scheduler, an adaptive machine configuration controller chooses occupation densities on the physical quantum processor (e.g., shuttling electrons between quantum dot sites). The dynamic scheduler then adjusts the physical machine schedule to accommodate the new machine configuration.
  • FIG. 2 illustrates one embodiment of a quantum computing architecture which includes a quantum processor 260 comprising a plurality of qbits 265 which are manipulated in response to signals from a quantum controller 205. The signals may include, for example, electrical or electromagnetic signals which adjust potentials in specific regions of a quantum dot device to move electrons between quantum dot locations.
  • In one embodiment, the quantum controller 205 executes a quantum runtime 202 to perform a sequence of operations on the quantum processor 260. For example, at least a portion of the quantum controller 205 may include a memory for storing the quantum runtime 201 and a processor for processing the quantum runtime. In one embodiment, the programmer writes quantum program code 200 (i.e., source code) which is translated into the quantum runtime 202 by a compiler 201.
  • The quantum controller 205 may include both a general purpose processor to execute software (e.g., the quantum runtime 202) and specialized circuitry including electromagnetic transceivers and voltage control circuits to control the qbits. In one embodiment, in response to execution of the quantum runtime code 201, the quantum processor 260 performs operations on the qbits 265 to generate results 270. In one implementation, multiple iterations of a particular operation or a series of operations are required to generate the final results 270.
  • A dynamic scheduler 230 schedules operations to be performed on the quantum processor 260 as specified by the quantum runtime 202. As mentioned, in one embodiment, the dynamic scheduler 230 analyzes the logical program specifications of the quantum runtime 202 and identifies computational patterns presented within those specifications. For example, the dynamic scheduler 230 may detect computational hot and cold zones over time and characterize them to the adaptive machine configuration controller 240.
  • Using the data identified by the dynamic scheduler, the adaptive machine configuration controller 240 chooses and configures occupation densities on the physical quantum processor 260. In one implementation, this involves a sequence of shuttling operations to move electrons to different vacant quantum dot locations (potentially moving through multiple vacant locations before arriving at the desired location). As discussed above, moving a qbit between quantum dots may be accomplished using electrical signals provided gate lines to control the potential energy barrier between adjacent quantum wells. Moreover, once the qbits have been set at the desired locations, quantum interactions between qbits in different quantum wells may be controlled at least in part by the barrier potentials imposed between them (e.g., by intervening barrier gates).
  • Once the adaptive machine configuration controller 240 has successfully configured the qbits at particular locations within the quantum processor (and with a selected density/sparsity), the dynamic scheduler 230 then adjusts the physical quantum processor 260 schedule in view of the occupation modifications performed by the adaptive machine configuration controller 240. For example, if the adaptive machine configuration controller 240 has configured a sparse quantum processor with numerous vacant locations, the dynamic scheduler may change certain swap gate operations to shuttle operations (e.g., where a qbit is adjacent to a vacant location rather than an occupied location).
  • Although not illustrated in FIG. 2, one or more physical layer devices perform the underlying operations on the qbits 265 as specified by the adaptive machine configuration controller 240 and dynamic scheduler 230. For example, the physical layer devices may include precisely targeted and calibrated electromagnetic transmitters to generate microwaves or other electromagnetic waves to manipulate the qbits 265 and may also include precise voltage regulation devices to raise and lower barrier potentials between quantum wells.
  • In one embodiment, the results 270 of the qbit operations are stored in a database, file system, or other form of data storage structure. While illustrated separately from the quantum runtime 202 and quantum controller 205, the results 270, quantum controller 205 and quantum runtime 202 may all be implemented on the same physical computing device such as a server or workstation with a memory, at least one processor, a storage device and a serial and/or wireless communication interfaces to couple the quantum controller 205 to a network.
  • As indicated in FIG. 2, one embodiment of the quantum runtime 202 transmits operations to the quantum controller 205 in accordance with the Open Quantum Assembly Language (QASM), an intermediate representation for quantum instructions. However, the underlying principles of the invention are not limited to any particular language.
  • In one embodiment, the dynamic scheduler 230 is coupled to (or includes) a translation lookaside buffer (TLB) 232 to translate virtual qbit addresses to physical qbit addresses to physically access the qbits 265. In one implementation, the dynamic scheduler 230 changes physical qubit addressing within the TLB 232 in accordance with the configuration changes made by the adaptive machine configuration controller 240. For example, the dynamic scheduler 230 may associate new physical addresses to virtual addresses for a new set of qbit locations within the quantum processor 260 in response to the changes made by the adaptive machine configuration controller 240.
  • Quantum applications are characterized by a diverse range of computational patterns, yet physical quantum machines are today designed to be fabricated a single time and statically maintained. Selectively choosing occupation densities for areas of a 2-Dimensional qubit lattice enables devices to change their effective local connectivity, allowing them to take advantage of computational pattern differences among quantum applications.
  • FIG. 3 illustrates an example of a qubit lattice comprising nine interconnected qbits 301-309. In this example, a qbit is positioned at each site of the lattice (i.e., the occupational density is 100%). As such, in order to move qbit 305 from its current location to another location in the lattice, such as the location of qbit 303, the controller must perform one or more “swap” operations sometimes referred to as “two qbit gates” or “swap gates.” For example, to allow qbit 305 to interact with qbit 303 (e.g., to entangle the qbits), a swap gate operation must first be performed between qbit 305 and qbit 302 (or 306) so that qbit 305 is adjacent to qbit 303. Following the swap gate operation, qbits 302 and 305 will have switched locations.
  • While swap gate operations may be the most efficient way to proceed for some algorithms, they produce additional noise and can be problematic on certain quantum processors. Moreover, other algorithms will run significantly more efficiently using shuttling operations in which the qbits are moved through vacant locations in a lattice to reach a destination. When moving a physical qubit through a lattice is faster and more robust than performing two qubit gates, then the existence of shuttling pathways allows for physically separated qubits to interact quickly, effectively increasing device connectivity. The lattice shown in FIG. 3 is incapable of shuttling, however, because each location is occupied.
  • In contrast, FIG. 4 illustrates one embodiment of a qbit lattice 400 in which only ⅓ of the 49 locations 401-407, 411-417, 421-427, 431-437, 441-447, 451-457, 461-467, 411-417 contain qbits (i.e., it has ⅓ occupation). In this example, darkly- colored circles 401, 404, 407, 413, 416, 422, 425, 431, 434, 437, 443, 446, 452, 455, 461, 464, and 467 are quantum dots which contain qbits while the remaining unmarked locations are vacant. Significantly, the qbits in FIG. 4 are distributed evenly throughout the lattice so that any qbit can be moved to interact with any other qbit without the need for performing swap gate operations. For example, the bolded interconnection lines indicate the different pathways qbit 434 can be shuttled to reach other qbits in the lattice without the need for swap gate operations.
  • Note that FIG. 4 is one of many possible arrangements of the qbit lattice. Moreover, while the arrangement in FIG. 4 may be ideal for some quantum algorithms it will not be ideal for other quantum algorithms. Consequently, in one embodiment, the dynamic scheduler 230 tunes the connectivity of areas of the lattice selectively, by scanning the quantum algorithms included in the quantum runtime 202 and detecting and profiling computational patterns to identify the most efficient arrangement of qbits and vacant locations. Based on this information, the adaptive machine configuration controller 240 dynamically initializes a pattern/sequence of chip control voltages to create specific device occupation densities and patterns, by vacating (or filling) quantum dot sites with physical qubits. Once the desired pattern has been established, one embodiment of the dynamic scheduler 230 adjusts the machine code of the quantum runtime 202 in accordance with the reconfigured device topology. As mentioned, this may involve changing one or more swap gate operations to shuttle operations.
  • A method in accordance with one embodiment of the invention is illustrated in FIG. 5. The method may be implemented within the context of the system architectures described above, but is not limited to any particular system architecture.
  • At 500, the quantum runtime is compiled and executed and at 501, a qbit lattice comprising a plurality of locations is initialized so that some locations include qbits and other locations are unoccupied. At 502, the quantum runtime is scanned/analyzed to detect and profile computational patterns. For example, the physical interactions between qbits required to implement a plurality of quantum gates may be identified.
  • At 503, the interconnection lattice is dynamically reconfigured based on the computational patterns to create specific device occupation densities and patterns by vacating/filling quantum dot locations with physical qbits. At 504, the code of the quantum runtime is adjusted in accordance with the reconfigured device topology. For example, one or more operations may be swapped in place of existing operations within the quantum runtime or the quantum runtime may be supplemented with the new operations. Alternatively, the quantum program code 200 may be dynamically updated and recompiled by the compiler 201 prior to execution.
  • At 505, the adaptive scheduler injects the modified quantum operations to the qbit lattice. As mentioned, if it results in a more efficient sequence of operations, shuttling of qbits may be performed to physically move the qbits desired locations in the lattice. Once the sequence of operations have been performed, values of data qbits are read and stored in the results 270.
  • While some embodiments are described above with respect to a quantum dot processor, the underlying principles of the invention are not limited to any particular physical implementation of qbits. The techniques described herein are intended to be used to improve the efficiency of different types of physical devices having different physical characteristics. Consequently, in one embodiment, the dynamic scheduler 230 evaluates the characteristics of the specific quantum processor 260 in use when evaluating the quantum runtime and rendering configuration decisions.
  • Using the techniques described above provides for physical quantum devices which are significantly more flexible when processing a wide range of algorithmic workloads. Moreover, these techniques reduce circuit depth for executed algorithms, reduce the burden of error correction, increase the probability of algorithm success, and reduce the thermal budgeting burden. Furthermore, error correction schemes can be chosen which selectively take advantage of the different connectivity and physical characteristics of different devices, offering the ability to choose the best error correction option on-the-fly, given different available error correction mechanisms.
  • Embodiments of the invention may include various steps, which have been described above. The steps may be embodied in machine-executable instructions which may be used to cause a general-purpose or special-purpose processor to perform the steps. Alternatively, these steps may be performed by specific hardware components that contain hardwired logic for performing the steps, or by any combination of programmed computer components and custom hardware components.
  • As described herein, instructions may refer to specific configurations of hardware such as application specific integrated circuits (ASICs) configured to perform certain operations or having a predetermined functionality or software instructions stored in memory embodied in a non-transitory computer readable medium. Thus, the techniques shown in the figures can be implemented using code and data stored and executed on one or more electronic devices (e.g., an end station, a network element, etc.). Such electronic devices store and communicate (internally and/or with other electronic devices over a network) code and data using computer machine-readable media, such as non-transitory computer machine-readable storage media (e.g., magnetic disks; optical disks; random access memory; read only memory; flash memory devices; phase-change memory) and transitory computer machine-readable communication media (e.g., electrical, optical, acoustical or other form of propagated signals—such as carrier waves, infrared signals, digital signals, etc.).
  • In addition, such electronic devices typically include a set of one or more processors coupled to one or more other components, such as one or more storage devices (non-transitory machine-readable storage media), user input/output devices (e.g., a keyboard, a touchscreen, and/or a display), and network connections. The coupling of the set of processors and other components is typically through one or more busses and bridges (also termed as bus controllers). The storage device and signals carrying the network traffic respectively represent one or more machine-readable storage media and machine-readable communication media. Thus, the storage device of a given electronic device typically stores code and/or data for execution on the set of one or more processors of that electronic device. Of course, one or more parts of an embodiment of the invention may be implemented using different combinations of software, firmware, and/or hardware. Throughout this detailed description, for the purposes of explanation, numerous specific details were set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the invention may be practiced without some of these specific details. In certain instances, well known structures and functions were not described in elaborate detail in order to avoid obscuring the subject matter of the present invention. Accordingly, the scope and spirit of the invention should be judged in terms of the claims which follow.
  • EXAMPLES Example 1
  • A method comprising: analyzing quantum runtime code to detect quantum computational patterns within the quantum runtime code; dynamically configuring a quantum bit (qbit) lattice based on the detected quantum computational patterns, the qbit lattice comprising a plurality of locations and dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and modifying at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
  • Example 2
  • The method of Example 1 wherein dynamically reconfiguring comprises shuttling at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
  • Example 3
  • The method of Example 2 wherein shuttling comprises moving the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
  • Example 4
  • The method of Example 3 wherein the qbit is moved to the plurality of intermediate locations and the second location without performing a swap gate operation.
  • Example 5
  • The method of Example 1 wherein analyzing comprises identifying physical interactions between qbits specified within the quantum runtime code.
  • Example 6
  • The method of Example 1 wherein analyzing comprises identifying one or more quantum gates implemented by the quantum runtime code.
  • Example 7
  • The method of Example 1 wherein the qbit lattice comprises a quantum dot device.
  • Example 8
  • The method of Example 7 wherein each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
  • Example 9
  • The method of Example 8 wherein each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
  • Example 10
  • The method of Example 9 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
  • Example 11
  • An apparatus comprising: a quantum bit (qbit) lattice comprising a plurality of qbit locations; a quantum controller to execute quantum runtime code; a dynamic scheduler to analyze the quantum runtime code to detect quantum computational patterns within the quantum runtime code; an adaptive machine configuration controller to dynamically configure the qbit lattice based on the detected quantum computational patterns, the qbit lattice dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and the dynamic scheduler to modify at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
  • Example 12
  • The apparatus of Example 11 wherein, to dynamically configure the qbit lattice, the adaptive machine configuration controller is to shuttle at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
  • Example 13
  • The apparatus of Example 12 wherein the adaptive machine configuration controller is to move the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
  • Example 14
  • The apparatus of Example 13 wherein the adaptive machine configuration controller moves the qbit to the plurality of intermediate locations and the second location without performing a swap gate operation.
  • Example 15
  • The apparatus of Example 11 wherein, to analyze the quantum runtime code, the dynamic scheduler is to identify physical interactions between qbits specified within the quantum runtime code.
  • Example 16
  • The apparatus of Example 11 wherein, to analyze the quantum runtime code, the dynamic scheduler is to identify one or more quantum gates implemented by the quantum runtime code.
  • Example 17
  • The apparatus of Example 11 wherein the qbit lattice comprises a quantum dot device.
  • Example 18
  • The apparatus of Example 17 wherein each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
  • Example 19
  • The apparatus of Example 18 wherein each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
  • Example 20
  • The apparatus of Example 19 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
  • Example 21
  • A machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform the operations of: analyzing quantum runtime code to detect quantum computational patterns within the quantum runtime code; dynamically configuring a quantum bit (qbit) lattice based on the detected quantum computational patterns, the qbit lattice comprising a plurality of locations and dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and modifying at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
  • Example 22
  • The machine-readable medium of Example 21 wherein dynamically reconfiguring comprises shuttling at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
  • Example 23
  • The machine-readable medium of Example 22 wherein shuttling comprises moving the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
  • Example 24
  • The machine-readable medium of Example 23 wherein the qbit is moved to the plurality of intermediate locations and the second location without performing a swap gate operation.
  • Example 25
  • The machine-readable medium of Example 21 wherein analyzing comprises identifying physical interactions between qbits specified within the quantum runtime code.
  • Example 26
  • The machine-readable medium of Example 21 wherein analyzing comprises identifying one or more quantum gates implemented by the quantum runtime code.
  • Example 27
  • The machine-readable medium of Example 21 wherein the qbit lattice comprises a quantum dot device.
  • Example 28
  • The machine-readable medium of Example 27 wherein each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
  • Example 29
  • The machine-readable medium of Example 28 wherein each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
  • Example 30
  • The machine-readable medium of Example 29 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.

Claims (30)

What is claimed is:
1. A method comprising:
analyzing quantum runtime code to detect quantum computational patterns within the quantum runtime code;
dynamically configuring a quantum bit (qbit) lattice based on the detected quantum computational patterns, the qbit lattice comprising a plurality of locations and dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and
modifying at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
2. The method of claim 1 wherein dynamically reconfiguring comprises shuttling at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
3. The method of claim 2 wherein shuttling comprises moving the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
4. The method of claim 3 wherein the qbit is moved to the plurality of intermediate locations and the second location without performing a swap gate operation.
5. The method of claim 1 wherein analyzing comprises identifying physical interactions between qbits specified within the quantum runtime code.
6. The method of claim 1 wherein analyzing comprises identifying one or more quantum gates implemented by the quantum runtime code.
7. The method of claim 1 wherein the qbit lattice comprises a quantum dot device.
8. The method of claim 7 wherein each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
9. The method of claim 8 wherein each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
10. The method of claim 9 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
11. An apparatus comprising:
a quantum bit (qbit) lattice comprising a plurality of qbit locations;
a quantum controller to execute quantum runtime code;
a dynamic scheduler to analyze the quantum runtime code to detect quantum computational patterns within the quantum runtime code;
an adaptive machine configuration controller to dynamically configure the qbit lattice based on the detected quantum computational patterns, the qbit lattice dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and
the dynamic scheduler to modify at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
12. The apparatus of claim 11 wherein, to dynamically configure the qbit lattice, the adaptive machine configuration controller is to shuttle at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
13. The apparatus of claim 12 wherein the adaptive machine configuration controller is to move the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
14. The apparatus of claim 13 wherein the adaptive machine configuration controller moves the qbit to the plurality of intermediate locations and the second location without performing a swap gate operation.
15. The apparatus of claim 11 wherein, to analyze the quantum runtime code, the dynamic scheduler is to identify physical interactions between qbits specified within the quantum runtime code.
16. The apparatus of claim 11 wherein, to analyze the quantum runtime code, the dynamic scheduler is to identify one or more quantum gates implemented by the quantum runtime code.
17. The apparatus of claim 11 wherein the qbit lattice comprises a quantum dot device.
18. The apparatus of claim 17 wherein each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
19. The apparatus of claim 18 wherein each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
20. The apparatus of claim 19 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
21. A machine-readable medium having program code stored thereon which, when executed by a machine, causes the machine to perform the operations of:
analyzing quantum runtime code to detect quantum computational patterns within the quantum runtime code;
dynamically configuring a quantum bit (qbit) lattice based on the detected quantum computational patterns, the qbit lattice comprising a plurality of locations and dynamically configured with some locations occupied by qbits and other locations not occupied by qbits; and
modifying at least a portion of the quantum runtime code based on the reconfiguration of the qbit lattice.
22. The machine-readable medium of claim 21 wherein dynamically reconfiguring comprises shuttling at least one qbit from a first location within the qbit lattice to a second location within the qbit lattice.
23. The machine-readable medium of claim 22 wherein shuttling comprises moving the qbit from the first location through a plurality of intermediate locations to arrive at the second location.
24. The machine-readable medium of claim 23 wherein the qbit is moved to the plurality of intermediate locations and the second location without performing a swap gate operation.
25. The machine-readable medium of claim 21 wherein analyzing comprises identifying physical interactions between qbits specified within the quantum runtime code.
26. The machine-readable medium of claim 21 wherein analyzing comprises identifying one or more quantum gates implemented by the quantum runtime code.
27. The machine-readable medium of claim 21 wherein the qbit lattice comprises a quantum dot device.
28. The machine-readable medium of claim 27 wherein each location in the quantum dot device comprises an electron spin-based quantum dot or a hole spin-based quantum dot.
29. The machine-readable medium of claim 28 wherein each quantum dot is coupled to one or more other quantum dots over one or more quantum gate lines.
30. The machine-readable medium of claim 29 wherein dynamically reconfiguring the qbit lattice comprises applying voltages, currents, radio frequency (RF) signals, and/or microwave signals to one or more of the quantum gate lines.
US15/942,300 2018-03-30 2018-03-30 Apparatus and method for a field programmable quantum array Abandoned US20190042965A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US15/942,300 US20190042965A1 (en) 2018-03-30 2018-03-30 Apparatus and method for a field programmable quantum array
CN201910150188.0A CN110321128A (en) 2018-03-30 2019-02-28 Device and method for field-programmable quantum array
DE102019105154.1A DE102019105154A1 (en) 2018-03-30 2019-02-28 Apparatus and method for a field programmable quantum array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15/942,300 US20190042965A1 (en) 2018-03-30 2018-03-30 Apparatus and method for a field programmable quantum array

Publications (1)

Publication Number Publication Date
US20190042965A1 true US20190042965A1 (en) 2019-02-07

Family

ID=65231675

Family Applications (1)

Application Number Title Priority Date Filing Date
US15/942,300 Abandoned US20190042965A1 (en) 2018-03-30 2018-03-30 Apparatus and method for a field programmable quantum array

Country Status (3)

Country Link
US (1) US20190042965A1 (en)
CN (1) CN110321128A (en)
DE (1) DE102019105154A1 (en)

Cited By (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110187885A (en) * 2019-06-10 2019-08-30 合肥本源量子计算科技有限责任公司 A kind of the intermediate code generation method and device of the compiling of quantum program
US10454459B1 (en) * 2019-01-14 2019-10-22 Quantum Machines Quantum controller with multiple pulse modes
US20200311525A1 (en) * 2019-04-01 2020-10-01 International Business Machines Corporation Bias correction in deep learning systems
US10862465B1 (en) 2019-09-02 2020-12-08 Quantum Machines Quantum controller architecture
US10931267B1 (en) 2019-07-31 2021-02-23 Quantum Machines Frequency generation in a quantum controller
US10996775B2 (en) * 2018-12-18 2021-05-04 Valve Corporation Dynamic sensor assignment
US11010145B1 (en) * 2018-02-21 2021-05-18 Rigetti & Co, Inc. Retargetable compilation for quantum computing systems
US11043939B1 (en) 2020-08-05 2021-06-22 Quantum Machines Frequency management for quantum control
US11088679B2 (en) 2019-03-06 2021-08-10 Quantum Machines Synchronization in a quantum controller with modular and dynamic pulse generation and routing
WO2021180668A1 (en) * 2020-03-13 2021-09-16 Quantum Motion Technologies Limited A qubit processing method
US11126926B1 (en) 2020-03-09 2021-09-21 Quantum Machines Concurrent results processing in a quantum control system
US11164100B2 (en) 2019-05-02 2021-11-02 Quantum Machines Modular and dynamic digital control in a quantum controller
WO2021262519A1 (en) * 2020-06-26 2021-12-30 Corning Incorporated Quantum computing systems having a reconfigurable quantum processing unit
US11245390B2 (en) 2019-09-02 2022-02-08 Quantum Machines Software-defined pulse orchestration platform
US11245389B2 (en) 2018-11-26 2022-02-08 Quantum Machines Quantum controller with modular and dynamic pulse generation and routing
CN114667500A (en) * 2019-10-24 2022-06-24 微软技术许可有限责任公司 Automatic quantum program optimization using conjugate companion annotations
US11379196B2 (en) * 2019-12-20 2022-07-05 Bull Sas Quantum computing compiling
US11507873B1 (en) 2019-12-16 2022-11-22 Quantum Machines Highly scalable quantum control
US20220374390A1 (en) * 2019-09-13 2022-11-24 The University Of Chicago System and method of partial compilation with variational algorithms for quantum computers
US11537925B2 (en) 2019-06-19 2022-12-27 International Business Machines Corporation System and method for latency-aware mapping of quantum circuits to quantum chips
US11567887B2 (en) 2020-09-11 2023-01-31 International Business Machines Corporation Quantum controller fast path interface
US11671180B2 (en) 2021-04-28 2023-06-06 Quantum Machines System and method for communication between quantum controller modules
US11806609B2 (en) 2019-02-28 2023-11-07 Valve Corporation Continuous controller calibration
US20230385672A1 (en) * 2022-05-31 2023-11-30 Quantum Machines Quantum controller validation
US12106178B2 (en) 2020-09-11 2024-10-01 International Business Machines Corporation Quantum state measurement logic facilitating a quantum state measurement backend process
US12111352B2 (en) 2022-01-24 2024-10-08 Quantum Machines Machine learning for syncing multiple FPGA ports in a quantum system
US12132486B2 (en) 2021-04-08 2024-10-29 Quantum Machines System and method for pulse generation during quantum operations
US12165011B2 (en) 2021-06-19 2024-12-10 Q.M Technologies Ltd. Error detection mechanism for quantum bits
US12242924B2 (en) 2020-09-11 2025-03-04 International Business Machines Corporation Mapping conditional execution logic to quantum computing resources
US12242406B2 (en) 2021-05-10 2025-03-04 Q.M Technologies Ltd. System and method for processing between a plurality of quantum controllers
US12314815B2 (en) 2022-02-28 2025-05-27 Q.M Technologies Ltd. Auto-calibrating mixers in a quantum orchestration platform
US12332682B2 (en) 2021-07-21 2025-06-17 Q.M Technologies Ltd. System and method for clock synchronization and time transfer between quantum orchestration platform elements
US12431879B2 (en) 2019-09-25 2025-09-30 Q.M Technologies Ltd. Classical processor for quantum control
US12488275B1 (en) 2022-05-10 2025-12-02 Q.M Technologies Ltd. Buffering the control of a quantum device
US12493810B2 (en) 2022-05-09 2025-12-09 Q.M Technologies Ltd. Pulse generation in a quantum device operator
US12541699B2 (en) 2023-11-13 2026-02-03 Q.M Technologies Ltd Frequency generation in a quantum controller

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825375B (en) * 2019-10-12 2022-12-06 合肥本源量子计算科技有限责任公司 Quantum program conversion method and device, storage medium and electronic device
CN110942152B (en) * 2019-10-29 2024-02-13 本源量子计算科技(合肥)股份有限公司 Quantum chip systems, quantum computing processing systems and electronic equipment

Cited By (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11010145B1 (en) * 2018-02-21 2021-05-18 Rigetti & Co, Inc. Retargetable compilation for quantum computing systems
US11750179B2 (en) 2018-11-26 2023-09-05 Quantum Machines Quantum controller with modular and dynamic pulse generation and routing
US12088302B2 (en) 2018-11-26 2024-09-10 Quantum Machines Quantum controller with modular and dynamic pulse generation and routing
US11245389B2 (en) 2018-11-26 2022-02-08 Quantum Machines Quantum controller with modular and dynamic pulse generation and routing
US10996775B2 (en) * 2018-12-18 2021-05-04 Valve Corporation Dynamic sensor assignment
US11736096B2 (en) 2019-01-14 2023-08-22 Quantum Machines Quantum controller with multiple pulse modes
US10454459B1 (en) * 2019-01-14 2019-10-22 Quantum Machines Quantum controller with multiple pulse modes
US10985739B2 (en) 2019-01-14 2021-04-20 Quantum Machines Quantum controller with multiple pulse modes
US11342905B2 (en) 2019-01-14 2022-05-24 Quantum Machines Quantum controller with multiple pulse modes
US12255652B2 (en) 2019-01-14 2025-03-18 Q.M Technologies Ltd. Quantum controller with multiple pulse modes
US10659018B1 (en) * 2019-01-14 2020-05-19 Quantum Machines Quantum controller with multiple pulse modes
US11806609B2 (en) 2019-02-28 2023-11-07 Valve Corporation Continuous controller calibration
US11088679B2 (en) 2019-03-06 2021-08-10 Quantum Machines Synchronization in a quantum controller with modular and dynamic pulse generation and routing
US12021532B2 (en) 2019-03-06 2024-06-25 Quantum Machines Synchronization in a quantum controller with modular and dynamic pulse generation and routing
US11671082B2 (en) 2019-03-06 2023-06-06 Quantum Machines Synchronization in a quantum controller with modular and dynamic pulse generation and routing
US20200311525A1 (en) * 2019-04-01 2020-10-01 International Business Machines Corporation Bias correction in deep learning systems
US12518189B2 (en) 2019-05-02 2026-01-06 Q.M Technologies Ltd Modular and dynamic digital control in a quantum controller
US11164100B2 (en) 2019-05-02 2021-11-02 Quantum Machines Modular and dynamic digital control in a quantum controller
US11868849B2 (en) 2019-05-02 2024-01-09 Quantum Machines Modular and dynamic digital control in a quantum controller
CN110187885A (en) * 2019-06-10 2019-08-30 合肥本源量子计算科技有限责任公司 A kind of the intermediate code generation method and device of the compiling of quantum program
US12136019B2 (en) 2019-06-19 2024-11-05 International Business Machines Corporation System and method for latency-aware mapping of quantum circuits to quantum chips
US11537925B2 (en) 2019-06-19 2022-12-27 International Business Machines Corporation System and method for latency-aware mapping of quantum circuits to quantum chips
US10931267B1 (en) 2019-07-31 2021-02-23 Quantum Machines Frequency generation in a quantum controller
US11387820B2 (en) 2019-07-31 2022-07-12 Quantum Machines Frequency generation in a quantum controller
US11870443B2 (en) 2019-07-31 2024-01-09 Quantum Machines Frequency generation in a quantum controller
US11245390B2 (en) 2019-09-02 2022-02-08 Quantum Machines Software-defined pulse orchestration platform
US11616497B2 (en) 2019-09-02 2023-03-28 Quantum Machines Software-defined pulse orchestration platform
US11967956B2 (en) 2019-09-02 2024-04-23 Quantum Machines Software-defined pulse orchestration platform
US10862465B1 (en) 2019-09-02 2020-12-08 Quantum Machines Quantum controller architecture
US11967957B2 (en) 2019-09-02 2024-04-23 Quantum Machines Software-defined pulse orchestration platform
US10958253B1 (en) 2019-09-02 2021-03-23 Quantum Machines Software-defined pulse orchestration platform
US11115012B2 (en) 2019-09-02 2021-09-07 Quantum Machines Software-defined pulse orchestration platform
US11463075B2 (en) 2019-09-02 2022-10-04 Quantum Machines Quantum controller architecture
US11942947B2 (en) 2019-09-02 2024-03-26 Quantum Machines Quantum controller architecture
US11616498B2 (en) 2019-09-02 2023-03-28 Quantum Machines Software-defined pulse orchestration platform
US11115011B1 (en) 2019-09-02 2021-09-07 Quantum Machines Quantum controller architecture
US20220374390A1 (en) * 2019-09-13 2022-11-24 The University Of Chicago System and method of partial compilation with variational algorithms for quantum computers
US11886379B2 (en) * 2019-09-13 2024-01-30 The University Of Chicago System and method of partial compilation with variational algorithms for quantum computers
US12431879B2 (en) 2019-09-25 2025-09-30 Q.M Technologies Ltd. Classical processor for quantum control
CN114667500A (en) * 2019-10-24 2022-06-24 微软技术许可有限责任公司 Automatic quantum program optimization using conjugate companion annotations
US11507873B1 (en) 2019-12-16 2022-11-22 Quantum Machines Highly scalable quantum control
US11379196B2 (en) * 2019-12-20 2022-07-05 Bull Sas Quantum computing compiling
US11126926B1 (en) 2020-03-09 2021-09-21 Quantum Machines Concurrent results processing in a quantum control system
US12417397B2 (en) 2020-03-09 2025-09-16 Q.M Technologies Ltd. Concurrent results processing in a quantum control system
JP2023518009A (en) * 2020-03-13 2023-04-27 クオンタム モーション テクノロジーズ リミテッド Qubit processing method
WO2021180668A1 (en) * 2020-03-13 2021-09-16 Quantum Motion Technologies Limited A qubit processing method
CN115362455A (en) * 2020-03-13 2022-11-18 量子运动科技有限公司 Quantum bit processing method
JP7592738B2 (en) 2020-03-13 2024-12-02 クオンタム モーション テクノロジーズ リミテッド Qubit Processing Methods
WO2021262519A1 (en) * 2020-06-26 2021-12-30 Corning Incorporated Quantum computing systems having a reconfigurable quantum processing unit
US11405024B2 (en) 2020-08-05 2022-08-02 Quantum Machines Frequency management for quantum control
US11043939B1 (en) 2020-08-05 2021-06-22 Quantum Machines Frequency management for quantum control
US11942946B2 (en) 2020-08-05 2024-03-26 Quantum Machines Frequency management for quantum control
US12273111B2 (en) 2020-08-05 2025-04-08 Q.M Technologies Ltd. Frequency management for quantum control
US11567887B2 (en) 2020-09-11 2023-01-31 International Business Machines Corporation Quantum controller fast path interface
US12106178B2 (en) 2020-09-11 2024-10-01 International Business Machines Corporation Quantum state measurement logic facilitating a quantum state measurement backend process
US12242924B2 (en) 2020-09-11 2025-03-04 International Business Machines Corporation Mapping conditional execution logic to quantum computing resources
US12132486B2 (en) 2021-04-08 2024-10-29 Quantum Machines System and method for pulse generation during quantum operations
US11671180B2 (en) 2021-04-28 2023-06-06 Quantum Machines System and method for communication between quantum controller modules
US12494850B2 (en) 2021-04-28 2025-12-09 Q.M Technologies Ltd. System and method for communication between quantum controller modules
US12242406B2 (en) 2021-05-10 2025-03-04 Q.M Technologies Ltd. System and method for processing between a plurality of quantum controllers
US12165011B2 (en) 2021-06-19 2024-12-10 Q.M Technologies Ltd. Error detection mechanism for quantum bits
US12332682B2 (en) 2021-07-21 2025-06-17 Q.M Technologies Ltd. System and method for clock synchronization and time transfer between quantum orchestration platform elements
US12111352B2 (en) 2022-01-24 2024-10-08 Quantum Machines Machine learning for syncing multiple FPGA ports in a quantum system
US12314815B2 (en) 2022-02-28 2025-05-27 Q.M Technologies Ltd. Auto-calibrating mixers in a quantum orchestration platform
US12493810B2 (en) 2022-05-09 2025-12-09 Q.M Technologies Ltd. Pulse generation in a quantum device operator
US12488275B1 (en) 2022-05-10 2025-12-02 Q.M Technologies Ltd. Buffering the control of a quantum device
US12450513B2 (en) * 2022-05-31 2025-10-21 Q.M Technologies Ltd. Quantum controller validation
US20230385672A1 (en) * 2022-05-31 2023-11-30 Quantum Machines Quantum controller validation
US12541699B2 (en) 2023-11-13 2026-02-03 Q.M Technologies Ltd Frequency generation in a quantum controller

Also Published As

Publication number Publication date
DE102019105154A1 (en) 2019-10-02
CN110321128A (en) 2019-10-11

Similar Documents

Publication Publication Date Title
US20190042965A1 (en) Apparatus and method for a field programmable quantum array
US20190042677A1 (en) Apparatus and method for quantum computing performance simulation
JP7335302B2 (en) Optimization of Physical Parameters in Fault-Tolerant Quantum Computing to Reduce Frequency Congestion
US12182041B2 (en) Manipulation zone for qubits in quantum dots
JP6931122B2 (en) Reduction of parasitic interactions in qubit grids for surface code error correction
Tougaw et al. A scalable signal distribution network for quantum-dot cellular automata
EP3942484A1 (en) Architectures for quantum information processing
WO2017210790A1 (en) Electronic circuit for control or coupling of single charges or spins and methods therefor
Sardinha et al. Tcam/cam-qca:(ternary) content addressable memory using quantum-dot cellular automata
JP2021168148A (en) Reduction of parasitic interactions in cubit grids
US20250390777A1 (en) System and methods for scalable control of superconducting qubits
Tung et al. Simulation of a QCA-based CLB and a multi-CLB application
KR20240097867A (en) Methods and systems for analog quantum computing
Sait et al. Cell assignment in hybrid CMOS/nanodevices architecture using Tabu Search
CN115362455A (en) Quantum bit processing method
Yuan et al. Defect-and variation-tolerant logic mapping in nanocrossbar using bipartite matching and memetic algorithm
US9928331B2 (en) Method and control device for circuit layout migration
Sait et al. Reconfiguration-based defect-tolerant design automation for hybrid CMOS/nanofabrics circuits using evolutionary and non-deterministic heuristics
WO2024179671A1 (en) Method of operating a semiconductor spin qubit quantum computer
US20250131177A1 (en) Quantum computer design
EP4463801A2 (en) Modifiable quantum error correction code for logical qubits
Arafeh et al. Cells reconfiguration around defects in CMOS/nanofabric circuits using simulated evolution heuristic
NL2036660B1 (en) Controlling a semiconductor single-spin qubit
KR102654474B1 (en) Quantum computing device and its quantum error correction method
EP4573490A1 (en) Device and method for operating a semiconductor spin qubit quantum computer

Legal Events

Date Code Title Description
STCT Information on status: administrative procedure adjustment

Free format text: PROSECUTION SUSPENDED

AS Assignment

Owner name: INTEL CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CLARKE, JAMES;JOHRI, SONIKA;HOLMES, ADAM;SIGNING DATES FROM 20180509 TO 20180511;REEL/FRAME:048464/0901

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE