FR2569287A1 - Dispositif de commande de boucles pour appareil de traitement numerique - Google Patents

Dispositif de commande de boucles pour appareil de traitement numerique Download PDF

Info

Publication number
FR2569287A1
FR2569287A1 FR8503405A FR8503405A FR2569287A1 FR 2569287 A1 FR2569287 A1 FR 2569287A1 FR 8503405 A FR8503405 A FR 8503405A FR 8503405 A FR8503405 A FR 8503405A FR 2569287 A1 FR2569287 A1 FR 2569287A1
Authority
FR
France
Prior art keywords
value
memory
control device
register
loop
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.)
Pending
Application number
FR8503405A
Other languages
English (en)
Inventor
Charles L Saxe
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.)
Tektronix Inc
Original Assignee
Tektronix Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tektronix Inc filed Critical Tektronix Inc
Publication of FR2569287A1 publication Critical patent/FR2569287A1/fr
Pending 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

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)
  • Advance Control (AREA)
  • Complex Calculations (AREA)

Abstract

L'INVENTION CONCERNE UN DISPOSITIF DE COMMANDE DE BOUCLES, DESTINE A UN APPAREIL DE TRAITEMENT NUMERIQUE DE DONNEES. ON PREVOIT AUSSI UN REGISTRE DE MEMOIRE 24A-24N ET UN REGISTRE DE COMPTAGE 26A-26N ASSOCIE POUR RECEVOIR UNE VALEUR DE DEPART REPRESENTANT UN NOMBRE DE PASSAGES A EFFECTUER DANS UNE BOUCLE. UN CIRCUIT D'ITERATION 32 EST PREVU POUR RECEVOIR LA VALEUR DU REGISTRE DE COMPTAGE, L'ITERER ET MEMORISER LA NOUVELLE VALEUR DU REGISTRE DE COMPTAGE. UN DETECTEUR 34 COMPARE LA SORTIE DU CIRCUIT D'ITERATION 32 A UNE VALEUR PREDETERMINEE ET FOURNIT UN SIGNAL D'ACHEVEMENT EN CAS D'EGALITE. UNE LOGIQUE DE COMMANDE 35 COMMANDE LE TRANSFERT DE LA VALEUR CONTENUE DANS LE REGISTRE DE MEMOIRE DANS LE REGISTRE DE COMPTAGE A L'APPARITION D'UN SIGNAL DE SORTIE DU DETECTEUR 34. L'INVENTION PERMET DE REALISER UN GAIN DE TEMPS DE TRAITEMENT EN SUPPRIMANT DES ETAPES DE PROGRAMMES.

Description

