-
HINTERGRUND
DER ERFINDUNG
-
Die
vorliegende Erfindung betrifft eine Prioritätszuweisungseinheit, einen
Kanal und ein Verfahren zur Zuweisung von Prioritäten für Zugriffe
auf einen gemeinsam genutzten Speicher.
-
Ein
elektrisches oder elektronisches System kann Funktionseinheiten
umfassen, welche Daten ausgeben, die in eine beliebige Art Speicher
geschrieben werden müssen.
Für die
Ausgabedaten der verschiedenen Funktionseinheiten kann es unterschiedliche
Latenzzeitanforderungen geben. Darüber hinaus können die
Funktionseinheiten verschiedene Bandbreiten von Ausgabedaten erzeugen.
Alternativ oder zusätzlich
kann das System Funktionseinheiten umfassen, welche mit Eingabedaten
versorgt werden müssen,
die von einer beliebigen Art Speicher gelesen werden müssen. Bei
manchen dieser Funktionseinheiten kann ein Lesezugriff mit kurzer
Latenzzeit erforderlich sein. Bei anderen Funktionseinheiten kann
eine lange Latenzzeit zulässig sein.
Manche Funktionseinheiten erfordern möglicherweise eine große Bandbreite
für die
Lesedaten, während
bei anderen eine geringe Bandbreite ausreichend sein kann.
-
Um
den Anforderungen seitens der verschiedenen Funktionseinheiten gerecht
zu werden, kann ein elektrisches oder elektronisches System mit
mindestens zwei verschiedenen Speichern bereitgestellt werden. Diese
Lösung
ist jedoch nicht sehr effizient.
-
In
der US-Patentanmeldung US 2002/0046261 wird eine Speichersteuereinheit
mit einer Zeitmultiplex-Schnittstelle zu Datenquellen und -zielen
und einer Streaming-Schnittstelle
zu einem Speicher beschrieben. Jede Quelle und jedes Ziel wird durch
einen kontextabhängigen
Code gekennzeichnet. Eine Prioritätszuweisungseinheit ermittelt den
Kontext mit der dringendsten Anforderung nach einem Speicherzugriff.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Eine
Aufgabe der Erfindung besteht darin, eine verbesserte Prioritätszuweisung
zur Steuerung von Zugriffen auf einen gemeinsam genutzten Speicher
eines Testkanals einer automatischen Testapparatur bereitzustellen.
Die Aufgabe wird durch die Hauptansprüche gelöst. Bevorzugte Ausführungsarten
werden durch die Unteransprüche
dargestellt.
-
Die
Prioritätszuweisungseinheit
gemäß einer Ausführungsart
der vorliegenden Erfindung ist zur Steuerung von Zugriffen auf einen
gemeinsam genutzten Speicher eingerichtet. Die Prioritätszuweisungseinheit
umfasst einen Satz Schnittstellen, die eine Vielzahl von Einheiten
mit der Prioritätszuweisungseinheit
verbinden. Abgehende Datenströme werden
von der Prioritätszuweisungseinheit über entsprechende
der Schnittstellen an mindestens eine der Einheiten übertragen,
und ankommende Datenströme
werden von mindestens einer der Einheiten über entsprechende der Schnittstellen
an die Prioritätszuweisungseinheit übertragen.
Die Prioritätszuweisungseinheit
umfasst ferner eine Steuerlogik, die mit jeder der Schnittstellen
verbunden ist. Die Steuerlogik ist dafür eingerichtet, Schreibdaten
von ankommenden Datenströmen
zu segmentieren, um Schreibzugriffe auf den gemeinsam genutzten
Speicher zu organisieren, eine Folge von mindestens Schreibzugriffen
oder Lesezugriffen auf den gemeinsam genutzten Speicher zeitlich
einzuordnen (scheduling) und die während der Lesezugriffe erhaltenen Lesedaten
auf abgehende Datenströme
zu verteilen.
-
Die
Prioritätszuweisungseinheit
kann z.B. einen Strom von Schreibdaten von einer der Einheiten empfangen.
Ein über
eine der Schnittstellen empfangener Schreibdatenblock wird in eine
Vielzahl kleinerer Datenpakete aufgeteilt, wobei die Datenpakete
so groß sind,
dass sie während
eines einzigen Schreibzugriffs in den gemeinsam genutzten Speicher
geschrieben werden können.
Außerdem
muss die Prioritätszuweisungseinheit
möglicherweise
Leseanforderungen bearbeiten, die durch eine oder mehrere der Einheiten
ausgegeben werden. Entsprechend den Leseanforderungen kann die Prioritätszuweisungseinheit
Lesezugriffe auf den gemeinsam genutzten Speicher ausführen. Die
Prioritätszuweisungseinheit
ordnet eine Folge von mindestens Schreibzugriffen oder Lesezugriffen
auf den gemeinsam genutzten Speicher zeitlich ein, wobei unter „zeitlich
einordnen" (scheduling)
das Festlegen der zeitlichen Reihenfolge der Schreib- und Lesezugriffe zu
verstehen ist. Die während
der Lesezugriffe vom Speicher abgerufenen Daten können wieder
zu Datenblöcken
zusammengesetzt werden. Die Datenblöcke können über eine der Schnittstellen
an eine entsprechende Einheit übertragen
werden, um die Leseanforderung der Einheit zu erfüllen.
-
Die
Prioritätszuweisungseinheit
gemäß einer Ausführungsart
der vorliegenden Erfindung kann in vielerlei Hinsicht an die Eigenschaften
der Einheiten angepasst werden. Den seitens der Einheiten gestellten
Anforderungen kann z.B. durch die zeitliche Einordnung der Speicherzugriffe
entsprechend Rechnung getragen werden. Die Prioritätszuweisungseinheit
kann die zeitliche Reihenfolge der Speicherzugriffe in Abhängigkeit
von den geforderten Eigenschaften der ankommenden oder abgehenden Datenströme, d.h.
in Abhängigkeit
von der für
einen bestimmten Datenstrom geforderten Bandbreite oder Latenzzeit,
wählen.
Zum Beispiel muss ein Lesezugriff mit kurzer Latenzzeit möglicherweise
sofort ausgeführt
werden. Zum Ausführen
eines Schreibzugriffs mit hohem Datendurchsatz ist es möglicherweise
erforderlich, eine Reihe aufeinander folgender Schreibzugriffe auszuführen.
-
Um
Speicherzugriffe mit kurzer Latenzzeit zu ermöglichen, darf jeder einzelne
Lese- oder Schreibzugriff
nicht zu lange dauern. Die Größe der während eines
einzigen Schreibzugriffes übertragenen
Datenpakete wird so gewählt,
dass Latenzzeit und Datendurchsatz aufeinander abgestimmt sind.
-
Gemäß einer
bevorzugten Ausführungsart der
Erfindung umfassen eine oder mehrere der Schnittstellen Puffer zum
Puffern mindestens der ankommenden oder abgehenden Datenströme. Vorzugsweise
werden die Puffer als FIFO-Puffer (First In First OUT, Silospeicher)
organisiert. Zum Beispiel können
in einem Puffer, der einer bestimmten Schnittstelle entspricht, über diese
Schnittstelle empfangene Schreibdaten gepuffert werden. Die Schreibdaten
können
selbst dann sofort empfangen werden, wenn der entsprechende Schreibzugriff
nicht sofort ausgeführt
werden kann. Wenn eine Leseanforderung bearbeitet wird, können desgleichen
die vom Speicher abgerufenen Lesedaten in einem Puffer gepuffert
werden, um einen kontinuierlichen Datenstrom an die entsprechende
Einheit sicherzustellen, welche die Daten angefordert hat.
-
Bei
einer anderen Ausführungsart
der vorliegenden Erfindung ist jede der Schnittstellen mit einer entsprechenden
der Funktionseinheiten verbunden. Somit ist jede der Schnittstellen
einer bestimmten der Funktionseinheiten zugewiesen, und die entsprechenden
Eigenschaften der Funktionseinheit können berücksichtigt werden. Ankommende
Datenströme, die
von einer bestimmten Funktionseinheit über die Schnittstelle empfangen
werden, können
entsprechend den durch die Funktionseinheit gestellten Anforderungen
verarbeitet werden. Desgleichen werden abgehende Datenströme über die
Schnittstelle an eine bestimmte Funktionseinheit weitergeleitet und
können
entsprechend den Anforderungen der Funktionseinheit verarbeitet
werden.
-
Gemäß einer
anderen bevorzugten Ausführungsart
der Erfindung senden eine oder mehrere der Einheiten Leseanforderungen
an die Prioritätszuweisungseinheit,
wobei mindestens einige der Leseanforderungen eine Startadresse
und eine Größe eines Datenblocks
angeben, der vom gemeinsam genutzten Speicher gelesen werden soll.
Desgleichen können
eine oder mehrere der Funktionseinheiten Schreibanforderungen an
die Prioritätszuweisungseinheit
senden, bevor ein entsprechender Strom von Schreibdaten von der
entsprechenden Funktionseinheit an die Prioritätszuweisungseinheit gesendet wird,
wobei mindestens eine der Schreibanforderungen die Größe des Blocks
der Schreibdaten und eine Startadresse angeben kann. Die Prioritätszuweisungseinheit
wandelt jede der Lese- oder Schreibanforderungen in eine Anzahl
entsprechender Lese- oder Schreibzugriffe um. Sobald die Prioritätszuweisungseinheit
eine entsprechende Leseanforderung oder Schreibanforderung empfangen
hat, kann sie mit der zeitlichen Einordnung der entsprechenden Lese-
oder Schreibzugriffe beginnen. Diese eine bestimmte Zeit lang vorher
empfangenen Anforderungen unterstützen die Erzeugung einer optimierten Folge
von Lese- und Schreibzugriffen.
-
Gemäß einer
anderen bevorzugten Ausführungsart
der Erfindung werden die Lese- und Schreibzugriffe
auf den gemeinsam genutzten Speicher gemäß den Prioritäten zeitlich
eingeordnet, die mindestens einigen Schnittstellen der Prioritätszuweisungseinheit
oder mindestens einigen der ankommenden und abgehenden Datenströme zugewiesen
sind. Die zeitliche Reihenfolge der Lese- und Schreibzugriffe wird
durch die Steuerlogik der Prioritätszuweisungseinheit festgelegt.
Wenn einem ankommenden Datenstrom eine hohe Priorität zugewiesen
wird, werden die diesem ankommenden Datenstrom entsprechenden Schreibzugriffe
schneller als andere Lese- und Schreibzugriffe bearbeitet. Wenn
eine sehr hohe Priorität
vorliegt, können
die dem ankommenden Datenstrom entsprechenden Schreibzugriffe sogar
sofort an die Reihe kommen. Wenn eine Leseanforderung mit hoher
Priorität
empfangen wird, werden die entsprechenden Lesezugriffe bevorzugt
ausgeführt,
während
Schreib- und Lesezugriffe mit niedriger Priorität warten müssen. Erst wenn die Zugriffe
mit hoher Priorität
bearbeitet worden sind, kommen die Zugriffe mit niedriger Priorität an die
Reihe.
-
Wenn
ein ankommender oder abgehender Datenstrom mit kurzer Latenzzeit
verarbeitet werden muss, wird diesem Datenstrom vorzugsweise eine entsprechend
hohe Priorität
zugewiesen. Durch das Zuweisen einer hohen Priorität kann erreicht
werden, dass die entsprechenden Lese- oder Schreibzugriffe schneller
als andere Lese- und Schreibzugriffe ausgeführt werden. Auf diese Weise
kann ein Speicherzugriff mit kurzer Latenzzeit erfolgen. Somit erlaubt die
Steuerlogik der Prioritätszuweisungseinheit
die Erfüllung
von Latenzzeitanforderungen unterschiedlicher Art seitens der Funktionseinheiten.
-
Gemäß einer
anderen bevorzugten Ausführungsart
werden die Prioritäten
so geändert,
dass die Anzahl der Wechsel zwischen Lese- und Schreibzugriffen
so gering wie möglich
bleibt. Bei jedem Wechsel tritt eine zusätzliche Verzögerung ein.
Um solche zusätzlichen
Verzögerungen
zu vermeiden, wird vorzugsweise zuerst eine Gruppe von Schreibzugriffen, dann
eine Gruppe von Lesezugriffen usw. bearbeitet. Wenn gerade ein Lesezugriff
bearbeitet wird, ist es besonders günstig, wenn der nachfolgende
Speicherzugriff ebenfalls ein Lesezugriff ist. Das kann z.B. dadurch
erreicht werden, dass die Prioritäten der Leseanforderungen erhöht werden,
während
die Prioritäten
der Schreibzugriffe unverändert
bleiben. Wenn hingegen gerade ein Schreibzugriff ausgeführt wird,
ist es besonders günstig,
als Nächstes
eine Schreibanforderung zu bearbeiten. In diesem Fall können z.B.
die den Schreibanforderungen zugewiesenen Prioritäten erhöht werden,
während
die Prioritäten
der Leseanforderungen unverändert
bleiben.
-
Gemäß einer
anderen Ausführungsart
werden die den Leseanforderungen und den Schreibanforderungen zugewiesenen
Prioritäten
so geändert, dass
eine kontinuierliche Datenübertragung
unterstützt
wird. Wenn mehrere Speicherzugriffe bearbeitet werden müssen, die
für benachbarte
Adressbereiche gelten, sollten die Speicherzugriffe vorzugsweise direkt
nacheinander ausgeführt
werden, um zeitliche Verzögerungen
durch Neuadressierung zu vermeiden. Wenn also ein Speicherzugriff
bearbeitet wird, der sich auf einen bestimmten Adressbereich bezieht,
werden deshalb die Prioritäten
für Speicherzugriffe
erhöht,
die sich auf benachbarte Adressbereiche beziehen, sodass diese Speicherzugriffe
folglich höchstwahrscheinlich
als nächste
ausgeführt
werden. Dies führt
dazu, dass eine ununterbrochene Datenübertragung unterstützt und
die Anzahl der zusätzlichen
Verzögerungen
infolge der Neuadressierung so gering wie möglich gehalten wird.
-
Gemäß einer
anderen bevorzugten Ausführungsart
wird die einer bestimmten Schnittstelle zugewiesene Priorität in Abhängigkeit
vom Füllungsgrad
des der Schnittstelle entsprechenden Puffers geändert. Je stärker der
Füllungsgrad
des Puffers zunimmt, desto höher
wird die Priorität
des entsprechenden Datenstroms. Durch Erhöhung der Priorität des gepufferten
Datenstroms in Abhängigkeit
vom Füllungsgrad
kann erreicht werden, dass die dem Datenstrom entsprechenden Speicherzugriffe
auf bevorzugte Weise zeitlich eingeordnet werden. Das hat zur Folge,
dass der Füllungsgrad
des entsprechenden Puffers abnimmt und ein Überlauf verhindert werden kann.
-
Bei
einer bevorzugten Ausführungsart
der Erfindung wird die Prioritätszuweisungseinheit
in einem Kanal einer automatisierten Testapparatur (Automated Test
Equipment, ATE) verwendet. Der Kanal ist für mindestens eine der folgenden
Aktivitäten
zuständig:
Liefern von Auslösedaten
an mindestens eine zu testende Einheit (Device Under Test, DUT) und
Empfangen von Antwortdaten von der mindestens einen DUT. Die Prioritätszuweisungseinheit
des Kanals ist für
die Koordinierung der Speicherzugriffe auf einen gemeinsam genutzten
Speicher zuständig. Der
gemeinsam genutzte Speicher kann z.B. zum Speichern von Anweisungen
und/oder Ablaufsteuerdaten eingerichtet sein. Die Anweisungen und
die Ablaufsteuerdaten können
zum Erzeugen eines Stroms von Testdaten genutzt werden. Der gemeinsam
genutzte Speicher kann ebenso zum Speichern von Ergebnisdaten genutzt
werden, die durch Auswertung der von der mindestens einen DUT empfangenen
Antwortdaten erhalten wurden.
-
Bei
Lösungen
nach dem Stand der Technik beinhaltet ein Kanal einer automatisierten
Testapparatur mindestens zwei verschiedene Speicher, einen SRAM
mit kurzer Latenzzeit zum Bereitstellen eines Anweisungsstroms für eine Ablaufsteuereinheit
und einen DRAM mit langer Latenzzeit zum Speichern von Ablaufsteuerdaten
sowie Ergebnisdaten. Durch die Verwendung von zwei verschiedenen
Speichern mit völlig
unterschiedlichen Eigenschaften war es möglich, die Anforderungen der
Funktionseinheiten des Kanals an die Latenzzeit und die Bandbreite
zu erfüllen.
-
Gemäß einer
Ausführungsart
der vorliegenden Erfindung werden die mindestens zwei verschiedenen
Speicher durch einen gemeinsam genutzten Speicher ersetzt, der durch
eine Prioritätszuweisungseinheit
gesteuert wird. Der gemeinsam genutzte Speicher kann z.B. zum Speichern
mindestens von Anweisungen, Vektordaten oder Ergebnisdaten verwendet
werden. Somit vereinfacht sich die Struktur des Kanals. Ein Kanal
gemäß einer
Ausführungsart der
vorliegenden Erfindung ist preiswerter und kleiner als ein Kanal
nach dem Stand der Technik.
-
Vorzugsweise
umfassen die Einheiten des Kanals mindestens eine Ablaufsteuerung,
eine Ergebnisverarbeitungseinheit, ein Schnittstellenmodul oder
einen Mikroprozessorkern. Die Ablaufsteuereinheit liest Anweisungen
und Ablaufsteuerdaten aus dem gemeinsam genutzten Speicher und erzeugt
einen Strom von Ausgabedaten, die z.B. auf einen Steuerpfad und/oder
Empfangspfad des Kanals übertragen
werden können.
Die Ergebnisverarbeitungseinheit ist für die Auswertung der von der
mindestens einen DUT empfangenen Antwortdaten zuständig. Die
Ergebnisverarbeitungseinheit kann einen Strom von Ergebnisdaten
erzeugen, der in den gemeinsam genutzten Speicher geschrieben wird. Das
Schnittstellenmodul ist so beschaffen, dass es eine Datenleitung
zwischen dem Kanal und einer Zentraleinheit herstellt. Über das
Schnittstellenmodul können
Daten zwischen dem gemeinsam genutzten Speicher der Kanals und der
Zentraleinheit ausgetauscht werden. Darüber hinaus kann der Kanal einen
Mikroprozessorkern umfassen.
-
Gemäß einer
bevorzugten Ausführungsart werden
abgehende Datenströme
von der Prioritätszuweisungseinheit
zur Ablaufsteuereinheit übertragen,
wobei die abgehenden Datenströme
mindestens Anweisungen und/oder Ablaufsteuerdaten umfassen können. Vorzugsweise
wird einem abgehenden Datenstrom, der Anweisungen für die Ablaufsteuereinheit
umfasst, eine höhere
Priorität
zugewiesen. Auf diese Weise wird sichergestellt, dass der Anweisungsstrom
nicht unterbrochen wird.
-
Gemäß einer
anderen bevorzugten Ausführungsart
ist die Prioritätszuweisungseinheit
zum Empfangen eines ankommenden Datenstroms von der Ergebnisverarbeitungseinheit
eingerichtet, wobei der ankommende Datenstrom Ergebnisdaten umfassen
kann. Die Ergebnisdaten können
z.B. durch Vergleichen der von der mindestens einen DUT empfangenen
Antwortdaten mit erwarteten Daten erzeugt werden.
-
Gemäß einer
anderen Ausführungsart
der Erfindung tauscht die Prioritätszuweisungseinheit Datenströme mit hoher
Priorität
mit dem Schnittstellenmodul aus. Insbesondere wenn es keine Quittungssignale
(Handshake-Signale)
gibt, müssen
die zwischen dem Schnittstellenmodul und der Prioritätszuweisungseinheit
ausgetauschten Daten sofort verarbeitet werden.
-
Vorzugsweise
ist der gemeinsam genutzte Speicher ein dynamischer RAM. Ein dynamischer RAM
(DRAM) ist preiswerter und kleiner als ein SRAM. Vorzugsweise wird
ein RDRAM verwendet, der eine synchron getaktete Schnittstelle umfasst.
-
Infolge
der getakteten Schnittstelle kann ein Datenaustausch mit einer großen Bandbreite
erfolgen.
-
Ferner
umfasst die Prioritätszuweisungseinheit
vorzugsweise eine Speicherdiagnoseeinheit, wobei die Speicherdiagnoseeinheit
Diagnoseanforderungen an den gemeinsam genutzten Speicher weiterleitet.
Bei Verwendung eines DRAM können
die Diagnoseanforderungen zum Beispiel Anforderungen zur Speicheraktualisierung
umfassen.
-
Die
Erfindung kann zum Teil oder vollständig durch ein oder mehrere
geeignete Softwareprogramme realisiert oder unterstützt werden,
die auf einem beliebigen Datenträger
gespeichert oder anderweitig durch diesen bereitgestellt werden
kann. Softwareprogramme oder -routinen werden vorzugsweise zur zeitlichen
Einordnung der Folge von Schreib- und Lesezugriffe auf den gemeinsam
genutzten Speicher eingesetzt.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Weitere
Aufgaben und viele der mit der vorliegenden Erfindung verbundenen
Vorteile werden unter Bezug auf die folgende detaillierte Beschreibung
und in Verbindung mit den beiliegenden Zeichnungen verdeutlicht
und verständlicher
gemacht. Merkmale, die im Wesentlichen oder in ihrer Funktion gleich
oder ähnlich
sind, werden durch dieselben Bezugszeichen gekennzeichnet.
-
1 zeigt
einen Kanal einer automatisierten Testapparatur (ATE);
-
2 zeigt
eine Speichereinheit, die einen gemeinsam genutzten Speicher und
eine Prioritätszuweisungseinheit
umfasst; und
-
3 zeigt
die Struktur einer Segmentfolge, die Abschnitte von Lesedaten und
Schreibdaten umfasst.
-
DETAILLIERTE
BESCHREIBUNG DER ERFINDUNG
-
1 zeigt
einen Kanal 1 einer automatisierten Testapparatur (Automated
Test Equipment, ATE), wobei der Kanal 1 für mindestens
eine der folgenden Aktivitäten
zuständig
ist: Bereitstellen von Auslösedaten
für eine
DUT und Analysieren der von der DUT erhaltenen Antwortdaten. Bei
dem Kanal 1 braucht es sich nicht um einen Kanal einer
automatisierten Testapparatur zu handeln; dies kann ebenso ein Kanal innerhalb
einer beliebigen Mehrkanalstruktur sein. Der Kanal 1 umfasst
eine Ablaufsteuereinheit 2, welche Ablaufanweisungen 3 und
Ablaufdaten 4 von einem gemeinsam genutzten Speicher 5 empfängt, der vorzugsweise
als RDRAM ausgeführt
ist. Gemäß den Ausführungsarten
der vorliegenden Erfindung erfolgt der Zugriff auf den gemeinsam
genutzten Speicher 5 über
eine Prioritätszuweisungseinheit 6. Wenn
die DUT mindestens einen DRAM-Speicher umfasst, kann die Ablaufsteuereinheit 2 vom
gemeinsam genutzten Speicher 5 auch Aktualisierungsdaten 7 empfangen.
Die Aktualisierungsdaten 7 sind für das periodische Auslösen einer
Aktualisierung mindestens eines DRAM-Speichers in der DUT zuständig.
-
Entsprechend
den Ablaufsteueranweisungen 3 erzeugt die Ablaufsteuereinheit 2 einen
Ausgabedatenstrom 8, der sowohl Steuerdaten als auch erwartete
Daten umfassen kann. Der Ausgangsdatenstrom 8 wird sowohl
dem Steuerpfad 9 als auch der Vergleichseinheit 10 des
Empfangspfades 11 zur Verfügung gestellt. Der Steuerpfad 9 umfasst
eine Signalverlaufstabelle, welche eine zum Umwandeln der Vektoren
des Ausgangsdatenstroms 8 in eine entsprechende Folge von
Signalverläufen
geeignete Referenztabelle ist. Jeder Signalverlauf umfasst mehrere
Flanken zusammen mit Zeitinformationen für diese Flanken. Am Ausgang
des Steuerpfades 9 liegt ein Strom von Auslösedaten 12 vor,
der zum Anschlusskontakt 13 der DUT geleitet wird.
-
Alternativ
oder zusätzlich
kann vom Anschlusskontakt 13 der DUT ein Strom von Antwortdaten 14 empfangen
werden. In der Vergleichseinheit 10 werden die Antwortdaten 14 mit
erwarteten Daten verglichen, die als Teil des Ausgangsdatenstroms 8 übertragen
werden. Aus diesem Grund wird der Ausgangsdatenstrom 8 auch
zur Vergleichseinheit 10 des Empfangspfades 11 geleitet.
Die Vergleichseinheit 10 erzeugt einen Strom von Ergebnisdaten 15, welche
die Ergebnisse des Vergleichs umfassen. Der Ergebnisdatenstrom 15 wird
zur Ergebnisverarbeitungseinheit 16 weitergeleitet. Die
Ergebnisverarbeitungseinheit 16 umfasst einen Zähler 17,
der die Fehlerzahl überwacht.
Außerdem
erzeugt die Ergebnisverarbeitungseinheit 16 eine Fehlertabelle 18,
in der sie die Ergebnisse als Funktion des entsprechenden Zyklus
aufzeichnet. Die Daten 19 der Fehlertabelle werden über die
Prioritätszuweisungseinheit 6 in
den gemeinsam genutzten Speicher 5 geschrieben. Darüber hinaus
erzeugt die Ergebnisverarbeitungseinheit 16 eine Übersichtstabelle 20,
wobei ein Bit der Übersichtstabelle
4 kB der Ergebnisdaten 15 abbildet.
-
Wenn
eine DUT getestet wird, können gleichzeitig
unterschiedliche Fehler auftreten. Wenn nur ein Teil der Fehler überwacht
und analysiert werden soll, müssen
alle anderen Fehler ausgeblendet werden. Zu diesem Zweck werden
der Ergebnisverarbeitungseinheit 16 Zyklusmaskendaten 21 zur
Verfügung
gestellt, die aus dem gemeinsam genutzten Speicher 5 gelesen
werden. Die Zyklusmaskendaten 21 definieren diejenigen
Teile des Ergebnisdatenstroms 15, der ausgeblendet werden
soll.
-
Bis
zu diesem Stand der Beschreibung enthält der gemeinsam genutzte Speicher 5 Ablaufsteueranweisungen,
Ablaufsteuerdaten und Zyklusmaskendaten. Außerdem enthält der gemeinsam genutzte Speicher 5 Ergebnisdaten,
die er von der Ergebnisverarbeitungseinheit 16 empfängt. Zum
Austauschen des Inhaltes des gemeinsam genutzten Speichers mit einem
Arbeitsplatzrechner umfasst der Kanal 1 eine Arbeitsplatzrechnerschnittstelle 22 zum Herstellen
einer Datenverbindung 23 zum Arbeitsplatzrechner. Über die
Arbeitsplatzrechnerschnittstelle 22 können Daten 24 zwischen
dem Arbeitsplatzrechner und dem gemeinsam genutzten Speicher 5 ausgetauscht
werden. Die Daten 24 werden über die Prioritätszuweisungseinheit 6 geleitet.
Darüber
hinaus umfasst der Kanal 1 einen eingebetteten Mikroprozessorkern 25.
Zwischen dem Mikroprozessorkern 25 und dem gemeinsam genutzten
Speicher 5 können
auch Daten 26 ausgetauscht werden, wobei diese Daten ebenfalls über die
Prioritätszuweisungseinheit 6 geleitet
werden.
-
Gemäß den Ausführungsarten
der vorliegenden Erfindung teilt die Prioritätszuweisungseinheit 6 Schreibdaten
in entsprechende Datenpakete ein, um Schreibzugriffe auf den gemeinsam
genutzten Speicher 5 vorzubereiten. Die ankommenden Datenströme können Ströme von Ergebnisdaten 19 von über die
Arbeitsplatzrechnerschnittstelle 22 ausgetauschten Daten 24 und
von mit dem eingebetteten Mikroprozessorkern 25 ausgetauschten
Daten 26 umfassen. Die Prioritätszuweisungseinheit 6 legt
eine zeitliche Reihenfolge von Schreib- und Lesezugriffen auf den
gemeinsam genutzten Speicher 5 fest. Währen der Lesezugriffe erhaltene
Lesedaten werden auf die abgehenden Datenströme verteilt. Die abgehenden Datenströme können die
Ablaufsteueranweisungen 3, die Ablaufsteuerdaten 4,
die Aktualisierungsdaten 7 und die Zyklusmaskendaten 21 umfassen.
Die abgehenden Datenströme
können
auch Daten 24 für die
Arbeitsplatzrechnerschnittstelle 22 und Daten 26 für den eingebetteten
Mikroprozessorkern 25 umfassen.
-
In 2 ist
die Speichereinheit des Kanals dargestellt. Die Speichereinheit
umfasst einen RDRAM-Speicher 28, eine RAM-Steuereinheit 29 und
eine Prioritätszuweisungseinheit 30.
Die Prioritätszuweisungseinheit 30 umfasst
eine Reihe von Schnittstellen 31 bis 37 für die verschiedenen
ankommenden und abgehenden Datenströme. Über eine erste Schnittstelle 31 werden
Daten mit der in 1 gezeigten Arbeitsplatzrechnerschnittstelle 22 ausgetauscht.
Der Arbeitsplatzrechner kann in den gemeinsam genutzten Speicher
schreiben und aus ihm lesen, sodass die entsprechende Anforderung
req eine Schreib- oder Leseanforderung sein kann. Eine Schreibanforderung
ist so beschaffen, dass sie die Startadresse für den Schreibzugriff und die
Größe des Datenblocks
angibt, der in den gemeinsam genutzten Speicher geschrieben werden
soll. Entsprechend werden bei einer Leseanforderung die Startadresse
und die Größe des aus
dem gemeinsam genutzten Speicher zu lesenden Datenblocks angegeben.
-
Bei
einem Schreibzugriff werden die Schreibdaten Dw in einem FIFO-Puffer
(First In First Out) 38 gepuffert. Der FIFO-Puffer 38 gibt
so genannte Segmentanforderungen sreq an die Prioritätszuweisungseinheit 30 aus.
Dort werden den Segmentanforderungen der verschiedenen Schnittstellen
Prioritäten
zugewiesen, und die Segmentanforderungen werden entsprechend den
ihnen zugewiesenen Prioritäten
bearbeitet.
-
Bei
dem in 2 gezeigten Beispiel werden den verschiedenen
Segmentanforderungen Prioritäten
im Bereich von „1" bis „9" zugewiesen. Die
Prioritäten,
die einem über
eine der Schnittstellen übertragenen
Datenstrom zugewiesen wurden, werden in Abhängigkeit vom Füllungsgrad
des entsprechenden FIFO-Puffers geändert. Wenn zum Beispiel der FIFO-Puffer 38 leer
ist, wird einer Segmentanforderung, die der ersten Schnittstelle 31 entspricht,
eine Priorität „7" zugewiesen. Wenn
der Füllungsgrad
des FIFO-Puffers 38 zunimmt, nimmt die Dringlichkeit zur Bearbeitung
des entsprechenden Datenstroms zu. Entsprechend wird die der Segmentanforderung
sreq der ersten Schnittstelle 31 zugewiesene Priorität in Abhängigkeit
vom Füllungsgrad
des FIFO-Puffers 38 von „7" auf „8" oder „9" erhöht.
-
Die
Arbeitsplatzrechnerschnittstelle 22 kann auch eine Leseanforderung
an den FIFO-Puffer 38 übertragen.
Eine oder mehrere Segmentanforderungen sreq, die der Leseanforderung
entsprechen, werden zur Prioritätszuweisungseinheit 30 weitergeleitet,
wo ihnen Prioritäten
im Bereich von „7" bis „9" zugewiesen werden.
-
Die
Prioritätszuweisungseinheit 30 empfängt Segmentanforderungen
sreq von allen mit der Prioritätszuweisungseinheit 30 verbundenen
Schnittstellen. Die Prioritätszuweisungseinheit 30 legt
die zeitliche Reihenfolge der Schreib- und Lesedatensegmente fest,
wobei jedes der Datensegmente eine feste Größe hat. Zum Beispiel kann jedes
der Datensegmente 256 Datenbits umfassen. Die Schreibdaten Dw eines über die
Schnittstelle 31 empfangenen Datenblocks werden in eine
Anzahl Datensegmente aufgeteilt, wobei jedes Datensegment 256 Bit
der Schreibdaten umfasst. Die Datensegmente werden entsprechend
ihrer jeweiligen Priorität
zeitlich eingeordnet. Dann werden die Datensegmente als Teil einer
Datensegmentfolge 39 von der Prioritätszuweisungseinheit 30 zur
RAM-Steuereinheit 29 übertragen.
Die Datensegmentfolge 39 umfasst auch Datensegmente, die
aus dem gemeinsam genutzten Speicher gelesen worden sind, wobei
jedes der Datensegmente ebenfalls 256 Bit der Lesedaten umfasst. Die
RAM-Steuereinheit 29 tauscht
mit dem RDRAM-Speicher 28 Lese- und Schreibdaten 40 aus.
-
Es
sei beispielsweise angenommen, dass die Arbeitsplatzrechnerschnittstelle 22 eine
Leseanforderung an die erste Schnittstelle 31 ausgegeben hat.
Dann werden Datensegmentanforderungen, die der Leseanforderung entsprechen,
zur Prioritätszuweisungseinheit 30 übertragen.
Die Prioritätszuweisungseinheit 30 legt
für die
Datensegmente die zeitliche Reihenfolge fest, und die entsprechenden
Lesezugriffe werden durch die RAM-Steuereinheit 29 ausgeführt. Die
gelesenen Datensegmente werden innerhalb der Datensegmentfolge 39 von
der RAM-Steuereinheit 29 zur
Prioritätszuweisungseinheit 30 übertragen.
Dort werden Datensegmente, die verschiedenen abgehenden Datenströmen entsprechen,
empfangen und auf die FIFO-Puffer der entsprechenden Schnittstellen
verteilt. Die Datensegmente, die sich auf von der Arbeitsplatzrechnerschnittstelle 22 ausgegebene
Leseanforderung beziehen, werden der Reihe nach in den FIFO-Puffer 38 geschrieben.
Der FIFO-Puffer 38 umfasst einen Puffer zur Pufferung ankommender
Daten sowie einen Puffer zur Pufferung abgehender Daten. Die Arbeitsplatzrechnerschnittstelle 22 kann
den angeforderten Datenblock der Lesedaten Dr aus dem FIFO-Puffer 38 abrufen.
-
Über die
zweite Schnittstelle 32 werden der in 1 gezeigten
Ablaufsteuereinheit 2 Ablaufsteueranweisungen zugeführt. Die
angeforderten Ablaufsteueranweisungen werden aus dem RDRAM-Speicher 28 gelesen
und als Bestandteil der Datensegmentfolge 39 zur Prioritätszuweisungseinheit 30 übertragen.
Die Prioritätszuweisungseinheit 30 schreibt
die Ablaufsteueranweisungen in den FIFO-Puffer 41.
-
Die
dritte Schnittstelle 33 ist dafür zuständig, der Ablaufsteuereinheit 2 Ablaufsteuerdaten
zuzuführen.
Aus dem gemeinsam genutzten Speicher gelesene Ablaufsteuerdaten
werden in einem entsprechenden FIFO-Puffer 42 gepuffert.
-
Die
vierte Schnittstelle 34 dient dazu, der Ablaufsteuereinheit 2 Aktualisierungsdaten 7 zuzuführen. Aus
dem gemeinsam genutzten Speicher gelesene Aktualisierungsdaten werden
im FIFO-Puffer 43 gepuffert.
-
Die
Fehlertabelle 18, welche Teil der in 1 gezeigten
Ergebnisverarbeitungseinheit 16 ist, liefert einen Strom
von Ergebnisdaten an die fünfte
Schnittstelle 35 der Prioritätszuweisungseinheit 30.
Die Ergebnisdaten werden in einem FIFO-Puffer 44 gepuffert.
-
Der
Strom der Zyklusmaskendaten ist ein abgehender Datenstrom, welcher
der Ergebnisverarbeitungseinheit 16 von 1 zugeführt wird.
Die aus dem RDRAM-Speicher 28 gelesenen
Zyklusmaskendaten werden im FIFO-Puffer 45 gepuffert. Die
Zyklusmaskendaten werden über
die sechste Schnittstelle 36 zur Ergebnisverarbeitungseinheit 16 weitergeleitet.
-
Die
siebente Schnittstelle 37 dient zum Datenaustausch mit
dem eingebetteten Mikroprozessorkern 25 von 1.
Der entsprechende FIFO-Puffer 46 umfasst einen Puffer zur
Pufferung ankommender Daten sowie einen Puffer zur Pufferung abgehender
Daten.
-
In 2 sind
die entsprechenden Prioritäten dargestellt,
welche den ankommenden und abgehenden Datenströmen der verschiedenen Schnittstellen zugewiesen
wurden. Die drei für
jede einzelne der Schnittstellen 31 bis 37 gezeigten
Prioritäten
entsprechen unterschiedlichen Füllungsgraden
der entsprechenden FIFO-Puffer 38, 41 bis 46.
Die höchste Priorität wird den
Daten zugewiesen, die über
die Schnittstelle 31 mit dem Arbeitsplatzrechner ausgetauscht
werden. Die vom Arbeitsplatzrechner gelieferten Daten müssen sofort
verarbeitet werden, da es zwischen der Prioritätszuweisungseinheit, der Arbeitsplatzrechnerschnittstelle
und dem Arbeitsplatzrechner keine Quittungssignale gibt.
-
Aus 2 ist
zu ersehen, dass dem Strom der aus dem gemeinsam genutzten Speicher
gelesenen Ablaufsteueranweisungen Prioritäten im Bereich von „6" bis „8" zugewiesen werden.
Dadurch kann erreicht werden, dass der Strom der Ablaufsteueranweisungen
nicht unterbrochen wird. Dem Strom der über die Schnittstelle 35 empfangenen
Ergebnisdaten werden Prioritäten
im Bereich von „5" bis „7" zugewiesen. Aufgrund
dieser vergleichsweise hohen Priorität kann der Strom der von der
Fehlertabelle 18 empfangenen Ergebnisdaten ohne Unterbrechung
in den RDRAM-Speicher 28 geschrieben werden. Den Datenströmen, die
mit dem Mikroprozessorkern 25 des Kanals ausgetauscht werden,
wird eine niedrige Priorität
im Bereich von „1" bis „3" zugewiesen. Folglich
ist die Latenzzeit für
Zugriffe auf den Speicher des Mikroprozessorkerns ziemlich groß.
-
Die
RAM-Steuereinheit 29 erzeugt Diagnoseanforderungen 47,
die sich auf die Verwaltung des RDRAM-Speichers 28 beziehen.
Die Diagnoseanforderungen 47 können zum Beispiel Anforderungen zum
Ausführen
einer Aktualisierung des RDRAM-Speichers 28 umfassen. Die
Diagnoseanforderungen 47 werden zur Diagnoseeinheit 48 weitergeleitet.
Zum Festlegen der zeitlichen Reihenfolge der Diagnoseanforderungen
werden von der Diagnoseeinheit 48 Datensegmentanforderungen
zur Prioritätszuweisungseinheit 30 übertragen.
Die erste einer Diagnoseanforderung zugewiesene Priorität ist „1". Nach einer bestimmten
Zeitspanne wird geprüft,
ob die Diagnoseanforderung verarbeitet worden ist. Wenn die Diagnoseanforderung
noch nicht verarbeitet wurde, wird die Priorität der Diagnoseanforderung auf „5" erhöht. Nach
Ablauf einer weiteren Zeitspanne wird noch einmal geprüft, ob die
Diagnoseanforderung verarbeitet worden ist. Wenn die Diagnoseanforderung
immer noch nicht verarbeitet wurde, wird die Priorität möglicherweise
sogar auf „14" erhöht, um die
entsprechende Diagnoseanforderung in der zeitlichen Reihenfolge
zu bevorzugen. Dadurch kann sichergestellt werden, dass eine periodische
Aktualisierung des RDRAM-Speichers 28 durchgeführt wird.
-
3 zeigt,
wie eine Vielzahl von Lese- und Schreibanforderungen in eine Folge 49 von
Datensegmenten umgewandelt wird, wobei die vergangene Zeit von links
nach rechts angegeben ist. Zum Zeitpunkt 50 wird über eine
Schnittstelle A eine erste Leseanforderung 51 empfangen,
wobei die Leseanforderung sowohl die Startadresse („0") als auch die Größe („96 Byte") des aus dem Speicher
zu lesenden Datenblocks bezeichnet. Bei der ersten Leseanforderung 51 kann
es sich zum Beispiel um eine Leseanforderung zum Lesen von Ablaufsteuerdaten
aus dem Speicher handeln, sodass der ersten Leseanforderung 51 die
Priorität „3" zugewiesen werden
kann.
-
Eine
Schnittstellen-Datensegmentanforderung 52 wird von der
Schnittstelle A ausgegeben, um der Steuerlogik der Prioritätszuweisungseinheit
anzuzeigen, dass eine Anforderung mit der Priorität „3" von der Schnittstelle
A verarbeitet worden ist. In 3 sind unterhalb
der Datensegmentfolge 49 die Schnittstellen-Datensegmentanforderungen
von den Schnittstellen A, B und C dargestellt. Zum Zeitpunkt 53 muss
das nächste
Datensegment der Datensegmentfolge 49 ausgewählt werden.
Da zum Zeitpunkt 53 nur eine Schnittstellen-Datensegmentanforderung 52 vorliegt,
werden gemäß der Schnittstellen-Datensegmentanforderung 52 32
Byte von den Adressen 0 bis 32 des RDRAM-Speichers 28 gelesen. Die erhaltenen
Daten werden als Datensegment 54 vom Speicher zur Prioritätszuweisungseinheit übertragen.
-
Die
erste Leseanforderung 51 betrifft einen Datenblock der
Größe 96 Byte.
Nach der Übertragung
des Datensegments 54 bleiben noch 64 Byte übrig, die
noch verarbeitet werden müssen.
Aus diesem Grund bleibt eine Schnittstellen-Datensegmentanforderung 55 von
der Schnittstelle A aktiv. Die Priorität der Schnittstellen-Datensegmentanforderung 55 wird
von 3 auf 3 + 1 + 1 = 5 erhöht.
-
Der
erste Grund für
die Erhöhung
der Priorität
der Schnittstellen-Datensegmentanforderung 55 besteht
darin, dass bei jeder Übertragung
eines Lesedaten umfassenden Datensegments alle Prioritäten von
Schnittstellen-Datensegmentanforderungen erhöht werden,
die Lesezugriffen entsprechen, während
die Prioritäten
von Schnittstellen-Datensegmentanforderungen konstant bleiben, die
Schreibzugriffen entsprechen. Bei jeder Übertragung eines Schreibdaten
umfassenden Datensegments werden die Prioritäten von Schnittstellen-Datensegmentanforderungen
erhöht,
die Schreibzugriffen entsprechen, während die Prioritäten von
Schnittstellen-Datensegmentanforderungen konstant bleiben, die Lesezugriffen
entsprechen. Auf diese Weise lässt
sich die Anzahl der Wechsel zwischen Schreibzugriffen und Lesezugriffen
verringern. Jeder Wechsel zwischen Schreibzugriffen und Lesezugriffen
führt zu
einer zusätzlichen
zeitlichen Verzögerung,
die im Folgenden als „Lese-Schreib-Lücke" oder als „Schreib-Lese-Lücke" bezeichnet. Durch Verringerung der
Anzahl der Wechsel zwischen Schreibzugriffen und Lesezugriffen werden
die zusätzlichen zeitlichen
Verzögerungen
verringert, sodass die Zugriffe auf den RDRAM-Speicher effizienter
ausgeführt
werden können.
-
Der
zweite Grund für
die Erhöhung
der Priorität
der Schnittstellen-Datensegmentanforderung 55 besteht
darin, dass nach der Übertragung
eines bestimmten Datensegments die Priorität von Datensegmenten, die einen
benachbarten Adressbereich betreffen, erhöht wird, um kontinuierliche
Lese- und Schreiboperationen zu unterstützen. Nachdem das Datensegment 54 aus
dem gemeinsam genutzten Speicher gelesen wurde, ist es von Vorteil,
ein benachbartes Datensegment aus dem gemeinsam genutzten Speicher
zu lesen, da in diesem Fall keine Neuadressierung erforderlich ist.
Um kontinuierliche Lese- und Schreiboperationen zu unterstützen, können die
Prioritäten
von aufeinander folgenden Datensegmenten z.B. um eins erhöht werden.
Auf diese Weise lassen sich zusätzliche
zeitliche Verzögerungen
aufgrund von Neuadressierungen, die im Folgenden als „Neuadressierungs-Lücken" bezeichnet werden,
verringern.
-
Aus
diesen beiden Gründen
wird die Priorität der
Schnittstellen-Datensegmentanforderung 55 von „3" auf „4" erhöht, um jeglichen
Wechsel zwischen Lese- und Schreiboperationen zu vermeiden, und
es wird die Priorität
noch weiter von „4" auf „5" erhöht, um die Übertragung
von benachbarten Datenblöcken zu
unterstützen.
-
Zum
Zeitpunkt 56 ist nur die Schnittstellen-Datensegmentanforderung
von der Schnittstelle A aktiv. Demzufolge werden die von den Adressen
32 bis 64 gelesenen 32 Byte der Lesedaten als Datensegment 57 vom
Speicher zur Prioritätszuweisungseinheit übertragen.
-
Zum
Zeitpunkt 58 wird eine Schreibanforderung 59 über eine
Schnittstelle B von der Prioritätszuweisungseinheit 30 empfangen.
Die Schreibanforderung 59 zeigt an, dass 64 Byte Schreibdaten,
beginnend bei der Adresse 256, aus dem Speicher gelesen werden sollen.
Bei den Schreibdaten kann es sich z.B. um einen Block Ergebnisdaten
handeln, und demzufolge kann den Schreibdaten eine Priorität „5" zugewiesen werden.
Zum Zeitpunkt 58 wird von der Schnittstelle B eine Schnittstellen-Datensegmentanforderung 60 ausgegeben.
-
Zum
Zeitpunkt 62 wird eine zweite Leseanforderung 61 empfangen,
und die zweite Leseanforderung 61 zeigt an, dass 32 Byte
Lesedaten, beginnend mit der Adresse 512, aus dem Speicher gelesen
werden sollen. Zweck der Leseanforderung 61, die über die
Schnittstelle C empfangen wird, kann zum Beispiel das Abrufen von
Anweisungen aus dem Speicher sein, sodass der Leseanforderung zu
Anfang eine Priorität „6" zugewiesen werden
kann. Zum Zeitpunkt 63, da die zweite Leseanforderung 61 empfangen
wird, wird gerade ein Lesezugriff bearbeitet. Um jeglichen Wechsel
von einem Lesezugriff zu einem Schreibzugriff zu vermeiden, wird
die Priorität der
zweiten Leseanforderung 61 von „6" auf „7" erhöht.
Zum Zeitpunkt 62, da die zweite Leseanforderung 61 empfangen
wird, wird von der Schnittstelle C die Schnittstellen-Datensegmentanforderung 63 ausgegeben.
-
Die Übertragung
des Datensegments 57 ist zum Zeitpunkt 64 beendet.
Zum Zeitpunkt 64 ist die Schnittstellen-Datensegmentanforderung 65 von
der Schnittstelle A noch aktiv, da die Verarbeitung der ersten Leseanforderung 51 noch
nicht abgeschlossen ist. Es muss noch ein drittes Datensegment übertragen
werden, das der ersten Leseanforderung 51 entspricht. Zum
Zeitpunkt 64 ist die Priorität „7" der Schnittstellen-Datensegmentanforderung 63 höher als
die entsprechenden Prioritäten
der Schnittstellen-Datensegmentanforderungen 60 und 65.
Demzufolge kommt als Nächstes
ein Datensegment 67 an die Reihe, welches der zweiten Leseanforderung 61 entspricht.
Nach einer durch Neuadressierung hervorgerufenen zeitlichen Verzögerung 66 wird
das Datensegment 67 übertragen,
wobei das Datensegment 67 32 Byte Lesedaten von den Adressen
512 bis 544 umfasst. Durch die Übertragung
des Datensegments 67 ist die Verarbeitung der Leseanforderung 61 abgeschlossen
und demzufolge wird die Schnittstellen-Datensegmentanforderung 63 von
der Schnittstelle C auf null zurückgesetzt.
-
Zum
Zeitpunkt 68 sind zwei Schnittstellen-Datensegmentanforderungen
von den Schnittstellen A und B aktiv. Die Priorität der Schnittstellen-Datensegmentanforderung 69 ist
von „5" auf „4" geändert worden,
weil jetzt zur Verarbeitung der Datensegmentanforderung eine Neuadressierung
erforderlich wäre.
Zum Zeitpunkt 68 weist die Schnittstellen-Datensegmentanforderung 70 die
höchste
Priorität
auf, und demzufolge wird als Nächstes
die Schreibanforderung 59 verarbeitet. Nach einer durch eine „Lese-Schreib-Lücke" verursachten Zeitverzögerung 71 wird
ein Datensegment 72 übertragen,
der 32 Byte Schreibdaten umfasst. Die über die Schnittstelle B empfangenen
Schreibdaten werden auf die Speicheradressen 256 bis 288 geschrieben.
Um eine kontinuierliche Übertragung
von Schreibdaten von der Prioritätszuweisungseinheit
zum gemeinsam genutzten Speichers zu unterstützen, wird die Priorität der Schnittstellen-Datensegmentanforderung 73 von „5" auf „7" geändert. Zum
Zeitpunkt 74 während
der Übertragung
des Datensegments 72 kann der Füllungsgrad des der Schnittstelle
A entsprechenden FIFO-Puffers einen bestimmten vorgegebenen Wert überschreiten,
und demzufolge wird die Priorität
der Schnittstellen-Datensegmentanforderung 75 von „3" auf „4" erhöht.
-
Zum
Zeitpunkt 76 wird entschieden, ein anderes Datensegment 77 zu übertragen,
welches der Schreibanforderung 59 entspricht. Die über die Schnittstelle
B empfangenen Schreibdaten werden auf die Speicheradressen 288 bis
320 des gemeinsam genutzten Speichers geschrieben. Durch das Übertragen
des Datensegments 77 ist die Verarbeitung der Schreibanforderung 59 abgeschlossen
und demzufolge wird die Schnittstellen-Datensegmentanforderung 73 auf
null zurückgesetzt.
-
Zum
Zeitpunkt 78 ist nur die Schnittstellen-Datensegmentanforderung 79 von
der Schnittstelle A aktiv, da die Verarbeitung der ersten Leseanforderung 51 noch
nicht abgeschlossen ist. Nach einer durch eine „Schreib-Lese-Lücke" verursachten Zeitverzögerung 80 wird
vom gemeinsam genutzten Speicher ein drittes Datensegment 81 zur
Prioritätszuweisungseinheit übertragen,
welcher der ersten Leseanforderung 51 entspricht. Das Datensegment 81 umfasst
32 Byte Lesedaten, die von den Speicheradressen 64 bis 96 gelesen
wurden.