CN112114875A - 一种超导并行寄存器堆装置 - Google Patents

一种超导并行寄存器堆装置 Download PDF

Info

Publication number
CN112114875A
CN112114875A CN202010876462.5A CN202010876462A CN112114875A CN 112114875 A CN112114875 A CN 112114875A CN 202010876462 A CN202010876462 A CN 202010876462A CN 112114875 A CN112114875 A CN 112114875A
Authority
CN
China
Prior art keywords
data
register
receiving
input
output
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
Application number
CN202010876462.5A
Other languages
English (en)
Other versions
CN112114875B (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.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing 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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN202010876462.5A priority Critical patent/CN112114875B/zh
Publication of CN112114875A publication Critical patent/CN112114875A/zh
Application granted granted Critical
Publication of CN112114875B publication Critical patent/CN112114875B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30101Special purpose registers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Shift Register Type Memory (AREA)

Abstract

提供一种超导并行寄存器堆装置,该装置包括N个寄存器组,其中N为大于等于2的整数,该N个寄存器组分别包括用于接收数据输入的数据输入端,用于接收写数据地址的写地址输入端,用于接收写使能信号的写使能端,用于接收时钟信号的时钟输入端,用于接收读数据地址的读地址输入端以及用于将数据输出的数据输出端;其中,该N个寄存器组的数据输入端连接在一起,该N个寄存器组的写地址输入端连接在一起,以及该N个寄存器组的写使能端连接在一起。

Description

一种超导并行寄存器堆装置
技术领域
本发明涉及超导电子电路领域,特别涉及一种超导并行寄存器堆装置。
背景技术
目前对于基于快速单磁通量子RSFQ的超导电路研究还处于基本原理和物理制造层面,对于结构性的设计尚未有大量相关的发明。现有的基于RSFQ超导电路技术可以实现简单的寄存器结构,但其工作流程局限于单一的数据读取和单一的数据写入,无法实现并行的多端口读取或者写入。
现有技术中可以实现的寄存器堆只能单端口工作,一次性只能读取一个数据。由于超导电路的一个特点是信号传递线路延迟非常大,因此如果每次只能读出一个数据,在进行数据运算时会浪费大量的时间等待数据。
发明内容
根据现有技术的上述缺陷,本发明提出一种超导并行寄存器堆装置,所述装置包括N个寄存器组,其中N为大于等于2的整数,
所述N个寄存器组分别包括用于接收数据输入的数据输入端,用于接收写数据地址的写地址输入端,用于接收写使能信号的写使能端,用于接收时钟信号的时钟输入端,用于接收读数据地址的读地址输入端以及用于将数据输出的数据输出端;
其中,所述N个寄存器组的数据输入端连接在一起,所述N个寄存器组的写地址输入端连接在一起,以及所述N个寄存器组的写使能端连接在一起。
根据本发明的超导并行寄存器堆装置,所述装置还包括:
第一SPL组,包括用于接收数据输入的输入端,以及N个输出端,所述N个输出端分别连接到所述N个寄存器组的数据输入端,用于将所述数据输入分别输出到所述N个寄存器组;
第二SPL组,包括用于接收写数据地址的输入端,以及N个输出端,所述N个输出端分别连接到所述N个寄存器组的写地址输入端,用于将所述写数据地址分别输出到所述N个寄存器组;以及
第一SPL,包括用于接收写使能信号的输入端,以及N个输出端,所述N个输出端分别连接到所述N个寄存器组的写使能端,用于将所述写使能信号分别输出到所述N个寄存器组。
根据本发明的超导并行寄存器堆装置,其中,所述N个寄存器组中的每一个寄存器组包括Q个寄存器,其中Q为正整数,
每个寄存器包括用于接收数据输入的数据输入端,用于接收写使能信号的使能端,用于接收时钟信号的时钟输入端,以及用于将数据输出的数据输出端。
根据本发明的超导并行寄存器堆装置,其中,所述N个寄存器组中的每一个寄存器组还包括写控制单元,用于控制每个寄存器的数据写入,所述写控制单元包括:
Q个与门,其输出端分别连接到每个寄存器的使能端;
第一译码器,其包括用于接收写数据地址的写地址输入端,其输出端分别连接到每个与门的第一输入端;以及
第二SPL,其包括用于接收写使能信号的使能输入端,其输出端分别连接到所述每个与门的第二输入端。
根据本发明的超导并行寄存器堆装置,其中,所述N个寄存器组中的每一个寄存器组还包括读控制单元,用于控制每个寄存器的数据读取,所述读控制单元包括:
Q个位扩展与门阵列,每个位扩展与门阵列包括数据输入端,用于接收所述每个寄存器的输出数据;以及
第二译码器,其包括用于接收所述读数据地址的读地址输入端,其输出端分别连接到每个位扩展与门阵列以控制所述位扩展与门阵列的数据输出。
根据本发明的超导并行寄存器堆装置,其中,所述寄存器组还包括:
第四SPL组,其包括用于接收数据输入的输入端,其输出端用于将所述数据输入分别输出到所述每个寄存器的数据输入端。
根据本发明的超导并行寄存器堆装置,其中,所述寄存器组还包括:
第一CB组,其包括分别用于接收所述Q个位扩展与门阵列的输出数据的输入端,以及用于将数据进行输出的数据输出端。
根据本发明的超导并行寄存器堆装置,其中,所述Q个寄存器是可清零寄存器。
根据本发明的超导并行寄存器堆装置,其中,所述可清零寄存器包括至少一个超导触发器,所述超导触发器包括:
SPL,其包括用于接收写使能信号的输入端,第一输出端以及第二输出端;
RDFF,其包括用于接收所述SPL的第一输出端的数据的时钟输入端,用于接收数据输入的数据输入端,用于接收清零信号的重置端,以及数据输出端;以及
NDRO,其包括用于接收所述SPL的第二输出端的数据的重置端,用于接收时钟信号的时钟输入端,用于接收所述RDFF的输出数据的数据输入端以及用于将数据输出的数据输出端。
根据本发明的超导并行寄存器堆装置,其中,所述N个寄存器组的读地址输入端分别用于接收不同的读数据地址,并将读取的数据经由所述N个寄存器组的数据输出端分别进行输出。
本发明采用“镜像”写入方式实现多端口读,提高寄存器堆访问效率,从而更好发挥超导处理器流水线效率。
附图说明
图1是本发明一个实施例的可清零超导寄存器的电路图;
图2是本发明一个实施例的寄存器组的示意图;
图3是本发明一个实施例的寄存器组的电路示意图;
图4是本发明一个实施例的寄存器组的数据端口示意图;
图5是本发明一个实施例的镜像寄存器堆的示意图。
具体实施方式
为了使本发明的目的、技术方案以及优点更加清楚明白,下面结合附图通过具体实施例对本发明作进一步详细说明。
图1是本发明一个实施例的可清零超导寄存器的电路图,如图1所示,超导寄存器100包括四个超导触发器,每个超导触发器由分离器(SPL)、可复位触发器(RDFF)以及非破坏读出寄存器(NDRO)组成。其中,SPL包括用于接收使能信号EN的数据输入端,并将该数据输入分别输出到NDRO的重置端以及RDFF的时钟输入端;RDFF的数据输入端用于接收输入数据(In0、In1、In2或In3),RDFF的重置端用于接收清零信号clr;NDRO的数据输入端用于接收来自RDFF的输出数据,NDRO的时钟输入端用于接收时钟信号clk,NDRO的数据输出端用于将数据输出。
图1所示的可清零超导寄存器中的各个超导触发器由使能信号EN、时钟信号clk以及清零信号clr控制输出。例如,对于每个超导触发器,当外部有输入数据到达时,数据会先存储在RDFF中,并不会进行数据输出;当使能信号EN到达SPL后,NDRO的重置端从SPL的输出端接收到该使能信号EN,NDRO会首先被清零,同时RDFF的时钟输入端也从SPL的输出端接收到该使能信号EN,RDFF经过本身的器件延迟后,将其数据输入端上的输入数据输出到NDRO的输入端;接下来,当时钟信号clk到来时,NDRO会将其数据输入端接收的数据进行输出。
而当清零信号clr到来时,首先清空RDFF中的数据。若随后使能信号EN到达,会通过SPL的输出端将NDRO清零,同时由于RDFF被清零,因此没有数据输入到NDRO中,NDRO保持清零状态,当时钟信号clk到来时,NDRO没有数据输出,以使得超导寄存器完成清零。
因此图1中的可清零寄存器通过将各个超导触发器的使能信号EN端、时钟信号clk端以及清零信号clr端分别相应连接到一起,可以实现在使能信号EN到来后各个超导触发器同步读取数据(即同步将数据读取到NDRO中);在时钟信号clk到来后,各个超导触发器同步发送数据,以及在清零信号clr到来后,同步清空各个超导触发器。图1中的可清零寄存器100由4个超导触发器组成,即4位可清零寄存器,根据图1的示例,可以增加或减少超导触发器的数量,例如,当使用P(P为正整数)个超导触发器时,则可实现一个P位可清零寄存器,使用多个P位可清零寄存器可以构成一个寄存器组。
图2是本发明一个实施例的一个寄存器组的示意图,由多个例如图1的超导寄存器组成位宽为P,容量为Q的寄存器组。通常P为8、16、32和64位等,Q为寄存器的数量,可根据需要设计,一般为2^a字节(a为正整数)。如图2所示的寄存器组具有Q个地址容量的寻址空间。根据本发明的一个实施例,图2中的Q个寄存器可以使用图1所示的可清零寄存器,但本发明不限于此,也可以使用其他基于约瑟夫森结组成的具有锁存功能的超导寄存器以及其他不带清零功能的寄存器,例如单个NDRO器件组成的寄存器组等。
图3是本发明一个实施例的一个寄存器组的电路示意图,图3所示的寄存器组由两个P位寄存器构成(即Q=2),该两个P位寄存器的地址分别为例如地址0和地址1。
为便于理解,仍以图1所示的可清零寄存器为例对图3进行详细说明。图3中的寄存器组包括2个P位寄存器302和303,其分别包括用于接收P位数据输入的P位数据输入端Din1-P,用于接收写使能信号Wr的使能端,用于接收时钟信号clk的时钟输入端,用于接收清零信号clr的清零输入端以及用于将P位数据输出的P位数据输出端Dout1-P,其中P位寄存器302和303的时钟信号clk端连接在一起,用于接收同一个时钟信号,清零信号clr端也连接在一起,用于接收同一个清零信号(图3中未示出具体连线)。
图3中的寄存器组还包括SPL组301,其中SPL组301的输出端分别连接到P位寄存器302和P位寄存器303的数据输入端,用于将P位数据输入分为相同的两组数据,并分别传输到P位寄存器302和P位寄存器303。在本发明中,SPL组301包括多个SPL器件,其经过组合以满足P位数据输入的多扇出,其具体组合实现方式在本发明中不做限定。
图3中的寄存器组还包括写控制单元,其包括译码器306、SPL 304、与门305以及与门307,其中译码器306包括用于接收写数据地址的写地址输入端,该译码器将写数据地址译码后分别输出到第一输出端和第二输出端;SPL 304,其包括用于接收写使能信号的使能输入端,第一输出端和第二输出端;与门305,其包括用于接收译码器306的第一输出端的数据的第一数据输入端,用于接收SPL 304的第一输出端的数据的第二数据输入端,以及用于将信号输出到P位寄存器302的使能端的输出端;以及与门307,其包括用于接收译码器306的第二输出端的数据的第一数据输入端,用于接收SPL 304的第二输出端的数据的第二数据输入端,以及用于将信号输出到P位寄存器303的使能端的输出端。
图3中的寄存器组还包括读控制单元,其包括译码器308、位扩展与门阵列309以及位扩展与门阵列310。其中译码器308包括用于接收读数据地址的读地址输入端,该译码器308用于将读数据地址译码,并将译码后的控制信号分别通过第一输出端和第二输出端输出;位扩展与门阵列309,其包括用于接收译码器308的第一输出端的控制信号的第一数据输入端,用于接收P位寄存器302的P位输出数据的第二数据输入端,以及用于将P位数据输出的数据输出端;以及位扩展与门阵列310,其包括用于接收译码器308的第二输出端的控制信号的第一数据输入端,用于接收P位寄存器303的P位输出数据的第二数据输入端,以及用于将P位数据输出的数据输出端。
图3中的寄存器组还包括CB组321,其中CB组321用于将P位寄存器302或P位寄存器303的数据进行输出。CB组321包括第一数据输入端、第二数据输入端以及数据输出端,其中第一数据输入端连接到位扩展与门阵列309的数据输出端,用于接收位扩展与门阵列309的P位数据输出;第二数据输入端连接到位扩展与门阵列310的数据输出端,用于接收位扩展与门阵列310的P位数据输出;数据输出端用于将数据输出。在本发明中,CB组321包括多个CB器件,其经过组合以满足P位数据的输出,其具体组合实现方式在本发明中不做限定。
在本发明中,译码器可以由超导元件组成,其逻辑原理和传统译码器一致,作用是将n位地址线,译码成为2^n个输出线,比如常见的2/4译码器、3/8译码器和4/16译码器,图3中是一个1/2译码器,如果输入0,那么输出线中接入地址0的寄存器组的信号线上有脉冲信号,如果输入1,那么输出线中接入地址1的寄存器组的信号线上有脉冲信号。
如图3所示,例如,当需要将一个P位数据写入到该寄存器组中时,首先将该需要写入的数据传送到该寄存器组的数据输入端,即SPL组301的输入端,经SPL组301生成两组同样的P位数据分别输入到P位寄存器302和P位寄存器303中(若Q>=3,则需要更多的SPL对输入数据进行扇出),此时P位数据输入会存储在P位寄存器302和303的RDFF中,等待写使能信号Wr以及时钟信号clk的到来,以进行数据的写入。然后(或者同时),将写数据地址WAdr输入到译码器306中,该示例中译码器306是一个1/2译码器,如果写数据地址WAdr为0,则译码器306将信号输出到与门305中,以选择P位寄存器302进行数据写入。
若此时写数据地址WAdr为0,当写使能信号Wr到来时,与门305会将该写使能信号Wr输出到P位寄存器302的使能端,P位寄存器302会将P位输入数据写入到P位寄存器302的NDRO中,完成一次数据写入。此时与门307并没有输出写使能信号Wr,因此P位寄存器303不会写入数据。如果写数据地址为1,则译码器306将信号输出到与门307中,以选择P位寄存器303进行数据写入
当需要读取数据时,需要将读数据地址RAdr输入到译码器308中,如果读数据地址RAdr为0,P位寄存器302会以时钟信号clk的频率持续输出P位数据输出,译码器308将信号输出到位扩展与门阵列309中,将P位寄存器302的P位数据输出与译码器308的输出信号进行按位与,之后经CB组321输出,以将P位寄存器302的数据进行输出;如果读数据地址RAdr为1,则译码器308将信号输出到位扩展与门阵列310中,以选择P位寄存器303的数据进行输出。
虽然图3中描述了由两个P位寄存器302和303构成的寄存器组,但本发明不限于此,实际应用中,可使用Q(Q为正整数)个寄存器构成寄存器组。多个寄存器构成寄存器组的结构与图3所示的寄存器组类似。下面将结合图3对Q个寄存器构成的寄存器组进行简单描述。在Q个寄存器构成的寄存器组中,包括Q个如上所述的P位寄存器,有关P位寄存器的内容上文已经进行了详细的描述,在此不再赘述。
Q个寄存器构成的寄存器组还包括SPL组301,其包括用于接收数据输入的输入端,以及Q个输出端,用于将P位数据输入分为相同的Q组数据,并分别传输到Q个P位寄存器的数据输入端。Q个寄存器构成的寄存器组还包括写控制单元,其包括译码器306、SPL 304以及Q个与门。译码器306包括用于接收写数据地址的写地址输入端,该译码器306将写数据地址译码后分别输出到Q个输出端,分别用于控制Q个P位寄存器的使能端的写使能信号的有效和无效;SPL 304包括用于接收写使能信号Wr的使能输入端,以及Q个输出端;该译码器306的Q个输出端分别将数据输入到Q个与门(例如图3中的与门305以及与门307)的第一输入端,该SPL 304的Q个输出端分别将数据输入到Q个与门的第二输入端,该Q个与门的输出端将信号分别相应地输出到Q个寄存器的使能端。应当注意,在该实施例中,SPL 304可包括多个SPL器件,以满足写使能信号Wr的扇出需要。
Q个寄存器构成的寄存器组还包括读控制单元,其包括译码器308以及Q个位扩展与门阵列。译码器308包括用于接收读数据地址的读地址输入端,该译码器将读数据地址译码后分别输出到Q个输出端,用于控制Q个P位寄存器的数据输出;译码器308的Q个输出端分别将控制信号输出到Q个位扩展与门阵列的第一数据输入端,Q个寄存器的数据输出端分别将数据输出到Q个位扩展与门阵列的第二数据输入端,该Q个位扩展与门阵列的输出端将数据输出到CB组321。CB组321包括分别用于接收来自Q个位扩展与门阵列的输出数据的Q个数据输入端,以及用于将数据进行输出的数据输出端。
应当注意,在本发明中,用于示意的SPL 304以及SPL 505并非仅指代单一的SPL器件,而是根据输入信号的扇出需求,包括多个SPL器件。类似地用于示意的SPL组301、SPL组503以及SPL组504,也包括满足需求的多个SPL器件。CB组321包括满足需求的多个CB器件。
从图3中可以看出,在该寄存器组中,虽然能够实现基本的数据读写功能,但是每次只能读取一个P位的数据,效率比较低,而且由于超导电路的信号传递线路延迟非常大,导致在进行数据运算时浪费大量的时间等待数据。本发明在此基础上提出一种由两个图3所示的寄存器组组成镜像的寄存器堆,以同时读出两个P位的数据输出。
为了方便理解,将图3中的寄存器组抽象为图4所示的示意图,其分别示出了用于接收时钟信号的时钟输入端,用于接收数据输入的数据输入端,用于接收写数据地址WAdr的写地址输入端,用于接收写使能信号Wr的写使能端,用于接收读数据地址RAdr的读地址输入端,以及输出读出数据的数据输出端。在本实施例中,由于只涉及到数据的写入以及读取,对于具体流水线电路中涉及的清零操作不做要求,因此在图4中省略了数据清零端口。如图4所示,本发明的寄存器组400可以通过接收写数据地址WAdr以及写使能信号Wr以将输入数据写入寄存器组400,以及利用读数据地址RAdr在时钟信号clk的控制下进行数据输出。该寄存器组400可用于构成本发明的镜像寄存器堆。
图5是本发明一个实施例的镜像寄存器堆的示意图,其由两个完全相同的寄存器组501和寄存器组502构成。该寄存器组501和寄存器组502的数据输入端连接在一起,写地址输入端连接在一起,写使能端连接在一起以及时钟输入端连接在一起。寄存器组501的读地址输入端用于接收读数据地址RAdr0,并在数据输出端输出数据Dat0,寄存器组502的读地址输入端用于接收读数据地址RAdr1,并在数据输出端输出数据Dat1。本发明的寄存器堆在收到写使能信号Wr时,寄存器组501和寄存器组502同时在相同的地址下写入相同的数据,这样从寄存器堆初始化开始,就能保证每个寄存器组都是镜像的相同内容。
寄存器堆500还包括SPL组503,其中SPL组503的输入端用于接收数据输入,SPL组503的输出端分别连接到寄存器组501和寄存器组502的数据输入端,用于将数据输入分为相同的两组数据,并分别传输到寄存器组501和寄存器组502。在本发明中,SPL组503包括多个SPL器件,其经过组合以满足对数据输入的多扇出,其具体组合实现方式在本发明中不做限定。
寄存器堆500还包括SPL组504,其中SPL组504的输入端用于接收写数据地址WAdr,SPL组504的输出端分别连接到寄存器组501和寄存器组502的写地址输入端,用于将写数据地址WAdr分为相同的两组数据,并分别传输到寄存器组501和寄存器组502。在本发明中,SPL组504包括多个SPL器件,其经过组合以满足对数据输入的多扇出,其具体组合实现方式在本发明中不做限定。
寄存器堆500还包括SPL 505,其中SPL 505的输入端用于接收写使能信号,SPL505的输出端分别连接到寄存器组501和寄存器组502的写使能端,用于将写使能信号Wr分为相同的两个信号,并分别传输到寄存器组501和寄存器组502。在本发明中,SPL 505根据需要也可包括多个SPL器件,其经过组合以满足对数据输入的多扇出,其具体组合实现方式在本发明中不做限定。
具体地,当需要将数据写入寄存器堆中时,首先将该需要写入的数据传送到该寄存器堆的数据输入端,即SPL组503的输入端,经SPL组503生成两组同样的数据分别输入到寄存器组501和寄存器组502中。在相同的写使能信号Wr以及相同的写数据地址WAdr的控制下,将输入数据分别写入寄存器组501和寄存器组502中的对应的相同的位置。当需要读取数据时,则可以输入读数据地址RAdr0以读取寄存器组501的一个位置的数据,并将其输出,同时可以输入读数据地址RAdr1以读取寄存器组502的另一个位置的数据,由此可以实现同时读出两组数据输出,节约时间,提高效率。
本发明的寄存器堆中每个寄存器组都有自己独立接收数据读取地址的地址端口,和独立的一个数据输出端口。根据本发明的一个实施例,各个寄存器组可以不配置数据读取使能信号端口,不接收数据读取使能信号,数据输出端口会根据给定的数据地址,连续不断的在数据输出端口输出相应的数据,一旦数据读取地址的内容发生变化,数据输出数据随即发生变化。根据本发明的其他实施例,寄存器组也可以配置有数据读取使能信号端口,当数据读取使能信号到达,数据输出端口才会根据给定的数据读取地址输出相应的数据。
上述实施例以两个相同的寄存器组为例描述了本发明的基于超导电路的寄存器堆,实现了同时输出两组输出数据,但本发明不限于此,可以根据实际情况应用N(N>=2)个大小相同,存有相同内容的镜像寄存器组,可以同时根据给定的相应地址读取数据。每个寄存器组可以根据给定的一个地址后输出相应的数据,因此可以同时获得N个读出数据。
本发明的超导并行寄存器堆装置可包括N(N>=2)个寄存器组,N个寄存器组分别包括用于接收数据输入的数据输入端,用于接收写数据地址的写地址输入端,用于接收写使能信号的写使能端,用于接收时钟信号的时钟输入端,用于接收读数据地址的读地址输入端以及用于将数据输出的数据输出端;其中,N个寄存器组的数据输入端连接在一起,N个寄存器组的写地址输入端连接在一起,以及N个寄存器组的写使能端连接在一起。N个寄存器组的读地址输入端可以分别同时接收不同的读数据地址,并将不同地址的数据分别通过N个寄存器组的数据输出端进行输出。
本发明的寄存器堆中的N个寄存器组共用相同的输入数据、写数据地址以及写使能信号,当有数据写入时,在写数据地址以及写使能信号的控制下,会将N个寄存器组的相应地址的寄存器同时写入新的数据,以保持N个寄存器组内容同步。本发明利用N个相同的超导寄存器组,组合成一个大的超导寄存器堆,可以同时读取N个不同地址的数据,是一种用空间换时间的办法来提升超导电路的工作效率。本发明采用“镜像”写入方式实现多端口读问题,提高了寄存器堆的访问效率,从而更好地发挥超导处理器流水线的效率。
最后应该说明的是,以上实施例仅用以解释本发明的技术方案而非限制。尽管上文参照实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围中。

Claims (10)

1.一种超导并行寄存器堆装置,所述装置包括N个寄存器组,其中N为大于等于2的整数,
所述N个寄存器组分别包括用于接收数据输入的数据输入端,用于接收写数据地址的写地址输入端,用于接收写使能信号的写使能端,用于接收时钟信号的时钟输入端,用于接收读数据地址的读地址输入端以及用于将数据输出的数据输出端;
其中,所述N个寄存器组的数据输入端连接在一起,所述N个寄存器组的写地址输入端连接在一起,以及所述N个寄存器组的写使能端连接在一起。
2.根据权利要求1所述的超导并行寄存器堆装置,所述装置还包括:
第一SPL组,包括用于接收数据输入的输入端,以及N个输出端,所述N个输出端分别连接到所述N个寄存器组的数据输入端,用于将所述数据输入分别输出到所述N个寄存器组;
第二SPL组,包括用于接收写数据地址的输入端,以及N个输出端,所述N个输出端分别连接到所述N个寄存器组的写地址输入端,用于将所述写数据地址分别输出到所述N个寄存器组;以及
第一SPL,包括用于接收写使能信号的输入端,以及N个输出端,所述N个输出端分别连接到所述N个寄存器组的写使能端,用于将所述写使能信号分别输出到所述N个寄存器组。
3.根据权利要求1所述的超导并行寄存器堆装置,其中,所述N个寄存器组中的每一个寄存器组包括Q个寄存器,其中Q为正整数,
每个寄存器包括用于接收数据输入的数据输入端,用于接收写使能信号的使能端,用于接收时钟信号的时钟输入端,以及用于将数据输出的数据输出端。
4.根据权利要求3所述的超导并行寄存器堆装置,其中,所述N个寄存器组中的每一个寄存器组还包括写控制单元,用于控制每个寄存器的数据写入,所述写控制单元包括:
Q个与门,其输出端分别连接到每个寄存器的使能端;
第一译码器,其包括用于接收写数据地址的写地址输入端,其输出端分别连接到每个与门的第一输入端;以及
第二SPL,其包括用于接收写使能信号的使能输入端,其输出端分别连接到所述每个与门的第二输入端。
5.根据权利要求3所述的超导并行寄存器堆装置,其中,所述N个寄存器组中的每一个寄存器组还包括读控制单元,用于控制每个寄存器的数据读取,所述读控制单元包括:
Q个位扩展与门阵列,每个位扩展与门阵列包括数据输入端,用于接收所述每个寄存器的输出数据;以及
第二译码器,其包括用于接收所述读数据地址的读地址输入端,其输出端分别连接到每个位扩展与门阵列以控制所述位扩展与门阵列的数据输出。
6.根据权利要求3所述的超导并行寄存器堆装置,其中,所述寄存器组还包括:
第四SPL组,其包括用于接收数据输入的输入端,其输出端用于将所述数据输入分别输出到所述每个寄存器的数据输入端。
7.根据权利要求5所述的超导并行寄存器堆装置,其中,所述寄存器组还包括:
第一CB组,其包括分别用于接收所述Q个位扩展与门阵列的输出数据的输入端,以及用于将数据进行输出的数据输出端。
8.根据权利要求3所述的超导并行寄存器堆装置,其中,所述Q个寄存器是可清零寄存器。
9.根据权利要求8所述的超导并行寄存器堆装置,其中,所述可清零寄存器包括至少一个超导触发器,所述超导触发器包括:
SPL,其包括用于接收写使能信号的输入端,第一输出端以及第二输出端;
RDFF,其包括用于接收所述SPL的第一输出端的数据的时钟输入端,用于接收数据输入的数据输入端,用于接收清零信号的重置端,以及数据输出端;以及
NDRO,其包括用于接收所述SPL的第二输出端的数据的重置端,用于接收时钟信号的时钟输入端,用于接收所述RDFF的输出数据的数据输入端以及用于将数据输出的数据输出端。
10.根据权利要求1所述的超导并行寄存器堆装置,其中,所述N个寄存器组的读地址输入端分别用于接收不同的读数据地址,并将读取的数据经由所述N个寄存器组的数据输出端分别进行输出。
CN202010876462.5A 2020-08-27 2020-08-27 一种超导并行寄存器堆装置 Active CN112114875B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010876462.5A CN112114875B (zh) 2020-08-27 2020-08-27 一种超导并行寄存器堆装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010876462.5A CN112114875B (zh) 2020-08-27 2020-08-27 一种超导并行寄存器堆装置

Publications (2)

Publication Number Publication Date
CN112114875A true CN112114875A (zh) 2020-12-22
CN112114875B CN112114875B (zh) 2023-06-02

Family

ID=73805437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010876462.5A Active CN112114875B (zh) 2020-08-27 2020-08-27 一种超导并行寄存器堆装置

Country Status (1)

Country Link
CN (1) CN112114875B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112861463A (zh) * 2021-03-11 2021-05-28 中国科学院计算技术研究所 超导处理器及其输入输出控制模块
CN112949229A (zh) * 2021-03-30 2021-06-11 中国科学院上海微系统与信息技术研究所 超导高速存储器
CN113128172A (zh) * 2021-04-23 2021-07-16 中国科学院计算技术研究所 超导寄存器堆装置及其控制方法
CN113361718A (zh) * 2021-06-22 2021-09-07 中国科学院计算技术研究所 超导译码器装置
CN117112030A (zh) * 2023-09-12 2023-11-24 南京微盟电子有限公司 一种寄存器组地址自动累加电路及应用方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040218425A1 (en) * 2003-04-30 2004-11-04 Masanobu Fukushima Method and circuit for elastic storing capable of adapting to high-speed data communications
CN101916586A (zh) * 2010-07-28 2010-12-15 清华大学 多端口寄存器堆电路
CN101930355A (zh) * 2010-08-24 2010-12-29 中国航天科技集团公司第九研究院第七七一研究所 实现寄存器文件分组编址、读写控制方法的寄存器电路
CN103226531A (zh) * 2013-04-07 2013-07-31 北京工业大学 一种双端口外设配置接口电路
CN111049503A (zh) * 2019-12-19 2020-04-21 中国科学院计算技术研究所 一种超导触发器及其运行方法
CN111147045A (zh) * 2019-12-23 2020-05-12 中国科学院计算技术研究所 一种超导电路的清零方法及系统
CN111427810A (zh) * 2020-03-17 2020-07-17 中国科学院计算技术研究所 超导接口异步采集装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040218425A1 (en) * 2003-04-30 2004-11-04 Masanobu Fukushima Method and circuit for elastic storing capable of adapting to high-speed data communications
CN101916586A (zh) * 2010-07-28 2010-12-15 清华大学 多端口寄存器堆电路
CN101930355A (zh) * 2010-08-24 2010-12-29 中国航天科技集团公司第九研究院第七七一研究所 实现寄存器文件分组编址、读写控制方法的寄存器电路
CN103226531A (zh) * 2013-04-07 2013-07-31 北京工业大学 一种双端口外设配置接口电路
CN111049503A (zh) * 2019-12-19 2020-04-21 中国科学院计算技术研究所 一种超导触发器及其运行方法
CN111147045A (zh) * 2019-12-23 2020-05-12 中国科学院计算技术研究所 一种超导电路的清零方法及系统
CN111427810A (zh) * 2020-03-17 2020-07-17 中国科学院计算技术研究所 超导接口异步采集装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘淑君;严利民;: "一个1GHz两倍泵的多端口寄存器堆的设计", 微电子学与计算机 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112861463A (zh) * 2021-03-11 2021-05-28 中国科学院计算技术研究所 超导处理器及其输入输出控制模块
CN112861463B (zh) * 2021-03-11 2023-04-25 中国科学院计算技术研究所 超导处理器及其输入输出控制模块
CN112949229A (zh) * 2021-03-30 2021-06-11 中国科学院上海微系统与信息技术研究所 超导高速存储器
CN113128172A (zh) * 2021-04-23 2021-07-16 中国科学院计算技术研究所 超导寄存器堆装置及其控制方法
CN113128172B (zh) * 2021-04-23 2023-10-27 中国科学院计算技术研究所 超导寄存器堆装置及其控制方法
CN113361718A (zh) * 2021-06-22 2021-09-07 中国科学院计算技术研究所 超导译码器装置
CN117112030A (zh) * 2023-09-12 2023-11-24 南京微盟电子有限公司 一种寄存器组地址自动累加电路及应用方法
CN117112030B (zh) * 2023-09-12 2024-03-26 南京微盟电子有限公司 一种寄存器组地址自动累加电路及应用方法

Also Published As

Publication number Publication date
CN112114875B (zh) 2023-06-02

Similar Documents

Publication Publication Date Title
CN112114875B (zh) 一种超导并行寄存器堆装置
US7013359B1 (en) High speed memory interface system and method
US5440523A (en) Multiple-port shared memory interface and associated method
US5499344A (en) Programmable dual port data unit for interfacing between multiple buses
JP4425585B2 (ja) 分割されたシステムデータバスに連結されるメモリモジュールを具備する半導体メモリシステム
US4839866A (en) Cascadable first-in, first-out memory
US8335878B2 (en) Multiport memory architecture, devices and systems including the same, and methods of using the same
US7245147B1 (en) Interface for a programmable logic device
JPS6350797B2 (zh)
US9436432B2 (en) First-in first-out (FIFO) memory with multi-port functionality
US7145831B2 (en) Data synchronization arrangement
US9576630B2 (en) Memory devices and methods having multiple address accesses in same cycle
US6456551B2 (en) Semiconductor memory device having prefetch operation mode and data transfer method for reducing the number of main data lines
US6957309B1 (en) Method and apparatus for re-accessing a FIFO location
CN110097902B (zh) 针对同一端口的读写控制模块及方法、双端口存储器
JPH07321820A (ja) 相互接続点メモリ
CN111627481B (zh) 一种字线译码电路、字线选通方法及存储器和电子设备
US5475644A (en) Crosspoint memory
KR100719149B1 (ko) 신호 정렬 회로 및 이를 구비한 반도체 메모리 소자
JP5499131B2 (ja) デュアルポートメモリおよびその方法
CN113128172B (zh) 超导寄存器堆装置及其控制方法
US6499089B1 (en) Method, architecture and circuitry for independently configuring a multiple array memory device
CN113361718B (zh) 超导译码器装置
JPS63136395A (ja) 半導体記憶装置
CN114036087A (zh) 基于fpga存储单元实现数据延时处理的系统

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