DE10162046A1 - Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger - Google Patents

Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger

Info

Publication number
DE10162046A1
DE10162046A1 DE10162046A DE10162046A DE10162046A1 DE 10162046 A1 DE10162046 A1 DE 10162046A1 DE 10162046 A DE10162046 A DE 10162046A DE 10162046 A DE10162046 A DE 10162046A DE 10162046 A1 DE10162046 A1 DE 10162046A1
Authority
DE
Germany
Prior art keywords
sectors
sector
area
placeholders
buffer
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.)
Withdrawn
Application number
DE10162046A
Other languages
English (en)
Inventor
Marco Winter
Axel Kochale
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Deutsche Thomson Brandt GmbH
Original Assignee
Deutsche Thomson Brandt GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Deutsche Thomson Brandt GmbH filed Critical Deutsche Thomson Brandt GmbH
Priority to DE10162046A priority Critical patent/DE10162046A1/de
Priority to DE60231241T priority patent/DE60231241D1/de
Priority to EP02792900A priority patent/EP1456846B1/de
Priority to CNB028252314A priority patent/CN100424779C/zh
Priority to PCT/EP2002/013783 priority patent/WO2003052760A1/en
Priority to AU2002358615A priority patent/AU2002358615A1/en
Priority to US10/499,601 priority patent/US7263595B2/en
Priority to KR1020047009076A priority patent/KR100938428B1/ko
Priority to JP2003553569A priority patent/JP4182884B2/ja
Publication of DE10162046A1 publication Critical patent/DE10162046A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers

Abstract

Die Erfindung betrifft ein Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger, der beispielsweise eine unstetige Datenstruktur oder eine relativ große Zugriffszeit aufweist. DOLLAR A Zum Schreiben von Sektoren (S) in den Zwischenspeicher und zum Auffinden von Sektoren (S) im Zwischenspeicher ist eine Steuertabelle (CS) mit einer Anzahl von Platzhaltern und drei Variablen vorgesehen, wobei die Platzhalter jeweils mit einem Index auf einen nachfolgenden Platzhalter in einer endlosen Kette von Platzhaltern hinweisen, die in drei Bereiche aufgeteilt ist, in denen ein in der Reihenfolge vorgegebener Sektor (S) in dem jeweiligen Bereich mit einer der Variablen gekennzeichnet ist. DOLLAR A Obwohl nur eine Zeile von Platzhaltern vorgesehen ist, wird der mehrfache Zugriff auf mehrere in den Zwischenspeicher geschriebene Sektoren (S) mit einem geringen Aufwand mit der Steuertabelle (CS) ermöglicht, so dass die Anzahl langsamerer Zugriffe auf den Informationsträger verringert und die mittlere Zugriffszeit verkürzt wird. DOLLAR A Die Anwendung ist für Wiedergabegeräte mit geringem Speicherplatz, wie beispielsweise einem DVD-Wiedergabegerät, vorgesehen.

