CN111417967B - 量子错误纠正 - Google Patents
量子错误纠正 Download PDFInfo
- Publication number
- CN111417967B CN111417967B CN201780094876.9A CN201780094876A CN111417967B CN 111417967 B CN111417967 B CN 111417967B CN 201780094876 A CN201780094876 A CN 201780094876A CN 111417967 B CN111417967 B CN 111417967B
- Authority
- CN
- China
- Prior art keywords
- quantum
- processing
- layer
- array
- measurement data
- 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.)
- Active
Links
- 238000012937 correction Methods 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 235
- 238000005259 measurement Methods 0.000 claims description 87
- 238000004422 calculation algorithm Methods 0.000 claims description 48
- 238000000034 method Methods 0.000 claims description 21
- 238000001514 detection method Methods 0.000 claims description 20
- 239000002096 quantum dot Substances 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 17
- 239000000872 buffer Substances 0.000 claims description 7
- 238000000053 physical method Methods 0.000 claims description 7
- 238000003491 array Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 2
- 230000015654 memory Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 6
- 239000006227 byproduct Substances 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000000746 purification Methods 0.000 description 3
- 208000011580 syndromic disease Diseases 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000005281 excited state Effects 0.000 description 2
- 230000005283 ground state Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000009428 plumbing Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000004821 distillation Methods 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000005233 quantum mechanics related processes and functions Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B82—NANOTECHNOLOGY
- B82Y—SPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
- B82Y10/00—Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/40—Physical realisations or architectures of quantum processors or components for manipulating qubits, e.g. qubit coupling or qubit control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/60—Quantum algorithms, e.g. based on quantum optimisation, quantum Fourier or Hadamard transforms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
- G06N10/70—Quantum error correction, detection or prevention, e.g. surface codes or magic state distillation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Computational Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Chemical & Material Sciences (AREA)
- Nanotechnology (AREA)
- Quality & Reliability (AREA)
- Crystallography & Structural Chemistry (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Debugging And Monitoring (AREA)
- Detection And Correction Of Errors (AREA)
- Optical Communication System (AREA)
Abstract
公开了用于量子错误纠正的装置。该装置包括处理核的阵列,每个处理核包括:第一芯片上的处理器;和第一芯片上的处理器高速缓存;以及用于互连处理核的阵列中的相邻处理核的总线;其中,每个处理核包括:控制代码,该控制代码在由处理器执行时,使处理器访问至少一个相邻处理核的处理器高速缓存。
Description
技术领域
本申请涉及用于量子计算机中的错误纠正的硬件。更特别地,本申请涉及用于确定量子计算机中的错误的经典处理阵列。
背景技术
量子计算机是利用量子叠加和纠缠来比经典计算机更快地解决某些类型问题的计算设备。量子计算机的构造块(building block)是量子比特。量子比特是两级系统,其状态可以处于其两个状态的叠加中,而不是像经典位那样仅处于两个状态中的任何一个中。
量子算法是在量子计算机上运行的算法。在量子计算机上执行这些算法期间,可能会从包括退相干和噪声的多种源引入错误。由于不可克隆定理,涉及创建状态的多个副本的经典错误检测和纠正技术是不适合的。相反,量子错误检测和纠正技术涉及将量子比特与多个其他量子比特纠缠,并对纠缠的量子比特的子集执行测量,以识别何时发生错误。
发明内容
总体上,在一些方面,本公开的主题可以体现在一种装置中,该装置包括:处理核的阵列,每个处理核包括:第一芯片上的处理器;和第一芯片上的处理器高速缓存;以及总线,用于互连处理核的阵列中的相邻处理核;其中,每个处理核包括:控制代码,所述控制代码在由处理器执行时,使处理器访问至少一个相邻处理核的处理器高速缓存。
方法的各种实施方式可以包括以下特征中的一个或多个。例如,在一些实施方式中,控制代码存储在处理器高速缓存中。
在一些实施方式中,每个处理器高速缓存包括:第一级处理器高速缓存;和第二级处理器高速缓存,其中,数据通过第一级高速缓存在处理器与第二级处理器高速缓存之间传递。
在一些实施方式中,控制代码存储在第一级处理器高速缓存中。
在一些实施方式中,控制器代码包括机器代码。
在一些实施方式中,控制器代码在由处理器执行时使处理器访问至少一个相邻处理核的第二级处理器高速缓存。
在一些实施方式中,处理器高速缓存包括一个或多个缓冲器,其被配置为存储从至少一个相邻处理核访问的数据。
在一些实施方式中,将从至少一个相邻处理核访问的数据循环地写入缓冲器中的一个或多个。
在一些实施方式中,每个处理核被布置成接收相应的一组测量数据、将该组测量数据存储在处理器高速缓存中并处理该组测量数据。
在一些实施方式中,用于处理测量数据的指令存储在处理器高速缓存中。
在一些实施方式中,为了处理该组测量数据,处理核被配置为执行量子错误纠正。
在一些实施方式中,量子错误纠正包括实现表面代码。
在一些实施方式中,为了处理该组测量数据,处理核被配置为不使用随机存取存储器。
在一些实施方式中,处理核还包括一个或多个附加处理器。
本公开的其他方面可以体现在一种系统中,该系统包括:第一经典处理层,包括根据任何前述实施方式的处理核的阵列;以及量子计算层,包括被配置为实现量子计算算法的量子设备的阵列,其中,经典处理层被配置为:从量子计算层接收测量数据;以及使用接收的测量数据确定量子计算层执行的量子计算算法中的一个或多个错误。
本公开的其他方面可以体现在一种系统中,该系统包括:第一经典处理层,包括处理核的阵列,每个处理核包括:处理器;和处理器高速缓存;以及用于互连处理核阵列中的相邻处理核的总线;其中,每个处理核包括:控制代码,该控制代码在由处理器执行时,使处理器访问至少一个相邻处理核的处理器高速缓存;量子计算层,包括被配置为实现量子计算算法的量子设备的阵列,其中,经典处理层被配置为:从量子计算层接收测量数据;以及使用接收的测量数据确定量子计算层执行的量子计算算法中的一个或多个错误。
在一些实施方式中,该系统进一步包括控制层,该控制层包括现场可编程门阵列的阵列,该阵列被配置为:从量子计算层接收物理测量;将物理测量转换为测量数据;和将测量数据输出到第一经典处理层。
在一些实施方式中,控制层还被配置为:接收量子错误纠正指令;并响应于接收量子错误纠正指令,引起在量子计算层上实现一个或多个量子比特旋转。
在一些实施方式中,该系统还包括第二经典处理层,该第二经典处理层被配置为:从第一经典处理层接收量子计算算法中的一个或多个所确定的错误;以及从一个或多个所确定的错误确定一个或多个量子错误纠正指令。
在一些实施方式中,第二处理层还被配置为使一个或多个量子错误纠正指令在量子计算层中被实现。
在一些实施方式中,第二处理层被配置为实现表面代码以确定一个或多个量子错误纠正指令。
在一些实施方式中,第一经典处理层中的每个处理核从量子计算层中的量子设备的局部补丁接收测量。
附图说明
图1示出了量子计算机的实施例的示意性示例;
图2示出了用于经典处理层的处理核的示例;
图3示出了根据实施例的经典处理阵列的一部分的示例;
图4示出了多个处理核的示例;
图5示出了多个处理核的另一示例;
图6示出了量子计算机的另一实施例的示意性示例;和
图7示出了根据实施例的在量子计算机中执行的过程的示意性示例。
图8示出了表示给定局部补丁的阵列的示例三维数据结构,该给定局部补丁被循环地写入与该局部补丁关联的处理核的处理器高速缓存中。
具体实施方式
图1示出了量子计算机100的实施例的示意性示例。
量子计算机100包括量子计算层102、控制层104和经典处理层106。
量子计算层102包括被配置为执行量子计算算法的量子设备或量子比特108的阵列。量子设备或量子比特108包括数据量子比特和校验子(syndrome)(或测量)量子比特的混合。量子计算层102还包括用于对量子比特108执行操作的多个量子门(未示出)。在一些实施例中,量子计算层为量子设备108的二维阵列的形式。
量子设备或量子比特108可以例如是超导量子比特。量子计算层102被保持在足够低的温度下,以在整个量子算法的执行期间维持量子比特之间的相干性(例如,低于4.2K)。在使用超导量子比特的实施例中,温度保持低于超导临界温度。在本文中,术语“量子比特”和“量子设备”将可互换地被使用。
包括多个控制设备110的控制层104置于量子计算层102和经典处理层106之间。控制设备110从量子计算层102中的量子比特108接收原始测量数据,并将其转换为二进制测量数据供在经典处理层106中使用。在一些实施例中,控制设备110还可以向量子设备108发出指令,以例如指示量子门(未示出)执行量子比特旋转。在一些实施例中,每个控制设备110连接到约六个量子设备108。在一些实施例中,控制设备110是现场可编程门阵列(FPGA)。
经典处理层106(在本文中也称为“第一经典处理层”)包括处理核112的阵列。下面关于图2更详细地描述处理核112。经典处理层106通过控制层104而联接到量子计算层102。经典处理层106中的处理核112与量子比特108的局部补丁114关联。局部补丁114包括分组在一起的多个量子比特108。在一些实施例中,补丁大小约为一百量子比特。经典处理层106中的处理核112联接到经典处理层106中的相邻处理核112。这可以允许处理核112与其相邻核交换数据。在一些实施例中,处理核112在经典处理层106内形成处理核112的二维阵列。
处理核112提供有专用的汇编指令,该汇编指令在由处理核中的处理器执行时,使处理器访问相邻核的处理器高速缓存。由于不需要复杂的存储控制器,因此可以导致相邻核之间的低时延通信。
在使用中,量子计算层102执行量子计算算法。量子计算层102中的校验子量子比特与其相邻数据量子比特相互作用以产生原始测量数据。原始测量数据被馈送到控制层104的控制设备110中。控制设备110将原始测量数据转换为二进制测量数据,并将二进制测量数据流式传输到经典处理层106的处理核112中。
经典处理层106将来自控制层104的二进制测量数据转换为量子计算层102中被测量的量子比特108的量子态的宇称(parities)。这些宇称然后由经典处理层106处理以确定量子计算层102中的量子设备108的任何量子错误和/或需要被纠正的宇称。然后,可以进一步处理所确定的纠正以确定所需的纠正动作。
图2示出了用于经典处理层的处理核示例。经典处理层106的每个处理核112包括处理器116、一个或多个处理器高速缓存118和到经典处理层106中的最近邻处理核的总线120。处理核112设置在芯片上。
总线120互连经典处理层106中的处理核的阵列中的相邻处理核112。总线120允许处理器116访问其最近邻处理核112的处理器高速缓存118,以从与相邻的处理核112关联的量子设备108的局部补丁114获得测量数据。每个处理核112都提供有控制代码126,该控制代码126在由处理器116执行时,使处理器116访问至少一个相邻处理核112的处理器高速缓存118。控制代码126存储在处理器高速缓存118中,以加速处理器116对代码的访问。在一些实施例中,控制代码为机器代码或汇编代码的形式。
处理核112可以被构造为识别可以触发直接访问至少一个相邻处理核112的处理器高速缓存118的控制代码(例如,以汇编代码的形式)。例如,处理核112可以具有直接访问至少一个或多个类似构造的处理核的处理器高速缓存118的输入/输出电路。处理核112被构造为处理特定于处理核的对应汇编代码指令,以促使对一个或多个相邻处理核112的处理高速缓存118的直接访问。任何适当的处理器制造技术都可以用于实现这样的电路。
处理核112可以访问来自比其最近邻处理核更远的处理核112的数据。例如,可以访问下一个最近邻或下下一个最近邻处理核112。可以以多种方式来实现这种附加的通信。例如,可以通过在特定坐标的方向上发送请求,直到其到达负责该坐标的处理核112,来请求该坐标处的信息。该处理核112可以将所请求的信息发送回请求者。另一示例是使用于不仅仅是最近的四个核的附加的汇编级指令存储在处理核中。
处理器高速缓存118还存储用于处理由处理核接收的测量数据的指令。这些指令包括量子错误纠正和/或确定算法。在一些示例中,量子错误纠正算法包括表面代码,例如Toric代码。Fowler等人在“迈向表面代码的实际经典处理:时序分析(Towards practicalclassical processing for the surface code:timing analysis)”中提供了表面代码的示例。
[https://doi.org/10.1103/PhysRevLett.108.180501]。
在一些实施例中,处理器高速缓存包括L1高速缓存122(本文也称为“第一级高速缓存”)和L2高速缓存124(本文也称为“第二级高速缓存”)。
如上所述构造的处理核112可以处理触发在高速缓存层中直接通信的指令。在一些实施方式中,L1高速缓存用于存储量子错误纠正过程的状态,而L2高速缓存存储实现量子错误纠正过程的指令。
L1高速缓存122包括数据130,该数据130包括处理器116当前正在处理的测量数据。
L2高速缓存124存储包括用于执行量子错误纠正算法的指令128的数据。用于访问相邻处理核112的控制代码126也存储在L2高速缓存124中。低级汇编指令132还用于在处理核112的L1高速缓存122和L2高速缓存124之间移动测量数据。在一些实施例中,低级汇编指令132被提供为控制代码126的一部分。在其他实施例中,低级汇编指令132被单独提供。
L2高速缓存124还将从量子设备108获得的测量数据134存储在处理核112与之关联的局部补丁114中。来自关联的局部补丁114的测量数据134通过控制层104从量子计算层102馈送到L2高速缓存124中。测量数据134根据需要通过L1高速缓存122被传送到处理器116以进行处理。
每个L2高速缓存124还包括用于处理核112的每个总线120的接收缓冲器(未示出)。这些缓冲器被对应的相邻处理核循环地写入。该缓冲器可以被配置为发出“停止比特”,以使其他核知道它已过载以减少争用。当控制代码在这样的实施例中由处理器执行时,可以使处理器访问相邻处理核的第二级处理器高速缓存124。
在执行量子错误纠正时,使用处理器高速缓存存储算法指令和测量数据可以减少或甚至消除对外部存储器(例如随机存取存储器)的需要。当执行错误纠正算法时,这可以帮助减少时延。
在一些实施例中,L1高速缓存具有在8kB至128kB之间的存储器。在一些实施例中,L1高速缓存具有64kB的存储器。在一些实施例中,L2高速缓存具有在0.5MB至3MB之间的存储器。在一些实施例中,L2高速缓存具有1.5MB的存储器。
每个局部补丁使用单个处理核的阵列的一部分示例如图3所示。
经典处理层包括处理核112的阵列。该阵列包括多个主板136,每个主板包括处理核112。在给出的示例中,仅示出了四个处理核,但是通常该阵列可以包括任何数量的处理核112。
处理核112位于阵列中的每个主板136上。相邻主板136上的处理器高速缓存118通过总线120而链接。
每个处理核112从量子计算层102中的量子设备108的局部补丁114接收测量数据。阵列中的处理核112共同覆盖量子计算层102中的感兴趣的局部补丁114。在一些实施例中,阵列覆盖量子计算层102中的所有局部补丁114。
在执行量子错误纠正算法期间,总线120允许处理核112访问相邻处理核112中的测量数据。相邻处理核112与量子计算层102中的与访问测量数据的处理核112的局部补丁114相邻的局部补丁114关联。
还参考图4,在一些替代实施例中,多个处理核112位于每个主板136上。每个处理核112包括一个或多个处理器116和处理器高速缓存118。每个主板136上的处理核112可以通过主板内总线138(其在一些实施例中可以是L3高速缓存的形式)交换数据。在所示的实施例中,主板136设置有四个处理核112。然而,可以使用更少或更多的处理核112。
在所示的实施例中,主板136的外围上的处理核112均具有到相邻主板上的它们的最近邻处理核的定向总线140。这可以允许不同主板上的相邻处理核的处理器高速缓存之间交换测量数据。
还参考图5,使每个外围处理核112具有到相邻主板上的最近邻处理核的定向总线的替代方案是具有用于被用作共享资源的外围处理器的公共定向总线140。在该实施例中,公共定向总线140在相邻主板上的处理器高速缓存之间交换数据。公共定向总线140可以与主板内部总线138连接,从而允许来自相邻主板处理核的高速缓存的数据被主板136上的任何处理核112使用。
还参考图6,可以在第二经典处理层142中提供附加处理。第二经典处理层包括第二层处理核144的阵列。第二经典处理层142中的第二层处理核144使用由经典处理层106输出的纠正的宇称和/或所识别的错误,以确定用于纠正所识别的量子错误的指令。所确定的指令146被发送到控制层104,控制层104将其转换为控制信号,并将其应用于量子计算层102中的量子设备108,从而纠正所识别的错误。
通常,第二处理层142具有比具有处理核112的第一经典处理层106少的第二层处理核144。在一些实施例中,第二经典处理层142具有达1/100的更少的处理核。第二经典处理层142还可以提供全局量子算法控制。
上述系统特别适于实现表面代码以确定和纠正量子错误。这样的表面代码的示例是Toric代码。
在使用中,量子计算层执行具有被用于错误纠正的表面代码的量子算法。表面代码可以被可视化为大型棋盘。每个正方形代表量子比特。白正方形与用于存储数据的量子比特对应,并且被称为数据量子比特。黑正方形与用于检查其相邻四个数据量子比特中的错误的量子比特对应,并且被称为测量或校验子量子比特。通过打开和关闭表面代码的区域来实现计算。在物理上,这涉及使测量量子比特停止与量子计算层的特定区域内的数据量子比特相互作用。
在这种情况下,可以将量子算法可视化为三维几何结构或阵列,其中时间在竖直方向上运行。可以将算法的执行可视化为在二维(对于量子比特的一维阵列)或三维(对于量子比特的二维阵列)数据结构(有时也称为“空间-时间”或“体积”)中操作。该数据结构可以由规则的构造块(在此将其称为“管道件(plumbing piece)”)来构造。这些管道件的串流可以被馈送到控制硬件中,并扩展为物理量子门的集合。这些物理量子门可以转换为用于控制量子算法的进程的硬件特定的控制信号。
图7示出了在执行量子计算算法期间在量子计算机中执行的过程的示例。在执行量子算法期间,测量量子比特在量子计算层102内与其相邻数据量子比特并行地相互作用,并执行数据量子比特量子态148的测量。在一些实施例中,在每个检查周期期间,生成等于量子计算机中的量子比特数量的一半的数量的二进制测量。测量轮次在时间上顺序执行。
通过测量量子比特对数据量子比特的物理测量作为读出信号150传递到控制层104。在控制层中,读出信号150被转换成测量数据152。然后,将测量数据152传输到与测量数据152源自于的量子设备的局部补丁对应的第一经典处理层106中的处理核。
第一经典处理层接收测量数据并对其进行处理,以确定在执行量子算法中的任何错误。
第一步是将测量转换为检测事件。在一些实施例中,这通过将量子计算层中一位置处的每个测量与相同位置处的先前测量进行比较来实现。当一位置处的测量与该位置处的先前测量不同时,将在该位置记录检测事件。
在表面代码中,检测事件与量子算法中错误链的端点对应。为了确定与检测事件对应的可能错误,将检测事件彼此匹配以形成对,或者将其与量子比特阵列的边界匹配。
在第一经典处理层106中执行检测事件的匹配。每个经典处理核存储可能在其对应的局部补丁中发生的潜在检测事件的分层表示。在一些实施例中,该分层表示包括可能在量子算法的各个阶段的错误检测轮回期间发生的潜在检测事件。从每个层中的潜在检测事件发出的是将检测事件与其他潜在检测事件连接的一组加权线。每条线的权重表示作为错误的结果而在该线的每一端一起发生的检测事件的概率。在一些实施例中,对各条线进行加权,使得较高概率的线比较低概率的线具有较低的权重。
分层表示基于量子算法及在其执行期间可能发生的可能错误的知识而预先确定。分层表示被选择为使得每个局部补丁的表示适合第一经典处理层中对应处理核的处理器高速缓存。
随着量子算法的进展,分层表示被用于在表示算法进展的每个处理核中构造阵列。阵列的水平切片与错误检测测量的轮回对应,这在下面进行描述。表示给定局部补丁的阵列被循环地写入与该局部补丁关联的处理核的处理器高速缓存。参考图8,现在将描述这样的阵列156的示例。在该图中,时间从左到右循环地运行。当在阵列156中确定检测事件158时,处理核尝试使用最小权重完美匹配将它们与阵列中其他所确定的检测事件进行匹配。该阵列由分层表示的相关层160(在图8中仅标记了其中一些)构造,该相关层160与量子计算机已通过的量子算法的阶段对应。
每个处理核执行最小权重完美匹配的指令存储在该处理核的处理器高速缓存中。由于不需要访问任何外部存储器,因此这允许快速执行匹配算法。匹配检测事件导致在量子算法的执行中可能已经发生的错误列表162。
在处理核匹配检测事件期间,处理核可能需要与其自己的局部补丁相邻的设备的局部补丁中与检测事件有关的数据。例如,如果处理器无法将检测事件与其局部补丁中的另一检测事件进行匹配,则其可能能够将其与相邻局部补丁中的检测事件进行匹配。在这些情况下,如上所述,处理核可以通过它们之间的定向总线访问相邻处理核的处理器高速缓存。
使用匹配的检测事件,可以确定导致它们的错误。可以从错误中确定对应的宇称纠正,并将其插入到量子算法的空间-时间的表示中。在一些实施例中,这可以是存储物理量子比特级泡利帧154信息的分层结构。
在一些实施例中,错误列表162是相关表面宇称的形式。在匹配之后,如上所述,将纠正插入量子计算机的经典模拟的空间-时间中。这些纠正可以通过量子门(这可以高效地完成)在时间上向前传播,以确定物理测量结果的真实值。然后,发送相关表面上的纠正的测量结果的宇称以进行更高级别的处理。
在一些实施例中,将纠正的宇称传递到第二经典处理层142以进行更高级别的处理。第二经典处理层142用于确定为了纠正量子算法所需的将来逻辑门。纠正的宇称162被转换成逻辑测量结果和逻辑副产物算子164。所有逻辑副产物算子的组被称为逻辑泡利帧。给定逻辑泡利帧和逻辑测量结果,可以确定纠正量子算法所需的纠正动作。逻辑测量和逻辑泡利帧164包括逻辑量子比特的测量值,结果为0或1,以及未测量的逻辑量子比特不同于其理想值的方式。差异可以表示为I、X、Y、Z算子中的一个,每个算子均为2x2矩阵。
第二经典处理层还提供全局量子算法控制。在一些实施例中,全局量子算法控制可以使用以下特征来实现。
取决于逻辑测量的逻辑Clifford+T电路模块166。由量子门构成的量子电路。这样类型的门的示例是Clifford门,其包括初始化、测量、I、X、Y、Z、CNOT、CZ、S、H操作及其组合。另一示例是T门。量子电路就像软件一样,具有一些取决于中间测量值的将来的门。取决于逻辑测量的逻辑Clifford+T电路模块166根据逻辑测量来确定这些取决于逻辑测量的将来的门。这些可以包括实现由第一层确定的所识别的纠正错误的将来的门。一旦获得了多个逻辑测量,就可以确定量子电路的将来的门。随着计算的进行和越来越多的逻辑测量变得可用,将置信地获知数量越来越多的门。该模块的输出是逻辑Clifford+T电路168。
拓扑骨架加状态纯化工厂模块(Topological skeleton plus statedistillation factories)170。将由取决于逻辑测量的逻辑Clifford+T电路模块166确定的算法的已知部分转换为标准结构(称为“拓扑骨架”)和用于在量子算法中使用的纯化辅助量子态的工厂。
骨架、工厂以及从工厂到骨架的路径模块172。给定由拓扑骨架加状态纯化工厂模块170确定的拓扑骨架加状态纯化工厂,逻辑测量164可以被用于确定哪些工厂成功纯化出辅助状态。然后,确定将这些状态连接到需要输出的拓扑骨架所需的路径。
相关表面模块174。相关表面是其宇称给出逻辑测量结果和/或生成逻辑泡利帧纠正的测量组。相关表面指示要检查测量结构的哪个宇称,以确定是否已将逻辑X和/或Z副产物算子引入计算中。从骨架、工厂以及从工厂到骨架的路径模块172的输出确定相关表面。将相关表面输出到第一经典处理层106,以用于根据物理测量确定宇称。
管道件模块176。管道件模块将骨架、工厂以及从工厂到骨架的路径模块172的输出转换为用于在量子计算层102中实现所需的门的一组管道件。管道件模块176将管道件输出到控制层104,以在量子计算层102中实现。控制层将这些管道件转换为物理门操作178。然后,将这些作为控制脉冲180输出到量子计算层102中的门,以实现具有所确定的纠正的量子算法。
然后,由第二经典处理层将确定的纠正动作输出到控制层104。在控制层104,物理门将确定的纠正动作转换为控制脉冲。控制脉冲用于对量子计算层102中的量子比特实现纠正动作。
本说明书中描述的量子主题和量子操作的实施方式可以在适当的量子电路中或更一般地在量子计算系统中实现,包括本说明书中公开的结构及其结构等同物,或在它们中的一个或多个的组合中实现。术语“量子计算系统”可以包括但不限于量子计算机、量子信息处理系统、量子密码系统或量子模拟器。
术语量子信息和量子数据是指由量子系统承载、保持或存储在量子系统中的信息或数据,其中,最小的非平凡(non-trivial)系统是量子比特,例如定义量子信息的单位的系统。应当理解,术语“量子比特”涵盖可以在对应上下文中被适当地近似为两级系统。这样的量子系统可以包括多级系统,例如,具有两个或更多个级。通过举例的方式,这样的系统可以包括原子、电子、光子、离子或超导量子比特。在许多实现方式中,用基态或第一激发态来识别计算基础态,但是应当理解,用更高级的激发态来识别计算态的其他设置也是可以的。应当要理解,量子存储器是这样的设备,其能够以高保真度和高效率长时间存储量子数据,例如光-物质界面(light-matter interface),其中,光用于传输并且物质用于存储和保留量子数据的量子特征,例如叠加或量子相干。
量子电路元件可以用于执行量子处理操作。即,可以将量子电路元件可以被配置为利用例如叠加和纠缠的量子力学现象以不确定性的方式对数据执行操作。例如量子比特之类的某些量子电路元件可以被配置为同时地以一种以上的状态表示信息和对信息进行操作。可以用本文公开的过程形成的超导量子电路元件的示例包括电路元件,例如共面波导、量子LC振荡器、量子比特(例如,通量量子比特或电荷量子比特)、超导量子干涉设备(SQUID)(例如,RF-SQUID或DCSQUID)、电感器、电容器、传输线、接地平面等。
相反,经典电路元件通常以确定性方式处理数据。经典电路元件可以被配置为通过对数据执行基本的算术、逻辑和/或输入/输出操作来共同执行计算机程序的指令,其中,数据以模拟或数字形式表示。在一些实施方式中,经典电路元件可以用于通过电或电磁连接向量子电路元件发送数据和/或从量子电路元件接收数据。可以用本文公开的过程形成的经典电路元件的示例包括快速单通量量子(RSFQ)设备、倒数量子逻辑(RQL)设备和ERSFQ设备,它们是不使用偏置电阻器的RSFQ的高效率能量版本。其他经典电路元件也可以用本文公开的过程来形成。
在使用超导量子电路元件和/或超导经典电路元件(例如本文所述的电路元件)的量子计算系统的操作期间,将超导电路元件在低温恒温器内冷却至允许超导材料表现出超导特性的温度。
尽管本说明书包含许多具体的实现细节,但是这些细节不应当被解释为对可以请求保护的范围进行限制,而应该被解释为特定于特定实现方式的特征的描述。在本说明书中在不同实现方式的背景中描述的某些特征也可以以组合方式实现在单个实现方式中。相反,在单个实现方式的背景中描述的各种特征也可以单独地实现在多个实现方式中或以任何合适的子组合的方式来实现。此外,尽管特征可以如上所述描述为在某些组合中起作用并且最初也这样地请求,但在一些情况下,来自所请求的组合的一个或多个特征可以从组合中排除,并且所请求的组合可以涉及子组合或子组合的变体。
类似地,尽管在附图中以特定顺序描绘了操作,但是这不应当被理解为需要以示出的特定顺序或以相继的顺序来执行这样的操作或者需要执行所有示意的操作来取得合意的结果。例如,记载在权利要求中的动作可以以不同的顺序执行而仍然取得合意的结果。在某些情况下,多任务和并行处理可为有利。另外,上述实施方式中的各种组件的分离不应被理解为在所有实施方式中都需要这样的分离。
已经描述了多种实现方式。然而,将理解,在不背离本发明的精神和范围的情况下可以进行各种修改。其他实现方式在随附权利要求的范围内。
Claims (22)
1.一种处理装置,包括:
处理核的阵列,每个处理核包括:
第一芯片上的处理器;和
所述第一芯片上的处理器高速缓存;以及
总线,用于互连所述处理核的阵列中的相邻处理核;
其中,每个处理核包括控制代码,所述控制代码在由所述处理器执行时,使所述处理器访问至少一个相邻处理核的处理器高速缓存,
其中,所述处理核的阵列被配置为:
从包括实现量子计算算法的量子设备的阵列的量子计算层接收测量数据;以及
使用接收的测量数据确定所述量子计算算法中的一个或多个错误,并且
其中,所述处理核的阵列中的每个处理核被配置为从所述量子设备的阵列中的量子设备的局部补丁接收测量数据,其中所述量子设备的阵列中的量子设备的相邻局部补丁与相邻处理核相关联,
其中,所述处理核的阵列还被配置为:
将所述测量数据转换为多个检测事件;
将一个检测事件与另一个检测事件进行匹配以形成匹配对,所述匹配包括:
由与包含检测事件的局部补丁相关联的处理核尝试将所述检测事件与同一局部补丁中的检测事件进行匹配,以及
如果所述处理核不能将检测事件与同一局部补丁中的另一检测事件进行匹配,则访问相邻处理核的处理器高速缓存,并尝试将所述检测事件与对应于所述相邻处理核的相邻局部补丁中的检测事件进行匹配;以及
使用所述匹配对确定由所述量子计算层执行的量子计算算法中的一个或多个错误。
2.根据权利要求1所述的处理装置,其中,每个处理器高速缓存包括:
第一级处理器高速缓存;和
第二级处理器高速缓存,其中,数据通过所述第一级处理器高速缓存在所述处理器和所述第二级处理器高速缓存之间传递。
3.根据权利要求1或2所述的处理装置,其中,所述控制代码存储在所述处理器高速缓存中。
4.根据权利要求2所述的处理装置,其中,所述控制代码存储在所述第二级处理器高速缓存中。
5.根据权利要求4所述的处理装置,其中,所述控制代码包括机器代码。
6.根据权利要求4至5中的任一项所述的处理装置,其中,所述控制代码在由所述处理器执行时,使所述处理器访问所述至少一个相邻处理核的所述第二级处理器高速缓存。
7.根据权利要求1-2、4-5中的任一项所述的处理装置,其中,所述处理器高速缓存包括被配置为存储从所述至少一个相邻处理核访问的数据的一个或多个缓冲器。
8.根据权利要求7所述的处理装置,其中,将从所述至少一个相邻处理核访问的数据循环地写入所述缓冲器中的一个或多个。
9.根据权利要求1-2、4-5、8中的任一项所述的处理装置,其中,每个处理核被布置为接收相应的一组测量数据、将所述一组测量数据存储在所述处理器高速缓存中并处理所述一组测量数据。
10.根据权利要求9所述的处理装置,其中,用于处理所述测量数据的指令存储在所述处理器高速缓存中。
11.根据权利要求10所述的处理装置,其中,为了处理所述一组测量数据,所述处理核被配置为执行量子错误纠正。
12.根据权利要求11所述的处理装置,其中,所述量子错误纠正包括实现表面代码。
13.根据权利要求10至12中的任一项所述的处理装置,其中,为了处理所述一组测量数据,所述处理核被配置为不使用随机存取存储器。
14.根据权利要求1-2、4-5、8、10-12中任一项所述的处理装置,其中,所述处理核还包括一个或多个附加处理器。
15.一种计算系统,包括:
第一经典处理层,所述第一经典处理层包括根据任一前述权利要求所述的处理装置中的处理核的阵列;和
量子计算层,所述量子计算层包括被配置为实现量子计算算法的量子设备的阵列,
其中,所述经典处理层被配置为:
从所述量子计算层接收测量数据;以及
使用接收的测量数据确定在所述量子计算层执行的所述量子计算算法中的一个或多个错误。
16.一种计算系统,包括:
第一经典处理层,所述第一经典处理层包括处理核的阵列,每个处理核包括:
处理器;
处理器高速缓存;和
总线,所述总线用于互连所述处理核的阵列中的相邻处理核;
其中,每个处理核包括:
控制代码,所述控制代码在由所述处理器执行时,使所述处理器访问至少一个相邻处理核的处理器高速缓存;和
量子计算层,所述量子计算层包括配置为实现量子计算算法的量子设备的阵列,
其中,所述第一经典处理层被配置为:
从所述量子计算层接收测量数据;以及
使用接收的测量数据确定在所述量子计算层执行的所述量子计算算法中的一个或多个错误,
其中,所述处理核的阵列中的每个处理核被配置为从所述量子设备的阵列中的量子设备的局部补丁接收测量数据,其中所述量子设备的阵列中的量子设备的相邻局部补丁与相邻处理核相关联,
其中,所述第一经典处理层还被配置为:
将所述测量数据转换为多个检测事件;
将一个检测事件与另一个检测事件进行匹配以形成匹配对,所述匹配包括:
由与包含检测事件的局部补丁相关联的处理核尝试将所述检测事件与同一局部补丁中的检测事件进行匹配,以及
如果所述处理核不能将检测事件与同一局部补丁中的另一检测事件进行匹配,则访问相邻处理核的处理器高速缓存,并尝试将所述检测事件与对应于所述相邻处理核的相邻局部补丁中的检测事件进行匹配;以及
使用所述匹配对确定由所述量子计算层执行的量子计算算法中的一个或多个错误。
17.根据权利要求15或16所述的计算系统,还包括控制层,所述控制层包括现场可编程门阵列的阵列,所述阵列被配置为:
从所述量子计算层接收物理测量;
将所述物理测量转换为测量数据;以及
将所述测量数据输出到所述第一经典处理层。
18.根据权利要求17所述的计算系统,其中,所述控制层还被配置为:
接收量子错误纠正指令;以及
响应于接收所述量子错误纠正指令,引起在所述量子计算层上实现一个或多个量子比特旋转。
19.根据权利要求15、16、18中的任一项所述的计算系统,其中,所述第一经典处理层被配置为确定所述量子计算层中的量子设备的纠正的宇称。
20.根据权利要求19所述的计算系统,还包括第二经典处理层,所述第二经典处理层被配置为:
从所述第一经典处理层接收所述量子计算层中的量子设备的一个或多个纠正的宇称;以及
从所述一个或多个纠正的宇称确定一个或多个量子错误纠正指令。
21.根据权利要求20所述的计算系统,其中,所述第二经典处理层还被配置为使所述一个或多个量子错误纠正指令在所述量子计算层中被实现。
22.根据权利要求20或21所述的计算系统,其中,所述第二经典处理层被配置为实现表面代码以确定所述一个或多个量子错误纠正指令。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2017/051290 WO2019054995A1 (en) | 2017-09-13 | 2017-09-13 | QUANTUM ERROR CORRECTION |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410680080.3A Division CN118627637A (zh) | 2017-09-13 | 量子错误纠正 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111417967A CN111417967A (zh) | 2020-07-14 |
CN111417967B true CN111417967B (zh) | 2024-06-18 |
Family
ID=59982484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780094876.9A Active CN111417967B (zh) | 2017-09-13 | 2017-09-13 | 量子错误纠正 |
Country Status (8)
Country | Link |
---|---|
US (3) | US11449385B2 (zh) |
EP (2) | EP4216112A1 (zh) |
JP (1) | JP6884273B2 (zh) |
KR (1) | KR20200052367A (zh) |
CN (1) | CN111417967B (zh) |
AU (3) | AU2017431392B2 (zh) |
CA (1) | CA3075163C (zh) |
WO (1) | WO2019054995A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2018230642A1 (en) * | 2017-03-10 | 2019-10-24 | Rigetti & Co., Inc. | Modular control in a quantum computing system |
KR20200052367A (ko) * | 2017-09-13 | 2020-05-14 | 구글 엘엘씨 | 양자 오류 수정 |
US11710058B2 (en) | 2018-06-30 | 2023-07-25 | Intel Corporation | Apparatus and method for recompilation of quantum circuits to compensate for drift in a quantum computer |
US11663291B2 (en) * | 2020-06-12 | 2023-05-30 | Accenture Global Solutions Limited | Quantum computation for cost optimization problems |
JP7242743B2 (ja) | 2021-04-08 | 2023-03-20 | 株式会社メルカリ | システム、情報処理方法及びプログラム |
US11875228B2 (en) * | 2022-01-27 | 2024-01-16 | Red Hat, Inc. | Classifying quantum errors |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7875876B1 (en) * | 2006-06-15 | 2011-01-25 | Hrl Laboratories, Llc | Scalable quantum computer |
WO2008155833A1 (ja) | 2007-06-20 | 2008-12-24 | Fujitsu Limited | キャッシュメモリ制御装置およびキャッシュメモリ制御方法 |
JP4786727B2 (ja) * | 2009-03-27 | 2011-10-05 | 株式会社東芝 | 量子計算方法、量子計算機およびプログラム |
WO2013101123A1 (en) | 2011-12-29 | 2013-07-04 | Intel Corporation | Recovering from errors using implicit redundancy |
WO2015178992A2 (en) * | 2014-02-28 | 2015-11-26 | Rigetti & Co., Inc. | Processing signals in a quantum computing system |
JP6213366B2 (ja) * | 2014-04-25 | 2017-10-18 | 富士通株式会社 | 演算処理装置とその制御方法 |
ES2787623T3 (es) * | 2014-11-03 | 2020-10-16 | Newsouth Innovations Pty Ltd | Procesador cuántico |
US10283696B2 (en) * | 2015-06-30 | 2019-05-07 | International Business Machines Corporation | Architecture for coupling quantum bits using localized resonators |
US9985193B2 (en) * | 2015-06-30 | 2018-05-29 | International Business Machines Corporation | Architecture for coupling quantum bits using localized resonators |
US9614532B1 (en) * | 2015-12-17 | 2017-04-04 | International Business Machines Corporation | Single-flux-quantum probabilistic digitizer |
US10275717B2 (en) * | 2016-06-02 | 2019-04-30 | Google Llc | Training quantum evolutions using sublogical controls |
KR20200052367A (ko) * | 2017-09-13 | 2020-05-14 | 구글 엘엘씨 | 양자 오류 수정 |
-
2017
- 2017-09-13 KR KR1020207010698A patent/KR20200052367A/ko active IP Right Grant
- 2017-09-13 US US16/645,776 patent/US11449385B2/en active Active
- 2017-09-13 WO PCT/US2017/051290 patent/WO2019054995A1/en active Search and Examination
- 2017-09-13 EP EP23159013.4A patent/EP4216112A1/en active Pending
- 2017-09-13 AU AU2017431392A patent/AU2017431392B2/en active Active
- 2017-09-13 CA CA3075163A patent/CA3075163C/en active Active
- 2017-09-13 CN CN201780094876.9A patent/CN111417967B/zh active Active
- 2017-09-13 JP JP2020514988A patent/JP6884273B2/ja active Active
- 2017-09-13 EP EP17777448.6A patent/EP3682382B1/en active Active
-
2021
- 2021-02-17 AU AU2021201029A patent/AU2021201029B2/en active Active
-
2022
- 2022-06-02 AU AU2022203842A patent/AU2022203842B2/en active Active
- 2022-08-12 US US17/819,522 patent/US11740962B2/en active Active
-
2023
- 2023-07-11 US US18/220,752 patent/US20240078152A1/en active Pending
Non-Patent Citations (4)
Title |
---|
Austin G. Fowler et al.Towards practical classical processing for the surface code.arxiv.org.2012,第1-5页. * |
Austin G. Fowler et al.Towards practical classical processing for the surface code: timing analysis.arxiv.org.2012,第1-13页. * |
Towards practical classical processing for the surface code: timing analysis;Austin G. Fowler et al;arxiv.org;第 1-13 页 * |
Towards practical classical processing for the surface code;Austin G. Fowler et al;arxiv.org;第 1-5 页 * |
Also Published As
Publication number | Publication date |
---|---|
US20220382626A1 (en) | 2022-12-01 |
AU2022203842B2 (en) | 2023-08-24 |
JP2020533705A (ja) | 2020-11-19 |
CA3075163C (en) | 2022-11-01 |
US11449385B2 (en) | 2022-09-20 |
EP4216112A1 (en) | 2023-07-26 |
AU2017431392B2 (en) | 2021-01-21 |
AU2017431392A1 (en) | 2020-04-02 |
EP3682382B1 (en) | 2023-04-12 |
JP6884273B2 (ja) | 2021-06-09 |
US20200278903A1 (en) | 2020-09-03 |
WO2019054995A1 (en) | 2019-03-21 |
EP3682382A1 (en) | 2020-07-22 |
CA3075163A1 (en) | 2019-03-21 |
AU2022203842A1 (en) | 2022-06-23 |
KR20200052367A (ko) | 2020-05-14 |
US20240078152A1 (en) | 2024-03-07 |
AU2021201029A1 (en) | 2021-03-11 |
CN111417967A (zh) | 2020-07-14 |
US11740962B2 (en) | 2023-08-29 |
AU2021201029B2 (en) | 2022-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111417967B (zh) | 量子错误纠正 | |
US11410070B2 (en) | Syndrome data compression for quantum computing devices | |
US11720472B2 (en) | Liveness as a factor to evaluate memory vulnerability to soft errors | |
US11422890B2 (en) | Quantum error correction | |
US11494265B2 (en) | Securing against errors in an error correcting code (ECC) implemented in an automotive system | |
EP3742343A1 (en) | Autonomous vehicle simulation using machine learning | |
US20190147342A1 (en) | Deep neural network processor with interleaved backpropagation | |
US10037391B2 (en) | Semiconductor device | |
US20210118166A1 (en) | Pose determination using one or more neural networks | |
US20220012621A1 (en) | Systems and methods involving hybrid quantum machines, aspects of quantum information technology and/or other features | |
CN115443468A (zh) | 具有摄像头接口的深度学习加速器及随机存取存储器 | |
CN118627637A (zh) | 量子错误纠正 | |
Brandalero et al. | AITIA: Embedded AI Techniques for Industrial Applications | |
Bach et al. | Re-structuring CNN using quantum layer executed on FPGA hardware for classifying 2-D data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |