Nova Patents
EP0346003B1

Multiprocessor control system.

Abstract

This record has no abstract on file.

EP0346003B1, drawing sheet 1
Sheet 1 of 10

Term

Term ended

Expired 1 June 2009, 17.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

21 claims: 12 independent, 9 dependent

  1. 1
    A multiprocessor control system adapted to a multiprocessor system including a plurality of first execution units (12, 13) each processing a first group of instructions, and a single second execution unit (14) processing a second group of instructions supplied from said plurality of first execution units, said second execution unit including a plurality of pipelines (150, 151, 153 - 155) used for executing said second group of instructions, said multiprocessor control system further comprising switching means, responsive to a switching signal, (6; 25) for selectively switching said second group of instructions supplied from said first execution units to thereby select said second group of instructions relating to one of said plurality of first execution units, and control stage means (4, 5, 7 - 9; 23, 24, 28 - 30) including a plurality of register stages used for controlling a pipeline process, for sequentially storing said second group of instructions relating to said selected one of said first execution units in said register stages; characterised in that said control stage means is arranged for outputting, for every register stage, a state indicating signal indicating state information on the corresponding register stage; and in that said multiprocessor control system further comprises :switching mode setting means (11, 27) for generating a mode setting signal used for selecting one of a plurality of switching modes (M1, M2, M3) each defining a timing with which the switching by said switching means is done;and    switching control means (10;26) for generating said switching signal based on said state indicating signals output from said control stage means and said mode setting signal indicative of one of the plurality of switching modes supplied from said switching mode setting means.
  2. 3
    A multiprocessor control system as claimed in any of claims 1 and 2, characterized in that said plurality of register stages (4, 5, 7 - 9;23, 24, 28 - 30) included in said control stage means are cascaded, and said plurality of switching modes (M1, M2, M3) include a second switching mode (M2) in which the switching by said switching means (6;25) is done when all instructions relating to said second group supplied from one of said plurality of first execution units completely go out of all but the last one (9,30) of said cascaded register stages located at the end thereof, and said second group of instructions stored in said control stage means is supplied to one of said pipelines through said last register stage (9, 30) located at the end of said cascaded register stages.
  3. 4
    A multiprocessor control system as claimed in any of claims 1 to 3, characterized in that said plurality of register stages (4, 5, 7 - 9;23, 24, 28 - 30) included in said control stage means are cascaded, and said plurality of switching modes (M1, M2, M3) include a third switching mode (M3) in which the switching by said switching means (6;25) is done when all instructions relating to said second group supplied from one of said plurality of first execution units completely go out of all but the last two (8, 9;29;30) of said cascaded register stages, and said second group of instructions stored in said control stage means is supplied to one of said pipelines through said last register stage (9, 30) located at the end of said cascaded stages.
  4. 5
    A multiprocessor control system as claimed in any of claims 1 to 4, characterized by further comprising means (6, 25, L1, L2) for supplying a signal indicative of said timing of the switching to each of said plurality of first execution units (12, 13).
  5. 7
    A multiprocessor control system as claimed in any of claims 1 to 6, characterized in that said control stage means comprises, for every register stage, generating means (23-4, 28-2, 29-4, 30-5) for generating said state indicating signal for each of said plurality of first execution units (12, 13), and that said state indicating signal generated for each of the first execution units indicates whether or not at least one of said second group of instructions is stored in the corresponding register stage.
  6. 8
    A multiprocessor control system as claimed in any of claims 1 to 7, characterized in that:said multiprocessor system comprises two first execution units (12, 13),    said switching control means (26) comprises first busy detecting means (26-1) relating to one (12) of said two first execution units, for determining whether or not the switching mode set by said switching mode setting means (27) can be done by referring to said state indicating signal supplied from each of said register stages (4, 5, 7 - 9;23, 24, 28 - 30) and said switching mode setting signal supplied from said switching mode setting means (27) and for generating a first busy signal (BUSY0) indicative of the determination result, and second busy detecting means (26-2) relating to the other (13) of said two first execution units, for determining whether or not the switching mode set by said switching mode setting means (27) can be done by referring to said state indicating signal supplied from each of said register stages and said mode setting signal supplied from said switching mode setting means and for generating a second busy signal (BUSY1) indicative of the determination result, and    said first and second busy signals are supplied, as said switching signal, to said switching means.
  7. 10
    A multiprocessor control system as claimed in any of claims 1 to 9, characterized in that:said multiprocessor system comprises two first execution units (12, 13), and    said control stage means comprises first fetch register means (23), connected between one (12) of said first execution units and said switching means (25), for fetching said second group of instructions from said one of said first execution units, and    second fetch register means (24), connected between the other (13) of said first execution units and said switching means (25), for fetching said second group of instructions from the other of said first execution means.
  8. 14
    A multiprocessor control system as claimed in any of claims 10 to 13, characterized in that each of first and second fetch register means (23;24) comprises a register (23-1) temporarily storing the second group of instructions supplied from the corresponding first execution unit (12), a buffer (23-2) buffering the second group of instructions supplied from the corresponding first execution unit, a selector (23-3) selecting one of said register and buffer to connect the selected one of said register and buffer to said switching means, and logic means (23-4) for generating said state indicating signal (VFS0-BUSY0;VFS1-BUSY1) based on the storage contents of said register and buffer.
  9. 15
    A multiprocessor control system as claimed in any of claims 1 to 14, characterized in that said control stage means comprises pre-decoding register means (28-1), connected to said switching means (25), for decoding said second group of instructions supplied from the selected one of said first execution units through said switching means to determine which one of said first execution units is associated with said supplied second group of instructions, and logic means (28-2) for generating said state indicating signal (VPS-BUSY0;VPS-BUSY1) based on the storage contents of said pre-decoding register means.
  10. 19
    A multiprocessor control system as claimed in any of claims 1 to 18, characterized in that said switching means (6, 25), said control stage means (4, 5, 7 - 9;23, 24, 28 - 30), said switching mode setting means (11, 27) and said switching control means (10, 26) are provided in said second execution unit.
  11. 20
    A multiprocessor control system as claimed in any of claims 1 to 19, characterized in that each of said first execution units (12, 13) is a scalar unit, and said second execution unit is a vector unit.
  12. 21
    A multiprocessor control system as claimed in any of claims 1 to 19, characterized in that each of said first execution units (12, 13) is a small-scale execution unit, and said second execution unit is a large-scale execution unit.