CN116882360A - 量子芯片的布线方法、装置、设备、计算机可读存储介质 - Google Patents
量子芯片的布线方法、装置、设备、计算机可读存储介质 Download PDFInfo
- Publication number
- CN116882360A CN116882360A CN202311149558.1A CN202311149558A CN116882360A CN 116882360 A CN116882360 A CN 116882360A CN 202311149558 A CN202311149558 A CN 202311149558A CN 116882360 A CN116882360 A CN 116882360A
- Authority
- CN
- China
- Prior art keywords
- virtual
- pin
- pins
- wiring
- quantum
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 239000002096 quantum dot Substances 0.000 claims abstract description 138
- 230000006870 function Effects 0.000 claims description 35
- 238000003062 neural network model Methods 0.000 claims description 31
- 238000004422 calculation algorithm Methods 0.000 claims description 22
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 11
- 230000006399 behavior Effects 0.000 claims description 9
- 238000013178 mathematical model Methods 0.000 claims description 8
- 239000004576 sand Substances 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 5
- 230000002093 peripheral effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 14
- 230000002787 reinforcement Effects 0.000 description 10
- 238000013528 artificial neural network Methods 0.000 description 9
- 239000003795 chemical substances by application Substances 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000004907 flux Effects 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
- G06F30/3947—Routing global
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
- G06F30/3953—Routing detailed
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/092—Reinforcement learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Biophysics (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开一种量子芯片的布线方法、装置、设备、计算机可读存储介质,涉及量子芯片技术领域,采用蒙特卡洛树模型计算起始接口到对应的第一虚拟引脚之间的最佳连线路径,由于蒙特卡洛树模型可以根据采用以往布线后的布线结果进行数学模型的训练,进行自我学习,得到整体层面上的最优布线结果,实现对二维量子芯片的高效准确自动布线,最大限度提高量子芯片的布线效率;通过第一虚拟引脚的设置,使量子比特内的控制线通过起始接口及第一虚拟引脚与量子芯片的外部引脚连接,由于第一虚拟引脚之间的第一间距不小于预设的最小线间距,保证从起始接口到量子芯片的外部引脚之间的连接线的线间距不小于预设的最小线间距,减少信号串扰等问题出现的概率。
Description
技术领域
本发明涉及量子芯片技术领域,特别是涉及一种量子芯片的布线方法、装置、设备、计算机可读存储介质。
背景技术
量子芯片是量子计算机的核心部件,量子芯片将量子比特及相关线路集成在基片上,进而承载量子信息处理的功能,通常一个量子芯片上包括多个量子比特和谐振腔等量子器件。随着量子芯片比特数的增加,量子芯片的设计难度呈几何级数的增加,而在大规模量子芯片设计流程里,消耗时间和精力最多的当属如何布线这个课题。例如为了实现对量子比特的驱动,通常依靠两种用于控制的调控线路,第一种为微波信号的xy控制线,第二种为磁通信号的z控制线,通过连接线将量子比特上的控制线接口与量子芯片的外部引脚连接,以通过外部引脚对应的控制通道获取外界的控制信号,实现对量子比特的驱动及频率调控。
由于现如今量子芯片中量子比特每年的指数级增长,手动布线无法满足高效的版图设计和迭代需求,现有技术对量子芯片的布线一般是通过自动化布线实现。现有的自动化布线方法一般采用贪心算法,自动的在量子比特与外部引脚之间选择距离最短的路径进行连线,并不从整体最优上考虑问题,也未考虑到连接线之间的线间距问题,对于二维量子芯片结构等较为复杂的布线场景,由于二维量子芯片结构包括多个量子比特行,每个量子比特行中又包括多个量子比特,仍采用现有的自动化布线方法进行布线,常出现连接线之间的线间距过近,导致信号串扰等问题,布线成功率较低,应用具有很大的局限性,无法满足今后量子比特呈指数级增长后的复杂的布局和布线情况。
发明内容
本发明的目的是提供一种量子芯片的布线方法、装置、设备、计算机可读存储介质,实现对二维量子芯片的高效准确自动布线,最大限度提高了量子芯片的布线效率,保证了从起始接口到量子芯片的外部引脚之间的连接线的线间距不小于预设的最小线间距,减少信号串扰等问题出现的概率。
为解决上述技术问题,本发明提供一种量子芯片的布线方法,量子芯片包括m个量子比特行,一个所述量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,对于任一个所述量子比特,所述布线方法包括:
根据所述量子比特在所述量子芯片上的位置,确定所述量子比特所对应的起始接口;
根据所述起始接口确定第一虚拟引脚,以使所述量子比特内的控制线通过所述起始接口及所述第一虚拟引脚与所述量子芯片的第一外部引脚连接,任意两个所述起始接口对应的第一虚拟引脚之间的第一间距均不小于预设的最小线间距;
根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径,所述蒙特卡洛树模型为根据不同的量子比特进行布线后的布线结果训练得到的数学模型。
一方面,在根据所述起始接口确定第一虚拟引脚之后,还包括:
根据所述第一虚拟引脚确定第二虚拟引脚,以使所述量子比特内的控制线通过所述起始接口、所述第一虚拟引脚及所述第二虚拟引脚与所述量子芯片的第二外部引脚连接,任意两个所述第一虚拟引脚对应的所述第二虚拟引脚之间的第二间距均不小于所述第一间距与预设的扩展参数的乘积,所述扩展参数大于1。
一方面,所述第二虚拟引脚的横坐标的第一横坐标公式为,所述第二虚拟引脚的纵坐标的第一纵坐标公式为/>;
其中,,/>为第i个所述第一虚拟引脚的横坐标,/>为第i个所述第二虚拟引脚的横坐标,d为所述第二虚拟引脚与所述第一虚拟引脚之间的距离,/>为第i个所述第二虚拟引脚的纵坐标,b为所述量子比特行中所述第一虚拟引脚的个数,/>为第b/2个所述第二虚拟引脚的纵坐标,/>为第b/2个所述第一虚拟引脚的纵坐标,s 2为各所述第二虚拟引脚之间的第二间距。
一方面,在根据所述起始接口确定第一虚拟引脚之后,还包括:
根据所述第一虚拟引脚确定第三虚拟引脚,以使所述量子比特内的控制线通过所述起始接口、所述第一虚拟引脚及所述第三虚拟引脚与所述量子芯片的第三外部引脚连接,任意两个所述第一虚拟引脚对应的所述第三虚拟引脚之间的第三间距均不小于预设的最小线间距;
所述第三虚拟引脚包括上部虚拟引脚和下部虚拟引脚,第一行的所述量子比特行的第一虚拟引脚与所述上部虚拟引脚一一对应,最后一行的所述量子比特行的第一虚拟引脚与所述下部虚拟引脚一一对应,所述上部虚拟引脚设置在第一行的所述量子比特行上方,所述下部虚拟引脚设置在最后一行的所述量子比特行下方,所述上部虚拟引脚与第一行的所述量子比特行的第一距离及所述下部虚拟引脚与最后一行的所述量子比特行的第二距离均为预设的最优引脚距离。
一方面,所述最优引脚距离的计算公式为:
;
其中,d为所述最优引脚距离,n为将各所述第一虚拟引脚与对应的第三虚拟引脚连接的连接线的总数,为第i个所述第一虚拟引脚到对应的第i个第三虚拟引脚的距离,为第i个所述第三虚拟引脚到外围引脚的距离。
一方面,所述第三虚拟引脚的横坐标的第二横坐标公式为,所述第三虚拟引脚的纵坐标的第二纵坐标公式为;
其中,为第i个所述第三虚拟引脚的横坐标,/>为第一行的所述量子比特行或最后一行的所述量子比特行的开始量子比特的横坐标,/>为第一行的量子比特行或最后一行的所述量子比特行的中间量子比特的横坐标,n 3为所述第三虚拟引脚的个数,/>为第i个所述第三虚拟引脚的纵坐标,/>为第一行的所述量子比特行或最后一行的所述量子比特行的开始量子比特的纵坐标,d为预设的最优引脚距离。
一方面,在根据所述第一虚拟引脚确定第三虚拟引脚之后,还包括:
根据所述第一虚拟引脚、所述第三虚拟引脚及所述蒙特卡洛树模型,确定从所述第一虚拟引脚到对应的第三虚拟引脚之间的连接线的第二最佳连线路径。
一方面,在根据所述第一虚拟引脚、所述第三虚拟引脚及所述蒙特卡洛树模型,确定从所述第一虚拟引脚到对应的第三虚拟引脚之间的连接线的第二最佳连线路径之后,还包括:
根据所述第三虚拟引脚、所述量子芯片的第三外部引脚及A*算法,将所述第三虚拟引脚与对应的第三外部引脚连接,所述第三外部引脚与所述第三虚拟引脚一一对应。
一方面,在根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径之后,还包括:
根据所述第一虚拟引脚、所述量子芯片的第一外部引脚及A*算法,将所述第一虚拟引脚与对应的第一外部引脚连接,所述第一外部引脚与所述第一虚拟引脚一一对应。
一方面,所述第一虚拟引脚包括设置在各所述量子比特行的左侧的左半部分第一虚拟引脚和设置在各所述量子比特行的右侧的右半部分第一虚拟引脚,所述左半部分第一虚拟引脚的数量的计算公式为:
;
其中,为所述左半部分第一虚拟引脚的数量,/>为设置在各所述量子比特行的左侧的xy控制线的数量,/>为设置在各所述量子比特行的左侧的z控制线的数量;
所述右半部分第一虚拟引脚的数量计算公式为:
;
其中,为所述右半部分第一虚拟引脚的数量,/>为设置在各所述量子比特行的右侧的xy控制线的数量,/>为设置在各所述量子比特行的右侧的z控制线的数量,/>为0或1,/>为0或1,且/>。
一方面,在根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径之后,还包括:
根据奖励函数对所述第一最佳连线路径的布线结果进行评分;
根据评分结果及神经网络模型对所述蒙特卡洛树模型进行更新。
一方面,所述奖励函数被定义为:
;
其中,s为所述第一最佳连线路径的布线过程中的布线状态,a为所述第一最佳连线路径的布线过程中的布线行为,为所述第一最佳连线路径的布线长度,/>为第i个还未布线的起始接口之间的曼哈顿长度,/>为所述第一最佳连线路径的布线过程中的直角的个数,/>,/>,/>为各项前面的权重系数,/>为做出所述布线行为a后的布线状态,t为完成全部所述起始接口的布线的状态或遇到无法继续布线的情况的状态。
一方面,所述神经网络模型的损失函数为:
;
其中,L为所述损失函数,s为所述第一最佳连线路径的布线过程中的布线状态,a为所述第一最佳连线路径的布线过程中的布线行为,R为所述奖励函数,v为当向所述神经网络模型输入布线状态s和布线行为a时,所述神经网络模型输出的价值函数,为当向所述神经网络模型输入布线状态s和布线行为a时,所述神经网络模型输出的策略函数,/>为所述神经网络模型的正则化参数,/>为所述神经网络模型的参数。
为解决上述技术问题,本发明还提供一种量子芯片的布线装置,量子芯片包括m个量子比特行,一个所述量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,对于任一个所述量子比特,所述布线装置包括:
起始接口确定模块,用于根据所述量子比特在所述量子芯片上的位置,确定所述量子比特所对应的起始接口;
第一虚拟引脚接口确定模块,用于根据所述起始接口确定第一虚拟引脚,以使所述量子比特内的控制线通过所述起始接口及所述第一虚拟引脚与所述量子芯片的第一外部引脚连接,任意两个所述起始接口对应的第一虚拟引脚之间的第一间距均不小于预设的最小线间距;
第一布线模块,用于根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径,所述蒙特卡洛树模型为根据不同的量子比特进行布线后的布线结果训练得到的数学模型。
为解决上述技术问题,本发明还提供一种量子芯片的布线设备,量子芯片包括m个量子比特行,一个所述量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,所述布线设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任一项所述的量子芯片的布线方法的步骤。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,所述目标计算机可读存储介质上储存有计算机程序,所述目标计算机程序被处理器执行时实现如上述任一项所述的量子芯片的布线方法的步骤。
本发明提供了一种量子芯片的布线方法,采用蒙特卡洛树模型计算起始接口到对应的第一虚拟引脚之间的最佳连线路径,由于蒙特卡洛树模型可以根据采用以往布线后的布线结果进行数学模型的训练,进行自我学习,以得到整体层面上的最优布线结果,实现对二维量子芯片的高效准确自动布线,最大限度提高了量子芯片的布线效率;且通过第一虚拟引脚的设置,使得所述量子比特内的控制线通过起始接口及第一虚拟引脚与量子芯片的外部引脚连接,由于第一虚拟引脚之间的第一间距不小于预设的最小线间距,保证了从起始接口到量子芯片的外部引脚之间的连接线的线间距不小于预设的最小线间距,减少信号串扰等问题出现的概率。
本发明还提供一种量子芯片的布线装置、设备、计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种量子芯片的布线方法的流程图;
图2为本发明实施例提供的贪心算法布线示意图;
图3为本发明实施例提供的蒙特卡洛树模型布线示意图;
图4为本发明实施例提供的从第一虚拟引脚到第二虚拟引脚的布线示意图;
图5为本发明实施例提供的从第二虚拟引脚到第二外部引脚的布线示意图;
图6为本发明实施例提供的从第一虚拟引脚到上部虚拟引脚的布线示意图;
图7为本发明实施例提供的从第一虚拟引脚到下部虚拟引脚的布线示意图;
图8为本发明实施例提供的一种布线区域划分示意图。
具体实施方式
本发明的核心是提供一种量子芯片的布线方法、装置、设备、计算机可读存储介质,实现对二维量子芯片的高效准确自动布线,最大限度提高了量子芯片的布线效率,保证了从起始接口到量子芯片的外部引脚之间的连接线的线间距不小于预设的最小线间距,减少信号串扰等问题出现的概率。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例提供的一种量子芯片的布线方法的流程图,量子芯片包括m个量子比特行,一个量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,对于任一个量子比特,布线方法包括:
S101:根据量子比特在量子芯片上的位置,确定量子比特所对应的起始接口。
具体实施例中,先建立参数化的量子器件库,量子器件库中具体包括量子比特和谐振腔等量子器件,然后根据量子芯片的需求,将建立好的量子器件库中的量子器件按照一定的结构布局在芯片上的特定位置,为了将量子比特上的控制线接口与量子芯片的外部引脚连接,以通过外部引脚对应的控制通道获取外界的控制信号,实现对量子比特的驱动及频率调控,需要先确定量子比特上的控制线与量子比特的接口,即量子比特所对应的起始接口。
S102:根据起始接口确定第一虚拟引脚,以使量子比特内的控制线通过起始接口及第一虚拟引脚与量子芯片的第一外部引脚连接,任意两个起始接口对应的第一虚拟引脚之间的第一间距均不小于预设的最小线间距。
具体实施例中,为了布线方便,利用虚拟引脚将整个量子芯片的布线分割为若干步骤并各自进行布线任务,首先是在每行量子比特布局边缘设置第一虚拟引脚,通过每一行的第一虚拟引脚将布线任务分为片内布线和片外布线两个任务,即通过每一行的第一虚拟引脚将布线从量子比特内引到量子比特外。
第一虚拟引脚的位置可以由用户设定。第一虚拟引脚可以布设于比特边缘附近。
S103:根据起始接口、第一虚拟引脚及蒙特卡洛树模型,确定从起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径,蒙特卡洛树模型为根据不同的量子比特进行布线后的布线结果训练得到的数学模型。
在使用传统的贪心算法进行传统布线的时候,会遇到如图2所示的前面线布好后阻挡第二条线的问题(如图2所示的阴影区域为当前无法进行布线的区域,例如存在具有障碍物)从而使布线终止的情况,图2为本发明实施例提供的贪心算法布线示意图。为解决上述问题,本发明采用了强化学习方法让智能体自动学习最优的布线策略并学会在各种复杂情况中自动探索出全局布线的方案。具体实施例中,首先在需要进行布线的区域划分网格,网格的宽度等于布线中的线与线之间的最小约束宽度,以将布线问题将转化为一个图问题,即给定G=(V,E),找到一条路径Pi并使任意两条路径Pi∩Pj=。状态s定义为图G所包含的集合,包括起始接口和目标接口信息,正在布线的序号(串行布线),布线头部坐标等;布线行为a定义为上下左右四个方向的矢量,具体的布线过程请参考图3中的状态0、状态1、状态2至状态n,图3为本发明实施例提供的蒙特卡洛树模型布线示意图,图3中的阴影区域为当前无法布线的区域,例如存在具有障碍物。
本发明实施例提供了一种量子芯片的布线方法,采用蒙特卡洛树模型计算起始接口到对应的第一虚拟引脚之间的最佳连线路径,由于蒙特卡洛树模型可以根据采用以往布线后的布线结果进行数学模型的训练,进行自我学习,以得到整体层面上的最优布线结果,实现对二维量子芯片的高效准确自动布线,最大限度提高了量子芯片的布线效率;且通过第一虚拟引脚的设置,使得量子比特内的控制线通过起始接口及第一虚拟引脚与量子芯片的外部引脚连接,由于第一虚拟引脚之间的第一间距不小于预设的最小线间距,保证了从起始接口到量子芯片的外部引脚之间的连接线的线间距不小于预设的最小线间距,减少信号串扰等问题出现的概率。
在上述实施例的基础上,在一些实施例中,在根据起始接口确定第一虚拟引脚之后,还包括:
根据第一虚拟引脚确定第二虚拟引脚,以使量子比特内的控制线通过起始接口、第一虚拟引脚及第二虚拟引脚与量子芯片的第二外部引脚连接,任意两个第一虚拟引脚对应的第二虚拟引脚之间的第二间距均不小于第一间距与预设的扩展参数的乘积,扩展参数大于1。
当布线通过每行的第一虚拟引脚从片内引出时,线间的第一间距均不小于预设的最小线间距。为了减少信号之间的串扰,同时为了今后阻抗匹配的扩展目的,需要增加从第一虚拟引脚引出的线与线之间的间距,即根据第一虚拟引脚确定第二虚拟引脚,具体请参考图4和图5,图4为本发明实施例提供的从第一虚拟引脚到第二虚拟引脚的布线示意图,图5为本发明实施例提供的从第二虚拟引脚到第二外部引脚的布线示意图。具体实施例中,在距离第一虚拟引脚距离为d的位置设置第二虚拟引脚,d可以作为参数调节,通常d≈10~20wmin,其中wmin为预设的最小线间距,第二虚拟引脚之间的第二间距一般为第一虚拟引脚间距的1.5~2.5倍。
在一些实施例中,第一虚拟引脚和第二虚拟引脚一一对应,即对于每一个第一虚拟引脚,都有和其对应的第二虚拟引脚,每一个第一虚拟引脚都要在和第二虚拟引脚连接后再与对应的外部引脚连接,以使各连接线之间线间距相等,便于后续进行扩展。
在一些实施例中,第二虚拟引脚的横坐标的第一横坐标公式为,第二虚拟引脚的纵坐标的第一纵坐标公式为/>;
其中,,/>为第i个第一虚拟引脚的横坐标,/>为第i个第二虚拟引脚的横坐标,d为第二虚拟引脚与第一虚拟引脚之间的距离,/>为第i个第二虚拟引脚的纵坐标,b为量子比特行中第一虚拟引脚的个数,/>为第b/2个第二虚拟引脚的纵坐标,为第b/2个第一虚拟引脚的纵坐标,s 2为各第二虚拟引脚之间的第二间距。
需要说明的是,上述公式中,[]均表示向上取整。
第一虚拟引脚的横坐标和第一虚拟引脚的纵坐标均可以采用用户设定值。第一虚拟引脚可以设于比特边缘附近。
本实施例通过公式确定第二虚拟引脚具体位置,定位准确,且减少信号之间的串扰,同时便于今后阻抗匹配的扩展。
在一些实施例中,在根据起始接口确定第一虚拟引脚之后,还包括:
根据第一虚拟引脚确定第三虚拟引脚,以使量子比特内的控制线通过起始接口、第一虚拟引脚及第三虚拟引脚与量子芯片的第三外部引脚连接,任意两个第一虚拟引脚对应的第三虚拟引脚之间的第三间距均不小于预设的最小线间距;
第三虚拟引脚包括上部虚拟引脚和下部虚拟引脚,第一行的量子比特行的第一虚拟引脚与上部虚拟引脚一一对应,最后一行的量子比特行的第一虚拟引脚与下部虚拟引脚一一对应,上部虚拟引脚设置在第一行的量子比特行上方,下部虚拟引脚设置在最后一行的量子比特行下方,上部虚拟引脚与第一行的量子比特行的第一距离及下部虚拟引脚与最后一行的量子比特行的第二距离均为预设的最优引脚距离。
具体实施例中,对于现如今普遍使用的二维结构,对于多个量子比特行中的前两行和后两行的量子比特行,从第一虚拟引脚到与第一行和最后一行的量子比特对应的第三外部引脚进行布线的过程复杂度较高,因此在设置第一虚拟引脚和第三外部引脚之间设置第三虚拟引脚,具体请参考图6和图7,图6为本发明实施例提供的从第一虚拟引脚到上部虚拟引脚的布线示意图,图7为本发明实施例提供的从第一虚拟引脚到下部虚拟引脚的布线示意图。
在一些实施例中,最优引脚距离的计算公式为:
;
其中,d为最优引脚距离,n为将各第一虚拟引脚与对应的第三虚拟引脚连接的连接线的总数,为第i个第一虚拟引脚到对应的第i个第三虚拟引脚的距离,/>为第i个第三虚拟引脚到外围引脚的距离。
为了简化强化学习布线的目标,将第三类虚拟引脚作为对第一行和最后一行的量子比特的布线中继站,保证从第一虚拟引脚到对应的第三虚拟引脚、再到对应第三外部引脚之间距离适当,本实施例通过公式确定最优引脚距离,定位准确。
在一些实施例中,第三虚拟引脚的横坐标的第二横坐标公式为,第三虚拟引脚的纵坐标的第二纵坐标公式为;
其中,为第i个第三虚拟引脚的横坐标,/>为第一行的量子比特行或最后一行的量子比特行的开始量子比特的横坐标,/>为第一行的量子比特行或最后一行的量子比特行的中间量子比特的横坐标,n 3为第三虚拟引脚的个数,/>为第i个第三虚拟引脚的纵坐标,/>为第一行的量子比特行或最后一行的量子比特行的开始量子比特的纵坐标,d为预设的最优引脚距离。
本实施例通过公式确定第三虚拟引脚具体位置,定位准确,其中,开始量子比特为对应的量子比特行中最边缘位置的量子比特,中间量子比特为对应的量子比特行中最中间位置的量子比特。
在一些实施例中,在根据第一虚拟引脚确定第三虚拟引脚之后,还包括:
根据第一虚拟引脚、第三虚拟引脚及蒙特卡洛树模型,确定从第一虚拟引脚到对应的第三虚拟引脚之间的连接线的第二最佳连线路径。
本实施例中,由于布线场景复杂,将采用蒙特卡洛搜索树结合强化学习的算法对从第一虚拟引脚到对应的第三虚拟引脚之间的连接线进行布线,提高布线过程的智能化程度。
在一些实施例中,在根据第一虚拟引脚、第三虚拟引脚及蒙特卡洛树模型,确定从第一虚拟引脚到对应的第三虚拟引脚之间的连接线的第二最佳连线路径之后,还包括:
根据第三虚拟引脚、量子芯片的第三外部引脚及A*算法,将第三虚拟引脚与对应的第三外部引脚连接,第三外部引脚与第三虚拟引脚一一对应。
本实施例中,由于布线场景简单,直接采用传统的贪心算法,即A*算法在第三虚拟引脚和量子芯片的第三外部引脚之间进行布线,提高布线效率。
在一些实施例中,在根据起始接口、第一虚拟引脚及蒙特卡洛树模型,确定从起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径之后,还包括:
根据第一虚拟引脚、量子芯片的第一外部引脚及A*算法,将第一虚拟引脚与对应的第一外部引脚连接,第一外部引脚与第一虚拟引脚一一对应。
本实施例中,由于布线场景简单,直接采用传统的贪心算法,即A*算法在第一虚拟引脚和量子芯片的第一外部引脚之间进行布线,提高布线效率。
具体实施例中,将量子芯片按照布线的复杂程度分为强化学习布线区和非强化学习布线区,对于非强化学习布线区,由于布线场景简单直接将采用传统的贪心算法进行布线,提高布线效率,而对于强化学习布线区,由于布线场景复杂,将采用蒙特卡洛搜索树结合强化学习的算法进行布线,具体请参考图8,图8为本发明实施例提供的一种布线区域划分示意图。
在一些实施例中,第一虚拟引脚包括设置在各量子比特行的左侧的左半部分第一虚拟引脚和设置在各量子比特行的右侧的右半部分第一虚拟引脚,左半部分第一虚拟引脚的数量的计算公式为:
;
其中,为左半部分第一虚拟引脚的数量,/>为设置在各量子比特行的左侧的xy控制线的数量,/>为设置在各量子比特行的左侧的z控制线的数量;
右半部分第一虚拟引脚的数量计算公式为:
;
其中,为右半部分第一虚拟引脚的数量,/>为设置在各量子比特行的右侧的xy控制线的数量,/>为设置在各量子比特行的右侧的z控制线的数量,/>为0或1,/>为0或1,且/>。
需要说明的是,在第一虚拟引脚包括设置在各量子比特行的左侧的左半部分第一虚拟引脚和设置在各量子比特行的右侧的右半部分第一虚拟引脚时,结合上述实施例提供的第二虚拟引脚的布线位置的公式,b=或b=/>。
为了平衡每层量子芯片中左半部分和右半部分的布线数量,防止量子芯片存在局部连接线拥塞的问题,本实施例通过公式确定左半部分第一虚拟引脚的数量和右半部分第一虚拟引脚的数量,保证两侧虚拟引脚的数量平均,借此调整两侧连接线的数量。
在一些实施例中,在根据起始接口、第一虚拟引脚及蒙特卡洛树模型,确定从起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径之后,还包括:
根据奖励函数对第一最佳连线路径的布线结果进行评分;
根据评分结果及神经网络模型对蒙特卡洛树模型进行更新。
本实施例通过奖励函数对蒙塔卡洛树模型进行更新,具体的,当布线过程中满足终止条件时,停止布线,并通过奖励函数对布线结果进行评分,指导蒙塔卡洛树的搜索过程,提高布线能力。
在一些实施例中,奖励函数被定义为:
;
其中,s为第一最佳连线路径的布线过程中的布线状态,a为第一最佳连线路径的布线过程中的布线行为,为第一最佳连线路径的布线长度,/>为第i个还未布线的起始接口之间的曼哈顿长度,/>为第一最佳连线路径的布线过程中的直角的个数,/>,/>,/>为各项前面的权重系数,/>为做出布线行为a后的布线状态,t为完成全部起始接口的布线的状态或遇到无法继续布线的情况的状态。
本实施例提供了一种奖励函数,具体的,如果现有布线长度越小,剩余布线长度越小以及直角布线越少,智能体将有更高的分数,使测试过程中学习到的探索策略更加全面和详细,为长期探索有更优秀的布线策略提供了机会。
在一些实施例中,神经网络模型的损失函数为:
;
其中,L为损失函数,s为第一最佳连线路径的布线过程中的布线状态,a为第一最佳连线路径的布线过程中的布线行为,R为奖励函数,v为当向神经网络模型输入布线状态s和布线行为a时,神经网络模型输出的价值函数,为当向神经网络模型输入布线状态s和布线行为a时,神经网络模型输出的策略函数,/>为神经网络模型的正则化参数,/>为神经网络模型的参数。
具体实施例中,智能体通过蒙特卡洛树产生大量样本得到训练数据用于神经网络的训练。蒙特卡洛树在布线的每一个动作a将保存四个主要信息:边的访问次数N(s,a),总体动作价值W(s,a),平均动作价值Q(s,a)以及先验策略概率P(s,a),其中,行动价值和先验策略概率都是由神经网络输出。和传统的蒙特卡洛树搜索方式一样,搜索过程分为四个阶段流程:首先是选择阶段,选择的动作a结合了UCT和最优动作价值的判断,其中/>,为UCT选择策略。动作选择直到最终节点或者叶子节点。其次是扩展模拟阶段,当到达未搜索到的叶子新节点时,对于叶子节点状态s,输入到神经网络进行预测得到策略动作概率P和动作价值v并初始化其保存的信息为/>。最后是回溯阶段,将新节点上的信息回溯到父节点上,。在成百上千次搜索后,智能体通过蒙特卡洛树策略来选择分支/>,/>为控制探索程度的参数。为了减少蒙特卡洛搜索树的搜索空间,本发明采用回滚的方法进行搜索,即在遇到终止状态且不说最终布线终态时,试着往前一步重新选择新的动作来继续。
智能体的神经网络为ResNet(残差网络)卷积神经网络(也可以为其他卷积神经网络比如VGGNet和AlexNet),在智能体蒙特卡洛搜索树搜索阶段得到的样本集合将用来训练神经网络的模型参数。对于每一个输入状态s,神经网络输出p和v使得损失函数最小。损失函数第一部分为真实奖励和神经网络预测价值之间的差异,第二部分为收获的价值期望,是策略梯度的优化目标,第三部分为防止过拟合而设置的正则化项。通过优化深度强化学习神经网络,可以指导蒙特卡洛搜索树的搜索过程。
需要说明的是,本实施例中的强化学习布线采用的是串行布线,即顺序布线方式,当然也可用并行布线的方式提高速度。
上文详述了量子芯片的布线方法对应的各个实施例,在此基础上,本发明还公开了与上述方法对应的量子芯片的布线装置、设备及计算机可读存储介质。
本发明还提供了一种量子芯片的布线装置,量子芯片包括m个量子比特行,一个量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,对于任一个量子比特,布线装置包括:
起始接口确定模块,用于根据量子比特在量子芯片上的位置,确定量子比特所对应的起始接口;
第一虚拟引脚接口确定模块,用于根据起始接口确定第一虚拟引脚,以使量子比特内的控制线通过起始接口及第一虚拟引脚与量子芯片的第一外部引脚连接,任意两个起始接口对应的第一虚拟引脚之间的第一间距均不小于预设的最小线间距;
第一布线模块,用于根据起始接口、第一虚拟引脚及蒙特卡洛树模型,确定从起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径,蒙特卡洛树模型为根据不同的量子比特进行布线后的布线结果训练得到的数学模型。
在一些实施例中,还包括:
第二虚拟引脚接口确定模块,用于根据第一虚拟引脚确定第二虚拟引脚,以使量子比特内的控制线通过起始接口、第一虚拟引脚及第二虚拟引脚与量子芯片的第二外部引脚连接,任意两个第一虚拟引脚对应的第二虚拟引脚之间的第二间距均不小于第一间距与预设的扩展参数的乘积,扩展参数大于1。
在一些实施例中,第二虚拟引脚的横坐标的第一横坐标公式为,第二虚拟引脚的纵坐标的第一纵坐标公式为/>;
其中,,/>为第i个第一虚拟引脚的横坐标,/>为第i个第二虚拟引脚的横坐标,d为第二虚拟引脚与第一虚拟引脚之间的距离,/>为第i个第二虚拟引脚的纵坐标,b为量子比特行中第一虚拟引脚的个数,/>为第b/2个第二虚拟引脚的纵坐标,为第b/2个第一虚拟引脚的纵坐标,s 2为各第二虚拟引脚之间的第二间距。
在一些实施例中,还包括:
第三虚拟引脚接口确定模块,用于根据第一虚拟引脚确定第三虚拟引脚,以使量子比特内的控制线通过起始接口、第一虚拟引脚及第三虚拟引脚与量子芯片的第三外部引脚连接,任意两个第一虚拟引脚对应的第三虚拟引脚之间的第三间距均不小于预设的最小线间距;
第三虚拟引脚包括上部虚拟引脚和下部虚拟引脚,第一行的量子比特行的第一虚拟引脚与上部虚拟引脚一一对应,最后一行的量子比特行的第一虚拟引脚与下部虚拟引脚一一对应,上部虚拟引脚设置在第一行的量子比特行上方,下部虚拟引脚设置在最后一行的量子比特行下方,上部虚拟引脚与第一行的量子比特行的第一距离及下部虚拟引脚与最后一行的量子比特行的第二距离均为预设的最优引脚距离。
在一些实施例中,最优引脚距离的计算公式为:
;
其中,d为最优引脚距离,n为将各第一虚拟引脚与对应的第三虚拟引脚连接的连接线的总数,为第i个第一虚拟引脚到对应的第i个第三虚拟引脚的距离,/>为第i个第三虚拟引脚到外围引脚的距离。
在一些实施例中,第三虚拟引脚的横坐标的第二横坐标公式为,第三虚拟引脚的纵坐标的第二纵坐标公式为/>;
其中,为第i个第三虚拟引脚的横坐标,/>为第一行的量子比特行或最后一行的量子比特行的开始量子比特的横坐标,/>为第一行的量子比特行或最后一行的量子比特行的中间量子比特的横坐标,n 3为第三虚拟引脚的个数,/>为第i个第三虚拟引脚的纵坐标,/>为第一行的量子比特行或最后一行的量子比特行的开始量子比特的纵坐标,d为预设的最优引脚距离。
在一些实施例中,还包括:
第二布线模块,用于根据第一虚拟引脚、第三虚拟引脚及蒙特卡洛树模型,确定从第一虚拟引脚到对应的第三虚拟引脚之间的连接线的第二最佳连线路径。
在一些实施例中,还包括:
第三布线模块,用于根据第三虚拟引脚、量子芯片的第三外部引脚及A*算法,将第三虚拟引脚与对应的第三外部引脚连接,第三外部引脚与第三虚拟引脚一一对应。
在一些实施例中,还包括:
第四布线模块,用于根据第一虚拟引脚、量子芯片的第一外部引脚及A*算法,将第一虚拟引脚与对应的第一外部引脚连接,第一外部引脚与第一虚拟引脚一一对应。
在一些实施例中,第一虚拟引脚包括设置在各量子比特行的左侧的左半部分第一虚拟引脚和设置在各量子比特行的右侧的右半部分第一虚拟引脚,左半部分第一虚拟引脚的数量的计算公式为:
;
其中,为左半部分第一虚拟引脚的数量,/>为设置在各量子比特行的左侧的xy控制线的数量,/>为设置在各量子比特行的左侧的z控制线的数量;
右半部分第一虚拟引脚的数量计算公式为:
;
其中,为右半部分第一虚拟引脚的数量,/>为设置在各量子比特行的右侧的xy控制线的数量,/>为设置在各量子比特行的右侧的z控制线的数量,/>为0或1,/>为0或1,且/>。
在一些实施例中,还包括:
奖励函数模块,用于根据奖励函数对第一最佳连线路径的布线结果进行评分;
蒙特卡洛树更新模块,用于根据评分结果及神经网络模型对蒙特卡洛树模型进行更新。
在一些实施例中,奖励函数被定义为:
;
其中,s为第一最佳连线路径的布线过程中的布线状态,a为第一最佳连线路径的布线过程中的布线行为,为第一最佳连线路径的布线长度,/>为第i个还未布线的起始接口之间的曼哈顿长度,/>为第一最佳连线路径的布线过程中的直角的个数,/>,/>,/>为各项前面的权重系数,/>为做出布线行为a后的布线状态,t为完成全部起始接口的布线的状态或遇到无法继续布线的情况的状态。
在一些实施例中,神经网络模型的损失函数为:
;
其中,L为损失函数,s为第一最佳连线路径的布线过程中的布线状态,a为第一最佳连线路径的布线过程中的布线行为,R为奖励函数,v为当向神经网络模型输入布线状态s和布线行为a时,神经网络模型输出的价值函数,为当向神经网络模型输入布线状态s和布线行为a时,神经网络模型输出的策略函数,/>为神经网络模型的正则化参数,/>为神经网络模型的参数。
对于本发明提供的一种量子芯片的布线装置的介绍请参考上述实施例,本发明在此不做赘述。
本发明还提供了一种量子芯片的布线设备,量子芯片包括m个量子比特行,一个量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,布线设备包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的量子芯片的布线方法的步骤。
对于本发明提供的一种量子芯片的布线设备的介绍请参考上述实施例,本发明在此不做赘述。
本发明还提供了一种计算机可读存储介质,目标计算机可读存储介质上储存有计算机程序,目标计算机程序被处理器执行时实现如上述的量子芯片的布线方法的步骤。
对于本发明提供的一种计算机可读存储介质的介绍请参考上述实施例,本发明在此不做赘述。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其他形式的存储介质中。
Claims (16)
1.一种量子芯片的布线方法,其特征在于,量子芯片包括m个量子比特行,一个所述量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,对于任一个所述量子比特,所述布线方法包括:
根据所述量子比特在所述量子芯片上的位置,确定所述量子比特所对应的起始接口;
根据所述起始接口确定第一虚拟引脚,以使所述量子比特内的控制线通过所述起始接口及所述第一虚拟引脚与所述量子芯片的第一外部引脚连接,任意两个所述起始接口对应的第一虚拟引脚之间的第一间距均不小于预设的最小线间距;
根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径,所述蒙特卡洛树模型为根据不同的量子比特进行布线后的布线结果训练得到的数学模型。
2.如权利要求1所述的量子芯片的布线方法,其特征在于,在根据所述起始接口确定第一虚拟引脚之后,还包括:
根据所述第一虚拟引脚确定第二虚拟引脚,以使所述量子比特内的控制线通过所述起始接口、所述第一虚拟引脚及所述第二虚拟引脚与所述量子芯片的第二外部引脚连接,任意两个所述第一虚拟引脚对应的所述第二虚拟引脚之间的第二间距均不小于所述第一间距与预设的扩展参数的乘积,所述扩展参数大于1。
3.如权利要求2所述的量子芯片的布线方法,其特征在于,所述第二虚拟引脚的横坐标的第一横坐标公式为,所述第二虚拟引脚的纵坐标的第一纵坐标公式为;
其中,,/>为第i个所述第一虚拟引脚的横坐标,/>为第i个所述第二虚拟引脚的横坐标,d为所述第二虚拟引脚与所述第一虚拟引脚之间的距离,/>为第i个所述第二虚拟引脚的纵坐标,b为所述量子比特行中所述第一虚拟引脚的个数,/>为第b/2个所述第二虚拟引脚的纵坐标,/>为第b/2个所述第一虚拟引脚的纵坐标,s 2为各所述第二虚拟引脚之间的第二间距。
4.如权利要求1所述的量子芯片的布线方法,其特征在于,在根据所述起始接口确定第一虚拟引脚之后,还包括:
根据所述第一虚拟引脚确定第三虚拟引脚,以使所述量子比特内的控制线通过所述起始接口、所述第一虚拟引脚及所述第三虚拟引脚与所述量子芯片的第三外部引脚连接,任意两个所述第一虚拟引脚对应的所述第三虚拟引脚之间的第三间距均不小于预设的最小线间距;
所述第三虚拟引脚包括上部虚拟引脚和下部虚拟引脚,第一行的所述量子比特行的第一虚拟引脚与所述上部虚拟引脚一一对应,最后一行的所述量子比特行的第一虚拟引脚与所述下部虚拟引脚一一对应,所述上部虚拟引脚设置在第一行的所述量子比特行上方,所述下部虚拟引脚设置在最后一行的所述量子比特行下方,所述上部虚拟引脚与第一行的所述量子比特行的第一距离及所述下部虚拟引脚与最后一行的所述量子比特行的第二距离均为预设的最优引脚距离。
5.如权利要求4所述的量子芯片的布线方法,其特征在于,所述最优引脚距离的计算公式为:
;
其中,d为所述最优引脚距离,n为将各所述第一虚拟引脚与对应的第三虚拟引脚连接的连接线的总数,为第i个所述第一虚拟引脚到对应的第i个第三虚拟引脚的距离,/>为第i个所述第三虚拟引脚到外围引脚的距离。
6.如权利要求4所述的量子芯片的布线方法,其特征在于,所述第三虚拟引脚的横坐标的第二横坐标公式为,所述第三虚拟引脚的纵坐标的第二纵坐标公式为/>;
其中,为第i个所述第三虚拟引脚的横坐标,/>为第一行的所述量子比特行或最后一行的所述量子比特行的开始量子比特的横坐标,/>为第一行的量子比特行或最后一行的所述量子比特行的中间量子比特的横坐标,n 3为所述第三虚拟引脚的个数,/>为第i个所述第三虚拟引脚的纵坐标,/>为第一行的所述量子比特行或最后一行的所述量子比特行的开始量子比特的纵坐标,d为预设的最优引脚距离。
7.如权利要求4所述的量子芯片的布线方法,其特征在于,在根据所述第一虚拟引脚确定第三虚拟引脚之后,还包括:
根据所述第一虚拟引脚、所述第三虚拟引脚及所述蒙特卡洛树模型,确定从所述第一虚拟引脚到对应的第三虚拟引脚之间的连接线的第二最佳连线路径。
8.如权利要求7所述的量子芯片的布线方法,其特征在于,在根据所述第一虚拟引脚、所述第三虚拟引脚及所述蒙特卡洛树模型,确定从所述第一虚拟引脚到对应的第三虚拟引脚之间的连接线的第二最佳连线路径之后,还包括:
根据所述第三虚拟引脚、所述量子芯片的第三外部引脚及A*算法,将所述第三虚拟引脚与对应的第三外部引脚连接,所述第三外部引脚与所述第三虚拟引脚一一对应。
9.如权利要求7所述的量子芯片的布线方法,其特征在于,在根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径之后,还包括:
根据所述第一虚拟引脚、所述量子芯片的第一外部引脚及A*算法,将所述第一虚拟引脚与对应的第一外部引脚连接,所述第一外部引脚与所述第一虚拟引脚一一对应。
10.如权利要求1所述的量子芯片的布线方法,其特征在于,所述第一虚拟引脚包括设置在各所述量子比特行的左侧的左半部分第一虚拟引脚和设置在各所述量子比特行的右侧的右半部分第一虚拟引脚,所述左半部分第一虚拟引脚的数量的计算公式为:
;
其中,为所述左半部分第一虚拟引脚的数量,/>为设置在各所述量子比特行的左侧的xy控制线的数量,/>为设置在各所述量子比特行的左侧的z控制线的数量;
所述右半部分第一虚拟引脚的数量计算公式为:
;
其中,为所述右半部分第一虚拟引脚的数量,/>为设置在各所述量子比特行的右侧的xy控制线的数量,/>为设置在各所述量子比特行的右侧的z控制线的数量,/>为0或1,/>为0或1,且/>。
11.如权利要求1至10任一项所述的量子芯片的布线方法,其特征在于,在根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径之后,还包括:
根据奖励函数对所述第一最佳连线路径的布线结果进行评分;
根据评分结果及神经网络模型对所述蒙特卡洛树模型进行更新。
12.如权利要求11所述的量子芯片的布线方法,其特征在于,所述奖励函数被定义为:
;
其中,s为所述第一最佳连线路径的布线过程中的布线状态,a为所述第一最佳连线路径的布线过程中的布线行为,为所述第一最佳连线路径的布线长度,/>为第i个还未布线的起始接口之间的曼哈顿长度,/>为所述第一最佳连线路径的布线过程中的直角的个数,/>,/>,/>为各项前面的权重系数,/>为做出所述布线行为a后的布线状态,t为完成全部所述起始接口的布线的状态或遇到无法继续布线的情况的状态。
13.如权利要求11所述的量子芯片的布线方法,其特征在于,所述神经网络模型的损失函数为:
;
其中,L为所述损失函数,s为所述第一最佳连线路径的布线过程中的布线状态,a为所述第一最佳连线路径的布线过程中的布线行为,R为所述奖励函数,v为当向所述神经网络模型输入布线状态s和布线行为a时,所述神经网络模型输出的价值函数,为当向所述神经网络模型输入布线状态s和布线行为a时,所述神经网络模型输出的策略函数,/>为所述神经网络模型的正则化参数,/>为所述神经网络模型的参数。
14.一种量子芯片的布线装置,其特征在于,量子芯片包括m个量子比特行,一个所述量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,对于任一个所述量子比特,所述布线装置包括:
起始接口确定模块,用于根据所述量子比特在所述量子芯片上的位置,确定所述量子比特所对应的起始接口;
第一虚拟引脚接口确定模块,用于根据所述起始接口确定第一虚拟引脚,以使所述量子比特内的控制线通过所述起始接口及所述第一虚拟引脚与所述量子芯片的第一外部引脚连接,任意两个所述起始接口对应的第一虚拟引脚之间的第一间距均不小于预设的最小线间距;
第一布线模块,用于根据所述起始接口、所述第一虚拟引脚及蒙特卡洛树模型,确定从所述起始接口到对应的第一虚拟引脚之间的连接线的第一最佳连线路径,所述蒙特卡洛树模型为根据不同的量子比特进行布线后的布线结果训练得到的数学模型。
15.一种量子芯片的布线设备,其特征在于,量子芯片包括m个量子比特行,一个所述量子比特行包括n个量子比特,其中,m和n均为不小于1的正整数,所述布线设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至13任一项所述的量子芯片的布线方法的步骤。
16.一种计算机可读存储介质,其特征在于,所述目标计算机可读存储介质上储存有计算机程序,所述目标计算机程序被处理器执行时实现如权利要求1至13任一项所述的量子芯片的布线方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311149558.1A CN116882360B (zh) | 2023-09-07 | 2023-09-07 | 量子芯片的布线方法、装置、设备、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311149558.1A CN116882360B (zh) | 2023-09-07 | 2023-09-07 | 量子芯片的布线方法、装置、设备、计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116882360A true CN116882360A (zh) | 2023-10-13 |
CN116882360B CN116882360B (zh) | 2023-12-19 |
Family
ID=88266657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311149558.1A Active CN116882360B (zh) | 2023-09-07 | 2023-09-07 | 量子芯片的布线方法、装置、设备、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116882360B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117829085A (zh) * | 2024-03-04 | 2024-04-05 | 中国科学技术大学 | 一种适用于芯片布线的连通图生成方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111967603A (zh) * | 2020-09-01 | 2020-11-20 | 腾讯科技(深圳)有限公司 | 量子芯片、量子处理器及量子计算机 |
CN112528591A (zh) * | 2020-12-11 | 2021-03-19 | 电子科技大学 | 一种基于联合蒙特卡洛树搜索的pcb板自动布线方法 |
CN114021519A (zh) * | 2021-11-04 | 2022-02-08 | 北京百度网讯科技有限公司 | 链状量子芯片的布线方法、装置、电子设备及存储介质 |
CN116245072A (zh) * | 2023-03-06 | 2023-06-09 | 北京百度网讯科技有限公司 | 量子芯片版图的布线方法、装置、设备及存储介质 |
CN116341478A (zh) * | 2023-02-16 | 2023-06-27 | 北京百度网讯科技有限公司 | 量子芯片的布线方法、装置、设备及存储介质 |
-
2023
- 2023-09-07 CN CN202311149558.1A patent/CN116882360B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111967603A (zh) * | 2020-09-01 | 2020-11-20 | 腾讯科技(深圳)有限公司 | 量子芯片、量子处理器及量子计算机 |
CN112528591A (zh) * | 2020-12-11 | 2021-03-19 | 电子科技大学 | 一种基于联合蒙特卡洛树搜索的pcb板自动布线方法 |
CN114021519A (zh) * | 2021-11-04 | 2022-02-08 | 北京百度网讯科技有限公司 | 链状量子芯片的布线方法、装置、电子设备及存储介质 |
CN116341478A (zh) * | 2023-02-16 | 2023-06-27 | 北京百度网讯科技有限公司 | 量子芯片的布线方法、装置、设备及存储介质 |
CN116245072A (zh) * | 2023-03-06 | 2023-06-09 | 北京百度网讯科技有限公司 | 量子芯片版图的布线方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117829085A (zh) * | 2024-03-04 | 2024-04-05 | 中国科学技术大学 | 一种适用于芯片布线的连通图生成方法 |
CN117829085B (zh) * | 2024-03-04 | 2024-05-17 | 中国科学技术大学 | 一种适用于芯片布线的连通图生成方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116882360B (zh) | 2023-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116882360B (zh) | 量子芯片的布线方法、装置、设备、计算机可读存储介质 | |
CN111611274B (zh) | 一种数据库查询优化方法和系统 | |
US6424959B1 (en) | Method and apparatus for automatic synthesis, placement and routing of complex structures | |
CN111709214B (zh) | 基于离散粒子群优化的轨道规划方法 | |
CN113569523B (zh) | 一种基于线序模拟的pcb自动布线方法及系统 | |
US9171118B2 (en) | Expert system-based integrated inductor synthesis and optimization | |
CN112528591B (zh) | 一种基于联合蒙特卡洛树搜索的pcb板自动布线方法 | |
Xu et al. | GoodFloorplan: Graph convolutional network and reinforcement learning-based floorplanning | |
US12019967B2 (en) | Routing connections in integrated circuits based on reinforcement learning | |
CN112651207B (zh) | 一种异步电路物理实现方法及系统 | |
CN113917925B (zh) | 一种基于改进遗传算法的移动机器人路径规划方法 | |
CN113221500A (zh) | 一种基于人工智能算法的芯片打线布局自动化设计方法 | |
CN117556775B (zh) | 多目标芯片电路参数优化设计方法 | |
CN116151324A (zh) | 基于图神经网络的rc互连延时预测方法 | |
CN115758981A (zh) | 一种基于强化学习和遗传算法的布图规划方法 | |
EP4388445A1 (en) | Gan distributed rf power amplifier automation design with deep reinforcement learning | |
US11989656B2 (en) | Search space exploration for deep learning | |
CN117422037A (zh) | 模拟芯片自动化布局模型训练方法及自动化布局方法 | |
CN115879412A (zh) | 一种基于迁移学习的版图层级电路图尺寸参数优化方法 | |
CN116911245B (zh) | 一种集成电路的布局方法、系统、设备和存储介质 | |
CN113505827B (zh) | 一种机器学习分类方法 | |
CN117669477B (zh) | 一种集成电路的布线方案确定方法、装置及设备和介质 | |
CN114297976B (zh) | 一种用于脉冲逻辑电路的自动布线方法、系统 | |
CN118378094B (zh) | 芯片布局模型训练及运用方法、装置、电子设备及存储介质 | |
CN117852473A (zh) | 一种用于调整集成电路互联网络拓扑图的强化学习模型的训练方法 |
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 |