量子计算机架构
发布时间:2023-03-08 09:57:07 所属栏目:外闻 来源:
导读:量子计算领域属于一个新兴高速发展的领域,在近二十年间,不论是量子算法的研究,还是量子芯片的研发均取得了巨大的进展。由于量子计算的理论研究有限,目前所说的量子计算机并非是一个可以独立完成计算任务的设备,
量子计算领域属于一个新兴高速发展的领域,在近二十年间,不论是量子算法的研究,还是量子芯片的研发均取得了巨大的进展。由于量子计算的理论研究有限,目前所说的量子计算机并非是一个可以独立完成计算任务的设备,而是一个可以对特定问题有指数级别加速的协处理器。相应的,目前所说的量子计算,本质上来说是一种异构运算,即在经典计算机执行计算任务的同时,将需要加速的程序在量子芯片上执行。 因此,量子计算的程序代码在实际执行中分为两种,一种是运行在CPU上的宿主代码(Host code),主要用于不需要加速工作的任务,同时可以提供用于加速工作所需要的数据;一种是运行在量子芯片上的设备代码(Device code),主要用于描述量子线路,控制量子程序在量子芯片上的执行顺序,以及数据的传输。不同类型的代码由于其运行的物理位置不同,编译方式和访问的资源均不同,这跟英伟达公司推出的用GPU解决复杂计算问题的并行计算架构CUDA非常类似。 与经典计算机语言类似,描述量子程序的语言也有高级语言与低级语言之分。量子高级语言,类似于经典计算机语言中的C++。在描述量子线路时,不需要考虑量子芯片的底层物理实现,包括可执行量子逻辑的种类,量子比特的连通性等,这就像一个经典的程序设计师并不需要考虑底层的执行芯片是x86架构,还是RISC架构一样。QPanda.QRunes均属于量子高级语言。量子高级语言主要用于描述量子线路的逻辑构成,量子程序段之间的执行顺序,如QifQwhile等,以及内存之间的通信。 根据量子计算的原理,任意的单量子比特逻辑门可以拆分为绕X轴旋转的量子逻辑门和绕Y轴旋转的量子逻辑门的序列;任意的两量子比特逻辑门可以拆分为由CNOT/CZ门和单量子比特逻辑门的序列。量子芯片提供的可直接执行的逻辑门是完备的,即可以表征所有的量子比特逻辑门,因此,如果量子高级语言描述的量子程序中包含了量子芯片不可直接执行的量子逻辑门,量子程序编译器会根据量子芯片提供的量子逻辑门将其操作系统转化为可操作地执行各种类型的量子计算系统的逻辑门操作系统构成的序列。 相同数量的量子比特对于不同的量子芯片结构,可执行两量子比特逻辑门的量子比特对可能完全不同。目前常见的量子芯片结构有链式结构,十字结构,以及全连通结构。对于链式结构,量子比特成链状排布,每个量子比特只能与其相邻的两个量子比特执行两量子比特逻辑门;对于十字结构,量子比特成方阵状排布,每个量子比特能与其相邻的四个量子比特执行两量子比特逻辑门;对于全连通结构,每个量子比特可以与其他所有量子比特执行两量子比特逻辑门。如果量子高级语言描述的量子程序中包含量子芯片不可直接执行的两量子比特逻辑门,量子程序编译器会根据量子芯片的连通性,利用交换门和可执行的两比特门的序列,取代量子程序中的两量子比特逻辑门。由于量子计算机的运算速度非常快,因此它可以实现超越传统计算机的能力,这就意味着量子计算机可以用于解决复杂的问题。 改进方案是将量子程序中可能执行的量子程序段的波形,全部上传至测控设备的内存中,当测量设备得到量子比特的测量结果时,根据测量结果决定接下来输出的波形在内存中的地址,且整个反馈过程的延时远小于量子比特的退相干时间。因此,此方案可以实现基于量子比特测量结果的反馈控制,但此方法需要将可能执行的量子程序段的波形全部存储在测控设备的内存中,随着量子比特数量和量子程序波形长度的增长该架构对内存的开销极大,可扩展性较低。 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