[go: up one dir, main page]

FR2486290A1 - Dispositif de transmission rapide de donnees comportant un circuit de commande a acces direct a la memoire - Google Patents

Dispositif de transmission rapide de donnees comportant un circuit de commande a acces direct a la memoire Download PDF

Info

Publication number
FR2486290A1
FR2486290A1 FR8112003A FR8112003A FR2486290A1 FR 2486290 A1 FR2486290 A1 FR 2486290A1 FR 8112003 A FR8112003 A FR 8112003A FR 8112003 A FR8112003 A FR 8112003A FR 2486290 A1 FR2486290 A1 FR 2486290A1
Authority
FR
France
Prior art keywords
address
memory
data
words
access
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
FR8112003A
Other languages
English (en)
Other versions
FR2486290B1 (fr
Inventor
Kuniaki Tabata
Tetsuo Machida
Kazuaki Ohya
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Publication of FR2486290A1 publication Critical patent/FR2486290A1/fr
Application granted granted Critical
Publication of FR2486290B1 publication Critical patent/FR2486290B1/fr
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

DESCRIPTION D'UN CIRCUIT DE COMMANDE A ACCES DIRECT A LA MEMOIRE, MUNI D'UN PREMIER REGISTRE 1A POUR MEMORISER L'ADRESSE DU HAUT D'UNE ZONE DE MEMORISATION, D'UN SECOND REGISTRE 2A POUR MEMORISER L'ADRESSE DU BAS DE CETTE ZONE DE MEMORISATION, D'UN CIRCUIT DE COMPARAISON 3A POUR COMPARER L'ADRESSE EN COURS UTILISEE POUR L'ACCES A LA MEMOIRE AVEC L'ADRESSE DU BAS MEMORISEE DANS LE SECOND REGISTRE 2A, ET D'UN CIRCUIT DE COMMANDE POUR REMPLACER L'ADRESSE EN COURS, QUI DOIT ETRE ENSUITE UTILISEE POUR L'ACCES A LA MEMOIRE, AVEC L'ADRESSE DU HAUT MEMORISEE DANS LE PREMIER REGISTRE 1A QUAND LEDIT CIRCUIT DE COMPARAISON 3A DETECTE UNE COINCIDENCE.

Description

La présente invention est relative à un circuit de commande
d'accès direct à la mémoire pour réaliser des transmissions de don-
nées entre une mémoire tampon utilisée par une unité de traitement et des terminaux assoc'iés, et concerne aussi un système de traitement de données capable de transmettre rapidement des données entre deux terminaux dont les durées de transmissions sont différentes, via une
mémoire tampon de données.
Jusqu'à présent, pour commander une telle transmission on connais-
sait comme moyen de transmission rapide de données entre plusieurs
terminaux par une mémoire tampon, un circuit de commande à accès di-
rect ou sélectif à la mémoire dénommé ci-aprés circuit d'accès direct mémoire.Dans un tel système, quand la donnée doit être transférée d'un premier terminal à un second, un circuit à accès direct mémoire réservé au premier terminal commande le transfert de la donnée vers une zone
de mném-riaation imposée d'une mémoire; tamxon, et ensuite, un autre cir-
cuit à accès direct mémoire réservé au second terminal commande le transfert de cette donnée de la mémoire tampon au second terminal.Cela
est accompli avec un minimum de commande de la part de l'unité de trai-
tement du système de façon à permettre à cette unité de réaliser d'autres tâches durant la transmission des données, ce qui contribue
à rendre plus élevée la vitesse de traitement du système.
Mais si les longueurs des secteurs des terminaux de transmission et de réception sont différentes l'une de l'autre, et à moins que ces longueurs Zespectives soient des multiple& pairs l'une de l'autre,
les circuits classiques à accès direct mémoire ne pourront pas trans-
férer en une seule transmission vers le terminal de réception, toute une partie de la donnée mémorisée dans la mémoire tampon.Il restera ainsi des données occupant une fraction d'une longueur de secteur du terminal de réception.En conséquence, dans le système classique, la donnée suivante du terminal de transmission peut être transmise à la mémoire tampon, et il est donc nécessaire d'utiliser d'abord l'unité de traitement pour décaler cette donnée restante au début de la zone de mémorisation de manière à la transférer à l'extérieur de
la mémoire dans la séquence appropriée.Bien entendu, une telle utilisa-
tion de l'unité de traitement réduit naturellement la vitesse de
traitement du programme.
Pour rendre possible la transmission d'une donnée dépassant la capacité de la zone tampon à haute vitesse entre les terminaux, la présente invention a pour but de prévoir un circuit d'accès direct à la mémoire capable de permettre tout d'abord l'accès de cette donnée existant de l'adresse de départ de transmission, située quelque part entre l'adresse du haut et l'adresse du bas de la zone tampon, vers l'adresse du bas, et de transmettre ensuite cette donnée existant de
cette adresse du bas à l'adresse de fin de transmission située quel-
que part entre l'adresse du haut et l'adresse de départ de transmis-
sion.
Pour réaliser ce but, le circuit de commande d'accès direct mémoi-
re selon la présente invention est muni de moyens mémoires qui mémo-
risent l'adresse du haut de la mémoire, de moyens mémoires qui mémo-
risent l'adresse du bas, de moyens de comparaison qui comparent l'adresse habituellement utilisée pour l'accès à la mémoire avec l'adresse du bas, et des moyens pour faire évoluer l'adresse, qui doit être ensuite utilisée pour l'accès à la mémoire, vers l'adresse
du haut quand les moyens de comparaison ont détecté une coïncidence.
La figure 1 est un schéma simplifié du système classique de trai-
tement des données;
La figure 2 est un schéma simplifié du système de traitement se-
Ion la présente invention; La figure 3 est un schéma montrant un exemple du traitement des données à l'intérieur de la mémoire tampon du système de la figure 2; et La figure 4 est un tableau uzilisé poux expliquer Différentes
informations concernant le traitement des données de la figure 3.
Sur la figure 1, les terminaux 30A et 30B sont reliés à l'unité de traitement 50 et à la mémoire tampon 60, par l'intermédiaire
des circuits d'accès direct à la mémoire 40A et 40B, respectivement.
Quand la donnée est transmise du terminal 30A au terminal 30B, le circuit d'accès direct mémoire 40A transmet la donnée, mot à mot,
du terminal 30A à la mémoire tampon 60.La donnée transmise est enre-
gistrée séquentîellement dans une zone tampon pré-établie à l'inté-
rieur de la mémoire 60 en commençant à sa position d'adresse du haut.
La quantité totale de la donnée est choisie de telle sorte qu'elle se situe dans la gamme capacitaire de la zone, et est égale à un nombre
de mots qui est un certain multiple de la longueur de secteur détermi-
née en fonction du terminal 30A.Quand la mémorisation de la donnée est terminée, le circuit d'accès direct mémoire 40B enregistre, mot à mot, la donnée provenant de la mémoire tampon 60 et l'applique au terminal B.La transmission de données de la mémoire tampon 60 au terminal B par le circuit d'accès direct mémoire 40B s'effectue mot à mot jusqu'au nombre deimots qui est un certain multiple de la longueur de secteur déterminée par le terminal 30B dans l'intervalle n'excédant
pas la quantité de données déjà transmises du terminal 30A à la mé-
moire tampon 60.
Quand la transmission des données par ce circuit 40B s'achève, le
circuit d'accès direct mémoire 40A transmet à nouveau la donnée sui-
vante du terminal 30A à la mémoire tampon 60.Dans ce cas, si les lon-
gueurs de secteurs pour les terminaux 30A et 30B sont identiques, toute la donnée qui a été envoyée du terminal A.à la mémoire tampon est envoyée de-cette mémoire 60 au terminal B.En conséquence, la donnée suivante peut être enregistrée, mot à mot, dans la zone tampon prédéterminée de le mémoire 60 à partir de son adresse du
haut.Ensuite, les mêmes procédures sont répétées de manière à réali-
ser la transmission des données du terminal 30A au terminal 30B, via
la mémoire tampon 60.
Mais, si les longueurs sectorielles des terminaux 30A et 30B sont différentes l'une de l'autre, toute la donnée, qui a été transmise du
terminal 30A à la mémoire tampon 60, ne peut pas être transmise au ter-
minal 30B dans les circuits classiques d'accès direct mémoire.C'est pour cette raison qu'il existe dans la mémoire tampon 60, une donnée suivante non transmiseSi la donnée suivante doit être retransmise du terminal 30A à la mémoire tampon 60 après la fin de la transmission de la mémoire tampon 60 au terminal 30B, cette donnée non-transmise doit d'abord être transférée vers une zone commençant à partir de l'adresse du haut d'une zone tampon pré-déterminée à l'intérieur de la mémoire tampon 60, et ensuite être transmise du terminal 30A de
telle façon qu'elle soit positionnée à proximité de la donnée non-
transmise après leur transfert.Ainsi, selon la technique de l'Art antérieur, l'unité de traitement 50 doit exécuter un traitement pour transférer la donnée non-transmise à l'intérieur de la zone tampon si
de grandes quantités de données dépassant la capacité de la zone tam-
pon doivent être transmises entre les terminaux.En d'autres termes, l'Art antérieur pose dans ce cas le problème de la chute de la
vitesse de transmission des données.
La figure 2 montre un terminal 30A du type utilisé sur la figure1, une unité de traitement 50 et un circuit d'accès direct mémoire 40A selon la présente invention reliant le terminal 30A à l'unité de traitement 50. Comme le circuit d'accès direct mémoire 40B selon l'invention est identique au circuit 40A de la figure 2, son montage n'est pas représenté. Le circuit d'accès direct mémoire 40B est relié à des conducteurs de signaux (tels qu'un bus de données DB, un
bus d'adresse AB et analogues), reliant le circuit d'accès direct mé-
moire 40A à l'unité de traitement 50 et à la mémoire 60 de la même
façon que le circuit d'accès direct mémoire 40A.Dans la description
suivante; lorsque les parties du circuit d'accès direct mémoire 40B
sont mentionnées, elles seront représentées par des numéros de réfé-
rence des parties correspondantes du circuit d'accès direct mémoire
A en remplaçant leurs suffixes A par B.Parmi les éléments du cir-
cuit d'accès direct mémoire 40A représenté sur la figure 2, la partie encerclée par des tirets représente la partie ajoutée selon la présente invention, et le reste des éléments est identique à ceux du
circuit classique d'accès direct mémoire.
En lançant la transmission d'accès direct mémoire entre le termi-
nal 30A et l'unité de traitement 50, cette dernière applique un numéro
de dispositif DVN désignant le terminal 30A à un décodeur 13A.Ce déco-
deur 13A décode tlenuméro DVN et donne à un décodeur d'instructions A la permission de fonctionner seulement quand le terminal 30A est désigné. L'adresse du haut TOP, l'adresse du bas BOTTOM, l'adresse de lancement de la transmission BGN et le nombre de mots de transmission W de la transmission à accès direct mfimoire sont respectivement
positionnés dans des registres d'adresses 1A, 2A, un compteur d'adres-
ses 4A et un compteur de mots 5A.Ceci est réalisé quand l'unité de traitement 50 met séquentiellement les valeurs TOP, BTM, BGM et W sur le bus de données et envoie une instruction pré-établie sur la ligne ODR correspondant au positionnement de chaque registre par rapport au décodeur d'instructions lOA.Il existe deux modes de transmission des données, un mode LECTURE (enregistrement vers la mémoire tampon
) et un mode ECRITURE (lecture de la mémoire.tampon 60).L'instruc-
tion de sélection des modes ECRITURE/LECTURE (sélection du mode: MS) à et de la mémoire tampon 60 lui est donnée par l'unité de traitement 50. Quand l'instruction de départ de la transmission d'accès direct mémoire est appliquéede l'unité de traitement 50 sur la ligne ODR, le
décodeur d'instructions 10A décode l'instruction et déclenche un gé-
nérateur de signaux de demande 9A.te générateur 9A envoit un signal
de demande de transmission REQ à l'unité de traitement 50, à inter-
valle de temps appioprié, en réponse à un signal de synchronisation TIM émis de l'unité de traitement 50 et envoit aussi un signal de synchronisation de transmission de données CLK au terminal 30A.Les signaux REQ et CLK sont débités du générateur de signaux de demande
9A chaque fois qu'un mot est transmis après le départ de la trans-
mission d'accès direct mémoire.
Un mot de la donnée à envoyer est appliqué du terminal 30A au registre de données 6A.Cette donnéaest envoyée à la mémoire tampon via le bus de données DB et est mémorisée en position d'adresse donnée du compteur d'adresses 4A via le bus d'adresses AB.Chaque fois qu'un mot est transmis, le compteur de mots 5A décompte tandis que le compteur d'adresses 4A compte.Une des caractéristiques de la présente invention réside dans le fait que la valeur du compteur d'adresses 4A est comparée avec l'adresse BTM du registre d'adresses
2A par le circuit comparateur 3A et quand ces deux valeurs coinci-
dent, l'adresse TOP à l'intérieur du registre lA est positionnée au compteur d'adresses 4A et la transmission de la donnée suivante est interrompue sur la base de ce contenu mis à jour du compteur d'adresses 4A.C'est de cette manière que la donnée de l'adresse du haut peut être transmise successivement à la donnée de l'adresse du ba.s de la mémoire intermédeaire 60.On va maintenant décrire, en se référant aux figures 3 et 4, le fonctionnement de l'appareil pour
transmettre la donnée du terminal 30A au terminal 30B.
On supposera que la zone tampon possède une capacité de 1024 mots o l'adresse du haut TOP est à l'adresse 1000, l'adresse du bas BTM à l'adresse 2023, la longueur de secteur égale à 256 mots pour le terminal 30A et 100 mots pour le terminal 30B.En d'autres termes, la transmission de données entre le terminal 30A et l'unité de traitement 50 s'effectue en utilisant une unité multiple de 256 mots tandis que la transmission de données entre le terminal 30B et l'unité de traitement 50 s'effectue dans une unité multiple de
100 mots.
(1) Comme état initial, on remet à zéro tout le contenu de la zone tampon. Tout d'abord, la donnée provenant du terminal 30A est englobée dans le tampon.Comme la capacité de 1024 mots de la zone
tampon est un multiple de la longueur de secteur de 256 mots du ter-
minal 30A, la donnée à 1024 mots passe du terminal 30A dans la zone
tampon, de son adresse 1000 à son adresse 2023.En conséquence, l'uni-
té de traitement 50 exécute le traitement suivant à partir du circuit d'accès direct mémoire 40A.C'est à dire que l'unité de traitement 50 envoit un numéro prédéterminé de dispositif DVN au décodeur 13A, émet l'adresse de départ de transmission BNG = 1000, le nombre de mots de transmission W = 1024, l'adresse du haut de la zone tampon TOP = 1000
et l'adresse du bas BTM = 2023 de la zone tampon, et positionne res-
pectivement cette donnée dans le compteur d'adresses 4A, le compteur de mots 5A, le registre d'adresses lA et le registre d'adresses 2A, sous commande du décodeur d'instructions lOA.Sur ce point il faut noter
que la capacité de 1024 mots de la zone tampon est commodément un mul-
tiple pair de la longueur de secteur de 256 mots du terminal 30A
de manière à réaliser le transfert de données en huit secteurs.
Quand le positionnement de la donnée dans les registres 1A et 2A et les compteurs 3A et 4A est achevé, l'unité de traitement 50 produit une instruction de lancement de la transmission à accès direct mémoire au circuit 40, de manière à exécuter mot à mot la transmission de données entre le terminal 30A et l'unité de traitement 50, via le registre de données 6A (tampon à 1 mot).En d'autres termes, en réponse à cette instruction de départ de transmission, la donnée du terminal
A est mémorisée mot à mot dans le registre de données 6A en synchro-
nisme avec le signal de synchronisation CLK du générateur de signaux de demande 9A.Aprés le positionnement du mot un de la donnée dans le
registre 6A, le contenu du compteur d'adresses 4A est lu puis appli-
qué à l'unité de traitement 50 via le bus d'adresses.Ensuite, le mot un de la donnée, lu à partir du registre 6A, est mémorisé dans la
partie de la zone tampon à l'intérieur de l'unité de traitement corres-
pondant à l'adresse sus-mentionnée.La lecture de la donnée à partir du compteur d'adresses 4A et du registre de données 6A s'effectue, respectivement, en synchronisme avec les signaux Ar et Dr de l'unité
de traitement 50.
L'unité de traitement 50 produit d'abord le signal AR en réponse au signal REQ et ensuite le signal DR après le passage d'une période de temps prédéterminée.Puis, le générateur de signaux de demande applique le signal REQ en réponse au signal d'horloge TIM.D'autre
part, le terminal 30A mémorise le mot un de la donnée dans le regis-
2486k90
tre 6A en réponse au signal de synchronisation CLK du générateur 9A.
L'unité de traitement 50 produit également les signaux AR et DR dès réception du second et des signaux suivants REQ et permet à la mémoire
tampon 60 de mémoriser la donnée à l'intérieur du registre 6A.
Chaque fois que s'effectue cette transmission à 1 mot, le contenu du compteur d'adresses4A progresse d'une unité grâce au signal AR tandis que le contenu du compteur de mots 5A régresse d'une unité
par le signal DR.
Quand le contenu du compteur de mots 5A atteint zéro, la transmis-
sion de données de W mots prédéterminés est finie.A ce moment-là, un signal d'interruption INT est appliqué du compteur 5A à l'unité de traitement 50 de façon à ce que la fin de la transmission de données à W mots soit identifiée à l'unité de traitement 50.A ce moment-là, aussi, un signal de vidage EMP représentant le contenu zéro du compteur de mots 5A est délivré par ce dernier de sorte que le générateur de
signaux de demande 9A arrête l'émission des signaux CLK et REQ.
Ainsi, comme on le représente dans la partie indiquée par des lignes obliques sur la figure 3(a), les 1024 mots sont mémorisés dans
la région s'étendant des adresses 1000 à 2023 de la zone tampon.
(2) En réponse au signal d'interruption du compteur de mots 5A, l'unité de traitement 50 réalise la transmission de données au
circuit d'accès direct mémoire 40B.Comme les 1024 mots sont mémori-
sés dans les adresses 1000 à 2023 à l'intérieur de la zone tampon 60 et comme la longueur de secteur du terminal 30B est égale à 100,
l'unité de traitement 50 détermine l'adresse de départ de la transmis-
sion BBN = 1000 et le nombre de mots de transmission W = 1000 pour le circuit 40B, 1000 mots étant le multiple pair le plus proche de la longueur de secteur du terminal 30B par rapport à la capacité de la zone tampon.Elle détermine aussi l'adresse de fin de transmission
END = 1999.
L'unité de traitement 50 exécute le traitement Suivant pour le circuit d'accès direct mémoire 40B.C'est à dire qu'elle délivre au circuit 40B l'adresse de départ de transmission BGN = 1000, le nombre de mots de transmission W = 1000 ainsi que l'adresse du haut TOP = 1000 et l'adresse du bas BTM = 2023 de la mémoire tampon 60, via
le bus de données.L'unité de traitement 50 délivre aussi le numéro dis-
positif DVN désignant le terminal 30B et l'instruction d'ensemble des
données au décodeur 13B et au décodeur d'instructions lOB, respective-
2486 90
ment, et mémorise la donnée sus-mentionnée dans le compteur d'adresses
4AM le compteur de mots 5A, les registres d'a&esse 1A et 2A, respectivement.
Ensuite, l'unité de traitement 50 délivre l'instruction de départ de la transmission au circuit d'accès direct mémoire 40B.Selon le principe déjà décrit, le circuit 40B délivre le signal de demande de transmission REQ à partir de son générateur 9B et en réponse à ce signal REQ, l'unité de traitement 50 débite le signal de lecture
d'adresse AR et le signal d'écriture de donnée DW au compteur d'adres-
ses 4B, au compteur de données 6B, et au compteur de mots 5B, respecti-
vement.De cette façon, le mot un de donnée désigné par l'adresse 1000 produite du compteur d'adresses 4B est extrait de la zone tampon 60
et est mémorisé dans le registre de données 6B via le bus de données.
Cette donnée est transmise au terminal 30B en réponse au signal de synchronisation CLK.Puis, le compteur d'adresses 4B progresse d'une
unité en réponse au signal AR tandis que le compteur de mots 5B dégres-
se d'l en réponse au signal DW, suivi ensuite par la transmission des données mot à mot.Quand la valeur du compteur de mots atteint zéro, le signal d'interruption INT est appliqué à l'unité de traitement 50 à partir du compteur de mots 5B, de la même façon
que dans le circuit d'accès direct mémoire 40A.
C'est de cette manière que des données à 1024 mots de la mémoire tampon 60, 1000 mots de l'adresse 1000 à l'adresse 1999 sont transmis au terminal 30B, comme on le représente sur la figure 3(b).Les données à 24 mots de l'adresse 2000 à l'adresse 2023 restent comme données non encore transmises.La raison en est que la longueur de secteur du terminal 30B est de 100 motsoEn d'autres termes, [1024/100] x 100 = 1000 mots contenant des données sont transmis au terminal 30B.Ici,
les crochets [t représentent le symbole de Gauss.
(3) Parmila zone tampon, les adresses de 2000 à 2023 restent com-
me données non encore transmises.La région autre que ces adresses, c'est à dire la région h 1000 mots de l'adresse 1000 à l'adresse 1999, est utilisée comme zone tampon pour introduire la donnée provenant du terminal 30A.Cependant, comme la longueur de secteur du terminal A est de 256 mots, les mots qui sont uttisés dans la pratique parmi les 1000 mots sus-mentionnés sont de 768 ( = [1000/256] x 256) Cela signifie que cinq secteurs de 256 mots représentent le multiple pair le plus proche de l'espace de stockage disponible de sorte que la donnée provenant du terminal A soit englobée dans les adresses 1000 à 1767 de la mémoire tampon.Pour cette raison, l'unité de traitement désigne l'adresse du haut TOP=1000, l'adresse du bas BTM=2023, l'adresse de départ de transmission BGN=1OO0 et le nombre de mots
de transmission W=768 au circuit d'accès direct mémoire 40A, de maniè-
re à permettre au terminal 30A de transférer la donnée à la zone tam- pon. (4) Après transmission de la donnée, l'unité de traitement 50 exécute le traitement pour transmettre la donnée de l'adresse 2000 en avant de la zone tampon 60 vers le terminal 30B.La donnée des adresses 2000 à 2023 et la donnée des adresses 1000 à 1767 sont continues.Bien que 792 mots de données au total soient présents dans la zone tampon, seulement 700 mots ( = [792/1003 x 100) sont transmis à cet instant parceque la longueur de secteur du terminal B est de 100 mots.En d'autres termes, la donnée des adresses 2000 à 2023 et la donnée des adresses 1000 à 1675, soit 700 mots au total, sont transmises au terminal B.En conséquence, l'unité de traitement 50 désigne l'adresse du haut TOP=1000, l'adresse du bas BTM=2023, l'adresse de départ de transmission BGN=2000 et le nombre
de mots transmis W=700 au circuit d'accès direct mémoire 40B.
De la même façon que déjà décrit, le circuit d'accès direct
mémoire 40B transmet la donnée, mot à mot, de la zone tampon au ter-
minal 30B.Dès transmission d'un mot, le contenu du compteur d'adres-
ses 4B est appliqué au bus d'adresse en réponse au signal AR et aug-
mente de un après ladite application.Au moment précédant l'applica-
tion du contenu du compteur d'adresses 4B au bus d'adresse AM, le contenu du compteur 4B et l'adresse du bas BTM sont comparés l'un avec l'autre par le circuit comparateur 3B.Aprés que le contenu de ce compteur 4B soit appliqué au bus d'adresse AB en réponse au signal AR et utilisé pour la transmission de données à un mot, le compteur 4B n'est pas augmenté si la sortie du circuit comparateur 4B indique une coincidence, et mémorise l'adresse du haut TOP à l'intérieur du registre 4B.Ensuite, la transmission du mot de la donnée est répétée, mot à mot, de la même façon en utilisant le contenu du compteur
d'adresses 4B.C'est à dire que le contenu du compteur 4B est conti-
nuellement mis à jour: BGN, BGN+i,..., BTM-1, BTM, TOP, TOP+l,...
chaque fois que la transmission d'un mot s'effectue après le départ de la transmission à accès direct mâmoire.Quand la transmission de
W mots prédéterminés est finie, le signal d'interruption INT est ap-
pliqué à l'unité de traitement 50.
Dans cet exemple, la transmission de données est lancée à partir
de l'adresse BGN=2000 et aprés la transmission du 24ème mot de don-
nées, le contenu du compteur d'adresses 4B est mis à jour à l'adresse du haut TOP=lOOO.Ensuite, quand la donnée de cette adresse à
l'adresse 1675 de la zone tampon est transmise, le signal d'interrup-
tion INT est produit à partir du circuit d'accès direct mémoire 40B.
En conséquence, comme on le représente sur la figure 3(c), après les 24 mots de l'adresse 2000 à l'adresse 2023, les 676 mots des adresses 1000 à 1675, soit 700 mots au total, sont transmis, et les 92 mots
des adresses 1676 à 1767 restent comme la donnée non encore transmise.
(5) A partir de la région à 932 mots des adresses 1767 à 2023 et 1000 à 1675 de la mémoire tampon 60, l'unité de traitement 50 décide le nombre de mots W à transmettre du terminal 30A [932/256] = 768 et au même moment, désigne l'adresse du haut TOP=1000, l'adresse du bas BTM=2023 et l'adresse de départ de la transmission BGeN1768 au circuit d'accès direct mémoire 40A.Ce dernier lit les 768 mots, un à un, du terminal 30A et les mémorise dans la zone tampon 60.Dans ce cas, si le circuit comparateur 3A détecte la coincidence du contenu du compteur d'adresses 4A avec la valeur TOP du registre d'adresses lA, cette valeur TOP est positionnée dans le registre 4A et est utlisée
comme adresse de transmission suivante dans la zone tampon.Le fonc-
tionnement du circuit d'accès direct mémoire 40A dans ce cas est le même que celui du circuit 40B décrit dans le paragraphe (4) ci-dessus sauf que le sens de transmission de données est différent.En résultat, les 768 mots de données au total sont mémorisés de manière à continuer les adresses 1768 à 2023 et 1000 à 1511.De cette façon, dans la zone tampon 60, 348 mots des adresses 1676 à 2023 et 512 mots des adresses 1000 à 1511, soit 512 mots au total, sont stockés comme données non encore transmises (voir figure 3(e)) (6) L'unité de traitement 50 désigne l'adresse du haut TOP=1000, l'adresse du bas BTM2023, l'adresse de départ de la transmission
BGN=1676 et le nombre de mots transmis W = [86011003 G = 800 au cir-
cuit d'accès direct mémoire 40B et ordonne le démarrage de la transmis-
sion de données à 800 motsoAprés transmission des 348 mots des adresses 1676 à 2023, le circuit 40B met à jour la valeur du compteur
d'adresses 4A à TOP=1OO0 à partir du registre d'adresses lA et trans-
met ensuite, un par un, les 452 mots des adresses 1000 à 1451, soit 800 mots au total.De cette façon, 60 mots des adresses 1452 à 1511 restent dans la zone tampon 60 sous forme d'une donnée non encore
transmise (voir figure 3(f)).
(7) Quand lui est notifié par le signal d'interruption INT le fait que la transmission à 800 mots est terminée par le circuit d'accès direct mémoire 40B, l'unité de traitement 50 identifie que la quantité de données, déjà transmise du terminal 30A à la zone tampon 60, atteint les 2560 mots voulus.En conséquence, comme il n'y a pas de données à transmettre ensuite du terminal 30A à la mémoire tampon 60, l'unité de traitement 50 indique le nombre de mots de transmission W-60, l'adresse du haut TOP=1000, l'adresse du bas BTM=2023 et l'adresse de lancement de la transmission BGN=1452 au circuit d'accès direct mémoire 40B pour appliquer la donnée non-transmise au terminal 30B grâce aUcircuit d'accès direct mémoire 40B, et permettre au circuit d'accès direct mémoire
de transmettre la donnée de 60 mots.
C'est de cette façon que la donnée de 2560 mots peut être
transmise par l'intermédiaire de la zone tampon sans transfert.

Claims (8)

REVENDICATIONS
1 --Circuit de commande à accès direct à la mémoire, du type o une mémoire (60) est reliée à une unité de traitement (50) via un bus d'adresses (AB) et un.bus de données (DB) et o l'accès à une région prédéterminée de ladite mémoire (60) s'effectue directement via ledit bus d'adresses (AB) et ledit bus de données (DB) sans passer
par ladite unité de traitement (50), ce circuit étant ca-
ractérisé en ce qu'il comporte: une première mémoire (1A) qui mémorise une première adresse limite de ladite région prédéterminée; une seconde mémoire (2A) qui mémorise une seconde adresse limite de ladite région prédéterminée; une troisième mémoire (4A) qui mémorise une adresse à appliquer audit bus d'adresses pour permettre l'accès à ladite région prédéterminée; et des moyens comparateurs (3A) qui comparent le contenu de ladite seconde mémoire (2A) avec celui de ladite troisième mémoire (4A) , cette dernière comprenant d'ailleurs des moyens (AR) pour mettre à jour son contenu, chaque fois que son accès est réalisé,
de telle façon que, lorsque la sortie desdits moyens com-
parateurs (3A) ne montrent pas de coincidence, le contenu de ladite troisième mémoire (4A) est changé par un volume prédéterminé et quand la sortie desdits moyens comparateurs représente une coincidence, le contenu de ladite troisième
mémoire (4A) est rendu égal à ladite première adresse li-
mite de ladite première mémoire (1A).
2 - Circuit de commande selon la revendication 1, ca-
ractérisé en ce que lesdites première, seconde et troisiè-
me mémoires (1As 2A, 4A) effectuent, respectivement, l'ac-
cès à ladite première adresse limite, l'accès à ladite seconde adresse limite et l'accès à une adresse de départ
d'accès de ladite mémoire.
3 - Circuit selon la revendication 1, caractérisé en ce que le système de mise à jour (AR) fonctionne pour changer le contenu de ladite troisième mémoire (4A) de manière à réduire la différence entre l'adresse mémorisée dans ladite troisième mémoire (4A) et la valeur de ladite seconde adresse limite quand la sortie desdits moyens
comparateurs (3A) n'indique pas une coïncidence.
4 - Circuit selon la revendication 1, caractérisé en ce que le système de mise à jour (AR) sert à mettre i jour le contenu de ladite troisième mémoire (4A) après que son contenu ait été délivré audit bus d'adresses (AB) en réponse à un premier signal prédéterminé de ladite
unité de traitement (50).
- Circuit selon la revendication 2, caractérisé en ce qu'il comporte, en outre, des moyens (5A) destinés à mémoriser des informations d'adresses, données par ladite unité de traitement (50), via ledit bus de données (DB) , auxdites première, seconde et troisième mémoires (lA, 2A, 4A) en réponse à une instruction prédéterminée
donnée par ladite unité de traitement (50).
6 - Système de traitement de données, comprenant une unité de traitement (50); une mémoire (60); un premier et second circuit de commande à accès direct à la mémoire (lA, 2A, 3A, 4A, 5A); un bus de données (DB); un bus d'adresses (AB) pour relier ladite unité de traitement (50), ladite
mémoire (60), et lesdits circuits de commande l'un à l'au-
tre (lA, 2A, 3A, 4A, 5A); et des premier et second ter-
minaux (30A, 30B) reliés, respectivement, auxdits premier
et second circuits de commande; et aussi dans lequel sys-
tème la transmission des données entre ledit premier et ledit second terminal (30A, 30B) s'effectue, via lesdits premier et second circuits de commande à accès direct à la mémoire (60), et via une région prédéterminée située à
l'intérieur de ladite mémoire (60); ce système étant ca-
ractérisé en ce que son amélioration est constituée par chacun desdits premier et second circuits de commande à accès direct mémoire, eux mêmes comprenant: des premier
et second moyens (lA, 2A) destinés à mémoriser, respecti-
vement, les première et seconde adresses limites de ladite région prédéterminée appliquées dudit bus de données (DB); des troisièmes moyens (4A) destinés à mémoriser une adresse pour permettre l'accès à ladite région prédéterminée afin i4 d'y lire une donnée ou mémoriser une donnée dans ladite
mémoire (60) comprenant une adresse de départ de trans-
misiion appliquée dudit bus de données (DB) comme valeur initiale; des quatrièmes moyens (AR) reliés aux dits troisièmes moyens et destinés à produire son contenu audit bus d'adresses chaque fois que l'accès à ladite mémoire
est réalisé; des cinquièmes moyens (5A) destinés à mémo-
riser un nombre de mots égal au nombre de mots à trans-
mettre à ladite mémoire (60), ces dits cinquièmes moyens
étant reliés à ladite unité de traitement (50) pour mémo-
riser le nombre de mots qui y est appliqué à partir de
celle-ci via ledit bus de données (DB) comme valeur ini-
tiale et pour effectuer un décomptage dudit nombre de mots, par un nombre prédéterminé, chaque fois que l'accès à
ladite mémoire est réalisé; des sixièmes moyens (3A) des-
tinés à comparer l'un avec l'autre les contenus en mémoire
desdits second et troisième moyens (2A, 4A); lesdits troi-
- sièmes moyens (lA) étant reliés à ladite unité de traite-
ment (50) de sorte que son contenu en mémoire progresse chaque fois que l'accès à ladite mémoire est réalisé, et de telle façon que, lorsque la sortie desdits moyens de comparaison (3A) n'indique aucune coincidence, le contenu en mémoire desdits troisièmes moyens (4A) est augmenté
et quand la sortie desdits moyens de comparaison (3A) in-
dique une coincidence, le contenu en mémoire desdits troi-
sièmes moyens (4A) devient égal à ladite première adresse
limite desdits premiers moyens (1A).
7 - Méthode de commande, à accès direct à la mémoire, de la transmission de mots contenant des données, entre un premier et un second terminal de longueurs de secteur différentes, via une zone de mémorisation prédéterminée possédant une adresse du haut et une adresse du bas, méthode caractérisée en ce qu'elle comporte les stades suivants: (a) mémorisation de ladite adresse du haut; (b) mémorisation de ladite adresse du bas; (c) mémorisation d'une adresse de début d'un emplacement de mémoire formant partie de ladite zone de mémorisation prédéterminée; (d) transfert d'un mot de données vers ou de ladite zone de mémorisation prédéterminée, sur la base de ladite adresse de début; (e) augmentation de ladite adresse de début après transfert dudit mot de données; (f) comparaison de l'adresse ainsi incrémentée avec ladite adresse mémorisée du bas; (g) répétition des stades (d) à (f) jusqu'à détecter une comparaison entre ladite adresse incrémentée et ladite adresse mémorisée du bas;
(h) remplacement de l'adresse incrémentée par l'a-
dresse mémorisée du haut; et
(i) répétition des stades (d) et (e).
8 - Méthode selon la revendication 7, caractérisée en ce qu'elle comporte en outre les stades suivants: (j) mémorisation d'un nombre de mots égal au nombre
de mots de données à transférer au moment de la mémorisa-
tion desdites adresses du haut et du bas; (k) diminution dudit nombre de mots chaque fois qu'un mot de donnée est transféré suivant le stade (d); et
(1) répétition du stade (i) jusqu'à ce que ledit nom-
bre de mots soit égal à zéro.
9 - Méthode selon la revendication 8, caractérisée
en ce que ledit stade (j) comporte la sélection d'un nom-
bre de mots qui est égal à un nombre entier de fois la
longueur de secteur du terminal d'o ou vers lequel doi-
vent être transférés des mots de données et qui est égal ou inférieur à la capacité de mémoire en mots disponibles
de ladite zone de mémorisation prédéterminée.
FR8112003A 1980-07-04 1981-06-18 Dispositif de transmission rapide de donnees comportant un circuit de commande a acces direct a la memoire Granted FR2486290A1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9065280A JPS5717049A (en) 1980-07-04 1980-07-04 Direct memory access controlling circuit and data processing system

Publications (2)

Publication Number Publication Date
FR2486290A1 true FR2486290A1 (fr) 1982-01-08
FR2486290B1 FR2486290B1 (fr) 1983-05-13

Family

ID=14004442

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8112003A Granted FR2486290A1 (fr) 1980-07-04 1981-06-18 Dispositif de transmission rapide de donnees comportant un circuit de commande a acces direct a la memoire

Country Status (4)

Country Link
US (1) US4658349A (fr)
JP (1) JPS5717049A (fr)
DE (1) DE3126363C2 (fr)
FR (1) FR2486290A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2523746A1 (fr) * 1982-03-17 1983-09-23 Inst Francais Du Petrole Dispositif associe a un calculateur pour commander des transferts de donnees entre un systeme d'acquisition de donnees et un ensemble comportant un appareil d'enregistrement et de lecture
FR2643994A1 (fr) * 1989-03-06 1990-09-07 Brother Ind Ltd Dispositif pour tamponner des donnees
US5293490A (en) * 1989-03-06 1994-03-08 Brother Kogyo Kabushiki Kaisha Data buffering device having simple data reading and/or storing function

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57185618U (fr) * 1981-05-22 1982-11-25
JPS59167761A (ja) * 1983-03-14 1984-09-21 Hitachi Ltd 計算機システム
JPH0616272B2 (ja) * 1984-06-27 1994-03-02 株式会社日立製作所 メモリアクセス制御方式
JPS6275860A (ja) * 1985-09-30 1987-04-07 Toshiba Corp デ−タ転送制御装置
US5109492A (en) * 1986-09-19 1992-04-28 Hitachi, Ltd. Microprocessor which terminates bus cycle when access address falls within a predetermined processor system address space
JPH0752405B2 (ja) * 1988-12-14 1995-06-05 日本電気株式会社 シングルチップマイクロコンピュータ
EP0454605A3 (en) * 1990-04-25 1992-04-22 International Business Machines Corporation Bus request device in a direct memory access (dma) system
JPH0496163A (ja) * 1990-08-08 1992-03-27 Nec Corp Dmaコントローラ
EP0551494A4 (en) * 1991-08-07 1995-03-01 Adaptec Inc Intelligent hardware for automatically reading and writing multiple sectors of data between a computer bus and a disk drive
DE4127579A1 (de) * 1991-08-21 1993-02-25 Standard Elektrik Lorenz Ag Speichereinheit mit einem adressgenerator
US5471632A (en) * 1992-01-10 1995-11-28 Digital Equipment Corporation System for transferring data between a processor and a system bus including a device which packs, unpacks, or buffers data blocks being transferred
JP2731878B2 (ja) * 1992-02-18 1998-03-25 三菱電機株式会社 通信装置
JP2671768B2 (ja) * 1993-08-24 1997-10-29 日本電気株式会社 Dmaデータ転送方式
US5742840A (en) * 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
US7301541B2 (en) 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
US6643765B1 (en) 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
US6295599B1 (en) * 1995-08-16 2001-09-25 Microunity Systems Engineering System and method for providing a wide operand architecture
US5953241A (en) * 1995-08-16 1999-09-14 Microunity Engeering Systems, Inc. Multiplier array processing system with enhanced utilization at lower precision for group multiply and sum instruction
JPH10199396A (ja) * 1997-01-13 1998-07-31 Taiheiyo Seiko Kk 多極型ヒューズ素子およびこの素子を使用した多極型ヒューズ
ATE467171T1 (de) * 1998-08-24 2010-05-15 Microunity Systems Eng System mit breiter operandenarchitektur und verfahren
US7932911B2 (en) * 1998-08-24 2011-04-26 Microunity Systems Engineering, Inc. Processor for executing switch and translate instructions requiring wide operands
US8640194B2 (en) * 2004-08-25 2014-01-28 Nec Corporation Information communication device and program execution environment control method
US9785565B2 (en) 2014-06-30 2017-10-10 Microunity Systems Engineering, Inc. System and methods for expandably wide processor instructions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2260141A1 (en) * 1974-02-01 1975-08-29 Honeywell Bull Soc Ind Data transfer control for data processor - is used between periodic and non-periodic units employing buffer memory
US4125870A (en) * 1975-10-15 1978-11-14 Tokyo Shibaura Electric Co., Ltd. Information transfer control system
US4138732A (en) * 1975-10-31 1979-02-06 Tokyo Shibaura Electric Co., Ltd. Data transfer control system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573855A (en) * 1968-12-31 1971-04-06 Texas Instruments Inc Computer memory protection
US3638195A (en) * 1970-04-13 1972-01-25 Battelle Development Corp Digital communication interface
US3903510A (en) * 1973-11-09 1975-09-02 Teletype Corp Scrolling circuit for a visual display apparatus
GB1474385A (en) * 1973-12-14 1977-05-25 Int Computers Ltd Multiprocessor data processing systems
IT1033888B (it) * 1975-05-26 1979-08-10 Ottica Snc Sistema di fissaggio a facile intercambiabilita per lenti da occhiale e relativi occhiali da nuoto per uso sportivo in genere e maschere subacquee
DE2641741C2 (de) * 1976-09-16 1986-01-16 Siemens AG, 1000 Berlin und 8000 München Rechenanlage aus mehreren miteinander über ein Sammelleitungssystem verbundenen und zusammenwirkenden Einzelrechnern und einem Steuerrechner
JPS5362945A (en) * 1976-11-17 1978-06-05 Toshiba Corp Disc address system
US4169289A (en) * 1977-07-08 1979-09-25 Bell Telephone Laboratories, Incorporated Data processor with improved cyclic data buffer apparatus
US4202035A (en) * 1977-11-25 1980-05-06 Mcdonnell Douglas Corporation Modulo addressing apparatus for use in a microprocessor
US4298932A (en) * 1979-06-11 1981-11-03 International Business Machines Corporation Serial storage subsystem for a data processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2260141A1 (en) * 1974-02-01 1975-08-29 Honeywell Bull Soc Ind Data transfer control for data processor - is used between periodic and non-periodic units employing buffer memory
US4125870A (en) * 1975-10-15 1978-11-14 Tokyo Shibaura Electric Co., Ltd. Information transfer control system
US4138732A (en) * 1975-10-31 1979-02-06 Tokyo Shibaura Electric Co., Ltd. Data transfer control system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2523746A1 (fr) * 1982-03-17 1983-09-23 Inst Francais Du Petrole Dispositif associe a un calculateur pour commander des transferts de donnees entre un systeme d'acquisition de donnees et un ensemble comportant un appareil d'enregistrement et de lecture
FR2643994A1 (fr) * 1989-03-06 1990-09-07 Brother Ind Ltd Dispositif pour tamponner des donnees
US5293490A (en) * 1989-03-06 1994-03-08 Brother Kogyo Kabushiki Kaisha Data buffering device having simple data reading and/or storing function

Also Published As

Publication number Publication date
FR2486290B1 (fr) 1983-05-13
DE3126363A1 (de) 1982-05-06
US4658349A (en) 1987-04-14
JPS5717049A (en) 1982-01-28
JPH0146892B2 (fr) 1989-10-11
DE3126363C2 (de) 1984-05-17

Similar Documents

Publication Publication Date Title
FR2486290A1 (fr) Dispositif de transmission rapide de donnees comportant un circuit de commande a acces direct a la memoire
FR2539528A1 (fr) Systeme a microprocesseur comportant deux processeurs
FR2637997A1 (fr) Procede et dispositif pour mettre en file d'attente des requetes et des reponses sur un bus
EP0063071B1 (fr) Procédé et dispositif de transmission de données numériques
FR2481487A1 (fr) Systeme de traitement de l'information utilisant des techniques de regeneration et de detection et correction d'erreurs
EP0626664B1 (fr) Système de communication avec cartes à puce
FR2471652A1 (fr) Procede et systeme d'entree/sortie de donnees
EP0063972A1 (fr) Procédé et dispositif d'allocation d'une ressource dans un système comportant des unités de traitement de données autonomes
FR2737637A1 (fr) Matrice de commutation entre deux groupes de multiplex
EP1510925A2 (fr) Mémoire cache à lecture asynchrone et dispositif de controle de l'accès à une mémoire de données comprenant une telle mémoire cache
FR2496315A1 (fr) Systeme de memoire tampon
FR2549258A1 (fr) Procede de commande pour transfert de donnees
EP0920157A1 (fr) Dispositif de gestion de mémoire tampon partagée
BE897587A (fr) Circuit parallele de controle de redondance cyclique
EP0033672B1 (fr) Dispositif d'aiguillage de données numériques
FR2536884A1 (fr) Reseau de transfert de donnees entre plusieurs processeurs et une memoire
FR2473753A1 (fr) Dispositif pour fournir des groupes de donnees corriges a un circuit de destination
EP0039635A1 (fr) Procédé d'arbitration centralisée, et arbitreur centralisé
FR2466808A1 (fr) Systeme pour controler la duree de l'intervalle de temps entre blocs dans un systeme de communication calculateur a calculateur
EP0878758A1 (fr) Dispositif de tri d'éléments de données à arbre binaire et espaceur ATM comportant un tel dispositif
EP0056208B1 (fr) Procédé et dispositif de synchronisation de messages
FR2718590A1 (fr) Procédé de détection d'un motif dans une transmission série.
FR2759178A1 (fr) Circuit de gestion de memoire dans un environnement multi-utilisateurs avec requete et priorite d'acces
EP0011540B1 (fr) Dispositif d'interface entrée-sortie entre un commutateur de données et une pluralité de voies de transmission
FR2717921A1 (fr) Dispositif de gestion de conflit d'accès entre un CPU et des mémoires.

Legal Events

Date Code Title Description
ST Notification of lapse