CN109743041B - 锁存输入数据的电路、芯片、电子产品及方法 - Google Patents
锁存输入数据的电路、芯片、电子产品及方法 Download PDFInfo
- Publication number
- CN109743041B CN109743041B CN201811649584.XA CN201811649584A CN109743041B CN 109743041 B CN109743041 B CN 109743041B CN 201811649584 A CN201811649584 A CN 201811649584A CN 109743041 B CN109743041 B CN 109743041B
- Authority
- CN
- China
- Prior art keywords
- switch
- node
- electrically connected
- circuit
- charge
- 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
Links
Images
Landscapes
- Logic Circuits (AREA)
- Electronic Switches (AREA)
Abstract
公开了一种用于锁存输入数据的电路、芯片、电子产品及方法。根据本公开内容的一个实施例,该电路包括:第一充放电控制单元、延迟单元以及包括第二节点的第二充放电控制单元;其中延迟单元被构造成:在要将第二节点保持在第一逻辑状态的单个时钟周期内,由延迟单元延迟时钟信号使得第二节点在时钟信号翻转为第一逻辑状态之后处于放电状态的放电时间段的长度在预定阈值与零之间。该电路、芯片、电子产品和方法至少能实现如下效果之一:降低电路工作过程中的IR压降,以及提高触发器的使用密度。
Description
技术领域
本公开内容总体上涉及电路,更具体地,涉及一种用于锁存输入数据的电路、包括该电路的芯片、包括该芯片的电子产品及使用该电路锁存输入数据的方法。
背景技术
近年来,对集成电路的高速运算能力的需求日益增高。这要求电路设计者提供越来越快的组合电路和时序电路。具有锁存输入数据能力的触发器是集成电路中经常使用的单元。
触发器通常包括按预定的逻辑关系连接的多个开关。开关由时钟信号、输入数据、反馈信号等所控制。
高速触发器对于具有高速运算能力的集成电路是有益的。因此,改进触发器,尤其是高速触发器的性能是期望的。
发明内容
在下文中将给出关于本公开内容的简要概述,以便提供关于本公开内容的某些方面的基本理解。应当理解,此概述并不是关于本公开内容的穷举性概述。它并不是意图确定本公开内容的关键或重要部分,也不是意图限定本公开内容的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
本公开内容旨在改进用于锁存输入数据的电路,以用于例如高性能触发器,尤其是高性能高速触发器。
根据本公开内容的一个方面,提供了一种用于锁存输入数据的电路。该电路包括:第一充放电控制单元,包括第一节点和被电连接成通过切换第一节点的充放电状态来改变第一节点的电位的第一多个开关;延迟单元,用于接收时钟信号并延迟时钟信号以输出时钟延迟信号;以及第二充放电控制单元,包括第二节点和被电连接成通过切换第二节点的充放电状态来改变第二节点的电位的第二多个开关;其中,第一充放电控制单元被电连接成:第一充放电控制单元接收时钟信号和输入数据以切换第一节点的充放电状态;第二充放电控制单元被电连接成:第二节点的电位指示锁存的数据,并且第二充放电控制单元电连接第一节点并接收时钟延迟信号和以切换第二节点的充放电状态;并且延迟单元被构造成:在要将第二节点保持在第一逻辑状态的单个时钟周期内,由延迟单元延迟时钟信号使得第二节点在时钟信号翻转为第一逻辑状态之后处于放电状态的放电时间段的长度在预定阈值与零之间。
根据本公开内容的一个方面,提供了一种芯片。该芯片包括上述用于锁存输入数据的电路。
根据本公开内容的一个方面,提供了一种电子产品,包括:手机、计算机、数码摄像机、电视机、数码相机、机顶盒、路由器以及音响中的一个。
根据本公开内容的一个方面,提供了一种使用用于锁存输入数据的电路锁存输入数据的方法,该电路包括:第一充放电控制单元,包括第一节点和被电连接成通过对第一节点充电或放电来改变第一节点的电位的第一多个开关;延迟单元,用于接收时钟信号并延迟时钟信号以输出时钟延迟信号;以及第二充放电控制单元,包括第二节点和被电连接成通过对第二节点充电或放电来改变第二节点的电位的第二多个开关;其中,第一充放电控制单元被电连接成:第一充放电控制单元接收时钟信号和输入数据以切换第一节点的充放电状态;并且第二充放电控制单元被电连接成:第二节点的电位指示锁存的数据,并且第二充放电控制单元电连接第一节点并接收时钟延迟信号和以切换第二节点的充放电状态;该方法包括:向该电路输入为第一逻辑状态的输入数据;以及在要将第二节点保持在第一逻辑状态的单个时钟周期内,由延迟单元延迟时钟信号使得第二节点在时钟信号翻转为第一逻辑状态之后处于放电状态的放电时间段的长度在预定阈值与零之间。
本公开内容的电路、芯片、电子产品和方法至少能实现如下效果之一:优化状态建立时间、降低触发器在保持高电位逻辑状态下的峰值电流、改善触发器的IR压降、提高触发器的使用密度和提高芯片的运行速度。
附图说明
参照附图下面说明本公开内容的实施例,这将有助于更加容易地理解本公开内容的以上和其他目的、特点和优点。附图只是为了示出本公开内容的原理。在附图中不必依照比例绘制出单元的尺寸和相对位置。在附图中:
图1根据本公开内容的一个示例性实施例的用于锁存输入数据的电路的示例性框图;
图2是根据本公开内容的一个示例性实施例的用于锁存输入数据的电路的示例性电路图;
图3示出了在要将第二节点保持在第一逻辑状态的单个时钟周期内,图2中的电路的相关波形的示意图;
图4是根据本公开内容的一个示例性实施例的用于锁存输入数据的电路的示例性电路图;
图5是根据本公开内容的一个示例性实施例的用于锁存输入数据的电路的示例性电路图;
图6是根据本公开内容的一个示例性实施例的用于锁存输入数据的电路的示例性电路图;以及
图7是根据本公开内容的一个示例性实施例的锁存输入数据的方法的流程图。
具体实施方式
在下文中将结合附图对本公开内容的示例性实施例进行描述。为了清楚和简明起见,在说明书中并未描述实际实施例的所有特征。然而,应该了解,在开发任何这种实际实施例的过程中可以做出很多特定于实施例的决定,以便实现开发人员的具体目标,并且这些决定可能会随着实施例的不同而有所改变。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本公开内容,在附图中仅仅示出了与根据本公开内容的方案密切相关的装置结构,而省略了与本公开内容关系不大的其他细节。
应理解的是,本公开内容并不会由于如下参照附图的描述而只限于所描述的实施形式。在本文中,在可行的情况下,实施例可以相互组合、不同实施例之间的特征替换或借用、在一个实施例中省略一个或多个特征。
图1是根据本公开内容的一个示例性实施例的用于锁存输入数据D 的电路100的示例性框图。如图1中所示,电路100包括:第一充放电控制单元CD1、延迟单元DL以及第二充放电控制单元CD2。第一充放电控制单元CD1包括第一节点n1和被电连接成通过切换第一节点n1的充放电状态来改变第一节点n1的电位V1的第一多个开关。第一多个开关意指一个多个开关的集合,使用“第一”以和后面出现的另一个多个开关的集合相区别。延迟单元DL用于接收时钟信号CK并延迟时钟信号CK以输出时钟延迟信号CKB。图1中示出了第一多个开关中的一个示例性开关S。开关S包括控制端G,其中控制端G不同的电位状态可以对应开关的导通状态和断开状态。第二充放电控制单元CD2包括第二节点n2和被电连接成通过切换第二节点n2的充放电状态来改变第二节点n2的电位V2的第二多个开关(即,前述另一个多个开关的集合)。图1中示出了第二多个开关中的一个示例性开关S’。开关S’包括控制端G,其中,控制端G 不同的电位状态可以对应开关的导通状态和断开状态。注意,在本公开内容中,将第二节点n2处的电位所表示的数据定义为锁存的数据。第一充放电控制单元CD1被电连接成:第一充放电控制单元CD1接收时钟信号 CK和输入数据D以切换第一节点n1的充放电状态,即,第一充放电控制单元CD1控制信号包括时钟信号CK和输入数据D。第二节点n2的电位指示锁存的数据。第二充放电控制单元CD2电连接第一节点n1并接收延迟单元DL输出的时钟延迟信号CKB以切换第二节点n2的充放电状态,即,第二充放电控制单元CD2的控制信号包括延迟单元DL输出的时钟延迟信号CKB和第一节点的电位V1。第二充放电控制单元CD2可以输出与第二节点n2的电位反相的反相信号QB。延迟单元DL被构造成:在要将第二节点n2保持在第一逻辑状态(例如“1”,简称逻辑1)的在单个时钟周期T内,延迟单元DL通过延迟时钟信号使得第二节点n2在时钟信号 CK翻转为第一逻辑状态之后处于放电状态的放电时间段的长度td在预定阈值Th与零之间。预定阈值Th可以被设定为表示时钟信号CK的状态翻转所用的时间的翻转时间tr、tr/2、tr/4、tr/5、tr/6或tr/10等。其中,从技术效果而言,放电时间段的长度td等于零是优选的。在一个实施例中,预定阈值Th小于2*tr。关于翻转时间tr,定义为:时钟信号CK在t0时刻开始从低电平向高电平翻转,时钟信号CK在t1时刻达到高电平,则 tr=t1-t0。
对于第一节点n1、第二节点n2,其充放电状态包括充电状态和放电状态。例如,当节点与地之间的电连接路径导通后,该节点可以处于放电状态;当节点与电源之间的电连接路径导通后,该节点可以处于充电状态。可以通过切换电连接在节点与地或电源之间的开关单元的状态来控制电连接路径导通或断开,其中,开关单元包括多个开关,各开关的状态(例如,接通或断开)的组合对应开关单元的某种状态(例如,接通或断开)。在本公开内容中,节点处于放电状态中的放电不包括该节点对其周围的电介质(例如,空气、绝缘介质)放电,尤其不包括该节点对其周围的电介质缓慢放电。
第一多个开关中的开关可以为场效应晶体管。第二多个开关中的开关可以为场效应晶体管。
优选的,延迟单元DL被构造成:在要将第二节点n2保持在第一逻辑状态的单个时钟周期T内,延迟单元DL通过延迟时钟信号CK使得第二节点n2在时钟信号CK翻转为第一逻辑状态之后处于被充电状态。
本领域技术人员能够理解,可以通过选择延迟单元的组成元件、组成元件的参数、数量等来调整延迟单元对时钟信号的延迟程度,从而实现合适的放电时间段的长度td。例如,延迟单元对时钟信号的延迟程度可以为 1皮秒或2皮秒。
本公开内容的用于锁存输入数据的电路适用于触发器,尤其适用于高速触发器。
对电路100,输入第二充放电控制单元CD2的控制信号为第一节点 n1的电位V1以及时钟延迟信号CKB,因此输入第二充放电控制单元CD2 的控制信号可以不包括时钟信号CK。
下面参照附图描述根据本公开内容的用于锁存输入数据的电路的示例性电路图。
图2是根据本公开内容的一个示例性实施例的用于锁存输入数据的电路200的示例性电路图。如图2中所示,电路200包括:第一充放电控制单元CDa1、延迟单元DL和第二充放电控制单元CDa2。电路200还可以包括:将输入数据D反相并输出反相信号DB的反相器INVDB、电源端子VDD和接地端子GND。
第一充放电控制单元CDa1包括第一节点n1和被电连接成通过切换第一节点n1的充放电状态来改变第一节点n1的电位V1的第一多个开关。例如,如果第一节点n1从放电状态切换至充电状态,则电位V1可以从低电位改变至高电位;如果第一节点n1从充电状态切换至放电状态,则电位V1可以从高电位改变至低电位。延迟单元DL用于接收时钟信号CK 并延迟时钟信号CK以输出时钟延迟信号CKB。第二充放电控制单元 CDa2包括第二节点n2和被电连接成通过切换第二节点n2的充放电状态来改变第二节点n2的电位V2的第二多个开关。例如,如果第二节点n2 从放电状态切换至充电状态,则电位V2可以从低电位改变至高电位;如果第二节点n2从充电状态切换至放电状态,则电位V2可以从高电位改变至低电位。第二充放电控制单元CDa2还包括输出反相信号q2的反相器 INVQ2和输出反相信号QB的反相器INVQB。第一充放电控制单元CDa1 被电连接成:第一充放电控制单元CDa1接收时钟信号CK和输入数据D 以切换第一节点n1的充放电状态。第二充放电控制单元CDa2被电连接成:第二节点n2的电位V2指示锁存的数据,并且第二充放电控制单元 CDa2电连接第一节点n1并接收延迟单元DL输出的时钟延迟信号CKB 以切换第二节点n2的充放电状态。延迟单元DL被构造成:在要将第二节点n2保持在第一逻辑状态(“1”)的单个时钟周期内,延迟单元DL通过延迟时钟信号CK使得第二节点n2在时钟信号CK翻转为第一逻辑状态之后处于放电状态的放电时间段的长度td在预定阈值Th与零之间。
第一充放电控制单元CDa1包括用于控制对第一节点n1进行的充电的第一开关单元SW1和用于控制对第一节点n1进行的放电的第二开关单元SW2。
第二充放电控制单元CDa2包括用于控制对第二节点n2进行的充电的第三开关单元SW3和用于控制对第二节点n2进行的放电的第四开关单元SW4。
第一开关单元SW1和第三开关单元SW3均与电源端子VDD电连接。第二开关单元SW2和第四开关单元SW4均与接地端子GND电连接。
第一充放电控制单元CDa1还包括第三节点n3、用于控制对第三节点 n3进行的充电的第五开关单元SW5和用于控制对第三节点n3进行的放电的第六开关单元SW6。
第四开关单元SW4包括第一开关S1、第二开关S2和第三开关S3。第一开关S1的控制端与第一节点n1电连接。第二开关S2的控制端与延迟单元DL的输出端电连接,即,第二开关S2的控制端接收时钟延迟信号CKB。第三开关S3被电连接成述第三开关S3的控制端接收第二节点n2的电位的反相信号q2。第一开关S1经由第二开关S2和第三开关S3 的并联结构与接地端子GND电连接。
第三开关单元SW3包括第四开关S4、第五开关S5和第六开关S6。第四开关S4被电连接成第四开关S4的控制端接收第二节点n2的电位的反相信号q2。第五开关S5的控制端与第一节点n1电连接。第六开关S6 的控制端被电连接成接收时钟延迟信号CKB。第四开关S4经由第六开关 S6电连接至第二节点n2。第六开关S6经由第四开关S4电连接至电源端子VDD。第五开关S5被电连接在电源端子VDD与第二节点n2之间。在本公开内容中,在要将第二节点保持在第一逻辑状态的单个时钟周期内,延迟单元通过延迟时钟信号使得:第四开关单元处于接通状态的接通时间段的长度在预定阈值与零之间,优选接通时间段的长度为零,即,第四开关单元处于断开状态。
第一开关单元SW1包括第七开关S7和第八开关S8。第七开关S7的控制端与第三节点n3电连接。第八开关S8被电连接成第八开关S8的控制端接收时钟信号CK。第七开关S7和第八开关S8被并联电连接在电源端子VDD与第一节点n1之间。
第二开关单元SW2包括第九开关S9、第十开关S10、第十一开关S11、第十二开关S12和第四节点n4。第九开关S9被电连接成第九开关S9的控制端接收输入数据D。第十开关S10被电连接成第十开关S10的控制端接收时钟信号CK。第十一开关S11的控制端与第三节点n3电连接。第四节点n4在第十开关S10与第十一开关S11的串联电连接路径上。第十二开关S12的控制端与第四节点n4电连接。第九开关S9、第十开关S10和第十一开关S11被串联电连接在第一节点n1与接地端子GND之间。第十二开关S12被电连接在第三节点n3与接地端子GND之间。
第六开关单元SW6包括第十五开关S15、第十六开关S16、第十七开关S17、第十八开关S18和第五节点n5。第十五开关S15被电连接成述第十五开关S15的控制端接收输入数据D的反相信号DB。第十六开关S16 被电连接成述第十六开关S16的控制端接收时钟信号CK。第十七开关S17 的控制端与第一节点n1电连接。第五节点n5在第十六开关S16与第十七开关S17的串联电连接路径上。第十八开关S18的控制端与第五节点n5 电连接。第十五开关S15、第十六开关S16和第十七开关S17被串联电连接在第三节点n3与接地端子GND之间。第十八开关S18被电连接在第一节点n1与接地端子GND之间。
第五开关单元SW5包括第十三开关S13和第十四开关S14。第十三开关S13的控制端与第一节点n1电连接。第十四开关S14被电连接成第十四开关S14的控制端接收时钟信号CK。第十三开关S13和第十四开关 S14被并联电连接在电源端子VDD与第三节点n3之间。
如图2中所示,第一开关S1、第二开关S2、第三开关S3、第九开关 S9、第十开关S10、第十一开关S11、第十二开关S12、第十五开关S15、第十六开关S16、第十七开关S17以及第十八开关S18示例性的可以由 NMOS(N型金属-氧化物-半导体)晶体管来实现。第四开关S4、第五开关S5、第六开关S6、第七开关S7、第八开关S8、第十三开关S13以及第十四开关S14示例性的可以由PMOS(P型金属-氧化物-半导体)晶体管来实现。
从上面的描述可知,第一开关单元SW1和第五开关单元SW5构成了预充电模块;第九开关、第十开关、第十五开关和第十六开关构成了差分输入级;并且第十一开关、第十二开关、第十七开关和第十八开关构成了锁存级。
下面对电路200写入第二逻辑状态(例如“0”,简称逻辑0)的工作方式进行描述。
当要写入逻辑0时,要输入数据D为0,即,D(n+1)=0,当前的第二节点n2的电位V2所代表的逻辑状态为第一逻辑状态(例如,逻辑1),电位V2的反相信号QB为逻辑0,即V2(n)=1,QB(n)=0。当时钟信号CK为逻辑0时,第一充放电控制单元CDa1中第十开关S10和第十六开关S16断开,第八开关S8和第十四开关S14导通,第一节点n1和第三节点n3被充电到高电平,从而第七开关S7和第十三开关S13断开;进而第十一开关S11和第十七开关S17在高电平的V3、V1的控制下导通,第四节点n4和第五节点n5被放电到逻辑0;在第二充放电控制单元CDa2 中,低电平的时钟信号CK经过延迟之后得到低电平的时钟延迟信号 CKB,从而第二开关S2断开而第六开关S6导通,同时高电平的电位V1 导致第一开关S1导通且第五开关S5断开,从而第四开关S4和第三开关 S3构成了一个反相电路,并且与反相器INVQ2组成了一个反馈回路,在低电平的反相信号q2作用下,第四开关S4导通,第二节点n2为高电平。当时钟信号CK跳变到逻辑1时,第一充放电控制单元CDa1中第十开关 S10和第十六开关S16导通,第八开关S8和第十四开关S14断开;由于反相信号DB为逻辑1,因而第十五开关S15导通,从而第三节点n3经过第十五开关S15、第十六开关S16、第十七开关S17对地放电并将第三节点n3的电位V3拉低到逻辑0;电位V3跳变到低电平后,第七开关S7 导通,从而第一节点n1的电位V1被保持在高电平;在第二充放电控制单元CDa2中,时钟延迟信号CKB在一段延迟之后也跳变到逻辑1,从而第二开关S2导通,第六开关S6关闭,由于高电平的V1已经开启第一开关 S1,所以第二节点n2经过第二开关S2和第一开关S1对地放电并将电位 V2拉低到逻辑0,经过反相器INVQB后,反相信号QB被成功写为1。
如上,当要将数据0写入到第二节点n2时,由于第一节点n1已经被时钟信号CK预充电到逻辑1,因而不需要数据0传输进来即可通过CK 上升沿将数据0写入到第二节点n2,因此第二节点n2的逻辑状态的建立时间得到优化。当某些关键路径上数据路径较长,而接收触发器使用的是传统触发器时,会导致建立时间不够。具有本公开内容的电路的触发器可解决这种时序问题,满足关键路径时序约束。
下面对电路200保持第二逻辑状态(例如,逻辑0)的工作方式进行描述。
当要保持逻辑0时,要输入数据D为0,即,D(n+1)=0,当前的第二节点n2的电位V2所代表的逻辑状态为第二逻辑状态(例如,逻辑0),电位V2的反相信号QB为逻辑1,即V2(n)=0,QB(n)=1。当时钟信号CK为逻辑0时,第一充放电控制单元CDa1中第十开关S10和第十六开关S16断开,第八开关S8和第十四开关S14导通,第一节点n1和第三节点n3被充电到高电平,从而第七开关S7和第十三开关S13断开;进而第十一开关S11和第十七开关S17在高电平的V3、V1的控制下导通,第四节点n4和第五节点n5被放电到逻辑0;在第二充放电控制单元CDa2 中,低电平的时钟信号CK经过延迟之后得到低电平的时钟延迟信号 CKB,从而第二开关S2断开而第六开关S6导通,同时高电平的电位V1 导致第一开关S1导通且第五开关S5断开,从而第四开关S4和第三开关 S3构成了一个反相电路,并且与反相器INVQ2组成了一个反馈回路,高电平的反相信号q2导致第三开关S3导通,第二节点n2为低电平。当时钟信号CK跳变到逻辑1时,第一充放电控制单元CDa1中第十开关S10 和第十六开关S16导通,第八开关S8和第十四开关S14断开;由于反相信号DB为逻辑1,因而第十五开关S15导通,从而第三节点n3经过第十五开关S15、第十六开关S16、第十七开关S17对地放电并将第三节点n3的电位V3拉低到逻辑0;电位V3跳变到低电平后,第七开关S7导通,从而第一节点n1的电位V1被保持在高电平;在第二充放电控制单元CDa2 中,时钟延迟信号CKB在一段延迟之后也跳变到逻辑1,从而第二开关 S2导通,第六开关S6关闭,由于电位V1与反相信号q2均为高电平,第一开关S1和第三开关S3导通,所以第二节点n2经过第一开关S1、第二开关S2和第三开关S3和对地放电并将电位V2保持低电平,经过反相器 INVQB后,反相信号QB保持逻辑1。
下面对电路200写入第一逻辑状态(例如,逻辑1)的工作方式进行描述。
当要写入逻辑1时,要输入数据D为1,即,D(n+1)=1,当前的第二节点n2的电位V2所代表的逻辑状态为第二逻辑状态(例如,逻辑0),电位V2的反相信号QB为逻辑1,即V2(n)=0,QB(n)=1。当时钟信号CK为逻辑0时,第一充放电控制单元CDa1中第十开关S10和第十六开关S16断开,第八开关S8和第十四开关S14导通,第一节点n1和第三节点n3被充电到高电平,从而第七开关S7和第十三开关S13断开;进而第十一开关S11和第十七开关S17在高电平的V3、V1的控制下导通,第四节点n4和第五节点n5被放电到逻辑0;在第二充放电控制单元CDa2 中,低电平的时钟信号CK经过延迟之后得到低电平的时钟延迟信号 CKB,从而第二开关S2断开而第六开关S6导通,同时高电平的电位V1 导致第一开关S1导通且第五开关S5断开,从而第四开关S4和第三开关 S3构成了一个反相电路,并且与反相器INVQ2组成了一个反馈回路,高电平的反相信号q2使第三开关S3导通,第二节点n2为低电平。当时钟信号CK跳变到逻辑1时,第一充放电控制单元CDa1中第十开关S10和第十六开关S16导通,第八开关S8和第十四开关S14断开;由于输入数据D为逻辑1,因而第九开关S9导通,从而第一节点n1经过第九开关 S9、第十开关S10、第十一开关S11对地放电并将第一节点n1的电位V1 拉低到逻辑0;电位V1跳变到低电平后,第十三开关S13导通,从而第三节点n3的电位V3被保持在高电平;在第二充放电控制单元CDa2中,时钟延迟信号CKB在一段延迟之后也跳变到逻辑1,从而第二开关S2导通,第六开关S6关闭,由于电位V1为低电平,第一开关S1断开,第五开关S5导通,所以第二节点n2经由第五开关S5充电并将电位V2拉升到逻辑1,经过反相器INVQB后,反相信号QB被成功写为0。
下面对电路200保持第一逻辑状态(例如,逻辑1)的工作方式进行描述。
当要保持逻辑1时,当前第二节点n2为逻辑1状态,要输入数据D 为1,即,D(n+1)=1(如图3中V(D)波形示出的,输入数据D在单个时钟周期T期间从低电平变为高电平并保持一段时间,时钟信号CK在时刻 t0至t1之间发生状态翻转),当前的第二节点n2的电位V2所代表的逻辑状态为第一逻辑状态(例如,逻辑1),电位V2的反相信号QB为逻辑0,即V2(n)=1,QB(n)=0。当时钟信号CK为逻辑0时(参见图3中 V(CK)波形在t0时刻之前的部分),第一充放电控制单元CDa1中第十开关S10和第十六开关S16断开,第八开关S8和第十四开关S14导通,第一节点n1和第三节点n3被充电到高电平(在时刻t0之前,图3中V1、 V3波形为高电平),从而第七开关S7和第十三开关S13断开;进而第十一开关S11和第十七开关S17在高电平的V3、V1的控制下导通,第四节点n4和第五节点n5被放电到逻辑0;在第二充放电控制单元CDa2中,低电平的时钟信号CK经过延迟之后得到低电平的时钟延迟信号CKB(参见图3中V(CK)波形在t0时刻之前的部分,图3中的带箭头的线段示例性示出了延迟单元DL延迟时钟信号CK的程度),从而第二开关S2断开而第六开关S6导通,同时高电平的电位V1导致第一开关S1导通且第五开关S5断开,低电平的反相信号q2导致第三开关S3断开且第四开关S4 导通,因此第二节点n2的电位V2为高电平(参见图3中V2波形的时刻 t0之前部分)。当时钟信号CK跳变到逻辑1时(参见图3中V(CK)波形在t1时刻之后的部分),第一充放电控制单元CDa1中第十开关S10和第十六开关S16导通,第八开关S8和第十四开关S14断开;由于输入数据 D为逻辑1,因而第九开关S9导通,从而第一节点n1经过第九开关S9、第十开关S10、第十一开关S11对地放电并将第一节点n1的电位V1拉低到逻辑0(参见图3中V1波形时刻t2之后的部分及时刻t3之后的部分);电位V1跳变到低电平后,第十三开关S13导通,从而第三节点n3的电位V3被保持在高电平(参见图3中V3波形的时刻t3之后的部分);在第二充放电控制单元CDa2中,由于时钟信号CK跳变到逻辑1时,时钟延迟信号CKB还保持为低电平(参见图3中V(CK)波形的时刻t2之前的部分),从而第二开关S2保持断开,因此,从第二节点n2经由第一开关 S1和第二开关S2至接地端子GND的路径是断开的,不会形成导电的放电路径,同时第三开关S3保持断开,所以第二节点n2的电位V2保持高电平(参见图3中V2波形的时刻t2之前的部分);在一段延迟后,时钟延迟信号CKB也跳变到逻辑1(参见图3中V(CK)波形的时刻t3之后的部分),第二开关S2导通,第六开关S6断开,而此时第一节点n1的电位V1也已正确降低到低电平(参见图3中V1波形的时刻t3之后的部分),所以第一开关S1断开,第五开关S5导通,因此,从第二节点n2经由第一开关S1和第二开关S2至接地端子GND的路径也是断开的,不会形成导通的放电路径,同时第三开关S3保持断开,所以第二节点n2的电位 V2依然保持高电平,经过反相器INVQB后,反相信号QB保持逻辑0。
虽然在图3波形中,在输入数据D保持在第一逻辑状态(“1”)的单个时钟周期内,延迟单元DL通过延迟时钟信号CK使得第二节点n2在时钟信号CK翻转为第一逻辑状态之后处于放电状态的放电时间段的长度td 为零,但是,本公开内容不限于放电时间段的长度td为零,可以调节延迟的程度,使放电时间段的长度td在预定阈值Th与零之间。
表1使用延迟单元前后峰值电流仿真结果的比较
发明人经研究发现,如果不使用延迟单元,第二充放电控制单元中的控制信号CKB均替换为时钟信号CK,则电路(参见表1,为了和本公开内容的电路200区别,称为“对比电路”)的性能总体是下降的,并且在输入保持1期间,第二节点虽然最终会处于充电状态,但在充电状态之前会经历一段放电时间段,该放电时间段的出现会导致大的翻转电流、电流损耗、IR压降、降低包含该对比电路的触发器的使用密度。表1是不使用延迟单元的电路与使用延迟单元的电路200峰值电流仿真结果的比较,即使用延迟单元前后峰值电流仿真结果的比较。表2是不使用延迟单元的对比电路与使用延迟单元的电路情况下,写0建立时间仿真结果的比较,即使用延迟单元前后写0建立时间仿真结果的比较。表1、2表明使用了延迟单元以后,输入保持1时的峰值电流得到改善,降低了接近30%,同时原有电路的优点(即,写入0时建立时间很小)牺牲较小。建立时间是指:从时钟沿(例如时钟信号的上升沿)对应的第一时刻到数据到来时的第二时刻的时间段。如果建立时间为正,则表示第一时刻在第二时刻之前,其中,以时间增大方向为前方。表2中,建立时间中的负号表示,在所涉及的两种电路中,第二时刻在第一时刻之前。
表2使用延迟单元前后写0建立时间的比较
建立时间(皮秒) | 写0 |
对比电路 | -4 |
电路200 | -3 |
可以预期,如果根据本公开内容的电路的放电时间段的长度td不是零,而是大于零或接近零,相对于放电时间段的长度td为零的情况,峰值电流会增大,但是由于使用了延迟单元,峰值电流还是会小于未使用延迟单元的情况下的峰值电流。放宽放电时间段的长度td的范围,有利于实际生产,降低生产成本、提高产品合格率。
下面描述本公开内容的一些与电路200相关的相关电路。相关电路包括电路400、电路500及电路600。电路100及这些相关电路也能实现上述技术效果。
图4是根据本公开内容的一个示例性实施例的用于锁存输入数据D 的电路400的示例性电路图。如图4中所示,电路400与电路200基本相同,故相同的部分不再赘述。在图4中,延迟单元被示出为包括缓冲器的缓冲器型延迟单元DLb。该缓冲器可以被构造成两级级联的反相器。
图5是根据本公开内容的一个示例性实施例的用于锁存输入数据D 的电路500的示例性电路图。如图5中所示,电路500与电路200基本相同,故相同的部分不再赘述。在图5中,延迟单元DL被示出为包括传输门的传输门型延迟单元DLt。
在本公开内容中,为了实现延迟单元,延迟单元例如可以包括缓冲器和传输门中的至少一个。
图6是根据本公开内容的另一个示例性实施例的用于锁存输入数据D 的电路600的示例性电路图。相对于电路200,电路600对电路200中的第二开关单元SW2和第六开关单元SW6进行了修改,相应的将图6中的第一充放电控制单元标记为CDb1。参见图6,电路600新增加了第十九开关S19、第二十开关S20、第二十一开关S21、第二十二开关S22、第二十三开关S23、第二十四开关S24、反相器INVD和反相器INVS,其中,第九开关S9、第十九开关S19、第二十开关S20和第二十一开关S21构成了第一扫描子单元,第十五开关S15、第二十二开关S22、第二十三开关 S23和第二十四开关S24构成了第二扫描子单元,反相器INVD将扫描输入信号SDI反相后输出反相信号SDIB,并且反相器INVS将扫描使能信号SE反相后输出反相信号SEN。第十九开关S19的控制端接收输入数据D。第九开关S9的控制端接收扫描输入信号SDI。第二十开关S20的控制端接收扫描使能信号SE。第二十一开关S21的控制端接收反相信号SEN。第二十二开关S22的控制端接收反相信号SDIB。第二十三开关S23的控制端接收扫描使能信号SE。第二十四开关S24的控制端接收反相信号 SEN。第二十开关S20与第十开关S10串联电连接,第六节点n6在前述两个开关的串联电连接路径上。第二十三开关S23与第十六开关S16串联电连接,第七节点n7在前述两个开关的串联电连接路径上。第九开关S9 与第二十开关S20串联电连接在第一节点n1与第六节点n6之间。第十九开关S19与第二十一开关S21也串联电连接在第一节点n1与第六节点n6 之间。第十五开关S15与第二十三开关S23串联电连接在第三节点n3与第七节点n7之间。第二十二开关S22与第二十四开关S24也串联电连接在第三节点n3与第七节点n7之间。这种配置能够实现数据选择的功能:当SE=1时,选择信号SDI,即V1的值反映SDI的值,当SE=0时,V1 的值反映输入数据D的值。通过上述修改,电路600拥有扫描功能。
从上述描述可知,对电路200、400、500、600中的第二充放电控制单元CDa2而言,其中的开关使用的控制信号并不包括时钟信号CK,而是包括时钟延迟信号CKB。可见,根据本公开内容,第二充放电控制单元的开关使用的与时钟信号有关的控制信号可以是时钟延迟信号,而不是时钟信号,其中,设置该时钟延迟信号的延迟程度,使得在要将第二节点 n2保持在第一逻辑状态的单个时钟周期内,第二节点在时钟信号翻转为第一逻辑状态之后处于放电状态的放电时间段的长度在预定阈值与零之间。
本公开内容还提供一种具有锁存能力的芯片。该芯片包括上述本公开内容的用于锁存输入数据的电路。具体而言,该芯片包括衬底和布置在衬底上的根据本公开内容的用于锁存输入数据的电路。本公开内容的芯片尤其适用于高速芯片。
本公开内容还提供一种包括上述芯片的电子产品,该电子产品包括:手机、计算机、数码摄像机、电视机、数码相机、机顶盒、路由器以及音响中的一个。
本公开内容还提供一种使用本公开内容的用于锁存输入数据的电路锁存输入数据的方法。下面参照图7对该方法进行描述。
图7是根据本公开内容的一个示例性实施例的锁存输入数据的方法 700的流程图。方法700使用根据本公开内容的用于锁存输入数据的电路,该电路例如为电路100、300、400、500或600。
在步骤701处,输入为逻辑1的输入数据。具体为向该电路输入为逻辑1的输入数据。
在步骤703处,在要将第二节点保持在第一逻辑状态的单个时钟周期内,延迟时钟信号使得第二节点在时钟信号翻转为第一逻辑状态之后处于放电状态的放电时间段的长度td在预定阈值Th与零之间。延迟时钟信号可以由延迟单元来执行。
在一个实施例中,方法700还包括:在要将第二节点n2保持在第一逻辑状态的单个周期内,在时钟延迟信号为逻辑0的情况下,经由第二第二多个开关中的部分开关对第二节点n2进行充电。在图2所示的电路200 中,前述部分开关包括第四开关S4和第六开关S6。
本领域技术人员能够理解,根据本公开内容的电路的具体结构并不限于电路100、300、400、500或600。本领域技术人员有能力设计出更多的满足本公开内容的构思的变形电路。例如:为了增强电路的可靠性、鲁棒性,可以将所使用的一个由控制信号Sc控制的开关替换为均由控制信号Sc控制的串联或并联的两个或更多个开关;将电路300、400、500或600中的MOS晶体管的类型对调,并适应性调整电路的其他配置,同样可以实现本公开内容的效果。
根据上面对本公开内容的具体实施例的描述,本领域技术人员能够理解,本公开内容的电路、芯片、电子产品和方法至少能实现如下效果之一:优化状态建立时间、降低触发器在保持高电位逻辑状态下的峰值电流、改善触发器的IR压降、提高触发器的使用密度和提高芯片的运行速度。
应该理解,术语“包括”在本文使用时指特征、整件、步骤或组件的存在,但并不排除一个或多个其他特征、整件、步骤或组件的存在或附加。
应该理解,在不偏离本公开内容的精神的情况下,针对一个实施例描述和/或示出的特征可以以相同或类似的方式在一个或多个其他实施例中使用,与其他实施例中的特征相组合,或替代其他实施例中的特征。
此外,本公开内容的方法不限于按照说明书中描述的时间顺序来执行,如果从原理上说可行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本公开内容的范围构成限制。
以上结合具体的实施例对本公开内容进行了描述,但本领域技术人员应该清楚,这些描述都是示例性的,并不是对本公开内容的保护范围的限制。本领域技术人员可以根据本公开内容的精神和原理对本公开内容做出各种变型和修改,这些变型和修改也在本公开内容的范围内。
Claims (18)
1.一种使用用于锁存输入数据的电路锁存所述输入数据的方法,包括:
向所述电路输入为第一逻辑状态的所述输入数据;以及
在要将第二节点保持在所述第一逻辑状态的单个时钟周期内,由延迟单元延迟时钟信号使得所述第二节点在所述时钟信号翻转为所述第一逻辑状态之后处于放电状态的放电时间段的长度在预定阈值与零之间;
其中,所述电路包括:
第一充放电控制单元,包括第一节点和被电连接成通过对第一节点充电或放电来改变所述第一节点的电位的第一多个开关;
所述延迟单元,用于接收所述时钟信号并延迟所述时钟信号以输出时钟延迟信号;以及
第二充放电控制单元,包括第二节点和被电连接成通过对第二节点充电或放电来改变所述第二节点的电位的第二多个开关;
所述第一充放电控制单元被电连接成:所述第一充放电控制单元接收所述时钟信号和所述输入数据以切换所述第一节点的充放电状态;并且
所述第二充放电控制单元被电连接成:所述第二节点的电位指示锁存的数据,并且所述第二充放电控制单元电连接所述第一节点并接收所述时钟延迟信号和以切换所述第二节点的充放电状态;
所述方法还包括:在要将所述第二节点保持在所述第一逻辑状态的所述单个时钟周期内,在所述时钟延迟信号为第二逻辑状态的情况下,经由所述第二多个开关中的部分开关对所述第二节点进行充电。
2.一种用于锁存输入数据的电路,包括:
第一充放电控制单元,包括第一节点和被电连接成通过切换第一节点的充放电状态来改变所述第一节点的电位的第一多个开关;
延迟单元,用于接收时钟信号并延迟所述时钟信号以输出时钟延迟信号;以及
第二充放电控制单元,包括第二节点和被电连接成通过切换第二节点的充放电状态来改变所述第二节点的电位的第二多个开关;
其中,所述第一充放电控制单元被电连接成:所述第一充放电控制单元接收所述时钟信号和所述输入数据以切换所述第一节点的充放电状态;
所述第二充放电控制单元被电连接成:所述第二节点的电位指示锁存的数据,并且所述第二充放电控制单元电连接所述第一节点并接收所述时钟延迟信号和以切换所述第二节点的充放电状态;并且
所述延迟单元被构造成:在要将所述第二节点保持在第一逻辑状态的单个时钟周期内,由所述延迟单元延迟所述时钟信号使得所述第二节点在所述时钟信号翻转为所述第一逻辑状态之后处于放电状态的放电时间段的长度在预定阈值与零之间;
其中,所述延迟单元被构造成:在要将所述第二节点保持在所述第一逻辑状态的所述单个时钟周期内,所述延迟单元通过延迟所述时钟信号使得所述第二节点在所述时钟信号翻转为所述第一逻辑状态之后处于被充电状态。
3.根据权利要求2所述的电路,其中,所述预定阈值小于表示所述时钟信号的状态翻转所用的时间的翻转时间。
4.根据权利要求2所述的电路,其中,所述第一充放电控制单元包括用于控制对所述第一节点进行的充电的第一开关单元和用于控制对所述第一节点进行的放电的第二开关单元。
5.根据权利要求4所述的电路,其中,所述第二充放电控制单元包括用于控制对所述第二节点进行的充电的第三开关单元和用于控制对所述第二节点进行的放电的第四开关单元。
6.根据权利要求5所述的电路,其中,所述延迟单元被构造成:在要将所述第二节点保持在所述第一逻辑状态的所述单个时钟周期内,所述延迟单元通过延迟所述时钟信号使得所述第四开关单元处于断开状态。
7.根据权利要求5所述的电路,还包括电源端子和接地端子;
其中,所述第一开关单元和所述第三开关单元中的每个与所述电源端子电连接;并且
所述第二开关单元和所述第四开关单元中的每个与所述接地端子电连接。
8.根据权利要求7所述的电路,其中,所述第一充放电控制单元还包括第三节点、用于控制对所述第三节点进行的充电的第五开关单元和用于控制对所述第三节点进行的放电的第六开关单元。
9.根据权利要求7所述的电路,其中,所述第四开关单元包括所述第二多个开关中的第一开关、第二开关和第三开关;
所述第一开关的控制端与所述第一节点电连接;
所述第二开关的控制端与所述延迟单元的输出端电连接;
所述第三开关被电连接成述第三开关的控制端接收所述第二节点的电位的反相信号;并且
所述第一开关经由所述第二开关和所述第三开关的并联结构与所述接地端子电连接。
10.根据权利要求7所述的电路,其中,所述第三开关单元包括所述第二多个开关中的第四开关、第五开关和第六开关;
所述第四开关被电连接成所述第四开关的控制端接收所述第二节点的电位的反相信号;
所述第五开关的控制端与所述第一节点电连接;
所述第六开关的控制端与所述延迟单元的输出端电连接;
所述第四开关经由所述第六开关电连接至所述第二节点;
所述第六开关经由所述第四开关电连接至所述电源端子;并且
所述第五开关被电连接在所述电源端子与所述第二节点之间。
11.根据权利要求8所述的电路,其中,所述第一开关单元包括所述第一多个开关中的第七开关和第八开关;
所述第七开关的控制端与所述第三节点电连接;
所述第八开关被电连接成所述第八开关的控制端接收所述时钟信号;并且
所述第七开关和所述第八开关被并联电连接在所述电源端子与所述第一节点之间。
12.根据权利要求8所述的电路,其中,所述第二开关单元包括所述第一多个开关中的第九开关、第十开关、第十一开关、第十二开关和第四节点:
所述第九开关被电连接成所述第九开关的控制端接收所述输入数据;
所述第十开关被电连接成所述第十开关的控制端接收所述时钟信号;
所述第十一开关的控制端与所述第三节点电连接;
所述第四节点在所述第十开关与所述第十一开关的串联电连接路径上;
所述第十二开关的控制端与所述第四节点电连接;
所述第九开关、所述第十开关和所述第十一开关被串联电连接在所述第一节点与所述接地端子之间;并且
所述第十二开关被电连接在所述第三节点与所述接地端子之间。
13.根据权利要求8所述的电路,其中,所述第六开关单元包括所述第一多个开关中的第十五开关、第十六开关、第十七开关、第十八开关和第五节点;
所述第十五开关被电连接成述第十五开关的控制端接收所述输入数据的反相信号;
所述第十六开关被电连接成述第十六开关的控制端接收所述时钟信号;
所述第十七开关的控制端与所述第一节点电连接;
所述第五节点在所述第十六开关与所述第十七开关的串联电连接路径上;
所述第十八开关的控制端与所述第五节点电连接;
所述第十五开关、所述第十六开关和所述第十七开关被串联电连接在所述第三节点与所述接地端子之间;并且
所述第十八开关被电连接在所述第一节点与所述接地端子之间。
14.根据权利要求8所述的电路,其中,所述第五开关单元包括所述第一多个开关中的第十三开关和第十四开关;
所述第十三开关的控制端与所述第一节点电连接;
所述第十四开关被电连接成所述第十四开关的控制端接收所述时钟信号;并且
所述第十三开关和所述第十四开关被并联电连接在所述电源端子与所述第三节点之间。
15.根据权利要求2所述的电路,其中,所述延迟单元包括缓冲器和传输门中的至少一个。
16.根据权利要求8所述的电路,其中,所述第二开关单元包括用于实现扫描的第一扫描子单元,并且所述第六开关单元包括用于实现扫描的第二扫描子单元。
17.一种具有锁存能力的芯片,包括权利要求2至16中的任一项所述的电路。
18.一种包括权利要求17所述的芯片的电子产品,所述电子产品包括手机、计算机、数字摄像机、电视机、数码相机、机顶盒、路由器以及音响中的一个。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811649584.XA CN109743041B (zh) | 2018-12-30 | 2018-12-30 | 锁存输入数据的电路、芯片、电子产品及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811649584.XA CN109743041B (zh) | 2018-12-30 | 2018-12-30 | 锁存输入数据的电路、芯片、电子产品及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109743041A CN109743041A (zh) | 2019-05-10 |
CN109743041B true CN109743041B (zh) | 2021-08-06 |
Family
ID=66362943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811649584.XA Active CN109743041B (zh) | 2018-12-30 | 2018-12-30 | 锁存输入数据的电路、芯片、电子产品及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109743041B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111142940B (zh) * | 2019-12-23 | 2023-06-30 | 成都海光微电子技术有限公司 | 处理器与软件的适配方法、装置、处理器、芯片和设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1679237A (zh) * | 2002-09-03 | 2005-10-05 | 加利福尼亚大学董事会 | 用于减小功耗的事件驱动动态逻辑 |
CN1694356A (zh) * | 2004-04-29 | 2005-11-09 | 三星电子株式会社 | 多阈值电压互补金属氧化物半导体触发器及其电路及方法 |
CN101079614A (zh) * | 2007-06-18 | 2007-11-28 | 清华大学 | 低功耗低时钟摆幅d触发器 |
JP2015143643A (ja) * | 2014-01-31 | 2015-08-06 | アンリツ株式会社 | 信号解析装置および信号解析方法 |
-
2018
- 2018-12-30 CN CN201811649584.XA patent/CN109743041B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1679237A (zh) * | 2002-09-03 | 2005-10-05 | 加利福尼亚大学董事会 | 用于减小功耗的事件驱动动态逻辑 |
CN1694356A (zh) * | 2004-04-29 | 2005-11-09 | 三星电子株式会社 | 多阈值电压互补金属氧化物半导体触发器及其电路及方法 |
CN101079614A (zh) * | 2007-06-18 | 2007-11-28 | 清华大学 | 低功耗低时钟摆幅d触发器 |
JP2015143643A (ja) * | 2014-01-31 | 2015-08-06 | アンリツ株式会社 | 信号解析装置および信号解析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109743041A (zh) | 2019-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7355446B2 (en) | Voltage conversion circuit with stable transition delay characteristic | |
CN109309496B (zh) | 时钟电路及其操作方法 | |
US7973560B2 (en) | Level shifter | |
US8917131B2 (en) | Slew rate modulation | |
JP3935925B2 (ja) | 出力バッファ回路 | |
US20080074151A1 (en) | Dual-edge-triggered, clock-gated logic circuit and method | |
US7440534B2 (en) | Master-slave flip-flop, trigger flip-flop and counter | |
CN102907000A (zh) | 具有平衡的转变时间的用于差分信号的电平移位器 | |
US6278310B1 (en) | Semiconductor buffer circuit with a transition delay circuit | |
JP2004056428A (ja) | バッファ回路とバッファツリー及び半導体装置 | |
JPH05276016A (ja) | ランダム論理適用のための動的レイショレス・サーキットリー | |
JP2004328443A (ja) | 半導体装置 | |
CN109743041B (zh) | 锁存输入数据的电路、芯片、电子产品及方法 | |
US10355672B2 (en) | Semiconductor device with power gating scheme | |
US11258432B1 (en) | Deglitcher circuit with integrated non-overlap function | |
US7528630B2 (en) | High speed flip-flop | |
US9947388B2 (en) | Reduced swing bit-line apparatus and method | |
JP3563377B2 (ja) | フリップフロップ回路 | |
US20230110352A1 (en) | Clock gating circuit and method of operating the same | |
US12015408B2 (en) | Flip flop including serial stack structure transistors | |
US8558595B2 (en) | Semiconductor integrated circuit device | |
US7164293B2 (en) | Dynamic latch having integral logic function and method therefor | |
CN116248111A (zh) | 时钟门控单元 | |
US7961009B2 (en) | Domino logic block having data holding function and domino logic including the domino logic block | |
CN210380808U (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 |