DE69615597T2 - Zugriffsvorrichtung für gemeinsamen Speicher - Google Patents
Zugriffsvorrichtung für gemeinsamen SpeicherInfo
- Publication number
- DE69615597T2 DE69615597T2 DE69615597T DE69615597T DE69615597T2 DE 69615597 T2 DE69615597 T2 DE 69615597T2 DE 69615597 T DE69615597 T DE 69615597T DE 69615597 T DE69615597 T DE 69615597T DE 69615597 T2 DE69615597 T2 DE 69615597T2
- Authority
- DE
- Germany
- Prior art keywords
- address
- bus
- data
- buffer
- ram
- 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.)
- Expired - Fee Related
Links
- 230000015654 memory Effects 0.000 title description 25
- 239000000872 buffer Substances 0.000 claims description 88
- 238000000034 method Methods 0.000 claims description 36
- 238000012545 processing Methods 0.000 claims description 35
- 230000004044 response Effects 0.000 claims description 18
- 230000003213 activating effect Effects 0.000 claims description 8
- 230000003139 buffering effect Effects 0.000 claims description 8
- 230000002093 peripheral effect Effects 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 4
- 238000011094 buffer selection Methods 0.000 claims 6
- 238000012546 transfer Methods 0.000 description 29
- 230000005540 biological transmission Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000009977 dual effect Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Image Input (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
- Computer And Data Communications (AREA)
Description
- Die vorliegende Erfindung betrifft eine Zugriffsanordnung zu einem gemeinsamen RAM (Random Access Memory; Schreib-Lese- Speicher), wobei das gemeinsame RAM mit einem von einem Mikroprozessor gesteuerten Bus geringer Übertragungsgeschwindigkeit mit einem von einem, anderen mikroprozessorgesteuerten Bus höherer Übertragungsgeschwindigkeit verbunden ist.
- Ein gemeinsames RAM ist eine übliche Zugriffsanordnung, wenn zwei (oder mehrere) Mikroprozessoren miteinander kommunizieren sollen. Beispielsweise ist es heute üblich, daß ein Mikroprozessor eine Nachricht oder Daten in einem gemeinsamen RAM abspeichert, auf dessen Inhalt ein anderer Mikroprozessor zur Weiterverarbeitung zugreift.
- Die Mikroprozessoren und die mit ihnen verbundenen Bus- Systeme unterscheiden sich in Übertragungsgeschwindigkeit und Bitbreite. Diese Unterschiede führten zu Problemen, wenn beispielsweise zwei Systeme auf ein gemeinsames RAM zugreifen wollten, wobei bei einem System der Mikroprozessor und der zugehörige Adreßbus relativ langsam sind, und bei dem anderen System der Mikroprozessor und der zugehörige Adreßbus relativ schnell sind. Weiterhin treten Schwierigkeiten auf, wenn sich die Bitbreiten der einzelnen Adreß- und Datenbus-Systeme unterschiedlich sind.
- Für das Problem der unterschiedlichen Übertragungsgeschwindigkeiten auf dem Bus zweier Systeme wurden schon Lösungen vorgeschlagen, die sich von der hier vorliegenden Erfindung unterscheiden.
- Die Patentschrift EP-A-0580961 beschreibt eine verbesserte, prozessorgepufferte Schnittstelle, die in einem Multiprozessor- System, das auf ein gemeinsames RAM zugreift, Verwendung findet. Die Mikroprozessoren können auf das gemeinsame RAM über einen globalen Bus und einen langsameren lokalen Bus, der mit dem gemeinsamen RAM verbunden ist, zugreifen. Damit die Mikroprozessoren über das gemeinsame RAM kommunizieren können, werden zu der Steuerschaltung für den Zugriff auf das gemeinsame RAM noch Adreß- und Datenpuffer zwischengeschaltet.
- Nach einem Aspekt sieht die Erfindung eine Zugriffsvorrichtung für einen gemeinsamen RAM über einen Adressenbus und über einen Datenbus vor, die beide eine Schnittstelle zu einem langsameren Adressen-/Datenbus haben, mit dem der gemeinsame RAM verbunden ist, mit: einem mit dem Adressenbus und dem Adressen-/Datenbus verbundenen Adressenpuffer zum Puffern von Adresseninformationen zwischen dem Adressenbus und dem Adressen-/Datenbus; einem zwischen den Datenbus und den Adressen-/Datenbus geschalteten Datenpuffer zum Puffern von Dateninformationen zwischen dem Datenbus und dem Adressen-/Datenbus; einem mit dem Adressenbus und mit dem Datenbus verbundenen Mikroprozessor, der betriebsbereit ist zur Ausgabe von Adresseninformationen auf den Adressenbus, um auf den gemeinsamen RAM zuzugreifen, wobei die Adresseninformation den Adressen des gemeinsamen RAM entspricht; einem Gate-Array, das mit dem Adressen-/Datenbus verbunden ist, um den Zugriff auf den gemeinsamen RAM zu steuern; und mit einer Logikschaltung, die mit dem Adressenbus verbunden ist, um die Adresseninformation zu empfangen, die der Mikroprozessor auf den Adressenbus ausgibt, und um Steuersignale zum Steuern des Zugriffs vom gemeinsamen RAM durch den Mikrokontroller auszugeben; dadurch gekennzeichnet, daß der Adressenpuffer betriebsbereit ist zum auswählbaren Puffern der Adresseninformation unter Steuerung eines Adressenpuffer- Auswahlsignals; der Datenpuffer betriebsbereit ist zum auswählbaren Puffern der Dateninformation und der Steuerung eines Datenpuffer-Auswahlsignals; und daß die Logikschaltung betriebsbereit ist, als Reaktion auf die Adresseninformation auf dem Adressenbus, der einer Adresse des gemeinsamen RAM entspricht, (i) zum Aktivieren des Adressenpuffer- Auswahlsignals, um so den Adressenpuffer zu veranlassen, die Adresseninformationen aus dem Adressenbus auf dem Adressen- /Datenbus zu puffern; und danach (ii) das Adressenpuffer- Auswahlsignal zu deaktivieren und das Datenpuffer-Auswahlsignal zu aktivieren, um den Datenpuffer zu veranlassen, Dateninformationen aus dem oder in den Adressen-/Datenbus zu puffern.
- Da aufgrund der oben beschriebenen Anordnung der relativ schnelle Datenbus und der relativ schnelle Adreßbus auf einen einzigen kombinierten Adreß-/Datenbus gepuffert werden und da die Zeitablaufsteuerung für die Adreß- und für die Datenpuffer durch eine logische Matrix gesteuert werden, erfolgt ein gemeinsamer Zugriff auf das gemeinsame RAM selbst dann, wenn das gemeinsame RAM mit einem langsameren Bus verbunden ist.
- Bei den bevorzugten Ausführungsbeispielen der Erfindung ist die Zugriffsanordnung auf das gemeinsame RAM auf einer Netzwerkkarte, die mit einem Mehrfachsteuereinheit zusammenarbeitet, untergebracht. Die Mehrfachsteuereinheit · unterbricht die peripheren Möglichkeiten eines Digitalkopierers, um direkten Zugriff auf den Graphikbus des Digitalkopierers zu haben. Hierbei kann das Mehrfachsteuereinheit den Digitalkopierer in einen Digitalscanner oder einen Digitaldrucker umwandeln. Die Mehrfachsteuereinheit steuert die Netzwerkkarte an, aber auch andere Karten, die mit ihr verbunden sind, beispielsweise Karten für die Faxübertragung, Karten für die Bildverarbeitung oder ähnliches. Die Netzwerkkarte ist mit einem LAN (Local Area Network) verbunden, damit Netzwerkanwender, sowohl Zugriff auf von der Mehrfachsteuereinheit angesteuerten Zusatzkarten als auch Zugriff auf die Digitalscanner- und Druckereigenschaften des Digitalkopierers haben. Die Netzwerkkarte arbeitet im Multitasking-Betrieb. Hierbei können mehrere Netzwerkanwender gleichzeitig auf ein Gerät zugreifen. Beispielsweise ist es durch die Multitasking-Fähigkeit der Netzwerkkarte möglich, daß ein Netzwerkanwender ein Dokument auf dem Digitalkopierer ausdrucken kann. Ein zweiter Netzwerkanwender erfaßt gleichzeitig ein Dokument über den Scanner. Kann die Mehrfachsteuereinheit auch eine Karte zur Faxübertragung ansteuern, vermag ein dritter Netzwerkanwender gleichzeitig mit den anderen Anwendern eine Bildübertragung durchführen.
- Von einem anderen Gesichtspunkt aus betrachtet ist die vorgestellte Erfindung ein Verfahren, bei der ein Mikroprozessor auf ein gemeinsames RAM über einen schnellen Adreß- und einen schnellen Datenbus Zugriff nehmen kann, wobei beide mit dem gemeinsamen RAM über einen langsameren, kombinierten Adreß- /Datenbus verbunden sind. Enthalten in diesem Verfahren sind die Schritte: Empfang der Adreßinformationen vom Adreßbus; Ausgabe der Adreßinformation vom Mikroprozessor auf den Adreßbus; Ausgabe eines Freigabesignals, wenn die in der Empfangsbetriebsart empfangene Adreßinformation mit einer bekannten Adreßinformation übereinstimmt; Freigabe des Gate- Array, damit auf das gemeinsamen RAM zugriffen werden kann. Weitere Schritte bei diesem Verfahren sind: Aktivierung eines Freigabesignals für den Adreßpuffer und eines Freigabesignals für den Datenpuffer, wenn die in der Empfangsbetriebsart empfangene Information mit einer bekannten Adreßinformation übereinstimmt; Aktivierung je eines Freigabesignals für den Adreß- und für den Datenpuffer. Die Adreßinformation wird vom Adreßbus zum kombinierten Adreß-/Datenbus über den Adreßpuffer zwischengespeichert. Die Dateninformation wird zwischen dem Datenbus und dem kombinierten Adreß-/Datenbus über den Datenpuffer zwischengespeichert. Auf das gemeinsame RAM wird in Übereinstimmung mit der Adreßinformation und der während des Puffersvorgangs gepufferte Dateninformation zugegriffen. Auf das gemeinsame RAM wird vom Gate-Array, das von dem Freigabesignal während des Ausgabevorgangs aktiviert wird, zugegriffen.
- Dieses oben dargestellte Verfahren ermöglicht einem Mikroprozessor, auf ein gemeinsames RAM zuzugreifen, indem eine Adreßinformation, die Adressen im gemeinsamen RAM zugeordnet werden können, auf einem Adreßbus ausgegeben wird. Hierbei wird die Adreßinformation in Verbindung mit einer Dateninformation zwischen einem schnellen Adreßbus und einem schnellen Datenbus über einen langsameren kombinierten Adreß-/Datenbus in einer logischen Matrix gepuffert. Danach wird die Adreßinformation dazu verwendet, auf das gemeinsame RAM zuzugreifen. Man sieht, auf das gemeinsame RAM kann nur durch Ausgabe der Adreßinformation auf den Adreßbus zugegriffen werden, und zwar unabhängig von den Übertragungsgeschwindigkeiten des Adreßbusses, des Datenbusses oder des kombinierten Adreß- /Datenbusses.
- Diese kurze Zusammenfassung sollte zum schnellen Verständnis der Erfindung beitragen. Genaueres kann man aus der detaillierten Beschreibung des Ausführungsbeispiels, das anschaulich durch Zeichnungen verdeutlicht wird, entnehmen.
- Fig. 1 gibt einen Gesamtüberblick einer Netzwerkkarte, die in ein Mehrfachsteuereinheit, die auch eine Hauptplatine zur Steuerung eines Digitalkopierers enthält, installiert ist.
- - Fig. 2 zeigt ein Schnittbild der Mehrfachsteuereinheit zum Verdeutlichen der einzelnen implementierten Karten.
- Fig. 3 zeigt das Blockschaltbild der Mehrfachsteuereinheit. Die Fig. 4(a) bis 4(d) zeigen die Master-/Slave- Datenübertragung zwischen der Hauptplatine und den weiteren Karten in der Mehrfachsteuereinheit auf.
- Fig. 5 zeigt die Anordnung der Bauteile auf der Netzwerkkarte.
- Fig. 6 zeigt das Blockschaltbild der Netzwerkkarte.
- Fig. 7 zeigt einzelnen Programmschritte, die sich in einem Festwertspeicher auf der Netzwerkkarte befinden.
- Fig. 8 ist ein detailliertes Blockschaltbild der Netzwerkkarte.
- Fig. 9(a) ist ein Beispiel für eine 1-aus-8- Signalsteuerungslogik.
- Die Fig. 9(b) und 9(c) sind Beispiele für eine Signalsteuerungslogik wie sie bei der vorliegenden Erfindung verwendet wurde.
- Fig. 10 zeigt ein Zeitablaufdiagramm zur Erklärung der Verbindung zum gemeinsamen RAM.
- Fig. 11 zeigt ein Flußdiagramm zur Erklärung der Multitasking-Betriebsart der Netzwerkkarte.
- Fig. 12 ist ein Flußdiagramm, das die Verfahrensschritte zur Erzeugung der Signalsteuerung zeigt.
- Fig. 13 zeigt ein Flußdiagramm, das die einzelnen Verfahrensschritte in der vorliegenden Erfindung aufzeigt, um einem schnellen Adreßbus und einem schnellen Datenbus mit einem langsameren, kombinierten Adreß-/Datenbus zu verbinden.
- Fig. 1 zeigt einen Gesamtüberblick der Netzwerkkarte 50, die in eine Mehrfachsteuereinheit 20, von der auch ein Digitalkopierer 10 gesteuert wird, installiert ist.
- Wie aus Fig. 1 zu entnehmen ist, enthält der Digitalkopierer 10 eine Vorlagenhalterung 11, einer Papierkassette 12 und einem Sortier- und Ablagemagazin 14. Als geeignet zum Einsatz bei der vorliegenden Erfindung hat sich der Digitalkopierer GP55F der Firma Canon erwiesen. Diese Art Kopierer ziehen Dokumente aus der Vorlagenhalterung 11 ein und führen sie unter einem Digitalscanner durch, um ein digitales Abbild der Vorlage zu erhalten. Ein interner Drücker (in Fig. 1 nicht dargestellt) druckt das eingescannte Bild auf Papier aus, das aus der Papierkassette 12 kommt, und legt die Kopie im Sortier- und Ablagemagazin 14 ab.
- Eine Mehrfachsteuereinheit 20 greift auf den Schnittstellenbus 13 des Digitalkopierers 10 zu, um die Funktionsfähigkeit des Scanner- und des Druckerbereiches zu gewährleisten. Wie weiter unten ausführlicher beschrieben wird und aus den Fig. 2 und 3 zu ersehen ist, enthält die Mehrfachsteuereinheit 20 eine Hauptplatine, die auf den Schnittstellenbus des Digitalkopierers zugreift. Zusätzlich kann auf weitere Zusatzkarten zugegriffen werden. Diese Zusatzkarten kommunizieren mit der Hauptplatine nach dem Master-/Slave- Prinzip über ein Dual-Port-RAM, das sich auf jeder Zusatzkarte befindet. In vielen Fällen enthält eine der Zusatzkarten einen Schnittstellenteil, worüber die Mehrfachsteuereinheit 20 mit einem Einzelplatzrechner 21 verbunden werden kann. Zusatzkarten können eine Faxübertragungskarte enthalten, über die eine Telefonleitung 22 angesteuert werden kann. Denkbar sind auch Karten zur Rasterung, um über Befehle einer Seitenbeschreibungssprache wie PCLS, LIPS, Postscript beispielsweise eine Graphik ausgeben zu können. Des weiteren kann man an Karte zur Bildverarbeitung denken, die komplexe Bildverarbeitungsfunktionen wie Blockzeichenauswahl- oder Seitenanalysefunktionen ausführen und in der noch anhängigen Anwendung mit der Seriennummer 08/171,720 vom 22. Dezember 1993 "Method and Apparatus for Selecting Text and/or Non-Text Blocks Stored in a Document" (EP-A-0660256) beschrieben ist.
- Bezogen auf die vorliegende Erfindung ist eine der Zusatzkarten eine Netzwerkkarte 50, die mit einer Hauptplatine in der Mehrfachsteuereinheit 20 verbunden werden kann, um Zugriff auf ein LAN (Local Area Netzwork, lokales Netz) zu ermöglichen.
- Der Digitalkopierer 10 als Einzelgerät kann als Standard- Digitalkopierer betrieben werden. Zusätzlich kann er von einem Anwender als Scanner oder als Drucker über den Personal Computer (PC) 21 betrieben werden. Über die Netzwerkkarte 50 in Verbindung mit der Mehrfachsteuereinheit 20 kann der Digitalkopierer 10 als multifunktionales Netzwerk betrieben werden, auf das jeder Netzwerkanwender zugreifen kann.
- Gleichzeitig Zugriff kann genommen werden auf den Scanner oder den Drucker im Digitalkopierer 10 oder auf eine Zusatzkarte (beispielsweise Karten für die Faxübertragung, für die Rasterung oder für die Bildverarbeitung) in der Mehrfachsteuereinheit.
- Fig. 2 zeigt ein Schnittbild der Mehrfachsteuereinheit 20. Wie schon erwähnt, befinden sich in ihr die Hauptkarte 24, die Schnittstellenkarte 26, die Zusatzkarte 27 beispielsweise für die Faxübertragung, für die Rasterung oder für die Bildverarbeitung und die Netzwerkkarte 50.
- Fig. 3 zeigt das Blockschaltbild der Mehrfachsteuereinheit 20. Man erkennt, daß die Hauptkarte 24, die Schnittstellenkarte 26, die Zusatzkarte 27 und die Netzwerkkarte 50 mit der Hauptplatine 28 (Motherboard) über den Bus der Zentraleinheit 29 und den Graphikbus 30 verbunden sind. Auf der Hauptkarte 24 befinden sich Schaltungen zur Hochgeschwindigkeitsverarbeitung, damit beispielsweise die Informationen von Schnittstellenbus 13 des Digitalkopierers an den Graphikbus 30 zur Verfügung stehen. Speziell über die Übergangsstelle 31 und den FIFO-Baustein 32 (First In, First Out) unter der Steuerung des Selektors 33 führt die Hauptkarte 24 Verarbeitungsvorgänge wie Filterung 34, Dichtebestimmung 35, Digitalisierung 36, Drehung 37, Vergrößerung 38 und Glättung 39 durch, deren Ergebnis über den Graphikbus 30 an jedes der verbundenen Zusatzgeräte, beispielsweise die Netzwerkkarte, weitergeleitet werden. Auf der Hauptkarte 24 befindet sich auch die Zentraleinheit 41 zur Ansteuerung der Schnittstellenkarte 26 und jeder anderen angeschlossenen Zusatzkarte. Die Zentraleinheit 41 ist mit dem Bus der Zentraleinheit 40 verbunden. An den Bus angeschlossen sind das RAM 42, die Steuereinheit für die serielle RS-232- Schnittstelle 43 und der SCSI-Steuereinheit (Small Computer Systems Interface) 44, an den die Festplatte 45 mit 40 MB Speicherkapazität angeschlossen ist. Die Hauptkarte 24 steuert über Dual-Port-RAMs - unter Verwendung einer Master-/Slave- Nachrichtenübertragung - jede der angeschlossenen Zusatzkarten. Bei einer solchen Master-/Slave-Nachrichtenübertragung, die in Abschnitt 1.1 abgehandelt ist, werden von den Zusatzkarten Antworten zurückgesendet, um Zugriff auf Anforderungsbefehle zu haben, die von der Hauptkarte 24 kommen. Die dauernde Wiederholung dieses Vorgangs verhindert Kollisionen bei der Nachrichtenübertragung zwischen den einzelnen Zusatzkarten, die ebenfalls stattfinden können.
- Die Schnittstellenkarte 26 wird von der Zentraleinheit 41 direkt über den Bus der Zentraleinheit 40 auf der Hauptkarte 24 und den Bus der Zentraleinheit 29 auf der Hauptplatine 28 angesteuert. Auf der Schnittstellenkarte 26 befindet sich der Speicher 46 und verschiedene Steuereinheiten, um die parallele Nachrichtenübertragung mit externen Geräten (beispielsweise Computer 21) über die Centronix- oder die SCSI-Schnittstelle und die serielle Nachrichtenübertragung über die RS232-Schnittstelle auszuführen.
- Jede Nachrichtenübertragung in der Mehrfachsteuereinheit erfolgt über die Hauptkarte 24. Beispielsweise erfolgt der Empfang oder die Übertragung von Bilddaten zu Schnittstellenbus 13 des Digitalkopierers 10 von oder zu Zusatzkarten oder die Netzwerkkarte über die Hauptkarte 24. Des weiteren erfolgt die Nachrichtenübermittlung zwischen Zusatzkarten über die Hauptkarte. In einer Situation, bei der die Zusatzkarte 27 Faxübertragung durchführen will, greift ein Netzwerkanwender auf diese Faxübertragung über die Netzwerkkarte 50 zu, wobei die Nachrichtenübertragung zur Zusatzkarte 27 über die Hauptkarte 24 erfolgt. Dies geschieht durch zyklische Übertragung von Anforderungsbefehlen für Zugriff durch die Hauptkarte 24 auf das Dual-Port-RAM bei jeder der Zusatzkarten. Jede der Zusatzkarten antwortet auf den von der Hauptkarte 24 empfangenen Anforderungsbefehl für Zugriff. Die Antwort kann eine Aufforderung an die Hauptkarte 24 sein, weitere Befehle an die Zusatzkarte zu senden. Dies könnte beispielsweise der Befehl, Daten an die Hauptkarte oder Graphikdaten auf den Graphikbus 30 zu übertragen. Die Hauptkarte 24 liest die Antwort vom Dual- Port-RAM der Zusatzkarte aus und verarbeitet sie entsprechend.
- Werden beispielsweise Bilddaten von einem Netzwerk über die Netzwerkkarte 50 übertragen und liest diese Karte den Anforderungsbefehl für Zugriff von der Hauptkarte 24 auf dem Dual-Port-RAM der Netzwerkkarte, dann wird eine Antwort an die Hauptkarte gegeben, die besagt, daß die Bilddaten an eine Zusatzkarte übertragen werden sollen. Die Hauptkarte 24 fordert dann die Netzwerkkarte auf, die Bildübertragungsdaten auszugeben. Die Netzwerkkarte reagiert auf diese Anweisung, indem sie diese Daten in das ihr zugewiesene Dual-Port-RAM einschreibt. Die Hauptkarte 24 liest die Bildübertragungsdaten aus und in der nächsten Periode gibt die Hauptkarte 24 eine Anforderungsbefehl für Zugriff an das Dual-Port-RAM der Zusatzkarte 27 für Faxübertragung aus. Dieser Anforderungsbefehl enthält einen Befehl zum Datenempfang. Auf diese Weise verwaltet die Hauptkarte 24 den Zugriff auf Karten und Einheiten, indem sie periodisch Anforderungsbefehle für einen Zugriff zu den unter ihrer Steuerung befindlicher Karten und Einheiten aussendet und indem sie Antwort erhält.
- Man sieht, die gesamte Nachrichtenübertragung in der Mehrfachsteuereinheit, einschließlich der Nachrichtenübertragung zu und vom Digitalkopierer über die Schnittstelle 13 und der Nachrichtenübertragung zu oder von den Zusatzkarten oder von der Netzwerkkarte, wird über die Hauptkarte 24 ausgeführt, indem alle an diese Karte angeschlossenen Einheiten abfragt und periodisch einen Anforderungsbefehl für den Zugriff aussendet. Die Hauptkarte 24 erwartet von jeder Zusatzkarte Antwort. Diese Antwort kann eine Aufforderung sein, weitere Befehle auszugeben. Hieraus folgt, daß die Hauptkarte 24 bei einer Master-/Slave- Datenübertragung bei jeder angeschlossenen Einheit Master- Einheit ist.
- Die Fig. 4(a) bis 4(d) zeigen den Ablauf dieser Master- /Slave-Datenübertragung, wenn die Netzwerkkarte 50 eine Druckauftragsfolge an den Digitalkopierer 10 über die Hauptkarte 24 überträgt. Wie aus Fig. 4(a) zu erkennen ist, steuert die Hauptkarte 24 periodisch alle angeschlossenen Zusatzkarten an. Bei (1) erfolgt ein Anforderungsbefehl für den Zugriff an die Zusatzkarte 27. Bei (2) antwortet die Zusatzkarte 27 und teilt mit, daß kein Zugriff erforderlich ist.
- Bei Fig. 4(b) fährt die Hauptkarte 24 mit der periodischen Abfrage der an sie angeschlossenen Karten fort und gibt einen Anfragebefehl für den Zugriff (3) an die Netzwerkkarte 50. Sie hat einen Druckauftrag, dessen Daten an den Digitalkopierer 10 gesendet werden sollen. Bei (4) wird mit einer Anfrage an die Hauptkarte geantwortet, weitere Befehle einzuleiten, damit der an der Netzwerkkarte 50 anliegende Druckauftrag ausgeführt werden kann.
- Wie aus Fig. 4(c) zu ersehen ist, gibt die Hauptkarte 24 einen Eingabebefehl über PCL-Daten (5) aus. Die Netzwerkkarte 50 antwortet über (6) mit einer Seitenzahl und PCL-Daten. Es erfolgen nun kontinuierliche Befehle von der Hauptkarte 24 so lange, bis die Netzwerkkarte 50 sämtliche zum Druckauftrag erforderlichen Daten (beispielsweise Bestimmungsort, Seitenzahl, Papierquelle) übertragen wurden.
- Anschließend (Fig. 4(d)) erteilt Hauptkarte 24 über (7) einen Befehl an Netzwerkkarte 50, Graphikdaten zu übertragen. Netzwerkkarte 50 bestätigt über (8) den Empfang des Übertragungsbefehls und überträgt die Graphikdaten über (9) an den Graphikbus 30. Die Hauptkarte 24 leitet die Graphikdaten über (10) an den Digitalkopierer zum Ausdruck weiter.
- In gleicher Weise leitet Hauptkarte 24 Nachrichten an entsprechend andere angeschlossene Einheiten weiter. Beispiele sind das Weiterleiten eines Abtastauftags von Digitalkopierer 10 an Netzwerkkarte 50 oder das Weiterleiten eines Bildübertagungsauftags von Netzwerkkarte 50 an die Zusatzkarte (27) für die Faxübertragung.
- Fig. 5 zeigt die Anordnung der Bauteile auf der Netzwerkkarte 50. Auf der Platine 51 befinden sich: Ein Mikroprozessor 52, beispielsweise ein Intel-Mikroprozessor des Typs 80486-DX2, der sämtliche Funktionen auf der Netzwerkkarte steuert; ein PC-AT-Chipsatz 54, in dem sich logische Schaltungen zur Steuerung und Überwachung verschiedener Funktionen wie die Überwachung des Adreßbus und des Datenbus und die Ausführung von Befehlen zur Signalansteuerung eines Bausteins befinden; eine Netzwerk-Steuereinheit 55, beispielsweise eine Ethernet- Steuereinheit für die Überwachung des LAN; drei Netzwerk- Anschlüsse 56, um eine Standard-Verkabelung nach lOBaseT, 10Base2 oder AUI herstellen zu können. Der Mikroprozessor 52 greift auf ein dynamisches RAM (DRAM) zu, das auf einem SIMM (Single Inline Memory Module) aufgesteckt ist. Der Speicherbedarf kann zwischen 4 MB und 64 MB liegen. Das Dual- Port-RAM 59 dient zur Kommunikation mit der Hauptkarte 24 mit Anschluß an den Bus der Zentraleinheit 29 über den Steckverbinder 60.
- Der Mikroprozessor kann auch auf eine Festplatte 61 in PCMCIA-Größe mit 131 MB Speicherkapazität zugreifen. Zwei zusätzliche Steckplätze 62 bzw. 63, die von einer PCMCIA- Schnittstellen-Steuereinheit 64 gesteuert werden, sind für PCMCIA Typ 2 vorgesehen. Damit wird es ermöglicht, die Netzwerkkarte 50 mit einer Reihe von zusätzlichen peripheren Einheiten wie Modems oder eine ARCnet-Schnittstelle zu versehen.
- Der Zugriff auf den Graphikbus 30 der Mehrfachsteuereinheit erfolgt über den Steckverbinder für den Graphikbus 65, der über das Gate-Array 66 angesteuert wird. Das Gate-Array 66 greift auf das gemeinsame RAM, ausgeführt als Graphik-RAM (VRAM, Video RAM), zu, das eine Speicherkapazität von mindestens 1 MB hat. Die Speicherkapazität läßt sich mit DRAMs, die sich auf den SIMMM 67 befinden, bis zu 32 MB erweitern.
- Die Anzeigen 68 dienen dem Anwender dazu, die internen Zustandskennzeichen der Netzwerkkarte 50 zu überwachen. Zusätzlich befinden sich auf der Netzwerkkarte noch zwei Erweiterungssteckplätze, die bidirektionale Parallelschnittstelle 69(a) beispielsweise zum Anschluß eines Einzelplatzrechner und die serielle RS-232-Schnittstelle 69(b) zum Anschluß beispielsweise von Testgeräten.
- Fig. 6 zeigt im Blockschaltbild die Verbindung einzelnen Elemente auf der Netzwerkkarte 50. Es ist zu sehen, daß der Mikroprozessor 52 mit dem Adreßbus 70 und mit dem Datenbus 71 verbunden ist. Der Chipsatz 54 ist ebenfalls mit dem Adreßbus 70 und dem Datenbus 71 verbunden. Zum Chipsatz 54 gehört einmal eine Schnittstelle 54a, die zwischen dem Adreßbus 70 und dem Datenbus 71 sowie dem Gate-Array 66 liegt, und zum anderen eine Schnittstelle 54b zwischen dem Ethernet-Steuereinheit 55 und den Netzwerk-Steckverbinder 56. Darüber hinaus sind an den Adreßbus 70 und an den Datenbus 71 angeschlossen: Die Ethernet- Steuereinheit 55, die SIMM 57a, einschließlich einem DRAM von 4 MB Speicherkapazität, einem Dual-Port-RAM, das über den Steckverbinder 60 mit dem Bus der Zentraleinheit 29 der Mehrfachsteuereinheit verbunden ist, eine 131 MB-Festplatte 61 und die PCMCIA-Schnittstelle 64, die mit den Erweiterungssteckplätzen 62 und 63 für zusätzliche PCMCIA-Karten verbunden ist.
- Die Schnittstelle 54a verbindet das Gate-Array 66 mit dem Adreßbus 70 und dem Datenbus 71. Das Gate-Array 66 hat einen eigenen Adreßbus 72 und einen eigenen Datenbus 74. Mit ihnen verbunden sind die SIMM 67a, auf denen sich das gemeinsame RAM mit 1 MB Speicherkapazität befindet. Wie schon erwähnt, ist das Gate-Array 66 mit dem Graphikbus über den Steckverbinder 65 verbunden.
- Fig. 7 zeigt eine mögliche Anordnung von Ablaufvorgängen (oder Programmen), die auf der Festplatte 61 abgespeichert sind, und auf die der Mikroprozessor 52 zugreift oder die er verarbeitet. Man sieht, daß sich auf Festplatte 61 eine Konfigurationsdatei 75 befindet, die nach dem Einschalten oder nach dem Start des Betriebssystems im Mikroprozessor 52 abläuft. Diese Konfigurationsdatei steuert den Mikroprozessor 52 in der Weise, wie die Speicheraufteilung vorgenommen werden soll, welche speicherresidenten Programme in welche Speicherbereiche geladen werden sollen oder welche Anwendungsprogramme im Multitasking-Betrieb gestartet werden sollen. Beispielsweise kann die Konfigurationsdatei 75 Befehle enthalten, die den Mikroprozessor 52 anweisen, bestimmte Speicherbereiche des DRAM 57 für das Nachrichten-Übertragungsprotokoll zuzuweisen.
- Auf der Festplatte 61 befindet sich ein Multitasking- Betriebssystem 76. Mit Hilfe dieses Betriebssystems kann der Mikroprozessor 52 die Netzwerkverarbeitung gleichzeitig für verschiedene Netzwerkanwender ausführen. Etwas präziser: Wegen des Multitasking-Betriebssystems 76 kann der Mikroprozessor 52 Netzwerkanforderung von einem ersten Netzwerkanwender, beispielsweise eine Anforderung zum Drucken, gleichzeitig mit der Verarbeitung einer Netzwerkanforderung eines zweiten Netzwerkanwenders, beispielsweise eine Anforderung zum Scannen, verarbeitet, ohne warten zu müssen, bis die Verarbeitungsablauf des ersten Netzwerkanwenders beendet ist.
- Der Kern des Multitasking-Betriebsystems 76 erlaubt Taskverwaltung, Nachrichtenübermittlung zwischen Tasks, Speicherverwaltung und bestimmte Arten der Ressourcen- Verwaltung. Der Kern des Betriebssystems führt folgende Aufgaben durch:
- (1) Multitasking: Der Kern des Betriebssystems unterstützt kooperatives Multitasking, das heißt, es können sowohl 16-Bit- Anwendungen (in der V86-Betriebsart) als auch 32-Bit-Anwendungen (im Protected Mode, "geschützte" Betriebsart) ausgeführt werden. Daneben wird preemptives Multitasking für 32-Bit-Anwendungen unterstützt.
- (2) DOS-Unterstützung: Der Kern des Betriebssystems kann mehrere DOS-Tasks gleichzeitig ausführen. Diese Tasks werden in der V86-Betriebsart ausgeführt, wobei jeder Task sich in einer eigenen "virtuellen Machine" befindet. Die Ebene der DOS- Unterstützung betrifft die Unterstützung des DOS-Dateisystems. Nicht unterstützt werden Video-, Tastatur- und Mausgeräte. DOS befindet sich nicht im Kern des Betriebssystems. Trotzdem erlaubt der Kern DOS, gleichzeitig auf verschiedene DOS-Tasks zuzugreifen.
- (3) Datenübertragung zwischen Tasks: Ein Meldungsmechanismus für die Datenübertragung zwischen Tasks ist vorgesehen. Es gibt ein API (Application Programming Interface), das IPC (Internet Personal Computer) unterstützt. Diese Unterstützung kann sich außerhalb des Kerns befinden.
- (4) Gemeinsam genutzte Bibliotheken: Mit diesem Kern können Bibliotheken zwischen verschiedenen Tasks gemeinsam genutzt werden, weswegen es nur eine Kopie einer Bibliotheksfunktion, unabhängig von der Anzahl der Tasks, gibt.
- (5) Speicherverwaltung: Es werden Schnittstellen zu belegtem oder freiem Speicherplatz erzeugt. Hierdurch können Anwendungen, die größer als 1 MB sind, bearbeitet werden. Diese Anwendungen können als 32-Bit-DOS-Anwendungen entwickelt werden, jedoch ist eine DOS-Erweiterung erforderlich, damit DOS-Dienste auch für die 32-Bit-Anwendungen unterstützt werden. Der Kern erfüllt DPMi (DOS Protected Mode Interface), so daß jede DPMI kompatible DOS-Erweiterung zur Ausführung eines 32-Bit-Zugriffs verwendet werden kann.
- (6) Unterbrechungs-Steuerungsprogramm: Gerätetreiber vom DOS-Typ werden unterstützt.
- (7) Lineares Speicheradressierungs-Modell: Der Kern unterstützt ein lineares 32-Bit-Adressierungs-Modell des Intel- Prozessors 80486.
- (8) Unterstützung eines Zentralrechners: Der Kern läuft auch auf einem mit den Mikroprozessoren Intel 80486/80386 ausgestatteten Zentralrechner. Dies bedeutet, daß der Zentralrechner als eine Entwicklungsumgebung und als eine (begrenzte) Testumgebung für die Anwendungssoftware der Netzwerkkarte unter Einsatz der serienmäßigen DOS-Hilfsprogramme verwendet werden kann.
- Auf der Festplatte 61 befindet sich auch ein Netzwerk- Treiber und eine Multiplexer-Software sowie Protokollstapel einschließlich des IPX/SPX-Protokollstapels (Internet Packet Exchange/Sequenced Packet Exchange) von Novell und des TCP/LP- Protokollstapels (Transmission Control Protocol/Internet Protocol), das üblicherweise im Betriebssystem UNIX integriert ist.
- Speziell MLID (Multi-Link Interface Driver) belegt die niedrigste Ebene der Netzwerk-Verbindungssoftware. In ihm enthalten ist das MSM (Media Support Module), das mit dem HSM (Hardware Support Module) verbunden ist. LSL (Link Support Layer) ist ein Netzwerkcode, der als Multiplexer zwischen dem auf der niedrigsten Ebene befindlichen MLID und den Protokollstapeln wirkt. Diese Protokollstapel enthalten IPX/SPX- und auch TCP/IP-Protokollstapel.
- Auf der Festplatte 61 befinden sich auch Verarbeitungsschritte für einen Druck-Server 79, und einen Abtast-Server 80. Der Drucker- bzw. der Abtast-Server überträgt die Funktionseigenschaften des Druckers und des Scanners im Digitalkopierer 10 auf das LAN (Local Area Network, lokales Netz). Speziell: Als Antwort auf Netzwerkanforderungen für Druck- oder Abtastvorgänge haben der Druck-Server 79 und der Abtast-Server 80 die Aufgabe, derartige Anforderungen durch Master-/Slave-Nachrichtenübertragung zur Hauptkarte 24 über den Bus der Zentraleinheit 29 und den Anschluß 60 auszuführen, und die Graphikinformation auf dem Graphikbus 30 über den Anschluß 65 zu lesen und zu schreiben. Darüber hinaus lassen sich wegen des Multitasking-Systems 76 die Funktionseigenschaften des Druck-Servers und des Abtast-Servers gleichzeitig ausführen, ohne warten zu müssen, bis ein Vorgang abgeschlossen ist.
- Daneben können sich auf Festplatte 61 weitere Server beispielsweise zur Bildübertragung 81 oder zur Bildverarbeitung 82 befinden. Diese Server dienen dazu, die Funktionsfähigkeit weiterer Zusatzkarten 27, die mit Mehrfachsteuereinheit 20 verbunden sind, zu übertragen. Wenn beispielsweise eine Karte zur Faxübertragung mit der Mehrfachsteuereinheit 20 verbunden ist, dann überträgt der Server zur Bildübertragung 81 die Funktionseigenschaften der Karte auf das LAN. Oder, wenn eine spezielle Karte zur Bildverarbeitung, beispielsweise eine Karte zur Bildverarbeitung, die Auswahl von Blockdaten nach der Seriennummer 08/171.720 ausführt, mit der Mehrfachsteuereinheit 20 verbunden ist. In diesem Fall überträgt der Server für die Bildverarbeitung 82 die Funtionfähigkeitseigenschaften der speziellen Karte auf das LAN. Wie schon weiter oben erwähnt, wird wegen des Betriebssystems mit Multitasking-Eigenschaften die zu verarbeitenden Prozeßdaten der einzelnen Server gleichzeitig abgearbeitet.
- Unter weiteren auf der Festplatte 61 abgespeicherten Programmen befindet sich ein Programm 84 zur Vorabtastung vom Frame-Typ (ein Frame ist ein Datenübertragungsblock). Es stellt fest, welche Frame-Typen (beispielsweise IEEE-Normen 802.2, 802.3, Ethernet-Steuereinheit II oder Ethernet Snap) mit welchem Protokollstapel (beispielsweise IPX/SPX oder TCP/IP) in Verbindung stehen. Geeignete Vorabtast-Arbeitsabläufe werden in der Anwendung mit der Seriennummer 08/336.062, 4. November 1994, mit dem Titel "Netzwork Protocol Sensor" (entspricht EP- Anwendung 95307708.8) beschrieben. Das DOS-Übersetzungsprogramm 85 enthält Codes, die lokale DOS-ähnliche Funktionsaufrufe in Netzwerk-Funktionsaufrufe übersetzen. Das DOS- Übersetzungsprogramm 85 erzeugt Netzwerk-Dateifunktionen wie Öffnen, Schreiben, Lesen und Schließen. Das Service Advertising Protocol 86 ist ein Betriebssystem-Konzept der Firma Novell, das Netzwerkgeräten erlaubt, sich selbst mit dem Datei-Server des Netzwerks zu registrieren. Der Datei-Server unterhält Listen von aktiven und nichtaktiven Netzwerkelementen wie Druck-, Abtast-, Bildübertragungs-Server. Das Anschluß- Überwachungsprogramm 87 sorgt für die interne Organisation der Netzwerkkarte bezüglich sämtlicher Protokollstapel. Das Überwachungsprogramm 87 verfügt über den Status- und Steuer- Kanal zwischen der Netzwerkkarte und der Mehrfachsteuereinheit. Deshalb ist es der einzige Programmteil, der die Fähigkeit hat, Druckerstatus zu erreichen. Das Anschluß-Überwachungsprogramm 87 liefert durch die Datenübertragung innerhalb der Netzwerkkarte Status und Steuerung zu anderen Tasks. Das Überwachungsprogramm ist auch verantwortlich für die Netzwerkverbindung und die Paketinhalte zwischen sämtlichen, auf Novell bezogenen Status- und Steuer-Dienstprogrammen. Schließlich seien noch die ständig im Arbeitsspeicher befindlichen Dienstprogramme 89 erwähnt, zu denen beispielsweise Programme für das Auslesen und für das Beschreiben von nichtflüchtigen Speichern, zur Fehlersuche oder zur Zeitablaufsteuerung enthalten sind.
- Fig. 8 ist ein ausführliches Blockschaltbild, das die Verbindungen der Bauteile von Fig. 6 zum Adreßbus 70 und zum Datenbus 71 zeigt. Aus Fig. 8 entnimmt man, daß der Mikroprozessor 52 mit dem Adreßbus 70 und mit dem Datenbus 71 unmittelbar verbunden ist. Ebenfalls unmittelbar an den Adreßbus 70 und den Datenbus 71 sind der PC-AT-Chipsatz 54, die Ethernet- Steuereinheit 55, das DRAM 57, die Erweiterungs-Steckplätze 57a, das Dual-Port-RAM 59, die Festplattenschnittstelle 61a für die Festplatte 61, die PCMCIA-Schnittstelle 64 und die parallele Schnittstelle 69 angeschlossen. Das Gate-Array 66 ist indirekt über den Adreßpuffer 90 und den Datenpuffer 95 mit dem Adreßbus 70 und dem Datenbus 71 verbunden. Der Adreßpuffer 90 und der Datenpuffer 95 sind mit einem kombinierten Adreß-/Datenbus, der zum Gate-Array 66 führt, verbunden. Wie schon erwähnt, verfügt das Gate-Array 66 über einen eigenen Adreßbus 74 und einen eigenen Datenbus 72. Deshalb kann das Gate-Array das gemeinsame RAM 67 oder jedes am Erweiterungs-Steckverbinder 67a angeschlossene RAM adressieren.
- Jede der angeführten Einheiten, die direkt oder indirekt mit dem Adreßbus 70 und mit dem Datenbus 71 verbunden sind (beispielsweise Ethernet-Steuereinheit 55, DRAM 57, Dual-Port- RAM 59, Festplatten-Schnittstelle 61a, PCMCIA 64, Parallelschnittstelle 69, Adreßpuffer 90, Datenpuffer 95 und Gate-Array 66), verfügen über einen Freigabeeingang. Ist dieser Eingang nicht aktiviert, findet kein Datenverkehr auf dem Adreßbus und auf dem Datenbus statt, das heißt, auf den Adreßbus oder auf den Datenbus können keine Daten geschrieben werden. Die Signalsteuerungslogik 100 legt fest, welche der Einheiten, die unmittelbar mit dem Adreßbus 70 und dem Datenbus 71 verbunden sind, die Freigabe für das Schreiben oder für das Lesen von Daten auf oder von den Bus-Systemen erhalten sollen. Bei genauer Betrachtung koordiniert die Signalsteuerungslogik 100 die Vorgänge auf den Bus-Systemen in der Weise, daß über Konkurrenzsituationen auf den Bus-Systemen entschieden wird. Dies geschieht durch Überwachung der auf dem Adreßbus 70 auftretenden Adreßsignale und durch Decodierung dieser Adreßsignale, um die zu adressierenden Einheiten zu bestimmen. Nach der Decodierung der Adreßsignale gibt die Signalsteuerungslogik 100 ein spezifisches Steuersignal aus, das dann am Freigabeeingang der ausgewählten Einheit anliegt.
- Die Fig. 9(a) bis 9(c) zeigen Realisierungsmöglichkeiten der Signalsteuerungslogik 100. Im allgemeinen wird die Signalsteuerungslogik mit PAL-Bausteine (Programmable Array Logic) realisiert, die zur Decodierung der Adreßsignale auf dem Adreßbus 70 so programmiert werden kann, daß entsprechend der decodierten Adresse ein oder mehrere Signale ausgegeben werden können.
- Fig. 9(a) zeigt die übliche Schaltung für die Signalsteuerungslogik. Zwei PAL-Bausteine 101 und 102 decodieren die am Adreßbus 70 anliegenden Adreßsignale derart, daß eines von 13 mögliches Steuersignalen ausgegeben wird. Die PAL- Bausteine haben meist nur acht Signalausgänge. Da eine Vielzahl von Geräten mit dem Adreßbus 70 bzw. mit dem Datenbus 71 verbunden sind, werden zwei PAL-Bausteine benötigt, um die entsprechenden Steuersignale zu generieren. Diese Realisierung ist preiswert, da PAL-Bäusteine nicht sehr teuer sind.
- Fig. 9(b) zeigt eine alternative Realisierung der Signalsteuerungslogik 100. Es wird nur ein PAL-Baustein benötigt. Genauer: Der PAL-Baustein in der Anordnung nach Fig. 9(b) gibt nicht nur Steuersignale aus, sondern auch binär codierte Signale, die von einem 1-aus-8-Decodier-Baustein decodiert werden und somit die noch fehlenden Steuersignale liefert. Diese Lösung ist der Realisierung in Fig. 4(a) vorzuziehen, weil eine 1-aus-8-Decodier-Baustein preiswerter als ein PAL-Baustein ist.
- Bei genauerer Betrachtung besteht die Signalsteuerungslogik 100 aus dem PAL-Baustein 104, der derart programmiert ist, daß er Adreßsignale von Adreßbus 70 empfangen und mindestens eines der fünf Steuersignale 01 bis 05 ausgeben kann. Zusätzlich kann der PAL-Baustein noch binär codierte Signale 105 liefern. Diese Signale dienen mit Hilfe des 1-aus-8-Decodier-Bausteins zur Erzeugung der Steuersignale 06 bis 13. Die Decodierung kann der folgenden Tabelle entnommen werden:
- 000 06
- 001 07
- 010 08
- 011 09
- 100 10
- 101 11
- 110 12
- 111 13
- Der 1-aus-8-Decodier-Baustein empfängt die binär codierten Signale 105 und decodiert sie, so daß am Ausgang des Bausteins die Steuersignale 06 bis 13 anliegen.
- Die in Fig. 9(c) dargestellte Realisierung kann ebenfalls verwendet werden. Gegenüber der in Fig. 9(b) gezeigten Realisierung werden die Steuersignale 01 bis 05 durch die Puffer 107 zeitlich verzögert, wodurch die Signalverzögerung durch Zuschalten des 1-aus-8-Decodierer-Bausteins kompensiert wird, so daß die Steuersignale 01 bis 13 am Ausgang zeitgleich zur Verfügung stehen.
- Fig. 12 zeigt in einem Flußdiagramm die Ablaufschritte zur Erzeugung der Steuersignale entsprechend der vorliegenden Erfindung. Bei Schritt S1201 empfängt der PAL-Baustein 104 Adreßsignale von Adreßbus 70. Wie weiter oben schon beschrieben, werden diese Adreßsignale vom Mikroprozessor 52 erzeugt und stammen von Bausteinen auf der Netzwerkkarte 50. Bei Schritt 1202 interpretiert der PAL-Baustein 104 die empfangenen Adreßsignale. Er stellt fest, welche der empfangenen Signale mit den bekannten Adressen im PAL-Baustein 104 übereinstimmen. Diese bekannten Adressen gehören entweder zu den Steuersignalen oder zu den Codierungs-Signalen des Decodier-Bausteins. Wenn ein empfangenes Adreßsignal nicht mit einer bekannten Adresse übereinstimmt, wird zu Schritt S1201 zurückgekehrt. Danach werden neue Adreßsignale vom Adreßbus 70 empfangen.
- Bei Schritt S1204 wird verglichen, ob die empfangenen Adreßsignale den bekannten Steuersignalen zugeordnet werden können oder ob es sich um Codierungs-Signale handelt. Handelt es sich um die bekannten Steuersignale, wird bei Schritt S1207 fortgefahren.
- Bei Schritt S1207 werden die Steuersignale, die den empfangenen Adreßsignalen entsprechen, ausgegeben. Bezieht man sich bei Schritt S1207 beispielsweise auf Fig. 9(b), tritt an einem der Steuersignalausgängen 01 bis 05 des PAL-Bausteins 104 ein Signal aus. Wie aus Fig. 9(b) zu sehen ist, müssen diese Signale nicht erst über den Decodier-Baustein erzeugt werden. Jedes dieser an den Steuersignalausgängen 01 bis 05 anliegenden Steuersignale dient dazu einen Baustein auf der Netzwerkkarte 50 freizuschalten. Beispielsweise (s. Fig. 8) schaltet das Steuersignal 92 den Datenpuffer 95 frei.
- Wenn bei Schritt S1204 der Pal-Baustein 104 erkennt, daß das empfangene Adreßsignal nicht mit einem bekannten Steuersignalen übereinstimmt, geht man zu Schritt S1205. Zur Verdeutlichung: Stimmt ein empfangenes Adreßsignal nicht mit einem bekannten Steuersignal überein, handelt es sich um Decodierungs-Signale, die entsprechend der oben gezeigten Tabelle durch PAL-Baustein 104 ausgegeben wird. Anschließend entschlüsselt ein Decodier-Baustein (beispielsweise Decodierer 106) die Eingangssignale und gibt die Steuersignale aus. Beispielsweise entschlüsselt in Fig. 9(b) Decodierer 106 die von PAL-Baustein 104 ausgegebenen binär codierten Signale und erzeugt an seinem Ausgang die Steuersignale 06 bis 13, wie bei Schritt S1207 angezeigt. Ebenso wie die Steuersignale 01 bis 05 sprechen auch die Signale 06 bis 13 jeweils einen Baustein auf der Netzwerkkarte 50 zur Freigabe an. Nach dem Entschlüsselungsvorgang wird der Ablauf beendet.
- Bezugnehmend auf Fig. 8 koordiniert das Gate-Array 66 sämtliche Zugriffe auf das gemeinsame RAM 67. Insbesondere ermöglicht das Gate-Array 66, Graphikdaten der Hauptkarte 24 in das gemeinsames RAM 67 über den Graphikbus 30 ein- und auszulesen. Ebenso können Graphikdaten des Mikroprozessors 52 in das gemeinsames RAM 67 über den Adreßbus 70 bzw. den Datenbus 71 ein- und ausgelesen werden. Das Gate-Array 66 läßt eine eindeutige Entscheidung darüber zu, daß zu einem bestimmten Zeitpunkt entweder Hauptkarte 24 oder Mikroprozessor 52 Zugriff auf den gemeinsames RAM nehmen kann.
- Das Gate-Array 66 hat einen 16 Bit breiten Datenweg. Es wird über den PC-AT-Chipsatz mit 16 MHz getaktet, wenn Mikroprozessor 52 auf das Gate-Array zugreift. Da die Datenübertragung zwischen Hauptkarte 24 und gemeinsames RAM 67 über Graphikbus 30 abgewickelt wird, bedarf es keiner zusätzlichen Verarbeitungsschritte, wenn auf das gemeinsame RAM über den Graphikbus zugegriffen wird. Dieser Zugriff, sowohl für das Lesen als auch für das Schreiben wurden in Abschnitt 1.1 beschrieben.
- Das 16-Bit-Format von Gate-Array 66 entspricht nicht dem 32-Bit-Format von Mikroprozessors 52. Außerdem entspricht die Taktfrequenz von 16 MHz des Gate-Array 66 nicht der Taktfrequenz von 25 MHz des Mikroprozessors 52. Das heißt, der hier verwendete Mikroprozessor (ein Intel 80486) ist ein 32-Bit- Mikroprozessor, der auf 32-Bit Bytes in dem DRAM 57 und dem Dual-Port-RAM 59 zugreift. Damit der 32-Bit-Mikroprozessor 52 mit einer Taktfrequenz von 25 MHz auf das 16-Bit-Gate-Array mit einer Taktfrequenz von 16 MHz zugreifen kann, bedarf es spezieller Schnittstellen. Schnittstelle 54a sorgt für die Anpassung zwischen dem gemeinsamen RAM 67, dem Gate-Array 66 und dem Mikroprozessor 52.
- Die Schnittstelle 54a besteht aus dem Adreßpuffer 90 und aus dem Datenpuffer 95. Der Adreßpuffer 90 liegt zwischen dem Adreßbus 70 und dem kombinierten Adreß-/Datenbus 91, der auch mit dem Gate-Array 66 verbunden wird. Adreßpuffer 90 spricht auf das Steuersignal 94, das von der Signalsteuerungslogik 100 kommt, in der Weise an, daß, als Antwort auf die Aktivierung des Steuersignals 94, der Adreßpuffer 90 die Adreßinformation auf Adreßbus 70 auf den kombinierten Adreß-/Datenbus 91 puffert.
- Der Datenpuffer 95 liegt zwischen Datenbus 71 und dem kombinierten Adreß-/Datenbus 91. Der Datenpuffer 95 spricht auf das Steuersignal 92 in der Weise an, daß als Antwort auf die Aktivierung des Steuersignals 92 der Datenpuffer 95 die Dateninformation auf dem Datenbus 91 vom oder zum (in Abhängigkeit davon, ob ein Lese- oder Schreibvorgang ausgeführt werden soll) kombinierten Adreß-/Datenbus 91 puffert.
- Die Taktsteuerung des Steuersignals für den Adreß- und für den Datenpuffer erfolgt über die Signalsteuerungslogik 100 auf folgende Weise: Als Antwort auf die Adreßinformation auf Adreßbus 70, die mit den Adressen des Gate-Array 66 in Beziehung steht, aktiviert die Signalsteuerungslogik 100 das Steuersignal 94 für den Adreßpuffer und veranlaßt den Adreßpuffer 90, die Adreßinformation von Adreßbus 70 auf den kombinierten Adreß- /Datenbus 91 zu puffern. Anschließend wird das Steuersignal 94 für den Adreßpuffer deaktiviert. Nun wird das Steuersignal 92 für den Datenpuffer aktiviert. Dies veranlaßt den Datenpuffer 95, die Dateninformation auf dem Datenbus 71 vom oder zum kombinierten Adreß-/Datenbus 91 zu puffern. Die Signalsteuerungslogik 100 aktiviert ein Sperrsignal 96, das an den Mikroprozessor 52 weitergeleitet wird, und den Mikroprozessor in einen Wartezustand versetzen. Dieser Zustand ist bei Lese- oder Schreibvorgängen am Gate-Array 66 erforderlich.
- Fig. 10 zeigt ein Zeitablaufdiagramm der oben beschriebenen Zustände. Im einzelnen sind: (a) die Taktfrequenz der Zentraleinheit des Mikroprozessors 52 von 25 MHz; (b) das von der Taktfrequenz der Zentraleinheit auf 16 MHz herabgesetztes Bus-Taktsignal, das die Arbeitsabläufe des Graphikbus für das Gate-Array 66 steuert; (c) ein Freigabesignal, das auf eine Freigabe des gemeinsamen Daten-/Adreßbus 91 hinweist; (d) ein Freigabesignal für den Graphikteil; (e) die Adreßinformation auf dem Adreßbus 70; (f) die Dateninformation auf dem Datenbus 71; (g) der Zustand der Signalsteuerung an Eingang CE des Datenpuffers 92; (h) der Zustand der Signalsteuerung an Eingang CE des Adreßpuffers 94; (i) der Zustand der Adreß- und Dateninformation beim kombinierten Adreß-/Datenbus 91; (j) ein Schreib-/Lese-Signal; (k) der Zustand des Sperrsignals 96, das an den Mikroprozessor 52 gesendet wird.
- Aus Fig. 10 kann man erkennen, wann eine Adreßinformation auf dem Adreßpuffer 70 einer Speicherstelle im gemeinsames RAM 67 zugeordnet ist. Als Antwort auf den Empfang eines Adreß- Freigabesignals (d) generiert die Signalsteuerungslogik 100 drei Signale: ein Adreßpuffer-Steuersignal 94, ein Sperrsignal 96 und ein Steuersignal für das Gate-Array 66. Das Sperrsignal 96 versetzt den Mikroprozessor 52 während der nachfolgenden Speicherzugriffs-Operationen in einen Wartezustand. Zwischenzeitlich veranlaßt das Steuersignal auf dem Bus 94 den Adreßpuffer 90 die Adreßinformation von Adreßbus 70 in gepufferter Form an den kombinierten Adreß-/Datenbus 91weiterzuleiten.
- Als Antwort auf eine gültige Adreßinformation auf dem kombinierten Adreß-/Datenbus 91 und bei Freigabe durch die Signalsteuerungslogik 100, greift das Gate-Array 66 auf das gemeinsame RAM 67 über Graphikdatenbus 72 und Graphikadreßbus 74 zu. Sollen aus dem gemeinsames RAM Daten ausgelesen werden, gelangen sie über das Gate-Array auf den kombinierten Adreß- /Datenbus 91. Sollen auf das gemeinsame RAM 67 Daten geschrieben werden, wartet das Gate-Array 66 über den gemeinsamen Adreß- /Datenbus 91 auf die Freigabe einer Dateninformation. Liegt diese Information vor, werden die Daten in das gemeinsames RAM 67 eingeschrieben.
- Nach Beendigung eines Taktzyklus setzt die Signalsteuerungslogik 100 das Steuersignal 94 zurück und aktiviert das Steuersignal 92. Dies bewirkt, daß beim Lesevorgang der Datenpuffer 95 die Dateninformation auf Datenbus 71 puffert und anschließend an den kombinierten Adreß-/Datenbus 91 weiterleitet. Speziell: Im Fall des Schreibens auf das gemeinsames RAM 67 wird die Dateninformation auf dem Datenbus 71 über Datenpuffer 95 in gepufferter Form auf den kombinierten Adreß-/Datenbus 91 gegeben. Anschließend leitet das Gate-Array 66 die Dateninformation über den Graphikdatenbus 72 an das gemeinsames RAM 67 weiter. Soll eine Dateninformation vom gemeinsames RAM 67 ausgelesen werden, holt sich das Gate-Array 66 die Daten über den Graphikdatenbus 72 und überträgt sie auf den kombinierten Adreß-/Datenbus 91. Der Datenpuffer 95 bereitet die Daten für den Datenbus 71 auf und leitet sie an ihn weiter.
- Nachdem Steuersignal 92 mindestens für einen volles Taktzyklus aktiv war, wird Sperrsignal 96 deaktiviert, was für den Mikroprozessor 52 bedeutet, daß der derzeitige Zugriffszyklus zum gemeinsames RAM beendet ist. Hatte der Mikroprozessor 52 auf das gemeinsames RAM 67 Daten geschrieben, ist dieser Vorgang nun abgeschlossen. Hatte der Mikroprozessor 52 Daten aus dem gemeinsames RAM 67 ausgelesen, kann er nun die erforderliche Dateninformation über den Datenbus 71 erhalten.
- Fig. 13 ist ein Flußdiagramm, das die Verfahrensschritte der Verknüpfung eines schnellen Adreßbus und eines schnellen Datenbus mit einem langsameren kombinierten Adreß-/Datenbus gemäß der vorliegenden Erfindung zeigt. Bei Schritt S1301 empfängt die Signalsteuerungslogik 100 die Adreßinformation von Adreßbus 70 und die Dateninformation von Datenbus 71. Wie schon angemerkt, wird die Adreßinformation und die Dateninformation vom Mikroprozessor 52 auf den Adreßbus 70 bzw. den Datenbus 71 ausgegeben. Bei Schritt S1302 interpretiert die Signalsteuerungslogik 100 die empfangene Adreßinformation und bestimmt, ob die Adreßinformation einer Speicherstelle im gemeinsames RAM 67 zugeordnet werden kann. Kann die Adreßinformation nicht zugeordnet werden, wird zu Schritt S1301 zurückgekehrt. Danach werden vom Adreßbus 70 und vom Datenbus 71 neue Adreß- und Dateninformationen empfangen. Kann eine Dateninformation einem Speicherplatz in gemeinsames RAM 67 zugeordnet werden, fährt man bei Schritt S1304 fort.
- Bei Schritt 1304 wird das Gate-Array über das von der Signalsteuerungslogik kommende Signal auf Leitung 92a freigegeben (s. Fig. 8). Genauer: Wie oben angeführt, interpretiert die Signalsteuerungslogik 100 die empfangene Adreßinformation zur Erzeugung eines Steuersignals; in vorliegenden Fall ein Signal auf Leitung 92a. Anschließend wird bei Schritt S1305 fortgefahren.
- Bei Schritt S1305 wird bestimmt, ob das Gate-Array 66 bereit ist, auf das gemeinsames RAM 67 zuzugreifen. Ist das Gate-Array nicht bereit, wird in einer Warteschleife (Schritt S1306) so lange verweilt, bis das Gate-Array freigegeben ist. Tritt dieser Zustand ein, wird der Adreßpuffer 90 und der Datenpuffer 95 mit dem Steuersignal auf Leitung 94 und mit dem Steuersignal auf Leitung 92 freigegeben (Schritt S1307). Wie aus Fig. 8 zu ersehen ist, werden diese Signale in Abhängigkeit von der Adreßinformation, die vom Adreßbus 70 erhalten wurde, von der Signalsteuerungslogik 100 ausgegeben.
- Wie oben schon erwähnt, puffert der Adreßpuffer 90 die Adreßinformation zwischen dem Adreßbus 70 und dem kombinierten Adreß-/Datenbus 91. Der Datenpuffer 95 puffert die Dateninformation zwischen dem Datenbus 71 und dem kombinierten Adreß-/Datenbus 91. Sind der Adreßdatenpuffer 90 und der Datenpuffer 95 freigegeben, werden die Adreß- und die Dateninformation von Adreßbus 70 bzw. von Datenbus 71 über den kombinierten Adreß-/Datenbus 91 an das Gate-Array 66 übertragen.
- Bei Schritt S1308 benutzt das Gate-Array die von Adreßpuffer 90 übermittelte Adreßinformation, um auf das gemeinsames RAM 67 zuzugreifen. Wie oben erwähnt, kann diese Information von Gate-Array 66 dazu verwendet werden, die Dateninformation auf das gemeinsames RAM 67 zu schreiben oder die Dateninformation aus dem gemeinsames RAM 67 auszulesen. Danach werden der Verarbeitungsablauf beendet.
- Die Arbeitsweise der Netzwerkkarte wird anhand des Flußdiagramms in Fig. 11 erklärt. Die hier gezeigten Verarbeitungsschritte werden vom Mikroprozessor 52 ausgeführt, indem diese Verarbeitungsschritte von der Festplatte 61 (s. Fig. 5) in das DRAM 57 geladen und anschließend von dort ausgeführt werden.
- Die Verarbeitungsschritte in Fig. 11 zeigen die Arbeitsweise einer Netzwerkkarte in einem Kopiersystem, das über einen Schnittstellenbus mit der Mehrfachsteuereinheit 20 verbunden ist. Diese Steuereinheit verfügt über eine Hauptkarte. 24, an das über den Graphikbus 29 und den Bus der Zentraleinheit 30 weitere Karten angeschlossen werden können. Wie weiter oben beschrieben, steuert die Mehrfachsteuereinheit 20 jede der angeschlossenen Karten nach dem Master-/Slave-Prinzip unter Verwendung des Bus der Zentraleinheit 29. Die Arbeitsweise der Netzwerkkarte 50, wie weiter unten beschrieben, führt Abtast- und Druckvorgänge des Kopierers durch Übertragen von Graphikdaten über den Graphikbus 30 an ein LAN aus. Ausführlicher: Über die Netzwerkschnittstelle 56 werden Anforderungen für Netzwerkdienste von dem LAN ausgeführt und beantwortet. Über die Steckverbinder 60 und 65 der Mehrfachsteuereinheit wird die Netzwerkkarte 50 mit dem Graphikbus und dem Bus der Zentraleinheit verbunden. Der Mikroprozessor 52 arbeitet im Multitasking-Betrieb, um die von der Hauptkarte 24 über den Bus der Zentraleinheit ankommenden Anforderungsbefehle für den Master-/Slave-Zugriff antworten zu können. Darüber hinaus werden Bilddaten auf den Graphikbus geschrieben oder vom Graphikbus eingelesen. Der Multitasking- Prozessor reagiert auch auf Anforderungen des LAN für Abtast- und Druckdienste und gleichzeitig werden solche Abtast- und Druckanforderung bearbeitet. Darüber hinaus können über die Netzwerkkarte 50 weitere Dienste für zusätzlich an die Mehrfachsteuereinheit 20 angeschlossenen Karten durchgeführt werden.
- Bei Schritt S1101 wird die Zentraleinheit des Mikroprozessors 52 durch Einschalten des elektrischen Stroms oder durch logisches Zurücksetzen des Rechners "hochgefahren", indem auf die Konfigurationsdatei 75 auf Festplatte 61 zugegriffen wird. Die Konfigurationsdatei kann verschiedene Möglichkeiten zur Konfiguration der Netzwerkkarte 50 (beispielsweise Speicherzuordnung, Ansprechen des Betriebssystems) vornehmen. Gewöhnlich generiert die Konfigurationsdatei 75 die Netzwerkkarte 50 als Schnittstelle zwischen dem Netzwerk und der Mehrfachsteuereinheit 20. Hier übernimmt Konfigurationsdatei 75 Aufgaben der Konfigurierung des Speichers, der Speicherplatzzuordnung für verschiedene permanent im Speicher befindliche Programme (beispielsweise Netzwerkstapel für die Nachrichtenübertragung) oder die Initialisierung und das Laden des Multitasking-Betriebssystem 76. Dieses Betriebssystem 76 erlaubt gleichzeitige Netzwerkdienste für verschiedene Netzwerkanwender.
- Bei Schritt S1102 in Fig. 11 lädt der Mikroprozessor 52 die Software zur Netzwerkübermittlung. Das heißt, der Mikroprozessor 52 lädt den Netzwerktreiber und den Multiplexer in den ihnen zugewiesenen Speicherbereich (meist der hohe Speicherbereich). Weiterhin lädt er die erforderlichen Protokollstapel, damit die Nachrichtenübertragung in der Netzwerkumgebung, in der die Netzwerkkarte 50 installiert ist, gewährleistet ist. Wurden beispielsweise eine Netzwerkumgebung der Firma Novell eingerichtet, dann lädt Mikroprozessor 52 den Protokollstapel IPX/SPX in den Speicher. Wird ein Netzwerk-Betriebssystem unter UNIX ausgeführt, lädt der Mikroprozessor 52 den Protokollstapel TCP/IP in den Speicher. Gleichgültig, ob IPX/SPX oder TCP/IP geladen werden, erfolgt das Abspeichern der Protokolle beim Hochfahren des Betriebssystems.
- Bei den Schritten 51103 und 51104 werden das Multitasking- Betriebssystem 76 und die erforderlichen Netzwerkserver (beispielsweise Druckserver 79, Abtastserver 80, Bildübertragungsserver 81 oder Bildverarbeitungsserver 82) geladen. Danach wird die Ausführung des Multitasking- Betriebssystems gestartet. Bei 1105 wartet die Netzwerkkarte 50 auf eine Anforderung für Netzwerkdienste. Bis zu dieser Anforderung bleibt die Netzwerkkarte 50 im Ruhezustand, beantwortet jedoch die von der Hauptkarte kommenden Zugriffs- Anforderungsbefehle mit einem Quittungssignal. Sobald eine Anforderung für Netzwerkdienste (vom Netzwerk oder von einem lokalen Benutzer wie einer Bedienperson des Digitalkopierers 10) empfangen wird, wird bei Schritt S1106 fortgefahren.
- Bei den Schritten 51106 und 51107 wird, nachdem eine Anforderung für den Netzwerkdienst erfolgt ist, die Anforderung bearbeitet. Ausführlicher: Bei Schritt S1106 startet der Mikroprozessor 52 die Ausführung des entsprechenden Netzwerkservers. Tritt beispielsweise eine Anforderung für Druckerdienste auf, startet der Mikroprozessor 52 die Ausführung des Druckservers 79. Werden Abtastdienste angefordert, startet der Mikroprozessor die Ausführung vom Server 80. Die Server für die Bildübertragung 81 bzw. für die Bildverarbeitung 82 werden beim Anfordern von Bildübertragungs- oder Bildbearbeitungsdiensten zur Verfügung gestellt.
- Bei Schritt S1107 fährt der Mikroprozessor mit der Ausführung der angeforderten Server fort. Anschließend wird, wegen des durch das Betriebssystem 76 zur Verfügung gestellten Multitasking-Betriebs, zu Schritt S1105 zurückgekehrt, um auf weitere Anforderungen für Netzwerkdienste zu warten. In der Zwischenzeit werden die Dienste bei Schritt S1107 weiterverarbeitet, bis sie beendet sind. Sollten weitere Anforderungen empfangen werden, startet der Mikroprozessor 52, aufgrund des Multitasking-Betriebs die Ausführung des entsprechenden Servers (Schritt S1106) und beginnt mit der Verarbeitung der Anforderung (Schritt S1107). Gleichzeitige Netzwerkverarbeitung der von der Netzwerkkarte unterstützten Einheiten wird ausgeführt.
- Die Erfindung wurde als anschauliches Ausführungsbeispiel beschrieben. Es sollte verständlich sein, daß die vorliegende Erfindung sich nicht auf das oben beschriebene Ausführungsbeispiel beschränkt. Es können unterschiedliche Änderungen oder Modifikationen vorgenommen werden, ohne das Gebiet der vorliegenden Erfindung zu verlassen.
Claims (14)
1. Zugriffsvorrichtung für einen gemeinsamen RAM (67) über
einen Adressenbus (70) und über einen Datenbus (71), die beide
eine Schnittstelle zu einem langsameren Adressen-/Datenbus (91)
haben, mit dem der gemeinsame RAM (67) verbunden ist, mit:
einem mit dem Adressenbus (70) und dem Adressen-/Datenbus
(91) verbundenen Adressenpuffer (90) zum Puffern von
Adresseninformationen zwischen dem Adressenbus und dem Adressen-
/Datenbus;
einem zwischen den Datenbus (71) und den Adressen-/Datenbus
(91) geschalteten Datenpuffer (95) zum Puffern von
Dateninformationen zwischen dem Datenbus (71) und dem Adressen-
/Datenbus (91);
einem mit dem Adressenbus (70) und mit dem Datenbus (71)
verbundenen Mikroprozessor (52), der betriebsbereit ist zur
Ausgabe von Adresseninformationen auf den Adressenbus (70), um
auf den gemeinsamen RAM (67) zuzugreifen, wobei die
Adresseninformation den Adressendes gemeinsamen RAM (67)
entspricht;
einem Gate-Array (66), das mit dem Adressen-/Datenbus (91)
verbunden ist, um den Zugriff auf den gemeinsamen RAM (67) zu
steuern; und mit
einer Logikschaltung (100), die mit dem Adressenbus (70)
verbünden ist, um die Adresseninformation zu empfangen, die der
Mikroprozessor (52) auf den Adressenbus(70)ausgibt, und um
Steuersignale zum Steuern des Zugriffs vom gemeinsamen RAM(67)
durch den Mikrokontroller auszugeben;
dadurch gekennzeichnet, daß
der Adressenpuffer (90) betriebsbereit ist zum auswählbaren
Puffern der Adresseninformation unter Steuerung eines
Adressenpuffer-Auswahlsignals (94);
der Datenpuffer (95) betriebsbereit ist zum auswählbaren
Puffern der Dateninformation und der Steuerung eines
Datenpuffer-Auswahlsignals (92); und daß
die Logikschaltung (100) betriebsbereit ist, als Reaktion
auf die Adresseninformation auf dem Adressenbus (70), der einer
Adresse des gemeinsamen RAM (67) entspricht, (i) zum Aktivieren
des Adressenpuffer-Auswahlsignals (94), um so den Adressenpuffer
(90) zu veranlassen, die Adresseninformationen aus dem
Adressenbus (70) auf dem Adressen-/Datenbus (91) zu puffern; und
danach (ii) das Adressenpuffer-Auswahlsignal (94) zu
deaktivieren und das Datenpuffer-Auswahlsignal (92) zu
aktivieren, um den Datenpuffer (95) zu veranlassen,
Dateninformationen aus dem oder in den Adressen-/Datenbus (91)
zu puffern.
2. Vorrichtung nach Anspruch 1, die des weiteren ausgestattet
ist mit einem zweiten RAM (59), der ebenfalls mit dem
Adressenbus (70) und dem Datenbus (71)verbunden ist, und wobei
die Logikschaltung (100) betriebsbereit ist, als Reaktion auf
Adresseninformationen auf dem Adressenbus, die dem zweiten RAM
(59) entsprechen, ein RAM (59)-Auswahlsignal zur aktivieren.
3. Vorrichtung nach Anspruch 1 oder 2, bei der der
Mikroprozessor (52) betriebsbereit ist, auf ein Nicht-Fertig-
Signal (96) durch Einfügen von Wartezuständen zu antworten, und
wobei die Logikschaltung (100) betriebsbereit ist, das Nicht-
Fertig-Signal (96) zu aktivieren, wenn es das Adressenpuffer-
Auswahlsignal (94) aktiviert, und betriebsbereit ist zum
Deaktivieren des Nicht-Fertig-Signals (96), nachdem das
Pufferdaten-Auswahlsignal (92) für wenigstens einen
Mikroprozessor-Taktzyklus aktiviert worden ist.
4. Vorrichtung nach einem der Ansprüche 1 bis 3, bei der das
Takten des Mikroprozessors (52) mit einer ersten Taktrate und
des Gate-Arrays (66) mit einer zweiten, niedrigeren Taktrate
erfolgt.
5. Vorrichtung nach Anspruch 4, bei der der erste RAM (67) über
16-Bit-Bytes und der zweite RAM (59) über 32-Bit-Bytes verfügt.
6. Vorrichtung nach einem der Ansprüche 1 bis 5, bei der der
gemeinsame RAM (67) über einen Video-RAM verfügt und bei der das
Gate-Array (66) ein Entscheidungssteuermittel enthält, um den
Zugriff auf den gemeinsamen RAM (67) zwischen dem Videobus (30)
und dem Mikroprozessor (52) zu entscheiden.
7. Netzwerkeinrichtung, bei der ein Periphergerät (10) an ein
Lokalbereichsnetz angeschlossen ist, das nachstehend mit "LAN"
bezeichnet ist, mit:
einer Hauptplatine (24), die mit einer ersten Frequenz
arbeitet und die an die Periphereinrichtung und an einen
gemeinsamen RAM (67) ankoppelbar ist; und mit
einer Netzwerkschnittstellenplatine (50), die mit einer
zweiten Frequenz arbeitet, die höher ist als die erste Frequenz,
und die ankoppelbar ist an das LAN und an die Hauptplatine (24)
über den gemeinsamen RAM (67), und wobei die
Netzwerkschnittstellenplatine (50) über eine Einrichtung nach
einem der Ansprüche 1 bis 6 verfügt, um auf den gemeinsamen RAM
(67) zur Übertragung peripherer Daten zwischen dem LAN und der
peripheren Einrichtung (10) zuzugreifen.
8. Einrichtung nach Anspruch 7, bei der die Hauptplatine und
die Netzwerkschnittstellenplatine in einer
Mehrfacheinrichtungssteuerung (20) untergebracht sind.
9. Verfahren, durch das ein Mikroprozessor (52) über einen
Adressenbus (70) und über einen Datenbus (71) auf einen
gemeinsamen RAM (67) zugreift, von denen beide an einen
langsameren Adressen-/Datenbus (91) angeschlossen sind, mit dem
der gemeinsame RAM (67) verbunden ist, mit den
Verfahrensschritten:
Empfangen von Adresseninformationen aus dem Adressenbus
(S1301), wobei die Adresseninformationen auf den Adressenbus
abgegebene Ausgangssignale vom Mikroprozessor (52) sind;
Ausgeben eines Chipaktivierungssignals, das dann, wenn die
im Verfahrenschritt des Empfangens empfangene
Adresseninformation zu einer Adresse im gemeinsamen RAM paßt
(S1304), eine Aktivierung eines Gate-Arrays (66) erfolgt, das
dem Zugriff auf den gemeinsamen RAM (67) dient; und
Zugreifen auf den gemeinsamen RAM (67) unter Verwendung des
aktivierten Gate-Arrays (66);
dadurch gekennzeichnet, daß der Verfahrensschritt des
Zugreifens die Schritte umfaßt:
Aktivieren eines Adressenpuffer-Auswahlsignals (94) und
eines Datenpuffer-Auswahlsignals (92), wenn die im
Verfahrensschritt des Empfangens empfangenen
Adresseninformationen zu einer Adresse im gemeinsamen RAM (67),
dem Adressenpuffer-Auswahlsignal zum Aktivieren eines
Adressenpuffers (90) und dem Datenpuffer-Auswahlsignal zum
Aktivieren eines Datenpuffers (95) passen;
Puffern von Adresseninformationen aus dem Adressenbus an den
Adressen-/Datenbus über den Adressenpuffer und Puffern von
Dateninformationen zwischen dem Datenbus und dem Adressen-
/Datenbus über den Datenpuffer (51308); und
Zugreifen auf den gemeinsamen RAM gemäß der im
Verfahrenschritt des Puffers gepufferten Adresseninformation.
10. Verfahren nach Anspruch 9, bei dem der Verfahrenschritt des
Aktivierens das Aktivieren des Adressenpuffer-Auswahlsignals
(94) als Reaktion auf die Adresse von einem zweiten RAM (59) auf
dem Adressenbus (70) umfaßt.
11. Verfahren nach Anspruch 9 oder 10, mit den weiteren
Verfahrenschritten: Einfügen von Wartezuständen als Reaktion auf
ein Nicht-Fertig-Signal (96); und
Aktivieren des Nicht-Fertig-Signals (96) dann, wenn das
Adressenpuffer-Auswahlsignal aktiviert ist (S1305, S1306); und
Deaktivieren des Nicht-Fertig-Signals dann, wenn das
Datenpuffer-Auswahlsignal für wenigstens einen
Mikroprozessortakt aktiviert worden ist.
12. Verfahren nach einem der Ansprüche 9 bis 11, bei dem der
gemeinsame RAM über einen Video-RAM (67) verfügt, mit den
Verfahrenschritten: Zugreifen auf den gemeinsamen RAM (67) über
einen Videobus (30), Steuern des Mikroprozessors (52) über das
Gate-Array (66), und Zugreifen auf den gemeinsamen RAM (67)
zwischen dem Videobus (30) und dem Mikroprozessor (52).
13. Speichermedium, das pozessorausführbare Befehle zum Steuern
eines Prozessors zum Ausführen des Verfahrens nach einem der
Ansprüche 9 bis 12 steuert, wenn die Befehle in den Prozessor
geladen sind.
14. Prozessorausführbares Befehlsprodukt zum Steuern eines
Prozessors zum Ausführen des Verfahrens nach einem der Ansprüche
9 bis 12, wenn das Befehlsprodukt auf dem Prozessor läuft.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/409,035 US5600804A (en) | 1995-03-23 | 1995-03-23 | Shared RAM access arrangement |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69615597D1 DE69615597D1 (de) | 2001-11-08 |
DE69615597T2 true DE69615597T2 (de) | 2002-07-11 |
Family
ID=23618789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69615597T Expired - Fee Related DE69615597T2 (de) | 1995-03-23 | 1996-03-22 | Zugriffsvorrichtung für gemeinsamen Speicher |
Country Status (4)
Country | Link |
---|---|
US (1) | US5600804A (de) |
EP (1) | EP0733980B1 (de) |
JP (1) | JPH08335197A (de) |
DE (1) | DE69615597T2 (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0733976A1 (de) * | 1995-03-23 | 1996-09-25 | Canon Kabushiki Kaisha | Chipauswahlsignalgenerator |
US5748871A (en) * | 1995-08-11 | 1998-05-05 | Symbios Logic Inc. | Dual bus architecture for a storage device |
EP1026595B1 (de) | 1999-01-11 | 2008-07-23 | STMicroelectronics Limited | Speicherschnittstellenvorrichtung und Verfahren zum Speicherzugriff |
GB2348717B (en) | 1999-01-11 | 2003-08-06 | Sgs Thomson Microelectronics | Data flow control circuitry |
US7376956B2 (en) * | 2002-09-10 | 2008-05-20 | Toshiba Tec Kabushiki Kaisha | System for performing multiple functions in parallel time |
KR100497387B1 (ko) * | 2003-02-20 | 2005-06-23 | 삼성전자주식회사 | 컬러 화상 형성 방법 및 장치 |
US8061237B2 (en) * | 2005-10-26 | 2011-11-22 | The Gillette Company | Manufacturing razor blades |
WO2016081192A1 (en) | 2014-11-20 | 2016-05-26 | Rambus Inc. | Memory systems and methods for improved power management |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4075620A (en) * | 1976-04-29 | 1978-02-21 | Gte Sylvania Incorporated | Video display system |
US4112490A (en) * | 1976-11-24 | 1978-09-05 | Intel Corporation | Data transfer control apparatus and method |
US5426731A (en) * | 1990-11-09 | 1995-06-20 | Fuji Photo Film Co., Ltd. | Apparatus for processing signals representative of a computer graphics image and a real image |
US5327156A (en) * | 1990-11-09 | 1994-07-05 | Fuji Photo Film Co., Ltd. | Apparatus for processing signals representative of a computer graphics image and a real image including storing processed signals back into internal memory |
US5241631A (en) * | 1991-08-23 | 1993-08-31 | Nec Technologies, Inc. | Personal computer having a local bus interface to a video circuit |
US5369748A (en) * | 1991-08-23 | 1994-11-29 | Nexgen Microsystems | Bus arbitration in a dual-bus architecture where one bus has relatively high latency |
US5485594A (en) * | 1992-07-17 | 1996-01-16 | International Business Machines Corporation | Apparatus and method using an atomic fetch and add for establishing temporary ownership of a common system resource in a multiprocessor data processing system |
US5369248A (en) * | 1992-09-01 | 1994-11-29 | Gaz De France | Electro-weldable connecting piece having connection terminals and its method of manufacture |
-
1995
- 1995-03-23 US US08/409,035 patent/US5600804A/en not_active Expired - Fee Related
-
1996
- 1996-03-22 DE DE69615597T patent/DE69615597T2/de not_active Expired - Fee Related
- 1996-03-22 EP EP96301993A patent/EP0733980B1/de not_active Expired - Lifetime
- 1996-03-25 JP JP8068761A patent/JPH08335197A/ja not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
EP0733980B1 (de) | 2001-10-04 |
EP0733980A1 (de) | 1996-09-25 |
JPH08335197A (ja) | 1996-12-17 |
DE69615597D1 (de) | 2001-11-08 |
US5600804A (en) | 1997-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69616119T2 (de) | Netzwerkschnittstellenkarte für digitales Kopiergerät | |
DE69317698T2 (de) | Verfahren zum Übersetzen eines Vielzahl von Drucker-Seiten-beschreibende Sprachen | |
DE69521256T2 (de) | Verfahren zur Verwaltung der Speicherzuweisung in einem Druckersystem | |
DE69229992T2 (de) | Ein-/Ausgabe Zusatzprozessor für einen Drucker | |
DE69827747T2 (de) | Druckersystem und Übertragungsvorrichtung um Druckersteuerungsprogramm zu übertragen | |
DE69516634T2 (de) | Intelligente Wiederprogrammierung eines Flash-Speichers | |
DE68928311T2 (de) | Fern-Urlader | |
DE69529451T2 (de) | Automatische Erkennung einer Netzwerk-Hardware-Verbindung | |
DE69526794T2 (de) | Virtueller drucker | |
DE69520819T2 (de) | Verringerung von Buszugriffskonflikten in gemeinsamem Speicher | |
DE69823078T2 (de) | System und Verfahren zur Verwaltung von Arbeitsgruppendruckern | |
DE69629433T2 (de) | Protokollrekonfigurierung in einem Netzschnittstellengerät | |
DE69327746T2 (de) | Vorrichtung und Methode für das Aufgliedern einer Arbeitanweisung in einem Duckersystem | |
DE4208924B4 (de) | Verfahren zur Kommunikation zwischen Prozessoren und Parallelverarbeitungscomputer hierfür | |
DE69623077T2 (de) | Gerät und Verfahren zur Programmierung eines Druckauftrags mit einem Auftragsticket aus einem entfernten Speicherbereich | |
DE69227522T2 (de) | Kassette für eine elektronische vorrichtung | |
DE69020220T2 (de) | Direktspeicherzugriff zwischen unterschiedlichen Bussystemen mit Cachespeicherübereinstimmung. | |
DE69813976T2 (de) | Datenübertragungssteuerverfahren und Vorrichtung und Datenübertragungssystem | |
DE69826930T2 (de) | System und Verfahren zur wirksamen Fernplatte Ein-/Ausgabe | |
DE69836426T2 (de) | Steuergerät für einen universellen seriellen Bus | |
DE69627071T2 (de) | Verfahren und Gerät, um automatisch ereignisabhängige Information zu einem Benutzer eines Netzdruckersystems zu senden | |
DE68925866T2 (de) | Computersystem mit Verarbeitungsrechner | |
DE69230954T2 (de) | Modulare Schnittstelle und Verfahren hierfür | |
US6018787A (en) | System for generating chip select signals based on coded and uncoded address signals | |
DE69321398T2 (de) | Datenverarbeitungssystem und Ausgangseinheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |