Brevet FR2632094A1 — publié le 19891201

APPAREIL ET METHODE POUR ACCEDER A DES DONNEES EMMAGASINEES DANS UNE MEMOIRE DE PAGES La présente invention concerne de manière générale les mémoires utilisées dans les systèmes de calcul et plus particulièrement l'accès à des données emmagasinées dans des mémoires de pages utilisées dans de tels systèmes. Les demandes concernant les systèmes de calcul et relatives à l'assurance de vitesses de fonctionnement encore plus élevées, de puissance de traitement effectives encore améliores et de performances générales encore meilleures, continuent d'affluer. Une tendance a te d'augmenter la fréquence d'horloge de l'unité centrale de traitement (CPU) du calculateur. Ceci a naturellement entraîné le traitement d'un plus grand nombre d'instructions par unité de temps. Cependant, à mesure que la fréquence d'horloge est augmentée, le temps d'accès associé à la mémoire doit être quelque peu raccourci de manière correspondante si l'on veut tirer tout le bénéfice de l'augmentation de la fréquence d'horloge.Autrement le temps d'accès associé à la lecture de données hors de la mémoire devient un facteur important de limitation des performances effectives de l'unité CPU. Une approche pour diminuer le temps d'accès effectif requis pour lire des données dans une mémoire est d'utiliser une mémoire de pages. C'est à dire que la mémoire est divisée en une pluralité de pages, chaque page consistant en une rangée ayant une adresse de rangée commune pour toute la Langée. Chaque rangée d'une page comprend une pluralité de colonnes ayant des adresses de colonne correspondantes. Pour accéder à un bloc particulier de données emmagasinées dans une telle mémoire de pages, l'adresse de rangée de ces données est délivrée à la mémoire pour permettre la sélection de la page dans la mémoire où les données sont emmagasinées. Puis, l'adresse de colonne associée aux données est délivrée à la mémoire pour permettre la sélection du bloc particulier de données dans la rangée ou page adressée. En général, les données adressées sont alors lues en sortie du bus de données. On trouve un exemple d'une mémoire de pages dans le calculateur IB Personal System/2", modèle 80. ("Personal System/2 est une marque déposée par "International Business Machines Corporation). Une représentation schématique simplifiée et générale d'un tel système de calcul à mémoire de pages est donnée à la figure 1 sous la forme du système 10. Le système 10 comprend une unité centrale de traitement (CPU) 20 ou microprocesseur à laquelle sont connectés un bus d'adresses 30 et un bus de données 40. Le système 10 comprend en outre une unité de commande de mémoire 50 à laquelle le bus d'adresses 30 et le bus de données 40 sont connectés. Un bus de commande 60 est connecté entre l'unité CPU 20 et l'unité de commande de mémoire 50 de façon que des signaux de commande puissent être passés entre ces dernières.L'unité de commande de mémoire 50 est connectée à au moins un module de mémoire 70 qui est composé de la mémoire à accès aléatoire (RAM). Dans le présent exemple, le module de mémoire 70 est divisé en pages qui ont une longueur de 2K multiplets (512 x 32 plus la parité), chaque page par définition ayant la même adresse de rangée. Chaque page comprend ainsi 2K adresses de colonne. Un bus de données 80 est connecté entre l'unité de commande de mémoire 50 et le module de mémoire 70 pour permettre le transfert de données entre ces derniers. Un bus d'adresses MUX multiplex 90 est connecté entre l'unité de commande de mémoire 50 et le module de mémoire 70 de façon que les informations d'adresses de colonne et de rangée puissent être passées de l'unité de commande de mémoire 50 au module de mémoire 7C. Le bus d'adresses multiplexé 90 a moins de lignes que le bus d'adresses 30 en raison de la nature multiplexée du bus 90 sur lequel une adresse de rangée ou de page est tout d'abord délivrée au module de mémoire 90 pendant un cycle d'accès de mémoire et ensuite, en second lieu, une adresse de colonne est délivrée ultérieurement au module de mémoire 90 au cours de ce cycle. L'unité de commande de mémoire 50 délivre des signaux de découpage adresse de rangée (RAS) et des signaux de découpage d'adresse de colonne (CAS) au module de mémoire 70 comme on le voit à la figure 1.La nature des signaux RAS et CAS est décrite dans la discussion suivante du schéma de chronologie de la figure 2. La figure 2 est un schéma chronologique d'un ccle de mémoire courant associé au système de calcul 10. Dans cet exemple, on suppose que l'unité CPU 20 désire accéder à ou récupérer un premier bloc de données dans la mémoire 70 à une adresse de données prédéterminée dans ladite mémoire. Pour accéder réellement à ces informations, l'unité CPU 20 envoie l'adresse de données à l'unite de commande de mémoire 50. L'unité de commande de mémoire 5C divise effectivement l'adresse de données en deux parties, å savoir l'adresse de rangée (aussi appelée "adresse de page") et l'adresse de colonne. L'adresse de rangée et l'adresse de colonne sont multiplexées sur le bus MUX ADDRESS 90. C'est à dire que l'adresse de rangée est tout d'abord délivrée a ce bus MUX ADDRESS en 100. Le signal RAS est initialement au niveau HAUT ou COUPE ("HIGH" ou "OFF"). On notera qu'étant donné qu'une logique négative est utilisée dans le schéma chronologique de la figure 2, HIGH correspond à un état OFF et LOW (niveau bas) correspond à un état ON (conditionné). Le signal RAS est conditionné en 105 pour sélectionner la partie d'adresse de rangée actuellement délivrée au bus MUX ADDRESS 90.De cette maniere, le module de mémoire 70 sélectionne la page (rangée) particulière dans laquelle les données adressées sont emmagasinées. Le signal RAS reste conditionné pendant la durée du premier cycle de mémoire et le second cycle de mémoire suivant. Après le conditionnement du signal RAS et la sélection de l'adresse de rangée au premier cycle de mémoire, la partie d'adresse de colonne des données désirées, est délivrée au bus MUX ADDRESS en 110. Le signal CAS est alors conditionné en 115 pour sélectionner la partie d'adresse de colonne actuellement appliquée au bus MUX ADDRESS 90. A ce moment, l'adresse est complète étant donné que les parties d'adresses de rangée et de colonne correspondant aux données désirées, ont été délivrées au module de mémoire 70. Le module de mémoire 70 accède alors aux données ainsi adressées et délivre ces données au bus de données de mémoire 80. Les données sur le bus de données de mémoire 80 deviennent valides en 120 après l'écoulement d'un temps de retard prédéterminé TD qui commence à l'achèvement et à la sélection de l'adresse en 115.Le microprocesseur 20 saisit alors les données adressées sur le bus de données 40 de la figure 1. L 'homme de l'art utilise le terme T CAS pour définir le temps de retard entre l'instant où le signal CAS devient actif et l'instant où les ~données deviennent valides sur le tus de données de mémoire 80. Le terme TRAS se rapporte au temps de retard entre l'instant où le signal RAS devient actif et l'instant où les données deviennent valides. De manière. plus courante, TRAS se rapporte au "temps d'accès" présenté par un dispositif de mémoire particulier. Par exemple, un dispositif de mémoire avec un temps d'accès de 80 nanosecondes présente un T RAS de 80 nanosecondes. Pour cet exemple, on suppose qu'un second bloc de données situé sur la même page ou rangée que le premier bloc de données indiqué ci dessus, est à accéder depuis le module de mémoire 70. L'homme de l'art utilise le terme enchaînement pour décrire l'action de changement d'adresse, par exemple la partie d'adresse de colonne, avant la fin du cycle de mémoire courant en préparation pour le cycle de mémoire suivant. L'enchaînement lui même économise du temps étant donné qu'il permet au circuit de décodage d'adresse dans l'unité de commande de mémoire 50 de commencer le traitement de l'adresse plus tôt que dans les autres cas.Un exemple d'un tel enchaînement est représenté à la figure 2 où après la validation des données en 120 et avant la fin du premier cycle de mémoire en 125, l'adresse de colonne est changée en une nouvelle adresse de colonne en 130, cette adresse de colonne correspondant au second bloc de données. Etant donné que le second bloc de données à accéder au second cycle de mémoire, est sur la même page que les données accédées au premier cycle de mémoire, la partie d'adresse de colonne changes en 130 tandis que la partie d'adresse de rangée reste la même. Cette situation est appelée une situation de "page touchée". Etant donné qu'il n'est pas nécessaire de renvoyer la partie d'adresse de rangée au module de mémoire 7G dans le cas d'une "page touchée", un temps intéressant peut être économisé dans un agencement à mémoire de pages. Avant que le module de mémoire 70 puisse sélectionner et réellement utiliser Jes informations d'adresse de colonne maintenant présentes sur le bus MUX ADRESS 90, il est nécessaire de déconditionner le signal CAS pendant une période de temps prédéterminée que l'on appellera "précharge CAS 135". L'homme de l'art appelle le temps de précharge CAS "TCRp". Pour un dispositif de mémoire avec un temps d'accès de 80 nanosecondes, une valeur courante de TCRp serait de 15 nanosecondes. Une fois que la décharge CAS est achevée, le signal CAS est à nouveau conditionné en 140 de façon que la partie d'adresse de colonne du second bloc de données soit sélectionnée par le module de mémoire 70. L'adresse du second bloc de données est ainsi complétée et les données sur le bus d'adresse de mémoire 8n deviennent valides en 145 après l'écoulement d'un retard prédéterminé TD depuis l'achèvement et la sélection de l'adresse en 140. Le microprocesseur 20 saisit alors les données adressées depuis le bus de données 40 de la figure 1. Le second cycle de mémoire se termine en 150. Dans le cas de cet exemple, on suppose qu'un troisième bloc de données situé sur une page ou rangée différente de celle des premier et second blocs de données, est accédé au cours d'un troisième cycle de mémoire commençant en 150, une partie de ce troisième cycle de mémoire étant représenté à la figure 2. Cette situation est appelée une "page manquée". C'est à dire qu'une partie de la nouvelle adresse de rangée correspondant à l'emplacement du troisième bloc de données, doit être fournie au module de mémoire 70. Cette partie de la nouvelle adresse de rangée apparaît sur le bus MUX ADDRESS par enchaînement en 155. Au début 150 du troisième cycle de mémoire, le signal RAS est déconditionné en préparation de la nouvelle adresse de rangée. La nouvelle adresse de rangée est en fait sélectionnée lorsque le signal RAS est conditionné en 160. Le reste du troisième cycle de mémoire est pratiquement similaire au premier cycle de mémoire de la figure 2, la précharge CAS étant assurée en 165 près du début du troisième cycle de mémoire. D'après la discussion ci dessus, on voit que dans le cas où une "page touchée" apparaît dans une mémoire de pages, un temps d'une durée substantielle est pris (se reporter au second cycle de mémoire de la figure 2) par la conduite de la précharge CAS avant que la partie de la nouvelle adresse de colonne puisse être utilisée pour compléter la nouvelle adresse et sélectionner les données correspondantes. Comme indiqué ci dessus, des systèmes de calcul sont conçus avec des vitesses d'horloge de plus en plus élevees. Etant donné qu'un cycle de mémoire est composé d'un nombre prédéterminé d'impulsions d'horloge qui deviennent de plus en plus courtes à mesure que la vitesse d'horloge augmente, le temps requis pour ces activités de conditionnement de mémoire comme la précharge CAS, tend a occuper une proportion toujours croissante du cycle d'accès de mémoire à mesure que la vitesse d'horloge augmente. Un mode d'utilisation d'un microprocesseur qui fonctionne à une vitesse très rapide par rapport à la vitesse ou au temps d'accès de mémoire, consiste à ajouter des états d'attente au système de calcul afin de ralentir effectivement le microprocesseur pour attendre les données à accéder depuis la mémoire.Ce mode d'action est généralement à éviter car il annule certains des bénéfices tirés de l'augmentation de la vitesse d'horloge du microprocesseur. Un objet de la présente invention est de fournir un système de calcul capable de fonctionner à des vitesses d'horloge élevées sans avoir recours à des états d'attente supplémentaires pendant l'accès à la mémoire. Un autre objet de la présente invention est de diminuer le temps d'accès associé aux mémoires de pages. Selon une réalisation de la présente invention, on obtient un système de calcul qui comprend une mémoire de pages ayant un bus d'adresses et un bus de données connectés à celle ci. Un processeur, par exemple un microprocesseur, est connecté au bus d'adresses et au bus de données. Le processeur traite des données dans le système et fournit à la mémoire un premier signal d'adresse pendant un premier cycle de mémoire, ce premier signal d'adresse correspondant à un emplacement dans la mémoire de données à accéder.Le système comprend un premier circuit de commande connecté à la mémoire pour délivrer à la mémoire un signal de découpage d'adresse de rangée (RAS) pendant le premier cycle de mémoire et comprend en outre un second circuit de commande connecté à la mémoire pour délivrer un signal de découpage d'adresse de colonne (CAS) à la mémoire pendant le premier cycle de mémoire et ultdrieurement au signal RAS. Un circuit de verrouillage est connecté entre la mémoire et le bus de données pour verrouiller les données ainsi adressées pour un transfert ultérieur sur le bus de données. Le système de calcul comprend un circuit de précharge CAS connecté à la mémoire pour soumettre la mémoire à une prêcharge CAS ultérieurement au verrouillage de la mémoire et avant la fin du premier cycle de mémoire. La figure 1 est une représentation schématique simplifiée d'un système de calcul classique avec une mémoire de pages. La figure 2 est un schéma chronologique associé à une mémoire de pages classique et courante. La figure 3 est une représentation graphique simplifiée du système de calcul de la présente invention. La figure 4 est une représentation schématique du système de calcul de la présente invention. La figure 5 est une représentation chronologique montrant la chronologie de la partie de mémoire du système de calcul de la figure 3 par comparaison avec la chronologie de la partie de mémoire du système classique de la figure 2. La figure 6 est un organigramme montrant comment l'accès à la mémoire est mis en oeuvre dans le système de calcul de la présente invention. La figure 7 est une représentation schématique du circuit de verrouillage bidirectionnel utilisé dans le système de calcul de la figure 4. La figure 8 est une représentation schématique de la mémoire intermédiaire de données complète de la figure 7. La figure 9 est une représentation de la répartition des entrées et sorties des données dans la mémoire intermédiaire de données de la figure 8. DESCRIPTO DETAILLEE DE L'INVENTION La figure 3 est une représentation simplifiée du système de calcul de la présente invention qui comprend un système de calcul 200 auquel une unité de contrôle 205, un dispositif d'entrée à clavier 210, un dispositif d'entrée à souris 215 et un dispositif de sortie à imprimante 220 sont connectés. La figure 4 est une représentation schémâtique du système de calcul 200. Le système 200 comprend un processeur 225, par exemple un processeur à 32 bits comme le processeur Intel 80386. Un bus local de CPU 230 est formé par un bus d'adresses de 36 bits, un bus de données de 32 bits et un bus de commande de 10 bits qui sont connectés entre le processeur 225 et une mémoire intermédiaire 240 comme le montre la figure 4. Un coprocesseur mathématique 245 comme le coprocesseur Intel 80837 est connecté au bus local CPU 230 pour exécuter des opérations à virgule flottante pour améliorer le rendement du système. Le système 200 comprend un bus local de système 250 connecté entre la mémoire intermédiaire 240 et la mémoire intermédiaire 253. Le bus local du système 250 comprend un bus de données, un bus d'adresses et un bus de commande comme le montre la figure 4. La mémoire intermédiaire 240 fait fonction de mémoire intermédiaire pour le bus d'adresses du bus local CPU 230 par rapport au bus d'adresses du bus local de système 250. La mémoire intermédiaire 240 fait aussi fonction de mémoire intermédiaire pour le bus de données et le bus de commande du bus local CPU 230 par rapport au bus de données et au bus de commande du bus local de système 250. Une antêmémoire de données de CPU 255, par exemple une antémémoire de données comprenant 64S de mémoire, est connectée aux bus d'adresses et de données du bus local de CPU 230.Une unité de commande d'antémémoire 260 comme l'unité de commande d'antémémoire Intel 82385, par exemple, est connectée aux bus d'adresses et de commande du bus local de CPU 230. L'unité de commande d'antémémoire 26C commande l'emmagasinage et l'accès de données fréquemment utilisées qui sont emmagasinées dans l'antémémoire de données 255 afin d'accélérer effectivement le fonctionnement du système 200. L'unité de commande d'antémémoire 260 est aussi connectée au bus d'adresses du bus local de système 250. Le système 200 comprend un circuit de commande et de chronologie de bus 265 connecté aux bus d'adresses, de données et de commande du bus local de système 25Q. Le bus local de système 250 est connecté par l'intermédiaire d'un ensemble bascule/mémoire intermédiaire/décodeur 267 à un bus d'entrée/sortie (E/S) 270 qui comprend un bus d'adresses de 10 bits, un bus de données de 8 bits et un bus de commande. L'ensemble mémoire intermédiaire/décodeur 267 assure la #commande de la bascule d'adresses E/S et de la mémoire intermédiaire de données E/S. Le décodeur/mémoire intermédiaire 267 décode les signaux d'adresses et de commande du bus local de système et délivre des signaux "sélection élément semi-conducteur" et de commande ES au bus E/S 270. On notera que la "sélection élément semi-conducteur" se rapporte h la sélection du dispositif particulier connecté au bus E/S 270 sur lequel une opération est à effectuer. Le bus E/S 270 est connecté à un adaptateur d'affichage 275, une horloge CMOS 280, une mémoire RAM CMOS 285, un adaptateur RS232 290, un adaptateur d'imprimante 295, une unité de chronologie à 4 canaux 300 pour assurer-des fonctions de chronologie générales. Le bus E/S 27G est en outre connecté 2 un adaptateur de disquette 305, une unité de commande d'interruption 310 et une mémoire inaltérable (ROM) qui contient le système d'entrée/sortie de base (BIOS) du système. Un bus à micro-canaux (TM) 320 comprenant des bus d'adresses, de données et de commande, est connecté au bus local de système par la mémoire intermédiaire 253. L'architecture du bus à micro-canal est écrite plus en détails dans le manuel technique des IBE. PS/2 Modèle 80. Selon l'architecture à micro-canal, un point de commande d'arbitrage central (CACP) 325 est connecté au bus à micro-canaux 320 et au circuit de commande et de chronologie de bus 265 dans le but de gérer le mécanisre d'arbitrage des bus de dispositifs multiples à micro-canal. La connexion de ce point d'arbitrage central 325 et du circuit de commande et de chronologie de bus 265 fait réellement partie du bus à micro-canaux 320. Une pluralité de récepteurs d'enfichage à micro-canal 330 sont connectés au bus à micro-canaux 320 comme le montre la figure 4 pour recevoir des cartes de fonction comme des cartes de mémoire, des adaptateurs vidéos, des adaptateurs DASD, des adaptateurs SCSI et des adaptateurs de communication. Un ou plusieurs récepteurs de disques durs ou disques souples 335 sont connectés au bus à micro-canaux 320 pour faciliter la connexion d'un disque dur ou d'un disque souple (non représenté) au bus 320.Une unité de commande d'accès de mémoire direct (DMA) 337 est connectée aux bus d'adresses, de données et de commande du bus local de système 250 dans le but de permettre l'utilisation de périphériques comme des disques durs, des unités de commande de disques souples et tout dispositif asservi à micro-canal DMA pour avoir un accès direct à la mémoire principale (décrite ci dessous) afin d'éviter d'avoir à impliquer directement le processeur 225 dans les transferts de données entre ces périphériques et la mémoire principale. Un circuit de commande de mémoire 340 est connecté au bus local de système 250 comme le montre la figure 4. Le fonctionnement du circuit de commande de mémoire 340 est entièrement décrit et spécifié dans le schéma chronologique de la figure 5 qui sera décrite ultérieurement. Cependant, afin d'améliorer la compréhension du circuit de commande de mémoire 340, on notera que le circuit de commande de mémoire comprend en fait trois parties, c'est à dire un décodeur RAS/CAS 345, un décodeur/multiplexeur d'adresses 350 et une mémoire intermédiaire de données 355. Le décodeur RAS/CAS 345 est connecté à son entrée au bus de commande du bus local de système 250. Le décodeur RAS/CAS 345 prend des signaux de définition de cycles d'adresses et de bus au processeur 225 et les décode pour extraire des signaux de sélection de mémoire et de chronologie de mémoire. Le décodeur RAS/CAS 345 décode les signaux RAS et CAS. Le signal RAS décodé par le décodeur 345 spécifie quel banc de mémoires des 8 bancs de mémoire (chaque banc comprend 1 mégamultiplet organisé en 256K x 36 bits) est à accéder pendant le cycle de mémoire courant. L'agencement de ces 8 bancs de mémoire en une mémoire 370 comprenant les modules 371, 372, 373 et 374 sera décrit ultérieurement. Le signal ~CAS décodé par le décodeur 345 spécifie quel multiplet ou quels multiplets d'un mot de 32 bits emmagasiné dans la mémoire 370, doivent être accédés pendant le cycle de mémoire courant. Le circuit de commande de mémoire 340 est connecté à la mémoire 370 précédemment indiquée, de la manière décrite ci après. La mémoire 370 comprend 4 modules de mémoire à accès aléatoire (RAM), à savoir les modules 371, 372, 373 et 374 qui reçoivent chacun 2 mégamultiplets de mémoire. Dans la figure 4, les modules 371-374 sont appelés des progiciels en-ligne simples (SIP) de mémoire à accès aléatoire dynamique (DRAM) ou ensemble DRAM SIP. Le module 371 contient 2 mégamultiplets de mémoire et est référencé "BASIC 2MB". Les modules restants 372-374 peuvent être remplis de mémoire selon l'option de l'utilisateur et sont ainsi référencés "OPTIONAL 2MB".Le décodeur RAS/CAS 345 comprend un bus de sortie 380 ayant 13 lignes séparées sur lesquelles les signaux RAS, CAS et WE sont transmis à chacun des bancs de mémoires 371-374 dont 8 lignes sont attribuées à RAS, 4 lignes sont attribuées à CAS et 1 ligne est attribuée à WE. Le décodeur RAS/CAS 345 génère un signal de conditionnement d'écriture (WE) qui indique si un cycle de mémoire particulier est un cycle de lecture ou un cycle d'écriture et envoie cette information à une mémoire 370. Chacun des modules 371-374 comprend 2 mégamultiplets de mémoire dont chaque multiplet est divisé en 512 pages ou rangées qui ont chacune une longueur de 2K multiplets. C'est à dire que les bancs 371-374 sont configurés en mémoires de pages. Le multiplexeur d'adresses (ADDR MUX) 350 est connecté à son entrée au bus de données de 36 lignes du bus local de système 250. Lorsque le processeur 225 désire accéder à un bloc de données emmagasinées dans un emplacement de la mémoire 370, le processeur 225 transmet les 36 bits de l'adresse de cet emplacement de mémoire au multiplexeur- d'adresses 350. Le multiplexeur d'adresses 350 dérive l'adresse de page (adresse de rangée) et l'adresse de colonne des informations d'adresses de 36 bits et délivre l'adresse de page et l'adresse de colonne à la mémoire 370 par l'intermédiaire d'un bus d'adresses multiplexées (MUX ADDR) 390 qui connecte le multiplexeur d'adresses 350 à la mémoire 370. Un bus de données de mémoire de 36 bits 400 connecte les modules de mémoire 371-374 de la mémoire 370 à la mémoire intermédiaire de données 355.Après que la mémoire 370 ait été adressée comme ci dessus, les données à l'adresse de mémoire spécifiée, sont transférées à un bus de données de mémoire 400 qui délivre les données à la mémoire intermédiaire de données 355 comme le montre la figure 4. Sur le bus de données de mémoire 400, 32 bits (Do-D31) sont attribués aux données et 4 bits de parité (P0-P3) sont attribués à la parité. Une fois que les données adressées ont atteint le bus de données de mémoire 400, les données sont emmagasinées temporairement par la mémoire intermédiaire de données 355 et sont ensuite placées sur le bus de données du bus local de système 250. Les données sont ensuite transférées au processeur 255 par la mémoire intermédiaire 240 et le bus local de CPU 230. La discussion suivante du schéma de chronologie de la figure 5B décrit de manière détaillée le fonctionnement du circuit de commande de mémoire 340 et de la mémoire 370. Par facilité et pour permettre une comparaison rapide, le schéma chronologique de l'art antérieur de la figure 2 a été répété dans la partie supérieure de la figure 5 sous la forme de la figure 5A. Pour la discussion du schéma de chronologie de la figure 5B, on suppose que le processeur 225 désire accéder à un bloc de données emmagasiné à une adresse ou emplacement sélectionné dans la mémoire 370. Ce bloc de données est considéré comme le premier bloc de données sélectionné. On suppose aussi qu'après l'accès au premier bloc de données sélectionné, le processeur désire accéder à un second bloc de données sélectionné dans un autre emplacement de la mémoire. Le processeur 225 délivre en sortie l'adresse sélectionne où le premier bloc de données est emmagasiné, au bus de données du bus local de CPU 230. L'adresse sëlectionnée consiste en 32 bits d'adresse A0-A31 et 4 bits de conditionnement de multiplet (BEO-BE3) formant ainsi une adresse de 36 bits au total. Les 4 bits de conditionnement de multiplet BE0-BE3 sont utilisés pour indiquer les multiplets (de 1 à 4) qui sont à récupérer depuis les données (4 multiplets, 32 bits) emmagasinées à une adresse particulière. Après l'arrivée sur le bus d'adresses du bus local de CPU 230, l'adresse sélectionnée est emmagasinée provisoirement dans la mémoire intermédiaire 240.L'adresse sélectionnée est alors transférée au bus d'adresses du bus local de système 25C et délivrée au circuit de commande de mémoire 340 et au multiplexeur d'adresses 350. Le système 200 est agencé dans cette réalisation de façon que 9 bits de cette adresse sélectionnée de 36 bits correspondent à l'adresse de page ou adresse de rangée (adresse RAS) 410 des données à accéder. C'est à dire que les bits A11-A19 correspondent à l'adresse RAS. L'adresse de page 410 est synchronisée pour commencer au début du premier cycle de mémoire comme indique à la figure 5B. Le multiplexeur d'adresses 350 extrait cette adresse de page de 9 bits 410 de l'adresse de 36 bits et délivre cette adresse de page de 9 bits 410 à la mémoire 370 par l'intermédiaire d'un bus MUX ADDR de 9 lignes (adresses multiplexées) qui connecte le multiplexeur d'adresses 350 à la mémoire 370. Au début du premier cycle de mémoire, le signal RAS issu du circuit de commande de mémoire 340 est au niveau haut, ce qui correspond à un état déconditionné dans la convention logique négative utilisée à la figure 5B. Après l'apparition de l'adresse de page 410 sur le bus MUX ADDR 390, le circuit de commande de mémoire 340 (par l'intermédiaire du circuit de décodage RAS/CAS 345) passe RAS au niveau bas ou conditionné en 415 comme on le voit à la figure 5B. De cette manière, l'adresse de page a utiliser par la mémoire 370 pour accéder aux données spécifiées, est passée à la mémoire 370. Après que RAS ait été conditionné, le circuit de commande de mémoire 370, par 11 intermédiaire du multiplexeur d'adresses 350, extrait l'adresse de colonne de 9 bits 420 des données issues de l'adresse de 36 bits et délivre cette adresse de colonne de 9 bits 420 à la mémoire 370 par l'intermédiaire du bus MUX ADDR 390. C'est à dire que les bits A2-A11 correspondent à cette adresse de colonne ou adresse CAS. Comme on le voit sur le schéma de chronologie de la figure SE, après l'apparition de l'adresse de colonne 420 sur le bus MUX ADDR 390, le circuit de commande de mémoire 340 (par le circuit de décodage RAS/CAS 345) passe CAS au niveau bas ou conditionné en 425. De cette manière, l'adresse de colonne à utiliser par la mémoire 370 pour accéder aux données spécifiées, est délivrée à la mémoire 370.L'adresse de page et l'adresse de colonne des données sont ainsi multiplexées sur le même bus MUX ADDR de 9 lignes 390. Les bits restants A17-A31 sont utilisés par le décodeur RAS 345 pour indiquer lequel des modules 371-374 contient le premier bloc de données qui est en cours d'adressage. A cet instant, l'adresse de page 410 et l'adresse de colonne 420 spécifiant l'emplacement en mémoire des données sélectionnées, ont été passées à la mémoire 370. Après un temps de retard prédéterminé TCAS depuis l'instant où CAS a été conditionné ou passé au niveau bas, les données sur le bus de données de mémoire 400 deviennent valides en 430. Les données sont alors immédiatement verrouillées en 435 par des bascules de verrouillage bidirectionnelles (qui seront décrites plus en détails ultérieurement) contenues dans la mémoire intermédiaire de données 355. Après l'action d'emmagasinage temporaire et de verrouillage de la mémoire intermédiaire de données 355, les données verrouillées (le premier bloc de données sélectionné) sont délivrées en 437 au bus de données du bus local de système 250 pour transfert au processeur 225. A la suite du verrouillage des données en 435 pendant le déroulement du premier cycle de mémoire (cycle de mémoire courant) et avant le début du second cycle de mémoire (cycle de mémoire suivant), une précharge CAS est conduite en 440. Une fois que la précharge CAS est commencée en 140, les données sur le bus de données de mémoire 400 deviennent invalides en 442 après l'écoulement d'une période de temps prédéterminée depuis le commencement de la précharge CAS.Les circuits de verrouillage dans la mémoire intermédiaire de données 365 verrouillent les données avant qu'elles deviennent invalides, c'est à dire avant 442 sur le schéma chronologique du bus de données de mémoire de la figure 5B. Ces périodes de temps pendant lesquelles les données sur le bus de données de mémoire 400 sont invalides, sont indiquées par la partie hachurée de la figure SE. La fin de la précharge CAS définit la fin du premier cycle de mémoire. Le processeur 225 transmet l'adresse du second bloc dé données sélectionne au circuit de commande de mémoire 340 par le même chemin de données que celui sur lequel le premier bloc de données séle:ticnné a été transféré jusqu'au circuit de commande de mémoire 3fol0. Si le circuit de commande de mémoire 340 détermine que le second bloc de données selectionné à retirer de la mémoire 370 est dans la même page que le premier bloc de données sélectionné, comme on le voit alors sur le schéma chronologique de la figure 5B, pendant la précharge CAS en 440, l'adresse de colonne délivrée au bus MUX ADDR 390 est changée à l'adresse de colonne de ce second bloc de données en 445. Ce changement d'adresse de colonne se déroule avant la fin du premier cycle de mémoire. A la suite de ce changement d'adresse de colonne, la précharge CAS est terminée et CAS est conditionné, ce qui démarre ainsi le second cycle de mémoire en 450. L'adresse de colonne correspondant au second bloc de données sélectionné est ainsi délivrée à la mémoire 370. Après un temps de retard TCASJ les données correspondant à cette adresse de colonne et à l'adresse de page déjà prescrite, deviennent valides en 455 sur le bus de données de mémoire 400. Les données sont alors Immédiatement verrouillées en 460 par les bascules de verrouillage bidirectionnelles contenues dans la mémoire intermédiaire de données 355. Après le déroulement de l'action d'emmagasinage temporaire/verrouillage de la mémoire intermédiaire de données 355, les données verrouillées (maintenant le second bloc de données sélectionné) sont délivrées en 465 au bus de données du bus local de système 250 pour transfert au processeur 225. Comme on le décrira plus en détails ultérieurement lors de la discussion de la mémoire intermédiaire de données 355, lorsque le signal de commande de bascule de verrouillage de données de mémoire (LEAB0-3) est au niveau bas, la mémoire Intermédiaire 355 fonctionne en mode transparent ou de passage. Lorsque le signal de commande de bascule de verrouillage de données de mémoire est au niveau haut, la mémoire intermédiaire 355 emmagasine des données par action de la bascule de verrouillage. On a décrit ci dessus l'accès en mémoire dans le cas où le second bloc de données sélectionné est dans la même page que le premier bloc de données sélectionné. Cependant, si le circuit de commande de mémoire 340 détermine que le second bloc de données sélectionné n'est pas# dans la même page que le premier bloc de données sélectionné, le procédé d'adressage de mémoire doit alors être repris entièrement au début du premier cycle de mémoire.C'est à dire qu'étant donné que l'adresse de rangée ou l'adresse de page n'est pas la même pour le second bloc de données que pour le premier bloc de données, la nouvelle adresse de rangée correspondant au second bloc de données doit être transmise à la mémoire 370, suivie par la nouvelle adresse de colonne d'une manière similaire à celle représentée au premier cycle de mémoire du schéma de chronologie de l'invention de la figure 5B. La figure 6 est un organigramme qui résume le procédé par lequel les accès en mémoire sont conduits dans le s#ystème 200. Un accès en mémoire commence lorsque le processeur 225 utilise l'enchaînement d'adresse pour délivrer en sortie une adresse courante où des données sont à récupérer comme au bloc 500 de l'organigramme. L'adresse courante est transférée au circuit de commande de mémoire 340 par la structure de bus dans le système 200 d'une manière décrite précédemment. L'adresse courante est décodée par le circuit de commande de mémoire 340 au bloc 505. C'est à dire qu'une adresse de page et une adresse de colonne sont extraites de l'adresse courante, L'adresse de page est alors multiplexée sur le bus d'adresses MUX 390 au bloc 510, cet événement signifiant le début du cycle de mémoire courant au bloc 515. Le signal RAS est alors conditionné au bloc 520 de façon que la mémoire 370 sélectionne l'adresse de page qui lui est actuellement délivrée sur le bus d'adresses MUX 390. L'adresse de colonne est alors multiplexée sur le bus d'adresses MUX 390 au bloc 525. Le signal CAS est conditionné au bloc 530 de façon que la mémoire 370 sélectionne l'adresse de colonne qui lui est actuellement délivrée sur le bus d'adresses MUX 390. A cet instant, l'adresse des données désirées emmagasinées dans la mémoire 370 sont entièrement spécifiées et la mémoire 370 transfert les données à l'adresse spécifiée au bus de données de mémoire 390 au bloc 535.Les données sont verrouillées par les bascules de verrouillage bidirectionnelles dans la mémoire intermédiaire de données 355 au bloc 540 afin de préserver momentanément ces données. Après le verrouillage des données, les données sont transférées au bus de données local du système 250 au bloc 545. Une précharge CAS est alors conduite comme par le bloc 550 avant la fin du cycle de mémoire courant. L'adresse suivante à accéder est alors décodée au bloc 555. Un test est exécuté au bloc de décision 560 pour déterminer si l'adresse suivante est située sur la même page que l'adresse précédente (l'adresse courante ci dessus). Si l'adresse suivante n'est pas dans la même page que l'adresse précédente, le procédé revient au bloc 510 de la figure 6 où l'adresse de page suivante est multiplexée sur le bus d'adresses MUX 390. Cependant, si l'adresse suivante est située sur la même page que l'adresse précédente, le déroulement du procédé se poursuit alors au bloc 565 où l'adresse de colonne de l'adresse suivante est multiplexée sur le bus d'adresse MUX 390. Puis le cycle de mémoire suivant ou second cycle de mémoire est démarré au bloc 570 une fois que la précharge CAS est terminée. C'est à dire qu'au début du second cycle de mémoire, le signal CAS est conditionné au bloc 575 de façon que la mémoire 370 sélectionne l'adresse de colonne qui lui est actuellement délivrée sur le bus d'adresses MUX 390. A cet instant, l'adresse des données désirées emmagasinées dans la mémoire 370 est une fois encore entièrement spécifiée et la mémoire 370 transfert les données à l'adresse spécifiée au bus de données de mémoire 390, au bloc 580. Les données sont verrouillées par les bascules de verrouillage bidirectionnelles dans la mémoire intermédiaire de données 355 au bloc 585 pour préserver momentanément ces données. Après le verrouillage des données, les données sont transférées au bus de données local de système 250 au bloc 590. Une précharge CAS est alors conduite au bloc 595 avant la fin du cycle de mémoire courant. L'adresse suivante à accéder est alors décodée au bloc 600, après quoi le déroulement du procédé repasse au bloc de décision 560 où une décision est à nouveau prise pour déterminer si l'adresse suivante se trouve sur la même page que la dernière adresse. Une mémoire intermédiaire de données du type à verrouillage à grande vitesse pouvant être utilisée comme mémoire intermédiaire de données 355 est représentée à la figure 7 sous forme schématique. Afin de simplifier l'illustration, la figure 7 montre l'un des quatre modules pratiquement identiques utilisés dans la mémoire intermédiaire de données 355 comme le module 610. Le module de mémoire intermédiaire 610 comprend un port de 8 bits 615 qui est connecté aux lignes de données Do à D7 du bus de données de mémoire 400. Le module de mémoire intermédiaire 610 comprend un récepteur de données 620 référencé A REC qui est connecté au port 615 comme le montre la figure.Le récepteur de données 620 est une mémoire intermédiaire qui fait fonction d'interface entre l'environnement du signal TTL de 0 à 5 volts présent sur le bus de données de mémoire 400 et la caractéristique d'environnement de O à approximativement 3 volts du travail interne du module de mémoire intermédiaire 610. La sortie du récepteur 620 est connectée à l'entrée d'une bascule de verrouillage de données de 8 bits 625 qui verrouille des données qui lui sont présentées lorsqu'elle est commandée pour cela par un signal de commande de bascule de verrouillage de données de mémoire approprié présenté à son entrée de commande 625A et référencé LEABO (Conditionnement bascule verrouillage A à B). La bascule de verrouillage 625 est une bascule de verrouillage transparente.C'est à dire que la bascule 625 peut fonctionner soit en mode transparent, soit en mode de verrouillage en réponse a un signal de commande approprié à l'entrée de commande 625A. Lorsque la bascule de verrouillage 625 est commandée pour fonctionner en mode transparent, une entrée de niveau bas provoque une sortie de niveau bas et une entrée de niveau haut provoque une sortie de niveau haut. C'est à dire qu'en mode transparent, les données de 8 bits présentées à l'entrée de la bascule de verrouillage 625 s'écoulent par la sortie de celle ci.Cependant, lorsque la bascule de verrouillage 625 est commandée pour fonctionner en mode de verrouillage par l'intermédiaire du signal de commande de verrouillage à l'entrée 625A (LEABO) lorsqu'elle reçoit un signal d'entrée de 8 bits particulier, la sortie prend alors un état stable et reste dans cet état ou verrouillée jusqu'à ce qu'elle reçoive un signal de commande approprié à l'entrée de commande 625A. On rappellera d'après la discussion précédente qu'immédiatement après que les données adressées soient devenues valides sur le bus de données de mémoire en 430 de la figure 5B, les données sont verrouillées comme en 435. Une commande de sortie 630 est connectée à la sortie de la bascule de verrouillage 625 comme le montre la figure 7. La commande 630 est référencée "B DRV" et fait fonction d'interface entre l'environnement interne de 0 à 3 volts de la mémoire intermédiaire de données 610 et l'environnement TTL externe de 0 à 5 volts présent à la sortie de la commande 630. La sortie de 8 bits de la commande 630 est connectée à un port 635 qui est connecté à des lignes de 8 bits référencées B0-B7 du bus de données du bus local de système 250.De cette manière, une fois que la bascule de verrouillage 625 a verrouillé les données qu'elle reçoit, le système peut continuer le traitement des données et les signaux sur le bus de données de mémoire 400 (DO'D7) sont libres de changer tandis que la bascule de verrouillage 625 retient les anciennes données pour une saisie ultérieure par le processeur 225 par l'intermédiaire du bus local de système 250. La commande 630 comprend une entrée de commande de porte de bus de données de mémoire 630A qui est référencée OEAB0. Lorsque le signal OEABO est conditionné, la commande 630 est excitée pour assurer le passage des données. Cependant, lorsque le signal OEABO est déconditionné, la commande 630 est déconditionnée. La sortie de la bascule de verrouillage 625 est connectée à l'entrée d'un arbre de parité de 8 bits 640. Si les 8 entrées de l'arbre de parité 640 présentent un nombre pair de "1", l'arbre de parité 640 génère alors une sortie d'un seul bit qui est un "1" (niveau haut) pour maintenir la parité impaire. Cependant, si les 8 entrées de l'arbre de parité 640 présentent un nombre impair de "1", l'arbre de parité 640 génère alors une sortie d'un seul bit qui est un "0" (niveau bas) pour maintenir la parité impaire. La mémoire intermédiaire 610 comprend un récepteur GEN/CK 645 dont une entrée est référencée GEN/CK0 comme illustré à la figure 7. Le récepteur GEN/CK 645 est une interface qui convertit des signaux TTL de 0-5 volts à son entrée en signaux de 0-3 volts à sa sortie. La valeur de GEN/CK0 dépend du type de cycle particulier que le processeur 225 désire suivre ensuite. C'est à dire que le signal d'entrée GEN/CK0 (voir la figure 5B) présente une valeur de 1 (niveau haut) lorsque le cycle d'écriture de mémoire est à conduire et présente une valeur de 0 (niveau bas) lorsqu'un cycle de lecture de mémoire est à conduire. Pour cet exemple, on suppose que le signal GEN/CEC a une valeur de 0 indiquant qu'un cycle de lecture est à conduire depuis la mémoire. C'est à dire que les informations de données et de parité correspondantes ont déjà été emmagasinées dans la mémoire 370 et que maintenant on souhaite accéder à ces données. Dans le cas de cet exemple, on suppose qu'un mot de 32 bits composé de quatre multiplets de 8 bits est à retirer de la mémoire 370. On suppose que quatre bits de parité sont emmagasinés avec ce mot de 32 bits, c'est à dire qu'un bit de parité est associé à chaque multiplet du mot de 32 bits. On notera que la mémoire intermédiaire de données 610 de la figure 7 est capable de manipuler un multiplet (E bits) et un bit de parité de ce mot de 32 bits. Les 3 multiplets et les 3 bits de parité restants de ce mot de 32 bits sont traités par trois autres mémoires intermédiaires de données similaires à la mémoire intermédiaire de données 610 représentée à la figure 8. La sortie du récepteur GEN/CK 645 est connectée à l'entrée de commande 650A de la commande de parité 650. La sortie de l'arbre de parité 640 est connectée à l'entrée 650B de la commande de parité 650 et à une entrée d'une porte OU exclusif à deux entrées 655. La sortie de commande de parité 650B est connectée à la ligne de parité P0 de la partie bus de parité du bus de données de mémoire 400. On rappellera que le bus de données de mémoire de 36 bits 400 comprend les lignes D0-D31 pour le mot de 32 bits emmagasiné et 4 lignes de parité P0-P3 correspondant à chacun des 4 bits de parité associés aux 4 multiplets qui constituent le mot de 32 bits emmagasiné.Outre le fait d'être connectée à la sortie de commande de parité 650C, la ligne de parité P0 est connectée par l'intermédiaire d'un récepteur de parité 660 à l'entrée restante de la porte OU exclusif 655. La sortie du récepteur GEN/CK 645 est connectée à une entrée de commande 655A de la porte OU exclusif 655. L'état logique du signal délivré à l'entrée de commande 655A détermine si la porte OU exclusif 655 est conditionnée pour permettre le passage de signaux ou si elle est déconditionnée pour ne pas permettre le passage de signaux à la sortie de la porte OU exclusif 655. La sortie de la porte OU exclusif 655 est référencée Eo (erreur) et connectée à une commande d'erreur 665. La sortie de la commande d'erreur 665 est connectée à un terminal d'erreur 670 qui est référencé E.La commande d'erreur 665 ne fait pas partie de la mémoire intermédiaire 610 et sera décrite ultérieurement. Un générateur/vérificateur d'erreur de parité 680 est composé de l'arbre de parité 640, du récepteur GEN/CK 645, de la commande de parité 650, du récepteur de parité 660, de la porte OU exclusif 655 et de la commande d'erreur 655. Comme on le verra ultérieurement, le générateur/vérificateur de parité 680 fonctionne dans deux modes, c'est à dire un mode de génération de parité lorsque les données sont écrites à la mémoire et un mode de vérification de parité lorsque des données sont retirées de la mémoire 370 ou accédées dans celle ci. Etant donné que la présente invention implique l'accès à des données emmagasinées dans la mémoire 370, le mode de vérification de parité du générateur/vérificateur de parité 680 va maintenant être décrit.Lorsque l'entrée GEN/CK0 du récepteur GEN/CK 645 est au niveau bas (0), le circuit de générateur/vérificateur 680 entre le mode de vérification de parité. Par contre, lorsque l'entrée GENCK0 est au niveau haut (1), le circuit de générateur/vérificateur 680 entre le mode de génération de parité. Pour revenir à la discussion du mode de vérification de parité, lorsque le récepteur 645 reçoit un signal GEN/CK0 de 0 depuis l'environnement (TTL) extérieur, le récepteur 645 fait fonction d'interface pour ce signal à sa sortie qui, comme on l'a déjà indiqué, est une sortie de 0 à approximativement 3 volts.La sortie du récepteur 645 est connectée > l'entrée de commande 650A de la commande de parité 65C de façon que le 0 logique ou niveau bas apparaissant maintenant à l'entrée de commande 650A provoque la coupure de la commande de parité 650 pour que le signal à la sortie de l'arbre de parité 640 ne soit pas passée à la ligne de bus de parité PO du bus de données de mémoire 400. On rappellera d'après la discussion précédente que la fonction du circuit de générateur/vérificateur 680 en mode de vérification, est de comparer en effet le bit de parité emmagasiné P0 associé à un multiplet de données particulier (DO'D7) à la parité réelle P0, présentée par le même multiplet après qu'il ait été retiré de la mémoire 370.Si l'accès en mémoire a été réussi, la parité avant l'accès P0 doit être la même que la parité après l'accès P1 0 Lorsque le multiplet D,-D7 est retiré de la mémoire 370, il est reçu par le récepteur 620 et verrouillé par la bascule de verrouillage 625. (Le multiplet particulier retiré sur les lignes DO'D7 est appelé ci après le multiplet 0). Les 8 bits du multiplet 0 sont ainsi verrouillés à la sortie de la bascule de verrouillage 625 de façon que le système de calcul soit libre de poursuivre en avant et de changer les valeurs des signaux sur les lignes DO'D7 du bus de données de mémoire 400.Lorsque la bascule de verrouillage 625 fonctionne en mode de verrouillage, le multiplet 0 est délivré à l'arbre de parité à 8 bits 640 qui dérive un bit de parité P0' pour ce multiplet accédé à l'instant. P0, est ainsi la parité réelle présentée par le multiplet 0 après sont retrait de la mémoire 370. Le bit de parité P0, est délivré à une entrée de la porte OU exclusif à deux entrées 655. On rappellera que l'entrée restante de la porte OU exclusif 655 est connectée par l'intermédiaire du récepteur de parité 660 à la ligne de parité P0 du bus de données de mémoire 400. De cette manière, lorsque le multiplet 0 est récupéré de la mémoire 370, le bit de parité Po correspondant à ce multiplet 0, est délivré à l'entrée restante de la porte OU exclusif 655.Si le bit de parité P0 avant l'accès est le même que le bit de parité P0 après l'accès en mémoire, c'cst à dire les deux des 1 ou les deux des 0, la porte OU exclusif 655 génère alors un 0 à sa sortie indiquant qu'il n'y a pas eu d'erreur pendant le retrait du multiplet de données, le multiplet 0, de la mémoire. Cependant, si le bit de parité PO avant l'accès en mémoire n'est pas le même que le bit de parité PO prime après l'accès, la porte OU exclusif 655 génère un 1 à sa sortie indiquant qu'une erreur s'est produite au retrait du multiplet 0 de la mémoire 370. Le bit de sortie d'erreur à la sortie de la porte OU exclusif 655 est m#is en interface par l'intermédiaire de la commande 665 avec la fonction OU négatif logique au port de sortie d'erreur 670 qui est référencé E. On notera que lorsque le circuit de générateur/vérificateur 680 est en mode de vérification de parité, le signal GENCK0 apparaissant à la sortie du récepteur GEN/CK 645 est au niveau bas ou 0, ce qui conditionne la porte OU exclusive 655. Par contre, lorsque le circuit de générateur/vérificateur 680 fonctionne en mode de génération de parité, le signal GEN/CK0 est au niveau haut, ce qui déconditionne la porte OUT exclusif 655. Le système de calcul échantillonne régulièrement la sortie E 670 à la fin de chaque cycle de mémoire pour déterminer si une erreur s'est produite. Comme indiqué ci dessus, la mémoire intermédiaire/bascule de verrouillage de données 610 fonctionne aussi dans le sens opposé à celui décrit ci dessus. C'est à dire que lorsque le système de calcul effectue une écriture en mémoire d'un mot de 32 bits particulier comprenant le multiplet 0, le multiplet 1, le multiplet 2 et le multiplet 3, le multiplet 0 de ce mot est transféré du bus local de système 250 au travers de la mémoire intermédiaire 610, au bus de données de mémoire 400. D'une manière plus détaillée, le système délivre le multiplet 0 au port 635 référencé B0-B7. Le port 635 est connecté par l'intermédiaire d'un récepteur 675 à une bascule de verrouillage de 8 bits 680 comme le montre la figure 7. Le récepteur 675 et la bascule de verrouillage 680 sont pratiquement identiques au récepteur 620 et à la bascule de verrouillage 625, respectivement.La bascule de verrouillage 680 comprend une entrée de commande de bascule de verrouillage de données de mémoire référencée LEBA0 qui, lorsqu'elle est passée au niveau haut ou à 1, provoque le verrouillage des données de 8 bits délivrées à la bascule de verrouillage 680. La sortie de la bascule de verrouillage 680 est connectée par l'intermédiaire d'une commande 685 aux lignes de données Do D7 du bus de données de mémoire 400. La commande 685 est pratiquement identique à la commande 630 déjà décrite. La commande 685 comprend une entrée de commande de porte de bus de données de mémoire OEBA0 (sortie conditionnement B à A) qui, lorsqu'elle reçoit un 0 logique ou un signal au niveau bas, conditionne la commande 685 pour permettre le passage des données. Pour résumer le fonctionnement du récepteur 675, de la bascule de verrouillage 680 et de la commande 685 dans le mode d'écriture en mémoire, lorsque le multiplet 0 est délivré au port 635, le récepteur 675 passe les 8 bits du multiplet 0 à la bascule de verrouillage 680.Le signal de commande de bascule de verrouillage de données de mémoire LEBA0 (conditionnement bascule verrouillage B à A) indique alors à la bascule 680 que les données sont à verrouiller à la sortie de la bascule de verrouillage 680, ce qui permet ainsi au système de calcul de poursuivre en avant et de changer les valeurs des signaux sur les lignes de données B0-B7 au port 635 du bus de données local de système 250. Le signal de commande de porte de bus de données de mémoire OEBA0 délivré à la commande 685 passe au niveau bas pour conditionner la commande 685, ce qui permet ainsi aux 8 bits du multiplet 0 verrouillés à la sortie de la bascule 680 de passer au travers des lignes de données DO'D7 du bus de données de mémoire 400.Les signaux OEBAO-3 sont les miroirs du signal de conditionnement d'écriture (WE) que l'unité de commande de mémoire 340 délivre à la mémoire 370. Le signal WE est au niveau haut pour les cycles de lecture et au niveau bas pour les cycles d'écriture. Ce qui précède est une description de la partie de la mémoire intermédiaire de données 355 qui est attribuée à la manipulation de 1 multiplet, BO, d'un mot de 4 multiplets (32 bits) emmagasiné dans et récupéré de la mémoire 370. Pour manipuler les 3 multiplets restants, le multiplet 1, le multiplet 2 et le multiplet 3 de ce mot de 32 bits, la bascule de verrouillage/mémoire intermédiaire de données 610 est répétée quatre fois comme on le voit à la figure 9. Par simplification, ces 4 mémoires intermédiaires de données 610 sont considérées comme les mémoires intermédiaires de données 610-0, 610-1, 610-2 et 610-3 pour indiquer aisément qu'elles manipulent les parties du multiplet 0, du multiplet 1, du multiplet 2 et du multiplet 3 du mots de 32 bits indiqué ci dessus à récupérer de ou à écrire dans la mémoire 370. La figure 9 est une représentation schSmatique simplifiée de la mémoire intermédiaire de données 355 qui comprend quatre mémoires intermédiaires/ bascules de verrouillage de données 610, à savoir les mémoires intermédiaires de données 610-0, 610-1, 610-2 et 610-3 pour traiter le multiplet 0, le multiplet 1, le multiplet 2 et le multiplet 3, respectivement, d'un mot de 32 bits. Par commodité, sur la figure 8, le récepteur 620 et la commande 685, les bascules de verrouillage 625 et 680, et la commande 630 et le récepteur 675 ont été appairés dans les boites respectives de la figure 8. On rappellera que la mémoire intermédiaire de données 355 est située entre le bus de données du bus local de système 250 et le bus de données de mémoire 400.Plus précisément, les lignes de données DO'D31 de la mémoire intermédiaire 355 sont connectées aux lignes de données DG-D31 du bus de données de mémoire 400. Les lignes de données B0-B31 de la mémoire intermédiaire 355 sont connectées aux lignes de données B0-B31 du bus de données du bus local de système 250. Que ce soit une opération de lecture ou d'écriture qui est conduite pour un mot de 32 bits par l'intermédiaire de la mémoire intermédiaire 355, les mémoires intermédiaires/bascules de verrouillage 610-0, 610-1, 610-2 et 610-3 fonctionnent sur le multiplet 0, e multiplet 1, le multiplet 2 et le multiplet 3, respectivement, de ce mot de 32 bits. La mémoire intermédiaire de données 355 comprend 4 entrées/sorties à bit de parité PO, P1, P2 et P3 correspondant à la parité générée ou accédée du multiplet 0, du multiplet 1, du multiplet 2 et du multiplet 3, respectivement. Les lignes de parité P0, P1, P2 et P3 de la mémoire intermédiaire de données 355 sont connectées aux lignes de parité P0, P1, P2 et P3 du bus de données de mémoire à 36 lignes 400.On rappellera que le bus de données de mémoire 400 comprend les lignes de données D0-D31 et les lignes de parité P0-P3. Ainsi, lorsqu'un mot de 32 bits particulier est écrit en mémoire, les arbres de parité respectifs 640 des mémoires intermédiaires de dons 610 0-3 déterminent la parité associée à chacun des quatre multiplets, multiplet 0-multiplet 3 du mots de données de 32 bits et délivrent les quatre bits de parité déterminés aux lignes de parité P0-P3 pour emmagasinage en mémoire 370. Lorsqu'une opération de retrait est effectuée pour retirer un mot de 32 bits de la mémoire 370, les 4 bits de parité P0-P3 associés à ce mot de données sont retirés et délivrés aux lignes de parité P0-P3 de la mémoire intermédiaire de données 355. Les lignes GEN/CK0, GEN/CK1, GEN/CK2 et GEN/CK3 de la mémoire intermédiaire de données 355 sont connectées aux lignes de commande GENCK0-GENCK3 correspondantes (non représentées) incluses dans le circuit de commande de mémoire 340. Le circuit de commande de mémoire 340 génère un signal GEN/CK comme le signal GEN/CK0 représenté à la figure 5B et délivre celui ci aux entrées GENCK0-GENCK3 de la mémoire intermédiaire 355 pour indiquer à la mémoire intermédiaire 355 si l'opération conduite est une opération de lecture ou d'écriture. Si c'est une opération d'écriture qui est conduite, les signaux GENCK0-GENCK3 appropriés sont générés pour commander aux mémoires intermédiaires respectives 610-1 à 610-3 la génération des bits de parité respectifs correspondant aux 4 multiplets du mot de 32 bits en cours d'écriture dans la mémoire 370.Cependant, si une opération de lecture est conduite, le circuit de commande de mémoire 340 génère des signaux de commande appropriés GENCK0-GENCK3 pour commander aux mémoires intermédiaires respectives 610-1 à 610-3 l'exécution du mode de vérification de parité comme déjà indiqué lors de la description de la figure 7. C'est à dire qu'après le retrait des 4 multiplets et de leurs 4 bits de parité PO'P3 de la mémoire 370, les arbres de parité 640 déterminent la parité P0 '-P3, des 4 multiplets après retrait, respectivement. Si l'un quelconque des anciens bits de parité P0-P3 ne correspond pas aux nouveaux bitS de parité Po'~P3' un signal d'erreur est alors généré sur la ligne d'erreur correspondante E0-E3 décrite à la figure 9 aux entrées de la commande d'erreur 665. La commande d'erreur 665 assure une fonction logique OU négatif. Si l'une quelconque des lignes d'erreur E0, El, E2 et E3 reçoit un signal d'erreur, la sortie de la commande d'erreur 665 génère alors aussi ce signal d'erreur. On notera que la commande d'erreur 665 fait fonction d'interface entre l'environnement à faible déviation de tension interne à la mémoire intermédiaire 355 et l'environnement TTL externe présenté au terminal d'erreur 670 référencé E. La figure 9 est une représentation des entrées/sorties de données de la mémoire intermédiaire 355, qui montre les diverses entrées et sorties de la mémoire intermédiaire 355 que l'on a déjà décrite. La table i est indiquée ci après pour résumer les différents états dans lesquels la mémoire intermédiaire de données 355 peut fonctionner. TABLE 1 0-3 OEBA LEBA LEBA 0-3 0-3 0-3 0-3 A-B B-A 0 X 0 X 1 X 1 Mode transparent 0 X 1 X 2 X 2 Données verrouillées 1 X 0 X 3 X 3 Sortie déconditionnée 1 X 1 X 4 X 4 Sortie déconditionnée Données verrouillées X O X O X 1 X 0 X 1 X 2 X 1 X 1 X 4 La table 2 est incluse ici pour résumer les différents états que prend la mémoire intermédiaire 355 en réponse aux différents signaux GEN/CK. TABLE 2 GEN/CKx Px 0 Entrée mode vérification Px comparée au bit de parité généré intérieurement pour les 8 entrées "A" correspondantes. Une non-correspondance passe la ligne d'erreur au niveau bas. 1 Le bit de parité mode génération est conduit en sortie de la manière suivante 1 Si nombre pair de 1 sur entrées A correspondantes O Si nombre impair de 1 Nota : Sortie erreur = "1" si GEN:CK 0-3 = 1. Les bornes OEAE0-3 et GEN/CK0-3 sur la mémoire intermédiaire de données 355 sont connectées ensemble et ainsi les signaux OEAB (commande porte bus données mémoire) sont le miroir ou suivent les signaux GEN/CK comme on le voit à la figure 5B. Bien que l'on ait décrit ci dessus un système de calcul présentant des temps d'accès en mémoire réduits, une méthode pour accéder en mémoire dans un tel système de calcul est aussi décrite et résumée ci dessous. Cette méthode est utilisée dans un système de calcul comprenant une mémoires à pages ayant un bus d'adresses et un bus de données qui lui sont connectés et présente en outre des premier, second, etc... cycles de mémoire associés. On présente plus particulièrement une méthode de lecture d'informations emmagasinées dans ladite mémoire qui comprend les étapes d'application à la mémoire d'un signal d'adresse correspondant à l'emplacement de données à accéder dans la mémoire.La méthode comprend les étapes d'application à la mémoire d'un signal de découpage d'adresse de rangée (RAS) pendant le premier cycle de mémoire et d'application d'un signal de découpage d'adresse de colonne (CAS) à la mémoire pendant le premier cycle de mémoire et à la suite du signal RAS. La méthode comprend le verrouillage de la mémoire ainsi adressée pour un transfert ultérieur sur le bus de données et l'exécution d'une précharge CAS sur la mémoire à la suite de l'étape de verrouillage et avant la fin d'un premier cycle de mémoire. On a décrit dans ce qui précède un système de calcul dans lequel le temps d'accès à une mémoire de pages, a été réduit de manière significative en avançant la précharge CAS associée aux données à accéder au cours du cycle de mémoire suivant, au cycle de mémoire courant. Le système de calcul est capable de fonctionner à des vitesses d'horloge élevées sans recourir à des états d'attente supplémentaires pendant l'accès à la mémoire de pages. Bien qu'une réalisation de la présente invention ait été décrite ci dessus à titre d'exemple, divers changements et modifications pourront y être apportés par l'homme de l'art sans pour autant sortir du cadre ladite invention telle qu'exprimée dans les revendications suivantes. REVENDICATIONS 1. Un système de calcul comprenant une mémoire de pages dynamique et des moyens pour accéder à la mémoire en générant des signaux de découpage d'adresse de rangée (RAS) et de découpage d'adresse de colonne (CAS) combinés, respectivement, avec des données d'adresse de rangée et de colonne, dans lequel pour accéder à un certain nombre d'emplacements dans une page au cours d'un nombre similaire de cycles de mémoire successifs, le signal RAS et les données d'adresse de rangée restent constants pour chacun de ces cycles de mémoire, et le signal CAS est préchargé pour chaque cycle de mémoire excepté le premier, ledit système étant caractérisé en ce que la précharge CAS pour un cycle de mémoire courant est effectuée pendant une période de temps situé à l'intérieur et à la fin du cycle de mémoire immédiatement précédent. 2. Un système de calcul selon la revendication 1 dans lequel ladite précharge CAS pour le cycle de mémoire courant, se termine au cébut du cycle de mémoire courant. 3. Un système de calcul selon la revendication 1 ou la revendication 2 dans lequel des données sont lues depuis un emplacement adressé dans la mémoire au cours d'une période d'un cycle de mémoire précédant le début de la précharge CAS de ce cycle, ledit système comprenant des moyens de verrouillage pour verrouiller les données lues avant de les appliquer à un bus de données du système. 4. Une méthode d'utilisation d'un système de calcul comprenant une mémoire de pages dynamique comprenant la lecture de données dans la mémoire de pages par l'exécution des étapes de génération d'un signal de découpage d'adresse de rangée (RAS) combiné à des données d'adresse de rangée pour sélectionner une rangée de mémoire et un signal de découpage d'adresse de colonne (CAS) combiné à des données d'adresse de colonne pour définir un emplacement adressé et, pour accéder à une pluralité d'emplacements sur une page au cours d'une pluralité similaire de cycles de mémoire successifs, la retenue de la constante signal RAS et données d'adresse de rangée pour chacun de ces cycles sauf le premier, caractérisée en ce que la précharge du signal CAS pour un cycle de mémoire courant, est effectué à une période comprise dans, et à la fin du cycle de mémoire immédiatement précédent. 5. Une méthode selon la revendication 4 caractérisée en outre en ce que ladite précharge du signal CAS est terminée au début du cycle de mémoire courant. 6. Une methode selon la revendication 4 ou la revendication 5 caractérisé en outre en ce que des données sont lues depuis un emplacement adressé dans la mémoire dans une période avant le début du signal CAS au cours de ce cycle, lesdites données étant verrouillées avant application à un bus de données du système de calcul. 7. Une méthode d'utilisation d'un système de calcul comprenant un processeur, une mémoire dynamique de pages, un bus d'adresses et un bus de données, pour transférer des données de la mémoire au processor, comprenant les étapes suivantes l'application d'une adresse de rangée à la mémoire depuis le bus d'adresses ensemble avec un signal de découpage d'adresse de rangées (RAS) au début d'un cycle de mémoire, puis, au cours du même cycle de mémoire, l'application d'une adresse de colonne à la mémoire depuis le bus d'adresses ensemble avec un signal de découpage d'adresse de colonne (CAS), le verrouillage des données ainsi adressées pour transfert ultérieur au processeur par le bus de données, et la précharge du signal CAS à la suite du verrouillage des données et avant la fin du cycle de mémoire.