CN1324078A - 存储器刷新速率的测试方法 - Google Patents
存储器刷新速率的测试方法 Download PDFInfo
- Publication number
- CN1324078A CN1324078A CN 00108921 CN00108921A CN1324078A CN 1324078 A CN1324078 A CN 1324078A CN 00108921 CN00108921 CN 00108921 CN 00108921 A CN00108921 A CN 00108921A CN 1324078 A CN1324078 A CN 1324078A
- Authority
- CN
- China
- Prior art keywords
- frequency
- memory
- refress
- testing
- cmos
- 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
Links
Images
Landscapes
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Tests Of Electronic Circuits (AREA)
- Dram (AREA)
Abstract
一种存储器刷新速率的测试方法,用来测试计算机系统的存储器刷新速率是否正常。其方式是在相同时间内记录计算机系统内的存储器刷新次数和CMOS周期中断的发生次数,再利用CMOS周期中断的设定频率和发生次数以及所得到的存储器刷新次数,判断出存储器刷新速率是否正常。由于CMOS周期中断的最高可设定频率高于一般存储器刷新速率并且为计算机系统原有的资源,所以能够在不增加成本的情况下提高存储器刷新速率测试的精确度。
Description
本发明涉及一种存储器刷新速率的测试方法,特别是提供一种能够精确地测试出存储器刷新速率是否在可容许误差范围内的测试方法。
动态随机存取存储器(dynamic random access memory,以下简称DRAM)由于集成度高、成本低等优点,目前普遍地使用于各种计算机系统中,作为存储数据的介质。DRAM的工作原理主要在于利用电容器(capacitor)存储电荷的状态来记录比特数据“1”或“0”。不过,由于电容器的存储电荷会在一定时间内因放电而减少,所以使用时必须周期性地对每个存储器单元进行刷新动作(refresh),以防止数据的流失。
在DRAMIC(集成电路)内都包括部分外围电路(peripheral circuit)来处理存储器单元的刷新动作,但同时也需要外部的存储器控制器(memorycontroller)提供周期性的信号来启动刷新动作。在一般的个人计算机系统中,存储器控制器置于俗称为北桥(north bridge)的系统芯片内。根据IBM PC兼容个人计算机的规范,计算机存储器刷新速率(refreshinterval)应为55μs(频率为8182Hz)。
目前对于存储器刷新速率的测试,大都是利用计算机系统内的实时时钟(real-time clock)(或称为CMOS RTC)来进行。图1表示现有技术中用以测试存储器刷新速率的处理流程图。在下面的测试过程中,假设CMOS RTC所显示的时间是准确的。当处理开始时,首先设定最大允许误差值p以及存储器刷新总次数n(S100)。存储器刷新总次数n用来界定进行测试的时间。设定完成后,就等待存储器刷新动作的出现(S101),即,让下一个刷新动作来启动测试程序。在出现存储器刷新动作后,先记录CMOS RTC上的目前时间T1(S102)。CMOS RTC的时间单位为秒(sec),一般形式为hh:mm:ss(小时:分:秒)。接着测试程序会判断存储器刷新次数是否达到预先设定的存储器刷新总次数,亦即n次(S103)。如果尚未达到,便继续等待;在达到n次之后,再记录CMOS RTC的目前时间T2(S104)。接着,判断(T2-T1)-(n/8182)差值是否在最大允许误差值p范围内(S105)。其中,(n/8182)表示当存储器刷新频率为正常时要达到存储器刷新总次数n所需要的时间;而(T2-T1)则表示在实际测试时所获得的时间。因此,如果|(T2-T1)-(n/8182)|≤p(其中||表示绝对值),则表示误差在允许误差范围内,即存储器刷新速率正常(S106);而如果|(T2-T1)-(n/8182)|>p,则表示误差过大,故警告存储器刷新速率不正常(S107)。
以下利用实际范例来说明此测试方法。假设最大允许误差值p=1,即,最大误差不得超过1秒,此为可设定的最小值;另外假设存储器刷新总次数n=81820,因此执行81820次刷新动作的标准时间为(81820/8182)=10秒。当出现存储器刷新动作时,假设此时CMOS RTC中的显示时间T1=09:15:22。接着跟踪存储器刷新次数到第81820次,再记录目前CMOS RTC中的时间T2(S104)。假设此时T2=09:15:32,则真实的测试时间为T2-T1=10秒,而标准地执行81820次刷新动作时间也为10秒,所以可以判断出此存储器刷新速率正常。相对而言,如果真实测试时间与标准刷新动作时间的差值超过最大允许误差值(1秒),则表示存储器刷新速率不正常。
根据上述的说明可以看出,现有存储器刷新速率测试方法的最大缺点在于测试准确度不足。由于CMOS RTC的最小单位为秒,所以最大允许误差值可设定的最小值为1秒。即,在上述范例中,对于81820次刷新动作的标准时间为10秒来说,其相对最大允许误差值在10%左右。换言之,真实状态下在10%以内的误差值是无法测量出来的。因此会出现某些误差无法测试出来的问题。
有鉴于此,本发明的主要目的在于提供一种存储器刷新速率的测试方法,能够在不增加太多成本的情况下,提高存储器刷新速率的测试准确度。
根据上述的目的,本发明提出一种存储器刷新速率的测试方法,它可适用于计算机系统中,用来测试其中的存储器刷新速率是否正常。其主要是利用计算机系统中的CMOS周期中断来实现。首先,设定CMOS周期中断频率为一设定频率,此设定频率最好超过一般存储器刷新速率,例如其最高值(8192Hz)。
接着,记录在相同时间内存储器刷新次数和CMOS周期中断的发生次数。此记录方法中,可以设定一存储器刷新总次数。先暂停CMOS周期中断,当计算机系统中的存储器刷新动作出现时,再恢复CMOS周期中断,同时利用CMOS周期中断处理程序来累计CMOS周期中断的发生次数。而当存储器刷新次数达到先前所设定的存储器刷新总次数时,就记录目前CMOS周期中断的发生次数。因此,可以在相同时间内记录下存储器刷新次数(先前设定值)以及CMOS周期中断的发生次数。
最后,根据CMOS周期中断的设定频率和发生次数以及存储器刷新次数,来判断存储器刷新速率是否正常。例如,先指定一最大允许误差值,再来计算出存储器刷新次数和存储器刷新频率的比值与CMOS周期中断的发生次数和设定频率的比值的误差值。如果此误差值的绝对值小于最大允许误差值,则表示存储器刷新速率正常。如果此误差值的绝对值大于最大允许误差值,则表示存储器刷新速率不正常。采用此方式,便可以判断出存储器刷新速率是否正常。
另外,上述存储器刷新速率的测试方法也可以使用其他的参考周期信号来执行测试的动作。由上述计算机系统中所提供的参考周期信号,先设定其频率为一设定频率。其中,此参考周期信号与用以刷新存储器的周期信号来自不同信号源,并且此设定频率高于存储器刷新速率。接着,同样在相同时间内,记录存储器刷新次数和参考周期信号的发生次数。最后便可以根据参考周期信号的设定频率和发生次数以及存储器刷新次数,来判断出存储器刷新速率是否正常。
为使本发明的上述目的、特征和优点能更清楚易懂,下文中特举一优选实施例并配合附图作详细说明,附图中:
图1表示现有技术的测试存储器刷新速率的处理流程图;
图2表示本发明第一实施例的测试存储器刷新速率的处理流程图;
图3表示本发明第二实施例的测试存储器刷新速率的处理流程图;和
图4表示本发明第三实施例的测试存储器刷新速率的处理流程图。
本发明的存储器刷新速率的测试方法主要是利用具有较高准确度的其他信号源来进行测试。以下以实施例详细说明。第一实施例:
在此实施例中,利用CMOS RTC的周期中断(periodic interrupt)做为参考信号进行测试,亦即,假设以CMOS周期中断速率为准确计时标准而进行的测试。CMOS周期中断的频率可以由使用者自行加以设定,一般最高频率为8192Hz,也就是说,每秒产生8192次中断。由于CMOS周期中断为计算机系统中原有的资源,因此使得本实施例在实施时不仅可以达到测试的目的,同时不会增加成本。
图2表示第一实施例中测试存储器刷新速率的处理流程图。首先设定测试用参数,包括最大允许误差值p以及存储器刷新总次数n(S200)。在本实施例中,由于CMOS周期中断的时间分割精确度高于一秒,因此最大允许误差值可以设定成低于一秒的数值。接着,设定CMOS周期中断的频率。在考虑频率的设定时,最好能够设定成大于一般存储器的刷新速率,亦即8182Hz,如此可以提供较高的准确度。如前所述,CMOS周期中断的最高可设定值为8192Hz,此即为本实施例所采用的数值。设定完成后,可以先暂停CMOS周期中断,准备开始进行后续的记录动作(S201)。
接下来,等待存储器刷新动作的出现(S202)。在出现下一个存储器刷新动作后,开始恢复CMOS周期中断(S203),并且通过CMOS周期中断处理程序来累计CMOS周期中断发生次数m(S204)。与此同时,也通过此测试程序来累计存储器刷新次数。每当新的存储器刷新动作出现时,比较累计的存储器刷新次数是否达到n次(S205)。此循环动作会在上述条件成立时终止。
当上述终止条件成立时,先暂停CMOS周期中断(S206)。此时所得到的m值和n值就是在相同时间内的CMOS周期中断发生次数以及存储器刷新次数。接着,计算CMOS周期中断发生次数m与其频率(8192Hz)的比值(m/8192)以及存储器刷新次数n与其频率(8182Hz)的比值(n/8182),用以判断m/8192与n/8182之差是否在最大允许误差值p范围内(S207)。其中,n/8182表示标准地进行n次存储器刷新动作所需要的时间,而m/8192则表示实际进行n次存储器刷新动作所耗费的时间。因此,如果|(m/8192)-(n/8182)|≤p成立,则表示存储器刷新速率正常(S208);相反,如果|(m/8192)-(n/8182)|>p成立,则表示需要警告存储器刷新速率不正常(S209)。最后,恢复CMOS周期中断(S210),完成存储器刷新速率的测试。
以下以一实际范例来说明上述存储器刷新速率测试流程。假设最大允许误差值p=0.1(秒),所需要的存储器刷新总次数n=81820。根据先前所述,进行n次存储器刷新的标准时间为(n/8182)=(81820/8182)=10(秒)。如果在测试循环(S204、S205)中得到的CMOS周期中断发生次数m=80281,则表示进行n次存储器刷新的实际时间为(m/8192)=(80281/8192)=9.8(秒)。因此,实际时间与标准时间的误差值为|9.8-10|=0.2,大于所设定的最大允许误差值0.1秒,所以可以判断出目前的存储器刷新速率不正常。必须说明的是,在相同的测试时间内,现有技术无法检测出例如上例中的存储器刷新速率偏移情况,这也正说明了本实施例在测试性能上的优越性,即,可以在不增加成本的情况下,提高存储器刷新速率的准确度。第二实施例:
虽然在第一实施例中利用暂停和恢复CMOS周期中断的方式来对其发生次数计数,但是也可以利用其他方式在执行n次存储器刷新动作的同时累计CMOS周期中断次数,例如,使用计数器来累计CMOS周期中断次数。
图3表示第二实施例中测试存储器刷新速率的处理流程图。同样,首先设定最大允许误差值p以及存储器刷新总次数n(S300)。接着再将CMOS周期中断频率设定为最大值,亦即8192Hz(S301)。接着,等待存储器刷新动作的出现(S302)。当新的存储器刷新动作出现时,启动用来累计CMOS周期中断发生次数的计数器(S303),并且持续地累计CMOS周期中断发生次数m(S304)。与此同时,也通过测试程序来累计存储器刷新次数。如果存储器刷新次数尚未达到n次,则回到步骤S304;如果存储器刷新次数达到n次(S305),则读出在CMOS周期中断计数器中的计数值m(S306)。最后计算出m/8192与n/8182之差是否在最大允许误差值p范围内(S307)。如果误差值在最大允许误差值p的范围内,则判定存储器刷新速率正常(S308);如果误差值不在最大允许误差值p的范围内,则警告存储器刷新速率不正常(S309)。
在此实施例中,利用计数器的使用说明了可以使用不同方式来对CMOS周期中断计数,并非用以限定本发明。第三实施例:
虽然在第一实施例中,利用具有周期性的CMOS周期中断来做为存储器刷新速率测试的参考信号,但是也可以利用其他参考周期信号来达到相同的效果。不过,考虑成本及效率,此参考周期信号最好是由计算机系统本身具备的资源,而不需要由外部提供,如此,可以在不增加成本的情况下进行存储器刷新速率的测试。另外,此参考周期信号与存储器刷新动作所使用的信号源必须不同,如此才可以做为时间的参考值。由于一般计算机系统中的存储器刷新动作是由北桥系统芯片中的存储器控制器负责,因此本实施例中所使用的参考周期信号必须是来自非北桥系统芯片的其他信号源。另外,此参考周期信号的频率最好高于一般存储器刷新速率,由此提供更准确的测试。
图4表示第三实施例中测试存储器刷新速率的处理流程图。同样,首先设定最大允许误差值p以及存储器刷新总次数n(S400)。如果此参考周期信号是可设定的,则接着设定参考周期信号的频率f,并且频率f最好高于一般存储器刷新速率,然后暂停此参考周期信号(S401)。接着等待存储器刷新动作的出现(S402)。当新的存储器刷新动作出现时,恢复此参考周期信号(S403),并且通过驱动程序持续地累计此参考周期信号的发生次数m′(S404)。与此同时,也通过测试程序来累计存储器刷新次数。如果存储器刷新次数尚未达到n次,则回到步骤S404;如果存储器刷新次数达到n次(S405),则先暂停此参考周期信号(S406),并且取出目前所累计的参考周期信号发生次数m′。最后计算出m′/f与n/8182的差是否在最大允许误差值p范围内(S407)。如果误差值在最大允许误差值p的范围内,则判定存储器刷新速率正常(S408);如果误差值不在最大允许误差值p的范围内,则警告存储器刷新速率不正常(S409),并且结束此测试。
根据以上所述,本发明的存储器刷新速率测试方法的优点包括下列几点:
(1)利用精确度低于1秒的CMOS周期中断或其他具有此特性的参考周期信号,在相同测试时间的条件下,可以达到以往测试方法所无法达到的测试准确度。
(2)由于采用的CMOS周期中断或参考周期信号均是计算机系统中原本具备的资源,因此可以在不增加成本的情况下达到提高测试准确度的目的。
本发明虽以一较佳实施例公开如上,但是其并非用以限定本发明。任何本领域内的普通技术人员均可在不脱离本发明的精神和范围的前提下进行各种修改和变型。因此,本发明的保护范围由所附权利要求书限定。
Claims (10)
1.一种存储器刷新速率的测试方法,适用于计算机系统中,用以测试所述计算机系统中的存储器刷新速率是否正常,所述测试方法包括下列步骤:
设定所述计算机系统中CMOS周期中断频率为一设定频率;
记录在相同时间内所述计算机系统中的存储器刷新次数和所述CMOS周期中断的发生次数;以及
根据所述CMOS周期中断的所述设定频率和所述发生次数以及所述存储器刷新次数,判断所述存储器刷新速率是否正常。
2.如权利要求1所述的测试方法,其中,所述判断步骤还包括下列步骤:
指定一最大允许误差值;
计算所述存储器刷新次数和所述存储器刷新频率的比值与所述CMOS周期中断的发生次数和所述设定频率的比值的差值;
根据所述差值和所述最大允许误差值,确定所述存储器刷新速率是否正常,其中,当所述差值的绝对值小于所述最大允许误差值时,表示所述存储器刷新速率正常,而当所述差值的绝对值大于所述最大允许误差值时,表示所述存储器刷新速率不正常。
3.如权利要求1所述的测试方法,其中,所述设定频率高于所述存储器刷新速率。
4.如权利要求3所述的测试方法,其中,所述设定频率为所述CMOS周期中断的最大设定频率。
5.如权利要求1所述的测试方法,其中,所述记录步骤还包括下列步骤:
设定一存储器刷新总次数;
暂停所述CMOS周期中断;
当所述计算机系统的存储器刷新动作出现时,恢复所述CMOS周期中断;
利用CMOS周期中断处理程序累计所述CMOS周期中断的发生次数,并且累计所述存储器的刷新次数;以及
当所述存储器的刷新次数达到所述存储器刷新总次数时,记录目前CMOS周期中断的发生次数。
6.如权利要求1所述的测试方法,其中,所述记录步骤还包括下列步骤:
设定一存储器刷新总次数;
设置一计数器,用以对所述CMOS周期中断的发生次数进行计数;
当所述计算机系统的存储器刷新动作出现时,启动所述计数器,并且累计所述存储器的刷新次数;以及
当所述存储器刷新次数达到所述存储器刷新总次数时,暂停所述计数器,并且记录目前的CMOS周期中断的发生次数。
7.一种存储器刷新速率的测试方法,适用于一计算机系统中,用以测试所述计算机系统中的存储器刷新速率是否正常,所述测试方法包括下列步骤:
设定所述计算机系统中所提供的一参考周期信号的频率为一设定频率,所述参考周期信号与用以刷新存储器的周期信号来自不同信号源,并且所述设定频率高于所述存储器刷新速率;
记录在相同时间内所述计算机系统中的存储器刷新次数和所述参考周期信号的发生次数;以及
根据所述参考周期信号的所述设定频率和所述发生次数以及所述存储器刷新次数,判断所述存储器刷新速率是否正常。
8.如权利要求7所述的测试方法,其中,所述判断步骤还包括下列步骤:
指定一最大允许误差值;
计算所述存储器刷新次数和所述存储器刷新频率的比值与所述参考周期信号的发生次数和所述设定频率的比值的差值;
根据所述差值和所述最大允许误差值,决定所述存储器刷新速率是否正常,其中,当所述差值的绝对值小于所述最大允许误差值时,表示所述存储器刷新速率正常,当所述差值的绝对值大于所述最大允许误差值时,表示所述存储器刷新速率不正常。
9.如权利要求7所述的测试方法,其中,所述记录步骤还包括下列步骤:
设定一存储器刷新总次数;
暂停所述参考周期信号;
当所述计算机系统的存储器刷新动作出现时,恢复所述参考周期信号;
累计所述参考周期信号的发生次数以及累计所述存储器的刷新次数;以及
当所述存储器的刷新次数达到所述存储器刷新总次数时,记录目前的所述参考周期信号的发生次数。
10.如权利要求7所述的测试方法,其中,所述记录步骤还包括下列步骤:
设定一存储器刷新总次数;
设置一计数器,用以对所述参考周期信号的发生次数进行计数;
当所述计算机系统的存储器刷新动作出现时,启动所述计数器,并且累计所述存储器的刷新次数;以及
当所述存储器的刷新次数达到所述存储器刷新总次数时,暂停所述计数器,并且记录目前所述参考周期信号的发生次数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB001089218A CN1134790C (zh) | 2000-05-17 | 2000-05-17 | 存储器刷新速率的测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB001089218A CN1134790C (zh) | 2000-05-17 | 2000-05-17 | 存储器刷新速率的测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1324078A true CN1324078A (zh) | 2001-11-28 |
CN1134790C CN1134790C (zh) | 2004-01-14 |
Family
ID=4579340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB001089218A Expired - Fee Related CN1134790C (zh) | 2000-05-17 | 2000-05-17 | 存储器刷新速率的测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1134790C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022068127A1 (zh) * | 2020-09-30 | 2022-04-07 | 长鑫存储技术有限公司 | 自刷新周期测试方法及装置、自动刷新次数测试方法及装置 |
CN114333972A (zh) * | 2020-09-30 | 2022-04-12 | 长鑫存储技术有限公司 | 自刷新周期测试方法及装置 |
-
2000
- 2000-05-17 CN CNB001089218A patent/CN1134790C/zh not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022068127A1 (zh) * | 2020-09-30 | 2022-04-07 | 长鑫存储技术有限公司 | 自刷新周期测试方法及装置、自动刷新次数测试方法及装置 |
CN114333972A (zh) * | 2020-09-30 | 2022-04-12 | 长鑫存储技术有限公司 | 自刷新周期测试方法及装置 |
CN114333972B (zh) * | 2020-09-30 | 2023-09-01 | 长鑫存储技术有限公司 | 自刷新周期测试方法及装置 |
US11929130B2 (en) | 2020-09-30 | 2024-03-12 | Changxin Memory Technologies, Inc. | Method and device for testing sr cycle as well as method and device for testing ar number |
Also Published As
Publication number | Publication date |
---|---|
CN1134790C (zh) | 2004-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6598012B1 (en) | Method and system for compensating for output overhead in trace date using trace record information | |
US5524248A (en) | Random access memory power management system | |
US6728955B1 (en) | Processing events during profiling of an instrumented program | |
KR100338223B1 (ko) | 데이터 처리 시스템 및 애플리케이션의 구조화된 프로파일링 방법 및 장치 | |
ATE517417T1 (de) | Durch software aufgefrischte speichereinrichtung und verfahren | |
US20140059287A1 (en) | Row hammer refresh command | |
US20050223249A1 (en) | Managing power consumption by requesting an adjustment to an operating point of a processor | |
CN102439577B (zh) | 一种构建内存访问模型的方法及装置 | |
US20150261672A1 (en) | Runtime backup of data in a memory module | |
CN102117240A (zh) | 一种获取进程阻塞信息的方法及装置 | |
WO2023185767A1 (zh) | 慢盘检测方法、装置、电子设备及存储介质 | |
US9058896B2 (en) | DRAM refresh | |
CN1134790C (zh) | 存储器刷新速率的测试方法 | |
CN112749013A (zh) | 线程负载的检测方法、装置、电子设备及存储介质 | |
US20150377937A1 (en) | Calculating Power Consumption of Electonic Devices | |
CN102033823B (zh) | 一种保存数据的方法及装置 | |
CN103176753A (zh) | 存储设备及其数据管理方法 | |
TW388831B (en) | Intelligent DRAM refresh method | |
CN1265284C (zh) | 动态日志记录方法 | |
CN112511156B (zh) | 一种脉冲计量及存储方法 | |
CN116504297A (zh) | 存储芯片的测试方法、装置、存储介质与电子设备 | |
KR20210103069A (ko) | 메모리 테스트 장치 및 이의 동작 방법 | |
CN112559052B (zh) | 一种指令集调用方法、装置、终端及存储介质 | |
CN114327288B (zh) | Ssd剩余用户使用时间的预测方法、装置、计算机设备及存储介质 | |
CN113127001B (zh) | 一种代码编译过程监控方法、装置、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20040114 Termination date: 20110517 |