EP0168121B1 - Méthode et dispositif d'accès à la mémoire dans les systèmes à multi-processeurs - Google Patents
Méthode et dispositif d'accès à la mémoire dans les systèmes à multi-processeurs Download PDFInfo
- Publication number
- EP0168121B1 EP0168121B1 EP85300858A EP85300858A EP0168121B1 EP 0168121 B1 EP0168121 B1 EP 0168121B1 EP 85300858 A EP85300858 A EP 85300858A EP 85300858 A EP85300858 A EP 85300858A EP 0168121 B1 EP0168121 B1 EP 0168121B1
- Authority
- EP
- European Patent Office
- Prior art keywords
- data
- buffer
- processor
- location
- 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
Images
Classifications
-
- 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
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
Definitions
- This invention is in the field of data processing and, in particular, relates to a method and apparatus for the resolution of memory access demands in multiple processor systems.
- processors In many advanced data processing systems, a number of independent processors can have access to a main memory shared by the system. When a processor wishes only to read a particular memory location or even rewrite a specified location, access can be controlled sequentially with little cost in performance. However, it is also common for processors to perform an operation known as a read-modify-write (RMW) operation or the like. This operation involves reading data out of a selected memory location, processing the data read out, and writing modified data back into the specified location.
- RMW read-modify-write
- the problem of handling multiple access requests can become acute when one of the independent processors is carrying out instructions on a string of data, such as moving a string of ASCII-coded data. Since the 8-bit ASCII words (representing language characters, punctuation, etc.) are smaller than the typical 16 bit (or 32 bit) registers around which advanced systems are designed, a modification which involves changing less than the full 16 (or 32) bits often is not controlled by the system hardware.
- a 32-bit wide memory register common to a number of processors can store two data blocks consisting of an integer value (i.e., a fortran *2 integer) on one side (the upper 16 bits) and two ASCII characters on the other side (the lower 16 bits).
- an integer value i.e., a fortran *2 integer
- ASCII characters on the other side
- the lower 16 bits the integer value
- a first processor wished to replace the ASCII characters only, it would need to read the entire register, modify the contents to keep the integer value on one side while changing the characters on the other side and then write the modified 32-bits into the memory. Since this RMW operation cannot occur instantaneously, a second processor might write a new entry into part of the register in the interim (i.e., to replace the integer value) and this data would be lost if the first processor was allowed to enter its modification without any controls.
- the solution to date has been to exclude the second processor in one fashion or another while the first processor performs a RMW operation.
- a computer system having a plurality of processors which can access one or more main memories via a buffer memory is disclosed in US A-3984818 (Gnadeberg et al).
- a multiprocessor data processing system includes a main memory having a plurality of addressed locations, at least a first and a second processor each of which can independently read, modify and write data at the said addressed locations, and buffer means for storing data prior to transmission to the main memory, and is characterised in that the buffer means is content-associative, and in that the system further comprises: control means coupled to the processors, to the main memory, and to the buffer means for controlling the said read and write operations, the control means using the buffer means to store data from an addressed location accessed by the first processor for a Read-Modify-Write operation, the control means issuing a locking instruction for the said addressed location during the pendency of the Read-Modify-Write operation, and in response to a Write operation by the second processor at the said addressed location during the pendency of the Read-Modify-Write operation, the control means altering the normal sequence of memory write operations, whereby multiple processors can concurrently access and write at the same main memory addressed location.
- Such a system may be used particularly in data processing systems which employ write-through buffers to control the movement of data between the processors and main memory.
- a buffer is used to store a series of write instructions from a processor until the memory bus is cleared.
- a content associative buffer can be used to permit a processor seeking to read data to poll the buffer for latest data.
- the content-associative buffer also permits the controller to control new entries whenever data is undergoing a RMW operation.
- a field in microcode is provided for the issuance of a directive whenever a read-modify-write sequence is initiated by a processor.
- the directive i.e., "TAKE A LOCK”
- TAKE A LOCK is dumped into the write buffer at the appropriate address with a tag bit denoting the operation as a lock -- not a write, as well as another tag bit identifying the processor.
- processors seeking to merely read data from the same location will not be impeded and such other processors, in fact, can also write new data for insertion into the memory location.
- microcode instructions further prevent the overwriting of the second processor's data by the first processor, thereby reversing the typical process wherein a second write command to same address in write buffer overrides any data residing there.
- uninterrupted processing essentially is maintained for the two processors. This technique can be applied as well to the case of three or more processors by extrapolation.
- Fig. 1 a general block diagram of the memory access system 10 is shown including at least two processors 12 and 14 connected to a common memory 18 via a memory bus 16 which includes a data path 16a, an address path 16b, and a command path 16c.
- a memory bus 16 which includes a data path 16a, an address path 16b, and a command path 16c.
- the common memory 18 is typically a high speed MOS memory of about one megabyte although the access system could also be implemented with different types of memories or memories of different sizes.
- controller 20 Interposed between the processors 12, 14 and the memory 18 is a controller 20 and a locking content-associative write buffer 22.
- the controller 20 is similar in most aspects to conventional controllers used to control access to memory locations.
- the controller 20 is implemented by a combination of hardware and firmware (or microcode).
- controller 20 can include microcode instructions for identifying RMW requests for addressing and formatting the buffer 20, and for issuing the necessary directives as described below to lock particular addresses, and to transfer data back and forth between the processors 12, 14, the memory 18 and the buffer 22.
- Implementation of the buffer 22 can be achieved with commercially available components or individualized designs by those skilled in the art.
- the content-associative structure is an address-organised buffer accessed by applying the address word. In one preferred embodiment, the structure contains four addressed entries.
- the structure of the buffer 22 is shown in more detail in Fig. 2.
- the buffer includes a plurality of address blocks A, B, etc.
- Each address in buffer 22 corresponds to a memory location in the main memory 18.
- Associated with each address are two sixteen-bit strings of data A1 ... A16 and A17 ... A32, a validity bit for each string V1, V2, a lock bit L, and at least one bit for identifying the processor that issues the lock directive ID. (For the case of two processors, only one bit is typically needed to distinguish between processors; however, for three or more processors, additional bits would be needed).
- Each of the two sixteen-bit strings of data stored in buffer 22 is called a "data block".
- the two data blocks make up a memory data word. In the illustrated embodiment, data is transferred as a block or set of two blocks. Sixteen-bit blocks are the minimum size for a data transmission.
- the structure described above is intended for use in a system where the data path of the memory bus can accomodate thirty-two bit wide data transmissions and the operating system is designed to assure the integrity of sixteen-bit block transmissions as well.
- the teachings herein can also be applied to sixteen-bit data transmissions and eight-bit data block designs as well.
- Figs. 3a through 3d The operation of the memory access scheme is shown schematically in Figs. 3a through 3d.
- a single entry in buffer 22 is shown in its initial state containing data from any one of the processors connected to the system.
- controller 20 sets the lock bit (i.e., to a "1" value) and the validity bits V1 and V2 are initialized as well (i.e., to a " 0 ⁇ " value) indicating that one of the first or second data blocks is being modified.
- the processor performing the modification is also identified at the same time by the identification bit ID (i.e., set to " 0 ⁇ " for CPU 0 ⁇ ).
- controller 20 Since the buffer entry in Figs. 3a-3d is associated with an address as shown in Fig. 2, this "content-associative" characteristic is used to advantage by controller 20. If during the RMW of the CPU 0 ⁇ , another processor seeks to execute a write instruction for a particular memory location, controller 20 polls the buffer 22 for the address associated with that location. If the address is not listed in the buffer 22, the processor is allowed to write through the buffer 22 into memory 18.
- the controller recognizes the address sought as a locked address and takes the necessary steps to preserve this new data while the RMW operation is being completed. For example, if as shown in Fig. 3c, were to write new data for the first data block, the validity bit V1 associated with that block would be set (i.e., to a "1" value) indicating that this new data is to be saved at the expense of any modified data subsequently written by CPU 0 ⁇ . (It is assumed that proper programming prevents the second processor from seeking to change that portion of the data in the buffer that is being modified by the first processor). When the first processor completes its modification of data as shown in Fig.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Hardware Redundancy (AREA)
- Memory System (AREA)
Claims (12)
- Système de traitement de données à multiprocesseur comprenant une mémoire principale (18) comportant une pluralité d'emplacements adressés, au moins un premier et un second processeur (12,14), chacun pouvant indépendamment lire, modifier, et écrire des données aux emplacements adressés, et des moyens tampons (22) pour stocker les données avant leur transmission à la mémoire principale (18), caractérisé en ce que les moyens tampons sont adressables par le contenu et an ce que le système comprend de plus :
des moyens de commande (20) couplés aux processeurs (12,14), à la mémoire principale (18) et aux moyens tampons (27) pour commander lesdites, opérations de lecture et d'écriture,
les moyens de commande (20) utilisant les moyens tampons pour stocker les données d'un emplacement adressé auquel a accédé le premier processeur pour une opération de lecture-modification-écriture, les moyens de commande (20) aboutissant à une instruction de verrouillage de l'emplacement adressé durant l'opération de lecture-modification-écriture et, en réponse à une opération d'écriture par le second processeur, à l'emplacement adressé durant l'opération de lecture-modification-écriture, les moyens de commande modifiant la séquence normale des opérations d'écriture en mémoire,
les processeurs multiples pouvant accéder et écrire concurremment au même emplacement adressé de la mémoire principale. - Système de traitement de données suivant la revendication 1 caractérisé en ce que les moyens de commande (20) sont constitués :
de moyens pour contrôler les moyens tampons adressables par le contenu (22) pour les adresses de données à écrire dans la mémoire principale et pour, au lieu de cela écrire des données dans les moyens tampons adressables par le contenu (22), lorsque l'adresse est trouvée dans les moyens tampons (22). - Système de traitement de données suivant la revendication 1 caractérisé en ce que chacun des mots de données adressables par le contenu des moyens tampons adressables par le contenu (22) sont constitués de plus d'au moins deux blocs de données séparés.
- Système de traitement de données suivant la revendication 9 caractérisé en ce que les moyens de commande (22) sont de plus constitués de moyens pour écrire de nouvelles données indépendemment dans l'un des deux blocs de données séparés, et de moyens pour identifier ces données comme de nouvelles données.
- Système de traitement de données suivant la revendication 4 caractérisé en ce que les moyens de commande (22) sont de plus constitués de moyens pour préserver les nouvelles données de préférence aux instructions d'écriture ultérieures.
- Système de traitement de données suivant l'une quelconque des revendications 3 à 5 caractérisé en ce que les moyens tampon (22) ont une structure de données pour chacune de leurs entrées comprenant :i) un bloc adresse pour stocker une adresse qui identifie un emplacement mémoire devant être lu par un premier processeur,ii) au moins deux blocs de données séparés associés à chaque bloc d'adresseiii) un bloc de verrouillageiV) un bloc de validation associé à chacun des blocs de données séparéset en ce que les moyens de commande (20) sont conçus:a) pour le verrouillage d'une adresse particulière, de façon que les données entrées par un second processeur ne puissent être transmises à la mémoire lorsque le premier processeur lit, modifie, et écrit de nouvelles donnéesb) pour stocker et valider de nouvelles données entrées dans un des blocs de données, à partir du second processeur alors que l'adresse d'entrée est verrouillée, et pour préserver les données entrées dans le bloc, de préférence aux données modifiées écrites par le premier processeur,c) pour déverrouiller l'adresse particulière, lorsque le premier processeur a terminé sa modification et a écri de nouvelles données à entrer à cette adresse, etd) pour transmettre les données déverrouillées à partir des moyens tampons (22) vers les emplacements de la mémoire principale.
- Système suivant la revendication 6 caractérisé en ce que les moyens de commande du tampon (22) comportent de plus des moyens pour identifier le processeur qui provoque le verrouillage d'une adresse particulière.
- Système suivant la revendication 6 caractérisé en ce que les moyens tampons (22) comprennent de plus un tampon possédant une pluralité d'emplacements d'entrées, qui peuvent être verrouillées par au moins l'un des processeurs.
- Méthode pour régler les différentes demandes concurrentes d'accès à l'emplacement d'une mémoire principale, comportant une pluralité de blocs de données, dans un système de traitement de données comprenant au moins un premier processeur et un second processeur et une mémoire tampon avec une pluralité d'emplacements adressés, chacun d'eux possédant une pluralité de blocs de données, caractérisée en ce que la mémoire tampon est adressable par le contenu et en ce que ladite méthode comprend les étapes consistant à :A. déterminer le moment ou un premier processeur réalise une opération de lecture-modification-écriture sur des données à partir d'un emplacement de mémoire principale, et à associer un emplacement adressé dans la mémoire tampon à l'emplacement mémoire principal,B. verrouiller l'emplacement mémoire tampon.C. stocker toute nouvelle donnée produite par un second processeur pour des blocs de données particuliers de l'emplacement de la mémoire principale à l'emplacement mémoire tampon verrouilléd. mettre au rebus les données modifiées du premier processeur adressées aux blocs de données particuliers de l'emplacement mémoire tampon verrouillé, dans lequel les blocs des nouvelles données du second processeur on été précédemment stockées.E. stocker les données modifiées du premier processeur dans des blocs de données de l'emplacement mémoire tampon verrouillé, lesquels blocs restent non modifiés par les nouvelles données du second processeur, puis déverrouiller l'emplacement mémoire tampon, etF. décharger à partir de l'emplacement mémoire tampon les données modifiées et les nouvelles données stockées respectivement par les premier et second processeurs dans l'emplacement mémoire principal.
- Méthode suivant la revendication 9 caractérisée en ce que l'étape de verrouillage de l'emplacement mémoire tampon comprend de plus la modification d'une valeur stockée dans un bloc de verrouillage associé à l'emplacement de mémoire tampon.
- Méthode suivant la revendication 9, caractérisée en ce que l'étape de stockage de nouvelles données dans le bloc de données, comprend de plus la modification d'une valeur stockée dans un bloc de validation associé au bloc de données de la mémoire tampon.
- Méthode suivant la revendication 11, caractérisée en ce que l'étape de mise au rebus de données modifiées comprend de plus l'étape de mise au rebus de données lorsque la valeur stockée dans le bloc de validation a été modifiée.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AT85300858T ATE64020T1 (de) | 1984-02-10 | 1985-02-08 | Verfahren und vorrichtung zum speicherzugriff in mehrprozessorsystemen. |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/578,797 US4561051A (en) | 1984-02-10 | 1984-02-10 | Memory access method and apparatus in multiple processor systems |
| US578797 | 1984-02-10 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| EP0168121A1 EP0168121A1 (fr) | 1986-01-15 |
| EP0168121B1 true EP0168121B1 (fr) | 1991-05-29 |
Family
ID=24314358
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP85300858A Expired - Lifetime EP0168121B1 (fr) | 1984-02-10 | 1985-02-08 | Méthode et dispositif d'accès à la mémoire dans les systèmes à multi-processeurs |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4561051A (fr) |
| EP (1) | EP0168121B1 (fr) |
| JP (1) | JPS60237567A (fr) |
| AT (1) | ATE64020T1 (fr) |
| CA (1) | CA1223973A (fr) |
| DE (1) | DE3582962D1 (fr) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100465912C (zh) * | 2005-11-16 | 2009-03-04 | 国际商业机器公司 | 控制数据复制服务的设备和方法 |
Families Citing this family (45)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0760422B2 (ja) * | 1983-12-30 | 1995-06-28 | 株式会社日立製作所 | 記憶ロツク方式 |
| US4862350A (en) * | 1984-08-03 | 1989-08-29 | International Business Machines Corp. | Architecture for a distributive microprocessing system |
| US4679148A (en) * | 1985-05-01 | 1987-07-07 | Ball Corporation | Glass machine controller |
| JPS6297036A (ja) * | 1985-07-31 | 1987-05-06 | テキサス インスツルメンツ インコ−ポレイテツド | 計算機システム |
| US5291581A (en) * | 1987-07-01 | 1994-03-01 | Digital Equipment Corporation | Apparatus and method for synchronization of access to main memory signal groups in a multiprocessor data processing system |
| AU614044B2 (en) * | 1988-03-25 | 1991-08-15 | Nec Corporation | Information processing system capable of quickly detecting an extended buffer memory regardless of a state of a main memory device |
| US5301278A (en) * | 1988-04-29 | 1994-04-05 | International Business Machines Corporation | Flexible dynamic memory controller |
| US5247649A (en) * | 1988-05-06 | 1993-09-21 | Hitachi, Ltd. | Multi-processor system having a multi-port cache memory |
| US5089952A (en) * | 1988-10-07 | 1992-02-18 | International Business Machines Corporation | Method for allowing weak searchers to access pointer-connected data structures without locking |
| US5129072A (en) * | 1989-03-08 | 1992-07-07 | Hewlett-Packard Company | System for minimizing initiator processor interrupts by protocol controller in a computer bus system |
| US5179679A (en) * | 1989-04-07 | 1993-01-12 | Shoemaker Kenneth D | Apparatus and method for permitting reading of data from an external memory when data is stored in a write buffer in the event of a cache read miss |
| JP3637054B2 (ja) * | 1989-09-11 | 2005-04-06 | エルジー・エレクトロニクス・インコーポレーテッド | キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法 |
| US5131085A (en) * | 1989-12-04 | 1992-07-14 | International Business Machines Corporation | High performance shared main storage interface |
| US5136714A (en) * | 1989-12-04 | 1992-08-04 | International Business Machines Corporation | Method and apparatus for implementing inter-processor interrupts using shared memory storage in a multi-processor computer system |
| JP2665813B2 (ja) * | 1990-02-23 | 1997-10-22 | 三菱電機株式会社 | 記憶制御装置 |
| US5446865A (en) * | 1990-03-13 | 1995-08-29 | At&T Corp. | Processor adapted for sharing memory with more than one type of processor |
| US5404482A (en) * | 1990-06-29 | 1995-04-04 | Digital Equipment Corporation | Processor and method for preventing access to a locked memory block by recording a lock in a content addressable memory with outstanding cache fills |
| US5193167A (en) * | 1990-06-29 | 1993-03-09 | Digital Equipment Corporation | Ensuring data integrity by locked-load and conditional-store operations in a multiprocessor system |
| US5276835A (en) * | 1990-12-14 | 1994-01-04 | International Business Machines Corporation | Non-blocking serialization for caching data in a shared cache |
| JP2586219B2 (ja) * | 1990-12-20 | 1997-02-26 | 日本電気株式会社 | 高速媒体優先解放型排他方式 |
| US5493687A (en) | 1991-07-08 | 1996-02-20 | Seiko Epson Corporation | RISC microprocessor architecture implementing multiple typed register sets |
| US5539911A (en) | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
| US5430860A (en) * | 1991-09-17 | 1995-07-04 | International Business Machines Inc. | Mechanism for efficiently releasing memory lock, after allowing completion of current atomic sequence |
| US5506980A (en) * | 1991-10-22 | 1996-04-09 | Hitachi, Ltd. | Method and apparatus for parallel processing of a large data array utilizing a shared auxiliary memory |
| JPH05210640A (ja) * | 1992-01-31 | 1993-08-20 | Hitachi Ltd | マルチプロセッサシステム |
| JP3730252B2 (ja) | 1992-03-31 | 2005-12-21 | トランスメタ コーポレイション | レジスタ名称変更方法及び名称変更システム |
| KR950701437A (ko) | 1992-05-01 | 1995-03-23 | 요시오 야마자끼 | 슈퍼스칼라 마이크로프로세서에서의 명령어 회수를 위한 시스템 및 방법 |
| US5628021A (en) | 1992-12-31 | 1997-05-06 | Seiko Epson Corporation | System and method for assigning tags to control instruction processing in a superscalar processor |
| EP0682789B1 (fr) | 1992-12-31 | 1998-09-09 | Seiko Epson Corporation | Systeme et procede pour changer la designation des registres |
| US5666515A (en) * | 1993-02-18 | 1997-09-09 | Unisys Corporation | Information processing system having multiple modules and a memory on a bus, where any module can lock an addressable portion of the memory by sending retry signals to other modules that try to read at the locked address |
| US5592641A (en) * | 1993-06-30 | 1997-01-07 | Intel Corporation | Method and device for selectively locking write access to blocks in a memory array using write protect inputs and block enabled status |
| US5566317A (en) * | 1994-06-14 | 1996-10-15 | International Business Machines Corporation | Method and apparatus for computer disk drive management |
| US5924128A (en) * | 1996-06-20 | 1999-07-13 | International Business Machines Corporation | Pseudo zero cycle address generator and fast memory access |
| US6078991A (en) * | 1997-04-14 | 2000-06-20 | International Business Machines Corporation | Method and system for speculatively requesting system data bus for sourcing cache memory data within a multiprocessor data-processing system |
| US5895484A (en) * | 1997-04-14 | 1999-04-20 | International Business Machines Corporation | Method and system for speculatively accessing cache memory data within a multiprocessor data-processing system using a cache controller |
| US6055608A (en) * | 1997-04-14 | 2000-04-25 | International Business Machines Corporation | Method and system for speculatively sourcing cache memory data within a multiprocessor data-processing system |
| US5924118A (en) * | 1997-04-14 | 1999-07-13 | International Business Machines Corporation | Method and system for speculatively sourcing cache memory data prior to upstream cache invalidation within a multiprocessor data-processing system |
| US6314493B1 (en) | 1998-02-03 | 2001-11-06 | International Business Machines Corporation | Branch history cache |
| US6701429B1 (en) * | 1998-12-03 | 2004-03-02 | Telefonaktiebolaget Lm Ericsson(Publ) | System and method of start-up in efficient way for multi-processor systems based on returned identification information read from pre-determined memory location |
| US6567094B1 (en) * | 1999-09-27 | 2003-05-20 | Xerox Corporation | System for controlling read and write streams in a circular FIFO buffer |
| GB0114592D0 (en) * | 2001-06-14 | 2001-08-08 | Pace Micro Tech Plc | Central processing unit architectures |
| US7412572B1 (en) | 2004-03-17 | 2008-08-12 | Sun Microsystems, Inc. | Multiple-location read, single-location write operations using transient blocking synchronization support |
| US8219762B1 (en) | 2004-08-13 | 2012-07-10 | Oracle America, Inc. | Computer system and method for leasing memory location to allow predictable access to memory location |
| US7418543B2 (en) * | 2004-12-21 | 2008-08-26 | Intel Corporation | Processor having content addressable memory with command ordering |
| KR101086791B1 (ko) * | 2007-06-20 | 2011-11-25 | 후지쯔 가부시끼가이샤 | 캐시 제어 장치 및 제어 방법 |
Family Cites Families (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3108256A (en) * | 1958-12-30 | 1963-10-22 | Ibm | Logical clearing of memory devices |
| US3568157A (en) * | 1963-12-31 | 1971-03-02 | Bell Telephone Labor Inc | Program controlled data processing system |
| US3435418A (en) * | 1965-05-27 | 1969-03-25 | Ibm | Record retrieval and record hold system |
| US3469239A (en) * | 1965-12-02 | 1969-09-23 | Hughes Aircraft Co | Interlocking means for a multi-processor system |
| US3508205A (en) * | 1967-01-17 | 1970-04-21 | Computer Usage Co Inc | Communications security system |
| US3573736A (en) * | 1968-01-15 | 1971-04-06 | Ibm | Interruption and interlock arrangement |
| US3528061A (en) * | 1968-07-05 | 1970-09-08 | Ibm | Interlock arrangement |
| US3551892A (en) * | 1969-01-15 | 1970-12-29 | Ibm | Interaction in a multi-processing system utilizing central timers |
| US3631405A (en) * | 1969-11-12 | 1971-12-28 | Honeywell Inc | Sharing of microprograms between processors |
| DE2064383C3 (de) * | 1970-01-12 | 1981-02-26 | Fujitsu Ltd., Kawasaki, Kanagawa (Japan) | Datenverarbeitungsanlage mit mehreren zentralen Verarbeitungseinrichtungen |
| US3725872A (en) * | 1971-03-03 | 1973-04-03 | Burroughs Corp | Data processing system having status indicating and storage means |
| US3761883A (en) * | 1972-01-20 | 1973-09-25 | Ibm | Storage protect key array for a multiprocessing system |
| GB1410631A (en) * | 1972-01-26 | 1975-10-22 | Plessey Co Ltd | Data processing system interrupt arrangements |
| US3848234A (en) * | 1973-04-04 | 1974-11-12 | Sperry Rand Corp | Multi-processor system with multiple cache memories |
| US4073005A (en) * | 1974-01-21 | 1978-02-07 | Control Data Corporation | Multi-processor computer system |
| FR129151A (fr) * | 1974-02-09 | |||
| GB1536853A (en) * | 1975-05-01 | 1978-12-20 | Plessey Co Ltd | Data processing read and hold facility |
| US4000485A (en) * | 1975-06-30 | 1976-12-28 | Honeywell Information Systems, Inc. | Data processing system providing locked operation of shared resources |
| US4162529A (en) * | 1975-12-04 | 1979-07-24 | Tokyo Shibaura Electric Co., Ltd. | Interruption control system in a multiprocessing system |
| US4037215A (en) * | 1976-04-30 | 1977-07-19 | International Business Machines Corporation | Key controlled address relocation translation system |
| US4038645A (en) * | 1976-04-30 | 1977-07-26 | International Business Machines Corporation | Non-translatable storage protection control system |
| US4099243A (en) * | 1977-01-18 | 1978-07-04 | Honeywell Information Systems Inc. | Memory block protection apparatus |
| US4157586A (en) * | 1977-05-05 | 1979-06-05 | International Business Machines Corporation | Technique for performing partial stores in store-thru memory configuration |
| US4136386A (en) * | 1977-10-06 | 1979-01-23 | International Business Machines Corporation | Backing store access coordination in a multi-processor system |
| JPS596415B2 (ja) * | 1977-10-28 | 1984-02-10 | 株式会社日立製作所 | 多重情報処理システム |
| US4245306A (en) * | 1978-12-21 | 1981-01-13 | Burroughs Corporation | Selection of addressed processor in a multi-processor network |
| US4345309A (en) * | 1980-01-28 | 1982-08-17 | Digital Equipment Corporation | Relating to cached multiprocessor system with pipeline timing |
| US4394733A (en) * | 1980-11-14 | 1983-07-19 | Sperry Corporation | Cache/disk subsystem |
-
1984
- 1984-02-10 US US06/578,797 patent/US4561051A/en not_active Expired - Fee Related
-
1985
- 1985-02-08 JP JP60022121A patent/JPS60237567A/ja active Pending
- 1985-02-08 CA CA000473958A patent/CA1223973A/fr not_active Expired
- 1985-02-08 DE DE8585300858T patent/DE3582962D1/de not_active Expired - Fee Related
- 1985-02-08 EP EP85300858A patent/EP0168121B1/fr not_active Expired - Lifetime
- 1985-02-08 AT AT85300858T patent/ATE64020T1/de not_active IP Right Cessation
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100465912C (zh) * | 2005-11-16 | 2009-03-04 | 国际商业机器公司 | 控制数据复制服务的设备和方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US4561051A (en) | 1985-12-24 |
| DE3582962D1 (de) | 1991-07-04 |
| JPS60237567A (ja) | 1985-11-26 |
| ATE64020T1 (de) | 1991-06-15 |
| CA1223973A (fr) | 1987-07-07 |
| EP0168121A1 (fr) | 1986-01-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0168121B1 (fr) | Méthode et dispositif d'accès à la mémoire dans les systèmes à multi-processeurs | |
| CA2022656C (fr) | Repertoire de pages actives de traduction pour memoire d'ordinateur | |
| KR100382395B1 (ko) | 컴퓨터메모리에정보를기억하는방법및장치 | |
| US4831520A (en) | Bus interface circuit for digital data processor | |
| US3938097A (en) | Memory and buffer arrangement for digital computers | |
| US6779102B2 (en) | Data processor capable of executing an instruction that makes a cache memory ineffective | |
| EP0019358B1 (fr) | Système hiérarchique de mémorisation de données | |
| EP0303648B1 (fr) | Unite centrale pour systeme informatique numerique comprenant un mecanisme de gestion d'antememoire | |
| US5034885A (en) | Cache memory device with fast data-write capacity | |
| US5119484A (en) | Selections between alternate control word and current instruction generated control word for alu in respond to alu output and current instruction | |
| US4942521A (en) | Microprocessor with a cache memory in which validity flags for first and second data areas are simultaneously readable | |
| US5313602A (en) | Multiprocessor system and method of control over order of transfer of data between buffer storages | |
| EP0340668A2 (fr) | Système multiprocesseur ayant une antémémoire à plusieurs accès | |
| EP0533427B1 (fr) | Système de commande de mémoire d'ordinateur | |
| US4445191A (en) | Data word handling enhancement in a page oriented named-data hierarchical memory system | |
| US5619673A (en) | Virtual access cache protection bits handling method and apparatus | |
| US4424564A (en) | Data processing system providing dual storage of reference bits | |
| JPS5847784B2 (ja) | キ−記憶システム | |
| US5349672A (en) | Data processor having logical address memories and purge capabilities | |
| EP0224168A2 (fr) | Système de commande de mémoire tampon | |
| GB2037466A (en) | Computer with cache memory | |
| JPS629945B2 (fr) | ||
| EP0302926B1 (fr) | Circuit de generation de signaux de commande pour unite arithmetique et logique pour un processeur numerique | |
| JP3219810B2 (ja) | データ処理装置 | |
| JP2588547B2 (ja) | マルチcpuシステム |
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 |
|
| AK | Designated contracting states |
Designated state(s): AT BE CH DE FR GB IT LI LU NL SE |
|
| 17P | Request for examination filed |
Effective date: 19860623 |
|
| 17Q | First examination report despatched |
Effective date: 19880725 |
|
| GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
| ITF | It: translation for a ep patent filed | ||
| AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE CH DE FR GB IT LI LU NL SE |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SE Effective date: 19910529 Ref country code: NL Effective date: 19910529 Ref country code: LI Effective date: 19910529 Ref country code: CH Effective date: 19910529 Ref country code: BE Effective date: 19910529 Ref country code: AT Effective date: 19910529 |
|
| REF | Corresponds to: |
Ref document number: 64020 Country of ref document: AT Date of ref document: 19910615 Kind code of ref document: T |
|
| ET | Fr: translation filed | ||
| REF | Corresponds to: |
Ref document number: 3582962 Country of ref document: DE Date of ref document: 19910704 |
|
| REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
| NLV1 | Nl: lapsed or annulled due to failure to fulfill the requirements of art. 29p and 29m of the patents act | ||
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 19920229 |
|
| PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
| 26N | No opposition filed | ||
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 19930114 Year of fee payment: 9 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: GB Payment date: 19930119 Year of fee payment: 9 |
|
| PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 19930125 Year of fee payment: 9 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GB Effective date: 19940208 |
|
| GBPC | Gb: european patent ceased through non-payment of renewal fee |
Effective date: 19940208 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Effective date: 19941031 |
|
| PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DE Effective date: 19941101 |
|
| REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST |