CN85101225A - 存储器板的自动重新配置 - Google Patents
存储器板的自动重新配置 Download PDFInfo
- Publication number
- CN85101225A CN85101225A CN 85101225 CN85101225A CN85101225A CN 85101225 A CN85101225 A CN 85101225A CN 85101225 CN85101225 CN 85101225 CN 85101225 A CN85101225 A CN 85101225A CN 85101225 A CN85101225 A CN 85101225A
- Authority
- CN
- China
- Prior art keywords
- memory
- plate
- address
- mentioned
- address space
- 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
本发明是关于计算机存储器在起动时的自动配置的方法。更明确地说,它是关于用已存在于每块存储器板上的配置数据自动地把存储器板分配在相邻的存储区上的方法,而不用人工操作进行干预。
计算机存储器一般由一线性的字的阵列所组成;每个字被分配给一个单独地址且具有一定数目(例如32位)的数据。存储芯片存储这些数据且对有该字数据的每一地址作出响应。在一单独电路板上有数个存储芯片,且数个电路板构成计算机的地址空间。
每块电路板被指定为存储器的一个存储区,且仅构成整个计算机存储地址空间的一部分。存储器板必须被配置以至于只响应自己存储区的地址而不响应其它地址。当响应一个存储请求时,电路板被指定去向它的许多存储芯片中的一适当组存取。
电路板和它所包括的存储芯片是电子设备中易出差错的部件,所以它们必须被检测看看是否有差错。一般在存储器被第一次配置时做这些测试。由于这些差错将导致数据读写的错误,所以存储器地址空间中不应包括有差错的存储器板。
每一存储器板一般被连接在计算机存储器地址总线上。存储器地址总线是用来传递处理器向存储器发出的存储器存取请求。每块存储器板都检查送来的存储器地址并决定是否它要被存取,如果是的话,存储器板就要作出响应。通常该任务是通过将送来的地址的高序位和该板在存储地址空间中被指定的位置进行比较来完成的。
在先有技术中一种常用来配置存储器地址空间的方法是用一种人工开关或在电路板上连接跨线来指示它在存储地址空间的位置。送来的地址的高序位被用来直接和开关的值比较,当它们的值相等时存储器就作出响应。
在先有技术中另一个应用方法是在系统中用加法器来保持系统中存储累积计数,每一存储器板可以使用在它底下的存储空间的总数来决定它的地址范围。参见“一个有增长能力的高性能存储系统”33:3HP第15期期刊(1982年3月)。可是,该方法要求按照递减的长度分配在底板上相邻的槽口中。另外,它也没有办法绕过有差错的存储器板来进行配置。
虽然先有技术中的这些方法能达到它们的目的,从而允许在计算机系统中使用多存储器电路板,但是它们还有些欠缺。通常,存储器板必须以它们的存储能力为序被插在计算机底板上,越密的存储器板被分配给越低的地址槽。存储器配置至少一部分必须由手工来完成;它不能自动地执行或作为机器错误动态恢复的一部分来执行。这就需要解决这些问题并应用一改进的存储器配置程序。
因此,本发明的一个目的是改进计算机系统配置存储器的灵活性,它是通过减少改变系统存储器所需的工作,通过免去存储器板的分类布置请求,和通过免去人工操作干预的需要来达到该目的。
本发明的第二个目的是减少在存储配置中的错误的数目和频率。它是通过减少改变存储系统所需的工作,和通过免去人工操作干预的需要来达到该目的。
本发明的第三个目的是改进存储配置的容易程度和速度,它是通过减少改变存储系统所需的工作,通过免去需要对存储器板的分类布置,和通过免去需要人工操作干预来达到该目的。
通过说明书,附图及权项的解释,你会很清楚的明白本发明的这些目的。
应用本发明的每块存储器电路板包括一非易失性存储器和一配置寄存器。它们用来记录该板存储空间的大小,缺席地址空间和它的实际分配的地址空间。一微处理器从每块板上读出该板存储空间大小和缺席地址空间且检测这些信息看看是否有错误。然后它用一个一般方法来把存储器板分配给地址空间,该地址空间保证一个连续不断的,没有重叠的存储器地址阵列为处理器可用。再后,它将每块板的地址空间分配存入该板的配置寄存器中这些存储的信息供以后存储器板在系统工作期间响应处理器的存储器存取请求时所用。
本发明的附图的简要说明如下:
图1,是发明系统硬件的框图。
图2a,是存储器配置过程的流程图。
图2b,是可行的配置产生过程的流程图。
图3,是本发明的一个较佳实施方案中,接至存储器板上的配置寄存器和非易失性存贮器的辅助存取通路的框图。
图4,是本发明一个较佳实施方案中的存储器板地址选择硬件的框图。
现在参见图1,来说明本发明的硬件系统。
一个或多个存储器板10与计算机的存储器地址总线12相连接。这就能通过CPU14对存储器板进行存取。这些存储器板固定在一连接器底板上(该底板没有在图中示出)。与先有技术中提到的相邻分类板的安置要求相比,本发明并不要求有一定的结构顺序,所以该板可以任意放置。
每块板包括一非易失性存储器16,它记录着存储器大小和它的缺席地址范围。在本发明的一个较佳实施方案中,非易失性存储器16是一个非易失性随机存取存储器,(NOVRAM)。当然,在了解这一点之后,那些在本领域有一般技术的人会想到使用其它形式的非易失性存储器,如电子可擦只读存储器,或互补金属氧化物半导体(CMOS)随机存取存储器以及备有电池的寄存器。
在较佳实施方案中,非易失性存储器16的内容是由一诊断微处理器18读出,所以可以按照存贮配置程序把存储器板分配到实际的地址范围中,尽管该系统的主处理器或任何处理器可以用来执行这个任务。也可用资洛阁(Zilog)公司的Z-80微处理器。
当一个用来确定分配给每一存储器板10的实际地址范围的代码被决定之后,便被写到一个位于该板上的配置寄存器20中。虽然在较佳实施方案中该配置寄存器20是一并行和串行存取寄存器,但是它也可以是本技术领域人所共知的一种多数据处理寄存器。该配置码被保存在非易失性存储器16中,并且当需要更新时,它就被写入非易失性存储器16中。
在较佳实施方案中,配置寄存器20是五位的。在配置寄存器20的五位中有三个地址范围位(该存储板的地址槽的基地址的三个高序位),两位用于指明存储器板大小。在本实施方案中,每个存储板有一百万或两百万字节的存储量。当每一大小值位,被置位时,即指明给出的存储器板中的两部分中的一部分。
在较佳实施方案中,微处理器18不通过存储总线12去对配置寄存器20和非易失性存储器16进行读写操作,而是通过一个辅助存取通路22,用“边沿触发扫描设计”来完成这个存取操作。扫描设计在本技术领域内是众所周知的。它包括将一组寄存器连接在一起形成的一个大的移位寄存器的回路,且通过重复移位来读写任何寄存器的内容。该存取通路将在下面参见图3详细说明。那些本领域具有一般技术的人会认识到通过正常的并行存储总线12或用其它辅助读写的形式如一并行的维护总线能够很容易地完成对配置寄存器20和非易失性存储器16的存取。出现在一个或多个地址或控制线上的信号或代码可以决定这些元件(配置寄存器20和非易失性存储器16)读出或写入数据。
当存储器地址空间被配置后,每一个存储器板10根据它的配置寄存器20的内容能知道它被指定的地址空间。通过使CPU14将一存储地址送到存储器地址总线12来执行对每一存储器的存取。每一存储器板10检查该地址并且将该地址和它指定的地址空间进行比较,参见图4对此解释地更为详细。如果送来的地址在该存储器板的地址范围内,一次存取便在图中所示的24存储器阵列内进行。
虽然当电源闭合,系统开始工作时,要求进行配置,但是那些在本领域具有一般技术的人自然会懂得在软件控制下通常在任何时间内都可以进行配置。在一存储器存取失败后,可请求重新配置。尽管可以使用其它处理器的控制存储器和缓冲器空间。但在较佳实施方案中,诊断微处理器18在它的局部控制存储器26的控制下且使用局部缓冲存储器28来进行配置。
现在参见图2a,来说明配置过程。
在步骤52,微处理器18检查每个存储器槽口,从中找一个存储器板10。它通过检测每一存储器槽口的辅助存取通路来完成上述任务。没有通过这次检测的存储器槽,被认为不含有运行存储器板。只有那些已存在并正在运行的板才可用来配置存储地址空间。
这种检测如下执行:首先,一个模式数据或全“1”数据与一个紧随其后的全“0”数据一起被装入并且从每个槽移位串中读回。那些没有退回输入数据的槽立即被认为失败。对于其余的槽,会产生一个由最低有效位置为“0”的一串“1”构成的检测模式数据,且该模式数据被装入第一个槽的移位串中。在该模式数据中“0”被左移,且将其装入下一个槽的串中。该过程一直重复,直到所有槽的移位串都被装入。检测模式位的大小对应于被存取移位串的数目。该测试模式数据一旦被装入就被读回检验。用下列两个简单的规则,使任意一种槽式不匹配决定了一个失效的槽:如果该槽移位串退回的模式数据中包含一个“1”位,且该位原来存储为“0”,那么所存取的槽也对另外的槽的选择作出响应。如果该槽移位串退回的模式数据中包含一个“0”位,且该位原来为“1”,则另一个槽也对这个存取的槽作出响应。任何被发现的附加的“0”能通过附加的“0”位和有选择问题的槽的直接符合来决定一个失效槽。
例如,如果有四个槽被测试,该测试模式数据最少应是四位。只有唯一的测试模式数据被装入每一个槽的串,所以四个串包括下列模式数据:1110,1101,1011,0111。然后该模式数据被读回并检验是否包含上述槽式数据,下面是关于出错和如何应用前面所述规则的例子:
假定槽1响应槽3的选择,当槽1被存取时返回的模式为1011。由于横线上的位应为“0”,而现在却为“1”,这指出槽1选择是欠缺的。
进一步假定槽3和4都响应串3的选择,当槽3被存取时返回的模式数据是0011。由于对应被存取的槽的位为“0”,和它本是“0”相符,则第一个位置的附加“0”指出槽4有错误的选择电路。
万一两个槽互相响应选择,测试标出发现的第一个错串。一旦第一个错误被纠正了,则第二个错槽被标上。
下一步骤54,微处理器18读出每个板的非易失性存储器16的内容。它将结果记录在它的局部缓冲存储器28中。每一个非易失性存储器16也可以被检查,看看有无出错数据。一个给定的存储板10上的非易失性存储器16可包含唯一的一串该板的数,作为它的信息一部分。为了用这个信息来测试选择,该串数据和它的补码及这两个值的复制可被存放在非易失性存储器中。当检测选择时,该串数和它的补码被读出且这两个值互相检验。如果一个比较错误发生,则该串数和它的补码的复制被读出和检验。如果仍发生同样的比较错误,则表明有两个槽响应该选择。在复制数据中任何其它的比较错误或非比较错误都将指出该非易失性存储器16中有一个数据错误,因此有可能只用无错误的存储器板来配置存储器地址空间。
步骤56,微处理器10进行测试来看看是否从存储器板10读出的缺席地址空间的收集能形成一“可行”的配置。一可行的配置应是,其指定存储板的地址范围包括地址0,且没有重叠,共同形式一个邻近的地址范围。如果配置是可行的,则微处理器接着执行步骤58,把配置写到配置寄存器中。否则它将执行步骤60,62,然后执行步骤58产生一个新的可行的配置,且将该配置写到配置寄存器中。
步骤60,微处理器18产生一个新的可行的配置。在最佳方案中,是通过把大存储器板分配给存储地址空间的低部;这就是保证了在可寻址的存储字的行列里没有间断和重叠,且减小了以后重新配置的可能性。
现在参见图2b,可行配置的产生过程得到更为详细的说明。
步骤60a,诊断微处理器18选择最大的尚未指定存储空间的存储器板10;如果有几个大小相同的板,最好选择有最低存储器槽数的那个。该选择是可以随意的,且任何选择都在本发明之内。步骤60b,诊断微处理器的存储器板分配一个适当大小的地址范围,该分配地址是从该存储器板中未分配的最低存储器地址开始的。步骤60c,将这个分配记录在诊断微处理器的局部缓冲存储器28中。如果再没有板来分配了,则该新的可行的配置全部完成了。否则微处理器返回步骤60a并且继续操作直到一个新的可行的配置全部完成。
步骤62,微处理器18重新写入每个存储器板的非易失性存储器来使得它的缺席地址范围和它的实际地址范围相等。在较佳实施方案中,该微处理器是用辅助存取通路22来完成这个写入操作的。虽然在较佳实施方案中,微处理器18是在完成了配置分配之后从它的缓冲存储器向所有的存储器板写入,但是该微处理器也可以在它的分配作出时向每一存储器板写入。非易失性存储器很少被重新写入,因为一些非易失性存储器只能被写入很少次(大约1000次),超过这个极限就要坏了。
步骤58,微处理器18通过辅助存取通路16将每块板的实际地址范围写入每块存储器板的配置寄存器中。从而结束了存储器的配置过程。
现在参见图3,来说明最佳的辅助(扫描设计)存取通路。
配置寄存器20和每块存储器板10上的其它寄存器连接成一个大的串行移位寄存器集合,该集合允许这些寄存器被串行存取。串行移位通路30如虚线所示。诊断微处理器18通过线32向所有以串联移位方式组成该大寄存器的寄存器发出控制信号。
当诊断微处理器要读出一个特殊的寄存器内容时,它移动该移位寄存器集合的数据,移动次数应满足位数的需要,直至寄存器的内容被放入它的局部移位字节寄存器34中,然后它直接地读出局部寄存器的内容。对于写操作来说,诊断微处理器18向它的局部移位字节寄存器34装入,然后移动移位寄存器集合的数据,移动次数应满足位数的需要,直至该数据字节已经到达所要的寄存器。
在微处理器18中运行的程序知道所有在存储板上的寄存器的位数总长度,所以在各种情况中,它都可以移动正确的次数。
在每个存储器板10上,有三个寄存器,用来为非易失性存储器服务。非易失性存储器控制寄存器36提供存储器要响应的命令。非易失性存储器地址寄存器38向存储器提供地址。非易失性存储器数据寄存器40用来传递非易失性存储器16的数据输入和输出。
虽然配置寄存器20正是用这种方式读出、写入的,而非易失性存储器需要用更复杂的方法来读写。在最佳实施方案中一个NOVRAM实际上分为两部分,易失部分16a和非易失部分16b。为了影响非易失性存储器,微处理器将数值扫描输入给NV存储器控制寄存器36,NV存储器地址寄存器38,和NV存储器数据寄存器40中。然后通过线42向非易失性存储器出发一个控制信号,来命令存储器执行一个数据传送。
NOVRAM能识别四个信号:“读”、“写”、“存储”和“再调用”。“读”和“写”将直接改变易失性部分16a,“存储”命令将改变非易失部分16b,使之成为易失部分内容的一份复制,“再调用”命令则非易失部分的内容复制到易失部分。在具体操作中,“写”和“再存储”命令同时被发出以确保写入非易失性存储器的数据不丢失。
上述关于非易失性存储器的特性,对于NOVRAMS在工业中是极为普通的,且在本技术领域中是人所共知的。它们对本发明的使用者也是完全明白无误的。他们就象那些熟悉本技术领域的人一样能很容易看到这些特性。很明显如果其它类型的存储器被用作非易失性存储器16,则上述描述的控制序列应作相应的变化。
现在参见图4,说明存储器板比较器。
每一个存储器板10包括一个PROM44,通过该板的CPU,它被用来决定哪些送给地址总线12的存储器地址是该板地址。送入的存储器地址的高五位被放在PROM地址线46上。从配置寄存器中来的五位被放在地址线48上,PROM44用四位向量50作出响应告诉存储器板,如果有的话,哪一个存储体或四分之一板应被存取。PROM44已被编程好了能够识别那些用来保证一个响应的码和地址的组合。如果四位向量全为零,则存储器板不作出任何响应。否则构成向量50的四条线之一将为一逻辑“1”,它将允许一存储体或存储阵列24的四分之一被存取。当然可以用一个比较器来比较一下两组五位地址,来允许整个存储器板被存取。
在了解本较佳实施方案后,那些本领域有一般技术水平的人会意识到,在不超过本发明所指的范围内,有许多其它实施方法也是可行的。
Claims (1)
1、用于一数据处理系统的存储器地址的自动重新配置的装置,该数据处理系统拥有多个存储器板,且每一存储器板拥有多个存储器器件,该装置包括:
在每块存储器板上的非易失性存储装置,它用来存储有关该存储器板地址范围大小的信息;
处理装置,它用来读出上述非易失性存储装置的内容,将该内容收集到临时存储装置中,为每个存储器板产生一个地址空间分配,且将该地址空间分配写入每个存储器板;
在每块存储器板上的寄存器装置,它用来存储上述地址空间分配;
在每块存储器板上的比较装置,它用来比较上述数据处理系统的存储器总线上断言的地址和上述地址空间分配;
在每块存储器板上的允许装置,它用来响应上述比较装置,允许存取上述存储器板上的上述存储器件中被选中的器件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 85101225 CN85101225A (zh) | 1985-04-01 | 1985-04-01 | 存储器板的自动重新配置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 85101225 CN85101225A (zh) | 1985-04-01 | 1985-04-01 | 存储器板的自动重新配置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN85101225A true CN85101225A (zh) | 1987-01-24 |
Family
ID=4791701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 85101225 Pending CN85101225A (zh) | 1985-04-01 | 1985-04-01 | 存储器板的自动重新配置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN85101225A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100368993C (zh) * | 2004-11-18 | 2008-02-13 | 国际商业机器公司 | 集成封装件的设备、系统及方法 |
CN100426277C (zh) * | 2002-07-24 | 2008-10-15 | 英特尔公司 | 用于控制多个输入/输出设备的方法和系统 |
CN101015995B (zh) * | 1998-11-02 | 2014-06-04 | 精工爱普生株式会社 | 一种墨盒与使用这种墨盒的打印机 |
-
1985
- 1985-04-01 CN CN 85101225 patent/CN85101225A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101015995B (zh) * | 1998-11-02 | 2014-06-04 | 精工爱普生株式会社 | 一种墨盒与使用这种墨盒的打印机 |
CN100426277C (zh) * | 2002-07-24 | 2008-10-15 | 英特尔公司 | 用于控制多个输入/输出设备的方法和系统 |
CN100368993C (zh) * | 2004-11-18 | 2008-02-13 | 国际商业机器公司 | 集成封装件的设备、系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0136178A2 (en) | Automatic memory board reconfiguration | |
US7404031B2 (en) | Memory card, nonvolatile semiconductor memory, and method of controlling semiconductor memory | |
US6202138B1 (en) | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices | |
KR100209853B1 (ko) | 플래시메모리카드 | |
CA1180463A (en) | Method and apparatus for hashing cache addresses in a cached disk storage system | |
US5651135A (en) | Multi-way set associative cache system in which the number of lines per set differs and loading depends on access frequency | |
US7111140B2 (en) | Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices | |
US8423841B1 (en) | Method and systems for memory testing and test data reporting during memory testing | |
CN100538659C (zh) | 非易失性存储器系统内有效允许失序写处理的方法和装置 | |
US5129074A (en) | Data string storage device and method of storing and retrieving data strings | |
US4500954A (en) | Cache bypass system with post-block transfer directory examinations for updating cache and/or maintaining bypass | |
US6243790B1 (en) | Methods and apparatus for re-arranging logical drives in a disk array apparatus | |
US20030198100A1 (en) | Method of controlling the operation of non-volatile semiconductor memory chips | |
US20010023472A1 (en) | Data storage control method and apparatus for external storage device using a plurality of flash memories | |
EP0569040A2 (en) | Memory card device | |
EP0336435A2 (en) | Memory diagnostic apparatus and method | |
US5067105A (en) | System and method for automatically configuring translation of logical addresses to a physical memory address in a computer memory system | |
US5483491A (en) | Memory card device | |
US5822513A (en) | Method and apparatus for detecting stale write data | |
US6459292B1 (en) | Testing system for semiconductor device | |
CN85101225A (zh) | 存储器板的自动重新配置 | |
JPS5844263B2 (ja) | 記憶制御回路 | |
EP0457345B1 (en) | Information processing apparatus | |
CN107908475A (zh) | 一种内存容量判断方法、服务器及存储介质 | |
CN115458021A (zh) | 存储器装置及其略过不良区块的操作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |