FR2558615A1 - Controleur integre d'unite a disque souple - Google Patents

Controleur integre d'unite a disque souple Download PDF

Info

Publication number
FR2558615A1
FR2558615A1 FR8418817A FR8418817A FR2558615A1 FR 2558615 A1 FR2558615 A1 FR 2558615A1 FR 8418817 A FR8418817 A FR 8418817A FR 8418817 A FR8418817 A FR 8418817A FR 2558615 A1 FR2558615 A1 FR 2558615A1
Authority
FR
France
Prior art keywords
register
data
computer
signal
coupled
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
FR8418817A
Other languages
English (en)
Other versions
FR2558615B1 (fr
Inventor
Wendell B Sander
Robert Bailey
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.)
Apple Inc
Original Assignee
Apple Computer 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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of FR2558615A1 publication Critical patent/FR2558615A1/fr
Application granted granted Critical
Publication of FR2558615B1 publication Critical patent/FR2558615B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device

Abstract

CE CONTROLEUR 11 QUI ETABLIT UNE INTERFACE ENTRE UN ORDINATEUR ET UNE UNITE A DISQUE SOUPLE COMPREND DES BASCULES A VERROUILLAGE 39 QUI RECOIVENT DES COMMANDES DE L'ORDINATEUR, UN DECODEUR 41 QUI RECOIT LES SIGNAUX DES BASCULES ET ENGENDRE DES SIGNAUX D'EXECUTION, UN REGISTRE DE MODE 31 ET UN REGISTRE D'ETAT 33 COUPLES TOUS DEUX A L'ORDINATEUR ET AU DECODEUR, LE REGISTRE D'ETAT ETANT, EN OUTRE, COUPLE A L'UNITE A DISQUE POUR EN RECEVOIR DES INFORMATIONS D'ETAT, UNE COMMANDE DE LECTURE 45 ET UNE COMMANDE D'ECRITURE 47 COUPLEES AU REGISTRE DE MODE, A L'ORDINATEUR ET A L'UNITE A DISQUE POUR RECEVOIR LES DONNEES DE L'ORDINATEUR ET LES TRANSMETTRE A L'UNITE A DISQUE ET VICE VERSA DANS UN MODE DE FONCTIONNEMENT SYNCHRONEASYNCHRONE, RAPIDELENT DETERMINE PAR LE REGISTRE DE MODE. L'ENSEMBLE DES CONTROLEURS EST REALISE SOUS LA FORME D'UN CIRCUIT INTEGRE.

Description