Description

  • Die Erfindung betrifft ein Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger, der beispielsweise eine unstetige Datenstruktur oder eine relativ große Zugriffszeit aufweist.
  • Mit der Geschwindigkeit eines Wiedergabegerätes oder Laufwerkes wird häufig die Aufmerksamkeit auf ein Produkt gelenkt. Insbesondere bei Laufwerken bedeutet schneller auch lauter und zum anderen erreichen die wenigsten Laufwerke tatsächlich die angegebene Maximalleistung. Wichtiger für ein komfortables Arbeiten ist vielmehr die durchschnittliche Geschwindigkeit bzw. die mittlere Zugriffszeit beim Auslesen von DVD- und CD-Medien, die eine unstetige Datenstruktur oder eine relativ große Zugriffszeit aufweisen. Ein Laufwerk, das hier konstant hohe Geschwindigkeiten bietet, wird auch zuverlässig Audio- und Video-Files wiedergeben. Der Lesekopf springt bei CD- Anwendungen oft von einem Sektor zum anderen, etwa um während eines Spiels eine Zwischensequenz oder das Mission-Briefing zu laden.
  • Mit schnelleren, auch als Pickup bezeichneten Leseköpfen kann die Zugriffszeit verringert werden. Sie sind jedoch teuer und führen nur begrenzt zu einer Verbesserung.
  • Zum Verringern der mittleren Zugriffszeit bzw. zum Beschleunigen der Wiedergabe von einem relativ langsamen Speichermedium ist in der Computertechnik die auch als Caching bezeichnete Zwischenspeichertechnologie bekannt. Der Cachespeicher ist ein schneller Zwischenspeicher. Er speichert häufig benutzte Daten, die auf langsameren Speichermedien gespeichert sind, zwischen. Wie wirkungsvoll der Zwischenspeicher ist, wird von seiner Geschwindigkeit und dem Verhältnis bestimmt, in dem von einer Anwendung benötigte Daten im Zwischenspeicher vorrätig sind und gefunden werden oder dennoch vom langsameren Speichermedium abgerufen werden müssen. Grundsätzlich werden drei Arten von Zwischenspeichern unterschieden:
    Bei einem auch als direct mapped cache bezeichneten Zwischenspeicher, wird jeder Speicherort auf einer einzigen Cachezeile abgebildet, die er sich mit vielen anderen Speicherorten teilt. Da es nur eine mögliche Stelle gibt, wo der Speicherort zwischengespeichert werden kann, ist nichts zu durchsuchen und die Cachezeile enthält die Speicherinformation oder nicht. Leider hat der direkt abgebildete Cache, der den geringsten Aufwand erfordert, auch die schlechteste Leistung, da es nur eine Stelle gibt, an der die Adresse gespeichert werden kann. Die Trefferquote ist relativ gering, da die angeforderten Daten zufällig an der ersten Stelle in der Zeile stehen müssen.
  • Der vollständig assoziative Cache besitzt die beste Trefferquote, da jede Zeile im Cache jede Adresse enthalten kann, die zwischenzuspeichern ist. Dies bedeutet, dass die im direkt abgebildeten Cache auftretenden Probleme verschwinden, da es nicht nur eine einzige Zeile gibt, die eine Adresse verwenden muss. Jedoch hat dieser Cache den Nachteil, dass der Cache zu durchsuchen ist. Es muss mehr Logik hinzugefügt werden, um zu bestimmen, welche der unterschiedlichen Zeilen zu verwenden ist, um einen neuen Eintag hinzufügen. Normalerweise wird ein Algorithmus verwandt, der von der vor kurzem am wenigsten gebrauchten Zeile ausgeht, um zu entscheiden, welche Cachezeile zu verwenden ist. Dadurch werden jedoch der Aufwand und die Komplexität des Systems erhöht.
  • Die dritte Zwischenspeicherart - der Mehrwege assoziative Cache ist ein Kompromiss zwischen den direkt abbildenden und assoziativen Caches. Der Cache ist in Sätze von "N" Zeilen aufgeteilt - "N" ist normalerweise 2, 4, 8, . . ., und jede Speicheradresse kann in einer von mehreren Zeilen zwischengespeichert werden. Dadurch wird die Trefferquote gegenüber den direkt abbildenden Caches verbessert, ohne eine umfangreiche Suche durchzuführen, da "N" klein gehalten werden kann. Dennoch sind sowohl mehrere Speicherzeilen und ein erhöhter Aufwand für die Steuerung erforderlich.
  • Es ist deshalb Aufgabe der Erfindung, ein Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger, der beispielsweise eine unstetige Datenstruktur oder eine relativ große Zugriffszeit aufweist, zu schaffen, das sowohl einen geringen Aufwand erfordert und eine geringe mittlere Zugriffszeit gewährleistet.
  • Diese Aufgabe wird mit im unabhängigen Anspruch angegebenen Merkmalen gelöst. Vorteilhafte Ausgestaltungen sind in abhängigen Ansprüchen angegeben.
  • Einem Aspekt der Erfindung entsprechend wird ein Wiedergabegerät mit einem Zwischenspeicher vorgeschlagen, der einen geringen Aufwand zum Steuern des Zwischenspeichers erfordert und mit dem dennoch die mittlere Zugriffszeit und die Anzahl der Zugriffe auf das langsamere Informationsspeichermedium verringert wird. Hierzu ist ein Zwischenspeicher vorgesehen, auf den mit einer Zeile bzw. Reihe von Platzhalten, die untereinander verkettetet sind, und einer geringen Anzahl von Variablen zugegriffen wird. Die Platzhalter sind in einer Reihe bzw. Zeile organisiert und dennoch wird mit nur einer Zeile von Platzhaltern und Variablen der Zugriff nicht nur auf den ersten Sektor, sondern der Zugriff auf mehrere Sektoren im Zwischenspeicher ermöglicht, die von einem Informationsträger in den Zwischenspeicher geladen wurden. Die Zeile der Platzhalter kann zusammen mit der Zeile der Variablen in einem Anwendungsspeicher oder unmittelbar im Zwischenspeicher vorgesehen sein. Bei der Anordnung der Platzhalter im Anwendungsspeicher entspricht jeder Platzhalter einem Speicherplatz im Zwischenspeicher und die Platzhalter bilden mit der Zeile der Variablen eine Steuertabelle, mit welcher die Sektoren in den Zwischenspeicher geschrieben oder aus dem Zwischenspeicher ausgelesen werden. Die Zeile der Platzhalter ist derart aufgebaut, dass die Platzhalter als Information jeweils den Index des nächsten Platzhalters beinhalten, wodurch eine Endloskette gebildet wird, die vorzugsweise in drei Bereiche aufgeteilt ist. Mit einer Variablen wird jeweils ein Einstiegspunkt in einen der Bereiche gekennzeichnet. Dieser Einstiegspunkt in den jeweiligen Bereich ist beispielsweise der erste Sektor in dem jeweiligen Bereich. Es kann jedoch zum Verringern der Sprünge beim Verändern des einem Platzhalter zugeordneten Indexes auch ein Sektor im vorangehenden Bereich als Einstiegspunkt verwendet werden. Die genannten Bereiche sind der Bereich in Verwendung befindlicher Sektoren, die als allokierte Sektoren bezeichnet werden, der Bereich der freigegebenen Sektoren und der Bereich der unbelegten Platzhalter. Die Sektoren in den drei Bereichen sind in der zeitlichen Reihenfolge sortiert, in der sie in den Cache bzw. Zwischenspeicher transportiert wurden. Der aktuelle Sektor eines Reihenteils ist dadurch der erste Sektor dieses Reihenteils. Die Sektoren sind in der zeitlichen Reihenfolge sortiert, in der sie vom Informationsträger gelesen wurden, d. h. der zuletzt gelesene Sektor ist der erste Sektor in diesem Bereich und der letzte Platzhalter in diesem Bereich zeigt auf den ersten Platzhalter im folgenden Bereich. Die freigegebenen Sektoren sind ebenfalls nach der Zeit sortiert, wann diese Sektoren in den Cache übertragen wurden z. B. wenn sie von der Allokierung befreit wurden. Der letzte Sektor, der vom Bereich der allokierten Sektoren in den Bereich der freigegebenen Sektoren übernommen wird, ist dann der erste Sektor im Bereich der freigegebenen Sektoren. Der letzte Platzhalter im Bereich der freigegebenen Sektoren zeigt dann auf den ersten Platzhalter des Bereichs der unbelegten Platzhalter. Die unbelegten Platzhalter enthalten keine Sektoren. Im Bereich der unbelegten Platzhalter ist eine beliebige Reihenfolge möglich, wobei jedoch sicherzustellen ist, dass der letzte Sektor im Bereich der unbelegten Platzhalter auf den ersten Platzhalter im Bereich der allokierten Sektoren zeigt, um die vorgesehene Endloskette zu bilden.
  • Zum Verkürzen der Initialisierung der Zeile bzw. Kette von Platzhaltern ist vorgesehen, dass beim Schreiben des ersten Sektors nur der erste next Pointer gebildet wird. Dadurch ist bereits der nächste zu belegende Platzhalter bestimmt, so dass keine Initialisierung weiterer Platzhalter erforderlich ist, wodurch die zur Initialisierung erforderliche Zeit wesentlich verkürzt wird.
  • Zum Steuern der oben genannten drei Bereiche von Platzhaltern sind im wesentlichen drei Variable erforderlich, die im jeweiligen Bereich einen Sektor für den Einstieg in diesen Bereich kennzeichnen. Um jedoch zu verhindern, dass ein nicht eindeutiger Zustand dadurch auftritt, dass mehrere Variable auf den gleichen Eintrag zugreifen ist vorgesehen, dass die Variablen die Möglichkeit erhalten darzustellen, dass sie keinen gültigen Indexwert kennzeichnen oder es sind zusätzlich drei weitere Variable vorgesehen, von denen eine der drei aus den anderen beiden ableitbar ist.
  • Wird von einer Anwendung ein Informationen des Informationsträgers enthaltender Sektor angefordert, wird zunächst überprüft, ob sich der Sektor mit der entsprechenden Sektornummer bereits im Cache befindet. Wenn sich der Sektor mit der entsprechenden Sektornummer bereits im Cache befindet, wird der zwischengespeicherte Sektor verwendet und wenn sich der entsprechende Sektor nicht im Cache befindet, wird er vom Informationsträger in den Cache eingelesen. Für den gelesenen Sektor werden dann in der Steuertabelle ein Index in der Zeile der Platzhalter und die entsprechende Variable gesetzt. Dieser Sektor wird als der aktuelle Sektor identifiziert und ihm der erste Platzhalter im Bereich allokierter Sektoren zugewiesen. Wenn der Cache im Bereich allokierter Sektoren bereits mit einem Sektor belegt ist und unbelegte Platzhalter noch verfügbar sind, wird dessen Index für den neuen Sektor verwendet und der Index des zuvor eingelesenen Sektors um Eins erhöht, so dass die endlose Kette der Platzhalter erhalten bleibt. Gleichzeitig wird die Variable, die den Platzhalter in dem Bereich kennzeichnet, entsprechend verändert. Vor dem Speichern des neuen Eintrags war der vorhergehende Platzhalter in der Kette der letzte Platzhalter des Bereichs unbelegter Sektoren oder wenn kein Platzhalter im Bereich unbelegter Sektoren vorhanden ist und mindestens ein freigegebener Sektor im Cache gespeichert ist, soll der letzte Sektor, der den ältesten Sektor im Bereiche der freigegebenen Sektoren bildet, verwendet werden. D. h., dass der letzte bzw. älteste Sektor im Bereich der freigegebenen Sektoren physikalisch freigegeben wird, um einen Platzhalter für den neuen Sektor zu bilden.
  • Sofern weder im Bereich unbelegter oder freigegebener Sektoren Platzhalter verfügbar sind, wird dem Prinzip der verketteten Platzhalter entsprechend der vorangehende Platzhalter verwendet, der der letzte verwendete Platzhalter im Bereich allokierter Sektoren ist, d. h. der älteste allokierte Sektor. Wenn die Anwendung anschließend einen Zugriff auf diesen Sektor wünscht, ist ein erneutes Laden dieses Sektors erforderlich.
  • Diese Vorgehensweise ist nur sinnvoll, wenn die Anwendung des ersetzten alten allokierten Sektors in der Lage ist, zu erkennen, dass der Sektor nicht mehr sofort verfügbar ist, d. h. ein erneutes Laden für einen weiteren Sektorzugriff oder ein Zugriff auf diesen Sektor eine Ausnahme darstellt, die automatisch ein erneutes Laden dieses Sektors veranlasst.
  • Wenn nicht ausreichend Speicher verfügbar ist, um die Zeile der Platzhalter zu allokieren, wird der Cache abgeschaltet und die Sektornummer direkt vom Informationsträger gelesen.
  • Wird ein Sektor im Bereich allokierter Sektoren freigegeben, wird er an die erste Stelle im Bereich der freigegebenen Sektoren verschoben, wobei sich die Länge der Bereiche aufgrund der vorgegebenen Verkettung dynamisch der Anzahl der Sektoren im jeweiligen Bereich anpasst.
  • Alle Einfüge- und Bewegungsfunktionen, erfordern nur eine Änderung der entsprechenden Indizes zu den nächsten Platzhaltern und eine Änderung der Variablen.
  • Die Nachteile der bekannten Arten der Zwischenspeicherorganisation werden durch dynamisch verkettete Zwischenspeicherbereiche vermieden, so dass trotz einer einzigen Zeile auf mehrere Sektoradressen in der Zeile zugegriffen werden kann, wodurch die Anzahl der direkten Zugriffe auf den Informationsträger und dadurch die mittlere Zugriffszeit verringert werden.
  • Als Zugriffszeit wird die Zeit zwischen Anforderung und Bereitstellung von Daten bezeichnet, die in der Regel in Millisekunden angegeben wird. Die mittlere Zugriffszeit beschreibt die Zeit, die im Durchschnitt benötigt wird, um eine beliebige Information auf einem Speichermedium zu finden und zu lesen.
  • Die vorgeschlagene Lösung ist für kleine Speicher und für Geräte mit langen Zugriffszeiten, wie beispielsweise Laufwerke für optische Speichermedien, die Leseköpfe mit langer Zugriffszeit aufweisen, vorteilhaft anwendbar, da im Cache vorhandene bzw. in den Cache bei Anforderung geschriebene Sektoren direkt aus dem Cache verwendet werden können, ohne dass diese in den Speicher zu übernehmen sind. Darüber hinaus erfordert die Steuerung des Caches einen geringen Aufwand. Weiterhin wird die Größe des Caches vorteilhaft an den im Speicher zur Verfügung stehenden Speicherplatz angepasst, da sich die Anzahl der Platzhalter den jeweiligen Erfordernissen anpasst. Die mittlere Zugriffszeit für Informationsträger mit unstetigem Datenzugriff bzw. unstetiger Datenstruktur wird insbesondere dadurch verringert, dass im Zwischenspeicher eine ausreichende Datenmenge vorgehalten wird, auf die direkt zugegriffen werden kann, ohne dass Rücksprünge zu bereits vom Informationsträger gelesenen Daten erforderlich sind. Die Anzahl der Zugriffe auf Sektoren optischer Speichermedien wird insbesondere in der Initialisierungsphase dadurch verringert, dass die sogenannte Directory oder das Inhaltsverzeichnis von Filesystemen mehrfach auszulesen sind und die entsprechenden Daten mit dem Zwischenspeicher zur Verfügung gestellt werden.
  • Bei einer rekursiven MP3-Filesuche in einem Archiv ist beispielsweise der gesamte Verzeichnisbaum des Speichermediums vollständig zu durchsuchen, so dass bereits im Zwischenspeicher vorgehaltene Sektoren vorteilhaft verwendet werden können und dadurch die Anzahl der Zugriffe auf das Speichermedium und die Anzahl der Rücksprünge des Lesekopfes verringert werden.
  • Das Auffinden der entsprechenden Sektornummer im Zwischenspeicher wird in bekannter Weise durch Vergleich von Anforderung und aufgefundenem Sektor durchgeführt. Da eine Suche im verketteten Zwischenspeicher wesentlich schneller als der Zugriff auf den Informationsträger ist und mit der Verkettung auf alle Sektoren im Zwischenspeicher zugegriffen werden kann, wird die mittlere Zugriffszeit mit geringem Aufwand verringert.
  • Die Erfindung wird nachfolgend anhand von Ausführungsbeispielen in Zeichnungen näher erläutert.
  • Es zeigen:
  • Fig. 1 Blockschaltbild eines Wiedergabegeräts mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit,
  • Fig. 2 Prinzipskizze der logischen Anordnung von Sektoradressen in einem Zwischenspeicher,
  • Fig. 3 physikalische Anordnung von Sektoren in einem Trackbuffer nach aufsteigender Speicheradresse,
  • Fig. 4 Prinzipskizze zum Zusammenhang zwischen der logischen Anordnung der Sektoren und ihrer Steuerung,
  • Fig. 5 Prinzipskizze einer beispielhaften Belegung eines Trackbuffers,
  • Fig. 6 Tabelle zur Veranschaulichung von Veränderungen der Belegung des Trackbuffers in der Initialisierungsphase,
  • Fig. 7 Tabelle zur Veranschaulichung von Veränderungen der Belegung des Trackbuffers in der Initialisierungsphase mit Darstellung der Verkettung,
  • Fig. 8 Tabelle zur Veranschaulichung von Veränderungen der Belegung des Trackbuffers mit zusätzlichen Variablen und
  • Fig. 9 Tabelle zur Veranschaulichung von Veränderungen der Belegung des Trackbuffers mit verändertem Einstiegspunkt.
  • In Fig. 1 ist das Blockschaltbild eines Wiedergabegerätes mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger dargestellt. Das Wiedergabegerät ist beispielsweise ein DVD Wiedergabegerät, in dem mit einem auch als Lesekopf bezeichneten Pickup PU Sektoren S des optischen Informationsträgers abgetastet und über einen Trackbuffer TB, der als Zwischenspeicher bzw. Cache verwendet wird, einem Anwendungsspeicher AM bereitgestellt werden, der in diesem Ausführungsbeispiel auch zum Steuern des Trackbuffers TB verwendet wird. Zum Anfordern von Sektornummern PSN des Informationsträgers ist eine Steuereinrichtung CU vorgesehen, mit der der Pickup PU zum Auffinden des von einer Anwendung benötigten Sektors S gesteuert wird.
  • Wenn eine Anwendung im Anwendungsspeicher AM zum Lesen eines Sektors S auffordert, sieht die Anwendung zunächst in einer Steuertabelle CS im Anwendungsspeicher AM nach, ob im Trackbuffer TB der Sektor S bereits vorhanden ist. Wenn der Sektor S nicht im Trackbuffer TB vorhanden ist, wird von der Anwendung ein Befehl zum Lesen des Sektors S an die Steuereinrichtung CU übermittelt, die dem Pickup PU einen Sektorlesebefehl zum Lesen des Sektors S mit der entsprechend vorgegebenen physikalischen Sektornummer PSN erteilt. Der Pickup PU springt zu der entsprechenden Stelle des optischen Informationsträgers und liest diesen Sektor S. führt eine ECC- Dekodierung durch und schreibt den Sektor S in einen freien Sektor S des Trackbuffers TB. Dadurch wird gewährleistet, dass sich der angeforderte Sektor S im Trackbuffer TB befindet, auf den dann zum Verringern der mittleren Zugriffszeit mehrfach zugegriffen wird. Die Anwendung im Anwendungsspeicher AM greift dann auf diesen, im Trackbuffer TB gespeicherten Sektor S zu.
  • Zum Steuern der Belegung des Trackbuffers TB und zum Auffinden von im Trackbuffer TB gespeicherten Sektoren S enthält die im Anwendungsspeicher AM vorgesehene Steuertabelle CS eine Zeile bzw. Reihe von endlos verketteten Platzhaltern PH und drei Variable la, lf und lu.
  • Zum Schreiben von Sektoren S in den Trackbuffer TB und für einen mehrfachen Zugriff auf einen Sektor S im Trackbuffer TB, ist ein Trackbuffer TB vorgesehen, der, wie in Fig. 2 dargestellt, aus logisch verketteten Speicherplätzen besteht. Jedem Speicherplatz ist ein Platzhalter PH zugeordnet, mit dem der Trackbuffer TB logisch in drei Bereiche aufgeteilt ist, einen Bereich AS für allokierte Sektoren S. einen Bereich FS für freigegebene Sektoren S und einen Bereich US für unbelegte Sektorplätze. Sektoren S im Bereich AS der allokierten Sektoren S sind Sektoren S. die von einer Anwendung im Anwendungsspeicher AM verwendet werden. Sektoren S im Bereich FS der freigegebenen Sektoren S werden von keiner Anwendung im Anwendungsspeicher AM verwendet und in den Bereich US der unbelegten Sektorplätze wurden noch keine Sektoren vom Pickup PU eingelesen. Der Bereich US der unbelegten Sektorplätze stellt im Allgemeinen nur ein Anfangszustand dar, da nach und nach immer weniger unbelegte Speicher- bzw. Sektorplätze zur Verfügung stehen und der Trackbuffer TB schließlich nur noch aus einem Bereich AS allokierter Sektoren S und einem Bereich FS freigegebener Sektoren S besteht. Es ist eine logische Verknüpfung der Platzhalter PH vorgesehen, die durch entsprechende Nummerierung die aufeinander folgenden Bereiche AS, FS und US berücksichtigt, so dass sich an einen von 0 bis k - 1 erstreckenden Bereich AS für allokierte Sektoren S ein Bereich FS von k bis m - 1 für freigegebene Sektoren S und ein Bereich US von m bis n - 1 für unbelegte Sektorplätze anschließen. Mit der vorgesehenen Verkettung hat jeder Sektorplatz in einer Ringanordnung einen logischen nächsten Sektorplatz. Dieser logische nächste Sektorplatz muss jedoch, wie in Fig. 3 dargestellt, nicht zwangsläufig auch physikalisch der nächste Sektorplatz sein. Grundsätzlich ist jedoch der erste Sektor S im Bereich AS der zeitlich zuletzt allokierte Sektor S. der zweite Sektor S im Bereich AS der zeitlich vorletzte allokierte Sektor S usw. und der letzte Sektor S im Bereich allokierter Sektoren AS zeigt auf den ersten Sektor S im Bereich für freigegebene Sektoren FS. Der erste Sektor S im Bereich FS für freigegebene Sektoren S ist der zeitlich zuletzt freigegebene Sektor S. der zweite Sektor S im Bereich FS für freigegebene Sektoren S ist der zeitlich vorletzte, freigegebene Sektor S usw. und der letzte Sektor S im Bereich FS für freigegebene Sektoren S zeigt auf den ersten Sektor S im Bereich US für unbelegte Sektorplätze.
  • Die Sektoren S im Bereich US für unbelegte Sektorplätze erfordern keine besondere Reihenfolge. Eine einfache Reihenfolge wäre beispielsweise die physikalische Anordnung im Speicher, d. h. eine Reihenfolge nach aufsteigender Speicheradresse. Der letzte Sektor S im Bereich US für unbelegte Sektorplätze muss jedoch zum Schließen des Ringes auf den ersten Sektor S im Bereich AS allokierter Sektoren S zeigen.
  • Eine physikalische Anordnung der Sektoren S im Trackbuffer TB nach aufsteigender Speicheradresse, d. h. die physikalische Anordnung der Sektoren S im Trackbuffer TB, ist in Fig. 3 dargestellt. In den Fig. 2 und 3 ist die logische Verknüpfung der einzelnen Sektoren S durch Pfeile symbolisiert. Die physikalische Reihenfolge der Sektoren S. die beispielsweise 0 < r < r + 1 < s < s + 1 < t < u ist, weicht von der logischen Reihenfolge der Sektoren S, die durch 0 < k - 1 < k < m - 1 < m < n - 1 gekennzeichnet ist, ab. Der Zusammenhang zwischen der logischen Reihenfolge der Sektoren S und ihrer physikalischen Anordnung im Trackbuffer TB, der auch das Auffinden des einer Sektornummer zugeordneten Speicherplatzes im Trackbuffer TB ermöglicht, wird mit einer im Anwendungsspeicher AM vorgesehenen Steuertabelle CS realisiert, welche die Variablen la, lf, lu enthält. Wie in Fig. 4 in einem Beispiel dargestellt, beinhaltet die erste Variable la den Speicheradressindex des ersten allokierten Sektors S im Trackbuffer TB, die zweite Variable lf den Speicheradressindex des ersten freigegebenen Sektors S im Trackbuffer TB, während die dritte Variable lu den Speicheradressindex des ersten unbelegten Sektorplatzes S im Trackbuffer TB benennt. In diesem Ausführungsbeispiel ist der jeweils erste Sektor S in den Bereichen AS, FS und US als Einstiegspunkt in den jeweiligen Bereich AS, FS, US gewählt. Die Anzahl der Sektoren S in den Bereichen AS, FS, und US kann einer Ausführung entsprechend mit zusätzlichen Variablen na, nf und nu angegeben werden, die jedoch grundsätzlich nicht erforderlich sind, wenn die Variablen la, lf, lu die Möglichkeit erhalten darzustellen, dass sie keinen gültigen Indexwert kennzeichnen. Im in Fig. 4 angegebenen Beispiel ist die Anzahl allokierter Sektoren S gleich sieben, so dass eine entsprechende Variable na = 7 ist. Die Variablen nf und nu kennzeichnen entsprechend die Anzahl der Sektoren S im Bereich FS und im Bereich US, die hier nf = 6 und nu = 7 sind. Der Zusammenhang zwischen einer logischen Reihenfolge LOR der Sektoren S und einer physikalischen Reihenfolge der Sektoren S nach aufsteigender Speicheradresse im Trackbuffer TB, wie sie in der Steuertabelle CS mit der entsprechenden Platzhalternummer PHN dargestellt wird, ist im unteren Bereich der Fig. 4 dargestellt. Zum Veranschaulichen der Zuordnung sind Pfeile und Zahlen verwendet. Der dargestellten Ausführung entsprechend wird eine Speicheradressindexierung 0 bis 19 verwendet, deren fortlaufende Nummerierung mit der fortlaufenden Nummerierung 0 bis 19 der logischen Reihenfolge LO der Platzhalter bzw. Sektoren S übereinstimmt, so dass eine Verknüpfung zwischen dem Speicherort bzw. seinem Speicheradressindex und und einem folgenden Eintrag mit dem Index next zum nächsten Sektor S bzw. Platzhalter PH hergestellt ist. Der Wert der Variablen lt die den Ort des ersten Sektors S im Bereich FS der freigegebenen Sektoren S kennzeichnet, sei beispielsweise lf = 6, so dass damit bestimmt ist, dass sich der erste Sektor S des Bereichs FS der freigegebenen Sektoren S an der Platzhalternummer PHN = 6 befindet. Dies ist in der logischen Reihenfolge LOR die Nummer 7. Der Eintrag an der Platzhalternummer PHN = 6 bzw. der Index next, der auf den nachfolgenden Platzhalter PH zeigt, ist next: 9. An der Platzhalternummer PHN = 9 ist die Nummer der logischen Reihenfolge LOR die Nummer 8, so dass dadurch trotz physikalischer Unordnung eine logische Verknüpfung der im Trackbuffer TB abgespeicherten Sektoren S hergestellt wird.
  • Unter welchen Bedingungen die Einträge next: x nicht verändert müssen und in welchen Fällen die Einträge next: x wie verändert werden, wird anhand von in den Fig. 6 bis 9 dargestellten Beispielen veranschaulicht.
  • In den Fig. 6 bis 9 sind zwei Tabellen dargestellt, welche beispielhaft die Belegung des Trackbuffers TB mit sechs Speicherplätzen und das entsprechende Abbild in der Reihe der Platzhalternummern PHN in der Steuertabelle CS über einen von oben nach unten verlaufenden Zeitraum demonstrieren. Jede der Zeilen Z von 1 bis 15 entspricht jeweils einer Änderung der Belegung des Trackbuffers TB, der den in den Fig. 6 bis 9 dargestellten Beispielen entsprechend sechs Platzhalter PH mit den Platzhalternummern PHN 0 bis 5 aufweisen soll. Da der Index der Sektoren S in einer Schleife stets auf den folgenden Sektor S verweisen soll, wird zweckmäßiger Weise für die Platzhalter PH als Ausgangspunkt eine Indexierung next gewählt, die mit einer Eins beginnt, fortlaufend ansteigt und am Ende der Reihe der Platzhalter PH eine Null aufweist, wie dies in der ersten Zeile Z = 1 in den Fig. 7 und 8 dargestellt ist. Da zu Beginn noch kein Sektor S in den Trackbuffer TB geschrieben wurde und keiner der Platzhalter PH belegt ist, ergibt sich für die in Fig. 8 dargestellten Variablen la, lf, fu, na, nf, nu, dass außer der Variablen nu, welche die Anzahl der unbelegten Sektoren S mit nu = 6 angibt, daß alle anderen Variablen la, lf, lu, na, nf gleich Null sind. Zeile Z = 2 der Tabellen gibt an, dass am Platzhalter PHN = 0 ein Sektor S in den Trackbuffer TB geschrieben wurde, der den Index 1 erhält. In der Steuertabelle CS, welche als erste drei Variable la, lf, lu den entsprechenden Speicheradressindex enthält, wird das dann derart abgebildet, dass la = 0 ist, da der Sektor S an der Platzhalternummer PHN = 0 abgespeichert ist. Der erste freigegebene Sektor S. der dem Bereich AS der allokierten Sektoren folgen soll ist dann der Sektor S. der sich an der Platzhalternummer PHN = 1 befindet. Die Platzhalternummer PHN = 1 ist jedoch auch der erste unbelegte Sektor S. so dass die Variable lu ebenfalls lu = 1 ist. Die Anzahl der allokierten Sektoren S ist gleich Eins und wird von der Variablen na = 1 repräsentiert. Im Bereich FS der freien Sektoren S ist bisher kein Sektor S abgelegt, so dass die Anzahl der Variablen nf entsprechend nf = 0 ist. Die Anzahl der Sektoren S im Bereich US der unbelegten Sektorplätze hat sich dadurch, dass ein Sektor in den Trackbuffer TB geschrieben wurde, auf fünf entsprechend der Variablen nu = 5 verringert, die auch mit der Gleichung nu = 6 - na - nf ermittelt werden kann. In der dritten Zeile Z = 3 ist wieder ein Sektor S in den Trackbuffer TB geschrieben worden, der aufgrund der vorgesehenen Verkettung den Index 0 erhält. Der Index next des zuvor eingelesenen Sektors S wird next = 2, da sich der erste freigegebene bzw unbelegte Sektor S jetzt an der Platzhalternummer PHN = 3 befindet. Mit der Variablen la = 1 in der dritten Zeile ist angegeben, dass sich der erste allokierte Sektor S am Ort mit der Platzhalternummern PHN = 1 befindet. Der Eintrag Index next: 0 des nächsten Platzhalters PH an der Platzhalternummer PHN = 2 gibt an, dass sich der nächste allokierte Sektor S an der Platzhalternummern PHN = 0 befindet. Dadurch wird die logische Verknüpfung der Sektoren S hergestellt und werden das Schreiben von Sektoren S an unbelegten bzw. freigegebenen Speicherplätzen gesteuert und auch der Zugriff auf die Sektoren S. obwohl sie logisch in einer einzigen Zeile angeordnet sind, ermöglicht. In den Fig. 6 bis 9 sind die Übergänge der Veränderungen der Belegung der Platzhalter PH ausschließlich zum Zweck der Erläuterung mit Bezeichnungen in#, del#, ru# angegeben. Eine den Bezeichnungen in#, del#, ru# folgende Ziffer kennzeichnet die Platzhalternummer PHN, auf die sich die Veränderung bezieht. Die Bezeichnungen in#, del#, ru# kennzeichnen im Einzelnen:
    Bezeichnung in# gibt an, dass ein Sektor S in den Trackbuffer TB an der mit der folgend Ziffer angegebenen Platzhalternummern PHN hineingeschrieben wird.
  • Die Bezeichnung ru# gibt an, dass ein im Trackbuffer TB noch enthaltener Sektor S wieder verwendet wird und die Bezeichnung del# gibt an, dass der entsprechende Sektor S an der mit der Platzhalternummer PHN mit der Ziffer gekennzeichneten Stelle von keiner Anwendung mehr verwendet wird. Dieser Sektor S wird jedoch nicht aus dem Trackbuffer TB gelöscht, sondern darin aufbewahrt, bis er durch einen neuen Sektor S überschrieben wird oder wieder verwendet wird.
  • Da die gesamte Anzahl der Sektoren S im Trackbuffer TB bekannt ist, die in diesem Beispiel 6 ist, gilt grundsätzlich na + nf + nu = 6. Damit ist das System überbestimmt. D. h. eine der drei Variablen na, nf, nu in dem Ausführungsbeispiel gemäß Fig. 8 kann entfallen. Z. B. kann die Variable nu durch die Formel nu = 6 - na - nf vollständig ersetzt werden.
  • In Fig. 6 ist ein Ausführungsbeispiel angegeben, bei dem jene die Anzahl der Sektoren S in den Bereichen AS, FS, US kennzeichnenden Variablen na, nf und nu nicht erforderlich sind. Dafür erhalten die drei Variablen la, lf und lu die Möglichkeit anzuzeigen, dass sie keinen gültigen Indexwert kennzeichnen. Solche Zustände sind in den Fig. 6, 7 und 9 mit einem Stern * gekennzeichnet. Dieser Stern * kann z. B. dadurch realisiert werden, dass ein Wert, der nicht einem möglichen Indexwert entspricht, also alle Werte außer den verwendeten 0, 1, 2, 3, 4 und 5, anzeigt, dass diese Variable ungültig ist. In den Beispielen könnte der Stern * also z. B. durch die Zahl -1 oder 6 realisiert werden. Dieses Ausführungsbeispiel stellt auch deshalb eine der bevorzugten Ausführung dar, da zusätzlich auf die Initialisierung der next-Zeiger der noch unbelegten Platzhalter PH verzichtet wird. In Fig. 6 und in Fig. 9 ist dies mit leeren Platzhaltern PH gekennzeichnet. Die Initialisierung der noch unbelegten Platzhalter PH kann entfallen, wenn die Regel verwendet wird, dass bei einer neuen Belegung eines noch unbelegten Platzhalters PH grundsätzlich der Platzhalter PH mit dem niedrigsten Index verwendet wird. Für das Beispiel in der Fig. 6 bedeutet dies, dass die unbelegten Platzhalter PH von links nach rechts zu belegen sind. Erst der Next-Zeiger eines neu belegten Platzhalters PH wird initialisiert. Durch diese Vorgehensweise entfällt eine zeitraubende Initialisierung sämtlicher Platzhalter PH bei Neuanlegung der Steuertabelle CS. Dennoch wird grundsätzlich nicht vom Prinzip der verketteten Platzhalter PH abgewichen. Dies ist in Fig. 7 dargestellt, die mit der Fig. 6 bis auf den Unterschied identisch ist, dass die Belegung bzw. die Indizes der unbelegten Platzhalter PH angegeben sind.
  • Die vorgeschlagene Lösung ist ein Zwischenspeicher mit einem reduzierten Maß an erforderlichem Speicherplatz zur Steuerung des Zwischenspeichers und es ist sogar möglich, den Cache dynamisch abzuschalten.
  • Vorstehend ist ein spezielles Sektorcacheverfahren beschrieben, das von einer Zeile von Platzhalten PH ausgeht, die für jeden Sektor S einen Platzhalter PH im Cache anzeigt. Jeder Platzhalter PH besteht aus einem Hinweis auf den Ort seines Sektors S im Cache und dem Index des nächsten Platzhalters PH in der Zeile der Platzhalter PH, so dass eine geschlossene Kette entsteht, die mit Platzhalternummern PHN zugeordneten Indexwerten realisiert wird.
  • Das vorgeschlagene Verfahren erfordert nur das Aufstellen der Platzhalter PH und die drei Variablen la, lf, lu. Es ist lediglich Speicher für die Platzhalter PH zu vergeben, wobei für einen Platzhalter PH beispielsweise ein 4 Byte-Wort ausreichend ist und es sind die Variablen la, lf und lu zu initialisieren.
  • Ein praktisches Ausführungsbeispiel der Belegung des Trackbuffers TB in einem DVD-Wiedergabegerät ist in Fig. 5 dargestellt. Die in Fig. 5 dargestellten Sektoren S enthalten Files eines DVD-Datenstroms, der auf einer DVD aufgezeichnet ist. Sollte beispielsweise erst das File VIDEO_TS.IFO im Unterverzeichnis VIDEO_TS von einer Anwendung angefordert worden sein und danach das File VTS_01.0.IFO im selbigen Verzeichnis, so muss der die Anwendung darstellende Filemanager zweimal im selben Verzeichnis VIDEO_TS nachschauen, um herauszufinden wo sich dieses File VIDEO_TS.IFO befindet. Hierbei kann der Cache einen wiederholten Zugriff auf das Pickup PU vermeiden, indem die Anwendung erst im Cache nachschaut, ob dort das Verzeichnis VIDEO_TS noch vorhanden ist. Wenn ja, dann kann die Anwendung direkt auf den Sektor S des Verzeichnisses im Trackbuffer TB zugreifen. Der Zugriff auf die entsprechenden Sektoren S im Trackbuffer TB ist schneller als der Zugriff über den Pickup PU und die mittlere Zugriffszeit wird verringert.
  • In Fig. 9 ist ein weiteres Ausführungsbeispiel angegeben, bei dem als Einstiegspunkt in die Bereiche AS, FS und US, ein dem Bereich AS, FS, US vorangehender Sektor S verwendet wird. Die in den anderen Ausführungsbeispielen den ersten Sektor S im jeweiligen Bereich AS, FS, US kennzeichnenden Variablen la, lf, lu zeigen hier mit ihrem Eintrag auf den jeweils letzten Sektor S bzw. Platzhalter PH im vorangehenden Bereich AS, FS, US. Dadurch wird die Anzahl der zur Veränderung der Indexe erforderlichen Sprünge in der Reihe der Platzhalter PH verringert, wie dies beispielsweise beim Übergang der Belegung der Platzhalter PH in Zeile Z = 10 zu einer Zeile Z = 11 entsprechenden Belegung der Platzhalter PH deutlich wird. Die hier beschriebenen Ausführungsformen sind nur als Beispiele angegeben und ein Fachmann kann andere Ausführungsformen der Erfindung realisieren, die im Bereich der Erfindung bleiben.

