Nova Patents
EP0404068A2

Branch instruction executing device.

Abstract

A branch instruction executing device for sequentially executing instructions in a pipeline process decodes a conditional branch instruction, provides a debug exceptional producing flag for indicating the existence of the execution of the debug routine by assuming the success of the condition without waiting for the result of the judgment of the condition and corrects a content of the debug exception producing flag when the result of the actual judgment is later obtained. The execution of the debug routine is canceled when the branch condition is later found not to be successful.

EP0404068A2, drawing sheet 1
Sheet 1 of 14

Term

Term ended

Projected expiry passed 19 June 2010, 16.3 years ago.

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

21 claims: 6 independent, 15 dependent

  1. 1
    A branch instruction executing device for sequentially executing instructions by a pipeline process comprises:means for decoding a conditional branch instruction;means for providing a branch target execution flag for indicating the existence of the execution of the branch target instruction by assuming the success of the condition without waiting for the result of the judgment of the condition;and means for correcting a content of said branch target execution flag when the result of the actual judgment is later obtained.
  2. 3
    A branch instruction executing device for sequentially executing an instruction branched during an execution of respective instruction in a pipeline process;means for decoding a conditional branch instruction;means for executing a branch target instruction by presuming a success of the condition without waiting for a result of the judgment of the condition;and means for canceling an execution of said branch target instruction when the branch condition is not successful at the time when the result of the actual judgment is obtained later.
  3. 4
    A branch instruction executing device for fetching an instruction from a main memory unit and decoding the instruction for an operation comprising:an instruction decoding means for outputting a non-conditional branch signal, a conditional branch 1 signal, a conditional branch 2 signal respectively, when the decoded instruction is a non-conditional branch, when the decoded instruction is a conditional branch instruction with a high possibility of performing a branch;or a conditional branch instruction with a low possibility of performing the branch, judgment means for activating a conditional success signal where said conditional branch instruction is successful and for activating a conditional non-success signal where the conditional branch instruction is not successful;and control means for performing a conditional branch without waiting for a result of the success of the branch or the non-success of the branch where the condition branch 1 signal from said instructicn decoding means is activated and for canceling an execution of an instruction of the branch target where the branch non-success signal is activated.
  4. 5
    A branch instruction executing device comprising:an instruction decode executing device for fetching an instruction from a main memory unit and decoding the instruction for an arithmetic operation;instruction decoding means for outputting a non-­conditional branch signal, a conditional branch 1 signal, and a conditional branch 2 signal respectively, when the decoded instruction is a non-­conditional branch, when the decoded instruction is a conditional branch instruction with a high possibility of performing a branch;or a conditional branch instruction with a low possibility of performing the branch, a micro instruction storing means subject to an address control by said instruction decode means and for storing a micro-program;an arithmetic operating means for performing a control by an output from said micro-instruction storing means;judgment means for activating a conditional success signal when the conditional branch instruction is successful and for activating a conditional non-­success signal when the condition is not successful, in accordance with a micro-instruction from said micro storing means by using a branch conditional code provided by a state flag from said arithmetic operating means and a branch conditional code provided by said instruction decoding means;and control means for setting a branch execution bit for performing the conditional branch without waiting for the result of the conditional success or non-­success provided from said judgment means where the conditional branch signal from the instruction decoding means is activated and for correcting said branch target executing bit when the branch non-­success signal is activated as a result of the judgment by said judging means.
  5. 20
    A method of tracing a branch instruction which is executed in a pipeline process, comprising steps of:setting a debug exception producing bit by presuming the condition success immediately without waiting for the result of the judgment of the condition when the condition branch instruction is decoded, and collecting a content of the debug exception producing bit at a later time when the actual judgment result is obtained.
  6. 21
    A method of tracing a branch instruction when the instruction is executed in a pipeline process comprising steps of:executing a branch instruction by presuming the success of the condition immediately without waiting for the result of the judgment of the condition when the condition branch instruction is decoded, and canceling the execution of said branch target instruction in case of the non-success of the branch when the actual judgment result is obtained.