La présente invention se rapporte au domaine technique des unités de
commande et contrôleurs servant à établir vrne interface entre un ordinateur numérique et une unité à discque
souple. L'invention décrite ici est particulièrement appro-
priée pour être mise en oeuvre sous la forme d'un circuit intégré.
Les contrôleurs d'unité à disque souple servant d'inter-
face entre des ordinateurs numériques et des unités à disque souple sont bien connus. De telles unités à disque comprennent un moteur pour entraîner en rotation un disque souple; un disque souple qui est formé en une matière flexible de façon à être plat et circulaire et sur lequel est collé un support magnétique; une tête d'écriture pour enregistrer des données sur le support magnétique et une tête de lecture pour lire des données enregistrées sur le support magnétique; un moteur pas à pas pour déplacer les têtes d'écriture et de lecture
le long de la surface du disque souple et des circuits élec-
troniques et logiques pour recevoir des signaux binaires qui mettent le moteur d'entraînement de disque sous tension et hors tension, déplacent les têtes de lecture et d'écriture et provoquent la transmission de siqnaux électriques à la tête d'écriture pour enregistrer des données ou reçoivent des signaux électriques engendrés par la tête de lecture
lorsque le support magnétique passe entournant devant elle.
Les contrôleurs d'unité à disque engendrentles signaux bi-
naires nécessaires pour mettre sous tension ou hors tension le moteur d'entraînement du disque et pour déplacer les
têtes de lecture et d'écriture et ils transmettent des si-
gnaux appropriés aux circuits électroniques et logiques de 39 l'unité à disque pour-provoquer l'écriture ou la lecture
par les têtes d'écriture et de lecture sur le support magné-
tique du disque souple en rotation. Les contrôleurs d'unité à disque engendrent les signaux appropriés pour commander le fonctionnement d'unités à disque à partir de signaux de
o commande, de données et d'horloge appropriés reçus d'un or-
dinateur numérique.
Un contrôleur d'unité à disque souple a été décrit dans le brevet des EUA no 4 210 959,ce contrôleur comprenant un registre à décalage série/parallèle, des moyens logiques et
de synchronisation de contrôleur et des bascules à verrouil-
lage. Le registre à décalage série/parallèle est utilisé pour transférer des données à l'ordinateur et recevoir des
données de l'ordinateur par l'intermédiaire d'un bus de don-
nées. Les moyens logiques et de synchronisation de contrôleur reçoivent des signaux des bascules à verrouillage pour placer les moyens logiques de contrôleur dans l'un de quatre modes
de fonctionnement possibles à savoir lecture, détection pro-
tection écriture/initialisation écriture, enregistrement
écriture, chargement écriture. Toutes les opérations de lec-
ture et d'écriture sont effectuées d'une manière synchrone sur la base d'un signal d'horloge HL. L'invention précitée a
trait à un contrôleur relativement simple,bon marché, appro-
prié pour les applications au grand public et aux petits com-
merces. La présente invention a trait à une intégration du contrôleur révélé dans le brevet des EUA n 4 210 959 avec
des prolongements et perfectionnements et,notamment,la capa-
cité de multiples modes de fonctionnement.
Conformément à l'invention, on a réalisé une interface constituée par un contrôleur d'unité à disque souple qui est construit sous la forme d'un circuit intégré. Le contrôleur
connecte un bus de données d'ordinateur hôte à une ou plu-
sieurs unités à disque. Sur la base des signaux d'horloge et de commande reçus de l'ordinateur numérique, le contrôleur
engendre des données codées séquentielles en vue de leur en-
registrement sur un disque souple et reçoit des données co-
dées séquentielles précédemment enregistrées sur un disque
souple. Le contrôleur comprend des moyens de commande de lec-
ture qui comprennent un registre de données de lecture, des moyens de commande d'écriture qui comprennent un registre
de données d'écriture, un registre de mode, un registre d'é--
tat, des bascules à verrouillage d'état, un décodeur
et des registres de fonctions spéciales. Le contrôleur fonc-
tionne en enclenchant et en remettant à zéro les bascules à verrouillage et en lisant le registre de mode, le registre d'état, les registres de fonctions spéciales, le registre de données de lecture et le registre de données d'écriture ou en y écrivant. L'enclenchement d'une bascule à
verrouillage et l'accès d'un registre sont effectués simul-
tanément. Le contrôleur, sous la commande du logiciel, fonc-
tionne dans un mode de lecture/écriture synchrone ou asyn-
chrone et dans un mode de lecture/écriture lent ou rapide.
Les signaux de commande reçusde l'ordinateur par le con-
tr1ôleur enclenchent ou remettent à zéro l'une des huit
bascules à verrouillage d'état. Deux des bascules choi-
sissent l'une de deux unités à disque et mettent sous tension ou hors tension le moteur d'entraînement de l'unité à disque choisie. Quatre des bascules commandent un moteur pas à pas
qui fait partie de l'unité à disque et qui provoque le dépla-
cement des têtes de lecture et d'écriture d'une piste du disque souple à la suivante. Les deux bascules restantes sont couplées au décodeur qui décode les signaux d'horloge
et de commande reçus de l'ordinateur et engendre des si-
gnaux appliqués aux divers registres du contrôleur et aux moyens de commande d'écriture et aux moyens de commande de lecture pour commander la fonction que doit exécuter
l'unité à disque.
D'autres caractéristiques et avantages de l'invention
apparaitront à la lecture de la description qui va suivre et
à l'examen des dessins annexés dans lesquels:
la Fig. 1 représente le contrôleur de la présente inven-
tion qui établit une interface entre un ordinateur numérique et une unité à disque souple;
la Fig. 2 est un schéma-bloc du contrôleur de la pré-
sente invention;
la Fig. 3 est un schéma-bloc détaillé des moyens de com-
mande de lecture de la présente invention;
la Fig. 4 est un schéma-bloc détaillé des moyens de com-
mande d'écriture de la présente invention.
On décrira ci-après un contrôleur d'unité à disque souple réalisé sous la forme d'un circuit intégré et qui sert
à former une interface ou jonction entre un ordinateur numé-
rique et une unité à disque souple. Dans la description qui
va suivre, on indiquera de nombreux détails spécifiques, tels que des longueurs de mot ou de multiplet spécifiques,pour
permettre une pleine compréhension de la présente invention.
Cependant, il apparaitra clairement à un spécialiste de la
technique que l'on peut mettre en oeuvre la présente inven-
tion sans utiliser ces détails spécifiques. Dans d'autres cas, on a représenté des circuits bien connus par des blocs ou rectangles afin de ne pas obscurcir laprésente invention par des détails inutiles. Sauf indication contraire, et par commodité, on utilisera une logique positive pour décrire l'invention. Ainsi les termes enclenché, "1", niveau haut et vrai sont équivalents comme le sont les termes restauré,
"0" bas niveau et faux.
Le mode de réalisation actuellement préféré du contrô-
leur est une interface entre des micro-ordinateurs fabriqués par Appel Computer, Inc. de Cupertino, Californie (EUA) tels que son ordinateurApple II et ses successeurs et des unités à disque souple, telles que le Disk II fabriqué par Apple
Computer, Inc. et ses successeurs.
Sur la Fig. 1 à laquelle on se référera tout d'abord, on a représenté le contrôleur 11 de la présente invention
comme constituant une interface entre un ordinateur numé-
rique 13 et une unité 15 à disque souple. L'ordinateur numé-
rique 13 est couplé au contrôleur 11 par un bus de données bidirectionnel 17 (D0-D7),par des lignes de commande A0-A3, par une ligne de sélection d'unité ou dispositif DISP,par une ligne de restauration REST et par des lignes d'horloge Q3 et FHL. Bien qu'elle ne fasse pas partie de la présente
invention, on a également représenté sur la Fig. 1 une mé-
moire morte ou mémoire morte programmable d'amorce (MEMOR d'amorce) 19 qui est couplée à l'ordinateur numérique par l'intermédiaire du bus de données 17, d'un bus d'adresse 21 (A0-A7) et d'une ligne de mise en fonction MISEF. Lorsque l'ordinateur est initialement mis sous tension ou chaque fois
qu'il est nécessaire de réinitialiser le système d'exploita-
tion de l'ordinateur, un programme mis en mémoire dans la
mémoire morte d'amorce 19 est utilisé pour donner l'instruc-
tion au contrôleur 11 de lire un programme enregistré sur un disque souple de l'unité 15 à disque et le transmettre
sur le bus de données 17 à l'ordinateur 13. De tels pro-
grammes d'amorce ou routines d'amorçage sont bien connus
dans la technique et on ne les décrira pas davantage ici.
Les données présentes sur le bus de données 17, selon
les signaux qui ont été places sur les lignes de commande A0-
A3, comprennent un multiplet de données qui a été reçu de l'unité à disque, qui doit être transmis à l'unité à disque ou qui doit être chargé dans des registres du contrôleur 11 ou lu dans ces registres. Le contrôleur 11 est choisi par l'ordinateur par un "0" appliqué sur la ligne DISP et est placé dans un état initial par un "0" transmis sur la ligne REST. Des signaux d'horloge engendrés par l'ordinateur sur les lignes Q3 et FHL sont utilisés par le contrôleur comme signaux de synchronisation. Les signaux d'horloge Q3 et FIL sont engendrés à une périodicité qui dépend de la vitesse du
processeur contenu dans l'ordinateur. Dans un mode de réali-
sation préféré, Q3 est un signal d'horloge de 2 MHz et FHL est un signal d'horloge de 7 MHz. En outre, Q3 peut être laissé à "0" (si seul le mode asynchrone est utilisé) et/ou
FHL peut avoir une fréquence de 8 MHz.
Les lignes de données/de commande d'exécution entre le contrôleur 11 et l'unité à disque 15 sont les suivantes. Les signaux de lignes P0 à P3 commandent un moteur pas à pas 22
qui tourne d'une unité de distance angulaire soit vers l'a-
vant soit vers l'arrière selon les signaux présents sur les lignes PO à P3. Dans une unité à disque simple typique, une unité de distance angulaire est égale à un quart de tour, un huitième de tour ou un seizième de tour; cependant, cette
valeur dépend exclusivement de l'unité à disque. Chaque rota-
tion d'unité de distance angulaire du moteur pas à pas pro-
voque le déplacement des têtes d'écriture et de lecture d'une
3. unité de distance linéaire vers l'avant ou vers l'arrière.
L'unité de distance linéaire dont les têtes se déplacent dé-
pend également de l'unité mais des unites de distance liné-
aire typiques sont d'une demi-piste ou d'un quart de piste.
Les signaux binaires présents sur les lignes P0 à P3 sont appliqués à des amplificateurs 23 de sélection de piste qui convertissent les signaux binaires en une tension qui fait
tourner le moteur pas à pas 22.
Les signaux transmis entre la ligne DONECR sont des signaux binaires engendrés par le contrôleur et qui sont appliques à l'entrée d'amplificateurs 25de lecture/écriture
de l'unité 15 à disque, Les signaux de la ligne DONECR pro-
voquent l'excitation ou la désexcitation par les amplifi-
cateurs 25 de lecture/écriture de la bobine 26 de la tête
d'écriture pour provoquer l'écriture de données sur le sup-
port magnétique lorsque ce dernier tourne au-dessous de la tête d' écriture. Les signaux présents sur la ligne DEMECR mettent en fonction ou hors fonction la bobine 26 de la tête
d'écriture pour permettre ou empêcher l'écriture des don-
nées présentes sur la ligne DONECR. De même, lorsque le sup-
port magnétique passe au-dessous de la tête de lecture, la bobine 26' de la tête de lecture est excitée ou désexcitée
et les données détectées sont converties par les amplifica-
teurs 25 de lecture/écriture en un signal binaire qui est
placé sur la ligne DONLECT.
Un signal de détection de protection d'écriture est en-
gendré par l'unité 15 à disque et placé sur une ligne de DE-
TECTION lorsqu'un interrupteur 28 monté dans l'unité à disque est fermé pour indiquer que l'unité à disque a été placée dans un état de protection d'écriture. Un tel interrupteur
peut être un interrupteur mécanique actionné par l'utilisa-
teur et/ou un interrupteur qui détecte si la chemise d'un
disque souple comporte ou non une encoche de protection d'é-
criture, comme,par exemple, une cellule photoélectrique qui provoque la fermeture d'un interrupteur à transistor lorsque
qu'une lumière dirigée vers elle est interrompue par la che-
mise du disque souple.
Enfin, des signaux de sélection d'unité à disque sont engendrés par le contrôleur et places sur des lignes MISEF1 ou MISEF2. Le signal MISEF1 est appliqué en entrée à une première unité à disque et le signal MISEF2 est appliqué en entrée à une seconde unité à disque. Chacun de ces signaux d'entrée MISEF1 et MISEF2 est appliqué à un amplificateur 27 de moteur d'entraînement qui convertit le signal binaire en
une tension pour provoquer la rotation d'un moteur 29 conte-
nu dans l'unité à disque de façon ainsi à faire tourner un
disque souple qui a été introduit dans l'unité à disque.
Dans le mode de réalisation représenté, un unique bit du con-
trôleur est utilisé pour engendrer un signal sur la ligne MISEF1 ou sur la ligne MISEF2 et, par conséquent, une seule des deux unités à disque peut être choisie à un moment donné quelconque. Naturellement, avec un matériel supplémentaire, des unités à disque supplémentaires peuvent être connectées au contrôleur. On doit noter que, bien qu'on n'ait représenté qu'un seul groupe de lignes comme étant couplé au contrôleur 11, en cequi concerne des lignes telles que DETECTION,qui
puissent être à l'état "1" pourune unité à disque et à l'é-
tat "0" pour l'autre, des circuits logiques appropriés sont
utilisés pour assurer que seuls les signaux émanant de l'uni-
té choisie sont appliqués en entrée aux circuits logiques du
contrôleur.
On décrira maintenant,en se référant à la Fig. 2, les
éléments principaux du contrôleur 11. Le contrôleur de l'in-
vention comprend un registre de mode 31, un registre d'état
33, un registre 35 de lecture de "1", un registre 37 de dra-
peaux d'établissement de liaison/écriture non achevée, des bascules à verrouillage d'état 39, un décodeur 41, des moyens 45 de commande de lecture et des moyens 47 de commande d'écriture. On décrira plus complètement les moyens 45 de commande de lecture et les moyens 47 de commande d'écriture
en se référant respectivement à la Fig. 3 et à la Fig. 4.
Une fois que le contrôleur 11 a été choisi par l'ordina-
teur 13 par un signal transmis sur la ligne DISP et que le contrôleur a été initialisé par un signal transmis sur REST
(qui met les bascules à verrouillage à leur valeur par dé-
faut (0)), le contrôleur reçoit de l'ordinateur l'instruc-
tion d'exécuter une fonction particulière par des signaux transmis sur les lignes A0-A3 qui enclenchent ou restaurent
l'une des huit bascules de condition 39 (P0 à P3 et L4 à L7).
Il doit être bien compris que, quel que soit l'état des bascules P0 à P3 et L4 à L7, à moins que le contrôleur
ait été choisi par un signal appliqué sur la ligne DISP, au-
cune opération n'est exécutée par le contrôleur. Le signal DISP à niveau bas met en fonction le contrôleur. Le front
arrière du signal DISP verrouille dans les bascules les in-
formations présentes sur les lignes A0 à A3. L'une des huit bascules précitées est enclenchée par un "1" transmis sur la ligne A0 et restaurée par un "0" transmis sur la ligne
A0. La bascule particulière qui doit être enclenchée ou res-
taurée selon le signal de la ligne A0 est déterminée par l'a-
dresse chargée sur les lignes A1 à A3. Le tableau 2 indique
les adresses des lignes A1 à A3 qui correspondent aux bas-
cules P0 à P3 et L4 à L7.
TABLEAU 1
A3 A2 A1 BASCULE
O O O PO
0 0 1 P1
0 1 0 P2
0 1 1 P3
1 0 0 L4
1 0 1 L5
1 1 0 L6
1 1 1 L7
Les signaux des bascules P0 à P3 provoquent le fonction-
nement du moteur pas à pas 22 de la manière suivante. L'en-
clenchement (mise à l'état 1) de la bascule P0 a pour effet
de mettre le moteur pas à pas dans un état initial,le pré-
parant pour qu'il puisse effectuer un déplacement d'une uni-
té de distance angulaire soit vers l'avant soit vers l'ar-
rière,selon le signal suivant qu'il recevra. Si le signal
suivant reçu est P1 (c'est-à-dire que la bascule P1 est en-
clenchée) le moteur pas à pas se déplace d'une unité de dis-
tance angulaire, ce qui provoque le déplacement des têtes de lecture et d'écriture d'une unité de distance linéaire vers l'avant. Si la bascule P3 est enclenchée après la bascule P0 le moteur pas à pas tourne dans le sens opposé d'une unité de distance angulaire et les têtes de lecture et d'écriture
se déplacent d'une unité de distance linéaire vers l'arrière.
A ce stade, les deux bascules Po0 et P1 sont enclenchées (ou PO et P3 si les têtes se déplacent vers l'arrière) et la bas- cule PO est remise à O. Après remise à O de la bascule P0, si l'on admet qu'un déplacement vers l'avant supplémentaire est désiré, la bascule P2 est enclenchée ce qui provoque la rotation du moteur pas à pas vers l'avant d'une unité de distance angulaire supplémentaire faisant ainsi avancer les têtes de lecture et de'écriture d'une autre unité de
distance lindaire vers l'avant. Si un déplacement supplémen-
taire des têtes vers l'avant est nécessaire, la bascule P1
est remise à O et la bascule P3 est enclenchée ce qui pro-
voque la rotation du moteur pas à pas d'une unité de dis-
tance angulaire supplémentaire. De la même manière, si un
déplacement vers l'arrière des têtes de lecture et d'écri-
ture est nécessaire et que la bascule PO a été enclenchée
puis que la bascule P3 a été également enclenchée, la bas-
cule PO est remise à O et la bascule P2 est enclenchée puis la bascule P3 est remise à O et la bascule P1 est enclenchée; chacune de ces opérations provoque la rotation du moteur pas à pas d'une unité de distance angulaire dans le sens opposé et déplace vers l'arrière les têtes de lecture et d'écriture d'une unité de distance lindaire. D'autres cycles P0, P1, P2 et P3 (pour le déplacement vers l'avant)ou P0, P3, P2, P1 (pourle déplacement des têtes vers l'arrière) peuvent être déclenchés par l'ordinateur 13 au moyen des adresses A0 à A3 de la manière appropriée pour provoquer le déplacement des
têtes de lecture/écriture jusqu'à une piste désirée quel-
conque. L'enclenchement et la remise à 0 des bascules L4 à L7 d-terminent l'exécution d'autres fonctions par le contrôleur
11 de la manière décrite ci-dessous.
Après que le contrôleur a été choisi par le signal DISP et initialisé par REST et que le signal CHARGER REGISTRE DE MODE a été mis à 1 de la manière décrite ci-dessous, les
signaux des lignes DO à D4 du bus de données 17 sont char-
gés dans le registre de mode 31 pour choisir un mode de fonc-
tionnement particulier pour les opérations de lecture et d'é-
criture qui seront effectuées ensuite. Les données présentes sur les lignes D0 à D4 correspondent respectivement aux si-
gnaux VER, SYNC, MSP, RAP et 8/7 du registre de mode. On dé-
crira plus complètement le signal VER ci-après lors de la
description des moyens 45 de commande de lecture et de la
Fig. 3. Le signal SYNC,lorsqu'il est remis à 0,place le con-
trôleur dans un mode synchrone pour les opérations de lec-
ture et d'écriture ultérieures. Lorsque le signal SYNC est à l'état 1, les opérations de lecture et d'écriture qui suivent
sont effectuées dans un mode asynchrone. On décrira plus com-
plètement ci-après les modes de fonctionnement synchrones et
asynchrones en se référant aux Fig. 3 et 4.
Le signal MSP lorsqu'il est remis à 0 met en fonction un
minuteur d'une seconde prévu sur la plaquette de circuit.
Lorsque le signal MSP est à l'état 1,le minuteur est mis hors fonction. On décrira plus complètement ci-après le minuteur prévu sur la plaquette en se référant aux signaux MISEF1 et MISEF2 qui choisissent l'une de deux unités à disque qui
sont couplées au contrôleur.
Lorsque le signal RAP est mis à O,le contrôleur fonc-
tionne dans le mode lent. Normalement, la synchronisation in-
terne du contrôleur est basée sur le signal d'horloge HL
qui est égal au signal d'horloge FHL engendré par l'ordina-
teur. Lorsque le signal RAP est mis à O, la synchronisation interne, c'est-à-dire la période du signal HL,est égale au
double de la période du signal FHL.
Le signal 8/7 concerne également la synchronisation et
le signal FHL. Lorsqu'un signal d'horloge de 8 MHz est utili-
sé, le signal 8/7 est à l'état 1. Si le signal FHL est à une fréquence de 7 MHz, le signal 8/7 est mis à O. La valeur du signal 8/7 est utilisée par le contrôleur pour déterminer le nombre de périodes du signal FHL nécessaires pour compter une unité de temps donnée. Par exemple, si le signal FHL a une fréquence de 8 MHz,une microseconde est égale à 8 périodes ll
d'horloge; si le signal FHL a une fréquence de 7 MHz, une mi-
croseconde est égale à 7 périodes d'horloge. Ceci permet à
des ordinateurs ayant une horloge de 7 MHz et à des ordina-
teurs ayant une horloge de 8 MHz de lire et d'écrire de fa-
çon équivalente, c'est-à-dire que des données écrites par un ordinateur ayant une horloge de 7 MHz peuvent être lues par
un ordinateur ayant une horloge de 8 MHz et vice-versa.
Après que le registre de mode a été chargé de façon à établir des modes de fonctionnement particuliers, l'une des deux unités à disque est choisie par la bascule L5. Lorsque la bascule L5 est mise à 0, l'unité 1 est choisie. Lorsque la bascule L5 est mise à 1, l'unité 2 est choisie. Après ': qu'une unité a été choisie, l'enclenchement ou mise à l'état i de la bascule L4 provoque la mise à l'état 1 du signal MOTEUR SOUS TENSION. Lorsque la bascule L4 est enclenchée,
si la bascule L5 est à l'état 0, l'unité 1 est mise en fonc-
tion par le signal MISEF1; si la bascule L5 est à l'état 1,
l'unité 2 est mise en fonction par le signal MISEF2.
On décrira maintenant le signal MSP ci-dessus mentionné.
Lorsque le signal MSP est à l'état 1, si la bascule L4 est remise à 0, le signal MISEF1 ou MISEF2 est mis hors fonction
par le circuit logique 42,selon l'état de la bascule L5,ar-
rêtant, de ce fait, le moteur d'entraînement 29. Cependant, si le signal MSP est mis à 0, la remise à 0 de la bascule L4 ne provoque la mise hors fonction du signal MISEF1 ou MISEF2 par le circuit logique 42 qu'après expiration de la période de comptage d'un minuteur d'une seconde (sile signal VER est à l'état 0 ou après expiration de la période de comptage d'un minuteur d'une demi-milliseconde si le signal VER est
à l'état 1). En général, il est préférable qu'il y ait un re-
tard avant l'arrêt d'un moteur d'entraînement du fait que
des opérations sur disque suivantes sont fréquemment effec-
tuées à l'intérieur d'un très court créneau de temps après les opérations sur disque antérieures. Ainsi, en l'absence d'un retard avant la mise hors fonction du signal MISEF1 ou du signal MISEF2, les opérations sur disque suivantes seraient soumises à une période d'attente jusqu'à ce que le moteur ait à nouveau atteint la vitesse appropriée. Naturellement,
le système d'exploitation ou un autre programme de l'ordina-
teur devrait comporter des boucles d'attente ou de tempori- sation dans tous les cas nécessaires, pour assurer qu'aucune opération de lecture ou d'écriture ne serait demandée avant
que le moteur d'entraînement ait atteint la vitesse requise.
* D'autres fonctions remplies par le contrôleur sont déter-
minées par les réglages des bascules L6, L7 et MOTEUR SOUS TENSION. Les signaux L6, L7 et MOTEUR SOUS TENSION choisissent celui des registres qui doit être lu ou chargé. Les registres sont lus au cours d'une opération quelconque pendant laquelle
le signal A0 est remis à 0. Les registres sont chargés lors-
que le signal A0 est mis à 1. Les signaux L6, L7, MOTEUR SOUS TENSION, A0 et DISP sont appliqués à l'entrée d'un décodeur
41 qui décode les signaux d'entrée et qui,comme décrit ci-
dessous,place un 1 sur l'une des lignes LIRE REGISTRE D'ETAT,
CHARGER REGISTRE DE MODE, CHARGER REGISTRE DE DONNEES, LIRE
REGISTRE DE DONNEES, LIRE REGISTRE DE 1 OU LIRE REGISTRE DE
DRAPEAUX D'ETABLISSEMENT DE LIAISON/ECRITURE NON ACHEVEE.
Chacune des opérations suivantes est effectuée au front ar-
rière du signal DISP appliqué au décodeur 41.
Lorsque les signaux L6, L7 et MOTEUR SOUS TENSION sont des 0, le décodeur 41 place un 1 sur la ligne LIRE REGISTRE DE 1, ce qui a pour effet que le registre 35 de lecture de 1 place un multiplet de 1 binaires sur le bus de données 17,
lignes DO à D7. Les 1 transmis sur le bus de données sont en-
trés dans la mémoire de l'ordinateur,en vue d'être utilisés par
le système d'exploitation ou par un autre programme approprié.
Lorsque les signaux L6, L7 sont des 0 et que MOTEUR SOUS TENSION est un 1, le décodeur 41 place un 1 sur la ligne LIRE REGISTRE DE DONNEES. On décrira ci-après la fonction exécutée lorsque la ligne LIRE REGISTRE DE DONNEES est à l'état 1 au
cours de la description des moyens 45 de commande de lecture
et de la Fig. 3.
Lorsque le signal L6 est un 1, que le signal L7 est un 0 e.t -P le sigrnal MOTEUR SOUS TENSION est un O ou un 1 c'es'--dire indifférent), le décodeur 41 place un 1 sur la
ligne L/IRE im REISTRE D 'ETAT, ce qui a pour effet que le conte-
u. du -e.is;.re de mode 21 et celui du registre d'état 33 sont p'.c<, s ur]e bus 17, les lignes du bus prenant les valeurs c.-a -!,..3 al.7E, -2 n.- placé sur la ligne DO, le signal
3<l: M 1 '- f:_'c= D3,.!.'i-a.l. MSP sur l.a ligne D2, le si-
-.l !a Atgne!e signal 8/7 sur la ligne D41 le Jf un,. --:,U_ US 8u-':e 'i? su la ligne D5, un 0 est placé ju i ccw ' ïs*; re: ',rq.i DETZCTION provenant de lu-unit& I:.s?'e.:ue-.'-- i' c,e. D7o Le système d exploiQation -{.-w--1-,vL. l: u 13 est ainsi c ae ) A. O, L- Q que le signal L7 est un e. ce ',":: s!.cE;, -i... S O U S T EN ION est un 0 ouun 'i 1 le :,.;s!igne LIRE REGISTRE DE DRPAPEAUX %..c:::, L C x/R TURE NON ACHEVEEsE, ce ',ui a -.,,; r.s',.? de drapeaux d' etaablssement 3-:.. 'X c'-n6,- -'..:-,e p:lace des 1 sur les lignes
7, a 3,5:.:: DS unées irp.-. gx" 1-...
-,,f ,.- '.:.-'"o 'riture non ache e sur l l gne 6 f '-lE u gpau ';] tiss ent de liaison sur la ligne -rv,r;i cc:,Te!$eent le drapeau ENA Ad éc.r i '-r v= Et </r:- _-a2x>>Dea d. tablissement de liaison s c e-,es rô, ,-.,. des;,_ovens 47 de commande d 3écriture
-);.1'";J -. ? \-<4.
._-<i.-_S...i est uns 1, que le signal L7 est un r; '?eeigno. 3@TEUTMJî SOUS TENSION est un 0, le décodeur "; -ui 1 g.... C1z.RGER REGISTRE DE MODE et les a;-_n-._c:i,:, e licnes DO à D4 du bus de données 17
-n...'. r,: rd.=-;' o I-..- r-gistre de mode 31, la ligne DO cor-
ra.p oidai<t r%; 1R, 1,igre D! à SYNC, la ligne D2 à MSP, la
:-;ne D& if: e:- 3 a)igneD4 à 8/7. Ce chargiement se5 pro-
i=:.%al'.' 1si;nal CeMAiRGER REGISTRE DE MODE au front
il;: e].:_'n-ion i. logique Q3 ou DISP.
%63'osn es si-naux L6, L7 et MOTEUR SOUS TENSION sont *ies 3 - r,l cdr-' 41 place un 1 sur la ligne CHARGER REGISTRE DE D(Ni=ES, On:écrira ciaprès la fonction exécutée lorsque le signal CHARGER REGISTRE DE DONNEES est à l'état 1 lors de
la description des moyens 47 de commande d'écriture et de la
Fig. 4.
On décrira maintenant les moyens 45 de commande de lec-
ture en se référant à la Fig. 3. Conmme indiqué ci-dessus, lorsque les signaux L6 et L7 sont des 0 et que le signal MOTEUR SOUS TENSION est un 1, le décodeur 41 place un 1 sur la ligne LIRE REGISTRE DE DONNEES. Naturellement, avant la
lecture, la tête de lecture est déplacée jusqu'à la piste dé-
sirée du disque souple par rotation du moteur pas à pas 22t conformément aux signaux de co!mmande PO b P3, corpre décrit ci-dessus. Lorsque le disque souple tourne sous la tête de lecture, les données enregistrées sur la piste provccezant l'excitation et la désexcitation de la bobine de la tête de lecturece qui provoque l'application de fluctuations sur la ligne LWNLECT, fluctuations qui ccrrespondent aux
bits 1 et 0 enregistrés sur le support magnétique. A ce mo-
ment, ni le contrôleur ni l ordinateur ne peuvent déterminer quelle est la partie d'une piste qui est situés sous la tête de lecture. Par conséquent, il est nécessaire de prévoir
un procédé pour détermirner le moment o la lecture des don-
nées doit comumencer. Un procédé pour assurer une synchroni-
sation appropriée à cette fin a été décrit dans le brevet
des EUA n 4 210 959.
Une- fois que la synchronisation a été obtenue, la lec-
ture s'effectue de la façon suivante. L'extracteur 51 de don-
nées de lecture détecte les transitions négatives du signal DONLECT synchronisées avec le signal d'horloge HL. Chaque fois qu'une transition négative du signal DONLECT se produ:it, il remet à 0 un compteur d'intervalle de temps. Lorsque le signal 8/7 est à l'état 1, l'intervalle est de 16 HL. Lorsque le signal 8/7 est à l'état 0, l'intervalle est de 14 HL. Les informations présentes sur la ligne DONLECT sont espacées à ces intervalles ou "autour" de ces intervalles. Un 1 est une transition négative au temps escompté, c'est-à-dire à la fin de l'intervalle. Un 0 est l'absence de transition au temps escompté. Le temps escompté est élargi d'approximativement un demi-intervalle avant et après le temps escompté, étant
donné que les données ne sont pas espacées de manière pré-
cise au cours de la lecture du fait des variations de la
vitesse d'entraînement et autres facteurs externes.
Une transition négative du signal DONLECT est détectée comme un 1 et l'extracteur 51 de données de lecture produit une impulsion du signal LFT1 à l'état 1 pendant un cycle d'horloge HL. La-donnée suivante escomptée est nominalement à 16 HL lorsque le signal 8/7 est à l'état 1. Cette donnée peut être produite entre 16-8=8 HL et 16+7=23 HL. Ainsi, si une autre transition négative du signal DINLECT se produit entre 8 et 23 HL, un autre 1 est détecté et une impulsion du signal LFT1 à l'état 1 est produite pendant un cycle d'horloge HL. Si aucune transition négative ne se produit sur la ligne DONLECT entre 8 et 23 HL, un zéro est détecté
et une impulsion du signal LFT0 à l'état 1 est produite pen-
dant un cycle d'horloge HL.
Si le signal LFT1 s'est produit à l'intérieur de la période de temps escomptée, le compteur d'intervalle de temps
est remis à 0, sinon la donnée suivante escomptée est nomina-
lement à 32 HL. Cette donnée peut se produire entre 32-8= 24 HL et 32+ 7=39 EL. Si une transition négative du signal DONLECT se produit entre 24 et 39 HL, un 1 est détecté et une impulsion à l'état 1 du signal LFT1 est produite pendant un cycle d'horloge HL. S'il ne se produit aucune transition du signal DONLECT, un 0 est détecté et il est produit une impulsion à l'état 1 du signal LFT0. De la même manière, les intervalles suivants sont élargis par rapport au nombre nominal d'impulsions HL de moins 8 HL et de plus 7 HL, une impulsion à l'état 1 du signal LFT1 étant produite si une
transition négative du signal DONLECT se produit à l'inté-
rieur de l'intervalle élargi tandis qu'une impulsion à l'é-
tat 1 du signal LFT0 est produite s'il n'y a pas de transi-
tion négative du signal DONLECT. Lorsque le signal 8/7 est
mis à 0, des impulsions des signaux LFT1 et LFT0 sont pro-
duites de la manière décrite ci-dessus, excepté que les in-
tervalles sont nominalement de 14 HL et sont élargis de moins
7 HL et de plus 6 HL.
Les signaux LFT0 et LFT1 sont appliqués à un circuit logique 53 qui met une ligne 55 à l'état 1 si le signal LFT1 est un 1 et met la ligne 55 à l'état 0 si le signal LFT10 est un 1, à moins que le signal RD7 soit un 1 (comme décrit ci-dessous), les données présentes sur la ligne 51 étant
les données d'entrée d'un registre à décalage 57.
Les données présentes sur la ligne 55, lorsque le re-
gistre à décalage 57 reçoit un signal de l'horloge de déca-
lage 59 sur sa ligne d'horloge 60,sont entrées bit par bit dans le registre à décalage. L'horloge de décalage 59 met à l'état 1 la ligne 60 à la fin de chaque impulsion LFT1 ou de chaque impulsion LFT0 sauf lorsque le signal RD7 est mis à 1. Le signal RD7 est mis à l'état 1 après qu'un multiplet
complet de données a été décalé dans le registre à décalage.
Ceci se produit du fait que le bit initial reçu par le re-
gistre à décalage 57 des données mises en mémoire est tou-
jours un 1 conformément au système de codage de code de groupe utilisé pour mettre les données en mémoire sur la disquette, système suivant lequel le premier bit d'un multiplet est
toujours un 1.
Une fois que le signal RD7 est à l'état 1, le circuit logique 61 de chargement du registre de données de lecture engendre sur la ligne 63 un signal qui provoque le chargement
en parallèle des données contenues dans le registre à déca-
lage 57 dans le registre 65 de données de lecture. Le registre
à décalage est remis à zéro une demi-période d'horloge de dé-
calage de lecture après la mise à l'état 1 du signal RD7 de
sorte qu'il est prêt à recevoir le multiplet de,données sui-
vant.
Le signal de la ligne 63 est mis à l'état 1 par le cir-
cuit logique 61 de chargement du registre de données de lec-
ture de la manière suivante.
Dans le mode synchrone, c'est-à-dire lorsque le signal SYNC est égal à 0, au moment o le signal X7 est remis à 0, les données du registre à décalage 57 sont chargées dans le registre 65 de données de lecture chaque fois que le registre à décalage est décalé par la mise à l'état 1 de la ligne 63
par le circuit logique 61 de chargement du registre de don-
nées de lecture. Cependant, lorsque le signal X7 est à l'é-
tat 1, c'est-à-dire lorsque le premier bit du multiplet qui est lu arrive à l'extrémité terminale du registre à décalage et est chargé en parallèle dans le registre 65 de données de lecture, le circuit logique 61 de chargement du registre de données de lecture maintient la ligne 63 à un niveau bas pendant quatre impulsions d'horloge HL après que le signal RD1 (correspondant au bit 1 du registre à décalage 57) est passée à l'état 1 du fait que le premier bit du multiplet suivant est décalé dans le registre à décalage 57. Le retard est utilisé pour assurer que le multiplet contenu dans le registre 65 de données de lecture est effectivement présent et est par conséquent disponible pour être acheminé dans le registre intermédiaire 66 et sur le bus de données 17g DO à D7, pendant un temps suffisant pour que l'ordinateur puisse le détecter et le lire mais insuffisant pour qu'il puisse le
lire deux fois cemme multiplet valide. Le front avant du si-
gnal D7 est retardé par un circuit logique 67 de maintien du registre de données de lecture de sorte que si le signal D7 est lu par l'ordinateur 13 comme un 1, ceci garantit que
les données DO à D6 ont été correctement écrites dans un re-
gistre de l'ordinateur 13. Ce retard est créé par le circuit logique 67 de maintien du registre de données de lecture de la manière suivante. Lorsque le signal VER est mis à 0, ce
qui doit être le cas pendant le mode de fonctionnement syn-
chrone et que le signal X7 qui correspond au bit 7 du re-
gistre 65 de données de lecture est à l'état 1, le signal de sortie RR7 du circuit logique 67 de maintien du registre de données de lecture qui correspond au bit 7 d'entrée du registre intezdi.ire 66, n'est pas mis à l'état 1 pendant une période d'horloge HL, lorsque le signal RAP est un 1 (mode rapide)et na1t une delei-piériode lhor!cge orsque le signal RAP est un
0 (mode lent) après la mise à létat 1 du signal X7.
Dans le mode asynchrone, c'est-à-dire lo sque le signal SYNC est à l'état 1, le registre 65 de données de lecture
est chargé en parallèle. à partir du registre. à décalage 57.
Ceci se produit lorsque le circuit logique 61 de chargement du registre de données de lecture met la ligne 63 à l'état 1 après que le signal RD7 a été mis à 1. Pour assurer que les données du registre 65 de données de lecture sont correcte- ment chargées dans un registre de l'ordinateur 13, dans le
mode asynchrone, le signal VER doit toujours être à l'état 1.
Lorsque le signal VER est à l'état 1, la donnée présente sur
la ligne X7 est placée sur la ligne RR7 par le circuit lo-
gique 67 de maintien du registre de données de lecture,au front avant du signal LIRE REGISTRE DE DONNEES. Ceci assure que le signal D7 répondra aux conditions d'établissement et de maintien de l'ordinateur 13. Si le signal D7 est lu par l'ordinateur 13 comme étant un 1, les données DO à D6 sont
correctement écrites dans un registre de l'ordinateur 13.
Le signal X7 est remis à O par le circuit logique 69 de re-
mise à O du signal X7,quatorze impulsions FHL après la mise à l'état 1 du signal LIRE REGISTRE DE DONNEES et.après le
passage à l'état 1 du signal D7 (c'est-à-dire que le multi-
plet a été lu par l'ordinateur) de façon que le signal X7
soit remis à O et que l'ordinateur ne relise pas le multi-
plet comme valide au cours d'une interrogation suivante,à
savoir la mise à 1 du signal LIRE REGISTRE DE DONNEES.
On décrira maintenant les moyens 47 de commande d'écri-
ture en se réfarant à la Fig. 4. Les moyens de commande d'é-
criture comprennent un registre 81 de données d'écriture pour recevoir un multiplet de données qui doit être écrit sur
le disque, un registre à décalage 83 pour convertir les don-
nées en parallèle du registre 81 de données d'écriture sous une forme séquentielle et une bascule 85 pour engendrer la séquence de bits qui doit être écrit sur le disque. Les moyens 47 de commande d'écriture comprennent, en outre, un circuit
logique 87 de chargement/décalage, un circuit logique 89 d'é-
tablissement de liaison/écriture non achevée, une horloge 91 de décalage d'écriture et un circuit logique 93 DEMECR qui servent tous deux à commander la synchronisation des moyens
de commande d'écriture.
Pour déclencher une opération d'écriture, le signal L6 est mis à 1, le signal L7 est mis à 0 afin d'établir un état de préparation d'écriture. L'état de préparation d'écriture initialise l'horloge 91 de décalage d'écriture et le circuit
logique 87 de chargement/décalage,mettant à l'état 1 les si-
gnaux DONECR et DEMECR, remet à 0 le drapeau ENA d'écriture non achevée dans le registre 37 de drapeaux d'établissement de liaison/écriture non achevée et initialise une horloge de basculement dans la bascule 85. Avant l'écriture effective, les bascules L4 et L5 doivent être placées dans des états appropriés pour choisir l'unité désirée et mettre MOTEUR SOUS TENSION à l'état 1. Lorsque les signaux L6, L7 et.MOTEUR SOUS TENSION sont des 1, le décodeur place un 1 sur la ligne CHARGER REGISTRE DE DONNEES ce qui provoque le chargement des données du bus de données 17, DO à D7, dans le registre 81 de données d'écriture au front avant de la fonction logique Q3 ou DISP. Ce registre est ensuite chargé en parallèle dans le
registre à décalage 83 de la façon suivante. Comme noté ci-
dessus, lorsque le circuit logique 87 de commande de charge-
ment/décalage est initialisé, la ligne 99 est mise à l'état
1. Lorsque la ligne 99 est à l'état 1, une impulsion de l'hor-
loge 91 de décalage d'écriture transmise sur la ligne 97 pro-
voque le chargement des données du registre 81 de données d'é-
criture dans le registre à décalage 83. Dans le mode asyn-
chrone (le signal SYNC est à l'état 1), ce chargement est achevé approximativement 8 impulsions HL après mise à l'état
1 du signal CHARGER REGISTRE DE DONNEES. Dans le mode syn-
chrone le chargement est achevé après quatre ou cinq périodes
Q3 après mise à l'état 1 du signal CHARGER REGISTRE DE DONNEES.
Dans le mode synchrone (le signal SYNC est à l'état 0), l'écriture sepoursuit de la manière suivante. Une fois que les données ont été chargées dans le registre à décalage 83, le bit le plus significatif du registre est décalé sur la
ligne 95 ce qui (après deux périodes Q3) provoque le bascule-
ment du signal DONECR de l'état 1 à l'état 0, étant donné que le signal DONECR est initialisé à 1 et que, conformément au
système de codage à code de groupe, le premier bit d'un mul-
tiplet doit être un 1. Le registre à décalage 83 est décalé
toutes les huit périodes Q3 après qu'il a étéchargé, ce dé-
calage étant suivi, deux périodes Q3 plus tard,d'un bascule-
ment si la donnée de la ligne 95 est un 1 et ces décalages et basculements se poursuivent jusqu'à ce que le multiplet ait été écrit. Ainsi, un multiplet est décalé en sortie et écrit en 64 périodes Q3 et un nouveau multiplet de données peut alors être chargé en parallèle dans le registre à décalage 83. Avec cette synchronisation, un I doit être placé sur la ligne CHARGER REGISTRE DE DONNEES toutes les 64 périodes Q3, sinon des 0 seront décalés en sortie du registre à décalage 83. Pendant le mode synchrone,le drapeau CNA est toujours mis à 0 de sorte que le signal CNA n'empêche pas l'écriture de données sur le disque en provoquant la mise à l'état 1
du signal DEMECR.
Lorsque le contrôleur est dans le mode asynchrone (le
signal SYNC est à l'état 1), les contraintes de synchronisa-
tion des opérations d'écriture synchrones sont assouplies.
Lorsqu'ils sont dans le mode asynchrone, les moyens 47 de com-
mande d'écriture fonctionnent de la façon suivante. Après que
les données du registre 81 de données d'écriture ont été char-
gées en parallèle dans le registre à décalage 83, le bit le plus significatif du registre à décalage 83 est décalé sur la ligne 95 et, après huit périodes HL supplémentaires, la bascule 85 provoque le basculement du signal DONECR de 1 à 0
dtant donné que, comme noté ci-dessus, le bit le plus signi-
ficatif doit être un 1. Les décalages et basculements sui-
vants sont séparés par huit impulsions HL. Apres que les huit bits ont tous été décalés en sortie du registre à décalage 83, le circuit logique 87 de chargement/décalage place un 1 sur la ligne 99 qui charge en parallèle dans le registre à
décalage 83 les données du registre 81 de données d'écriture.
Lorsque le signal 8/7 est mis à l'état 1,les décalages et les
basculements sont séparés par 8 impulsions d'horloge HL.
Lorsque le signal 8/7 est remis à 0, les basculements se pro-
duisent 6 impulsions d'horloge HL après les décalages et les décalages se produisent 8 impulsions d'horloge après les basculements. Du fait des conditions de synchronisation moins strictes qui existent pendant les opérations d'écriture asynchrones
par rapport aux opérations d'écriture synchrones, les opéra-
tions supplémentaires suivantes sont nécessaires pour assurer que les données sont correctement écrites. Le drapeau DEL d'établissement de liaison est mis à l'état 1 par le circuit logique 89 d'établissement de liaison/écriture non achevée à la suite de l'achèvement d'un chargement en parallèle du
registre à décalage 83 de la manière déterminée par les si-
gnaux des lignes 97 et 99 et il est remis à O par le circuit t, logique 89 d'établissement de liaison/écriture non achevée lorsque le signal CHARGER REGISTRE DE DONNEES est mis en fonction. Etant donné que l'ordinateur 13 peut émettre une commande pour remettre à O le signal L6, ce qui a pour effet que le décodeur met en fonction le signal LIRE REGISTRE
D'ETABLISSEMENT DE LIAISON/ECRITURE NON ACHEVEEE, l'ordina-
teur peut déterminer l'état de drapeau DEL d'établissement de liaison. En d'autres termes, l'ordinateur peut interroger
le registre 37 de drapeaux d'établissement de liaison/écri-
ture non achevée jusqu'à ce que le drapeau DEL soit à l'état 1,ce qui indique que les données du registre 81 de données d'écriture ont été chargées en parallèle dans le
registre à décalage 83 et que le registre de données d'écri-
ture est disponible pour recevoir un autre multiplet de don-
nées. Une fois que l'ordinateur a détecté que le registre 81 de données d'écriture est disponible, il peut émettre une commande pour mettre à l'état 1 le signal L6,ce qui met en
fonction le signal CHARGER REGISTRE DE DONNEES,ce qui pro-
voque l'écriture du multiplet présent sur le bus de données
17 dans le registre 81 de données d'écriture.
Pour assurer que le nouveau multiplet de données a été, en fait, chargé dans le registre 81 de données d'écriture avant le chargement du registre à décalage 83, le drapeau
ENA d'écriture non achevée du registre 37 de drapeaux d'é-
tablissement de liaison/écriture non achevée est utilisé de
la manikre suivante. Comme noté ci-dessus, pendant la condi-
tion de préparation d'écriture, lorsque l'opération d'écri-
ture est commencée, le drapeau ENA d'écriture non achevée est
remis à 0, c'est-à-dire lorsque le signal L7 est égal.à 0.
Le drapeau ENA d'écriture non achevée est mis à l'état 1 par le circuit logique 89 d'établissement de liaison/écriture non achevée lorsque le chargement en parallèle du registre à décalage est terminé, si le drapeau d'établissement de liai- sont est à l'état 1, indiquant qu'un nouveau multiplet n'a
pas été écrit dans le registre 81 de données d'écriture.
Etant donné que l'état en cours du drapeau ENA d'écriture non achevée est appliqué à l'entrée du circuit logique DEMECR 93 par l'intermédiaire de la ligne 101, si le signal ENA est mis à l'état 1, aucune nouvelle donnée n'a été chargée dans le registre 81 de données d'écriture avant le chargement du registre à décalage 83 et le circuit logique DEMECR 93 met en fonction le signal DEMECR avant que la transition suivante du signal DONECR se produise. Lorsque le signal DEMECR est à l'état 1, la tête d'écriture est hors fonction empochant le même multiplet de données d'être ré-écrit. Le signal ENA ne
peut être remis à 0 que par la sortie de l'opération d'écri-
ture, c'est-à-dire lorsque le signal L7 est un 0.
On renverra au Tableau 2 qui représente un exemple qui montre comment les bascules L4 à L7 sont enclenchées par
l'ordinateur au cours des opérations d'écriture asynchrones.
On renverra également au Tableau 3 qui représente un exemple qui montre comment les bascules L4 à L7 sont enclenchées
par l'ordinateur au cours des opérations d'écriture synchrones.
TABLEAU 2
(Opérations d'écriture asynchrones)
MOTEUR SOUS
L4 L5 L6 L7 TENSION Action 0 0 0 0 0 état initial 0 0 1 0 0 mettre L6 à l'état 1 0 0 1 1 0 mettre L7 à l'état 1; charger les données du bus dans le registre de mode 0 0 1 0 0 remettre L7 à 0 0 0 0 0 O0 remettre L6 à 0 1 0 0 0 1 mettre L4 à 1; choisir unité 1; mettre MOTEUR SOUS TENSION TABLEAU 2 (suite) (Opérations d'écriture synchrones)
MOTEUR SOUS
L4 L5 L6 L7 TENSION Action
1 0 1 0 1 mettre L6 à 1; condition de pré-
paration d'écriture; initialiser horloge 91 de décalage d'écriture;
initialiser commande de charge-
ment/décalage mettre DONECR à 1; mettre DEMECR à 1;remettre CNA à 0 1 0 1 1 1 mettre L7 à 1; mettre en fonction
CHARGER REGISTRE DE DONNEES
1 0 0 1 1 remettre L6 àO;lire DEL et ENA 1 0 0 1 1 continuer interrogation drapeau DEL jusqu'à ce qu'il soit mis à 1 i 0 1 1 1 mettre L6 àl;mettre en fonction
CHARGER REGISTRE DONNEES
i 0 0 1 1 mettre L6 àO0;lire DEL et ENA
1 0 0 1 1 continuer interrogation DEL jus-
qulà ce qu'il soit mis à 1 1 0 1 1 1 mettre L6 à 1;mettre en fonction
CHARGER REGISTRE DE DONNEES
i 0 1 0 1 remettre L7 à 0; sortie du mode d'écriture i 0 0 0 1 remettre L6 à 0 0 0 0 0 1 remettre L4 à 0 0 0 0 0 0 remettre MOTEUR SOUS TENSION à 0
après expiration du temps de comp-
tage du minuteur.
TABLEAU 3
(Opérations d'écriture synchrones)
MOTEUR SOUS
L4 L5 L6 L7 TENSION Action 0 0 0 0 0 état initial 0 0 1 0 0 mettre L6 à 1 0 0 1 1 0 mettre L7 à 1; charger données du bus dans registre de mode 0 0 1 0 0 remettre L7 à 0 0 0 0 0 0 remettre L6 à 0 TABLEAU 3.(suite) (Opérations d.'écriture synchrones)
MOTEUR SOUS
L4 L5 L6 L7 TENSION Action 1 0 0 0 1 mettre L4 à 1; choisir unité 1; mettre MOTEUR SOUS TENSION
1 0 1 0 1 mettre L6 à 1; état de prépara-
tion d'écriture; initialiser hor-
loge de décalage d'écriture; ini-
tiliser commande chargement/dc-a-
lage; mettre DONECR à 1; mettre
DEMECR à 1
1 0 1 I 1 mettre L7 à 1; placer un multiplet de données sur le bus de données 17 toutes les 64 impulsions Q3 1 0 1 0 1 remettre L7 à 0; sortir ensuite du mode d'écriture 1 0 0 0 1 remettre L6 à 0 0 0 0 0 1 remettre L4 à 0 0 0 0 0 0 remettre MOTEUR SOUS TENSION après expiration du temps de comptage du minuteur Le contrôleur décrit peut être assemblé dans un bottier classique en matière plastique de 15,24 mm à deux rangées de connexions comportant 28 broches. La disposition de toutes les broches à l'exception de la broche Vcc connectée à une source de tension et de la broche connectée à la masse a été
représentée sur la Fig. 1.
Ainsi, on a décrit ci-dessus un contrôleur d'unité à disque conçu pour établir une interface entre un ordinateur numérique et au moins une unité à disque souple qui peut
être réalisé sous la forme d'un circuit intégré. Le contrô-
leur est capable d'exécuter de multiples modes de fonction-
nement y compris un fonctionnement rapide et un fonctionnement lent et des opérations de lecture et d'écriture synchrones et asynchrones.

Claims (8)

REVENDICATIONS
1 - Un contrôleur (11) d'unité (15) à disque souple formé par un circuit intégré conçu pour établir une interface entre un ordinateur numérique (13) et une unité à disque souple, caractérisé en ce qu'il comporte: des bascules à verrouillage(39) couplées à l'ordinateur (13) pour mettre en
mémoire des commandes l'état transmises par l'ordina-
teur; un décodeur (41) couplé aux bascules à verrouillage pour décoder les commandes mises en mémoire dans ces bascules à verrouillage et pour engendrer des signaux d'exécution sur la base des commandes décodées; un registre de mode (31) couplé à l'ordinateur et au décodeur pour mettre en mémoire
des modes de fonctionnement choisis par l'ordinateur; un re-
gistre d'état (33) couplé au décodeur, à l'unité à disque
souple et à l'ordinateur pour mettre en mémoire des informa-
tions relatives à l'état de l'unité à disque et du contrô-
leur, en vue de son interrogation par l'ordinateur; un cir-
cuit (45) de commande de lecture couplé au registre de mode,
à l'ordinateur et à l'unité à disque pour recevoir des don-
nées de l'unité à disque et transmettre ces données.àl'ordi-
nateur dans un mode de fonctionnement déterminé par le re-
gistre de mode; et un circuit (47) de commande d'écriture couplé au registre de mode, à l'ordinateur et à l'unité à
disque pour recevoir des données de l'ordinateur, et trans-
mettre ces données à l'unité à disque dans un mode de fonc-
tionnement déterminé par le registre de mode.
2 - Contrôleur selon la revendication 1, caractérisé en ce
que les bascules à verrouillage (39) comprennent plusieurs bas-
cules à verrouillage qui mettent en mémoire l'état des
commandes d'état transmises par l'ordinateur (13).
3 - Contrôleur selon la revendication 2, caractérisé en ce que l'état des bascules à verrouillage (39) commande le positionnement d'un moteur pas à pas (22) faisant partie de l'unité (15) à disque, met en fonction et hors fonction un moteur d'entrainement (29) faisant partie de l'unité à disque, choisit l'une de plusieurs unités à disque pour y
effectuer des opérations d'écriture ou de lecture et comman-
de l'opération effectuée par le contrôleur (11) de la ma-
nière déterminée par les commandes d'état reçues de l'or-
dinateur. 4 - Contrôleur selon la revendication 2, caractérisé en ce que le décodeur (41) décode certaines prédéterminées des
bascules (39) à l'aide de moyens logiques.
- Contrôleur selon la revendication 1, caractérisé en ce que le registre de mode (31) comprend plusieurs bascules à
verrouillage qui mettent en mémoire les modes de fonctionne-
ment choisis par l'ordinateur (13).
6 - Contrôleur selon la revendication 5, caractérisé en ce
que les modes de fonctionnement sont la lecture et l'écri-
ture asynchrones, la lecture et l'écriture synchrones, la
synchronisation basée sur une horloge fonctionnant à une pre-
mière fréquence, la synchronisation basée sur une horloge fonctionnant à une seconde fréquence, la mise en fonction d'un minuteur de temporisation pour la mise hors tension
d'un moteur d'entraXnement, la mise hors fonction d'un minu-
teur de temporisation pour la mise hors tension d'un moteur
d'entraînement.
7 - Contrôleur selon la revendication 1, caractérisé en ce que le registre d'état (33) comprend plusieurs bascules à verrouillage et les informations mises en mémoire dans ces bascules sont utilisées pour informer l'ordinateur (13) que l'unité (15) à disque est ou non dans une condition de protection d'écriture et qu'un moteur d'entraînement (29)
faisant partie de l'unité à disque est ou non sous tension.
8 - Contrôleur selon la revendication 1, caractérisé en ce que le circuit (45) de commande de lecture comprend: un
extracteur (51) de données de lecture pour convertir des si-
gnaux séquentiels reçus de l'unité à disque en une série d'impulsions séquentielles représentant des 1 binaires et
des O binaires; un registre à décalage (57) couplé à l'ex-
tracteur de données de lecture pour convertir la série d'im-
pulsions séquentielles en données parallèles; un registre (65) couplé au registre à décalage pour mettre en mémoire les données provenant du registre à décalage jusqu'à ce qu'elles puissent être placées sur un bus de données (17) en vue de leur transfert à l'ordinateur (13); et un circuit de commande (61, 67, 69) pour commander le chargement des données dans le registre à décalage, dans le registre et sur le bus de données afin d'assurer que les données transmises
à l'ordinateur ne sont ni perdues ni reproduites en double.
9 - Contrôleur selon la revendication 8, caractérisé en ce que le circuit (45) de commande de lecture comporte: une horloge (59) de décalage de lecture couplée à l'extracteur (51) de données de lecture et au registre à décalage (57); un circuit logique (61) de chargement du registre de données de lecture couplé à l'horloge de décalage, au registre à décalage et au registre (65) et qui transmet un signal au registre lorsque des données antérieures contenues dans le registre ont été reçues par l'ordinateur (13); un circuit logique (67) de maintien du registre de données de lecture couplé au registre (65) et à un registre intermédiaire (66),
le registre intermédiaire étant couplé au registre, le cir-
cuit logique de maintien du registre de données de lecture transmettant un signal au registre intermédiaire après une période de temps prédéterminée qui est suffisamment longue
pour assurer que les données contenues dans le registre inter-
médiaire ont été convenablement transférées à l'ordinateur.
- Contrôleur selon la revendication 1, caractérisé en ce que les moyens (47) de commande d'écriture comportent: un registre (81) pour mettre en mémoire les données en parallèle reçues de l'ordinateur (13) et qui doivent être transmises à l'unité (15) à disque; un registre à décalage (83) couplé au registre pour convertir les données en parallèle en un courant de bits séquentiels; une bascule (85) couplée au
registre à décalage pour engendrer des impulsions représen-
tant des 1 binaires et des 0 binaires qui sont transmises à
l'unité à disque; et des moyens de commande (87) pour com-
mander le chargement de données provenant de l'ordinateur (13) dans le registre, dans le registre à décalage et dans
la bascule afin d'assurer que les données transmises à l'u-
nité à disque ne sont ni perdues ni reproduites en double.
11 - Contrôleur selon la revendication 10, caractérisé en ce
que les moyens de commande d'écriture comprennent une hor-
loge (91) de décalage d'écriture, un circuit logique (87) de chargement et de décalage de registre, couplé au registre à décalage (83) et à l'horloge de décalage d'écriture qui trans-
met au registre à décalage un signal qui provoque le charge-
ment par le registre à décalage des données du registre (81) ou le décalage des données qui ont été précédemment chargées; et un circuit logique d'établissement de liaison/6criture
non achevée couplé au circuit logique de chargement et de dé-
calage de registre pour engendrer des signaux servant à in-
former l'ordinateur que des données précédemment transmises par l'ordinateur n'ont pas été chargées dans le registre à
temps pour être transmises à l'unité à disque.
FR848418817A 1984-01-24 1984-12-10 Controleur integre d'unite a disque souple Expired - Fee Related FR2558615B1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US57306784A 1984-01-24 1984-01-24

Publications (2)

Publication Number Publication Date
FR2558615A1 true FR2558615A1 (fr) 1985-07-26
FR2558615B1 FR2558615B1 (fr) 1991-08-23

Family

ID=24290504

Family Applications (1)

Application Number Title Priority Date Filing Date
FR848418817A Expired - Fee Related FR2558615B1 (fr) 1984-01-24 1984-12-10 Controleur integre d'unite a disque souple

Country Status (7)

Country Link
JP (1) JPS60160433A (fr)
KR (1) KR900008593B1 (fr)
CA (1) CA1232067A (fr)
DE (1) DE3500741A1 (fr)
FR (1) FR2558615B1 (fr)
GB (1) GB2153114B (fr)
HK (1) HK76888A (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0135848B1 (ko) * 1993-11-20 1998-06-15 김광호 컴팩트 디스크-롬 드라이브 인터페이스 회로
US5535419A (en) * 1994-05-27 1996-07-09 Advanced Micro Devices Sytem and method for merging disk change data from a floppy disk controller with data relating to an IDE drive controller

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4210959A (en) * 1978-05-10 1980-07-01 Apple Computer, Inc. Controller for magnetic disc, recorder, or the like
EP0114186A1 (fr) * 1982-12-23 1984-08-01 International Business Machines Corporation Procédé pour examiner l'identité d'un disque dans un appareil enregistreur pour disque flexible

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5998263A (ja) * 1982-06-30 1984-06-06 Fujitsu Ltd 磁気デイスク制御装置診断方式
CA1220853A (fr) * 1983-05-16 1987-04-21 Edward Gershenson Dispositif de commande hierarchique pour unite de disques
JPS6070549A (ja) * 1983-09-28 1985-04-22 Ricoh Co Ltd フロッピ−ディスク制御装置
JPS60129969A (ja) * 1983-12-16 1985-07-11 Hitachi Ltd デ−タ読出書込回路

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4210959A (en) * 1978-05-10 1980-07-01 Apple Computer, Inc. Controller for magnetic disc, recorder, or the like
EP0114186A1 (fr) * 1982-12-23 1984-08-01 International Business Machines Corporation Procédé pour examiner l'identité d'un disque dans un appareil enregistreur pour disque flexible

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ELECTRONIC DESIGN, vol. 31, no. 9, 28 avril 1983, pages 175-182, Waseca, MN, Denville, NJ, US; J.V. JAWORSK: "Flexible controller mates with popular Winchester drives" *
IEEE ELECTRO, vol. 8, 18-20 avril 1983, pages 26/4,1-9, New York, US; R. NESIN et al.: "A next generation Winchester disk controller" *

Also Published As

Publication number Publication date
HK76888A (en) 1988-09-30
GB8422908D0 (en) 1984-10-17
CA1232067A (fr) 1988-01-26
FR2558615B1 (fr) 1991-08-23
JPS60160433A (ja) 1985-08-22
KR900008593B1 (ko) 1990-11-26
DE3500741A1 (de) 1985-07-25
GB2153114A (en) 1985-08-14
GB2153114B (en) 1987-11-04
DE3500741C2 (fr) 1989-11-09
KR850005640A (ko) 1985-08-28

Similar Documents

Publication Publication Date Title
EP0168077B1 (fr) Circuit d&#39;interface du type esclave fonctionnant avec un bus série
FR2827684A1 (fr) Controleur de memoire presentant une capacite d&#39;ecriture 1x/mx
EP0156724A1 (fr) Procédé d&#39;enregistrement dans une mémoire à disques et système de mémoire à disques
FR2481487A1 (fr) Systeme de traitement de l&#39;information utilisant des techniques de regeneration et de detection et correction d&#39;erreurs
FR2764991A1 (fr) Procede de test fonctionnel et circuit comprenant des moyens de mise en oeuvre du procede
EP0683454B1 (fr) Procédé pour tester le déroulement d&#39;un programme d&#39;instructions
EP0875830B1 (fr) Circuit testable à faible nombre de broches
FR2458846A1 (fr) Sous-ensemble a antememoire pour ensemble de memorisation a disques magnetiques
EP0696031B1 (fr) Mémoire intégrée programmable comportant des moyens d&#39;émulation
FR2606528A1 (fr) Dispositif pour emuler un microcontroleur au moyen d&#39;un microcontroleur mere et d&#39;un microcontroleur fille, microcontroleur mere ou microcontroleur fille a utiliser dans un tel dispositif, circuit integre a utiliser dans un tel microcontroleur fille et microcontroleur contenant un tel circuit integre
FR2632092A1 (fr) Circuit de conditionnement d&#39;ecriture d&#39;antememoire retarde pour un systeme de microcalculateur a bus double comprenant une unite 80386 et une unite 82385
FR2558615A1 (fr) Controleur integre d&#39;unite a disque souple
FR2534044A1 (fr) Dispositif de triage integre pour des mots de donnees ayant la forme d&#39;un composant et processeur de traitement de donnees integre pourvu d&#39;un tel dispositif de triage cointegre
FR2645987A1 (fr) Dispositif d&#39;acceleration des acces memoire dans un systeme informatique
WO2002103701A1 (fr) Circuit integre a faible consommation electrique, ayant une interface de communication &#39;un fil&#39;
FR2474224A1 (fr) Platine tourne-disque
EP1338956A1 (fr) Dispositif électronique de traitement de données, en particulier processeur audio pour un décodeur audio/vidéo
FR2570527A1 (fr) Dispositif pour la modelisation d&#39;un composant electrique materiel selon une simulation logique electrique
FR2631470A1 (fr) Unite de controle d&#39;un circuit integre de traitement de donnees
EP0464768A1 (fr) Module interface de transfert de données
EP0833346A1 (fr) Mémoire à accès série avec sécurisation de l&#39;écriture
EP0168076A1 (fr) Circuit d&#39;interface du type esclave
FR3047136A1 (fr)
EP1436713A2 (fr) Dispositif de transmission de donnees asynchrones comprenant des moyens de controle de deviation d&#39;horloge
EP0683455A1 (fr) Circuit intégré comprenant des moyens pour arrêter l&#39;exécution d&#39;un programme d&#39;instructions quand une combinaison de points d&#39;arrêt est vérifiée

Legal Events

Date Code Title Description
ST Notification of lapse