"Dispositif de commande de boucles pour appareil de traitement numérique".
La présente invention concerne un appareil de
traitement numérique et en particulier un dispositif pour com-
mander le nombre des itérations de boucles de programme imbriquées
dans un appareil de traitement numérique.
Lors de l'utilisation d'appareil de traitement numérique de données, il est souvent nécessaire ou désirable de réaliser des ensembles d'opérations de manière itérative dans des boucles imbriquées. Ceci est le cas en particulier dans le
traitement à organisation cellulaire. Par exemple dans le filtra-
ge numérique d'un signal représenté par un ensemble d'échantillons d'une forme d'onde de signal, on réalise de manière classique une opération de produit de composition. Une expression générale
représentant le produit de composition du signal x par la carac-
téristique de filtres h est la suivante: p y (i) =Z h (i). x (i+n) n =o
dans laquelle P est le nombre de coefficient de la caractéristi-
que du filtre et i est le nombre de points de données,le nombre i étant positif et inférieur au nombre P.
Dans cet exemple chacun des points de données re-
présentant la forme d'onde x est tout d'abord multiplié par le
coefficient correspondant h et la somme de ces produits est réa-
lisée. Ensuite les coefficient sont décalés d'une position et ce processus est répété. Cette dernière boucle intérieure qui
comporte la multiplication et l'addition pour chacun des coeffi-
cient du filtre est répétée jusqu'à ce que l'ensemble des données représentant la forme d'onde du signal aie été soumis à un produit de composition avec les caractéristiques du filtre ce qui termine
un passage dans la boucle extérieure.
Un des objectifs ordinairement recherchésdans le traitement à organisation cellulaire est de réaliser un calcul à vitesse élevée. Ceci est spécialement important lorsque l'on
2 69287
désire travailler en temps réel. Dans le cas o l'algorithme de calcul nécessite l'exécution répétitive d'un ensemble d'instructions
dans une boucle, il faut prévoir certains moyens pour détermi-
ner le nombre de fois qu'il faut répéter la boucle et pour compter le nombre de passages dans cette boucle. Lorsque cette boucle est imbriquée dans une autre boucle, on doit prévoir
des moyens pour réinitialiser le compteur de la boucle inté-
rieure pour chaque passage de la boucle extérieure. Dans des programmes conventionnels à boucles imbriquées, comme cela
est utilisé avec des microprocesseurs connus qui sont parti-
culièrement adaptés au traitement de signaux, par exemple le
microprocesseur TSM 320 fabriqué par la Société TEXAS INSTRU-
MENTS CORPORATION et le microprocesseur F9945 fabriqué par la
Société FAIRCHILD, on doit utiliser un registre ou un empla-
cement de mémoire en tant que compteur pour chacune des bou-
cles concernées, Pour initialiser le compteur, une étape de programme est nécessaire pour appeler de la mémoire la valeur représentant le nombre de passage effectué dans la boucle et
la placer dans le registre. Pour déterminer le nombre cou-
rant de passagesréalisésdans la boucle, la valeur contenue dans le registre doit être incrémentée ou diminuée à chaque passage et pour déterminer si le nombre total de passage a
été réalisé, il faut comparer la valeur ontenue dans le re-
gistre avec une certaine référence ou il faut faire le test à chaque passage, ce qui dans les deux cas nécessite une étape de programme séparée. Ces étapes de programme nécessitent du
temps supplémentaire. Du fait que ce temps supplémentaire di-
minue la vitesse de traitement il est désirable d'éliminer de
telles étapes de programmes.
La présente invention réduit le nombre nécessaire d'étapes de programme et le temps nécessaire pour traiter des données en fournissant des registres de mémoire et de comptage spécialisés et une logique de commande associée qui éliminent la nécessité d'étapes répétitives d'appel en mémoire, de mise en mémoire, d'itération, et de comparaison. On utilise deux registres pour chaque boucle, l'un des registres étant utilisé pour mémoriser une valeur initiale représentant le nombre de passagesdans la boucle et un autre registre étant utilisé pour mémoriser le nombre courant de passage dans la boucle. Après
chaque passage dans la boucle, la valeur contenue dans le re-
gistre de comptage est répétée et comparée à une valeur de
référence. Lorsque la comparaison montre une relation prédé-
terminée indiquant que la boucle a été exécutée le nombre ap-
proprié de fois, on engendre un signal d'achèvement et la va-
leur contenue dans le registre de mémoire est chargée de manière automatique dans le registre de comptage associé en vue de la réinitialisation. Lorsque le nombre désiré de passages n'a pas été réalisé, la valeur répétée est simplement rechargée dans
le registre de comptage ce qui réalise une mise à jour du re-
gistre de comptage. On prévoit de répéter la valeur contenue
dans le registre de comptage seulement sur commande.
Par conséquent c'est un objet principal de la
présente invention de fournir un nouveau dispositif pour com-
mander des séquences de boucles dans un appareil de traitement numérique. C'est encore un objet de la présente invention de fournir un dispositif de commande de boucles qui réduit le temps nécessaire pour déterminer si une boucle a été exécutée le nombre nécessaire de fois. C'est encore un autre objet de la présente invention de fournir un dispositif de commande de boucles dans lequel un compteur d'exécution de boucles peut être initialisé sans appeler ni mémoriser des valeurs à partir
d'une mémoire.
D'autres caractéristiques et avantages de l'in-
vention ressortiront de la description qui suit et des dessins
annexés sur lesquels: - la Fig. 1 représente un exemple d'ensemble de points de données et de coefficients qui doivent être employés dans un calcul de traitement à organisation cellulaire, - la Fig. 2 représente un exemple de structure de processeur grâce auquel le dispositif de commande de boucles 4. selon la présente invention peut être avantageusement utilisé, - la Fig. 3 représente un schéma synoptique d'un mode de réalisation du dispositif de commande de boucles conforme
à la présente invention.
Sur la figure 1 les points de données D1-D l2re- présentent une forme d'onde de signal échantillonnée qui doit
subir une opération par la fonction représentée par les coeffi-
cients C1-C6. Ces ensembles de points de données et de coeffi-
cients représentent des "rangées" devant être traitées. Dans une application classique, la rangée de données doit subir un
produit de composition avec la rangée de coefficients. Par con-
séquent D1 doit être multiplié par C1, D2 par C2 et ainsi de suite jusqu'à ce que D6 soit multiplié par C6, opération au cours
de laquelle les produits respectifs seront totalisés. Le proces-
sus de multiplication des points de données par les coefficients et de totalisation des produits comprend ordinairement une série
d'étapes qui doivent être réalisées de manière répétitive, c'est-
à-dire une boucle. Après chaque passage dans cette première bou-
cle, le pointeur du coefficient est réinitialisé et le pointeur des données est répété avec une valeur prédéterminée, généralement 1, si bien que la rangée de coefficient est en fait décalée de un ou de plusieurs points de données. La boucle inférieure est ensuite exécutée de nouveau, par exemple en multipliant D2 par
C1, D3 par C2 et ainsi de suite en faisant l'addition des produits.
Ce processus est répété jusqu'à ce que l'on ait multiplié un nom-
bre prédéterminé de points de données par tous les coefficients.
Dans ce simple exemple, la boucle intérieure (multiplication et addition) est répétée plusieurs fois pour chaque passage dans la boucle extérieure <initialisation du pointeur de données); cependant d'autres applications peuvent impliquer trois ou même plus boucles imbriquées. La présente invention peut même être avantageusement utilisée dans le cas o on effectue une seule
boucle de manière répétitive.
Si on se réfère à la figure 2, un appareil de
traitement à organisation cellulaire avec lequel on peut utili-
invention, contient un mémoire de données 10 destinée à mémoriser
des points de données et ses coefficients, une mémoire d'instruc-
tions 12 destinée h mémoriser des instructions de programme en vue de réaliser un processus de calcul désiré, un registre d'instruction 14 destiné à recevoir des instructions provenant de la mémoire d'instruction et à les diriger à d'autres unités
logiques du processeur pour leur traitement, une unité d'a-
dressage 16 destinée à adresser la mémoire d'adresse pour ap-
peler les données à partir de cette mémoire, une unité arithmé-
tique 18 pour réaliser des opérations sur les données et une unité d'appel d'instruction 20 pour appeler des instructions à partir de la mémoire d'instruction 12 en vue du traitement par les autres unités logiques du processeur. La conception et la structure des circuits destinés à réaliser les fonctions générales mentionnées ci-dessus est communément utilisée dans l'état de la technique et, à l'exception de certaines nécessités concernant la logique de commande comprise dans l'unité d'appel d'instruction citéeplus bas, il n'est pas nécessaire de prévoir
une structure particulière pour la mise en oeuvre de la présen-
te invention.
Une unité de commande de boucles 22 qui constitue
un mode de réalisation du dispositif de commande de boucles con-
forme à la présente invention est étroitement associé avec l'u-
nité d'appel d'instruction 20 et un détecteur d'état 24 est employé pour communiquer à l'unité d'appel d'instruction 20 l'état des différentes logiques des unités contenues dans le
processeur, comme indiqué par des lignes d'état 25,27 et 29.
Il y a lieu de noter que si cette structure est particulièrement adaptée pour l'utilisation du dispositif de commande de boucles selon la présente invention, on peut également employer d'autres sturctures de processeur et l'exemple d'utilisation de cette
structure ne constitue pas une limite à la portée de la présente invention.
Si on se réfère maintenant à la figure 3, l'unité de commande de boucles 22 comprend un ou plusieurs registres de mémoire 24a à 24n, chacun des ces registres ayant un port
256928S
6.
d'entrée et un port de sortie, des registres de comptage asso-
ciés 26a à 26n, chacun d'entre eux comportant un port d'entrée et un port de sortie et des multiplexeurs associés 28a à 28n ayant chacun trois ports d'entrée et un port de sortie. Ces multiplexeurs relient chacun de manière sélective une de leur entrée à leur sortie donc à l'entrée du registre de comptage qui leur est associé. En fonction de la complexité désirée pour le processeur, on peut prévoir un seul ou plusieurs ensembles
de registresde mémoire, de registresde comptage et de multiple-
xeuiscomme cela est représenté.
Chaque registre de mémoire 24a à 24n reçoit en tant qu'entrée provenant d'un bus de registre 30 une valeur de départ représentant le nombre de passagesdans une boucle à laquelle le registre doit être associé. Initialement, les registres de comptage 26a à 26n reçoivent également la valeur de départ qui est reçue par le registre de mémoire associé par l'action des
multiplexeurs 28a à 28n. Cette étape et d'autres étapes qui se-
ront décrites plus bas sont commandées par une logique de con-
trôle 35 qui, dans le cas de la structure représentée à la fi-
gure 2,est de préférence au moins partiellement comprise dans l'unité d'appel d'instruction 20 et qui comprend la fonction
du détecteur d'état 24.
On prévoit un dispositif d'itération, dans le cas présent un dispositif de décrémentation 32,en Vuede mettre à jour les valeurs mémorisées dans les registres de comptage 26a à 26n. Sur une commande provenant de la logique de commande 35 et sous son contrôle, on transfère la valeur se trouvant dans
un registre de comptage sélectionné au dispositif de décrémen-
tation 32 dans lequel cette valeur est décrémentée et la sortie 33 du dispositif de décrémentation qui représente le comptage
mis à jour est transférée à l'un des ports d'entrée des multi-
plexeurs 28a à 28n pour la mise en mémoire de la valeur mise à jour dans le registre de comptage à partir duquel on avait obtenu la valeur originale, le comptage mis à jour représentant
le nombre courant de passagesdans la boucle à laquelle le regis-
tre de comptage est associé. La valeur contenue dans le registre 7, de comptage pourrait également être placée dans le bus de
registre 30 en vue de l'utilisation par d'autres unités lo-
giques contenues dans le processus. La sortie 33 du disposi-
tif de décrémentation 32 est également transférée à un circuit destiné à comparer la valeur mise à jour à une référence,dans
le cas présent un circuit détecteur de zéro 34.
Dans le mode de réalisation préférée qui est
représenté sur la figure 3, on considère que la valeur ini-
tiale représente le nombre de passages à faire dans une boucle (moins 1), que la valeur initiale dans le registre de comptage sera décrémentée après chaque passage et que l'achèvement des itérations d'une boucle correspond au point
auquel la valeur initiale a été décrémentée à la valeur zéro.
Par conséquent, on utilise un circuit détecteur de zéro. Ce-
pendant il y a lieu de noter que la valeur initiale peut être reliée à toute valeur finale autre que zéro, que l'on peut l'incrémenter au lieu de la décrémenter, que l'on peut faire des itérations avec une valeur différente de 1 et que le
circuit détecteur de zéro pourrait être dans un cas plus gé-
néral un comparateur qui compare la valeur mise à jour à une autre valeur prédéterminée plutôt que zéro, Lorsque la valeur finale d'un registre de comptage (qui représente le dernier passage à travers la boucle pour laquelle le registre est utilisé) est détectée, le circuit
détecteur de zéro 34 délivre un signal d'achèvement à sa sor-
tie 37 et l'envoie à la logique de contrôle 35, Dans l'exem-
ple de structure représenté dans la figure 1, ce signal tra-
verse le détecteur d'état 24; cependant, il y a lieu de noter qu'on peut utiliser d'autres arrangements sans sortir des principes de la présente invention, il y a également lieu de noter qu'aucun circuit logique de commande particulier n'est nécessaire pour l'emploi de l'unité de commande de boucles selon la présente invention mais que le circuit qui est utilisé doit fournir des signaux de commande pour forcer
8.2569287
chaque registre de mémoire 24a à 24n à accepter la valeur de
départ exacte à l'instant exact, pour sélectionner le multi-
plexeur approprié 28a à 28n et l'entrée appropriée au multi-
plexeur à l'instant exact pour forcer chaque registre de comptage 26a-26n à accepter une sortie provenant de son mul-
tiplexeur correspondant à l'instant exact,pour forcer le dis-
positif d'itération (dispositif de décrémentation 32) à ré-
péter le comptage par une valeur sélectionnée et pour forcer le circuit détecteur (circuit détecteur zéro 34) à tester la valeur résultante en fonction des instructions du programme et à recevoir la sortie 37 de signal d'achèvement provenant du circuit détecteur. La conception et la structure d'un tel
circuit est communément connue dans la technique.
A la fin d'une boucle, la logique de contr8ôle 35 doit forcer le multiplexeur à charger la valeur contenue
dans son registre de mémoire associé dans son registre de comp-
tage associé, ce qui réinitialise de manière automatique ce compteur particulier et élimine la nécessité de rappeler la valeur initiale à partir de la mémoire et de la mémoriser dans
le registre de comptage.
Pour certains fonctionnements, seule une paire
de registres de mémoire et de comptage sera nécessaire. Cepen-
dant, lorsque l'on doit répéter plus d'une boucle imbriquée,
il est nécessaire de prévoir deux ou plusieurs paires de re-
gistres de mémoire et de comptage.
La description ci-dessus d'un exemple de réali-
sation n'a été fournie qu'à titre illustratif et nullement
limitatif et il est évident-que l'on peut y apporter des mo-
difications ou variantes sans pour autant sortir du cadre de
la présente invention.
9.

Claims (1)

    REVENDICATIONS ) Dispositif de commande de boucles (22) des- tiné à l'utilisation dans un système de traitement numérique comportant des moyens (10, 12,14,16,18,20,24) destinés à réaliser des opérations sur des données, caractérisé en ce qu'il com- prend: a) un organe de mémoire (24a-24n) destiné à recevoir une valeur de départ représentant le nombre relatif de répétitionsà faire sur un ensemble d'opérations. b) un organe de comptage (26a-26n) associé au- dit organe de mémoire (24a,24n) destiné à recevoir simultané- ment avec ledit organe de mémoire une valeur de départ et à mémoriser une nouvelle valeur à chaque répétition successive d'un ensemble d'opératiors.
  1. c) un organe d'itération (32) associé audit organe de comptage (26a,26n) destiné à recevoir en provenance dudit organe de comptage une valeur qui y est mémorisé à itérer ladite valeur et à mémoriser la nouvelle valeur résultante de nouveau dans ledit organe de comptage (26a-26n) et d) un organe de détection 34 associé audit organe d'itération destiné à comparer ladite nouvelle valeur à une
    valeur finale et à délivrer un signal d'achèvement lorsque la-
    dite nouvelle valeur et ladite valeur finale ont une relation
    relative prédéterminée.
    2 ) Dispositif de commande de boucles selon la revendication 1, caractérisé en ce que ledit organe de mémoire comprend une pluralité de registrede mémoire (24a-24n) destines à mémoriser les valeurs de départ respectives, en ce que ledit
    organe de comptage comprend une pluralité de registres de comp-
    tage (26a-26n) associés audit registres de mémoire respectifs, et en ce que ledit dispositif de commande db boucles comprend en outre une logique de commande (35) destinée à transférer une valeur provenant d'un registre de comptage sélectionné (26a-26n) audit organe d'itération (32) et à transférer ladite nouvelle valeur audit registre sélectionné pour sa mémorisation dans 10. a
    ce registre.
    3 ) Dispositif de commande de boucles selon la
    revendication 2, caractérisé en ce que ledit organe d'itéra-
    tion (32) comprend des moyens agissant en réponse à ladite logique de commande (35) pour incrémenter ou décrémenter de manière sélective d'une valeur sélectionnée une valeur
    reçue provenant d'un registre de comptage (26a-26n).
    4 ) Dispositif de commande de boucles selon la
    revendication 2, caractérisé en ce que ladite logique de com-
    mande comporte des moyens agissant en réponse audit signal d'achèvement dudit organe de détection (34) en vue de forcer
    le chargement d'une valeur de départ contenue dans un regis-
    tre de mémoire (24a-24n) dans son registre de comptage as-
    socié (26a-26n) après la délivrance dudit signal d'achèvement.
    5 ) Dispositif de commande de boucles selon la revendication 2, caractérisé en ce qu'il comprend en outre
    un bus d'entrée (30) relié à chacun desdits registres de mé-
    moire (24a-24n), lesdits registres de mémoire (24a-24n) et ledit organe d'itération (32) ayant chacun des ports de sortie respectifs et en ce que ledit organe de comptage (26a-26n) comprend en outre une pluralité de multiplexeurs (28a-28n) associés avec les registres de mémoire (24a-24n) et les
    registres de comptage (26a-26n) respectifs, lesdits multiple-
    xeurs (28a-28n) ayant chacun en tant qu'entréesledit bus d'entrée (30), la sortie dudit organe d'itération (32) et la
    sortie de leur registre de mémoire respectif (24a-24n).
    6 ) Dispositif de commande de boucles selon la
    revendication 5, caractérisé en ce que ladite logique de com-
    mande (35) comprend de moyens pour forcer un multiplexeur sélectionné (28a,28n) à relier de manière sélective une de ses entrées à un port d'entrée de son registre de comptage
    respectif (26a-26n).
    7 ) Dispositif de commande de boucles selon la
    revendication 1, caractérisé en ce que ledit Qrgane d'itéra-
    tion (32) comprend des moyens pour décrémenter une valeur 11. reçue provenant dudit organe de comptage (26a-26n) d'une valeur
    sélectionnée pour produire ladite valeur résultante.
    8 ) Dispositif de commande de boucle selon la revendication 1, caractérisé en ce que ledit organe détecteur (34) comprend des moyens pour délivrer ledit signal d'achève-
    ment lorsque la nouvelle veleur est égale à zéro.
    9 0) Dispositif de commande de boucles selon la revendication 1, caractérisé en ce que ledit organe de comptage (36a-36n) comprend un organe multiplexeur (28a-28n) en vue de recevoir de manière sélective une des valeurs de départ, la
    valeur mémorisée de manière courante dans ledit organe de mé-
    moire (24a-24n) ou ladite nouvelle valeur résultante.
FR8503405A 1984-08-15 1985-03-08 Dispositif de commande de boucles pour appareil de traitement numerique Pending FR2569287A1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/641,097 US4727483A (en) 1984-08-15 1984-08-15 Loop control system for digital processing apparatus

Publications (1)

Publication Number Publication Date
FR2569287A1 true FR2569287A1 (fr) 1986-02-21

Family

ID=24570918

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8503405A Pending FR2569287A1 (fr) 1984-08-15 1985-03-08 Dispositif de commande de boucles pour appareil de traitement numerique

Country Status (7)

Country Link
US (1) US4727483A (fr)
JP (1) JPS6149274A (fr)
CA (1) CA1223666A (fr)
DE (1) DE3507605A1 (fr)
FR (1) FR2569287A1 (fr)
GB (1) GB2163279B (fr)
NL (1) NL8500682A (fr)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6341932A (ja) * 1985-08-22 1988-02-23 Nec Corp 分岐命令処理装置
JPS62180427A (ja) * 1986-02-03 1987-08-07 Nec Corp プログラム制御回路
US5226128A (en) * 1987-05-01 1993-07-06 Hewlett-Packard Company Horizontal computer having register multiconnect for execution of a loop with a branch
US5179674A (en) * 1988-07-25 1993-01-12 Digital Equipment Corporation Method and apparatus for predicting valid performance of virtual-address to physical-address translations
US5101484A (en) * 1989-02-14 1992-03-31 Intel Corporation Method and apparatus for implementing an iterative program loop by comparing the loop decrement with the loop value
US5452425A (en) * 1989-10-13 1995-09-19 Texas Instruments Incorporated Sequential constant generator system for indicating the last data word by using the end of loop bit having opposite digital state than other data words
US5303355A (en) * 1991-03-27 1994-04-12 Motorola, Inc. Pipelined data processor which conditionally executes a predetermined looping instruction in hardware
FR2737027B1 (fr) * 1995-07-21 1997-09-19 Dufal Frederic Dispositif electronique de localisation et de controle de boucles dans un programme d'un processeur, notamment un processeur de traitement d'images, et procede correspondant
GB2323190B (en) * 1997-03-14 2001-09-19 Nokia Mobile Phones Ltd Executing nested loops
EP1050804A1 (fr) * 1999-05-03 2000-11-08 STMicroelectronics SA Exécution de boucles d'instructions
US7290123B2 (en) * 2004-05-20 2007-10-30 Intel Corporation System, device and method of maintaining in an array loop iteration data related to branch entries of a loop detector

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4097920A (en) * 1976-12-13 1978-06-27 Rca Corporation Hardware control for repeating program loops in electronic computers

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1043358A (en) * 1962-04-02 1966-09-21 Hitachi Ltd Control system for digital computer
US3308436A (en) * 1963-08-05 1967-03-07 Westinghouse Electric Corp Parallel computer system control
US4060848A (en) * 1970-12-28 1977-11-29 Gilbert Peter Hyatt Electronic calculator system having audio messages for operator interaction
US3924270A (en) * 1974-05-06 1975-12-02 Ibm Recursive shift register for controlling a data processor
GB1588827A (en) * 1978-05-31 1981-04-29 System Dev Corp Data processor method and means for determining degree of match between two data arrays
US4379328A (en) * 1979-06-27 1983-04-05 Burroughs Corporation Linear sequencing microprocessor facilitating
US4306287A (en) * 1979-08-31 1981-12-15 Bell Telephone Laboratories, Incorporated Special address generation arrangement
JPS5779570A (en) * 1980-11-05 1982-05-18 Fujitsu Ltd Address modification system
JPS584470A (ja) * 1981-07-01 1983-01-11 Hitachi Ltd メモリ制御装置
US4462074A (en) * 1981-11-19 1984-07-24 Codex Corporation Do loop circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4097920A (en) * 1976-12-13 1978-06-27 Rca Corporation Hardware control for repeating program loops in electronic computers

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN, vol. 25, no. 9, février 1983, pages 4569-4571, New York, US; J. GONZALEZ et al.: "Branch mechanism for program loops" *

Also Published As

Publication number Publication date
NL8500682A (nl) 1986-03-03
GB2163279A (en) 1986-02-19
US4727483A (en) 1988-02-23
JPS6149274A (ja) 1986-03-11
GB2163279B (en) 1988-05-25
GB8504157D0 (en) 1985-03-20
DE3507605A1 (de) 1986-02-27
CA1223666A (fr) 1987-06-30

Similar Documents

Publication Publication Date Title
EP0712072B1 (fr) Procédé de mise en oeuvre de réduction modulaire selon la méthode de Montgomery
EP0712071B1 (fr) Procédé de mise en oeuvre de multiplication modulaire selon la méthode de montgomery
FR2569287A1 (fr) Dispositif de commande de boucles pour appareil de traitement numerique
EP0104293B1 (fr) Dispositif pour le chargement et la lecture de différentes chaînes de bascules dans un système de traitement de données
EP0198729A1 (fr) Système de simulation d&#39;un circuit électronique
FR2588980A1 (fr) Processeur de traitement de signal numerique comportant plusieurs multiplicateurs
EP0443679A1 (fr) Procédé de codage selon la méthode dite RSA, par un microcontrôleur et dispositif utilisant ce procédé
FR2672709A1 (fr) Machine d&#39;etat d&#39;ordre.
EP0913765A1 (fr) Processeur avec commande d&#39;instructions répétables ou multicycles
EP0683454B1 (fr) Procédé pour tester le déroulement d&#39;un programme d&#39;instructions
EP3803636B1 (fr) Processeur ntt incluant une pluralite de bancs de memoires
EP0793165B1 (fr) Coprocesseur d&#39;arithmétique modulaire permettant de réaliser rapidement des opération non modulaires
FR2724741A1 (fr) Circuit electronique de calcul modulaire dans un corps fini
EP0215497B1 (fr) Dispositif d&#39;autocorrélation
EP1803061A1 (fr) Systeme de processeur parallele reconfigurable, modulaire et hierarchique
EP0242258B1 (fr) Dispositif de mise en oeuvre d&#39;un algorithme dit de LEROUX- GUEGUEN,pour le codage d&#39;un signal par prédiction linéaire
EP0025731A1 (fr) Sélecteur de demandes asynchrones dans un système de traitement de l&#39;information
EP0058108B1 (fr) Générateur de signaux logiques combinés
EP0286489B1 (fr) Procédé et contrôleur pour cryptographier un message selon un algorithme à clé publique
EP0344052B1 (fr) Mémoire modulaire
EP0400734B1 (fr) Dispositif de retard d&#39;un signal numérique programmable et application à un dispositif de code correcteur d&#39;erreurs
EP0011540B1 (fr) Dispositif d&#39;interface entrée-sortie entre un commutateur de données et une pluralité de voies de transmission
CA2359198C (fr) Unite de calcul pour l&#39;execution d&#39;un protocole cryptographique
EP0823088B1 (fr) Procede et equipement de test automatique en parallele de composants electroniques
EP0902359B1 (fr) Procédé et dispositif de production d&#39;une division entière avec un coprocesseur d&#39;arithmétique modulaire