FR2499732A2 - Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement - Google Patents

Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement Download PDF

Info

Publication number
FR2499732A2
FR2499732A2 FR8027928A FR8027928A FR2499732A2 FR 2499732 A2 FR2499732 A2 FR 2499732A2 FR 8027928 A FR8027928 A FR 8027928A FR 8027928 A FR8027928 A FR 8027928A FR 2499732 A2 FR2499732 A2 FR 2499732A2
Authority
FR
France
Prior art keywords
loop
sequence
loops
processor
control table
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
FR8027928A
Other languages
English (en)
Other versions
FR2499732B2 (fr
Inventor
Bertrand De Rivals-Mazeres
Jacques Brocard
Jacques Vidalin
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.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from FR7915701A external-priority patent/FR2459512A1/fr
Application filed by Individual filed Critical Individual
Priority to FR8027928A priority Critical patent/FR2499732A2/fr
Publication of FR2499732A2 publication Critical patent/FR2499732A2/fr
Application granted granted Critical
Publication of FR2499732B2 publication Critical patent/FR2499732B2/fr
Granted 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/325Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90348Query processing by searching ordered data, e.g. alpha-numerically ordered data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Advance Control (AREA)

Abstract

CHAQUE LIGNE DE LA TABLE DE COMMANDE 11 COMPORTE DES INSTRUCTIONS EN 1914 RELATIVES A L'EXECUTION DES OPERATIONS DE DEBUT ET DE FIN DE BOUCLE DE SEQUENCE QUI LUI CORRESPONDENT, AINSI QUE LES INSTRUCTIONS CORRESPONDANT EN 1915 A L'ENCHAINEMENT A EXECUTER SUR LA TABLE DE COMMANDE EN FIN D'EXECUTION DES BOUCLES. ON MEMORISE SEPAREMENT OU NON DE LA TABLE DE COMMANDE LE NOMBRE CORRESPONDANT DE DEBUTS DE BOUCLE EN 1301 ET DE FINS DE BOUCLE EN 1303 A EXECUTER. POUR CHAQUE SEQUENCE, L'EXECUTION DE L'INSTRUCTION CORRESPONDANT EN 1915 A L'ENCHAINEMENT A EXECUTER SUR LA TABLE DE COMMANDE ET COMMANDEE PAR COMPTAGE EN 1451 ET 1453 ET COMBINAISON EN 141 DU NOMBRE DE DEBUTS DE BOUCLE ET DE FINS DE BOUCLE QUI ONT ETE EXECUTES.

Description

Le brevet principal déposé sous le numéro 79.15701 'concerne un procédé pour la commande de rapprochn- ment à effectuer au vol entre des entités logiques de référence et des entités logiques issues du fichier.
La première présente addition a pour objet un système selon lequel des informations incluses dans les commandes d'enchaînement permettent de commander les traitements répétitifs à exécuter sur des informations en cours de défilement par mémorisation des informations relatives aux débuts et aux fins de boucle de séquence correspondant à chaque ligne de la table de commande, lesdites informatiens de commande comportant aussi l'instruction correspondant à l'enc.haSnement à exécuter en fin d'exécution des boucles.
Une telle mémorisation des points de reprise de début et de fin de boucles présente, en effet, l'avantage de ne pas avoir à développer, pas à pas. comme décrit dans la demande de brevet prinotpal déposé ' sous le numéro 79.15701 les enchaînements résultant d'une structure de fichier comportant des boucles imbriquées - et par cela même de faciliter au niveau des fichiers la description des structures d'article dont l'utilisateur confie au système d'exploitation.
La ligne ds- la table de commande correspondant au début des boucles à exécuter comportera, par exemple, la commande d'enchaînement suivante BS c' est-à-dire "début de boucles de séquence à exécuter".
La ligne de commande correspondant. dans cet exemple. à la fin des boucles enveloppées comportera l'instruction de boucle
FB C c'est-A-dire : "fin d'exécution de boueles de séquence et
saut au traitent consécutif sur la table
de commende."
La ligne de commande correspondant à la fin des boucles enveloppantes comportera, par exatnple, l'instruction:
FB FA c'est-à-dire: "fin d'exécution de boucles de séquence et
reprise pour fin d'article".
Pour chaque traitement de la table de commande, sera stocké dans des mémoires spécifiques ou non le nombre total de boucles imbriquées dont le traitement a même ori- gine sur cette table de commande ou le nombre total de bou- cles dont la fin du traitement correspond à cette ligne de la table de commande.
Les adresses correspondent aux enchainements.de re prise sont stockées séquentiellement, pour les débuts de séquence, au fur et à mesure par ligne dans la mémoire correspondante ; et les adresses de saut au traitement consecutif dans la table de commande sont stockées, en fin de la séquence correspondant à la boucle, dans un seul registre par écrasement successif.
Soit, par exemple, 4 boucles enveloppant 3 boucles dont le traitement a même origine sur la table de csm- mande que les 4 boucles enveloppantes, on trouvera par ligne, dans la mémoire spécifique correspondant aux débuts de boucles
12 x c'est- -dirs : " exécution de 12 boucles ayant même adresse
d'origine x sur la table de commande", et on aura, par ligne, pour la mémoire spécifique correspondant aux fins de boucles
3
4 les adresses y et z correspondant pour chèque fin d'opéra- tions da boucles à un saut au traitement consécutif de 13 table de commande étant successivement stockées dans un même registre spécifique par écrasement successif, ce qui aura pour signification : fin d'exécution de 3 boucles et saut à l'adresse y de la table de commande pour triitnt consécutif : puis fin d'exésution de 4 boucles et saut à l'adresse z de la table de commande pour traitement consécutif, sauf exécution d'une reprise pour boucle de fin d'article".
Si les boucles imbriquées avaient eu, non pas une méme origine, mais au contraire une même fin sur la table de commande, on aurait eu - pour la mémoire spécifique correspondant aux débuts de
boucles,
4 x
3 y
et pour la mémoire spécifique aux fins de boucles
12 (z)
Lorsque le nombre de chacune des boucles effectuer est fixé, soit par l'utilisateur, soit par le système, et que, de même, l'information dont le traitement est repris par l'opération de bouclage est de longueur également fixée, l'instruction de reprise ou de saut correspondant au traitement de la donnée consécutive de fichiers peut entre exécutée automatiquement sans mémorisation de l'adresse.
Il n'en est pas de même pour des informations dont le trei- tement demande un nombre aléatoire de boucles et dont la fin est localisée dans le fichier par la présence d'un ou plusieurs séparateurs. La mémorisation des adresses de la table de commande correspondant à ces fins de boucles et l'instruction de saut pour le traitement de la donnée consécutive permet alors d'appliquer le procédé à des fichiers ou parties de fichiers structurées en longueur variable et comportant un nombre aléatoire de boucles.
Il est donné, ci-dessous, figure 1, à titre d'exem ple, la description d'un dispositif permettant de réaliser l'application particulière ainsi décrite du présent brevet.
Selon ladite figure 1, les informations relatives à la déclaration du séparateur de séquence sont rangées dans la case 1141 de la ligne correspondants de la table de commande 11, comme il est dit dans la demande de brevet principal déposé sous le numéro 79.15701. Da mêmme, les instructions relatives aux enchaînements à exécuter sur la table de commande 11 sont rangées dans les cases 1914 et 1915 de la ligne correspondant de cett. table de commande 11.
Les cases 1914 contiennent les instructions relatives à l'exécution du début ou de 13 fin d'une opération de boucle. Les cases 1915 contiennent. pour exécution en fin de ces opérations de boucle, les instructions de reprise au traitement correspondant à une boucle plus enveloppante ou de saut au traitement consécutif pour cette table de conmande 11.
Ces instructions sont décodées par le processeur de micro-commande 10, comme il est dit dans la demande de brevet principal déposé sous le numéro 79.15701 pour mettre en oeuvre le dispositif de bouclage 14.
Le dispositif de bouclage 14 de la figure i comprends : 1. deux mémoires 1301 et 1303 où est chargé par case suc
cessivement lors de l'enregistrement du programme ou en
cours de traitement par instruction du systm2 le nombre
de boucles correspondant pour le registre 1301
début et pour le registre 1303 3 chaque fin d'une opéra-
tion de boucle.
2. un double registre à décalage 1400 où. correspondant à
une même ligne de la table de commande 11, sont enregis
très par ligne, d'une part, dans la case correspondante
1401 le nombre de boucles restant à effecteur et, d'autre
part, dans la case 1402 l'adresse de reprise correspond
dent à chaque saut de bcucl e ans la table de commande 11.
3. une autre mémoire à de calage 1403 ou est enregistré par
case pour chaque fin de boucle le nombre correspondant
de boucle restant à effectuer.
4. deux registres 121 et 122 pour l'enregistrement des
adresses du compteur 12 de la table de commande il cor
respondant pour Se registre 121 aux débuts de boucle et
pour le registre 122 aux fins de boucle.
5. les compteurs 1451 et 1453.
8. les registres de travail correspondants 1431 et 1433.
7. le décodeur 141.
En début d'article, l'instruction correspondante commande - par le décodeur 10 et la liaison I00 la copie simultanée
des informations contenues dans les cases de la mémoire
1301 par liaison 1311 dans les cases 1401 de la mémoire
1400 et la copie simultanée des informations contenues
dans les cases de la mémoire 1303 par la liaison 1413 dans
les cases 1403 de cette mémoire 1400.
- l'initialisation des mémoires 1400 et 1403 et des compteurs
1451 et 1453 aux valeurs correspondant sur les tables
1301 et 1303 à ce début d'article.
Les instructions des débuts de boucle contenues n dans les cases I914 commande/par la liaisun 1924 et le déco deur 141 - par la commande 144 et la liaison 1223 la copie de l'adresse
contenue dans le registre 121 du compteur 12 de la table
de commande Il dans la case correspondante 1402 de la mé
moire 1400.
- par l'intermédiaire des liaisons 1411 et 1441 et du regis
tre de travail 1431 la décrmentation du compteur 14ru1 et
la mémorisation du résultat par le registre de travail 1431
dans lo meme casa 1401 de la mémoire 1400 - par la liaison 146. en fin d'exécution du traitement cor
respondant à la ligna de la table de commende Il en ser
vice, le décalage dans le sens de l'enregistrement de la
mémoire 1400.
Les instructions de fin de boucle contenues dans les cases 1914 commandent par la liaison 1925 et le décodeur 141 - par la commande 146, en début du traitement à exécuter pour
la ligne correspondant à cette fin de boucle dans la table
de commande il, le décalage dans le sons contraire de la
mémoire 1400.
- par la commande 145, l'enregistrement dans le registre 122
de l'adressa du compteur 12 de la table de commande Il cor
e
respondant à cette fin de boucle.
- par l'intermédiaire des liaisons 1413 et 1443 et du regis
tre de travail 1433 la décrémentation du compteur 145 et la
mémorisation du résultat par le registre de travail 1453
dans la case 1401 de la mémoire 1400.
Les instructions relatives aux enchaînements à effectuer en fin d'exécution des opérations de boucle et correspondant dans les cases 1915 de la mémoire de commande Il à un saut à exécuter pour le traitement consécutif de la table de commande Il commande - par les liaisons 1926 et 148 l'initialisation du compteur
12 sur la valeur contenus dans le registre 122 pour un
résultat égal à O donné par la liaison 1463 pour le comp
tsur 1453 st, par conséquent, par la liaison 1461 pour le
compteur 1451, ou. par la liaison 1112, pour un résultat
VRAI donné pour identification du séparateur contenu dans
la case 1111.
- par la liaison 146, le décalage dans le sens de l'enregis-
triment de la mémoire 1400 et par 13 liaison 147 le déca
lage de la mémoire 1403 dans le même sens,
Les instructions relatives aux enchaînements à effectuer en fin d'exécution d'uns opération de boucle et correspondant dans les cases 1915 de la mémoire de commande Il à la reprise du traitement d'une boucle immédiatement enveloppante, commande par l'intermédiaire de la liaison 1927:: - pour un résultat égal à 0 donné par la liaison 1461 pour
le compteur 1451 ou, par la liaison 1112, pour un résultat
VRAI correspondant à l'identification du séparateur conte
nu dans la case 111, et. pour un résultat différant de 0
donné par la liaison 1463 pour le compteur 1453
par la liaison 146, le décalage de la mémoire 1400 dans
le sens contraire à celui de l'enregistrement,
par la liaison 144, l'initialisation du compteur 12 par
la valeur chargée dans le registre 121 par la liaison
143 à partir de la case 1402 correspondants,
l'exécution de la reprise correspondante dans la table
de commande il - pour un résultat égal à 0 donné par la liaison 1463 pour
le compteur 1453 ou, par liaison 1112, pour un résultat
VRAI correspondant à l'identification du séparateur con
tenu dans la case 1111 et pour un résultat différent de
0 donné par la liaison 1461 pour le compteur 1451,
par les liaisons 1926 et 148 l'initialisation du comp
teur 12 sur la valeur contenue dans le registre 122,
par la liaison t4S, le décalage dans le sens de l'enre-
gistrement de la mémoire 1403.
l'exécution du saut correspondant au traitement consé
cutif de la table de commande 11.
La description du dispositif, tel que donné cidessus, n'est qu'une des variantes du système tel que décrit dans le présent brevet et tel qu'il peut avoir de nombreuses applications en dehors du procédé décrit dans la demande de brevet principal dSHosfi sous le numsro 73.157CI.

Claims (1)

  1. REVENDICATION
    Système, selon la revendication 1 di brevet principal
    déposé sous le numéro 79.15701, pour la commande des enchaînements
    a exécuter en fin de chauqe opération de boucle de séquence et carac
    térisé en ce que: a - on enregistre dans chaque ligne de la mémoire de
    commande les Informations signifient qu'il y a début
    st fin de boucle à exécuter, ainsi que les instruc-
    tions relatives aux enchaînements à effectuer sur la
    dite mémoire de commande en fin d'exécution des trai
    tements correspondants a b - on mémorise, correspondant à chaque ligne de la table
    de commande, les informations relatives au nombre de
    débuts et de fins de boucle de séquence à exécuter,
    ainsi que l'es adresses correspondant pour chaque bou
    cle de séquence à la reprise de la même opération de
    boucle ou au saut à effectuer au traitement consécutif
    de la table de commande t c - on procède. pour chaque information de début de boucle
    de séquence, au comptage desdites opérations de début
    de boucle de séquence ss d - on procède, pour chaque information de fin de boucle
    de séquence, au comptage desdites opérations de fin
    de boucle de séquence t et on combine le résultat des
    dits comptages et le résultat des comptages effectués
    en début de boucle de séquence pour commander, soit la
    poursuite de la même opération de boucle, soit - selon
    les instructions contenues dans la ligne correspondan
    te de la table de commande et relatives aux enchaîne-
    ment s à exécuter en fin de traitement - la reprise de l'opération correspondant à la boucle Immédiatement enveloppante ou le saut à effectuer sur la table de commande pour l'exécution correspondant au traitement consécutif.
FR8027928A 1979-06-19 1980-12-31 Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement Granted FR2499732A2 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR8027928A FR2499732A2 (fr) 1979-06-19 1980-12-31 Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR7915701A FR2459512A1 (fr) 1979-06-19 1979-06-19 Procede pour la commande de rapprochement a effectuer entre des entites logiques de reference et des entites logiques issues d'un fichier
FR8027928A FR2499732A2 (fr) 1979-06-19 1980-12-31 Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement

Publications (2)

Publication Number Publication Date
FR2499732A2 true FR2499732A2 (fr) 1982-08-13
FR2499732B2 FR2499732B2 (fr) 1985-01-04

Family

ID=26221209

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8027928A Granted FR2499732A2 (fr) 1979-06-19 1980-12-31 Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement

Country Status (1)

Country Link
FR (1) FR2499732A2 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0100804A1 (fr) * 1982-08-12 1984-02-22 Universite De Bordeaux I Procédé de rapprochement entre des entités logiques de référence et des entités logiques issues d'un fichier

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2289962A1 (fr) * 1974-10-29 1976-05-28 Int Computers Ltd Systeme informatique de gestion de bases de donnees
FR2330075A2 (fr) * 1974-12-04 1977-05-27 Anvar Procede et systeme de rapprochement iteratif et simultane de donnees avec un ensemble de donnees de reference
FR2421422A1 (fr) * 1978-03-28 1979-10-26 Sintra Processeur a recherche associative
US4241402A (en) * 1978-10-12 1980-12-23 Operating Systems, Inc. Finite state automaton with multiple state types

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2289962A1 (fr) * 1974-10-29 1976-05-28 Int Computers Ltd Systeme informatique de gestion de bases de donnees
FR2330075A2 (fr) * 1974-12-04 1977-05-27 Anvar Procede et systeme de rapprochement iteratif et simultane de donnees avec un ensemble de donnees de reference
FR2421422A1 (fr) * 1978-03-28 1979-10-26 Sintra Processeur a recherche associative
US4241402A (en) * 1978-10-12 1980-12-23 Operating Systems, Inc. Finite state automaton with multiple state types

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
EXBK/78 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0100804A1 (fr) * 1982-08-12 1984-02-22 Universite De Bordeaux I Procédé de rapprochement entre des entités logiques de référence et des entités logiques issues d'un fichier

Also Published As

Publication number Publication date
FR2499732B2 (fr) 1985-01-04

Similar Documents

Publication Publication Date Title
US5408626A (en) One clock address pipelining in segmentation unit
EP1619589B1 (fr) Procédé de programmation d'un contrôleur de DMA dans un système sur puce et système sur puce associé
JP3122185B2 (ja) データベース検索プロセッサ
FR2586490A1 (fr) Unite de traitement d'instruction de branchement
FR2489555A1 (fr) Systeme de traitement de donnees a commande par pipeline
FR2500659A1 (fr) Dispositif pour l'allocation dynamique des taches d'un ordinateur multiprocesseur
FR2770659A1 (fr) Processeur de traitement perfectionne
JP3237858B2 (ja) 演算装置
JPH01310441A (ja) データ処理装置
FR2558613A1 (fr) Appareil de traitement de donnees du type pipeline
EP0155731A1 (fr) Dispositif d'adressage pour fournir à une mémoire des codes d'adresse
FR2499732A2 (fr) Systeme de commande des traitements repetitifs a executer sur des informations en cours de defilement
EP2947563A1 (fr) Processeur à instructions conditionnelles
US7350037B2 (en) Digital signal processor and digital signal processing method enabling concurrent program download and execution
EP1162547A2 (fr) Gestion de mémoire sur place pour une FFT
US8125489B1 (en) Processing pipeline with latency bypass
EP0945795A1 (fr) Système d'ordinateur ayant une instruction et méthode de branchement à pointeurs multiples
KR940009822A (ko) 서브루틴분기명령실행방법
EP0100804A1 (fr) Procédé de rapprochement entre des entités logiques de référence et des entités logiques issues d'un fichier
SU434407A1 (fr)
FR2824154A1 (fr) Procede et dispositif pour generer des mots d'instruction pour la commande d'unites fonctionnelles dans un processeur
JPS5925264B2 (ja) ベクトル命令処理方式
JP2586799B2 (ja) チェーン方式で管理されたメモリバッファの状態確認装置
KR100303136B1 (ko) 디지탈신호처리장치를구비한마이크로프로세서구조
JPS6047616B2 (ja) 情報処理装置