LE FDC 765

 

Compatibilité entre les firmes

Brochage

Programmation et registres

COMPATIBILITE ENTRE LES FIRMES

PD 765 pour la firme NEC

R 6765 pour la firme ROCKWELL

8765 pour la firme INTEL

Ces trois circuits intégrés sont compatibles broches à broches

-----

BROCHAGE

1
RESET
2
RDb
3
WRb
4
CSb
5
A0
6
D0
7
D1
8
D2
9
D3
10
D4
11
D5
12
D6
13
D7
14
DRQ (DMA)
15
DACKb (DMA)
16
TC (DMA)
17
INDEX
18
INT
19
CLK (4MHz pour les formats inférieur à 8" ou 8MHz)
20
GND (0V)
21
WCLK (500KHz pour MF et 1MHz pour MFM)
22
WINDOW
23
RDATA
24
SYNC
25
WE
26
MFM
27
SIDE
28
US1
29
US0
30
WDATA
31
PS1
32
PS0
33
FLT/TRK0
34
WPRT/2 SIDE
35
READY
36
HOLD
37
FLTR/STEP
38
LCT/DIR
39
RW/SEEK
40
VCC (+ 5V)

-----

PROGRAMMATION ET REGISTRES

ADRESSE
ECRITURE (WRb)
LECTURE (RDb)
FA7E
CONTROLE MOTEUR
NON UTILISE
FB7E
NON UTILISE
REGISTRE D'ETAT
7B7F
REGISTRE DONNEES
REGISTRE DONNEES

 

Relation entre le registre d'état/données et les signaux RD, WR et A0

A0
RD
WR
FONCTION
0
0
0
ILLEGAL
0
0
1
LECTURE DU REGISTRE D'ETAT
0
1
0
ILLEGAL
0
1
1
AUCUN EFFET
1
0
0
ILLEGAL
1
0
1
LECTURE DU REGISTRE DE DONNEES
1
1
0
ECRITURE DU REGISTRE DE DONNEES
1
1
1
AUCUN EFFET

 

Les symboles commandes

SYMBOLES
DESCRIPTION
NP
Numéro de piste.
ADT
Adresse de tête 0 ou 1.
NS
Numéro de secteur lecture/écriture.
LS
Nombre de données écrites dans un secteur.
FP

Numéro du dernier secteur d'une piste.Pendant une lecture ou une écriture, le FDC arrête de transférer les données après un EP.

GL
Durant une lecture/écriture, cette valeur détermine le nombre d'octets au cours duquel le VCO doit rester inactif après deux octets CRC.
STP
Pendant une opération de vérification, si STP=1, les données dans un secteur continu sont comparées, octet par octet, avec les données envoyées par le CPU (ou DMA).Si le STP=2, les secteurs sont lus et comparés alternativement.
ET0,ET1,ET2,ET3
Durant la phase résultat, les registres mémorisent les états relatifs à une commande particulière.Ces registres ne doivent pas être confondus avec le registre d'état sélectionné par A0.
NPC
Numéro de piste après une commande d'interprétation d'état d'interruption.
SRT
Step rate du FDD de 1 à 16 ms par pas de 1 ms (délai entre deux impulsions de pas).
TCT
Délai avant le chargement de la tête (de 2 à 254 ms par pas de 2 ms).Ce délai n'a de sens que pour le lecteur 8".Dans les petits lecteurs,la tête est presque toujours chargée avec le signal moteur OW.
TDT
Délai de déchargement de la tête (de 16 à 240 ms par pas de 2 ms).
ND
Opération en mode non data.
NNP
Nouveau numéro de piste résultant d'une opération de recherche de piste.
SD0,SD1
Sélection du lecteur A ou B.
LD
Lorsque LS est défini égal à 0, LD vaut la longueur de donnée qui sera utilisée pour la lecture et l'écriture dans un secteur.
ST
Dans les lecteurs à deux têtes, la sélection de la face est effectuée par ce bit.
MF
Sélection du mode MF (0) ou MFM (1).
MT
Permet les opérations multipiste pour MT=1. A la fin des opérations de lecture/écriture sur la face 0, le FDC recherche automatiquement le secteur 1 sur la face 1.
TD
Type de données qui doit être écrit dans le secteur.
NSP
Indique le nombre de secteurs par piste.
SS
SS=1: les secteurs effacés sont sautés.
W
Ecriture
R
Lecture

 

Les registres d'états

Le registre d'état principal

D0 à D3
FDD0 à FDD3 (disque occupé).Dès qu'une instruction de recherche de piste est lancée sur un des lecteurs, le bit correspondant est mis à 1.Aucune instruction de lecture ou d'écriture ne pourra être lancée sur ce lecteur tant que ce bit ne sera pas remis à 0 par la commande 12.
D4
CB (FDC occupé).Positionné à 1, il signifie que la FDC est en train de traiter une commande de lecture ou d'écriture.
D5
ME (mode d'exécution).Ce bit est uniquement positionné en mode non DMA.Dans ce mode, il est égal à 1 lors de la phase exécution et il est égal à 0 lors de la phase résultat.
D6
DES (données entrée/sortie).Indique le sens de transfert des données entre le FDC et le registre données.Si DES=0, le transfert s'effectuera du registre de données vers le CPU.
D7

DT (demande de transfert).Si ce bit est égal à 1, il indique que le registre de données est prêt à transférer ou à recevoir des informations venant du CPU.

 

Le registre d'état ET0

D0 à D1
SD0 à SD1.Ces deux bits sont utilisés pour indiquer le lecteur sélectionné au moment de l'interruption.
D2
ADT (adresse de tête).Ce bit est utilisé pour indiquer l'état de la tête sélectionnée au moment de l'interruption.
D3
NPT (non prêt).Lorsque le lecteur n'est pas prêt, ce bit est positionné pour une instruction de lecture/écriture.
D4
VE (vérification d'équipement).Ce bit signale si une erreur est envoyée au lecteur ou si la piste 0 n'a pas été trouvée lors de la commande 11.
D5
F0.Lorsque le FDC a terminé une commande, il positionne ce bit à 1.
D6 à D7

D7-D6

0 - 0 : Instruction terminée sans erreur

0 - 1 : L'exécution de la commande a été lancée, mais elle ne s'est pas terminée avec succès

1 - 0 : Commande invalide

1 - 1 : Exécution abandonnée. Au cours de l'exécution de la commande, le signal ready du lecteur a changé d'état.

 

Registre d'état ET1

D0 MA (missing adress mark).Il est égal à 1 si le FDC ne peut détecter l'identificateur ID après une rotation complète du disque ou si le FDC ne peut trouver un "data adress mark"
D1 NE (pas d'écriture).Ce bit est positionné si, durant l'exécutiond'une commande d'écriture, de lecture ou de formatage, le FDC détecte une protection d'écriture du FDD.
D2 ND (pas de données).Ce bit est positionné si le lecteur n'est pas trouvé ou si, lors d'une lecture ID secteur, le FDC ne peut pas lire un champ ID.
D3 Non utilisé.Toujours égal à 0.
D4 OR (overrun).Ce bit est égal à 1 si le transfert de données ne s'est pas déroulé dans un intervalle de temps précis.
D5 ED (erreur donnée).Ce bit est mis à 1 lors de la détection d'une erreur de CRC.
D6 Non utilisé.Toujours égal à 0.
D7 FP (fin de piste).Il est égal à 1 si le FDC essaie d'accéder un secteur après une fin de piste.

 

Registre d'état ET2

D0 MD (missing adress mark dans le champ de données).Ce bit est égal à 1 si le FDC ne peut trouver un data adress mark effacé ou un data adress mark lors d'une lecture.
D1 PD (piste défectueuse).Ce bit est positionné à 1 si le numéro de piste lu dans ID est différent de celui prévu et que le numéro de piste lu est FF(hexa).
D2 VF (vérification secteur faux).Il est égal à 1 si, lors d'une commande de vérification quelconque, le résultat est faux.
D3 VV (vérification secteur vrai).Ce bit est égal à 1 si, lors d'une commande de vérification, le résultat est vrai.
D4 PE (piste erronée).Ce bit est positionné si le FDC constate une différence entre le numéro de la piste lue et le numéro de la piste prévue.
D5 DD (erreur de données dans le champ de données).Ce bit est égal à 1 lors d'une détection d'erreur CRC dans le champs de données.
D6 CM (control mark).Ce bit est égal à 1 si le FDC trouve un secteur avec un data adress mark effacé.
D7 Non utilisé.Toujours égal à 0.

 

Registre d'état ET3

D0 à D1
SD0 à SD1.Ces deux bits indiquent l'unité de disque sélectionnée.
D2
ADT (adresse de tête).Indique la tête sélectionnée.
D3
DF (double face).Il permet de déterminer le type de lecteur (1 tête/2 têtes).
D4
P0 (piste 0).Par ce bit, le lecteur indique que sa tête est positionnée sur la piste 0.
D5
PT (prêt).Ce bit est utilisé pour indiquer si la disquette est protégée.
D6
PE (protection en écriture).Ce bit indique si la disquette est protégée.
D7
FT (faute).Ce bit est utilisé pour indiquer une erreur signalée par le lecteur.

 

Les différentes commandes

COMMANDE 1 : LECTURE DES DONNEES
PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W MT MF SS 0 0 1 1 0 InformationID secteuravant execution dela commande.
W           ST SD1 SD0
W NP NP NP NP NP NP NP NP
W ADT ADT ADT ADT ADT ADT ADT ADT
W NS NS NS NS NS NS NS NS
W LS LS LS LS LS LS LS LS
W FP FP FP FP FP FP FP FP
W GL GL GL GL GL GL GL GL
W LD LD LD LD LD LD LD LD
Exécution Transfert de données entre le FDD et le système.
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0

Information d'état après exécution de la commande.

 

ID secteur après commande.

R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 2: LECTURE DES DONNEES EFFACEES

Les données effacées sont les données d'un secteur marqué comme étant effacé.

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W MT MF SS 0 1 1 0 0 Code
W           ST SD1 SD0
W NP NP NP NP NP NP NP NP
W ADT ADT ADT ADT ADT ADT ADT ADT
W NS NS NS NS NS NS NS NS
W LS LS LS LS LS LS LS LS
W FP FP FP FP FP FP FP FP
W GL GL GL GL GL GL GL GL
W LD LD LD LD LD LD LD LD
Exécution Transfert de données entre le FDD et le système.
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 3 : ECRITURE DES DONNEES
PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W MT MF 0 0 0 1 0 1 Code
W           ST SD1 SD0
W NP NP NP NP NP NP NP NP
W ADT ADT ADT ADT ADT ADT ADT ADT
W NS NS NS NS NS NS NS NS
W LS LS LS LS LS LS LS LS
W FP FP FP FP FP FP FP FP
W GL GL GL GL GL GL GL GL
W LD LD LD LD LD LD LD LD
Exécution Transfert de données entre le FDD et le système.
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 4 : ECRITURE DES DONNEES EFFACEES

Cette commande diffère de la commande d'écriture normale par le fait qu'elle concerne des données dont le data adress mark contient un code disant que ces dernières sont effacées.

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W MT MF 0 0 1 0 0 1 Code
W           ST SD1 SD0
W NP NP NP NP NP NP NP NP
W ADT ADT ADT ADT ADT ADT ADT ADT
W NS NS NS NS NS NS NS NS
W LS LS LS LS LS LS LS LS
W FP FP FP FP FP FP FP FP
W GL GL GL GL GL GL GL GL
W LD LD LD LD LD LD LD LD
Exécution Transfert de données entre le FDD et le système.
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 5 : LECTURE D'UNE PISTE

Cette commande lit tous les octets de données de la piste entre l'origine d'index et FP.

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W 0 MF 0 0 1 0 1 0 Code
W           ST SD1 SD0
                 
                 
                 
                 
                 
                 
                 
Exécution  
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 7 : FORMATAGE D'UNE PISTE
PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W 0 MF 0 0 1 1 0 1 Code
W           ST SD1 SD0
                 
                 
                 
W LS LS LS LS LS LS LS LS
W NSP NSP NSP NSP NSP NSP NSP NSP
W GL GL GL GL GL GL GL GL
W TD TD TD TD TD TD TD TD
Exécution  
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 8 : VERIFICATION D'UN SECTEUR EGALITE

Cette commande opère une vérification de l'identité ID entre les données écrites et les données à écrire.

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W MT MF SS 1 0 0 0 1 Code
W           ST SD1 SD0
W NP NP NP NP NP NP NP NP
W ADT ADT ADT ADT ADT ADT ADT ADT
W NS NS NS NS NS NS NS NS
W LS LS LS LS LS LS LS LS
W FP FP FP FP FP FP FP FP
W GL GL GL GL GL GL GL GL
W MV MV MV MV MV MV MV MV
Exécution Comparaison de données entre FDD et le système.
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 9 : VERIFICATION D'UN SECTEUR (plus petit ou égal)
PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W MT MF SS 1 1 0 0 1 Code
W           ST SD1 SD0
W NP NP NP NP NP NP NP NP
W ADT ADT ADT ADT ADT ADT ADT ADT
W NS NS NS NS NS NS NS NS
W LS LS LS LS LS LS LS LS
W FP FP FP FP FP FP FP FP
W GL GL GL GL GL GL GL GL
W MV MV MV MV MV MV MV MV
Exécution Transfert de données entre le FDD et le système.
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 10 : VERIFICATION D'UN SECTEUR (plus grand ou égal)
PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W MT MF SS 1 1 1 0 1  
W           ST SD1 SD0
W NP NP NP NP NP NP NP NP
W ADT ADT ADT ADT ADT ADT ADT ADT
W NS NS NS NS NS NS NS NS
W LS LS LS LS LS LS LS LS
W FP FP FP FP FP FP FP FP
W GL GL GL GL GL GL GL GL
W MV MV MV MV MV MV MV MV
Exécution Comparaison de données entre FDD et le système.
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0  
R ET1 ET1 ET1 ET1 ET1 ET1 ET1 ET1
R ET2 ET2 ET2 ET2 ET2 ET2 ET2 ET2
R NP NP NP NP NP NP NP NP
R ADT ADT ADT ADT ADT ADT ADT ADT
R NS NS NS NS NS NS NS NS
R LS LS LS LS LS LS LS LS

 

COMMANDE 11 : POSITIONNEMENT SUR LA PISTE 0
PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W 0 0 0 0 0 1 1 1 Code
W           0 SD1 SD0
                 
                 
                 
                 
                 
                 
                 

 

COMMANDE 12 : INTERROGATION D'ETAT D'INTERRUPTION

Cette commande détermine les causes d'interruption

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W 0 0 0 0 1 0 0 0 Code
                 
                 
                 
                 
                 
                 
                 
                 
Exécution  
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0

 

R NPC NPC NPC NPC NPC NPC NPC NPC
                 
                 
                 
                 
                 

 

COMMANDE 13 : SPECIFICATION

Cette commande permet d'adapter différents types de lecteurs au FDC.

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W 0 0 0 0 0 0 1 1 Code
W SRT SRT SRT SRT TDT TDT TDT TDT
W TCT TCT TCT TCT TCT TCT TCT ND
                 
                 
                 
                 
                 
                 

 

COMMANDE 14 : INTERROGATION D'ETAT DES LECTEURS
PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W 0 0 0 0 0 1 0 0 Code
W           ST SD1 SD0
                 
                 
                 
                 
                 
                 
                 
Exécution  
Résultat R ET3 ET3 ET3 ET3 ET3 ET3 ET3 ET3  
                 
                 
                 
                 
                 
                 

 

COMMANDE 15 : RECHERCHE D'UNE PISTE

Cette commande permet le déplacement de la tête.

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Commande W 0 0 0 0 1 1 1 1 Code
W           ST SD1 SD0
W NNP NNP NNP NNP NNP NNP NNP NNP
                 
                 
                 
                 
                 
                 
Exécution La tête est positionnée sur la piste recherchée.

 

COMMANDE X : COMMANDE INVALIDE

Le FDC se met en attente

PHASE R/W D7 D6 D5 D4 D3 D2 D1 D0 REMARQUES
Résultat R ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0 ET0 = 80 (HEXA)

RETOUR PAGE LE LECTEUR DE DISQUETTE