CN116959519B - 存储设备、包含该存储设备的片上系统和计算装置 - Google Patents
存储设备、包含该存储设备的片上系统和计算装置 Download PDFInfo
- Publication number
- CN116959519B CN116959519B CN202311212878.7A CN202311212878A CN116959519B CN 116959519 B CN116959519 B CN 116959519B CN 202311212878 A CN202311212878 A CN 202311212878A CN 116959519 B CN116959519 B CN 116959519B
- Authority
- CN
- China
- Prior art keywords
- clock gating
- latch
- clock
- unit
- cells
- 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
- 230000000630 rising effect Effects 0.000 claims description 12
- 230000003111 delayed effect Effects 0.000 claims description 10
- 239000000872 buffer Substances 0.000 claims description 4
- 230000001960 triggered effect Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 14
- 238000000034 method Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000005406 washing Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001035 drying Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
Landscapes
- Static Random-Access Memory (AREA)
Abstract
本公开涉及存储设备、包含该存储设备的片上系统和计算装置。一种存储设备包括存储模块和时钟门控模块。存储模块包括各自被分配有地址的多个锁存器单元,每个锁存器单元的输入端用于接收写入数据。时钟门控模块包括第一级时钟门控单元和耦接在多个锁存器单元与第一级时钟门控单元之间的第二级时钟门控单元。第一级时钟门控单元接收输入时钟信号和基于写地址的第一地址译码的使能信号并向第二级时钟门控单元中的相应时钟门控单元输出使能时钟信号。第二级时钟门控单元接收第一级时钟门控单元中的相应时钟门控单元输出的使能时钟信号和基于写地址的第二地址译码的使能信号并向相应锁存器单元输出使能时钟信号。
Description
技术领域
本公开涉及集成电路技术领域,并且更具体地,涉及一种存储设备、包含该存储设备的片上系统和计算装置。
背景技术
图1示意性地示出了以锁存器为存储单元的锁存器(latch)存储阵列,其尺寸可用位宽n和深度m来表示。n位(bit)的位宽限定锁存器存储阵列的一个存储单元为n位,也即每次写入数据宽度为n位、每次读出数据宽度为n位。深度m限定锁存器存储阵列中包括的n位存储单元的数量。可向锁存器存储阵列中的每个存储单元分配地址,例如如图1所示的地址0、1、2、……、(m-1)。在执行写操作时,可根据写地址进行地址译码以将数据写入到锁存器存储阵列中的对应存储单元。在执行读操作时,可根据读地址进行地址译码以将锁存器存储阵列中的对应存储单元所存储的数据读出。
发明内容
根据本公开的第一方面,提供了一种存储设备,包括存储模块和时钟门控模块。存储模块包括各自被分配有地址的多个锁存器单元。所述多个锁存器单元中的每个锁存器单元的输入端被配置为接收写入数据。时钟门控模块包括第一级时钟门控单元以及耦接在所述多个锁存器单元与所述第一级时钟门控单元之间的第二级时钟门控单元。所述第一级时钟门控单元中的每个时钟门控单元被配置为接收输入时钟信号和基于写地址的第一地址译码得到的使能信号,并向所述第二级时钟门控单元中的相应时钟门控单元输出使能时钟信号。所述第二级时钟门控单元中的每个时钟门控单元被配置为接收所述第一级时钟门控单元中的相应时钟门控单元输出的使能时钟信号和基于所述写地址的第二地址译码得到的使能信号,并向所述多个锁存器单元中的相应锁存器单元输出使能时钟信号。
在一些实施例中,所述时钟门控模块还包括耦接在所述第一级时钟门控单元与所述第二级时钟门控单元之间的一级或多级时钟门控单元。所述一级或多级时钟门控单元中的每一级时钟门控单元中的每个时钟门控单元被配置为接收所述一级或多级时钟门控单元中的上一级时钟门控单元中的相应时钟门控单元输出的使能时钟信号和基于写地址的相应地址译码得到的使能信号,并向所述一级或多级时钟门控单元中的下一级时钟门控单元中的相应时钟门控单元输出使能时钟信号。在这样的实施例中,所述第一级时钟门控单元中的每个时钟门控单元被配置为接收输入时钟信号和基于写地址的第一地址译码得到的使能信号并向所述一级或多级时钟门控单元中的最上一级时钟门控单元中的相应时钟门控单元输出使能时钟信号,以及所述第二级时钟门控单元中的每个时钟门控单元被配置为接收所述一级或多级时钟门控单元中的最下一级时钟门控单元中的相应时钟门控单元输出的使能时钟信号和基于所述写地址的第二地址译码得到的使能信号并向所述多个锁存器单元中的相应锁存器单元输出使能时钟信号。
在一些实施例中,所述多个锁存器单元被分层次地分组,所述多个锁存器单元在每一层次分组得到的组是通过对所述多个锁存器单元在上一层次分组得到的组的进一步划分得到的。所述时钟门控模块所包括的时钟门控单元的级数可对应于所述多个锁存器单元的分组的层次数。所述时钟门控模块中的每级时钟门控单元中包括的时钟门控单元的数量可对应于所述多个锁存器单元在相应层次分组得到的组数。
在一些实施例中,所述时钟门控模块中的每级时钟门控单元中的每个时钟门控单元所接收的使能信号是基于所述写地址的对应于相应层次的地址译码得到的。
在一些实施例中,所述多个锁存器单元中的每个锁存器单元的地址包括对应于不同层次的不同部分。在一些实施例中,在同一层次的同一组内的锁存器单元的地址具有相同部分。
在一些实施例中,地址为二进制的。在一些实施例中,写地址的对应于每个层次的地址译码与写地址的相应若干位相关联。在一些实施例中,所述相应若干位的位数由所述多个锁存器单元在该层次分组得到的组数与所述多个锁存器单元在上一层次分组得到的组数之比的二进制表示的位数决定。
在一些实施例中,所述第一级时钟门控单元中的每个时钟门控单元经由所述时钟门控模块中的其他级时钟门控单元与所述多个锁存器单元在第一层次分组得到的相应一组锁存器单元耦接,以及所述第二级时钟门控单元中的每个时钟门控单元与所述多个锁存器单元在低于所述第一层次的第二层次分组得到的相应一组锁存器单元耦接。
在一些实施例中,所述存储模块还包括附加锁存器单元和附加时钟门控单元。所述附加锁存器单元被分配有地址并且其输入端被配置为接收所述写入数据。所述附加时钟门控单元与所述附加锁存器单元耦接,并且被配置为接收所述输入时钟信号和基于所述写地址的地址译码得到的使能信号并向所述附加锁存器单元输出使能时钟信号。
在一些实施例中,存储设备还包括触发器单元和时钟源单元。所述触发器单元被配置为基于所接收的时钟信号向所述存储模块输出所述写入数据。所述时钟源单元分别与所述触发器单元和所述时钟门控模块耦接,并且被配置为提供所述输入时钟信号。在一些实施例中,存储设备还包括时钟延迟单元,其耦接在所述时钟源单元与所述触发器单元之间,并且被配置为接收所述输入时钟信号并基于所述存储模块中的对应于所述写地址的锁存器单元所接收的使能时钟信号相对于所述输入时钟信号的延迟而使所述输入时钟信号延迟,并向所述触发器单元输出经延迟的所述输入时钟信号。在一些实施例中,所述时钟延迟单元包括以下中的一个或多个:时钟缓冲器;反相器。在一些实施例中,所述触发器单元是上升沿触发的,所述经延迟的所述输入时钟信号的上升沿相比于所述输入时钟信号的上升沿更接近所述存储模块中的对应于所述写地址的锁存器单元所接收的使能时钟信号的上升沿。在一些实施例中,所述触发器单元是下降沿触发的,所述经延迟的所述输入时钟信号的下降沿相比于所述输入时钟信号的下降沿更接近所述存储模块中的对应于所述写地址的锁存器单元所接收的使能时钟信号的下降沿。
根据本公开的第二方面,提供了一种片上系统,包括根据本公开的第一方面所述的存储设备。
根据本公开的第三方面,提供了一种计算装置,包括根据本公开的第二方面所述的片上系统。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得更为清楚。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1示出了以锁存器为存储单元的锁存器存储阵列;
图2示出了一种逻辑门电路;
图3示出了根据本公开的一些比较示例的存储设备的电路图;
图4示出了根据本公开的一些实施例的存储设备的电路图;
图5示出了根据本公开的一些实施例的时钟门控单元的电路图;
图6示出了图5的时钟门控单元的各信号的示例波形图;
图7示出了根据本公开的一些实施例的时钟门控单元的电路图;
图8示出了图7的时钟门控单元的各信号的示例波形图;
图9示出了根据本公开的一些实施例的时钟门控单元的电路图;
图10示出了根据本公开的一些实施例的存储设备的电路图;
图11示出了根据本公开的一些实施例的时钟门控模块的电路图;
图12示出了根据本公开的一些实施例的存储设备的电路图;
图13示出了根据本公开的一些实施例的存储设备的示意框图;
图14示出了图13的存储设备的一些信号的示例波形图。
注意,在以下说明的实施方式中,有时在不同的附图之间共同使用同一附图标记来表示相同部分或具有相同功能的部分,而省略其重复说明。在本说明书中,使用相似的标号和字母表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
为了便于理解,在附图等中所示的各结构的位置、尺寸及范围等有时不表示实际的位置、尺寸及范围等。因此,所公开的发明并不限于附图等所公开的位置、尺寸及范围等。此外,附图不必按比例绘制,一些特征可能被放大以示出具体组件的细节。
具体实施方式
下面将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。也就是说,本文中的结构及方法是以示例性的方式示出,来说明本公开中的结构和方法的不同实施例。然而,本领域技术人员将会理解,它们仅仅说明可以用来实施的本公开的示例性方式,而不是穷尽的方式。此外,附图不必按比例绘制,一些特征可能被放大以示出具体组件的细节。
另外,对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
图2示出了一种逻辑门电路。如图2所示,逻辑门(示例性地图示为非门)包括串联在电源端子VDD和接地端子VSS之间的P型金属氧化物半导体(PMOS)晶体管和N型金属氧化物半导体(NMOS)晶体管。PMOS晶体管的栅极和NMOS晶体管的栅极相连接作为逻辑门的输入端以接收电压Vin。PMOS晶体管的漏极与NMOS晶体管的漏极相连接作为逻辑门的输出端以输出Vout。逻辑门连接到负载电容Cload。此电路的静态功耗包括漏电功耗,动态功耗包括翻转功耗和短路功耗。当逻辑门翻转时,开关电流Iswitch将引起负载电容Cload的充电和放电,从而产生翻转功耗。另外,当PMOS晶体管和NMOS晶体管都导通时,短路电流Isc将产生短路功耗。特别地,翻转功耗被计算为Pswitch=(VDD 2×Cload×Tr)÷2,其中VDD表示电源电压,Cload表示负载电容,Tr表示信号的翻转率(比如时钟信号在一个周期内翻转两次,则时钟信号的翻转率为2)即逻辑门翻转的频率。
在向锁存器写入数据时,锁存器的逻辑门电路会发生翻转,从而产生动态功耗。当锁存器中的信号的翻转率越高时,根据上述分析,动态功耗可能会越高,而这是不期望的。例如,图3示出了根据本公开的一些比较示例的存储设备10。存储设备10包括可按阵列形式布置的多个(以十六个为例)锁存器单元120、121、……、1215(在本文中,有时可统称为锁存器单元12)。每个锁存器单元12可具有输入端D、输出端Q和时钟控制端G。时钟控制端G被配置为接收输入时钟信号clk。当输入时钟信号clk使得锁存器单元12的时钟控制端G发生信号翻转时,可将锁存器单元12的输入端D处接收的数据写入该锁存器单元12。在锁存器单元120、121、……、1215中的每个锁存器单元12前还布置有多个多路选择器单元(MUX)110、111、……、1115(在本文中,有时可统称为多路选择器单元11)中的相应一个多路选择器单元11。每个多路选择器单元11的第一输入端用于接收写入数据wd并且第二输入端用于接收相应一个锁存器单元12的输出端Q处的输出。每个多路选择器单元11的输出端耦接到相应一个锁存器单元12的输入端D。存储设备10还可包括或耦接到地址译码单元13,其被配置为对写地址执行地址译码,以生成选择信号sel0、sel1、……、sel15,这些选择信号分别馈入多路选择器单元110、111、……、1115以用于选择是将写入数据wd输出到相应的锁存器单元120、121、……、1215还是保持锁存器单元120、121、……、1215的原有数据。例如,假设写地址对应于锁存器单元120,则选择信号sel0被配置为选择写入数据wd作为多路选择器单元110的输出从而使得写入数据wd被写入锁存器单元120,而选择信号sel1、……、sel15被配置为选择锁存器单元121、……、1215的原有数据作为多路选择器单元111、……、1115的输出从而使得写入数据wd不被写入锁存器单元121、……、1215。由此,在执行写操作时,每个锁存器单元12的时钟控制端G都发生信号翻转,每个多路选择器单元11内的各信号也在翻转,这会带来较高的动态功耗。而且,多路选择器单元11的位宽需与锁存器单元12的位宽相同,因此会占据较多芯片面积。
为此,本公开提供了一种存储设备,其省略了上述复杂的多路选择器逻辑,而是改用时钟控制逻辑来对写地址所指定的锁存器单元执行写操作,从而简化了数据写入逻辑、节约了芯片面积并降低了功耗。下面将参考附图详细描述根据本公开的各种实施例的存储设备。应理解,实际的存储设备可能还包括其他部件,而为了避免模糊本公开的要点,本文没有讨论并且附图也未示出这些其他部件。
图4示出了根据本公开的一些实施例的存储设备100。存储设备100包括多个锁存器单元1200、1201、……、12015(在本文中,有时可统称为锁存器单元120)。每个锁存器单元120可具有输入端D、输出端Q和时钟控制端G。这些锁存器单元120各自可被分配有地址。可以以阵列(例如,一维阵列、二维阵列等)的形式布置这些锁存器单元120。虽然图4中示出的是十六个锁存器单元,但这仅仅是示例性的而非限制性的,本公开可适用于包括任何合适数量的锁存器单元的存储设备。
每个锁存器单元120的输入端D可被配置为接收写入数据wd。鉴于写入数据wd已被接收在每个锁存器单元120的输入端D处,因此可通过每个锁存器单元120的时钟控制端G来控制是否将所接收的写入数据wd写入到该锁存器单元120中。
为此,存储设备100可进一步包括多个时钟门控单元1400、1401、……、14015(在本文中,有时可统称为时钟门控单元140),每个时钟门控单元140与相应一个锁存器单元120(具体地,其时钟控制端G)耦接。每个时钟门控单元140可被配置为接收输入时钟信号clk和基于写地址的地址译码得到的使能信号en,并向相应一个锁存器单元120的时钟控制端G输出使能时钟信号enclk,使得当该相应一个锁存器单元120对应于写地址时其时钟控制端G发生信号翻转从而将写入数据wd写入其中,而当该相应一个锁存器单元120不对应于写地址时其时钟控制端G不发生信号翻转从而不将写入数据wd写入其中。
具体地,每个时钟门控单元140可具有时钟端CK、使能端EN和输出端CKG。每个时钟门控单元140的时钟端CK可被配置为接收输入时钟信号clk。每个时钟门控单元140的使能端EN可被配置为接收基于写地址的地址译码得到的使能信号en(en0、en1、……、en15)。每个时钟门控单元140的输出端CKG可被配置为向相应一个锁存器单元120的时钟控制端G输出使能时钟信号enclk(enclk0、enclk1、……、enclk15)。存储设备100还可包括或耦接到地址译码单元130,其被配置为对写地址执行地址译码,以生成使能信号en0、en1、……、en15,这些使能信号分别馈入时钟门控单元1400、1401、……、14015以与输入时钟信号clk结合用于生成相应的使能时钟信号enclk0、enclk1、……、enclk15,从而控制相应的锁存器单元1200、1201、……、12015的时钟控制端G是否发生信号翻转以将写入数据wd写入其中。例如,假设写地址对应于锁存器单元1200,则使能信号en0被配置为与输入时钟信号clk结合用于生成使能时钟信号enclk0以使得锁存器单元1200的时钟控制端G发生信号翻转从而使得写入数据wd被写入锁存器单元1200,而使能信号en1、……、en15被配置为与输入时钟信号clk结合用于生成使能时钟信号enclk1、……、enclk15以使得锁存器单元1201、……、12015的时钟控制端G不发生信号翻转从而使得写入数据wd不被写入锁存器单元1201、……、12015。
在一些实施例中,时钟门控单元140可包括锁存器和与门。例如,参考图5,其示出了时钟门控单元140的一种非限制性实现方式。如图5所示,时钟门控单元140包括锁存器142和与门144。锁存器142接收使能信号en,并且还接收输入时钟信号clk并将其反相得到反相输入时钟信号clki。与门144接收输入时钟信号clk和锁存器142输出的使能锁存信号enl,并输出使能时钟信号enclk。图6示出了图5的时钟门控单元140的各信号的示例波形图。
在另一些实施例中,时钟门控单元140可包括锁存器和或门。例如,参考图7,其示出了时钟门控单元140的另一种非限制性实现方式。如图7所示,时钟门控单元140包括锁存器142和或门146。在或门146的两个输入端处还设置有反相器(或者,非门)1482、1484。锁存器142接收使能信号en,并且还接收输入时钟信号clk并将其反相得到反相输入时钟信号clki。反相器1482将锁存器142输出的使能锁存信号enl反相得到反相使能锁存信号enli。反相器1484将输入时钟信号clk反相得到反相输入时钟信号clki。或门146接收反相输入时钟信号clki和反相使能锁存信号enli,并输出使能时钟信号enclk。图8示出了图7的时钟门控单元140的各信号的示例波形图。
在又一些实施例中,时钟门控单元140还可仅包括与门。例如,参考图9,其示出了时钟门控单元140的又一种非限制性实现方式。如图9所示,时钟门控单元140仅包括与门144。与门144接收输入时钟信号clk和使能信号en,并输出使能时钟信号enclk。
参考图5、图7、图9可知,时钟门控单元140的电路实现相较于图3的多路选择器单元11的电路实现要简单许多。特别地,即使时钟门控单元140采用锁存器142,该锁存器的位宽被选择为1位即可。相比于要求与锁存器单元12具有相同位宽的多路选择器单元11,时钟门控单元140的面积和功耗要小得多。因此,图4的存储设备100相比于图3的存储设备10可具有简化的数据写入逻辑,还占据更少面积和消耗更低功耗。
另外,通过时钟门控单元140所生成的使能时钟信号enclk,在执行写操作时,只有对应于写地址的锁存器单元120的时钟控制端G会发生信号翻转,而不对应于写地址的锁存器单元120的时钟控制端G不会发生信号翻转。因此,图4的存储设备100相比于图3的存储设备10可具有降低的翻转功耗,进而实现更低的芯片总功耗。
值得注意的是,在执行写操作时,各个时钟门控单元1400、1401、……、14015的时钟端CK也都在翻转,这也会带来一定的功耗。相比之下,图10示出了根据本公开的另一些实施例的存储设备200,其可通过布置多级时钟门控单元实现进一步降低的信号翻转率进而实现进一步降低的功耗。如图10所示,存储设备200包括存储模块210和时钟门控模块240。
存储模块210包括多个锁存器单元2200、2201、……、22015(在本文中,有时可统称为锁存器单元220)。每个锁存器单元220可具有输入端D、输出端Q和时钟控制端G,并可被分配有地址。可以以阵列(例如,一维阵列、二维阵列等)的形式布置这些锁存器单元220。虽然图10中示出的是十六个锁存器单元,但这仅仅是示例性的而非限制性的,本公开可适用于包括任何合适数量的锁存器单元的存储设备。每个锁存器单元220的输入端D可被配置为接收写入数据wd。
时钟门控模块240包括第一级时钟门控单元244以及耦接在锁存器单元2200、2201、……、22015与第一级时钟门控单元244之间的第二级时钟门控单元242。如图10所示,第一级时钟门控单元244可包括多个时钟门控单元2440、2441、……、2443(在本文中,有时可统称为时钟门控单元244),第二级时钟门控单元242可包括多个时钟门控单元2420、2421、……、24215(在本文中,有时可统称为时钟门控单元242)。第一级时钟门控单元244中的每个时钟门控单元被配置为接收输入时钟信号clk和基于写地址的第一地址译码得到的使能信号en’(en’0、……、en’3),并向第二级时钟门控单元242中的相应时钟门控单元输出使能时钟信号enclk’(enclk’0、……、enclk’3)。第二级时钟门控单元242中的每个时钟门控单元被配置为接收第一级时钟门控单元244中的相应时钟门控单元输出的使能时钟信号enclk’(enclk’0、……、enclk’3)和基于写地址的第二地址译码得到的使能信号en(en0、en1、……、en15),并向锁存器单元2200、2201、……、22015中的相应锁存器单元输出使能时钟信号enclk(enclk0、enclk1、……、enclk15)。
在图10所示的示例中,时钟门控单元2420、2421、……、24215分别与锁存器单元2200、2201、……、22015一一耦接,时钟门控单元2440与时钟门控单元2420、2421、2422、2423进而与锁存器单元2200、2201、2202、2203耦接,时钟门控单元2441与时钟门控单元2424、2425、2426、2427进而与锁存器单元2204、2205、2206、2207耦接,时钟门控单元2442与时钟门控单元2428、2429、24210、24211进而与锁存器单元2208、2209、22010、22011耦接,时钟门控单元2443与时钟门控单元24212、24213、24214、24215进而与锁存器单元22012、22013、22014、22015耦接。每个时钟门控单元242、244可具有时钟端CK、使能端EN和输出端CKG,其中时钟端CK用于接收输入时钟信号clk或上一级时钟门控单元输出的使能时钟信号,使能端EN用于接收基于写地址的地址译码得到的使能信号,输出端CKG用于输出该时钟门控单元生成的使能时钟信号。时钟门控单元242、244的电路实现可类似于以上参考图5至图9所描述的时钟门控单元140的各种电路实现,在此不多赘述。
存储设备100还可包括或耦接到地址译码单元230,其被配置为对写地址执行地址译码。地址译码单元230可被配置为对写地址执行第一地址译码,以生成使能信号en’0、……、en’3,这些使能信号分别馈入第一级时钟门控单元2440、……、2443以与输入时钟信号clk结合用于生成相应的使能时钟信号enclk’0、……、enclk’3,从而控制相应的第二级时钟门控单元2420、2421、……、24215的时钟端CK是否发生信号翻转。地址译码单元230还可被配置为对写地址执行第二地址译码,以生成使能信号en0、en1、……、en15,这些使能信号分别馈入锁存器单元2200、2201、……、22015以与相应的使能时钟信号enclk’0、……、enclk’3结合用于生成相应的使能时钟信号enclk0、enclk1、……、enclk15,从而控制相应的锁存器单元2200、2201、……、22015的时钟控制端G是否发生信号翻转。
在本文中,为描述方便,可将对应于写地址的锁存器单元称为目标锁存器单元,将不对应于写地址的锁存器单元称为非目标锁存器单元。由此,基于写地址的第一地址译码得到的使能信号(en’0、……、en’3)可被配置为使得第一级时钟门控单元244中的不与目标锁存器单元耦接的时钟门控单元所输出的使能时钟信号导致第二级时钟门控单元242中的与该时钟门控单元耦接的时钟门控单元的时钟端CK不发生信号翻转,以及使得第一级时钟门控单元244中的与目标锁存器单元耦接的时钟门控单元所输出的使能时钟信号导致第二级时钟门控单元242中的与该时钟门控单元耦接的时钟门控单元的时钟端CK发生信号翻转。基于写地址的第二地址译码得到的使能信号(en0,en1、……、en15)可被配置为使得目标锁存器单元的时钟控制端G发生信号翻转而非目标锁存器单元的时钟控制端G不发生信号翻转,从而将写入数据wd写入目标锁存器单元而不将写入数据wd写入非目标锁存器单元。
例如,在图10中,假设目标锁存器单元是锁存器单元2200,则使能信号en’0可以为高电平(例如,1)以使得时钟门控单元2420、2421、2422、2423各自的时钟端CK发生信号翻转(打开时钟一个周期),而使能信号en’1、en’2、en’3可以为低电平(例如,0)以使得时钟门控单元2424、2425、……、24215各自的时钟端CK不发生信号翻转(时钟关闭)。由于时钟门控单元2424、2425、……、24215各自的时钟端CK不发生信号翻转,因此其输出端CKG输出的使能时钟信号enclk4、enclk5、……、enclk15可以为低电平(例如,0)以使得锁存器单元2204、2205、……、22015各自的时钟控制端G不发生信号翻转(时钟关闭)。另外,使能信号en0可以为高电平(例如,1)以使得锁存器单元2200的时钟控制端G发生信号翻转(打开时钟一个周期),而使能信号en1、en2、en3可以为低电平(例如,0)以使得锁存器单元2201、2202、2203各自的时钟控制端G不发生信号翻转(时钟关闭)。这样,虽然锁存器单元2200、2201、……、22015的输入端D都接收了写入数据wd,但因为只有锁存器单元2200的时钟控制端G发生信号翻转,因此写入数据wd只会被写入锁存器单元2200而不会被写入锁存器单元2201、2202、……、22015。
同样是想要将写入数据wd写入一个锁存器单元2200(1200),存储设备200只有八个时钟门控单元(时钟门控单元2420、2421、2422、2423、2440、2441、2442、2443)的时钟端CK会发生信号翻转,而存储设备100有十六个时钟门控单元(时钟门控单元1400、1401、……、14015)的时钟端CK会发生信号翻转,因此,在执行写操作时,存储设备200相比于存储设备100具有显著降低的信号翻转率以及因此显著降低的翻转功耗,从而可实现降低的芯片总功耗。另外,虽然存储设备200的时钟门控单元的数量相比存储设备100增加,但是如前所述,它们所采用的时钟门控单元的电路实现简单,占用面积少,因此这种数量增加的成本相较于其收益是可接受的。
在一些实施例中,时钟门控模块240还可包括耦接在第一级时钟门控单元244与第二级时钟门控单元242之间的一级或多级时钟门控单元。所述一级或多级时钟门控单元中的每一级时钟门控单元中的每个时钟门控单元可被配置为接收所述一级或多级时钟门控单元中的上一级时钟门控单元(靠近第一级时钟门控单元244侧)中的相应时钟门控单元输出的使能时钟信号和基于写地址的相应地址译码得到的使能信号,并向所述一级或多级时钟门控单元中的下一级时钟门控单元(靠近第二级时钟门控单元242侧)中的相应时钟门控单元输出使能时钟信号。在这种情况下,第一级时钟门控单元244中的每个时钟门控单元被配置为接收输入时钟信号和基于写地址的第一地址译码得到的使能信号并向所述一级或多级时钟门控单元中的最上一级时钟门控单元(与第一级时钟门控单元244直接耦接)中的相应时钟门控单元输出使能时钟信号,以及第二级时钟门控单元242中的每个时钟门控单元被配置为接收所述一级或多级时钟门控单元中的最下一级时钟门控单元(与第二级时钟门控单元242直接耦接)中的相应时钟门控单元输出的使能时钟信号和基于写地址的第二地址译码得到的使能信号,并向相应锁存器单元输出使能时钟信号。例如,图11示出了包括三级时钟门控单元的时钟门控模块240(未示出使能信号),其中时钟门控模块240还包括耦接在第一级时钟门控单元244与第二级时钟门控单元242之间的第三级时钟门控单元246,其包括多个时钟门控单元2460、2461、……、2467。
可以按照如下方式来确定时钟门控模块240的级数。锁存器单元2200、2201、……、22015可以被分层次地分组,其中锁存器单元2200、2201、……、22015在每一层次分组得到的组是通过对锁存器单元2200、2201、……、22015在上一层次分组得到的组的进一步划分得到的。在这种情况下,时钟门控模块240所包括的时钟门控单元的级数可对应于锁存器单元2200、2201、……、22015的分组的层次数,时钟门控模块240中的每级时钟门控单元中包括的时钟门控单元的数量也可对应于锁存器单元2200、2201、……、22015在相应层次分组得到的组数。
例如,参考图10,锁存器单元2200、2201、……、22015可以被分两个层次地分组。在较高层次(第一层次),锁存器单元2200、2201、……、22015被分为每组四个,共四组(第一组包括锁存器单元2200、2201、2202、2203,第二组包括锁存器单元2204、2205、2206、2207,第三组包括锁存器单元2208、2209、22010、22011,第四组包括锁存器单元22012、22013、22014、22015)。在较低层次(第二层次),锁存器单元2200、2201、……、22015被分为每组一个,共十六组(各组分别包括2200、2201、……、22015中的一个锁存器单元220)。鉴于锁存器单元2200、2201、……、22015被分两个层次地分组,时钟门控模块240可包括两级时钟门控单元,即第一级时钟门控单元244(对应于第一层次,包括四个时钟门控单元)和第二级时钟门控单元242(对应于第二层次,包括十六个时钟门控单元)。在图11的情况下,锁存器单元2200、2201、……、22015被分三个层次地分组,相比于图10进一步包括在中间层次(第三层次)锁存器单元2200、2201、……、22015被分为每组两个,共八组。鉴于此,图11的时钟门控模块240可包括三级时钟门控单元,即进一步包括第三级时钟门控单元246(对应于第三层次,包括八个时钟门控单元)。
可以理解的是,虽然在图10、图11的示例情形中,锁存器单元2200、2201、……、22015在每个层次被均等地划分,但这不意味着限制。对于每一层次,锁存器单元2200、2201、……、22015在该层次分组得到的各组所包括的锁存器单元的数量可以相同,也可以不同。也就是说,划分不受特别限制,只要使得锁存器单元在每一层次分组得到的组是通过对锁存器单元在上一层次分组得到的组的进一步划分得到的即可。
时钟门控模块240中的每级时钟门控单元中的每个时钟门控单元可与锁存器单元2200、2201、……、22015在相应层次分组得到的相应一组锁存器单元直接或间接耦接。例如,如图10所示,第一级时钟门控单元244中的每个时钟门控单元经由时钟门控模块240中的其他级时钟门控单元与锁存器单元2200、2201、……、22015在第一层次分组得到的相应一组锁存器单元耦接,以及第二级时钟门控单元242中的每个时钟门控单元与锁存器单元2200、2201、……、22015在第二层次分组得到的相应一组锁存器单元耦接。在如图10所示的一些实施例中,锁存器单元2200、2201、……、22015在第二层次分组得到的组各自包括一个锁存器单元,相应地,第二级时钟门控单元242中的每个时钟门控单元与一个锁存器单元耦接;锁存器单元2200、2201、……、22015在第一层次分组得到的组各自包括四个锁存器单元,相应地,第一级时钟门控单元244中的每个时钟门控单元经由时钟门控模块240中的其他级时钟门控单元与四个锁存器单元耦接。如果第一级时钟门控单元244中包括的第一时钟门控单元(例如,时钟门控单元2440)与第二级时钟门控单元242中包括的第二时钟门控单元(例如,时钟门控单元2420)耦接,则与第一时钟门控单元(例如,时钟门控单元2440)耦接的相应一组锁存器单元(例如,锁存器单元2200、2201、2202、2203、)包括与第二时钟门控单元(例如,时钟门控单元2420)耦接的相应一组锁存器单元(例如,锁存器单元2200),也即第二时钟门控单元(例如,时钟门控单元2420)所对应的锁存器单元在第二层次的分组(例如,锁存器单元2200)是第一时钟门控单元(例如,时钟门控单元2440)所对应的锁存器单元在第一层次的分组(例如,锁存器单元2200、2201、2202、2203、)的子组。
时钟门控模块240中的每级时钟门控单元中的每个时钟门控单元所接收的使能信号可以是基于写地址的对应于相应层次的地址译码得到的。在一些实施例中,锁存器单元2200、2201、……、22015中的每个锁存器单元的地址包括对应于不同层次的不同部分。在同一层次的同一组内的锁存器单元的地址例如可具有相同部分。
在一些示例中,当地址为二进制时,如果锁存器单元在第二层次分组得到的组各自包括一个锁存器单元(共十六组)并且在第一层次分组得到的组各自包括四个锁存器单元(共四组),则写地址的对应于第一层次的第一地址译码可与写地址的除最低两位以外的其余位相关联,而写地址的对应于第二层次的第二地址译码可与写地址的最低两位相关联。例如,参考图10,假设锁存器单元2200、2201、……、22015被分别分配地址0000至1111,其中锁存器单元2200、2201、2202、2203的地址范围是0000至0011(它们在第一层次属于同组,地址最高两位均为00),锁存器单元2204、2205、2206、2207的地址范围是0100至0111(它们在第一层次属于同组,地址最高两位均为01),锁存器单元2208、2209、22010、22011的地址范围是1000至1011(它们在第一层次属于同组,地址最高两位均为10),锁存器单元22012、22013、2204、22015的地址范围是1100至1111(它们在第一层次属于同组,地址最高两位均为11)。那么,当写地址为0000(目标锁存器单元为锁存器单元2200)时,写地址的对应于第一层次的第一地址译码可以基于写地址的最高两位00,从而使得用于时钟门控单元2440的使能信号en’0为高电平,而使得用于时钟门控单元2441、2442、2443的使能信号en’1、en’2、en’3为低电平,从而只开启时钟门控单元2420、2421、2422、2423的时钟端CK。接下来,写地址的对应于第二层次的第二地址译码可以基于写地址的最低两位00,从而使得用于时钟门控单元2420的使能信号en0为高电平,而使得用于时钟门控单元2421、2422、2423的使能信号en1、en2、en3为低电平,从而只开启锁存器单元2200的时钟控制端G。
类似地,在另一些示例中,当地址为二进制时,如果锁存器单元在第二层次分组得到的组各自包括一个锁存器单元(共十六组)并且在第一层次分组得到的组各自包括八个锁存器单元(共两组),则写地址的对应于第一层次的第一地址译码可与写地址的除最低三位以外的其余位相关联,而写地址的对应于第二层次的第二地址译码可与写地址的最低三位相关联。例如,假设锁存器单元2200、2201、……、22015被分别分配地址0000至1111,其中锁存器单元2200、2201、……、2207在第一层次被分为一组并且具有地址范围是0000至0111(地址最高一位均为0),锁存器单元2208、2209、……、22015在第一层次被分为一组并且具有地址范围是1000至1111(地址最高一位均为1)。
可以理解,对于二进制地址,当锁存器单元被分多个层次地分组时,写地址的对应于每个层次的地址译码可与写地址的相应若干位相关联。“若干”意味着可能是一个也可能是多个。在一些实施例中,尤其是当锁存器单元在每个层次被均等地划分时,所述相应若干位的位数可由锁存器单元在该层次分组得到的组数与锁存器单元在上一层次分组得到的组数之比的二进制表示的位数决定。对于最高层次,其上一层次可被认为是不分组,或者认为锁存器单元在其上一层次分组得到的组数为一。
例如,当锁存器单元被分两个层次地分组时,锁存器单元在第一层次分组得到的组数(与一之比)的二进制表示的位数决定写地址的对应于第一层次的第一地址译码与写地址的最高几位相关联,而锁存器单元在更低的第二层次分组得到的组数与锁存器单元在第一层次分组得到的组数之比的二进制表示的位数决定写地址的对应于第二层次的第二地址译码与写地址的最低几位相关联。比如,对于前述锁存器单元在第二层次分组得到的组各自包括一个锁存器单元(共十六组)并且在第一层次分组得到的组各自包括八个锁存器单元(共两组)的示例:锁存器单元在第一层次分组得到的组数(与一之比)为2,其二进制表示为1(位数为1),则写地址的对应于第一层次的地址译码与写地址的最高一位相关联;锁存器单元在第二层次分组得到的组数与锁存器单元在第一层次分组得到的组数之比为8,其二进制表示111(位数为3),则写地址的对应于第二层次的地址译码与写地址的最低三位相关联。又比如,对于前述锁存器单元在第二层次分组得到的组各自包括一个锁存器单元(共十六组)并且在第一层次分组得到的组各自包括四个锁存器单元(共四组)的示例:锁存器单元在第一层次分组得到的组数(与一之比)为4,其二进制表示为11(位数为2),则写地址的对应于第一层次的地址译码与写地址的最高两位相关联;锁存器单元在第二层次分组得到的组数与锁存器单元在第一层次分组得到的组数之比为4,其二进制表示11(位数为2),则写地址的对应于第二层次的地址译码与写地址的最低两位相关联。
通过上述地址配置,可以简化地址译码逻辑。当然,地址的配置也不限于上述示例,而是可以采用任何适于在每一层次寻址到目标锁存器单元所在分组的形式。由此,基于写地址的对应于每一层次的地址译码的使能信号可以用于使能相应一级时钟门控单元中与目标锁存器单元在该层次的所在分组对应的时钟门控单元。
参考图12,在一些实施例中,存储模块210还包括附加锁存器单元22016并且时钟门控模块240还包括附加时钟门控单元24216。附加锁存器单元22016可被分配有地址,并且其输入端D也被配置为接收所述写入数据。附加时钟门控单元24216与附加锁存器单元22016耦接,并且被配置为接收输入时钟信号clk和基于写地址的地址译码得到的使能信号en16,并向附加锁存器单元22016输出使能时钟信号enclk16。在这样的实施例中,可能对于存储模块210中的锁存器单元进行最高层次的分组后还存在落单的锁存器单元,比如对于十七个锁存器单元按照每组四个分组后还剩下一个锁存器单元(如图12所示)。在这种情况下,为落单的锁存器单元单独布置多级时钟门控单元是没有必要的,甚至可能是不利的。因此,可以直接用单个时钟门控单元来控制落单的锁存器单元的数据写入,其情况类似于图4中的每个锁存器单元120及其对应的时钟门控单元140。
另外,参考图13和图14,存储设备200还可以包括触发器单元310和时钟源单元320。触发器单元310可被配置为基于所接收的时钟信号向存储模块210输出写入数据wd。时钟源单元320分别与触发器单元310和时钟门控模块240耦接,并且被配置为提供输入时钟信号clk。如图14所示,由于时钟门控模块240中的多级时钟门控单元的存在,存储模块210中的对应于写地址的目标锁存器单元所接收的使能时钟信号enclk相对于输入时钟信号clk可能存在延迟(或称“时钟偏斜(clock skew)”),这种延迟可能会导致触发器单元310输出wd和存储模块210写入wd的定时出现问题,从而可能导致写入失败。为此,如图13所示,在一些实施例中,存储设备200还可以包括耦接在时钟源单元320与触发器单元310之间的时钟延迟单元330。时钟延迟单元330被配置为接收输入时钟信号clk,并基于存储模块210中的目标锁存器单元所接收的使能时钟信号enclk相对于输入时钟信号clk的延迟而使输入时钟信号clk延迟,并向触发器单元310输出经延迟的输入时钟信号clkd。如图14所示,经延迟的输入时钟信号clkd与使能时钟信号enclk之间可以不存在时钟偏斜或时钟偏斜很小。时钟延迟单元320例如可包括以下中的一个或多个:时钟缓冲器;反相器。在一些实施例中,时钟延迟单元320可以包括多个时钟缓冲器或反相器的级联。当触发器单元310是上升沿触发时,经延迟的输入时钟信号clkd的上升沿可相比于输入时钟信号clk的上升沿更接近存储模块210中的目标锁存器单元所接收的使能时钟信号enclk的上升沿。当触发器单元310是下降沿触发时,经延迟的输入时钟信号clkd的下降沿可相比于输入时钟信号clk的下降沿更接近存储模块210中的目标锁存器单元所接收的使能时钟信号enclk的下降沿。通过提供时钟延迟单元330,存储设备200的定时可以得到优化,性能进一步提升。
本公开在另一方面还提供了一种片上系统,其可包括根据前述任意实施例所述的存储设备。例如,这样的片上系统可以被实现为各种各样的处理器、控制器等。
本公开在又一方面还提供了一种计算装置,其可包括根据前述任意实施例所述的片上系统。计算装置的示例可以包括但不限于消费电子产品、消费电子产品的部件、电子测试设备、诸如基站的蜂窝通信基础设施等。计算装置的示例可以包括但不限于诸如智能电话的移动电话、诸如智能手表或耳机的可穿戴计算设备、电话、电视、计算机监视器、计算机、调制解调器、手持式计算机、膝上型计算机、平板计算机、个人数字助理(PDA)、微波炉、冰箱、如汽车电子系统的车载电子系统、立体声系统、DVD播放器、CD播放器、如MP3播放器的数字音乐播放器、收音机、便携式摄像机、如数码相机的相机、便携式存储芯片、洗衣机、烘干机、洗衣机/烘干机、外围设备、时钟等。此外,计算装置可包括非完整产品。
说明书及权利要求中的词语“左”、“右”、“前”、“后”、“顶”、“底”、“上”、“下”、“高”、“低”等,如果存在的话,用于描述性的目的而并不一定用于描述不变的相对位置。应当理解,这样使用的词语在适当的情况下是可互换的,使得在此所描述的本公开的实施例,例如,能够在与在此所示出的或另外描述的那些取向不同的其它取向上操作。例如,在附图中的装置倒转时,原先描述为在其它特征“之上”的特征,此时可以描述为在其它特征“之下”。装置还可以以其它方式定向(旋转90度或在其它方位),此时将相应地解释相对空间关系。
在说明书及权利要求中,称一个元件位于另一元件“之上”、“附接”至另一元件、“连接”至另一元件、“耦接”至另一元件、或“接触”另一元件等时,该元件可以直接位于另一元件之上、直接附接至另一元件、直接连接至另一元件、直接耦接至另一元件或直接接触另一元件,或者可以存在一个或多个中间元件。相对照的是,称一个元件“直接”位于另一元件“之上”、“直接附接”至另一元件、“直接连接”至另一元件、“直接耦接”至另一元件或“直接接触”另一元件时,将不存在中间元件。在说明书及权利要求中,一个特征布置成与另一特征“相邻”,可以指一个特征具有与相邻特征重叠的部分或者位于相邻特征上方或下方的部分。
如在此所使用的,词语“示例性的”意指“用作示例、实例或说明”,而不是作为将被精确复制的“模型”。在此示例性描述的任意实现方式并不一定要被解释为比其它实现方式优选的或有利的。而且,本公开不受在技术领域、背景技术、发明内容或具体实施方式中所给出的任何所表述的或所暗示的理论所限定。
如在此所使用的,词语“基本上”意指包含由设计或制造的缺陷、器件或元件的容差、环境影响和/或其它因素所致的任意微小的变化。词语“基本上”还允许由寄生效应、噪声以及可能存在于实际的实现方式中的其它实际考虑因素所致的与完美的或理想的情形之间的差异。
另外,仅仅为了参考的目的,还可以在本文中使用“第一”、“第二”等类似术语,并且因而并非意图限定。例如,除非上下文明确指出,否则涉及结构或元件的词语“第一”、“第二”和其它此类数字词语并没有暗示顺序或次序。
还应理解,“包括/包含”一词在本文中使用时,说明存在所指出的特征、整体、步骤、操作、单元和/或组件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、单元和/或组件以及/或者它们的组合。
另外,当在本申请中使用时,词语“此处”,“以上”、“以下”、“下文”、“上文”和类似含义的词语应当指代本申请的整体而不是本申请的任何特定部分。此外,除非另有明确说明或者在所使用的上下文中以其它方式理解,否则本文使用的条件语言,例如“可以”、“可能”、“例如”、“诸如”等等通常旨在表达某些实施例包括,而其它实施例不包括某些特征、元素和/或状态。因此,这种条件语言通常不旨在暗示一个或多个实施例以任何方式需要特征、元素和/或状态,或者是否包括这些特征、元素和/或状态或者在任何特定实施例中执行这些特征、元素和/或状态。
在本公开中,术语“提供”从广义上用于涵盖获得对象的所有方式,因此“提供某对象”包括但不限于“购买”、“制备/制造”、“布置/设置”、“安装/装配”、和/或“订购”对象等。
如本文所使用的,术语“和/或”包括相关联的列出项目中的一个或多个的任何和所有组合。本文中使用的术语只是出于描述特定实施例的目的,并不旨在限制本公开。如本文中使用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文另外清楚指示。
本领域技术人员应当意识到,在上述操作之间的边界仅仅是说明性的。多个操作可以结合成单个操作,单个操作可以分布于附加的操作中,并且操作可以在时间上至少部分重叠地执行。而且,另选的实施例可以包括特定操作的多个实例,并且在其它各种实施例中可以改变操作顺序。但是,其它的修改、变化和替换同样是可能的。可以以任何方式和/或与其它实施例的方面或元件相结合地组合以上公开的所有实施例的方面和元件,以提供多个附加实施例。因此,本说明书和附图应当被看作是说明性的,而非限制性的。实际上,这里描述的新颖设备、方法和系统可以以各种其它形式体现。此外,在不脱离本公开的精神的情况下,可以对这里描述的方法和系统的形式进行各种省略、替换和改变。例如,虽然以给定布置呈现块,但是替代实施例可以执行具有不同组件和/或电路拓扑的类似功能,并且可以删除、移动、添加、细分、组合和/或修改一些块。这些块中的每一个可以以各种不同的方式实现。
本公开的各个实施例可采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。在本公开中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本公开中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。
虽然已通过示例对本公开的一些特定实施例进行了详细说明,但本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。在此公开的各实施例可以任意组合,而不脱离本公开的精神和范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本公开的范围和精神。本公开的范围由所附权利要求来限定。
Claims (14)
1. 一种存储设备,包括:
存储模块,包括各自被分配有地址的多个锁存器单元,所述多个锁存器单元中的每个锁存器单元的输入端被配置为接收写入数据;以及
时钟门控模块,包括第一级时钟门控单元以及耦接在所述多个锁存器单元与所述第一级时钟门控单元之间的第二级时钟门控单元,所述第一级时钟门控单元不与所述多个锁存器单元中的锁存器单元直接耦接,
其中,所述第一级时钟门控单元中的每个时钟门控单元被配置为接收输入时钟信号和基于写地址的第一地址译码得到的使能信号并向所述第二级时钟门控单元中的相应时钟门控单元输出使能时钟信号,以及所述第二级时钟门控单元中的每个时钟门控单元被配置为接收所述第一级时钟门控单元中的相应时钟门控单元输出的使能时钟信号和基于所述写地址的第二地址译码得到的使能信号并向所述多个锁存器单元中的相应锁存器单元输出使能时钟信号,
其中,在所述多个锁存器单元当中,对应于写地址的锁存器单元为目标锁存器单元,而不对应于写地址的锁存器单元为非目标锁存器单元,
其中,所述基于写地址的第一地址译码得到的使能信号被配置为使得,所述第一级时钟门控单元中的不与目标锁存器单元耦接的时钟门控单元所输出的使能时钟信号导致所述第二级时钟门控单元中的与该不与目标锁存器单元耦接的时钟门控单元耦接的时钟门控单元的时钟端不发生信号翻转,
其中,所述基于写地址的第二地址译码得到的使能信号被配置为使得,目标锁存器单元的时钟控制端发生信号翻转,而非目标锁存器单元的时钟控制端不发生信号翻转,从而将所述写入数据写入目标锁存器单元而不将所述写入数据写入非目标锁存器单元。
2.根据权利要求1所述的存储设备,其中,所述时钟门控模块还包括耦接在所述第一级时钟门控单元与所述第二级时钟门控单元之间的一级或多级时钟门控单元,所述一级或多级时钟门控单元中的每一级时钟门控单元中的每个时钟门控单元被配置为接收所述一级或多级时钟门控单元中的上一级时钟门控单元中的相应时钟门控单元输出的使能时钟信号和基于写地址的相应地址译码得到的使能信号并向所述一级或多级时钟门控单元中的下一级时钟门控单元中的相应时钟门控单元输出使能时钟信号,
其中,所述第一级时钟门控单元中的每个时钟门控单元被配置为接收输入时钟信号和基于写地址的第一地址译码得到的使能信号并向所述一级或多级时钟门控单元中的最上一级时钟门控单元中的相应时钟门控单元输出使能时钟信号,以及所述第二级时钟门控单元中的每个时钟门控单元被配置为接收所述一级或多级时钟门控单元中的最下一级时钟门控单元中的相应时钟门控单元输出的使能时钟信号和基于所述写地址的第二地址译码得到的使能信号并向所述多个锁存器单元中的相应锁存器单元输出使能时钟信号。
3. 根据权利要求1或2所述的存储设备,其中,所述多个锁存器单元被分层次地分组,所述多个锁存器单元在每一层次分组得到的组是通过对所述多个锁存器单元在上一层次分组得到的组的进一步划分得到的,
其中,所述时钟门控模块所包括的时钟门控单元的级数对应于所述多个锁存器单元的分组的层次数,以及
其中,所述时钟门控模块中的每级时钟门控单元中包括的时钟门控单元的数量对应于所述多个锁存器单元在相应层次分组得到的组数。
4.根据权利要求3所述的存储设备,其中,所述时钟门控模块中的每级时钟门控单元中的每个时钟门控单元所接收的使能信号是基于所述写地址的对应于相应层次的地址译码得到的。
5.根据权利要求4所述的存储设备,其中,所述多个锁存器单元中的每个锁存器单元的地址包括对应于不同层次的不同部分,以及其中,在同一层次的同一组内的锁存器单元的地址具有相同部分。
6.根据权利要求4或5所述的存储设备,其中,地址为二进制的,以及其中,所述写地址的对应于每个层次的地址译码与所述写地址的相应若干位相关联。
7.根据权利要求6所述的存储设备,其中,所述相应若干位的位数由所述多个锁存器单元在该层次分组得到的组数与所述多个锁存器单元在上一层次分组得到的组数之比的二进制表示的位数决定。
8.根据权利要求3所述的存储设备,其中,所述第一级时钟门控单元中的每个时钟门控单元经由所述时钟门控模块中的其他级时钟门控单元与所述多个锁存器单元在第一层次分组得到的相应一组锁存器单元耦接,以及所述第二级时钟门控单元中的每个时钟门控单元与所述多个锁存器单元在低于所述第一层次的第二层次分组得到的相应一组锁存器单元耦接。
9.根据权利要求1所述的存储设备,其中,
所述存储模块还包括被分配有地址的附加锁存器单元,所述附加锁存器单元的输入端被配置为接收所述写入数据;
所述时钟门控模块还包括附加时钟门控单元,所述附加时钟门控单元与所述附加锁存器单元耦接,并且被配置为接收所述输入时钟信号和基于所述写地址的地址译码得到的使能信号并向所述附加锁存器单元输出使能时钟信号。
10.根据权利要求1所述的存储设备,还包括:
触发器单元,被配置为基于所接收的时钟信号向所述存储模块输出所述写入数据;
时钟源单元,分别与所述触发器单元和所述时钟门控模块耦接,并且被配置为提供所述输入时钟信号;以及
时钟延迟单元,耦接在所述时钟源单元与所述触发器单元之间,并且被配置为接收所述输入时钟信号并基于所述存储模块中的对应于所述写地址的锁存器单元所接收的使能时钟信号相对于所述输入时钟信号的延迟而使所述输入时钟信号延迟,并向所述触发器单元输出经延迟的所述输入时钟信号。
11.根据权利要求10所述的存储设备,其中,所述时钟延迟单元包括以下中的一个或多个:时钟缓冲器;反相器。
12. 根据权利要求10所述的存储设备,其中:
所述触发器单元是上升沿触发的,所述经延迟的所述输入时钟信号的上升沿相比于所述输入时钟信号的上升沿更接近所述存储模块中的对应于所述写地址的锁存器单元所接收的使能时钟信号的上升沿;或者
所述触发器单元是下降沿触发的,所述经延迟的所述输入时钟信号的下降沿相比于所述输入时钟信号的下降沿更接近所述存储模块中的对应于所述写地址的锁存器单元所接收的使能时钟信号的下降沿。
13.一种片上系统,包括根据权利要求1-12中任一项所述的存储设备。
14.一种计算装置,包括根据权利要求13所述的片上系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311212878.7A CN116959519B (zh) | 2023-09-20 | 2023-09-20 | 存储设备、包含该存储设备的片上系统和计算装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311212878.7A CN116959519B (zh) | 2023-09-20 | 2023-09-20 | 存储设备、包含该存储设备的片上系统和计算装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116959519A CN116959519A (zh) | 2023-10-27 |
CN116959519B true CN116959519B (zh) | 2023-12-15 |
Family
ID=88462409
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311212878.7A Active CN116959519B (zh) | 2023-09-20 | 2023-09-20 | 存储设备、包含该存储设备的片上系统和计算装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116959519B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101341656A (zh) * | 2005-12-19 | 2009-01-07 | 国际商业机器公司 | 用于多周期时钟门控的方法 |
CN102610269A (zh) * | 2012-01-17 | 2012-07-25 | 中国科学院半导体研究所 | 一种多读单写片内存储器 |
CN103218011A (zh) * | 2013-03-08 | 2013-07-24 | 福州瑞芯微电子有限公司 | 基于soc芯片的时钟树结构的设计方法 |
CN105334906A (zh) * | 2015-10-29 | 2016-02-17 | 中国人民解放军国防科学技术大学 | 纳米工艺下多级门控时钟网络优化方法 |
CN116248111A (zh) * | 2021-12-07 | 2023-06-09 | 联发科技股份有限公司 | 时钟门控单元 |
-
2023
- 2023-09-20 CN CN202311212878.7A patent/CN116959519B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101341656A (zh) * | 2005-12-19 | 2009-01-07 | 国际商业机器公司 | 用于多周期时钟门控的方法 |
CN102610269A (zh) * | 2012-01-17 | 2012-07-25 | 中国科学院半导体研究所 | 一种多读单写片内存储器 |
CN103218011A (zh) * | 2013-03-08 | 2013-07-24 | 福州瑞芯微电子有限公司 | 基于soc芯片的时钟树结构的设计方法 |
CN105334906A (zh) * | 2015-10-29 | 2016-02-17 | 中国人民解放军国防科学技术大学 | 纳米工艺下多级门控时钟网络优化方法 |
CN116248111A (zh) * | 2021-12-07 | 2023-06-09 | 联发科技股份有限公司 | 时钟门控单元 |
Also Published As
Publication number | Publication date |
---|---|
CN116959519A (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9960753B2 (en) | Apparatus and method for low power fully-interruptible latches and master-slave flip-flops | |
US7463545B2 (en) | System and method for reducing latency in a memory array decoder circuit | |
US8848413B2 (en) | Low power register file | |
US8873331B2 (en) | Command decoders | |
CN113054955B (zh) | 相位内插器系统及其操作方法 | |
US9330747B2 (en) | Non-volatile latch using spin-transfer torque memory device | |
KR20200019833A (ko) | 플립플롭 표준 셀 | |
US8169246B2 (en) | Dynamic-to-static converter latch with glitch suppression | |
JP2010146693A (ja) | P型評価を有するレジスタ・ファイル回路 | |
US9641180B2 (en) | Reconfigurable semiconductor device | |
CN105515556B (zh) | 双向延迟电路及包括该双向延迟电路的集成电路 | |
CN116959519B (zh) | 存储设备、包含该存储设备的片上系统和计算装置 | |
US9947388B2 (en) | Reduced swing bit-line apparatus and method | |
US9876488B2 (en) | Flip-flop circuit with data-driven clock | |
WO2020237211A1 (en) | Memory with High-Speed and Area-Efficient Read Path | |
US8493118B2 (en) | Low power scannable latch | |
KR20090059580A (ko) | 고성능 반도체 소자에 채용하기 적합한 플립플롭 회로 | |
CN110085159B (zh) | 一种移位寄存器单元、栅极驱动电路及显示装置 | |
US7176825B2 (en) | Data-converting circuit, data-converting method, and digital-to-analog converter using the same | |
US9755660B2 (en) | Apparatus for generating digital thermometer codes | |
TW202131630A (zh) | 多位元正反器電路與方法 | |
CN109754834B (zh) | 字线译码电路、sram以及形成方法 | |
US20220358999A1 (en) | Memory device having a comparator circuit | |
US10109338B2 (en) | Semiconductor devices and semiconductor systems generating internal address | |
Selvakumar et al. | Performance Evaluation of Auxiliary Threshold Low Power 6T SRAM Cell |
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 |