CN113095015B - Sfq时序电路综合计算方法、***以及终端 - Google Patents

Sfq时序电路综合计算方法、***以及终端 Download PDF

Info

Publication number
CN113095015B
CN113095015B CN202110500919.7A CN202110500919A CN113095015B CN 113095015 B CN113095015 B CN 113095015B CN 202110500919 A CN202110500919 A CN 202110500919A CN 113095015 B CN113095015 B CN 113095015B
Authority
CN
China
Prior art keywords
sfq
sub
state
state machine
set information
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
Application number
CN202110500919.7A
Other languages
English (en)
Other versions
CN113095015A (zh
Inventor
任洁
杨树澄
高小平
王镇
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.)
Shanghai Institute of Microsystem and Information Technology of CAS
Original Assignee
Shanghai Institute of Microsystem and Information Technology of CAS
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 Shanghai Institute of Microsystem and Information Technology of CAS filed Critical Shanghai Institute of Microsystem and Information Technology of CAS
Priority to CN202110500919.7A priority Critical patent/CN113095015B/zh
Publication of CN113095015A publication Critical patent/CN113095015A/zh
Application granted granted Critical
Publication of CN113095015B publication Critical patent/CN113095015B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/10Processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明的SFQ时序电路综合计算方法、***以及终端,分别对SFQ逻辑门状态机的状态机描述分别进行解释以及编译获得该状态机的状态转移集合信息,并对所述状态转移集合信息分解为一或多个子状态机,并将各子状态机与SFQ逻辑单元库中的各单元门进行映射,并基于各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。本发明利用了SFQ逻辑门自有的优势,直接完成从SFQ逻辑门状态机到SFQ时序电路的逻辑映射,减少了中间模拟CMOS逻辑门、组成CMOS时序状态机的两步操作,提高了SFQ时序电路的逻辑综合成功率以及对SFQ单元库的利用率,使SFQ时序电路的大规模自动化设计更加高效,并解决现有技术的问题。

Description

