FR2824154A1 - Procede et dispositif pour generer des mots d'instruction pour la commande d'unites fonctionnelles dans un processeur - Google Patents
Procede et dispositif pour generer des mots d'instruction pour la commande d'unites fonctionnelles dans un processeur Download PDFInfo
- Publication number
- FR2824154A1 FR2824154A1 FR0201754A FR0201754A FR2824154A1 FR 2824154 A1 FR2824154 A1 FR 2824154A1 FR 0201754 A FR0201754 A FR 0201754A FR 0201754 A FR0201754 A FR 0201754A FR 2824154 A1 FR2824154 A1 FR 2824154A1
- Authority
- FR
- France
- Prior art keywords
- instruction
- word
- instruction word
- memory
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 24
- 230000015654 memory Effects 0.000 claims abstract description 74
- 238000013519 translation Methods 0.000 claims abstract description 5
- 238000012545 processing Methods 0.000 claims description 34
- 230000015572 biosynthetic process Effects 0.000 claims description 4
- 238000003786 synthesis reaction Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 2
- 238000006467 substitution reaction Methods 0.000 claims description 2
- 108090000623 proteins and genes Proteins 0.000 claims 2
- 238000011161 development Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04G—SCAFFOLDING; FORMS; SHUTTERING; BUILDING IMPLEMENTS OR AIDS, OR THEIR USE; HANDLING BUILDING MATERIALS ON THE SITE; REPAIRING, BREAKING-UP OR OTHER WORK ON EXISTING BUILDINGS
- E04G21/00—Preparing, conveying, or working-up building materials or building elements in situ; Other devices or measures for constructional work
- E04G21/02—Conveying or working-up concrete or similar masses able to be heaped or cast
- E04G21/04—Devices for both conveying and distributing
- E04G21/0418—Devices for both conveying and distributing with distribution hose
- E04G21/0436—Devices for both conveying and distributing with distribution hose on a mobile support, e.g. truck
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04G—SCAFFOLDING; FORMS; SHUTTERING; BUILDING IMPLEMENTS OR AIDS, OR THEIR USE; HANDLING BUILDING MATERIALS ON THE SITE; REPAIRING, BREAKING-UP OR OTHER WORK ON EXISTING BUILDINGS
- E04G21/00—Preparing, conveying, or working-up building materials or building elements in situ; Other devices or measures for constructional work
- E04G21/02—Conveying or working-up concrete or similar masses able to be heaped or cast
- E04G21/04—Devices for both conveying and distributing
- E04G21/0418—Devices for both conveying and distributing with distribution hose
- E04G21/0445—Devices for both conveying and distributing with distribution hose with booms
- E04G21/0463—Devices for both conveying and distributing with distribution hose with booms with boom control mechanisms, e.g. to automate concrete distribution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/3017—Runtime instruction translation, e.g. macros
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Structural Engineering (AREA)
- Civil Engineering (AREA)
- Mechanical Engineering (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Procédé selon lequel :les mots d'instruction se composent de plusieurs parties pour commander une unité fonctionnelle, avant un déroulement de programme, et provenant d'une traduction d'un code programme.Un mot de programme prend un mot d'instruction dans une ligne déterminée par un numéro de ligne de lecture dans une mémoire de mots d'instruction inscrite ligne par ligne. Ce mot est modifié par substitution d'une partie de mot d'instruction par la partie d'information du mot de programme respectif et est réinscrit dans une ligne déterminée.Les numéros de ligne de lecture sont fournis par un registre d'index de lecture (18) et les numéros de ligne d'écriture, par un registre d'index d'écriture (19), et pour chaque mot de programme (17), on émet un numéro de ligne de lecture et de ligne d'écriture.
Description
La présente invention concerne un procédé pour générer des mots
d'instruction pour la commande d'unités fonctionnelles dans un processeur, selon lequel: les mots d'instruction se composent de plusieurs parties de mot s d'instruction et chaque partie de mot d'instruction commande une unité fonctionnelle, avant un déroulement de programme, une suite de mots d'instruction primaires provenant d'une traduction d'un code programme subit un fractionnement en mots de programme et, selon lequel, lors du déroulement du programme, un mot de programme qui présente une par o tie d'information ayant au moins la largeur d'une partie de mot d'instruction, prend de manière commandée un mot d'instruction dans une ligne déterminée par un numéro de ligne de lecture dans une mé moire de mots d'instruction inscrite ligne par ligne, et ce mot est modifié par substitution d'une partie de mot d'instruction par la partie s d'information du mot de programme respectif et est réinscrit dans une li gne déterminée de la mémoire de mots d'instruction selon un numéro de ligne d'écriture et après avoir généré de cette manière un mot d'instruction corre sp o ndant au mot d' instruction prim aire à traiter, ce mot d'instructio n
est émis pour commander des unités fonctionnelles.
o L'invention concerne en outre un dispositif pour la mise en
oeuvre du procédé ci-dessus.
Selon le document DE 198 59 389 Cl, on connaît un pro cédé du type défini ci-dessus et un dispositif pour commander des unités
fonctionnelles dans un processeur.
Dans cette solution connue, un mot de programme contient no n s euleme nt la p artie d'information mais au m oins également des in formations concernant les numéros d'écriture et de lecture. Cela signifie des mots de programme étendus, qui d'une part limitent la vitesse de traitement des données concernées à cause du traitement et du décodage so nécessaires des informations de commande. D'autre part, la largeur de données importante nécessite des ctrcuits très développés pour le traite
ment des programmes, dans la réalisation du processeur.
La présente invention a pour but de diminuer la largeur de données du mot de programme à traiter, pour réduire les circuits et ainsi
ss le coût de réalisation du processeur à niveau faible.
Ce problème est résolu par un procédé du type défini ci dessus, caractérisé en ce que les numéros de ligne de lecture sont fournis par un registre d'index de lecture et les numéros de ligne d'écriture par un registre d'index d'écriture, et pour chaque mot de programme, on émet un numéro de ligne de lecture et de ligne d'écriture et, une suite de numéros successifs de ligne de lecture et de ligne d'écriture est définie par le conte
nu d'un registre de longueur de bloc.
s Ce problème est également résolu par un dispositif pour gé nérer des mots d'instruction pour commander des unités fonctionnelles dans un processeur comportant les unités fonctionnelles, avec une mé moire de mots d'instruction associée à ces unités fonctionnelles et une mémoire tampon de mot d'instruction pour enregistrer des mots o d'instruction déjà gérés et ayant une largeur au moins égale à la largeur de bit du mot d'instruction, la mémoire tampon de mot d'instruction se composant d'une mémoire avec accès sélectionné ou programmé de ma nière fxe ligne par ligne, caractérisé en ce qu'une unité génératrice est as
sociée à la mémoire de mots d'instruction.
s Il est également résolu par un dispositif caractérisé en ce que l'unité génératrice comporte un registre de longueur de bloc, un re gistre d'index de lecture et un registre d'index d'écriture, un comp teur/décompteur d'index de lecture étant associé au registre d'index de lecture et un compteur/décompteur d'index d'écriture étant associé au o registre d'index d'écriture, ces registres ayant des propriétés de comptage
en anneau pour définir le contenu du registre de longueur de bloc.
Ainsi, on fournit pour le traitement d'un mot de pro gramme, les informations de commande, et de lecture/écriture, nécessai res p ar un registre d' index de le cture dans lequel s ont enregistrés le s s numéros des lignes de lecture et par un registre d'index d'écriture qui
contient les numéros des lignes d'écriture.
De façon avantageuse, on réunit un nombre aussi impor tant que possible d'instructions à traiter, successivement dans la mémoire de mots d'instruction et on les enregistre pour les regrouper en blocs. Ain si le registre d'index de lecture et le registre d'index d'écriture peuvent être réglés à la manière d'un compteur en anneau avec le nombre de numéros successifs de lignes d'écriture et de lecture. Ce nombre est fourni par le
contenu d'un registre de longueur de bloc.
Selon un développement particulier du procédé de 3s l'invention, le mot de programme comporte un bit de mise à l'état qui, lorsqu'il est activé est exposé à la génération de mot d'instruction et rem place le contenu du registre d'index de lecture et/ou du registre d'index d'écriture et/ou du registre de longueur de bloc par le contenu de la partie d'information du mot de programme et lorsque le bit de mise à l'état est à
l'état inactif, il génère le mot d'instruction.
Grâce à cette solution, on reconnâît les informations néces-
saires pour le registre d'index de lecture, le registre d'index d'écriture et le registre de longueur de bloc pour le traitement d'un autre bloc des mots d'instruction, on décode et on ne continue pas le traitement comme un
mot de programme. Cela permet de prérégler ces registres.
Ainsi, comme chaque fois on aborde la ligne de la mémoire de mots d'instruction pour générer le mot d'instruction correspondant au o mot d'instruction primaire par la succession des mots de programme, et
qui contient le mot d'instruction qui subira les modifications les moindres.
On peut également sélectionner une écriture plus favorable
pour la suite de la succession de mots d'instruction. Si par exemple plu-
sieurs mots de programme sont nécessaires pour générer le mot s d'instruction correspondant au mot d'instruction primaire, c'est-à-dire s'il faut effectuer plusieurs étapes intermédiaires, il peut être intéressant à chaque étape intermédiaire de lire dans la même ligne et d'inscrire de nouveau dans celle-ci. Le registre d'index de lecture et le registre d'index d'écriture sont ainsi arrêtés, ce que peuvent déterminer les réglages des
registres.
Ensuite, il peut être avantageux de laisser se développer, les numéros des lignes d'écriture et des lignes de lecture en commençant chaque fois à un certain numéro dans le sens montant et dans le sens descendant et suivant un taux de répétition déterminé. Cela peut égale
ment se faire avec un nouveau réglage.
Selon un développement complémentaire du procédé de l'invention, lorsque le bit de mise à l' état du mot de programme est à l' état actif, on enregistre le contenu de la partie d'information dans le registre d'index de lecture, dans le registre d'index d'écriture et dans le registre de
longueur de bloc.
Un développement avantageux du procédé de l'invention prévoit de diviser la mémoire de mots d'instruction en un premier côté de mémoire de mots d'instruction et un second côté de mémoire de mots d'instruction avec chaque fois la même numérotation des lignes et pour la synthèse du mot d'instruction, on détermine le côté de mémoire de mots
d'instruction qu'il faut appeler à partir du contenu d'un registre de côtés.
Dans cette réalisation, les différents groupements de la mémoire de mots d'instruction, les côtés des mémoires de mot d'instruction sont adressés par le contenu du registre de côtés et dans ces côtés de mémoire de mots d'instruction, on effectue un adressage de ligne ave c en synchronisme l' index du registre d e le cture et l' index du registre d'écriture. Ainsi, on construit et on traite par blocs les mots d'instruction dans les côtés respectifs des mémoires d'instruction et leur sélection est faite seulement par l'indication du contenu de mémoire de côtés ayant la plus petite largeur de bits et non avec l'adressage de la va leur initiale de l'index de lecture et de l'index d'écriture, pour lesquels il
o faut des largeurs de bits plus importantes.
Le problème selon l'invention est également résolu en ce que la mémoire de mots d'instruction est subdivisée en un premier côté et un second côté de mot d'instruction et, pour la synthèse du mot d'instruction, on détermine le côté qu'il faut appeler dans la mémoire de
s mots d'instruction à partir du contenu d'un registre de côtés.
Cela permet méme pour une conception pour laquelle les numéros des lignes d'écriture et de lecture sont contenus dans les mots de programme, de réduire la largeur des mots de programme, car notamment pour un grand nombre de lignes dans la mémoire de mots d'instruction, on réduira la taille des numéros de ligne par la division des côtés et ainsi les informations correspondantes dans le mot de programme seront plus réduites. Un autre développement avantageux du procédé de l'invention prévoit qu'un signal d'interruption déclenche dans le proces s seur, pendant le traitement d'une première tâche d'un côté de mémoire de mots d'instruction, un enregistrement intermédiaire d'un état de travail quitté de la première tâche dans la mémoire globale et ensuite on déclen che le traitement d'une seconde tâche sur le premier côté non traité de la mémoire de mots d'instruction ou du second côté de la mémoire d'instruction, immédiatement et à la fin de la seconde tâche, après réenre gistrement, on poursuit à partir de la mémoire globale, au niveau de trai
tement qui a été quitté, la première tâche.
Cette solution selon l'invention assure que les tâches à traiter rapidement, ayant une priorité élevée, et que doit effectuer le pro 3s cesseur, soient avantageusement intégrées, sans retard et avec des moyens d'adressage et de mise en mémoire intermédiaires, réduits, dans
l'ensemble du traitement du mot de programme.
s Un premier développement du procédé de l'invention prévoit une unité de pré-saisie qui commande la construction de la mémoire de mots d'instruction et cette unité de pré-saisie fournit, indépendamment de l'état de traitement de la tâche actuelle, un mot d'instruction supplémen s taire dans une ligne non utilisée de la mémoire de mots d'instruction ou dans une mémoire de mots d'instruction supplémentaire, si lors du trai
tement d'une tâche actuelle, aucun mot d'instruction nouveau n'arrive.
Cette solution garantit que le traitement des mots d'instruction se fait avec des retards réduits au minimum lors de la four o niture de nouveaux mots d'instruction en ce qu'au cours des temps d'attente pour enregistrer un nouveau mot d'instruction dans la mémoire d'instruction, l'unité de pré-saisie utilise ce temps pour traiter un mot de programme suivant, disponible pour le traitement et de fournir un mot d'instruction nouvellement généré à une zone particulière de la mémoire
s d'instruction pour le traitement du mot d'instruction.
Un développement du dispositif selon l'invention prévoit
une unité génératrice associée à la mémoire de mots d'instruction.
Un autre développement du dispositif selon l'invention pré voit dans l'unité génératrice, un registre de longueur de bloc, un registre d'index de lecture et un registre d'index d'écriture et on associe au registre d'index de lecture, un compteur/décompteur d'index de lecture et au re gistre d'index d'écriture, un compteur/décompteur d'index d'écriture, auxquels correspondent des propriétés de nombres de type modulo avec le
contenu du registre de longueur de bloc.
2s La présente invention sera décrite ci-après à l'aide d'un exemple de réalisation représenté dans les dessins annexés, dans les quels: - la figure 1 montre les blocs fonctionnels et l'exécution du procédé,
- la figure 2 montre un schéma par blocs de l'unité génératrice.
Selon le procédé de la figure 1 pour générer des mots d'instruction pour la commande d'unités fonctionnelles 12 d'un proces seur 13, on génère de façon connue, à partir d'un code de programme 1 à l'aide d'une traduction, avant l'exécution d'un programme, une succession de mots d'instruction primaires 2 à partir de plusieurs parties de mots as d'instruction 4. De plus, on fractionne la suite des mots d'instruction pri maires 2 dans le générateur de mots de programme 8 et on les enregistre comme suites de mots de programme correspondants 17 dans une mé
moire d'exécution 9.
Dans une exécution de programme, avant l'émission à par-
tir de la mémoire de déroulement 9, on vérifie le mot de programme 17
avec le bit de mise à l'état 21 qu'il contient pour en déterminer l'état actif.
Si cet état est décelé, on arrête la suite du traitement du mot de pro s gramme dans le traitement du mot d'instruction 10 et on fournit cette partie d'informations de ce mot de programme 17 pour occuper le registre
d'index de lecture 18, le registre d'index d'écriture 19 et le registre de lon-
gueur de bloc 20 et on enregistre dans ces registres.
A l'aide de ces informations nouvellement inscrites dans les o contenus de registre, on règle d'une part avec le contenu du registre de longueur de bloc 20, le comptage modulo du registre d'index de lecture 18
et du registre d'index d'écriture 19. D'autre part, avec le contenu du re-
gistre d'index de lecture 18 et du registre d'index d'écriture 19, on prérègle les valeurs initiales respectives que doivent émettre l'index de lecture 35 et
s l'index d'écriture 36 lors du traitement suivant du mot d'instruction.
Au cours du traitement suivant du mot d'instruction, dans une mémoire de mots d'instruction 24 avec un premier et un second côtés
de mémoire de mots d'instruction 6, 7 sélectionnés par le contenu du re-
gistre de côtés 27, on émet par l'index de lecture à émettre 35, le numéro o de ligne de lecture actuel et par l'index d'écriture 36 à émettre, le numéro de ligne d'écriture d'un bloc de mot d'instruction que l'on veut traiter; ce bloc comporte une certaine longueur définie par le contenu du registre de longueur de bloc 20. L'étape de traitement du mot d'instruction peut être liée par programme, par des opérations lecture/écriture/NOP (pas s d'opération) avec une opération d'émission nécessaire dans l'émission de
mot d'instruction 11.
Après une étape de traitement de mot d'instruction, on fait avancer une unité de registre d'index de lecture 18 et le registre d'index d'écriture 19 et on peut ensuite passer à une autre étape de traitement de
mot d'instruction.
Si un signal d'interruption 25 est déclenché par le proces-
seur 13, il faut effectuer la tâche correspondante, de priorité la plus éle-
vée, de façon immédiate. Tous les autres contenus de registres jusqu'alors y compris du registre de côtés sont enregistrés de façon intermédiaire et 3s ces registres seront de nouveau occupés pendant l'opération d'interruption. Le traitement de mot d'instruction lié à l'interruption est effectué dans une mémoire de mots d'instruction 24 prévue à cet effet. A la fin de l'opération d'interruption, on réalimente tous les contenus de re gistre mémorisés de façon intermédiaire et on peut poursuivre le traite ment du mot d'instruction selon le programme, à l'endroit de l'interruption
par le signal d'interruption 25.
Si pendant un traitement de mot d'instruction, aucun nou veau mot d'instruction 15 est demandé par la génération de mot d'instruction 10 pour être enregistré dans la mémoire de mots d'instruction 24, l'unité de pré-saisie 28 enregistre le successeur de mot de programme 16 de la mémoire de déroulement 9 et le mot d'instruction émis actuellement par la mémoire de mots d'instruction 24 et on gé
o nère le mot d'instruction supplémentaire 29.
Ce mot est fourni dans une ligne libre de la mémoire de mots d'instruction 24 ou dans la mémoire supplémentaire de mots d'instruction 30; au cours de la suite du déroulement du traitement des mots d'instruction, il y a une demande d'un nouveau mot d'instruction 15 qui est transférée immédiatement. De cette manière, on évite le retard lié au temps de traitement qui se produit lorsqu'on fournit le nouveau mot
d'instruction 15 dans la génération de mot d'instruction 10.
En mémorisant le mot d'instruction 15 dans la sortie de mot d'instruction 11, on déclenche les fonctions nécessaires au traitement
o dans les unités fonctionnelles correspondantes 12 du processeur 13.
La figure 2 montre l'unité génératrice 31 dans laquelle se trouve le registre de longueur de bloc 20, le registre d'index de lecture 18 avec le compteur/décompteur de registre de lecture 32 et le registre
d'index d'écriture 19 avec le compteur/décompteur d'index d'écriture 33.
A chacune des entrées du registre de longueur de bloc 20, du registre d'index de lecture 18 et du registre d'index d'écriture 19, on aura chaque fois le bus de partie d'informations 26 qui fournit les valeurs d'entrée pour les registres. A l'aide du signal de bit de mise à l'état 34 ap pliqué également aux entrées des registres, on produit la mise en mémoire
des valeurs d'entrée.
La sortie du registre de longueur de bloc 20 est prête pour la valeur de comptage modulo pour le compteur/décompteur d'index de lecture 32 et le registre d'index d'écriture 19. A la sortie du registre d'index de lecture 18, on fournit la valeur initiale de l'index de lecture 35 pour l'entrée dans le compteur/décompteur d'index de lecture 32. Sa sortie ap plique la valeur actuelle de l'index de lecture 35 à l'entrce du registre d'index de lecture 18. Dans ces conditions à partir de la seconde sortie du
registre d'index de lecture 18, on fournit l'index de lecture 35.
La sortie du registre d'index d'écriture 19 fournit la valeur initiale de l'index d'écriture 18 pour l'entrce dans le compteur/décompteur d'index d'écriture 33. Sa sortie applique la valeur actuelle de l'index d'écriture 36 à l'entrce du registre d'index de lecture 19. Ainsi, par la se conde sortie du registre d'index d'écriture 19, on fournit l'index
d'écriture 36.
Suivant une caractéristique avantageuse, le mot de pro-
gramme présente un bit de mise à l'état qui, lorsqu'il est à l'état actif, ar-
rête la génération de mot d'instruction et met à l'état le contenu du o registre d'index de lecture et/ou du registre d'index d'écriture et/ou du registre de longueur de bloc avec le contenu de la partie d'information du mot de programme et, lorsque le bit de mise à l'état est à l'état inactif, on
génère le mot d'instruction.
Suivant une autre caractéristique avantageuse du procédé,
s un signal d'interruption déclenche dans le processeur, pendant une pre-
mière tâche à traiter, sur le premier côté de la mémoire de mots d'instruction ou sur le second côté de la mémoire de mots d'instruction, un enregistrement intermédiaire d'un état de traitement que l'on quitte de la première tâche dans une mémoire globale et ensuite on déclenche im o médiatement le traitement d'une seconde tâche sur le premier côté ou le second côté de la mémoire de mots d'instruction, côté non traité, et à la fin
de la seconde tâche, après rcenregistrement à partir de la mémoire glo-
bale, on poursuit de manière jointive la première tâche à l'état du traite-
ment quitté.
NOMENCLATURE
1 code programme 2 mot d'instruction primaire 3 mémoire de mots d'instruction s 4 partie de mot d'instruction 6 premier côté de mémoire de mots d'instruction 7 second côté de mémoire de mots d'instruction 8 génération de mot de programme 9 mémoire de déroulement o 10 génération de mot d'instruction 11 émission de mot d'instruction 12 unité fonctionnelle 13 processeur mot d'instruction 16 successeur de mot de programme 17 mot de programme 18 registre d'index de lecture 19 registre d'index d'écriture registre longueur de bloc 21 bit de mise à l'état 24 mémoire de mots d'instruction signal d'interruption 26 bus de partie d'information 27 registre de côtés 2s 28 unité de pré-saisie 29 mot d'instruction supplémentaire mémoire de mots d'instruction supplémentaire 31 unité génératrice 32 compteur/décompteur d'index de lecture o 33 compteur/décompteur d'index d'écriture 34 signal de bit de mise à l'état index de lecture 36 index d'écriture
Claims (6)
1 ) Procédé pour générer des mots d'instruction pour la commande d'unités fonctionnelles dans un processeur, selon lequel: les mots d'instruction se composent de plusieurs parties de mot s d'instruction et chaque partie de mot d'instruction commande une unité fonctionnelle, avant un déroulement de programme, une suite de mots d'instruction primaires provenant d'une traduction d'un code programme subit un fractionnement en mots de programme et, o selon lequel, lors du déroulement du programme, un mot de programme qui présente une partie d'information ayant au moins la largeur d'une partie de mot d'instruction, prend de manière commandée un mot d'instruction dans une ligne déterminée par un numéro de ligne de lecture dans une mémoire de mots d'instruction inscrite ligne par ligne, et ce mot s est modifié par substitution d'une partie de mot d'instruction par la partie
d'information du mot de programme respectif et est réinscrit dans une li-
gne déterminée de la mémoire de mots d'instruction selon un numéro de ligne d'écriture et après avoir généré de cette manière un mot d'instruction correspondant au mot d'instruction primaire à traiter, ce mot d'instruction est émis pour commander des unités fonctionnelles, caractérisé en ce que les numéros de ligne de lecture sont fournis par un registre d'index de lecture (18) et les numéros de ligne d'écriture par un registre d'index d'écriture (19), s et pour chaque mot de programme (17), on émet un numéro de ligne de lecture et de ligne d'écriture et, une suite de numéros successifs de ligne de lecture et de ligne d'écriture
est définie par le contenu d'un registre de longueur de bloc (20).
2 ) Procédé selon la revendication 1, caractérisé en ce que le mot de programme (17) présente un bit de mise à l'état (21) qui, lorsqu'il est à l'état actif, arréte la génération de mot d'instruction (10) et met à l'état le contenu du registre d'index de lecture (18) et/ou du registre 3s d'index d'écriture (19) et/ou du registre de longueur de bloc (20) avec le contenu de la partie d'information du mot de programme et, lorsque le bit de mise à l'état (21) est à l'état inactif, on génère le mot
d'instruction (15).
3 ) Procédé selon la revendication 2, caractérisé en ce que pour un moteur de programme (17) lorsque le bit de mise à l'état (21) est à l'état actif, on enregistre le contenu de la partie d'information dans le re s gistre d'index de lecture (18), le registre d'index d'écriture (19) et le registre
de longueur de bloc (20).
4 ) Procédé selon la revendication 1, caractérisé en ce que o la mémoire de mots d'instruction (24) est divisée en un premier côté (6) et un second côté (7) de mémoire de mots d'instruction avec chaque fois la même numérotation des lignes et, pour la synthèse du mot d'instruction (15), on détermine le côté à appeler
de la mémoire d'instruction à partir du contenu d'un registre de côtés (27).
) Procédé pour générer des mots d'instruction pour commander des unités fonctionnelles dans un processeur, selon lequel: les mots d'instruction se composent de plusieurs parties de mot d'instruction et chaque partie de mot d'instruction commande une unité o fonctionnelle respective, selon lequel, avant un déroulement de programme, à partir d'une suite de
mots d'instruction primaires provenant de la traduction d'un co de pro -
gramme, on fractionne en mots de programme et, selon lequel lors du déroulement du programme, un mot de programme qui présente une partie d'information ayant au moins la largeur d'une partie de mot d'instruction, extrait de manière commandée à partir d'une ligne définie par le numéro de ligne de lecture dans une mémoire de mots d'instruction avec inscription ligne par ligne, un mot d'instruction, et on modifie avec substitution d'une partie de mot d'instruction par la partie
d'information du mot de programme respectif et on réinscrit dans une li-
gne définie de la mémoire de mots d'instruction suivant un numéro de li-
gne d'écriture et après avoir généré de cette façon un mot d'instruction correspondant au mot d'instruction primaire à traiter, on émet ce mot d'instruction pour commander les unités fonctionnelles, caractérisé en ce que la mémoire de mots d'instruction (24) est subdivisée en un premier côté (6) et un second côté (7) de mot d'instruction et, pour la synthèse du mot d'instruction (15), on détermine le cÈté qu'il faut appeler dans la mémoire de mots d'instruction à partir du contenu d'un
registre de côtés (27).
s 6 ) Procédé selon l'une quelconque des revendications 1 à 5,
caractérisé en ce qu' un signal d'interruption (25) déclenche dans le processeur, pendant une première tâche à traiter, sur le premier côté (6) de la mémoire de mots d'instruction ou sur le second côté (7) de la mémoire de mots o d'instruction, un enregistrement intermédiaire d'un état de traitement que l'on quitte de la première tâche dans une mémoire globale et ensuite on
déclenche immédiatement le traitement d'une seconde tâche sur le pre-
mier côté (6) ou le second côté (7) de la mémoire de mots d'instruction, côté non traité, et s à la fin de la seconde tâche, après réenregistrement à partir de la mémoire
globale, on poursuit de manière jointive la première tâche à l'état du trai-
tement quitté.
7 ) Procédé selon l'une quelconque des revendications 1 à 6,
caractérisé par une unité de pré-saisie (28) pour construire de manière commandée la mémo ire d e mots d' instruction (24) et, indépendamment de l'état de traitement de la tâche actuelle, l'unité de pré-saisie (28) fournit un mot d'instruction supplémentaire (29) à une li
2s gne non utilisce de la mémoire de mots d'instruction (24) ou à une mé-
moire de mots d'instruction (30) supplémentaire, si lors du traitement d'une tâche actuelle, aucun mot d'instruction (15) n'arrive sur l'unité de
pré-saisie (28).
8 ) Dispositif pour générer des mots d'instruction pour commander des
unités fonctionnelles dans un processeur comportant les unités fonction-
nelles, avec une mémoire de mots d'instruction associée à ces unités
fonctionnelles et une mémoire tampon de mot d'instruction pour enregis-
trer des mots d'instruction déjà gérés et ayant une largeur au moins égale 3s à la largeur de bit du mot d'instruction, la mémoire tampon de mot d'instruction se composant d'une mémoire avec accès sélectionné ou programmé de manière fixe ligne par ligne, caractérisé en ce qu' une unité génératrice (31) est associée à la mémoire de mots d'instruction (24). 9 ) Dispositif selon la revendication 8, s caractérisé en ce que l'unité génératrice (31) comporte un registre de longueur de bloc (20), un registre d'index de lecture (18) et un registre d'index d'écriture (19) , un compteur/décompteur d'index de lecture (32) étant associé au registre d'index de lecture (8) et un compteur/décompteur d'index d'écriture (33) o étant associé au registre d'index d'écriture (19), ces registres ayant des propriétés de comptage en anneau pour définir le contenu du registre de
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10107102A DE10107102B4 (de) | 2001-02-14 | 2001-02-14 | Verfahren und Anordnung zur Instruktionswortgenerierung bei der Ansteuerung von Funktionseinheiten in einem Prozessor |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2824154A1 true FR2824154A1 (fr) | 2002-10-31 |
FR2824154B1 FR2824154B1 (fr) | 2005-09-02 |
Family
ID=7674177
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0201754A Expired - Fee Related FR2824154B1 (fr) | 2001-02-14 | 2002-02-13 | Procede et dispositif pour generer des mots d'instruction pour la commande d'unites fonctionnelles dans un processeur |
Country Status (5)
Country | Link |
---|---|
US (1) | US7069418B2 (fr) |
JP (1) | JP4494701B2 (fr) |
DE (1) | DE10107102B4 (fr) |
FR (1) | FR2824154B1 (fr) |
GB (1) | GB2375197B (fr) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9065793B2 (en) * | 2011-02-24 | 2015-06-23 | Cbs Interactive Inc. | Rendering web content using pre-caching |
CN102561700B (zh) * | 2012-01-16 | 2014-05-21 | 三一重工股份有限公司 | 一种机械臂控制***、方法及工程机械 |
US10453534B2 (en) * | 2013-08-07 | 2019-10-22 | Qualcomm Technologies International, Ltd. | Patching of programmable memory |
US10564942B2 (en) * | 2017-11-17 | 2020-02-18 | International Business Machines Corporation | Compiler for a processor comprising primary and non-primary functional units |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19859389C1 (de) * | 1998-12-22 | 2000-07-06 | Systemonic Ag | Verfahren zur Ansteuerung von Funktionseinheiten in einem Prozessor und Prozessoranordnung zur Durchführung des Verfahrens |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5079693A (en) * | 1989-02-28 | 1992-01-07 | Integrated Device Technology, Inc. | Bidirectional FIFO buffer having reread and rewrite means |
US5267191A (en) * | 1989-04-03 | 1993-11-30 | Ncr Corporation | FIFO memory system |
US5347638A (en) * | 1991-04-15 | 1994-09-13 | Seagate Technology, Inc. | Method and apparatus for reloading microinstruction code to a SCSI sequencer |
JP3461185B2 (ja) * | 1993-06-30 | 2003-10-27 | 株式会社東芝 | ロードモジュールへのソースコード行番号登録方法および装置 |
EP0675443A1 (fr) * | 1994-03-30 | 1995-10-04 | Digital Equipment Corporation | Dispositif et procédé d'accès à antémémoire à mappage direct |
US6745265B1 (en) * | 2000-03-21 | 2004-06-01 | Agere Systems Inc. | Method and apparatus for generating status flags in a memory device |
-
2001
- 2001-02-14 DE DE10107102A patent/DE10107102B4/de not_active Expired - Fee Related
-
2002
- 2002-02-08 JP JP2002032394A patent/JP4494701B2/ja not_active Expired - Fee Related
- 2002-02-11 GB GB0203098A patent/GB2375197B/en not_active Expired - Fee Related
- 2002-02-13 FR FR0201754A patent/FR2824154B1/fr not_active Expired - Fee Related
- 2002-02-14 US US10/075,916 patent/US7069418B2/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19859389C1 (de) * | 1998-12-22 | 2000-07-06 | Systemonic Ag | Verfahren zur Ansteuerung von Funktionseinheiten in einem Prozessor und Prozessoranordnung zur Durchführung des Verfahrens |
Non-Patent Citations (1)
Title |
---|
WEISS M H ET AL: "DYNAMIC CODEWIDTH REDUCTION FOR VLIW INSTRUCTION SET ARCHITECTURES IN DIGITAL SIGNAL PROCESSORS", PROCEEDINGS IWISP. INTERNATIONAL WORKSHOP ON IMAGE AND SIGNAL PROCESSING ON THE THEME OF ADVANCES IN COMPUTATIONAL INTELLIGENCE, XX, XX, 4 November 1996 (1996-11-04), pages 517 - 520, XP000911908 * |
Also Published As
Publication number | Publication date |
---|---|
DE10107102B4 (de) | 2004-02-26 |
US7069418B2 (en) | 2006-06-27 |
JP4494701B2 (ja) | 2010-06-30 |
GB2375197B (en) | 2004-02-11 |
DE10107102A1 (de) | 2002-08-29 |
FR2824154B1 (fr) | 2005-09-02 |
GB2375197A (en) | 2002-11-06 |
JP2002278774A (ja) | 2002-09-27 |
US20020194454A1 (en) | 2002-12-19 |
GB0203098D0 (en) | 2002-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0029131B1 (fr) | Procédé de commande de l'affectation de ressources dans un système comportant plusieurs processeurs à fonctionnement simultané | |
EP0030504B1 (fr) | Dispositif de synchronisation et d'affectation de processus entre plusieurs processeurs dans un système de traitement de l'information | |
CN101488103B (zh) | 高速缓冲存储器、***和数据存储方法 | |
EP0020983B1 (fr) | Système de mémoire comportant un dispositif d'emmagasinage sérié | |
BE1007932A7 (fr) | Procede et circuit de memorisation et de hierarchisation d'ordres d'effacement dans un dispositif de memoire. | |
FR2586490A1 (fr) | Unite de traitement d'instruction de branchement | |
FR2480018A1 (fr) | Appareil d'adressage de memoire | |
CH629319A5 (fr) | Installation de traitement de donnees. | |
FR2557712A1 (fr) | Processeur pour traiter des donnees en fonction d'instructions provenant d'une memoire-programme | |
FR2513410A1 (fr) | Microprocesseur et procede pour imbriquer les acces en memoire de ce microprocesseur | |
EP0392932B1 (fr) | Procédé et dispositif pour accélérer les accès mémoire, utilisant un algorithme LRU modifié | |
FR2824154A1 (fr) | Procede et dispositif pour generer des mots d'instruction pour la commande d'unites fonctionnelles dans un processeur | |
FR2464521A1 (fr) | Systeme de machine a calculer dans lequel la memoire de programme peut etre parcourue et des donnees qui n'appartiennent pas a une instruction sont detectees separement | |
FR2676845A1 (fr) | Dispositif pour la gestion de plusieurs files d'attente independantes dans un espace memoire commun et banalise. | |
FR2637708A1 (fr) | Dispositif pour le traitement de donnees | |
FR2811784A1 (fr) | Dispositif de gestion de memoire permettant l'inscription de blocs de donnees par substitution | |
FR2483656A1 (fr) | Ordinateur comportant des circuits de manipulation de bits | |
FR2778254A1 (fr) | Circuits,systemes et procedes d'ordinateur utilisant un nettoyage partiel d'une memoire cache | |
FR2662281A1 (fr) | Processeur comprenant un fichier de registres adressables en plusieurs jeux de registres contenus dans des fenetres. | |
US6367002B1 (en) | Apparatus and method for fetching instructions for a program-controlled unit | |
FR2980611A1 (fr) | Circuit pour planifier le deroulement d'un traitement de donnees | |
FR2475763A1 (fr) | Processeur numerique a structure pipeline | |
JPH08137690A (ja) | プログラム実行制御方法 | |
EP0729092B1 (fr) | Procédé et dispositif de commande simultanée des états de contrôle des unités d'exécution d'un processeur programmable à architecture du type pipeline | |
JP2636564B2 (ja) | キャッシュメモリのムーブイン制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
CD | Change of name or company name | ||
TP | Transmission of property | ||
TP | Transmission of property |
Owner name: CALLAHAN CELLULAR L.L.C., US Effective date: 20130724 |
|
PLFP | Fee payment |
Year of fee payment: 14 |
|
ST | Notification of lapse |
Effective date: 20161028 |