EP2499573A1 - Speicheranordnung - Google Patents
SpeicheranordnungInfo
- Publication number
- EP2499573A1 EP2499573A1 EP10765435A EP10765435A EP2499573A1 EP 2499573 A1 EP2499573 A1 EP 2499573A1 EP 10765435 A EP10765435 A EP 10765435A EP 10765435 A EP10765435 A EP 10765435A EP 2499573 A1 EP2499573 A1 EP 2499573A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- memory
- data
- area
- speed
- program
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60R—VEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
- B60R16/00—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
- B60R16/02—Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/25—Using a specific main memory architecture
- G06F2212/251—Local memory within processor subsystem
- G06F2212/2515—Local memory within processor subsystem being configurable for different purposes, e.g. as cache or non-cache memory
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
Definitions
- the present invention relates to the field of memory architectures in data processing systems.
- cache memories are often used for temporary storage in order to achieve higher data processing rates.
- a command processor is to be provided with data and commands from a main memory with a very short access time.
- main memory Depending on the type of data stored in the main memory, it may be embodied as a random access memory (RAM) or as a ROM (read only memory). Due to the necessarily required, high storage capacity short access times can only be realized with a huge technical effort, which is not economically and technically difficult. It follows that the data flow rates may vary depending on the embodiment of the main memory. For this reason, the aforementioned buffers having a smaller storage capacity and the consequent shorter access time are switched, for example, between functional units communicating with each other, such as between a main memory and a command processor.
- Operation of the buffer memory is usually organized such that the data and instructions requested by a command processor during program execution are likely to already be in the buffer memory when needed, resulting in a reduction in access times due to the reduction of pauses in the execution of a computer program and a concomitant increase in the processing speed allows.
- a main memory is used both for data and for command storage, which is required for example in diagnostic systems, which are used for example in engine controls for the diagnosis of drives, but it is often necessary to store an area in the main memory reserve, however, which further increases the required capacity.
- the data memory can be used as program memory, for which purpose a program instruction sequence is copied from a permanent program memory into a non-permanent data memory.
- a cache memory is used for the temporary storage of diagnostic program instructions in a system for checking a microprocessor.
- this solution is not resource-efficient because it requires the provision of a cache dedicated to instruction caching.
- the invention is based on the knowledge that an efficient memory arrangement can be achieved by dynamically configuring a memory as a data memory for data storage or as a buffer memory, i. Cache memory, for temporary program command storage, can be realized.
- the invention relates to a memory arrangement having a memory, wherein at least one memory area of the memory can be configured as a data memory or as a buffer memory as a function of a required memory operating speed. If the at least one memory area of the memory is configured as a data memory, then it can be used for example for permanent data storage. On the other hand, if the at least one memory area is configured as a temporary buffer memory, it is used, for example, for storing program instructions.
- a further memory area of the memory area is configured as a data memory or as a temporary buffer memory.
- both memory areas of the memory can be configured as data memories or as permanent buffer memories, so that the entire memory can be configured as a data memory or as a temporary buffer memory.
- a control device or a processor is provided for configuring the memory so that the configuration of the memory can advantageously be performed by a higher-level entity.
- the memory arrangement comprises a further memory, which is connected upstream of the aforementioned memory, wherein a memory operating speed of the memory is not higher, preferably lower, than a memory operating speed of the further memory.
- a memory operating speed of the memory is not higher, preferably lower, than a memory operating speed of the further memory.
- the memory arrangement comprises a further one
- Memory for example, the aforementioned memory, which is upstream of the memory, wherein the further memory via the memory, for example exclusively via the memory, can be reached, whereby advantageously an increase in the memory working speed can be achieved, in particular when the memory as a Cache memory is configured.
- the memory arrangement comprises a further memory, which is coupled to the memory, for example upstream thereof, wherein the further memory has a data memory area for data storage and / or a program memory area for program instruction storage, wherein the at least one memory area of the memory as a temporary buffer memory, which is assigned to the data storage area and / or the program memory area, is configurable, and / or wherein a further memory area of the memory as a data memory, which is assigned to the data storage area and / or the program memory area, configurable.
- the memory may contain a data storage rich for longer-term data storage and a temporary cache memory area for cache storage, whereby an advantageous flexibility of the memory array is achieved.
- the required memory operating speed comprises an access speed, which is required, for example, for processing certain data, or a storage speed.
- the required memory operating speed may also depend on a required data processing speed or on a required instruction reading speed, so that the memory arrangement according to the invention can be used in a multiplicity of different data processing scenarios.
- the required memory working speed can be determined on the basis of a required data processing speed or a required command reading speed, as a result of which the memory can advantageously be configured as needed.
- the at least one memory area of the memory can be configured during initialization of the memory arrangement.
- the memory device can be initialized, for example, by a processor accessing it, or initialized during initialization of the processor, which advantageously ensures that the memory configuration can be carried out in an application-specific manner, for example for diagnostic purposes.
- the invention relates to a data processing device, for example a motor control unit, which may be programmable, with the memory arrangement according to the invention and a processor device, for example a processor, which is designed to access the memory arrangement.
- a data processing device for example a motor control unit, which may be programmable
- a processor device for example a processor, which is designed to access the memory arrangement.
- the invention relates to a drive control device for controlling a vehicle drive, which has the memory arrangement according to the invention, which for storing drive diagnostic data or program commands for carrying out a diagnosis of the vehicle drive.
- the invention relates to a memory configuration method for configuring an operating mode of a memory, comprising the step of configuring at least one memory area of the memory as a function of a required memory operating speed as a data memory or as a temporary buffer memory.
- Fig. 1 a data processing device
- Fig. 2 is a data processing device.
- FIG. 2 shows a data processing device having a memory arrangement comprising a memory 101 and a further memory 103 arranged upstream of it.
- the data processing arrangement further comprises an instruction processor 105 connected downstream of the memory 101.
- the memory 101 is preferably configurable and can be used, for example, as a temporary buffer memory or as a primary data memory.
- the further memory 103 comprises, for example, a data memory area 107 and a program memory area 109, wherein both memory areas communicate with the memory 101.
- the data storage area 107 can be realized for example by a RAM (Random Access Memory).
- the program storage area 109 can be realized by means of a ROM (ROM: Read Only Memory).
- the memory 101 may be configured as a buffer memory or as a data memory.
- one or more memory areas of the memory 101 may be configured as a buffer memory and / or as a data memory.
- FIG. 2 shows the data processing device from FIG. 1 according to a further exemplary embodiment, in which the memory 101 has a memory area 201 which is configured, for example, as a buffer memory area and has a further memory area 203, which for example serves as a data and / or program memory is configured.
- the data storage area 107 and the program storage area 109 communicate with the buffer storage area 201 of the memory 101.
- the other storage area 203 is used as the primary data storage on which the command processor 105 can separately access, for example.
- these accesses can be bus-oriented.
- separate lines 205 and 207 may be provided for this purpose, wherein the command processor 105 communicates with the buffer memory area 201 by means of the lines 205 and with the data and / or program memory area 203 by means of the lines 207.
- the lines 205 and 207 may be temporarily providable or hardwired.
- the aforementioned RAMs can be used as a data memory or as a main memory of the data processing device. These can also be used as read / write memory. Since the access time for all memory cells is approximately the same for both reading and writing, the RAMs are therefore referred to herein as random access memory, ie "random access".
- the RAMs can be used as non-permanent memories, that is, the data is preferably stored only until the power supply is interrupted.
- such a buffer memory can also be used as a program memory, for which purpose a command sequence can be copied from a permanent program memory into the non-permanent data memory.
- the memory 101 may be used primarily as a buffer memory, which may be its primary function, and additionally as a data and / or program memory, which may be its secondary function. The switching between the primary and the secondary function can for example be demand-driven and dynamic.
- the processing speed of the memory array of the required data processing speed can be adjusted. For example, if the memory 101 is configured as a data and / or program memory, then the maximum possible processing speed, i. the memory operating speed, lower compared to the temporary cache mode. However, if the reduced processing speed for the respective application is sufficient, the memory 101 can be advantageously configured as a program and / or data memory.
- the data processing device can use the data to determine when it is possible to configure the memory 101 in the respective operating mode. If the memory 101 is to be used as a program and / or data memory, this can be determined, for example, during an initialization thereof. In this case, the memory 101, which is otherwise used as a cache memory, can be reconfigured from the primary function to the secondary function. However, if the memory 101 is to be used as a buffer memory, a reconfiguration to the primary function can take place. As a result of this dynamic switching of the operating modes, there is the possibility of using the memory 101 as required, so that an optimization with respect to the running time or with regard to the available resources with regard to the program and / or data memory can take place as required.
- the memory arrangement according to the invention or the data processing device can be used in an engine control unit, which can perform a diagnosis of a drive.
- a diagnostic function is advantageously started in the engine control unit, however, for the execution of which a maximum Processing speed is not necessary.
- a signal can be recorded over time, wherein the evaluation of the acquired data can then be carried out by means of an algorithm.
- This signal data can be stored, for example, in the dynamically configurable memory 101, which can be configured as a data memory, and assigned to the algorithm for
- known diagnostic functions can be divided into two groups.
- the first group contains, for example, functions that are executed during a driving operation.
- the second group there may be special diagnostic functions that can only be active during a stay in a workshop, for example.
- the main memory is used as program memory, although this functionality is required only very rarely and never during an actual driving operation.
- the diagnostic function can also be loaded into an upload memory area, which can not be provided statically but dynamically in the memory 101.
- reconfigure the cache into the primary or secondary function it is possible, for example, to implement a hardware-based control in a control unit which, for example, configures the memory 101 as a function of a particular application, for example a diagnostic function.
- reconfiguring the cache does not necessarily have to be done via a hardware controller. It can also be implemented by software as a software program, which in the ECU initialization - triggered by a diagnostic tester - performs the reconfiguration of the cache.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Mechanical Engineering (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
Abstract
Die Erfindung betrifft eine Speicheranordnung mit einem Speicher (101), wobei zumindest ein Speicherbereich (201, 203) des Speichers (101) in Abhängigkeit von einer benötigten Speicherarbeitsgeschwindigkeit als Datenspeicher oder als Pufferspeicher konfigurierbar ist.
Description
Beschreibung
Titel
Speicheranordnung Stand der Technik
Die vorliegende Erfindung betrifft das Gebiet der Speicherarchitekturen in Datenverarbeitungsanlagen.
In modernen Datenverarbeitungsanlagen werden oft Pufferspeicher, so genannte Cache-Speicher, zur temporären Speicherung eingesetzt, um höhere Datenverarbeitungsraten zu erreichen. Dies ist insbesondere in Datenverarbeitungssystemen, beispielsweise in Steuergeräten von Fahrzeugen oder in PCs (PC: Personal Computer) von Vorteil, wo beispielsweise einem Befehlsprozessor Daten und Befehle aus einem Hauptspeicher mit einer sehr kurzen Zugriffszeit bereitgestellt werden sollen. In Abhängigkeit von der Art der in dem Hauptspeicher gespeicherten Daten kann dieser als ein RAM-Speicher zur Datenspeicherung (RAM: Random Access Memory) oder als ein ROM-Speicher zur Programmbe- fehlsspeicherung (ROM: Read Only Memory) ausgeführt sein. Aufgrund der notwendigerweise benötigten, hohen Speicherkapazität können kurze Zugriffszeiten jedoch nur mit einem enormen technischen Aufwand realisiert werden, was nicht wirtschaftlich und technisch schwierig ist. Daraus folgt, dass die Daten- flussgeschwindigkeiten in Abhängigkeit von der Ausführungsform des Hauptspeichers unterschiedlich sein können. Aus diesem Grund werden die vorgenannten Pufferspeicher mit einer kleineren Speicherkapazität und der dadurch bedingten kürzeren Zugriffszeit beispielsweise zwischen miteinander kommunizierende Funktionseinheiten, wie beispielsweise zwischen einen Hauptspeicher und einen Befehlsprozessor, geschaltet.
Ein Betrieb des Pufferspeichers wird üblicherweise derart organisiert, dass die während des Programmablaufs von einem Befehlsprozessor angeforderten Daten und Befehle sich mit großer Wahrscheinlichkeit bereits in dem Pufferspeicher befinden, wenn diese benötigt werden, was eine Reduktion der Zugriffszeiten
aufgrund der Verringerung von Pausen in der Abarbeitung eines Computerprogramms und einer damit einhergehenden Erhöhung der Abarbeitungsgeschwindigkeit ermöglicht.
Sollte ein Hauptspeicher sowohl zur Daten- als auch zur Befehlsspeicherung verwendet werden, was beispielsweise in Diagnosesystemen, welche beispielsweise in Motorsteuerungen zur Diagnose von Antrieben eingesetzt werden, gefordert wird, so ist es jedoch oft notwendig, für die Ablage der Daten einen Bereich im Hauptspeicher zu reservieren, wodurch sich die benötigte Kapazität jedoch weiter erhöht. Des Weiteren kann der Datenspeicher als Programmspeicher eingesetzt werden, wozu eine Programmbefehlssequenz aus einem permanenten Programmspeicher in einen nicht-permanenten Datenspeicher kopiert wird. In der Druckschrift US 7,0096,385 B1 wird beispielsweise zur temporären Speicherung von diagnostischen Programminstruktionen in einem System zum Überprüfen eines Mikroprozessors ein Cache-Speicher eingesetzt. Diese Lösung ist jedoch nicht ressourcen-effizient, weil sie das Vorsehen eines ausschließlich zur Zwischenspeicherung von Instruktionen bestimmten Cache-Speichers erfordert.
Offenbarung der Erfindung
Die Erfindung basiert auf der Kenntnis, dass eine effiziente Speicheranordnung durch eine dynamische Konfigurierung eines Speichers als Datenspeicher zur Datenspeicherung oder als Pufferspeicher, d.h. Cache-Speicher, zur temporären Programmbefehlsspeicherung, realisiert werden kann.
Gemäß einem Aspekt betrifft die Erfindung eine Speicheranordnung mit einem Speicher, wobei zumindest ein Speicherbereich des Speichers in Abhängigkeit von einer benötigten Speicherarbeitsgeschwindigkeit als Datenspeicher oder als Pufferspeicher konfigurierbar ist. Ist der zumindest eine Speicherbereich des Speichers als Datenspeicher konfiguriert, so kann dieser zur beispielsweise dauerhaften Datenspeicherung herangezogen werden. Ist der zumindest eine Speicherbereich hingegen als temporärer Pufferspeicher konfiguriert, so wird dieser beispielsweise zur Speicherung von Programmbefehlen verwendet.
Gemäß einer vorteilhaften Ausführungsform ist ein weiterer Speicherbereich des Speicherbereichs als Datenspeicher oder als temporärer Pufferspeicher konfigu-
rierbar. Beide Speicherbereiche des Speichers können jedoch als Datenspeicher oder auch als permanente Pufferspeicher konfiguriert werden, so dass der gesamte Speicher als Datenspeicher oder als temporärer Pufferspeicher konfiguriert werden kann.
Gemäß einer vorteilhaften Ausführungsform ist zur Konfigurierung des Speichers eine Steuerungseinrichtung oder ein Prozessor vorgesehen, sodass die Konfigurierung des Speichers in vorteilhafter Weise durch eine übergeordnete Entität durchgeführt werden kann.
Gemäß einer vorteilhaften Ausführungsform umfasst die Speicheranordnung einen weiteren Speicher, welcher dem vorstehend erwähnten Speicher vorgeschaltet ist, wobei eine Speicherarbeitsgeschwindigkeit des Speichers nicht höher, bevorzugt geringer, als eine Speicherarbeitsgeschwindigkeit des weiteren Spei- chers ist. Dies kann beispielsweise dadurch erreicht werden, dass die Speicherkapazität des Speichers geringer als die Speicherkapazität des weiteren Speichers ist, so dass eine vorteilhafte Arbeitsgeschwindigkeitserhöhung erreicht werden kann. Gemäß einer Ausführungsform umfasst die Speicheranordnung einen weiteren
Speicher, beispielsweise den vorgenannten Speicher, welcher dem Speicher vorgeschaltet ist, wobei der weitere Speicher über den Speicher, beispielsweise ausschließlich über den Speicher, erreichbar ist, wodurch in vorteilhafter Weise eine Erhöhung der Speicherarbeitsgeschwindigkeit erreicht werden kann, insbe- sondere wenn der Speicher als ein Cache-Speicher konfiguriert ist.
Gemäß einer Ausführungsform umfasst die Speicheranordnung einen weiteren Speicher, welcher mit dem Speicher gekoppelt, beispielsweise diesem vorgeschaltet, ist, wobei der weitere Speicher einen Datenspeicherbereich zur Daten- speicherung und/oder einen Programmspeicherbereich zur Programmbefehls- speicherung aufweist, wobei der zumindest eine Speicherbereich des Speichers als temporärer Pufferspeicher, welcher dem Datenspeicherbereich und/oder dem Programmspeicherbereich zugeordnet ist, konfigurierbar ist, und/oder wobei ein weiterer Speicherbereich des Speichers als Datenspeicher, welcher dem Daten- Speicherbereich und/oder dem Programmspeicherbereich zugeordnet ist, konfigurierbar ist. Somit kann der Speicher beispielsweise einen Datenspeicherbe-
reich zur längerfristigen Datenspeicherung und einen temporären Pufferspeicherbereich zur Cache-Speicherung aufweisen, wodurch eine vorteilhafte Flexibilität der Speicheranordnung erreicht wird.
Gemäß einer vorteilhaften Ausführungsform umfasst die benötigte Speicherarbeitsgeschwindigkeit eine Zugriffsgeschwindigkeit, welche beispielsweise zum Abarbeiten von bestimmten Daten benötigt wird, oder eine Speicherungsgeschwindigkeit. Die benötigte Speicherarbeitsgeschwindigkeit kann ferner von einer benötigten Datenverarbeitungsgeschwindigkeit oder von einer benötigten Befehlslesegeschwindigkeit abhängen, so dass die erfindungsgemäße Speicheranordnung in einer Vielzahl von unterschiedlichen Datenverarbeitungsszenarien eingesetzt werden kann.
Gemäß einer vorteilhaften Ausführungsform ist die benötigte Speicherarbeitsgeschwindigkeit anhand einer benötigten Datenverarbeitungsgeschwindigkeit oder einer benötigten Befehlslesegeschwindigkeit bestimmbar, wodurch der Speicher in vorteilhafter Weise bedarfsgerecht konfiguriert werden kann.
Gemäß einer vorteilhaften Ausführungsform ist der zumindest eine Speicherbereich des Speichers beim Initialisieren der Speicheranordnung konfigurierbar. Die Speicheranordnung kann beispielsweise durch einen auf diese zugreifenden Prozessor initialisiert oder beim Initialisieren des Prozessors mitinitialisiert werden, wodurch in vorteilhafter Weise sichergestellt wird, dass die Speicherkonfigurierung anwendungsspezifisch, beispielsweise für Diagnosezwecke, durchgeführt werden kann.
Gemäß einem weiteren Aspekt betrifft die Erfindung eine Datenverarbeitungsvorrichtung, beispielsweise ein Motorsteuergerät, das programmierbar sein kann, mit der erfindungsgemäßen Speicheranordnung und einer Prozessoreinrichtung, beispielsweise einem Prozessor, welcher ausgebildet ist, auf die Speicheranordnung zuzugreifen.
Gemäß einem weiteren Aspekt betrifft die Erfindung ein Antriebssteuergerät zur Steuerung eines Fahrzeugantriebs, das die erfindungsgemäße Speicheranordnung, welche zur Speicherung von Antriebsdiagnosedaten oder Programmbefehlen zur Durchführung einer Diagnose des Fahrzeugantriebs aufweist.
Gemäß einem weiteren Aspekt betrifft die Erfindung ein Speicherkonfigurierungsverfahren zum Konfigurieren einer Betriebsart eines Speichers, mit dem Schritt des Konfigurierens zumindest eines Speicherbereichs des Speichers in Abhängigkeit von einer benötigten Speicherarbeitsgeschwindigkeit als Datenspeicher oder als temporären Pufferspeicher.
Weitere Verfahrensschritte ergeben sich unmittelbar aus der Funktionalität der erfindungsgemäßen Speicheranordnung.
Weitere Ausführungsbeispiele werden Bezug nehmend auf die beiliegenden Zeichnungen erläutert. Es zeigen:
Fig. 1 eine Datenverarbeitungsvorrichtung; und
Fig. 2 eine Datenverarbeitungsvorrichtung.
Fig. 2 zeigt eine Datenverarbeitungsvorrichtung mit einer Speicheranordnung umfassend einen Speicher 101 sowie einen diesem vorgeschalteten weiteren Speicher 103. Die Datenverarbeitungsanordnung umfasst ferner einen dem Speicher 101 nachgeschalteten Befehlsprozessor 105.
Der Speicher 101 ist bevorzugt konfigurierbar und kann beispielsweise als temporärer Pufferspeicher oder als primärer Datenspeicher verwendet werden. Der weitere Speicher 103 umfasst beispielsweise einen Datenspeicherbereich 107 sowie einen Programmspeicherbereich 109, wobei beide Speicherbereiche mit dem Speicher 101 kommunizieren. Der Datenspeicherbereich 107 kann beispielsweise durch ein RAM (RAM: Random Access Memory) realisiert werden. Der Programmspeicherbereich 109 kann hingegen mittels eines ROM (ROM: Read Only Memory) realisiert werden.
Zum Konfigurieren des Speichers 101 kann dieser beispielsweise insgesamt als Pufferspeicher oder als Datenspeicher konfiguriert werden. Darüber hinaus können ein oder mehrere Speicherbereiche des Speichers 101 als Pufferspeicher und/oder als Datenspeicher konfiguriert werden.
Fig. 2 zeigt die Datenverarbeitungsvorrichtung aus Fig. 1 gemäß einem weiteren Ausführungsbeispiel, bei dem der Speicher 101 einen Speicherbereich 201 aufweist, welcher beispielsweise als ein Pufferspeicherbereich konfiguriert ist, und einen weiteren Speicherbereich 203 aufweist, welcher beispielsweise als ein Daten- und/oder Programmspeicher konfiguriert ist. Wie in Fig. 2 dargestellt, kommunizieren der Datenspeicherbereich 107 sowie der Programmspeicherbereich 109 mit dem Pufferspeicherbereich 201 des Speichers 101. Der weitere Speicherbereich 203 wird hingegen als primärer Datenspeicher benutzt, auf welchem der Befehlsprozessor 105 beispielsweise gesondert zugreifen kann. Gemäß einer Ausführungsform können diese Zugriffe busorientiert erfolgen. Gemäß einer weiteren Ausführungsform können hierzu gesonderte Leitungen 205 und 207 vorgesehen sein, wobei der Befehlsprozessor 105 mit dem Pufferspeicherbereich 201 mittels der Leitungen 205 und mit dem Daten- und/oder Programmspeicherbereich 203 mittels der Leitungen 207 kommuniziert. Die Leitungen 205 und 207 können temporär bereitstellbar oder fest verdrahtet sein.
Die vorstehend genannten RAMs können als Datenspeicher bzw. als Hauptspeicher der Datenverarbeitungsvorrichtung eingesetzt werden. Diese können auch als Schreib-/Lesespeicher eingesetzt werden. Da die Zugriffszeit für alle Spei- cherzellen sowohl beim Lesen als auch beim Schreiben in etwa gleich lang ist, werden die RAMs daher vorliegend als Speicher mit wahlfreiem Zugriff, also "Random Access", bezeichnet. In der Regel können die RAMs als nichtpermanente Speicher eingesetzt werden, d.h., dass die Daten bevorzugt nur so lange gespeichert werden, bis die Stromzufuhr unterbrochen wird. Ein derartiger Pufferspeicher kann jedoch auch als ein Programmspeicher eingesetzt werden, wozu eine Befehlssequenz aus einem permanenten Programmspeicher in den nicht-permanenten Datenspeicher kopiert werden kann.
Durch die erfindungsgemäße Anordnung des in den Figuren 1 und 2 dargestell- ten Speichers 101 , welcher als Pufferspeicher bzw. Cache eingesetzt werden kann, wird erreicht, dass dieser vollständig oder teilweise als Daten- und/oder Programmspeicher genutzt werden kann, so dass eine flexible Speicherkapazitätsbereitstellung möglich ist. Wird der Speicher 101 nicht als Cache- sondern als Datenspeicher temporär genutzt, so wird er dann temporär nicht als Pufferspei- eher genutzt.
Der Speicher 101 kann primär als Pufferspeicher, was seine primäre Funktion sein kann, und zusätzlich als Daten- und/oder Programmspeicher genutzt werden, was seine sekundäre Funktion sein kann. Die Umschaltung zwischen der Primär- und der Sekundärfunktion kann beispielsweise bedarfsgerecht und dynamisch erfolgen.
Da der als Pufferspeicher genutzte Cache der Datenverarbeitungsvorrichtung als Daten- und/oder Programmspeicher eingesetzt werden kann, kann die Abarbeitungsgeschwindigkeit der Speicheranordnung der benötigten Datenverarbeitungsgeschwindigkeit angepasst werden. Ist der Speicher 101 beispielsweise als Daten- und/oder Programmspeicher konfiguriert, so ist die maximal mögliche Abarbeitungsgeschwindigkeit, d.h. die Speicherarbeitsgeschwindigkeit, geringer im Vergleich zu der temporären Cache-Betriebsart. Ist die reduzierte Abarbeitungsgeschwindigkeit für die jeweilige Anwendung jedoch ausreichend, so kann der Speicher 101 als Programm- und/oder Datenspeicher vorteilhaft konfiguriert werden.
Die Datenverarbeitungsvorrichtung kann anhand der Daten bestimmen, wann es möglich ist, den Speicher 101 in die jeweilige Betriebsart zu konfigurieren. Soll der Speicher 101 als Programm- und/oder Datenspeicher genutzt werden, so kann dies beispielsweise bei einer Initialisierung desselben festgelegt werden. Hierbei kann der Speicher 101 , welcher sonst als Cache-Speicher eingesetzt wird, von der primären Funktion auf die Sekundärfunktion umkonfiguriert werden. Soll der Speicher 101 jedoch als Pufferspeicher genutzt werden, so kann eine Rekonfigurierung auf die primäre Funktion erfolgen. Durch diese dynamische Umschaltung der Betriebsarten besteht die Möglichkeit einer bedarfsabhängigen Nutzung des Speichers 101 , so dass je nach Bedarf eine Optimierung bezüglich der Laufzeit oder bezüglich der vorhandenen Ressourcen im Hinblick auf den Programm- und/oder Datenspeicher erfolgen kann.
Bevorzugt kann die erfindungsgemäße Speicheranordnung oder die Datenverarbeitungsvorrichtung in einem Motorsteuergerät eingesetzt werden, welches eine Diagnose eines Antriebs durchführen kann. Zur Diagnose eines Fehlers des Antriebs wird in dem Motorsteuergerät vorteilhaft eine Diagnosefunktion gestartet, zu deren Abarbeitung jedoch eine maximale
Abarbeitungsgeschwindigkeit nicht notwendig ist. Hierzu kann beispielsweise ein Signal über die Zeit aufgezeichnet werden, wobei die Auswertung der erfassten Daten anschließend mittels eines Algorithmus erfolgen kann. Diese Signaldaten können beispielsweise in dem dynamisch konfigurierbaren Speicher 101 , welcher als Datenspeicher konfiguriert werden kann, abgelegt und dem Algorithmus zur
Auswertung bereitgestellt werden.
Bekannte Diagnosefunktionen lassen sich hierbei beispielsweise in zwei Gruppen aufteilen: In der ersten Gruppe befinden sich beispielsweise Funktionen, die während eines Fahrbetriebs ausgeführt werden. In der zweiten Gruppe können sich jedoch spezielle Diagnosefunktionen befinden, die ausschließlich während eines Aufenthalts beispielsweise in einer Werkstatt aktiv sein können. Üblicherweise wird dabei der Hauptspeicher als Programmspeicher belegt, obwohl diese Funktionalität nur sehr selten und niemals während eines eigentlichen Fahrbetriebs benötigt wird. Durch die erfindungsgemäß mögliche, temporäre Bereitstellung des Datenspeicherbereichs können die Systemressourcen daher besser genutzt werden.
Über einen Software-Upload in einer Werkstatt kann die Diagnosefunktion ferner in einen Upload-Speicherbereich geladen werden, welcher nicht statisch, sondern dynamisch in dem Speicher 101 bereitgestellt werden kann.
Zur Umkonfigurierung des Cache in die Primär- oder in die Sekundärfunktion kann beispielsweise eine hardwaremäßige Steuerung in einem Steuergerät ein- gesetzt werden, welche beispielsweise in Abhängigkeit von einer jeweiligen Anwendung, beispielsweise Diagnosefunktion, den Speicher 101 konfiguriert. Die Umkonfigurierung des Caches muss jedoch nicht zwingender Weise über eine hardwaremäßige Steuerung erfolgen. Sie kann auch softwaretechnisch als ein Softwareprogramm implementiert sein, das in der Steuergeräte-Initialisierung - ausgelöst von einem Diagnosetester - die Umkonfigurierung des Caches durchführt.
Claims
1 . Speicheranordnung, mit: einem Speicher (101 ), wobei zumindest ein Speicherbereich (201 , 203) des Speichers (101 ) in Abhängigkeit von einer benötigten Speicherarbeitsgeschwindigkeit als Datenspeicher oder als Pufferspeicher konfigurierbar ist.
2. Speicheranordnung gemäß einem der vorstehenden Ansprüche, wobei ein weiterer Speicherbereich (201 , 203) des Speichers (101 ) als Datenspeicher oder als temporärer Pufferspeicher konfigurierbar ist.
3. Speicheranordnung gemäß einem der vorstehenden Ansprüche, wobei zur Konfigurierung des Speichers (101 ) eine Steuerungseinrichtung oder ein Prozessor vorgesehen ist.
4. Speicheranordnung gemäß einem der vorstehenden Ansprüche, mit einem weiteren Speicher (103), wobei zumindest ein Speicherbereich (201 , 203) oder ein weiterer Speicherbereich (201 , 203) des Speichers (101 ) einem weiteren Speicher (103) als Pufferspeicher zuordenbar ist.
5. Speicheranordnung gemäß einem der vorstehenden Ansprüche, mit einem weiteren Speicher (103), welcher mit dem Speicher (101 ) gekoppelt ist, wobei eine Speicherarbeitsgeschwindigkeit des Speichers (101 ) nicht höher, insbesondere geringer, als eine Speicherarbeitsgeschwindigkeit des weiteren Speichers (103) ist.
6. Speicheranordnung gemäß einem der vorstehenden Ansprüche, mit einem weiteren Speicher (103), welcher mit dem Speicher (101 ) gekoppelt ist, wobei der weitere Speicher (103) einen Datenspeicherbereich (107) zur Datenspeicherung und/oder einen Programmspeicherbereich (109) zur Pro- grammbefehlsspeicherung aufweist, und wobei der zumindest einen Spei- cherbereich (201 , 203) des Speichers (101 ) als temporärer Pufferspeicher, welcher dem Datenspeicherbereich (107) und/oder dem Programmspeicherbereich (109) zugeordnet ist, konfigurierbar ist, und/oder wobei ein weiterer Speicherbereich (201 , 203) des Speichers (101 ) als Datenspeicher, welcher dem Datenspeicherbereich (107) und/oder dem Programmspeicherbereich
(109) zugeordnet ist, konfigurierbar ist.
7. Speicheranordnung gemäß einem der vorstehenden Ansprüche, wobei die benötigte Speicherarbeitsgeschwindigkeit eine Zugriffsgeschwindigkeit oder eine Speicherungsgeschwindigkeit umfasst oder von einer benötigten Datenverarbeitungsgeschwindigkeit oder von einer benötigten Befehlslesegeschwindigkeit abhängt.
8. Speicheranordnung gemäß einem der vorstehenden Ansprüche, wobei die benötigte Speicherarbeitsgeschwindigkeit anhand einer benötigten Datenverarbeitungsgeschwindigkeit oder einer benötigten Befehlslesegeschwindigkeit bestimmbar ist.
9. Speicheranordnung gemäß einem der vorstehenden Ansprüche, wobei der zumindest eine Speicherbereich (201 , 203) des Speichers (101 ) beim Initialisieren der Speicheranordnung konfigurierbar ist.
10. Datenverarbeitungsvorrichtung, mit: der Speicheranordnung gemäß einem der Ansprüche 1 bis 9; und einer Prozessoreinrichtung (105), welche ausgebildet ist, auf die Speicheranordnung zuzugreifen.
1 1 . Antriebssteuergerät zur Steuerung eines Fahrzeugantriebs, mit der Datenverarbeitungsvorrichtung gemäß Anspruch 9, welche zur Speicherung von Antriebsdiagnosedaten oder Programmbefehlen zur Durchführung einer Diagnose des Fahrzeugantriebs vorgesehen ist.
12. Speicherkonfigurierungsverfahren zum Konfigurieren einer Betriebsart eines Speichers, mit:
Konfigurieren zumindest eines Speicherbereichs des Speichers in Abhän- gigkeit von einer benötigten Speicherarbeitsgeschwindigkeit als Datenspeicher oder als Pufferspeicher.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102009046518A DE102009046518A1 (de) | 2009-11-09 | 2009-11-09 | Speicheranordnung |
| PCT/EP2010/065331 WO2011054641A1 (de) | 2009-11-09 | 2010-10-13 | Speicheranordnung |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP2499573A1 true EP2499573A1 (de) | 2012-09-19 |
Family
ID=43480900
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP10765435A Withdrawn EP2499573A1 (de) | 2009-11-09 | 2010-10-13 | Speicheranordnung |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US20120173837A1 (de) |
| EP (1) | EP2499573A1 (de) |
| JP (1) | JP2013510353A (de) |
| KR (1) | KR20120103581A (de) |
| CN (1) | CN102656569A (de) |
| DE (1) | DE102009046518A1 (de) |
| WO (1) | WO2011054641A1 (de) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6243735B2 (ja) * | 2010-05-14 | 2017-12-06 | シー・アール・バード・インコーポレーテッドC R Bard Incorporated | カテーテル配置装置および方法 |
| US9571350B2 (en) | 2013-01-23 | 2017-02-14 | International Business Machines Corporation | Network element diagnostic evaluation |
| DE102014203062A1 (de) * | 2014-02-20 | 2015-08-20 | Bayerische Motoren Werke Aktiengesellschaft | Vergrößern des verfügbaren FLASH-Speichers eines Micro-Controllers |
| KR20170068597A (ko) | 2014-10-27 | 2017-06-19 | 텐샤 세러퓨틱스 인코포레이티드 | 브로모도메인 저해제 |
| US10311963B2 (en) * | 2017-04-19 | 2019-06-04 | Arm Limited | Data processing |
| US10482010B2 (en) * | 2017-06-29 | 2019-11-19 | Intel Corporation | Persistent host memory buffer |
Family Cites Families (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH086858A (ja) * | 1994-06-21 | 1996-01-12 | Toshiba Corp | キャッシュ制御装置 |
| KR100188012B1 (ko) * | 1996-01-12 | 1999-06-01 | 윤종용 | 캐시 메모리의 사용 모드 설정 장치 |
| US5915262A (en) * | 1996-07-22 | 1999-06-22 | Advanced Micro Devices, Inc. | Cache system and method using tagged cache lines for matching cache strategy to I/O application |
| JPH10333987A (ja) * | 1997-05-30 | 1998-12-18 | Nec Corp | Cpuコア |
| JP4135220B2 (ja) * | 1998-07-01 | 2008-08-20 | 株式会社デンソー | 車両用電子制御装置 |
| EP1045307B1 (de) * | 1999-04-16 | 2006-07-12 | Infineon Technologies North America Corp. | Dynamische Rekonfiguration des Cache-Speichers eines Mikrokontrollers |
| US6449695B1 (en) * | 1999-05-27 | 2002-09-10 | Microsoft Corporation | Data cache using plural lists to indicate sequence of data storage |
| US6606686B1 (en) * | 1999-07-15 | 2003-08-12 | Texas Instruments Incorporated | Unified memory system architecture including cache and directly addressable static random access memory |
| US6415383B1 (en) * | 1999-10-06 | 2002-07-02 | International Business Machines Corporation | Address offset feature for a hard disk drive |
| JP2001331370A (ja) * | 2000-05-19 | 2001-11-30 | Nec Microcomputer Technology Ltd | マイクロコンピュータ |
| WO2002014981A2 (en) * | 2000-08-14 | 2002-02-21 | Audi Performance & Racing | Enhanced module chipping system |
| US6546456B1 (en) * | 2000-09-08 | 2003-04-08 | International Business Machines Corporation | Method and apparatus for operating vehicle mounted disk drive storage device |
| US7096385B1 (en) | 2002-09-16 | 2006-08-22 | Advanced Micro Devices, Inc. | Method and system for testing a microprocessor |
| JP4065790B2 (ja) * | 2003-01-17 | 2008-03-26 | 三菱電機株式会社 | 車載電子制御装置 |
| DE102004057259A1 (de) * | 2004-11-26 | 2006-06-01 | Robert Bosch Gmbh | Manipulationsgeschütztes Mikrocontrollersystem |
| US8606998B2 (en) * | 2006-08-24 | 2013-12-10 | Advanced Micro Devices, Inc. | System and method for instruction-based cache allocation policies |
| JP2008102733A (ja) * | 2006-10-19 | 2008-05-01 | Hitachi Ltd | コード生成方法およびコンパイラ |
| KR101342074B1 (ko) * | 2006-10-25 | 2013-12-18 | 삼성전자 주식회사 | 컴퓨터시스템 및 그 제어방법 |
| EP2008860B1 (de) * | 2007-06-25 | 2015-06-17 | Mazda Motor Corporation | Steuerung für ein Hybridfahrzeug |
| JP2009259087A (ja) * | 2008-04-18 | 2009-11-05 | Panasonic Corp | メモリ制御回路 |
| US8095764B1 (en) * | 2008-06-30 | 2012-01-10 | Emc Corporation | Dynamic application aware storage configuration |
-
2009
- 2009-11-09 DE DE102009046518A patent/DE102009046518A1/de not_active Withdrawn
-
2010
- 2010-10-13 JP JP2012537337A patent/JP2013510353A/ja active Pending
- 2010-10-13 WO PCT/EP2010/065331 patent/WO2011054641A1/de not_active Ceased
- 2010-10-13 KR KR1020127011860A patent/KR20120103581A/ko not_active Withdrawn
- 2010-10-13 EP EP10765435A patent/EP2499573A1/de not_active Withdrawn
- 2010-10-13 US US13/395,288 patent/US20120173837A1/en not_active Abandoned
- 2010-10-13 CN CN2010800504766A patent/CN102656569A/zh active Pending
Non-Patent Citations (1)
| Title |
|---|
| See references of WO2011054641A1 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20120173837A1 (en) | 2012-07-05 |
| DE102009046518A1 (de) | 2011-05-12 |
| KR20120103581A (ko) | 2012-09-19 |
| WO2011054641A1 (de) | 2011-05-12 |
| JP2013510353A (ja) | 2013-03-21 |
| CN102656569A (zh) | 2012-09-05 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2499573A1 (de) | Speicheranordnung | |
| DE10036278A1 (de) | Verfahren zur Überwachung eines Programmablaufs mittels einer Debug Logik | |
| DE102005037635B4 (de) | Hardwaresteuerung für den Wechsel des Betriebsmodus eines Speichers | |
| EP1744236B1 (de) | Konfiguration von Bauelementen bei einem Übergang von einem Niedrigleistungs-Betriebsmodus in einen Normalleistungs-Betriebsmodus | |
| EP1716490B1 (de) | Einrichtung und verfahren zur analyse von eingebetteten systemen für sicherheitskritische rechnersysteme in kraftfahrzeugen | |
| EP2842398B1 (de) | Verfahren zur umkonfiguration von komponenten und komponente | |
| DE112013005628T5 (de) | Numerische Steuervorrichtung | |
| DE10244922B4 (de) | Programmgesteuerte Einheit und Verfahren zum Debuggen von einer programmgesteuerten Einheit ausgeführten Programmen | |
| WO2009062655A1 (de) | Verfahren zum prüfen eines arbeitsspeichers | |
| DE102016106572A1 (de) | Verfahren zum betreiben eines steuergeräts für ein fahrzeug, steuergerät, betriebssystem, kraftfahrzeug | |
| EP2449438B1 (de) | Verfahren und system zur ansteuerung von mindestens einem aktuator | |
| DE10147484B4 (de) | Verfahren und Vorrichtung zur Ansteuerung von Aktoren, insbesondere von Aktoren zur Kraftstoffeinspritzung bei Einspritzmotoren | |
| DE60128596T2 (de) | Interrupt-steuerung für einen mikroprozessor | |
| DE10200242B4 (de) | Verfahren zur Funktionsüberwachung eines Steuergeräts | |
| DE102014002593A1 (de) | Dynamisches speicherprogrammierbares Steuergerät | |
| DE19903302B4 (de) | Verfahren und Vorrichtung zur Überprüfung der Funktion eines Rechners | |
| DE102004059754A1 (de) | Ein Disk Array System mit Failover und Load Balance Funktionen | |
| EP2593869A1 (de) | Verfahren und vorrichtung zum prüfen eines hauptspeichers eines prozessors | |
| EP1046992B1 (de) | Halbleiterspeicher vom wahlfreien Zugriffstyp mit in zwei Ebenen organisiertem Bussystem | |
| DE102007045602A1 (de) | Programmiersystem | |
| EP3186709A1 (de) | Verfahren zur absicherung von nutzdaten eines speichers und elektronisches rechensystem | |
| EP3720056B1 (de) | Verfahren und system zur parallelen echtzeitanalyse bei funktionsprüfungen von hardware und software von steuergeräten | |
| DE102011105617A1 (de) | Kraftfahrzeug mit einer Vielzahl von Betriebskomponenten | |
| DE10035635A1 (de) | Verfahren und Vorrichtung zum Bearbeiten von Daten in einem Speicher | |
| EP1860514B1 (de) | Anordnung mit mindestens zwei über Kommunikationsmittel verbundenen Automatisierungsgeräten |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| 17P | Request for examination filed |
Effective date: 20120611 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAX | Request for extension of the european patent (deleted) | ||
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
| 18D | Application deemed to be withdrawn |
Effective date: 20150501 |