CN85109307A - 计算机存贮器管理系统 - Google Patents
计算机存贮器管理系统 Download PDFInfo
- Publication number
- CN85109307A CN85109307A CN198585109307A CN85109307A CN85109307A CN 85109307 A CN85109307 A CN 85109307A CN 198585109307 A CN198585109307 A CN 198585109307A CN 85109307 A CN85109307 A CN 85109307A CN 85109307 A CN85109307 A CN 85109307A
- Authority
- CN
- China
- Prior art keywords
- module
- mentioned
- signal
- storage
- memory
- 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
- 230000015654 memory Effects 0.000 claims abstract description 95
- 230000004044 response Effects 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 10
- 230000005055 memory storage Effects 0.000 claims description 29
- 238000007726 management method Methods 0.000 claims 10
- 230000002730 additional effect Effects 0.000 claims 1
- 238000003491 array Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 6
- 101001062222 Homo sapiens Receptor-binding cancer antigen expressed on SiSo cells Proteins 0.000 description 8
- 102100029165 Receptor-binding cancer antigen expressed on SiSo cells Human genes 0.000 description 8
- 101150076031 RAS1 gene Proteins 0.000 description 4
- 101150045048 Ras85D gene Proteins 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 101000898746 Streptomyces clavuligerus Clavaminate synthase 1 Proteins 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012797 qualification Methods 0.000 description 3
- 101100219622 Escherichia coli (strain K12) casC gene Proteins 0.000 description 2
- 101000860173 Myxococcus xanthus C-factor Proteins 0.000 description 2
- 101150111685 cas4 gene Proteins 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- ZUILKEWVWUKSAO-ZZXKWVIFSA-N 4-coumaroyltriacetic acid lactone Chemical compound C1=CC(O)=CC=C1\C=C\C(=O)CC1=CC(O)=CC(=O)O1 ZUILKEWVWUKSAO-ZZXKWVIFSA-N 0.000 description 1
- 102100030310 5,6-dihydroxyindole-2-carboxylic acid oxidase Human genes 0.000 description 1
- 101100112084 Arabidopsis thaliana CRT2 gene Proteins 0.000 description 1
- 101100235014 Capsicum annuum LCY1 gene Proteins 0.000 description 1
- 101100247319 Drosophila melanogaster Ras64B gene Proteins 0.000 description 1
- 101000773083 Homo sapiens 5,6-dihydroxyindole-2-carboxylic acid oxidase Proteins 0.000 description 1
- 101150019218 RAS2 gene Proteins 0.000 description 1
- 101000761220 Streptomyces clavuligerus Clavaminate synthase 2 Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
- G06F12/0653—Configuration or reconfiguration with centralised address assignment
Abstract
计算机存贮器管理系统是用来检测联接在计算机系统中含有多个存贮器模块的预先确定的存贮体上是否存在着存贮器芯片,接收和重新变换地址信号,而在响应时,随即启动预先确定的存贮体。一个可编程的逻辑阵列为启动存贮器模块上的预先确定的存贮体而发启动信号,以响应接收来自一个主控制器的地址和控制信号。这重新变换处理是在加电过程中完成的,因此,在以后的存贮器访问过程中就无需等待状态。该系统是自适应和廉价的。
Description
本发明通常与计算机系统有关,特别是与存贮器管理系统有关。这管理系统是用来检测一个计算机系统中是否存在存贮器电路,在响应时重新变换存贮器地址的。
计算机系统通常由一个或多个存贮器模块组成,每个模块由多个存贮体组成,而每个存贮体上连接着存贮电路,例如“动态随机访问存贮器”(DRAMS)。一个主控制器(例如一个CPu)一般生成地址信号,用以访问存贮器电路的预先确定的存贮器单元。例如,一个地址信号通常由存贮模块接收并在其中译码,使之启动一个预定的存贮体,并访问一个由地址信号所指定的DRAM存贮器单元。
在一个固定的(不可扩展的)存贮空间的简单的计算机系统中,通常在一个已生成的地址信号和DRAM存贮单元之间存在一个一一对应的关系。
可以期望的是存贮体的数目是可以扩展的,这为实现软件的修改或存贮大量的数据等功能,提供大量的存贮器电路。在过去,为了进行存贮器的扩展,通常需要对昂贵的存贮器模块地址译码电路进行重新设计和重新布线。
为了克服昂贵的重新设计和重新布线这一缺点,存贮器管理系统先前的技巧是利用了多个硬件地址多路转换器和一个包括了在应用程序执行过程中用来进行地址重新变换的子程序操作系统。这个重新变换处理被看作是“联机的”,这个经过重新变换的地址信号用来对实际的DRAM存贮单元进行访问。前面提到的重新变换子程序和附加的硬件是复杂的,而且人们发现该子程序的执行是消耗时间的。典型地,为了完成地址重新变换需要一个或多个主控制器处于等待状态,这是因为有多条存贮器切换访问指令插在程序编码中。这样做,实际上既降低了应用程序的运行速度,又增加了存贮器访问出错的可能性。
该重新变换子程序是专用的,或是不能自适应的。因为若进一步对存贮器进行扩展(或减少),需要对程序的各种参数进行修改,这通常也需要替换存放操作系统的软盘或只读存贮器(ROM)。
根据目前的发明,一个廉价的、自适应的存贮管理系统提供了用来检测在一个计算机系统中的多个存贮器模块上,预先确定的存贮体上是否连接着存贮器电路,在一个初始化过程中,主控制器产生重新变换地址信号,接着,产生一个启动信号,紧接着启动预定的存贮器。
根据一个择优方案,该启动信号电路由可编程的逻辑电路组成,该逻辑电路为启动一个预定的存贮体而产生前面讲到的那种启动信号。在每个程序的访问过程中没有任何处于等待状态方式中的那种时间消耗。
一个典型的计算机系统可以有二个存贮器模块,即主存模块和扩展的存贮模块,每个模块容纳高达2.5兆字节的存贮(每个模块使用5个512K字节的存贮体),主存模块与扩展模块的存贮器地址必须是紧连的。因此,扩展存贮模块的第一个存贮单元地址应该是280000(十六进制)。然而,如果主存模块没有达到最大限度(2.5MB)而实际上仅有1MB的DRAM芯片连接在那里(即5个存贮体中只有两个是可填充的)那么,在主存贮模块中,最后一个有效的存贮单元地址应是OFFFFF(十六进制)且下接相邻的地址应该是100000(十六进制)。
根据目前的发明,在主存模块中应该仅检测出1兆字节的存贮器,并且,预置的控制信号被传递给启动信号电路。如果主控制器产生一个100000(十六进制)地址信号,那么在扩展模块上,启动信号电路把从280000(十六进制)开始的存贮器地址重新变换到一个100000(十六进制)的地址上,同时,主存模块上的启动信号电路闭锁从100000(十六进制)以后的存贮器地址空间,因而使得对扩展存贮模块上的第一个单元的访问而不会在主存贮模块上的单元地址100000上进行。而,主存贮模块的第二个存贮体是与扩展存贮模块的第一个存贮体相邻接的。
该系统是廉价的,存贮器检测处理最好是在第一个存贮器访问前执行(即在加电时),如前述的技巧-“联机”技术一样,在以后的存贮器访问过程中,不需要等待状态。
如果主存贮器模块的后续体是被填充的(即第三,第四或第五个体等等),在初始化阶段或加电时,该存贮器管理系统测试被扩展的存贮体是否存在,并且重新变换扩展存贮模块的第一个存贮单元地址,使得与已扩充的主存贮模块的最后一个有效地址相邻接。因此,该系统是自适应的,并且克服了先前技巧中的缺点-需要通过对软盘或只读存贮器的替换或大量的重新设计和重新布线,来修改操作系统程序。
通常,本发明是用于连接多个存贮器模块的一个计算机存贮器管理系统,每个存贮器模块有一组存贮体,并预先确定哪些存贮体上有一个或多个存贮器电路连接在上面。本发明由以下几部分组成:用于生成地址信号的电路;用于接收第一批地址信号,作为响应检测连接在预定的存贮体上的存贮器电路是否存在的电路技术;用于连接和重新变换下一批地址信号,作为响应而邻接地启动预定的存贮体这样的电路技术。在对上述存贮模块进行寻找时,接到前述的多个存贮器模块上的存贮器电路的数量变化是自动进行补偿的。
更具特色的是:本发明是一个用于连接多个存贮器的计算机存贮器管理系统,每个存贮器有多个存贮体,并已预定它们有一个或多个存贮器电路连到那里。本发明由以下电路组成:一个生成地址信号的电路,用于接收已预定的第一批地址信号,并作为响应与启动一组存贮体中后继的一些存贮体而生成的启动信号的电路;一个用于检测连接到预定的上述已成功启动了的一个存贮体上的存贮电路的存在与否,并且作为响应而生成一个或多个控制信号的电路;用于接收该控制信号和下一个地址信号,作为响应,重新变换已接收的后继地址信号并邻接地启动预定存贮体的电路。
本发明也是一个计算机存贮器管理的方法,它用于连接一个或多个存贮模块,各个存贮模块有多个存贮体,其中预先确定的一组上连接有一个或多个存贮电路。本方法包括生成地址和控制信号等步骤,接收第一组地址和控制信号,作为响应,检测连接到预定存贮体上的存贮器电路,而接收第二组地址和控制信号,并邻接地启动相应的一组预定存贮体以作为对接收的第二组地址和控制信号的响应,然后检测存贮器电路是否存在。
如要对本发明更好的了解,可参考下列相应图解和随后的详细说明。
图1是依据现发明的一个存贮器管理系统的框图。
图2是依据现发明的一个择优方案的启动信号生成电路的示意图。
参看图1,一个主存贮模块1和一个扩展存贮模块2都是由多个存贮体30,B1,B2……BN所组成。每个存贮模块通常由一个或多个DRAM芯片(例如,64K或256K的DRAM芯片)所组成。存贮体的各动态随机访问存贮器的数据端接到数据总线3上,存贮体上的地址输入端连接到一个连在主控制器5上的地址总线4的Al~Ai地址线上,主控制器类似于微处理器。
第一级和第二级启动信号生成电路6A和6B的启动输出端分别连到主存贮模块1和扩展存贮模块2各自相应的存贮体B0,B1,B2……BN的输入端上。启动信号电路上的第一级多个地址输入端被连接到地址总线4的地址Ai~Aj上,并且,第二级多个输入端被连到一个连在主控制器5上的控制总线7上。此外,在地址总线4和控制总线7信号分别控制下,一个从主控制器5输出的RSTVEC信号被连到启动信号电路6A的另一个输入端上,并通过锁存器8接到启动信号电路6B的另一个输入端上。
在运行时,为了使用启动信号电路6A,主控制器5在地址总线4和控制总线7以及它自己的输出端RSTVEC上生成预定地址信号和控制信号。作为响应,电路6A在软件控制下连续地启动主存贮模块1的存贮体B0,B1,B2……BN,,并且主控制器5检测连接在那里的存贮器芯片是否存在。
例如,存贮器B0由启动信号电路6A来启动,并且主控制器5在数据总线3上生成一个数据信号,存贮在存贮体B0的一个预先确定的存贮单元中,然后,主控制器5读出这个存贮单元中的数据信号,如果存贮体B0上有DRAM芯片连接,则主控制器5读的是先前存贮在其中的数据信号。然而,如果存贮体B0上没有DRAM芯片连接,则主控制器5就会由于访问了不存在DRAM芯片而读到一个缺席信号,如FF(十六进制),在检测DRAM芯片的过程中,存贮体B0保持已启动状态,启动存贮体B1,反复对DRAM芯片作检测处理。
对空存贮体(即没有连接DRAM芯片的存贮体)检测时,主控制器5闭锁这个空存贮体,并在启动信号电路中存放预定的控制信号,表明具有DRAM芯片的主存贮模块上的存贮体B0,B1,B2……BN的号码。这样,扩展存贮模块2的第一个有效地址被重新变换,以便与主存贮模块1的最后一个有效地址相邻接。对图2将在下面更详细地说明。
因此,在主控制器5执行一个程序的过程中,存贮器地址由电路6A和6B进行重新变换,以致分别地启动主存贮模块1和扩展存贮模块2的邻接存贮器单元。
RSTVEC信号是一个复位信号,当系统恢复时允许对ROM(只读存贮器)进行向量存取,它闭锁所有的存贮模块。为了解决在重新变换处理中对数据总线的竞争,经过锁存器8,有选择地启动各主、扩展存贮模块。
参看图2,这里给出了启动信号6A或6B的简图,根据本发明的择优方案,存贮模块1和2都是由表示为B0~B4的5个存贮体组成,一个可编程的阵列逻辑(PAL)9的ADDRESS输入端与地址总线4的地址线A17~A22相连接,地址线A17~A22又与图1中的地址线Ai~Aj相对应。图1的数据总线3的数据线D0~D4被分别连接到数据寄存器10的相应的数据输入端1D~5D上。寄存器10的复位输入端连到控制总线7的控制线RESET上。寄存器10的输出端1Q,2Q,3Q,4Q和5Q连到可编程的阵列逻辑PAL9的控制输入端CTRL上,并且相应地产生控制信号A、B、C、D和X。这些将在下面更详细地论述。用RSTVEC表示的PAL9的另一个控制输入端按上面讨论如图1所示的那样,是与主控制器5的RSTVEC输出端相连接的,在启动信号电路6B中,PAL9的输入端RSTVEC连接到与主控器5的输出端RSTVEC相连接的锁存器8的输出端。
PAL9的输出端RCAS0,RCAS1,RCAS2,RCAS3和RCAS4被相应地连接到“与非门”11,12,13,14和15的第一组输入端上,并且相应地接到“非门”16、17、18、19和20上。“与非门”11~15的第二组输入端和“与非门”21的输出端相接。
“与非门”21的第一个输入端与“非门”22的一个输出端相连,“非门”22的输入端与连在控制器5的控制总线7的控制线REFRESH相连接。“与非门”21的第二个输入端与串联的“非门”23和24的输出端相连,“非门”24的输入端连到主控制器5的地址线A23上。并且,“非门”24的输出端连到“非门”23的输入端上。
“与非门”11~15的输出端相应地连到“与非门”25~29的第一组输入端上,并且,非门16~20的输出端相应地连到“与非门”30~34的第一组输入端上,“与非门”25~34的输出端相应地连到电阻器35~44的输入端上。
输出电阻器35~39相应地连到行地址选择输出端RASO~RAS4上,同时,输出电阻器40~44相应地连到列地址选择点CAS0~CAS4上。行、列地址输出端RAS0~RAS4与CAS0~CAS4连到主存贮模块1的存贮体B0~B4的相应的行和列启动输入端上。
从主控制器5来的一个地址选择输出端AS接到“非门”45上,而“非门”45的输出端接到“与非门”25~29的第二组输入端和延时线46的一个输入端(IN)上。延迟线46的一个输出端(OUT)连到“与非门”30~34的第二组输入端上。
在运行时,首先检测主存贮模块1的存贮体B0~B4的相邻存贮空间(见图1),PAL9为响应接收到其地址和控制输出(ADDRESS和CTAL)端上的预定信号,而在RCAS0~RCAS4的预定输出端上生成有源低信号。象大家所熟悉的编程一样,这结果是根据本表1和表2中列出的方程式得来的。
根据择优方案,正如上面所讨论的存贮模块1和2(图1)都是由5个包含64K或256K字节的DRAM芯片的存贮体B0~B4组成的,如果主存贮模块1是由64K的芯片组成,它可容纳达640K字节的数据。如果主存模块是由256K的芯片组成,它可容纳达2.5兆字节的数据,同样地,扩展存贮模块2也将由64K或256K芯片组成,但二者不同时使用。
用在RCAS0~RCAS4输出端上生成有源低启动信号和启动预定存贮体的PAL方程式(逻辑表达式)在表1和表2中给出:
择优方案的操作将在图1、2以及表2中说明,并且已考虑到把256K芯片都分配在主存贮器模块1的B0和B1存贮体上,以及扩展存贮器模块2的B0存贮体上。
根据择优方案,3号数据总线是一个16位的数据总线,而DRAM芯片都是一位组件。为了产生16位的数据信号,每一存贮体上配置16个DRAM芯片。因此,按照上述情况布置,每一存贮体安装一个512K字节的存贮器,从而主存贮模块1的存贮容量为1M字节扩展存贮器的模块2的存贮容量为512K字节,整个系统存贮容量达1.5M字节。
在响应系统复位式加电时,执行一个初始化程序。此时,主控制器5在地址总线4的A3-A23地址线上(图1),以及在控制总线7的
RSTVEC输出端和
RESET线上产生逻辑低信号,使得寄存器10的1Q-5Q输出端和PAL9的ADDRESS,CRTL和
RSTVEC输入端具有逻辑低信号,并且逻辑低信号
RSTVEC按照已知的方式被锁存在由地址总线4和控制总线7控制的锁存器8中。此时,一个逻辑高信号在
RSTVEC输出端产生并被施加给启动信号电路6A。因此,PAL9的
RCASO输出变高,使主存贮器模块1的存贮体B0上512K字节存贮区被启动。
由于
RSTVEC被锁存器8锁存在低逻辑电平,启动信号电路6B仍然处于闭锁(图1),故扩展存贮模块2的B0-B5存贮体没有一个被启动,从而避免了在3号数据总线上的竞争(图1)。
为了确定DRAM芯片是否和存贮体B0相连接,在上面所说的已启动的512K字节中,选择一个预先确定的存贮单元(细节下述)并且通过3号数据总线把5号控制器中的一个十六进制数据写入此单元中,当一个DRAM芯片被连接到已启动的存贮体B0时,这个数据信号被5号主控制器读出。但是,倘若无一芯片与这个已启动的存贮体B0连接,5号控制器从那里接收到一个缺席信号FF(十六进制)。
为了确定存贮器的容量(即存贮体B0-B4已连接芯片的个数),每个存贮体按上述方法逐次的被启动和检查。
例如,为了启动存贮体B1,5号控制器产生一个逻辑高信号,施于寄存器10的1D输入端,并把信号存在那里。一个逻辑高信号(A)从寄存器10被输送到PAL9中控制输入端(CTRL)中的一个对应端。因此,当X、B、C和D处于逻辑低电平而A处在逻辑高电平,PAL9的(
RCAS1)输出变为逻辑低电平,以响应由5号主控制器在A22-A19地址线上产生的地址信号0001(见表2)。
从
RCAS1输出的逻辑低信号被加到与非门12的第一输入端。与非门21的输出通常处在逻辑高电平,但是,当响应一个有源低
REFRESH信号时就变为逻辑低电平。此
REFRESH低信号是由地址线A23接收到的逻辑高信号并通过与它相连接的反相器22反相而产生的。所以,与非门12的输出从通常逻辑低电平变为逻辑高电平,以响应PAL9的
RCAS1输出端变为逻辑低电平,或者是在与非门21的输出端变为逻辑低电平(即在刷新DRAM期间。其进一步细节在下面讨论)。
从与非门12输出的逻辑高信号被加到与非门26的第一个输入端。与非门26的第二个输入端接收一个逻辑高信号。此信号是响应于主控制器5产生的一个有源低地址选择信号
As,由反相器45接收反相为信号后加到与非门26。与非门26输出端在其输入端接收到上面所说的逻辑高电平时,变为逻辑低电平,从而产生了一个行存贮选择信号
RAS1,用来启动在B1存贮体上存贮器的所有行。
有源低
RCAS1信号输出被与非门17反相并加到与非门31的第一输入端。反相后的
As信号通过延迟线46大约被延迟了80毫微秒,然后加到与非门31的第二个输入端。因此,与非门31的输出变为逻辑低电平,从而在
RAS1信号产生大约80毫微秒后,产生一个列存贮选择信号
CAS1,用来启动存贮体B1上存贮器的每一列,进而全部启动B1存贮体。
在用上面已说过的方式将8位列地址信号锁存前,在行选择输出
RAS1和列选择输出
CAS1之间安排了大约80毫微秒的时间延迟,这是为了锁存8位行地址信号提供足够的时间,而地址信号的锁存是为了多路传输各DRAM电路的地址输入信号(即是用一个预先确定好数量的电容负载与DRAM芯片相联系)。
为了检测DRAM存贮芯片是否连接在B1存贮体上,当存贮体B1接到到
RAS1和
CAS1信号被启动时,主控制器5按上述讨论的,往存贮体B1中那个预先确定的存贮单元写入,然后再读出上面所说的数据信号。
按照上述讨论,根据现在的情况,主存贮模块的B0和B1存贮体上已连接有DRAM芯片。从当前的情况,由主控制器5来检测DRAM芯片的存在,接着检查存贮体B2。
为了检查存贮体B2,逻辑低C、D和X信号被用作PAL9的CTRL输入,并且逻辑高A和B信号也加到那上面,使得
RCAS2输出产生一个有源低逻辑信号,作为接收到由A22-A19地址线产生的地址信号0010(十六进制)的响应(表2和图2)。为了启动存贮体B2,与非门27和32的
RAS2和
CAS2输出分别变为逻辑低。主控制器5向存贮体B2中的一个预先确定的单元写入并试图读出一个数据信号。但是,由于没有DRAM芯片连接在那里,读出的只是预先确定的缺席信号FF(十六进制)。故,主控制器5仅仅对存贮块B0和B1检测DRAM芯片的存在,并且产生一个有着逻辑高D。信号和逻辑低D1-D3信号的一级控制信号存入寄存器10。从而,寄存器10产生一个控制信号加到PAL9的CTRL输入端,其中A控制信号处在逻辑高电平,B、C和D信号处在逻辑低电平。因此,只有主存贮模块1的B0和B1存贮体被启动来响应接收再从主控制器5来的地址信号。
然后,主控制器5产生一个二级控制信号存放在启动信号电路6B中,为使在地址线A17-A22上接收的地址信号被重新变换以便使主存贮模块1上的最后一个可用的存贮单元和扩展存贮模块2上的第一个存贮单元相邻接。
从上面的讨论看出,启动信号产生电路6A和6B具有相同的设计(如图2所示)。但是,电路6A中,PAL9的
RSTVEC输入端是直接连接在主控制器5的
RSTVEC输出端,而电路6B中PAL9的
RSTVEC输入端是连接在锁存器8的输出端并且锁存器8的一个输入端和主控制器5的
RSTVEC输出端相连接。为了能容纳64K或256KDRAM芯片,电路6A或6B的任一PAL9可以按表1或表2的公式来编程。
主控制器5把上述的二级控制信号装入启动信号电路6B的寄存器10中。根据二级控制信号,X和C信号处在逻辑高电平,并被施加到PAL9的控制入端(CTRL)。A、B和D信号处在逻辑低电平,并且也被加到那里。此时主控制器切换锁存器8,使得对部件6B的
RSTVEC变为逻辑高电平。启动电路6B的PAL9的
RCASO输出端以响应由A22-A19地址线产生的地址信号0010(十六进制)而变成一个有源逻辑低电平,导致了PAL公式中的第三个“或”运算项为真(表2)。
关于表2可看到:随着主存贮模块1的B0存贮体被启动,地址线A22,A21、A20和A19的值全为0;随着存贮模块1的B1存贮体的启动,A22,A21,A20和A19的值分别为0,0,0和1;随着扩展存贮模块2的存贮体B0的启动,A22,A21,A20和A19的值分别为0,0,1和0。因此,可看到扩展模块2的存贮器起始地址和主存贮模块1的最后一个地址单元是邻接的。
为了确定DRAM芯片是否连接在扩展存贮模块2的B0存贮体上,主控制器5在B0中的一个预先确定的存贮单元中写、读数据。
下一步,扩展存贮模块2的B1存贮体被启动以响应启动电路6B中PAL9的
RCAS1输出端变为有源逻辑低信号。
RCAS1输出变为有源低电平以响应被加到PAL9的A22,A21,A20和A19输入端上一个0011的值,导致了表2中的
RCAS1公式的第三个“或”运算项为真。B1存贮体被写入信号用来确定DRAM芯片是否被连接在其上。而从B1体中读出值为FF,表明没有DRAM芯片连接在B1存贮体上。
如上面讨论,DRAM芯片在响应主控制器5产生的
REFRESH信号时,周期地被刷新。与非门11-15的每一个输出端变为逻辑高电平以响应
REFRESH信号的产生和地址总线4中A23地址线上的逻辑高信号(图1)。与非门25-29的输出端变为逻辑低电平以响应与非门11-15的输出端变为逻辑高电平和响应对逻辑低
As信号经过非门45而变为逻辑高信号的接收。因此,与非门25-29的
RASO--
RAS4行地址输出端同时变为逻辑低电平,以造成2.5M字节存贮器的刷新(或在64K芯片中使用640K字节)。
在一个成功的样机中,主存贮器模块1可容纳6个存贮器,这个数决定于是用64K还是256K字节DRAN芯片。为了能够再定位初始地址以便邻接主存贮模块1的最后有效存贮单元,表3列出了在主存贮模块1上与各种存贮体相一致的A,B和C信号的逻辑电平,它们可用于启动信号电路6B的PAL9的控制输入(CTRL)。
表3
C B A 存贮体积(字节数)
0 1 1 512K
0 0 1 640K
1 0 0 1M
1 0 1 1.5M
1 1 0 2M
1 1 1 2.5M
为了恰当地利用本发明,DRAM芯片必须连接在主存贮模块的邻近的存贮体。例如,如果主存贮模块1的B0,B1和B3存贮体都连接DRAM芯片,而B2存贮体却没连接芯片,则本发明就不能恰当地起作用。特别是,主控制器5就只检测连接到B0和B1存贮体上的芯片存在。
变动或更换设置可以由非常熟悉本发明的本技术领域的人来设计。例如,主存贮模块1和扩展存贮模块2可由多于或少于五个的存贮体或更多数量的存贮模块来组成,相应的启动信号电路也能够被使用,并且,被连接在这上面的存贮器芯片可以分别大于或小于64K或256K字节,同时表1和表2给出了PAL方程作合适的改变。
另外,虽然这儿描述的只是参考采用DRAM芯片,其它存贮电路,比如磁泡存贮器或静态随机存贮存贮器等都可使用,但要对启动信号产生电路6A和6B作适当的修改。
此外,虽然PAL电路在这里被优先选来实现本发明的启动信号电路,其它可编程逻辑电路也可使用。例如,可编程逻辑阵列,等等。
对设计上的其它设置或变更可由理解本发明的人来设计。所有在发明范围内和所涉及的都在后面所附的权利要求中确定。
Claims (8)
1、一个用于连接第一个存贮模块1和第二个存贮模块2的计算机存贮管理系统包括一个用于产生地址和控制信号的主控制器5,以及连接在该主控制器和第一个,第二个存贮模块1和模块2上的相应的可编程逻辑电路6A和6B,每一个存贮模块有一组存贮体B0,B1,……Bn,每个存贮模块可预先确定这些存贮体中有哪几个连接了一个或多个存贮电路,
本计算机管理系统的特征在于,上述的主控制器5检测存贮电路的存在,此电路连接上述的第一个存贮模块1的预先确定的存贮体B0,B1,B2,……Bn并产生上述的第一个和第二个控制信号以作为响应,上述的可编程逻辑电路6A和6B分别接收到对应的第一个和第二个控制信号和上述产生的地址信号中预先确定的那些信号,并作为响应产生启动信号来触发启动上述第一个模块1和第二个模块2的预先确定的存贮体B0,B1,B2,……Bn,使得当寻址该模块时,连接在上述第一个和第二个存贮模块上的存贮电路数量上的变化可自动补偿。
2、根据权利要求1所确定的计算机存贮管理系统,其特征在于加入用于周期地产生刷新信号的刷新控制电路21,22,23和24。
3、根据权利要求2所确定的计算机存贮管理系统,其特征在于,上述的可编程逻辑电路6A和6B中的任何一个都是一个可编程阵列逻辑电路9。
4、根据权利要求3所确定的计算机存贮管理系统,其特征在于,一级和二级的行和列编码电路的附加性能,每一编码电路包括:
(a)一个连接在上述主控制器5的反相器45,用来接收从主控制器来的存贮器选择控制信号;
(b)一个连接在上述反相器45上的延迟电路46用于延迟收到的存贮器选择控制信号;
(c)第一与非门组11-15的输入端连接在上述的刷新控制电路和上述可编程阵列逻辑电路9的一个对应的预先确定的输出端;
(d)一组非门16-20的输入端连接在上述可编程阵列逻辑电路9的一个对应的输出端,用来接收和反相上述的启动信号;
(e)第二与非门组25-29的第一输入端组连接在上述第一与非门组11-15的输出端,第二输入端组与上述的反相器45连接,用来产生行选择信号以响应接收上述的存贮器选择信号和生成刷新或启动信号。
(f)第三与非门组30-34的第一输入端组与上述的非门组16-20的输出端相连接,第二输入端组与上述延迟电路46的输出相连接,用来产生列选择信号,以响应接收延迟的上述存贮器选择信号和反相的启动信号,借助于这些行、列选择信号的产生,可启动上述存贮体中对应的行和列。
5、根据权利要求1、2、3或4所确定的计算机存贮器管理系统其特征在于,上述的可编程逻辑电路6A和6B都是一个可编程逻辑阵列。
6、一种用于一个或多个存贮器模块的一种计算机存贮器管理方法,该存贮器模块有一组存贮体B0,B1,B2,……Bn,预先确定这些存贮体中的哪几个有一个或多个存贮电路与其连接,该管理方法的特征在于下列步骤:
(a)产生地址信号和控制信号;
(b)接收上述的第一组信号用响应存贮体的信号来检测是否存在连接在预先确定存贮体的存贮电路;
(c)接收上述的第二组信号并邻接启动相应的那些预先确定存贮体,以响应接收的第二组信号以及检测上述存贮电路,因此,连接在存贮模块上的存贮电路数目的变化,在对上述模块寻址时被自动补偿。
7、根据权利要求6所确定的方法中,其特征在于,对检测存贮电路存在的步骤可进而由下述几步骤组成:
(a)产生一个或多个数据信号存贮在上述的存贮体里;
(b)从上述预先确定的存贮体中检索存贮的数据信号,从上述的其它存贮体中检索缺席信号,从而进一步产生用于表明上述被检测的存贮电路存在的控制信号。
8、根据权利要求6所确定的适用于主存贮模块1和扩展存贮模块2的一种计算机存贮管理方法,每个存贮模块都有一组存贮体,并预先确定这组存贮体中的哪几个连接有一个或多个存贮电路,该管理方法的特征在于进而具有下列步骤:
(a)产生第一个地址信号加给连接在上述主存贮模块1上的第一可编程逻辑电路6A,并作为响应依次启动主存贮模块1的存贮体B0,B1,B2,……Bn;
(b)检测上述主存贮模块1的被启动的存贮体中,那些预先确定的存贮体上是否连接有存贮电路;
(c)生成和存贮第一和第二个控制信号,表示存贮电路连接在上述主存贮模块1中预先确定的存贮体上;
(d)把上述的第一个控制信号加给第一可编程逻辑电路6A;
(e)把上述的第二控制信号加给连接在该扩展存贮模块2上的第二个可编程逻辑电路6B;
(f)进一步产生地址信号加给上述的第一个和第二个可编程逻辑电路6A和6B,并邻接地启动上述主存贮模块1和扩展存贮模块2中那些预先确定的存贮体以作为响应,因此,连接在上述主和扩展存贮模块上的存贮电路的数目变化在对这些模块寻址时自动补偿。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA482,566 | 1985-05-28 | ||
CA000482566A CA1234224A (en) | 1985-05-28 | 1985-05-28 | Computer memory management system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN85109307A true CN85109307A (zh) | 1986-11-26 |
Family
ID=4130575
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN198585109307A Pending CN85109307A (zh) | 1985-05-28 | 1985-12-26 | 计算机存贮器管理系统 |
Country Status (8)
Country | Link |
---|---|
US (1) | US4860252A (zh) |
JP (1) | JPS61273649A (zh) |
CN (1) | CN85109307A (zh) |
CA (1) | CA1234224A (zh) |
DE (1) | DE3607092A1 (zh) |
FR (1) | FR2582829A1 (zh) |
GB (1) | GB2175716B (zh) |
IT (1) | IT1185741B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1105970C (zh) * | 1996-05-20 | 2003-04-16 | 爱特梅尔股份有限公司 | 具有分布ram的现场可编程门陈列 |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2191879A (en) * | 1986-05-12 | 1987-12-23 | Computer Concepts | Integrated circuit device arrangement |
JPS63143689A (ja) * | 1986-12-06 | 1988-06-15 | Tokyo Electric Co Ltd | メモリカ−ドの容量検出装置 |
JPS63225837A (ja) * | 1987-03-13 | 1988-09-20 | Fujitsu Ltd | 距離付きベクトルアクセス方式 |
GB8725111D0 (en) * | 1987-03-13 | 1987-12-02 | Ibm | Data processing system |
US5038320A (en) * | 1987-03-13 | 1991-08-06 | International Business Machines Corp. | Computer system with automatic initialization of pluggable option cards |
US4926314A (en) * | 1987-03-17 | 1990-05-15 | Apple Computer, Inc. | Method and apparatus for determining available memory size |
GB2204721B (en) * | 1987-05-11 | 1991-10-23 | Apple Computer | Method and apparatus for determining available memory size |
US5003506A (en) * | 1987-06-02 | 1991-03-26 | Anritsu Corporation | Memory capacity detection apparatus and electronic applied measuring device employing the same |
US5226122A (en) * | 1987-08-21 | 1993-07-06 | Compaq Computer Corp. | Programmable logic system for filtering commands to a microprocessor |
US5040153A (en) * | 1987-10-23 | 1991-08-13 | Chips And Technologies, Incorporated | Addressing multiple types of memory devices |
IT1216087B (it) * | 1988-03-15 | 1990-02-22 | Honeywell Bull Spa | Sistema di memoria con selezione predittiva di modulo. |
US5027313A (en) * | 1988-08-25 | 1991-06-25 | Compaq Computer Corporation | Apparatus for determining maximum usable memory size |
JPH02245840A (ja) * | 1989-03-20 | 1990-10-01 | Fujitsu Ltd | 記憶装置 |
GB2232511B (en) * | 1989-05-19 | 1993-08-25 | Research Machines Ltd | Self configuring memory system |
US5237672A (en) * | 1989-07-28 | 1993-08-17 | Texas Instruments Incorporated | Dynamically adaptable memory controller for various size memories |
US5012408A (en) * | 1990-03-15 | 1991-04-30 | Digital Equipment Corporation | Memory array addressing system for computer systems with multiple memory arrays |
JPH0418638A (ja) * | 1990-05-11 | 1992-01-22 | Fujitsu Ltd | 静的メモリ割当て処理方法 |
EP0465050B1 (en) * | 1990-06-19 | 1997-09-03 | Dell Usa L.P. | A digital computer having a system for sequentially refreshing an expandable dynamic RAM memory circuit |
US5253354A (en) * | 1990-08-31 | 1993-10-12 | Advanced Micro Devices, Inc. | Row address generator for defective DRAMS including an upper and lower memory device |
US5269010A (en) * | 1990-08-31 | 1993-12-07 | Advanced Micro Devices, Inc. | Memory control for use in a memory system incorporating a plurality of memory banks |
US5293593A (en) * | 1990-10-11 | 1994-03-08 | Hewlett-Packard Company | Method and apparatus for the mapping of physically non-contiguous memory fragments to be linearly addressable |
EP0484760A3 (en) * | 1990-11-08 | 1992-07-15 | Kabushiki Kaisha Toshiba | Memory refresh control system upon connection of extension unit |
US5265231A (en) * | 1991-02-08 | 1993-11-23 | Thinking Machines Corporation | Refresh control arrangement and a method for refreshing a plurality of random access memory banks in a memory system |
EP0510241A3 (en) * | 1991-04-22 | 1993-01-13 | Acer Incorporated | Upgradeable/downgradeable computer |
US5551012A (en) * | 1991-04-22 | 1996-08-27 | Acer Incorporated | Single socket upgradeable computer motherboard with automatic detection and socket reconfiguration for inserted CPU chip |
US5761479A (en) * | 1991-04-22 | 1998-06-02 | Acer Incorporated | Upgradeable/downgradeable central processing unit chip computer systems |
US5291584A (en) * | 1991-07-23 | 1994-03-01 | Nexcom Technology, Inc. | Methods and apparatus for hard disk emulation |
EP0529142A1 (en) * | 1991-08-30 | 1993-03-03 | Acer Incorporated | Upgradeable/downgradeable computers |
US5687342A (en) * | 1991-09-18 | 1997-11-11 | Ncr Corporation | Memory range detector and translator |
EP0615190A1 (en) * | 1993-03-11 | 1994-09-14 | Data General Corporation | Expandable memory for a digital computer |
JPH07271711A (ja) * | 1994-03-28 | 1995-10-20 | Toshiba Corp | コンピュータシステム |
US6360285B1 (en) | 1994-06-30 | 2002-03-19 | Compaq Computer Corporation | Apparatus for determining memory bank availability in a computer system |
US5909702A (en) * | 1995-09-29 | 1999-06-01 | Intel Corporation | Memory address translations for programs code execution/relocation |
US5860134A (en) * | 1996-03-28 | 1999-01-12 | International Business Machines Corporation | Memory system with memory presence and type detection using multiplexed memory line function |
US5715207A (en) * | 1996-03-28 | 1998-02-03 | International Business Machines Corporation | Memory presence and type detection using multiplexed memory line function |
JPH09293015A (ja) * | 1996-04-24 | 1997-11-11 | Mitsubishi Electric Corp | メモリシステムおよびそれに用いられる半導体記憶装置 |
US5774135A (en) * | 1996-11-05 | 1998-06-30 | Vlsi, Technology, Inc. | Non-contiguous memory location addressing scheme |
JP3649011B2 (ja) * | 1998-01-09 | 2005-05-18 | 株式会社日立製作所 | コンピュータシステム |
TW591388B (en) * | 2003-02-21 | 2004-06-11 | Via Tech Inc | Memory address decoding method and related apparatus by bit-pattern matching |
TWI221221B (en) * | 2003-02-27 | 2004-09-21 | Via Tech Inc | Address decoding method and related apparatus by comparing mutually exclusive bit-patterns of address |
EP3099497B1 (en) | 2014-01-29 | 2020-01-22 | Hewlett-Packard Development Company, L.P. | Thermal ink jet printhead |
EP3258469B1 (en) | 2014-01-31 | 2021-10-06 | Hewlett-Packard Development Company, L.P. | Three-dimensional addressing for memory |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3435420A (en) * | 1966-01-03 | 1969-03-25 | Ibm | Contiguous bulk storage addressing |
US3815103A (en) * | 1973-01-02 | 1974-06-04 | Honeywell Inf Systems | Memory presence checking apparatus |
US4025903A (en) * | 1973-09-10 | 1977-05-24 | Computer Automation, Inc. | Automatic modular memory address allocation system |
DE2364408C3 (de) * | 1973-12-22 | 1979-06-07 | Olympia Werke Ag, 2940 Wilhelmshaven | Schaltungsanordnung zur Adressierung der Speicherplätze eines aus mehreren Chips bestehenden Speichers |
US4030080A (en) * | 1974-01-07 | 1977-06-14 | Texas Instruments Incorporated | Variable module memory |
US3959774A (en) * | 1974-07-25 | 1976-05-25 | California Institute Of Technology | Processor which sequences externally of a central processor |
JPS5444535B2 (zh) * | 1975-01-31 | 1979-12-26 | ||
US4050098A (en) * | 1975-11-17 | 1977-09-20 | Gulf & Western Industries, Inc. | Self-addressing modules for programmable controller |
JPS559260A (en) * | 1978-07-03 | 1980-01-23 | Nec Corp | Information processing system |
US4234934A (en) * | 1978-11-30 | 1980-11-18 | Sperry Rand Corporation | Apparatus for scaling memory addresses |
JPS5580164A (en) * | 1978-12-13 | 1980-06-17 | Fujitsu Ltd | Main memory constitution control system |
US4303993A (en) * | 1979-10-10 | 1981-12-01 | Honeywell Information Systems Inc. | Memory present apparatus |
JPS573158A (en) * | 1980-06-09 | 1982-01-08 | Hitachi Ltd | Discrimination system for package unit storage device |
US4468729A (en) * | 1981-06-29 | 1984-08-28 | Sperry Corporation | Automatic memory module address assignment system for available memory modules |
US4400794A (en) * | 1981-11-17 | 1983-08-23 | Burroughs Corporation | Memory mapping unit |
IT1142074B (it) * | 1981-11-24 | 1986-10-08 | Honeywell Inf Systems | Sistema di elaborazione dati con allocazione automatica dell'indirizzo in una memoria modulare |
IT1153611B (it) * | 1982-11-04 | 1987-01-14 | Honeywell Inf Systems | Procedimento di mappatura della memoria in sistema di elaborazione dati |
JPS59148963A (ja) * | 1983-02-14 | 1984-08-25 | Fujitsu Ltd | 記憶装置制御方式 |
US4545010A (en) * | 1983-03-31 | 1985-10-01 | Honeywell Information Systems Inc. | Memory identification apparatus and method |
JPS59197943A (ja) * | 1983-04-23 | 1984-11-09 | Ricoh Co Ltd | メモリのアドレス空間検出方式 |
US4589063A (en) * | 1983-08-04 | 1986-05-13 | Fortune Systems Corporation | Data processing system having automatic configuration |
NZ209664A (en) * | 1983-09-29 | 1987-05-29 | Tandem Computers Inc | Memory board address assignments: automatic reconfiguration |
US4622633A (en) * | 1983-12-06 | 1986-11-11 | Tri Sigma Corporation | Object building method for self configuring computer network |
US4609986A (en) * | 1984-06-14 | 1986-09-02 | Altera Corporation | Programmable logic array device using EPROM technology |
-
1985
- 1985-05-28 CA CA000482566A patent/CA1234224A/en not_active Expired
- 1985-10-29 GB GB8526597A patent/GB2175716B/en not_active Expired
- 1985-11-04 US US06/794,695 patent/US4860252A/en not_active Expired - Fee Related
- 1985-11-22 IT IT22962/85A patent/IT1185741B/it active
- 1985-12-17 JP JP60285367A patent/JPS61273649A/ja active Pending
- 1985-12-26 CN CN198585109307A patent/CN85109307A/zh active Pending
-
1986
- 1986-03-05 DE DE19863607092 patent/DE3607092A1/de not_active Withdrawn
- 1986-05-16 FR FR8607161A patent/FR2582829A1/fr not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1105970C (zh) * | 1996-05-20 | 2003-04-16 | 爱特梅尔股份有限公司 | 具有分布ram的现场可编程门陈列 |
Also Published As
Publication number | Publication date |
---|---|
IT8522962A0 (it) | 1985-11-22 |
GB2175716A (en) | 1986-12-03 |
GB2175716B (en) | 1989-07-19 |
FR2582829A1 (fr) | 1986-12-05 |
DE3607092A1 (de) | 1986-12-04 |
IT1185741B (it) | 1987-11-12 |
JPS61273649A (ja) | 1986-12-03 |
GB8526597D0 (en) | 1985-12-04 |
CA1234224A (en) | 1988-03-15 |
US4860252A (en) | 1989-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN85109307A (zh) | 计算机存贮器管理系统 | |
US5530836A (en) | Method and apparatus for multiple memory bank selection | |
US4376300A (en) | Memory system employing mostly good memories | |
EP0549139B1 (en) | Programmable memory timing | |
US4675808A (en) | Multiplexed-address interface for addressing memories of various sizes | |
JP2717693B2 (ja) | マイクロコンピュータシステム | |
EP0818731B1 (en) | Memory board, memory access method and memory access device | |
US4980822A (en) | Multiprocessing system having nodes containing a processor and an associated memory module with dynamically allocated local/global storage in the memory modules | |
US5341486A (en) | Automatically variable memory interleaving system | |
JP2001266580A (ja) | 半導体メモリ装置 | |
EP0395559A2 (en) | Distributed cache dram chip | |
CA2116985C (en) | Memory system | |
EP0498525B1 (en) | Sequential memory accessing | |
US7552292B2 (en) | Method of memory space configuration | |
CN1438579A (zh) | 动态随机存取记忆体的控制方法及其在电脑中的应用 | |
US4523313A (en) | Partial defective chip memory support system | |
US5765182A (en) | Interleaving memory on separate boards | |
WO1998012637A1 (en) | Dynamic spare column replacement memory system | |
GB2193017A (en) | Improved memory access system | |
US20010044874A1 (en) | Memory system capable of supporting different memory devices and a memory device used therefor | |
CN86100445A (zh) | 动态存储器刷新和奇偶校验电路 | |
US5745914A (en) | Technique for converting system signals from one address configuration to a different address configuration | |
US6762965B2 (en) | Method for integrating imperfect semiconductor memory devices in data processing apparatus | |
US6119049A (en) | Memory module assembly using partially defective chips | |
US4716544A (en) | Variable dimension and variable orientation graphics bit-map computer memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |