-
Die
vorliegende Erfindung bezieht sich auf einen seriellen Schnittstellenschaltkreis
gemäß dem Oberbegriff
des Patentanspruch 1.
-
In
jüngster
Zeit wurde die Datenspeicher- und lesetechnik schnell und stark
verbessert, um sehr schnelle Speichervorrichtungen hoher Kapazität zu erzeugen,
wie etwa Festplattenlaufwerke, wie weithin als Hilfsspeicher für Computersysteme
verwendet werden.
-
In
den magnetischen Plattenlaufwerken stellt der Schreib/Lesekanal
Datenimpulse aus von einem mit den Köpfen verbundenen Vorverstärker übertragenen
Lesesignalen fest und dekodiert sie, um sie an den DDC (Plattendatenkontroller,
disk data controller) anzulegen, und dekodiert umgekehrt Schreibdaten
von dem DDC, um sie an den Vorverstärker anzulegen. Wenn Daten
eingelesen werden, verstärkt der
Vorverstärker
mittels der Köpfe
von den Platten (dem Aufzeichnungsmedium) aufgenommene Signale,
um sie an den Schreib/Lese-Kanal-Schaltkreis anzulegen, und beim
Aufzeichnen von Daten wählt
er in Antwort auf die Anweisung des DDC einen Kopf aus, um die von
dem Schreib/Lese-Kanal-Schaltkreis erhaltenen, kodierten Schreibdaten
auf der entsprechenden Platte aufzuzeichnen.
-
Der
Schreib/Lese-Kanal-Schaltkreis steuert die internen Schaltkreise
unter der Steuerung einer zentralen Verarbeitungseinheit (CPU) durch
eine eingebaute, serielle Schnittstelle. Verschiedene Zustände der
internen Schaltkreisblöcke
des Schreib/Lese-Kanal-Schaltkreises
werden über
die serielle Schnittstelle zur CPU übertragen. Die obige, serielle Schnittstelle
ist nämlich
eine bidirektionale Schnittstelle, die eine Schnittstelle zwischen
dem Schreib/Lese-Kanal-Schaltkreis und der CPU bildet.
-
Zum
Beispiel umfaßt
der Schreib/Lese-Kanal-Schaltkreis einen Kodierer/Dekodierer (ENDEC, Encoder/DECoder),
der Aufzeichnungsdaten dekodiert und synchrone Lesedaten kodiert,
einen Impuls- und Servodetektor, der die Amplitude eines Signalimpulses
detektiert, um Positionsfehlersignale zu erzeugen, und die Spitzenwerte
der Amplituden der vorverstärkten
Signale detektiert, und einen Datenseparator, der Lesedaten, die
mit speziellen Taktraten synchronisiert sind, von Datenimpulsen
trennt, die von dem Impuls- und Servodetektor erzeugt wurden, und
umfaßt
außerdem
einen automatischen Verstärkungssteuerungsschaltkreis
(AGC, automatic gain control), ein programmierbares Filter, einen
Hysteresequalifizierer usw. Jeder der internen Schaltkreise besitzt
entsprechende Register zum Speichern von Informationen, die zur
Betriebssteuerung des entsprechenden Schaltkreises verwendet werden.
-
Die
eingebaute, serielle Schnittstelle in dem Schreib/Lese-Kanal-Schaltkreis
besitzt eine Anzahl von n seriellen Schnittstellenregistern (hiernach
als "Zustandssteuerungsregister" bezeichnet). Zum
Beispiel sind die n Zustandssteuerungsregister die entsprechenden
Register zum Einstellen des Zustands niedriger Spannung, des Datenmodus-Trennzustands,
des Servomodus-Trennzustands, des Filterboost-Zustands, des Datenschwellwerts,
des Servoschwellwerts, des Daten-Wiederspeicherzustands, des AGC-Pegels, usw. Jedes
dieser Register besitzt einen speziellen Steuerungswert zum Einstellen
der entsprechenden Funktionen.
-
Die
CPU legt die seriellen Schnittstellen-Steuerungsdaten, wie also
SDEN, SDATE und SLCK, an die obige, serielle Schnittstelle an, wobei SDEN
ein Datenübertragungs-Freigabesignal,
SDATA die seriellen Daten der CPU und SCLK ein serielles Taktsignal
sind. SDATA umfassen die Adresse zur Auswahl des speziellen Zustandssteuerungsregisters
der seriellen Schnittstelle und die Daten zum Lesen (oder Schreiben)
des Steuerungszustands des durch die obige Adresse ausgewählten Registers. Die
Adres se der seriellen Daten umfaßt die Schreib/Lese-Auswahlbits
zur Steuerung der Datenschreib- und/oder Datenleseauswahl.
-
Wenn
das serielle Schnittstellen-Steuerungssignal angelegt wird, greift
die CPU entsprechend der Adresse in den seriellen Daten SDATA auf das
Zustandssteuerungsregister zu und liest (oder schreibt) den Steuerungszustand
aus dem (bzw. in das) Register, auf das entsprechend den Daten in SDATA
zugegriffen wird. Die Schreib- oder Leseauswahl wird entsprechend
dem binärlogischen
Zustand des Schreib/Lese-Auswahlbits in der Adresse durchgeführt. Wenn
der Steuerungszustand Schreiben ist, lädt die serielle Schnittstelle
den obigen Steuerungszustand in den entsprechenden Schaltkreis des Schreib/Lese-Kanal-Schaltkreises.
Wenn der Steuerungszustand Lesen ist, lädt die serielle Schnittstelle den
augenblicklichen Steuerungszustand des Zustandssteuerungsregisters,
auf das zugegriffen wird, in die seriellen Daten SDATA, um sie zur
CPU zu übertragen.
-
Da
der Schreib/Lese-Kanal-Schaltkreis auf einem einzigen Chip angeordnet
ist, der von den Herstellern speziell entworfen ist, ist es klar,
daß die
Bitzahl der seriellen Schnittstellen zwischen dem Schreib/Lese-Kanal-Schaltkreis
und der CPU je nach Hersteller unterschiedlich ist. Die Bitzahl
der seriellen Schnittstelle beträgt
zum Beispiel 16 Bits, 18 Bits oder 8 Bits, was bedeutet, daß eine Vielzahl
von Schnittstellen verwendet wird. 4 zeigt
das serielle Schnittstellen-Steuerungssignal im Falle einer seriellen Schnittstelle
von 16 Bits.
-
Um
eine serielle Schnittstelle zwischen einem herkömmlichen Schreib/Lese-Kanal-Schaltkreis verschiedener
Standards und einer herkömmlichen CPU
zu bilden, müssen
die entsprechenden Steuerungsformen der CPU oder des DSP (digitalen
Signalprozessors) modifiziert werden, damit sie an die Bitzahl der
seriellen Schnittstelle des Schreib/Lese-Kanal-Schaltkreises angepaßt werden.
Um einen solchen Umstand zu vermeiden, ist es wünschenswert, einen seriellen
Schnittstellenschaltkreis zu schaffen, der sich an Schreib/Lese-Kanal-Schaltkreise
verschiedener Standards anpaßt.
-
Die
US 5557481 offenbart einen
Codierungsschaltkreis, welcher innerhalb eines Lese/Schreibkanals
eines Festplattenlaufwerks angeordnet ist. Der Codierungsschaltkreis
wandelt Daten, die in einem NRZ (non return to zero) Format von
einem Hausrechner geliefert werden, in Daten mit einem begrenzten
Lauflängenformat
(RLL) um, bevor diese auf einer Festplatte gespeichert werden. Darüber hinaus
ist ein Dekodierer offenbart, welcher Daten mit dem RLL-Format in
Daten mit dem NRZ-Format umwandelt. Die besondere Art und Weise,
wie die Umwandlung der Daten erfindungsgemäß erfolgt, macht den Codierungsschaltkreis
weniger anfällig
gegenüber
Taktverschiebungen, welche bei konventioneller Technologie einen
asynchronen Betrieb des Codierungsschaltkreises bewirken können.
-
Der
Artikel "DSPs zur
Steuerung eingesetzt" von
ADCOCK, TIM in der Zeitschrift "Elektronik" 26/1995, L. 98–101 offenbart
verschiedene Beispiele für
sinnvolle Anwendungen von Signalprozessoren innerhalb eines Festplattenlaufwerkes.
Signalprozessoren werden beispielsweise für die Berechnung von Servoalgorithmen
eingesetzt, um eine exakte Positionierung des Magnetkopfes bei der
Durchführung von
Schreib- oder Lesevorgängen
zu verbessern. Die Verwendung von Signalprozessoren ist insbesondere
dann vorteilhaft, wenn sie zur Berechnung von Steueralgorithmen
auf Basis von Zustandsschätzungen
verwendet werden. Darüber
hinaus wird vorgeschlagen, den traditionell in einem Festplattenlaufwerk
verwendeten Microcontroller durch einen Signalprozessor zu ersetzen.
-
US 5,465,343 offenbart einen
elektronischen integrierten Ansteuerungsschaltkreis, der zwischen einen
Mikrocontroller, einen Cachepufferspeicher und einen Lese/Schreibkanal
geschaltet ist. Dieser integrierte Schaltkreis weist eine Mikrocontrollerschnittstelle
und eine Puffersteuerung zum Steuern des Cachepufferspeichers auf.
Diese Schaltungskomponenten gestatten dem Mikrocontroller einen direkten
Zugriff auf den Cachepufterspeicher, in welchen z. B. Steuerprogramme
von einer Diskette übertragen
worden sind. Der elektronische integrierte Ansteuerungsschaltkreis
ist über
einen internen Sortierer an den Lese/Schreibkanal angeschlossen,
welcher digitale Datenblöcke,
die als codierter serieller Datenstrom von oder zu definierten Speicherplätzen auf
einer Diskette übertragen
werden, sortiert.
-
Aus
der
US 4,071,887 ist
eine Datenübertragungseinrichtung
für die
synchrone Datenübertragung
zwischen einer Schnittstelle zu einem Datenprozessor und einem Übertragungsweg
bekannt, die für
eine Realisierung als integrierte Schaltung geeignet ist. Diese Übertragungseinrichtung
dient auch als Schnittstelle zwischen seriellen peripheren Speichereinheiten,
wie beispielsweise Plattenlaufwerken, und dem ein bidirektionales
Datenbussystem verwendenden Mikroprozessor. Gemäß diesem Dokument werden in
einem FIFO-Speicher (First-in-first-out-Speicher) des Übertragungsbereiches
parallele Daten umformatiert und in serieller Form übertragen.
In einem Empfängerbereich
ist ebenfalls ein FIFO-Speicher vorgesehen, der die seriellen Daten
empfängt und
diese Daten in paralleler Form ausgibt. Zusätzliche Steuerlogik fügt Synchronisationscodes
ein oder entfernt diese und führt
außerdem
unter Programmsteuerung eine Fehlerüberprüfung durch.
-
Die
US 5,023,829 offenbart ein
Datenübertragungssystem,
bei dem Daten mit variabler Länge von
einer Kanaleinheit an ein peripheres Speichermedium übertragen
werden, wobei ein Kanaladapter und eine Speichermediumsteuerungseinheit
zwischen der Kanaleinheit und dem patenspeichermedium angeordnet
sind. Die Kanaleinheit überträgt an die
Speichermediumsteuereinheit ein Datensignal und ein Befehlssignal,
das die Anweisung enthält, welche
das Speichern der Daten bezeichnet und Information enthält, welche
die Länge
der Daten näher bezeichnet.
Auf der Basis dieses Befehlssignals sendet die Speichermediumsteuereinheit
die Information über
die Länge
der Daten an eine Zähleinheit
des Kanaladapters. Auf diese Weise wird die Anpassung auf die spezifische
Datenlänge
des jeweiligen Plattenlaufwerks vorgenommen.
-
Es
ist die Aufgabe der Erfindung, einen seriellen Schnittstellenschaltkreis
bereitzustellen, welcher die Verwendung von Lese/Schreibkanalschaltkreisen
verschiedener Standards in einem Festplattenlaufwerk ermöglicht.
-
Diese
Aufgabe wird durch den in dem Patentanspruch 1 beanspruchten Gegenstand
gelöst.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand
der Unteransprüche.
-
Der
serielle Schnittstellenschaltkreis 2 weist eine Bitsteuerungsdaten-Ladeeinheit 10 auf,
welche von einer vorgeschalteten Steuereinheit 4 Daten empfangt,
welche den Standard eines nachgeschalteten Lese/Schreibkanalschaltkreises
definieren. Weiterhin empfängt
sie von der Steuereinheit 4 Bitsteuerdaten, welche das
Format eines Datensignals CRD in Übereinstimmung mit dem Standard
des verwendeten Lese/Schreibkanal-schaltkreises 6 definieren.
Die Ladeeinheit wertet die empfangenen Daten aus und gibt entsprechende
Signale an einen seriellen Schnittstellensteuerungsschaltkreis 20 aus,
welcher aufgrund der empfangenen Signale das Datensignal CRD mit
dem richtigen Datenformat erzeugt und dieses an den nachgeschalteten
Lese/Schreibkanalschaltkreis 6 ausgibt.
-
Die
vorliegende Erfindung wird im folgenden genauer unter Bezugnahme
auf die als Beispiel beigefügten
Zeichnungen beschrieben.
-
1 ist
ein Blockdiagramm, das einen seriellen Schnittstellenschaltkreis
nach einem Ausführungsbeispiel
der vorliegenden Erfindung zeigt.
-
2 ist
ein detailliertes Schaltkreisdiagramm, das den in 1 gezeigten,
seriellen Schnittstellensteuerungsschaltkreis zeigt.
-
Die 3a und 3b sind
Zeitablaufdiagramme entsprechend dem Ausführungsbeispiel der vorliegenden
Erfindung.
-
4 ist
ein Übertragungsformatdiagramm einer
herkömmlichen,
seriellen Schnittstelle.
-
5 ist
ein Blockdiagramm eines herkömmlichen
Festplattenlaufwerks.
-
Für ein besseres
Verständnis
des seriellen Schnittstellenschaltkreises nach einem Ausführungsbeispiel
der vorliegenden Erfindung, wird zunächst der Aufbau des herkömmlichen
Festplattenlaufwerks unter Bezugnahme auf 5 beschrieben.
-
Wie
in 5 gezeigt, werden die Platten 110 von
einem Spindelmotor 134 rotiert. Die Köpfe sind jeweils auf entsprechenden
Trägerarmen
montiert, die sich von einer E-förmigen
Anordnung 114 aus erstrecken, die mit einem rotierenden
Schwingspulenstellglied 130 verbunden ist, und jeder Kopf
ist über einer
entsprechenden Plattenoberfläche
der Platten 110 angeordnet. Beim Lesen verstärkt der
Vorverstärker 116 die
von einem der Köpfe 112 aufgenommenen
Signale, um das analoge Lesesignal an den Schreib/Lese-Kanal-Schaltkreis
anzulegen, und beim Schreiben schreibt der Vorverstärker 116 die kodierten,
von dem Schreib/Lese-Kanal-Schaltkreis erhaltenen Schreibdaten über den
entsprechenden Kopf 112 auf die Platte 110. Der
Schreib/Lese-Kanal-Schaltkreis
detektiert und dekodiert die Datenimpulse aus den von dem Vorverstärker 116 angelegten Lesesignalen,
um sie zum Plattendatenkontroller (DDC) 120 zu übertragen,
und dekodiert umgekehrt die von dem DDC 120 erhaltenen
Schreibdaten, um sie an den Vorverstärker 116 anzulegen.
-
Der
DDC 120 schreibt von dem Hauptcomputer erhaltene Daten über den
Schreib/Lese-Kanal-Schaltkreis und den Vorverstärker 116 auf die Platten
und liest umgekehrt Daten von den Platten, um sie zum Hauptcomputer
zu übertragen.
Weiterhin stellt der DDC 120 eine bidirektionale Kommunikationsschnittstelle
zwischen dem Hauptcomputer und einem Mikrokontroller 124 dar.
Ein Puffer-RAM 122 speichert zeitweilig zwischen dem Hauptcomputer und
sowohl dem Mikrokontroller 124 als auch dem Schreib/Lese-Kanal-Schaltkreis 118 übertragene
Daten. Der Mikrokontroller 124 steuert die Spursuch- und
verfolgungsvorgänge
in Abhängigkeit
von den Schreib- oder Leseanweisungen, die von dem Hauptcomputer
empfangen werden. Ein Speicher 126 speichert Ausführungsprogramme
und verschiedene Einstellungswerte des Mikrokontrollers 124.
-
Ein
Servoantrieb 128 erzeugt einen Treiberstrom zum Antrieb
des Stellglieds 130 in Abhängigkeit von dem Positionssteuerungssignal
der Köpfe 112,
das von dem Mikrokontroller 124 angelegt wird, um diesen
Strom an die Schwingspule des Stellglieds 130 anzulegen.
Das Stellglied 130 bewegt die Köpfe 112 in Abhängigkeit
von der Richtung und dem Betrag des an den Servoantrieb 128 angelegten
Treiberstroms über
die Platten. Ein Spindelmotorantrieb 132 treibt den Spindelmotor 134 zum
Rotieren der Platten 110 an.
-
Wie
in 1 gezeigt, ist der serielle Schnittstellenschaltkreis 2 nach
einem Ausführungsbeispiel der
vorliegenden Erfindung zwischen einer CPU 4 und einem Schreib/Lese-Kanal-Schaltkreis 6 angeordnet,
während
die entsprechende Schnittstelle in 5 zwischen
dem Mikrokontroller 124 und dem Schreib/Lese-Kanal-Schaltkreis
118 angeordnet ist, wobei der Mikrokontroller 124 in 5 der
CPU 4 in 1 entspricht.
-
Wie
in 1 gezeigt, unterstützt der serielle Schnittstellenschaltkreis 2 adaptiv
die serielle Schnittstelle zwischen der CPU 4 und Schreib/Lese-Kanal-Schaltkreisen 6 verschiedener
Standards. Der obige Schreib/Lese-Kanal-Schaltkreis 6 besitzt einen
seriellen Anschluß,
um eine serielle Schnittstelle mit einer vorgegebenen Anzahl von
Bits zu bilden. Der obige, serielle Anschluß 8 besitzt ein Zustandssteuerungsregister 9,
das aus n Registern besteht.
-
Der
serielle Schnittstellenschaltkreis 2 besteht hauptsächlich aus
einer Signalerzeugungs-Steuerungsregistereinheit 10 (hiernach
als "Bitsteuerungsdaten-Ladeeinheit" bezeichnet), die über einen
Bus und einen seriellen Schnittstellensteuerungsschaltkreis 20 mit
der CPU 4 verbunden ist, um die adaptive, serielle Schnittstellensteuerung von
Schreib/Lese-Kanal-Schaltkreisen 6 verschiedener Standards
durchzuführen,
indem das Schnittstellenbit umgewandelt wird, die Polarität gesteuert
wird und die Schnittstellenbitumwandlung entsprechend den verschiedenen,
durch die Bitsteuerungsdaten-Ladeeinheit 10 geladenen Signale
gesteuert wird.
-
Die
obige Bitsteuerungsdaten-Ladeeinheit 10 besteht aus einem
seriellen Taktzahlsteuerungsregister 12, einem seriellen
Datensteuerungsregister 14, einem Polaritätssteuerungsregister 16 und
einem höchstwertigen
Register 18. Das serielle Taktzahlsteuerungsregister 12 speichert
die serielle Taktzahlinformation SRCNT (4:0) unter der Steuerung
der CPU 4, um sie in den seriellen Schnittstellensteuerungsschaltkreis 20 zu
laden. Das serielle Datensteuerungsregister 14 speichert
das serielle Datensteuerungssignal SRD (31:0) unter der Steuerung
der CPU 4, um sie in den seriellen Schnittstellensteuerungsschaltkreis 20 zu
laden. Das Polaritätssteuerungsregister 16 erzeugt
eine Reihe von Polaritäts-
und Flankensteuerungssignalen, wie etwa CRKPOS, CRENEG und CRCNEG,
um die Polarität
und die Flanken von CRC (Steuerungsregistertaktsignal), CRE (Steuerungsregisterfreigabesignal)
und CRD (Steuerungsregisterdatensignal), die an einer Mehrzahl von
Statussteuerungsregistern 9 innerhalb des Schreib/Lese-Kanal-Schaltkreises 6 anliegen,
unter der Steuerung der CPU 4 zu steuern. Das obige Signal
CRKPOS von den Polaritätssteuerungssignalen
stellt ein Signal zur Auswahl der datenbezogenen, fallenden oder
ansteigenden Flanke des Steuerungsregistertaktsignals CRC dar; das
obige Signal CRENEG stellt ein Signal zur Steuerung der Polarität des Steuerungsregisterfreigabesignals
CRE dar; und das obige Signal CRCNEG stellt ein Signal zum Steuern
der Polarität
des Steuerungsregistertaktsignals CRC dar. Das höchstwertige Register 18 wird
unter der Steuerung der CPU 4 ausgewählt, um beim Schreiben ein höchstwertiges
Registerschreibsignal MWR12 zu erzeugen.
-
Wie
in 2 gezeigt, besteht der in 1 gezeigte,
serielle Schnittstellensteuerungsschaltkreis 20 hauptsächlich aus
einer Datenbitwandlereinheit 30, einer Signalpolaritäts- und
flankensteuerungseinheit 60 und einer Bitwandlersteuerungseinheit 70.
-
Die
Signalpolarität-
und flankensteuerungseinheit 60 steuert die Polaritäten und
Flanken von CRC und CRE, die an dem Schreib/Lese-Kanal-Schaltkreis 6 anliegen,
indem sie die Polaritäts- und
Flankensteuerungssignale CRKPOS, CRENEG und CRCNEG verwendet. Die
Bitwandlersteuerungseinheit 70 berechnet die obigen, seriellen
Datenbits und steuert die Bitumwandlung der Quelldaten. Die Datenbitwandlereinheit 30 führt die
Bitumwandlung und die serielle Umwandlung des obigen, seriellen Datensteuerungssignals
SRD (31:0) entsprechend dem vorgeschriebenen Latch und der Bitumwandlungssteuerung
der Schreibsignale durch, um die Steuerungsregisterdaten CRD als
serielle Daten auszugeben.
-
Unter
Bezugnahme auf die 1, 2, 3a und 3b wird
die Arbeitsweise des bevorzugten Ausführungsbeispiels der vorliegenden
Erfindung im Detail erklärt.
-
Entsprechend
dem Ausführungsbeispiel
der vorliegenden Erfindung, können
die CPU 4 und der Schreib/Lese-Kanal-Schaltkreis 6 seriell
mit bis zu 32 Bits miteinander verbunden werden. Die folgende Beschreibung
der Arbeitsweise basiert auf der Annahme, daß die Bitszahl für die serielle
Schnittstelle des Schreib/Lese-Kanal-Schaltkreises 6 auf
9 Bits eingestellt ist. Unter dieser Annahme ist die Registeranzahl
des Zustandssteuerungsregisters 9 in dem obigen Schreib/Lese-Kanal-Schaltkreis 6 gleich
8 (=23).
-
Die
CPU 4 lädt "8" als die serielle Taktzahlinformation
SRCNT (4:0) in das serielle Taktzahlregister 12, in dem
SRCNT (4:0) "8" der Bitanzahl "9" für die
serielle Schnittstelle äquivalent
ist, da der Anfangswert von SRCNT (4:0) mit "0" beginnt.
Die CPU 4 lädt
zum Beispiel "00
00 00 7F (H)" der
Reihe nach von dem LSB (dem niederwertigsten Bit) bis zum MSB (dem
höchstwertigsen
Bit) als serielles Datensteuerungssignal SRD (31:0) mit 32 Bits
in das serielle Datensteuerungsregister 14, und weiterhin lädt die CPU 4 verschiedene
Polaritätssteuerungsinformationen
(CRKPOS = "1", CRENEG = "0", CRCNEG = "0")
in das Polaritätssteuerungsregister 16,
um die Polaritäten
von CRC, CRE und CRD, die an der Mehrzahl der Zustandssteuerungsregister 9 innerhalb
des Schreib/Lese-Kanal-Schaltkreises 6 anliegen, zu steuern.
-
Von
den Polaritätssteuerungssignalen
ist CRKPOS ein Signal zur Auswahl der datenbezogenen, ansteigenden
oder abfallenden Flanke von CRC; CRENEG ist ein Signal zum Steuern
der Polarität
von CRE; und CRCNEG ist ein Signal zum Steuern der Polarität von CRC.
Die CPU 4 wählt
unter einer Mehrzahl von Registern das höchstwertige Register 18 aus,
wodurch beim Schreiben von dem höchstwertigen
Register 18 das höchstwertige
Registerschreibsignal MWR12 erzeugt wird, so daß es an den seriellen Schnittstellensteuerungsschaltkreis 20 angelegt
wird.
-
Das
Zustandssteuerungsregister 9 lädt Adressen und Daten, wie
es unten in 3a gezeigt ist, wo das serielle
Datensteuerungssignal CRD dargestellt ist. Um die Softwaremenge
beim Laden der obigen Adressen und Daten zu verringern, werden entsprechend
diesem Ausführungsbeispiel
der vorliegenden Erfindung die Adressen auf das höchstwertige
Register eingestellt, und die Daten werden auf das niederwertigste
Register eingestellt. Danach werden, wenn die Daten zunächst in
das niederwertigste Register geladen wurden und dann die Adressen
auf das höchstwertige
Register eingestellt wurden, alle Adressen und Daten automatisch
geschrieben. Daher wird beim Schreiben das höchstwertige Registerschreibsignal
MWR12 von dem höchstwertigen
Register 18 erzeugt. Die Symbolzahl "12" in MWR12
stellt die 12. Adresse dar, die als die Adresse des höchstwertigen
Registers in ASIC bezeichnet wird, das in dem Ausführungsbeispiel
der vorliegenden Erfindung verwendet wird, bei dem das höchstwertige
Registerschreibsignal MWR12 erzeugt wird, wenn die CPU 4 das
höchstwertige
Register 18 bezeichnet.
-
Beim
Schreiben lassen sich die Signale und Daten, die von der Bitsteuerungsdaten-Ladeeinheit 10 an
den seriellen Schnittstellensteuerungsschaltkreis 20 angelegt
werden, wie in 1 gezeigt, zusammenfassen: serielle
Taktzahlinformation SRCNT (4:0) = "8",
serielle Datensteuerungssignale SRD (31:0) = "00 00 00 7F (H)", CRKPOS = "1",
CRENEG = "0", CRCNEG = "0".
-
Außer den
obigen Signalen und Daten sind die an den seriellen Schnittstellensteuerungsschaltkreis 20 angelegten
Signale CK4MHZ mit 4 MHz und das Spannungsresetsignal POR, das beim
Zurücksetzen
der Spannung angelegt wird, wie in 1 gezeigt.
Wie in 2 gezeigt, wird das obige Taktsignal CK4MHZ, das
an den seriellen Schnittstellensteuerungsschaltkreis 20 angelegt
wird, durch einen Inverter 54 zu einem ersten Taktsignal
CK4M invertiert und durch die Inverter 54 und 56 zu
einem zweiten Taktsignal CK4MB invertiert. Die ersten und zweiten
Taktsignale CK4M und CK4MB sind in 3a gezeigt.
-
Das
höchstwertige
Registerschreibsignal MWR12, das an dem seriellen Schnittstellensteuerungsschaltkreis 20 anliegt,
ist in 3a gezeigt. Das obige, höchstwertige
Registerschreibsignal MWR12 wird von einem Inverter 32 der
Schnittstellen-Bitwandlereinheit 30 innerhalb des seriellen
Schnittstellensteuerungsschaltkreises 20 invertiert. Das
invertierte, höchstwertige
Registerschreibsignal MWR12B wird, wie in 3a gezeigt,
als Taktsignal an den Taktanschluß CK eines D-Flip-Flops 36 angelegt. Eine
Spannung VDD wird kontinuierlich an den
D-Eingang des Flip-Flops angelegt. Folglich gibt das D-Flip-Flop 36 ein
Startfreigabesignal STEN aus, das einen logisch "hohen" Wert in Abhängigkeit von der ansteigenden
Flanke des invertierten, höchstwertigen
Registerschreibsignals MWR12B an dem Ausgangsanschluß Q ausgibt.
Wenn das Spannungs-Resetsignal POR durch ein logisch "niedriges" Signal aktiviert
wird oder ein Löschsignal
B über
den Resetanschluß R über ein UND-Gatter 34 angelegt wird,
geht das Startfreigabesignal STEN von dem logisch "hohen" Zustand in den logisch "niedrigen" Zustand über. Das
obige Startfreigabesignal STEN ist in 3a gezeigt.
-
Ein
D-Flip-Flop 38 hält
das obige Startfreigabesignal STEN in Abhängigkeit von dem ersten Taktsignal
CK4M fest, um ein einmal festgehaltenes, erstes Festhaltesignal
A über
den Ausgangsanschluß Q auszugeben.
Im nächsten
Schritt hält
ein D-Flip-Flop 40 das
obige, erste Festhaltesignal A in Abhängigkeit von dem zweiten Taktsignal
CK4MB fest, um ein zweifach festgehaltenes, zweites Festhaltesignal
B über
den Ausgangsanschluß Q
auszugeben. In einem weiteren Schritt hält ein D-Flip-Flop 42 das obige,
zweifache Festhaltesignal B in Abhängigkeit von dem ersten Taktsignal
CK4M fest, um ein dreifach festgehaltenes, drittes Festhaltesignal über den
invertierten Ausgangsanschluß Q auszugeben. Das erste Festhaltesignal
A von dem Ausgangsanschluß Q
des Flip-Flops 38 und das zweite Taktsignal CK4MB werden
in einem UND-Gatter 44 logisch miteinander verbunden, um
ein Freigabetaktsignal ENCK zu erzeugen, das an den Takteingang
CK eines Parallel/Seriell-Wandlers 52 angelegt wird. Das obige,
erste Festhaltesignal A und das dritte Festhaltesignal C von dem
invertierten Ausgangsanschluß Q des
Flip-Flops 42 werden in einem NAND-Gatter 46 logisch
miteinander verbunden, um ein Freigabe-Ladesignal ENLDB zu erzeugen,
das an den Ladeanschluß LD des Parallel/Seriell-Wandlers 52 angelegt wird. 3a zeigt
die Wellenformen der obigen ersten, zweiten und dritten Festhaltesignale
A, B und C, des Freigabetaktsignals ENCK und des Freigabe-Ladesignals
ENLDB.
-
Außerdem wird
das zweite Festhaltesignal B von dem D-Flip-Flop 40 logisch
in einem UND-Gatter 62 der Signalpolaritäts- und
Flankensteuerungseinheit 60 mit dem ersten Taktsignal CK4M
verbunden, um ein Taktsignal XCK zu erzeugen, das an den Eingangsanschluß B eines
Multiplexers 64 angelegt wird. Das erste Taktsignal CK4M,
das zweite Festhaltesignal B und das Taktsignal XCK sind in 3b gezeigt.
Das Freigabetaktsignal ENCK, das an dem Taktanschluß CK des
Parallel/Seriell-Wandlers 30 anliegt, wird an den Eingangsanschluß A des
Multiplexers 64 angelegt. Dann wählt der Multiplexer 64 das
Taktsignal XCK in Abhängigkeit
von dem Signal CRKPOS = "1" zur Auswahl der
datenbezogenen, ansteigenden oder abfallenden Flanke des Steuerungsregistertaktsignals
CRC, das an dem Schreib/Lese-Kanal-Schaltkreis 6 anliegt,
von dem Auswahlanschluß B
aus. Das Ausgangssignal CRCST des Multiplexers 64 wird
als Steuerungsregister-Taktstartsignal an den Taktanschluß CK der Bitwandlereinheit 70 angelegt.
Weiterhin wird das Ausgangssignal CRCST in einem exklusiven ODER-Gatter 66 mit
dem Signal CRCNEG = "0" zum Steuern der
Polarität
des Steuerungsregistertaktsignals CRC verbunden, um ein Steuerungsregistertaktsignal
CRC auszugeben, das an den Schreib/Lese-Kanal-Schaltkreis 6 angelegt
wird. Die Wellenform des Steuerungsregistertaktsignals CRC ist in 3b gezeigt,
die außerdem
neun ansteigende Flanken zeigt.
-
Das
zweite Festhaltesignal B von dem D-Flip-Flop 40 wird logisch
in einem exklusiven ODER-Gatter 68 mit dem Signal CRENEG
= "0" zum Steuern der
Polarität
des Steuerungsregisterfreigabesignals CRE verbunden, um ein Steuerungsregisterfreigabesignal
CRE mit der in 3b gezeigten Wellenform an den
Schreib/Lese-Kanal-Schaltkreis 6 auszugeben.
-
Wie
in 2 gezeigt, zählt
ein Zähler 72 der Bitwandlersteuerungseinheit 70 die
Takte des Steuerungsregister-Taktstartsignals CRCST von dem Multiplexer 64 der
Signal- und Flankensteuerungseinheit 60 und legt den Zählwert SC
(4:0) an den Eingangsanschluß Y
(4:0) eines Komparators 74 an. Wenn der Zählwert SC
(4:0) gleich der seriellen Taktzahlinformation SRCNT (4:0) = "8" ist, die von dem seriellen Taktzahlsteuerungsregister 12 übertragen
und an den Eingangsanschluß X
(4:0) angelegt wird, gibt der Komparator über den Ausgangsanschluß X ein
Signal EQ aus, wie in 3a gezeigt. Ein D-Flip-Flop 78 hält das obige
Signal EQ in Abhängigkeit
von dem Steuerungsregister-Taktstartsignal CRCST, das von einem
Inverter 76 invertiert wird, fest und gibt ein erstes Löschsignal
CLRB aus, wie in 3a gezeigt. Das obige, erste
Löschsignal
CLRB wird über
einen Inverter 34 an den Resetanschluß R des D-Flip-Flops 36 der
seriellen Bitwandlereinheit 30 angelegt. Zu diesem Zeitpunkt
geht das Startfreigabesignal STEN in den logisch "niedrigen" Zustand über. Das
Zeitablaufdiagramm der 3a zeigt, daß das obige Startfreigabesignal
STEN bei der abfallenden Flanke des ersten Löschsignals CLRB beginnt in
den logisch "niedrigen " Zustand überzugehen.
-
Das
obige, erste Löschsignal
CLRB wird außerdem
an ein D-Flip-Flop 80 angelegt. Das D-Flip-Flop 80 hält das erste
Löschsignal
CLRB in Abhängigkeit
von dem ersten Taktsignal CK4M fest und gibt ein Signal DCLRB aus,
das an ein D-Flip-Flop 82 angelegt wird. Das D-Flip-Flop 82 hält das obige
Signal DCLRB in Abhängigkeit
von dem zweiten Taktsignal CK4MB fest und gibt ein zweites Löschsignal
CLRX über
den inversen Ausgangsanschluß Q aus. Das zweite Löschsignal
CLRX wird an den Löschanschluß CLR des Zählers 72 und über einen
Inverter 84 und ein UND-Gatter 86 an den Resetanschluß R des
D-Flip-Flops 78 angelegt und auch über den Inverter 48 und
das UND-Gatter 50 in der seriellen Bitwandlereinheit 30 an
den Löschanschluß CLR des Parallel/Seriell-Wandlers 52 angelegt.
Das zweite Löschsignal
CLRX bewirkt, daß der
Zähler 72 nicht
weiter das Zählersignal
SC (4:0) ausgibt. (Das zweite Löschsignal
CLRX löscht
nämlich
außerdem das
in den Zähler 72 eingegebene
Steuerungsregister-Startsignal CRCST). Das zweite Löschsignal CLRX
bewirkt außerdem,
daß der
Parallel/Seriell-Wandler 52 auch nicht weiter die Steuerungsregisterdaten
CRD ausgibt. Das Zeitablaufdiagramm der 3a zeigt,
daß das
zweite Löschsignal
CLRX das Steuerungsregister-Taktstartsignal CRCST löscht, das
während
der ansteigenden Flanke des obigen CLRX-Signals in den Zähler eingegeben
wird, so daß der
Parallel/Seriell-Wandler 52 eine weitere Ausgabe der Steuerungsregisterdaten
CRD unterbricht.
-
Wie
in der seriellen Bitwandlereinheit 30 in 2 gezeigt,
wird das serielle Datensteuerungssignal SRD (31:0) an den Eingangsanschluß D (31:0) des
Parallel/Seriell-Wandlers 52 angelegt. Das obige, serielle
Datensteuerungssignal SRD (31:0) stellt "00 00 00 7F" dar. Folglich lädt der Parallel/Seriell-Wandler 52 das
serielle Datensteuerungssignal SRD (31:0) während der ansteigenden Flanke
des Freigabe-Ladesignals ENLDB, das, wie in 3a gezeigt,
von einem NAND-Gatter 46 ausgegeben wird, und wandelt die
parallele Eingabe, also SRD (31:0), in Abhängigkeit von dem Freigabetaktsignal ENCK
von dem UND-Gatter 44 in eine serielle Ausgabe um. Wenn
dann das zweite Löschsignal
CLRX oder das Spannungs-Resetsignal POR an den Lösch anschluß CLR angelegt
wird, wird der Parallel/Seriell-Wandler 52 zurückgesetzt.
Als Ergebnis stellen die von dem Parallel/Seriell-Wandler 52 ausgegebenen
Steuerungsregisterdaten CRD "07F(H)" dar, wie in 3a gezeigt.
Die CRD sind serielle Daten von 9 Bit, von denen das obere Bit WE ein Schreibfreigabesignal
ist, das logisch "niedrig" ist, und die folgenden
drei Bits A2–A1
die Adresse der acht Statussteuerungsregister 9 angeben.
Die letzten fünf
Bits D4–D0
stellen einen an der obigen Adresse gespeicherten Datenwert dar.
-
Das
in 2 gezeigte Spannungs-Resetsignal POR ist ein Signal,
daß beim
Zurücksetzen
der Spannung logisch "niedrig" ist und an die Resetanschlüsse R der D-Flip-Flops 36, 38, 40, 42 der
Datenbitwandlereinheit 30, den Löschanschluß CLR des Parallel/Seriell-Wandlers 52,
den Zähler 72 und
die D-Flip-Flops 74, 78, 80, 82 angelegt
wird, um die jeweiligen Element zurückzusetzen (zu löschen).
-
Wie
in den 2 und 5 gezeigt, gibt der serielle
Schnittstellensteuerungsschaltkreis 20 das Steuerungsregisterstaktsignal
CRC, das Steuerungsregisterfreigabesignal CRE und die Steuerungsregisterdaten
CRD aus, die an den Schreib/Lese-Kanal-Schaltkreis 6 angelegt werden.
Das in 3a gezeigte Zeitablaufdiagramm,
daß das
Steuerungsregisterstaktsignal CRC, das Steuerungsregisterfreigabesignal
CRE und die Steuerungsregisterdaten CRD zeigt, zeigt, daß sowohl
das Taktfreigabesignal als auch die Daten ein Signal sind, das so eingestellt
ist, daß eine
serielle Schnittstelle von 9 Bit entsteht.
-
Auch
wenn die vorliegende Erfindung unter Bezugnahme auf ein spezielles
ausführungsbeispiel mit
einer seriellen Schnittstelle von 9 Bit zwischen der CPU und dem
Schreib/Lese-Kanal-Schaltkreis beschrieben worden ist, ist für den Fachmann
klar, daß eine
serielle Schnittstelle mit einer beliebigen Anzahl bis zu 32 Bit
(= 25) möglich
ist. Daher ermöglicht
eine beliebige Bitzahl mit 2n Bits eine serielle Schnittstellensteuerung
zwischen der CPU und dem Schreib/Lese-Kanal-Schaltkreis.