Claims (12)

1. Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger, dadurch gegenzeichnet, dass zum Schreiben von Sektoren (S) in den Zwischenspeicher und zum Auffinden von Sektoren (S) im Zwischenspeicher eine Steuertabelle (CS) mit einer Anzahl von Platzhaltern (PH) und drei Variablen (la, lf, lu) vorgesehen ist und die Platzhalter (PH) jeweils mit einem Index (next) auf einen nachfolgenden Platzhalter (PH) in einer einzigen endlosen Kette von Platzhaltern (PH) hinweisen, die in drei Bereiche (AS, FS und US) aufgeteilt ist, für die mit einer der Variablen (la, lf, lu) jeweils ein vorgegebener Einstiegspunkt in einen der Bereiche (AS, FS und US) gekennzeichnet ist.
2. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass die Steuertabelle (CS) in einem Anwendungsspeicher (AM) angeordnet ist.
3. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass die Platzhalter (PH) in den in den Zwischenspeicher geschriebenen Sektoren (S) vorgesehen sind.
4. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass der Zwischenspeicher ein Trackbuffer (TB) ist.
5. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass in der Initialisierungsphase der Steuertabelle (CS) die drei Variablen (la, lt, lu) und nur der Platzhalter (PH) mit dem niedrigsten Index (next) initialisiert werden.
6. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass bei einer Anordnung der Platzhalter (PH) im Anwendungsspeicher (AM) jedem Speicherplatz des Zwischenspeichers ein Platzhalter (PH) zugeordnet ist.
7. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass die drei Bereiche (AS, FS und US) der endlosen Kette von Platzhaltern (PH) ein Bereich (AS) allokierter Sektoren (S), ein Bereich (FS) freigegebener Sektoren (S) und ein Bereich (US) unbelegter Sektoren (S) sind.
8. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass für einen Hinweis auf einen ersten Sektor (S) in einem Bereich (AS) allokierter Sektoren (S) eine Variable (la), für einen Hinweis auf einen ersten Sektor (S) in einem Bereich (FS) freigegebener Sektoren (S) eine Variable (lf) und für einen Hinweis auf einen ersten Sektor (S) in einem Bereich (US) unbelegter Sektoren (S) eine Variable (lu) vorgesehen ist, die einen vorgegebenen Einstiegspunkt in den jeweiligen Bereich (AS, FS oder US) bilden.
9. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass die Sektoren (S) in einem Bereich (US) unbelegter Sektoren (S) mit Ausnahme des letzten Sektors (S), der auf den ersten Sektor (S) in einem Bereich (AS) allokierter Sektoren (S) zeigt, im Bereich (US) unbelegter Sektoren (S) von einer verketteten Reihenfolge abweichend vorgesehen sind.
10. Wiedergabegerät nach Anspruch 1, dadurch gegenzeichnet, dass die Sektoren (S) in den Bereichen (AS, FS und US) in einer Reihenfolge miteinander verkettet sind, die der zeitlichen Reihenfolge entspricht, in der sie in den Zwischenspeicher geschrieben wurden.
11. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass als vorgegebener Einstiegspunkt in einen der Bereiche (AS, FS und US) mit einer der Variablen (la, lf, lu) jeweils der dem jeweiligen Bereich (AS, FS, US) in der Kette vorangehende Sektor (S) bzw. Platzhalter (PH) vorgesehen ist, der der letzte Sektor (S) des vorangehenden Bereichs (AS, FS, US) ist.
12. Wiedergabegerät nach Anspruch 1, dadurch gekennzeichnet, dass als vorgegebener Einstiegspunkt in einen der Bereiche (AS, FS und US) mit einer der Variablen (la, lf, lu) jeweils ein Sektor (S) vorgesehen ist, der sich in der Reihenfolge der Sektoren (S) in dem jeweiligen Bereich (AS, FS, US) nach einer vorgegebenen Anzahl von Sektoren (S) bzw. Platzhalter (PH) befindet.
DE10162046A 2001-12-17 2001-12-17 Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger Withdrawn DE10162046A1 (de)

