FR2613094A1 - Remappage de memoire dans un systeme de micro-ordinateur - Google Patents
Remappage de memoire dans un systeme de micro-ordinateur Download PDFInfo
- Publication number
- FR2613094A1 FR2613094A1 FR8718197A FR8718197A FR2613094A1 FR 2613094 A1 FR2613094 A1 FR 2613094A1 FR 8718197 A FR8718197 A FR 8718197A FR 8718197 A FR8718197 A FR 8718197A FR 2613094 A1 FR2613094 A1 FR 2613094A1
- Authority
- FR
- France
- Prior art keywords
- memory
- address
- output
- addresses
- signals
- 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
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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2289—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by configuration test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/88—Masking faults in memories by using spares or by reconfiguring with partially good memories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
UN SYSTEME DE MICRO-ORDINATEUR COMPORTE DES PREMIERS MOYENS DE MEMOIRE D'ADRESSES D'ORDRE INFERIEUR SOUDES AU PANNEAU DE CIRCUITS IMPRIMES PLAN ET PEUT ACCEPTER D'AUTRES MOYENS DE MEMOIRE ENFICHABLES DANS DES MOYENS DE CONNEXION SUR LE PANNEAU. SOUS ALIMENTATION, EN AUTO-TEST, ON TESTE LES MOYENS DE MEMOIRE ET SI UNE ERREUR EST DETECTEE DANS LE PREMIER MOYEN DE MEMOIRE, CE MOYEN DE MEMOIRE EST DECONDITIONNE EN DIRIGEANT LES ADRESSES DE MEMOIRE D'ORDRE LE PLUS BAS AUX SECONDS MOYENS DE MEMOIRE ET EN REDUISANT LES ADRESSES D'ORDRE LE PLUS ELEVE DU NOMBRE DES EMPLACEMENTS DANS LES PREMIERS MOYENS DE MEMOIRE.
Description
Remappage de mémoire dans un systme de micro-ordinateur Domaine technique
La présente invention concerne les agencements d'adressage de mémoire dans les systèmes de micro-ordinateur et plus particulièrement, les circuits
de remappage de mémoire.
Art antérieur De nombreux agencements ont été suggérés dans l'art antérieur pour réduire au minimum l'effet des éléments
de memoire défectueux dans un système d'ordinateur.
Dans certains - systmes, des modules de mémoire de rechange sont commutés pour remplacer les modules contenant des éléments défectueux. Dans d'autres systèmes, ce remplacement est exécuté au niveau des multiplets, des mots, des rangées ou des colonnes et dans d'autres systèmes encore, on utilise des
techniques de correction d'erreurs.
Un exemple du premier de ces systèmes est présenté dans le brevet des EUA n 4.150.528 (Inrig et Chapman). Dans ce système, un module de mémoire est marqué comme un module de remplacement qui, à la détection d'un défaut dans un autre module quelconque, répond à des adresses ordinairement dirigées vers le module défectueux. Un exemple d'un tel système qui fonctionne à un niveau de module moins qu'entier est décrit dans le brevet des EUA n 4.527.251 (Nibby, Goldin et Andrews). Dans ce système, une mémoire statique emmagasine une mappe montrant les zones défectueuses d'une mémoire à accès aléatoire, cette mappe étant générée en réponse à un test de mémoire. En exploitation, la mappe est utilisée pour éviter les zones défectueuses dans la mémoire à accès aléatoire. Des systèmes de correction d'erreurs pour corriger des données lues depuis des emplacements de mémoire défectueux sont présentés dans les brevets des EUA n 3.436.734 (Pomerene et Melville) et
n 4.251.863 (Rothenberger).
Aucun de ces systèmes de l'art antérieur ne comprend d'agencement dans lequel, si un défaut est détecté dans un bloc de mémoire défini par les adresses de valeurs les plus faibles, ce bloc est déconditionné et ces adresses sont utilisées pour accéder au bloc de mémoire précédemment défini par l'ensemble des adresses immédiatement au dessus des adresses de valeurs les plus faibles. Ainsi, la mémoire totale est réduite de
la mémoire du bloc de mémoire déconditionné.
Cet agencement est très avantageux dans un système dans lequel le bloc de mémoire d'ordre le plus bas est soudé ou fixé de toute autre façon au panneau de circuits plan du micro-ordinateur afin de réduire le coût basique au minimum. Ces emplacements de mémoire d'ordre inférieur sont utilisés pour emmagasiner des données de programme de commande et sans ces emplacements, le système ne peut pas fonctionner. D'autre part, cette mémoire soudée n'est pas normalement remplaçable, le service habituel consistant à remplacer le panneau de circuits plan complet à la détection d'un défaut dans celui ci. En conséquence, en remappant les emplacements d'ordre inférieur en mémoire connectable, le système peut encore fonctionner sans remplacement de panneaux plans. Présentation de l'invention Selon la présente invention, un système de remappage de mémoire est conçu pour un micro-ordinateur. Le micro-ordinateur comprend un panneau plan de processeur, des premiers moyens à mémoire fixes en permanence et connectés à des circuits sur le panneau plan, des moyens de connexion sur le panneau plan pour raccorder de manière amovible des seconds moyens à mémoire à celui ci et des moyens d'adresses connectés audit premier moyen à mémoire et auxdits moyens de connexion pour adresser la mémoire installée dans le système. Les moyens d'adresses comprennent des moyens logiques pour sélectionner des blocs de ladite mémoire installée et il est prévu des moyens pour tester au moins lesdits premiers moyens à mémoire et des moyens pour enregistrer un défaut détecté dans lesdits premiers moyens à mémoire. Lesdits moyens logiques sont couplés auxdits moyens d'enregistrement pour diriger toutes les adresses de mémoire auxdits moyens de connexion en réponse à un enregistrement de défaut dans
lesdits moyens d'enregistrement.
Brève description des dessins
La figure 1 est une représentation schématique d'un
système de micro-ordinateur.
La figure 2 représente des détails des connexions aux
mémoires de la figure 1.
La figure 3 est un schéma logique d'une unité de
commande de remappage de mémoire.
Description détaillée
La figure 1 est un schéma bloc montrant des éléments principaux d'un système de micro-ordinateur. Le système comprend un microprocesseur 1 connecté par un bus 2 à une mémoire intermédiaire d'adresses 4, une mémoire intermédiaire de données 3 et une unité de commande de bus 5. La mémoire intermédiaire d'adresses 4 est connectée par un bus d'adresses 6 à un système d'adresses de mémoire inaltérable 7, un système d'adresses et de commande de mémoire principale 16 et des connecteurs d'extension de système 9. La mémoire intermédiaire de données 3 est connectée au travers du bus de données 12, à une mémoire intermédiaire de données de mémoire 10, à la sortie de données d'une mémoire inaltérable 11 et aux connecteurs 9. L'unité de commande de bus 5 est connectée au travers d'un bus de commande 15 au système d'adresses et de commande 16 et aux connecteurs 9. Le système d'adresses et de commande de mémoire 16 et la mémoire intermédiaire de données 10 sont connectés à deux systèmes à mémoire à accès aléatoire 17 et 18. Le système de mémoire 17 est rattaché en permanence au panneau de circuits plan portant et connectant tous les éléments de la figure 1 par soudure de ses conducteurs au câblage des circuits imprimés du panneau, par exemple. Le système de mémoire 18 est une mémoire remplaçable qui est connectée dans le moyen de connexion 8 qui est lui même fixé en permanence par soudure aux conducteurs du panneau de circuits plan. La raison de cet agencement est que le micro- ordinateur requiert un volume minimal de mémoire qui, pour des raisons de coût, est soudée directement au panneau. La mémoire supplémentaire éventuellement requise, peut être ajoutée au système en connectant d'autres modules de mémoire dans le moyen de connexion 8. Par exemple, le système de mémoire 17 peut comprendre 128K multiplets et les modules du système de mémoire 18 peuvent comprendre jusqu'à 512K
multiplets pour faire un total de 640K multiplets.
La figure 2 représente certains détails de l'agencement d'adressage et de commande pour les mémoires. Le multiplexeur d'adresses 20 reçoit seize lignes du bus d'adresses correspondant aux bits d'adresses A0 à A15 et selon la valeur du signal de sélection d'adresse sur la ligne 21, passe l'un des bits A0 à A7 ou A8 à A15 aux mémoires 22 et 23 (représentées généralement comme le système de mémoire 27 de la figure 1) et aux connecteurs 24 et 25 (représentés généralement comme le moyen de connexion 8). D'une manière bien connue, dans les systèmes de mémoire à accès aléatoire dynamiques, l'adressage est assuré par l'application d'un premier ensemble de bits d'adresses ensemble avec un signal de découpage d'adresse de rangée à mouvement négatif (-RAS) suivi par un second ensemble de bits d'adresses avec un signal de découpage d'adresse de colonne à mouvement négatif (-CAS). Ces signaux -CAS et -RAS sont générés par l'unité de commande 16, figure 1. Le multiplexeur 20 est commuté entre des premier et second états avec les signaux -RAS et -CAS pour appliquer A0-A7 comme signaux d'adresses de rangées et A8-A15 comme signaux d'adresses de colonnes, respectivement, aux entrées d'adresses de mémoire A0-A7. Les mémoires 22 et 23 sont des mémoires DRAM de 64K et requièrent donc des entrées d'adresses de 8 x 2 bits. Leurs terminaux d'entrée/sortie de données sont chacun appliqués à un bus de données 12. Les deux mémoires 22 et 23 reçoivent un signal -RAS commun et la mémoire 22 est sélectionnée par un signal -CASL tandis que la mémoire 23 est sélectionnée par un signal -CASH. La manière de générer ces différents signaux -CAS pour sélectionner les différentes mémoires est bien connue
et ne sera pas décrite plus en détails ici.
Les connecteurs 24 et 25 sont agencés pour accepter des mémoires DRAM enfichables de 256K multiplets 26 et 27, respectivement. Comme avec les mémoires 22 et 23, ces mémoires sont adressées par des bits d'adresse A0 à A15 et commandées par les signaux -CASL et -CASH. Leurs
lignes de données sont couplées au bus de données 12.
Elles diffèrent des mémoires 22 et 23 tout d'abord par le fait que, étant donné que leur capacité est plus importante, elles requièrent une autre entrée d'adresses MA8 et qu'elles reçoivent un signal de découpage d'adresse de rangée différent -RAS.S. Le développement des signaux -RAS et -RAS.S sera décrit en
détails ultérieurement.
En général, les mémoires sont adressées par un total de bits depuis, par exemple CPU 1. Les seize premiers de ces bits fournissent les adresses individuelles pour la mémoire 22 sans valeurs de bit plus élevées et provoque la sélection de -RAS et -CASL pour sélectionner cette mémoire. La mémoire 23 est sélectionnée lorsque -CASH est actif avec A16 au niveau haut. En réponse aux trois bits plus élevés suivants
A17 à A19, les mémoires 26 et 27 sont sélectionnées.
Pour plus de commodité, la description de système de la
figure 3 considérera les mémoires 22 et 23 comme des mémoires soudées et les mémoires 26 et 27 comme des
mémoires enfichables.
La figure 3 est un schéma logique d'une partie de l'unité de commande 16, figure 1. Ce circuit incorpore un registre 30 qui est nouveau dans l'architecture des micro-ordinateurs. Ce registre est une unité CPU adressable et est utilisé pour enregistrer les résultats de mémoire et des tests E/S pendant l'alimentation du micro-ordinateur en opérations d'auto-test (POST). Ces opérations POST sont décrites par exemple dans la section BIOS système du manuel de référence technique de l'ordinateur personnel, volume n 6361453 publié par International Business Machines Corporation. Les opérations POST sont naturellement commandées par le système ROM 11 (Figure 1). Le manuel de référence technique indiqué ci dessus montre à la page 5-33, le test de la mémoire de lecture/écriture
pour n'importe quel bloc de mémoire de 16K multiplets.
En bref, ce test comprend l'écriture et ensuite la lecture de la configuration 01010101 puis de la configuration 10101010 dans chaque emplacement de mémoire du bloc et, par vérification de parité, la détermination de toute erreur. Les pages 5-37 et 5-42 du manuel montrent les routines pour la détermination des dimensions de la mémoire RAM sur le panneau plan et des dimensions de la mémoire sur les canaux E/S. Ces opérations comprennent à nouveau des séquences d'écriture/lecture qui, par lecture des données que l'on a précédemment essayées d'écrire dans des emplacements séquentiels, déterminent si oui ou non ces emplacements sont en fait, présents. Les pages 5-36 montrent un test de mémoire de lecture/écriture sur la mémoire de base (adresse d'ordre le plus bas). Dans cet exemple, le test est effectué sur 16K multiplets. Dans le présent système, un test similaire sera effectué sur les 128K multiplets de la mémoire soudée, c'est à dire les mémoires 22 et 23 de la figure 2. Finalement, aux pages 5-43, nous voyons une routine d'enregistrement d'une adresse défectueuse en mémoire à la détection d'une erreur. Ces routines et d'autres routines d'auto-tests similaires pour la vérification des dimensions de la mémoire et de toutes erreurs dans celle ci, sont bien connues et utilisées dans la
plupart des systèmes de micro-ordinateur.
Dans le présent système, les résultats de certains des tests sont enregistrés dans un registre adressable 30, Figure 3. Ce registre enregistre à l'entrée D0, pour donner une sortie de niveau haut à QO, une erreur située dans les modules de mémoires soudées 22 et 23 (Figure 2). On notera que ce registre reste conditionné après une opération POST jusqu'à ce qu'il soit spécifiquement restauré ou jusqu'à ce que le système soit restauré ou coupé, ces deux conditions requérant toutes les deux une autre opération POST avant la poursuite des opérations. Les emplacements restants du registre 30 contiennent des données résultant des tests de dimensions de mémoire E/S. Chacun de ces emplacements commandés au travers des entrées D1 à D6 pour assurer des niveaux hauts respectifs sur les sorties Q1 à Q6, concerne un bloc de mémoire E/S de 64K multiplets associé. Ces blocs de 64K multiplets concernent des adresses de système comme suit: Q1 est égal aux adresses 256-320K, Q2 est égal aux adresses 320-384K, Q3 est égal aux adresses 384-448K, Q4 est égal adresses 448-512K, Q5 est égal aux adresses 512-576K et Q6 est égal aux adresses 576-640K. Ainsi, à la fin d'une opération POST, le registre 30 contient une indication d'une erreur localisée dans la mémoire de base et des indications du nombre de segments de
mémoire de 64K multiplets sur les cartes E/S.
En revenant à la figure 3, on voit que le décodeur 31 est un décodeur de quatre à seize lignes recevant des bits d'adresses de système A16-A19, dont les sorties sont limitées sur le schéma à dix sorties inversées -Q0 à -Q9 pour des raisons de simplicité. On notera que les bits d'adresse A0 à A16 sont les seuls bits d'adresses requis pour adresser les modules de mémoire 22 et 23 de la figure 1. Les bits d'adresse A17, A18 et 19 sont en outre utilisés pour définir des emplacements dans les mémoires RAM enfichables, c'est à dire les adresses au dessus de 128K, c'est à dire dans le système de la figure 2, les adresses entre 128K et 640K. En considérant les bits d'adresse A19-A16 comme des nombres de mémoire à quatre chiffres, chaque incrément
binaire représente 64K de mémoire.
Les fonctions du décodeur 31 sont définies de la manière suivante:
A19 A18 A17 A16 -QO -Q1 -Q2 -Q3 -Q4 -Q5 -Q6 -Q7 -Q8 -Q9
0 0 0 0 0 1 1 1 1 1 1 1 1 1
0 0 0 1 1 0 1 1 1 1 1 1 1 1
0 0 1 0 1 1 1 1 11 1
0 0 1 1 1 1 1 0 1 1 1 1 1 1
0 1 0 0 1 1 1 1 0 1 1 1 1 1
0 1 0 1 11 1 1 1 0 1 1 1 1
0 1 1 0 1 1 1 1 1 1 0 1 1 1
0 1 1 1 1 1 1 1 1 1 1 0 1 1
1 0 0 0 1 1 1 1 1 1 1 1 0 1
1 0 0 1 1 1 1 1 1 1 1 1 1 0
D'après ce tableau, on voit que pour les adresses jusqu'à 128K, c'est à dire les adresses qui correspondent en conditions normales, à la mémoire soudée, ce sont -QO ou -Q1 qui sont actifs (zéro) et les sorties restantes sont passives (hautes). Puis, chaque incrément, c'est à dire la sortie basse d'une sortie -Q adjacente, représente les adresses d'un bloc
de 64K multiplets adjacent des mémoires enfichables.
Une porte ET Négatif 32 comprend une paire d'entrées respectivement couplées aux sorties -QO et -Q1 du décodeur 31. La sortie de la porte ET 32 est appliquée comme une entrée à une porte ET 33 qui reçoit à son autre entrée la sortie QO du registre 30 inversée par l'inverseur 34. La sortie de la porte ET Négatif 33 délivre une entrée à une porte ET Négatif 35 qui reçoit aussi le signal de découpage d'adresse de rangée du
système -RAS (signal bas actif).
Une autre porte ET Négatif 37 est aussi couplée aux sorties -QO et -Qi du décodeur 31, cette porte ET Négatif a sa sortie qui est couplée à une entrée d'une autre porte ER Négatif 38.La sortie QO du registre 30 délivre l'autre entrée de la porte ET Négatif 38 dont
la sortie forme une entrée d'une porte ET Négatif 40.
La porte ET Négatif 40 reçoit aussi la sortie de la porte OU Négatif 39. La première entrée de la porte OU Négatif 39 est issue d'une porte ET Négatif 42 couplée pour recevoir directement les sorties -Q2 et -Q3 du décodeur 31 et les sorties -Q4 et -Q5 de ce décodeur au travers des portes OU 44 et 45, respectivement. Ces portes OU reçoivent aussi respectivement les sorties Q1 et Q2 du registre 30. La seconde entrée de la porte OU Négatif 39 est issue d'une porte ET Négatif 43 qui reçoit les sorties -Q6 à -Q9 du décodeur 31 au travers des portes OU 46 à 49, respectivement. Ces portes OU reçoivent aussi respectivement des sorties Q3 à Q6 du registre 30 comme représenté. Les portes OU 48 et 49 ont chacune une troisième entrée couplée à la sortie QO
du registre 30.
Le fonctionnement du système de la figure 3 sera tout d'abord décrit dans le cas o aucune donnée ne se trouve dans le registre 30 ou, autrement dit, lorsqu'il ne contient que des zéros. Ceci signifie qu'aucun défaut n'a été détecté pendant l'auto-test sous alimentation et qu'aucune mémoire à carte E/S n'a été
détectée à cet instant.
Pour chaque adresse des 128K multiplets inférieurs de la mémoire, c'est à dire la mémoire soudée, soit les bits d'adresses A16 à A19 sont tous des zéros, soit A16 seulement parmi tous ces bits, est un "un". Comme on peut le voir d'après le décodeur 31 décrit ci dessus, dans ces cas là, soit la sortie -QO, soit la sortie -Q1 est à zéro, les sorties restantes du décodeur étant au niveau haut. En conséquence, la sortie de la porte 32 passe au niveau haut et avec une entrée de niveau haut à la porte 33 depuis l'inverseur 34 (lorsque Q0 du registre 30 est au niveau bas), la sortie de la porte 33 est au niveau haut. L'entrée de la porte 35 depuis la porte 33 étant au niveau haut, la sortie de la porte est l'inverse de la sortie de l'inverseur 50. Ainsi, la sortie de la porte 35 suit le signal -RAS appliqué à l'inverseur 50. Ce signal de sortie est, comme on l'a décrit en se reportant à la figure 1, le signal qui sélectionne les 128K éléments de mémoire soudée d'ordre inférieur. En même temps, la sortie de la porte 37 à la porte 38 est au niveau haut mais l'entrée au niveau bas à la porte 38 depuis la sortie Q0 du registre 30
maintient la sortie de la porte 38 au niveau haut.
Comme toutes les entrées des portes 42 et 43 sont au niveau haut, les sorties de ces deux portes sont au niveau bas si bien que la porte 39 délivre une sortie au niveau haut à la porte 40. Etant donné que les deux entrées à la porte 40 sont au niveau haut, celle ci délivre une sortie au niveau bas à la porte 41 dont la sortie reste donc au niveau haut indépendamment du niveau du signal -RAS inversé d'entrée. Ainsi, il n'y a pas de signal -RAS.S et la mémoire RAM enfichable n'est
pas sélectionnée.
On va maintenant considérer le fonctionnement lorsqu'une adresse dans la mémoire enfichable est sélectionnée à nouveau sans données dans le registre 30. Dans ce cas, les deux sorties de décodeur -Q0 et -Q1 restent toutes les deux au niveau haut et l'une des sorties -Q2 à -Q9 est au niveau bas pendant qu'au moins
l'un des bits d'adresse A17 à A19 sera au niveau haut.
Comme les deux entrées de la porte 32 sont maintenant au niveau haut, cette porte applique une entrée de niveau bas à la porte 33 qui applique donc une entree de niveau bas à la porte 35. La ligne de sortie -RAS reste donc au niveau haut indépendamment des entrées de la porte 35 depuis l'inverseur 50, si bien qu'aucun signal -RAS n'est généré et que la mémoire soudée n'est donc pas sélectionnée. En réponse aux sorties du décodeur 31 -Q0 et -Q1, la sortie de la porte 37 passe au niveau bas si bien que la sortie de la porte 38 passe au niveau haut. L'une des sorties -Q2 à -Q9 du décodeur 31 est maintenant au niveau bas si bien que la sortie de la porte 42 ou de la porte 43 passe au niveau haut. Ainsi, la sortie de la porte 39 passe au niveau bas si bien que la sortie de la porte 40 passe au niveau haut malgré l'entrée de niveau haut appliquée à cette porte depuis la porte 38. Avec l'entrée de niveau haut depuis la porte 40, la sortie de la ligne -RAS.S est l'inverse de la sortie de l'inverseur 50 si bien que la mémoire enfichable est sélectionnée par le
signal -RAS.S.
Pour les exemples suivants, on supposera qu'une séquence d'auto-test sous alimentation a détecté une erreur dans les 128K éléments de mémoire les plus inférieurs et qu'en réponse à cette détection, un bit "un" a été entré dans l'entrée D0 du registre 30 si
bien que la sortie Q0 est commutée an niveau haut.
Le premier effet du niveau haut sur la sortie Q0 du registre 30 est le passage de la sortie de l'inverseur 34 au niveau bas si bien que la sortie de la porte 33 est toujours au niveau bas. En conséquence, la sortie de la porte 35 est toujours au niveau haut, ainsi aucun signal - RAS n'est généré. Ceci signifie que la mémoire soudée de 128K multiplets n'est pas accédée, ce qui est ce qui est requis lorsqu'un défaut a été détecté dans
celle ci.
On désire maintenant utiliser les 128K adresses les plus basses pour accéder aux modules de mémoire enfichable. Ces adresses dans lesquelles A16 est soit un soit zéro et dans lesquelles A17 à A19 sont toutes des zéros, produisent une sortie de niveau bas sur la sortie -Q0 ou la sortie -Q1 du décodeur 31. Ces sorties provoquent le passage de la sortie de la porte 37 au niveau haut. Cette sortie ensemble avec la sortie de niveau haut de la sortie Q0 du registre 30, provoque le passage au niveau bas de la sortie de la porte 38. La sortie de la porte 38 étant au niveau bas, la sortie de la porte 40 passe au niveau haut indépendamment de la valeur de son autre entrée. Avec une entrée de niveau haut de la porte 40 à la porte 41, cette dernière porte inverse l'entrée issue de l'inverseur 50 pour délivrer
le signal -RAS.S qui suit le signal -RAS d'entrée.
Ainsi, les 128K adresses les plus basses accèdent maintenant à la mémoire enfichable plutôt qu'à la mémoire soudée. Comme indiqué ci dessus, chaque sortie -Q du décodeur 31 représente un bloc de 64 multiplets de mémoire. Ainsi, lorsque -Q0 est au niveau bas, on accède aux 64K multiplets les plus bas, -Q& est au niveau bas lorsque les adresses 64 - 128k sont utilisées, -Q2 lorsque les adresses 128K - 192K sont générées et ainsi de suite, avec -Q8 qui est au niveau bas pour les adresses 512K à 576K et Q9 qui est au niveau bas pour les adresses 576K à 640K. Avec le signal de niveau haut Q0 du registre 30, on n'accède pas à la mémoire soudée et ce sont seulement les 512K
multiplets de la mémoire enfichable qui sont utilisés.
La génération du signal -RAS.S pour des adresses jusqu'à 128K, a été décrite ci dessus. Pour chacune des adresses des 384K suivants de mémoire, c'est à dire jusqu'à l'adresse 512K, l'une des sorties -Q2 à -Q7 du décodeur 31 passe au niveau bas. Pour cette plage d'adresses,la sortie de la porte 42 ou de la porte 43 passe donc au niveau haut. A cet instant, la sortie de la porte 37 est au niveau bas (comme -Q0 et -Q1 sont toutes les deux au niveau haut), ainsi la sortie de la porte 38 est au niveau haut. Les sorties au niveau haut de la porte 42 ou de la porte 43 passe au travers de, et est inversée par la porte 39 pour délivrer une entrée de niveau bas à la porte 40 si bien que la porte continue de délivrer une entrée de niveau haut à la porte 41. Cette porte continue donc à générer le signal
-RAS.S pour l'accès à la mémoire enfichable.
On se rappelle que sans la mémoire soudée, on n'a que 512K adresses de mémoire disponibles et on va maintenant considérer ce qui arrive si les 128K adresses de mémoire supérieures, c'est à dire les adresses de 512K à 640K, sont générées. Pour chacune des adresses de cette plage, l'une des sorties de décodeur -Q8 et -Q9 est au niveau bas. Ces sorties passent normalement au travers des portes 48 et 49, respectivement, pour commuter la sortie de la porte 43 au niveau haut afin de fournir une entrée de niveau bas 39 à la porte 40. Cependant, lorsque la sortie Q0 du registre 30 est au niveau haut, ce niveau passe au travers des deux portes 48 et 49, ce qui passe en négatif les entrées au niveau bas issues des sorties de décodeur -Q8 et -Q9. Ainsi, par les portes 43, 39 et , l'entrée inférieure à la parte 41 est au niveau bas si bien qu'aucun signal RAS.S n'est généré et la
mémoire ne répond pas aux adresses les plus élevées.
Ainsi, la sortie Q0 du registre 30 étant au niveau haut, la page des adresses est limitée à 512K et chaque adresse est utilisée pour accéder à la mémoire enfichable. On a expliqué ci dessus que le registre 30 est utilisé pour indiquer, en supplément d'un chiffre d'erreur de mémoire soudée en position DO, des indications de blocs de mémoire de 64K multiplets sur des dispositifs couplés à des connecteurs E/S 9 (Figure 1). Par simplification, cette mémoire sera appelée "mémoire E/S". Les adresses de cette mémoire E/S commencent à 256K et s'étendent jusqu'à 640K. Ceci correspond à six blocs de 64K adresses, chaque bloc, lorsqu'il est présent dans le système, étant indiqué par une sortie de niveau haut sur une sortie correspondante des sorties Q1 à Q6 du registre 30. Comme on peut le voir à la figure 3, chacune des sorties Q1 à Q6 du registre est couplée à une entrée d'une porte associée des portes OU 44 à 49. Donc, chaque porte conditionnée à un niveau haut, passe en négatif l'effet d'une sortie de niveau bas à la porte OU correspondante depuis le décodeur 31. Ceci évite à la porte ET Négatif 42 ou 43 correspondante de délivrer une sortie de niveau haut en réponse à une sortie de niveau bas depuis la sortie correspondante du décodeur. Dans ce cas, la sortie de la porte OU 39 est au niveau haut et en supposant que la sortie Q0 du registre 30 est au niveau bas, la sortie de la porte 38 est au niveau haut. En réponse aux deux entrées de niveau haut des portes 38 et 39, la sortie de la porte 40 est au niveau bas si bien que la
sortie de la porte 41 est maintenue au niveau haut.
Comme nous sommes dans le cas dans lequel des adresses des valeurs de 256K et au dessus sont utilisées, la porte 35 délivre aussi une sortie de niveau haut continu. Ainsi, ni le signal -RAS, ni le signal -RAS.S n'est produit. Au vu de cela, ni la mémoire soudée, ni la mémoire enfichable n'est adressée. Ceci laisse la mémoire E/S pour l'adressage. La sortie de registre Q1 étant au niveau haut, les adresses 256K - 320K sont dans la mémoire E/S, avec Q2 au niveau haut, les adresses 320K - 348K sont dans cette mémoire. Les sorties Q3 à Q6 correspondent respectivement aux blocs
de mémoire de 64K aux adresses 384K - 448K, 448K -
512K, 512K - 576K et 576K - 640K, respectivement.
Toutes ou l'une quelconque ou aucune de ces adresses peut être transférée à la mémoire E/S par l'entrée de données dans les étages appropriés ou dans n'importe lequel des étages DO à D6 du registre 30. En restaurant ou en surchargeant l'un quelconque ou plusieurs des étages de registre conditionnés, l'adressage peut être ramené à la mémoire enfichable pour les blocs de
mémoire correspondant aux étages restaurés.
En résumé, on a décrit un agencement pour adresser une mémoire soudée, une mémoire enfichable et une mémoire E/S. Les accès aux mémoires soudée et enfichable utilisent différent signaux de découpage d'adresses de rangée à mouvement négatif -RAS et -RAS.S, respectivement. Un décodeur décode des bits d'adresse d'ordre élevé et un circuit logique répond aux sorties du décodeur et à un bit de registre indiquant un défaut dans la mémoire soudée (qui correspond aux adresses d'ordre inférieur). Le circuit logique commute des adresses de mémoire à la mémoire enfichable à la détection dudit bit de registre en déconditionnant le signal -RAS et en le remplaçant par le signal -RAS.S pour les adresses d'ordre inférieur. En outre, le registre comprend d'autres étages, chacun d'eux pouvant
être conditionné pour indiquer un bloc de mémoire E/S. Lorsque l'un ou plusieurs de ces étages est conditionné, le circuit
logique répond en déconditionnant à la fois les sorties -RAS et -RAS.S si bien que ni la mémoire soudée, ni la mémoire enfichable n'est accédée mais, à la place, un bloc de mémoire E/S
est adressé.
Bien que la présente invention ait été plus particulièrement décrite en fonction d'une réalisation préférée de celle ci, il est évident que l'homme de l'art pourra y apporter toutes formes de changements dans la forme et les détails sans pour autant sortir du
cadre et de l'esprit de la présente invention.
Claims (12)
1. Un système de micro-ordinateur comprenant un panneau de circuits plan de processeur, des premiers moyens de mémoire fixés en permanence et connectés à des circuits sur ledit panneau plan, des moyens de connexion sur le panneau plan pour connecter de manière amovible d'autres moyens de mémoire auxdits circuits, des moyens d'adressage et de commande connectés auxdits premiers moyens à mémoire et auxdits moyens de connexion pour adresser la mémoire installée dans le système, lesdits moyens d'adressage et de commande comprenant des moyens logiques pour sélectionner des blocs de la mémoire installée pour l'adressage en utilisant des adresses d'ordre le plus bas pour lesdits premiers moyens à mémoire et des adresses d'ordre plus élevé pour lesdits autres moyens à mémoire, et des moyens pour tester au moins lesdits premiers moyens à mémoire, lesdits moyens d'adressage et de commande comprenant des moyens pour enregistrer une indication d'un défaut détecté dans lesdits premiers moyens à mémoire pendant le test par lesdits moyens de test, lesdits moyens logiques étant connectés auxdits moyens d'enregistrement pour déconditionner lesdits premiers moyens à mémoire en dirigeant toutes les adresses de mémoire auxdits moyens de connexion en réponse à une dite indication dans
lesdits moyens d'enregistrement.
2. Un système de micro-ordinateur selon la revendication 1 dans lequel lesdits moyens logiques comprennent des moyens répondant à une dite indication pour déconditionner des adresses de mémoire d'ordre le plus élevé desdits autres moyens de mémoire correspondant en nombre au nombre des adresses dans lesdits premiers moyens
de mémoire.
3. Un système de micro-ordinateur selon la revendication 1 dans lequel lesdits premier et autres moyens de mémoire comprennent des mémoires à accès aléatoires dynamiques, lesdits moyens d'adressage et de commande développent des premiers signaux de découpage d'adresse pour lesdits premiers moyens de mémoire et des seconds signaux de découpage d'adresse pour lesdits autres moyens de mémoire, et lesdits moyens logiques comprennent des moyens répondant à une dite indication pour remplacer chaque dit premier signal de découpage d'adresse par un second signal de découpage d'adresse, ce qui fait que lesdits seconds signaux de découpage d'adresse sont
développés pour toutes les adresses de mémoire.
4. Un système de micro-ordinateur selon la revendication 3 dans lequel lesdits signaux de découpage d'adresse sont des signaux de découpage
d'adresse de rangée.
5. Un système de micro-ordinateur selon la revendication 3 dans lequel lesdits moyens logiques comprennent des moyens de décodage pour décoder des bits d'adresse de mémoire d'ordre élevé afin de générer des signaux de sortie individuels sur différentes lignes de sortie représentant des blocs différents de dimensions fixes communes desdites mémoires et des moyens à circuits logiques pour recevoir lesdits signaux de sortie, lesdites indications et signaux de découpage d'adresse d'entrée sur une ligne de découpage d'adresse d'entrée pour générer lesdits premiers signaux de découpage d'adresse sur une première ligne de découpage connectée auxdits premiers moyens de mémoire et des seconds signaux de découpage d'adresse sur une seconde ligne de découpage connectée auxdits seconds moyens de connexion.
6. Un système de micro-ordinateur selon la revendication 5 dans lequel lesdits moyens de décodage comportent une première ligne de sortie pour indiquer des adresses du bloc de mémoire de dimensions fixes et d'ordre le plus bas et une seconde ligne de sortie pour indiquer des adresses du bloc de mémoire de dimensions fixes et d'ordre le plus bas suivant depuis ledit bloc d'ordre le plus bas, lesdits moyens à circuits logiques étant connectés. auxdites première et seconde lignes de sortie, ledit signal de découpage d'adresse d'entrée en réponse à des signaux consistant en une entrée active sur ladite ligne de découpage d'adresse d'entrée concurremment à une entrée active sur l'une desdites première et seconde
lignes de sortie.
7. Un système de micro-ordinateur selon la revendication 6 dans lequel lesdits moyens de décodage comprennent d'autres lignes de sortie pour indiquer des adresses des blocs de mémoire de dimensions fixes respectifs ordonnés au dessus dudit bloc d'ordre le plus bas et desdits blocs ordonnés suivants et dans lequel lesdits moyens à circuits logiques sont en outre connectés auxdites autres lignes de sortie pour délivrer ledit second signal de découpage d'adresse en réponse à des entrées actives simultanées depuis ladite ligne de découpage d'adresse d'entrée et l'une desdites autres lignes de sortie et des entrées actives simultanées depuis ladite ligne de découpage d'adresse d'entrée et lesdits moyens d'enregistrement.
8. Un système de micro-ordinateur selon la revendication 1 dans lequel lesdits moyens d'enregistrement comprennent des moyens à registres comportant un premier étage pour enregistrer ladite indication, et comprenant d'autres moyens pour déterminer la présence de blocs de mémoire externe sur des dispositifs d'entrée/sortie connectés de manière amovible à des connecteurs d'entrée/sortie sur ledit panneau de circuits plan et pour enregistrer un signal relatif à chaque de mémoire externe détecté dans un étage associé de plusieurs autres étages
desdits moyens à registres.
9. Un système de micro-ordinateur selon la revendication 8 dans lequel lesdits premier et d'autres moyens à mémoire sont des mémoires à accès aléatoire dynamiques, lesdits moyens d'adressage et de commande développent des premiers signaux de découpage d'adresses pour lesdits premiers moyens à mémoire et des seconds signaux de découpage d'adresses pour lesdits autres moyens à mémoire et lesdits moyens logiques répondent à une indication dans ledit premier étage pour remplacer chaque dit premier signal de découpage d'adresses par un second signal de découpage d'adresses et répondent en outre à un signal dans un dit autre étage desdits moyens à registres pour déconditionner lesdits premier et second signaux de découpage d'adresses pour adresser un bloc de mémoire externe avec des adresses correspondant à celles d'un bloc desdits autres moyens de mémoire, ce qui fait que la mémoire externe est adressée par ces adresses à la
place de ladite autre mémoire.
10. Un système de micro-ordinateur selon. la revendication 9 dans lequel lesdits moyens logiques comprennent des moyens de décodage pour décoder des bits d'adresse de mémoire d'ordre élevé pour générer des signaux de sortie individuels sur différentes lignes de sortie représentant des blocs différents de dimensions communes fixes desdites mémoires et des moyens à circuits logiques pour recevoir lesdits signaux de sortie, lesdites indications et des signaux de découpage d'adresse d'entrée sur une ligne de découpage d'adresse d'entrée pour générer lesdits premiers signaux de découpage d'adresses sur une première ligne de découpage connectée auxdits premiers moyens à mémoire et des seconds signaux de découpage d'adresses sur une seconde ligne de
découpage connectée auxdits moyens de connexion.
11. Un système de micro-ordinateur selon la revendication 10 dans lequel lesdits moyens de décodage comportent une première ligne de sortie pour indiquer des adresses du bloc de mémoire de dimensions fixes et d'ordre le plus bas et une seconde ligne de sortie pour indiquer des adresses du bloc de mémoire d'ordre plus élevé suivant depuis ledit bloc d'ordre le plus bas, lesdits moyens à circuits logiques étant connectés auxdites première et seconde lignes de sortie, à ladite ligne de découpage d'adresses d'entrée et auxdits moyens d'enregistrement, pour délivrer un dit premier signal de découpage d'adresses en réponse à des signaux consistant en une entrée active sur ladite ligne de découpage d'adresses d'entrée concurremment à une entrée active sur
l'une desdites secondes lignes de sortie.
12. Un système de micro-ordinateur selon la revendication 11 dans lequel lesdits moyens de décodage comprennent d'autres lignes de sortie pour indiquer des adresses de blocs de mémoire de dimensions fixes respectifs ordonnés au dessus desdits blocs d'ordre le plus bas et d'ordre suivant, et dans lequel lesdits moyens à circuits logiques sont en outre connectés auxdites autres lignes de sortie pour délivrer ledit second signal de découpage d'adresses en réponse à des entrées actives simultanées sur ladite ligne de découpage d'adresses d'entrée et l'une desdites autres lignes de sortie et des entrées actives simultanées sur ladite ligne de découpage d'adresses d'entrée et lesdits moyens d'enregistrement.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US2901387A | 1987-03-23 | 1987-03-23 |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2613094A1 true FR2613094A1 (fr) | 1988-09-30 |
FR2613094B1 FR2613094B1 (fr) | 1990-02-16 |
Family
ID=21846751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR878718197A Expired - Fee Related FR2613094B1 (fr) | 1987-03-23 | 1987-12-21 | Remappage de memoire dans un systeme de micro-ordinateur |
Country Status (11)
Country | Link |
---|---|
EP (1) | EP0283564A3 (fr) |
JP (1) | JPS63241649A (fr) |
KR (1) | KR950002944B1 (fr) |
CN (1) | CN1010260B (fr) |
BE (1) | BE1001067A3 (fr) |
BR (1) | BR8801278A (fr) |
FR (1) | FR2613094B1 (fr) |
GB (1) | GB2202656B (fr) |
HK (1) | HK33492A (fr) |
IT (1) | IT1216770B (fr) |
SG (1) | SG5592G (fr) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0760413B2 (ja) * | 1989-05-12 | 1995-06-28 | インターナショナル・ビジネス・マシーンズ・コーポレーション | メモリ・システム |
JPH0619805A (ja) * | 1992-06-30 | 1994-01-28 | Fujitsu Ltd | メモリ異常箇所特定方法 |
US5635274A (en) * | 1994-06-21 | 1997-06-03 | Gencorp Inc. | Molded glass run channel composite |
DE19540915A1 (de) * | 1994-11-10 | 1996-05-15 | Raymond Engineering | Redundante Anordnung von Festkörper-Speicherbausteinen |
US7493534B2 (en) * | 2003-08-29 | 2009-02-17 | Hewlett-Packard Development Company, L.P. | Memory error ranking |
US7484065B2 (en) | 2004-04-20 | 2009-01-27 | Hewlett-Packard Development Company, L.P. | Selective memory allocation |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3520893A1 (de) * | 1984-06-11 | 1985-12-12 | Sharp K.K., Osaka | Datenverarbeitungsgeraet mit austauschbarem speichermodul |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5057342A (fr) * | 1973-09-19 | 1975-05-19 | ||
JPS58115694A (ja) * | 1981-12-29 | 1983-07-09 | Nec Corp | 情報処理装置 |
JPS59197943A (ja) * | 1983-04-23 | 1984-11-09 | Ricoh Co Ltd | メモリのアドレス空間検出方式 |
-
1987
- 1987-10-27 EP EP87115743A patent/EP0283564A3/fr not_active Withdrawn
- 1987-10-27 GB GB8725112A patent/GB2202656B/en not_active Expired - Fee Related
- 1987-12-16 BE BE8701440A patent/BE1001067A3/fr not_active IP Right Cessation
- 1987-12-21 FR FR878718197A patent/FR2613094B1/fr not_active Expired - Fee Related
-
1988
- 1988-01-20 JP JP63008604A patent/JPS63241649A/ja active Pending
- 1988-02-22 CN CN88100759A patent/CN1010260B/zh not_active Expired
- 1988-02-23 KR KR1019880001853A patent/KR950002944B1/ko not_active IP Right Cessation
- 1988-02-26 IT IT8819555A patent/IT1216770B/it active
- 1988-03-22 BR BR8801278A patent/BR8801278A/pt not_active Application Discontinuation
-
1992
- 1992-01-22 SG SG55/92A patent/SG5592G/en unknown
- 1992-05-07 HK HK334/92A patent/HK33492A/xx unknown
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3520893A1 (de) * | 1984-06-11 | 1985-12-12 | Sharp K.K., Osaka | Datenverarbeitungsgeraet mit austauschbarem speichermodul |
Non-Patent Citations (2)
Title |
---|
IBM TECHNICAL DISCLOSURE BULLETIN, vol. 11, no. 1, juin 1968, pages 67-70, New York, US; L.R. PALOUNEK: "Memory allocation and addressing" * |
IBM TECHNICAL DISCLOSURE BULLETIN, vol. 26, no. 4, septembre 1983, pages 1843-1845, New York, US; R.N. AMES et al.: "Implementation of reserve storage for bit/word hard failures in main memory without software support" * |
Also Published As
Publication number | Publication date |
---|---|
IT8819555A0 (it) | 1988-02-26 |
CN88100759A (zh) | 1988-10-05 |
SG5592G (en) | 1992-05-15 |
KR880011664A (ko) | 1988-10-29 |
GB2202656A (en) | 1988-09-28 |
BR8801278A (pt) | 1988-10-25 |
KR950002944B1 (ko) | 1995-03-28 |
GB2202656B (en) | 1991-09-04 |
GB8725112D0 (en) | 1987-12-02 |
HK33492A (en) | 1992-05-15 |
EP0283564A2 (fr) | 1988-09-28 |
IT1216770B (it) | 1990-03-08 |
BE1001067A3 (fr) | 1989-06-27 |
EP0283564A3 (fr) | 1989-04-05 |
JPS63241649A (ja) | 1988-10-06 |
FR2613094B1 (fr) | 1990-02-16 |
CN1010260B (zh) | 1990-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5796758A (en) | Self-checking content-addressable memory and method of operation for detecting multiple selected word lines | |
US4922451A (en) | Memory re-mapping in a microcomputer system | |
US6182262B1 (en) | Multi bank test mode for memory devices | |
US4866676A (en) | Testing arrangement for a DRAM with redundancy | |
US5109360A (en) | Row/column address interchange for a fault-tolerant memory system | |
KR970051455A (ko) | 리던던트셀 테스트 제어회로를 구비하는 반도체 메모리장치 | |
JP2001243795A (ja) | 半導体記憶装置 | |
KR960004739B1 (ko) | 멀티비트 테스트모드에서 임의의 테스트 패턴으로 메가비트 기억모듈을 테스트하기 위한 방법 및 장치 | |
JP2001229693A (ja) | 半導体集積メモリ | |
US5793683A (en) | Wordline and bitline redundancy with no performance penalty | |
US6525987B2 (en) | Dynamically configured storage array utilizing a split-decoder | |
BE1001067A3 (fr) | Remappage de memoire dans un systeme de micro-ordinateur. | |
EP0519847B1 (fr) | Carte à mémoire de comptage de données et appareil de lecture | |
KR960019324A (ko) | 간단하게 테스트할 수 있는 구성을 갖는 랜덤 액세스 메모리 | |
US5996098A (en) | Memory tester | |
KR100300452B1 (ko) | 테스트모드를갖는반도체기억장치 | |
KR910001534B1 (ko) | 반도체기억장치 | |
JPS6132756B2 (fr) | ||
KR100194419B1 (ko) | 음성데이타용 메모리를 시스템 데이타용 메모리로서 이용하기위한회로및그방법 | |
CA1293816C (fr) | Remappage en memoire dans un micro-ordinateur | |
KR100624286B1 (ko) | 플래시 메모리의 리페어 장치 | |
JPS6460899A (en) | Random access memory | |
SU1136171A1 (ru) | Устройство дл проверки полноты тестировани программ | |
SU1023393A1 (ru) | Запоминающее устройство | |
JPH05342112A (ja) | メモリー制御回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |