FR2675920A1 - Dispositif commande par microprogramme comprenant un dispositif de memoire de commande de taille reduite. - Google Patents

Dispositif commande par microprogramme comprenant un dispositif de memoire de commande de taille reduite. Download PDF

Info

Publication number
FR2675920A1
FR2675920A1 FR9205168A FR9205168A FR2675920A1 FR 2675920 A1 FR2675920 A1 FR 2675920A1 FR 9205168 A FR9205168 A FR 9205168A FR 9205168 A FR9205168 A FR 9205168A FR 2675920 A1 FR2675920 A1 FR 2675920A1
Authority
FR
France
Prior art keywords
micro
instruction
address
instructions
signal
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
FR9205168A
Other languages
English (en)
Other versions
FR2675920B1 (fr
Inventor
Kishi Takao
Iwase Kiyoshi
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.)
NEC Corp
Original Assignee
NEC Corp
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
Application filed by NEC Corp filed Critical NEC Corp
Publication of FR2675920A1 publication Critical patent/FR2675920A1/fr
Application granted granted Critical
Publication of FR2675920B1 publication Critical patent/FR2675920B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • G06F9/267Microinstruction selection based on results of processing by instruction selection on output of storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

Le dispositif commandé par microprogramme exploitable sous la commande d'un microprogramme comprend un dispositif de mémoire de commande (10)qui comporte une unité de mémoire de commande (11) mémorisant une pluralité de micro-instructions dont chacune comprend une pluralité d'adresses d'une micro-instruction sur deux inférieures en nombre au nombre maximal de branchements disponibles pour le microprogramme, une unité de commutation de blocs (12), un registre de micro-instructions (13), une unité de commande de branchement (15), un sélecteur d'adresses (16) qui choisit, en tant qu'adresse de micro-instruction sélectionnée (SMIA)> l'une des adresses d'une micro-instruction sur deux sur la base du signal de sélection d'adresse, et un modificateur d'adresses (17).

Description

DISPOSITIF COMMANDE PAR MICROPROGRAMME COMPRENANT UN
DISPOSITIF DE MEMOIRE DE COMMANDE DE TAILLE REDUITE
Cette invention concerne un système de traitement de l'information exploitable sous la commande d'un microprogramme et, en particulier, un dispositif commandé par microprogramme pour l'exécution de la commande
séquentielle du microprogramme.
D'une manière bien connue dans la technique, un dispositif commandé par microprogramme est exploitable sous la commande d'un microprogramme Un dispositif connu commandé par microprogramme comprend un dispositif de mémoire de commande pour mémoriser une pluralité de
micro-instructions qui composent le microprogramme.
Chacune des micro-instructions comprend une adresse de micro-instruction suivante pour la micro-instruction suivante à exécuter après une micro-instruction actuellement en cours d'exécution Extraite du dispositif de mémoire de commande, la micro-instruction suivante comprend l'adresse de la micro-instruction suivante qui est modifiée en une adresse de micro-instruction modifiée sur la base d'un signal de conditions de branchement et ensuite l'adresse de micro-instruction modifiée est directement conservée dans un registre d'adresses de
micro-instructions suivantes en tant qu'adresse de micro-
instruction en attente Le registre d'adresses de micro-
instructions suivantes fournit au dispositif de mémoire de commande l'adresse de micro-instruction en attente en tant qu'adresse de microinstruction suivante pour permettre au dispositif de mémoire de commande de produire la micro-instruction suivante Un tel procédé d'adressage pour le dispositif commandé par
microprogramme est appelé procédé de l'adresse suivante.
Cela, parce que chaque micro-instruction comprend une
adresse de micro-instruction suivante.
Afin de permettre le fonctionnement à grande vitesse du dispositif commandé par microprogramme, le dispositif de mémoire de commande a été mis en oeuvre dans un état dans lequel l'accès au dispositif de mémoire de commande se fait avec un temps d'accès qui est à peu près égal à un temps de cycle, fixé pour le dispositif commandé par microprogramme par une horloge de fonctionnement En l'occurrence, un registre de microinstructions conserve temporairement la micro-instruction suivante extraite du dispositif de mémoire de commande pour compenser un retard d'accès pour le dispositif de mémoire de commande, et chaque micro-instruction comprend une pluralité d'adresses d'une microinstruction sur deux pour les micro-instructions à exécuter deux pas après la
micro-instruction en cours L'adresse d'une micro-
instruction sur deux est l'adresse de la deuxième micro-
instruction qui suit Un tel procédé d'adressage pour le dispositif commandé par microprogramme est dénommé
procédé d'adressage une adresse sur deux.
Dans un dispositif commandé par microprogramme classique, adoptant le procédé d'adressage une adresse sur deux, chaque micro-instruction comprend les adresses d'une micro-instruction sur deux, qui sont égales en nombre au nombre maximal de branchements disponibles pour le microprogramme Il en résulte que la dégradation des performances du fait des branchements peut être évitée en utilisant l'adresse d'une micro-instruction sur deux
correspondant à chaque branchement.
Comme on l'a décrit ci-dessus, dans le dispositif commandé par microprogramme classique adoptant le procédé d'adressage d'une adresse sur deux, il est nécessaire que chaque micro-instruction comprenne les adresses d'une micro-instruction sur deux qui sont égales en nombre au nombre maximal de branchements disponibles pour le microprogramme Par conséquent, chaque micro-instruction a une longueur binaire plus longue Donc, le dispositif commandé par microprogramme classique adoptant le procédé d'adressage d'une adresse sur deux est imparfait en ce que le dispositif de mémoire de commande doit avoir une
grande taille de mémoire.
Un but de l'invention consiste donc à proposer un dispositif commandé par microprogramme qui comprend un
dispositif de mémoire de commande de taille réduite.
D'autres buts de l'invention ressortiront au fur et
à mesure de la description.
La description du point essentiel d'un aspect de
cette invention permet de comprendre comment un dispositif commandé par microprogramme est exploitable
sous la commande d'un microprogramme.
Selon un aspect de l'invention, ce dispositif commandé par microprogramme comprend un dispositif de mémoire de commande comportant une unité de mémoire de
commande pour mémoriser une pluralité de micro-
instructions qui composent le microprogramme Chacune des microinstructions comprend une pluralité d'adresses
d'une micro-instruction sur deux pour les micro-
instructions à exécuter deux pas après une micro-
instruction en cours d'exécution, une information de classification de branchement indiquant la classification d'un branchement, une information de sélection de conditions de branchement indiquant une sélection de conditions de branchement, et une information de sélection de modification d'adresse indiquant si les adresses d'une micro-instruction sur deux sont ou non modifiées Les adresses d'une micro-instruction sur deux représentent un nombre inférieur au nombre maximal de branchements disponibles pour le microprogramme L'unité de mémoire de commande produit simultanément une pluralité de micro-instructions suivantes en réponse à une adresse de micro- instruction suivante, le dispositif de mémoire de commande comprenant un moyen de sélection
de micro-instructions pour choisir, en tant que micro-
instruction sélectionnée l'une des micro-instructions suivantes sur la base d'un signal d'information de branchement Un registre de microinstructions, connecté
au dispositif de mémoire de commande, conserve la micro-
instruction sélectionnée en tant que micro-instruction en cours Le registre de micro-instructions produit les adresses d'une microinstruction sur deux, un signal de classification de branchement indiquant l'information de classification de branchement, un signal de sélection de conditions de branchement indiquant l'information de sélection de conditions de branchement, et un signal de sélection de modification d'adresse indiquant l'information de sélection de modification d'adresse Un registre d'adresses de micro-instructions suivantes, connecté au dispositif de mémoire de commande, conserve l'adresse de micro-instruction suivante pour l'exécution
des micro-instructions suivantes à la suite de la micro-
instruction en cours Le registre d'adresses de micro-
instructions suivantes fournit l'adresse de micro-
instruction suivante à l'unité de mémoire de commande pour permettre à l'unité de mémoire de commande de produire les micro-instructions suivantes Le registre d'adresses de micro-instructions suivantes produit une partie de l'adresse de micro-instruction suivante en tant que signal de commande de branchement Un moyen de co-, ande de branchement recevant un signal de conditions
de branchement et connecté au registre de micro-
instructions, au moyen de conservation d'adresses de micro-instructions suivantes et au dispositif de mémoire de commande, transforme le signal de conditions de branchement, le signal de commande de branchement, le signal de classification de branchement et le signal de sélection de conditions de branchement, en signal d'information de branchement, en signal de sélection d'adresse et en signal de modification d'adresse Un moyen de sélection d'adresses d'une micro-instruction sur deux, connecté au registre de micro-instructions et au moyen de commande de branchement choisit, en tant qu'adresse de micro-instruction sélectionnée, l'une des adresses d'une micro-instruction sur deux sur la base du signal de sélection d'adresse Un moyen de modification d'adresses d'une micro-instruction sur deux, connecté au moyen de sélection d'adresse d'une micro-instruction sur deux, au moyen de commande de branchement, au registre de micro-instructions et au moyen de conservation d'adresses de micro-instructions suivantes, modifie l'adresse de
micro-instruction sélectionnée en une adresse de micro-
instruction modifiée sur la base du signal de modification d'adresse et du signal de sélection de modification d'adresse Le moyen de modification d'adresses d'une micro-instruction sur deux fournit au moyen de conservation d'adresses de micro-instructions
suivantes l'adresse de micro-instruction modifiée.
Selon un autre aspect de cette invention, le dispositif commandé par microprogramme comprend un dispositif de mémoire de commande comportant une unité de mémoire de commande pour mémoriser une pluralité de
micro-instructions qui composent le microprogramme.
Chacune des micro-instructions comprend une adresse d'une microinstruction sur deux pour les micro-instructions à exécuter deux pas après une micro-instruction en cours d'exécution, une information de classification de branchement indiquant la classification d'un branchement, une information de sélection de conditions de branchement indiquant une sélection de conditions de branchement, et une information de sélection de modification d'adresse indiquant si l'adresse d'une micro-instruction sur deux est ou non modifiée L'unité de mémoire de commande produit simultanément une pluralité d'instructions suivantes en réponse à une adresse de micro-instruction suivante Le dispositif de mémoire de commande comprend un moyen de sélection de micro-instructions pour choisir, en tant que micro-instruction sélectionnée l'une des micro-instructions suivantes sur la base d'un signal
d'information de branchement un registre de micro-
instructions, connecté au dispositif de mémoire de commande, conserve la micro-instruction sélectionnée en tant que la micro-instruction en cours Le registre de
micro-instructions produit l'adresse d'une micro-
instruction sur deux, un signal de classification de branchement indiquant l'information de classification de branchement, un signal de sélection de conditions de branchement indiquant l'information de sélection de conditions de branchement, et un signal de sélection de modification d'adresse indiquant l'information de sélection de modification d'adresse Un registre d'adresses de micro- instructions suivantes, connecté au dispositif de mémoire de commande, conserve l'adresse de
micro-instruction suivante pour l'exécution des micro-
instructions suivantes à la suite de la micro-instruction en cours Le registre d'adresses de micro-instructions suivantes fournit l'adresse de micro-instruction suivante à l'unité de mémoire de commande pour permettre à l'unité de mémoire de commande de produire les micro- instructions suivantes Le registre d'adresses de micro-instructions
suivantes produit une partie de l'adresse de micro-
instruction suivante en tant que signai de commande de branchement Un moyen de commande de branchement recevant un signal de conditions de branchement et connecté au moyen de conservation de micro-instructions, au registre d'adresses de micro-instructions suivantes et au dispositif de mémoire de commande transforme le signal de conditions de branchement, le signal de commande de branchement, le signal de classification de branchement et le signal de sélection de conditions de branchement en signal d'information de branchement et en signal de modification d'adresse Un moyen de modification
d'adresse d'une micro-instruction sur deux, connecté au moyen de commande de branchement et au registre de micro-
instructions et au registre d'adresses de micro- instructions suivantes, modifie l'adresse d'une micro- instruction sur deux en une adresse de micro-instruction30 modifiée sur la base du signal de modification d'adresse et du signal de sélection de modification d'adresse Le moyen de modification d'adresse d'une micro-instruction sur deux fournit au moyen de conservation d'adresses de
micro-instructions suivantes l'adresse de micro-
instruction modifiée Les caractéristiques et avantages de l'invention ressortiront d'ailleurs de la description
qui va suivre à titre d'exemple, en référence aux dessins annexés, sur lesquels la figure 1 est un schéma fonctionnel d'un dispositif commandé par microprogramme classique; la figure 2 est une vue servant à décrire un registre de micro-instructions compris dans le dispositif commandé par microprogramme classique représenté à la figure 1; la figure 3 est un schéma fonctionnel d'un dispositif commandé par microprogramme selon un premier mode de réalisation de la présente invention; les figures 4 (a) et (b) sont des organigrammes servant à décrire des branchements pour un microprogramme sous la commande duquel le dispositif commandé par microprogramme est exploitable; la figure 5 est une vue servant à décrire un registre de micro-instructions compris dans le dispositif commandé par microprogramme représenté à la figure 3; la figure 6 montre un format de chaque adresse d'une micro-instruction sur deux comprise dans chaque micro-instruction conservée dans une unité de mémoire de commande comprise dans le dispositif commandé par microprogramme représenté à la figure 3; les figures 7 (a), (b), (c) et (d) sont des organigrammes servant à décrire le fonctionnement pratique du dispositif commandé par microprogramme décrit en liaison avec les figures 3 à 6; la figure 8 est un schéma fonctionnel d'un dispositif commandé par microprogramme selon un second mode de réalisation de la présente invention; et la figure 9 est une vue servant à décrire un registre de micro-instructions compris dans le dispositif
commandé par microprogramme représenté à la figure 8.
En se référant à la figure 1, un dispositif commandé par microprogramme classique sera tout d'abord décrit pour faciliter la compréhension de la présente invention Le dispositif commandé par microprogramme est exploitable sous la commande d'un microprogramme D'une manière qui deviendra plus claire ultérieurement, le microprogramme peut se brancher sur quatre directions ou
quatre voies maximum.
Le dispositif commandé par microprogramme comprend un dispositif de mémoire de commande 10 ' Le dispositif de mémoire de commande 10 ' comprend une unité de mémoire de commande 11 ' L'unité de mémoire de commande 11 ' se compose de quatre blocs, ou blocs un à quatre, 11 '1, 11 '2, 11 '3, et 11 '4 et mémorise ou conserve une pluralité
de micro-instructions qui composent le microprogramme.
Ainsi qu'on le comprendra mieux plus loin, chacune des micro- instructions conservées dans l'unité de mémoire de commande 11 ' comprend les adresses une à quatre d'une micro-instruction sur deux qui sont égales en nombre au nombre maximum, soit quatre, des branchements disponibles
pour le microprogramme.
Ainsi qu'on le verra, l'accès à l'unité de mémoire
de commande 11 ' se fait par une adresse de micro-
instruction suivante NMIA pour produire simultanément les microinstructions une à quatre suivantes NMI 1, NMI 2, NMI 3 et NMI 4, respectivement, par les blocs un à quatre 11 '-1 à 11 '-4 Chacune des micro-instructions une à quatre suivantes NMI 1 à NMI 4 est une microinstruction à exécuter à la suite d'une micro-instruction en cours d'exécution Les micro-instructions une à quatre suivantes NMI 1 à NMI 4 sont fournies à une unité de commutation de blocs 12 L'unité de commutation de blocs 12 reçoit un signal d'information de branchement BI qui sera décrit plus loin Sur la base du signal d'information de branchement BI, l'unité de commutation de blocs 12 choisit l'une des micro-instructions une à
quatre suivantes NMI 1 à NMI 4 en tant que micro-
instruction sélectionnée SMI En d'autres termes, l'unité de commutation de blocs 12 permet la commutation du dispositif de mémoire de commande 10 ' entre les blocs un à quatre 11 '-1 à 11 '-4 L'unité de commutation de blocs
12 sert donc de dispositif de sélection de micro-
instructions. La micro-instruction sélectionnée SMI est fournie à un registre de micro-instructions 13 ' Le registre de micro-instructions 13 ' conserve la micro-instruction
sélectionnée SMI en tant que micro-instruction en cours.
En passant maintenant à la figure 2, le registre de micro-instructions 13 ' est divisé en sept zones, à savoir, une zone code de micro- instruction 13 '-1, une zone classification de branchement 13 '-2, une zone sélection de conditions de branchement 13 '-3, et des zones adresses une à quatre d'une micro-instruction sur deux 13 '-4, 13 '-5, 13 '-6 et 13 '-7 qui sont également
représentées à la figure 1 La zone code de micro-
instruction 13 '-1 sert à conserver un code de micro-
instruction La zone classification de branchement 13 '-2 sert à conserver l'information de classification des branchements représentant la classification d'un branchement La zone sélection de conditions de branchement 13 '-3 sert à conserver l'information de sélection de conditions de branchement indiquant la sélection des conditions de branchement Les zones adresses une à quatre d'une micro-instruction sur deux 13 '-4 à 13 '-7 servent à conserver les adresses une à quatre d'une micro-instruction sur deux pour l'exécution d'une micro-instruction sur deux, deux pas après la
micro-instruction en cours.
En d'autres termes, chaque micro-instruction à utiliser dans le dispositif commandé par microprogramme classique se compose du code de la micro-instruction, de l'information de classification de branchement, de l'information de sélection des conditions de branchement, et des adresses une à quatre d'une micro-instruction sur
deux.
En revenant à la figure 1, le registre de micro-
instructions 13 ' produit un signal de code de micro-
instruction indiquant le code de la micro-instruction Le signal de code de micro-instruction est fourni à une unité de traitement, telle qu'un additionneur (non montré) L'unité de traitement traite le signal de code
de micro-instruction pour produire un signal de conditions de branchement BCD Le registre de micro-
instructions 13 ' produit en outre un signal de classification de branchement BCF représentant l'information de classification de branchement de la zone classification de branchement 13 '2, un signal de sélection de conditions de branchement BCS indiquant l'information de sélection des conditions de branchement de la zone sélection des conditions de branchement 13 '-3, et les adresses une à quatre d'une micro-instruction sur deux ESMIA 1, ESMIA 2, ESMIA 3, et ESMIA 4 des zones adresses une à quatre d'une micro-instruction sur deux 13 '-4 à
13 '-7.
Le dispositif commandé par microprogramme comprend en outre un registre d'adresses de micro-instructions suivantes 14 connecté au dispositif de mémoire de
commande 10 ' Le registre d'adresses de micro-
instructions suivantes 14 conserve l'adresse de la micro-
instruction suivante NMIA pour les micro-instructions suivantes Le registre d'adresses de micro-instructions suivantes 14 fournit l'adresse de la micro-instruction suivante NMIA à l'unité de mémoire de commande 11 ' pour permettre à l'unité de mémoire de commande 11 ' de produire les quatres micro-instructions suivantes NMIA 1 à NMIA 4 Le registre d'adresses de micro-instructions suivantes 14 produit en outre une partie de l'adresse de micro-instruction suivante NMIA en tant que signal de
commande de branchement BCT.
Le signal de commande de branchement BCT est fourni à une unité de commande de branchement 15 ' L'unité de commande de branchement 15 ' reçoit le signal de conditions de branchement BCD venant de l'unité de traitement L'unité de commande de branchement 15 ' reçoit en outre le signal de classification de branchement BCF et le signal de sélection de conditions de branchement BCS venant du registre de micro- instructions 13 ' L'unité de commande de branchement 15 ' transforme le signal de conditions de branchement BCD, le signal de commande de branchement BCT, le signal de classification de branchement BCF et le signal de sélection de conditions il de branchement BCS en signal d'information de branchement
BI et en signal de sélection d'adresse AS'.
Le signal de sélection d'adresse AS' est fourni à un sélecteur d'adresses d'une micro-instruction sur deux 16 ' Le sélecteur d'adresses d'une micro-instruction sur deux 16 ' reçoit du registre de micro-instructions 13 ' les adresses une à quatre d'une micro- instruction sur deux
ESMI Al à ESMIA 4 Le sélecteur d'adresses d'une micro-
instruction sur deux 16 ' choisit, en tant qu'adresse de microinstruction sélectionnée SMIA', l'une des adresses une à quatre d'une micro-instruction sur deux ESMI Al à
ESMIA 4 sur la base du signal de sélection d'adresse AS'.
L'adresse de la micro-instruction sélectionnée SMIA' est fournie au registre d'adresses de micro-instructions suivantes 14 Par conséquent, le registre d'adresses de micro-instructions suivantes 14 conserve l'adresse de la micro-instruction sélectionnée SMIA' en tant qu'adresse
de micro-instruction suivante NMIA.
Ainsi qu'il ressort de la description ci-dessus,
dans le dispositif commandé par microprogramme classique, l'unité de mémoire de commande 11 ' doit mémoriser les micro-instructions, chacune comprenant les adresses une à quatre d'une micro-instruction sur deux, qui sont égales en nombre au nombre maximal de branchements disponibles pour le microprogramme Il en résulte que le dispositif commandé par microprogramme classique est imparfait, en ce que le dispositif de mémoire de commande 10 ' doit avoir une mémoire de grande taille, comme indiqué dans le
préambule de la présente invention.
En se référant à la figure 3, un dispositif commandé par microprogramme va être décrit selon un premier mode de réalisation de la présente invention Le dispositif commandé par microprogramme comprend un modificateur d'adresses d'une micro-instruction sur deux 17 ainsi qu'un dispositif de mémoire de commande 10, un registre de micro- instruction 13, un registre d'adresses
de micro-instructions suivantes 14, une unité de commande de branchement 15 et un sélecteur d'adresses d'une micro-
instruction sur deux 16 qui sont similaires à ceux du dispositif commandé par microprogramme classique représenté à la figure 1 Comme on le verra plus loin, le dispositif commandé par microprogramme peut exécuter, en tant que branchement pour un microprogramme, un branchement une voie ou unidirectionnel, un branchement deux voies ou bidirectionnel et un branchement quatre
voies ou quadridirectionnel.
En se référant momentanément aux figures 4 (a) et
(b), la description va être faite de la distinction de
chaque branchement lorsque le microprogramme se branche.
La figure 4 (a) montre le cas dans lequel le
microprogramme peut se brancher à partir d'une micro-
instruction ( 1) sur l'une de quatre micro-instructions ( 2), ( 3), ( 4) et ( 5) Dans ce cas, un branchement de la micro-instruction ( 1) à la micro-instruction ( 2), un
autre branchement de la micro-instruction ( 1) à la micro-
instruction ( 3), encore un autre branchement de la micro-
instruction ( 1) à la micro-instruction ( 4) et enfin un
branchement de la micro-instruction ( 1) à la micro-
instruction ( 5) sont, respectivement, dénommés branchement 0, branchement 1, branchement 2 et
branchement 3.
La figure 4 (b) montre un autre cas dans lequel le microprogramme peut se brancher d'une micro-instruction ( 1) à l'une de deux micro- instructions ( 2) et ( 3) Un
branchement de la micro-instruction ( 1) à la micro-
instruction ( 2) et un autre branchement de la micro-
instruction ( 1) à la micro-instruction ( 3) sont alors
dénommés, respectivement, branchement O et branchement 1.
En revenant à la figure 3, le dispositif de mémoire de commande 10 comprend une unité de mémoire de commande 11 et une unité de commutation de blocs 12 qui sont similaires à celles du dispositif commandé par
microprogramme classique représenté à la figure 1.
L'unité de mémoire de commande 11 se compose de quatre blocs, ou blocs un à quatre, 11-1, 11-2, 11-3 et 11-4 et
mémorise, ou conserve, une pluralité de micro-
instructions qui composent le microprogramme Comme on le verra plus loin, chacune des micro-instructions conservées dans l'unité de mémoire de commande 11 comprend les adresses une et deux d'une micro- instruction sur deux. Comme on le verra, l'accès à l'unité de mémoire de commande 11 se fait par une adresse de micro-instruction
suivante NMIA pour produire simultanément les micro-
instructions une à quatre suivantes NMI 1, NMI 2, NMI 3 et
NMI 4, respectivement par les blocs un à quatre 11-1 à 11-
4 Chacune des micro-instructions une à quatre suivantes NMI 1 à *NMI 4 est une micro-instruction à exécuter à la suite d'une micro-instruction en cours d'exécution Les micro-instructions une à quatre suivantes NMI 1 à NMI 4
sont fournies à l'unité de commutation de blocs 12.
L'unité de commutation de blocs 12 reçoit un signal d'information de branchement BI qui sera décrit plus loin Sur la base du signal d'information de branchement BI, l'unité de commutation de blocs 12 choisit l'une des micro-instructions une à quatre suivantes NMI 51 à NMI 4 en tant que micro-instruction sélectionnée SMI En d'autres termes, l'unité de commutation de blocs 12 permet la commutation du dispositif de mémoire de commande 10 entre les blocs un à quatre 11-1 à 11-4 L'unité de commutation
de blocs 12 sert donc de dispositif de sélection de micro- instructions.
La micro-instruction sélectionnée SMI est fournie au registre de microinstructions 13 Le registre de micro-instructions 13 conserve la micro-instruction
sélectionnée SMI en tant que micro-instruction en cours.
En se référant à la figure 5, le registre de micro-
instructions 13 est divisé en six zones, à savoir, une zone code de micro-instruction 13-1, une zone classification de branchement 13-2, une zone sélection de conditions de branchement 13-3, des zones adresses une et deux d'une micro-instruction sur deux 13-4 et 13-5 et une zone sélection de modification d'adresse 13-6, qui sont également représentées à la figure 3 La zone code de
micro-instruction 13-1 sert à conserver un code de micro-
instruction La zone classification de branchement 13-2 sert à conserver l'information de classification de
branchement indiquant la classification d'un branchement.
La zone sélection de conditions de branchement 13-3 sert à conserver l'information de sélection des conditions de branchement indiquant une sélection de conditions de
branchement Les zones adresses une et deux d'une micro-
instruction sur deux 13-4 et 13-5 servent à conserver les première et seconde adresses d'une micro-instruction sur deux pour l'exécution d'une micro-instruction sur deux, deux pas après la micro-instruction en cours La zone sélection de modification d'adresse 13-6 sert à conserver l'information de sélection de modification d'adresse
indiquant si les adresses une et deux d'une micro-
instruction sur deux sont ou non modifiées.
En d'autres termes, chaque micro-instruction à utiliser dans le dispositif commandé par microprogramme se, compose du code de la micro-instruction, de l'information de classification de branchement, de l'information de sélection des conditions de branchement, des adresses une et deux d'unemicro-instruction sur deux et de l'information de sélection de modification d'adresse. Plus précisément, la zone classification de branchement 13-2 est une zone qui sert à conserver l'information indiquant la classification du branchement d'une micro-instruction ou l'information désignant un branchement parmi le branchement une voie, le branchement deux voies et le branchement quatre voies La zone sélection de conditions de branchement 13-3 est une zone qui sert à conserver l'information indiquant une sélection à partir d'une pluralité de signaux de conditions de branchement lorsque l'information dans la zone classification de branchement 13-2 désigne le branchement deux voies, et indiquant deux sélections à partir d'une pluralité de signaux de conditions de branchement lorsque l'information dans la zone classification de branchement 13-2 désigne le branchement
quatre voies La première zone adresse d'une micro-
instruction sur deux 13-4 est une zone servant à conserver l'information indiquant une adresse dans le cas d'un branchement une voie, une adresse du branchement O dans le cas du branchement deux voies, ou des adresses de branchement O et du branchement 2 dans le cas du branchement quatre voies La seconde zone adresse d'une micro-instruction sur deux 13-5 est une zone servant à conserver l'information indiquant une adresse du branchement 1 dans le cas du branchement deux voies ou des adresses du branchement 1 et du branchement 3 dans le cas du branchement quatre voies La zone sélection de modification d'adresse 13- 6 est une zone servant à conserver l'information indiquant si la première et la seconde adresses d'une micro-instruction sur deux dans les zones adresses une et deux d'une micro-instruction sur deux 13-4 et 13-5 sont ou non modifiées lorsque l'information dans la zone classification de branchement
13-2 désigne le branchement quatre voies.
En revenant de nouveau à la figure 3, le registre de micro-instructions 13 produit un signal de code de
micro-instruction indiquant le code de la micro-
instruction dans la zone code de micro-instruction 13-1.
Le signal de code de micro-instruction est fourni à une unité de traitement, telle qu'un additionneur (non montré) L'unité de traitement traite le signal de code de micro-instruction pour produire un signal de
conditions de branchement BCD Le registre de micro-
instructions 13 produit en outre un signal de classification de branchement BCF indiquant l'information de classification de branchement dans la zone classification de branchement 13-2, un signal de sélection de conditions de branchement BCF indiquant l'information de sélection des conditions de branchement dans la zone sélection de conditions de branchement 13-3, la première et la seconde adresses d'une microinstruction sur deux ESMI Al et ESMIA 2 dans les zones
adresses une et deux d'une micro-instruction sur deux 13-
4 et 13-5 et un signal de sélection de modification d'adresse AMS indiquant l'information de sélection de modification d'adresse dans la zone sélection de modification d'adresse 13-6. Le registre d'adresses de micro-instructions suivantes 14 conserve l'adresse de micro-instruction suivante NMIA pour les micro-instructions suivantes Le registre d'adresses de micro-instructions suivantes 14 fournit l'adresse de micro-instructions suivantes NMIA à l'unité de mémoire de commande 11 pour que l'unité de mémoire de commande 11 produise les micro-instructions une à quatre suivantes NMI 1 à NMI 4 Le registre d'adresses de micro-instructions suivantes 14 produit en outre une partie de l'adresse de micro-instruction suivante NMIA en tant que signal de commande de
branchement BCT.
En se référant à la figure 6, en plus de la figure
3, dans l'exemple représenté, chaque adresse d'une micro-
instruction sur deux comprise dans la micro-instruction consiste en treize bits qui sont disposés du bit 0, ou bit le plus significatif (MSB), au bit 12, ou bit le moins significatif (LSB) Onze bits dans l'adresse d'une micro-instruction sur deux, qui est la somme du bit O au bit 8, du bit 11 et du bit 12, sont utilisés comme adresse d'extraction pour les micro-instructions conservées dans l'unité de mémoire de commande 11 En
d'autres termes, le registre d'adresses de micro-
instructions suivantes 14 fournit l'adresse d'extraction dans l'adresse de micro-instruction suivante NMIA à l'unité de mémoire de commande 11 pour que l'unité de mémoire de commande 11 extraie les micro- instructions une à quatre NMI 1 à NMI 4 de l'adresse d'extraction Le registre d'adresses de micro-instructions suivantes 14 fournit à l'unité de commande de branchement 15 deux bits
du bit 9 et du bit 10 de l'adresse d'une micro-
instruction sur deux en tant que signal de commande de branchement BCT Le bit 9 et le bit 10 de l'adresse d'une micro-instruction sur deux sont utilisés pour effectuer les branchements une voie et deux voies Plus particulièrement, le bit 9 et le bit 10 de l'adresse d'une micro-instruction sur deux sont des bits remplacés par le signal de conditions de branchement lors de l'exécution du branchement quatre voies Le bit 10 de l'adresse d'une micro-instruction sur deux est un bit remplacé par le signal de conditions de branchement lors de l'exécution du branchement deux voies En d'autres termes, le bit 9 de l'adresse d'une micro-instruction sur deux est utilisé pour effectuer le branchement deux voies tandis que le bit 9 et le bit 10 de l'adresse d'une micro-instruction sur deux sont utilisés pour l'exécution du branchement une voie Le bit 7 de l'adresse d'une micro-instruction sur deux est un bit spécifique transformé en niveau logique " 1 " par le modificateur
d'adresses d'une micro-instruction sur deux 17.
En revenant à la figure 3, l'unité de commande de branchement 15 reçoit le signal de conditions de branchement BCD venant de l'unité de traitement L'unité de commande de branchement 15 reçoit aussi le signal de commande de branchement BCT venant du registre d'adresses de micro- instructions suivantes 14 L'unité de commande de branchement 15 reçoit aussi le signal de classification de branchement BCF et le signal de sélection de conditions de branchement BCS venant du registre de micro-instructions 13 L'unité de commande de branchement 15 transforme le signal de conditions de branchement BCD, le signal de commande de branchement BCT, le signal de classification de branchement BCF et le signal de sélection de conditions de branchement BCS en signal d'information de branchement BI, signal de sélection d'adresse AS et signal de modification d'adresse AM Le signal d'information de branchement BI indique une adresse pour l'un des blocs un à quatre 11-1 à 11-4 qui correspond à la micro-instruction concernée
par le branchement.
L'unité de commande de branchement 15 produit, en tant que signal de sélection d'adresse AS, un signal de
niveau logique " O " dans le cas d'un branchement une voie.
Dans le cas du branchement deux voies, l'unité de commande de branchement 15 produit, en tant que signal de sélection d'adresse AS, un signal de niveau logique " O " si le branchement est le branchement O tandis que l'unité de commande de branchement 15 produit, en tant que signal de sélection d'adresse AS, un signal de niveau logique " 1 " si le branchement est le branchement 1 Dans le cas d'un branchement quatre voies, l'unité de commande de branchement 15 produit, en tant que signal de sélection d'adresse AS, un signal de niveau logique " O " si le branchement est soit le branchement O soit le branchement 2 alors que l'unité de commande de branchement 15 produit, en tant que signal de sélection d'adresse AS, un signal de niveau logique " 1 " si le branchement est soit le branchement 1 soit le branchement 3 C'est-à- dire que le signal de sélection d'adresse AS a une valeur logique
donnée par le tableau 1.
Tableau 1
Signal de sélection d'adresse AS Branchement Branchement Branchement une voie deux voies quatre voies
Branch-Branch Branch B Branch Branch.
O O 1 O 1 O 1
L'unité de commande de branchement 15 produit, en tant que signal de modification d'adresse AM, un signal de niveau logique " 0 " lors de l'exécution soit du
branchement une voie soit du branchement deux voies.
L'unité de commande de branchement 15 produit, en tant que signal de modification d'adresse AM, un signal de niveau logique " 1 ", lors de l'exécution du branchement quatres voies C'est-à-dire que le signal de modification d'adresse AM a une valeur logique donnée par le tableau 2.
Tableau 2
Signal de modification d'adresse AM Branchement Branchement Branchement une voie deux voies quatre voies Le sélecteur d'adresses d'une micro-instruction sur deux 16 reçoit le signal de sélection d'adresse AS venant de l'unité de commande de branchement 15 Le sélecteur d'adresses d'une micro-instruction sur deux 16 reçoit
aussi la première et la seconde adresses d'une micro-
instruction sur deux ESMI Al et ESMIA 2 venant du registre de microinstructions 13 Le sélecteur d'adresses d'une micro-instruction sur deux 16 choisit, en tant qu'adresse de micro-instruction sélectionnée SMIA, l'une des prel ière et seconde adresses d'une micro-instruction sur deux ESMI Al et ESMIA 2 sur la base du signal de sélection
d'adresse AS'.
Plus précisément, le sélecteur d'adresses d'une micro-instruction sur deux 16 produit-la première adresse d'une micro-instruction sur deux ESMI Al en tant qu'adresse de micro-instruction sélectionnée SMIA lorsque le signal de sélection d'adresse AS a le niveau logique " O " Le sélecteur d'adresses d'une micro-instruction sur
deux 16 produit la seconde adresse d'une micro-
instruction sur deux ESMIA 2 en tant qu'adresse de micro-
instruction sélectionnée SMIA lorsque le signal de
sélection d'adresse AS a le niveau logique " 1 ".
Le modificateur d'adresses d'une micro-instruction sur deux 17 reçoit l'adresse de micro-instruction
sélectionnée SMIA du sélecteur d'adresses d'une micro-
instruction sur deux 16 Le modificateur d'adresses d'une microinstruction sur deux 17 reçoit aussi le signal de modification d'adresse AM venant de l'unité de commande de branchement 15 Le modificateur d'adresses d'une micro-instruction sur deux 17 reçoit en outre le signal de sélection de modification d'adresse AMS venant du registre de microinstructions 13 Le modificateur d'adresses d'une micro-instruction sur deux 17 modifie l'adresse de micro-instruction sélectionnée SMIA en une adresse de micro-instruction modifiée MMIA sur la base du signal de modification d'adresse AM et du signal de sélection de modification d'adresse AMS Le modificateur d'adresses d'une micro-instruction sur deux 17 fournit au registre d'adresses de micro-instructions suivantes 14 l'adresse de micro-instruction modifiée MMIA Par conséquent, le registre d'adresses de micro-instructions suivantes 14 conserve l'adresse de micro-instruction modifiée MMIA en tant qu'adresse de micro-instruction
suivante NMIA.
Plus particulièrement, le modificateur d'adresses d'une micro- instruction sur deux 17 n'apporte aucune modification d'adresse à l'adresse de micro-instruction sélectionnée SMIA lorsque le signal de modification d'adresse AM ou le signal de sélection de modification d'adresse AMS a le niveau logique " O " Le modificateur d'adresses d'une micro-instruction sur deux 17 apporte
une modification d'adresse à l'adresse de micro-
instruction sélectionnée SMIA lorsqu'à la fois le signal de modification d'adresse AM et le signal de sélection de modification d'adresse AMS ont le niveau logique " 1 " En
d'autres termes, le modificateur d'adresses d'une micro-
instruction sur deux 17 met au niveau logique " 1 " le bit
spécifique, à savoir le bit 7, de l'adresse de micro-
instruction sélectionnée SMIA, comme montré à la figure 7. Avec ce dispositif commandé par microprogramme, il est possible d'indiquer des jonctions et des séparations d'adresses pour l'exécution d'une microinstruction après le branchement quadridirectionnel en utilisant une paire des adresses d'une micro-instruction sur deux ESMI Al et ESMIA 2 et le signal de sélection de modification
d'adresse AMS.
En se référant aux figures 7 (a) à (d), la
description va concerner le fonctionnement pratique du
dispositif commandé par microprogramme décrit jusqu'ici
en se référant aux figures 3 à 6.
La figure 7 (a) montre un fonctionnement pratique du dispositif commandé par microprogramme On supposera que le registre de micro-instructions 13 conserve une instruction en cours ( 1) comprenant les première et seconde adresses d'une micro-instruction sur deux EAMIA 1 et EAMIA 2 qui indiquent respectivement des adresses en décimal de 128 et 512 respectivement En d'autres termes,
tous les bits de la première adresse d'une micro-
instruction sur deux EAMIA 1 sont égaux au niveau logique " O " sauf le bit 5 qui a le niveau logique " 1 " tandis que la seconde adresse d'une micro-instruction sur deux EAMIA 2 a tous ses bits égaux au niveau logique " O " sauf
le bit 3 de niveau logique " 1 ".
Cela étant, le sélecteur d'adresses d'une micro-
instruction sur deux 16 choisit, en tant qu'adresse de micro- instruction sélectionnée SMIA, la première adresse d'une micro- instruction sur deux EAMIA 1 de 128 en décimal lorsqu'un branchement est soit le branchement O soit le
branchement 2 Le sélecteur d'adresses d'une micro-
instruction sur deux 16 choisit, en-tant qu'adresse de micro- instruction sélectionnée SMIA, la seconde adresse d'une micro- instruction sur deux EAMIA 2 de 512 en décimal lorsqu'un branchement est soit le branchement 1 soit le branchement 3. Si la zone sélection de modification d'adresse 13-6 du registre de micro- instructions 13 produit le signal de sélection de modification d'adresse AMS du niveau logique " O ", le modificateur d'adresses d'une micro- instruction sur deux 17 produit l'adresse de micro-instruction modifiée MMIA indiquant soit l'adresse de 128 en décimal soit l'adresse de 512 en décimal, le microprogramme se branchant alors soit sur une micro-instruction ( 6) soit sur une micro-instruction ( 8). Si la zone sélection de modification d'adresse 13-6 du registre de micro-instruction 13 produit le signal de sélection de modification d'adresse AMS du niveau logique " 1 ", le modificateur d'adresses d'une micro-instruction sur deux 17 produit l'adresse de micro-instruction modifiée MMIA indiquant soit une adresse de 160 en décimal ou une adresse de 544 en décimal, le
microprogramme se branchant alors soit sur une micro-
instruction ( 7) soit sur une micro-instruction ( 9) Cela du fait que le bit 7 de l'adresse de micro-instruction sélectionnée SMIA a été passé au niveau logique " 1 " par le modificateur d'adresses d'une microinstruction sur
deux 17.
La figure 7 (b) montre un autre fonctionnement pratique du dispositif commandé par microprogramme On
fera les suppositions suivantes Le registre de micro-
instructions 13 conserve une instruction en cours ( 1)
comprenant les première et seconde adresses d'une micro-
instruction sur deux EAMIA 1 et EAMIA 2 qui indiquent respectivement les adresses en décimal de 128 et 512 La zone sélection de modification d'adresse 13-6 du registre de micro-instructions 13 est fixée dans le signal de sélection de modification d'adresse AMS de niveau logique " O ", c'est-à-dire que le modificateur d'adresses d'une micro-instruction sur deux 17 n'effectue pas de modification d'adresse Dans ce cas, le branchement passera à une micro-instruction ( 10) à laquelle l'accès se fait par l'adresse 128 en décimal lorsque le sélecteur d'adresse d'une micro-instruction sur deux 16 choisit, en tant qu'adresse de micro-instruction sélectionnée SMIA, la première adresse d'une micro-instruction sur deux EAMIA 1 de 128 en décimal après soit le branchement O soit le branchement 2 D'autre part, le branchement sera suivi par une micro-instruction ( 11) à laquelle l'accès se fait par l'adresse 512 en décimal lorsque le sélecteur d'adresses d'une microinstruction sur deux 16 choisit, en tant qu'adresse de micro-instruction sélectionnée SMIA, la seconde adresse d'une micro-instruction sur deux EAMIA 2 de 512 en décimal après soit le branchement 1, soit le branchement 3 En d'autres termes, les deux micro-instructions ( 2) et ( 4) circulent en même temps que
la micro-instruction ( 10) tandis que les deux micro-
instructions ( 3) et ( 5) circulent en même temps que la microinstruction ( 11). La figure 7 (c) montre encore un autre fonctionnement pratique du dispositif commandé par microprogramme Le registre de micro-instructions 13 conserve une instruction en cours ( 1) comprenant les première et seconde adresses d'une micro-instruction sur deux EAMIA 1 et EAMIA 2, toutes deux indiquant une adresse de 128 en décimal La zone sélection de modification d'adresse 13-6 du registre de micro-instructions 13 est fixée dans le signal de sélection de modification d'adresse AMS de niveau logique " 1 " En l'occurrence, le branchement sera suivi par une micro-instruction ( 12) à laquelle l'accès se fait par l'adresse 128 en décimal
après soit le branchement O soit le branchement 1.
D'autre part, le branchement passera à une micro-
instruction ( 13) à laquelle l'accès se fait par l'adresse de 160 en décimal après soit le branchement 2 soit le
branchement 3.
* La figure 7 (d) montre encore un autre fonctionnement pratique du dispositif commandé par microprogramme On fera les suppositions suivantes Le registre de micro-instructions 13 conserve une instruction en cours (i) comprenant les première et seconde adresses d'une micro-instruction sur deux EAMIA 1 et EAMIA 2, toutes deux indiquant une adresse de 128 en décimal La zone sélection de modification d'adresse 13-6 du registre de micro-instructions 13 est fixée dans le signal de sélection de modification d'adresse AMS de niveau logique " 0 " Dans ce cas, le branchement sera suivi par une micro-instruction ( 14) à laquelle l'accès se fait par l'adresse 128 en décimal après le branchement 0, le branchement 1, le branchement 2 et le branchement 3 En d'autres termes, toutes les micro-instructions ( 2),
( 3), ( 4) et ( 5) circulent en même temps que la micro-
instruction ( 14).
La description va maintenant concerner des calculs
selon des estimations approximatives afin d'expliciter la contribution du dispositif commandé par microprogramme, représenté à la figure 3, à la réduction de la taille de mémoire de l'unité de mémoire de commande 11 par rapport à l'unité de mémoire de commande 11 ' du dispositif commandé par microprogramme classique représenté à la
figure 1.
On fera les suppositions suivantes pour le dispositif commandé par microprogramme classique L'unité de mémoire de commande 11 ' a une taille de mémoire qui
est égale en nombre de mots à 3 kilomots ou 3 072 mots.
Le registre de micro-instructions 13 ' se compose de la zone code de micro-instruction 13 '-l, de la zone classification de branchement 13 '-1, et de la zone sélection de conditions de branchement 13 '-3, qui ont quatre-vingts bits de longueur, et des zones adresses une à c atre d'une micro-instruction sur deux 13 '-4 à 13 '-7, qui ont chacune une longueur de douze bits Par conséquent, l'unité de mémoire de commande 11 ' a une taille de mémoire qui est égale en nombre de bits à
( 3.072 x ( 12 x 4 + 80)) ou 393 216 bits.
On supposera également que chacune des unités de mémoire de commande 11 ' et hl conserve un microprogramme comprenant des micro-instructions dont 10 pour cent sont des micro-instructions debranchement quatre voies, dont pour cent, 15 pour cent, 15 pour cent et 30 pour cent occupent des branchements de la manière indiquée aux figures 7 (a), (b), (c) et (d) respectivement, et que les pour cent restants occupent des branchements o trois micro-instructions circulent ensemble Après le branchement quatre voies, le branchement peut en moyenne
se faire sur trois voies ou de manière tridirectionnelle.
Une description va être faite de la taille de mémoire d'une unité de mémoire de commande à utiliser
dans un dispositif commandé par microprogramme qui est similaire, quant à la structure et au fonctionnement, au dispositif commandé par microprogramme classique selon la
figure 1, sauf que les quatre zones adresses d'une micro-
instruction sur deux 13 '-4 à 13 '-7 du registre de micro-
instructions 13 ' sont réduites à deux zones adresses d'une microinstruction sur deux Cela étant, chaque micro-instruction a une longueur de 104 bits Toutefois, le microprogramme exploitable dans un tel dispositif commandé par microprogramme ne peut pas exécuter de branchements de la manière indiquée sur les figures 7 (b) et (d) et lorsque trois micro-instructions circulent ensemble Pour pouvoir exécuter les branchements de la manière indiquée sur les figures 7 (b) et (d) et lorsque trois micro-instructions circulent ensemble, le dispositif commandé par microprocesseur doit augmenter les micro- instructions de ( 3 K x 0,1 x 0,15 ( 2 x 3 >) ou 270 mots, ( 3 K x 0,1 x 0,15 x ( 2 x 3 >) ou 270 mots, et ( 3 K x 0,1 x 0,1 x ( 2 x 3)) ou 180 mots, respectivement, c'est-à-dire de 720 mots au total Il en résulte que l'unité de mémoire de commande d'un tel dispositif commandé par microprogramme doit avoir une taille de mémoire qui est égale en nombre de mots à un total de ( 3.072 + 720) ou 3 792 mots Par conséquent, l'unité de mémoire de commande d'un tel dispositif commandé par microprogramme a une taille de mémoire égale en nombre de bits à ( 3 792 x 104) ou 394 368 bits, ce qui équivaut approximativement à celle de l'unité de mémoire de
commande 11 '.
Dans le dispositif commandé par microprogramme représenté à la figure 3, chaque micro-instruction a une longueur de 105 bits En outre, le dispositif commandé par microprogramme doit augmenter la microinstruction de mots, seulement pour exécuter les branchements lorsque trois micro-instructions circulent ensemble Il en résulte que l'unité de mémoire de commande 11 doit avoir une taille de mémoire qui est égale au nombre de mots à un total de ( 3 072 + 180) ou 3 252 mots Par conséquent, l'unité de mémoire de commande 11 a une taille de mémoire égale en nombre de bits à ( 3 252 x 105) ou 341 460 bits, ce qui est inférieur d'environ 13 pour
cent à celle de l'unité de mémoire de commande 11 '.
Dans ces calculs selon des estimations approximatives décrites ci-dessus, les micro-instructions comportent des micro- instructions de branchement quatre voies à raison de 10 pour cent Plus ce pourcentage devient élevé, et plus la taille de mémoire de l'unité de mémoire de commande 11 deviendra petite En d'autres termes, il est possible de réduire la taille de mémoire de l'unité de mémoire de commande 11 lorsque l'unité de mémoire de commande 11 conserve le microprogramme qui peut exécuter un grand nombre de branchements multivoies
et de jonctions et séparations après les branchements.
En se référant à la figure 8, on va décrire un dispositif commandé par microprogramme selon un second mode de réalisation de cette invention Le dispositif commandé par microprogramme est exploitable sous la commande d'un microprogramme et comprend un dispositif de
mémoire de commande 10 a, un registre de micro-
instructions 13 a, un registre d'adresses de micro-
instructions suivantes 14, une unité de commande de
branchement 15 a et un modificateur d'adresse d'une micro-
instruction sur deux 17 a, qui sont similaires à ceux du dispositif commandé par microprogramme représenté à la figure 3, mais il ne comprend pas de sélecteur d'adresses d'une micro-instruction sur deux Dtune manière qui deviendra évidente, le mdicroprogramme peut se brancher sur l'un quelconque des branchements une voie, deux voies
et quatre voies.
Le dispositif de mémoire de commande i Qa comprend une unité de mémoire de commande lla et une unité de
commutation de blocs 12 qui sont similaires à celles du dispositif commandé par microprogramme représenté à la figure 3 L'unité de mémoire de commande lla se compose35 de quatre blocs, ou blocs un à quatre, lla-l, lla-2, lla-
3 et lla-4 et mémorise ou conserve une pluralité de micro-instructions qui composent le microprogramme Ainsi qu'on le verra, chacune des microinstructions conservées dans l'unité de mémoire de commande lla comprend une
seule adresse d'une micro-instruction sur deux.
Ainsi qu'on le verra, l'accès à l'unité de mémoire
de commande lia se fait par une adresse de micro-
instruction suivante NMIA pour produire simultanément les microinstructions une à quatre suivantes MMI 1, NMI 2,
NMI 3 et NMI 4 respectivement par les blocs un à quatre 11-
la à ll-4 a Chacune des micro-instructions une à quatre suivantes NMI 1 à NMI 4 est une micro-instruction à exécuter à la suite d'une microinstruction en cours d'exécution Les micro-instructions une à quatre suivantes NMI 1 à NMI 4 sont fournies à l'unité de commutation de blocs 12 L'unité de commutation de blocs 12 reçoit un signal d'information de branchement BI qui sera décrit plus loin Sur la base du signal d'information de branchement BI, l'unité de commutation de blocs 12 choisit l'une des micro-instructions une à
quatre suivantes NMI 1 à NMI 4, en tant que micro-
instruction sélectionnée SMI En d'autres termes, l'unité de commutation de blocs 12 permet la commutation du dispositif de mémoire de commande 1 Qa entre les blocs un à quatre lla-1 à lla-4 L'unité de commutation de blocs
12 sert donc de dispositif de sélection du micro-
instruction. La micro-instruction sélectionnée SMI est fournie au registre de micro-instructions 13 a Le registre de micro-instructions 13 a 'conserve la micro-instruction
sélectionnée SMI en tant que micro-instruction en cours.
En se référant à la figure 9, le registre de micro-
instructions 13 a est divisé en cinq zones, à savoir une zone code de micro-instruction 13 a-1, une zone classification de branchement 13 a-2, une zone sélection de conditions de branchement 13 a- 3, une zone adresse d'une micro-instruction sur deux 13 a-4 et une zone sélection de modification d'adresse 13 a-5, qui sont également représentées à la figure 8 La zone code de micro-instruction 13 a-1 sert à conserver un code de micro-instruction La zone classification de branchement 13 a-2 sert à conserver l'information de classification de
branchement indiquant la classification d'un branchement.
La zone sélection de conditions de branchement 13 a-3 sert à conserver l'information de sélection de conditions de branchement indiquant une sélection de conditions de branchement La zone adresse d'une microinstruction sur
deux 13 a-4 sert à conserver l'adresse d'une micro-
instruction sur deux pour l'exécution d'une micro-
instruction sur deux, deux pas après la micro-instruction en cours La zone sélection de modification d'adresse 13 a-5 sert à conserver l'information de sélection de modification d'adresse indiquant si l'adresse d'une
micro-instruction sur deux est ou non modifiée.
En revenant à la figure 8, le registre de micro-
instructions 13 a produit un signal de code de micro-
instruction indiquant le code de micro-instruction dans la zone code de micro-instruction 13 a-1 Le signal de code de micro-instruction est fourni à une unité de
traitement, telle qu'un additionneur (non montré).
L'unité de traitement transforme le signal de code de micro-instruction en un signal de conditions de branchement BCD Le registre demicro-instruction 13 a produit en outre un signal de classification de branchement BCF indiquant l'information de classification de branchement dans la zone classification de branchement 13 a-2, un signal de sélection de conditions de branchement BCS indiquant l'information de sélection de conditions de branchement dans la zone sélection de
conditions de branchement 13 a-4, l'adresse d'une micro-
instruction sur deux ESMA dans la zone adresse d'une micro-instruction sur deux 13 a-4, et un signal de sélection de modification d'adresse AMS indiquant l'information de sélection de modification d'adresse dans
la zone sélection de modification d'adresse 13 a-5.
Le registre d'adresses de micro-instructions suivantes 14 conserve l'adresse de micro-instruction suivante NMIA pour les micro- instructions suivantes Le registre d'adresses de micro-instructions suivantes 14 fournit l'adresse de micro-instruction suivante NMIA à l'unité de mémoire de commande lla pour que l'unité de mémoire de commande lla produise les micro-instructions une à quatre suivantes NM Il à NMI 4 Le registre d'adresses de micro-instructions suivantes 14 produit en outre une partie de l'adresse de micro-instruction suivante NMIA en tant que signal de commande de
branchement BCT.
On supposera que l'adresse d'une micro-instruction sur deux se compose de treize bits Dans l'adresse d'une micro-instruction sur deux, les bits 6 et 7 sont deux bits spécifiques prédéterminés modifiés par le modificateur d'adresse d'une micro-instruction sur deux 17 a. L'unité de commande de branchement 15 reçoit le signal de conditions de branchement BCD venant de l'unité de traitement L'unité de commande de branchement 15 a reçoit aussi le signal de commande de branchement BCT verr:nt du registre d'adresses de micro-instructions suivantes 14 L'unité de commande de branchement 15 a reçoit en outre le signal de classification de branchement BCF et le signal de sélection de conditions
de branchement BCS venant du registre de micro-
instructions 13 a L'unité de commande de branchement 15 a transforme le signal de conditions de branchement BCD, le signal de commande de branchement BCT, le signal de classification de branchement BCF et le signal de sélection de conditions de branchement BCS en un signal d'information de branchement BI et en un signal de modification d'adresse A Ma Le signal d'information de branchement BI indique une adresse pour l'un des blocs un
à quatre lla-1 à lla-4, qui correspond à la micro-
instruction concernée par le branchement.
L'unité de commande de branchement 15 a produit un signal de niveau logique " 10 " en tant que signal de modification d'adresse A Ma lors de l'exécution du branchement une voie L'unité de commande de branchement 15 a produit un signal de niveau logique " 1 "' en tant que signal de modification d'adresse A Ma lors de l'exécution
soit du branchement deux voies soit du branchement quatre voies, c'està-dire que le signal de modification d'adresse A Ma a une valeur logique donnée par le tableau5 3.
TABLEAU 3
Signal de modification d'adresse A Ma Branchement Branchement Branchement une voie deux voies quatre voies 0 i i Bien que l'invention ait été particulièrement montrée et décrite en se référant à deux modes de réalisation préférés de celle-ci, il sera aisément compris par les personnes expérimentées dans cette technique que d'autres modes de réalisation de cette invention peuvent être réalisés sans sortir de l'esprit
et du domaine de l'invention Par exemple, chaque micro-
instruction peut comprendre une ou plusieurs adresses d'une microinstruction sur deux, qui sont inférieures en nombre au nombre maximal de branchements disponibles pour
le microprogramme.

Claims (4)

REVENDICATIONS
1 Dispositif commandé par microprogramme exploitable sous la commande d'un microprogramme et comprenant: un dispositif de mémoire de commande ( 10) comportant une unité de mémoire de commande ( 11) pour mémoriser une pluralité de micro-instructions qui
composent ledit microprogramme, chacune desdites micro-
instructions comprenant une pluralité d'adresses d'une micro-instruction sur deux pour les micro-instructions à exécuter deux pas après une microinstruction en cours d'exécution, une information de classification de branchement indiquant la classification d'un branchement, une information de sélection de conditions de branchement indiquant une sélection de conditions de branchement, et une information de sélection de modification d'adresse indiquant si lesdites adresses d'une micro- instruction sur deux sont ou non modifiées, lesdites adresses d'une micro-instruction sur deux représentant un nombre inférieur au nombre maximum de branchements disponibles pour ledit microprogramme, ladite unité de mémoire de commande ( 11) produisant simultanément une pluralité de micro-instructions suivantes en réponse à une adresse de micro-instruction suivante, ledit dispositif de mémoire de commande ( 10) comprenant un moyen de sélection de
micro-instructions ( 12) pour choisir, en tant que micro-
instruction sélectionnée (SMI) l'une desdites micro-
instructions suivantes sur la base d'un signal d'information de branchement (BI); un moyen de conservation de micro-instructions ( 13) connecté audit dispositif de mémoire de commande ( 10), pour conserver ladite micro-instruction sélectionnée (SMI) en tant que ladite micro-instruction en cours, ledit moyen de conservation de micro-instructions 13) produisant lesdites adresses d'une micro-instruction sur deux, un signal de classification de branchement (BCF) indiquant ladite information de classification de branchement, un signal de sélection de conditions de branchement (BCS) indiquant ladite information de sélection de conditions de branchement, et un signal de sélection de modification d'adresse (AMS) indiquant ladite information de sélection de modification d'adresse;
un moyen de conservation d'adresses de micro-
instructions suivantes ( 14), connecté audit dispositif de mémoire de commande ( 10), pour conserver ladite adresse
de micro-instruction suivante pour l'exécution des micro-
instructions suivantes à la suite de ladite micro-
instruction en cours, ledit moyen de conservation d'adresses de micro-instructions suivantes ( 14) fournissant ladite adresse de micro-instruction suivante à ladite unité de mémoire de commande ( 11) pour permettre à ladite unité de mémoire de commande ( 11) de produire lesdites micro-instructions suivantes, ledit moyen de conservation d'adresses de micro-instructions suivantes
( 14) produisant une partie de ladite adresse de micro-
instruction suivante en tant que signal de commande de branchement (BCT); un moyen de commande de branchement ( 15) recevant un signal de conditions de branchement (BCD) et connecté audit moyen de conservation de micro-instructions ( 13),
audit moyen de conservation d'adresses de micro-
instructions suivantes ( 14) et audit dispositif de mémoire de commande ( 10), pour transformer ledit signal de conditions de branchement (BCD), ledit signal de commande de branchement (BCT), ledit signal de classification de branchement (BCF) et ledit signal de sélection de conditions de branchement (BCS), en ledit signal d'information de branchement (BI), en signal de sélection d'adresse (AS) et en signal de modification d'adresse (AM);
un moyen de sélection d'adresses d'une micro-
instruction sur deux ( 16), connecté audit moyen de conservation de micro-instructions ( 13) et audit moyen de commande de branchement ( 15) pour choisir, en tant
qu'adresse de micro-instruction sélectionnée (SMIA).
L'une desdites adresses d'une micro-instruction sur deux sur la base dudit signal de sélection d'adresse (AS); et
un moyen de modification d'adresse d'une micro-
instruction sur deux ( 17), connecté audit moyen de sélection d'adresse d'une micro-instruction sur deux ( 16), audit moyen de commande de branchement ( 15), audit moyen de conservation de micro-instructions ( 13) et audit moyen de conservation d'adresses de micro-instructions
suivantes ( 14), pour modifier ladite adresse de micro-
instruction sélectionnée (SMIA) en une adresse de micro-
instruction modifiée (MMIA) sur la base dudit signal de modification d'adresse (AM) et dudit signal de sélection de modification d'adresse (AMS), ledit moyen de modification d'adresse d'une micro- instruction sur deux ( 17) fournissant audit moyen de conservation d'adresses de micro-instructions suivantes ( 14) ladite adresse de
micro-instruction modifiée (MMIA).
2 Dispositif commandé par microprogramme selon la revendication 1, dans lequel ledit moyen de modification d'adresses d'une micro-instruction sur deux ( 17) modifie ladite adresse de micro-instruction
sélectionnée (SMIA) en ladite adresse de micro-
instruction modifiée (MMIA) en fixant une valeur prédéterminée à un bit spécifique de ladite adresse de
micro-instruction sélectionnée (SMIA).
3 Dispositif commandé par microprogramme selon la revendication 1, dans lequel ladite unité de mémoire
de commande ( 11) produit simultanément lesdites micro-
instructions suivantes qui sont égales en nombre à quatre, chacune desdites micro-instructions comprenant lesdites zones adresses d'une micro-instruction sur deux
qui sont égales en nombre à deux.
4 Dispositif commandé par microprogramme exploitable sous la commande d'un microprogramme et comprenant: un dispositif de mémoire de commande ( 1 ia) comportant une unité de mémoire de commande (lia) pour mémoriser une pluralité de micro-instructions qui
composent ledit microprogramme, chacune desdites micro-
instructions comprenant une adresse d'une micro-
instruction sur deux pour les micro-instructions à exécuter deux pas après une micro-instruction en cours d'exécution, une information de classification de branchement indiquant une classification d'un branchement, une information de sélection de conditions de branchement indiquant une sélection de conditions de branchement, et une information de sélection de modification d'adresse indiquant si ladite adresse d'une micro- instruction sur deux est ou non modifiée, ladite unité de mémoire de commande (lia) produisant simultanément une pluralité d'instructions suivantes en réponse à une adresse de micro-instruction suivante, ledit dispositif de mémoire de commande (i Qa) comprenant un moyen de sélection de micro-instructions ( 12) pour choisir, en tant que micro-instruction sélectionnée (SMI) l'une desdites micro-instructions suivantes sur la base d':I signal d'information de branchement (BI); un moyen de conservation de micro-instructions ( 13 a), connecté audit dispositif de mémoire de commande ( 10 a), pour conserver ladite micro-instruction sélectionnée (SMI) en tant que ladite micro-instruction
en cours, ledit moyen de conservation de micro-
instructions ( 13 a) produisant ladite adresse d'une micro-
instruction sur deux, un signal de classification de branchement (BCF) indiquant ladite information de classification de branchement, un signal de sélection de conditions de branchement (BCS) indiquant ladite information de sélection de conditions de branchement, et un signal de sélection de modification d'adresse (AMS) indiquant ladite information de sélection de modification d'adresse;
un moyen de conservation d'adresses de micro-
instructions suivantes ( 14), connecté audit dispositif de mémoire de commande ( 10 a), pour conserver ladite adresse
de micro-instruction suivante pour l'exécution des micro- instructions suivantes à la suite de ladite micro-
instruction en cours, ledit moyen de conservation d'adresses de micro-instructions suivantes ( 14) fournissant ladite adresse de micro-instruction suivante à ladite unité de mémoire de commande (lia) pour permettre à ladite unité de mémoire de commande (lla) de produire lesdites micro-instructions suivantes, ledit moyen de conservation d'adresses de micro-instruction
( 14) produisant une partie de ladite adresse de micro-
instruction suivante en tant que signal de commande de branchement (BCT); un moyen de commande de branchement ( 15 a) recevant un signal de conditions de branchement (BCD) et connecté audit moyen de conservation de micro-instructions ( 13 a),
audit moyen de conservation d'adresses de micro-
instructions suivantes ( 14) et audit dispositif de mémoire de commande (l Oa) pour transformer ledit signal de conditions de branchement (BCD), ledit signal de commande de branchement (BCT), ledit signal de classification de branchement (BCF) et ledit signal de sélection de conditions de branchement (BCS) en ledit signal d'information de branchement (BI) et un signal de modification d'adresse (A Ma); et
un moyen de modification d'adresse d'une micro-
instruction sur deux ( 17 a), connecté audit moyen de commande de branchement ( 15 a), audit moyen de conservation de micro- instruction ( 13 a) et audit moyen de conservation d'adresses de micro- instructions suivantes ( 14), pour modifier ladite adresse de micro- instruction sur deux en une adresse de micro-instruction modifiée (MMIA) sur la base dudit signal de modification d'adresse (A Ma) et dudit signal de sélection de modification d'adresse (AMS), ledit moyen de modification d'adresse d'une micro-instruction sur deux ( 17 a) fournissant audit moyen de conservation d'adresses de micro-instructions
suivantes ( 14) ladite adresse de micro-instruction modifiée (MMIA).
Dispositif commandé par microprogramme selon la revendication 4, dans lequel ledit moyen de 36 modification d'adresse d'une micro-instruction sur deux ( 17 a) modifie ladite adresse d'une micro- instruction sur deux en ladite adresse de micro-instruction modifiée (MMIA) en modifiant des bits spécifiques prédéterminés de ladite adresse d'une micro-instruction sur deux.
FR9205168A 1991-04-26 1992-04-27 Dispositif commande par microprogramme comprenant un dispositif de memoire de commande de taille reduite. Expired - Fee Related FR2675920B1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3123098A JPH04328634A (ja) 1991-04-26 1991-04-26 マイクロプログラム制御装置

Publications (2)

Publication Number Publication Date
FR2675920A1 true FR2675920A1 (fr) 1992-10-30
FR2675920B1 FR2675920B1 (fr) 1994-12-09

Family

ID=14852156

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9205168A Expired - Fee Related FR2675920B1 (fr) 1991-04-26 1992-04-27 Dispositif commande par microprogramme comprenant un dispositif de memoire de commande de taille reduite.

Country Status (3)

Country Link
US (1) US5297264A (fr)
JP (1) JPH04328634A (fr)
FR (1) FR2675920B1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2710992A1 (fr) * 1993-10-05 1995-04-14 Nec Corp Contrôleur de microprogramme.

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5471597A (en) * 1993-12-23 1995-11-28 Unisys Corporation System and method for executing branch instructions wherein branch target addresses are dynamically selectable under programmer control from writable branch address tables

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3958227A (en) * 1974-09-24 1976-05-18 International Business Machines Corporation Control store system with flexible control word selection
US4057850A (en) * 1974-11-26 1977-11-08 Fujitsu Limited Processing link control device for a data processing system processing data by executing a main routine and a sub-routine
WO1986005015A1 (fr) * 1985-02-20 1986-08-28 Magellan Corporation (Australia) Pty. Ltd. Controleur de microprogrammes

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4062058A (en) * 1976-02-13 1977-12-06 The United States Of America As Represented By The Secretary Of The Navy Next address subprocessor
US4155120A (en) * 1977-12-01 1979-05-15 Burroughs Corporation Apparatus and method for controlling microinstruction sequencing by selectively inhibiting microinstruction execution
US4338661A (en) * 1979-05-21 1982-07-06 Motorola, Inc. Conditional branch unit for microprogrammed data processor
US4430706A (en) * 1980-10-27 1984-02-07 Burroughs Corporation Branch prediction apparatus and method for a data processing system
EP0109655B1 (fr) * 1982-11-17 1991-07-24 Nec Corporation Dispositif de pré-extraction d'instructions avec prédiction d'adresse de destination de branchement
US4764861A (en) * 1984-02-08 1988-08-16 Nec Corporation Instruction fpefetching device with prediction of a branch destination for each branch count instruction
JPS60239831A (ja) * 1984-05-15 1985-11-28 Nec Corp マイクロプログラム制御装置
US5008807A (en) * 1984-07-05 1991-04-16 Texas Instruments Incorporated Data processing apparatus with abbreviated jump field
US4679141A (en) * 1985-04-29 1987-07-07 International Business Machines Corporation Pageable branch history table
JPH01169535A (ja) * 1987-12-24 1989-07-04 Toshiba Corp マイクロブランチ制御方式
JPH0242536A (ja) * 1988-08-03 1990-02-13 Hitachi Ltd 遅延分岐のあるマイクロプログラムのマイクロコード生成方法
JPH0290324A (ja) * 1988-09-28 1990-03-29 Toshiba Corp マイクロプログラム制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3958227A (en) * 1974-09-24 1976-05-18 International Business Machines Corporation Control store system with flexible control word selection
US4057850A (en) * 1974-11-26 1977-11-08 Fujitsu Limited Processing link control device for a data processing system processing data by executing a main routine and a sub-routine
WO1986005015A1 (fr) * 1985-02-20 1986-08-28 Magellan Corporation (Australia) Pty. Ltd. Controleur de microprogrammes

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
S.KOPEC, C. LYTLE: "Standalone Microsequenser", MICROPROCESSORS AND MICROSYSTEMS, vol. 12, no. 2, March 1988 (1988-03-01), LONDON GB, pages 101 - 106 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2710992A1 (fr) * 1993-10-05 1995-04-14 Nec Corp Contrôleur de microprogramme.

Also Published As

Publication number Publication date
FR2675920B1 (fr) 1994-12-09
US5297264A (en) 1994-03-22
JPH04328634A (ja) 1992-11-17

Similar Documents

Publication Publication Date Title
FR2489555A1 (fr) Systeme de traitement de donnees a commande par pipeline
EP0022004B1 (fr) Procédé pour la commande de rapprochement à effectuer entre des entités logiques de référence et des entités logiques issues d'un fichier
FR2489578A1 (fr) Structure d'organisation pour memoire tampon
EP0089876A1 (fr) Procédé et dispositif de protection d'un logiciel livré par un fournisseur à un utilisateur
FR2608807A1 (fr) Systeme multiprocesseur et procede d'equilibrage de charge pour ledit systeme
CH629320A5 (fr) Installation de traitement de donnees.
CH629319A5 (fr) Installation de traitement de donnees.
FR2724074A1 (fr) Enregistreur numerique de sons compresses.
FR2549258A1 (fr) Procede de commande pour transfert de donnees
EP0006478A1 (fr) Dispositif programmable de verrouillage de signaux de commande dans un système de traitement de données
FR2675920A1 (fr) Dispositif commande par microprogramme comprenant un dispositif de memoire de commande de taille reduite.
FR2536884A1 (fr) Reseau de transfert de donnees entre plusieurs processeurs et une memoire
FR2733065A1 (fr) Procede et circuit de lecture anticipee d'instrutions/ donnees utilisant un cache de lecture anticipee non consulte
FR2817688A1 (fr) Systeme de transmission a haute vitesse ayant un faible retard
FR2811784A1 (fr) Dispositif de gestion de memoire permettant l'inscription de blocs de donnees par substitution
EP1803061A1 (fr) Systeme de processeur parallele reconfigurable, modulaire et hierarchique
BE897608A (fr) Echangeur d'intervalles de temps
FR2587519A1 (fr) Agencement de changement de mode permettant de changer selectivement des modes d'exploitation d'un systeme de machine virtuelle
FR2574974A1 (fr) Procede et appareil d'enregistrement et de reproduction de signaux numeriques codes
EP1027643B1 (fr) Microprocesseur pipeline a saut conditionnel en un cycle d'horloge
EP0733977B1 (fr) Système informatique avec mémoires hiérarchisées
EP1591866B1 (fr) Contrôle de l'exécution d'un algorithme par un circuit intégré
EP1436694B1 (fr) Microprocesseur disposant d'un espace adressable etendu
EP3716086A1 (fr) Accès direct en mémoire
FR3089317A1 (fr) Procédé de gestion de l’espace mémoire d’un dispositif de mémoire et système correspondant

Legal Events

Date Code Title Description
ST Notification of lapse