FR2612314A1 - Ordinateur personnel a carte d'extension - Google Patents

Ordinateur personnel a carte d'extension Download PDF

Info

Publication number
FR2612314A1
FR2612314A1 FR8803197A FR8803197A FR2612314A1 FR 2612314 A1 FR2612314 A1 FR 2612314A1 FR 8803197 A FR8803197 A FR 8803197A FR 8803197 A FR8803197 A FR 8803197A FR 2612314 A1 FR2612314 A1 FR 2612314A1
Authority
FR
France
Prior art keywords
memory
cpu
connector
bus
nubus
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
Application number
FR8803197A
Other languages
English (en)
Other versions
FR2612314B1 (fr
Inventor
Jonathan Fitch
Ronald Hochsprung
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Computer Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from US07/025,499 external-priority patent/US4931923A/en
Priority claimed from US07/025,500 external-priority patent/US4905182A/en
Application filed by Apple Computer Inc filed Critical Apple Computer Inc
Publication of FR2612314A1 publication Critical patent/FR2612314A1/fr
Application granted granted Critical
Publication of FR2612314B1 publication Critical patent/FR2612314B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment
    • G06F12/0661Configuration or reconfiguration with centralised address assignment and decentralised selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Multi Processors (AREA)
  • Coupling Device And Connection With Printed Circuit (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System (AREA)

Abstract

LA PRESENTE INVENTION CONCERNE UN SYSTEME D'ORDINATEUR PERSONNEL A CARTE D'EXTENSION COMPRENANT UNE CARTE DE CIRCUIT PRINCIPAL COMPRENANT UNE UNITE CENTRALE 1 ET DES CONNECTEURS D'EXTENSION 29-34 DONT CHACUN EST ADAPTE A RECEVOIR UNE CARTE DE CIRCUIT IMPRIME. LA CARTE DE CIRCUIT PRINCIPAL COMPREND UNE MEMOIRE 2, UN BUS D'ADRESSES A 32 BITS 5 AUQUEL SONT ASSOCIES DES SIGNAUX DE COMMANDE ET UN CIRCUIT D'ENTREESORTIE 7. LE CONNECTEUR EST COUPLE AU BUS D'ADRESSE A 32 BITS QUI EST SENSIBLEMENT UN BUS NUBUS 10, ET LE CONNECTEUR COMPREND UN MOYEN DE LIGNE D'IDENTIFICATION DISTINCTIVE QUI FOURNIT AU CONNECTEUR UN NUMERO D'IDENTIFICATION DANS LE SYSTEME D'ORDINATEUR. LE SYSTEME D'ORDINATEUR RESERVE 256 MEGAMULTIPLETS D'ESPACE MEMOIRE DE L'EMPLACEMENT X000 0000 A L'EMPLACEMENT XFFF FFFF POUR UNE MEMOIRE SUR UNE CARTE DANS UN CONNECTEUR AYANT UN NUMERO DISTINCTIF EGAL A X.

Description

J> 22612314
La présente invention concerne de façon générale des systèmes d'ordinateur munis de connecteurs d'extension sur une carte mère (carte de circuit principal), et plus particulièrement des ordinateurs personnels comprenant de tels connecteurs et cartes de circuit imprimé qui sont adaptés à être montés dans ces connecteurs qui sont connectés à un bus o une partie de l'espace mémoire d'adresse dans l'ordinateur est réservée aux connecteurs. Des systèmes d'ordinateur comprenant des connecteurs d'extension sont bien connus dans l'art antérieur. Par exemple, l'Apple IIe est un ordinateur personnel bien connu muni de connecteurs d'extension; une mémoire est réservée aux connecteurs dans cet ordinateur. Toutefois, on accède à la mémoire d'une carte dans cet ordinateur non pas en présentant d'abord l'adresse mais plutôt en choisissant une broche particulière du connecteur (en même temps que l'adresse) qui dit à la carte placée dans le connecteur que l'adresse que le microprocesseur appelle est quelque part dans cette mémoire réservée de la carte périphérique. En outre, l'espace mémoire réservé pour des cartes dans ces systèmes
est relativement faible (par exemple 16 octets ou 256 octets).
Ainsi, l'adresse elle-même n'est habituellement pas utilisée seule pour indiquer quand un espace d'adresse de carte est en cours d'adressage. Divers documents sont disponibles pour l'homme de
l'art concernant la nature générale de ces systèmes d'ordinateur.
Par exemple: The Apple II Reference Manual, Apple Computer (1981); From Chips to Systems: An Introduction to Microprocessors, Rodnay Zaks, Sybex, Inc., 1981; An Introduction to Microcomputers, by Adam Osborne and Associates, 1975; et The Apple II Circuit
Description, Winston Gayler, publié par Howard W. Sams & Co., Inc.
(1983).
2 6 1 2 3 1 4
La présente invention concerne plus particulièrement des systèmes d'ordinateur utilisant des bus de système qui suivent sensiblement les spécifications NuBus, ces spécifications décrivant les protocoles (par exemple les standards logiques, électriques et physiques) et les standards généraux d'un bus synchrone (10 MHz), multiplexé, multimaitre, qui fournit de façon générale un mécanisme d'arbitrage convenable. Le NuBus a pour origine initiale le Massachusetts Institute of Technology. Il a ensuite été revu et existe d'une façon publiée dans certaines publications de Texas Instruments, Inc. (incluant la publication de Texas Instruments
N 2242825-0001 et la publication de Texas Instruments N 2537171-
0001). De façon récente, un comité de l'Institute of Electrical and Electronic Engineers (IEEE) a proposé des spécifications pour un bus de système, en tant que norme IEEE, c'est-à-dire un bus qui correspond sensiblement au NuBus, bien que celui-ci ait été
modifié par rapport aux spécifications publiées par Texas Ins-
truments. Le bus proposé par IEEE est appelé le Bus IEEE 1196. Le Bus IEEE 1196 est sensiblement un bus NuBus tel que précisé
initialement dans les publications de Texas Instruments.
Dans un système NuBus, il existe 4 gigaoctets d'espace d'adresse mémoire physique, puisqu'il s'agit d'un bus d'adresse à 32 bits qui peut être couplé à une unité centrale (CPU) pouvant produire 22 adresses différentes. Dans sa forme la plus
simple, un ordinateur utilisant l'architecture NuBus est essen-
tiellement une carte de circuit principal comprenant des fentes ou connecteurs dans lesquels on place des cartes (quelquefois appelées modules) comprenant des microprocesseurs, des mémoires et
autres circuits généralement associés aux micro-ordinateurs.
Effectivement, chaque carte peut elle-même être un micro-ordi-
nateur qui communique par le NuBus avec d'autres cartes dans d'autres connecteurs qui sont également connectés au NuBus. Ainsi, par exemple, un système NuBus peut comprendre une carte comprenant un CPU (unité centrale) , un microprocesseur, un module de gestion de mémoire, de la mémoire sous forme de mémoire vive (RAM) et de mémoire morte (ROM), et un bus sur la carte qui permet au microprocesseur sur la carte de lire la ROM sur la carte et de lire la RAM sur la carte et d'écrire dans cette RAM. En outre, des circuits d'entrée/sortie (I/O) peuvent être inclus sur la carte, ces circuits permettant à la carte de communiquer par des bornes sur la carte qui font partie du reste du système, incluant des modules périphériques, tels que des commandes de disques, des
imprimantes, des systèmes vidéo et autres modules périphériques.
La carte inclut typiquement un bord qui comprend des bornes électriques sous forme de broches conçues pour établir des
connexions électriques avec des bornes correspondantes d'un con-
necteur. Une telle carte, comprenant un microprocesseur, pourra
commander le bus Nubus en exécutant certains signaux pour initiali-
ser une transaction sur le NuBus et transférer et recevoir ainsi des informations sur le NuBus en relation avec la carte de circuit principal. Ainsi, cette carte pourra écrire des informations vers une mémoire située sur d'autres cartes par l'intermédiaire du NuBus (une transaction) et lire des informations par l'intermédiaire
du NuBus'(une autre transaction).
Dans le système NuBus, une mémoire est réservée à chacun des connecteurs. Dans le système NuBus, il peut y avoir jusqu'à 16 connecteurs auxquels est alloué de l'espace mémoire dans le 16ème supérieur de l'espace d'adresse complet à 4 gigaoctets du NuBus. Ce 16ème supérieur est un espace mémoire à 256 mégaoctets, et est divisé en 16 régions de 16 mégaoctets qui sont mappées avec les 16 connecteurs de carte NuBus possibles sur la base d'un numéro d'identification de connecteurs qui produit un numéro distinct pour chaque connecteur, permettant à une carte dans le connecteur de "lire" le numéro d'identification distinct pour déterminer le numéro de connecteur du connecteur dans lequel la carte est enfichée. Voir de façon générale les pages 30 à 32 de la spécification proposée du Bus IEEE 1196. Ainsi, chaque carte obtient un "espace de connecteur" de 16 mégaoctets. Dans le système NuBus classique, un "espace de connecteur" de carte est réservé par un dispositif sur la carte qui s'adapte au numéro distinctif (exprimé sous forme hexadécimale) du connecteur (o se trouve la carte) vers le second chiffre hexadécimal le plus significatif (second MSHD) d'une adresse apparaissant sur le bus NuBus, quand le chiffre hexadécimal le plus significatif (MSHD) de l'adresse est $F. Ainsi, le dispositif détermine quand MSHD égale $F et détermine alors si le numéro de connecteur (numéro d'identification de connecteur) s'adapte au second MSHD; s'il y a accord, alors le dispositif permet à la carte d'être adressée. Bien sûr, la comparaison réelle par la carte d'écriture est faite en binaire, mais, dans des buts explicatifs, il est plus simple de considérer
la comparaison comme si elle était effectuée directement en hexa-
décimal. Ce système NuBus permet une flexibilité considérable car la très grande majorité de l'espace d'adresse mémoire n'est pas réservée. En outre, les espaces apparemment grands (16 mégaoctets) réservés pour les connecteurs (les espaces connecteurs) assurent une mémorisation de données considérable (le mot "données" est
utilisé ici pour désigner également des programmes d'ordinateur).
Toutefois, une trop grande flexibilité peut provoquer des incon-
gruités entre cartes qui peuvent être utilisées sur la même carte mère. Ainsi, cette flexibilité permet 'de concevoir une carte qui réserve la plus grande partie de l'espace d'adresse restant dans le système NuBus, carte qui entrerait en compétition avec une
autre carte prévue pour utiliser une partie du même espace mémoire.
Bien sûr, des commutateurs et des câbles cavaliers peuvent être utilisés pour configurer le système de façon à empêcher des recouvrements d'espace mémoire; toutefois, de telles solutions sont gênantes de nombreuses façons, y compris leur tendance à effrayer des novices qui préféreraient un système d'ordinateur qui permet à l'utilisateur d'enficher simplement la carte dans un
connecteur et de ne plus s'en soucier.
La présente invention résout ces problèmes en allouant automatiquement un 16ème de l'espace d'adresse mémoire complet à chaque connecteur dans le système NuBus. Ainsi, un objet de l'invention est de prévoir un système qui s'auto-configure et qui reste flexible mais qui ne pénalise pas l'utilisateur du fait de sa flexibilité. Un autre objet de l'invention est de prévoir une carte de circuit principal (carte mère) munie de connecteurs
qui permettent une plus grande puissance de l'ordinateur auto-
2 6 1 2 3 1 4
matique par suite de l'espace mémoire accru associé à chaque carte.
Un autre objet de l'invention est de prévoir des cartes de circuit imprimé (modules) qui configurent automatiquement leur espace mémoire et présentent un espace mémoire accru réservé à chacune des cartes.
La présente invention implique un système d'ordina-
teur qui comprend des connecteurs d'extension couplés à un bus
NuBus, ces connecteurs comprenant un espace mémoire accru disponi-
ble pour, et réservé à, de la mémoire sur les cartes (modules) dans les connecteurs d'extension et o la réservation de la mémoire accrue prend place par utilisation de moyens de ligne d'identification distinctifs qui fournissent, par l'intermédiaire d'un signal distinctif, un numéro distinctif identifiant le numéro de connecteur vers toute carte située dans le connecteur. En outre, l'invention prévoit une carte comprenant un moyen décodeur couplé pour recevoir le signal distinctif fourni par le moyen de ligne d'identification distinctif. Un moyen décodeur compare le numéro distinctif fourni par le signal distinctif à une adresse
apparaissant sur le NuBus. La comparaison résulte en 256 méga-
octets d'espace mémoire réservés pour la carte dans un connecteur o l'espace mémoire va de $X000 0000 à $XFFF FFFF, o le numéro de connecteur est X. Le moyen décodeur compare le numéro distinctif au chiffre hexadécimal le plus significatif de l'adresse apparaissant sur le bus NuBus pour déterminer si le numéro distinctif, en hexadécimal, est égal au chiffre hexadécimal le plus significatif de l'adresse. Quand le moyen décodeur détermine qu'ils sont égaux, il valide la mémoire à adresser sur la carte, sur la base de l'adresse apparaissant sur le bus NuBus. Bien sûr, la comparaison est effectuée en binaire, mais, dans des buts explicatifs, il est plus facile de considérer le processus de comparaison comme
s'il était effectué en hexadécimal.
Ces objets, caractéristiques et avantages ainsi que d'autres de la présente invention seront exposés plus en détail
dans la description suivante de modes de réalisation particuliers
faite en relation avec les figures jointes parmi lesquelles:
2'612314
la figure 1 est un schéma sous forme de blocs d'un système d'ordinateur général d'un mode de réalisation particulier de l'invention o il y a 6 connecteurs couplés au bus NuBus 10; la figure 2 est un mappage de l'espace mémoire d'adresses physiques d'un mode de réalisation de l'invention; la figure 3 est un mappage de l'espace mémoire d'adresses physiques représentant l'allocation d'espace mémoire pour un mode de réalisation particulier de l'invention la figure 4 représente une carte de circuit imprimé selon l'invention qui est destinée à être utilisée avec la carte mère de l'invention s la figure 5 est un schéma sous forme de blocs représentant l'interface NuBus avec un microprocesseur sur la carte de circuit principal; la figure 6 est un schéma sous forme de blocs représentant les diverses horloges du NuBus conçues pour être utilisées avec le bus NuBus; la figure 7 représente la relation de phase des diverses horloges NuBus; la figure 8 est un schéma sous forme de blocs de l'interface entre le processeur de carte mère (CPU1) et les cartes NuBus dans les connecteurs de NuBus; la figure 9 est un schéma sous forme de blocs représentant l'interface entre le NuBus et le bus de processeur de carte mère; la figure 10 représente une allocation d'espace mémoire d'adressage telle qu'elle est vue par une carte dans un connecteur de NuBus o la carte accède à la partie de ROM de la mémoire 2 en adressant la partie supérieure du petit espace du connecteur 0; la figure 11 est une vue en perspective de la carte de circuit principal (carte mère) d'un système d'ordinateur selon la présente invention; la figure 12 est un diagramme schématique d'un
35 exemple de moyen décodeur utilisé sur une carte selon l'in-
vention; la figure 13 est un schéma sous forme de blocs d'un système d'ordinateur selon l'invention; et la figure 14 représente une carte de circuit imprimé
qui est destinée à être utilisée avec la carte de circuit princi-
pal selon l'invention.
Dans la description ci-après, de nombreux détails
spécifiques sont décrits et représentés, par exemple des circuits, des schémas blocs, des emplacements mémoires, des valeurs logiques, etc, de façon à permettre une compréhension approfondie de la présente invention. Toutefois, il sera clair pour l'homme de l'art que la présente invention peut être mise en oeuvre sans ces détails particuliers. Dans d'autres cas, des composants et des sous-systèmes bien connus ne sont pas décrits en détail pour ne pas
obscurcir inutilement la présente invention.
La figure 1 représente la structure générale d'un système d'ordinateur selon la présente invention. Le système comprend une unité centrale 1 (CPU 1), qui est habituellement un microprocesseur, et qui est couplée à une mémoire 2 pour permettre au CPU 1 de lire des données à partir de la mémoire 2 et d'écrire des données dans cette mémoire 2. Le CPU 1 est couplé à la mémoire
2 pour fournir des adresses d'emplacement mémoire par l'intermé-
diaire du bus de processeur 5 qui agit en tant que bus d'adresses et fournit des adresses à la mémoire 2 à partir du CPU 1. Les données (qui incluent des instructions de programme d'ordinateur) en provenance des emplacements mémoire adressés sont fournies par la mémoire 2 dans un bus de processeur 6 qui agit comme bus de données bidirectionnel. Le CPU 1 peut écrire dans la mémoire 2 en fournissant d'abord une adresse sur le bus de processeur 5 qui adresse des emplacements mémoire dans la mémoire 2 selon les signaux d'adresse sur le bus de processeur 5 et en écrivant ensuite dans la mémoire 2 en fournissant des données sur le bus de processeur 6 vers la mémoire 2. Comme cela est bien connu, certains signaux en provenance du CPU 1, qui peuvent être transportés sur le bus de processeur 5, indiquent si le CPU 1 est en train d'écrire vers la mémoire 2 ou de lire à partir de la mémoire 2. Le bus de processeur 5 est un bus d'adresses à 32 bits et comprend ainsi 32 lignes d'adresse qui fournissent les signaux d'adresses. Le bus de processeur 5 comprend en outre des signaux de commande [par exemple R/W (lecture/écriture) et Chip Select (sélection de puce)] qui indiquent si le CPU 1 est en train de lire (à partir de la mémoire) ou d'écrire (vers la mémoire) et d'autres signaux de commande associés, incluant des signaux de commande pour le
microprocesseur particulier utilisé et des signaux de synchroni-
sation (par exemple des impulsions d'adresse de colonne et des impulsions d'adresse de rangées) comme cela est bien connu dans l'art antérieur et ne sera donc pas exposé ici plus en détail. Le bus de processeur 6 comprend un bus de données à 32 bits (et ainsi 32 lignes de données qui fournissent les signaux de données) et des signaux de commande associés au microprocesseur particulier utilisé qui sont typiquement associés aux bus de données, comme cela est
bien connu dans l'art antérieur (par exemple un signal de vali-
dation d'écriture, etc). Le CPU 1 selon l'invention comprend un
moyen de génération d'adresses pour générer 22 d'adresses diffé-
rentes allant de l'emplacement $0000 0000 à l'emplacement $FFFF FFFF (le symbole $ désigne une notation hexadécimale); ce moyen
de génération d'adresses est typiquement couplé au bus de proces-
seur 5 et fait partie du CPU 1, par exemple un microprocesseur 68020 de la société Motorola ou un microprocesseur 80386 de la
société Intel.
Le système d'ordinateur comprend également des circuits d'entrée/sortie qui, comme cela est bien connu dans la technique, sont utilisés pour servir d'interface avec l'ordinateur pour recevoir des données et fournir des données aux modules périphériques. Les détails de ces circuits sont bien connus. Le circuit d'entrée/sortie (I/O) 7 est couplé au CPU 1 et à la mémoire 2 par l'intermédiaire d'un bus d'interconnexion 13 et d'un bus de processeur 6 et par un bus de processeur 3. Le circuit I/O 7
peut être utilisé pour assurer un accès aux dispositifs périphé-
riques, tels que des systèmes d'entrainement de disque, des imprimantes, des modems, des afficheurs vidéo et autres modules
périphériques destinés à être utilisés avec le système d'ordina-
teur. Comme cela est représenté en figure 1, un entrainement de disque 8 est couplé au circuit I/O par un bus d'interconnexion représenté entre le circuit I/O 7 et l'entrainement de disque 8. Le circuit I/O 7 est couplé à la mémoire 2 par le bus de processeur 6 pour fournir des données à la mémoire et recevoir des données de la mémoire et du CPU 1 i le bus 3 permet au CPU d'adresser les modules périphériques liés au circuit I/O 7 et permet au circuit I/O 7 d'adresser la mémoire 2. Le circuit I/O 7 est également couplé au CPU pour recevoir des données et des signaux de commande en provenance du CPU 1. Ainsi, les modules périphériques, tels que l'entrainement de disque 8, peuvent échanger des données (qui incluent des programmes) avec le CPU 1 et la mémoire 2; ils peuvent également échanger des données avec toute carte et connecteur de carte couplé au NuBus 10 tel que le connecteur 29 qui est associé à un numéro distinctif, $ 9, dans le système
d'ordinateur représenté en figure 1.
Lors d'une transaction typique, le CPU 1 fournit une adresse sur le bus 5. La mémoire 2, qui est couplée au bus 5, reçoit les adresses et fournit une valeur sur le bus 6 sur la base de l'emplacement adressé selon l'adresse fournie sur le bus 5. Les données en provenance de la mémoire 2 sont fournies sur le bus de processeur 6 au CPU 1. La mémoire 2 comprend typiquement une RAM et peut en outre comprendre une ROM (mémoire morte). Le bus de processeur 6 est couplé au NuBus 10 par l'intermédiaire de
l'interface 9 et relie les bus 11 et 12.
Le système d'ordinateur représenté en figure 1 comprend six connecteurs d'"extension" qui sont conçus pour recevoir des cartes de circuits imprimés et établir des connexions électriques avec des circuits sur les cartes, telles que des cartes et 50a représentées en figures 4 et 14, respectivement. Ce système comprend des connecteurs ou fentes 29, 30, 31, 32, 33 et 34 dont chacun est couplé à un autre bus de système, NuBus 10, sur la carte mètre. Ainsi, le connecteur 29 est couplé au NuBus 10 par l'intermédiaire du bus d'interconnexion 19. Chacun des connecteurs comprend des bornes associées dont chacune est électriquement couplée à une ligne de signal particulière du bus NuBus 10 par l'intermédiaire des bus d'interconnexion; ainsi, chacun des
2 612314
connecteurs 29, 30, 31, 32, 33 et 34 comprend un ensemble de bornes associées qui assure des connexions électriques avec le bus NuBus 10. Une carte selon la présente invention comprend des bornes 51 qui sont conçues pour établir des connexions électriques avec des bornes associées respectives dans le connecteur, pour permettre ainsi à des composants sur la carte de recevoir tous les signaux du
bus Nubus 10.
Une carte disposée dans l'un des connecteurs 29, 30,
31, 32, 33 ou 34 peut communiquer avec la mémoire 2 par l'inter-
médiaire de l'interface NuBus 9, et le CPU 1 peut communiquer avec toute mémoire sur la carte par l'intermédiaire de l'interface NuBus 9, qui est décrite ci-après. Par exemple, l'interface NuBus 9 reçoit des adresses pour une mémoire sur une carte dans un connecteur à partir du CPU 1 sur le bus 25 et fournit ces adresses sur le NuBus 10 par l'intermédiaire du bus d'interconnexion 11; l'interface 9 sert à allouer et à synchroniser les bus de processeur 5 (par l'intermédiaire du bus 25) et 6 entre le CPU 1 et tout CPU sur une carte (qui peut chercher à commander le bus NuBus pour lire ou écrire dans la mémoire d'une carte). De façon similaire, l'interface 9 reçoit des adresses pour la mémoire 2 à
partir d'un CPU sur une carte ("dispositif NuBus") par l'intermédi-
aire du NuBus 10 et du bus d'interconnexion 11; après synchronisa-
tion vers les bus de processeur et détermination du fait que le dispositif NuBus (qui a produit l'adresse) peut prendre la commande des bus de processeur (en plaçant des signaux d'adresse sur le bus d'adresses de processeur 5 par l'intermédiaire du bus ), l'interface 9 fournit des signaux d'adresse au bus 25 qui est connecté à la mémoire 2. La mémoire 2 répond aux données en provenance de l'emplacement adressé, données qui sont placées sur le bus 6 qui est couplé à l'interface 9 qui fournit ses données
au dispositif NuBus par l'intermédiaire du NuBus 10.
Le système d'ordinateur représenté en figure 1 utilise le bus NuBus en tant que bus d'extension pour un système d'ordinateur sur une carte de circuit principal o les bus de processeur du CPU 1 sur la carte de circuit principal ne peuvent être des bus NuBus. Ainsi, les connecteurs couplés au NuBus 10 restent des extensions du système pour inclure, par exemple, une
carte de mémoire supplémentaire ou de processeur supplémentaire.
Toutefois, il est possible d'utiliser l'invention avec une archi-
tecture NuBus o il n'y a pas de CPU sur une carte de circuit principal et pas de mémoire sur cette carte. Un tel système est
représenté en figure 13 et sera décrit ci-après.
La figure 13 représente un exemple général de la présente invention pour un système d'ordinateur utilisant un bus NuBus 120 sur une carte de circuit principal qui comprend des connecteurs ou fentes dont chacun est couplé au bus NuBus 120. La carte de circuit principal d'un tel système, tel que représenté en figure 13, peut comprendre le bus NuBus 120 et 15 connecteurs appelés connecteur 130, connecteur 131,..., connecteur 144. Chacun
des connecteurs est couplé au bus NuBus 120 par un bus d'inter-
connexion. Ainsi, le connecteur 130 est couplé bus NuBus 120 par un bus d'interconnexion 150, ce bus d'interconnexion comprenant normalement toutes les lignes du bus NuBus 120 et en outre quatre
lignes qui servent de moyens de lignes d'identification distinc-
tives. Ces quatre lignes transportent typiquement des valeurs binaires qui, prises ensemble, peuvent spécifier tout nombre compris entre 0 et 15. Chacun des connecteurs reçoit un moyen de ligne d'identification distinctive qui fournit un chiffre différent (distinctif) à chacun des connecteurs. Ainsi, un moyen de ligne
d'identification distinctive faisant partie du bus d'inter-
connexion 150 porte un signal distinctif égal à 0. Le connecteur 144 (connecteur $E) comprend un moyen de ligne d'identification distinctive faisant partie du bus d'interconnexion 164 qui fournit une valeur (un signal distinctif) égale à $E. On notera qu'il n'y a pas de 16ème connecteur puisque la norme NuBus utilise les 256 mégaoctets les plus significatifs (représentés en tant que région en figure 2) pour les petits espaces de connecteurs (16 mégaoctets chacun) alloués aux connecteurs 0 à 15. Ceci se voit mieux en figure 2 qui représente l'espace mémoire d'adresse
physique d'un système tel que celui représenté en figure 13.
Chacun des connecteurs $0 à $E est associé à un "super espace" de 256 mégaoctets. Ainsi, par exemple, le connecteur 0 a un super espace de 256 mégaoctets qui a été réservé pour lui à partir de l'emplacememnt mémoire $0000 0000 à $0FFF FFFF. Cet espace est désigné de façon générale par la référence 41 en figure 2. Ce système, représenté en figures 13 et 2, comprend un connecteur $0 avec un espace mémoire réservé à ce connecteur; par exemple, comme de nombreux microprocesseurs favorisent la mémorisation dans la région 41 (le super espace du connecteur $0), par souci de commodité, une application typique de l'invention générale (par exemple telle que représentée en figure 13) peut ne pas comprendre de connecteur $0 et aucune réservation d'espace mémoire 41 ne sera effectuée pour un connecteur particulier. Ainsi, toute carte placée dans les connecteurs restants (par exemple les connecteurs $1 à $E) peut utiliser la mémoire de la région 41. Bien sûr, tout nombre de connecteur inférieur à 15 peut être mis en oeuvre selon l'invention. Comme cela est requis par les normes NuBus, chacun des connecteurs $0 à $E se voit réserver 16 mégaoctets d'espace disposés dans la région de 256 mégaoctets désignée de façon générale par la référence 40. Cette région s'étend de l'emplacement $F000 0000 à $FFFF FFFF. Des signaux d'identification, tels que les quatre lignes d'identification distinctives sont utilisés pour allouer les "petits espaces" dans la région 40 à chacune des cartes. Chacun des petits espaces dans la région 40 est également appelé selon les normes NuBus "espace de connecteur". Les adresses ayant la forme $FSiXX XXXX font référence à l'espace d'adresse qui appartient à l'espace de connecteur de la carte dans le connecteur Si. Voir pages 30-31 de la spécification IEEE 1196,
version 2.0.
La figure 2 représente l'espace mémoire général d'adresses physiques du système représenté de façon générale en figure 13. La carte de circuit principal qui comprend le NuBus ne comprend pas de CPU ou de mémoire. Les horloges de système sur la carte de circuit principal fournissent les signaux d'horloge NuBus et sont couplées au NuBus 120 par des lignes 175, comme cela est représenté en figure 13. La figure ne représente pas les circuits d'alimentation pour les signaux NuBus. On notera également que la carte de circuit principal du système représenté
261231 4
en figure 13 doit comprendre d'autres services NuBus qui ne sont
pas placés sur les cartes mais en tant que circuit de synchroni-
sation de NuBus.
Le système d'ordinateur représenté en figure 13 comprendra typiquement deux cartes de circuit imprimé dont l'une sera insérée dans un premier connecteur et l'autre (une seconde
carte) sera insérée dans un autre connecteur. A titre d'illustra-
tion, on supposera que la première carte est enfichée dans le connecteur $0 (c'est-à-dire le connecteur 130) et la seconde carte est enfichée dans le connecteur $1 (c'est-à-dire le connecteur 131). Les cartes sont représentées de façon générale en figures 4 et 14. Elles comprennent une carte de circuit imprimé 50 ou 50a et des bornes 51 qui sont couplées à divers composants et lignes de signal sur la carte 50 ou la carte 50a. Les bornes 51 se trouvent sur une partie de la carte de circuit imprimé qui fait saillie dans un réceptacle des connecteurs qui contiennent des bornes associées pour réaliser des connexions électriques avec des bornes respectives sur la carte. Les normes physiques des interconnexions sont spécifiées par la norme NuBus. Les bornes associées dans les connecteurssont couplées aux diverses lignes et composants sur la carte de circuit principal; par exemple beaucoup des bornes associées dans les connecteurs sont électriquement couplées aux lignes de signal du bus NuBus. Ces bornes associées permettent aux composants sur la carte de recevoir les divers signaux présents sur le bus NuBus 120 et permettent à une carte dans un connecteur de communiquer avec une autre carte dans un autre connecteur par l'intermédiaire du NuBus 120 et des bus d'interconnexion, tels que
les bus d'interconnexion 150 et 151.
Dans le présent exemple associé à la figure 13, la première carte 50 (supposée être dans le connecteur $0) comprend un CPU, tel que le CPU 61 représenté en figure 4, et de la mémoire, telle que la RAM 62 et la ROM 62 qui sont couplées ensemble par un bus de carte 65 disposé sur la première carte 50. Le CPU 61 et la mémoire 62 sont couplés au bus de système, qui est le NuBus 120, par l'intermédiaire des bornes 51 de la carte 50. La seconde carte 50a (voir figure 14) dans le connecteur $1 comprend des mémoires 62 représentées en figure 14, par exemple des mémoires à accès aléatoire, mais pas de CPU. Une telle carte est appelée carte esclave et ne peut prendre la maîtrise du bus 120. La seconde carte comprend typiquement un bus de carte 65 qui comprend la plus grande partie des signaux qui se trouvent sur le NuBus 120 (sinon tous). Certaines des lignes d'adresses (et de données) du NuBus 120 (qui sont appelées AD (31...0) dans la spécification IEEE 1196, version 2.0. puisque les adresses et les données sont multiplexées
sur les mêmes lignes) sont appliquées au moyen décodeur 60.
Le bus 66 représenté en figure 4 transporte habituellement les signaux complets d'adresses et de données du NuBus ainsi que des signaux de commande et des signaux d'alimentation. Dans la présente
description, les 32 lignes d'adresse du NuBus (qui servent
également en tant que 32 lignes de données sur le NuBus) sont référencées A31 à A0 même si elles sont les signaux de NuBus AD (31....0). Fondamentalement, le moyen décodeur 60 dans la carte 50a permet à la mémoire 62 sur la seconde carte 50a d'être adressée quand les adresses sur le NuBus 120 sont dans l'espace d'adresse réservé de la seconde carte, qui dans ce cas correspondent aux
adresses de l'emplacement $1000 0000 à l'emplacement $1FFF FFFF.
Quand les adresses sont dans cet espace mémoire réservé, le moyen
décodeur 60 active les lignes de sélection de puce (Chip Select -
CS) (qui sont couplées à la ligne 64 à partir des moyens décodeurs ) des mémoires 62 sur la carte 50a, indiquant ainsi aux diverses puces de.RAM et de ROM sur cette carte qu'elles sont adressées, adressant ainsi la mémoire 62 sur la carte 50a dans le connecteur $1. Ainsi, la mémoire sur la seconde carte 50a recevra des adresses à partir du bus de système quand le moyen décodeur valide les puces
mémoire par les broches de sélection de puce CS.
Ainsi, le CPU sur la première carte 50 dans la fente $0, qui comprend un moyen de génération d'adresses pour produire 23 adresses différentes pour adresser la mémoire, fournit une autre adresse par l'intermédiaire des bornes de la carte dans le connecteur $0 sur le NuBus 120. Des parties de cette adresse
apparaissent dans le moyen décodeur 60 sur la seconde carte 50a.
Si cette adresse est dans la gamme $1000 0000 à $1FFF FFFF la mémoire sur la seconde carte répond en fournissant des données sur
le NuBus 120 pendant le cycle de synchronisation approprié.
Le moyen décodeur 60 sur la seconde carte dans le connecteur $1 de la figure 13 compare le numéro distinctif du connecteur $1, qui est $1, au chiffre hexadécimal le plus significatif de l'adresse apparaissant sur le bus de système (bus
NuBus 120) pour déterminer quand le numéro distinctif, en hexadéci-
mal, est égal au chiffre hexadécimal le plus significatif de l'adresse. Quand cela survient, le moyen décodeur valide la seconde mémoire pour qu'elle soit adressée pour fournir des données sur le bus du système. Ainsi, le "super espace" de 256
mégaoctets est inversé pour la seconde carte dans le connecteur $1.
Comme cela est exposé ci-dessous, le moyen décodeur réalise également la fonction consistant à réserver les 16 mégaoctets d'espace mémoire désignés dans les spécifications des systèmes NuBus. On notera que le connecteur $1 de la figure 13 est couplé à un moyen de ligne d'identification distinctive qui fournit un signal distinctif à ce connecteur, lequel signal identifie un numéro distinctif propre à ce connecteur. Ceci est vrai pour chacun des autres connecteurs de la figure 13 (par exemple le connecteur 144 comprend un signal distinctif de $E qui est le numéro distinctif de ce connecteur). Typiquement, un moyen de ligne d'identification distinctive comprend quatre conducteurs portant des valeurs binaires. Pour le connecteur $1, une seule des quatre lignes portera la valeur binaire 1 alors que les autres porteront la valeur binaire 0, le 1 étant dans le chiffre binaire le moins significatif. Ainsi, le moyen de ligne d'identification distinctive fournira le signal distinctif 1 au connecteur $1 qui identifiera ce connecteur comme ayant un numéro distinctif $1. On notera que d'autres façons d'identifier un numéro distinctif peuvent être mises en oeuvre, par exemple fournir un numéro distinctif qui, par des conversions arithmétiques, produit le numéro distinctif du connecteur. A titre de variante, un seul conducteur ayant une logique à plusieurs niveaux peut être prévu comme moyen de ligne
d'identification distinctive.
Un mode de réalisation particulier de l'invention utilisant six (6) connecteurs va maintenant être décrit en se référant de façon générale aux figures 1, 3, 11 et 12. La figure 11 représente une vue en perspective d'une carte de circuit principal 14, également appelée carte mère) qui comprend un CPU 1, une mémoire 2 qui comprend une mémoire ROM, un circuit I/O 36, et six connecteurs numérotés 29 à 34. La carte mère 14 comprend également un moyen de connecteur pour fournir une connexion à un clavier, comme cela est indiqué en figure 11. Comme avec tout autre système d'ordinateur personnel, la carte mère 14 comprend également divers autres circuits, tels que des alimentations, des bascules et des tampons, des excitateurs, et peut comprendre des circuits vidéo, des circuits d'horloge, et autres composants typiquement associés à des systèmes d'ordinateur personnel comme cela est bien connu dans l'art antérieur. Chacun des connecteurs 29, 30, 31, 32, 33 et 34 comprend des bornes agissant en coopération qui établissent des connexions électriques avec des bornes 51 sur une carte qui est insérée dans le connecteur. Chacun des connecteurs 29 à 34 reçoit, selon les normes NuBus, sensiblement tous les signaux Nubs dans le bus NuBus 10, comme cela est indiqué en figure 1. Les connecteurs reçoivent les signaux NuBus par l'intermédiaire de bus d'interconnexion 19, 20, 21, 22, 23 et 24, comme cela est représenté en figure 1. Ces connexions sont communes (identiques) à chacun des connecteurs sauf en ce qui concerne les moyens de lignes d'identification distinctives qui identifient pour chacun
des connecteurs un numéro distinctif associé à chaque connecteur.
Dans ce mode de réalisation particulier, le connec-
teur 29 est affecté d'un numéro distinctif $9 par quatre conduc-
teurs (lignes) portant des valeurs binaires telles que représen-
tées dans le tableau ci-dessous. Ces quatre conducteurs font partie du bus d'interconnexion 19 bien qu'ils n'aient pas besoin d'être physiquement présents sur toute la longueur des lignes dans le NuBus 10 car ils peuvent être prévus localement à proximité immédiate du connecteur $9. Ceci est vrai mutatis mutandis pour les connecteurs 30, 31, 32, 33 et 34. L'adresse géographique indiquée dans le tableau 1 est, bien sûr, le numéro distinctif de
2 6 1 2 3 1 4
chacun des connecteurs.
Tableau 1
Numéro de connecteur NuBus pour le système de la figure 1 Numéro de Connecteur Adresse Valeur en figure 1 géographique GA3 GA2 GA1 GA0 binaire 29 $9 M Ouv. Ouv. M 1001 $A M Ouv. M Ouv. 1010 31 $B M Ouv. M M 1011 32 $C M M Ouv. Ouv 1100 33 $D M M Ouv. M 1101 34 $E M M M Ouv. 1110 (Dans le tableau ci-dessus, M désigne la masse et Ouv. veut dire
ouvert).
(Les valeurs binaires sont représentées après inversion logique par
un inverseur des signaux NuBus).
Chacune des lignes dans le moyen de ligne d'identifi-
cation distinctive pour chacun des connecteurs est couplée à des
circuits qui tentent de mettre les lignes à la tension d'alimenta-
tion +5V. Ces circuits comprennent habituellement une résistance élévatrice, selon les normes du bus, sur chacune des lignes d'identification distinctive, laquelle résistance amènera les signaux ouverts à sensiblement +5V, et les signaux de masse resteront sensiblement à la masse. Le circuit représenté en figure 12 qui sera exposé ci-dessous, suppose que les signaux ouverts ont déjà été mis à haut niveau (avant de les appliquer au
moyen décodeur 60) sensiblement au niveau de la tension d'alimen-
tation de +5V et que les signaux NuBus [incluant les signaux GA3...GA0 et les signaux d'adresse (A31...A0)] ont été inversés logiquement par un inverseur. En outre, chacun des signaux NuBus sur le bus NuBus 10 doit être inversé logiquement, (par un inverseur sur les cartes) avant application aux circuits sur les cartes NuBus (par exemple la carte 50 et la carte 50a); de même, des signaux en provenance des cartes sur le bus NuBus 10 doivent
2 6 1 2 3 1 4
être inversés logiquement (par un inverseur). Typiquement, ces inverseurs seront compris dans les amplificateurs d'entrée et de sortie utilisés sur les cartes. Au niveau de l'interface 9, qui sert d'interface entre le bus NuBus 10 et les circuits de la carte mère (c'est-à-dire le CPU 1, la mémoire 2, le circuit I/O 7, les divers bus 5, 6, 25, etc), des signaux allant vers le bus NuBus 10 sont inversés et les signaux provenant du bus NuBus 10 sont inversés. Ainsi, par exemple, le signal GA3 du NuBus (M) qui est appliqué aux connecteurs est inversé en un un logique ("1") sur la carte et est alors appliqué au circuit dans le moyen décodeur représenté en figure 12. Ces inversions sont bien connues dans la technique. Bien sûr, si le CPU 1 et ses circuits des bus associés (par exemple les bus 5, 6, 25) utilisent le système, les normes et les signaux NuBus, alors aucune inversion à l'interface
9 n'est nécessaire.
On peut voir que, dans ce mode de réalisation (représenté en figurés 1, 11 et 3), le connecteur 30 aura le numéro distinctif $A; le connecteur 31 aura le numéro distinctif $B; le connecteur 32 aura le numéro distinctif $C dans le système d'ordinateur; le numéro distinctif du connecteur 33 sera $D et
le connecteur 34 aura le numéro distinctif $E. Dans la spécifica-
tion proposée par IEEE pour le NuBus, appelée spécification de bus IEEE 1196, le moyen de ligne d'identification distinctive est appelé identification de connecteur de carte et est représenté par le symbole ID "(3...0)" qui représente les adresses géographiques
GA3, GA2, GA1 et GA0. Comme cela a été noté dans cette spécifi-
cation de l'IEEE en page 6, ces quatre lignes ne sont pas trans-
mises par bus mais sont codées en binaire pour chaque position pour
spécifier la position de carte dans l'ordinateur.
Selon la présente invention, un système d'ordinateur tel que représenté généralement en figure 1 présente un espace mémoire d'adresse physique tel que représenté en figure 3 o chacun des six connecteurs comprend un "super espace" contenant 256 mégaoctets d'espace mémoire réservé. Ainsi, par exemple, le connecteur $9 présente un super espace réservé commençant à l'emplacement $9000 0000 et se terminant à l'emplacement $9FFF FFFF. En outre, le connecteur $9 peut également présenter un petit espace ("espace de connecteur") réservé selon la spécification NuBus. En outre, avec ces spécifications, le connecteur $9 présentera un petit espace qui lui est réservé commençant à l'emplacement $F900 0000 jusqu'à l'emplacement $F9FF FFFF. Comme cela est représenté en figure 3, la région à 256 mégaoctets 42 contient les petits espaces pour les divers connecteurs. Il existe un espace d'adresse mémoire NuBus non réservé 43 qui peut être utilisé par des connecteurs d'extension supplémentaires qui
peuvent être ajoutés à un système conçu selon la présente inven-
tion. L'espace mémoire inférieur de 256 nmégaoctets, désigné par la référence 45 est un espace d'adresse local pour le CPU 1 qui est assigné au numéro distinctif $0 comme-s'il était sur une carte dans le connecteur $0. Le CPU 1 peut être conçu pour "occuper" des connecteurs supplémentaires - c'est-à-dire qu'il peut être assigné à des numéros distinctifs $1, 2 et 3 et en conséquence se réserver la région complète 44 comme dans le mode de réalisation particulier représenté en figure 3; en effet, la carte mère devient une carte dans quatre connecteurs ($0, 1, 2 et 3). Si le concepteur cherche
à isoler complètement le connecteur de super espace $0 de l'uti-
lisation du CPU 1 (c'est-à-dire empêcher un accès du NuBus à ce super espace $0), l'interface de NuBus 9 sera conçue pour empêcher cet accès mais permettre un accès aux données dans le super espace $0 par des éléments reproduits dans le super espace $1 ou $2 ou $3. Ainsi, les adresses de NuBus sur le NuBus 10 dans le super espace $0 peuvent être décodées au même emplacement respectif
(c'est-à-dire $0XXX XXXX à $1XXX XXXX) dans le super espace $1.
Dans un tel cas, les cartes NuBus (dans les connecteurs physiques réels $9 à $E) peuvent accéder au super espace du connecteur $0 en adressant les super espaces $1, 2 ou 3 qui peuvent être conçus pour inclure des éléments de données mémorisés dans le super espace $0. L'espace d'adresse ($0000 0000 à $1000 0000) est également l'espace mémoire d'adresses locales pour des cartes fonctionnant complètement sur la carte sans transaction du NuBus; ainsi, une carte, telle que celle représentée en figure 4 comprenant un CPU peut adresser localement sa RAM locale sur la carte dans le
2 6 1 2 3 1 4
même espace d'adresse 45 pourvu que le CPU n'initialise pas une transaction du NuBus. Un tel agencement pour des transactions
purement locales sur la carte est mis en oeuvre par des déco-
deurs d'adresse sur la carte comme cela est bien connu dans la technique. Ce mode de réalisation particulier représenté de façon générale en figure 1 réserve également un espace mémoire supplémentaire pour le circuit I/O et la mémoire morte (ROM) qui fait partie de la mémoire 2, comme cela est représenté en figure 3. En particulier, l'espace mémoire d'adressage est réservé de l'emplacement $4000 0000 à l'emplacement $4FFF FFFF. En outre, l'espace d'adresse mémoire pour les opérations et les circuits I/O
est réservé de l'emplacement $5000 0000 à l'emplacement $5FFF FFFF.
La figure 3 représente un mode de réalisation de la présente
invention o l'espace mémoire I/O et ROM est localisé aux empla-
cements $4000 0000 à $5FFF FFFF. Ainsi, un accès aux informations de la ROM ou d'I/O peut être obtenu par le CPU 1 et par un second CPU 61 en adressant ces emplacements de $4000 0000 à $5FFF FFFF. Un autre mode de réalisation de la présente invention est représenté en figure 10 o l'espace mémoire I/O et ROM de la carte mère par rapport aux cartes NuBus est localisé aux emplacements $F000 0000 à $FOFF FFFF. Dans ce mode de réalisation, l'espace mémoire des informations I/O de la carte mère et de la ROM du système (sur la carte mère) qui est accessible par les cartes NuBus (dans les connecteurs NuBus) est limité à 16 MB (mégaoctets) alors que le CPU 1 peut encore accéder aux régions $4000 0000 à $5FFF FFFF; toutefois, de nombreux systèmes possibles peuvent être constitués dans lesquels cet espace limité de 16 MB est suffisant pour l'utilisation de ROM et d'I/O. Ainsi, pour une carte NuBus, celle-ci peut accéder à la ROM qui fait partie de la mémoire 2 sur la carte mère en présentant des adresses dans la gamme de $F000 0000 à $FOFF FFFF sur le bus NuBus qui provoque un accès à cette ROM. Ceci est mis en oeuvre de façon bien connue par l'interface 9 qui décode des adresses en provenance du bus NuBus dans la région $F000 0000 à $FOFF FFFF dans la région de ROM et d'I/O de la carte mère ($4000 0000 à $5FFF FFFF). Le CPU 1 ne doit pas être limité de façon similaire et, en conséquence, il peut rechercher la ROM ou la mémoire I/O de la carte mère en adressant la région définie par $4000 0000 à $5FFF FFFF; ainsi, le CPU la peut avoir une mémoire supplémentaire ROM ou I/O (en tant que partie de la mémoire 2) qui n'est pas disponible pour les cartes NuBus (qui sont limitées en accès à la ROM et aux I/O du système fondamental de la carte mère). Ce mode de réalisation de la présente invention, tel qu'il est représenté en figure 10, est
cohérent avec les normes NuBus qui exigent qu'une ROM de confi-
guration soit disposée en haut du petit espace (connecteur) de 16 MB; ainsi, l'espace ROM du connecteur $0 est localisé en haut de
l'espace $F000 0000 à $FOFF FFFF.
La carte selon la présente invention va être décrite en se référant de façon générale aux figures 4, 12 et 14. La figure 4 représente une carte selon la présente invention qui peut être incorporée dans le système d'ordinateur de la présente invention en l'enfichant dans l'un des connecteurs du système, tel que le connecteur 29. La carte comprend une carte de circuit imprimé 50 sur laquelle est disposé un moyen conducteur formant
diverses lignes tel que le bus de carte 65 et les bus d'inter-
connexion 67, 68 et 69. De façon similaire, la figure 14 représente une carte 50a selon la présente invention qui est sensiblement identique à la carte représentée en figure 4 sauf qu'elle ne contient pas de CPU 61 qui permet en général à la carte 50 d'agir comme pilote par rapport au bus NuBus 10 tandis que la carte 50a représentée en figure 14 peut normalement être seulement un esclave et ne peut prendre la commande du bus NuBus 10 et ne peut initialiser une transaction NuBus. Les cartes 50 et 50a comprennent des bornes 51 qui réalisent des connexions électriques avec des bornes correspondantes dans les connecteurs pour coupler ainsi les divers composants sur la carte aux divers signaux apparaissant sur la carte de circuit principal 14. Tous les signaux NuBus (allant vers et venant du NuBus) sont adaptés et inversés par des
tampons 59 sur les cartes. Ainsi, par exemple, le bus d'inter-
connexion 63 relie les lignes d'adresse A31 à A24 du NuBus 10 au
moyen décodeur 60. Le bus 63 comprend également des moyens d'ali-
mentation et de lignes d'identification distinctives, qui, dans ce mode de réalisation comprend quatre lignes de signal GA3, GA2, GA1
et GA0, qui sont couplées aux bornes 52, 53, 54 et 55, respective-
ment. Ainsi, le signal GA3 est appliqué à la borne 52 par l'inter-
médiaire d'une borne correspondante disposée dans le connecteur qui reçoit la carte 50. De même, le signal GA2 est appliqué à la borne 53; le signal GA1 est appliqué à la borne 54; et GA0 est appliqué à la borne 55. Ces bornes 52, 53i 54 et 55 sont couplées à
des moyens conducteurs qui présentent ces quatre signaux (inver-
sés) au moyen décodeur 60, à l'entrée 82 du moyen décodeur 60
comme cela est représenté en figure 12.
Les signaux présents dans les connecteurs de ce mode de réalisation particulier sont indiqués dans le tableau 2 et sont les signaux NuBus. Bien sûr, NuBus 10 comprend un bus d'adresse à 32 bits qui, pendant un premier cycle de lecture présente l'adresse de l'emplacement mémoire auquel on cherche à accéder et, pendant un second cycle, agit en tant que bus de données et reçoit des données mémorisées à cet emplacement mémoire. Pendant une écriture dans la mémoire, le NuBus 10 porte, sur son bus d'adresse à 32 bits, pendant un premier cycle, l'adresse de l'emplacement à écrire et, pendant un second cycle, le NuBus 10 fournit des
données à écrire aux emplacements adressés lors du premier cycle.
Le NuBus 10 est sensiblement un bus IEEE 1196. Les cartes acceptent et utilisent généralement la plupart de ces signaux bien que leur utilisation dépendent des besoins particuliers de la carte et des
objectifs des concepteurs.
Tableau 2
Description des signaux
du connecteur NuBus
Signal Description
+5V Alimentation vers connecteur. 5 volts.
+12V Alimentation vers connecteur. 12 volts
-12V Alimentation vers connecteur. -12 volts.
-5,2V Non utilisé dans ce mode de réalisation. Tous les signaux de -5,2V sont connectés ensemble sur les connecteurs.
GND Retour d'alimentation pour +5V, +12V, et -12V.
RESET Signal à collecteur ouvert. Fourni à alimentation haute par le CPU 1, ou par un commutateur de remise à zéro à bouton poussoir qui peut être prévu. Placé à +5V par une résistance de 1 Kohm. Une carte de connecteur utilisera ce signal pour remettre à zéro
les circuits sur la carte.
SPV Parité de connecteur valide. Si une carte fournit une partité à /SP, ce signal est établi. La barre oblique ("/") indique que le signal est actif à bas niveau, c'est-à-dire qu'il actionne sa cible quand il passe
à bas niveau.
SP Parité de connecteur. Parité interne /AD0-/AD31 si
/SPV est établi.
TM0-TM1 Modificateurs de transaction. Utilisés pendant un
cycle START pour indiquer la dimension de la trans-
action. Utilisés pendant un cycle ACK pour indiquer
l'état d'achèvement.
A0-A31 Bits 0 à 31 d'adresse/données du NuBus. Utilisés
pendant le cycle START pour indiquer une adresse.
Utilisés pendant un cycle ACK pour indiquer des données. Les spécifications du NuBus se réfèrent à ces signaux en tant que AD0-AD31 ou AD (31...0) parce que les mêmes 32 lignes transportent une adresse pendant un premier cycle puis transportent
des données pendant un second cycle.
PFW Alarme de chute d'alimentation. Un signal en collec-
teur ouvert est mis à haut niveau par une résistance de 220 W à +5V. Quand ce signal est mis à haut niveau, l'alimentation est actionnée. Quand ce signal est mis à bas niveau, l'alimentation est invalidée. L'alimentation elle-même mettra ce signal
à bas niveau en tant qu'alarme de chute d'alimenta-
tion pendant 2 ms avant que l'alimentation alterna-
tive ne disparaisse. Ceci est une option selon les
normes IEEE 1196.
ARB0-ARB3 Bits 0 à 3 d'arbitrage. Des signaux en collecteur ouvert qui s'achèvent dans les connecteurs selon les spécifications IEEE 1196 (voir par exemple tableau 6 des spécifications). Utilisés pour arbitrer la maîtrise du bus entre les connecteurs selon les
*spécifications NuBus.
GA0-GA3 Bits 0 à 3 d'adresse géographique. Adresse binaire codée de façon matérielle des connecteurs. Broches liées à la masse (GND) ou ouverte (ou +5V au lieu de
ouverte.
START Etabli pour indiquer la présentation d'une adresse sur A0-A31. Egalement utilisé pour initialiser
l'arbitrage pour la maîtrise du bus.
ACK Accusé de réception. Utilisé pour indiquer un accusé
de réception d'un cycle START.
RQST Requête. Etabli pour requérir la maîtrise du bus.
NMRQ Requête de non-maîtrise. Un signal en collecteur ouvert qui se termine dans les connecteurs selon les spécifications IEEE 1196 (voir par exemple tableau 6 des spécifications). Utilisé par la carte pour
signaler une interruption au récepteur d'interrup-
tion. CLK Horloge du NuBus. Horloge asymétrique à 10 MHz qui
synchronise les transactions sur le NuBus.
La constitution et l'utilisation du moyen décodeur
est connue de l'homme de l'art. Ce décodeur implique essentielle-
ment l'utilisation d'un moyen comparateur muni d'un moyen de validation dans lequel le comparateur compare l'adresse NuBus au signal apparaissant sur le moyen d'identification de ligne distinctive et détermine si l'adresse se trouve dans l'espace mémoire réservé pour la mémoire 62 de la carte. Toutefois, l'utilisation du moyen décodeur dans ce contexte pour réserver 256 mégaoctets d'espace
mémoire est nouvelle et en conséquence une description d'un moyen
décodeur simple incluant un moyen comparateur et un moyen de validation va être donnée. Il est dans le domaine de l'homme de l'art de prévoir d'autres moyens décodeurs qui réalisent les
261'2314
fonctions de la présente invention.
Dans une transaction typique entre la carte 50a et le CPU 1, la mémoire 62 est couplée sélectivement au CPU 1 par l'intermédiaire du NuBus 10 et de son interface associée 9, décrite ci-dessous, pour recevoir des adresses et pour fournir des données (ou recevoir des données quand elles sont écrites) sur le NuBus 10. Le CPU 1 comprend un moyen de génération d'adresses pour produire 232 adresses différentes à partir de l'emplacement $0000 0000 jusqu'à l'emplacement $FFFF FFFF. Des adresses en provenance du CPU 1, qui sont larges de 32 bits sortent du CPU 1 par l'intermédiaire du bus de processeur 5. L'adresse à 32 bits entre alors dans le bus d'interconnexion 25 et apparaît à l'interface 9 qui détermine que cette adresse se trouve dans l'espace d'adresse du NuBus, qui commence à $6000 0000. En dessous de cette adresse, la mémoire 2 et le circuit I/O 7 seront adressés par le CPU 1. A et au-dessus de cette adresse, la mémoire dans les
super espaces de connecteurs ou les petits espaces sera adressée.
L'interface 9 détermine qu'une adresse de NuBus est sélectionnée et permet, après synchronisation des signaux d'adresse du CPU 1 sur le NuBus et détermination de la propriété du NuBus 10 par le CPU 1, à l'adresse d'apparaître sur le NuBus 10 par l'intermédiaire du bus d'interconnexion 11. A titre illustratif, on supposera qu'une carte 50a, représentée en figure 14 se trouve dans le connecteur $9 qui présente un numéro distinctif dans le système égal à $9. Le moyen décodeur 60 reçoit les signaux d'adresse par l'intermédiaire du NuBus 10 et détermine si les adresses sont
destinées à l'espace mémoire de la carte.
Le moyen décodeur 60 comprend un moyen comparateur qui compare le chiffre hexadécimal le plus significatif de l'adresse (pour une lecture ou une écriture) au numéro distinctif, en hexadécimal, du connecteur dans lequel la carte comprenant le moyen décodeur 60 est enfichée. Le moyen décodeur comprend également un moyen de signal de commande et d'horloge 71 qui comprend les signaux d'horloge du NuBus, START et ACK. Le moyen décodeur peut en outre comprendre un adaptateur, un composant bien connu dans l'art antérieur et donc non représenté, qui fournit suffisamment de courant pour amener la sortie du moyen décodeur 60 à des niveaux suffisants pour affecter la cible de ces sorties, c'est-à-dire les lignes de sélection de puces (CS) et les broches de la mémoire 62. Le moyen comparateur 73, qui fait également partie du moyen décodeur 60, compare les adresses pour
déterminer si le petit espace de connecteur est en cours d'adressa-
ge. Quand l'un des moyens comparateurs (70 ou 73) détermine que l'adresse apparaissant sur le NuBus 10 se trouve dans le super espace ou le petit espace de la carte, ce moyen comparateur particulier ainsi que le moyen de commande 71 active les lignes de sélection de puce (CS) connectées à lamémoire 62. La ligne de sélection de puce (quelquefois appelée signal de validation de puce) est utilisée, comme cela est bien connu, pour indiquer à une mémoire, telle que la mémoire 62, qu'elle est adressée (en lecture ou en écriture). Les lignes de sélection de puce sont couplées à
la ligne 64 comme cela est représentées aux figures 4 et 14.
Le moyen comparateur 70 du moyen décodeur 60 comprend quatre portes OU Exclusif ("XOR"), telles que la porte OU Exclusif 76 qui compare le signal GA3 (apparaissant sur l'entrée 92) au bit binaire le plus significatif de la ligne d'adresse à 32 bits,
A31, qui est introduite à l'entrée 91 de la porte OU Exclusif 76.
On notera, comme cela a été indiqué précédemment, que les signaux du NuBus dans le moyen décodeur 60 sont inversés (sur la carte dans des tampons 59) g ainsi, GA3...GA0, les signaux A31...A24 et START, ACK et CLK, tels qu'ils sont utilisés dans le moyen décodeur 60, sont inversés. Par exemple, le signal START représenté en figure 12 est le signal START du NuBus inversé. Si le bit binaire le plus significatif de l'adresse est égal au signal GA3, alors un 0 logique apparaîtra à la sortie de la porte OU Exclusif 76, sortie qui est transmise par l'intermédiaire de la ligne 93 à une porte OU (OR) à quatre entrées 77. Les signaux d'adresse A31 à A28 et certains signaux tels que alimentation et masse sont appliqués au moyen comparateur 70 à l'entrée 83. Ces signaux sont alors fournis aux diverses portes OU Exclusif du moyen comparateur 70 de la façon représentée à la figure 12. La sortie de chacune des portes OU Exclusif du moyen comparateur 70 sera au niveau logique 0 seulement si les deux entrées vers une porte XOR particulière sont identiques. Ainsi, chaque porte OU Exclusif effectue une comparaison bit par bit entre l'une des lignes transportant des bits qui agit en tant que partie du moyen de ligne d'identification distinctive et l'une des quatre lignes d'adresse les plus significatives. On peut voir que, quand un numéro distinctif (en hexadécimal) est égal au chiffre hexadécimal le plus significatif de l'adresse, chacune des portes OU Exclusif produira un 0 logique à sa sortie, amenant la sortie de la porte OU 77 à être aussi un 0 logique, amenant le noeud 70a à être à un 0 logique. Le noeud 70a est couplé à la sortie de la porte OU 77 et est également couplé à l'une des entrées d'une porte NON ET (NAND) 90 qui fait partie du moyen de commande 71. La sortie du moyen comparateur 73 est couplée à un noeud 73a dans le moyen de commande 71 et est également couplée à l'autre entrée de la porte NON ET 90. Quand une adresse se trouve dans l'espace de connecteur de carte, la sortie du moyen comparateur 73 sera un 0 logique et le noeud 78 (la sortie de la porte NON ET 90) sera un 1 logique. Quand une adresse se trouve dans le super espace du connecteur, la sortie du moyen comparateur 70 sera un 0 logique et le noeud 78 (la sortie de la porte NON ET 90) sera un 1 logique. Quand l'adresse n'est pas dans le petit espace de connecteur, ni dans le super espace de carte, le noeud 78 sera un 0 logique (puisque le noeud 70a et le noeud 73a seront tous deux des 1 logiques). Quand l'adresse est valide (pendant un START) le signal à la sortie d'une porte ET (AND) 87 sera à 1 logique et sera actionné par l'horloge (à l'impulsion d'horloge suivante du NuBus) jusqu'à la sortie Q d'une bascule 80 de sorte qu'un 1 logique apparait sur un noeud 79. Ainsi, quand une adresse est valide et est dans l'espace réservé de la carte (petit ou super) les noeuds 78 et 79 seront à 1 logique amenant la ligne 64 à être 0 logique, activant ainsi la mémoire 62 pour un adressage. A la fin de la durée pendant laquelle l'adresse est valide, la sortie de la porte ET 87 sera à 0 logique
et sera déclenchée par l'horloge vers le noeud 79 (par l'inter-
médiaire de la bascule JK 80) et la mémoire 62 sera désactivée.
Quand une adresse est valide, START (tel qu'indiqué en figure 12) est à 1 logique et ACK est à 0 logique (voir l'insert de la figure 12 indiquant un diagramme de synchronisation des signaux START, ACK et CLK qui sont introduits vers les moyens 71). Le signal ACK est inversé à l'entrée de la porte ET 87. Ainsi, quand une adresse est valide, la sortie de la porte ET 87 est à 1 logique; quand une adresse est invalide, START est au niveau logique 0, amenant la sortie de la porte ET 87 à être un 0 logique, valeur qui commande la sortie Q de la bascule 80 à l'impulsion d'horloge suivant du NuBus comme cela est représenté en figure 12. Un 0 logique à la sortie Q désactivera les lignes CS de la mémoire 62. La bascule est une bascule JK commandée par horloge, l'entrée K étant liée à l'entrée J ("D") par l'intermédiaire d'un inverseur; une telle bascule est quelquefois appelée bascule de type D o K est le complément de J. Un signal de Fin de Cycle peut optionnellement être appliqué à l'entrée de remise à zéro (RESET) de la bascule 80. Le signal est obtenu à partir des circuits de commande sur la carte (par exemple le CPU 61) et il indique la fin d'une transaction. Le signal de Fin de Cycle est actif à bas niveau et,
en conséquence, il est inversé à l'entrée de remise à zéro.
La sortie particulière sur la ligne 64 en provenance du moyen de commande 71 dépendra du fait que la mémoire 62 spécifie (selon le fabriquant) que CS est actif à bas niveau (c'est-à-dire à tension faible telle que la masse) ou à haut niveau (+5V). Dans cet exemple, la mémoire 62 est supposée présenter un CS actif à bas niveau ("/CS") et en conséquence la mémoire 62 est choisie pour un adressage quand la sortie du moyen 71 est à 0 logique. Ainsi, l'activation de la ligne 64 prend place quand la sortie de la porte NON ET 72 est à 0 logique (bas), amenant CS à être mis sensiblement à la masse et indiquant ainsi aux puces de mémoire (mémoire 62)
qu'elles sont adressées.
S'il n'y a pas d'accord entre le numéro distinctif et le chiffre hexadécimal le plus significatif de l'adresse, au moins un 1 logique apparaitra sur l'une des quatre entrées des portes OU
Exclusif dans le moyen comparateur 70 ce qui amène un 1 à appa-
raitre à la sortie de la porte OU 77, cette valeur 1 logique apparaissant au niveau du noeud 70a. Ceci signifie que l'adresse ne se trouve pas dans la super adresse de la carte. Dans ce cas, la mémoire 62 peut seulement être adressée à partir du NuBus 10, seulement si l'adresse se trouve dans la région 42 (petits espaces). Le moyen décodeur 60 comprend également un moyen comparateur 73 qui agit pour réserver pour la carte particulière un "espace de connecteur" qui se trouve dans le 16ème supérieur de l'espace d'adresses physiques du système (c'est-à-dire la région 42
représentée en figure 3. Plus particulièrement, un moyen compa-
rateur 73 alloue 16 mégaoctets de mémoire à la carte sur la base du numéro distinctif du connecteur dans lequel la carte est enfichée. Le moyen comparateur 73 comprend une porte NON ET 85 qui détermine quand des adresses présentées à la carte sont dans la région 42. Les portes OU Exclusif ("XOR") du moyen comparateur
73, telles qu'une porte OU Exclusif 88 et une porte OU 89 compa-
rent le second chiffre hexadécimal le plus significatif au numéro distinctif du connecteur dans lequel la carte est enfichée pour déterminer si le numéro distinctif est égal au second chiffre hexadécimal le plus significatif de l'adresse apparaissant sur le bus d'adresse à 32 bits du NuBus 10. Quand cette condition d'égalité prend place, chacune des portes XOR du moyen 73, par exemple la porte 88, produira un 0 logique à sa sortie amenant la sortie de la porte OU 89 à fournir un 0 logique. La sortie de la porte OU 89 est l'une des entrées de la porte OU 75. Les quatres bits binaires les plus significatifs de l'adresse (A31... A28) sont appliqués aux entrées d'une porte NON ET 85 dont la sortie est un 0 logique seulement quand l'adresse est dans la région de petits espaces 42. La sortie de la porte NON ET 85 est l'une des entrées de la porte OU 75. Les entrées vers la porte OU 75 sont toutes deux des 0 logiques seulement quand l'adresse est dans le petit espace de carte dans la région 42. Ainsi, la sortie de la porte OU est un 0 logique seulement quand l'adresse est dans le petit espace de carte. Les lignes d'adresse (A27, A26, A25, et A24) constituent le second chiffre hexadécimal le plus significatif de l'adresse apparaissant sur le bus d'adresse à 32 bits du
NuBus 10.
On peut voir que quand une carte, par exemple la carte 50a, est enfichée dans un connecteur ayant un numéro distinctif $X, un moyen décodeur 60 amènera cette carte à avoir un espace mémoire qui lui est réservé à partir des emplacements $X000 0000 à $XFFF FFFF et additionnellement un espace mémoire allant de l'emplacement $FX00 0000 jusqu'à l'emplacement $FXFF FFFF. Des transactions entre le CPU 1 et le NuBus 10 requièrent typiquement certaines actions de l'interface 9 qui est appelée l'interface de NuBus 9. La mise en oeuvre exacte de l'interface dépendra du microprocesseur choisi pour le CPU 1 et de ses bus associés. Sous sa forme la plus simple, l'interface pourrait être un moyen décodeur, comprenant six décodeurs, dont chacun est analogue au moyen décodeur 60. Ce moyen décodeur reçoit six signaux distinctifs différents présentant les numéros distinctifs $0, $1, $2, $3, $4 -et $5, chacun de ces signaux pour l'un des six décodeurs. Cet agencement produirait la division résultante de l'espace mémoire d'adresses physiques telle que représentée en figure 3 pour le système d'ordinateur représenté en figure 1. L'interface 9 devrait également synchroniser toutes différences de synchronisation entre le CPU 1 et les horloges du NuBus et déterminerait la propriété des bus requis (que ce soit le NuBus 10 ou les bus de processeur 5, 25 et 6) par le dispositif maître, de sorte qu'une seule adresse apparait sur tous les bus 10, 5 et 25 à un instant donné. Ainsi, il y aurait plusieurs moyens décodeurs, de la façon représentée en figure 12, dont chacun reçoit un signal distinctif différent. La sortie de ces moyens décodeurs serait couplée aux broches CS de la mémoire 2. En même temps, le CPU 1 accéderait aux connecteurs fixés au NuBus 10 en plaçant simplement des signaux sur le bus d'adresse 5 qui est couplé à l'interface 9 qui permet au signal d'adresse en provenance du CPU 1 d'apparaître sur le NuBus 10. De façon similaire, le CPU 1 fournirait des données à des connecteurs de NuBus en plaçant les données sur le bus de données 6 qui amène les signaux de données à apparaître à l'interface 9 du NuBus par le bus d'interconnexion 12 et ces signaux de données seraient alors transportés vers le NuBus 10 puis reçus par le connecteur approprié selon le signal
d'adresse immédiatement précédent qui est apparu sur le NuBus 10.
En effet, le CPU 1 et ses circuits associés comprenant la mémoire 2 apparaîtraient au NuBus 10 comme s'ils étaient sur une carte dans le connecteur O ou les connecteurs 1, 2 et 3. Dans l'exposé ci-après, le terme bus de processeur est utilisé de façon générale pour se référer au bus de données 6 qui est couplé au CPU 1 et à la mémoire 2 et aux bus d'adresse 5 et 25, de la façon représentée en
figure 1.
L'interface de NuBus 9, telle que représentée en figure 5, comprend trois machines d'état et les horloges de NuBus qui servent d'interface entre les six connecteurs (29, 30, 31, 32, 33 et 34) et le NuBus 10 et le CPU 1 et la mémoire 2 et leurs circuits associés sur la carte mère 14. En général, l'interface 9 doit déterminer la propriété du ou des bus requis entre maîtres, tels que le CPU 1 et un CPU sur une carte (par exemple le CPU 61), pour empêcher deux adresses différentes de deux maîtres différents d'apparaître sur un bus, tel que le bus 5 ou le NuBus 10, de façon simultanée; ainsi l'interface 9 doit déterminer la propriété du bus par un arbitrage entre des maîtres possibles requérant le même bus, pour empêcher des collisions d'adresses sur un bus. De façon similaire, pendant des cycles de données, l'interface 9 doit déterminer la propriété du bus, par arbitrage entre des maîtres possibles requérant le même bus, pour empêcher des collisions de données sur un bus (tel que le bus 6 ou le NuBus 10). En outre, l'interface 9 doit synchroniser les signaux du maître requérant à la synchronisation du bus requis qui sera commandée (pour des adresses ou des données d'écriture) ou écoutée (pour des données de lecture) par le maître. L'interface doit être mise en oeuvre par des techniques bien connues sous forme d'un réseau logique programmable. Les signaux présents sur le NuBus sont décrits dans la spécification 1196 de IEEE et dans les publications de Texas Instruments susmentionnées. De façon générale, les normes du NuBus spécifient les normes logiques, physiques et électriques
pour les quatre types de signaux présents dans le bus NuBus 10.
Ces signaux comprennent des signaux d'application telle que l'horloge et le moyen de ligne d'identification distinctive; les signaux d'adresse/données en même temps que divers signaux de
commande g les signaux d'arbitrage; et les signaux d'alimen-
tation. On peut voir que certains de ces signaux du NuBus appa- raissent du côté gauche de l'interface du NuBus 9 représentée en figure 5. Des signaux fournis par le CPU 1 ou la mémoire 2 s'écoulent à travers l'interface ou permettent à l'interface
d'autoriser le CPU 1 à communiquer avec le NuBus 10 et inverse-
ment. La table ci-après décrit les signaux utilisés dans la machine d'état du NuBus impliquée dans l'interface de NuBus 9. La mise en oeuvre particulière de l'interface 9 dépendra du CPU 1 particulier choisi pour être utilisé sur la carte mère et des buts
du concepteur.
Tableau 3
Signaux utilisés dans les machines d'état
de NuBus dans l'interface NuBus 9.
Signal Description
RQST Un signal NuBus; actif à bas niveau; indique une
requête de maîtrise du bus.
NUBUS Adresse décodée en provenance du processeur CPU 1 indiquant une référence d'adresse vers le NuBus actif à bas niveau. L'adresse en provenance du CPU 1 est
décodée dans un moyen décodeur qui peut être faci-
lement fabriqué par l'homme de l'art, et qui déter-
mine quand l'adresse sur le bus 25 dans l'adresse du NuBus se trouve dans la gamme $6000 0000 à $FFF FFFF. START Signal du NuBus; actif à bas niveau; indique
qu'une adresse est présente sur le NuBus.
ARB0-ARB3 Signaux du NuBus; actifs à bas niveau a adresse d'arbitrage des maîtres du bus en compétition pour
la maîtrise du NuBus.
ACK Signal "d'accusé réception" de NuBus; actif à bas niveau; un dispositif de NuBus esclave accuse
réception d'une transaction START.
26 1 2 3 1 4
RMC Signal du processeur CPU 1 indiquant qu'une lecture/ modification/écriture prend place sur les bus 6 et
du processeur CPU 1.
AS Impulsion d'adresse du processeur CPU 1 indiquant que les lignes d'adresse en provenance du CPU 1 sont valides et qu'un cycle est requis. Actif à bas
niveau ("/AS").
/BUSLOCK Les bus de processeur 6, 5 et 25 ne peuvent être interrompus par les transactions NuBus dans la
mémoire 2.
DSACKx L'accusé réception du signal de données en prove-
nance de la mémoire 2.
BG Accord du bus du processeur CPU 1 indiquant que les bus de processeur 5, 6 et 25 ont été accordés au
NuBus pour communiquer avec la mémoire 2 en utili-
sant le NuBus vers la machine d'état de mémoire 2 104. C16M L'horloge du processeur CPU 1 qui est utilisée pour qualifier des signaux en provenance du processeur
CPU 1 comme valides.
R/W Signal de lecture/écriture qui est utilisé pour
indiquer qu'une lecture ou une écriture prend place.
/BR Une requête de bus en provenance du NuBus requérant la maîtrise des bus du processeur, principalement-du
bus 6 (par le bus 12) et des bus 5 et 25.
/BGACK Signal de NuBus en provenance de la machine d'état de NuBus 104 accusant réception de l'accord des bus de processeur par le processeur. Typiquement, NuBus requiert une commande des bus du processeur en fournissant un signal /BR; une requête pour les bus de processeur est accordée par le signal /BG qui est reçu par le NuBus vers la machine d'état 104 de mémoire 2 qui accuse réception en recevant l'accord
des bus de processeur pour la maîtrise.
/BERR Signal d'erreur de bus en provenance de NuBus
indiquant qu'il y a une erreur dans le système.
Ce signal est habituellement fourni par la machine d'état de fin de comptage de NuBus 105 qui surveille
les transactions qui dépassent environ 25 micro-
secondes, toute transaction de ce type est suppo-
sée par la machine d'état de décomptage de bus être en erreur, entraînant que le signal /BERR doit
être envoyé au processeur.
/DS Impulsion de données: un signal NuBus indiquant que les lignes de données en provenance du bus NuBus
sont valides et qu'un cycle est requis.
Le processeur CPU 1 accède typiquement au NuBus 10 et le requiert chaque fois que le processeur CPU 1 produit une adresse physique entre $6000 0000 et $FFFF FFFF. La machine d'état 103 du CPU 1 au NuBus détermine s'il y a une telle requête quand des décodeurs sur la carte mère couplés au bus 25 indiquent qu'une adresse sur le bus 25 présente un chiffre hexadécimal le plus significatif compris entre $6 et $F, incluant $6 et $F. Dans ces conditions, la sortie de ces décodeurs provoque l'établissement du signal /NUBUS. La machine d'état 103 synchronise alors la requête pour la commande NuBus avec l'horloge NuBus et présente la même adresse sur le bus 10 après détermination du fait que le CPU 1 peut prendre la propriété du NuBus 10 pour fournir des signaux d'adresse sur le bus NuBus 10. Si une carte sur NuBus répond, les données sont transférées. Si aucune carte ne répond, un décomptage de NuBus prend place et une erreur de bus (/BERR) est envoyée au
processeur, ce qui provoque habituellement l'exécution d'un sous-
programme de traitement d'erreurs. La machine d'état 105 de décomptage de NuBus surveille la durée entre les signaux START sur
le NuBus et les signaux d'accusé réception (ACK) sur le NuBus.
Quand la durée entre ces signaux dépasse 255 horloges du NuBus, selon les normes NuBus, la machine d'état de décomptage de NuBus produit l'erreur de bus de la façon indiquée ci-dessus. La figure 8 représente les signaux impliqués par la transaction du processeur CPU 1 au NuBus par l'intermédiaire de l'interface de NuBus 9 et plus particulièrement par l'intermédiaire de la machine d'état 103 du processeur au NuBus. Les signaux à droite du bloc 103
2 6 1 2 3 1 4
représentés en figure 8, qui sont dirigés du côté du CPJ 1 de la machine 103 sont des signaux de NuBus. Le côté droit de la machine 103 est le côté NuBus du système et comprend six connecteurs. Du côté gauche de l'interface 9 se trouve la partie CPU 1 et mémoire 2 du système. Ceci est également vrai en figure 9. Des signaux entrant, c'est-à-dire avec une flèche dirigée vers la machine 103, dans la machine 103 du côté du NuBus sont de façon générale des signaux NuBus et des signaux sortant de la machine 103 du côté
NuBus sont produits par le CPU 1 ou par le résultat de l'inter-
action du CPU 1 et de la machine 103. De façon similaire, les signaux du côté du CPU 1 de la machine 103 qui entrent dans la machine 103 sont des signaux provenant généralement du CPU 1 ou de
la mémoire 2 ou des circuits associés à cette partie du système.
Les signaux du côté du CPU 1 des machines 103 et 104 sont trans-
portés par le bus 12 de la figure 1 et les signaux du côté du
NuBus des machines 103 et 104 sont portés par le bus 11.
Une transaction normale du CPU 1 au NuBus commence par le fait que la machine d'état 103 attend que le signal /NuBus soit établi (celui-ci étant synchronisé avec l'horloge à 10 MHz du NuBus). Quand ce signal est établi et qu'aucun autre maitre du bus n'établit RQST sur le NuBus 10, l'état B est introduit à partir de l'état A, l'état d'attente antérieur. L'état B a établi le signal RQST du NuBus et établit une requête par le CPU 1 pour le NuBus 10, parmi d'autres maîtres du bus qui établissent RQST en même temps. Dans des buts d'arbitrage, selon les normes NuBus,
le CPU 1 est affecté au connecteur $0.
L'état B est suivi de l'état C pendant lequel les signaux d'arbitrage et d'accusé réception (ACK) sont fournis en impulsions pour vérifier si une quelconque autre transaction du NuBus est en cours ou si un autre maître du NuBus a gagné le NuBus 10. Si une transaction est en cours et qu'aucun autre bus n'a gagné la maîtrise, l'état C est maintenu. Si un autre maître du bus a requis le bus pendant l'état B, l'état D est introduit. (On notera que, puisque le processeur CPU 1 accède au bus à partir
du connecteur $0, il perd toujours par rapport aux autres con-
necteurs puisque l'arbitrage est basé sur le numéro distinctif selon la norme NuBus). Si aucun autre maître n'a gagné le bus et qu'aucune autre transaction n'est en cours, l'état E est introduit. L'état E établit le signal START sur le bus NuBus 10 et fournit les adresses en provenance du CPU 1 sur le NuBus 10. On notera que des bascules et des tampons sont utilisés pour mémoriser temporairement des adresses et des données dans ces machines d'état 103 et 104 et généralement dans le système. L'état F suit l'état E et attend le signal d'accusé réception (ACK) à partir de la carte qui a été adressée. Quand le signal d'accusé réception est établi sur le NuBus 10 et qu'aucun autre maître ne requiert le bus 10, un état G est introduit dans lequel les signaux DSACKx vers le processeur CPU 1 sont produits pour achever le cycle de traitement. Si aucun autre maître n'établit RQST pendant l'état G, l'état H est introduit à savoir un état dans lequel le NuBus 10 est "parqué" c'est-à-dire qu'une seconde transaction du NuBus en provenance du processeur CPU 1 pourra aller directement vers l'état E pour initialiser l'accès au NuBus au lieu de l'état A. Si RQST est établi pendant les états F, G ou H, le NuBus 10 doit être réarbitré pour déterminer le maître en cours du bus et l'état A devient l'état d'attente plutôt que l'état H. Ces séquences d'états peuvent être exécutées par des techniques de machines d'état bien connues. Le tableau ci-après résume les états et les signaux impliqués dans l'interface entre le processeur CPU 1 et le NuBus qui est constitué par la machine d'état du
CPU 1 au NuBus 103.
Tableau 4
Etats du processeur CPU 1 au NuBus Signaux
Etats Etablis Description
A Etat de repos. Attente du fait que le processeur CPU 1 produise un accès d'adresse NuBus (adressage d'un emplacement de mémoire entre $6000 0000 et $FFFF FFFF) et du fait
que RQST (en provenance des cartes) soit dé-
sétabli par les cartes dans les connecteurs
2 6 1 2 3 1 4
NuBus. B RQST Requête du NuBus. Le processeur CPU 1 requiert le bus NuBus et aucun autre RQST
n'est établi.
C RQST Test d'arbitrage gagné. Les lignes d'arbi- trage doivent toutes être désétablies puisque le processeur CPU 1 est l'arbitrage numéro zéro. Si le dernier cycle attend ACK, reste établi. Si une ligne d'arbitrage est établie, essayer à nouveau après la transaction START suivante. D RQST Attente du tour suivant d'arbitrage. START indique que le tour suivant d'arbitrage est disponible. E START, A0-A31 Transaction START. Etablit adresse du (NuBus) processeur CPU 1 sur la ligne d'adresse à
32 bits du NuBus 10.
F A0-A31 Attente de ACK. Attendre accusé réception du dispositif esclave. Le CPU 1 établit A0-A31 (NuBus) si le CPU 1 est en train d'écrire dans le dispositif NuBus (par exemple une
carte). Noter si RQST est établi pour détermi-
ner si le bus restera "parqué". Si RQST est établi, la machine d'état réeffectura un cycle vers l'état A après l'état G. G DSACK0, DSACK1 Etablit DSACKx. Transaction de NuBus esclave achevée, et cycle du processeur CPU 1. Le
NuBus reste "parqué".
H Attendre la transaction suivante du proces-
seur CPU 1 au NuBus. NuBus reste "parqué" pour permettre un démarrage rapide vers le
cycle suivant.
La machine d'état représentée en figure 8 reçoit les signaux
d'adresse du CPU 1 (A0-A31) en provenance du CPU 1 sur le bus 25.
Les signaux apparaissant à la droite de la machine d'état 103 sont les signaux NuBus. Certains signaux du côté gauche de la machine d'état 103 sont également des signaux NuBus tels que les signaux d'horloge/CN10M et C20M, ainsi que /NuBus bien que ce
dernier soit provoqué par CPU 1 en produisant une adresse NuBus.
La machine d'état de NuBus aux bus de CPU 1 104, telle que représentée à la figure 9 est destinée à des accès vers la mémoire 2 (qui peut comprendre une RAM, une ROM et des I/O) à partir de NuBus. Dans un mode de réalisation, si une adresse comprise entre $0000 0000 et $5FFF FFFF est présentée sur le NuBus, alors la machine d'état 104 du NuBus au bus de processeur requiert les bus de processeur en provenance du CPU 1 et réalise un accès vers l'adresse. Une variante de réalisation (figure 10) sera également décrite dans laquelle des accès vers la RAM de la mémoire 2 surviennent en adressant $0000 0000 à $3FFF FFFF et des accès vers la ROM ou l'I/O de la carte mère surviennent en adressant $FOOO 0000 à $FOFF FFFF. Normalement, après que les données ont été envoyées vers ou à partir du maitre du NuBus (c'est-à-dire la carte dans le connecteur du NuBus), la commande des bus de
processeurs 5 et 6 est ramenée au processeur CPU 1.
Le tableau suivant décrit les états et les signaux
impliqués dans la transaction du NuBus aux bus du CPU 1.
Tableau 5
Signaux
Etats Etablis Description
A1 Etat de repos. Attente d'adresse sur NuBus 10 aux emplacements des bus de processeur (par exemple $0000 0000 à $3FFF FFFF et $F000 0000 à $FOFF FFFF). Si les bus de processeur ne sont pas verrouillés (par
exemple en verrouillant les bus de proces-
seur par établissement du signal Buslock du CPU 1) et que le CPU 1 n'effectue pas un accès NuBus, les bus de processeur seront requis. Si Buslock est établi, alors l'accès de NuBus à la mémoire 2 est retardé jusqu'à ce que Buslock soit réétabli et
que l'état reste à A1.
2 6 1 2 3 1 4
B1 BR Requête de bus établie. Requête par NuBus des bus de processeur pour une transaction de NuBus à mémoire 2. Attente de CPU 1 pour établir un accord de bus et désétablir une impulsion d'adresse. Ci BGACK, A0-A31 Etablit maîtrise des bus de processeur et
(sur bus 25) établit des adresses et/ou des données.
D0-D31
(sur bus 6)
R/W
D1 AS; DS; A0-A31 Impulsion d'adresse établie.
(sur bus 25) Impulsion de données établie.
E1 D0-D31 Attente de données valides en provenance DSACK de mémoire 2 (ou écriture vers la mémoire 2 pendant la durée o les données sont valides).
Attente de l'accusé réception de l'impul-
sion de données (DSACK) en provenance de la mémoire 2 pour indiquer une fin de
cycle.
F1 ACK (NuBus) Transaction de NuBus aux bus de processeur achevée. Attente pour déterminer si le cycle suivant continuera tandis que NuBus commande les bus du processeur. NuBus peut
verrouiller les bus de processeur seule-
ment en établissant un signal d'Attention de Verrouillage qui amène CPU 1 à libérer la commande des bus de processeur pour plusieurs transaction sans conflit de CPU 1 jusqu'à ce qu'un signal d'attention nul soit établi; l'établissement d'Atten-
tion de Verrouillage provoque une mise en
boucle des états B1 à Fl.
La transaction de NuBus aux bus du CPU 1 commence par l'état A1 représenté dans le tableau 5 ci-dessus o la machine d'état 104 est au repos en attendant une adresse sur NuBus 10 dans l'espace mémoire de la mémoire 2 (par exemple $0000 0000 à $5FFF FFFF; ou, dans la variante de réalisation de la figure 10 $0000 0000 à $3FFF FFFF et $F000 0000 à $FOFF FFFF). Les accès de NuBus aux bus de processeur peuvent être empêchés en établissant le signal Buslock qui amène toutes les transactions de NuBus à cet espace d'adresse à être retransmises en accusé réception par une réponse "essayez à nouveau plus tard". Si l'adresse se trouve dans l'espace de la mémoire 2 et que Buslock n'est pas établi, alors l'état B1 est introduit. A l'état B1, le CPU 1 libère les bus de processeur en fournissant un signal BusGrant (accord de bus) qui répond à un signal de requête de bus (Bus Request). Le BusGrant entraine un accusé réception du dispositif NuBus selon un accusé réception de BusGrant à l'état suivant, C1. Les adresses sont amenées sur les bus d'adresse de processeur et les données sont transférées aux états D1 et El. La transaction est achevée dans F1 quand le signal
ACK du NuBus est établi sur le NuBus 10.
Dans le mode de réalisation indiqué à titre de variante en figure 10, les dispositifs NuBus accèdent à la RAM de la mémoire 2 en présentant des adresses dans la gamme de $0000
0000 à $3FFF FFFF. Les dispositifs NuBus dans ce mode de réali-
sation accèdent à une partie de l'espace mémoire de ROM de la carte mère et à une partie de l'espace mémoire I/O de la carte mère (qui est habituellement une RAM physique laissée de côté pour une utilisation I/O) indirectement en présentant des adresses sur NuBus 10 dans la gamme de $F000 0000 à $FOFF FFFF (espace de connecteur $0). Dans ce mode de réalisation, des adresses sur NuBus dans la gamme de $4000 0000 à $5FFF FFFF n'accèdent pas à la ROM ou à l'I/O mais les adresses sur les bus du CPU 1 (par exemple le bus 5) dans cette gamme accèdent à l'espace mémoire ROM et I/O de la carte mère complète. En conservant les normes NuBus, la partie de ROM de la carte mère (qui est affectée au moins au connecteur
$0) qui est accessible vers le NuBus est placée en haut de l'espa-
ce de connecteur $0. Cette allocation particulière de la mémoire dans l'espace de connecteur $0 entre la ROM de la carte mère et l'I/O de la carte mère dépend des besoins des concepteurs. Dans un mode de réalisation préféré, l'espace de connecteur $0 est divisé par moitiés de sorte qu'une adresse vers $F080 0000 à $FOFF FFFF sur NuBus 10 produit un accès vers une région de 8 mégaoctets de la ROM et de la carte mère (c'est-à-dire la ROM de la mémoire 2), et une adresse vers $F000 0000 à $F07F FFFF sur NuBus 10 produit un accès vers une région à 8 MB (mégaoctets) de l'espace mémoire I/O. Les parties particulières de 8 MB et l'espace mémoire de ROM et d'I/O dépendront des régions des dispositifs NuBus de mémoire qui seront nécessaires ou que l'on veut utiliser. Souvent, la ROM du système complet (carte mère) et I/O de carte mère
s'adapteront dans la région de 16 MB de l'espace de connecteur $0.
Des décodeurs bien connus peuvent être utilisés pour provoquer le décodage de l'adresse NuBus dans l'espace de connecteur $0 jusqu'à
l'emplacement de ROM et d'I/O approprié.

Claims (21)

REVENDICATIONS
1. Système d'ordinateur comprenant une carte de circuit principal (14) comprenant une unité centrale (CPU 1) et des connecteurs (29-34) dont chacun est adapté à recevoir une carte de circuit imprimé (50, 50a), une mémoire (2 i 62) couplée à l'unité centrale (CPU) pour recevoir des adresses d'emplacement de mémoire en provenance du CPU et pour fournir des données au CPU, cette mémoire étant disposée sur au moins la carte de circuit principal ou ladite carte de circuit imprimé, la carte de circuit principal comprenant des circuits d'entrée/sortie (7) couplés à la mémoire (2) pour fournir des données à la mémoire et couplés au CPU pour recevoir des signaux de commande en provenance du CPU, la carte de circuit principal ayant moins de 16 connecteurs, la carte de circuit principal comprenant un bus d'adresse à 32 bits couplé au CPU et à la mémoire pour adresser la mémoire, le CPU comprenant un moyen de génération d'adresses pour produire 22 adresses différentes pour adresser la mémoire sur le bus d'adresse à 32 bits, les 22 adresses différentes allant de l'emplacement $0000 0000 à l'emplacement $FFFF FFFF, cet emplacement étant en notation hexadécimale, chacun des connecteurs ayant un numéro distinctif ($9 à $E) dans le système et étant couplé au bus pour adresser la mémoire, chacun des connecteurs étant couplé à un moyen de ligne d'identification distinctive sur la carte de circuit principal, chaque moyen de ligne d'identification distinctive fournissant un
signal distinctif au connecteur auquel le moyen de ligne d'iden-
tification distinctive est couplé, ce signal distinctif pour un
connecteur particulier identifiant le numéro distinctif du connec-
teur particulier, caractérisé en ce que le numéro distinctif d'un connecteur particulier est (ID), ce numéro distinctif réservant 256 mégamultiplets d'espace mémoire pour chacun des connecteurs de sorte que l'espace mémoire à 256 mégamultiplets commence à l'emplacement $(ID)000 0000 et se termine à l'emplacement $(ID)FFF FFFF, d'o il résulte que toute carte dans le connecteur X aura un espace mémoire réservé commençant à l'emplacement $X000 0000 et se terminant à l'emplacement $XFFF FFFF, ces emplacements étant en
notation hexadécimale.
2. Système d'ordinateur personnel comprenant une carte de circuit principal (14) comprenant une unité centrale (CPU 1) et des connecteurs (29-34) dont chacun est adapté à recevoir une carte de circuit imprimé (50, 50a) une mémoire (2; 62) couplée à l'unité centrale (CPU) pour recevoir des adresses d'emplacement de mémoire en provenance du CPU et pour fournir des données au CPU, cette mémoire étant disposée sur au moins la carte de circuit principal ou ladite carte de circuit imprimé, la carte de circuit principal comprenant des circuits d'entrée/sortie (7) couplés à la mémoire (2) pour fournir des données à la mémoire et couplés au CPU pour recevoir des signaux de commande en provenance du CPU, la carte de circuit principal ayant moins de 16 connecteurs, la carte de circuit principal comprenant un bus d'adresse à 32 bits couplé au CPU et à la mémoire pour adresser la mémoire, le CPU comprenant un moyen de génération d'adresse pour produire 22 adresses différentes pour adresser la mémoire sur le bus d'adresse à 32 bits, les 22 adresses différentes définissant un espace d'adresse mémoire allant de l'emplacement $0000 0000 à l'emplacement $FFFF FFFF, ces emplacements étant en notation hexadécimale, chacun des connecteurs ayant un numéro distinctif ($9 à $E) dans le système et étant couplé au bus d'adresse à 32 bits pour recevoir des adresses pour la mémoire disposée dans le connecteur, chacun des connecteurs étant couplé à un moyen de ligne d'identification distinctive sur la carte de circuit principal, chaque moyen de ligne d'identification distinctive fournissant un
signal distinctif au connecteur auquel le moyen de ligne d'iden-
tification distinctive est couplé, chacun des signaux distinctifs fournissant le numéro distinctif du connecteur qui reçoit le signal distinctif, ce système d'ordinateur étant caractérisé en ce que 256 mégamultiplets d'espace mémoire allant de l'emplacement $X000 0000 et se terminant à l'emplacement $XFFF FFFF, sont réservés à la mémoire d'une carte dans un connecteur ayant un numéro
2 6 1 2 3 1 4
distinctif égal à $X, o $X peut être tout entier compris entre $0
et SE.
3. Système d'ordinateur personnel selon la revendica-
tion 2, caractérisé en ce que $X peut être tout entier compris entre $9 et SE et en ce que la carte de circuit principal
comprend 6 connecteurs.
4. Système d'ordinateur personnel selon la revendica-
tion 3, caractérisé en ce que le moyen de ligne d'identification distinctive comprend quatre lignes dont chacune transporte des valeurs binaires et dans lequel le bus d'adresse à 32 bits comprend en outre des signaux de commande et est sensiblement un
bus NuBus.
5. Système d'ordinateur personnel selon la revendica-
tion 4, caractérisé en outre en ce que 16 mégamultiplets d'espace mémoire allant de $FX00 0000 à $FXFF FFFF sont réservés en mémoire sur une carte dans un connecteur ayant un numéro distinctif égal à $X.
6. Système d'ordinateur comprenant une carte de circuit principal munie d'un bus de système incluant un bus d'adresse à 32 bits portant des signaux d'adresses et de données et des signaux de commande, ce bus de système étant sensiblement un bus NuBus, la carte de circuit principal comprenant en outre des connecteurs dont chacun est adapté à recevoir une carte de circuit imprimé, chacun des connecteurs étant couplé au bus de système pour recevoir des signaux d'adresses et de données dudit bus et pour fournir des signaux d'adresses et de données audit bus, la carte de circuit principal ayant moins de 16 connecteurs, caractérisé en ce que ce système d'ordinateur comprend en outre une première carte dans l'un des connecteurs et une seconde carte dans un autre connecteur, la première carte étant couplée au bus de système par l'intermédiaire de l'un des connecteurs, et la seconde carte étant couplée au bus de système par l'intermédiaire de l'autre connecteur, la première carte comprenant un CPU et une première mémoire étant couplée par l'intermédiaire d'un bus de carte sur la première carte, le CPU et la première mémoire étant couplés au bus de système, la seconde carte comprenant une seconde mémoire et un moyen décodeur qui couple la seconde mémoire au bus de système pour permettre à la seconde mémoire de recevoir des adresses à partir du bus de système et de fournir des données au bus de système, ce CPU comprenant un moyen de génération d'adresses pour produire 23 adresses différentes pour adresser la première mémoire et la seconde mémoire, les 23 adresses différentes définissant un espace
d'adresses mémoire allant de l'emplacement $0000 0000 à l'emplace-
ment $FFFF FFFF, chacun des connecteurs possédant un numéro distinctif dans le système, chacun des connecteurs étant couplé à un moyen de ligne d'identification distinctive sur la carte de circuit principal, chacun des moyens de ligne d'identification distinctive fournissant un signal distinctif au connecteur auquel le moyen de ligne d'identification distinctive est couplé, le signal distinctif pour un connecteur particulier fournissant le numéro distinctif du connecteur particulier, l'autre connecteur ayant un numéro distinctif égal à $X, o $X est un entier compris entre $0 et $E, le moyen décodeur étant couplé au moyen de ligne d'identification distinctive pour l'autre connecteur de sorte que le moyen décodeur reçoit un signal égal à $X qui est le signal distinctif pour l'autre connecteur, le moyen décodeur comparant le numéro distinctif au chiffre hexadécimal le plus significatif d'une adresse apparaissant sur le bus de système pour déterminer quand le numéro distinctif, en notation hexadécimale, est égal au chiffre hexadécimal le plus significatif de l'adresse, le moyen décodeur permettant à la seconde mémoire d'être adressée pour fournir des données quand le numéro distinctif, en notation hexadécimale, est égal au chiffre hexadécimal le plus significatif de l'adresse de sorte que la seconde mémoire est adressée chaque fois que les adresses comprises entre $X000 0000 et $XFFF FFFF apparaissent sur le bus de système, d'o il résulte que 256 mégamultiplets d'espace mémoire commençant à l'emplacement $X000 0000 et se terminant à un emplacement $XFFF FFFF sont réservés pour la mémoire
sur la seconde carte.
7. Carte de circuit imprimé comprenant des bornes adaptées à établir une connexion électrique avec des bornes
261 2314
associées sur un connecteur adapté à recevoir la carte sur une carte de circuit principal d'un système d'ordinateur, caractérisée en ce que cette carte de circuit principal comprend une unité centrale (CPU 1), une mémoire (2) couplée au CPU pour recevoir des adresses d'emplacement mémoire à partir du CPU et pour fournir des données au CPU, un bus d'adresse à 32 bits (5) étant couplé au CPU et à la mémoire pour adresser la mémoire, et un circuit d'entrée/sortie (7) étant couplé à la mémoire pour fournir des données à la mémoire et étant couplé au CPU pour recevoir des signaux de commande du CPU, ledit connecteur (29...34) étant couplé au bus d'adresses à 32 bits, le CPU comprenant un moyen de
1 32
génération d'adresses pour produire 2 adresses différentes allant de l'emplacement $0000 0000 à l'emplacement $FFFF FFFF, ces emplacements étant en notation hexadécimale, le connecteur ayant un numéro distinctif dans le système d'ordinateur et étant couplé à un moyen de ligne d'identification distinctive sur la carte de circuit principal, le moyen de ligne d'identification distinctive
fournissant un signal distinctif au connecteur, le signal dis-
tinctif identifiant le numéro distinctif du connecteur, la carte
comprenant un moyen de décodage couplé au moyen de ligne d'identi-
fication distinctive pour recevoir le signal distinctif, le moyen
de décodage comparant le numéro distinctif à une adresse apparais-
sant sur le bus d'adresses à 32 bits, le moyen de décodage provoquant que 256 mégamultiplets d'espace mémoire sont réservés pour le connecteur de sorte que, quand le numéro distinctif du
connecteur est X, les 256 mégamultiplets d'espace mémoire commen-
cent à l'emplacement $X000 0000 et se terminent à l'emplacement
$XFFF FFFF, ces emplacements étant en notation hexadécimale.
8. Carte de circuit imprimé selon la revendication 7, caractérisée en ce que la carte dans le connecteur X comprend une seconde mémoire (62) disposée sur la carte, cette seconde mémoire étant couplée au CPU par l'intermédiaire du bus d'adresse à 32 bits pour recevoir des adresses d'emplacement de mémoire à partir du CPU et fournir des données au CPU, cette seconde mémoire étant couplée au bus d'adresse à 32 bits qui fournit, pendant un premier cycle, une adresse et reçoit, pendant un second cycle, des données localisées à ladite adresse, dans lequel la seconde mémoire comprend des emplacements de mémoire réservés commençant à l'emplacement $X000 0000 et se terminant à l'emplacement $XFFF FFFF, et dans lequel X peut être tout nombre compris entre 1 et 14.
9. Carte de circuit imprimé comprenant des bornes adaptées à établir des connexions électriques avec des bornes associées disposées dans un connecteur adapté à recevoir la carte sur une carte de circuit principal d'un système d'ordinateur personnel, dans lequel la carte de circuit principal comprend une unité centrale (CPU 1), une première mémoire (2) couplée au CPU pour recevoir des adresses d'emplacements mémoire en provenance du CPU et pour fournir des données au CPU, un bus d'adresse à 32 bits étant couplé au CPU pour recevoir des adresses du CPU et un circuit d'entrée/sortie (7) étant couplé à la première mémoire pour fournir des données à la première mémoire et étant couplé au CPU pour recevoir des signaux de commande du CPU, ledit connecteur étant couplé au bus d'adresse à 32 bits, caractérisée en ce que le CPU comprend un moyen de génération d'adresses pour produire 232 adresses différentes allant de l'emplacement $0000 0000 à l'emplacement $FFFF FFFF, ces emplacements étant en notation hexadécimale, le connecteur ayant un numéro distinctif dans le
système d'ordinateur et étant couplé à un moyen de ligne d'identi-
fication distinctive sur la carte de circuit principal, le moyen de ligne d'identification distinctive fournissant un signal distinctif au connecteur, le signal distinctif identifiant le numéro distinctif du connecteur, la carte comprenant une seconde mémoire (62) qui y est disposée, la seconde mémoire étant sélectivement couplée au CPU par l'intermédiaire du bus d'adresse à 32 bits pour recevoir les adresses des emplacements mémoire et pour fournir des données sur le bus d'adresse, la seconde mémoire étant couplée au bus d'adresse à 32 bits qui fournit, pendant un premier cycle, une adresse et reçoit, pendant un second cycle, des données localisées à ces adresses, cette carte comprenant -en outre un moyen décodeur couplé au moyen de ligne d'identification distinctive pour recevoir le signal distinctif, le moyen décodeur (60) comparant le numéro distinctif au chiffre hexadécimal le plus
significatif de l'adresse pour déterminer quand le numéro distinc-
tif, en hexadécimal, est égal au chiffre hexadécimal le plus significatif de l'adresse, ce moyen décodeur validant la seconde mémoire (62) à adresser, pour fournir des données quand le numéro distinctif, en hexadécimal, est égal au chiffre hexadécimal le plus significatif de l'adresse de sorte que, quand le numéro distinctif du connecteur est X, la seconde mémoire est adressée chaque fois
que des adresses comprises entre $X000 0000 et $XFFF FFFF appa-
raissent sur le bus d'adresses à 32 bits, d'o il résulte que 256 mégamultiplets d'espace mémoire sont conservés pour la carte dans
le connecteur, lesdits 256 mégamultiplets d'espace mémoire commen-
çant à l'emplacement $X000 0000 et se terminant à l'emplacement
$XFFF FFFF.
10. Carte de circuit imprimé selon la revendication 9, caractérisée en ce que le bus d'adresses à 32 bits comprend en outre des signaux de commande et est sensiblement un bus NuBus, et en ce que la seconde mémoire comprend au moins une mémoire vive
(RAM) et une mémoire morte (ROM).
11. Carte de circuit imprimé selon la revendication 9, caractérisée en ce que le bus d'adresses à 32 bits comprend en outre des signaux de commande et est sensiblement un bus IEEE 1196
et en ce que la seconde mémoire comprend une mémoire vive (RAM).
12. Carte de circuit imprimé selon la revendication 9, caractérisée en ce que la seconde mémoire comprend une mémoire vive (RAM) et en ce que le moyen de ligne d'identification distinctive comprend quatre lignes transportant chacune des valeurs binaires et en ce que la carte de circuit principal comprend six connecteurs ayant des numéros distinctifs $9, $A, $B, $C, $D, $E,
chacun des connecteurs ayant son propre moyen de ligne d'identi-
fication distinctive fournissant son propre signal distinctif identifiant le numéro distinctif du connecteur, d'o il résulte qu'un connecteur ayant un numéro distinctif $9 est un connecteur $9 et en ce que le moyen de ligne d'identification distinctive couplé
audit connecteur $9 fournira la valeur $9 au connecteur $9.
13. Carte de circuit imprimé selon la revendication
2 6 1 2 3 1 4
12, caractérisée en ce que le bus d'adresses à 32 bits comprend en outre les signaux de commande et est sensiblement un bus NuBus et en ce que le moyen décodeur compare le numéro distinctif à toute adresse apparaissant sur le bus d'adresses à 32 bits, le moyen décodeur amenant 16 mégamultiplets d'espace mémoire à être réservés audit connecteur de sorte que, quand le numéro distinctif est X, les 16 mégamultiplets d'espace mémoire commencent à l'emplacement $FX00 0000 et se terminent à l'emplacement $FXFF FFFF.
14. Carte de circuit imprimé selon la revendication 13, caractérisée en ce que le moyen décodeur (60) détermine quand le chiffre hexadécimal le plus significatif est égal à $F et le moyen décodeur compare le numéro distinctif au second chiffre hexadécimal le plus significatif de l'adresse pour déterminer quand le numéro distinctif, en hexadémical, est égal au second chiffre hexadécimal le plus significatif, le moyen décodeur validant la seconde mémoire à adresser pour fournir des données quand le numéro distinctif, en hexadécimal, est égal au second chiffre hexadécimal le plus significatif et quand le chiffre hexadécimal le plus significatif est $F de sorte que, quand le numéro distinctif du connecteur est X, la seconde mémoire est adressée chaque fois que les adresses comprises entre $FX00 0000 et $FXFF FFFF apparaissent sur le bus d'adresse à 32 bits, d'o il résulte que lesdits 16 mégamultiplets d'espace mémoire commencent à l'emplacement $FX00 0000 et se terminent à l'emplacement $FXFF FFFF.
15. Carte de circuit imprimé selon la revendication 13, caractérisée en ce qu'elle comprend en outre une seconde unité centrale (CPU) couplée à la seconde mémoire pour adresser la
seconde mémoire et recevoir des données de la seconde mémoire.
16. Carte de circuit imprimé selon la revendication , caractérisée en ce que le second CPU est couplé au bus d'adresses à 32 bits pour exécuter sensiblement des transactions NuBus sur le bus d'adresses à 32 bits, cette carte pouvant être un
maître de bus dans les transactions NuBus.
17. Carte de circuit imprimé selon la revendication 16, caractérisée en ce que le second CPU est sensiblement
compatible avec le microprocesseur Intel 8088.
18. Carte de circuit imprimé selon la revendication 16, caractérisée en ce que le second CPU est sensiblement compatible avec le microprocesseur Intel 8086.
19. Carte de circuit imprimé selon la revendication 16, caractérisée en ce que le second CPU est sensiblement
compatible avec le microprocesseur Intel 80286.
20. Carte de circuit imprimé selon la revendication 16, caractérisée en ce que la seconde mémoire est adressée localement sur la carte par le second CPU sans transaction NuBus.
21. Carte de circuit imprimé selon la revendication , caractérisée en ce que le moyen décodeur (60) comprend un moyen de comparaison (70) pour déterminer si les adresses sur la carte en provenance du CPU sont dans l'espace d'adresse local de la carte, ce moyen décodeur empêchant une transaction NuBus quand les adresses sont dans l'espace d'adresse local de la carte, cet espace d'adresse local de la carte comprenant, quand la carte est dans le connecteur X, les emplacements $0000 0000 à $1000 0000, $X000 0000
à $XFFF FFFF et $FX00 0000 à $FXFF FFFF.
FR888803197A 1987-03-13 1988-03-11 Ordinateur personnel a carte d'extension Expired - Fee Related FR2612314B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/025,499 US4931923A (en) 1987-03-13 1987-03-13 Computer system for automatically reconfigurating memory space to avoid overlaps of memory reserved for expansion slots
US07/025,500 US4905182A (en) 1987-03-13 1987-03-13 Self-configuring memory management system with on card circuitry for non-contentious allocation of reserved memory space among expansion cards

Publications (2)

Publication Number Publication Date
FR2612314A1 true FR2612314A1 (fr) 1988-09-16
FR2612314B1 FR2612314B1 (fr) 1991-11-22

Family

ID=26699830

Family Applications (1)

Application Number Title Priority Date Filing Date
FR888803197A Expired - Fee Related FR2612314B1 (fr) 1987-03-13 1988-03-11 Ordinateur personnel a carte d'extension

Country Status (7)

Country Link
JP (1) JPS63314657A (fr)
KR (1) KR950014182B1 (fr)
CN (1) CN1017007B (fr)
AU (2) AU616171B2 (fr)
DE (1) DE3808193A1 (fr)
FR (1) FR2612314B1 (fr)
IL (1) IL85518A0 (fr)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2203869B (en) * 1987-04-17 1991-10-23 Apple Computer Computer resource configuration method and apparatus
CN101321250B (zh) * 2008-07-03 2010-06-02 四川长虹电器股份有限公司 一种电视机重要数据存储方法
US10146253B2 (en) * 2016-03-10 2018-12-04 Epro Gmbh Combined slot and backplane identification

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0044949A1 (fr) * 1980-07-30 1982-02-03 International Business Machines Corporation Procédé et dispositif d'attribution dynamique d'adresses de terminaux
GB2171542A (en) * 1985-02-27 1986-08-28 Encore Computer Corp System employing tightly coupled processors

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3675083A (en) * 1970-09-14 1972-07-04 Digital Equipment Corp Universal bus arrangement for data processing systems
GB2060961A (en) * 1979-10-10 1981-05-07 Magnuson Computer Systems Inc Data processing system having memory modules with distributed address information
GB2101370A (en) * 1981-06-26 1983-01-12 Philips Electronic Associated Digital data apparatus with memory interrogation
GB2103397A (en) * 1981-07-31 1983-02-16 Philips Electronic Associated Digital data aparatus with memory selection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0044949A1 (fr) * 1980-07-30 1982-02-03 International Business Machines Corporation Procédé et dispositif d'attribution dynamique d'adresses de terminaux
GB2171542A (en) * 1985-02-27 1986-08-28 Encore Computer Corp System employing tightly coupled processors

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
COMPUTER DESIGN, vol. 23, no. 7, 15 juin 1984, pages 129-135, Littleton, Massachusetts, US; G.P. WHITE: "Bus structure eases multiprocessor integration" *
COMPUTER SYSTEMS, vol. 6, no. 4, avril 1986, pages 29-32, Bromley, GB; I. WALLACE: "Using the VAXBI bus" *
ELECTRO AND MINI/MICRO NORTHEAST, 23-25 avril 1985, pages 1-9, New York, US; S.D. COOPER: "Multibus II-A major advancement in multiprocessing" *
IEEE MICRO, vol. 7, no. 1, février 1987, pages 5-13, IEEE, New York, US; R. MAENNER et al.: "The Heidelberg polyp system" *

Also Published As

Publication number Publication date
CN88101358A (zh) 1988-09-21
KR950014182B1 (ko) 1995-11-22
CN1017007B (zh) 1992-06-10
AU616171B2 (en) 1991-10-24
DE3808193A1 (de) 1988-09-22
FR2612314B1 (fr) 1991-11-22
IL85518A0 (en) 1988-08-31
AU1035492A (en) 1992-03-12
AU640850B2 (en) 1993-09-02
AU1276988A (en) 1988-09-15
KR880011668A (ko) 1988-10-29
JPS63314657A (ja) 1988-12-22

Similar Documents

Publication Publication Date Title
EP0063071B1 (fr) Procédé et dispositif de transmission de données numériques
EP0063972B1 (fr) Procédé et dispositif d'allocation d'une ressource dans un système comportant des unités de traitement de données autonomes
FR2632096A1 (fr) Systeme de microcalculateur a bus multiple avec arbitrage d'acces aux bus
FR2539528A1 (fr) Systeme a microprocesseur comportant deux processeurs
FR2632090A1 (fr) Commande du fonctionnement en pipe-line d'un systeme de micro-calculateur utilisant le dimensionnement dynamique des bus avec un processeur 80386 et une unite de commande d'antememoire 82385
FR2500187A1 (fr) Unite centrale de traitement de donnees
FR2480460A1 (fr) Dispositif pour transferer des informations entre des unites principales d'un systeme de traitement de donnees et un sous-systeme central
FR2674045A1 (fr) Interface pour installation informatique.
FR2528195A1 (fr) Systeme de communication entre ordinateurs
FR2806505A1 (fr) Procede de communication entre une carte a puce et une station hote
GB2202349A (en) Card for computer with expansion slots
FR2519441A1 (fr) Systeme de selection de priorite pour l'acces a un bus utilise en mode partage
FR2594242A1 (fr) Procede et appareil d'acces direct en memoire
EP0044765A1 (fr) Procédé d'arbitration de plusieurs sous-ensembles et dispositif d'arbritation pour sa mise en oeuvre
US5056060A (en) Printed circuit card with self-configuring memory system for non-contentious allocation of reserved memory space among expansion cards
FR2480458A1 (fr) Dispositif pour transferer des informations entre des unites d'un systeme de traitement de donnees
FR2481485A1 (fr) Systeme a sources de donnees et a recepteurs de donnees multiples a bus de communication
CA1296810C (fr) Ordinateur a fentes pour cartes d'extension
EP1324175B1 (fr) Module de securisation de donnees par chiffrement/dechiffrement et/ou signature/verification de signature
EP0698851B1 (fr) Système lecteur de carte à mémoire ou à puce
EP0012664A1 (fr) Dispositif de détection automatique de la capacité de mémoire d'un système de traitement ou de transmission de l'information
FR2632092A1 (fr) Circuit de conditionnement d'ecriture d'antememoire retarde pour un systeme de microcalculateur a bus double comprenant une unite 80386 et une unite 82385
FR3103584A1 (fr) Procédé de gestion du débogage d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant
FR2641389A1 (fr) Procede et systeme de communication pour la transmission d'informations de configuration d'un module memoire a un processeur d'un systeme informatique
FR2612314A1 (fr) Ordinateur personnel a carte d'extension

Legal Events

Date Code Title Description
ST Notification of lapse