Upozornění !!!!!!!!

Tato stránka je stále ve vývoji,
prosíme omluvte grafickou stránku a gramatickou správnost.


8272 SINGLE/DOUBLE DENSITY

FLOPPY DISK CONTROLLER


8272 je čip řadiče pružného disku, který obsahuje systém a řídící funkce pro rozhraní mezi procesorem a 4 jednotkami pružných disků. Je schopný podporovat jak IBM 3740 ( single density format – FM ), tak IBM Systém 34 ( double density format – MFM ) včetně oboustranného nahrávání. 8272 poskytuje řídící signály, které zjednodušují návrh externí fáze uzavřené smyčky a zapisovacího předkompenzačního obvodu. FDC zjednodušuje a ovládá mnoho funkcí spojených s implementací rozhraní FDD.

8272 System Block Diagram

Ovládací signály jsou poskytovány 8272, který činí operace pomocí DMA jednoduché ve spojení s externím DMA řídícím čipem 8237. FDC pracuje jak v DMA režimu, tak i v Non-DMA režimu. V Non-DMA režimu generuje FDC přerušení pro procesor pro každý přenos dat mezi CPU a 8272. V DMA režimu, procesor pouze předá povel FDC a veškeré přesuny dat se dějí pod dohledem 8272 a řadiče DMA.

Máme 15 samostatných příkazů, které 8272 může vykonat. Všechny tyto příkazy vyžadují násobky 8-bitů bytů k plné specifikaci operací, které procesor vyžaduje po FDC. Jsou to následující příkazy:

Hlavní rysy:

Obvod detekce adres je zabudován interně do FDC, čímž je zjednodušena fáze uzavřené smyčky a čtecí elektronika. Krokovací rychlost stopy, vystavovací a parkovací čas hlavy mohou být programovány uživatelem. 8272 poskytuje mnoho dalších rysů jako např. ( přenos více sektorů v režimu čtení i zápisu pomocí jednoho příkazů ).

Registry 8272 – CPU rozhraní

8272 obsahuje 2 registry, které mohou být zpřístupněny hlavnímu systémovému procesoru:

Data registr slouží programu k zapsání nebo přečtení dat pro FDC nebo obsahuje výsledky po vykonání příkazu. Stavový registr je pouze pro čtení a slouží pouze k ulehčení přenosů dat mezi procesorem a 8272.

Vztah mezi Status/Data registry a signály RD, WR a A0:

A0

RD

WR

Funkce

0

0

1

Čtení Stavového registru

0

1

0

Neplatné

0

0

0

Neplatné

1

0

0

Neplatné

1

0

1

Čtení z Datového registru

1

1

0

Zápis do Datového registru

Jednotlivé bity v Stavovém registru jsou definovány následovně:

Číslo bitu

Jméno

Symbol

Popis

DB0

FDD 0 obsazená

D0B

FFD číslo 0 je v režimu SEEK.

DB1

FDD 1 obsazená

D1B

FFD číslo 1 je v režimu SEEK.

DB2

FDD 2 obsazená

D2B

FFD číslo 2 je v režimu SEEK.

DB3

FDD 3 obsazená

D3B

FFD číslo 3 je v režimu SEEK.

DB4

FDC obsazen

CB

Probíhá příkaz zápisu nebo čtení.

DB5

Non-DMA režim

NDM

FDC je v Non-DMA režimu. Tento bit je nastaven jen během prováděcí fáze. Přechod na “0” ukazuje konec prováděcí fáze.

DB6

V/V dat

DIO

Směr toku dat.

(DIO = 0) <=> (procesor => Data register)

(DIO = 1) <=> (Data register => procesor)

DB7

Požadavek na Master

RQM

Indikuje připravenost Data registru pro příjem nebo poslání dat.

8272 je schopna vykonat 15 rozdílných příkazů. Každý příkaz je zahájen přesun několika bytů z procesoru a výsledek vykonání příkazu může být také přesun několika bytů do procesoru. Konvence zavádí tři fáze vykonání příkazu:

Během výkonné a závěrečné fáze musí procesor vždy přečíst Stavový registr před zápisem nebo čtením každého bytu informace z Datového registru. Bity D6 a D7 musí být ve stavu 0 a 1. Mnoho příkazů požaduje několik bytů a výsledek v Stavovém registru musí být přečten před každým přenosem do 8272. Na druhé straně, D6 a D7 musí být během závěrečné fáze = 1 (D6 = 1, D7 = 1) před čtením každého bytu z Datového registru.Upozornění, čtení Stavového registru před přenosem každého bytu je požadováno pouze při příkazové a závěrečné fázi.

Během výkonné fáze není potřeba číst Stavový registr. Je-li 8272 v Non-DMA režimu je přijetí každého bytu dat (čte-li 8272 data z FDD) indikováno signálem přerušení (INT = 1). Vygenerování signálu čtení (RD=0) nuluje přerušení stejně jako výstup dat na datovou sběrnici.

Je-li 8272 v DMA režimu, pak nejsou generovány žádná přerušení během výkonné fáze. 8272 generuje DRQ (DMA requests) kdykoliv jsou nějaká data k dispozici. Řadič DMA reaguje na tento požadavek nastavením DACK=0 (DMA Acknowledge) a RD=0 (Read signal). Při nastavení DACK=0 je nulován i DRQ=0. Po skončení výkonné fáze je vyvoláno přerušení signalizující začátek závěrečné fáze. Po přečtení prvních dat při závěrečné fázi je automaticky nulováno přerušení.

Důležité je připomenout, že během závěrečné fáze musí být přečteny všechny byty z Command Table. 8272 neakceptuje nový příkaz nejsou-li přečteny všechny byty.

8272 obsahuje 5 Stavových registrů. Výše zmiňovaný Main Status register je přístupný kdykoliv. Zbývající 4 Stavové registry (ST0, ST1, ST2 a ST3) jsou přístupné pouze při závěrečné fázi a mohou být čteny pouze po úspěšném vykonání příkazu. Jednotlivý vykonaný příkaz určuje kolik Stavových registrů bude čteno.

Pro správné vykonání jednotlivého příkazu je důležité dodržovat pořadí a počet čtených a předávaných parametrů. Nejprve se musí zadat příkazový kód odpovídající námi požadovanému příkazu, potom předat ve správném pořadí potřebné parametry, tím pádem 8272 automaticky přejde do výkonné fáze. Po skončení výkonné části a přečtení všech vrácených informací ve správném pořadí je příkaz automaticky ukončen a 8272 je připraven pro další příkaz. Příkaz může být přerušen zasláním signálu Terminal count. Tato možnost zajišťuje procesoru zpětné získání kontroly nad 8272 při abnormálním stavu.

 

Možnosti sdílení 8272

Po zaslání specifikace příkazu, přejdou automaticky DS0 a DS1 do režimu sdílení. 8272 sdílí všechny FDD mezi jednotlivými příkazy (kroky) na změnu stavu READY. Stav READY se může změnit obvykle z důvodu otevření nebo uzavření dvířek a je indikován vyvoláním přerušení. Je-li čten Status registr 0 (ST0) je indikován NOT READY (NR). Sdílení stavu READY je prováděno nepřetržitě mezi instrukcemi, čili procesor je informován, které mechaniky jsou připraveny a které ne.

 

Mnemonetické pomůcky pro příkazy

Symbol Jméno Popis
A0 Adress Line 0 A0 řídí výběr Hlavního stavového registru (A0 = 0) a Datového registru (A0 = 1).
C Cylinder Number C znamená číslo aktuální vybrané cylindrové stopy; číslo <0,76>.
D Data D znamená vzor dat, která jsou zapisována do sektoru.
D7 – D0 Data Bus 8-bitová sběrnice.
DS0, DS1 Drive Select DS znamená zda je vybraná jednotka 0 nebo 1.
DTL Data Length Je-li N = 00, pak DTL znamená délku dat, která uživatelé mohou číst/zapisovat do sektoru.
EOT End Of Track EOT znamená číslo posledního sektoru cylindru.
GPL Gap Length GPL znamená délku mezery mezi sektory.
H Head Adress H znamená číslo hlavy 0 nebo 1, tak jak je popsáno v ID položce.
HDS Head Select HDS znamená pro vybranou hlavu číslo 0 nebo 1 (H = HDS pro všechny příkazy).
HLT Head Load Time HLT znamená aktivační čas hlavy FDD (2 až 254 ms).
HUT Head Unload Time HUT znamená deaktivační čas hlavy FDD (16 až 240 ms).
MFM FM or MFM mode Je-li MF “0”, pak je vybrán režim FM, jinak režim MFM.
MT Multi-Track Je-li MT “1”, pak je vyvolána Multi-Track operace (cylindr pod HD0 i HD1 je přečten/zapsán).
N Number N znamená počet bajtů zapsaných do sektoru.
NCN New Cylinder Number NCN znamená číslo nové cylindru, který bude výsledkem operace SEEK.Požadovaná pozice hlavy.
ND Non-DMA Mode ND znamená režim Non-DMA pro operace.
PCN Present Cylinder Number PCN znamená číslo aktuálního cylindru.
R Record R znamená číslo sektoru, který je čtený/zapisován.
R/W Read/Write R/W znamená buď signál čtení (R) nebo signál zápis (W).
SC Sector SC indikuje počet sektorů na cylindr.
SK Skip SK znamená přeskakovat adresové značky Smazaných dat.
SRT Step Rate Time SRT znamená krokový poměr pro FDD (1 až 16 ms). Stejný krokový poměr je použit pro všechny jednotky.
ST0

ST1

ST2

ST3

Status 0

Status 1

Status 2

Status 3

ST0-3 znamená jeden ze čtyř registrů, které uchovávají informace po vykonání příkazu.
STP   Je-li STP=1 během operace SCAN, pak jsou souvislé sektory porovnávány. Je-li STP=2, pak jsou porovnávány nesouvislé sektory.

 

Charakteristické rysy příkazu

Během příkazové fáze je Hlavní stavový registr sdílen CPU při zápisu každého bajtu do Datového registru. Bity Hlavního stavového registru DIO (DB6) a RQM (DB7) musí být “0” a “1” dříve než jsou jednotlivé bajty příkazu zapisovány do 8272. Začátek výkonné fáze libovolného příkazu způsobí přepnutí DIO a RQM na “1” a “0”.

Čtení dat

Množina devíti bajtových slov je požadována k přepnutí FDC do režimu Čtení dat. Po zadání příkazu Čtení dat , FDC aktivuje hlavu (není-li aktivována), vyčká určený časový okamžik a začne se čtením ID Adresových značek a ID položek. Po uložení čísla aktuálního sektoru (“R”) do ID Registru (IDR), porovná jej s číslem přečteného sektoru pročítané diskety, potom FDC posílá po datové sběrnici data (z datové položky) bajt po bajtu do hlavního systému.

Po ukončení operace čtení z aktuálního sektoru je číslo sektoru zvětšeno o jedničku a data jsou opět posílána po datové sběrnici. Tato souvislá čtecí funkce je nazývána “Multi-Sector Read Operation”. Příkaz Čtení dat smí být ukončen po obdržení signálu Terminal Count. Po obdržení tohoto signálu FDC ukončí zasílání dat do procesoru, ale pokračuje ve čtení dat z aktuálního sektoru , spočítá CRC a na konci sektoru ukončí příkaz Čtení dat.

Množství dat, která mohou být obdržena jediným příkazem záleží na MT (multi-track), MFM (MFM/FM) a N (počet bajtů/sektor).

Multi-Track

MT

MFM/FM

MFM

bajtů/sektor

N

Maximální přenosová kapacita

(bajty/sektor)(počet sektorů)

Poslední sektor diskety

0

0

0

1

00

01

(128)(26)= 3 328

(256)(26)= 6 656

26 na straně 0

nebo 26 na straně 1

1

1

0

1

00

01

(128)(52)= 6 656

(256)(52)= 13 312

26 na straně 1

0

0

0

1

01

02

(256)(15)= 3 840

(512)(15)= 7 680

15 na straně 0

nebo 15 na straně 1

1

1

0

1

01

02

(256)(30)= 7 680

(512)(30)= 15 360

15 na straně 1

0

0

0

1

02

03

(512)(8)= 4 096

(1 024)(8)= 8 192

8 na straně 0

nebo 8 na straně 1

1

1

0

1

02

03

(512)(16)= 8 192

(1 024)(16)= 16 384

8 na straně 1

Funkce “multi-track” (MT) umožňuje FDC číst data z obou stran diskety. Pro jednotlivé cylindry jsou data přenášena od sektoru 1 strany 0 do sektoru L strany 1 (sektor L = poslední sektor na dané straně). Upozornění, tato funkce se týká jenom jediného sektoru (stejné stopy) na každé straně diskety.

Je-li A=0, potom DTL definuje délku dat, která musí FDC považovat za sektor. Data sektoru za DTL nejsou poslána na datovou sběrnici. FDC čte (interně) kompletní sektor k získání CRC a záleží na chování ukončení příkazu, může vyvolat operaci Čtení multi-sektorů. Je-li A nenulové, potom DTL nemá význam a mělo by být nastaveno na 0FFH.

Po skončení příkazu Čtení dat není hlava deaktivována dokud neuplyne interval Head Unload Time. Pokud procesor vyšle další příkaz dříve než je hlava deaktivována je ušetřen čas na aktivaci mezi jednotlivými čteními.

Jestliže FDC detekuje indexovou mezeru (Index Hole) dvakrát bez nalezení správného sektoru (indikovaného v “R”), pak nastaví vlajku ND (No Data) v Stavovém registru 1 na “1” a ukončí příkaz Čtení dat.

Po přečtení ID a Datových položek každého sektoru FDC kontroluje CRC bajty. Je-li detekována chyba čtení (nesprávné CRC v ID položce), FDC nastaví vlajku DE (Data Error) v Stavovém registru 1 na “1” a vyskytne-li se také chyba v Datové položce je také nastavena vlajka DD (Data Error in Data Field) ve Stavovém registru 2 na “1” a je ukončen příkaz Čtení dat.

Přečte-li FDC adresovou značku Smazaných dat na disketě a bit SK (bit D5 v prvním Příkazovém slově) není nastaven (SK=0), pak FDC nastaví vlajku CM (Control Mark) ve Stavovém registru 2 na “1” a ukončí příkaz Čtení dat po přečtení všech dat sektoru. Je-li SK=1, pak FDC přeskočí sektor a čte následující sektor.

Během přesunu dat mezi procesorem a FDC přes datovou sběrnici, musí být FDC obsluhována procesorem každých 27m s v režimu FM a každých 13m s v režimu MFM, jinak FDC nastaví vlajku OR (Over Run) v Stavovém registru 1 na “1” a ukončí příkaz Čtení dat.

Přeruší-li procesor operaci čtení (nebo zápisu), pak ID informace ve výsledné fázi závisí na stavu bitu MT a bajtu EOT.

Zápis dat

Množina devíti bajtových slov je požadována k přepnutí FDC do režimu Zápis dat. Po zadání příkazu Zápis dat , FDC aktivuje hlavu (není-li aktivována), vyčká určený časový okamžik a začne se čtením ID položek. Po uložení čísla aktuálního sektoru (“R”) do ID Registru (IDR), porovná jej s číslem přečteného sektoru pročítané diskety, potom procesor posílá po datové sběrnici data (z datové položky) bajt po bajtu do FDD.

