实用新型内容
本实用新型的目的在于提出一种多路并联锁存器、数据运算单元以及芯片,用于解决现有多路并联锁存器时钟负载较大的问题。
本实用新型实施例的第一方面,提供了一种多路并联锁存器,包括:
多个输入端,用于输入多个数据;
一个时钟信号端,用于提供时钟信号;
多个锁存器,每个所述锁存器与一个所述输入端连接,用于在所述时钟信号的控制下锁存并传输从与该锁存器连接的输入端输入的数据;
多个输出端,每个所述输出端与一个所述锁存器连接,用于从与该输出端连接的锁存器读出数据;
其中,所述锁存器包括:锁存单元、输出单元以及保持电容;所述锁存单元与所述输入端连接,用于在所述时钟信号的控制下锁存从所述输入端输入的数据;所述输出单元与所述锁存单元连接,用于传输所述锁存单元输出的数据;所述输出单元与所述锁存单元之间具有一数据存储节点;所述保持电容与所述数据存储节点连接,当所述锁存单元在所述时钟信号的控制下处于高阻状态时,所述保持电容用于存储所述数据存储节点处的数据。
可选地,所述锁存单元包括:反相器和第一传输门;所述反相器与所述输入端连接,用于对所述输入端输入的数据进行反相操作;所述第一传输门与所述反相器连接,用于传输经所述反相器反相后的数据;所述保持电容电性连接至一地。
可选地,所述锁存单元包括:反相器和第一传输门;所述反相器与所述输入端连接,用于对所述输入端输入的数据进行反相操作;所述第一传输门与所述反相器连接,用于传输经所述反相器反相后的数据;所述保持电容为基于所述输出单元形成的寄生电容。
可选地,所述时钟信号端分别与各锁存器中的第一传输门连接,用于控制所述锁存单元的状态,所述锁存单元的状态包括:高阻状态或导通状态
可选地,所述第一传输门为抗漏电器件。
可选地,所述锁存单元包括第二传输门;所述保持电容电性连接至一地。
可选地,所述锁存单元包括第二传输门;所述保持电容为基于所述输出单元形成的寄生电容。
可选地,所述锁存单元包括三态反相器;所述保持电容为基于所述输出单元形成的寄生电容,或者,所述保持电容为不同于所述寄生电容的独立电容,所述保持电容电性连接至一地。
本实用新型实施例的第二方面,提供了一种数据运算单元,所述数据运算单元包括:至少一个上述第一方面所述的多路并联锁存器。
本实用新型实施例的第三方面,提供了一种芯片,所述芯片包括:至少一个上述第二方面所述的数据运算单元。
根据本实用新型实施例提供的多路并联锁存器、数据运算单元以及芯片,其中,多路并联锁存器包括:多个输入端,用于输入多个数据;一个时钟信号端,用于提供时钟信号;多个锁存器,每个所述锁存器与一个所述输入端连接,用于在所述时钟信号的控制下锁存并传输从与该锁存器连接的输入端输入的数据;多个输出端,每个所述输出端与一个所述锁存器连接,用于从与该输出端连接的锁存器读出数据;其中,所述锁存器包括:锁存单元、输出单元以及保持电容;所述锁存单元与所述输入端连接,用于在所述时钟信号的控制下锁存从所述输入端输入的数据;所述输出单元与所述锁存单元连接,用于传输所述锁存单元输出的数据;所述输出单元与所述锁存单元之间具有一数据存储节点;所述保持电容与所述数据存储节点连接,当所述锁存单元在所述时钟信号的控制下处于高阻状态时,所述保持电容用于存储所述数据存储节点处的数据。
本实用新型实施例中的多路并联锁存器,针对每个锁存器而言,均采用保持电容进行数据存储节点处的数据存储,即可达到数据锁存的目的,而无需使用基于时钟信号的反馈电路来实现数据锁存。因此,本实用新型实施例中的多路并联锁存器的时钟负载较小。
具体实施方式
下面结合附图和实施例对本实用新型作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅配置为解释相关实用新型,而非对该实用新型的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关实用新型相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本实用新型。
参见图1,图1为本实用新型实施例一中多路并联锁存器的电路结构图。该多路并联锁存器包括:多个输入端:D0-Dn,用于输入多个数据;一个时钟信号端,用于提供时钟信号,具体的:用于提供两个互为反相信号的时钟信号:时钟信号CLKP和时钟信号CLKN;多个锁存器101,每个锁存器101与一个输入端连接,用于在时钟信号的控制下锁存并传输从与该锁存器101连接的输入端输入的数据;多个输出端:Q0-Qn,每个输出端与一个锁存器101连接,用于从与该输出端连接的锁存器101读出数据;其中,锁存器101包括:锁存单元1011、输出单元1012以及保持电容1013;锁存单元1011与输入端连接,用于在时钟信号的控制下锁存从输入端输入的数据;输出单元1012 与锁存单元1011连接,用于传输锁存单元1011输出的数据;输出单元1012 与锁存单元1011之间具有一数据存储节点S;保持电容1013与数据存储节点S连接,当锁存单元1011在时钟信号的控制下处于高阻状态时,保持电容 1013用于存储数据存储节点S处的数据。
进一步地,如图1所示,锁存器101中的锁存单元1011可以包括:反相器和第一传输门;反相器与输入端连接,用于对输入端输入的数据进行反相操作;第一传输门与反相器连接,用于传输经反相器反相后的数据;保持电容1013电性连接至一地。在本实施例中,保持电容1013为单独存在的电容,即不同于下述寄生电容。
进一步地,时钟信号端分别与各锁存器101的锁存单元1011中的第一传输门连接,用于控制锁存单元1011的状态,锁存单元1011的状态包括:高阻状态或导通状态。
参见图1,锁存单元1011中的反相器由PMOS晶体管1011P1和NMOS晶体管1011N1串联而成,PMOS晶体管1011P1的源极接电源,NMOS晶体管1011N1 的源极接地,PMOS晶体管1011P1和NMOS晶体管1011N1的漏极连接,形成反相器的输出端,PMOS晶体管1011P1和NMOS晶体管1011N1的栅极连接,形成反相器的输入端,也是整个锁存器101的输入端。
进一步地,本实用新型实施例中,对于每个锁存器101而言,可以选择使用抗漏电器件作为锁存单元1011中的第一传输门,这样以来,当锁存单元 1011处于高阻状态时,第一传输门可以延缓数据存储节点S处漏电的速度。具体的,抗漏电器件可以为阈值电压较大的低漏电器件,或者也可以为栅长较长的器件等。
本实用新型实施例一提供的多路并联锁存器中,由于各锁存器共用一个时钟信号端,因此,可以实现多个数据同时写入、同时读出。具体的:当多路并联锁存器中包括n(n为大于0的自然数)个锁存器101时,可以通过该多路并联锁存器实现对n个二进制数据的同时写入、同时读出,其中,每个锁存器用于锁存1个二进制数据。
下面结合图1,对多路并联锁存器中的单个锁存器101的数据锁存过程进行解释说明:
当CLKP为低电平,CLKN为高电平时,锁存器101中锁存单元1011中的第一传输门处于导通状态,此时,锁存单元1011分别对与其连接的输入端的数据进行反相,具体的:锁存单元1011对与其连接的输入端输入的数据进行反相之后,将反相后数据传输至输出单元1012,即对输入端的数据反相,并将反相后的数据写入到数据存储节点S处,由于保持电容1013的一端与数据存储节点S连接,另一端与地连接,因此,数据存储节点S处的数据会被存储至上述保持电容1013内,也就是说,此时,保持电容1013内存储的是与输入端输入的数据反相的数据。
之后,当CLKP为高电平,CLKN为低电平时(即时钟信号发生翻转时),锁存单元1011中的第一传输门变为高阻状态(截止状态),此时锁存单元 1011为高阻状态(截止状态),输入端的数据无法再次通过锁存单元1011,也就是说,新的输入数据无法输出至数据存储节点S。此时,数据存储节点S 处于悬浮状态,可以基于保持电容1013中的电荷来保持数据存储节点S处的电平状态,从而使得输出单元1012继续输出数据。具体的,最终输出单元 1012输出的数据与时钟信号翻转之前输入端输入的数据是同相的。
图1所示的多路并联锁存器,针对每个锁存器101而言,均采用保持电容1031进行数据存储节点S处的数据存储,即可达到数据锁存的目的,而无需使用基于时钟信号的反馈电路来实现数据锁存。因此,本实用新型实施例中的多路并联锁存器的时钟负载较小。进而,时钟信号端可以挂载更多的锁存器101,以同时写入、同时读出更多的二进制数据。
另外,与传统的锁存器相比,由于图1所示的多路并联锁存器中的锁存器无需设置包括多个晶体管的反馈电路,因此,本实用新型实施例中的多路并联锁存器晶体管数量较少,相应地,电路面积也较小,同时,功耗也较低。
基于图1所示实施例提供的多路并联锁存器,在本实用新型的另一实施例提供的多路并联锁存器中,针对单个锁存器101而言,也可以无需额外增加一个用于存储数据存储节点S处数据的保持电容,而是采用基于输出单元 1012形成的寄生电容(即:栅电容)来进行数据存储节点S处数据的存储。该实施例中,对于单个锁存器101而言,其他部分的连接关系与图1所示多路并联锁存器中单个锁存器相同,并且能够获得与图1所示实施例相同的有益效果,此处不再赘述。另外,由于寄生电容的电容值较小,因此,该实施例提供的多路并联锁存器可以应用于如下场景中:数据锁存时间较短的场景,或者,数据使用一次之后无需再次使用的场景,或者,较短固定周期地数据读取的场景。
参见图2,图2为本实用新型实施例二中多路并联锁存器的电路结构图。该多路并联锁存器包括:多个输入端:D0-Dn,用于输入多个数据;一个时钟信号端,用于提供时钟信号,具体的:用于提供两个互为反相信号的时钟信号:时钟信号CLKP和时钟信号CLKN;多个锁存器101,每个锁存器101与一个输入端连接,用于在时钟信号的控制下锁存并传输从与该锁存器101连接的输入端输入的数据;多个输出端:QN0-QNn,每个输出端与一个锁存器101 连接,用于从与该输出端连接的锁存器101读出数据;其中,锁存器101包括:锁存单元1011、输出单元1012以及保持电容1013;锁存单元1011与输入端连接,用于在时钟信号的控制下锁存从输入端输入的数据;输出单元 1012与锁存单元1011连接,用于传输锁存单元1011输出的数据;输出单元 1012与锁存单元1011之间具有一数据存储节点S;保持电容1013与数据存储节点S连接,当锁存单元1011在时钟信号的控制下处于高阻状态时,保持电容1013用于存储数据存储节点S处的数据。
进一步地,如图2所示,锁存器101中的锁存单元1011可以包括:第二传输门;保持电容1013电性连接至一地。在本实施例中,保持电容1013为单独存在的电容,即不同于下述寄生电容。
时钟信号端分别与各锁存器101的锁存单元1011中的第二传输门连接,用于控制锁存单元1011的状态,锁存单元1011的状态包括:高阻状态或导通状态。
本实用新型实施例二提供的多路并联锁存器中,由于各锁存器共用一个时钟信号端,因此,可以实现多个数据同时写入、同时读出。具体的:当多路并联锁存器中包括n(n为大于0的自然数)个锁存器101时,可以通过该多路并联锁存器实现对n个二进制数据的同时写入、同时读出,其中,每个锁存器用于锁存1个二进制数据。
下面结合图2,对多路并联锁存器中的单个锁存器101的数据锁存过程进行解释说明:
当CLKP为低电平,CLKN为高电平时,锁存单元1011中的第二传输门为导通状态,锁存单元1011将输入端的数据传输至输出单元1012,即将输入端的数据写入到数据存储节点S处,由于保持电容1013的一端与数据存储节点S连接,另一端与地连接,因此,数据存储节点S处的数据会被存储至上述保持电容1013内,也就是说,此时,输入端输入的数据将直接被存储至保持电容1013内,同时,输出单元1012对锁存单元1011输出的数据进行反相,并将反相后数据输出至输出端,例如:若输入端输入的数据为“0”,则输出单元1012输出至输出端的数据为“1”;若输入端输入的数据为“1”,则输出单元1012输出至输出端的数据为“0”。
之后,当CLKP为高电平,CLKN为低电平时(即时钟信号发生翻转时),锁存单元1011中的第二传输门变为高阻状态(截止状态),此时锁存单元 1011为高阻状态(截止状态),输入端的数据无法再次通过锁存单元1011,而此时,数据存储节点S处于悬浮状态,因此,可以基于保持电容1013中的电荷来保持数据存储节点S处的电平状态,从而使得输出单元1012继续输出数据,并且,此时输出单元1012输出的数据,与时钟信号发生翻转前,输出单元1012输出的数据是相同的。
图2所示的多路并联锁存器,针对每个锁存器101而言,均采用保持电容1031进行数据存储节点S处的数据存储,即可达到数据锁存的目的,而无需使用基于时钟信号的反馈电路来实现数据锁存。因此,本实用新型实施例中的多路并联锁存器的时钟负载较小。进而,时钟信号端可以挂载更多的锁存器101,以同时写入、同时读出更多的二进制数据。
另外,与传统的锁存器相比,由于图2所示的多路并联锁存器中的锁存器无需设置包括多个晶体管的反馈电路,因此,本实用新型实施例中的多路并联锁存器晶体管数量较少,相应地,电路面积也较小,同时,功耗也较低。
基于图2所示实施例提供的多路并联锁存器,在本实用新型的另一实施例提供的多路并联锁存器中,针对单个锁存器101而言,也可以无需额外增加一个用于存储数据存储节点S处数据的保持电容,而是采用基于输出单元 1012形成的寄生电容(即:栅电容)来进行数据存储节点S处数据的存储。该实施例中,对于单个锁存器101而言,其他部分的连接关系与图2所示多路并联锁存器中单个锁存器相同,并且能够获得与图2所示实施例相同的有益效果,此处不再赘述。另外,由于寄生电容的电容值较小,因此,该实施例提供的多路并联锁存器可以应用于如下场景中:数据锁存时间较短的场景,或者,数据使用一次之后无需再次使用的场景,或者,较短固定周期地数据读取的场景。
参见图3,图3为本实用新型实施例三中多路并联锁存器的电路结构图。该多路并联锁存器包括:多个输入端:D0-Dn,用于输入多个数据;一个时钟信号端,用于提供时钟信号,具体的:用于提供两个互为反相信号的时钟信号:时钟信号CLKP和时钟信号CLKN;多个锁存器101,每个锁存器101与一个输入端连接,用于在时钟信号的控制下锁存并传输从与该锁存器101连接的输入端输入的数据;多个输出端:Q0-Qn,每个输出端与一个锁存器101连接,用于从与该输出端连接的锁存器101读出数据;其中,锁存器101包括:锁存单元1011、输出单元1012以及保持电容1013;锁存单元1011与输入端连接,用于在时钟信号的控制下锁存从输入端输入的数据;输出单元1012 与锁存单元1011连接,用于传输锁存单元1011输出的数据;输出单元1012 与锁存单元1011之间具有一数据存储节点S;保持电容1013与数据存储节点S连接,当锁存单元1011在时钟信号的控制下处于高阻状态时,保持电容 1013用于存储数据存储节点S处的数据。
进一步地,如图3所示,锁存器101中的锁存单元1011可以包括:三态反相器;保持电容1031电性连接至一地。在本实施例中,保持电容1013为单独存在的电容,即不同于下述寄生电容。
进一步地,锁存单元1011中的三态反相器可以包括:PMOS晶体管1011P3、 PMOS晶体管1011P4、NMOS晶体管1011N3以及NMOS晶体管1011N4;PMOS晶体管1011P3、PMOS晶体管1011P4、NMOS晶体管1011N3以及NMOS晶体管 1011N4依次串联在电源、地之间。
进一步地,参见图3,时钟信号端分别与各锁存器101的三态反相器中 PMOS晶体管1011P4的栅极以及NMOS晶体管1011N3的栅极连接,用于控制锁存单元1011的状态,其中,锁存单元1011的状态包括:高阻状态或导通状态;输入端分别与PMOS晶体管1011P3的栅极以及NMOS晶体管1011N4的栅极连接,用于将输入端输入的数据传输至锁存单元1011。
本实用新型实施例三提供的多路并联锁存器中,由于各锁存器共用一个时钟信号端,因此,可以实现多个数据同时写入、同时读出。具体的:当多路并联锁存器中包括n(n为大于0的自然数)个锁存器101时,可以通过该多路并联锁存器实现对n个二进制数据的同时写入、同时读出,其中,每个锁存器用于锁存1个二进制数据。
下面结合图3,对多路并联锁存器中的单个锁存器101的数据锁存过程进行解释说明:
当CLKP为低电平,CLKN为高电平时,PMOS晶体管1011P4与NMOS晶体管1011N3均为导通状态,锁存单元1011将输入端的数据反相后传输至输出单元1012,即将输入端的数据反相后写入到数据存储节点S处,由于保持电容1013的一端与数据存储节点S连接,另一端与地连接,因此,数据存储节点S处的数据会被存储至上述保持电容1013内。
之后,当CLKP为高电平,CLKN为低电平时(即时钟信号发生翻转时), PMOS晶体管1011P4与NMOS晶体管1011N3均为高阻状态(截止状态),此时锁存单元1011为高阻状态(截止状态),输入端的数据无法再次通过锁存单元1011。而此时,数据存储节点S处于悬浮状态,可以基于保持电容1013 中的电荷来保持数据存储节点S处的电平状态,从而使得输出单元1012继续输出时钟信号翻转之前输入端输入的数据。
图3所示的多路并联锁存器,针对每个锁存器101而言,均采用保持电容1031进行数据存储节点S处的数据存储,即可达到数据锁存的目的,而无需使用基于时钟信号的反馈电路来实现数据锁存。因此,本实用新型实施例中的多路并联锁存器的时钟负载较小。进而,时钟信号端可以挂载更多的锁存器101,以同时写入、同时读出更多的二进制数据。
另外,与传统的锁存器相比,由于图3所示的多路并联锁存器中的锁存器无需设置包括多个晶体管的反馈电路,因此,本实用新型实施例中的多路并联锁存器晶体管数量较少,相应地,电路面积也较小,同时,功耗也较低。
在本实用新型另一实施例中,各锁存器101的三态反相器中各晶体管与时钟控制端以及输入端之间的连接关系也可以采用如下方式:时钟信号端分别与各锁存器101的三态反相器中PMOS晶体管1011P3的栅极以及NMOS晶体管1011N4的栅极连接,用于控制锁存单元1011的状态,其中,锁存单元1011 的状态包括:高阻状态或导通状态;输入端分别与PMOS晶体管1011P4的栅极以及NMOS晶体管1011N3的栅极连接,用于将输入端输入的数据传输至锁存单元1011。该实施例中,对于单个锁存器101而言,其他部分的连接关系与图3所示多路并联锁存器中单个锁存器相同,并且能够获得与图3所示实施例相同的有益效果,此处不再赘述。
基于图3所示实施例提供的多路并联锁存器,在本实用新型的另一实施例提供的多路并联锁存器中,针对单个锁存器101而言,也可以无需额外增加一个用于存储数据存储节点S处数据的保持电容,而是采用基于输出单元 1012形成的寄生电容(即:栅电容)来进行数据存储节点S处数据的存储。该实施例中,对于单个锁存器101而言,其他部分的连接关系与图1所示多路并联锁存器中单个锁存器相同,并且能够获得与图3所示实施例相同的有益效果,此处不再赘述。另外,由于寄生电容的电容值较小,因此,该实施例提供的多路并联锁存器可以应用于如下场景中:数据锁存时间较短的场景,或者,数据使用一次之后无需再次使用的场景,或者,较短固定周期地数据读取的场景。
本实用新型实施例中提供的多路并联锁存器,可作为一种定制化的标准单元,在通用计算场景中实现数据的存储。例如:可以作为CPU/CPU中的计算核心单元,用于超大规模计算场景下的数据存储;也可以作为AI (Artificial Intelligence,人工智能)芯片中的计算处理单元,用于高密度计算场景下的数据存储;还可以作为SOC(System on Chip,系统级芯片) /FPGA(Field Programmable Gate Array,现场可编程门阵列)等系统级的计算单元,用于低功耗计算等场景下的数据存储。
本实用新型实施例还提供一种数据运算单元,图4为本实用新型实施例四中数据运算单元的结构示意图。如图4所示,数据运算单元400包括控制电路401、运算电路402以及多个多路并联锁存器403。控制电路401对多路并联锁存器403中的数据进行刷新并从多路并联锁存器403中读取数据,运算电路402对读取的数据进行运算,再由控制电路401将运算结果输出。其中,多路并联锁存器403为上述实施例一至实施例三中任一的多路并联锁存器。
本实用新型实施例还提供一种芯片,图5为本实用新型实施例五中芯片的结构示意图。如图5所示,芯片500包括控制单元501,以及一个或多个数据运算单元400。控制单元501向数据运算单元400输入数据并将数据运算单元400输出的数据进行处理。
在本公开的各种实施方式中所使用的表述“第一”、“第二”、“第一”或“第二”可修饰各种部件而与顺序和/或重要性无关,但是这些表述不限制相应部件。以上表述仅配置为将元件与其它元件区分开的目的。例如,第一用户设备和第二用户设备表示不同的用户设备,虽然两者均是用户设备。例如,在不背离本公开的范围的前提下,第一元件可称作第二元件,类似地,第二元件可称作第一元件。
当一个元件(例如,第一元件)称为与另一元件(例如,第二元件)“(可操作地或可通信地)联接”或“(可操作地或可通信地)联接至”另一元件(例如,第二元件)或“连接至”另一元件(例如,第二元件)时,应理解为该一个元件直接连接至该另一元件或者该一个元件经由又一个元件(例如,第三元件)间接连接至该另一个元件。相反,可理解,当元件(例如,第一元件)称为“直接连接”或“直接联接”至另一元件(第二元件)时,则没有元件(例如,第三元件)插入在这两者之间。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的实用新型范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述实用新型构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。