CN1282025A - 动态随机存取内存的记忆页运作方法及其架构 - Google Patents
动态随机存取内存的记忆页运作方法及其架构 Download PDFInfo
- Publication number
- CN1282025A CN1282025A CN00123619A CN00123619A CN1282025A CN 1282025 A CN1282025 A CN 1282025A CN 00123619 A CN00123619 A CN 00123619A CN 00123619 A CN00123619 A CN 00123619A CN 1282025 A CN1282025 A CN 1282025A
- Authority
- CN
- China
- Prior art keywords
- memory
- page
- leaf
- memory page
- random access
- 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.)
- Pending
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明涉及一种动态随机存取内存的记忆页运作方法及其架构,主要包括设定程序及实际操作程序两部分。设定程序测试及找寻出内存的记忆页是否有缺陷,并建立一指示缺陷的位置及对映于新位置的对映缓冲表;实际操作程序在设定程序完成后执行,根据设定程序的结果建立一快速页查询表,以指示该记忆页将以正常存取模式或是页操作模式进行,再依据快速页查询表的记录将好的记忆页替代不好的记忆页,并将不好的记忆页附加在内存最后面的地址,使内存在有缺陷的情形下能顺利运作,不因其中一动态随机存取内存记忆页的缺陷而使整个系统停止。
Description
本发明涉及一种动态随机存取内存的记忆页运作方法及其架构,特别是一种将动态随机存取内存(DRAM)内不好且失效的记忆页(memory page)重新对映(redirect)到预存在内存末端正常的记忆页,使内存在有缺陷的情形下顺利运作。
动态随机存取内存模块1(DRAM module,下简称为DRAM模块)是由多个动态随机存取内存10(DRAM,下简称为DRAM)所构成,每一个DRAM10是以连续性的记忆页(memorypages)(或是连续性的储存格(cell))所组成的记忆装置。如图1所求,假设些DRAM10为16M,则其可划分为3096个4K大小的记忆页11(000-FFF),计算机系统通过内存控制器20(memory controller)选取要存取的资料的DRAM1,再由DRAM1中的支持逻辑12(supporting logic)去控制存取每一个DRAM10的记忆页11。
然而,当计算机系统开机后,基本输入输出系统(BIOS,下简称为BIOS)检测DRAM10后,或在制造DRAM10的过程中,由于制造的缺陷或毁损等原因,常会发生许多的误差或失误,使DRAM10的记忆页11或储存格产生缺陷(defect),系统在对DRAM10存取运作时,假设第A03记忆页发生缺陷,当执行到产生此A03缺陷记忆页处,整个系统的运作将受到影响而停顿,无法继续正常运作,系统便会被迫放弃该有缺陷的DRAM1。
又或在个人数字助理(PDA)或是其它小型的通讯产品,DRAM10大多采用内嵌式系统(embedded system),即DRAM10系内嵌于主机板上,若此内嵌式DRAM10产生缺陷时,将会因此而影响到整个DRAM1的工作,致使操作逻辑无法取得记忆页11,造成系统停滞、内存失效废弃,甚至必须将整个系统放弃,如此不但会造成DRAM生产商的合格率流失,并浪费掉系统或是DRAM10内其它可正常运作的部分,而且造成重大损失。
因此,本发明的目的是提供一种动态随机存取内存的记忆页运作方法及其架构,主要是提供一种内存控制器及其运作方法(BIOS),将不好的记忆页转换至最后面,并以良好的记忆页来替代,使系统运作不受损坏的记忆页的影响而停顿,且不需放弃整个内存模块。
依据前述,该运作方法主要包括设定程序及实际操作程序两部分,该设定程序是测试及找寻出内存的记忆页是否存在缺陷,并建立一指示有缺陷的位置及对映于新位置的对映缓冲表;该实际操作程序是在设定程序完成后执行,根据设定程序的结果建立一快速页查询表,以指示该记忆页或记忆单元将正常存取模式或是以页操作模式进行,再依据快速页查询表的记录将好的记忆页替代不好的记忆页,并将不好的记忆页附加在内存最后面的地址,使内存在有缺陷的情形下能顺利运作。
依据前述,本发明的动态随机存取内存记忆页的架构,该内存控制器内包括有:一控制器,用以控制存取每一个记忆页,其内设有一内存(可为闪存(Flash)或是随机存取内存(RAM))用以储存对映缓冲表;一静态随机存取内存(SRAM),系储存快速页查询表,用以指示该记忆页是以正常存取模式或是以页操作模式进行。
下面将结合附图,详细说明本发明的结构设计与技术原理,以便对本发明的特征有更进一步的了解,其中:
图1是现有内存模式的架构示意图;
图2是本发明的内存模块架构示意图;
图3为本发明的设定程序流程图;
图4为本发明的实际操作程序流程图。
标号说明:
1 DRAM模块 10 DRAM 11 记忆页 12 支持逻辑
20 内存控制器 21 控制器 22 内存(Flash或RAM) 23 SRAM
30 DRAM 31 记忆页
如图2所示,本发明的动态随机存取内存记忆页架构包括有至少一个DRAM30及一内存控制器20;其中该DRAM30包括有多个记忆页或储存格31。该内存控制器20包括有:一控制器21,系控制存取每一个记忆页31,其内设有一内存22用以储存设定程序结果(其运作方法如后详述);一个SRAM23,系储存快速页查询表,设有多个对映于记忆页的指示位,用以指示该记忆页31是以正常存取模式或是以页操作模式进行(其运作方法容后详述)。
本发明的内存记忆页运作方法包括有设定程序及实际操作两部分。
设定程序(Set Up Procedure)(如图3所示)
当本发明的DRAM30第一次被使用或是在每一次开机时,会以下列顺序先执行DRAM30的错误页重新定位(Fault Page Reallocation)的设定程序;其包括有:
步骤A1 内存测试步骤
BIOS会先激活测试该DRAM30是否有缺陷(Deficit)的存在;若未测出
缺陷的存在,则表示DRAM30存取正常,BIOS会跳过错误页重新定位(Fault
Page Reallocation)的步骤(A2),执行页属性的处理步骤(A3);若测
出缺陷存在于DRAM30内,BIOS会驱动建立对映缓冲表的步骤A2。步骤A2错误页重新定位(Fault Page Reallocation)步骤
当DRAM30内存在缺陷时,系统将建立一对映缓冲表(Table of Look-AsideBuffer,下面简称TLB)用以指出有缺陷的位置及将被对映的新位置;该对映缓冲表会被存于内存控制器20(如图2所示)内的内存22,此内存22可以是闪存或是随机存取内存。举例来说,请同时参阅图2及表1所示,记忆页000、003、A02、A03为有缺陷的记忆页,分别对映至新的记忆页FFC、FFD、FFE及FFF。
页数→新页数 | |
000 | FFC |
003 | FFD |
A02 | FFE |
A03 | FFF |
(表1)步骤A3 页属性的处理步骤
在对映缓冲表(TLB)内,除映像地址之外控制器21会提供多种由使用者定义的选项;这些选项可用于缺陷记忆页及正常记忆页;这些选项包括:只读(read only)、读一次(read one)、读两次(read twice)、唯写(write only)、写一次(write one)、写两次(write twice)、位址重配置(address relocation)等,参见表2。
页数 | 页属性 | ||||||
错误重新对映 | 只读 | 读一次 | 读两次 | 唯写 | 写一次 | 写二次 | |
003 | FFD | No | No | No | No | No | No |
008 | No | Yes | Yes | No | No | Yes | No |
A02 | FFE | No | No | No | Yes | Yes | Yes |
(表2)步骤A4 在设定程序完成后,系统将根据设定程序的结果建立一快速页查询表(Fast Page Lookup Table,下面简称FPLT),并储存在如图2所示的SRAM23中,该快速页查询表是用以指示该记忆页31或储存格将以正常存取模式或是以页操作模式进行。
实际操作(Real Operation)(如图4所示)
以一个16M的DRAM30模块为例,其内共有3096个大小为4K的记忆页或是储存格31;前述的SRAM的大小是相对映记忆页数量的SRAM23(4K位;3096bits)分别对映于每一个DRAM30的记忆页31,用以指示该记忆页31是以正常存取模式或是以页操作模式进行。该实际操作程序包含有二个唯一的两级映像程序,第一映像是检查SRAM23内所储存的快速页查询表(如表3所示)(步骤B1),当某一记忆页31对映的SRAM23的位指示为“0”时,表示该记忆页31为正常存取模式(步骤B2);第二映像级是当某一记忆页31的SRAM23位指示为“1”时,表示该记忆页31的页操作模式(Page Operation),则系统会检查控制器21内的内存22储存的对映缓冲表(步骤B3),以确定其页属性及实际映像地址。
(表3)
举例来说,000页的FPLT为“1”,因为该页为错误页(Fault page);008页没有缺陷的存在,而该页的FPLT可能也是“1”,这是由于使用者设定该页为唯读或写一次的属性。
如果有某几个记忆页31不好,无法正常工作,如表1所示,000、003、A02和A03记忆页的测试结果是不好的,将不好的结果写入内存22,在计算机系统开机时,不好的记忆页31测试结果将加载SRAM23,可以藉由内存的FPLT非常迅速地得知记忆页31是否有损坏。
因记忆页31的存取是连续循环的动作,因此不好的记忆页在本发明中将以DRAM30后面的良好的记忆页予以替代,如表1所示,得知有4个记忆页是不好的,分别将不好的记忆页替换,而对映缓冲表将指向地址FFC、FFD、FFE、FFF,以此4个地址的好的记忆页来代替不好的记忆页(步骤B4)。即地址000的记忆页以地址FFC的记忆页来替代,地址003的记忆页以地址FFD的记忆页来替代,地址A02的记忆页以地址FFE的记忆页来替代,地址A03的记忆页以地址FFF的记忆页来替代,并将不好的记忆页附加在内存DRAM30最后面的地址。同时内存DRAM30存在有4个记忆页是毁损的,将不好的记忆页以好的记忆页替换后,内存控制器20将回报给计算机芯片的总记忆页31数目将扣除不好的记忆页数(在本例实为3092个记忆页),以使下次存取记忆页31动作时,不会再循环存取到不好的记忆页(步骤B5)。
综上所述,本发明所提供的动态随机存取内存的记忆页运作方法及其架构,在存取记忆页31时,如测试出存有不好的记忆页31,则将DRAM30后面的良好记忆页31来替换,并将不好的记忆页31附加在DRAM30的地址,使内存22在有缺陷的情形下能顺利工作,不再使因其中一DRAM30的记忆页31的缺陷而使整个系统停止,及因一个记忆页损坏而需替换整个内存模块,浪费资源与金钱。
Claims (10)
1、一种动态随机存取内存的记忆页运作方法,包括有设定程序及实际操作程序两部分,其中:
该设定程序包括有:
测试内存以找寻出记忆页是否存在缺陷步骤;
错误页重新定位的步骤,是建立一对映缓冲表的步骤,以指示有缺陷的位置及将被对映的新的位置;
处理页属性的步骤,是对映缓冲表内定义记忆页运作模式的选项;
根据设定程序的结果建立一快速页查询表的步骤,用以指示该记忆页或记忆单元将以正常存取模式或是以页操作模式进行;
该实际操作程序系核对快速页查询表及对映缓冲表,依据这二个表的记录将好的记忆页替代不好的记忆页,并将不好的记忆页附加在内的最后面的地址。
2、如权利要求1所述的动态随机存取内存的记忆页运作方法,其中该测试内存步骤是由基本输入输出系统(BIOS)所激活。
3、如权利要求1所述的动态随机存取内存的记忆页运作方法,其中该页属性包含有可用于缺陷内存及正常内存的选项,如只读、唯写、写一次、读一次等。
4、如权利要求1所述的动态随机存取内存的记忆页运作方法,其中在实际操作程序进行记忆页替换后,内存控制器将回报给计算机系统的总记忆页数目将扣除不好记忆页的数目,以使下次存取记忆页动作时,不会再循环到不好的记忆页。
5、如权利要求1所述的动态随机存取内存的记忆页运作方法,其中该实际操作程序还包含有二个唯一的两级映像程序,用以检查静态存取内存所储存的快速页查询表记忆页对映之位,以决定记忆页的操作模式。
6、如权利要求5所述的动态随机存取内存的记忆页运作方法,其中该第一映像级系位于“0”时,表示记忆页为正常存取模式。
7、如权利要求5所述的动态随机存取内存的记忆页运作方法,其中该第二映像级系位于“1”时,表示记忆页为页操作模式,系统将检查控制器内的高速缓存储存的对映缓冲表,以确定其页属性及实际映像地址。
8、一种动态随机存取内存的架构,包括有:
至少一个动态随机存取内存(30),其包含有多个记忆页或储存格(31);
一内存控制器(20)包含有:一控制器(21),系控制存取每一个记忆页(31),
其内设有一内存(22)用以储存权利要求1所述的设定程序结果;一静态随机存取内存(23),系储存快速页查询表,设有多个对映于记忆页(31)的指示位,用以指示该记忆页(31)是以正常存取模式或是以页操作模式进行。
9、如权利要求8所述的动态随机存取内存的架构,其中该内存(22)是如闪存或是随机存取内存的可挥发性内存。
10、如权权利要求8所述的动态随机存取内存的架构,其中该静态随机存取内存(23)的大小是相对映记忆页(31)数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN00123619A CN1282025A (zh) | 2000-08-31 | 2000-08-31 | 动态随机存取内存的记忆页运作方法及其架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN00123619A CN1282025A (zh) | 2000-08-31 | 2000-08-31 | 动态随机存取内存的记忆页运作方法及其架构 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1282025A true CN1282025A (zh) | 2001-01-31 |
Family
ID=4590006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN00123619A Pending CN1282025A (zh) | 2000-08-31 | 2000-08-31 | 动态随机存取内存的记忆页运作方法及其架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1282025A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100339837C (zh) * | 2004-03-23 | 2007-09-26 | 国际商业机器公司 | 用于平衡多个存储器缓冲区大小的系统及其方法 |
CN100407172C (zh) * | 2003-07-25 | 2008-07-30 | 飞思卡尔半导体公司 | 选择替换用高速缓冲存储器路的方法与装置 |
-
2000
- 2000-08-31 CN CN00123619A patent/CN1282025A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100407172C (zh) * | 2003-07-25 | 2008-07-30 | 飞思卡尔半导体公司 | 选择替换用高速缓冲存储器路的方法与装置 |
CN100339837C (zh) * | 2004-03-23 | 2007-09-26 | 国际商业机器公司 | 用于平衡多个存储器缓冲区大小的系统及其方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6035432A (en) | System for remapping defective memory bit sets | |
US5974564A (en) | Method for remapping defective memory bit sets to non-defective memory bit sets | |
US6181614B1 (en) | Dynamic repair of redundant memory array | |
US5337318A (en) | Memory IC testing apparatus with redundancy circuit | |
US7478285B2 (en) | Generation and use of system level defect tables for main memory | |
US7073099B1 (en) | Method and apparatus for improving memory operation and yield | |
US6145092A (en) | Apparatus and method implementing repairs on a memory device | |
US7385863B2 (en) | Semiconductor memory device | |
EP2026356B1 (en) | Method for creating a memory defect map and optimizing performance using the memory defect map | |
US9177668B2 (en) | Method and apparatus for bit cell repair | |
US8885426B1 (en) | Compression of content entries in storage for replacing faulty memory cells | |
US9224500B2 (en) | Systems and methods for testing and assembling memory modules | |
CN1819062A (zh) | 为存储器内建自测试提供灵活模块冗余分配的方法和设备 | |
CN1182536C (zh) | 用于半导体存储器的并行冗余方法和装置 | |
US6721215B2 (en) | Integrated dynamic memory and method for operating it | |
CN1826661A (zh) | 用于存储存储单元的故障地址的存储装置和方法 | |
US20010006481A1 (en) | Integrated semiconductor memory with a memory unit for storing addresses of defective memory cells | |
US6762965B2 (en) | Method for integrating imperfect semiconductor memory devices in data processing apparatus | |
US5933852A (en) | System and method for accelerated remapping of defective memory locations | |
US11200962B2 (en) | Memory devices having spare column remap storages and methods of remapping column addresses in the memory devices | |
CN113672430A (zh) | 运行虚拟机的系统、操作其的方法、介质和存储器件 | |
US6192486B1 (en) | Memory defect steering circuit | |
US8321726B2 (en) | Repairing memory arrays | |
US20040243879A1 (en) | DRAM memory page operation method and its structure | |
US9230620B1 (en) | Distributed hardware tree search methods and apparatus for memory data replacement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
AD01 | Patent right deemed abandoned | ||
C20 | Patent right or utility model deemed to be abandoned or is abandoned |