Po ukončení operace zápisu aktuálního sektoru je číslo sektoru zvětšeno o jedničku a další datová položka je zapsána. FDC pokračuje v “Multi-Sector Write Operation” do obdržení signálu Terminal Count. Po obdržení tohoto signálu FDC pokračuje v zápisu dat aktuálního sektoru, dokončení datové položky. Je-li signál Terminal Count obdržen při zápisu datové položky, pak zbytek datové položky je vyplněn 00 (nulami).

FDC čte ID položku každého sektoru a kontroluje CRC, je-li detekována chyba čtení (neplatné CRC) v jedné ID položce, pak je nastavena vlajka DE (Data Error) Stavového registru 1 na “1” a ukončen příkaz Zápis dat.

Operace zápis dat v mnohém odpovídá operaci Čtení dat. Následující položky jsou naprosto stejné:

Při režimu Zápis dat musí data být přenesena mezi procesorem a FDC každých 31m s v režimu FM a každých 15m s v režimu MFM. Je-li interval delší, pak FDC nastaví vlajku OR (Over Run) Stavového registru 1 na “1” a ukončí příkaz Zápis dat.

Zápis smazaných dat

Tento příkaz je stejný jako příkaz Zápis dat s rozdílem, že adresová značka Smazaných dat je zapsána na začátek datové položky místo normální datové adresové značky.

Čtení smazaných dat

Tento příkaz je stejný jako příkaz Čtení dat s rozdílem, že celá datová položka je souvisle přečtena ze všech sektorů stopy. Ihned po narazení na Index Hole FDC začne se čtením všech datových položek stopy, jako by se jednalo o souvislý blok dat. Jestliže FDC nalezne chybu v ID nebo datovém CRC, pak pokračuje ve čtení dat ze stopy. FDC porovná ID informaci přečtenou ze všech sektorů s hodnotou uloženou v IDR a nastaví vlajku ND Stavového registru 1 na “1” při neshodě. Operace Multi-sektor nebo P5eskoč nejsou povoleny při tomto příkazu.

Tento příkaz je ukončen , je-li přečteno EOT daného sektoru. Jestliže ani napodruhé FDC nenalezne ID adresovou značku na disketě dříve než je narazeno na INDEX HOLE, pak je nastavena vlajka MA (missing adress mark) Stavového registru 1 na “1” a ukončen příkaz.

Čtení ID

Příkaz Čtení ID je používá k získání aktuální pozice záznamové hlavy. FDC uloží hodnotu první ID položky, kterou může číst. Jestliže ani nadvakrát není možno nalézt řádnou ID adresovou značku dříve než je narazeno na INDEX HOLE, pak je nastavena vlajka MA Stavového registru 1 na “1” a ukončen příkaz.

Formátování stopy

Příkaz Formátování stopy umožňuje formátování celé stopy. Po narazení na INDEX HOLE jsou zapsána data na disketu:

Buď v režimu IBM Systém 34 (dvojitá hustota) nebo Systém 3740 (jednoduchá hustota).

Konkrétní zapisovaný formát je kontrolován hodnotami naprogramovanými do: N (počet bajtů/sektor), SC (sektor/cylindr), GPL (délka mezery) a D (vzor dat), které poskytuje procesor během Příkazové fáze. Datová položka je naplněna bajtem dat uloženým v D. ID položka každého sektoru je poskytnuta procesorem. Skládá se z C (číslo cylindru), H (číslo hlavy), R (číslo sektoru) a N (počet bajtů/sektor). Tím je umožněno nesekvenční formátování, je-li požadováno.

Po zformátování každého sektoru musí procesor zaslat 8272 nové hodnoty C, H, R a N každého sektoru na stopě. Obsah registru R je zvýšen o jedničku po zformátování každého sektoru. Inkrementace a formátování pokračuje přes celou stopu, dokud se napodruhé nenarazí na INDEX HOLE, čímž se příkaz ukončí.

Jestliže je obdržen signál FAULT (chyba) z FDD po skončení operace zápisu, pak FDC nastaví vlajku EC Stavového registru 0 na “1” a ukončí příkaz. Také ztráta signálu READY na začátku výkonné fáze příkazu zapříčiní ukončení příkazu.

Příkazy SCAN

Příkaz SCAN umožňuje porovnání dat přečtených z diskety s daty poskytnutými hlavním systémem (procesor v režimu Non-DMA, řadič DMA v režimu DMA). FDC porovnává data bajt po bajtu a hledá sektor dat, která odpovídají podmínce:

DFDD = Dprocesor

DFDD <= Dprocesor

DFDD >= Dprocesor

Jedničková doplňková aritmetika je použita porovnání (FF = největší číslo, 00 = nejmenší číslo). Po porovnání celého sektoru a nenalezení shody je zvýšeno číslo sektoru (R+STP -> R)

a příkaz SCAN pokračuje. Operace SCAN pokračuje dokud:

Jestliže je podmínka pro SCAN splněna, pak FDC nastaví vlajku SH (Scan Hit) Stavového registru 2 na “1” a ukončí příkaz SCAN. Jestliže podmínka není splněna pro počáteční sektor (nastavený v R) a poslední sektor cylindru (EOT), pak je nastavena vlajka SN (Scan Not Satisfied) Stavového registru 2 na “1” a ukončen příkaz SCAN. Obdržení signálu TERMINAL COUNT od procesoru nebo řadiče DMA během příkazu zapříčiní dokončení porovnání konkrétního porovnávaného bajtu a ukončení příkazu.

Příkaz

Bit 2 = SN

Bit 3 = SH

Komentář

rovnost

0

1

1

0

DFDD = Dprocesor

DFDD 1 Dprocesor

menší nebo rovno

0

0

1

1

0

0

DFDD = Dprocesor

DFDD < Dprocesor

DFDD 1 Dprocesor

větší nebo rovno

0

0

1

1

0

0

DFDD = Dprocesor

DFDD > Dprocesor

DFDD 1 Dprocesor

Narazí-li FDC na adresovou značku Smazaných dat na jednom ze sektorů (a SK=0), pak pohlíží na tento sektor jako na poslední sektor cylindru, nastaví vlajku CM (Control Mark) Stavového registru 2 na “1” a ukončí příkaz. Je-li SK=1, pak FDC přeskočí tento sektor a čte následující sektor. V tomto případě FDC nastaví vlajku CM, aby ukázal, že bylo narazeno na smazaný sektor.

Během příkazu SCAN jsou data poskytována buď procesorem nebo řadičem DMA pro porovnání proti datům čteným z diskety. Aby nedošlo k nastavení vlajky OR je nezbytné mít data přístupná za méně než 27m s (FM režim) nebo méně než 13m s (MFM režim). Dojde-li k nastavení vlajky OR, je příkaz ukončen.

SEEK

Čtecí/zapisovací hlava FDD je přesouvána z cylindru na cylindr pomocí příkazu SEEK. FDC porovná PCN (Present Cylinder Number), který udává aktuální pozici hlavy s NCN (New Cylinder Number) a vyvolá při rozdílu následující operaci:

Poměr krokových pulsů je řízen SRT (Stepping Rate Time) příkazu SPECIFY. Po každém kroku je NCN porovnán s PCN a je-li NCN = PCN, pak je nastavena vlajka SE (Seek End) Stavového registru 0 na “1” a příkaz ukončen.

Během příkazové fáze operace SEEK je FDC ve stavu BUSY, ale během výkonné fáze je ve stavu NON BUSY a další příkaz SEEK může být vyvolán, tím pádem může být současně prováděn na všech čtyřech mechanikách.

Jestliže je FDD ve stavu NOT READY na začátku příkazové fáze nebo během operace SEEK, pak je nastavena vlajka NR (Not Ready) Stavového registru 0 na “1” a příkaz ukončen.

RECALIBRATE

Tento příkaz zapříčiní přesun hlavy na pozici Stopy 0. FDC vynuluje obsah čítače PCN a zkontroluje stav signálu Stopy 0 od FDD. Dokud je signál “0”, tak Směrový signál zůstává “1” a jsou vyvolány krokové pulsy. Po nastavení signálu Stopy 0 na “1” je nastavena vlajka SE (Seek End) Stavového registru 0 na “1” a příkaz je ukončen. Jestliže je signál Stopy 0 i po 77 krocích stále “0”, pak FDC nastaví vlajku SE a EC (Equipment Check) Stavového registru 0 na “1” a ukončí příkaz.

Možnost překrytí příkazu Rekalibrace pro několik FDD a ztráta signálu READY, tak jak je popsáno u příkazu SEEK, je také použitelné u příkazu Rekalibrace.

SENSE INTERUPT STATUS

Přerušení je generováno FDC pro tyto stavy:

  1. Po vstupu do výsledné fáze:
    1. příkaz Čtení dat
    2. příkaz Čtení Stopy
    3. příkaz Čtení ID
    4. příkaz Čtení Smazaných dat
    5. příkaz Zápis dat
    6. příkaz Formátování Cylindru
    7. příkaz Zápis Smazaných dat
    8. příkazy SCAN
  2. Změna stavu READY u FDD
  3. Konec příkazu SEEK nebo Rekalibrace
  4. Během výkonné fáze u režimu Non-DMA

SPECIFY

Příkaz SPECIFY nastavuje inicializační hodnoty pro každý ze tří interních časovačů. HUT (Head Unload Time) definuje čas od konce výkonné fáze jednoho příkazu Čtení/Zápisu po kterém je hlava deaktivována. Časovač je programovatelný od 16 do 240 ms s krokem 16 ms (01 = 16 ms, 02 = 32 ms, .., OF = 240 ms). SRT (Step Rate Time) definuje časový interval mezi dvěmi následujícími krokovými pulsy. Tento časovač je programovatelný od 1 do 16 ms s krokem 1 ms (F = 1 ms, E = 2 ms, atd.). HLT (Head Load Time) definuje čas mezi nastavením signálu HEAD LOAD a začátkem operace Čtení/Zápis. Časovač je programovatelný od 2 do 254 ms s krokem 2 ms (01 = 2 ms, 02 = 4 ms, …, FE = 254 ms).

Časové intervaly uvedené výše jsou přímé funkce hodin (CLOCK) (CLK na pinu 19). Časy indikované výše jsou pro 8 MHz hodiny, jsou-li hodiny redukovány na 4 MHz (mini-floppy aplikace), pak jsou veškeré časové intervaly násobeny dvěmi.

SENSE DRIVE STATUS

Tento příkaz je používán procesorem pro zjištění stavu dané FDD. Stavový registr 3 obsahuje informaci o stavu mechaniky.

INVALID

Jestliže je zaslán FDC neplatný příkaz (příkaz neuvedený výše), pak FDC ukončí příkaz. Není generováno žádné přerušení od 8272. Bity 6 a 7 (DIO a RQM) Hlavního Stavového registru jsou nastaveny na “1”, což indikuje procesoru, že 8272 je ve výsledné fázi a obsah Stavového registru 0 (ST0) musí být přečten. Při čtení ST0 procesorem je nalezeno 80H, což indikuje přijmutí neplatného příkazu.

Příkaz SENSE INTERUPT STATUS musí být poslán po přerušení SEEK nebo Rekalibrace, jinak FDC bude považovat další příkaz za neplatný.


Upozornění !!!!!!!!

Tato stránka je stále ve vývoji,
prosíme omluvte grafickou stránku a gramatickou správnost.