SFQ时序电路综合计算方法、***以及终端
技术领域
本发明涉及集成电路领域,特别是涉及一种SFQ时序电路综合计算方法、***以及终端。
背景技术
超导集成电路是指基于约瑟夫森结和超导材料,包括单磁通量子(Single-Flux-QuanTum,SFQ)电路等应用的集成电路。SFQ电路是一种比较特殊的超导集成电路,其主要是由约瑟夫森结组成的,通过磁通量子Ф0的有无来表示数字逻辑“0”和“1”的。跟传统半导体CMOS(Complementary Metal Oxide Semiconductor)电路比起来,磁通量子的微小和量化性质显著减少了串扰和功耗的影响,而磁通量子进出环路时在结中产生的窄电压脉冲也使其获得极高的频率。这种兼具超高工作速度和极低功耗的优点,使得该电路在超宽带宽模数/数模转换器(Analog-to-Digital Converter,ADC)、超导计算机等应用上有显著的前景。
由于SFQ逻辑通过磁通量子的有无判断“0”和“1”,因此需要对基本单元门——与或非门等添加时钟端进行定时。对于SFQ与或非以及其他逻辑门来说,一般采用状态转移图的形式来模拟CMOS逻辑门的行为,因此可以直接应用CMOS逻辑综合算法,来实现组合逻辑的快速自动化设计。但在时序逻辑的综合中,若采用传统的CMOS数字电路综合算法来综合SFQ时序逻辑,会形成SFQ逻辑门状态机→模拟CMOS逻辑门行为→组成CMOS时序状态机→替换为SFQ时序状态机的算法流程,其中模拟CMOS逻辑门、组成CMOS时序状态机两个环节为SFQ时序电路综合中的冗余操作,并在实际应用中发现该流程存在无法最大化利用SFQ单元库、无法正确匹配SFQ单元以实现设计预期效果等问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种SFQ时序电路综合计算方法、***以及终端,用于解决采用传统的CMOS数字电路综合算法来综合SFQ时序逻辑出现的逻辑不匹配、电路开销不合理、单元库利用率低等问题。
为实现上述目的及其他相关目的,本发明提供一种SFQ时序电路综合计算方法,包括:对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果;根据所述编译结果获得对应所述SFQ逻辑门状态机的状态转移集合信息;对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息;基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果;基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。
于本发明的一实施例中,所述对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果包括:基于预设的SFQ逻辑的定制算法,对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得符合SFQ逻辑的编译结果。
于本发明的一实施例中,所述对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息包括:基于与SFQ逻辑单元库的单元门信息相关的分解规则,分别对所述状态转移集合信息进行一或多次迭代分解,直至获得不可再分解的一或多个子状态转移集合信息。
于本发明的一实施例中,所述基于与SFQ逻辑单元库中单元门的类型相关的分解规则,分别对所述状态转移集合信息进行一或多次迭代分解,直至获得不可再分解的一或多个子状态转移集合信息包括:将所述状态转移集合信息中的各状态进行分组,获得具有状态连续性关系的一或多个状态组;基于由SFQ逻辑单元库的单元门信息获得的最低状态数,依次将各状态组中的各状态分配到各子状态机中,并获得获得不可再分解的一或多个子状态转移集合信息。
于本发明的一实施例中,所述基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果包括:基于SFQ逻辑单元库的单元门信息,将所述各子状态机的子状态转移集合信息分别与所述SFQ逻辑单元库中的各单元门进行映射,并获得对应各子状态机的映射结果;其中,所述映射结果包括:对应所述子状态机全部映射成功的成功映射结果和/或对应所述子状态机映射失败的失败映射结果。
于本发明的一实施例中,所述基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构包括:获取对应成功映射结果的各状态机所映射的单元门;将各单元门连接,获得SFQ时序逻辑电路结构。
于本发明的一实施例中,所述状态转移集合信息包括:状态转移图和/或状态转移表。
于本发明的一实施例中,所述状态机描述采用Verilog语言。
为实现上述目的及其他相关目的,本发明提供一种SFQ时序电路综合计算***,所述***包括:编译模块,用于对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果;状态转移集合信息获取模块,连接所述编译模块,用于根据所述编译结果获得对应所述SFQ逻辑门状态机的状态转移集合信息;分解模块,连接所述状态转移集合信息获取模块,用于对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息;映射模块,连接所述分解模块,用于基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果;重组模块,连接所述映射模块,用于基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。
为实现上述目的及其他相关目的,本发明提供一种SFQ时序电路综合计算终端,包括:存储器,用于存储计算机程序;处理器,用于执行所述的SFQ时序电路综合计算方法。
如上所述,本发明的一种SFQ时序电路综合计算方法、***以及终端,具有以下有益效果:本发明分别对SFQ逻辑门状态机的状态机描述分别进行解释以及编译获得该状态机的状态转移集合信息,并对所述状态转移集合信息分解为一或多个子状态机,并将各子状态机与SFQ逻辑单元库中的各单元门进行映射,并基于各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。本发明利用了SFQ逻辑门自有的优势,直接完成从SFQ逻辑门状态机到SFQ时序电路的逻辑映射,减少了中间模拟CMOS逻辑门、组成CMOS时序状态机的两步操作,提高了SFQ时序电路的逻辑综合成功率以及对SFQ单元库的利用率,使SFQ时序电路的大规模自动化设计更加高效。
附图说明
图1显示为本发明一实施例中的SFQ时序电路综合计算方法的流程示意图。
图2显示为本发明一实施例中的状态转移集合信息分解示意图。
图3显示为本发明一实施例中的SFQ时序电路综合计算***的结构示意图。
图4显示为本发明一实施例中的子状态机映射示意图。
图5显示为本发明一实施例中的子状态机重组示意图。
图6显示为本发明一实施例中的SFQ时序电路综合计算终端的结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,在下述描述中,参考附图,附图描述了本发明的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本发明的精神和范围的情况下进行机械组成、结构、电气以及操作上的改变。下面的详细描述不应该被认为是限制性的,并且本发明的实施例的范围仅由公布的专利的权利要求书所限定。这里使用的术语仅是为了描述特定实施例,而并非旨在限制本发明。空间相关的术语,例如“上”、“下”、“左”、“右”、“下面”、“下方”、““下部”、“上方”、“上部”等,可在文中使用以便于说明图中所示的一个元件或特征与另一元件或特征的关系。
在通篇说明书中,当说某部分与另一部分“连接”时,这不仅包括“直接连接”的情形,也包括在其中间把其它元件置于其间而“间接连接”的情形。另外,当说某种部分“包括”某种构成要素时,只要没有特别相反的记载,则并非将其它构成要素,排除在外,而是意味着可以还包括其它构成要素。
其中提到的第一、第二及第三等术语是为了说明多样的部分、成分、区域、层及/或段而使用的,但并非限定于此。这些术语只用于把某部分、成分、区域、层或段区别于其它部分、成分、区域、层或段。因此,以下叙述的第一部分、成分、区域、层或段在不超出本发明范围的范围内,可以言及到第二部分、成分、区域、层或段。
再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
本发明实施例中提供一种SFQ时序电路综合计算方法,分别对SFQ逻辑门状态机的状态机描述分别进行解释以及编译获得该状态机的状态转移集合信息,并对所述状态转移集合信息分解为一或多个子状态机,并将各子状态机与SFQ逻辑单元库中的各单元门进行映射,并基于各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。本发明利用了SFQ逻辑门自有的优势,直接完成从SFQ逻辑门状态机到SFQ时序电路的逻辑映射,减少了中间模拟CMOS逻辑门、组成CMOS时序状态机的两步操作,提高了SFQ时序电路的逻辑综合成功率以及对SFQ单元库的利用率,使SFQ时序电路的大规模自动化设计更加高效,并解决现有技术的问题。
下面以附图为参考,针对本发明的实施例进行详细说明,以便本发明所述技术领域的技术人员能够容易地实施。本发明可以以多种不同形态体现,并不限于此处说明的实施例。
如图1所示,展示本发明实施例中的SFQ时序电路综合计算方法的流程示意图。
所述方法包括:
步骤S11:对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果。
可选的,基于预设的SFQ逻辑的定制算法,对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得符合SFQ逻辑的编译结果。具体的,基于预设的SFQ时序逻辑电路所需要的SFQ逻辑的可综合语句,对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果;若出现不符合符合所述SFQ逻辑的状态机描述时,即在语义分析阶段就抛出异常,并终止编译程序。优选的,采用自定义编译器对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果。其中,所述自定义编译器需要规定SFQ时序电路的可综合语句。
可选的,可以采用MVEL或者QLExpress对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果。
可选的,所述状态机描述可以采用Verilog语言,以实现和其他逻辑块在仿真功能上的适配,并调用一部分IEEE标准。
步骤S12:根据所述编译结果获得对应所述SFQ逻辑门状态机的状态转移集合信息。
可选的,对于SFQ电路来说,由于和CMOS电路存在区别,需要在解释与编译后将所述编译结果输出为状态转移集合信息,而不是标准布尔逻辑和时序组件。需要说明的是,所述状态转移集合信息包括:各状态分别所对应的状态转移信息。
可选的,所述状态转移集合信息包括:状态转移图和/或状态转移表。具体的,在解释与编译后将所述编译结果输出为状态转移图和/或状态转移表。
步骤S13:对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息。
可选的,基于与SFQ逻辑单元库的单元门信息相关的分解规则,分别对所述状态转移集合信息进行一或多次迭代分解,直至获得不可再分解的一或多个子状态转移集合信息;具体的,由于同一状态机可能有多种组合情况,因此需要在对SFQ逻辑门状态机分解时引入随机变量,基于与SFQ逻辑单元库的单元门信息相关的分解规则,对所述状态转移集合信息进行一或多次迭代分解,并将每次分解出的子状态机的子状态转移集合信息写入到列表中进行存储,直到所有子状态机不可再分,获得对应各子状态机的一或多个子状态转移集合信息。
可选的,所述基于与SFQ逻辑单元库中单元门的类型相关的分解规则,分别对所述状态转移集合信息进行一或多次迭代分解,直至获得不可再分解的一或多个子状态转移集合信息包括;将所述状态转移集合信息中的各状态按照其状态连续性进行分组,以获得具有状态连续性关系的一或多个状态组;基于由SFQ逻辑单元库的单元门信息获得的最低状态数,依次将各状态组中的各状态分配到各子状态机中,并获得获得不可再分解的一或多个子状态转移集合信息,以避免形成错误状态无法跳出。
需要注意的是,基于SFQ逻辑单元库的单元门信息中的各单元门的类型(状态最低要求)作为最低状态数,依次将各状态组中的各状态分配到各子状态机中,并获得保证最低状态数并且最大分解的一或多个子状态机;举例来说,满足SFQ单元库中单元状态机的最低要求为状态数等于2,即获得的子状态机中至少包含2个状态S0以及S1,如图2所示。
步骤S14:基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果。
可选的,基于SFQ逻辑单元库的单元门信息,将所述各子状态机的子状态转移集合信息分别与所述SFQ逻辑单元库中的各单元门进行映射,并获得对应各子状态机的映射结果;其中,所述映射结果包括:对应所述子状态机全部映射成功的成功映射结果和/或对应所述子状态机映射失败的失败映射结果。
具体的,基于SFQ逻辑单元库的单元门信息中的各单元门的信息,将所述各子状态机的子状态转移集合信息分别与所述SFQ逻辑单元库中的各单元门的信息进行匹配,当出现无法匹配成功的子状态机时获得对应所述子状态机映射失败的失败映射结果,则需要程序抛出异常,输出无法匹配的状态机转移信息,并继续进行匹配;若完成全部匹配,获得对应所述子状态机全部映射成功的成功映射结果,即进行下一步骤。对于最后若存在未完成匹配的单元门,用户可以根据输出的失败映射结果,设计新的SFQ单元门或修改时序电路设计。
由此可知,在逻辑匹配度方面,本发明相比于传统综合方法来说,可以解决传统综合方法无法实现SFQ时序逻辑到单元门的完全匹配,生成的时序电路存在大量环路,转化为SFQ电路后无法满足正常工作需求的问题。
并且在SFQ逻辑单元库的利用率方面本发明具有明显的优势,传统方法无法调用ndro、rs1n、jandf等SFQ特有逻辑门,而无法实现单元库的最大化利用,根据已有的单元库逻辑门数量分析,理论最大利用率为62.1%(共29种单元门,11种不可被传统综合算法调用);而采用本申请的SFQ时序电路综合计算方法,则可以将理论最大利用率提升到100%。
可选的,对于已有的SFQ单元门,需要设计人员手工录入对应的状态转移信息,形成状态转移集合信息,并存储为SFQ时序逻辑电路综合的专用库文件。
步骤S15:基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。
可选的,所述基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构包括:获取对应成功映射结果的各状态机所映射的单元门;将各单元门连接,获得SFQ时序逻辑电路结构。具体的,基于对应各子状态机的成功映射结果,获取对应成功映射结果的各状态机所映射的单元门;将各单元门连接,将其重组为SFQ时序逻辑电路,并获得反应所述SFQ时序逻辑电路的结构;优选的,所述结构的表示方式为Verilog网表。
与上述实施例原理相似的是,本发明提供一种SFQ时序电路综合计算***。
以下结合附图提供具体实施例:
如图3展示本发明实施例中的一种SFQ时序电路综合计算***的结构示意图。
所述***包括:
编译模块31,用于对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果;
状态转移集合信息获取模块32,连接所述编译模块31,用于根据所述编译结果获得对应所述SFQ逻辑门状态机的状态转移集合信息;
分解模块33,连接所述状态转移集合信息获取模块32,用于对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息;
映射模块34,连接所述分解模块33,用于基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果;
重组模块35,连接所述映射模块34,用于基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。
需说明的是,应理解图3***实施例中的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现;
例如各模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital signal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上***(system-on-a-chip,简称SOC)的形式实现。
可选的,所述编译模块31基于预设的SFQ逻辑的定制算法,对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得符合SFQ逻辑的编译结果。具体的,所述编译模块31基于预设的SFQ时序逻辑电路所需要的SFQ逻辑的可综合语句,对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果;若出现不符合符合所述SFQ逻辑的状态机描述时,所述编译模块31即在语义分析阶段就抛出异常,并终止编译程序。优选的,所述编译模块31包括:自定义编译器,用于对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果。其中,所述自定义编译器需要规定SFQ时序电路的可综合语句。
可选的,所述编译模块31可以采用MVEL或者QLExpress对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果。
可选的,所述状态转移集合信息获取模块32需要在解释与编译后将所述编译结果输出为状态转移集合信息。需要说明的是,所述状态转移集合信息包括:各状态分别所对应的状态转移信息。
可选的,所述状态转移集合信息包括:状态转移图和/或状态转移表。具体的,所述状态转移集合信息获取模块32用于在解释与编译后将所述编译结果输出为状态转移图和/或状态转移表。
可选的,所述分解模块33用于基于与SFQ逻辑单元库的单元门信息相关的分解规则,分别对所述状态转移集合信息进行一或多次迭代分解,直至获得不可再分解的一或多个子状态转移集合信息。优选的,所述分解模块33用于将所述状态转移集合信息中的各状态按照其状态连续性进行分组,以获得具有状态连续性关系的一或多个状态组;基于由SFQ逻辑单元库的单元门信息获得的最低状态数,依次将各状态组中的各状态分配到各子状态机中,并获得获得不可再分解的一或多个子状态转移集合信息,以避免形成错误状态无法跳出。需要注意的是,所述SFQ逻辑单元库的单元门信息中的各单元门的类型(状态最低要求)作为最低状态数,所述分解模块33依次将各状态组中的各状态分配到各子状态机中,并获得保证最低状态数并且最大分解的一或多个子状态机。
可选的,所述映射模块34用于基于SFQ逻辑单元库的单元门信息,将所述各子状态机的子状态转移集合信息分别与所述SFQ逻辑单元库中的各单元门进行映射,并获得对应各子状态机的映射结果;其中,所述映射结果包括:对应所述子状态机全部映射成功的成功映射结果和/或对应所述子状态机映射失败的失败映射结果。举例来说,如图4所示,所述映射模块以调用逻辑单元门DFFR和/或NDRO来实现基于SFQ逻辑单元库的单元门信息中的各单元门的信息,将所述各子状态机的子状态转移集合信息(包括S0以及S1状态)分别与所述SFQ逻辑单元库中的各单元门的信息进行匹配,当出现无法匹配成功时,需要程序抛出异常,输出无法匹配的状态机转移表,并继续进行匹配。
可选的,所述重组模块35用于获取对应成功映射结果的各状态机所映射的单元门,将各单元门连接,获得SFQ时序逻辑电路结构。具体的,所述重组模块35用于基于对应各子状态机的成功映射结果,获取对应成功映射结果的各状态机所映射的单元门;将各单元门连接,将其重组为SFQ时序逻辑电路,并获得反应所述SFQ时序逻辑电路的结构;优选的,所述结构的表示方式为Verilog网表。
经过重组的SFQ时序逻辑电路在电路开销方面,由于传统综合方法无法识别SFQ特有的逻辑门,而无法调用这些逻辑门并映射到时序逻辑中,只能使用基本的与或非逻辑门和触发器构成时序电路,因此会增大综合结果的面积;如图5所示,本发明可以调用SFQ特有的逻辑门DFFR以及NDRO,实现电路面积的优化。
如图6展示本发明实施例中的SFQ时序电路综合计算终端60的结构示意图。
所述SFQ时序电路综合计算终端60包括:存储器61及处理器62所述存储器61用于存储计算机程序;所述处理器62运行计算机程序实现如图1所述的SFQ时序电路综合计算方法。
可选的,所述存储器61的数量均可以是一或多个,所述处理器62的数量均可以是一或多个,而图6中均以一个为例。
可选的,所述SFQ时序电路综合计算终端60中的处理器62会按照如图1所述的步骤,将一个或多个以应用程序的进程对应的指令加载到存储器61中,并由处理器62来运行存储在第一存储器61中的应用程序,从而实现如图1所述SFQ时序电路综合计算方法中的各种功能。
可选的,所述存储器61,可能包括但不限于高速随机存取存储器、非易失性存储器。例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备;所述处理器62,可能包括但不限于中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
可选的,所述处理器62可以是通用处理器,包括中央处理器(Central ProcessingUnit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明还提供计算机可读存储介质,存储有计算机程序,所述计算机程序运行时实现如图1所示的SFQ时序电路综合计算方法。所述计算机可读存储介质可包括,但不限于,软盘、光盘、CD-ROM(只读光盘存储器)、磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪存、或适于存储机器可执行指令的其他类型的介质/机器可读介质。所述计算机可读存储介质可以是未接入计算机设备的产品,也可以是已接入计算机设备使用的部件。
综上所述,本发明SFQ时序电路综合计算方法、***以及终端,用于分别对SFQ逻辑门状态机的状态机描述分别进行解释以及编译获得该状态机的状态转移集合信息,并对所述状态转移集合信息分解为一或多个子状态机,并将各子状态机与SFQ逻辑单元库中的各单元门进行映射,并基于各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。本发明利用了SFQ逻辑门自有的优势,直接完成从SFQ逻辑门状态机到SFQ时序电路的逻辑映射,减少了中间模拟CMOS逻辑门、组成CMOS时序状态机的两步操作,提高了SFQ时序电路的逻辑综合成功率以及对SFQ单元库的利用率,使SFQ时序电路的大规模自动化设计更加高效,并解决现有技术的问题。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (10)

1.一种SFQ时序电路综合计算方法,其特征在于,包括:
对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果;
根据所述编译结果获得对应所述SFQ逻辑门状态机的状态转移集合信息;
对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息;
基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果;
基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。
2.根据权利要求1中所述的SFQ时序电路综合计算方法,其特征在于,所述对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果包括:
基于预设的SFQ逻辑的定制算法,对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得符合SFQ逻辑的编译结果。
3.根据权利要求1中所述的SFQ时序电路综合计算方法,其特征在于,所述对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息包括:
基于与SFQ逻辑单元库的单元门信息相关的分解规则,分别对所述状态转移集合信息进行一或多次迭代分解,直至获得不可再分解的一或多个子状态转移集合信息。
4.根据权利要求3中所述的SFQ时序电路综合计算方法,其特征在于,所述基于与SFQ逻辑单元库中单元门的类型相关的分解规则,分别对所述状态转移集合信息进行一或多次迭代分解,直至获得不可再分解的一或多个子状态转移集合信息包括:
将所述状态转移集合信息中的各状态进行分组,获得具有状态连续性关系的一或多个状态组;
基于由SFQ逻辑单元库的单元门信息获得的最低状态数,依次将各状态组中的各状态分配到各子状态机中,并获得获得不可再分解的一或多个子状态转移集合信息。
5.根据权利要求1中所述的SFQ时序电路综合计算方法,其特征在于,所述基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果包括:
基于SFQ逻辑单元库的单元门信息,将所述各子状态机的子状态转移集合信息分别与所述SFQ逻辑单元库中的各单元门进行映射,并获得对应各子状态机的映射结果;其中,所述映射结果包括:对应所述子状态机全部映射成功的成功映射结果和/或对应所述子状态机映射失败的失败映射结果。
6.根据权利要求5中所述的SFQ时序电路综合计算方法,其特征在于,所述基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构包括:
获取对应成功映射结果的各状态机所映射的单元门;
将各单元门连接,获得SFQ时序逻辑电路结构。
7.根据权利要求1中所述的SFQ时序电路综合计算方法,其特征在于,所述状态转移集合信息包括:状态转移图和/或状态转移表。
8.根据权利要求1中所述的SFQ时序电路综合计算方法,其特征在于,所述状态机描述采用Verilog语言。
9.一种SFQ时序电路综合计算***,其特征在于,所述***包括:
编译模块,用于对SFQ逻辑门状态机的状态机描述分别进行解释以及编译,并获得编译结果;
状态转移集合信息获取模块,连接所述编译模块,用于根据所述编译结果获得对应所述SFQ逻辑门状态机的状态转移集合信息;
分解模块,连接所述状态转移集合信息获取模块,用于对所述状态转移集合信息进行分解,获得分别对应一或多个子状态机的子状态转移集合信息;
映射模块,连接所述分解模块,用于基于SFQ逻辑单元库的单元门信息,对各子状态机的子状态转移集合信息分别进行映射,并获得对应各子状态机的映射结果;
重组模块,连接所述映射模块,用于基于对应各子状态机的映射结果,对各子状态机进行重组,以获得SFQ时序逻辑电路结构。
10.一种SFQ时序电路综合计算终端,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行如权利要求1至8中任一项所述的SFQ时序电路综合计算方法。
CN202110500919.7A 2021-05-08 2021-05-08 Sfq时序电路综合计算方法、***以及终端 Active CN113095015B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110500919.7A CN113095015B (zh) 2021-05-08 2021-05-08 Sfq时序电路综合计算方法、***以及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110500919.7A CN113095015B (zh) 2021-05-08 2021-05-08 Sfq时序电路综合计算方法、***以及终端

Publications (2)

Publication Number Publication Date
CN113095015A CN113095015A (zh) 2021-07-09
CN113095015B true CN113095015B (zh) 2024-05-24

Family

ID=76664650

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110500919.7A Active CN113095015B (zh) 2021-05-08 2021-05-08 Sfq时序电路综合计算方法、***以及终端

Country Status (1)

Country Link
CN (1) CN113095015B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113779924B (zh) * 2021-09-17 2023-09-12 中国科学院上海微***与信息技术研究所 超导集成电路的布线优化方法和装置、存储介质和终端
CN113627120B (zh) * 2021-09-17 2023-09-12 中国科学院上海微***与信息技术研究所 超导集成电路布局优化方法和装置、存储介质和终端

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1133534A (zh) * 1994-03-24 1996-10-16 Dva公司 起始码检测器
JP2004070658A (ja) * 2002-08-06 2004-03-04 Fujitsu Peripherals Ltd 論理回路シミュレーション方法およびコンピュータ読み取り可能な記憶媒体
CN1985256A (zh) * 2004-06-30 2007-06-20 相干逻辑公司 硬件描述语言(hdl)程序的执行
CN110121747A (zh) * 2016-10-28 2019-08-13 伊鲁米那股份有限公司 用于执行二级和/或三级处理的生物信息学***、设备和方法
CN110268382A (zh) * 2017-02-06 2019-09-20 微软技术许可有限责任公司 具有强化方向性的超导器件
CN112561057A (zh) * 2020-12-09 2021-03-26 清华大学 一种状态控制方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6904576B2 (en) * 2002-08-09 2005-06-07 Synplicity, Inc. Method and system for debugging using replicated logic
US9552862B2 (en) * 2014-07-29 2017-01-24 Raytheon Bbn Technologies Corp. Magnetic ram array architecture

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1133534A (zh) * 1994-03-24 1996-10-16 Dva公司 起始码检测器
JP2004070658A (ja) * 2002-08-06 2004-03-04 Fujitsu Peripherals Ltd 論理回路シミュレーション方法およびコンピュータ読み取り可能な記憶媒体
CN1985256A (zh) * 2004-06-30 2007-06-20 相干逻辑公司 硬件描述语言(hdl)程序的执行
CN110121747A (zh) * 2016-10-28 2019-08-13 伊鲁米那股份有限公司 用于执行二级和/或三级处理的生物信息学***、设备和方法
CN110268382A (zh) * 2017-02-06 2019-09-20 微软技术许可有限责任公司 具有强化方向性的超导器件
CN112561057A (zh) * 2020-12-09 2021-03-26 清华大学 一种状态控制方法及装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Automated State Machine and Timing Characteristic Extraction for RSFQ Circuits;Louis C.muller et al.;《IEEE Transactions on Applied Superconductivity》;20140228;第24卷(第1期);1-10 *
可综合的基于Verilog语言的有限状态机的设计;刘德贵 等;《现代电子技术》;20051001(第10期);124-126 *
超导约瑟夫逊传输线初步研究;张建 等;《低温与超导》;20011123(第04期);18-23 *

Also Published As

Publication number Publication date
CN113095015A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
CN113095015B (zh) Sfq时序电路综合计算方法、***以及终端
Mailhot et al. Algorithms for technology mapping based on binary decision diagrams and on Boolean operations
US5956257A (en) Automated optimization of hierarchical netlists
CN113705135B (zh) 基于fpga进位链的电路结构优化方法及***
Burns Automated compilation of concurrent programs into self-timed circuits
Chou et al. Circuit partitioning for huge logic emulation systems
Hulgaard et al. Equivalence checking of combinational circuits using boolean expression diagrams
CN113779924A (zh) 超导集成电路的布线优化方法和装置、存储介质和终端
CN105447285B (zh) 一种提高OpenCL硬件执行效率的方法
CN111858463B (zh) 一种基于dvfs的优化重配置方法
Ishida An optimization algorithm for production systems
Cheng et al. Circuit partitioning with logic perturbation
Aravena Recursive moving window DFT algorithm
Jone et al. A scheme for overlaying concurrent testing of VLSI circuits
Bolchini et al. A novel methodology for designing TSC networks based on the parity bit code
Cai et al. IDE development, logic synthesis and buffer/splitter insertion framework for adiabatic quantum-flux-parametron superconducting circuits
Ștefan Let's consider Moore's law in its entirety
Ma et al. Parallel exact inference on multicore using mapreduce
Hudson et al. Spatiotemporal partitioning of computational structures onto configurable computing machines
CN100428161C (zh) 嵌入式微处理器的存储子***内存自动布局方法
Nam et al. A boolean satisfiability-based incremental rerouting approach with application to FPGAs
Chen et al. JRouter: A multi-terminal hierarchical length-matching router under planar Manhattan routing model for RSFQ circuits
JP2009544091A (ja) 電子回路の合成
De Micheli Technology mapping of digital circuits
US20050039150A1 (en) Process and device for circuit design by means of high-level synthesis

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