DE3782157T2 - Verfahren und einrichtung zur speicherung einer haufenweise unterteilten binaerdatenbasis. - Google Patents
Verfahren und einrichtung zur speicherung einer haufenweise unterteilten binaerdatenbasis.Info
- Publication number
- DE3782157T2 DE3782157T2 DE8787202016T DE3782157T DE3782157T2 DE 3782157 T2 DE3782157 T2 DE 3782157T2 DE 8787202016 T DE8787202016 T DE 8787202016T DE 3782157 T DE3782157 T DE 3782157T DE 3782157 T2 DE3782157 T2 DE 3782157T2
- Authority
- DE
- Germany
- Prior art keywords
- data
- parcel
- cell
- main
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 40
- 230000015654 memory Effects 0.000 claims description 32
- 230000003287 optical effect Effects 0.000 claims description 5
- 210000004027 cell Anatomy 0.000 description 225
- 230000008569 process Effects 0.000 description 4
- 101000650578 Salmonella phage P22 Regulatory protein C3 Proteins 0.000 description 2
- 101001040920 Triticum aestivum Alpha-amylase inhibitor 0.28 Proteins 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 102100025342 Voltage-dependent N-type calcium channel subunit alpha-1B Human genes 0.000 description 1
- 101710088658 Voltage-dependent N-type calcium channel subunit alpha-1B Proteins 0.000 description 1
- 101710143790 Voltage-dependent R-type calcium channel subunit alpha-1E Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 210000005238 principal cell Anatomy 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; 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
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3863—Structures of map data
- G01C21/387—Organisation of map data, e.g. version management or database structures
- G01C21/3881—Tile-based structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/532—Query formulation, e.g. graphical querying
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9017—Indexing; Data structures therefor; Storage structures using directory or table look-up
- G06F16/902—Indexing; Data structures therefor; Storage structures using directory or table look-up using more than one table in sequence, i.e. systems with three or more layers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/102—Programmed access in sequence to addressed parts of tracks of operating record carriers
- G11B27/105—Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/21—Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
- G11B2220/213—Read-only discs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2537—Optical discs
- G11B2220/2545—CDs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
- G11B2220/25—Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
- G11B2220/2537—Optical discs
- G11B2220/2545—CDs
- G11B2220/255—CD-I, i.e. CD-interactive
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99948—Application of database or data structure, e.g. distributed, multimedia, or image
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Radar, Positioning & Navigation (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Automation & Control Theory (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Navigation (AREA)
Description
- Die Erfindung betrifft ein Verfahren zur Speicherung eines digitalen Datenbestandes in einem Massenspeicher, dessen Kapazität in eine Anzahl von Speicherparzellen mit je einer vorgegebenen Speicherkapazität unterteilt ist, wobei dieses Verfahren die folgenden Schritte umfaßt:
- - Unterteilen des Datenbestandes in eine Anzahl von Hauptzellen nach einem vorgegebenen regelmäßigen Unterteilungsmuster;
- - Unterteilen jeder Hauptzelle in eine weitere Anzahl von Datenparzellen, wobei jede Datenparzelle einen jeweiligen Teil der Hauptzelle abdeckt, welcher Teil einen Dateninhalt hat, der nahezu vollständig die Speicherkapazität einer Speicherparzelle beansprucht;
- - Aufstellen einer Kennzeichentabelle mit:
- a) einem ersten Kennzeichen zur Kennzeichnung des genannten vorgegebenen Musters;
- b) einem zweiten Kennzeichen zur Identifizierung der genannten Unterteilung in Datenparzellen;
- c) einer Datenparzellenliste für jede Hauptzelle, die für jede Datenparzelle dieser Hauptzelle einen Adressenzeiger enthält, der angibt, an welchem Speicherplatz die jeweilige Datenparzelle gespeichert ist;
- - Laden des Dateninhalts jeder Datenparzelle unter der durch den Adressenzeiger angegebenen Adresse in den Massenspeicher und Laden der Kennzeichentabelle.
- Ein solches Verfahren ist aus dem in Computer Vision, Graphics and Image Processing, 26.Juni 1984, Nr. 3 (New York, USA) S.303-318, veröffentlichten Beitrag "A file organization for Geographic information systems based on Spatial Proximity" von T. Matsuyama, Le Viet Hao, und M. Nagus bekannt. In dem bekannten Verfahren wird der digitale Datenbestand, der von geographischen Informationen gebildet wird, zuerst entsprechend einem regelmäßigen Unterteilungsmuster, beispielsweise einem Viererbaum ("quad tree"), in eine Anzahl von Hauptzellen unterteilt. Bei Verwendung dieses Unterteilungsmusters wird der digitale Datenbestand in vier rechteckige Gebiete aufgeteilt. Die verfügbare Speicherkapazität des Massenspeichers wird in eine Anzahl von Speicherparzellen mit jeweils einer vorgegebenen Speicherkapazität unterteilt. Um die verfügbare Speicherkapazität effizient zu nutzen, wird für jede Hauptzelle geprüft, ob deren Dateninhalt in eine einzige Speicherparzelle paßt. Wenn das der Fall ist, bildet der Dateninhalt dieser Hauptzelle eine Datenparzelle und wird er in einer Speicherparzelle gespeichert. Wenn der Dateninhalt einer Hauptzelle jedoch die Speicherkapazität einer Speicherzelle übersteigt, wird diese Hauptzelle weiter in einer weitere Anzahl von Datenparzellen unterteilt, so daß jede Datenparzelle die Speicherkapazität einer Speicherparzelle nahezu vollständig belegt. Bei dieser Unterteilung in Datenparzellen wird der Dateninhalt berücksichtigt und so viele Daten zusammengefaßt, bis eine Speicherparzelle nahezu vollständig belegt ist. Für den Zugriff auf die Speicherdaten wird eine Kennzeichentabelle aufgestellt, die ein erstes Kennzeichen zur Kennzeichnung der Unterteilung in Hauptzellen und ein zweites Kennzeichen zur Kennzeichnung der Unterteilung in Parzellen enthält. Außerdem wird eine Parzellenliste aufgestellt, um anzugeben, auf welchem Speicherplatz die verschiedenen Datenparzellen in dem Massenspeicher gespeichert sind. Nach Vollendung dieser Unterteilung des Datenbestandes werden die Kennzeichentabelle und die verschiedenen Datenparzellen unter jeweiligen Adressen in dem Massenspeicher gespeichert.
- Ein Nachteil des bekannten Verfahrens ist, daß die Unterteilung der Hauptzellen in Datenparzellen entsprechend einem willkürlichen Unterteilungsmuster erfolgt, wobei nur der Dateninhalt berücksichtigt wird. Die so erhaltene effiziente Nutzung der vorhandenen Speicherkapazität wird durch die Notwendigkeit, ein kompliziertes zweites Kennzeichen, das das für die Parzellenunterteilung verwendete willkürliche Unterteilungsmuster kennzeichnet, zu speichern, aufgehoben. Ein solches kompliziertes zweites Kennzeichen erfordert nicht nur viel Speicherkapazität, sondern macht das Aufsuchen einer bestimmten Parzelle ziemlich schwierig und kompliziert.
- Die US-Patentschrift 3.597.745 beschreibt ein Verfahren zur Anordnung von Daten, bei dem Datenportionen in mehreren Blöcken von Datenspeicherplätzen gespeichert werden, wobei jeder Block n Speichereinheiten fester Größe enthält. Die Lage der Datenportionen wird durch zwei Indexniveaus bestimmt. Um die Speichereinheiten fester Größe zur Speicherung eines Datenbestandes effizient zu nutzen, erfolgt die Unterteilung des Datenbestandes wiederum unregelmäßig, da nur der Dateninhalt berücksichtigt wird. Dies hat wieder den Nachteil, daß ein kompliziertes willkürliches Unterteilungsmuster für die Parzellenunterteilung gespeichert werden muß.
- Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur Speicherung eines digitalen Datenbestandes in einem Massenspeicher zu verschaffen, das eine weniger komplizierte Unterteilung in Parzellen verwendet, wobei die Unterteilung auch durch ein einfacheres zweites Kennzeichen repräsentiert werden kann, für dessen Speicherung weniger Speicherkapazität verwendet zu werden braucht.
- Zur Lösung dieser Aufgabe ist ein erfindungsgemäßes Verfahren dadurch gekennzeichnet, däß die Hauptzellen, die mehr als nur eine Datenparzelle enthalten, nach einem weiteren vorgegebenen regelmäßigen Unterteilungsmuster in eine solche Zahl von Basiszellen unterteilt werden, daß der Dateninhalt jeder Basiszelle in einer Speicherparzelle gespeichert werden kann, und wobei, da die erwähnten Parzellen durch jedesmaliges Zusammenfassen einer oder mehrerer benachbarter Basiszellen einer selben Hauptzelle gebildet werden, jede Basiszelle nur zu ein und derselben Datenparzelle gehört, und wobei die Kennzeichentabelle aufgestellt wird durch:
- a) Erstellen einer Hauptzellentabelle mit dem ersten Kennzeichen und außerdem für jede in Basiszellen unterteilte Hauptzelle einem weiteren Adressenzeiger, der einen Massenspeicherplatz angibt, an dem eine Basiszellentabelle für diese Hauptzelle gespeichert ist;
- b) Bildung des zweiten Kennzeichens für jede in Basiszellen unterteilte Hauptzelle durch Bildung einer Zahl von Indizes, wobei jeder Index eine Datenparzelle ihrer zugehörigen Hauptzelle angibt;
- c) Zuordnung zu jeder Basiszelle des Index der jeweiligen Datenparzelle, in der sie aufgenommen ist;
- d) Erstellen einer Basiszellentabelle für jede in Basiszellen unterteilte Hauptzelle, welche Tabelle ein Basiszellenkennzeichen und eine Liste der Basiszellen mit ihrem zugeordneten Index enthält;
- und wobei jede Basiszellentabelle unter ihrer jeweiligen durch den jeweiligen weiteren Adressenzeiger angegebenen Adresse geladen wird.
- Indem ein weiteres vorgegebenes, regelmäßiges Unterteilungsmuster zur Unterteilung von Hauptzellen in Basiszellen verwendet wird, ist die Kennzeichnung der Basiszellen leicht möglich und die Speicherung eines Kennzeichens, das die Unterteilung in Basiszellen kennzeichnet, erfordert nicht viel Speicherkapazität. Weil Datenparzellen jetzt durch Kombination von Basiszellen gebildet werden, kann eine Datenparzelle durch Erkennung, welche Basiszelle in dieser Parzelle enthalten ist, in einfacher Weise gefunden werden. Erkennung einer Basiszelle ist auch einfach, da Basiszellen durch Verwendung eines regelmäßigen Unterteilungsmusters gebildet werden. Außerdem kann ein zweites Kennzeichen jetzt in einfacher Weise durch eine Anzahl Indizes gebildet werden, und der Verband zwischen einer Basiszelle und der Parzelle, in der sie sich befindet, wird gelegt, indem jeder Basiszelle der Index der jeweiligen Datenparzelle, in der sie sich befindet, zugeordnet wird. Die Unterteilung von Hauptzellen in Basiszellen nach einem regelmäßigen Unterteilungsmuster und die Gruppierung dieser Basiszellen in Datenparzellen bietet also eine weniger komplizierte Unterteilung in Parzellen und erfordert weniger Speicherkapazität zur Speicherung des zweiten Kennzeichens.
- Die Erfindung betrifft weiterhin ein Verfahren zur Adressierung, zum Zwecke des Retrieval, einer Datenparzelle in einem Massenspeicher, in dem ein Datenbestand parzellenweise unter Anwendung des obigen Verfahrens gespeichert ist, wobei die zu adressierenden Datenparzelle durch eine virtuelle, von einem zu dem Dateninhalt dieser Datenparzelle gehörenden Datenwort gebildete Adresse identifiziert wird.
- Das erfindungsgemäße Verfahren zur Adressierung, zum Zwecke des Retrieval, einer Datenparzelle in einem Massenspeicher dadurch gekennzeichnet, daß es die folgenden Schritte umfaßt:
- a. Holen der Hauptzellentabelle aus dem Massenspeicher;
- b. Feststellen, unter Verwendung des ersten Kennzeichens, in welcher Hauptzelle die gelieferte virtuelle Adresse liegt, und Selektion dieser Hauptzelle;
- c. Festlegen, unter Verwendung des weiteren Adressenzeigers der selektierten Hauptzelle, der Adresse, unter der die zu der selektierten Hauptzelle gehörende Basiszelle in dem Massenspeicher gespeichert ist;
- d. Holen der selektierten, unter der festgelegten Adresse gespeicherten Basiszellentabelle;
- e. Feststellen, unter Verwendung des Basiszellenkennzeichens aus der selektierten Basiszellentabelle, in welcher Basiszelle die gelieferte virtuelle Adresse liegt, und Selektion dieser Basiszelle;
- f. Holen des der selektierten Basiszelle zugeordneten Index aus der Basiszellentabelle;
- g. Selektieren der von dem geholten Index angegebenen Datenparzelle aus der zu der selektierten Hauptzelle gehörenden Parzellenliste;
- h. Festlegen, anhand des Adressenzeigers der selektierten Parzelle, einer Speicheradresse zur Adressierung einer Datenparzelle in dem Massenspeicher;
- i. Holen des Dateninhaltes der selektierten Parzelle.
- Durch Verwendung des ersten Kennzeichens aus der Hauptzellentabelle und des Basiszellenkennzeichens aus der Basiszellentabelle ist es möglich, in einfacher und schneller Weise herauszufinden, in welcher Hauptzelle bzw. Basiszelle die virtuelle Adresse liegt. Sobald die gesuchte Basiszelle gefunden worden ist, zeigt der der gesuchten Basiszelle zugeordnete Index die Datenparzelle an, in der die gesuchte Basiszelle liegt. Dieser Index zeigt eine Position in der Datenparzellenliste an, in der der Adressenzeiger gespeichert ist, der den Platz in dem Massenspeicher angibt, an dem die Daten innerhalb der selektierten Datenparzelle gespeichert sind.
- Eine erste bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens ist dadurch gekennzeichnet, daß die Basiszellen einer selben Hauptzelle in der Basiszellentabelle durch Kennzeichen dargestellt werden, welche Kennzeichen entsprechend einer vorgegebenen Rangordnung angeordnet sind, und daß die jeder Basiszelle zugeordneten Indizes eine Position in der Datenparzellenliste angeben. Durch Ordnen der Basiszellen in der Basiszellentabelle wird das Aufsuchen einer Datenparzelle vereinfacht und die Speicherung der Daten wird strukturiert.
- Es ist günstig, daß jede Parzellenliste in dem Massenspeicher unter einer Adresse gespeichert wird, die eine vorgegebene Abweichung von der Speicheradresse ihrer zugehörigen Basiszellentabelle hat. Daher ist es möglich, die Adresse der zugehörigen Datenparzellenliste gleichzeitig mit der Bildung der Adresse, unter der die Basiszellentabelle gespeichert wird, zu bilden, weswegen die Basiszellentabelle und die Datenparzellenliste bei der gleichen Ausleseoperation geholt werden können.
- Es ist günstig, daß die Kapazität einer Speicherparzelle eine Bytelänge hat, die zwischen 2 KByte und 32 KByte liegt. 2 KByte entspricht der Kapazität eines Sektors einer optischen oder magnetischen Speicherplatte. 32 KByte kann aus dem Massenspeicher noch innerhalb einer akzeptablen Zeit geholt werden.
- Wenn der Datenbestand eine Straßenkarte ist, ist es günstig, daß, wenn der Datenbestand entsprechend dem vorgegebenen regelmäßigen Unterteilungsmuster in gleiche Flächen abdeckende Hauptzellen unterteilt wird und die Hauptzelle entsprechend dem weiteren vorgegebenen regelmäßigen Unterteilungsmuster in gleiche Flächen abdeckende Basiszellen unterteilt wird, die Zahl der Basiszellen in jeder Hauptzelle eine geradzahlige Potenz von 2 ist. So kann eine einfache Unterteilung des Datenbestandes, beispielsweise eine Viererbaumunterteilung, erhalten werden.
- Es ist günstig, daß die Hauptzellen und die Basiszellen jeweils ein quadratisches Segment der Straßenkarte darstellen und daß das erste Kennzeichen und das Basiszellenkennzeichen die Längen der durch die Hauptzelle bzw. die Basiszelle dargestellten Quadrate angeben. Suchen in dem Datenbestand wird dadurch vereinfacht, weil jetzt unmittelbar mit Koordinaten der Straßenkarte gerechnet werden kann.
- Eine weitere bevorzugte Ausführungsform eines erfindungsgemäßen Verfahrens ist dadurch gekennzeichnet, daß die den Hauptzellen und den Basiszellen zugeordnete Rangordnung durch Verwendung eines Peano-N-Schlüssels bestimmt wird. Die Verwendung eines Peano-N-Schlüssels liefert ein effizientes Verfahren, eine Datenparzelle für die Speicherung und das Aufsuchen von in dem Speicher gespeicherte Straßenkarten aufzufinden.
- Es ist günstig, daß eine weitere virtuelle Adresse durch Addieren eines vorgegebenen Wertes zu der virtuellen Adresse erzeugt wird, und daß die Speicherparzelle, in der die weitere virtuelle Adresse liegt, ebenfalls geholt wird. Falls es sich bei dem Datenbestand um Straßenkarten handelt, wird Information also schon für den folgenden Teil der Fahrt geholt.
- Die Erfindung betrifft auch eine Vorrichtung zur Durchführung der vorstehend genannten Verfahren.
- Die Erfindung ist besonders für den Einsatz in Fahrzeugnavigationssystemen geeignet. In diesem Fall ist es besonders wichtig, Straßenkartendaten so effizient wie möglich zu speichern und sie so effizient wie möglich zu adressieren.
- Ausführungsbeispiele der Erfindung sind in der Zeichnung dargestellt und werden im folgenden näher beschrieben. Es zeigen:
- Figur 1 eine Ausführungsform einer Straßenkarte, die den in Hauptzellen unterteilten Plan einer Stadt enthält;
- Figur 2 eine Unterteilung von Hauptzellen in Basiszellen;
- Figur 3 die Gruppierung von Basiszellen in Parzellen;
- Figur 4 eine Ausführungsform eines auf den Plan gezeichneten Peano-N- Schlüssels;
- Figur 5 eine Hauptzellentabelle;
- Figur 6 eine Basiszellentabelle;
- Figur 7 eine Parzellenliste;
- Figur 8 die Hauptelemente einer Ausführungsform einer Landfahrzeugnavigationseinrichtung;
- Figur 9 einen Ablaufplan für ein Verfahren, bei dem als Reaktion auf eine virtuelle Adresse eine Parzelle aus dem Massenspeicher geholt wird.
- Der Inhalt eines Datenbestandes wird entweder von der Natur bestimmt, wie beispielsweise bei einer Karte über den Lauf der Flüsse in Europas oder einer Karte, in der die verschiedenen Berge der Alpen wiedergegeben sind, oder im Laufe der Jahre durch den Menschen geformt, wie beispielsweise ein Straßennetz, eine Enzyklopädie, ein Wörterbuch oder ein Telefonbuch. Ein solcher Datenbestand weist, wenn er systematisch unterteilt ist - bei einer Straßenkarte in beispielsweise Blöcke von gleicher Fläche oder bei einem Wörter- oder Telefonbuch alphabetisch -, für die verschiedenen Teile einen ungleichen Belegungsgrad auf. Ein Wörterbuch der niederländischen Sprache enthält beispielsweise nur wenige Wörter mit den Anfangsbuchstaben q, x oder y, während die Wörter mit z.B. dem Anfangsbuchstaben d oder v viele Seiten einnehmen. Das gleiche Problem tritt bei Stadtplänen oder Straßenkarten auf. Figur 1 zeigt den Plan einer Stadt. In dieser Figur ist deutlich zu erkennen, daß beispielsweise der Belegungsgrad der Blöcke CIV und CIII beträchtlich größer ist als der der Blöcke AI und BI.
- Dieser ungleiche Belegungsgrad stellt ein Problem dar, wenn ein solcher Datenbestand digitalisiert und bitweise in einem Massenspeicher gespeichert wird, wie beispielsweise in einer optischen Speicherplatte (CD-ROM) oder einer Magnetplatte. Wenn nämlich für jeden Block die gleiche Menge Speicherraum verwendet werden müßte, würde die Speicherraummenge von dem Block mit dem höchsten Belegungsgrad bestimmt werden, und dies würde zu einer ineffizienten Nutzung des verfügbaren Speicherraums führen.
- Ebensowenig ist es effizient, den Datenbestand fortlaufend zu speichern, ohne zuvor eine systematische Unterteilung durchgeführt zu haben, da die Suche nach einer bestimmten Dateninformation in diesem Datenbestand zu kompliziert und zu zeitraubend wäre. Außerdem muß beim Speichern der Daten auch die wechselseitige Beziehung zwischen den verschiedenen Blöcken einerseits und zwischen den Daten innerhalb des gleichen Blockes andererseits berücksichtigt werden. Im Falle des Stadtplans von Figur 1 muß beispielsweise die Beziehung zwischen den Straßen des Blockes CII und den Daten, mit denen der Block CII in dem Massenspeicher gespeichert wird, ebenso wie die Beziehung zwischen dem Block CII und den angrenzenden Blöcken deutlich sein. Im Falle eines mehrsprachigen Wörterbuches müssen die Wörter, die in den verschiedenen Sprachen die gleiche Bedeutung haben, auf angrenzenden Plätzen gespeichert werden, anders geht bei der Adressierung der Speicherplätze zu viel Zeit verloren.
- Die Notwendigkeit, den verfügbaren Speicherraum effizient zu nutzen, dabei die Beziehung der Daten untereinander zu berücksichtigen und außerdem für effizientes und schnelles Suchen nach einer bestimmten Dateninformation zu sorgen, führt zu hohen Anforderungen bezüglich der Unterteilung des Datenbestandes und seiner Speicherung in dem Massenspeicher.
- Die Erfindung soll jetzt anhand einer Ausführungsform beschrieben werden, für die eine Straßenkarte als Datenbestand gewählt worden ist. Die Erfindung ist jedoch keineswegs auf diese Ausführungsform beschränkt und kann auf jeden Datenbestand angewendet werden, der in Blöcke mit unterschiedlichen Belegungsgraden unterteilt werden kann.
- Ausgehend von dem Stadtplan in Figur 1 wird dieser entsprechend einem vorgegebenen regelmäßigen Unterteilungsmuster in sechzehn Blöcke mit gleichen Abmessungen unterteilt. Jeder dieser als Hauptzellen bezeichneten Blöcke repräsentiert die gleiche Fläche. Nach der Unterteilung in Hauptzellen wird für jede Hauptzelle festgestellt, ob der Dateninhalt in der Hauptzelle in eine Speicherparzelle des Massenspeichers paßt. Eine Speicherparzelle ist eine Raumeinheit in dem Massenspeicher mit einer vorgegebenen Kapazität, beispielsweise einer oder mehrere aufeinanderfolgende Sektoren eines Plattenspeichers. Für einen optischen Speicher, wie im Falle der CD-ROM oder der CD-Interactive, enthält eine Speicherparzelle mindestens 2 KByte, d.h. die Speicherkapazität mindestens eines Sektors einer CD-ROM.
- Eine obere Grenze für die Speicherkapazität einer Speicherparzelle ist beispielsweise 32 KByte, ein Wert, der die Bytemenge darstellt, die noch verhältnismäßig schnell ausgelesen werden kann (ungefähr 0,2 s für eine CD-ROM) und in einem Arbeitsspeicher, beispielsweise einem RAM, gespeichert werden kann. Vorzugsweise wird für eine Speicherparzelle eine Kapazität von 10 KByte gewählt. Somit wird innerhalb sehr kurzer Zeit (ungefähr 0,07 s für eine CD-ROM) eine Informationsmenge geholt, die einerseits ausreichend ist, um ein Bild auf einer Wiedergabeeinheit wiederzugeben und andererseits, um einen Informationsvorrat aufzubauen. Wenn die Information eine Straßenkarte umfaßt, genügen 10 KByte Information, um in einem Navigationssystem den Informationsvorrat auf die Geschwindigkeit abzustimmen, mit der sich das Fahrzeug bewegt, so daß die aktuelle Position des Fahrzeugs ebenso wie Daten über die bei der weiteren Fahrt zu benutzenden Straßen kontinuierlich auf einem Bildschirm wiedergegeben werden können. Die Verwendung von Speicherparzellen mit einer Kapazität von 10 KByte bietet weiterhin die Möglichkeit, gegebenenfalls mehrere Parzellen bei derselben Ausleseoperation zu holen und in dem Arbeitsspeicher zu speichern. Die Hauptzellen, für die die Daten in eine einzige Speicherparzelle passen, wie beispielsweise die Hauptzelle AI, werden nicht weiter unterteilt. Dagegen werden die Hauptzellen, für die die Daten nicht in eine einzige Speicherparzelle passen, wie beispielsweise CII, CIII, BII, BIII entsprechend einem weiteren vorgegebenen regelmäßigen Unterteilungsmuster in kleinere Blöcke unterteilt, und zwar in solche, die innerhalb derselben Hauptzelle gleiche Abmessungen haben.
- Figur 2 zeigt eine solche Unterteilung des in Figur 1 dargestellten Stadtplans in kleinere Blöcke. Die Hauptzellen AIII, BII, III, IV und CII, III und IV und DII, III und IV sind jetzt jeweils in vier gleiche Teile unterteilt (sogenannte Quadrantenunterteilung): AIIIa1, AIIIa2, AIIIb1, AIIIb2, BIIa1, BIIa2, BIIb1, BIIb2 usw., woraufhin wieder festgestellt wird, ob der Dateninhalt jedes dieser Teile in eine Speicherparzelle des Massenspeichers paßt. Wenn jetzt angenommen wird, daß der Dateninhalt jedes dieser Teile in einer einzigen Speicherparzelle gespeichert werden kann, ist weitere Unterteilung nicht notwendig. Würde der Dateninhalt eines solchen Teils nicht in die gleiche Speicherparzelle passen, so würde weiter in vier Teile mit gleichen Abmessungen unterteilt (Viererbaumunterteilung), und dieser Prozeß würde wiederholt, bis der Dateninhalt jedes so erhaltenen Teils in eine Speicherparzelle paßt. Die Anzahl der so erhaltenen Teile innerhalb der gleichen Hauptzelle ist dann immer eine geradzahlige Potenz von 2 und jeder Teil ist ein Quadrat. Solch ein Teil, dessen Dateninhalt in eine Speicherparzelle paßt, wird als Basiszelle für diese Hauptzelle bezeichnet. Eine Hauptzelle kann daher in eine Anzahl Basiszellen unterteilt werden, die alle die gleichen Abmessungen haben. Die Abmessungen der Basiszellen unterschiedlicher Hauptzellen dürfen sich dagegen voneinander unterscheiden.
- Die Unterteilung von Hauptzellen in Basiszellen kann jeoch dazu führen, daß der Belegungsgrad einiger dieser Basiszellen unzureichend ist, um eine Speicherparzelle nahezu vollständig zu füllen. Damit dies nicht zu ineffizienter Nutzung der Kapazität des Massenspeichers führt, wird jetzt für jede so definierte Basiszelle festgestellt, ob ihr Dateninhalt für eine nahezu vollständige Belegung ausreicht. Hierzu wird beispielsweise geprüft, ob der Dateninhalt (Anzahl KByte) einer solchen Basiszelle ausreicht, um mindestens 75% der Kapazität einer Speicherparzelle zu beanspruchen. Wenn eine solche Basiszelle eine für eine nahezu vollständige Belegung einer Speicherparzelle ungenügende Menge Daten enthält, werden die angrenzenden Basiszellen untersucht, und es wird festgestellt, inwieweit eine oder mehrere angrenzende Basiszellen zusammengefaßt werden können, um eine für eine nahezu vollständige Belegung einer Speicherparzelle in dem Speicher ausreichende Menge Daten zusammenzubringen. Bei einer Untersuchung des Dateninhalts der Basiszellen hat sich gezeigt, daß B1Va1 und a2 in einer einzigen Datenparzelle kombiniert werden können. Die Basiszellen BIIIa1 und a2, AIIIa1 und a2 und BIIIb1 und b2, CIVb1 und b2, CIIa1 und a2, DIIb1 und b2, DIIIa1 und b1, DIVa1 und b1, DIVa2 und b2 können ebenfalls in einzelnen Datenparzellen zusammengefaßt werden, wie in Figur 3 dargestellt ist. Auf diese Weise wird also eine Unterteilung des Datenbestandes erhalten, der zu einer effizienten Nutzung des verfügbaren Speicherraumes führt. Die an diese Gruppierung von Basiszellen gestellten Anforderungen sind, daß jede Datenparzelle nur aus einer einzigen Hauptzelle stammende Basiszellen enthalten darf und daß ein und die selbe Basiszelle nur zu einer einzigen Datenparzelle gehören darf.
- Dieses Verfahren der Unterteilung eines Datenbestandes kann nicht nur für Straßenkarten und Stadtpläne, sondern auch für andere Datenbestände verwendet werden. Zum Beispiel: In einem Wörterbuch könnte eine Hauptzelle jedem Buchstaben zugeordnet werden, und diese Hauptzelle würde dann in Datenparzellen unterteilt werden; oder in einem Telefonbuch könnte jede Datenparzelle einen oder mehrere Kabelkeller repräsentieren.
- Sobald der Datenbestand einmal in Datenparzellen unterteilt worden ist, ist er für eine parzellenweise Speicherung in einem Massenspeicher geeignet gemacht worden. Das Problem einer effizienten Speicherung des Datenbestandes ist also gelöst. Neben der parzellenweisen Speicherung eines Datenbestandes in einem Massenspeicher muß es auch möglich sein, eine Dateninformation in effizienter Weise aus diesem gespeicherten Datenbestand abzufragen. Außerdem muß, da ein Benutzer gewohnt ist, einen Datenbestand hinsichtlich des Inhaltes anzusprechen, die Vorrichtung für das Zugreifen auf die Daten des Datenbestandes in dem Massenspeicher ebenfalls imstande sein, diesen Datenbestand über den Inhalt zu adressieren. Diese Forderung bedeutet, daß der Massenspeicher demzufolge mit Hilfe virtueller Adressen adressierbar sein muß. Diese virtuellen Adressen müssen dann in physikalische Adressen übersetzt werden, um Daten aus dem Massenspeicher zu holen.
- Die Unterteilung des Speicherinhaltes in Speicherparzellen stellt jetzt sicher, daß eine solche Übersetzung einer virtuellen Adresse in eine physikalische Adresse in einfacher Weise erfolgen werden kann. Wenn es irgendeine wechselseitige Beziehung zwischen benachbarten Hauptzellen und/oder Basiszellen gibt, wie es beispielsweise für Straßenkarten der Fall ist, ist es günstig, diese Hauptzellen entsprechende einer vorgegebenen Rangordnung anzuordnen. Die Zellen werden vorzugsweise unter Verwendung eines Peano-N-Schlüssels (nach dem italienischen Mathematiker Guiseppe Peano, der im 19. Jahrhundert gelebt hat, benannt) angeordnet. Figur 4 zeigt ein Beispiel für einen Peano-N-Schlüssel, der für den Stadtplan von Figur 1 gezeichnet worden ist. Die Hauptzellen sind so, wie in Figur 4 angegeben, numeriert. Die Nummer 0 wird der Hauptzelle unten links (AI) zugeordnet, während die Nummer 1 der Hauptzelle AII zugeordnet wird, und so weiter, bis die Hauptzelle DIV oben rechts die Nummer 15 erhält. Der Peano-N-Schlüssel definiert jetzt, in welcher Reihenfolge die Hauptzellen angeordnet sind. Beispielsweise ist die Hauptzelle mit der Nummer 0 die erste in der Folge, gefolgt von den Hauptzellen 1, 4, 5, 2... 11, 14, 15. Diese Anordnung bietet den Vorteil, daß benachbarte Zellen, wie beispielsweise 0, 1, 4 und 5 dicht beieinander gespeichert sind, so daß beim Übergang vom Auslesen der einen zum Auslesen der anderen Hauptzelle die Zugriffszeit verkleinert wird, weil die Verschiebung des Lesekopfes, bei Verwendung eines plattenförmigen Speichers, klein bleibt. An einem zuvor bestimmten Platz in dem Massenspeicher wird jetzt eine Hauptzellentabelle gespeichert, die als Bezugsindex für die verschiedenen Hauptzellen dient. Figur 5 gibt ein Beispiel für eine solche Hauptzellentabelle wieder. Die Tabelle setzt sich aus mehreren Teilen zusammen. Teil A enthält eine Kennzeichnung des gesamten Dateninhalts des Massenspeichers. Hierin wird beispielsweise festgelegt, daß der Speicher eine Straßenkarte eines bestimmten Landes oder ein Wörterbuch für eine bestimmte Sprache enthält. Teil B enthält Informationen über den Umfang des gespeicherten Datenbestandes; beispielsweise sind im Falle der Straßenkarte in Teil B die geographischen Koordinaten des Punktes (XL,YL) an der unteren linken Ecke und des Punktes (X,Y) an der oberen rechten Ecke angegeben. Für ein Telefonbuch werden beispielsweise die Bezirke, über die sich der Datenbestand erstreckt, in Teil B mit Hilfe numerischer Codes gespeichert. Ein erstes, das Unterteilungsmuster repräsentierende Kennzeichen wird in Teil C gespeichert. Dieses erste Kennzeichen gibt beispielsweise für die Straßenkarte die aktuelle Fläche oder die aktuelle Länge (LM) einer Hauptzelle an. Für das Beispiel eines Wörterbuches gibt das erste Kennzeichen beispielsweise die Anzahl unterschiedlicher Anfangsbuchstaben pro Hauptzelle an. Teil D enthält eine geordnete Liste mit einem Adressenzeiger (ADD) für jede Hauptzelle, wobei jeder Adressenzeiger einen Speicherplatz angibt, bei dem weitere Information in der betreffenden Hauptzelle gespeichert ist. Außerdem wird neben dem Adressenzeiger (ADD) die von der betreffenden Hauptzelle belegte Speicherkapazität in Sektoren oder Byte angegeben. Mit Hilfe dieser Tabelle ist es daher möglich, eine bestimmte Zelle aus dem Datenbestand zu selektieren und durch Verwendung des Adressenzeigers weitere Informationen aus der in dem Massenspeicher gespeicherten selektierten Hauptzelle zu holen.
- Wenn, wie in Figur 4 gezeigt wird, ein Peano-N-Schlüssel für die Anordnung der verschiedenen Hauptzellen verwendet wird, dann sind die verschiedenen, wie im Teil D der Hauptzellentabelle gespeicherten Adressenzeiger ebenfalls in einer durch Verwendung des Peano-N-Schlüssels erhaltenen Reihenfolge angeordnet. Die in Figur 5 angegebenen Nummern entsprechen den Nummern der Hauptzellen, die so, wie in Figur 4 gezeigt wird, geordnet sind.
- Jeder Adressenzeiger in der Hauptzellentabelle gibt einen Speicherplatz an, auf dem für die betreffende Hauptzelle eine Basiszellentabelle, wie in Figur 6 gezeigt, gespeichert ist. Wie bereits beschrieben, kann eine Hauptzelle aus einer Anzahl Basiszellen zusammengesetzt sein. In dieser Basiszellentabelle ist ein Basiszellenkennzeichen (CL) gespeichert, wie beispielsweise für den Fall einer Straßenkarte die Fläche oder Länge einer Basiszelle. Die Basiszellentabelle enthält weiterhin eine Menge von Indizes (IKL(0)..., IKL(n), wobei n+1 gleich der Anzahl Basiszellen dieser Hauptzelle ist und der Index IKL(i) (0 ≤ i ≤ n) angibt, in welcher Datenparzelle die Basiszelle sich befindet. Die Basiszellen sind vorzugsweise ebenfalls entsprechend einem Peano-N- Schlüssel angeordnet.
- Ein Index IKL(i) in der Basiszellentabelle gibt einen Platz in einer Datenparzellenliste, wie sie in Figur 7 gezeigt wird, an. Die Datenparzellenliste enthält einen weiteren Adressenzeiger für jede Parzelle, die Teil der betreffenden Hauptzelle ist. Der weitere Adressenzeiger gibt die Anfangsadresse (K,ADD) in dem Massenspeicher an, unter der die Daten der Parzelle gespeichert werden. Die Datenparzelle enthält auch eine als Anzahl Sektoren oder Byte angegebene Parzellenlänge (L) für die betreffende Datenparzelle. Vorzugsweise wird die Datenparzellenliste unter einer Adresse in dem Massenspeicher gespeichert, die eine gegebene Abweichung von der Speicheradresse ihrer zugehörigen Basiszellentabelle hat, so daß die Datenparzellenliste in unmittelbarer Nachbarschaft der Basiszellentabelle gespeichert wird. Für jede Hauptzelle steht nur eine Datenparzellenliste zur Verfügung. Bei Verwendung einer CD-ROM als Massenspeicher hat dies den Vorteil, daß die Zugriffszeit für den Zugriff auf die Basiszellentabelle und die Datenparzellenliste verringert wird, weil hierbei keine großen Verschiebungen des Lesekopfes erforderlich sind.
- Die Speicherung von Hauptzellentabellen und deren jeweiliger Basiszellentabelle zusammen mit einer Datenparzellenliste erfordert nur eine geringe Menge an Speicherplatz. Zur Veranschaulichung dieser Tatsache soll jetzt ein praktisches Beispiel betrachtet werden, nämlich eine Karte, die eine Fläche von 256 x 256 km² abdeckt. Diese Fläche wird in Hauptzellen unterteilt, die jeweils eine Fläche von 8 x 8 km² abdecken. Jede Hauptzelle wird noch einmal in Basiszellen unterteilt, die eine Fläche von 0,5 x 0,5 km² abdecken. Wenn jede Hauptzelle 8 x 8 km² abdeckt, wird der gesamte Datenbestand in 2¹&sup0; = 1024 Hauptzellen (256 256 = (2&sup5; 8) (2&sup5; 8) = 2¹&sup0;.8.8) unterteilt. Die Hauptzellentabelle umfaßt also 1024 Adressenzeiger mit der zugehörigen Länge der Hauptzelle. Um diese Daten zu speichern, ist für die Hauptzellentabelle eine Speicherkapazität von ungefähr 8 KByte erforderlich. Da die Basiszellen eine Fläche von 0,5 x 0,5 km² abdecken, gibt es 256 Basiszellen pro Hauptzelle (8 8 = 2&sup4; 0,5 2&sup4; 0,5 = 2&sup8;(0,5.0,5) = 256 (0,5 0,5)). Folglich umfaßt die Basiszellentabelle 256 Indizes IKL, die 256 Byte entsprechen, wenn für jeden Index 1 Byte gewählt wird. Nimmt man jetzt an, daß eine Parzelle im Mittel eine Fläche von 1 x 1 km² abdeckt, dann gibt es 256/4 = 64 verschiedene Parzellen pro Hauptzelle. Wenn eine Kapazität von 10 Byte pro Parzelle für die Daten aus der Parzellenliste gewählt wird, belegt die Datenparzellenliste eine Gesamtkapazität von 64 10 = 640 Byte.
- Nimmt man an, daß während einer Ausleseoperation vier Hauptzellen geholt werden, dann ist es notwendig, eine Menge von Daten zu holen, die die Hauptzellentabelle, vier Basiszellentabellen und vier Datenparzellenlisten repräsentieren, was 8 KByte + 4 (640 + 256) Byte 12 KByte entspricht. Das Holen von 12 KByte aus einer CD-ROM dauert weniger als 0,1 s und stellt daher keine große Belastung für das System dar.
- Der Vorgang des Adressierens eines Platzes im Massenspeicher soll jetzt anhand eines Beispiels beschrieben werden, in dem wieder angenommen wird, daß der in einer CD-ROM oder CD-I gespeicherte Datenbestand eine Straßenkarte eines bestimmten Landes oder eines Teiles davon darstellt. Weiterhin wird angenommen, daß die Hauptzellen und die Basiszellen unter Verwendung eines Peano-N-Schlüssels angeordnet sind. Die CD-ROM-Platte wird in eine Ausleseeinrichtung geladen, die Teil eines Fahrzeugnavigationssystems ist.
- Figur 8 zeigt die Hauptbestandteile einer Ausführungsform eines Landfahrzeugnavigationssystems. Das System umfaßt einen Bus 50, mit dem eine Datenverarbeitungseinheit 51, beispielsweise ein Mikroprozessor, ebenso wie ein Arbeitsspeicher (RAM, 52) sowie der Massenspeicher 53 verbunden ist. Der Massenspeicher wird vorzugsweise von einer optischen Speicherplatte (CD-ROM) und ihrer zugehörigen Ausleseeinrichtung gebildet. Straßenkartendaten, Navigationsdaten und andere Steuerdaten werden in dem Massenspeicher gespeichert. Mit dem Bus sind außerdem eine erste 54 und eine zweite Eingabe/Ausgabe-Schnittstelle 58 verbunden. Ein elektromagnetischer Kompaß 56, Radsensoren 57 und ein Wegstreckenzähler 55 sind mit der ersten Schnittstelle verbunden. All diese Elemente 55, 56 und 57 dienen der Datensammlung zur Bestimmung der aktuellen Fahrzeugposition. Die Bestimmung der Fahrzeugposition wird beispielsweise in dem in Nachrichtenzeitschrift Bd. 36 (1983) Heft 4, S. 214-218 veröffentlichten Beitrag "EVA-Ortungs- und Navigationssystem für Landfahrzeuge", von E.P. Neukirchner, O. Pilsak und D. Schlögl beschrieben. Mit der zweiten Schnittstelle 58 sind eine Tastatur 59 und eine Wiedergabeeinheit 60 verbunden. Weitere Einzelheiten zur Bestimmung der Fahrzeugposition, zur Überwachung der Fortbewegung des Fahrzeugs und deren Wiedergabe auf der Wiedergabeeinheit werden zum Beispiel in der internationalen Patentanmeldung PCT WO 86/02764 beschrieben.
- Nach Laden der CD-ROM in die Ausleseeinrichtung gibt der Benutzer über die Tastatur 59 seinen Abfahrtspunkt und seine Bestimmung ein. Dies erfolgt nach einem bekannten Verfahren, beispielsweise durch Angabe der Straßennamen des Abfahrtspunktes und der Bestimmung. Wenn ein Straßenname eingegeben wird, übersetzt das System diesen in Koordinaten der Straßenkarte. Ein Satz Koordinaten des Abfahrtspunktes und ein Satz Koordinaten des Bestimmungspunktes stellen an sich zwei virtuelle Adressen zur Adressierung der CD-ROM dar.
- Figur 9 ist ein Ablaufplan eines Verfahrens, bei dem mit Hilfe einer virtuellen Adresse eine Speicherparzelle aus dem Massenspeicher geholt wird. Dieses Verfahren wird unter der Steuerung durch die Datenverarbeitungseinheit 31 durchgeführt. Nach dem Start (STRT, 10) des Programms wird die angebotene virtuelle Adresse (VA = XP,YP, 11) in einem ersten Register gespeichert, das Teil seiner Datenverarbeitungseinheit ist, und die Hauptzellentabelle wird aus dem Massenspeicher geholt und in den Arbeitsspeicher 52 geschrieben. Die Informationen über den Umfang des Datenbestandes werden jetzt aus der Hauptzellentabelle (12) geholt. Bei dem Beispiel der Straßenkarte umfassen diese Informationen die Koordinaten (XL, YL; XH, YH) sowie das erste Kennzeichen (LM). Diese Informationen werden in einem zweiten Register gespeichert. Anschließend wird geprüft (13), ob diese virtuelle Adresse einen zwischen den in der Hauptzellentabelle angegebenen Grenzwerten liegenden Wert hat. Bei dem Beispiel der Straßenkarte wird dann geprüft, ob XP [XL, XH] und YP [YL, YH].
- Wenn die virtuelle Adresse nicht innerhalb dieser Grenzwerte liegt, wird eine Fehlermeldung gegeben [ER, 14]. Wenn dagegen die virtuelle Adresse innerhalb dieser Grenzwerte liegt, wird festgestellt, in welcher Hauptzelle die virtuelle Adresse liegt. Wenn die Hauptzellen so wie in Figur 4 angegeben numeriert sind und außerdem entsprechend einem Peano-N-Schlüssel angeordnet sind, werden die Nummer der Hauptzelle, in der die virtuelle Adresse liegt und die Rangordnung dieser Hauptzelle in der Hauptzellentabelle in einer Weise bestimmt, wie im folgenden anhand eines Beispiels gezeigt wird. Man nehme an, daß XL = 0, YL = 0 und daß XP = 155, YP = 230 und LM = 100. Man betrachte dann die Hauptzellen, wie in Figur 4 gezeigt, als Elemente einer Matrix, d.h. in Zeilen und Spalten angeordnet. Für eine gegebene virtuelle Adresse wird mit Hilfe des folgenden Ausdrucks zuerst die Spalte bestimmt (15):
- wobei [ ] die mathematische Funktion GANZZAHLIG darstellt.
- In dem gegebenen Beispiel wird dies
- Die Zeile wird dann in analoger Weise bestimmt (16).
- Die virtuelle Adresse liegt daher in der zweiten Spalte (K = 2) und der dritten Zeile (R = 3). Diese Dateninformation (K = 2, R = 3) wird jetzt in eine Hauptzellennummer (K = 2, R = 3) T 6 übersetzt (17). Jeder Kombination (K,R) wird nämlich eine Nummer zugeordnet, wenn die Hauptzellen so wie in Figur 4 angegeben numeriert sind. Die Hauptzelle mit der Nummer 6 ist die siebte in der Folge bei einer Anordnung entsprechend einem Peano-N-Schlüssel. Folglich wird in dem Teil D der Hauptzellentabelle der siebte Platz adressiert, um die Hauptzelle zu selektieren, in der die gelieferte virtuelle Adresse liegt, und der dort gespeicherte Adressenzeiger mit der zugehörigen Länge wird gelesen (l8).
- Unter Verwendung des selektierten Adressenzeigers wird jetzt mit Hilfe eines Adreßgenerators, der Teil des Mikroprozessors ist, eine Adresse gebildet, und diese Adresse gibt einen Platz im einem Massenspeicher an, bei dem die Basiszellentabelle für die selektierte Hauptzelle gespeichert ist (19). Die bei der gebildeten Adresse vorhandene Basiszellentabelle wird jetzt geholt (20) und in den Arbeitsspeicher geschrieben. Das Basiszellenkennzeichen (CL) wird jetzt aus dieser Basiszellentabelle geholt, und außerdem werden die Anfangskoordinaten (XL', YL') des Ursprungs der selektierten Hauptzelle bestimmt (21). Die Anfangskoordinaten (XL', YL') des Ursprungs der selektierten Hauptzelle werden unter Verwendung der berechneten Werte K und R bestimmt.
- XL' = XL + (K-1)LM
- YL' = YL + (R-1)LM
- In dem gegebenen Beispiel ergibt dies:
- XL' = 0 + (2-1)LM; YL' = 0 + (3-1)LM
- TXL' = 100 YL' = 200.
- Die Werte für XL', YL' und CL werden in einem weiteren Register gespeichert. Schließlich wird in gleicher Weise wie für die Hauptzellen ermittelt, innerhalb welcher Basiszelle die virtuelle Adresse liegt. Hierzu werden die folgenden Berechnungen ausgeführt:
- wobei K' und R' die Spalte bzw. Zeile repräsentieren, in der die Basiszelle liegt. Dies ergibt in dem gegebenen Beispiel, wenn CL gleich 25 gewählt wird:
- K' = 3; R' = 2
- Dieser Wert (K', R') wird dann in eine Basiszellennummer ((K',R')T9) übersetzt (24), die dann in einen Platz (9 T 10) innerhalb dieser Basiszellentabelle umgesetzt wird. An diesem selektierten Platz innerhalb der Basiszellentabelle ist ein Index IKL vorhanden, und dieser Index gibt an, in welcher Datenparzelle die selektierte Basiszelle sich befindet.
- Auf der Grundlage dieses Index wird jetzt eine Adresse gebildet (25), die einen Platz in der Datenparzellenliste angibt. Die bei dem selektierten Platz angegebene Adresse in der Parzellenliste wird jetzt geholt (26), und diese Adresse wird dann dem Massenspeicher zugeführt, und der Inhalt wird geholt (27) und in den Arbeitsspeicher geladen. Also enthält der Arbeitsspeicher jetzt die Information der Datenparzelle, in der die angebotene virtuelle Adresse liegt. Das Verfahren ist damit abgeschlossen (28).
- Vorzugsweise wird beim Holen der Basiszellentabelle (Schritt 20) auch die Datenparzellenliste geholt. Für jede in Basiszellen unterteilte Hauptzelle gibt es immer genau eine Basiszellentabelle und genau eine Parzellenliste, die vorzugsweise nahe beieinander in dem Massenspeicher gespeichert werden. Indem die Basiszellentabelle und die Datenparzellenliste gleichzeitig geholt werden, wird ein zusätzlicher Zugriff auf den Massenspeicher zum Holen der Datenparzellenliste vermieden und Zeit gespart.
- Eine weitere Zeitersparnis beim Zugriff auf den Massenspeicher kann erhalten werden, indem bei der gleichen Ausleseoperation mehrere Speicherparzellen geholt werden. Hierzu wird je nach der Bewegungsrichtung des Fahrzeuges ein vorgegebener Wert Q zu den berechneten Werten K' und R' hinzuaddiert oder von diesen Werten subtrahiert.
- K" = K' ± Q
- R" = R' ± Q
- mit der weiteren Bedingung, daß 1 ≤ K" ≤ LM/CL
- und daß 1 ≤ R" ≤ LM/CL.
- Bei dem gewählten Beispiel, in dem K' = 3 und R' = 2 ist, ergibt sich mit beispielsweise Q = 2: K" = 5 und R" = 4 oder K" = 1 und R" = 0.
- Als Ergebnis werden mehrere Basiszellen und, falls sie zu verschiedenen Speicherparzellen gehören, auch mehrere Speicherparzellen selektiert.
Claims (15)
1. Verfahren zur Speicherung eines digitalen Datenbestandes in einem
Massenspeicher (53), dessen Kapazität in eine Anzahl von Speicherparzellen mit je einer
vorgegebenen Speicherkapazität unterteilt ist, wobei dieses Verfahren die folgenden
Schritte umfaßt:
- Unterteilen des Datenbestandes in eine Anzahl von Hauptzellen nach einem
vorgegebenen regelmäßigen Unterteilungsmuster;
- Unterteilen jeder Hauptzelle in eine weitere Anzahl von Datenparzellen, wobei jede
Datenparzelle einen jeweiligen Teil der Hauptzelle abdeckt, welcher Teil einen
Dateninhalt hat, der nahezu vollständig die Speicherkapazität einer Speicherparzelle
beansprucht;
- Aufstellen einer Kennzeichentabelle mit:
a) einem ersten Kennzeichen zur Kennzeichnung des genannten vorgegebenen
Musters;
b) einem zweiten Kennzeichen zur Identifizierung der genannten Unterteilung in
Datenparzellen;
c) einer Datenparzellenliste für jede Hauptzelle, die für jede Datenparzelle dieser
Hauptzelle einen Adressenzeiger enthält, der angibt, an welchem Speicherplatz
die jeweilige Datenparzelle gespeichert ist;
- Laden des Dateninhalts jeder Datenparzelle unter der durch den Adressenzeiger
angegebenen Adresse in den Massenspeicher und Laden der Kennzeichentabelle;
dadurch gekennzeichnet, daß die Hauptzellen, die mehr als nur eine Datenparzelle
enthalten, nach einem weiteren vorgegebenen regelmäßigen Unterteilungsmuster in eine
solche Zahl von Basiszellen unterteilt werden, daß der Dateninhalt jeder Basiszelle in
einer Speicherparzelle gespeichert werden kann, und wobei, da die erwähnten Parzellen
durch jedesmaliges Zusammenfassen einer oder mehrerer benachbarter Basiszellen einer
selben Hauptzelle gebildet werden, jede Basiszelle nur zu ein und derselben
Datenparzelle gehört, und wobei die Kennzeichentabelle aufgestellt wird durch:
a) Erstellen einer Hauptzellentabelle mit dem ersten Kennzeichen und außerdem
für jede in Basiszellen unterteilte Hauptzelle einem weiteren Adressenzeiger,
der einen Massenspeicherplatz angibt, an dem eine Basiszellentabelle für diese
Hauptzelle gespeichert ist;
b) Bildung des zweiten Kennzeichens für jede in Basiszellen unterteilte Hauptzelle
durch Bildung einer Zahl von Indizes, wobei jeder Index eine Datenparzelle
ihrer zugehörigen Hauptzelle angibt;
c) Zuordnung zu jeder Basiszelle des Index der jeweiligen Datenparzelle, in der
sie aufgenommen ist;
d) Erstellen einer Basiszellentabelle für jede in Basiszellen unterteilte Hauptzelle,
welche Tabelle ein Basiszellenkennzeichen und eine Liste der Basiszellen mit
ihrem zugeordneten Index enthält;
und wobei jede Basiszellentabelle unter ihrer jeweiligen durch den jeweiligen weiteren
Adressenzeiger angegebenen Adresse geladen wird.
2. Verfahren zur Adressierung, zum Zwecke des Retrieval, einer
Datenparzelle in einem Massenspeicher, in dem ein Datenbestand parzellenweise unter
Anwendung eines Verfahrens nach Anspruch 1 gespeichert ist, wobei die zu adressierenden
Datenparzelle durch eine virtuelle, von einem zu dem Dateninhalt dieser Datenparzelle
gehörenden Datenwort gebildete Adresse identifiziert wird, dadurch gekennzeichnet,
daß das Verfahren die folgenden Schritte umfaßt:
a. Holen der Hauptzellentabelle aus dem Massenspeicher;
b. Feststellen, unter Verwendung des ersten Kennzeichens, in welcher Hauptzelle
die gelieferte virtuelle Adresse liegt, und Selektion dieser Hauptzelle;
c. Festlegen, unter Verwendung des weiteren Adressenzeigers der selektierten
Hauptzelle, der Adresse, unter der die zu der selektierten Hauptzelle gehörende
Basiszelle in dem Massenspeicher gespeichert ist;
d. Holen der selektierten, unter der festgelegten Adresse gespeicherten
Basiszellentabelle;
e. Feststellen, unter Verwendung des Basiszellenkennzeichens aus der selektierten
Basiszellentabelle, in welcher Basiszelle die gelieferte virtuelle Adresse liegt,
und Selektion dieser Basiszelle;
f. Holen des der selektierten Basiszelle zugeordneten Index aus der
Basiszellentabelle;
g. Selektieren der von dem geholten Index angegebenen Datenparzelle aus der zu
der selektierten Hauptzelle gehörenden Parzellenliste;
h. Festlegen, anhand des Adressenzeigers der selektierten Parzelle, einer
Speicheradresse zur Adressierung einer Datenparzelle in dem Massenspeicher;
i. Holen des Dateninhaltes der selektierten Parzelle.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Basiszellen einer
selben Hauptzelle in der Basiszellentabelle durch Kennzeichen dargestellt werden,
welche Kennzeichen entsprechend einer vorgegebenen Rangordnung angeordnet sind, und
daß die jeder Basiszelle zugeordneten Indizes eine Position in der Datenparzellenliste
angeben.
4. Verfahren nach Anspruch 1 oder 3, dadurch gekennzeichnet, daß jede
Parzellenliste in dem Massenspeicher unter einer Adresse gespeichert wird, die eine
vorgegebene Abweichung von der Speicheradresse ihrer zugehörigen Basiszellentabelle
hat.
5. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß jede
Datenparzellenliste in dem Massenspeicher unter einer Adresse gespeichert wird, die eine
gegebene Abweichung von der Speicheradresse ihrer zugehörigen Basiszellentabelle hat,
wobei die selektierte Basiszellentabelle und die zugehörige Datenparzellenliste während
derselben Ausleseoperation geholt werden.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Speicher in
Speicherparzellen unterteilt ist, deren Speicherkapazität jeweils zwischen 2 KByte und
32 KByte liegt.
7. Verfahren nach Anspruch 1 oder 6, dadurch gekennzeichnet, daß zur
Feststellung, ob der Dateninhalt einer Basiszelle oder gegebenenfalls einer Hauptzelle
ausreichend ist, um nahezu vollständig die Speicherkapazität einer Speicherparzelle zu
beanspruchen, festgestellt wird, ob der Dateninhalt ausreicht, um mindestens 75% der
Kapazität der Speicherparzelle zu beanspruchen.
8. Verfahren nach Anspruch 1, wobei der Datenbestand eine Straßenkarte
ist, dadurch gekennzeichnet, daß, wenn der Datenbestand entsprechend dem
vorgegebenen regelmäßigen Unterteilungsmuster in gleiche Oberflächenbereiche abdeckende
Hauptzellen unterteilt wird und die Hauptzelle entsprechend dem weiteren vorgegebenen
regelmäßigen Unterteilungsmuster in gleiche Oberflächenbereiche abdeckende
Basiszellen unterteilt wird, die Zahl der Basiszellen in jeder Hauptzelle eine geradzahlige Potenz
von 2 ist.
9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, daß die Hauptzellen
und die Basiszellen jeweils ein quadratisches Segment der Straßenkarte darstellen, und
daß das erste Kennzeichen und das Basiszellenkennzeichen die Längen der durch die
Hauptzelle bzw. die Basiszelle dargestellten Quadrate angeben.
10. Verfahren nach einem der Ansprüche 7, 8 oder 9, dadurch
gekennzeichnet, daß die den Hauptzellen und den Basiszellen zugeordnete Rangordnung durch
Verwendung eines Peano-N-Schlüssels bestimmt wird.
11. Verfahren nach Anspruch 2, wobei der Datenbestand eine Straßenkarte
ist, dadurch gekennzeichnet, daß die virtuelle Adresse durch Verwendung der zu der
anzugebenden geographischen Lage gehörenden geographischen Koordinaten erzeugt
wird.
12. Verfahren nach einem der Ansprüche 2, 5 oder 11, wobei der
Datenbestand eine Straßenkarte ist, dadurch gekennzeichnet, daß eine weitere virtuelle Adresse
durch Addieren eines vorgegebenen Wertes zu der virtuellen Adresse erzeugt wird, und
daß die Speicherparzelle, in der die weitere virtuelle Adresse aufgenommen ist,
ebenfalls geholt wird.
13. Optischer Speicher mit einem gespeicherten Datenbestand, wobei der
Datenbestand nach einem vorgegebenen regelmäßigen Unterteilungsmuster in
Hauptzellen unterteilt ist, die Hauptzellen nach einem weiteren vorgegebenen regelmäßigen
Unterteilungsmuster in eine solche Anzahl von Basiszellen unterteilt sind, daß der
Dateninhalt jeder Basiszelle in einer Speicherparzelle des Speichers gespeichert werden
kann, wobei benachbarte Basiszellen zu Datenparzellen zusammengefaßt werden, so daß
jede Datenparzelle eine Speicherparzelle nahezu vollständig belegt, und wobei der
Speicher außerdem eine Kennzeichentabelle enthält, mit:
- einer Hauptzellentabelle mit einem ersten Kennzeichen, das das Unterteilungsmuster
darstellt, und außerdem für jede unterteilte Hauptzelle einem Adressenzeiger, der einen
Speicherplatz angibt, an dem eine Basiszellentabelle für diese Hauptzelle gespeichert ist;
- einer Basiszellentabelle für jede unterteilte Hauptzelle, welche Tabelle ein
Basiszellenkennzeichen und eine Liste von Indizes enthält, die für jede Basiszelle die sie
aufnehmende Datenparzelle angeben;
- einer Datenparzellenliste für jede unterteilte Hauptzelle, welche Liste für jede Parzelle
einen weiteren Adressenzeiger enthält, der einen Speicherplatz angibt, an dem die
Datenparzelle gespeichert ist, und außerdem ein zweites Kennzeichen, das mittels einer
Liste mit weiteren Indizes die Unterteilung in Datenparzellen darstellt.
14. Vorrichtung zur Adressierung, zum Zwecke des Retrieval, einer
Datenparzelle in einem Massenspeicher, unter Anwendung des Verfahrens nach Anspruch 2,
welche Vorrichtung einen Speicher für die vorübergehende Speicherung der virtuellen
Adresse und der Hauptzellentabelle sowie eine erste Selektionseinheit zur Selektion der
Hauptzelle enthält, in der die gelieferte virtuelle Adresse liegt, wobei die erste
Selektionseinheit so beschaffen ist, daß sie die Selektion unter Verwendung des Kennzeichens
aus der Hauptzellentabelle ausführt, dadurch gekennzeichnet, daß die Vorrichtung
außerdem folgendes umfaßt: einen ersten Adressengenerator zur Generierung der Adresse
für die zu der selektierten Hauptzelle gehörende Basiszellentabelle anhand des weiteren
Adressenzeigers der selektierten Hauptzelle; eine zweite Selektionseinheit zur Selektion
der Basiszelle, in der die gelieferte virtuelle Adresse liegt, wobei diese zweite
Selektionseinheit so beschaffen ist, daß sie die Selektion unter Verwendung des
Basiszellenkennzeichens ausführt; eine dritte Selektionseinheit zur Selektion einer Datenparzelle aus
der Datenparzellenliste anhand des zu der selektierten Basiszelle gehörenden Index; und
einen zweiten Adressengenerator zur Generierung der Adresse, unter der diese
Speicherparzelle gespeichert ist, anhand des Adressenzeigers der selektierten Datenparzelle.
15. Fahrzeugnavigationssystem mit einer Vorrichtung nach Anspruch 14.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL8602654A NL8602654A (nl) | 1986-10-23 | 1986-10-23 | Werkwijze voor het in kavels verdelen en in een massageheugen bitsgewijs opslaan van een gegevensbestand, alsook voor het adresseren van een kavel, en inrichting voor het uitvoeren van de werkwijze. |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3782157D1 DE3782157D1 (de) | 1992-11-12 |
DE3782157T2 true DE3782157T2 (de) | 1993-04-29 |
Family
ID=19848702
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE8787202016T Expired - Lifetime DE3782157T2 (de) | 1986-10-23 | 1987-10-20 | Verfahren und einrichtung zur speicherung einer haufenweise unterteilten binaerdatenbasis. |
Country Status (6)
Country | Link |
---|---|
US (1) | US4888698A (de) |
EP (1) | EP0280795B1 (de) |
JP (1) | JP2697830B2 (de) |
CA (1) | CA1292081C (de) |
DE (1) | DE3782157T2 (de) |
NL (1) | NL8602654A (de) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2786294B2 (ja) * | 1990-02-19 | 1998-08-13 | 株式会社日立製作所 | 図形データ検策・格納方法 |
JP2822525B2 (ja) * | 1990-01-12 | 1998-11-11 | ソニー株式会社 | 記録媒体の再生装置及び再生方法並びに検索方法 |
US5129082A (en) * | 1990-03-27 | 1992-07-07 | Sun Microsystems, Inc. | Method and apparatus for searching database component files to retrieve information from modified files |
DE69131270T2 (de) * | 1990-10-01 | 1999-12-02 | Mannesmann Vdo Ag | Verfahren zur Speicherung eines topologischen Netzwerkes und Verfahren und Geräte, um eine Reihe von 1-Zellen zu identifizieren |
US5457800A (en) * | 1991-05-02 | 1995-10-10 | Smiths Industries Aerospace & Defense Systems, Inc. | Adaptable datalink interface |
US5293616A (en) * | 1991-10-22 | 1994-03-08 | Flint Orin O | Method and apparatus for representing and interrogating an index in a digital memory |
JP2766224B2 (ja) * | 1995-07-26 | 1998-06-18 | 日本電気通信システム株式会社 | 番号翻訳データベース更新方法 |
US7197500B1 (en) | 1996-10-25 | 2007-03-27 | Navteq North America, Llc | System and method for use and storage of geographic data on physical media |
US6047280A (en) * | 1996-10-25 | 2000-04-04 | Navigation Technologies Corporation | Interface layer for navigation system |
US5974419A (en) * | 1996-10-25 | 1999-10-26 | Navigation Technologies Corporation | Parcelization of geographic data for storage and use in a navigation application |
US5953722A (en) * | 1996-10-25 | 1999-09-14 | Navigation Technologies Corporation | Method and system for forming and using geographic data |
US5968109A (en) * | 1996-10-25 | 1999-10-19 | Navigation Technologies Corporation | System and method for use and storage of geographic data on physical media |
US5902347A (en) * | 1996-11-19 | 1999-05-11 | American Navigation Systems, Inc. | Hand-held GPS-mapping device |
US6058390A (en) * | 1996-11-26 | 2000-05-02 | Visteon Technologies, Llc | Vehicle navigation assistance device having fast file access capability |
US5961572A (en) * | 1997-04-01 | 1999-10-05 | Bellsouth Intellectual Property Corporation | System and method for identifying the geographic region of a geographic area which contains a geographic point associated with a location |
US6081803A (en) * | 1998-02-06 | 2000-06-27 | Navigation Technologies Corporation | Support for alternative names in a geographic database used with a navigation program and methods for use and formation thereof |
US6038559A (en) * | 1998-03-16 | 2000-03-14 | Navigation Technologies Corporation | Segment aggregation in a geographic database and methods for use thereof in a navigation application |
US6473770B1 (en) | 1998-03-16 | 2002-10-29 | Navigation Technologies Corp. | Segment aggregation and interleaving of data types in a geographic database and methods for use thereof in a navigation application |
US6112200A (en) * | 1998-03-16 | 2000-08-29 | Navigation Technologies Corporation | Interleaving of data types in a geographic database and methods for application |
US6073076A (en) * | 1998-03-27 | 2000-06-06 | Navigation Technologies Corporation | Memory management for navigation system |
EP1076808B1 (de) | 1998-05-08 | 2005-03-16 | Siemens Aktiengesellschaft | Verfahren zum herstellen eines speichermediums mit einer karte |
US6393149B2 (en) | 1998-09-17 | 2002-05-21 | Navigation Technologies Corp. | Method and system for compressing data and a geographic database formed therewith and methods for use thereof in a navigation application program |
US6438561B1 (en) * | 1998-11-19 | 2002-08-20 | Navigation Technologies Corp. | Method and system for using real-time traffic broadcasts with navigation systems |
JP2000293099A (ja) | 1999-04-09 | 2000-10-20 | Toyota Motor Corp | 地図データベース |
US6700574B1 (en) | 1999-10-29 | 2004-03-02 | Siemens Transportation Systems, Inc. | Spatial data object indexing engine |
US6324470B1 (en) | 2000-03-07 | 2001-11-27 | Navigation Technologies Corporation | Method and system for representing restricted driving maneuvers |
US6829690B1 (en) | 2000-05-23 | 2004-12-07 | Navteq North America, Llc | Method and system for accessing spatially organized geographic data in blocks |
US6591270B1 (en) | 2000-07-28 | 2003-07-08 | Navigation Technologies Corporation | Method for organizing map data |
US6703947B1 (en) | 2000-09-22 | 2004-03-09 | Tierravision, Inc. | Method for organizing and compressing spatial data |
WO2002052227A1 (es) * | 2000-12-22 | 2002-07-04 | Geofactory Technologies, S.A. | Sistema de visualizacion de mapas digitales en internet |
US6782319B1 (en) * | 2002-11-26 | 2004-08-24 | Navteq North America, Llc | Method for organizing map data |
US7099882B2 (en) * | 2003-04-29 | 2006-08-29 | Navteq North America, Llc | Method and system for forming, updating, and using a geographic database |
JP2004362065A (ja) * | 2003-06-02 | 2004-12-24 | Denso Corp | 地図情報検索装置、地図情報検索方法、及び地図情報検索プログラム |
JP4413555B2 (ja) * | 2003-08-11 | 2010-02-10 | アルパイン株式会社 | Av再生システム及びav装置 |
US20060058952A1 (en) * | 2004-09-07 | 2006-03-16 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
US20060080032A1 (en) * | 2004-09-07 | 2006-04-13 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
US20060058953A1 (en) * | 2004-09-07 | 2006-03-16 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
US20060058951A1 (en) * | 2004-09-07 | 2006-03-16 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
US20060080031A1 (en) * | 2004-09-07 | 2006-04-13 | Cooper Clive W | System and method of wireless downloads of map and geographic based data to portable computing devices |
WO2006086766A2 (en) * | 2005-02-11 | 2006-08-17 | Holtec International, Inc. | Manifold system for a ventilated storage for high level nuclear waste |
TWI361404B (en) * | 2008-02-18 | 2012-04-01 | Ind Tech Res Inst | Storage and search method for flag event on two-dimensional space |
US20100082564A1 (en) * | 2008-10-01 | 2010-04-01 | Navteq North America, Llc | Spatial Index for Locating Geographic Data Parcels Stored on Physical Storage Media |
US8135716B2 (en) * | 2008-12-10 | 2012-03-13 | Sap Ag | Systems and method for mapping large object data content in a database table to a work area |
US9858287B2 (en) * | 2011-01-28 | 2018-01-02 | Nec Corporation | Storage system |
EP3521123B1 (de) * | 2016-10-03 | 2023-09-06 | Hitachi Astemo, Ltd. | Fahrzeuginterne elektronische steuerungsvorrichtung |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3597745A (en) * | 1969-08-19 | 1971-08-03 | Kaiser Aluminium Chem Corp | Method for arrangement and indexing of digital data in storage |
US4550317A (en) * | 1982-09-29 | 1985-10-29 | Toyota Jidosha Kabushiki Kaisha | Drive guide display system for motor vehicle |
JPS6067989A (ja) * | 1983-09-26 | 1985-04-18 | 株式会社日立製作所 | 画像表示装置 |
JPS60239876A (ja) * | 1984-05-15 | 1985-11-28 | Setsutaka Tomochika | 広範囲パタ−ン領域の中から特定分割区域を検索する方法 |
AU5064485A (en) * | 1984-10-22 | 1986-05-15 | Etak Inc. | Apparatus and method for displaying a map |
US4706198A (en) * | 1985-03-04 | 1987-11-10 | Thurman Daniel M | Computerized airspace control system |
JPS61251888A (ja) * | 1985-04-30 | 1986-11-08 | 株式会社デンソー | 地図表示装置 |
US4685068A (en) * | 1985-08-20 | 1987-08-04 | The Singer Company | Generic database generator system and method |
US4692880A (en) * | 1985-11-15 | 1987-09-08 | General Electric Company | Memory efficient cell texturing for advanced video object generator |
-
1986
- 1986-10-23 NL NL8602654A patent/NL8602654A/nl not_active Application Discontinuation
-
1987
- 1987-10-19 US US07/110,303 patent/US4888698A/en not_active Expired - Lifetime
- 1987-10-20 DE DE8787202016T patent/DE3782157T2/de not_active Expired - Lifetime
- 1987-10-20 CA CA000549708A patent/CA1292081C/en not_active Expired - Lifetime
- 1987-10-20 EP EP87202016A patent/EP0280795B1/de not_active Expired - Lifetime
- 1987-10-23 JP JP62266649A patent/JP2697830B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2697830B2 (ja) | 1998-01-14 |
CA1292081C (en) | 1991-11-12 |
DE3782157D1 (de) | 1992-11-12 |
NL8602654A (nl) | 1988-05-16 |
US4888698A (en) | 1989-12-19 |
JPS63111551A (ja) | 1988-05-16 |
EP0280795B1 (de) | 1992-10-07 |
EP0280795A1 (de) | 1988-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3782157T2 (de) | Verfahren und einrichtung zur speicherung einer haufenweise unterteilten binaerdatenbasis. | |
DE4422391C2 (de) | Geographisches Informationsanzeigegerät | |
DE3609288C2 (de) | ||
DE10031535B4 (de) | Karteninformationsanzeigeeinrichtung für einen sich bewegenden Körper und Verfahren zur Anzeige von Karteninformation für einen sich bewegenden Körper | |
DE102004025599A1 (de) | Auffinden von Karteninformationen | |
DE2659042A1 (de) | Datenbanksystem | |
DE102008010419A1 (de) | Vorrichtung und Verfahren zur Erstellung eines Textobjekts | |
DE10251440A1 (de) | Reproduzierbare Auswahl von Elementen in einer Hierarchie | |
DE10360442A1 (de) | Kartensuchsystem | |
DE19620845B4 (de) | Navigationssystem zur Führung zu einem Ziel und für das Navigationssystem verwendetes Aufzeichnungsmedium | |
DE69924249T2 (de) | Verfahren zum herstellen eines speichermediums mit einer karte | |
DE2310631B2 (de) | Speicherhierarchie fur ein Datenverarbeitungssystem | |
DE3643585A1 (de) | Verarbeitungssystem fuer grafische daten | |
DE2758829A1 (de) | Multiprozessor-datenverarbeitungssystem | |
DE3736455A1 (de) | Hierarchisches ablagesystem | |
DE3586447T2 (de) | Kompression von binaerzahlen fuer ihre speicherung. | |
DE2221442A1 (de) | Assoziativspeicher | |
DE4435903A1 (de) | Verfahren, EDV-System und Zugriffsfilter zum gebietsorientierten Zugriff auf eine Datenbank | |
EP1930697A2 (de) | Verfahren und Vorrichtung zur Auswahl eines Ziels, insbesondere bei einem Navigationssystem | |
DE1474042C3 (de) | Datenspeichersystem zur Ein- und Ausspeicherung von in Ketten zusammengefaßten Daten unterschiedlicher Feldlänge | |
EP2997333B1 (de) | Verfahren zum betreiben eines navigationssystems, navigationssystem und kraftfahrzeug | |
EP0912952B1 (de) | Datenbanksystem und verfahren zum verwalten eines n-dimensionalen datenbestands | |
DE19714719C1 (de) | Verfahren zur Reduzierung des Speicherbedarfs einer Datenbank und Vorrichtung zur Durchführung des Verfahrens | |
DE2261586A1 (de) | Speichereinrichtung | |
DE3534080C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: PHILIPS ELECTRONICS N.V., EINDHOVEN, NL |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: MANNESMANN VDO AG, 60388 FRANKFURT, DE |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: SIEMENS AG, 80333 MUENCHEN, DE |