Priority Applications (9)

Application Number Priority Date Filing Date Title
DE10162046A DE10162046A1 (de) 2001-12-17 2001-12-17 Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger
DE60231241T DE60231241D1 (de) 2001-12-17 2002-12-05 Wiedergabevorrichtung mit einem buffer zur verringerung der mittleren zugriffszeit zu einem informationsträger
EP02792900A EP1456846B1 (de) 2001-12-17 2002-12-05 Wiedergabevorrichtung mit einem buffer zur verringerung der mittleren zugriffszeit zu einem informationsträger
CNB028252314A CN100424779C (zh) 2001-12-17 2002-12-05 具有用于减少信息载体平均存取时间的缓冲器的再现装置
PCT/EP2002/013783 WO2003052760A1 (en) 2001-12-17 2002-12-05 Reproduction apparatus having a buffer for reducing the mean access time to an information carrier
AU2002358615A AU2002358615A1 (en) 2001-12-17 2002-12-05 Reproduction apparatus having a buffer for reducing the mean access time to an information carrier
US10/499,601 US7263595B2 (en) 2001-12-17 2002-12-05 Reproduction apparatus having a buffer for reducing the mean access time to an information carrier
KR1020047009076A KR100938428B1 (ko) 2001-12-17 2002-12-05 정보 캐리어로의 평균 액세스 시간을 저감하기 위한 버퍼를 갖는 재생 장치
JP2003553569A JP4182884B2 (ja) 2001-12-17 2002-12-05 情報担体への平均アクセス時間を減少させるためのバッファを備えた再生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10162046A DE10162046A1 (de) 2001-12-17 2001-12-17 Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger

Publications (1)

Publication Number Publication Date
DE10162046A1 true DE10162046A1 (de) 2003-06-26

Family

ID=7709585

Family Applications (2)

Application Number Title Priority Date Filing Date
DE10162046A Withdrawn DE10162046A1 (de) 2001-12-17 2001-12-17 Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger
DE60231241T Expired - Lifetime DE60231241D1 (de) 2001-12-17 2002-12-05 Wiedergabevorrichtung mit einem buffer zur verringerung der mittleren zugriffszeit zu einem informationsträger

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE60231241T Expired - Lifetime DE60231241D1 (de) 2001-12-17 2002-12-05 Wiedergabevorrichtung mit einem buffer zur verringerung der mittleren zugriffszeit zu einem informationsträger

Country Status (8)

Country Link
US (1) US7263595B2 (de)
EP (1) EP1456846B1 (de)
JP (1) JP4182884B2 (de)
KR (1) KR100938428B1 (de)
CN (1) CN100424779C (de)
AU (1) AU2002358615A1 (de)
DE (2) DE10162046A1 (de)
WO (1) WO2003052760A1 (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4239096B2 (ja) 2004-08-24 2009-03-18 ソニー株式会社 情報処理装置および方法、並びにプログラム
US20090150697A1 (en) * 2007-12-06 2009-06-11 Yang Su-Young Media file reproduction apparatus and method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0066766A2 (de) * 1981-06-05 1982-12-15 International Business Machines Corporation Ein/Ausgabesteuereinheit mit einem dynamisch einstellbaren Pufferspeicher
US5717916A (en) * 1994-09-30 1998-02-10 Vlsi Technology, Inc. Method for providing an improved fully associative cache memory having a finite state machine and linked list structure
US6141728A (en) * 1997-09-29 2000-10-31 Quantum Corporation Embedded cache manager

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5008820A (en) * 1987-03-30 1991-04-16 International Business Machines Corporation Method of rapidly opening disk files identified by path names
JP2831369B2 (ja) 1989-02-15 1998-12-02 株式会社日立製作所 情報記録再生方式およびシステム
US5029125A (en) * 1989-03-07 1991-07-02 Drexler Technology Corporation Method of reading and writing files on nonerasable storage media
US5638506A (en) 1991-04-08 1997-06-10 Storage Technology Corporation Method for logically isolating a cache memory bank from a memory bank group
CA2072511A1 (en) * 1992-06-26 1993-12-27 Benedetto Angelo Notarianni Data processing apparatus with dynamic memory allocation
SE502576C2 (sv) * 1993-11-26 1995-11-13 Ellemtel Utvecklings Ab Feltolerant kösystem
US20010034808A1 (en) * 1996-07-19 2001-10-25 Atsushi Nakajima Cache memory device and information processing system
CN1106641C (zh) * 1996-09-30 2003-04-23 松下电器产业株式会社 一种在盘上记录av数据的记录方法和信息处理系统
US5960452A (en) * 1996-12-23 1999-09-28 Symantec Corporation Optimizing access to multiplexed data streams on a computer system with limited memory
US5924098A (en) * 1997-06-30 1999-07-13 Sun Microsystems, Inc. Method and apparatus for managing a linked-list data structure
EP0917144B1 (de) * 1997-11-11 2003-05-07 Deutsche Thomson-Brandt Gmbh Verfahren und Gerät zur Steuerung eines Daten-Zwischenspeichers
KR100267367B1 (ko) * 1997-12-31 2000-10-16 윤종용 디지털 비디오 디스크-램 시스템에서 디펙트 섹터 데이터의처리방법
US6330640B1 (en) * 1999-12-22 2001-12-11 Seagate Technology Llc Buffer management system for managing the transfer of data into and out of a buffer in a disc drive
CN1118025C (zh) * 2000-10-23 2003-08-13 大唐电信科技股份有限公司微电子分公司 采用逻辑区间链表寻址的智能卡嵌入式软件系统实现方法
US6754795B2 (en) * 2001-12-21 2004-06-22 Agere Systems Inc. Methods and apparatus for forming linked list queue using chunk-based structure

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0066766A2 (de) * 1981-06-05 1982-12-15 International Business Machines Corporation Ein/Ausgabesteuereinheit mit einem dynamisch einstellbaren Pufferspeicher
US5717916A (en) * 1994-09-30 1998-02-10 Vlsi Technology, Inc. Method for providing an improved fully associative cache memory having a finite state machine and linked list structure
US6141728A (en) * 1997-09-29 2000-10-31 Quantum Corporation Embedded cache manager

Also Published As

Publication number Publication date
KR100938428B1 (ko) 2010-01-22
CN1605103A (zh) 2005-04-06
EP1456846B1 (de) 2009-02-18
KR20040062676A (ko) 2004-07-07
DE60231241D1 (de) 2009-04-02
EP1456846A1 (de) 2004-09-15
AU2002358615A1 (en) 2003-06-30
WO2003052760A1 (en) 2003-06-26
US20050071548A1 (en) 2005-03-31
JP2005513698A (ja) 2005-05-12
JP4182884B2 (ja) 2008-11-19
US7263595B2 (en) 2007-08-28
CN100424779C (zh) 2008-10-08

Similar Documents

Publication Publication Date Title
EP0013737B1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE69535330T2 (de) Caching-System mit Explitzer Folgeliste
DE2550339C2 (de) Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität
DE69629140T2 (de) Cachefähigkeitsattribut für virtuelle Adressen in Cachespeichern mit sowohl virtuellen als auch physikalischem Index
DE3743890C2 (de)
DE3390315T1 (de) Anpassungsfähige Unterteilung eines Chachespeicherraums in Domainen
DE2230987C2 (de)
DE2163342C3 (de) Hierarchische binäre Speichervorrichtung
DE2617408A1 (de) Datenverarbeitungsgeraet
DE2310631A1 (de) Speicherhierarchie fuer ein datenverarbeitungssystem
DE3046912C2 (de) Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage
DE1524788A1 (de) Schaltungsanordnung zur Erkennung und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern
DE69130626T2 (de) Verfahren zur Verwaltung einer Cache-Speicheranordnung
DE2801982A1 (de) Verfahren zum austausch von information zwischen einem externen speicher und einem arbeitsspeicher in einem textverarbeitungssystem
EP0134822B1 (de) Digitalspeicher
DE10162046A1 (de) Wiedergabegerät mit einem Zwischenspeicher zum Verringern der mittleren Zugriffszeit auf einen Informationsträger
EP0051308B1 (de) Verfahren und Schaltungsanordnung zur Formatierung einer Magnetspeicherplatte
CH495584A (de) Datenverarbeitungsanlage
DE2556357A1 (de) Adressiereinrichtung
EP0012207B1 (de) Speicherhierarchie mit Ladungsverschiebungsspeicher
DE2750126C3 (de) Datenverarbeitungssystem mit einem Zwischenpufferspeicher
DE2525287B2 (de) Assoziativspeicher
DE19810784A1 (de) Hardwareunterstützung für Datenumsetzung
DE10221206B4 (de) Burst Zugriffsverfahren auf Co-Prozessoren
DE19837473A1 (de) Speichervorrichtung mit einem Datenpuffer

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8139 Disposal/non-payment of the annual fee