EP0101596A2

A data processor with parallel-operating operation units.

Abstract

An information processor comprising a plurality of instruction execution units (300, 500; 600, 700), and a circuit (200; 230-232, 234, 250) which distributes the decoded information of a succeeding instruction to one of the instruction execution units on the basis of the sequentially decoded information of succeeding instructions and the decoded information of preceding instructions being under the controls of the instruction execution units. More concretely, the distribution circuit (200; 230-232, 234, 250) distributes the decoded information of the succeeding instruction conflictive with the preceding instruction to the instruction execution unit which is controlling the preceding instruction. Thus, the respective instruction execution units (300, 500; 600, 700) can execute the instructions quite independently of one another while guarenteeing a correct operated result, and enhancement in the processing capability conforming with increase in the operation units can be expected.

EP0101596A2, drawing sheet 1
Sheet 1 of 9

Term

Term ended

Projected expiry passed 10 August 2003, 23.1 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

7 claims: 1 independent, 6 dependent

  1. 1
    An information processor comprising:decode means (200;214, 215) for sequentially decoding instructions and for delivering decoded information for appointing operands to be accessed by the instructions;a plurality of instruction control means (300, 500) for controlling executions of the instructions on the basis of the decoded information;operation means (600, 700) disposed in correspondence with the respective instruction control means;and means (200;230 - 232, 234, 250) for distributing the decoded information of the succeeding instruction to one of said instruction control means on the basis of said decoded information of said succeeding instruction delivered from said decode means and the decoded information of the preceding instructions under the controls of said plurality of instruction control means.
  2. 2
    An information processor according to Claim 1, wherein the distribution means comprises means (230 - 232, 234) for detecting a conflict between said succeeding instruction and one of said plurality of preceding instructions decoded information of said on the basis of said/succeeding instruction and said preceding instructions, and means (250) for distributing said decoded information of said succeeding instruction to said instruction control means controlling the execution of said one preceding instruction, when the conflict has been detected.
  3. 3
    An information processor according to Claim 1, wherein said decode means comprises means (214, 215) for simultaneously decoding the instructions in a predetermined number;and wherein the distribution means is means (250) for distributing the respective succeeding instructions to said instruction control means on the basis of the respective decoded information of the succeeding instructions simultaneously decoded by said decode means and the respective decoded information of said preceding instructions.
  4. 4
    An information processor according to Claim 3, wherein said distribution means comprises:first means (230 - 232, 234) for comparing each of the succeeding instructions simultaneously decoded, with the decoded information of said preceding instructions;and second means (233) for comparing the decoded information of the succeeding instructions simultaneously decoded, with each other (one another);said means (250) distributing the respective decoded information of the simultaneously-decoded succeeding instructions to said instruction control means on the basis of outputs of said first and second means.
  5. 5
    An information processor according to Claim 4, wherein said first and second means are means for detecting conflicts between the instructions to be compared, respectively.
  6. 6
    An information processor according to Claim 1, wherein each of said instruction control means comprises:stack means (324, 325, 340) for holding the plurality of decoded information sequentially distributed from the distribution means;sequential execution control means (326 - 330, 333 - 338) for making controls so as to sequentially execute processes corresponding to the decoded information, on the basis of the respective decoded information held;and third means (332, 340') for detecting conflicts between the instruction under execution and the other instructions on the basis of the decoded information for said instruction under execution and the decoded information of said other instructions among the decoded information held;and wherein said sequential execution control means comprises: means (341, 342, 336, 338) for stopping the processes of said other instructions from proceeding, when the conflict has been detected by said third means.
  7. 7
    An information processor according to Claim 6 , wherein said sequential execution control means comprises means (334 - 338) for controlling the executions of said processes of said instructions in a pipeline mode when the conflict has been detected, so as to start the process of one of said other instructions while overlapping a process for said instruction under execution.