CN114388025B - 动态随机存储器刷新电路和刷新方法、工作量证明芯片 - Google Patents
动态随机存储器刷新电路和刷新方法、工作量证明芯片 Download PDFInfo
- Publication number
- CN114388025B CN114388025B CN202111645658.4A CN202111645658A CN114388025B CN 114388025 B CN114388025 B CN 114388025B CN 202111645658 A CN202111645658 A CN 202111645658A CN 114388025 B CN114388025 B CN 114388025B
- Authority
- CN
- China
- Prior art keywords
- refresh
- dram
- row
- rows
- accessed
- 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
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000001960 triggered effect Effects 0.000 claims abstract description 10
- 238000004364 calculation method Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 9
- 230000007423 decrease Effects 0.000 description 6
- 238000004088 simulation Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40622—Partial refresh of memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40615—Internal triggering or timing of refresh, e.g. hidden refresh, self refresh, pseudo-SRAMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/406—Management or control of the refreshing or charge-regeneration cycles
- G11C11/40626—Temperature related aspects of refresh operations
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/408—Address circuits
- G11C11/4087—Address decoders, e.g. bit - or word line decoders; Multiple line decoders
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Abstract
本申请实施例公开了一种DRAM刷新电路和刷新方法、工作量证明芯片;所述DRAM刷新电路包括:行地址记录单元,用于记录本刷新周期内所述DRAM中被访问过的行;刷新驱动单元,用于被调用进行刷新操作;刷新控制单元,用于在被触发刷新时,根据所述行地址记录单元的记录,调用所述刷新驱动单元对所述DRAM中本刷新周期内未被访问的行进行刷新。本申请实施例可以减少刷新行数,降低DRAM刷新所耗费的时间,应用在芯片中时可以提高芯片工作效率和性能。
Description
技术领域
本文涉及集成电路领域,尤其涉及一种动态随机存储器刷新电路和刷新方法、工作量证明芯片。
背景技术
DRAM(Dynamic Random Access Memory,动态随机存储器)是一种较为常见的存储器件。由于现实中晶体管会有漏电电流的现象,导致电容上所存储的电荷数量并不足以正确的判别数据,进而导致数据毁坏,因此对于DRAM来说,要想维持数据不丢失需要周期性的充电,该充电操作称为刷新。
DRAM内部由行列存储矩阵构成,由于只提供了统一的译码装置与片选装置,所以执行刷新动作时需停止读写操作,这样势必会影响需要访问DRAM的其它部件的工作效率。除此之外,DRAM刷新的周期与芯片工作温度密切相关。随着温度的升高刷新周期越短,刷新频率越高,将会进一步降低需要访问DRAM的其它部件的工作效率。
发明内容
以下是对本申请详细描述的主题的概述。本概述并非是为了限制保护范围。
本申请实施例提供了一种DRAM刷新电路和刷新方法、工作量证明芯片,可以减少刷新行数,降低DRAM刷新所耗费的时间,应用在芯片中时可以提高芯片工作效率和性能。
一方面,本申请实施例提供了一种DRAM刷新电路,包括:
行地址记录单元,用于记录本刷新周期内所述DRAM中被访问过的行;
刷新驱动单元,用于被调用进行刷新操作;
刷新控制单元,用于在被触发刷新时,根据所述行地址记录单元的记录,调用所述刷新驱动单元对所述DRAM中本刷新周期内未被访问的行进行刷新。
可选地,所述行地址记录单元记录本刷新周期内DRAM中被访问过的行包括:
所述行地址记录单元保存有DRAM中所有行各自对应的行标志位,在每个刷新周期开始时复位全部的行标志位;根据对于DRAM的访问请求中所要访问的行,将对应的行标志位置位。
可选地,所述行地址记录单元为寄存器,所述寄存器的比特数等于所述DRAM中的行数,所述DRAM的行和所述寄存器的比特一一对应。
可选地,所述的DRAM刷新电路还包括:
行地址拆分单元,用于记录N个分组中各自包含的行;其中,所述DRAM的所有行预先被拆分到N个分组中;
所述刷新控制单元根据所述行地址记录单元的记录,调用所述刷新驱动单元对DRAM中本刷新周期内未被访问的行进行刷新包括:
所述刷新控制单元根据所述行地址记录单元的记录,以及所述行地址拆分单元记录的各分组包含的行,分别判断各分组内是否包含本刷新周期内未被访问的行;对于包含本刷新周期内未被访问的行的分组,调用所述刷新驱动单元对该分组内未被访问的行进行刷新。
可选地,所述刷新控制单元根据所述行地址记录单元的记录,以及所述行地址拆分单元记录的各分组包含的行,分别判断各分组内是否包含本刷新周期内未被访问的行包括:
所述刷新控制单元按照行地址拆分单元记录的各分组包含的行,从所述行地址记录单元分别获取各分组对应的行标志位的值;并行对各分组对应的行标志位的值进行逻辑运算,以运算结果作为该分组的组标识,得到各分组的组标识;分别根据各分组的组标识的值判断该分组是否包含本刷新周期内未被访问的行。
可选地,所述的DRAM刷新电路还包括:
请求存储单元,用于缓存对于DRAM的访问请求;
行地址译码单元,用于解析访问请求中的行地址并将该行地址从二进制数据译码成十进制数据;
所述行地址记录单元记录本刷新周期内DRAM中被访问过的行包括:
所述行地址记录单元根据行地址译码单元译码得到的十进制的行地址,记录本刷新周期内DRAM中被访问过的行。
可选地,所述的DRAM刷新电路还包括:刷新计时单元,用于记录所述DRAM上一次刷新后的工作时长,当达到刷新阈值时触发所述刷新控制单元刷新,每当刷新周期开始时重新开始计时。
另一方面,本申请实施例还提供了一种工作量证明芯片,包括:DRAM、计算单元、上述的DRAM刷新电路;
所述计算单元用于访问所述DRAM并进行计算;
所述DRAM刷新电路用于对所述DRAM进行刷新。
另一方面,本申请实施例还提供了一种DRAM刷新方法,包括:
每个刷新周期内分别记录本刷新周期内所述DRAM中被访问过的行;
被触发刷新时,根据所记录的本刷新周期内被访问过的行,对所述DRAM中本刷新周期内未被访问的行进行刷新。
可选地,所述根据所记录的本刷新周期内被访问过的行,对所述DRAM中本刷新周期内未被访问的行进行刷新包括:
根据所记录的本周期内DRAM中被访问过的行,以及各分组包含的行,分别判断各分组内是否包含本刷新周期内未被访问的行;
对于包含本刷新周期内未被访问的行的分组,对该分组内未被访问的行进行刷新。
与相关技术相比,本申请实施例对于本刷新周期内访问过的行不再全部进行刷新,因此可以减少刷新的行数,降低DRAM刷新所耗费的时间,这也就意味着可以减少DRAM不能被访问的时间,从而提高访问DRAM的其它部件的有效工作时间,应用在芯片中时可以提高芯片的工作效率和性能。本申请实施例通过对高访问频率且随机性强的场景进行大量研究和分析,发现DRAM的行在一个刷新周期内未被访问的可能性较小,因此针对该场景提出一种突破常规刷新思路的方案,通过记录和判断来将刷新操作局限于本刷新周期内未被访问的行;由于记录和判断后要刷新的行数非常少,因此可以非常大幅度的降低刷新的行数,进行记录和判断所增加的时间开销与所获得的非常大的收益相比可基本忽略不计。
在阅读并理解了附图和详细描述后,可以明白其他方面。
附图说明
附图用来提供对本申请技术方案的理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1是本申请实施例的DRAM刷新电路的示意图;
图2是本申请实施例的DRAM刷新方法的流程图;
图3是示例一的DRAM刷新电路的示意图;
图4是示例二的DRAM刷新方法的流程图;
图5是示例二中工作量证明芯片的计算单元随机访问DRAM中的行的时间间隔统计图。
具体实施方式
本申请描述了多个实施例,但是该描述是示例性的,而不是限制性的,并且对于本领域的普通技术人员来说显而易见的是,在本申请所描述的实施例包含的范围内可以有更多的实施例和实现方案。尽管在附图中示出了许多可能的特征组合,并在具体实施方式中进行了讨论,但是所公开的特征的许多其它组合方式也是可能的。除非特意加以限制的情况以外,任何实施例的任何特征或元件可以与任何其它实施例中的任何其他特征或元件结合使用,或可以替代任何其它实施例中的任何其他特征或元件。
本申请包括并设想了与本领域普通技术人员已知的特征和元件的组合。本申请已经公开的实施例、特征和元件也可以与任何常规特征或元件组合,以形成独特的发明方案。任何实施例的任何特征或元件也可以与来自其它发明方案的特征或元件组合,以形成另一个独特的发明方案。因此,应当理解,在本申请中示出和/或讨论的任何特征可以单独地或以任何适当的组合来实现。此外,可以在保护范围内进行各种修改和改变。
此外,在描述具有代表性的实施例时,说明书可能已经将方法和/或过程呈现为特定的步骤序列。然而,在该方法或过程不依赖于本文所述步骤的特定顺序的程度上,该方法或过程不应限于所述的特定顺序的步骤。如本领域普通技术人员将理解的,其它的步骤顺序也是可能的。因此,说明书中阐述的步骤的特定顺序不应被解释为对实施例的限制。此外,针对该方法和/或过程不应限于按照所写顺序执行它们的步骤,本领域技术人员可以容易地理解,这些顺序可以变化,并且仍然保持在本申请实施例的精神和范围内。
另外,在本申请中如涉及“第一”、“第二”等的描述仅用于描述中进行区分,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
传统的DRAM刷新方法为周期性的集中刷新DRAM中的所有行或者周期性的分散刷新DRAM中的行。而DRAM处于刷新过程中的行是不能被读取的,若对DRAM所有行集中刷新,这时就会导致其它部件在刷新期间完全无法访问DRAM,进而影响其它部件的工作效率;即使采用周期性分散刷新行的方式,在计算单元需要高频率访问DRAM的情况下,仍然会降低其它部件的工作效率。
在有些应用场景下,需要高频率、密集的访问DRAM,此时DRAM刷新对工作效率造成的影响将会更大;下面将以较为典型的POW(Proof of Work,工作量证明)芯片为例进行说明,本申请的DRAM刷新电路不限于用在工作量证明芯片中,在具有随机访问特性的芯片中或场景下均可适用。
以太坊工作量证明算法是具有随机访存特性算法的典型代表。工作量证明被广泛的应用在区块链领域,其典型的特征体现在数字加密货币交易过程中;为了防止被别人篡改交易信息,必须提供一个答案或证实一个特定的艰巨任务,而这个证明很难给出,需要大量运算才能算出。工作量证明芯片在运算过程中需要频繁的进行数据运算,通常由大量的计算单元与存储单元构成。工作量证明芯片需要进行大量的数据存储,受到芯片制造、工艺成熟度、容量以及价格的制约,通常工作量证明芯片内的存储单元由DRAM构成。
工作量证明芯片中,假设DRAM的刷新周期为Tf,刷新所有行的时间为Tr,则计算单元的计算效率为Te,Te=(Tf-Tr)/Tf=1-Tr/Tf,其中的(Tf-Tr)即计算单元实际的计算时间,由于DRAM每一行进行刷新所需要的时间是固定的,则刷新的行数越多花费的时间Tr就越多,计算单元实际的计算时间缩短的幅度就会越大;由于计算单元需要密集地访问DRAM,在计算带宽不变的情况下,计算单元在有限的时间范围内,实际的计算时间将决定计算效率。这也就意味着,随着行数的增多,计算单元能够计算的时间就越少,计算单元的计算效率将会下降,进而影响了芯片的性能。
另外,随着工作量证明芯片工作温度的提升,Tf会减小,Tr不变,则Te就会降低。通常温度大于85摄氏度,小于100摄氏度时Tf会减少到85摄氏度以下时的一半大小,温度大于100摄氏度时Tf会再减半;可以看到,随着温度的升高,计算单元的计算效率将大幅度下降。
本申请实施例提供了一种DRAM刷新电路,如图1所示,包括:
行地址记录单元11,用于记录本刷新周期内DRAM中被访问过的行;
刷新驱动单元12,用于被调用进行刷新操作;
刷新控制单元13,用于在被触发刷新时,根据行地址记录单元11的记录,调用刷新驱动单元12对DRAM中本刷新周期内未被访问的行进行刷新。
本实施例中,行地址记录单元11可以在每个刷新周期开始的时候清空之前的记录,重新开始记录;这样刷新控制单元13根据行地址记录单元11的记录,可以得知本刷新周期中DRAM中的行的访问情况,从而对未被访问的行进行刷新。
本实施例中,可以但不限于通过读取操作来对DRAM中的行进行刷新;刷新驱动单元207可以但不限于包含读取电路;刷新控制单元13在确定了本刷新周期未被访问的行后,可以根据这些行的行地址来调用刷新驱动单元12。
本实施例中,对于本刷新周期内访问过的行不再全部进行刷新,因此可以减少刷新的行数,降低DRAM刷新所耗费的时间,这也就意味着可以减少DRAM不能被访问的时间,从而提高访问DRAM的其它部件的有效工作时间,应用在芯片中时可以提高芯片的工作效率和性能。
本实施例中通过对高访问频率且随机性强的场景进行研究和分析,发现DRAM中的行在一个刷新周期内未被访问的可能性较小,因此针对该场景提出一种突破常规刷新思路的方案,通过记录和判断来将刷新操作局限于本刷新周期内未被访问的行;由于记录和判断后要刷新的行数非常少,因此可以非常大幅度的降低刷新的行数,进行记录和判断所增加的时间开销与所获得的非常大的收益相比可基本忽略不计。
本实施例的一个实施方式中,DRAM刷新电路应用在工作量证明芯片中时,由于Tr减少,在Tf不变的情况下,Te可以得到显著提高。特别是,由于工作量证明芯片中计算芯片会频繁访问DRAM,且随机性很强,因此DRAM中所有行在一个刷新周期中被访问过的概率非常高;以R行S列的DRAM为例,理论上计算单元在访问请求次数为j的情况下,DRAM在每个刷新周期内每行被访问过的期望概率为:假设工作量证明芯片所采用的时钟周期为5ns,则16ms产生的访问请求的次数j=333333,DRAM中的行数R=16384行,则最终DRAM所有行在一个刷新周期内被访问过的期望概率约等于0.9999998541201。从理论计算可以得知,访问请求的次数在有限时间内达到一定次数时,DRAM存在未被访问的行的概率趋于0。因此在本实施方式中,理论上DRAM可以趋于全部行不用刷新。
本实施方式以外,其它频繁访问DRAM且随机性强的场景类似,由于DRAM中的行在刷新周期内未被访问的可能性比较小,或者说一个刷新周期内未被访问的行较少,因此需要刷新的行数将大大减少,可以显著提高访问DRAM的部件的工作效率和性能。
本实施例中,行地址记录单元11、刷新驱动单元12、刷新控制单元13可以分别是DRAM所在的芯片中的一个硬件模块。
一种示例性实施例中,DRAM刷新电路还可以包括:
请求存储单元,用于缓存对于DRAM的访问请求;
行地址译码单元,用于解析访问请求中的行地址并将该行地址从二进制数据译码成十进制数据;
行地址记录单元11记录本刷新周期内DRAM中被访问过的行包括:
行地址记录单元11根据行地址译码单元译码得到的十进制的行地址,记录本刷新周期内DRAM中被访问过的行。
本实施例中,当对于DRAM的访问量较大,访问较为频繁时,由于DRAM的实际传输效率有限制,因此需要对访问请求进行缓存。请求存储单元可以但不限于使用FIFO(FirstInput First Output,先进先出)存储器;接收到的访问请求会被依次放入FIFO中,先接收到的访问请求会先被进行译码。
本实施例中,行地址译码单元可以采用译码电路或译码器等硬件实现。
本实施例中,DRAM刷新电路可以复用DRAM所在芯片中已有的请求存储单元以及行地址译码单元;访问请求中包含有对DRAM的行访问地址和列访问地址,DRAM所在芯片中可以包括I/O单元,计算单元可以通过发送访问请求给I/O单元,来访问DRAM相应地址上的数据;该I/O单元也可以内置在计算单元中,作为计算单元的一部分。在访问前,如果也需要先缓存访问请求,并对访问请求中的行、列地址进行译码,则缓存和译码部分的电路和/或器件,可以供DRAM刷新电路复用;或者说,DRAM刷新电路可以和I/O单元共享译码结果。行地址记录单元11和I/O单元可以并行操作:I/O单元根据译码出的十进制的行、列地址对DRAM进行访问,而行地址记录单元11则可以并行的根据译码出的行地址进行记录。
一种示例性实施例中,行地址记录单元11记录本刷新周期内DRAM中被访问过的行可以包括:
行地址记录单元11保存有DRAM中所有行各自对应的行标志位,在每个刷新周期开始时复位全部的行标志位;根据对于DRAM的访问请求中所要访问的行,将对应的行标志位置位。
本实施例中,复位可以是指无论行标志位的值原先为多少,将值改为“0”;置位可以是指无论行标志位的值原先为多少,将值改为“1”。
本实施例的替代方案中,可以在刷新周期开始时将全部行标志位的值改为“1”,而被访问的行对应的行标志位的值则改为“0”;或者,采用别的数值来区分本刷新周期内未被访问和访问过的行;再或者,在刷新周期开始时加载DRAM中所有的行地址,对于访问请求涉及的行地址进行删除,这样到刷新阈值到达时,根据剩下的行地址即可得知本刷新周期内未被访问的行。
本实施例中,行地址记录单元11可以从刷新控制单元13获知刷新周期的开始,刷新控制单元13调用刷新驱动单元12进行刷新后通知行地址记录单元刷新周期开始或直接将行地址记录单元复位。
本实施例中,通过行标志位可以方便快捷的记录行是否被访问过,而且判断时的开销较小。
本实施例的一种实施方式中,行地址记录单元11可以为第一寄存器,该第一寄存器的bit数等于DRAM中的行数,DRAM的行和第一寄存器的bit可以一一对应。
本实施方式中,采用寄存器的bit作为行标志位,可以通过十进制的行地址直接定位到相应的bit,方便快捷且成本较低;。
本实施方式的替代方案中,可以采用别的方式记录行标志位,比如将DRAM中的所有行分为N组,每组M行,采用一个N×M的矩阵来存储每行的行标志位。再比如,第一寄存器的bit数可以大于或等于DRAM的行数,这样可以预留一些bit位作为备用。
一种示例性实施例中,DRAM刷新电路还可以包括:
行地址拆分单元,用于记录N个分组中各自包含的行;其中,DRAM的所有行预先被拆分到N个分组中;
相应地,刷新控制单元13根据行地址记录单元11的记录,调用刷新驱动单元12对DRAM中本刷新周期内未被访问的行进行刷新可以包括:
刷新控制单元13根据行地址记录单元11的记录,以及行地址拆分单元记录的各分组包含的行,分别判断各分组是否包含本刷新周期内未被访问的行;对于包含本刷新周期内未被访问的行的分组,调用刷新驱动单元12对该分组内未被访问的行进行刷新。
本实施例中,可以对每个分组并行进行判断,因此可以加快判断的速度,减少筛选本刷新周期内未被访问的行所增加的时间开销。
本实施例中,行地址拆分单元所记录的可以是每个分组中的行地址,或者每个分组中的行对应的行标志位的序号,比如一个分组中包含地址为1-100的行,这100个行对应的行标志位在寄存器里为0-99个bit,则所记录的可以是行地址1-100,也可以是行标志位的序号0-99。无论采用哪种记录形式,由于行标志位和行是一一对应的,因此都可以清楚分组中包含哪些行,并可以通过行访问记录单元11的记录确定这些行哪些在本刷新周期被访问过和/或未被访问。
本实施例中,N的取值可以预先设定,可以根据DRAM中的总行数来设定;一般可以将DRAM中的所有行尽量平均地拆分到N个分组中,N的大小决定了每个分组中的行数,可以预先确定好每个分组中分别包含哪些行,并记录在行地址拆分单元中。
本实施例中,按照分组进行判断时,对于每个分组可以设置独立的判断逻辑,分组中行数越多则判断逻辑需要的越多,完成判断所需要的时间也更多,因此分组中如果行数太多势必会增加每个分组所需要的判断逻辑的成本,且并行所带来的加速收益会大打折扣;但如果分组中的行数太少,N太大,则会由于N太大而造成所有分组的总的判断逻辑过多,大大增加成本。因此N的取值可以考虑兼顾成本和加速收益。
本实施例的一种实施方式中,可以预先设置N和M,并作为配置参数输入行地址拆分单元,行地址拆分单元可以根据N和M,记录每个分组各自包含的行,从而将DRAM里的所有行拆分到不同分组内。比如DRAM有16384行,N为16,M为1024,则行地址拆分单元根据N和M,可以将行0-1023记录为第一个分组,将1024-2047记录为第二个分组……以此类推,直到记录完16个分组。
本实施例的一种实施方式中,刷新控制单元13根据行地址记录单元11的记录,以及行地址拆分单元记录的各分组包含的行,分别判断各分组是否包含本刷新周期内未被访问的行可以包括:
刷新控制单元13按照行地址拆分单元记录的各分组包含的行,从行地址记录单元11分别获取各分组对应的行标志位的值,并行对各分组对应的行标志位的值进行逻辑运算,以运算结果作为该分组的组标识,得到各分组的组标识;分别根据各分组的组标识判断该分组是否包含本刷新周期内未被访问的行。
本实施方式中,可以但不限于通过逻辑“与”运算得到组标识;被访问过的行的行标志位的值为“1”,未访问的则是“0”,那么分组内多个行标志位进行“与”运算后,只要有任何一行的行标志位是“0”,分组的组标识就是“0”,代表该组内包含本刷新周期内未被访问的行;这样只要通过N个简单的数字逻辑电路,就可以并行对N个分组完成判断。
本实施方式的替代方案中,如果被访问过的行的行标志位的值为“0”,未访问的则是“1”,则可以通过“或”运算得到组标识,即:只要分组内任何一行的行标志位是“1”,则分组的组标识就是“1”,代表该组内包含本刷新周期内未被访问的行。或者,可以直接对每个分组分别遍历行标志位,查找该分组中是否存在具有特定值(即表示本刷新周期内未被访问的值,比如“0”)的行标志位,如果具有则可确定该分组包含未被访问的行。
本实施方式可以通过非常简单的逻辑电路实现;对于多个分组,可以用多组逻辑电路分别进行并行计算,得到组标识。
一种示例性实施例中,DRAM刷新电路还可以包括:
刷新计时单元,用于记录DRAM上一次刷新后的工作时长,当达到刷新阈值时触发刷新控制单元13刷新,每当刷新周期开始时(即刷新后)重新开始计时。
本实施例中,可以采用计数器实现刷新计时单元,以时钟周期的个数来表示时间长度,每个时钟周期计数器增加1;刷新控制单元13可以通过监视计数器的值来判断是否刷新请求被触发;每个刷新周期开始时将计数器清零,即:每次刷新后重新开始计数。
本实施例的替换方案中,可以在刷新控制模块13中内置计数器或定时器,以自行在计数器到达刷新阈值或定时器到时后触发刷新。
本申请实施例还提供了一种工作量证明芯片,包括:DRAM、计算单元、上述任一实施例中的DRAM刷新电路;
计算单元用于访问DRAM并进行计算;
DRAM刷新电路用于对所述DRAM进行刷新。
其中,DRAM刷新电路可以部分复用计算单元访问DRAM时所使用的器件和/或电路,比如缓存、译码电路等。工作量证明芯片中可以包含一个I/O单元,或计算单元本身具备I/O功能,以根据访问请求来访问DRAM中的行。
本申请实施例还提供了一种DRAM刷新方法,如图2所示,包括步骤S210-S220:
S210、每个刷新周期内分别记录本刷新周期内DRAM中被访问过的行;
S220、被触发刷新时,根据所记录的本刷新周期内被访问过的行,对DRAM中本刷新周期内未被访问的行进行刷新。
本实施例的DRAM刷新方法可以但不限于应用在上述任一实施例所提供的DRAM刷新电路中。
一种示例性实施例中,根据所记录的本刷新周期内被访问过的行,对所述DRAM中本刷新周期内未被访问的行进行刷新包括:
根据所记录的本周期内DRAM中被访问过的行,以及各分组包含的行,分别判断各分组内是否包含本刷新周期内未被访问的行;
对于包含本刷新周期内未被访问的行的分组,对该分组内未被访问的行进行刷新。
本实施例的一种实施方式中,根据所记录的本周期内DRAM中被访问过的行,以及各分组包含的行,分别判断各分组内是否包含本刷新周期内未被访问的行可以包括:
按照记录的各分组包含的行,分别获取各分组对应的行标志位的值;
并行对各分组对应的行标志位的值进行逻辑运算,以运算结果作为该分组的组标识,得到各分组的组标识;
分别根据各分组的组标识的值判断该分组是否包含本刷新周期内未被访问的行。
下面用两个示例具体说明上述实施例。
示例一
本示例提供了一种DRAM刷新电路,应用在工作量证明芯片中,用于对工作量证明芯片中的DRAM进行刷新;该电路可以设置在工作量证明芯片中,电路中的每个单元可以分别是工作量证明芯片中的一个模块。
以16384×64的DRAM矩阵为例进行说明,该DRAM矩阵应用在工作量证明芯片中。DRAM的数据维持时间一般为64ms(毫秒),若在64ms内没有对行进行读写操作,数据就会丢失,所以需要对持续64ms未访问的行进行刷新来保证DRAM的数据不会发生丢失。
本示例中,假设工作量证明芯片的时钟周期为5ns,如果在64ms内集中刷新16384行,则会花费2ms左右的时间。假设刷新周期Tf=64ms,刷新16384行的时间Tr=2ms,则计算单元实际计算效率Te=(64-2)/64=96.875%。而随着工作量证明芯片工作温度的提升,Tf会减小,比如温度小于85摄氏度时Tf=64ms,大于85摄氏度、小于100摄氏度时Tf=32ms,大于100摄氏度时Tf=16ms;而Tr基本不会随温度升高而变化,这样随着温度的升高,Te会进一步降低。
本示例通过降低Tr来提高工作量证明芯片的计算效率,进而显著的提升计算效率Te。如图3所示,本示例中DRAM刷新电路包括:
请求存储单元301,用于缓存计算单元对于DRAM的随机访问请求。
在工作量证明芯片中,计算单元会对DRAM发起随机访问请求,由于DRAM的实际传输效率有限制,因此需要对计算单元的请求进行缓存,以提升整体计算性能。
本示例中,请求存储单元301可以使用FIFO存储器。
行地址译码单元302,用于解析随机访问请求中的行地址并将该行地址从二进制数据译码成十进制数据。
计算单元的随机访问请求中,包含了对DRAM的行列访问地址,需要解析出行地址。16384行则对应14位的二进制行地址。解析出14位二进制行地址后,将其转换为0-16383行对应的十进制行地址编号。
行地址记录单元303,用于记录DRAM中被访问过的行。
为了节省芯片的资源开销,本示例中用16384bit的第一寄存器作为行地址记录单元303,在第一寄存器中标记被访问过的行,第一寄存器中每个bit和DRAM中每行一一对应,比如第0-16383个bit分别对应DRAM的第1-16384行;通过将解析出的行地址编号在第一寄存器中所对应的bit置1来进行记录。在下个刷新周期开始时,将第一寄存器中所有行标志位清零。如果是本刷新周期已经访问过的行,即第一寄存器中对应的bit已经是1,则可以保持为1或再次置1。
行地址拆分单元304,用于记录N个分组各自包含的行。
本示例中,可以预先确定要拆分多少个分组,即预先确定N;如果每个分组中包含的行数M相同,则可以直接得到M;可以根据N和M得知每个分组中包含哪些行,并记录在行地址拆分单元304中。
本示例中,可以通过行地址编号或寄存器中行标志位的序号来表示每个分组中包含的行。比如假设N=16,即:将16384行分为16个分组,每组1024行;则行地址拆分单元304中可以记录16个分组中行标志位的序号分别是:0-1023、1024-2047、……、15360-16383。
刷新计时单元306,用于记录DRAM上一次刷新后的工作时长,当达到刷新阈值时触发刷新请求,刷新后重新开始计时。
本示例中,可以采用计数器进行记录,以时钟周期的个数来表示时间长度,计数器的值到达刷新阈值时触发刷新请求,将计数器清零,刷新后重新开始计数。
刷新驱动单元307,用于执行刷新动作。
本示例中,可以但不限于采用读取操作来进行刷新;刷新驱动单元307可以但不限于包含读取电路。
刷新控制单元305,用于在刷新请求被触发时,确定一个或多个包含未被访问行的分组,调用刷新驱动单元307对所确定的分组中的M行进行刷新。
本示例中,刷新控制单元305可以根据行地址拆分单元304记录的每个分组所包含的行,以及行地址记录单元303中所记录的本刷新周期内被访问过的行,分别判断每个分组是否包含本刷新周期内未被访问的行,并根据判断结果设置组标识的值,比如包含为“0”,不包含(即分组中所有的行都在本刷新周期被访问过)则为“1”。
本示例中,刷新控制单元305可以采用组合逻辑来进行判断;比如根据行地址拆分单元304的记录获知第一个分组中包含行标志位0-1023,则从行地址记录单元303中读取0-1023的行标志位的值,并可以通过数字逻辑电路进行“与”操作,将“与”操作的结果作为第一个分组的组标识的值,这样第一个分组中所有的行在本刷新周期内都被访问过,即行标志位0-1023的值都是“1”,则“与”操作的结果为“1”,即:第一个分组的组标识的值是“1”。
本示例中,N的大小可变,N越大则每组含有的行数越少,刷新控制单元305需要提供给每个分组的组合逻辑越少;反之N越小则每组含有的行数越多,刷新控制单元305需要提供给每个分组的组合逻辑越多。
本示例中,刷新控制单元305可以采用第二寄存器保存各分组的组标识,根据组标识的值来调用刷新驱动单元307,以刷新组标识为“0”的分组。
本示例中,刷新分组是根据行标志位的值,只对本刷新周期未被访问的行进行刷新;比如判断第二个分组里包含未被访问的行,则需要刷新第二个分组,根据第二个分组中所包含的行标志位1024-2047的值进行刷新,对值为“0”的行标志位对应的行进行刷新。
示例二
本示例提供了一种刷新方法,应用在示例一提供的DRAM刷新电路中,如图4所示,包括:
步骤S401:缓存对于DRAM的随机访问请求;本步骤可以但不限于采用FIFO存储器实现。
步骤S402:获取随机访问请求,解析出行地址;本步骤可以但不限于采用译码电路实现,可以将随机访问请求中的二进制地址转换为十进制的行地址编号。
步骤S401和步骤S402-S404可以并行,即只要有随机访问请求就进行缓存;步骤S402是只要还有缓存的随机访问请求未处理,且目前不在进行刷新,就可以进行解析。
步骤S403:记录所解析出的行;本步骤可以但不限于采用bit和DRAM中的行一一对应的第一寄存器来实现,每个bit作为所对应的行的行标志位;通过将被访问过的行所对应的bit置位,来记录该行被访问过;在每个刷新周期开始时,该寄存器中的bit均复位,即每个刷新周期重新进行记录,从而保证置位的bit对应的行是本刷新周期内被访问过的行。
步骤S404:判断DRAM在本刷新周期的工作时长是否到达刷新阈值;如果到达则进行步骤S405,如果没有到达则继续循环执行步骤S402-S404;比如刷新周期为64ms,则DRAM在本刷新周期工作时长到达64ms时,判断到达刷新阈值;或刷新阈值略少于刷新周期,比如为63.9ms,留出判断分组是否包含本刷新周期未被访问过的行的时间开销。
本步骤中,可以用对时钟周期计数的方式来对工作时长进行判断。
步骤S405:对于包含未被访问的行的一个或多个分组,分别对该分组中包含的本刷新周期未被访问过的行进行刷新。
本步骤中,可以对预先拆分好的N个分组分别进行判断:根据该分组中包含的行标志位判断该分组是否包含未被访问的行,若该分组包含的至少一个行标志位未被置位,则根据该分组中包含的行对应的bit位,确定未置位的bit对应的行,对所确定的行进行刷新;若该分组不包含未置位的行标志位,也就是说该分组中所有行标志位对应的行均在本刷新周期内被访问过,则不对该分组中任何一行进行刷新。
可以看到,本示例中,如果一个分组中的行均在刷新周期中被访问过,则该分组将不会被刷新,被刷新的分组也只是刷新其中未被访问的行;可以看到,本示例中减少了进行刷新的行的个数,因此降低了Tr,在Tf相同的情况下,可以获得更高的计算效率。
图5是在预定长度的仿真时间内,计算单元随机访问DRAM中的行的时间间隔统计图,其中横坐标表示同一行的相邻两次被访问的最大时间间隔,比如对于某行,第一次和第二次被访问的时间间隔为15ms,第二次和第三次被访问的时间间隔为18ms,则最大时间间隔为18ms;如果后续访问中,相邻两次被访问的时间间隔超过18ms,则将该时间间隔作为最大时间间隔。图5的纵坐标表示DRAM的所有行中,相邻两次被访问的最大时间间隔为横坐标某个值的行数;比如,最大时间间隔是15ms的行有502个,最大时间间隔为12ms的行有1个。图5中的多个曲线分别对应不同的仿真总时长,在图5下方以图例表示,从左到右的曲线所对应的仿真总时长越来越长;比如在仿真总时长为175秒时是图5最左的曲线,同一行相邻两次被访问的时刻之间的最大时间间隔最大值为28.8ms;再比如仿真总时长为1900秒时是图5最右的曲线,同一行相邻两次被访问的时刻之间的最大时间间隔最大值为31.1ms。
从图5中可以看出随着计算单元对DRAM持续访问时间变大(仿真总时长意味着计算单元对DRAM的持续访问时间),同一行被访问的最大时间间隔趋于稳定,不会超过32ms。
本示例中,当正常环境下,刷新周期为64ms,最好的情况是不需要对行进行刷新,即DRAM中的每一行在刷新周期中都被访问过至少一次,即刷新行数为0。即使在工作环境最恶劣的情况下,比如刷新周期为16ms,则本示例中需要刷新的行数约为8000行。采用传统方式进行DRAM刷新时,假设芯片时钟周期为5ns,则刷新16384行需要消耗2ms时间;而本示例在正常环境下刷新的行数极少几乎为0,最恶劣的情况下刷新也只刷新部分行,节省了刷新所带来的时间消耗。
可以看出,与传统的集中刷新方式相比,本示例有效的减少了刷新行数与刷新所带来的时间消耗。提高了计算单元有效的计算时间,改善了系统的整体计算性能。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (9)
1.一种DRAM刷新电路,其特征在于,包括:
行地址记录单元,用于记录本刷新周期内所述DRAM中被访问过的行;
刷新驱动单元,用于被调用进行刷新操作;
行地址拆分单元,用于记录N个分组中各自包含的行;其中,所述DRAM的所有行预先被拆分到N个分组中;
刷新控制单元,用于在被触发刷新时,根据所述行地址记录单元的记录,以及所述行地址拆分单元记录的各分组包含的行,并行判断各分组内是否包含本刷新周期内未被访问的行;对于包含本刷新周期内未被访问的行的分组,调用所述刷新驱动单元对该分组内本刷新周期内未被访问的行进行刷新。
2.如权利要求1所述的DRAM刷新电路,其特征在于,所述行地址记录单元记录本刷新周期内所述DRAM中被访问过的行包括:
所述行地址记录单元保存有DRAM中所有行各自对应的行标志位,在每个刷新周期开始时复位全部的行标志位;根据对于DRAM的访问请求中所要访问的行,将对应的行标志位置位。
3.如权利要求2所述的DRAM刷新电路,其特征在于:
所述行地址记录单元为寄存器,所述寄存器的比特数等于所述DRAM中的行数,所述DRAM的行和所述寄存器的比特一一对应。
4.如权利要求1所述的DRAM刷新电路,其特征在于,所述刷新控制单元根据所述行地址记录单元的记录,以及所述行地址拆分单元记录的各分组包含的行,并行判断各分组内是否包含本刷新周期内未被访问的行包括:
所述刷新控制单元按照行地址拆分单元记录的各分组包含的行,从所述行地址记录单元分别获取各分组对应的行标志位的值;并行对各分组对应的行标志位的值进行逻辑运算,以各分组运算结果分别作为各分组的组标识,得到各分组的组标识;分别根据各分组的组标识的值判断各分组是否包含本刷新周期内未被访问的行。
5.如权利要求1-4中任一项所述的DRAM刷新电路,其特征在于,还包括:
请求存储单元,用于缓存对于DRAM的访问请求;
行地址译码单元,用于解析访问请求中的行地址并将该行地址从二进制数据译码成十进制数据;
所述行地址记录单元记录本刷新周期内DRAM中被访问过的行包括:
所述行地址记录单元根据行地址译码单元译码得到的十进制的行地址,记录本刷新周期内DRAM中被访问过的行。
6.如权利要求1-4中任一项所述的DRAM刷新电路,其特征在于,还包括:刷新计时单元,用于记录所述DRAM上一次刷新后的工作时长,当达到刷新阈值时触发所述刷新控制单元刷新,每当刷新周期开始时重新开始计时。
7.一种工作量证明芯片,其特征在于,包括:DRAM、计算单元、如权利要求1-6中任一项所述的DRAM刷新电路;
所述计算单元用于访问所述DRAM并进行计算;
所述DRAM刷新电路用于对所述DRAM进行刷新。
8.一种DRAM刷新方法,其特征在于,应用在如权利要求1-6中任一项所述的DRAM刷新电路中,所述DRAM刷新方法包括:
每个刷新周期内分别记录本刷新周期内所述DRAM中被访问过的行;
被触发刷新时,根据所记录的本刷新周期内被访问过的行,对所述DRAM中本刷新周期内未被访问的行进行刷新。
9.如权利要求8所述的刷新方法,其特征在于,所述根据所记录的本刷新周期内被访问过的行,对所述DRAM中本刷新周期内未被访问的行进行刷新包括:
根据所记录的本周期内DRAM中被访问过的行,以及各分组包含的行,并行判断各分组内是否包含本刷新周期内未被访问的行;
对于包含本刷新周期内未被访问的行的分组,对该分组内未被访问的行进行刷新。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111645658.4A CN114388025B (zh) | 2021-12-30 | 2021-12-30 | 动态随机存储器刷新电路和刷新方法、工作量证明芯片 |
US18/264,414 US20240119990A1 (en) | 2021-12-30 | 2022-12-26 | Dynamic random access memory refresh circuit and refresh method, and proof-of-work chip |
PCT/CN2022/142051 WO2023125446A1 (zh) | 2021-12-30 | 2022-12-26 | 动态随机存储器刷新电路和刷新方法、工作量证明芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111645658.4A CN114388025B (zh) | 2021-12-30 | 2021-12-30 | 动态随机存储器刷新电路和刷新方法、工作量证明芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114388025A CN114388025A (zh) | 2022-04-22 |
CN114388025B true CN114388025B (zh) | 2022-09-13 |
Family
ID=81199751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111645658.4A Active CN114388025B (zh) | 2021-12-30 | 2021-12-30 | 动态随机存储器刷新电路和刷新方法、工作量证明芯片 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240119990A1 (zh) |
CN (1) | CN114388025B (zh) |
WO (1) | WO2023125446A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114388025B (zh) * | 2021-12-30 | 2022-09-13 | 中科声龙科技发展(北京)有限公司 | 动态随机存储器刷新电路和刷新方法、工作量证明芯片 |
CN115002050B (zh) * | 2022-07-18 | 2022-09-30 | 中科声龙科技发展(北京)有限公司 | 工作量证明芯片 |
CN117636991A (zh) * | 2022-08-10 | 2024-03-01 | 长鑫存储技术有限公司 | 地址刷新校验方法及装置、存储介质及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081964A (zh) * | 2009-11-30 | 2011-06-01 | 国际商业机器公司 | 动态随机访问存储器刷新的方法和系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0757460A (ja) * | 1993-08-12 | 1995-03-03 | Sony Corp | リフレッシュ制御回路 |
US7882302B2 (en) * | 2007-12-04 | 2011-02-01 | International Business Machines Corporation | Method and system for implementing prioritized refresh of DRAM based cache |
TWI367486B (en) * | 2007-12-25 | 2012-07-01 | Ind Tech Res Inst | Memory device and refresh method thereof |
CN103019974B (zh) * | 2012-12-18 | 2016-08-03 | 北京华为数字技术有限公司 | 存储器访问处理方法及控制器 |
CN104143355B (zh) * | 2013-05-09 | 2018-01-23 | 华为技术有限公司 | 一种刷新动态随机存取存储器的方法和装置 |
US9728245B2 (en) * | 2015-02-28 | 2017-08-08 | Intel Corporation | Precharging and refreshing banks in memory device with bank group architecture |
US11195568B1 (en) * | 2020-08-12 | 2021-12-07 | Samsung Electronics Co., Ltd. | Methods and systems for controlling refresh operations of a memory device |
CN114388025B (zh) * | 2021-12-30 | 2022-09-13 | 中科声龙科技发展(北京)有限公司 | 动态随机存储器刷新电路和刷新方法、工作量证明芯片 |
-
2021
- 2021-12-30 CN CN202111645658.4A patent/CN114388025B/zh active Active
-
2022
- 2022-12-26 WO PCT/CN2022/142051 patent/WO2023125446A1/zh active Application Filing
- 2022-12-26 US US18/264,414 patent/US20240119990A1/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081964A (zh) * | 2009-11-30 | 2011-06-01 | 国际商业机器公司 | 动态随机访问存储器刷新的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2023125446A1 (zh) | 2023-07-06 |
US20240119990A1 (en) | 2024-04-11 |
CN114388025A (zh) | 2022-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114388025B (zh) | 动态随机存储器刷新电路和刷新方法、工作量证明芯片 | |
US11309010B2 (en) | Apparatuses, systems, and methods for memory directed access pause | |
US11200942B2 (en) | Apparatuses and methods for lossy row access counting | |
US8214608B2 (en) | Behavioral monitoring of storage access patterns | |
CN108231109B (zh) | 动态随机存取存储器dram的刷新方法、设备以及系统 | |
WO2016141735A1 (zh) | 缓存数据的确定方法及装置 | |
CN108874688B (zh) | 一种报文数据缓存方法及装置 | |
CN110520929B (zh) | 内存刷新方法、装置及计算机系统 | |
US20190026028A1 (en) | Minimizing performance degradation due to refresh operations in memory sub-systems | |
KR20170130402A (ko) | 저장 엘리먼트들을 리프레시하는 시스템들 및 방법들 | |
CN111611020A (zh) | 一种应用程序的应用进程查杀方法及设备 | |
CN101197786B (zh) | 缓存管理方法和缓存管理系统 | |
US4292676A (en) | Refresh cycle minimizer in a dynamic semiconductor memory | |
CN114242132A (zh) | 一种内存刷新计数的方法、装置以及内存控制器 | |
US20220283937A1 (en) | Flush method for mapping table of ssd | |
CN111880745A (zh) | 基于固态盘阵列的数据处理方法、装置、设备及存储介质 | |
CN111880735B (zh) | 一种存储系统中数据迁移方法、装置、设备及存储介质 | |
US20220230677A1 (en) | Self-refresh frequency detection method | |
CN115249500A (zh) | 攻击地址的获取方法及其电路、锤击刷新方法和存储器 | |
CN111221749A (zh) | 数据块写入方法、装置、处理器芯片及Cache | |
WO2016126264A1 (en) | Refreshing an identified partial array | |
CN111949486B (zh) | 一种实时集群业务监控的实现方法、装置 | |
CN116107843B (zh) | 确定操作系统性能的方法、任务调度方法、设备 | |
CN112684981B (zh) | 固态硬盘读操作记录方法、系统、装置及可读存储介质 | |
CN115587018B (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230410 Address after: 10 Jialeng Road, Singapore # 09-11 Patentee after: Shenglong (Singapore) Pte. Ltd. Address before: 1605, floor 16, No. 9, North Fourth Ring West Road, Haidian District, Beijing 100080 Patentee before: SUNLUNE TECHNOLOGY DEVELOPMENT (BEIJING) Co.,Ltd. |
|
TR01 | Transfer of patent right |