WO1992005490A1 - Exclusive control method for shared memory - Google Patents
Exclusive control method for shared memory Download PDFInfo
- Publication number
- WO1992005490A1 WO1992005490A1 PCT/JP1991/001239 JP9101239W WO9205490A1 WO 1992005490 A1 WO1992005490 A1 WO 1992005490A1 JP 9101239 W JP9101239 W JP 9101239W WO 9205490 A1 WO9205490 A1 WO 9205490A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- shared memory
- data
- module
- shared
- access
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/52—Indexing scheme relating to G06F9/52
- G06F2209/521—Atomic
Definitions
- the present invention relates to a shared memory side exclusive control method of a multiprocessor system in which a plurality of processor modules and a shared memory module are connected via a system bus.
- the shared memory of a multiprocessor system usually stores the instructions and data required for processing by the processor, and each processor module accesses the shared memory frequently.
- an exclusive instruction is necessary for accessing the shared memory, and the data is rewritten and executed when it is determined that the read data of the shared memory matches the data expected by the software in the exclusive instruction.
- exclusive control is performed so that the system bus is occupied between the processor module and the shared memory module until the end of the instruction, during which access by other processor modules is prohibited. System performance is degraded. Therefore, it is desirable to reduce the range and time of the exclusive control during execution of the CSI instruction as much as possible.
- a conventional multiprocessor system as shown in FIG. 20, a plurality of processor modules 10 and a plurality of shared memory modules 12 are connected via a system bus 16 for information transfer, and We are building a computer system known as a processor system.
- An exclusive instruction for shared memory in such a multiprocessor system is indispensable.
- One example of an exclusive instruction is a CSI (Compare and Store International) instruction.
- the operation sequence of the CSI instruction is as follows. If you want to rewrite the data of an address with a shared memory area composed of multiple shared memory modules (SSM) 12, After reading the address data and comparing the read data with the data that the central processing unit (P) 18 of the processor module (PM) 10 expects to be stored in the access address, if they match, It is used to rewrite the access address.
- SSM shared memory modules
- the access address is accessed by the central processing unit 18 on another processor module 10. Exclusive control to prevent updates.
- the conventional exclusive control during execution of the CSI instruction on the shared memory side is performed by the central processing unit 18 on the processor module 10 that is the access source, as shown by the thick line in FIG. From the shared memory module 12 to which the shared memory space was accessed via the system bus 16. At the same time, the period of exclusive control extends over a long period from reading to comparison and writing.
- the present invention has been made in view of such conventional problems, and improves the system performance by shortening the range and time of exclusive control when executing a CSI instruction on shared memory.
- the purpose is to provide an exclusive control method on the shared memory side.
- FIG. 1 is a diagram illustrating the principle of the present invention.
- the present invention comprises at least one or more processes comprising a main memory 20, a central processing unit 18 and a connection unit 22 to the system bus 16.
- Computer systems with shared memory modules 1 and 2 are targeted.
- the central processing unit 18 of the processing module 10 rewrites data by specifying the address of an arbitrary shared memory module 12 and rewriting data.
- the shared memory module is used. 0
- the connection unit 28 of the module 12 is made to recognize the CSI instruction, and the data reading and the comparison processing in the CSI instruction are performed in the shared memory module 12.
- connection unit 22 of the processing module 10 is connected to the connection unit 28 of the shared memory module 12 that has been accessed for 15 times by the destination indicating the shared memory module 12.
- ID code ID code
- SID sender ID code indicating the sender:
- BCT access data capacity
- connection unit 28 of the shared memory module 12 reads the data, compares the read data and the read data based on the start transfer command 25 acquired by the reception operation.
- Data rewrite is executed when the data is compared with the data and when the comparison match is established, and the internal bus 30 of the shared memory module 12 is exclusively controlled between the data read and the data rewrite.
- connection unit 28 of the shared memory module 12 creates a response transfer command that issues a normal end code when the rewrite ends normally due to a comparison match, and generates a system bus. Sent to processing module 10 of the access source via 16 and if rewriting was not possible due to a comparison mismatch, create a response transfer command containing an abnormal termination code and make a mismatch. Is transmitted to the access source processing module 10 via the system bus 16 together with the read data.
- connection unit 28 of the shared memory module 12 monitors the system bus 16 and checks the destination ID code (DID) of the start transfer command and its own unit ID. When it is determined that there is a match, the receiving operation of the start transfer command is performed, while the connection unit 22 of the processing module 10 monitors the system bus 16 and communicates with the response transfer command. When it is determined that the destination ID code (DID) matches its own unit ID, the reception operation of the response transfer command is performed.
- DID destination ID code
- the execution location of the comparison operation when executing the CSI instruction is stored in the processor module.
- the range and time for exclusive control by the CSI instruction are greatly reduced, and a wide range and long time The problem that the system performance is deteriorated by the exclusive control of the system can be solved.
- FIG. 1 is a diagram illustrating the principle of the present invention
- FIG. 2 is a diagram showing the configuration of a multi-port sensor system according to the present invention.
- FIG. 3 is a block diagram of the processor module of the present invention
- FIG. 4 is a block diagram of a shared memory module of the present invention
- FIG. 5 is a block diagram of a connection unit with a built-in processor module of the present invention
- FIG. 6 is a configuration diagram of a connection unit incorporating a shared memory module of the present invention.
- FIG. 7 is an explanatory diagram of a transfer command on the system bus of the present invention.
- FIG. 8 is an explanatory diagram of the write transfer operation of the present invention.
- FIG. 9 is an explanatory diagram of the read transfer operation of the present invention.
- FIG. 10 is an address space map explanation section of the present invention
- FIG. 11 is an explanatory view of an extended SSU space of the present invention
- FIG. 12 is an explanatory view of an SS definition by the first control register of the present invention
- FIG. 13 is an explanatory diagram of the S S ⁇ ⁇ configuration definition by the second control register of the present invention
- Fig. 14 is an explanatory diagram of the implementation of the shared memory module corresponding to the configuration definition in Figs. 12 and 13.
- FIGS. 15A and 15B are flow charts of the program mode access of the present invention.
- FIG. 16A and FIG. 16B are flow charts of the DMA mode access of the present invention.
- FIG. 17 is an explanatory view of a descriptor used in the DMA access mode of the present invention.
- FIG. 18 is an explanatory diagram of the exclusion range of the memory-side exclusion control of the present invention.
- FIG. 19 is an operation sequence diagram of the memory-side exclusive control of the present invention.
- Fig. 20 is an illustration of the exclusive range of the conventional memory-side exclusive control.
- Figure 21 shows the operation sequence diagram of the conventional memory-side exclusive control.
- Figs. 22 and 23 show the execution circuit and timing chart of the CSI instruction.
- FIG. 24 is a diagram for explaining the dual exclusive control of the CSI instruction.
- FIG. 2 is a system configuration diagram showing a part of a multi-processor system to which the shared memory configuration method of the present invention is applied.
- the multi-processor system has a plurality of processor modules (PM) 10 and a plurality of shared memory modules (SSM) 12, and each processor module 10 and each shared memory.
- the module 12 is connected to a shared system bus (SS-BUS) 16 which is a split bus through a connection unit (SSBC-P) 22.
- the shared system bus handler (SSBH) 14 is controlled, and the arbitration of the shared system bus 16 is centrally managed by the shared system bus handler 14.
- the processor modules 10 # 0 to # 2 each have a unit ID as
- the shared memory modules 12 of # 0 to # 2 are assigned as unit IDs, respectively.
- Each processor module 10 and shared memory module 12 is controlled by a redundant # 0 and # 1 shared system bus ⁇ 16 for fault tolerance, but more shared Cis It may be connected to the system bus 16.
- FIG. 3 is a configuration diagram of an embodiment of the processor module 10 shown in FIG.
- the processor module 10 includes a central processing unit (P) 18, a local main memory unit (LSU) 20, and two shared system buses 16. Two connection units (SSBC-P) 22 are provided via an internal bus 24.
- P central processing unit
- LSU local main memory unit
- SSBC-P connection units
- processor module 10 software (OS) running on the central processing unit 18 and the main memory 20 runs, and each processor module shown in FIG.
- the software in 10 constitutes a distribution 0S that performs a series of operations in cooperation with each other, and the central processing unit 18 in the processor module 10 has its own
- the instruction code is fetched only from the main memory 20 in the processor module 10.
- FIG. 4 is a configuration diagram of an embodiment of the shared memory module 12 shown in FIG.
- the shared memory module 12 includes two shared units (SSBC—S) 2 for the shared memory unit (SSU) 24 and two shared system buses 16. 8 is provided via the internal bus 30.
- Figure 2 shows the shared memo lut 26. x Data that needs to be shared by multiple processor modules 10 is stored.
- FIG. 5 shows an embodiment of the connection unit (SSBC-P) 22 installed in the processor module 10 of FIG.
- connection unit 22 is connected to the shared memory module 12 of FIG. 2 via the shared system bus 16.
- connection unit 22 corresponds to the program mode access control circuit 32, the DMA mode access control circuit 34, and the shared system bus 1 corresponding to these two access modes.
- the program mode ⁇ access control area 32 is provided with an address decoder 40, a timing control circuit 42, a configuration definition register 44, and a DMA mode.
- the 20-bit access control circuit 34 is provided with an address generator 46, a timing control circuit 48, and a DMA control register 50.
- FIG. 6 shows the connection unit (SSBC-S) 28 provided in the shared memory module 12 shown in FIG.
- Fig. 25 is a configuration diagram of an example.
- a connection unit 28 includes an internal bus control circuit 74 for controlling the internal bus 30, an address generator ⁇ 0, and a DMA control circuit 5 including a timing control circuit 72.
- internal bus arbiter circuit 54 for arbitrating internal bus 30 when multiple connection units 28 are mounted on shared memory module 12 as shown in Fig. 4, shared system module A dual port RAM 58 having a buffer function.
- the connection units 22 and 28 for connecting the processor module 10 and the shared memory module 12 shown in FIGS. 3 and 4 via the shared system bus 16 generate a single access.
- a split transfer method is used, which performs transfer separately from response transfer.
- a unit ID is assigned to each module, and the unit ID is used as a module identifier on the bus.
- Fig. 7 shows examples of the start transfer command SC and the response transfer command E C used in the connection units 22 and 28.
- DID Disination ID
- SID Source ID
- Operands indicate the type of access.
- the access type is shared memory.
- a control register such as a halt instruction or a reset instruction to the shared memory module 12 or another processor module 10.
- the ID is the same as the start transfer command SC, but the termination code encodes the termination status at the access destination, that is, normal termination and abnormal termination.
- FIG. 8 is a diagram for explaining the operation of a write access (storage access) in which data is transferred from the processor module 10 to the shared memory module 12 via the shared system bus 16 and written.
- the processor module 10 of the access source creates a start transfer command SC. That is, the SID indicating its own unit ID, the DID indicating the unit ID of the shared memory module 12-at the access destination, the operand indicating memory write access, and the BCT indicating the access capacity indicate the capacity. Create transfer start command SC by BCT. After the transfer start command SC, the access address A on the shared memory module 12 to be accessed and the data D to be written are transmitted to the shared system bus 16.
- the shared memory modules 1 and 2 on the receiving side It monitors the bus 16 and compares the unit ID of its own unit ID with the DID indicating the destination set by the start transfer command SC. If both match, it performs the receiving operation.
- the shared memory module 12 that has performed the receiving operation performs write access to the shared memory unit 26 (see FIG. 4) provided in the shared memory module 12 and performs write access. Since the transfer direction is the opposite between the start transfer and the response transfer, a response transfer command exchanging DID and SID is created and transmitted to the processor module 10 of the access source. I do.
- the access source processor module 10 monitors the shared system bus 16 and performs a reception operation when the DID indicating the destination in the response transfer command EC matches its own unit ID. End access.
- the shared system bus 1 is used for the transfer of the start transfer command SC or the response command EC in other accesses. 6 may be used.
- FIG. 9 is an operation explanatory diagram of a read access (fetch access) for reading data from the shared memory module 12 to the processor module 10.
- the processor module 10 of the access source creates a start transfer command SC.
- the SID that indicates the unit ID, the DID that indicates the unit ID of the shared memory module 12 to be accessed, the operand for the memory read access, and the BCT that indicates the access capacity Create the transfer start command SC.
- the access address A on the shared memory module 12 to be accessed is transmitted.
- the shared memory module 12 on the receiving side monitors the shared system bus 16 and compares the unit ID of its own unit ID with the DID indicating the destination contained in the transfer command SC. Perform the receiving operation.
- the shared memory module 12 that has performed the receiving operation performs a read access to the shared memory unit 26 (see FIG. 4) in the shared memory module 12 and performs a read access.
- Response transfer command in which DID and SID are exchanged because the transfer direction is opposite between start transfer and response transfer.
- the accessing processor module 10 monitors the shared system bus 16 and sends a response transfer command E.
- This read access includes program mode and D M
- a mode which access The operation on shared system bus 16 is the same.
- FIG. 10 is a diagram illustrating the address space in the embodiment of the present invention.
- each processor module 10 is divided into a shared memory module space (hereinafter referred to as “SSU space”) and a processor module eigenspace (hereinafter referred to as “PM eigenspace”). They are roughly classified.
- SSU space shared memory module space
- PM eigenspace processor module eigenspace
- the PM eigenspace is a space unique to the hardware source of each mouth processor module 10 and exists for each processor module 10 and has multiple "" dress spaces for the number of processor modules 10 installed in the system.
- the PM eigenspace is 2 GB.
- the SSU space is a space common to all processor modules 10. That is, the SSU space is composed of a plurality of shared memory modules 12 and becomes a common space when viewed from the system mounted processor module 12, and is directly accessed by the physical address of the processor module 10. be able to. Therefore, in the SSU space, only data that is required in common by all processor modules 10 is stored.
- a 308 3 SU space is taken as an example, and the SSU space is further divided into eight partial SSU spaces # 0 to # 7 in units of 256 6 as shown on the right side. Each of the partial SSU spaces # 0 to # 7 is constituted by the shared memory module 12 of the present invention.
- each processor module 10 is divided into an LSU space and a control space.
- LSU space which is part of the eigenspace, stores the operands required by each processor module 10 and the data unique to each processor module 10. Due to the existence of the LSU space, each processor module 10 can reduce the number of access planes to the SSU space formed by the shared memory module 12.
- the access address by the central processing unit 18 points to the LSU space, the access is closed within the processor module 10.
- the access address (physical address) by the central processing unit 18 points to the SSU space, it recognizes that the connection unit 22 of the processor module 10 is an SSU space access. Then, the corresponding shared memory module 12 is accessed via the shared system bus 16.
- the SSU space and the LSU space are mated to the physical address space on the processor module 10. This allows the software to address 331; space and 5U space without having to switch the space.
- the SSU space is directly mapped to the physical address space of each processor module 10 as shown in Fig. 10. From the
- the accessible SSU space differs depending on the two access modes.
- the SSU space accessible by the program mode is only 2 GB directly mapped to the physical address space of each processor module 10.
- the DMA mode it is possible to access a larger SSU space, that is, an extended SSU space, by specifying the shared memory module 12 to be accessed by the unit ID.
- Figure 8 shows the DMA mode access.
- n is the address width of the central processing unit 18 plus the bit width of unit ID
- the extended SSU space is an extended space distinguished by using the unit ID as an identifier.
- FIG. 11 is a map explanatory diagram showing an SSU space mapped to the physical address space of the processor module 10 and an extended SSU space accessible only in the DMA mode.
- the number of unit ID bits of a plurality of shared memory modules 12 constituting the extended SSU space is 7 bits, and 0 0 0 0 0 0 0 0 to 0 1 1 1 1 1 1 6 Assign 4 unit IDs to shared memory module 1 2.
- unit IDs from 0 0 0 0 0 0 0 0 0 to 0 0 0 0 11 1 among unit IDs can be accessed in both the program mode and the DMA mode.
- the remaining 56 unit IDs are allocated in units of 4 GB.
- a total of 226 GB of extended SSU space can be accessed in DMA mode.
- the DMA mode is not limited to that shown in FIG. 11, but may be increased by increasing the number of unit ID bits or by increasing the unit ID allocation rate to the shared memory module 12. Expansion by access The SSU space can be expanded.
- the SSU space of the present invention which can be accessed by a physical address, is composed of a plurality of shared memory modules 12, but it is not necessary to implement all the memory for the SSU space, and it is not implemented There can be an area.
- a part of the SSU space can have a double configuration for the purpose of fault tolerance.
- the unit IDs are the eight unit I in Fig. 11 ! D Not limited to D, all shared memory space (2 GB non-extended space) is duplicated using 16 shared memory modules 12 as 0 0 0 0 0 0 0 0 to 0 0 0 1 1 It is also possible to make it with 1 1.
- the 2 GB SSU space is divided into 8 spaces in units of 256, and the shared memory module is divided for each of the divided SSU simplifications # 0 to # 7.
- 12 shows a configuration definition indicating a correspondence relationship with 1 2.
- the configuration definition of the shared memory module 12 is realized by operating the configuration definition register 44 in the connection unit 22 shown in FIG. 5 mounted on each of the 0 processor modules 10.
- the configuration definition register 44 includes a first register 60 shown in FIG. 12 and second control registers 62-1 and 62-2-25 shown in FIG.
- the first control register 60 determines whether there is a shared memory module 12 corresponding to the SSU space divided into 8 units of 256 MB as shown in Fig. 10, that is, the shared memory. Specify whether memory module 1 2 is mounted or not.
- FIG. 12 is a partial SSU space corresponding to 10, 11, 12, 14, and 17 shown by bit 1 of the first control register 60. # 0, # 1, # 4, # 5 is implemented and the part S corresponding to 13, 15, and 16 indicated by bit 0
- the second control registers 6 2 — 1 and 6 2 — 2 shown in FIG. 13 determine whether the shared memory module 12 with the partial SSU space specified in the first control register 60 corresponds to the implementation. It specifies the single / double configuration and the access order when the dual configuration is specified.
- bits' D 2 and D 4 are set to 1 to designate a double configuration.
- reading is performed from one of the shared memory modules 12 designated by unit ID 2 and unit ID 4. .
- the shared memory module specified by the unit ID of the second control register 62-1 and 2 is used.
- the second time is to the other shared memory module 12 with the specific bit of the first unit ID, for example, the unit ID with the least significant bit inverted. Write.
- a pair of shared memory modules 12 for which a duplex configuration can be specified by the second control register 6 2— 1 and 2 is, for example,
- the shared memory module 12 has a unit ID in which only the least significant bit is inverted.
- FIG. 14 shows the implementation of the shared memory module 12 based on the control register specifications in Figs. 12 and 13.
- FIG. 4 is an explanatory diagram showing states and configuration definitions.
- the SSU space of the processor module 10 has eight shared memory modules 12 corresponding to # 0 to # 7.
- the shared memory module corresponding to the SSU space # 6 is not yet available.
- the SSU spaces # 3 and # 5 are duplicated for the shared memory module 12 of the SSU spaces # 2 and # 4 due to the dual configuration, so the shared memory corresponding to the SSU spaces # 3 and # 5
- the memory modules 1 and 2 will not be present. Since the remaining SSU spaces of # 0, # 1, and # 7 have a single configuration, the shared memory modules 12 correspond one-to-one.
- the shared memory module is enabled for each divided SSU space.
- the SSU space address of 32 bits is used.
- the four bits b0 to b3 of the shared memory module 1 function as selectors for the shared memory module 12 and the remaining 28 bits of the bits b4 to b31 are shared memory module 1.
- a in 2 Functions as a dress.
- the internal address of the memory module 12 corresponds to the memory capacity mounted on the shared memory module 12. For example, if the memory capacity is doubled to 512 MB, the 29 bits of bits b3 to b31 of the address information are used to specify the internal address of shared memory mode 12. You. In the case of 1 GB, the 30 bits of bits b2 to b31 are used to specify the internal address of the shared memory module 12.If the address is further expanded to 2GB, 31 bits are used. All bits are used for the internal address of shared memory module 12.
- the memory capacity of the shared memory module 12 exceeds 256 MB, the number of bits of the selector for selecting the shared memory module is reduced, so The same unit ID corresponding to the mounting capacity is specified for the multiple partial SSU spaces divided into units of 6 MB.
- access in the program mode is performed according to the procedure shown in the flowcharts of FIGS. 15A and 15B.
- step S 1 (hereinafter “ If the software makes an access to address the SSU space as an instruction of the central processing unit 18, the software proceeds to S2 and the connection unit 22 executes the central processing. From the contents of the address bits b0 to b3 from the unit 18 and the contents of the second control register 6 2 — 1 and 2 that define the configuration of the shared memory module 12, which unit Determines whether shared memory module 12 with ID has an addressed SSU space. Also, shared memory module 12 specified from the contents of first control register 60 is not available. Judge whether or not it is implemented. If not implemented, proceed to S4 and terminate abnormally.
- connection unit 22 returns a retry signal to the central processing unit 18 and the central processing unit 18 is kept in the off state.
- the instruction from the central processing unit 18 is a shared memory, or a fetch instruction for reading data from the module 12 or a data is sent to the shared memory module 12 Determine whether it is a store instruction to write data.
- the instruction of the central processing unit 18 is a fuse instruction, proceed to S7 and start the unit ID of the shared memory module of the other party as the DID from the contents of the second control register 62-1 and 2 Create the transfer command SC and acquire the bus right of the shared system bus 16 at S8. After that, the start transfer command SC and the address A are transmitted to the shared system bus 16.
- connection unit 28 obtains the bus right to the internal bus 30 in S520, and then is controlled by the internal bus control circuit 64. Transfer data between RAM 56 and shared memory unit 26. After the data transfer in the shared memory module 12 is completed in S5, the connection unit 25 is connected to the processor module 10 of the access source. Responds to
- step S6 the process proceeds to step S6 to create a response transfer command EC including a termination code, then acquires a bus right to the shared system bus 16 in step S7, and finally obtains the response transfer command EC in step S8.
- the read data D is transmitted to the shared system bus 16.
- connection unit 28 acquires the bus right to the internal bus 30 in S9 and then under the control of the internal bus control circuit 64. Data is written by data transfer between the dual-board RAM 56 and the shared memory unit 26. When the data transfer (data writing) in the shared memory module 12 is completed in S9, the connection unit 28 responds to the processor module 10 of the access source.
- the process proceeds to S10 to create a response transfer command EC including a termination code, and then acquires a bus right for the shared system bus 16 in S11, and finally responds in S12. Sends the transfer command EC to the shared system bus 16.
- connection unit 22 of the processor module 10 monitors the shared system bus 16 as shown at S9 or S16.
- the response transfer command EC matches the DID of its own unit ID with S1.
- the process proceeds to S11 in the case of a fuse instruction to receive the response transfer command EC and data D, and in the case of the store instruction, proceeds to S18 to transfer the response.
- Command EC is received.
- the retry signal issued to the central processing unit 18 is cancelled, and the wait state of the central processing unit 18 is released.
- the instruction is a Fetch instruction
- the termination signal DC of the internal bus 24 is returned to the central processing unit 18 together with the received data D to the central processing unit 18 in S13. Return the termination signal DC of the internal bus 24 to the central processing unit 18.
- the central processing unit 18 At the time of access in the DMA mode, the central processing unit 18 first places the shared memory module 1 shown in FIG. 17 on the memory 20 of the processor module 10 in advance at S1. (2) A directory containing control contents such as unit ID, access address, and transfer length.
- BCT Bit Count
- SS UA specifies the relative address in shared memory module 12 to be accessed (the internal address in shared memory module 12 specified by DID). This is different from the physical address of the SSU space in the program mode.
- connection unit 22 acquires the bus right of the internal bus 24 of the processor module 10 and becomes the bus master, and controls the DMA control circuit 34. Originally, the main memory 20 is directly accessed, the disk lid on the main memory 20 is read, and the dual port in the surrounding unit 22 is read from the main memory 20. G Transfer data to RAM 38. After data transfer to the dual-port RAM 38 in the connection unit 22 ends, the data transfer direction is determined in S4.
- (SSU—LSU) direction If the transfer direction is to transfer read data from the shared memory module 12 to the main memory 20 (hereinafter referred to as “(SSU—LSU) direction”), the process proceeds to S5 and the transmitting / receiving circuit 36 performs the 7 Create an activation transfer command SC with the unit ID and transfer length of the shared memory module 12 shown in Fig. 7. On the other hand, if the transfer direction is to transfer write data from the main memory 20 to the shared memory module 12 (hereinafter referred to as “(SSU ⁇ LSU) direction”), the process proceeds to S13 to perform transmission / reception. In circuit 36, a transfer start command SC is created in the same manner.
- the process proceeds from S6 to S7, and the start transfer command SC and the address A are transmitted to the shared system bus 16.
- the process proceeds from S15 to S16, and transmits the start transfer command SC, the address A, and the data D to the shared system bus 16.
- connection unit 28 on the side of the shared memory module 12 monitors the shared system bus 16 at S1 in FIG. 16B. If a match with the unit ID of the connection unit is determined by S2, the process proceeds to S3, and the dual port in the connection unit 28 is connected. G Write the received data to RAM56.
- S4 it is determined whether the transfer direction is the (LSU-SSU) direction or the (SSU ⁇ LSU) direction. If the transfer direction is the (LSU ⁇ SSU) direction, the process proceeds to S5. If the transfer direction is (SSU-LSU), the process proceeds to S. Go to 9.
- S5> S9 the internal bus control circuit 64 of the DMA control circuit 52 provided in the connection unit 28 acquires the bus right of the internal bus 30 and shares the memory with the dual port RAM 56. Transfer data to / from the LUN 26, read data from the shared memory unit 26 in S5, and write data to the shared memory unit 26 in S9 ⁇
- a response transfer command EC including the termination code shown in FIG. 7 is created in S6 and S10, and S7, In S11, the bus right of the shared system bus 16 is acquired, and the process proceeds to S8, S12. That is, in S8 in the (LSU SSU) direction, the read data D. is added to the response transfer command EC and transmitted to the shared system bus 16. In S12, which becomes (SSU-LSU), the response transfer command EC is sent to the shared system bus 16 IS3.
- connection unit 22 of the processor module 10 is connected to the shared system bus as shown in S8 or S17. 16 is monitored and the response transfer command Coincidence between unit ID of DID and self S 9: If it is determined at S 1 8, SI 0, performs willing receiving operation SI 9, in connection with received data Yuni' preparative 2 2 dual Rupo preparative RAM 3 8 To be stored.
- the plurality of shared memory modules 12 constituting the SSU space of the present invention can be duplicated for the purpose of fault tolerance.
- a write operation is performed on both duplicated shared memory modules 12, while a read operation is performed on one shared memory module 12.
- Remote This is done from joule 1 2
- the writing of the redundant shared memory module 12 is performed by a single access instruction from the central processing unit 18 based on the software, and the connection unit 22
- Access to the shared memory module 12 duplicated by one-way control is executed.
- the write access to the duplicated shared memory module 12 by this hardware control cannot be performed simultaneously due to the hardware control.
- First, one shared memory is used. Writes to the! 0 module 12 and, when the operation is completed, enters the write operation to the other shared memory module 12.
- the specific access method differs depending on the access in the program mode and the DMA mode.
- the 15 program mode dual access method is the processing of S19, S22 to S28 in Fig. 15A.
- the first storage access is processed in the same way as in the single configuration, and the first write access to the shared memory module 12 is terminated in S18.
- the process proceeds to step S19 and the second control register shown in FIG. 13 defining the configuration of the shared memory module 12 6 2 — See 1 and 2.
- the second control register 6 2 — 1 and 2 specify the double configuration of shared memory 5 module 1 2 and the double configuration. At this time, the unit ID of the shared memory module on the read side and the unit ID of the shared memory module to be written first are specified.
- the process proceeds to S22, where the shared memory module 1 2 specified first by the second control register 6 2—1 and 2 that has already been accessed Create a transfer start command SC for the store that uses the unit ID obtained by inverting the least significant bit of the unit ID as the DID.
- S23 the bus right is acquired for the shared system bus 16 and the start transfer command SC, address A, and the same data D as the first transfer are transmitted to the shared system bus 1.6, and the other duplexed shared bus is transmitted. Access to existing memory module 1 and 2.
- the shared memory module is used in S24 of Fig. 15A.
- the transfer data from 3 ⁇ 1 12 is monitored, and if it is determined in S25 that the DID matches its own unit ID, a response transfer command EC reception operation is performed in S26, and S12,
- the central processing unit 18 accesses the physical address of the shared memory module 12 in the program mode based on the soft-to-value (the SSU space address). Access), the connection unit 22 on the processor module 10 side determines whether the shared memory unit 12 has a dual configuration or a duplex configuration by hardware control, and determines whether the duplex configuration is a dual configuration. If this is the case, the unit ID can be automatically changed at the end of the first access, and the second access can be performed.
- the duplex access method in the D ⁇ mode is the processing of S20, S22 to S27 in Fig. 16A.
- the data transfer direction is (LSU ⁇ SSU)
- the first DMA access is treated the same as in the single configuration, and the first sharing in S19
- select the target shared memory 2 ⁇ re-module 12 and select the shared memory module. 1 Starts by specifying the access address and transfer length on 2; however, the operation modes such as the transfer direction and single / duplex configuration when writing to the shared memory module 12 are started.
- the unit is specified by the DMA control register 50 of the connection unit 22.
- the presence / absence of redundant writing is determined by referring to the DMA control register 50 that defines the configuration of the shared memory module 12.
- the process proceeds to S21 and the connection unit 22 is accessed. Completes with one write access to shared memory module 12 that has become.
- the process proceeds to S22, and the unit of the shared memory module 12 specified first by the DMA control register 50 whose access has already been completed. Create a transfer start command SC for writing with the unit ID, whose inverted least significant bit of the ID is inverted, as D 'ID.
- S23 the bus right of the shared system bus 16 is acquired, and the start transfer command S (:, address A and the same data D as the first image are transmitted to the shared system bus 16 to be duplicated. Write to the other shared memory module 12 by DMA access.
- This second DMA access is the first Similarly, the processing of S1 to S4 and S9 to S12 in FIG. 16B is performed on the shared memory module 12 side, and finally, the response transfer command EC for providing a termination code is shared with the shared memory module 12. It is sent to stem bus 16.
- the transfer data from the shared memory module 12 is monitored in S24 of Fig. 16A, and when the match between the DID and its own unit ID is determined in S25, a response transfer is performed in S26.
- the receiving operation of the command EC is performed, and the writing by the DMA access to the dual configuration shared memory module 12 is completed via S26 and S27 in the same manner as in the case of S11 and S12.
- the duplex writing by the hardware is automatically performed.
- the unit ID being accessed and the unit of the shared memory module 12 specified at the first access can be determined in accordance with the access order using the least significant bit of the ID.
- FIG. 18 shows the range of exclusive control by the shared memory exclusive control of the present invention for the embodiment of FIG.
- Figure 19 shows the operation sequence diagram of the memory-side exclusive control.
- the CSI instruction (Compare and Store locked), which is a kind of exclusive instruction in a multi-processor system using a general-purpose central processing unit as a CPU, is a shared memory consisting of a shared memory module 12. After confirming that any access address in the area is under the control of the central processing unit 18 mounted on any processor module 10 that intends to rewrite this address This access address is rewritten.
- the data of the access address of the shared memory module 12 is read and transferred to the processor module 10 of the access source, and the central processing unit of the processor module 10 is read. 18 compares the expected data stored in the access address with the read data, and rewrites the access address if they match.
- Fig. 20 and Fig. 21 As shown in the figure, when the CSI instruction is used, the range controlled by wandering is the internal bus 24 on the processor module 10, the system bus 16 and the internal bus on the shared memory module 12. Over a wide range of 30 times, the exclusive control time is also read from the shared memory nod area from the start transfer of the read as an instruction of the central processing unit 18, the comparison by the central processing unit 18, the central processing unit It takes a long time to write to the shared memory area as the 18 instruction, and to transfer the write response.
- the execution of the comparison operation in the CSI instruction is performed on the shared memory module 12 to greatly reduce the range and time in the system to be exclusively controlled. Things.
- FIG. 19 is an operation sequence diagram showing one embodiment of the memory-side exclusive control of the present invention.
- the central processing unit ( ⁇ P) 18 of the processor module (PM-) 10 is controlled by the processor module based on the software.
- the connection unit (SSBC-P) 22 on the CSI 22 registers the CSI register with the physical address (a) and the shared memory in the SSU space (shared memory space) to be accessed. Data to be compared with the data stored in the access address in the memory module (SSM) 12 (b) When the match is established after the comparison, the access address After writing data (c) to be replaced with data, issue an operation start instruction.
- connection unit 22 on the processor module 10 receives the start instruction and operates the CSI instruction for exclusive control on the memory side in the same manner as in the program mode access. Generates a start transfer command (d) including a command and sends it to a specific shared memory module 12 having a physical address to be accessed.
- connection unit (SSBC-S) 28 mounted on the shared memory module 12 receives the transmission information (d, a, b, c) and executes the CSI instruction with exclusive use on the memory side. . That is, the connection unit 28 first reads the data (e) of the access address (a) from the shared memory unit 26 as a CSI instruction by the memory-side exclusive control, and compares the comparison data (b). Compare with. If the comparison match is established, the write operation of the rewrite data (c) is performed for the access address (a). Then, it returns a response transfer command (f) to the processor module 10 of the access source, which issues a normal termination code.
- data (e) is read from the shared memory unit (SSU) 26 and the connection unit 28 determines the match. This is the period until the rewriting data (c) is written.
- the range of exclusion is limited to the part indicated by the bold line of the internal bus 30 of the memory module 12 to be accessed.
- the shared system bus 16 can be used between the other processor module 10 and the other shared memory module 12.
- FIG. 2 shows a plurality of processor modules 10, a system configuration using one processor module 10 may be used.
- Fig. 22 shows the execution circuit of the CSI instruction installed in the connection unit (SSBC-S).
- the command (C) and the physical address (A) are first sent from the CPU provided in the processor module to the buffer in the connection unit (SSBC-1P) by the CSI instruction of the software tuner. ), Comparison data (CD) and rewrite data (SD). Thereafter, the CPU issues a transfer start instruction. Her The whyua receives the start command, generates a bus command, and shares the command (C), address (A), comparison data (CD), and rewrite data via the system bus. Send to memory.
- the shared memory side executes the CSI instruction via the connection unit (SSBC-S), that is, the shared memory read data and comparison data (CD) specified by the address (A). When matches, rewrite data (SD) is written to the address (A).
- the connection unit (SSBC-S) is connected to a transmission / reception circuit that operates as an interface with the system bus, a dual-port RAM to which the output of the transmission / reception circuit is connected, and a dual-port R0M output. It has an address register (AR), a data output register (DOR), and a comparison register (CMR). Furthermore, the outputs of the address register (AR) and the data output register (DOR) are connected to the address of the shared memory and the data input / output terminal via a buffer, respectively.
- AR address register
- DOR data output register
- CMR comparison register
- the data input / output terminal is connected to the data input register (DIR) via a buffer, and the output of the data input register (DIR) and the output of the comparison register (CMR) are applied to the comparison circuit.
- DIR data input register
- CMR comparison register
- the comparison circuit is activated and the control circuit is activated.
- Rewrite data (SD) from the external RAM is taken into the physical address via the data output register (DOR).
- the status after executing the CSI instruction is sent to the PM via the data input register (DIR) and the dual port RAM.
- this read data is transferred to the processor module (PM) via the dual port RAM of the data input register (DIR).
- the shared memory receives the command issued by the PM, stores the address, comparison data, and rewrite data in the dual-port RAM, and issues a processing request to the control circuit.
- the control circuit starts memory reading after storing the address in the register (AR).
- the comparison data is stored in CMR while the memory is being read, and the rewrite data is stored in DOR.
- read data is stored in DiR when memory read is completed. Compare CMR and DiR at timing II. If the comparison matches at timing 6, memory writing is started. If no further comparison is found, memory writing does not start.
- Store D i R in dual port RAM also store exit status, Return status.
- the SSM receives the command and executes the exclusive operation. In addition to the operation termination status, the content of the exclusion success / failure is notified by the EC termination code.
- A Access address (same as A in 1)
- the SSM receives the command, executes the write operation, and notifies the end status of the operation with the EC end code.
- the time and range of shared memory exclusion control associated with execution of a CSI instruction can be significantly reduced, and as a result, system performance can be improved.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Description
明 細 発 明 の 名 称
共有 メ モ リ 側 排 他 制 御 方 式 技 術 分 野
本発明は、 複数のプロセ ッサモジュールと共有メ モ リ モジュールがシステムバスを介して接続された マルチブロセ ッサシステムの共有メ モ リ側排他制御 方式に関する。
冃 景 ά 術
マルチプコセ ッサシステムの共有メ モ リ には、 通 常、 プロセ ッサの処理に必要な命令及びデータが格 納されており、 各プロセ ッサモジュールは頻繁に共 有メ モ リ をアクセスする。 このよ うに共有メ モ リ の アクセスに排他命令は必須であり、 この排他命令の 中に共有メ モ リ の読出データ とソ フ ト ウ ユアが期待 するデータの一致を判別した時にデータを書き換え 実行する C S I .命令がある。 しかし、 C S I 命令を 実行する際には、 命令終了までプロセ ッサモジユ ー ルと共有メ モ リ モジュールとの間のシステムバスが 占有される排他制御が行われ、 その間、 他のプロセ ッサモジュールによるアクセスが禁止され、 システ ム性能が低下する。 従って、 C S I 命令実行時の排 他制御の範囲と時間を可能な限り短縮する ことが望 まれる。
従来のマルチプロセ ッサシステムは、 第 2 0図に 示すように、 複数のプロセ ッサモジュール 1 0 と複 数の共有メ モリモジュール 1 2が、 情報転送のため のシステムバス 1 6を介して接続され、 マルチプロ セ ッサシステムとして知られた計算機システムを構 築している。
このよう なマルチプロセ ッサシステムでの共有メ モ リ に対する排他命令は必須である。 排他命令の一 植として、 C S I ( Compa re and Store I nter l ocke d)命令がある。
C S I命令の動作シーケンスは第 2 1図に示すよ うに、 複数の共有メ モ リ モジュール ( S S M ) 1 2 で構成される共有メ モリ領域のあるァ ドレスのデー タを書き換えたい場合に、 まずアクセスア ドレスの データを読出し、 読出したデータとプロセッサモジ ユール ( P M ) 1 0 の中央処理ュニッ ト ( P ) 1 8がアクセスァ ドレスに記憶されていると期待する データと比較した後、 一致すればァクセスァ ドレス の書き換えを行う ものである。
C S I命令においては、 このアクセスア ドレスの データを読み出した後、 比較判定が一致し、 書き換 えを行う間、 アクセスァ ドレスを他のプロセッサモ ジュール 1 0上の中央処理ュニッ ト 1 8がアクセス して更新しないように排他制御を行う。
発 明 の 開 示
しかしながら、 従来の共有メ モ リ側の C S I 命令 実行時の排他制御は、 第 2 0図の太線に示すように アク セス元となるプロ セ ッ サモ ジュール 1 0 上の中 央処理ュニッ ト 1 8からシステムバス 1 6を経由し て共有メ モリ空間のア ク セス対象となった共有メ モ リ モジュール 1 2までの経路すべてに及ぶ。 同時に 排他制御の期間は、 読出しから比較、 書き込みまで の長期間に亘る。
このような排他制御の間は、 他のプロセ ッ サモジ ユール 1 0上の中央処理ュニッ ト 1 0から共有メ モ リ モジュール 1 2 へのアク セスは不可能なため、 C S I 命令はシステム性能を悪化させる 1 つの要因と なっている。
本発明は、 このような従来の問題点に鑑みてなさ れたもので、 共有メ モ リ に対し C S I 命令を実行す る際の排他制御の範囲と時間を短縮してシステム性 能を向上する共有メ モ リ側排他制御方式を提供する ことを目的とする。
第 1図は本発明の原理説明図である。
第 1図に示すように、 本発明は、 少なく ともメ イ ンメ モ リ 2 0、 中央処理ュニッ ト 1 8及びシステム バス 1 6 への接続ュニ ッ ト 2 2を備えた 1 又は複数 の処理モジュール (プロセ ッサモジュール) 1 0 と、 少な く とも共有メ モ リ ュニ 'ン ト 2 6及びシステムバ ス 1 6への接続ュニッ ト 2 8を備えた 1又は複数の
! 共有メ モ リ モ ジュール 1 2 とを備えた計算機システ ムを対象とする。
このよ う な計算機システムにっき本発明は、 処理 モジュール 1 0の中央処理ュニッ ト 1 8が任意の共 ^ 有メ モ リ モジュール 1 2のア ド レスを指定してデー タを書き換える際に、 ア ク セスア ド レスの読出デー タと中央処理ュニッ ト 1 8が期待するデータ との一 致を判別した時に、 ア ク セスア ド レスの書き換えを 行う C S I命令を実行する場合に、 共有メ モ リ モジ 0 ユール 1 2の接続ュニッ ト 2 8に C S I命令を認識 させ、 C S I命令におけるデータ読出と比較処理を 共有メ モ リモジュール 1 2内で行うようにしたこと を特徴とする。
即ち、 処理モジュール 1 0の接続ュニ ッ ト 2 2は、 15 ア ク セス対象となった共有メ モ リ モジュール 1 2の 接続ュニッ ト 2 8に、 共有メ モ リ モジュール 1 2を 示す相手先 I Dコード (D I D ) 、 発信元を示す発 信元 I Dコー ド: ( S I D ) 、 C S I命令を示すオペ ラ ン ド、 及びアク セスデータ容量 (B C T) で構成 20 される起動転送コ マン ドを作成し、 この起動転送コ マ ン ドと共に比較データ及び書き換えデータをシス テムバス ( 1 6 ) を介して送信する。
これに対し共有メ モ リ モジュール 1 2の接続ュニ ッ ト 2 8は、 受信動作により取込んだ起動転送コマ 25 ン ドに基づいて、 データ読出、 読出データと比較デ
ータ との比較判定、 比較一致の成立時にデータ書き 換えを実行し、 データ読出からデータ書き換えの間 共有メ モ リ モ ジュール 1 2 の内部バス 3 0を排他制 御する。
ま た共有メ モ リ モ ジュール 1 2 の接続ュニッ ト 2 8 は、 比較一致により正常に書き換えを終了した際 には、 正常終了コ ー ドを舍む応答転送コマン ドを作 成してシステムバス 1 6を介してア ク セ ス元の処理 モジュール 1 0 に送信し、 比較不一致により書き換 えができなかった際には、 異常終了コー ドを舍む応 答転送コマン ドを作成して不一致となつた読出デー タと共にシステムバス 1 6を介してアクセス元の処 理モ ジュール 1 0 に送信する。
更に、 共有メ モ リ モ ジュール 1 2 の接続ュニッ ト 2 8 は、 システムバス 1 6を監視し、 起動転送コ マ ン ドの相手先 I D コー ド ( D I D ) と 自己のュニ ッ ト I Dとの一致を判別した時に、 該起動転送コマン ドの受信動作を.行い、 一方、 処理モ ジュール 1 0 の 接続ュニ ッ ト 2 2 は、 システムバス 1 6を監視し、 応答転送コマン ドの相手先 I Dコー ド ( D I D ) と 自己のュニッ ト I Dとの一致を判別した時に、 該応 答転送コマン ドの受信動作を行う。
このような構成を備えた本発明の共有メ モ リ側排 他制御方式によれば、 C S I 命令の実行時における 比較操作の実行場所をプロセ ッサモジユール上の中
央処理ユニ ッ トではな く 、 メ モ リ モ ジュール上の シ ステムバスへの接続ユニ ッ トで行う こ とで、 C S I 命令において排他制御される範囲及び時間を大幅に 短縮し、 広範囲かつ長時間の排他制御によるシステ ム性能の悪化という問題点を解決することができる。 図面 の 簡単 な 説 明
第 1図は本発明の原理説明図、
第 2図は本発明のマルチプ口セ ッサシステム構成 図、
第 3図は本究明のプロセ ッ サモ ジュール構成図、 第 4図は本発明の共有メ モ リ モジュール構成図、 第 5図は本発明のプロセ ッサモジュール内蔵の接 続ュニッ ト構成図、
第 6図は本発明の共有メモリ モジュール内蔵の接 続ュニッ ト構成図、
第 7図は本発明のシステムバス上の転送コマン ド 説明図、
第 8図は本発明の書込転送動作説明図、
第 9図は本発明の読出転送動作説明図、
第 1 0図は本発明のア ドレス空間マッブ説明部、 第 1 1図は本発明の拡張 S S U空間說明図、 第 1 2図は本発明の第 1制御レジスタ による S S Μ構成定義の説明図、
第 1 3図は本発明の第 2制御レジスタによる S Sδ Μ構成定義の説明図、
第 1 4図は第 1 2 , 1 3図の構成定義に対応する 共有メ モ リ モ ジユールの実装説明図、
第 1 5 A図及び第 1 5 B図は本発明のプログラム モー ドア ク セスのフ ローチヤ一ト、
第 1 6 A図及び第 1 6 B図は本発明の D MAモー ドアク セスのフ ローチヤ一ト、
第 1 7図は本発明の D MAモー ドア ク セ スで用い るディ スク リ プタ説明図、
第 1 8図は本発明のメ モリ側排他制御の排他範囲 説明図、
第 1 9図は本発明のメ モ リ側排他制御の動作シー ケ ンス図、
第 2 0図は従来のメ モリ側排他制御の排他範囲説 明図、
第 2 1図は従来のメ モ リ側排他制御の動作シーケ ンス図、
第 2 2図及び第 2 3図は C S I 命令の実行回路と タイ ミ ングチヤ一トを示す図、
第 2 4図は C S I 命令の二重化排他制御を説明す る図である。
発明を実施するための最良の形態
[装置の構成]
第 2図は本発明の共有メ モリ構成方式が適用され るマルチプロセ ッサシステムの一部を示したシステ ム構成図である。
第 2図において、 マルチプロセ ッサシステムは、 複数個のプロセ ッサモジュール ( P M) 1 0 と、 複 数個の共有メ モリ モジュール ( S S M ) 1 2を有し、 各プロセ ッサモジユ ー 1 0 と各共有メ モリ モジユ ー ル 1 2は、 スブリ ッ トバスである共有システムバス ( S S— B U S ) 1 6に接続ユニッ ト ( S S B C— P ) 2 2を通して接続される。 共有システムバスハ ン ドラ ( S S B H ) 1 4により制御され、 共有シス テムバス 1 6のァービ ト レーショ ンは共有システム バスハン ドラ 1 4が集中管理する。
# 0〜 # 2のプロセ ッサモジュール 1 0には、 そ れぞれュニッ ト I Dとして、
PM# 0 ; U I D = 1 0 0 0 0 0 0
PM# 1 ; U I D - 1 0 0 0 0 0 1
P M# 2 ; U I D = 1 0 0 0 0 1 0
が付けられ、 また # 0〜 # 2の共有メ モ リ モジユ ー ル 1 2には、 それぞれュニッ ト I Dとして
S S M# 0 ; U-I D - 0 0 0 0 0 0
S S M# 1 ; U I D- 0 0 0 0 0 1
S S M# 2 ; U I D= 0 0 0 0 1 0
が付けられる。
各々のプロセ ッサモジュール 1 0および共有メ モ リモジュール 1 2は、 フォール ト ト レラ ン トを目的 として二重化した # 0及び # 1の共有システムバスδ 1 6により制御されているが、 より多く の共有シス
テムバス 1 6 に接続しても良い。
第 3図は第 2図に示したプロセ ッサモジュール 1 0 の実施例構成図である。
第 3図において、 プロセ ッサモジュール 1 0内に は、 中央処理ュニ ッ ト ( P ) 1 8 、 ローカルなメ イ ンメ モ リ ユニ ッ ト ( L S U ) 2 0、 および 2本の 共有システムバス 1 6に対する 2つの接続ュニッ ト ( S S B C— P ) 2 2が内部バス 2 4 を介して設け られる。
このプロセ ッサモジュール 1 0内には、 中央処理 ュニ ッ ト 1 8およびメ イ ンメ モ リ 2 0上で動作する ソ フ トウユア ( O S ) が走行し、 第 2図に示した各 プロセ ッ サモジュール 1 0 内のソ フ ト ウ エアは、 相 互に協調して一連の動作を行う分散 0 Sを構成する, またプロセ ッ サモ ジュール 1 0内の中央処理ュニ ッ ト 1 8 は、 自己のプロセ ッサモジュール 1 0内のメ ィ ンメ モ リ 2 0からのみ命令コー ドをフヱ ツチする ようにしている。
第 4図は第 2図に示した共有メ モ リ モジュール 1 2の実施例構成図である。
第 4図において、 共有メ モ リ モ ジュール 1 2内に は、 共有メ モ リユニッ ト ( S S U ) 2 4及び 2本の 共有システムバス 1 6に対する 2 つの接続ュニ ッ ト ( S S B C— S ) 2 8が内部バス 3 0を介して設け られる。 共有メ モ リュッ ト 2 6 には第 2図に示した
x 複数のプロセ ッサモジュール 1 0で共有化が必要な データが格納される。
第 5図は第 3図のプロセ ッサモジュール 1 0に設 けた接続ュニッ ト ( S S B C— P ) 2 2の実施例構
5 成図である。
第 5図において、 接続ュニッ ト 2 2 は共有システ ムバス 1 6を介して第 2図の共有メ モ リ モジュール 1 2に対し、
①ブログラムモード
0 ② D M Aモー ド
の 2モードによるァクセスを行う。 接続ュニッ ト 2 2 は、 これら 2つのアクセスモー ドに対応してプロ グラムモー ド · アクセス制御回路 3 2及び D MAモ ード · アクセス制御回路 3 4、 共有システムバス 1
1δ 6 との送受信回路 3 6及びバッ ファ として機能する デュアルボー ト R A Μ 3 8によって構成される。 こ こでプログラムモード · アクセス制御面路 3 2には、 ァ ドレスデコ一.ダ 4 0、 タイ ミ ング制御回路 4 2、 構成定義レジスタ 4 4が設けられ、 また D M Aモー
20 ド · ァクセス制御回路 3 4 には、 ァ ドレス発生器 4 6、 タ イ ミ ング制御回路 4 8及び D M A制御レジス タ 5 0が設けられる。
第 6図は第 4図に示した共有メ モリ モジュール 1 2に設けた接続ュニ ッ ト ( S S B C— S ) 2 8の実
25 施例構成図である。
第 6図において、 接続ュニッ ト 2 8には、 内部バ ス 3 0を制御する内部バス制御回路 7 4、 ア ドレス 発生器 Ί 0及びタイ ミ ング制御回路 7 2を備えた D MA制御回路 5 2、 第 4図のように共有メ モリ モジ ユール 1 2に複数の接続ュニッ ト 2 8が搭載された 場合に内部バス 3 0のァービ ト レーショ ンを行う内 部バスアビータ回路 5 4、 共有システム ノ ス 1 6に 対する送受信回路 5 6、 及びバッファ機能を有する デュアルポー ト R AM 5 8によって構成される。 第 3図及び第 4図に示したプロセ ッサモジュール 1 0と共有メ モ リ モジュール 1 2間を共有システム バス 1 6を介して接続する接続ユニッ ト 2 2、 2 8 は、 一回のアクセスを起勖転送、 応答転送に分離し て行うスプリ ッ ト転送方式を採用している。
このスプリ ッ ト転送方式のバス制御においては、 各モジュールごとにュニッ ト I Dを割り付け、 ュニ ッ ト I Dをバス上のモジュール識別子とする。
第 7図に接続ュニッ ト 2 2、 2 8で使用する起動 転送コマン ド S Cと応答転送コマン ド E Cの例を示 す。
第 7図の起動転送コマン ド S Cにおいて、 D I D (Destination ID) は受信先モジュールのュニッ ト I Dであり、 S I D (Source ID ) は送信元モジュ ールュニッ ト I Dである。 またオペラ ン ドはァクセ ス種類を示す。 アクセス種類としては、 共有メ モ リ
モジュール 1 2 に対するメ モ リ アクセスの他に、 共 有メ モ リ モジュール 1 2や他のプロセ ッサモジユー ル 1 0 に対するホル ト指示、 或いはリ セ ッ ト指示な どの制御レジスタのアクセス等がある。 更に B C T
( Byte Count ) は、 共有メ モリ モジュール 1 2 のァ クセスにおけるデータ容量を示す。
—方、 応答転送コマン ド E Cにおける D I D、 S
I Dは起動転送コマン ド S Cと同じであるが、 終結 コー ドはアクセス先における終結状態、 即ち正常終 結と異常終結をコード化したものである。
第 8図は共有システムバス 1 6 によりプロセ ッサ モジュール 1 0から共有メ モ リ モジュール 1 2 にデ ータを転送して書込む書込アクセス (ス トアァクセ ス) の動作説明図である。
まずアクセス元のプロセ ッサモジュール 1 0 は、 起動転送コマン ド S Cを作成する。 即ち、 自己のュ ニッ ト I Dを示す S I D、 ァクセス先の共有メモリ モジュール 1 2 -のュニッ ト I Dを示す D I D、 メ モ リ書込アクセスを示すオペラ ン ド、 アクセス容量を 示す B C Tに容量を示す B C Tによって転送起動コ マン ド S Cを作成する。 共有システムバス 1 6 には 転送起動コマン ド S Cに続いて、 アクセス先の共有 メ モ リ モジュール 1 2上のアクセスア ドレス A及び 書き込むべきデータ Dを送信する。
受信側の共有メ モ リ モジュール 1 2 は共有システ
バス 1 6上を監視し、 起動転送コマン ド S Cに舍ま れる受信先を示す D I Dと自己のュニッ ト I Dを比 較し、 両者一致した場合に受信動作を行う。 受信動 作を行った共有メ モ リ モジュール 1 2 は、 共有メ モ リ モジュール 1 2内に設けた共有メ モ リュニッ ト 2 6 (第 4図参照) に書込アクセスを行い、 書込ァク セスの終結コー ドを舍め、 転送方向が起動転送と応 答転送では逆のため D I D と S I Dを交換した応答 転送コマン ド E Cを作成してアクセス元のプロセ ッ サモジュール 1 0 に対して送信する。
アクセス元のプロセ ッサモジュール 1 0 は、 共有 システムバス 1 6上を監視し、 応答転送コマン ド E C中の相手先を示す D I Dが自己のュニッ ト I Dと 一致した場合に受信動作を行い、 1 回のアクセスを 終了する。
この起動転送コマン ド S Cの送信終了後から応答 転送コマン ド E Cの送信の開始までの間の空き時間 については、 他のアクセスにおける起動転送コマン ド S Cあるいは応答コマン ド E Cの転送に共有シス テムバス 1 6を使用しても良い。
第 9図は共有メ モ リ モジュール 1 2からプロセ ッ サモジュール 1 0 にデータを読出す読出アクセス ( フヱ ツチアクセス) の動作説明図である。
まずアクセス元のプロセ ッサモジュール 1 0 は、 起動転送コマン ド S Cを作成する。 即ち、 自己のュ
ニ ッ ト I Dを示す S I D、 ア ク セス先の共有メ モ リ モジュール 1 2 のュニ ッ ト I Dを示す D I D、 メ モ リ読出ア ク セスのオペラ ン ド、 アク セス容量を示す B C Tによつて転送起動コマ ン ド S Cを作成する。 共有システムバス 1 6 上には転送起動コ マ ン ド S C に続いて、 アク セス先の共有メ モ リ モジュール 1 2 上のアク セスァ ド レス Aを送信する。
受信側の共有メ モ リ モ ジュール 1 2 は共有システ ムバス 1 6上を監視し、 転送コマ ン ド S Cに舍まれ る受信先を示す D I Dと自己のュニッ ト I Dを比較 し、 一致した場合に受信動作を行う。 受信動作を行 つた共有メ モ リ モジュール 1 2 は、 共有メ モ リ モジ ユール 1 2 内の共有メ モ リユニ ッ ト 2 6 (第 4図参 照) に読出ア ク セスを行い、 読出ア ク セスの.終結コ 一ドを舍め、 転送方向が起動転送と応答転送では逆 のため D I Dと S I Dを交換した応答転送コマン ド
E C及び読出データ Dをア ク セス元のプロセ ッサモ ジュール 1 0に対して送信する。
ア ク セス元のプロセ ッ サモジュール 1 0 は、 共有 システムバス 1 6上を監視し、 応答転送コマ ン ド E
C中の相手先を示す D I Dが自己のュニッ ト I Dと 一致した場合に受信動作を行い、 1回の読出ァクセ スが終了する。
この読出アク セスには、 プログラムモー ドと D M
Aモー ドの 2 モー ドがある力 、 いずれのアク セスに
おいても共有システムバス 1 6上での動作は同じで ある。
[ァ ド レス空間]
第 1 0図に本発明の実施例におけるァ ドレス空間 のマツブ說明図を示す。
第 1 0図において、 各プロセッサモジュール 1 0 の物理ァ ド レス空間は共有メ モ リ モジユール空間 ( 以下 「 S S U空間」 という) と、 プロセ ッサモジュ ール固有空間 (以下 「 P M固有空間」 という ) に大 別される。
P M固有空間は各 口セ ッサモジュール 1 0 のハ 一ドウユアリ ソース固有の空間であり、 各プロセッ サモジュール 1 0 ごとに存在し、 システムにおける プロセ ッサモジュール 1 0の搭載台数分の多重 "' ド レス空間となる。 この実施例では P M固有空間を 2 G B と している。
一方、 S S U空間は、 全てのプロセ ッサモジユ ー ル 1 0に共通な空間である。 即ち、 S S U空間は複 数の共有メ モリ モジュール 1 2 によって構成され、 システム搭載プ口セ ッサモジュール 1 2から見て共 通の空間となり、 しかもプロセ ッサモジュール 1 0 の物理ァ ドレスによつて直接ァクセスするこ とがで きる。 従って、 S S U空間には、 全てのプロセ ッサ モジュール 1 0で共通に必要なデータのみが格納さ れる。
この実施例では 2 0 8の 3 S U空間を例にとって おり、 S S U空間は右側に取出して示すように更に 2 5 6 Μ Β単位の 8つの部分 S S U空間 # 0〜 # 7 に分割される。 この部分 S S U空間 # 0〜# 7 の 1 つ 1 つが本発明の共有メ モ リ モ ジユール 1 2 で構成 される。
更に、 各プロセ ッ サモ ジュール 1 0の Ρ Μ固有空 間は L S U空間と制御空間に分けられる。 Ρ Μ固有 空間の一部である L S U空間には、 各プロセ ッサモ ジュール 1 0が必要とするオペラ ン ド、 各プロセ ッ サモジュール 1 0固有のデータが格納される。 この L S U空簡の存在により各ブロセ ッサモジュール 1 0 は共有メ モリ モジュール 1 2で搆成される S S U 空間に対するア ク セス面数を削減することができる。
また中央処理ユニッ ト 1 8によるア ク セスァ ド レ スが L S U空間を指している場合には、 そのプロセ ッ サモ ジュール 1 0 内での閉じたア クセス となる。
一方、 中央処理ュニッ ト 1 8によるアクセスア ド レス (物理ア ド レス) が S S U空間を指している場 合には、 プロセッサモジュール 1 0の接続ュニッ ト 2 2が S S U空間アクセスであることを認識し、 該 当する共有メ モ リ モ ジュール 1 2 に対し共有システ ムバス 1 6を介してア ク セスを行う。
こ のよ う に、 S S U空間およ じ L S U空間がプロ セ ッ サモ ジュール 1 0上の物理ァ ド レス空間にマ ツ
ビングされている こ とにより、 ソ フ ト ウ ェアは空間 切り替え等を行う必要なしに、 3 3 1;空間及びし 5 U空間のァ ド レスが可能となる。
複数の共有メ モ リ モジュール 1 2 で構成される S S U空間へのア ク セス法と しては、 第 1 0図のよう に S S U空間が各プロセ ッサモジュール 1 0 の物理 ア ド レス空間に直接マ ップされている こ とから、
①ソフ ト ウ ヱァに基づく 中央処理ュニッ ト 1 8 の命 令によ り物理ァ ド レスで直接ア ク セスするプロ グラ ムモー ドと、
②アクセスすべき共有メ モ リ モジュール 1 2 を選択 し、 アクセスア ドレスと転送長を指定してプロセ ッ サモ ジュール 1 0 と共有メ モ リ モ ジュール 1 2 間の データ転送を起動する D M Aモー ド、
の 2種類のアク セスモー ドがある。
こ の 2種類のア ク セスモー ドによ って、 ア ク セス 可能な S S U空間は異なる。 この実施例においては- プログラムモー.ドによってア ク セス可能な S S U空 間は、 各プロセ ッサモジュール 1 0 の物理ア ドレス 空間に直接マ ップされた 2 G Bのみである。 しかし, D M Aモー ドにおいてはアクセス先の共有メ モ リ モ ジュール 1 2 をュニ ッ ト I Dで指定するこ とにより, さ らに大きな S S U空間、 すなわち拡張 S S U空間 に対するアクセスが可能である。
D M Aモー ドアクセスでは、 第 8図. 第 9図に示
した起動転送コ マ ン ド S C中の D I Dによってァク セス先の ¾有メ モ リ モジュール 1 0のュニ ッ ト I D を指定し、 続く ア ドレス Aで共有メ モ リ モ ジュール 1 0内のア ド レスを指定する。 従って、 理論上は、 拡張 S S U空間容量 = 2 n
(但し、 nは中央処理ュニ ッ ト 1 8のァ ド レスビ ッ ト幅にュニッ ト I Dのビ ッ ト幅を加える)
となる拡張 S S U空簡に対してァクセス可能となる。 即ち、 拡張 S S U空間は、 ュニッ ト I Dを識別子と して区別される拡張空間となる。
第 1 1図はプロセ ッサモジュール 1 0の物理ア ド レス空間にマ ツ ビングされた S S U空間と、 DMA モー ドでのみアクセス可能な拡張 S S U空間を示し たマップ説明図である。
第 1 1図において、 拡張 S S U空間を構成する複 数の共有メ モ リ モジュール 1 2のュニ ッ ト I Dのビ ッ ト数は 7ビ ッ トであり、 0 0 0 0 0 0 0〜0 1 1 1 1 1 1の 6 4個のュニッ ト I Dを共有メ モ リ モジ ユール 1 2に割り当てる。
ここでュニッ ト I Dの内の 0 0 0 0 0 0 0〜 0 0 0 0 1 1 1までの 8個のュニッ ト I Dは、 プロダラ ムモード及び DMAモー ドの両方によるアクセスが 可能であり、 更に後述する二重化共有メ モ リを構成 する共有メ モ リ モ ジュール 1 2の構成定義用に使用δ するため、 物理ア ド レス空簡の 2 G Bに割り当てる
また、 残りの 5 6個のュニッ ト I Dを 4 G B単位に 割り付ける。 その結果、 合計 2 2 6 G Bの拡張 S S U空間に対して D M Aモー ドによるアクセスが可能 である。
勿論、 第 1 1図に限定されず、 更にュニッ ト I D のビッ ト数の増加、 あるいはュニ 'ン ト I Dの共有メ モ リ モジュール 1 2に対する割り 当て率の増加によ つて、 D M Aモー ドアクセスによる拡張 S S U空間 は拡大可能である。
物理ア ドレスでアクセスできる本発明の S S U空 間は、 複数の共有メ モ リ モジュール 1 2によって構 成されるが、 S S U空間分の全てのメ モ リを実装す る必要はな く、 未実装領域があってもかまわない。 また、 フォール ト ト レラ ン トを目的として S S U空 間の一部分を二重構成とすることが可能である。
これらの未実装領域や二重構成は、 第 1 0図のブ 口セ ッサモジュール 1 0の S S U空間に示すよう に プロセ ッサモジュール 1 0の S S U空間を複数個の 部分 S S U空間に分割し、 その分割された部分 S S U空間ごとに共有メ モ リ モジユール 1 2 との関係、 即ち、 第 1 1図に示した拡張 S S U空間を構成する ユニッ ト I D = 0 0 0 0 0 0 0〜 0 0 0 0 1 1 1を もつ共有メ モ リ モジュール 1 2 との関係を定義する 構成制御によって実現される。
尚、 ユニッ ト I Dは第 1 1図の 8つのユニッ ト I
! Dに限定されず、 全て二重化の共有メ モリ空間 (拡 張でない 2 G Bの空間) を 1 6個の共有メモリモジ ユール 1 2を使って例えば 0 0 0 0 0 0 0〜 0 0 0 1 1 1 1 で作ることも可能である。
第 1 0図の実施例でば、 2 G Bの S S U空間を 2 5 6単位に 8空間に分割し、 それぞれの分割された 部分 S S U空簡# 0〜# 7 ごとに共有メ モ リ モジュ ール 1 2 との対応閬係を示す構成定義を示している。
この共有メ モリ モジュール 1 2の構成定義は、 各 0 プロセ ッサモジュール 1 0に搭載された第 5図に示 した接続ユニッ ト 2 2内の構成定義レジスタ 4 4を 操作する ことにより実現される。 この構成定義レジ スタ 4 4 は、 第 1 2図に示す第 1 レジスタ 6 0 と第 1 3図に示す第 2制御レジスタ 6 2 — 1 , 6 2 — 2 5 で構成される。
第 1 2図の.第 1制御レジスタ 6 0 は、 第 1 0図の ように 2 5 6 M B単位に 8分割された S S U空間に 対応する共有メ モリモジュール 1 2の存在の有無、 即ち共有メ モリ モジュール 1 2が実装されているか, 0 未実装であるかを指定する。 この実施例では第 1 2 図は第 1制御レジスタ 6 0のビッ ト 1で示す 1 0 , 1 1 , 1 2 , 1 4 , 1 7に対応した部分 S S U空間 # 0 , # 1 , # 4 , # 7 の 5つが実装されており、 ビッ ト 0で示す 1 3 , 1 5 , 1 6 に対応した部分 S
25 S U空間 # 3 , # 5 , # 6の 3つが未実装であるこ
とを示している。
第 1 3図に示す第 2制御レジスタ 6 2 — 1 , 6 2 — 2 は、 第 1制御レジスタ 6 0において実装が指定 された部分 S S U空間にとの共有メ モリ モジュール 1 2が対応するか、 一重ノ二重構成の指定、 及び二 重構成が指定された場合のァクセス順序を指定して いる。
この実施例では、 部分 S S U空間 # 0 , # 1 , # 2 , # 4 , # 7に対するビッ ト D O , D 1 , D 2 , D 4 , D 7のみ有効であり、 対応する共有メ モ リ モ ジュール 1 2の構成及びァクセス形態を指定してい る。 即ち、 ビッ ト D O , D 1 , D 7 は 0であり、 部 分 S S U空間 # 0 , # 1 , # 7が一重構成であるこ とを指定している。 この一重構成の部分 S S U空間 # 0 , # 1 , # 7に対してアクセスが行われた場合, ユニ ッ ト I D = 0 , 1 , 7で指定された共有メ モ リ モジュール 1 2に対するアクセスを行う。
一方、 ビッ ト' D 2 , D 4 は 1 となつて二重構成を 指定している。 この二重構成の部分 S S U空間 # 2 , # 4 に対しアクセスが行われると、 ュニッ ト I D 2 , ュニ ッ ト I D 4で指定された片方の共有メ モ リ モジ ユール 1 2から読出を行う。
これに対し二重構成の共有メ モ リ モジュール 1 2 への書き込みは、 1 回目は第 2制御レジスタ 6 2 — 1 , 2のユニッ ト I Dで指定された共有メ モ リ モジ
ユール 1 2に対して書き込みを行った後、 2回目は 最初のュニッ ト I Dの特定ビッ ト、 例えば最下位ビ ッ トを反転したュニッ ト I Dをもつ他の共有メ モリ モジュール 1 2に対して書き込みを行う。
この第 2制御レジスタ 6 2— 1 , 2で二重構成を 指定できる共有メ モリ モジュール 1 2のペアは、 例 えば
ユニッ ト I D - 0 0 0 0 1 0 0
ユニッ ト I D - 0 0 0 0 1 0 1
のように最下位ビッ トのみが反転しているュニッ ト I Dを有する共有メモ リ モジュール 1 2となる。
第 1 3図の実施例では、 部分 S S U空間 # 2 と # 4の 2つがビッ ト D 2 , D 4 = lにより二重構成の 指定を受けており、 部分 S SU空間 # 2については、 [部分 S S U空間] [ユニッ ト I D]
# 2 0 0 0 0 0 1 0
# 3 0 0 0 0 0 1 1
となるペアが設定され、 また部分 S S U空間 # 4に ついては、
[部分 S S U空簡] [ユニッ ト I D]
# 4 0 0 0 0 1 0 0
# 5 0 0 0 0 1 0 1
となるペアが設定される。
第 1 4図は、 第 1 2図, 第 1 3図の制御レジスタ の指定に基づく共有メ モ リ モジュール 1 2の実装状
態及び構成定義を示した説明図である。
第 1 4図において、 プロセ ッサモジュール 1 0 の S S U空間は # 0 〜# 7 に対応して 8 つの共有メ モ リ モジュール 1 2が設けられる力 S S U空間 # 6 に対応した共有メ モ リ モジュールは未実装である。 また S S U空間 # 3 と # 5 については、 二重構成に より S S U空間 # 2 と # 4 の共有メ モ リ モジュール 1 2に対し二重化されるため、 S S U空間 # 3 , # 5 に対応する共有メ モ リ モジュール 1 2 は存在しな いことになる。 残りの # 0 , # 1 , # 7 の S S U空 間については一重構成であるこ とから 1対 1 に共有 メ モ リ モジュール 1 2 が対応している。
このよう にプロセ ッサモジュール 1 0 の物理ア ド レスでアクセスできる S S U空間を分割して構成定 義を行う ことにより、 システム運用中においても、 分割された S S U空間単位に共有メ モリ モジュール の有効 Z無効あるいは、 一重ノ二重構成の指定が可 能となる。
この実施例にあっては、 ソフ トウユアに基づき中 央処理ュニッ ト 1 8 の命令により物理ァ ドレス空間 で直接 S S U空間をアクセスするプログラムモ一 ド においては、 3 2 ビッ トの S S U空間ァ ド レスのビ ッ ト b 0 〜 b 3 の 4 ビ ッ トが共有メ モ リ モジュール 1 2 の選択子として機能し、 残り ビッ ト b 4 〜 b 3 1 の 2 8 ビッ トが共有メ モ リ モジュール 1 2内のァ
ド レスと して機能する。
共有メ モ リ モジュール 1 2 に搭載されるメ モ リ容 量が 2 5 6 M Bを越える場合、 共有メ モ リ モジユ ー ル 1 2を選択する選択子の意味に変わりはないが、 共有メ モ リ モジュール 1 2 の内部ア ドレスは、 共有 メ モ リ モジュール 1 2 に搭載されるメ モ リ容量に対 応させる。 例えばメモリ容量が 2倍の 5 1 2 M Bの 場合、 ァ ドレス情報のビッ ト b 3 〜 b 3 1 の 2 9 ビ ッ トが共有メ モ リ モー ド 1 2 の内部ア ドレスの指定 に使用される。 また 1 G Bの場合、 ビッ ト b 2 〜 b 3 1 の 3 0 ビッ トが共有メ モリ モジュール 1 2 の内 部ア ドレスの指定に使用され、 さらに 2 G Bまで拡 張された場合は、 3 1 ビッ トすべてが共有メ モリ モ ジュール 1 2 の内部ア ドレスに使用される。 このよ うに共有メ モ リ モジュール 1 2 のメ モ リ容量が 2 5 6 M Bを越える場合には、 共有メ モ リ モジュールを 選択する選択子のビッ ト数が'减少するこ とから、 2 5 6 M B単位に分割された複数の部分 S S U空間に 対して実装容量に対応した同一のュニッ ト I Dを指 定することになる。
[アクセスモー ド ]
本発明において、 プログラムモー ドによるァクセ スは第 1 5 A図, 第 1 5 B図のフローチャー トに示 す手順となる。
第 1 5 A図において、 まずステップ S 1 (以下 「
ステ ップ」 は省略) でソフ ト ウヱァが中央処理ュニ ッ ト 1 8 の命令として S S U空間をァ ドレ 'ン シング するアクセスを行う と、 S 2 に進んで接続ユニッ ト 2 2 は中央処理ュニ ッ ト 1 8からのア ドレスビッ ト b 0〜 b 3 の 4 ビッ ト と共有メ モ リ モジュール 1 2 の構成定義を行う第 2制御レジスタ 6 2 — 1 , 2 の 内容から、 どのュニッ ト I Dを持つ共有メ モ リ モジ ユール 1 2がァ ドレ ッ シングされた S S U空間を有 するかを判断する 更に第 1制御レジスタ 6 0 の内 容から指定された共有メ モ リ モジュール 1 2が未実 装か否かを判定し、 未実装であれば S 4 に進んで異 常終了とする。
S 3で実装が判別されると S 5に進んで接続ュニ ッ ト 2 2 は中央処理ュニ ッ ト 1 8 に対してリ ト ライ 信号を返し、 中央処理ュニッ ト 1 8をゥユイ ト状態 とする。
次に S 6 に進んで中央処理ュニ ッ ト 1 8からの命 令が共有メ モ リ.モジュール 1 2からデータを読み出 すフヱ ツチ命令か、 共有メ モ リ モジュール 1 2 にデ 一タを書込むス トァ命令かを判別する。
中央処理ュニッ ト 1 8 の命令がフユ ツチ命令であ れば、 S 7 に進んで第 2制御レジスタ 6 2 — 1 , 2 の内容から相手先の共有メ モリ モジュールのュニッ ト I Dを D I Dとして起動転送コマン ド S Cを作成 し、 S 8 で共有システムバス 1 6 のバス権を獲得し
! た後に、 起動転送コマン ド S C及びア ドレス Aを共 有システムバス 1 6 に送信する。
—方、 S 3 でス トァ命令が判別されると S 1 4 に 進んで、 同様に第 2制御レジスタ 6 2 — 1 , 2の内 κ 容から相手先の共有メ モ リ モジュールのユニッ ト I Dを D I Dとして起動転送コマン ド S Cを作成し、 S 1 で共有システムバス 1 6 のバス権を獲得した 後に、 起動転送コマン ド S C、 ア ド レス A、 更に書 込用のデータ Dを共有システムバス 1 6に送信する。 0 これに対し共有メモリ モジュール 1 2側にあって は第 1 5 B図のフローチャー トに示すように、 接続 ュニ ッ ト 2 8が S 1 で共有システムバス 1 6を監視 し、 S 2で起動転送コマン ド中の D I Dと自己のュ ニッ ト I Dとの一致を判別すると、 S 3に進んで内
1δ 蔵したデュアルポー ト R A Μ 5 6 に受信データを書 き込む。
銃いて S 4でフヱ ッチ命令かス トァ命令かを判別 する。
S 4でフユ ツチ命令が判別された場合には、 S 5 20 で接続ュニッ ト 2 8 は内部バス 3 0に対するバス権 を獲得した後に、 内部バス制御回路 6 4の制御 ©も とにデュアルポー ト R A M 5 6 と共有メ モ リ ュニッ ト 2 6の間でデータ転送を行う。 S 5で共有メ モ リ モジュール 1 2内でのデータ転送終了後、 接続ュニ 25 ッ ト 2 8 はアクセス元のプロセ ッサモジュール 1 0
に対し応答を行う。
即ち、 S 6 に進んで終結コー ドを含んだ応答転送 コマン ド E Cを作成し、 続いて S 7で共有システム バス 1 6 に対するバス権を獲得し、 最終的に S 8で 応答転送コマン ド E C、 読出されたデータ Dを共有 システムバス 1 6 に送信する。
一方、 S 4でス トア命令が判別された場合には、 S 9で接続ュニッ ト 2 8 は内部バス 3 0 に対するバ ス権を獲得した後に、 内部バス制御回路 6 4 の制御 のもとにデュアルボー ト R A M 5 6 と共有メ モ リ ュ ニッ ト 2 6 との間のデータ転送によりデータ書込を 行う。 S 9で共有メモリ モジュール 1 2内でのデー タ転送 (データ書込) が終了すると、 接続ュニッ ト 2 8 はアクセス元のプロセ ッサモジュール 1 0に対 し応答を行う。
即ち、 S 1 0 に進んで終結コー ドを含んだ応答転 送コマン ド E Cを作成し、 続いて S 1 1 で共有シス テムバス 1 6に対するバス権を獲得し、 最終的に S 1 2で応答転送コマン ド E Cを共有システムバス 1 6 に送信する。
再び第 1 5 A図のプロセ ッサモジュール 1 0側を 説明すると、 プロセ ッサモジュール 1 0 の接続ュニ ッ ト 2 2 は、 S 9 または S 1 6 に示すように共有シ ステムバス 1 6を監視しており、 応答転送コマン ド E Cの D I D と自己のュニ ッ ト I D との一致を S 1
j 0 , S 1 7で判別すると、 フユ ツチ命令の際には S 1 1 に進んで応答転送コマン ド E Cとデータ Dを受 信し、 ス トァ命令の場合は S 1 8 に進んで応答転送 コマン ド E Cを受信する。
; 続いて S 1 2 , S 2 0 に示すように、 中央処理ュ ニッ ト 1 8 に対し発行している リ トライ信号を取り 下げ、 中央処理ュニッ ト 1 8 のゥュイ ト状態を解除 する。 そしてフヱ ツチ命令であれば S 1 3で中央処 理ュニ ッ ト 1 8 に内部バス 2 4 の終結信号 D Cを受 0 信したデータ Dと共に返し、 またス トア命令であれ ば 2 0で中央処理ュニッ ト 1 8に内部バス 2 4の終 結信号 D Cを返す。
以上でプログラムモードによる 1 アクセスが終了 する。
δ 尚、 第 1 5 A図の S 1 9及び S 2 2〜 S 2 8の二 重書込処理については後の説明で明らかにする。
次に、 第 1 6 A図, 第 1 6 B図のフローチャー ト を参照して本発明における D M Aモー ドによるァク セスを説明する。
0 D M Aモー ドによるアクセスに際して中央処理ュ ニッ ト 1 8 は、 まず S 1 で予めプロセ ッサモジュ一 ル 1 0 のメ イ ンメ モリ 2 0上に第 1 7図に示す 手 先の共有メ モリ モジュール 1 2のュニッ ト I D、 ァ クセスァ ドレス、 転送長等の制御内容を含んだディ
25 スク リ ブタを配置する。
即ち、 第 1 7図のディ スク リ プタにおいて、 B C T (Byte Count) は転送バイ ト数を指定し、 バッフ ァ ァ ド レス B U F Aはメ イ ンメ モ リ 2 0上に置かれ るデータバッファ の先頭物理ア ド レスを指定し、 D
I Dはアクセス対象となる共有メ モ リ モジュール 1 2のュニ ッ ト I Dを指定する。 更に S S UAはァク セス対象となった共有メ モ リ モジュール 1 2内の相 対ア ドレス (D I Dで指定された共有メ モ リ モジュ ール 1 2内の内部ア ドレス) を指定するもので、 ブ ログラムモー ドにおける S S U空間の物理ア ドレス とは異なる。
S 1でディ スク リ プタを配置した後、 S 2に進ん で接続ュニッ ト 2 2に設けた D M Aモー ド制御回路 3 4内の DM A制御レジスタ 5 0に転送方向、 共有 メ モ リ モジュール 1 2への二重化書き込み指定、 メ ィ ンメ モ リ 2 0上のディ スク リ プタのァ ドレス等の 制御指示を行い、 DMAモー ドアクセスを起動する <
S 2で D M A.モー ドァクセスが起動されると、 接 続ュニ ッ ト 2 2がプロセ ッサモジュール 1 0の内部 バス 2 4のバス権を獲得してバスマスタ となり、 D M A制御回路 3 4の制御のもとにメ イ ンメ モ リ 2 0 を直接アクセス し、 メ イ ンメ モ リ 2 0上のディ スク リ ブタを読み出し、 メ イ ンメ モ リ 2 0から接繞ュニ ッ ト 2 2内のデュアルポー ト R AM 3 8へのデータ 転送を行う。
接続ユニッ ト 2 2内のデュアルポー ト R AM 3 8 へのデータ転送終了後、 S 4でデータ の転送方向を 判別する。 共有メ モ リ モ ジュール 1 2からメ イ ンメ モ リ 2 0へ読出データを転送する転送方向 (以下 「 ( S S U— L S U ) 方向」 という) であれば S 5に 進んで送受信回路 3 6で第 7図に示した共有メ モ リ モ ジュール 1 2のュニ ッ ト I D、 転送長を舎んだ起 動転送コマ ン ド S Cを作成する。 一方、 メ イ ンメ モ リ 2 0から共有メ モ リ モ ジュール 1 2へ書込データ を転送する転送方向 (以下 「 ( S S U→ L S U ) 方 向」 という ) であれば S 1 3に進んで送受信回路 3 6で同様に転送起動コ マ ン ド S Cを作成する。
続いて S 6 , S 1 4に進んで送受信回路 3 6 は共 有システムバス 1 6のバス権を獲得する。
転送方向が ( S S U→ L S U ) 方向の場合には S 6から S 7に進み、 起動転送コ マ ン ド S C、 ァ ド レ ス Aを共有システムバス 1 6に送信する。 また ( L S U→ S S U ) 方向の場合には S 1 5から S 1 6に 進み、 起動転送コマン ド S C、 ア ド レス A及びデー タ Dを共有システムバス 1 6 に送信する。
—方、 共有メ モ リ モジュール 1 2側の接続ュニッ ト 2 8 は、 第 1 6 B図の S 1 で共有システムバス 1 6を監視しており、 起動転送コマ ン ド S C中の D I Dと自己のュニッ ト I Dとの一致を S 2で判別する と S 3に進み、 接続ュニッ ト 2 8内のデュアルポ一
ト R AM 5 6 に受信データを書込む。
次に S 4で転送方向が ( L S U— S S U ) 方向か ( S S U→ L S U ) 方向かを判別し、 ( L S U→ S S U ) 方向であれば S 5 に進み、 また ( S S U— L S U ) であれば S 9 に進む。 S 5 > S 9では、 接続 ュニッ ト 2 8に設けた D M A制御回 5 2の内部バス 制御回路 6 4が内部バス 3 0 のバス権を獲得し、 デ ュアルポー ト R AM 5 6 と共有メ モ リュニッ ト 2 6 との間でデータ転送を行い、 S 5では共有メ モ リュ ニッ ト 2 6からのデータ読出を行い、 また S 9では 共有メモ リユニッ ト 2 6に対するデータ書込を行う <
S 5又は S 9で D MAによるメ モ リ アク セスが終 了すると、 S 6 , S 1 0で第 7図に示した終結コー ドを含んだ応答転送コマン ド E Cを作成し、 S 7 , S 1 1 で共有システムバス 1 6 のバス権利を獲得し て S 8 , S 1 2に進む。 即ち, ( L S U S S U ) 方向となる S 8では、 応答転送コマン ド E Cに読み 出したデータ D .を付加して共有システムバス 1 6に 送信する。 また ( S S U— L S U ) となる S 1 2で は応答転送コマ ン ド E Cを共有システムバス 1 6に 送 IS 3 る。
再び第 1 6 A図のプロ セ ッ サモ ジュール 1 0側を 説明する と、 プロセ ッ サモ ジュール 1 0 の接続ュニ ッ ト 2 2 は、 S 8又は S 1 7 に示すよ う に共有シス テムバス 1 6を監視しており、 応答転送コ マ ン ドの
D I Dと自己のユニッ ト I Dとの一致を S 9 : S 1 8で判別すると、 S I 0 , S I 9に進んで受信動作 を行い、 受信データを接続ュニッ ト 2 2内のデュア ルポー ト R A M 3 8に格納する。
続いて ( S S U— L S U ) 方向の場合には S 1 1 に進んで内部バス 2 4のバス権を獲得し、 D MA制 御によりデュアルボー ト R A M 3 8の受信データ D をメ イ ンメ モ リ 2 0に転送し、 最終的に S 1 2 で D M A制御レジスタ 5 0に終結コー ドをセ ッ ト し、 中央処理ュニッ ト 1 8に割込み上げて終了を通知す る。
また ( L S U— S S U) 方向の場合には S 2 0を 介して S 2 1に進み、 DMA制御レジスタ 5 0に終 結コー ドをセ ッ ト し、 中央処理ュニッ ト 1 8に割込 みを上げて終了を通知する。
以上で DMAモー ドによる 1アクセスが終了する t 尚、 第 1 6 A図の S 2 0お呼び S 2 2〜S 2 7-の 二重書込処理については後の説明で明らかにする。
[二重化ァクセス ]
本発明の S S U空間を構成する複数の共有メモ リ モジュール 1 2は、 フ ォール ト ト レラ ン トを目的と して二重化することが可能である。 二重化された共 有メ モ リ モジュール 1 2をア ク セス した際の書込動 作は、 二重化された両方の共有メ モ リ モジュール 1 2に行われ、 一方、 読出動作は片方の共有メ モ リ モ
l ジュール 1 2 より行われる。
二重化された共有メ モ リ モ ジュール 1 2 の書込み は、 ソ フ トウユアに基づく 中央処理ュニッ ト 1 8か らの 1 回のアクセス指示で、 接続ュニッ ト 2 2のハ
5 一ドウユア制御によって二重化された共有メ モ リ モ ジュール 1 2 へのア ク セ スが実行される。 こ のハー ドウヱァ制御による二重化された共有メ モ リ モ ジュ ール 1 2 への書込ァク セスは、 ハー ドゥ ヱァ制御上 同時に行われるのて'はな く、 まず片方の共有メ モ リ !0 モ ジュール 1 2 へ書き込みを行い、 その動作が完了 すれば、 もう一方の共有メ モ リ モ ジュール 1 2への 書き込み動作に入る。 具体的な二重化ア ク セス方法 は、 プロ グラムモー ド と D M Aモー ドのア ク セスに よつ 異なる。
15 プロ グラ ムモー ドの二重化ア ク セス方法は第 1 5 A図の S 1 9 , S 2 2〜S 2 8の処理となる。
即ち、 1 回目のス ト アア ク セスについては一重構 成の場合と同じに処理され、 S 1 8で 1 回目の共有 メ モ リ モ ジュール 1 2に対する書込ア ク セスが終了 0 して正常終了を示す応答確認コ マ ン ド E Cを受領す ると、 S 1 9 に進んで共有メ モ リ モ ジュール 1 2の 構成を定義している第 1 3図に示した第 2制御レジ スタ 6 2 — 1 , 2を参照する。
第 2制御レジスタ 6 2 — 1 , 2 には、 共有メ モ リ 5 モ ジュール 1 2 の二重構成の指定、 二重構成を指定
した時の読出し側の共有メ モリ モ ジュールのュニッ ト I D、 更に先に書込む共有メ モ リ モジュールのュ ニッ ト I Dが指定されている。
第 2制御レジスタ 6 2— 1 , 2を参照した時に、 ア ク セスァ ド レスに対応する共有メ モリ モ ジュール 1 2が一重構成の指定であれば、 S 2 0に進んで接 続ユニッ ト 2 2はァクセス対象となつた共有メ モリ モ ジュール 1 2に対する 1回の書込アク セスで終了 する。
これに対し二重構成が指定されていた場合には S 2 2に進み、 既にアクセスが終了した第 2制御レジ スタ 6 2— 1 , 2で最初に指定された共有メ モ リ モ ジュール 1 2のュニッ ト I Dの最下位ビ ッ トを反転 したュニッ ト I Dを D I Dとするス トァ用の転送起 動コマ ン ド S Cを作成する。 次に S 2 3で共有シス テムバス 1 6をバス権を獲得して起動転送コマン ド S C、 ア ド レス A及び 1回目と同じデータ Dを共有 システムバス 1.6に送信し、 二重化された他方の共 有メ モ リ モジュール 1 2に対してア クセスを行う。
この 2回目のア ク セスに対しても 1回目と同様、 第 1 5 B図の S 1〜S 4 , S 9〜 S 1 2の処理が共 有メ モ リ モジュール 1 2側で行われ、 最終的に終結 コー ドを舍む応答転送コマン ド E Cを共有システム バス 1 6に送信して く る。
そこで第 1 5 A図の S 2 4で共有メ モ リ モジユ ー
3δ ル 1 2からの転送データを監視し、 S 2 5で D I D と自己のュニッ ト I Dの一致を判別すると S 2 6で 応答転送コ マ ン ド E Cの受信動作を行い、 S 1 2 ,
S 1 3 の場合と同様にして二重構成の共有メ モ リ モ ジュールに対する一連のス トァア ク セスを終了する こ のよ う に第 2制御レジスタ 6 2 — 1 , 2 によ つ て共有メ モリ モジュール 1 2 の構成定義を行ってお けば、 ソフ トゥユアに基づき中央処理ュニッ ト 1 8 がプロ グラムモー ドで共有メ モ リ モ ジュール 1 2 の 物理ァ ドレスをアクセスした際 ( S S U空間のァク セス) に、 プロセ ッ サモ ジュール 1 0 側の接続ュニ ッ ト 2 2がハー ドウヱァ制御によつて共有メ モ リュ ニッ ト 1 2がー重構成か二重構成か判断し、 二重構 成であれば、 1 回目のア ク セス終了で自動的にュニ ッ ト I Dを変えて 2回目のア ク セスを行う ことがで きる。
またア ク セスァ ド レスに対応する第 2制御レジス タ 6 2 — 1 , 2 'で指定された共有メ モ リ モ ジュール 1 2 の構成定義が二重構成であっても、 二重化され た片方の共有メ モ リ モジュール 1 2が障害によりァ クセスが不可能となる場合があり得る。 このような 一時的に縮退運転を行わざるを得 'い状況において は、 ア ク セス終了で得られた応答確認コ マ ン ド E C の異常終結コー ドを判別した際に、 第 2制御レジス タ 6 2 — 1 , 2 の動作モー ドを二重化モー ドから一
χ 重化モー ドへ変更するこ とによ って対応可能となる。 更に二重化モー ドのアクセス時に、 共有メモリ モ ジュール 1 2 へのア ク セスが異常終結した場合は、 異常が検出された共有メ モ リ モ ジュール 1 2 のュニ
5 ッ ト I D と、 第 2制御レジスタ 6 2 — 1 , 2 の内容 によるアクセス順序と合わせて、 二重化されている 2 つの共有メ モ リ モ ジュールの内容の等価性の有無 の判定も可能である。 特に、 ブ πグラムモードにお いては、 基本的にアク セスの成功、 失敗がワー ド単
10 位で認識できるので、 二重化された共有メ モ リ モジ ユール 1 2間でデータ等価性が失われた場合も、 不 一致が生じたヮー ドとア ク セスに失敗した共有メ モ リ モ ジュール 1 2側を考慮してリ 力バリ処理を行え ば良い。
15 次に D Μ Αモー ドの二重化ァクセス方法は第 1 6 A図の S 2 0 , S 2 2〜 S 2 7 の処理となる。
即ち、 データの転送方向が ( L S U→ S S U ) 方
, 向となる 1回目の D M Aアクセスについては一重構 成の場合と同じに処理され、 S 1 9で 1回目の共有
20 メ モ リ モジュール 1 2に対する書込ァク セスが終了 して正常終了を示す応答確認コ マ ン ド E Cを受領す ると、 S 2 0 に進んで二重化書込みの有無を判定す る。
D M Aモー ドのアク セスは、 目的とする共有メ モ 2δ リ モジュール 1 2を選択し、 共有メ モリ モジユール
1 2上のアクセスァ ド レスと転送長を指定して起動 するが、 その転送方向、 共有メ モ リ モジュール 1 2 への書込み時の一重/二重構成の指定等の動作モー ドは、 起動する単位で接続ュニッ ト 2 2 の D M A制 御レジスタ 5 0 で指定されている。
このため S 2 0 では共有メ モ リ モジュール 1 2 の 構成を定義している D M A制御レジスタ 5 0を参照 して二重化書込みの有無を判定する。
D M A制御レジスタ 5 0を参照した時に、 ァクセ スァ ド レスに対応する共有メ モ リ モ ジュール 1 2が 一重構成の指定であれば、 S 2 1 に進んで接続ュニ ッ ト 2 2 はアクセス対象となった共有メ モ リ モジュ ール 1 2 に対する 1 回の書込ァクセスで終了する。
これに対し二重構成が指定されていた場合には S 2 2に進み、 既にァクセスが終了した D M A制御レ ジスタ 5 0 で最初に指定された共有メ モ リ モジユ ー ル 1 2 のユニ ッ ト I Dの最下位ビッ トを反転したュ ニッ ト I Dを D' I Dとする書込用の転送起動コマン ド S Cを作成する。 次に S 2 3 で共有システムバス 1 6 のバス権を獲得して起動転送コマン ド S (:、 ァ ドレス A及び 1 画目と同じデータ Dを共有システム バス 1 6 に送信し、 二重化された他方の共有メ モ リ モジュール 1 2 に対して D M Aアクセスによる書込 みを行う。
この 2 画目の D M Aアクセスに対しても 1 回目と
同様、 第 1 6 B図の S 1〜 S 4 , S 9〜S 1 2の処 理が共有メモリ モジュール 1 2側で行われ、 最終的 に終結コードを舍む応答転送コマン ド E Cを共有シ ステムバス 1 6に送信して く る。
そこで第 1 6 A図の S 2 4で共有メ モ リ モジユ ー ル 1 2からの転送データを監視し、 S 2 5で D I D と自己のュニッ ト I Dの一致を判別すると S 2 6で 応答転送コマン ド E Cの受信動作を行い、 S 1 1 , S 1 2の場合と同様にして S 2 6 , S 2 7を経て二 重構成の共有メ モリ モジュール 1 2に対する D M A ァクセスによる書込みを終了する。
このよう に D M Aモー ドにおいても、 プログラム モー ドにおける二重化書込みと同様、 動作モードを 指定しておけば、 ハー ドゥヱァによる二重化書込み が自動的に行われる。
また二重化された共有メ モ リ モジュール 1 2の D M Aアクセス中に異常終結した場合、 アクセス中の ユニ ッ ト I Dと'、 1回目のアクセス時に指定された 共有メ モ リ モ ジュール 1 2のュニッ ト I Dの最下位 ビッ トによるアクセス順序と合わせて、 二重化され た 2つの共有メ モリ モジュール 1 2間のデータの等 化性の有無も判定可能である。
[メ モ リ側排他制御]
第 1 8図は第 2図の実施例を対象として本発明の 共有メモリ排他制御による排他制御の範囲を示レ
第 1 9図にメ モ リ側排他制御の動作シーケンス図を 示す。
汎用の中央処理ュニッ トを C P Uとしたマルチプ 口セ ッサシステムでの排他命令の一種である C S I 命令 ( Compa re and S tore I nter l ocked)は、 共有メ モ リ モジュール 1 2 で成る共有メ モ リ領域における 任意のアクセスァ ドレス力、'、 このァ ド レスの書き換 えを実行しょう とする任意のプロセ ッサモジュール 1 0 に搭載した中央処理ュニッ ト 1 8の管理下にあ る こ とを確認後、 このアクセスア ド レスの書き換え を行う ものである。
即ち、 プロセ ッサモジュール 1 0からの指示で共 有メ モ リ モジュール 1 2 のアクセスア ドレスのデー タを読出してアクセス元のプロセ ッサモジュール 1 0 に転送し、 プロセ ッサモジュール 1 0 の中央処理 ュニ ッ ト 1 8がア ク セスァ ドレスに記憶されている 期待するデータと読出したデータとを比較した後、 一致すればァグセスァ ドレスの書き換えを行う。
このよう に共有メ モ リ モジュール 1 2 のアクセス ア ドレスからデータを読み出した後、 アクセス元の プロセ ッサモジュール 1 0で比較判定が一致し、 書 き換えを行う間、 同じアクセスア ドレスを他のプロ セ ッサモジュール 1 0上の中央処理ュニッ ト 1 8 が アクセス しないように排他制御を行う。
しかし、 従来方式にあっては、 第 2 0図, 第 2 1
図に示したように、 C S I 命令を使用した場合に徘 他制御される範囲は、 プロセ ッサモジュール 1 0上 の内部バス 2 4、 システムバス 1 6、 共有メ モ リ モ ジュール 1 2上の内部バス 3 0 の広範囲にわたり、 排他制御される時間も中央処理ュニッ ト 1 8 の命令 としての読出しの起動転送から共有メモリ頷域の読 み出し、 中央処理ュニッ ト 1 8での比較、 中央処理 ユニッ ト 1 8 の命令としての共有メ モ リ領域への書 込み、 さ らに書込みの応答転送までの長時間に及ぶ。
そこで本発明のメ モリ側排他制御方式にあつては、 C S I命令における比較操作の実行を共有メ モ リ モ ジュール 1 2上で行い、 排他制御される システム中 の範囲及び時間を大幅に縮小するものである。
第 1 9図は本発明のメ モ リ側排他制御の一実施例 を示した動作シーケンス図である。
第 1 9図の実施例による C S I命令に伴う排他制 御においては、 ソフ トウヱァに基づきプロセ ッサモ ジュール ( P M-) 1 0 の中央処理ュニ ッ ト (〃 P ) 1 8 は、 まずプロセ ッサモジュール 1 0上の接続ュ ニッ ト ( S S B C— P ) 2 2内に用意された C S I 用レジスタに、 アクセス対象とする S S U空間 (共 有メ モ リ空間) 上の物理ア ドレス ( a ) 、 共有メ モ リ モジュール ( S S M ) 1 2 においてアクセスア ド レスに記憶されているデータ と比較するデータ ( b ) 比較後に一致が成立したときにアクセスァ ドレスの
データと置き換えるデータ ( c ) を書き込んだ後、 オペ レーシ ョ ン起動命令を発行する。
プロ セ ッ サモ ジュール 1 0上の接続ュニ ッ ト 2 2 は、 起動命令の受領によ り プロ グラ ムモー ド · ァ ク セス時と同様に、 メ モ リ側排他制御の C S I 命令を オペラ ン ドを含んだ起動転送コ マ ン ド ( d ) を生成 し、 ア ク セス対象となった物理ア ド レスを有する特 定の共有メ モ リ モ ジュール 1 2 に対し
起動転送コマン ド ( d )
物理ア ド レス ( a )
比較データ ( b )
書き換えデータ ( c )
を送信する。 共有メ モ リ モ ジュール 1 2に搭載され た接続ュニッ ト ( S S B C— S ) 2 8 は、 送信情報 ( d , a , b , c ) を受信し、 メ モ リ側排他による C S I 命令を実行する。 即ち、 接続ュニッ ト 2 8 は メ モリ側排他制御による C S I 命令として、 まずァ ク セスア ド レス' ( a ) のデータ ( e ) を共有メ モ リ ュニッ ト 2 6から読み出し、 比較データ ( b ) と比 較する。 比較一致が成立すれば、 ア ク セスア ド レス ( a ) に対し書き換えデータ ( c ) の書き込み動作 を行う。 その後、 アクセス元のプロセ ッサモジユー ル 1 0 に対し正常終結コー ドを舍む応答転送コマン ド ( f ) を返す。
比較一致が不成立の場合は、 異常終結とし、 ァ ク
セス元のプロセ ッサモジュール 1 0 に対して異常終 結コー ドを舍む応答転送コマン ド ( g ) と共に不一 致データ ( e ) を返す。
このような本発明の C S I命令に伴う共有メモリ モジュールの排他制御の期問は、 共有メ モ リ ュニッ ト ( S S U ) 2 6からデータ ( e ) を読出して接続 ユニッ ト 2 8で一致を判別して書き換えデータ ( c ) を書き込むまでの期間である。
また、 排他される範囲も、 第 1 8図に示すように、 アクセス対象となった ¾有メ モ リ モジュール 1 2の 内部バス 3 0の太線で示す部分に限られ、 メ モ リ側 排他制御が行われても、 他のプロセ ッサモジュール 1 0 と他の共有メモリモジュール 1 2間での共有シ ステムバス 1 6の使用が可能である。
尚、 第 2図の実施例は複数のプロセ ッサモジユー ル 1 0を示しているが、 プロセ ッサモジュール 1 0 を 1台としたシステム構成でもよい。
第 2 2図は接続ュニッ ト ( S S B C— S ) 内に設 けた C S I 命令の実行回路を示す。
第 2 2図において、 まず、 プロセ ッサモジュール 内に設けられた C P Uから接続ュニッ ト ( S S B C 一 P ) 内のバッ ファ にソフ トゥヱァの C S I 命令に より、 先ずコマン ド ( C ) 、 物理ア ドレス ( A ) 、 比較データ ( C D ) 、 書替データ ( S D ) を格納す る。 その後 C P Uは転送の起動命令発行する。 ハー
ドウユアは起動命令を受領し、 バスコ マ ン ドを生成 して、 コ マ ン ド ( C ) 、 ア ド レス ( A ) 、 比較デー タ ( C D ) 、 書替データをシステムバスを介して共 有メモリへ送出する。
共有メ モ リ側では接続ュニッ ト ( S S B C— S ) を介して、 C S I命令に対する実行、 すなわち、 ァ ド レス (A) で指示される共有メ モ リ の読み出しデ ータ と比較データ ( C D ) とが一致した とき、 その ア ド レス ( A) に書替データ ( S D ) を書き込む。 接続ュニッ ト ( S S B C— S ) は、 システムバス とのイ ンタ フ ユース と して動作する送受信回路、 該 送受信回路の出力が接続されたデュアルポー ト R A M、 デュ アルボー ト R 0 Mの出力が接続されるア ド レス レジスタ (AR ) 、 データ出力レジスタ ( D O R ) 、 比較レジスタ ( CMR ) を有する。 さらに、 ア ド レス レジスタ (A R ) とデータ出力レジスタ ( D O R ) の出力はバッファを介して、 それぞれ共有 メ モ リ のア ド レス とデータ入出力端子に接続される , また、 共有メ モ リ のデータ入出力端子はバッ フ ァを 介してデータ入力レジスタ ( D I R ) に接続され、 データ入力レジスタ ( D I R ) の出力と比較レジス タ ( CMR ) の出力は、 比較回路に加える。 こ の比 較面路において、 共有メ モ リから読み出されたデー タと C S I命令の比較データ ( C D ) が等しいと判 断された時、 比較回路を制御回路を起動デュ アルボ
ー ト RAMから書替データ ( S D ) をデータ出カレ ジスタ (D O R ) を介して物理ア ドレスに取り込む。 C S I命令を実行した後のステータスはデータ入力 レジスタ ( D I R ) と、 デュアルポー ト RAMを介 して P Mに送られる。 なお、 C P Uからの読み出し 命令に対する共有メモリからのデータの読み出しの 場合は、 この読み出しデータはデータ入力レジスタ ( D I R ) のデュアルポー ト RAMを介してプロセ ッサモジュール ( P M ) に転送される。
次に共有メ モ リ側の動作を第 2 2図の実行回路及 び第 2 3図のタイ ミ ング図を参照して説明する。
タイ ミ ングにおいて共有メ モリ は P Mが発行した コマ ン ドを受信し、 ア ド レス、 比較データ、 書替デ ータをデュアルポー ト RAMへ格納し、 制御回路に 処理要求を発行する。 タイ ミ ング②において制御回 路はア ド レスをレジスタ ( A R ) に格納した後、 メ モリ読出しを起動する。 タイ ミ ング③においてメ モ リ読出し中に比較データを C M Rへ格納、 更に書替 データを D 0 Rへ格納する。 タイ ミ ング④において メ モ リ読出し完了時に D i Rへ読出しデータを格納 する。 タイ ミ ング⑤において CMRと D i Rを比較 する。 タイ ミ ング⑥において比較一致すれば、 メ モ リ書込を起動する。 さ らに比較一致しなければ、 メ モリ書込は起動しない。 D i Rをデュアルポー ト R AMに格納し、 終了ステータスも格納し、 P Mヘス
テータス返送する。
次に、 書き込むデータを二重化された共有メ モ リ の両方に書き込む場合の排他制御動作について、 第 2 4図を参照して説明する。
① P Mは S S Mに対して排他制御コマン ドを発行 S C : ォペラ ン ド部で排他制御を指示
A : ア ク セスア ド レス
C D : ア ク セスァ ド レスの内容に対する比較デー タ
S D : ア ク セスァ ド レスの内容 = C Dの場合の書 込みデータ
② S S Mはコ マ ン ドを受領して排他動作を実行し. 動作の終結状態に加えて排他成否の内容を E Cの終 結コー ドにて通知
③ S S B C— Pは E Cの内容を解読し、 排他不成 立時は終結、 劻作が正常終結でかつ排他成立時で S S Mが二重化構成にある場合は、 S S Mに対して書 込みコマン ドを発行
S C : ォペラ ン ド部で書込みを指示
A : ア ク セスア ド レス (①の Aと同じ)
D : 書込みデータ (①の S Dと同じ)
④ S S Mはコ マ ン ドを受領して書込み動作を実行 し、 動作の終結状態を E Cの終結コー ドにて通知す る。
産業上の利用可能性
以上説明したように本発明によれば、 C S I命令 の実行に伴う共有メ モリ倒排他制御の時間及び範囲 を大幅に縮小でき、 結果としてシステム性能を向上 できる。
Claims
1. 少な く ともメ イ ンメ モ リ ( 2 0 ) 、 中央処理 ュニッ ト ( 1 8 ) 及びシステムバス ( 1 6 ) への接 続ユニッ ト ( 2 2 ) を備えた 1又は複数の処理モ ジ ユール ( 1 0 ) と、 少な く とも共有メ モ リ ュニ ッ ト ( 2 6 ) 及び前記システムバス ( 1 6 ) への接続ュ ニッ ト ( 2 8 ) を備えた 1又は複数の共有メ モ リ モ ジュール ( 1 2 ) とを備えた計算機システムに於い て、
前記処理モ ジュール ( 1 0 ) の中央処理ュニッ ト ( 1 8 ) が任意の共有メ モリモジュール ( 1 2 ) の ァ ドレスを指定してデータを書き換える際に、 該ァ ド レスの読出データ と前記中央処理ュニ ッ ト ( 1 8 ) が期待するデータ との一致を判別した時に該ァ ド レ スで指定されたデータの書き換えを行う C S 1 命令 を実行する場合に、 前記共有メ モリ モジュール ( 1 2 ) の接続ュニ.ッ ト ( 2 8 ) に前記 C S I 命令を認 識させ、 前記 C S I 命令におけるデータ読出と比較 処理を共有メ モ リ モ ジュール ( 1 2 ) 内で行う手段 を設けたことを特徴とする共有メ モリ排他制御方式。
2. 請求項 1記載の^有メ モリ側排他制御方式に 於いて、
前記処理モ ジュール ( 1 0 ) の接続ュニッ ト ( 2 2 ) は、 ア ク セス対象とな っ た共有メ モ リ モ ジユー
ル ( 1 2 ) の接続ュニ ッ ト ( 2 8 ) に、 共有メ モ リ モジユール ( 1 2 ) を示す相手先 I Dコード ( D I D ) 、 発信元を示す発信元 I Dコー ド ( S I D ) 、 前記 C S I命令を示すオペラ ン ド、 及びア ク セスデ ータ容量 ( B C T) で構成される起動転送コマン ド を作成し、 該起動転送コマン ドと共に比較データ及 び書き換えデータを前記システムバス ( 1 6 ) を介 して送信することを特徴とする共有メ モ リ側排他制 御方式。
3. 請求項 1記載の共有メ モ リ側排他制御方式に 於いて、
前記共有メ モ リ モジュール ( 1 2 ) の接続ュニッ ト ( 2 8 ) は、 受信動作により取込んだ前記起動転 送コ マ ン ドに基づいて、 データ読出し、 読出データ と比較データとの比較判定、 比較一致の成立時のデ ータ書き換えを実行し、 該データ読出からデータ書 き換えまでの間、 共有メ モ リ モジュール 1 ( 1 2 ) の内部バス ( 3 0 ) を排他制御することを特徴とす る共有メ モリ側排他制御方式。
4. 請求項 1記載の共有メ モ リ側排他制御方式に 於いて、
前記共有メ モ リ モジュール ( 1 2 ) の接続ュニ ッ ト ( 2 8 ) は、 比較一致により正常に書き換えを終 了した際には、 正常終了コードを舍む応答転送コマ ン ドを作成して前記システムバス ( 1 6 ) を介して
χ ア ク セス元の処理モ ジュール ( 1 0 ) に送信し、 比 較不一致により書き換えができなかった際には、 異 常終了コー ドを舍む応答転送コ マ ン ドを作成して不 一致となった読出データと共に前記システムバス ( 1 6 ) を介してアク セ ス元の処理モ ジュール ( 1 0 ) に送信することを特徴とする共有メ モ リ側排他制御 方式。
5. 請求項 1記載の共有メ モ リ構成方式に於いて、 前記共有メ モ リ モ ジュール ( 1 2 ) の接続ュニッ0 ト ( 2 8 ) は、 前記システムバス ( 1 6 ) を監視し、 起動転送コマン ドの相手先 I Dコード (D I D ) と 自己のュニ ッ ト I Dとの一致を判別した時に、 該起 動転送コマ ン ドの受信動作を行い、
前記処理モジュール ( 1 0 ) の接続ュニ ッ ト ( 25 2 ) は、 前記システムバス ( 1 6 ) を監視し、 応答 転送コマン ドの相手先 I Dコー ド ( D I D ) と自己 のユニッ ト I Dとの一致を判別した時に、 該応答転 送コマン ドの受信動作を行う こ とを特徴とする共有 メ モリ側排他制御方式。
0 6. 請求項 1記載の共有メ モ リ構成方式に於いて、 前記比較処理を行う手段は、 システムバスのイ ン タ フユース として動作する送受信回路に接続される R AMと、 該 RAMから出力され前記 C S I命令内 に舍まれる物理ァ ド レス Aをラ ツチするァ ド レス レ ジスタと、 前記 R AMを介して C S I命令内の書き
丄 替えデータ ( S D) をラ ッチするデータ出力レジス タ.( D O R ) と前記 R AMの出力端子に接続され C S I命令内の比較データ C Dをラ ッチする比較レジ スタ と、 共有メ モ リ のデータ出力端子に接続され前 κ 記ァ ドレス レジスタ手段にラ ッチされた物理ァ ドレ ス Aで指定される共有メモリ の内容をラ ッチするデ ータ入力レジスタ (D I R ) と、 前記データ入カレ ジスタ ( D I R ) と比較レジスタ ( C M R ) とのデ ータを比較する比較回路手段と、 前記比較回路にお 0 いて共有メ モリから読み出されるデータが比較デー タ ( C D ) と等しいときに前記書き替えデータ ( S D ) を前記ァ ドレスレジスタ ( A R ) で指定される 共有メ モリ に書き込むための制御を行う制御手段を 有することを特徴とする共有メ モリ側排他制御方式。 5 7. 請求項 1記載の共有メ モ リ構成方式に於いて、 前記 C S I命令の実行において書き替えデータを 二重化された共有メ モリ の物理ァ ドレス Aで指定さ れるマスタ側の- S SMとス レーブ側の S S Mに書き 込む場合、 S C, A, C D, S Dからなる C S I命 0 令を前記共有メ モリ側に発行し、 受信した共有メ モ リ側で前記 c S I命令の排他制御を含む C S I命令 コマン ド部を受領し、 前記マスタ S S Mに対する前 記の実行を行い動作の終結状態に加えて排他成否の 内容を終結コード (E C ) にて P M側に通知し、 前
25 記終結コー ドを受信した P M側の接繞ュニッ ト ( S
S B C— P ) が前記終結コー ドの内容を解読し、 排 他成立のときに動作を終結し、 動作が正常終了で排 他成立する場合には、 再度コ ンペァデータ C Dを舍 まない S C , A及び S Dからなる前記書き替えデー タと書き替えデータを共有メ モ リ側に送り、 ス レー ブ側の S S Mは前記コマン ドを受領して、 前記書き 替えデータを前記物理ア ド レスに書き込んだ後、 動 作の終結状態を示す終結コー ドを P M側に通知する 手段を有することを特徴とする共有メ モ リ側排他制 御方式。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/856,919 US5377324A (en) | 1990-09-18 | 1991-09-18 | Exclusive shared storage control system in computer system |
EP91916616A EP0507951B1 (en) | 1990-09-18 | 1991-09-18 | Exclusive control method for shared memory |
DE69130946T DE69130946T2 (de) | 1990-09-18 | 1991-09-18 | Verfahren zur ausschliesslichen steuerung für einen gemeinsamen speicher |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24820690 | 1990-09-18 | ||
JP2/248206 | 1990-09-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1992005490A1 true WO1992005490A1 (en) | 1992-04-02 |
Family
ID=17174773
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP1991/001239 WO1992005490A1 (en) | 1990-09-18 | 1991-09-18 | Exclusive control method for shared memory |
Country Status (4)
Country | Link |
---|---|
US (1) | US5377324A (ja) |
EP (1) | EP0507951B1 (ja) |
DE (1) | DE69130946T2 (ja) |
WO (1) | WO1992005490A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109117415A (zh) * | 2017-06-26 | 2019-01-01 | 上海寒武纪信息科技有限公司 | 数据共享系统及其数据共享方法 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2936036B2 (ja) * | 1992-10-27 | 1999-08-23 | 富士通株式会社 | メモリアクセス装置 |
FI94189C (fi) * | 1993-10-13 | 1995-07-25 | Nokia Telecommunications Oy | Menetelmä rinnakkaisliitännän toteuttamiseksi sekä rinnakkaisliitäntä |
US5717950A (en) | 1994-01-11 | 1998-02-10 | Hitachi, Ltd. | Input/output device information management system for multi-computer system |
TW357295B (en) * | 1994-02-08 | 1999-05-01 | United Microelectronics Corp | Microprocessor's data writing, reading operations |
JP3385091B2 (ja) * | 1994-05-13 | 2003-03-10 | 三菱電機株式会社 | 計算機間の排他制御装置 |
US5848258A (en) * | 1994-06-30 | 1998-12-08 | Digital Equipment Corporation | Memory bank addressing scheme |
US6256710B1 (en) | 1995-04-28 | 2001-07-03 | Apple Computer, Inc. | Cache management during cache inhibited transactions for increasing cache efficiency |
US5812815A (en) * | 1995-04-28 | 1998-09-22 | Apple Computer, Inc. | Address tenure control for cache management wherein bus master addresses are internally latched in a cache controller |
US5708783A (en) * | 1995-04-28 | 1998-01-13 | Apple Computer, Inc. | Data bus arbiter for pipelined transactions on a split bus |
US5815676A (en) * | 1995-04-28 | 1998-09-29 | Apple Computer, Inc. | Address bus arbiter for pipelined transactions on a split bus |
US5901295A (en) * | 1995-04-28 | 1999-05-04 | Apple Computer, Inc. | Address and data bus arbiter for pipelined transactions on a split bus |
DE19703963A1 (de) * | 1997-02-03 | 1998-08-06 | Siemens Ag | Verfahren und Vorrichtung zum Austauschen von Daten zwischen dezentral anordbaren elektronischen Baugruppen |
US5900018A (en) * | 1997-06-24 | 1999-05-04 | Sun Microsystems, Inc. | Processor-implemented method of controlling data access to shared resource via exclusive access control write-cache |
US6112282A (en) * | 1997-06-24 | 2000-08-29 | Sun Microsystems, Inc. | Apparatus for atomic locking-accessing-unlocking of a shared resource |
US20030229738A1 (en) * | 2002-06-05 | 2003-12-11 | Dactron | Controller interface |
US7624237B2 (en) * | 2006-05-03 | 2009-11-24 | International Business Machines Corporation | Compare, swap and store facility with no external serialization |
WO2010109751A1 (ja) * | 2009-03-25 | 2010-09-30 | 日本電気株式会社 | コンパイルシステム、コンパイル方法およびコンパイルプログラムを格納した記憶媒体 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5725053A (en) * | 1980-07-22 | 1982-02-09 | Nec Corp | Memory device |
JPS57211628A (en) * | 1981-06-22 | 1982-12-25 | Hitachi Ltd | Controller for shared input and output loop bus of multicomputer system |
JPS5985547A (ja) * | 1982-11-09 | 1984-05-17 | Nec Corp | マルチタスクプロセツサにおける排他的資源の管理方式 |
JPS59116866A (ja) * | 1982-12-23 | 1984-07-05 | Toshiba Corp | 計算機システムの記憶装置 |
JPS61165170A (ja) * | 1984-12-19 | 1986-07-25 | Fujitsu Ltd | バス制御方式 |
JPS6329296B2 (ja) * | 1979-04-06 | 1988-06-13 | Nippon Electric Co |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6329296A (ja) * | 1986-07-23 | 1988-02-06 | 株式会社東芝 | 高速増殖炉用しやへい体 |
US5201039A (en) * | 1987-09-30 | 1993-04-06 | Mitsubishi Denki Kabushiki Kaisha | Multiple address-space data processor with addressable register and context switching |
CA2000245C (en) * | 1988-10-08 | 1996-07-16 | Hideo Hayashi | Multiprocessor system using communication register having processor-associated storage locations |
US5175829A (en) * | 1988-10-25 | 1992-12-29 | Hewlett-Packard Company | Method and apparatus for bus lock during atomic computer operations |
-
1991
- 1991-09-18 WO PCT/JP1991/001239 patent/WO1992005490A1/ja active IP Right Grant
- 1991-09-18 DE DE69130946T patent/DE69130946T2/de not_active Expired - Fee Related
- 1991-09-18 EP EP91916616A patent/EP0507951B1/en not_active Expired - Lifetime
- 1991-09-18 US US07/856,919 patent/US5377324A/en not_active Expired - Lifetime
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6329296B2 (ja) * | 1979-04-06 | 1988-06-13 | Nippon Electric Co | |
JPS5725053A (en) * | 1980-07-22 | 1982-02-09 | Nec Corp | Memory device |
JPS57211628A (en) * | 1981-06-22 | 1982-12-25 | Hitachi Ltd | Controller for shared input and output loop bus of multicomputer system |
JPS5985547A (ja) * | 1982-11-09 | 1984-05-17 | Nec Corp | マルチタスクプロセツサにおける排他的資源の管理方式 |
JPS59116866A (ja) * | 1982-12-23 | 1984-07-05 | Toshiba Corp | 計算機システムの記憶装置 |
JPS61165170A (ja) * | 1984-12-19 | 1986-07-25 | Fujitsu Ltd | バス制御方式 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109117415A (zh) * | 2017-06-26 | 2019-01-01 | 上海寒武纪信息科技有限公司 | 数据共享系统及其数据共享方法 |
CN109117415B (zh) * | 2017-06-26 | 2024-05-14 | 上海寒武纪信息科技有限公司 | 数据共享系统及其数据共享方法 |
Also Published As
Publication number | Publication date |
---|---|
EP0507951A4 (ja) | 1995-04-19 |
EP0507951B1 (en) | 1999-03-03 |
US5377324A (en) | 1994-12-27 |
DE69130946T2 (de) | 1999-07-08 |
DE69130946D1 (de) | 1999-04-08 |
EP0507951A1 (en) | 1992-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO1992005490A1 (en) | Exclusive control method for shared memory | |
US5890218A (en) | System for allocating and accessing shared storage using program mode and DMA mode | |
US6151663A (en) | Cluster controller for memory and data cache in a multiple cluster processing system | |
US5682512A (en) | Use of deferred bus access for address translation in a shared memory clustered computer system | |
US5410650A (en) | Message control system for data communication system | |
JPH041374B2 (ja) | ||
JPH056223B2 (ja) | ||
GB2211326A (en) | Address bus control apparatus | |
US6092170A (en) | Data transfer apparatus between devices | |
US5428760A (en) | Circuitry and method for sharing internal microcontroller memory with an external processor | |
US6108755A (en) | Asynchronous access system to a shared storage | |
JPH08106399A (ja) | マルチプロセッサシステム | |
JPH01298457A (ja) | コンピュータシステム | |
US7133953B2 (en) | Data transmission device used to forward data received at a first device for a second device to the second device | |
JP3112280B2 (ja) | 計算機システム | |
JP3141948B2 (ja) | 計算機システム | |
USRE38514E1 (en) | System for and method of efficiently controlling memory accesses in a multiprocessor computer system | |
JP3246736B2 (ja) | 計算機システム | |
JPS59165287A (ja) | 情報処理システム | |
JP2969817B2 (ja) | 情報処理システム | |
JP2636760B2 (ja) | マルチプロセッサシステム | |
JP2706082B2 (ja) | アドレスバス制御方法 | |
JPH0421042A (ja) | ストアイン方式キャッシュメモリ | |
JP2857212B2 (ja) | マルチプロセッサシステムの構成制御方式 | |
JPH03210645A (ja) | キヤツシユ制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FR GB GR IT LU NL SE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1991916616 Country of ref document: EP |
|
WWP | Wipo information: published in national office |
Ref document number: 1991916616 Country of ref document: EP |
|
WWG | Wipo information: grant in national office |
Ref document number: 1991916616 Country of ref document: EP |