[go: up one dir, main page]

WO1990008355A1 - Microprocesseur - Google Patents

Microprocesseur Download PDF

Info

Publication number
WO1990008355A1
WO1990008355A1 PCT/JP1990/000034 JP9000034W WO9008355A1 WO 1990008355 A1 WO1990008355 A1 WO 1990008355A1 JP 9000034 W JP9000034 W JP 9000034W WO 9008355 A1 WO9008355 A1 WO 9008355A1
Authority
WO
WIPO (PCT)
Prior art keywords
basic
unit
decoding
extension
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP1990/000034
Other languages
English (en)
French (fr)
Inventor
Akihiro Yoshitake
Toshiharu Ohshima
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to EP90901686A priority Critical patent/EP0461257B1/en
Priority to KR1019900702057A priority patent/KR930005768B1/ko
Priority to DE69030573T priority patent/DE69030573D1/de
Publication of WO1990008355A1 publication Critical patent/WO1990008355A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • G06F9/30152Determining start or end of instruction; determining instruction length

Definitions

  • the present invention relates to a microprocessor ⁇ processor employing a variable-length instruction format.
  • a microphone processor having an improved decoder sequencer for controlling the decoding order of each part of a variable length instruction in which a single instruction is composed of a plurality of basic parts and a variable length extension part.
  • a microphone processor having an improved decoder sequencer for controlling the decoding order of each part of a variable length instruction in which a single instruction is composed of a plurality of basic parts and a variable length extension part.
  • a microphone processor having an improved decoder sequencer for controlling the decoding order of each part of a variable length instruction in which a single instruction is composed of a plurality of basic parts and a variable length extension part.
  • FIG. 1 is a conceptual diagram of a variable-length instruction format.
  • Figure 1 shows that one instruction to the microprocessor consists of up to ⁇ parts. Such instructions are decoded using multiple cycles.
  • the basic part of each part contains instruction code, and the extension part contains immediate data. For example, the presence or absence of a subsequent extension and the meaning of the basic part of the second part are specified based on the basic part of the first part. If there are ⁇ basic parts, ⁇ basic parts are decoded and a meaningful control signal can be obtained only after decoding.
  • Fig. 2 shows an example of an orthogonal instruction format assuming a 32-bit microprocessor, and shows an instruction format that can be changed to an instruction with up to three basic units. is there.
  • an instruction is configured in units of 16 bits
  • 0P includes an instruction code in the instruction code portion and information indicating the presence or absence of a subsequent basic portion.
  • R, Ra , and Rb are register designation parts
  • S is an operand size designation part
  • #I is immediate data
  • disp is a displacement part.
  • the operand specification section also contains information indicating the presence or absence of a subsequent extension.
  • the extension part has a length that is an integral multiple of 16 bits and is placed immediately after the operand specification part, and is used to extend the operand specification part.
  • the extension also contains information indicating the presence or absence of a subsequent extension.
  • 16 Xn (n is an integer including 0) indicates that the extension length is variable in 16-bit units.
  • the abbreviation shortens the bit length of the general operand specification part by 2 bits to increase the execution speed.
  • frequently used instructions are assigned to one-operand format, and infrequently used instructions are assigned to two or more operands. In this way, frequently used instructions can be executed in a short time and the types of instructions can be increased. More specific examples of such variable-length instructions are shown in FIGS. 3A to 3C.
  • FIGS. 3A and 3B are diagrams showing specific examples of 2-operand format instructions
  • FIG. 3C is a diagram showing specific examples of 1-operand format instructions
  • Figure 3A shows a two-operand general type with an 8-bit effective address field
  • the first basic part consisting of 16 bits consists of instruction code 0P, source 'operand size SS', source operand 'effective address e as, the second basic part instruction code OP, d'Este I Neshi tio down 'opera down de-size DD, d'Este I Neshi tio down' opera down mode. consisting of Ri by the effective add-less ea d.
  • exp 16 32 is an extension consisting of 16 bits or 32 bits.
  • 3B shows an 8-bit immediate type instruction.
  • the first basic part is composed of instruction code 0P and immediate data #, and the second basic part is composed of instruction code and destination code.
  • Operand 'Operand ⁇ Size DD, destination * Operand' Consists of effective address ead.
  • the extension part exp16-32 is added only to the second basic part.
  • Fig. 3C shows a shortened register-to-memory transfer instruction, instruction code 0P, register specification section Rn, source operand 'size SS, source operand' effective operand.
  • Address or destination 'operand' Effective address consists of a basic part consisting of eas / ead and an extension part exp16 / 32.
  • FIG. 4 is a stage transition diagram of decoding of an instruction having a maximum of the third basic part.
  • the symbol ⁇ indicates the decoding stage of each part, and the arrow indicates the status transition to another decoding stage. Indicates transfer.
  • instructions having only the first basic part are continuous, only the decode stage of the first basic part needs to be manipulated.However, when there are the second, third basic parts, first, second and third extension parts However, if the decoding of the subsequent stage is performed simply by referring to the previous decoding stage, a complicated decoding sequence will result. This is because the meaning of the instruction code of the following basic part changes according to the instruction code of the first basic part, and the length of the extension part is also variable.
  • the third basic part transitions to the decoding stage.
  • the third extended part is decoded, and when it is determined that there is no third extended part and the fourth basic part from the decoding result of the third basic part. Proceed to the next instruction and decode in the same decoding sequence as described above.
  • the decoded sequencer that performs the stage transition shown in FIG. 4 has a problem that its circuit configuration becomes complicated. This problem becomes more serious as the number of basic and extended parts making up one instruction increases. In addition, the time required for the decoding process increases due to the complexity of the decoding sequencer.
  • An object of the present invention is to provide a microprocessor which can efficiently decode a variable-length instruction and has an instruction decoder having a simple configuration.
  • Another object of the present invention is to provide a microprocessor having an instruction decoder capable of decoding variable-length instructions at high speed.
  • Still another object of the present invention is to provide a configuration of a microprocessor suitable for high integration.
  • the above object is to provide a basic part for providing an instruction code and an operand designating part, and to extend the operand designating part.
  • a microprocessor that executes a variable-length instruction that includes an extension part added according to the designation of the basic part, and decodes the basic part to form a subsequent basic part and an extension part.
  • a basic unit decoder that determines the presence / absence and outputs a basic unit transition request or an extended unit transition request; and decodes the extended unit to determine whether the extended unit is continued and outputs an extended unit continuation request.
  • An extension unit decoder; and a decoding sequencer for generating a control signal for instructing the extension unit decoder to perform decoding according to a predetermined sequence, wherein the decoding sequencer responds to the basic unit transition request.
  • a first control circuit for generating a control signal for the base unit decoder, and generating a control signal for the expansion unit decoder in response to the expansion unit transition request or the expansion unit continuation request.
  • a second control circuit connected to the first control circuit and the second control circuit, the first control circuit corresponding to the basic unit transition request when there is the extension unit transition request or the extension unit congestion request. This is achieved by a microphone port processor comprising a third control circuit for suspending the operation.
  • Figure 1 is a conceptual diagram of a variable-length instruction
  • FIG. 2 is a conceptual diagram showing an instruction format that can vary up to instructions with three basic parts
  • FIGS. 3A and 3B are conceptual diagrams showing two-operand general-type instructions
  • FIG. 3C is a conceptual diagram showing a shortened-type register-to-memory transfer instruction.
  • Figure 4 is a stage transition diagram
  • FIG. 5 is a stage transition diagram of the instruction decode according to one embodiment of the present invention.
  • FIG. 6 is a block diagram of a main part of an instruction decoding unit according to an embodiment of the present invention.
  • FIG. 7 is a stage transition diagram of an instruction decode according to an embodiment of the present invention.
  • FIG. 8 is a diagram showing an instruction format of the MOVE instruction.
  • FIG. 9 is a stage transition diagram when the MOVE instruction is decoded according to one embodiment of the present invention.
  • FIG. 10 is a block diagram of an instruction decoder according to an embodiment of the present invention.
  • FIG. 11 is a block diagram of a decode sequencer according to an embodiment of the present invention.
  • FIG. 12 is a timing chart for explaining the operation of the decode sequencer shown in FIG.
  • FIG. 13 is a block diagram of a microprocessor according to an embodiment of the present invention.
  • stage transition of instruction decoding in one embodiment of the present invention will be described with reference to FIG.
  • the symbol ⁇ The code stage is shown, and the arrow indicates the transition of the decode stage.
  • the decoding stage is divided into a basic mode and an extended mode, and the decode stage of the basic section and the extended section is separated. Furthermore, as shown in FIG. 4, the decoding stages of the first, second, and third extension units are not divided, and the decoding stages of the respective extension units are shared. As a result, compared to FIG. 4, in the embodiment of the present invention shown in FIG. 5, the types of state transition of the decoded stage are reduced, and the decoding sequencer can be simplified.
  • the decoding stage transits in the order of the first basic part, the second basic part, and the third basic part, and then decodes the next instruction. Transitions to the first basic part.
  • the first basic part when the first basic part is decoded, it is determined that the second basic part is present and the first extension part is present, and the data and control signals necessary for processing are prepared in the same decoded cycle as the basic part. If it is not possible (for example, If the immediate data length is large and cannot be captured in one cycle), the transition request to the second basic part is kept in the holding state, and the state transitions to the extended mode, and the subsequent extended part is transferred. Is decoded. As a result of decoding the subsequent extension, if it is determined that the extension further continues, the decoding stage of the extension is repeated. The same applies to the second and third extensions.
  • the stage transition shown in FIG. 5 is realized by providing the instruction decoding unit shown in FIG. FIG. 6 shows the principle configuration of the present invention.
  • the instruction to be decoded includes a basic part having a predetermined bit length as shown in FIGS. 1, 2, and 3A to 3C, and the predetermined bit specified by the basic part.
  • This is a variable-length instruction that has an extension part that is an integral multiple of the G-length and a basic part that depends on the preceding basic part.
  • reference numeral 1 denotes a transition request decoding part, which sequentially reads instructions from the head for each processing unit bit length and determines whether or not there is a subsequent basic part and extension part.
  • Reference numeral 2 denotes a storage circuit such as a latch circuit, which temporarily stores a signal indicating the presence or absence of the basic unit and the extension unit.
  • Reference numeral 3 denotes a decode sequencer, which sends a signal for starting decoding of the basic unit and the extension unit corresponding to the data held in the storage circuit 2 to the basic unit decoder 4A or the extension unit decoder 4B. Output sequentially. At this time, if the decoding start of the basic part and the decoding start of the extension part conflict with each other, the decode sequencer 3 masks the decoding request of the subsequent basic part and starts the decoding of the extension part. The signal is output with priority.
  • the decoding of the next basic part is started after the decoding of each expansion part, the information indicating that the basic part is present is stored in the memory circuit 2. It is easy to shift to the decoding start control of the subsequent basic part.
  • the combination of the storage circuit 2 and the priority control of the decode sequencer 3 makes the configuration of the decode sequencer simpler than before.
  • FIG. 7 is a stage transition diagram more specifically showing the decoding sequence according to one embodiment of the present invention.
  • the possible states in the decoding sequence of this embodiment are the following seven stages. is there.
  • a stage transition occurs when the operation code of the preceding basic part requires a further subsequent operation code.
  • Stage for decoding the second basic part (0P2) of the instruction SG3 The stage that decodes the third basic part of the instruction (OP3).
  • a D D M Decoding stage in additional mode
  • W AIT Decodes two cycles to synchronize with one cycle of the subsequent circuit if two cycles are required for subsequent circuits.
  • the transition request to each stage is an appendix.
  • a D D M R E Q Request for transition to additional mode
  • IMM 2 REQ Transition request issued when there is second word immediate data
  • IMM 3 REQ Transition request issued when there is immediate data in the third word WAIT: Wait request
  • the dashed arrows from the AD DM stage, the IMM 2 stage, the IMM 3 stage, and the WAIT stage to the basic mode transit to the corresponding stages of SG 1 to SG 3 according to the preceding basic part, respectively. It is shown that.
  • the basic stage transition of the embodiment of the present invention is the same as FIG. The difference from the figure is that the stages in the extended mode are shown in more detail.
  • the additional mode means an extended mode of the operand designating part in the addressing mode in which multiple indirect scaling is enabled.
  • the transition when taking in long-immediate data is as follows. If the decoding result of the first basic part in the SG 1 stage has 2 or 3 words of word immediate data, transition is made to the IMM 2 stage. Furthermore, when the decoding result of the first basic unit has 3-word long-immediate data, the sequence shifts to the IMM 3 stage.
  • a transition request SG 3 REQ from the SG 1 stage to the SG 3 stage is issued when the first basic unit and the second basic unit are simultaneously decoded and it is determined that the third basic unit is present. Things.
  • the wait request WA IT, REQ is SG 1, It is supposed to occur at the SG 3 stage.
  • FIG. 8 is a diagram showing a format of an instruction conforming to the TRON (The Real time Operating System Neuc 1 eus) specification.
  • This MOV instruction is a transfer instruction from memory to memory, and is expressed as follows in the 21-monitor.
  • MOV indicates a transfer instruction
  • G indicates a general-type instruction shown in FIG. ® indicates indirect addressing
  • ® @ indicates double indirect addressing
  • disp indicates display display
  • Rn and Rm indicate index registers.
  • EA1 stores a code indicating that the next first extension is the additional mode
  • EA2 stores an identification code for indirect addressing of Rm.
  • a code indicating double indirect addressing by the value of R n and the display statement is stored. That is, in the above instruction, the memory is accessed by using the address obtained by adding the displacement disp to the value in the index register Rn, and the operand address is extracted.
  • 0 P 1 S l, and EA 1 in the instruction are the first basic part, and the subsequent additional mode part is the first extension part.
  • OP 2, S 2, and EA 2 are the second basic part.
  • 0 P 1 has information that there is a second basic part
  • EA 1 has information that there is a first extension part.
  • the first extension is specified by 0P1 and is dependent on the first base.
  • S l and S 2 are the operand sizes.
  • FIG. 9 shows the stage transition when the Mov instruction is decoded based on the decode sequence according to the present invention.
  • the horizontal direction in Fig. 9 is the time axis, which indicates the current stage for each cycle, the next stage identified based on the decoding result of the current stage, and the decoding operation in that cycle. Is shown.
  • the M0V instruction has the following structure: 1st basic unit + extension unit (additional mode) + 2nd basic unit.
  • the next stage is the SG2 stage.
  • the AD DM stage is required. Since the ADDM stage corresponds to the first extension, the transition to the SG2 stage is frozen, and the transition to the ADDM stage is made in the next cycle. In this case, the length of the extension part can be processed in one cycle, so transition to the SG.2 stage is performed in the next cycle.
  • the WAIT request we waited 1 cycle for decoding 0P2 (Shown as OP 2W), the current stage is kept as SG 2 stage. The next cycle will decode OP2.
  • the next stage is the SG1 stage because the M0V instruction is up to the second basic part.
  • FIG. 10 is a block diagram of an instruction decoder according to an embodiment of the present invention for realizing the stage transition shown in FIG.
  • the instruction decoder fetches an instruction supplied from the instruction queue 10 via the instruction queue bus 12 based on a control signal from the decode sequencer 14 and decodes the instruction.
  • the instruction queue bus 12 is a bus having a width of 64 bits, and the instruction queue 10 sends instructions to the instruction queue bus 12 in units of 64 bits.
  • the data (bit 63 to bit 0) on the instruction queue bus 12 is latched by the latch circuit 16 to 16 based on the control signal from the decode sequencer 14. It is held at 26.
  • the numbers in parentheses indicate the bit numbers input to the corresponding latch circuits. For example, (63:48) indicates that 16 bits from bit 63 to bit 48 are input.
  • the first operation code (OP 1) decode unit 2 &, the second operation code (OP 2) decode unit 30, the addressing unit decode unit 32 B, and the next stage transition request decode unit 32 A are This is a decoder for decoding the basic part.
  • the additional mode decoder section 34 is a decoder for decoding the extension section. Immediate data, displacement data, and the like are fetched via a 64-bit input instruction register 46 and an output instruction register 48.
  • the latch circuit 16 has a 12-bit latch
  • the latch circuit 18 has a 2-input 8-bit latch
  • the latch circuit 20 has a 16-bit latch and a latch.
  • the latch circuit 22 is a 2-input 16-bit latch
  • the latch circuit 24 is a 2-bit latch.
  • Reference numeral 28 denotes an operation code 12 bits (: (63: 5), which is incorporated in the first basic unit and taken into the latch circuit 16 at the timing of the latch control signal S31. 2),
  • the 8-bit (47:40) of the operation code is decoded in the SG1 stage, and the operation code is input to the latch circuit 18 at the timing of the latch control signal S32.
  • Eight bits (63:56) are stored in the SG2 stage.
  • next stage transition request decode section 32A and the addressing decoding section 32B are used to store the data of the latch circuits 20, 22, 24 to 24 and 341, S42, S4. Perform decoding using 3 as input.
  • Next stage transition request decoder 32A Determines a transition request to each stage shown in FIG.
  • the addressing decoding section 32B decodes the addressing mode.
  • the latch circuit 20 receives 16 bits (63:48) at the timing of the latch control signal S31, and this data is decoded in the SG1 stage. Latch circuit
  • 2 2 is a 2-input latch.
  • 16 bits 47: 32
  • the latch control is performed in the SG 2 stage.
  • the latch circuit 24 takes in two bits (57:56) at the timing of the latch control signal S33 in the SG3 stage.
  • the additional mode decoding unit 3 4 uses the latch control signal S
  • the 16-bit (63:48) extension held in the latch circuit 26 is added to the ADDM stage. Decode at the end.
  • the second operation code (OP2) decoding section 28 and the SG 1 stage also perform decoding because the first and second basic sections may be decoded simultaneously.
  • the first operand is a register direct (when the data in a register is used as an operand as it is)
  • the second operand on the instruction queue bus 12 Halfword (47:32) has a second operation code to decode in the SG2 stage. Only at this time, the first and second operation codes of the instruction are decoded simultaneously.
  • the second halfword is unconditionally fetched to the latch circuits 18 and 22 of the second operation decode unit 1 & and addressing decode unit 32B, and 0P1 If the instruction is of the general type due to the decoding of the first operation code in the decoding unit 28, and the first operand is a register direct, the decoded result of the second operation code is valid. And On the other hand, if the instruction is not of the general type or the general type and the first operand is other than the register direct, the decoding result of the second operation code is invalidated and the decoding of the first instruction operation code is disabled. The result is valid.
  • the second operation code is decoded in the next cycle (SG 2 stage).
  • the second operation code is in the first half-word (63:48) on the instruction queue 12 so that the second operation code 30 and the second operation code are used.
  • the latch circuits 18 and 22 of the addressing deco-decoding section 32B take the first halfword (63:48) data on the instruction queue-bus 12 and the second operation code. And the decoding of the second operand.
  • the instructions having the third basic part include a fixed bit length bit field instruction, an at-compar-a-branch, a sub-a-com-a-branch, and the like. There is a loop instruction. These instructions have four operands. Of these, two operands are specified by the first and second operand designators of the first and second basic parts of the general type, and the remaining The third basic part is used to specify two operands.
  • the third basic part does not have an operation code for discriminating the instruction (the instruction type is already specified by the operation codes of the first and second basic parts, and has already been determined at the time of decoding of the third basic part) ) Contains register numbers and immediate data.
  • the decoder only issues a field (57:56) that specifies the size of the immediate data and issues a constant generation instruction. Power.
  • the register number and immediate data are transmitted to the subsequent circuit through the input instruction register 46 and the output instruction register.
  • Additional mode addressing is an addressing mode in which multiple indirect scaling can be used.
  • Operand address is basically obtained by the following formula, and multiple indirect addressing is realized by repeatedly applying this address calculation.
  • the base address of the first row is specified by the operand specification section of the basic section, and the index and scale are specified.
  • the displacement is specified for each row in the following format. .
  • the additional mode decorating is to add the first half word (15: 0) on the instruction queue bus 12 at each stage in the ADDM stage. Latch and decode.
  • the decoding results of the operation code decoding sections 28 and 30 are held in the latch circuits 36 and 38 at the timing of the latch control signal S03, respectively.
  • One of the retained outputs is selected to supply a micro address to the micro program ROM 65 shown in FIG. 13 and a tag to the pipeline control unit 64.
  • the decoding results of the addressing decoding section 32 A and the next stage transition request decoding section 34 B are held in the latch circuit 42 at the timing of the latch control signal S 03, and the additional module
  • the decoding result of the decoding part 34 is held in the latch circuit 44.
  • Fig. 11 shows an example of the present invention. It is a block diagram of the decoding sequencer 14 which is an Example.
  • the above-mentioned control signals are generated so that the basic transition request is frozen while the extended transition request is asserted without considering the presence or absence of the extension part in the transition of the basic state. I do.
  • decoding sections are provided to decode the first operation code, the second operation code, and the additional mode, respectively, and the decoded signal is output by each stage signal.
  • the latch circuit is controlled for each of the divided decoding units in order to refer to the subsequent cycle. Further, when there is a wait request from the wait stage or from outside, the output side latch is frozen and the state is maintained.
  • the decoded sequencer in this embodiment includes basic transition request signals S 11, S 12, S 13 output from the next stage transition request decoding unit 32 A, extended transition request signals S 14, S15, S16-The extension continuation request signal S18 from the additional mode decoding unit 3 and the four-phase clock signal ⁇ 5 shown in FIG. ⁇
  • the latch surface 4 2a which is a part of 4 2, is used for decoding output from the next stage transition request decoding unit 32 A. Outputs S11 to S17 are temporarily held.
  • the outputs of the bit latch circuits 42 1 to 42 3 are the first basic stage transition request signal SG 1 REQ (S 21) and the second basic stage transition request signal SG 2 REQ (S 22 ), And becomes the third basic stage transition request signal SG 3 REQ (S 23).
  • the outputs of the bit latch circuits 424 to 427 are the additional mode stage transition request signals ADDM-REQ (S24) .64-bit timed transition request signal I MM 2 REQ (S 25), 96-bit immediate transition request signal IMM 3 REQ (S 26), and wait request signal WAIT 'REQ (S 27).
  • the decode output S 18 of the additional mode decoding section 34 is temporarily held in the latch circuit 44 and output as the additional mode continuation signal ADDM ⁇ CN (S 27).
  • the data held by the bit latch circuits 42 1 to 42 3 are bit-racked at the timing of the clock signal via the AND gates 101, 102, and 103, respectively. Are held in the input circuits 104, 105, 106.
  • the AND gates 101 to 103 have a function of masking a basic part transition request while there is an extended part transition request.
  • the data S 41, S 42, and S 43 held in the bit latch circuits 104 to 106 are input to an OR gate 107, and the OR output of the OR gate 107 is connected to the AND gate 1. It is supplied to one input terminal of 08. Pipeline control is applied to the other input terminal of AND gate 108
  • Depression Part 6 4 is supplied via a-wait request signal WAIT ⁇ PL (S 01) from (first 3 FIG see) GENERAL converter 1 0 9.
  • the OR gate 107 has a function of detecting that the current stage is at the base stage.
  • the AND gate 108 detects that there is no wait request WAIT ⁇ PL and basic part transition request, and supports the capture of the output S11 to S13 of the next stage transition request decode part.
  • the output of the AND gate 108 is supplied to one input terminal of the AND gate 110, and the other input terminal of the AND gate 110 is connected to the clock signal ⁇ 3 ⁇ 4 3
  • the output of the end gate 110 is a latch timing signal for taking in the decode outputs S 11 to S 13 to the bit latch circuits 4 2 1, 2 2, 4 2 3 Used as The other input terminal of the AND gates 101 to 103 is supplied with the output of the NOR gate 111 controlling the mask of the basic part transition request.
  • the outputs of the bit latch circuits 4 24 and 4 26 are supplied to the input terminals of the NOR gate 1 1 1 as signals S 3 4 and S 3 6 via the OR gate 1 12 and the AND gate 1 13 respectively.
  • the data S 25 and S 27 held in the bit latch circuits 425 and 427 are directly supplied to detect the presence or absence of a transition request to the extension unit.
  • the data S34, S25, and S36 are bit-latch paths 1 14, 1 15, and 1 16, respectively, at the timing of the clock signal.
  • the extension decode enable signal ADDM (S44), IMM2 (S45), and IMM3 (S46).
  • the data S44 and S45 are held as data S54 and S55 in the bit latch circuits 117 and 118, respectively.
  • Data S554 is supplied to one input terminal of AND gate 120, and data S555 is supplied to the other input terminal of AND gate 113.
  • the gate 113 has a function of transferring the IMM 3 REQ to the bit latch circuit 116 when the IMM 3 REQ is present in the IMM 2 stage.
  • the AND gate 120 decodes the extension section during the extension mode, detects that the extension mode is further surrounded, and outputs the ADDM / REQ signal to the bit latch circuit 110. It has a function to transfer to 4.
  • the output of the inverter 109 and the clock signal 3 are supplied to the AND gate ⁇ 19, and the output of the AND gate 119 is used as a latch timing signal as a bit latch circuit 117 , 1 18, 4 2 4 to 4 27 are used as timing signals to capture the decoded outputs S 14 to S 17.
  • the decode output S 18 from the additional mode decode section 34 is held in the latch circuit 44 at the timing of the output of the AND gate 119, and the additional mode continuation signal ADDM-CN (S 2 8) and supplied to the other input terminal of AND gate 120.
  • Site request The signal WAIT ⁇ REQ (S27) is held in the bit latch circuit 121 at the timing of the clock signal ⁇ , and is gated as the wait signal WAIT (S47).
  • Supplied to The NOR gate 122 has a function of detecting the presence or absence of WAIT or WAIT / PL.
  • the output of source gate 122 and clock signal 3 are supplied to AND gate 123, and when there is no wait request, latch gate comb signal S from AND gate 123 is output. 0 3 is output.
  • the latch control signal S03 is used as a latch timing signal for the latch circuits 36, 38, 44, 48 shown in FIG.
  • the output of the AND gate 101 is supplied as a latch control signal 0 P 1 ⁇ (S 31) to enable the latch circuits 16 to 20 shown in FIG. 10.
  • the output of AND gate 102 is supplied as latch control signal 0 P 2 I (S 32) to enable latch circuits 18 and 22 shown in FIG. 10 Is done.
  • the output of the AND gate 103 is supplied as a latch control signal 0P3I (S33) to enable the latch circuit 24 shown in FIG. 10 in an enable state.
  • the data S41 held in the bit latch circuit 10 is supplied to the 0P1 decoding section 28 and the addressing decoding section 32B shown in FIG.
  • the retained data S 42 of the bit latch circuit 105 is the second basic part de- enable signal 0 P 2. Then, it is supplied to the 0P2 decode section 30 and the addressing decoding section 32B shown in FIG.
  • the data S43 held in the bit latch circuit 106 is supplied to the addressing decoding section 32B shown in FIG. 10 as a third basic section decoding enable signal 0P3.
  • Each decoding section starts decoding in response to the decoding enable signal 0P1-0P3.
  • the data latched in the bit latch circuits 114 to 116 are S44, S45, and S46, respectively, which are the extension decode enable signals ADDM, IMM2, and IMM3.
  • the extension section disable signal ADDM is supplied to the additional mode decoding section 34 of FIG. 10 to instruct the start of decoding of the extension section.
  • S45 and S46 are held in the latch circuit 44 as decode enable signals for indicating the 64 bit and 96 bit immediate decode, respectively.
  • the held data gives a constant generation instruction to the constant generation unit.
  • FIG. 12 the operation timing at the time of decoding the memory-to-memory transfer instruction M0V shown in FIG. 8 is shown in FIG. 12 as an example. Show. In FIG. 12, the same symbols as those in FIG. 11 indicate the same signals.
  • the first basic section transition request signal SG 1 REQ (S 21) becomes "1" at the rising timing of the clock signal 3 .
  • the second basic Section transition request signal SG 2 REQ (S 2 2), third basic section transition request signal SG 3 REQ (S 2 3), extension section transition request signal ADDMREQ (S 2 4), IMM 2 REQ (S 2 5), IMM 3 REQ (S 26), ⁇ ⁇ 8 request signal WAIT ⁇ REQ (S 27), additional mode continuation signal ADDM'CN (S 28) are all “0” .
  • the output of the NOR gate 111 is "1", and the latch control signal 0P1I (S31) is "1, ', 0P2I (S32) and 0P3I. Since (S33) is "0", the corresponding data on the instruction queue bus 12 is taken into the latch circuits 16, 18, 20, and 22. Next clock At the rising timing of the signal, the first basic unit decode enable signal 0P1 (S41) becomes “1", and the decoding of the first basic unit is performed. The one enable signal OP2 (S42) and the third basic part decode enable signal (S43) are "0", indicating the disable state.
  • the first basic part transition request signal SG 1 REQ (S 21) becomes “0”
  • the second basic part transition request signal SG 2 REQ (S 22) and Both the extension section transition request signals ADDM • REQ (S24) become “1”.
  • the second basic section transition request signal SG 2 REQ (S 22) is AND gated.
  • the mask is masked by 102, and the extension section transition request signal ADDM.REQ (S24) is prioritized.
  • the second basic section decode enable signal 0P2 (S42) is "0" and remains in the disabled state, and the extension section transition
  • the request signal ADDM ⁇ REQ (S24) is taken into the bit latch circuit 44, the extension decode enable signal ADDM (S44) becomes "1", and the first extension (additional mode) is turned on. It is decoded.
  • the extension section transition request signal ADDM * REQ (S24) becomes “0" at the next rising edge of the clock signal 3 .
  • the additional mode continuation signal ADDM ⁇ CN (S28) is "0", which indicates that there is no subsequent extension, so the end of the additional mode stage is instructed.
  • NOR gate 111 becomes “1”, and masking by AND gates 101 to 103 is released.
  • the latch control signal 0P2I (S32) becomes "1"
  • the latch circuits 18 and 22 receive the data on the instruction queue bus 12.
  • the wait request signal WAIT.PL (S01) is forced to "0" and the wait state is released.
  • the next clock signal [Phi 3 rising latches control signals in Thailand Mi ring (SO 3) is decode result la Tutsi second base portion and decode in the previous cycle since the "1" Taken into circuit 38.
  • FIG. 1 is a block diagram illustrating a schematic configuration of a microprocessor according to an embodiment of the present invention.
  • the microprocessor shown in the figure is configured as a monolithic LSI, and has an instruction control unit 80 for performing pipeline control and instruction decoding, and an instruction execution unit for executing instructions. 81, a memory control unit 82 for controlling the built-in cache memory, etc., and a bus control unit 83 for controlling the exchange of information with the outside of the LSI chip.
  • the instruction control unit control unit 80 includes an instruction queue 61, an instruction decoder 62 having the configuration shown in FIGS.
  • the instruction execution unit 81 includes a constant generation unit 67, an address generation unit 68 including an address adder and a program counter, a register file 70, and a calculation unit 70.
  • the operation unit # 0 includes an ALU, a norr shifter, an encoder, a BCD checker, and the like.
  • the memory control unit 82 includes an instruction access control unit ⁇ 1 and an operand access control unit ⁇ 2.
  • the instruction access control section 71 includes an instruction cache memory, a TLB, a protection circuit, and the like.
  • the operand access control unit 72 includes a cache memory for the operand, a TLB, a protection check circuit, and a store notch.
  • the bus control section 83 has an interface function with the outside of the LSI chip, and has an address control section 73 having an address monitoring circuit and the like, a bus monitoring control for generating a block access control signal and the like.
  • a data transmitting / receiving unit 75 is not limited to the microprocessor of the configuration shown in the first 3 FIG. ⁇ [Industrial applicability]
  • the microprocessor of the present invention instructions are sequentially read from the beginning, the presence or absence of the subsequent basic part and extension part are determined, and the presence or absence of the basic part and the extension part is temporarily stored in the storage circuit.
  • the decoding start request of the expansion unit and the decoding start request of the expansion unit conflict the decoding of the expansion unit is controlled by giving priority to the start of the decoding of the expansion unit while holding the decoding start request of the basic unit.
  • the configuration of the sequencer can be simplified.
  • the simplification of the decoding sequencer improves the processing speed and is suitable for integrated circuits.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Description

明 細 書
〔発明の名称〕
マイ ク ロプロセ ッサ
〔技術分野〕
本発明は、 可変長命令形式を採用したマイ ク ロプ αセ ッサに関する。 特に単一命令が複数の基本部と 可変長の拡張部とで構成される可変長命令の各部分 のデコー ド順を制御する改良されたデコー ドシ一ケ ンサを具備するマイ ク 口プロセ ッサに関する。
〔背景技術〕
第 1図は可変長命令形式の概念図である。 第 1図 は、 マイ ク ロプロセ ッサに対する 1 つの命令が、 最 大 Ν個の部分から構成されることを示している。 こ の様な命令は複数のサイ ク ルを使ってデコ一 ドされ る。 各部分の基本部には命令コー ドが舍まれ、 拡張 部には即値データ等が含まれる。 例えば第 1 の部分 の基本部に基づいて後続の拡張部の有無や第 2の部 分の基本部の意味が特定される。 基本部が Ν個ある 場合には Ν個の基本部をデコー ドして、 始めて意味 のある制御信号が得られる。
第 2図は 3 2 ビ ッ ト · マイ ク ロプロセ ッ サを想定 した直交型の命令形式の一例であり、 最大 3つの基 本部を持つ命令まで可変できる命令形式を示す図で ある。 この命令形式では 1 6 ビッ ト単位で命令が構 成されており、 0 Pは命令コード部で命令コード及 び後続の基本部の有無を示す情報を含む。 R , R a , R b はレジスタ指定部、 Sはオペラ ン ドサイ ズ指定 部、 # I はィ ミディ ェ一 トデータ、 d i spはディ スブ レースメ ン ト部である。 オペラ ン ド指定部ば後続の 拡張部の有無を示す情報も舍む。 拡張部は 1 6ビッ トの整数倍の長さを持ち、 オペラ ン ド指定部の直後 に置かれ、 オペラ ン ド指定部を拡張する為に用いら れる。 拡張部には、 更に後続の拡張部の有無を示す 情報も舍まれている。 1 6 X n ( nは 0を含む整数 ) は拡張部の長さを 1 6 ビッ ト単位で可変であるこ とを示す。 尚、 短縮形は一般形のオペラン ド指定部 のビッ ト長を 2 ビッ ト短縮するこ とで、 実行速度を 速めたものである。 この様な可変長命令形式では、 使用頻度の高い命令は 1 オペラ ン ド形式に割り当て られ、 使用頻度の低い命令は 2オペラ ン ド以上の形 式が割り当てられる。 こうすることで使用頻度の高 い命令は短時間で実行し、 且つ命令の種類も多くす ることができる。 係る可変長命令のより具体的な例 を第 3 A図〜第 3 C図に示す。
第 3 A図、 第 3 B図は 2オペラン ド形式の命令の 具体例を示す図、 第 3 C図は 1 オペラ ン ド形式の命 令の具体例を示す図である。 第 3 A図は 8 ビッ トの 実効ア ドレスフィ ールドを持つ 2オペラ ド一般型 の命令を示し、 1 6 ビッ トよりなる第 1基本部は命 令コー ド 0 P、 ソース ' オペラ ン ド · サイ ズ S S、 ソース · オペラ ン ド ' 実効ァ ド レス ea s よ り な り 、 第 2基本部は命令コー ド O P、 デステ ィ ネーシ ョ ン ' オペラ ン ド · サイ ズ D D、 デステ ィ ネーシ ョ ン ' オペラ ン ド . 実効ア ド レス e a d よ り なる。 尚、 exp 1 6ノ 3 2 は 1 6 ビッ ト又は 3 2 ビッ トよりなる拡 張部である。 第 3 B図は 8 ビッ ト · ィ ミディ エー ト 型の命令を示し、 第 1基本部は命令コー ド 0 P、 ィ ミディ エー トデータ #よりなり、 第 2基本部は命令 コー ド、 デステ ィ ネーシ ョ ン ' オペラ ン ド ♦ サイ ズ D D、 デステ ィ ネーシ ョ ン * オペラ ン ド ' 実効ア ド レス ead よりなる。 こ の命令では、 第 2基本部のみ に拡張部 exp 1 6ノ 3 2が付加される。 第 3 C図は 短縮型のレジスタ一メ モ リ間転送命令を示し、 命令 コー ド 0 P、 レジスタ指定部 R n、 ソース · オペラ ン ド ' サイ ズ S S、 ソース ' オペラ ン ド · 実効ア ド レス又はデステ ィ ネーシ ョ ン ' オペラ ン ド ' 実効ァ ド レス eas /ea d より成る基本部と拡張部 exp 1 6 / 3 2 より構成されている。
かかる可変長命令のデコー ド · シーケ ンス と して 第 4図に示すステージ遷移が考えられる。 第 4図は 最長で第 3基本部まで持つ命令のデコー ドのステー ジ遷移図である。 尚、 〇印は各部のデコー ドステー ジを示し、 矢印は他のデコー ドステージへの状態遷 移を示す。 第 1基本部のみを持つ命令が連続する場 合には第 1基本部のデコードステージのみを操り返 せばよいが、 第 2、 第 3基本部、 第 1、 2、 3拡張 部がある場合には、 単純に前のデコー ドステージを 参照しながら後続ステージのデコードを行おう とす る と複雑なデコー ドシーケンスとなってしまう。 こ れは第 1基本部の命令コー ドにより、 後続の基本部 の命令コードの意味が変わり、 且つ拡張部の長さも 可変である為である。
- 例えば、 第 1図に示す命令をデコー ドするには、 第 1基本部をデコードし、 そのデコード結果から第 1拡張部があると判定する。 次に、 第 1拡張部をデ コー ドし、 その結果拡張部が続く と判断されれば第 1拡張部のデコード処理を繰り返し行う。 第 1拡張 部のデコードが終了し、 且つ第 1基本部のデコード の結果、 第 2基本部が有ると判定されていれば、 第 2基本部のデコードステージへ遷移する。 第 2基本 部をデコー ドし第 2基本部のデコード結果から第 2 拡張部があると判定すると第 2拡張部のデコー ドス テ一ジへ遷移する。 その後、 先の第 2基本部のデコ ード結果から第 3基本部があると判定されると、 第 3基本部をデコー ドステージ遷移する。 第 3基本部 のデコード結果から第 3拡張部があると判定される と第 3拡張部をデコードし第 3基本部のデコード結 果から第 3拡張部、 第 4基本部がないと判定すると 次の命令に移り、 上述と同様のデコー ド · シ一ケン スでデコー ドを行なう。 しかし、 この様なデコー ド ♦ シーケンスでは各拡張部のデコー ド終了後に次の 基本部のデコードに移るには、 その拡張部がどの基 本部に付随する拡張部であるかを確認し、 且つその 基本部のデコー ド結果を知る必要がある。 状態遷移 が多い程、 遷移を指示する為の多く の制御信号を必 要とする。 よって、 第 4図に示したステージ遷移を 行なうデコ一 ドシーケンサではその回路構成が複雑 になるという問題点がある。 この問題は 1 つの命令 を構成する基本部及び拡張部の数が増加するほど深 刻なものとなる。 又、 デコー ト シーケ ンサの複雑化 によりデコー ド処理に要する時間も長く なる。 〔発明の開示〕
本発明の目的は、 効率良く 可変長命令をデコー ド でき、 且つ簡素な構成の命令デコーダを具備するマ ィ ク ロプロセ ッサを提供することである。
本発明の他の目的は、 可変長命令を高速にデコ一 ド可能な命令デコーダを具備するマイ ク ロプロセ ッ サを提供することを目的とである。
本発明の更に他の目的は、 高集積化に適したマイ ク ロプロセッザの構成を提供することである。
上記目的は、 命令コ一 ド及びオペラ ン ド指定部を 舍む基本部と、 該オペラ ン ド指定部を拡張する為に 該基本部の指定に応じて付加される拡張部を舍む可 変長命令を実行するマイ ク ロプロセッサであって、 前記基本部をデコードするこ とで、 後続の基本部及 び拡張部の有無を判別し、 基本部遷移要求又は拡張 部遷移要求を出力する基本部デコーダと、 前記拡張 部をデコードするこ とで、 拡張部の継続の有無を判 別し、 拡張部継続要求を出力する拡張部デコーダと、 前記基本部デコーダ、 拡張部デコーダにデコードを 指示する制御儈号を所定のシーケンスに従って発生 するデコードシーケンサとを具備し、 前記デコー ドシ 一ケンサは、 前記基本部遷移要求に応答して前記基 本部デコーダに対する制御信号を発生する第 1制御 回路と、 前記拡張部遷移要求又は拡張部継続要求に 応答して前記拡張部デコーダに対する制御信号を発 生する第 2制御回路と、 前記第 1制御回路と前記第 2制御回路に接続され前記拡張部遷移要求又ば拡張 部雜続要求があるときには前記基本部遷移要求に対 応する第 1制御回路の動作を保留させる第 3制御回 路とを具備することを特徴とするマイ ク口プロセッ ザによって達成される。
〔図面の簡単な説明〕
第 1図は可変長命令の概念図、
第 2図ば 3つの基本部を持つ命令まで可変できる 命令形式を示す概念図、 第 3 A図, 第 3 B図は 2オペラ ン ド一般型の命令 を示す概念図、 第 3 C図は短縮型のレジスタ一メモ リ間転送命令を示す概念図、
第 4図はステージ遷移図、
第 5図は本発明の一実施例である命令デコー ドの ステージ遷移図、
第 6図は本発明の一実施例である命令デコー ド部 の要部ブロ ック図、
第 7図は本発明の一実施例である命令デコー ドの ステージ遷移図、
第 8図は M O V命令の命令形式を示す図、 第 9図は本発明の一実施例により M O V命令をデ コ一 ドする場合のステージ遷移図、
第 1 0図は本発明の一実施例である命令デコーダ のブロ ック図、
第 1 1 図は本発明の一実施例であるデコー ドシ一 ケ ンサのブロ ック図、
第 1 2図は第 1 1図に示すデコー ドシーケンサの 動作を説明するためのタイ ミ ングチヤ一 ト、
第 1 3図は本発明の一実施例であるマイ ク ロプロ セ ッサのブロ ック図である。
〔発明を実施するための最良の形態〕
本発明の一実施例に於ける命令デコー ドのステー ジ遷移を第 5図を用いて説明する。 図中、 〇印はデ コードステージを示し、 矢印はデコードステージの 遷移を示す。
本発明に於いては、 デコードステージを基本モー ドと拡張モー ドとに分け、 基本部と拡張部のデコ一 ドステージ分離している。 更に、 第 4図の様に第 1 拡張部、 第 2拡張部、 第 3拡張部のデコードステー ジを分けず、 各拡張部のデコードステージを共通化 している。 この結果、 第 4図に比べて第 5図の本発 明の一実施例ではデコ一ドステージの状態遷移の種 類が少なくなり、 デコードシーケ ンサの簡素化が可 能となる。
本実施例では、 命令中に拡張部が無い場合、 又は 拡張部がある場合でも基本部と同じデコ一 ドサイ ク ル内でオペラ ン ド処理に必要なデータ、 制御信号が 用意できる場合には基本モ一ド内でのみデコ― ドス テ一ジが遷移する。 第 1基本部のみの命令が続く場 合には第 1基本部のデコ一ドステージのみが繰り返 される。 また、 第 3基本部まである命令のばあいに は、 第 1基本部、 第 2基本部、 第 3基本部の順でデ コードステージが遷移し、 その後に次の命令のデコ ードの為に第 1基本部へ遷移する。 一方、 第 1基本 部をデコー ト"した段階で、 第 2基本部有り、 第 1拡 張部有り と判断され且つ基本部と同じデコ一ドサイ クル内で処理に必要なデータ、 制御信号が用意でき ない場合 (例えば、 オペラ ン ド指定部で指定された ィ ミディ ェ一 トデータ長が大で 1 サイ クルでは取り 込めない場合) には、 第 2基本部への遷移要求は保 持状態で待たせておき、 拡張モー ドへ遷移して後続 の拡張部をデコー ドする。 後続の拡張部をデコー ド した結果、 更に拡張部が続く と判断された場合には 拡張部のデコー ドステージを繰り返す。 第 2、 3拡 張部についても同様に処理される。 後続の拡張部が 無いと判断されると再び基本モー ドに戻り、 待たせ てあつた第 2基本部のデコー ドステージへ遷移する。 第 5図に示すステージ遷移は、 第 6図に示す命令 デコー ド部を備えることで実現される。 第 6図は、 本発明の原理構成を示している。 尚、 デコー ド対象 である命令は、 第 1図、 第 2図、 第 3 A図〜第 3 C 図に示す様に所定ビッ ト長の基本部と、 前記基本部 により指定されて前記所定ビッ ト長の整数倍の拡張 部と、 先行する基本部に従属する基本部を有する可 変長命令である。
第 6図に於いて 1 は遷移要求デコー ド部であり、 命令を先頭から処理単位ビッ ト長毎に順次読み込み 後続の基本部及び拡張部の有無を判別する。 2 はラ ツチ回路等の記憶回路であり、 基本部及び拡張部の 有無を示す信号を一時記憶する。 3 はデコー ドシ一 ケンサであり、 記憶回路 2 の保持データに対応した 基本部及び拡張部のデコ一 ドを開始させる信号を、 基本部デコーダ 4 A又は拡張部デコーダ 4 Bに対し 順次出力する。 この際、 デコー ドシーケンサ 3 は、 基本部のデコ一ド開始と拡張部のデコード開始が競 合した場合には後続の基本部のデコード要求をマス ク して拡張部のデコ一ドを開始させる信号の方を優 先させて出力する。
各拡張部のデコ一ド終了後に次の基本部のデコー ドに移る場合、 記憶回路 2に基本部有りの情報が保 持されているので、 前期優先制御によって拡張部の デコードを優先しても容易に後続の基本部のデコー ド開始制御に移ることができる。 この記憶回路 2 と デコードシーケンサ 3の優先制御との組み合わせに より、 デコードシーケンサの構成が従来より も簡単 になる。
第 7図は、 本発明の一実施例であるデコード . シ 一ケンスをより具体的に示すステージ遷移図である, 本実施例のデコー ド · シーケンスに於いて取り得 る状態は次の 7ステージである。
〔基本モー ド〕
先行する基本部のオペレーショ ンコードが更に後続 のオペレーショ ンコ一ドを必要とする場合にステー ジ遷移する。
S G 1 : 命令の先頭 ( 0 P 1 ) 、 即ち第 1基本部か らデコ一 ドを行なうテステージ
S G 2 : 命令の第 2基本部 ( 0 P 2 ) をデコードす るステージ S G 3 : 命令の第 3基本部 ( O P 3 ) をデコー ドす るステージ
〔拡張モー ド〕
基本モー ドに於いて、 オペラ ン ド指定されたォヘラ ン ド処理に必要なデータ、 制御信号が基本部のデコ ― ドサイ クル内で用意できない場合に基本モー ドか 遷移す o
A D D M : 付加モー ドのデコー ドステージ
I M M 2 : ロ ングデータのィ ミディ ェ一 トデータの
2 ワー ド目を抜き取るステージ
I M M 3 口 ングデータのィ ミディ ェ一 トデータの
3 ヮー ド目を抜き取るステージ
W A I T デコー ド 1 サイ クルに対し、 後続する画 路が 2 サイ クル動作を必要とする場合に 同期をとる為、 デコー ドを 2 サイ クルに するステージ
各ステージへの遷移要求は付のとりである。
S G 1 R E Q : 第 1基本部デコー ドの要求 (第 1基 本部のみの命令が続く ときはこの要 求も繰り返し出される)
S G 2 R E Q 第 2基本部デコー ドの要求
S G 3 R E Q 第 3基本部デコ一ドの要求
A D D M R E Q : 付加モー ドへの遷移要求
I M M 2 R E Q : 2 ワー ド目のイ ミデイ エ一 トデ一 タがある場合に出される遷移要求 I MM 3 R E Q : 3 ワード目のイ ミディ エー トデ一 タがある場合に出される遷移要求 W A I T : ウェイ ト要求
尚、 AD D Mステージ、 I MM 2ステージ、 I M M 3ステージ、 WA I Tステージから基本モー ドへ 向かう破線の矢印は、 それぞれ先行する基本部に応 じて S G 1〜S G 3の対応するステージへ遷移する ことを示している。
本発明実施例の基本的なステージ遷移と第 5図と 同様である。 同図と異なる点は、 拡張モー ドのステ ージをより詳細に示した点である。 ここで付加モ一 ドとは多重間接ゃスケーリ ングを使用可能としたァ ドレツ シングモー ドでのオペラン ド指定部の拡張モ —ドを意味する。 ロングイ ミディェ一 トデータの取 込み時の遷移は次のとおりである。 S G 1 ステージ で第 1基本部のデコー ド結果が 2又は 3 ワードの口 ングイ ミディエー トデータ有りの場合には I M M 2 ステージへ遷移する。 更に、 第 1基本部のデコード 結果が 3 ワー ドのロ ングイ ミディエートデータ有り の場合には I MM 3ステージへ遷移するシーケンス となっている。 また、 S G 1 ステージから S G 3ス テ一ジへの遷移要求 S G 3 R E Qは、 第 1基本部と 第 2基本部を同時にデコードした際に、 第 3基本部 有り と判断されたときに出されるものである。 尚、 ウェイ ト要求 WA I T , R E Qについては S G 1、 S G 3 ステージで発生する ものと してある。
第 7図に示すデコー ド ' シーケ ンスにより、 例え ば第 8図に示す M 0 V命令は次の様にデコー ドされ る。 尚、 第 8図は T R O N (The Real time Operatin g system Neuc 1 eus)仕様に準拠した命令の形式を示 す図である。 この M O V命令は、 メ モ リからメ モ リ への転送命令であり 二一モニ ッ クでは次のように表 される。
M 0 V : G @@ (disp, R n ) , @ R m
M O Vは転送命令を、 Gは第 2図に示した一般形の 命令である こ とを示す。 また、 ®は間接ァ ドレ ッ シ ングを、 ®@は二重間接ア ドレッ シングを、 dispは ディ スプレイ スメ ン トを、 R n , R mはイ ンデッ ク ス レジスタを示す。 E A 1 には次の第 1拡張部が付 加モー ドである こ とを示すコー ドが格納され、 E A 2 には R mの間接ァ ドレツ シングの識別コ― ドが格 納され、 第 1拡張部には付加モー ドと して、 R n と ディ スプレイ スメ ン トの値による二重間接ァ ドレツ シングを示すコー ドが格納されている。 即ち、 上記 命令ではィ ンデックス レジスタ R n内の値にディ ス プレースメ ン ト dispを加箕した値のア ドレスでメ モ リ をアクセス してオペラ ン ドア ドレスを取り出す。 オペラ ン ドア ドレスに基いてソースデータをァクセ ス し、 それをイ ンデッ クス レジスタ · R m内の値に対 応するア ドレスへ転送する。 命令中の 0 P 1、 S l、 E A 1 は第 1基本部であ り、 後続の付加モー ドの部分が第 1拡張部である。 O P 2、 S 2、 E A 2 は第 2基本部である。 0 P 1 は第 2基本部が有るという情報を持ち、 E A 1 は第 1拡張部が有るという情報をもっている。 第 1拡張 部 (付加モー ド) は、 0 P 1 により指定され第 1基 本部に従属している。 S l、 S 2 ばオペラ ンドサイ ズである。
この M O V命令を本発明に係るデコード · シーケ ンスに基づいてデコードする際のステージ遷移を第 9図に示す。 第 9図の横方向は時間軸であり、 サイ クル毎に現在のステージ、 現在のステージでのデコ ード結果に基いて識別される次に続くステージ、 そ のサイ クル内でのデコード動作を示している。
M 0 V命令は第 1基本部+拡張部 (付加モード) +第 2基本部という構成になっているので S G 1ス テージで 0 P 1 をデコードすることで次ステージと して S G 2ステージ、 AD D Mステージが要求され ることが分かる。 A D D Mステージは第 1拡張部に 対応するものであるから、 S G 2ステージへの遷移 は凍結させておき、 次のサイ クルでは A D D Mステ —ジへ遷移する。 この場合、 拡張部の長さば 1サイ クルで処理できる長さであるので、 次のサイ クルで は S G.2ステージへ遷移する。 但し、 W A I T要求 が来ている為、 0 P 2 のデコー ドを 1 サイ クル待た せ ( O P 2 Wで示す) 、 現ステージは S G 2ステ一 ジのまま保持する。 次のサイ クルでは O P 2をデコ ー ドする。 M 0 V命令は第 2基本部までなので次ス テージは S G 1 ステージとなっている。
尚、 M O V : G ® ( d i s p , R n ) , ® R mの 様な命令 ( レジスタ R nの値にディ スプレースメ ン ト d i s pを加算した値のア ドレスでメ モ リ を'ァク セス し、 そのア ドレスのデータをレジスタ R mの値 のア ドレスへ転送) の場合は、 拡張部があってもデ イ スプレースメ ン ト d i s Pが基本部のデコ一 ドサ ィ クル内で用意できるので拡張モー ドへの遷移はし ない。
第 1 0図は、 第 7図に示したステージ遷移を実現 する為の本発明の一実施例である命令デコーダのブ ロ ッ ク図である。 この命令デコーダは、 命令キュ一 1 0から命令キューバス 1 2を介して供給される命 令をデコー ドシーケ ンサ 1 4からの制御信号に基づ いて取り込み、 デコー ドする。
以下、 第 2図に示した命令形式の可変長命令をデ コー ドする場合を例と して説明する。 命令キューバ ス 1 2 は 6 4 ビッ ト幅のバスであり、 命令キュー 1 0 は 6 4 ビッ ト単位で命令を命令キューバス 1 2へ 送出する。 命令キューバス 1 2上のデータ (ビッ ト 6 3〜ビッ ト 0 ) は、 デコー ドシーケンサ 1 4から の制御信号に基づく タ イ ミ ングでラ ッチ回路 1 6〜 2 6に保持される。 図中、 括弧内の数は対応するラ ツチ回路への入力されるビッ ト番号を示す。 例えば ( 6 3 : 4 8 ) は、 ビッ ト 6 3〜ビッ ト 4 8の 1 6 ビッ トが入力されることを示す。
第 1オペレーショ ンコード ( O P 1 ) デコード部 2 &、 第 2オペレーショ ンコー ド ( O P 2 ) デコー ド部 3 0、 ァ ドレッ シング部デコード部 3 2 B、 次 ステージ遷移要求デコ一 ド部 3 2 Aは基本部をデコ 一ドする為のデコーダである。 付加モードデコ一ド 部 3 4 は拡張部をデコードするデコーダである。 ィ ミディ エー トデータ、 ディ スプレースメ ン トデータ 等は 6 4ビッ トの入力側命令レジスタ 4 6、 出力側 命令レジスタ 4 8を介して取り込まれる。 ラ ッチ回 路 1 6 は 1 2 ビッ ト ラ ッチ、 ラ ッチ回路 1 8 は 2入 力の 8 ビッ ト ラ ツチ、 ラ ッチ回路 2 0 は 1 6 ビッ ト ラ ッ チ、 ラ ッチ回路 2 2は 2入力の 1 6 ビッ ト ラ ッ チ、 ラ ッチ回路 2 4 は 2 ビッ ト ラ ッチである。
第 1オペレーショ ンコード ( O P 1 ) デコード部
2 8 は、 ラ ッチ制御信号 S 3 1のタイ ミ ングでラ ッ チ回路 1 6に取り込まれた第 1基本部に舍まれるォ ペレーシヨ ンコー ド 1 2ビッ ト (: ( 6 3 : 5 2 ) ,
( 5 0 : 4 8 ) 〕 を S G 1 ステージでデコードする, 第 2オペレーショ ンコー ド ( O P 2 ) デコード部
3 0 は、 ラ ッチ制鄉信号 S 3 1 のタイ ミ ングでラ ッ チ回路 1 8 に取り込まれた第 2基本部に舍まれるォ ペレ一シヨ ンコー ド 8 ビッ ト ( 4 7 : 4 0 ) を S G 1 ステージでデコー ドし、 ラ ッチ制御信号 S 3 2 の タイ ミ ングでラ ッチ回路 1 8 に取り込まれたォペレ ーシヨ ンコ一 ド 8 ビッ ト ( 6 3 : 5 6 ) を S G 2 ス テージでする。
次ステージ遷移要求デコ一 ド部 3 2 A及びァ ドレ ッ シングデコー ド部 32 B は、 ラ ッチ回路 2 0、 2 2、 2 4 〜 2 4 のデータ及び 3 4 1 、 S 4 2、 S 4 3 を 入力と してデコー ドを行う。 次ステージ遷移要求デ コー ド部 3 2 A第 7図に示した各ステージへの遷移 要求を判別する。 ア ドレ ツ シングデコー ド部 3 2 B は、 ァ ドレッ シングモー ドをデコー ドする。 ラ ッチ 回路 2 0 にはラ ッチ制御信号 S 3 1 のタイ ミ ングで 1 6 ビッ ト ( 6 3 : 4 8 ) が取り込まれ、 このデ一 タは S G 1 ステージでデコー ドされる。 ラ ッチ回路
2 2 は 2入力ラ ッチであり、 S G 1 ステージではラ ッチ制御信号 S 3 1 のタイ ミ ングで 1 6 ビッ ト ( 4 7 : 3 2 ) を取り込み、 S G 2 ステージではラ ッチ 制御信号 1 6 ビッ ト ( 6 3 : 4 8 ) を取り込む。 ラ ツチ回路 2 4 は、 ラ ッチ制御信号 S 3 3 のタイ ミ ン グで 2 ビッ ト ( 5 7 : 5 6 ) を S G 3 ステージに於 いて取り込む。
付加モー ドデコー ド部 3 4 は、 ラ ッチ制御信号 S
3 4 のタイ ミ ングでラ ツチ回路 2 6 に保持された 1 6 ビッ ト ( 6 3 : 4 8 ) の拡張部を A D D Mステ一 ジに於いてデコー ドする。
尚、 第 2オペレーショ ンコード ( O P 2 ) デコ一 ド部 2 8力、 S G 1ステージでもデコードを行うの は第 1基本部、 第 2基本部の同時デコードをする場 合があるからである。 一般型の 2オペラン ド以上を 有する命令に於いては、 第 1オペランドがレジスタ ダイ レク ト (レジスタ中のデータをオペランドとし てそのまま使う場合) の場合には、 命令キューバス 1 2上の第 2ハーフワー ド ( 4 7 : 3 2 ) には S G 2 ステージでデコードすべき第 2ォペレ一ショ ンコ ードがある。 この時に限って命令の第 1、 第 2オペ レ一ショ ンコードを同時にデコードする。 その為、 S G 1 ステージでは、 無条件に第 2オペレーショ ン デコード部 1 &及びァ ドレッ シングデコー ド部 3 2 Bのラ ッチ回路 1 8、 2 2 に第 2ハーフワードを取 込み、 0 P 1 デコー ド部 2 8での第 1 ォペレ一ショ ンコー ドのデコー トにより命令が一般型であり、 且 つ第 1オペラン ドがレジスタダイ レク トの場合には 第 2オペレーショ ンコー ドのデコード結果を有効と する。 一方、 命令が一般型でないか又は一般型で第 1 オペラ ン ドがレジスタダイ レク ト以外の場合には 第 2オペレーショ ンコー ドのデコー ド結果を無効と し、 第 1命令オペレーショ ンコー ドのデコ一ド結果 を有効とする。 このとき、 一般型の命令で第 1オペ ラン ドがレジスタダイ レク ト以外の場合には、 S G 2 ステージ遷移要求がアサー トされ、 次サイ クル ( S G 2 ステージ) で第 2 オペレーショ ンコー ドのデ コー ドを行なう。 S G 2 ステージでは、 第 2ォペレ —ショ ンコー ドは命令キュ一バス 1 2上の第 1 ハ一 フワー ド ( 6 3 : 4 8 ) にある為、 第 2 オペレーシ ョ ンコ一 ドデコー ド都 3 0及びァ ドレツ シングデコ — ド部 3 2 Bのラ ッチ回路 1 8、 2 2 は、 命令キュ —バス 1 2上の第 1 ハーフワー ド ( 6 3 : 4 8 ) デ —タを取込み、 第 2 オペレーショ ンコー ド及び第 2 オペラ ン ドのデコー ドを行なう。
本一実施例に於いて第 3基本部を有する命令とし ては、 固定ビッ ト長ビッ ト フ ィール ド命令と、 ア ツ ド · コ ンペァ · ブラ ンチ、 サブ · コ ンペァ ' ブラ ン チ等のループ命令がある。 これらの命令は 4オペラ ン ドを持つ命令で、 この内 2オペラ ン ドは一般型の 第 1、 第 2基本部の第 1 オペラ ン ド及び第 2オペラ ン ド指定部で指定され、 残りの 2オペラ ン ドを指定 する為に第 3基本部が使用される。 第 3基本部は命 令を判別するオペレーショ ンコー ドを持たず (命令 種は第 1、 第 2基本部のオペレーショ ンコー ドで既 に指定され、 第 3基本部のデコー ド時点では判別済 である) レジスタ番号やイ ミディ エー トデータを有 する。 従って、 S G 3 ステージでデコーダは、 イ ミ ディ ェ一 トデータのサイ ズを指定するフィール ド ( 5 7 : 5 6 ) を入力するのみで、 定数発生指示を出 力する。 レジスタ番号やイ ミディ エー トデータは入 力側命令レジスタ 4 6及び出力側命令レジスタを通 つて後段の回路へ伝えられる。
本一実施例に於いて、 拡張部は付加モー ドア ドレ ッシングを実現する為に使用される。 付加モードア ドレツ シングは、 多重間接ゃスケーリ ングが使用で きるァ ドレッ シングモー ドである。 オペラ ン ドア ド レスは基本的に以下の式で求められ、 このア ドレス 計算を繰り返し適用することによって多重間接ァ ド レツ シングを実現する。
〔ベ一スァ ドレス +ィ ンデックス *スケール
+ディ スプレースメ ン ト〕 従って、 一段目のベースァ ドレスを基本部のオペラ ン ド指定部により指定し、 イ ンデックス、 スケール. ディ スプレースメ ン トを一段毎に以下のフォ一マ 'ン トで指定する。
15 0
E I I I R n I M X X I D 4 I E X P
E 終了指定
I 間接指定
R n ィ ンデッ クスレジスタ番号
M ィ ンデックス指定
X X スケール指定 D : ディ スプレースメ ン ト指定
D 4 : ディ スプレースメ ン トデータ
( 1 6 ビッ ト及び 3 2 ビッ トの場合は拡張部 E X Pのフィ ール ドに拡張)
この付加モ一 ドア ドレ ッ シング指定都をデコ一ドす るのが付加モー ドデコ一 ドで A D D Mステージに於 一段毎に命令キューバス 1 2上の第 1 ハーフワ一ド ( 1 5 : 0 ) をラ ッチしてデコー ドする。
オペレ—ショ ンコー ドデコー ド部 2 8 , 3 0 のデ コ一ド結果は、 それぞれラ ッチ制御信号 S 0 3 のタ イ ミ ングでラ ッチ回路 3 6 , 3 8 に保持される。 保 持された出力のうち一方が選択されて第 1 3図に示 すマイ ク ロプログラム R O M 6 5 に対しマイ ク ロア ド レスを供給するとともにパイ プライ ン制御部 6 4 に対しタグを供給する。 ァ ドレッ シングデコー ド部 3 2 A及び次ステージ遷移要求デコー ド部 3 4 Bの デコー ド結果はラ ッチ制御信号 S 0 3 のタイ ミ ング でラ ッチ回路 4 2 に保持され、 付加モ一 ドデコ一ド 部 3 4 のデコー ド結果はラ ツチ回路 4 4に保持され る。 これら保持データは、 第 1 3図の命令実行部 8 1 の構成要素であるァ ド レス発生部 6 8及び定数発 生部 6 7 に対しァ ドレス計算指示及び定数発生指示 を与える。
第 1 0図の命令デコーダの制御はデコ一 ドシーケ ンサ 1 4 によって行われる。 第 1 1 図は本発明の一 実施例であるデコードシーケンサ 1 4のブロック図 である。
本実施例のデコードシーケンサでは、 基本状態の 遷移でば拡張部の有無は考慮せず、 基本遷移要求が 拡張遷移要求がアサ一 トされている間は凍結される 様に上記各制御信号を発生する。 又、 デコードが複 数サイ クルにまたがる為、 第 1 オペレーショ ンコー ド、 第 2オペレーショ ンコード、 及び付加モ一ドに 対応して、 それぞれデコードを行うデコード部設け、 各ステージ信号によりデコ一ド済信号を後続サイ ク ルで参照するため、 分割されたデコード部毎にラ ッ チ回路を制御している。 更にウェイ トステージ及び 外部からのウェイ ト要求があると、 出力側ラッチを 凍結し、 その状態を保持する。
以下、 本実施例のデコードシーケンサの細部につ いて詳細に説明する。 本実施例に於けるデコ一ドシ ーケンサは、 次ステージ遷移要求デコード部 3 2 A から出力される基本遷移要求信号 S 1 1、 S 1 2、 S 1 3、 拡張遷移要求信号 S 1 4、 S 1 5、 S 1 6 - 付加モ一ドデコード部 3 から拡張継続要求信号 S 1 8及び第 1 2図に示す 4相クロック信号《5。 〜
3 に基づいて入力、 出力側のラ ッチ制御信号、 各デ コード部のイネ一ブル信号を発生する。 ラッチ回路
4 2の一部であるラ ッチ面路 4 2 a は、 次ステージ 遷移要求デコード部 3 2 Aから出力されるデコード 出力 S 1 1 〜 S 1 7を一時保持する。 ビッ ト ラ ッチ 画路 4 2 1 〜 4 2 3 の出力はそれぞれ、 第 1基本ス テージ遷移要求信号 S G 1 R E Q ( S 2 1 ) 、 第 2 基本ステージ遷移要求信号 S G 2 R E Q ( S 2 2 ) 、 第 3基本ステージ遷移要求信号 S G 3 R E Q ( S 2 3 ) となる。 ビッ ト ラ ッチ回路 4 2 4〜 4 2 7の出 力はそれぞれ、 付加モー ドステージ遷移要求信号 A D D M - R E Q ( S 2 4 ) . 6 4 ビッ トイ ミ一ディ ェ一 ト遷移要求信号 I MM 2 R E Q ( S 2 5 ) 、 9 6 ビッ トイ ミ一ディ ェ一 ト遷移要求信号 I M M 3 R E Q ( S 2 6 ) 、 ウェイ ト要求信号 WA I T ' R E Q ( S 2 7 ) となる。 付加モー ドデコー ド部 3 4の デコー ド出力 S 1 8 はラ ッチ回路 4 4に一時保持さ れ、 付加モ一 ド継続信号 A D D M · C N ( S 2 7 ) と して出力する。 ビッ ト ラ ツチ回路 4 2 1 〜 4 2 3 の保持データは、 それぞれアン ドゲー ト 1 0 1 , 1 0 2 , 1 0 3を介してク ロ ック信号 のタイ ミ ン グでビッ ト ラ ッチ回路 1 0 4 , 1 0 5 , 1 0 6に保 持される。 アン ドゲ一 ト 1 0 1 〜 1 0 3 は、 拡張部 遷移要求がある間基本部遷移要求をマスクする機能 を有する。 ビッ ト ラ ッチ回路 1 0 4〜 1 0 6 の保持 データ S 4 1 , S 4 2 , S 4 3 は、 オアゲー ト 1 0 7 に入力され、 その論理和出力はよりてア ン ドゲー ト 1 0 8の一方の入力端子に供給される。 ア ン ドゲ ー ト 1 0 8 の他方の入力端子にはパイ プライ ン制御
鬱 部 6 4 (第 1 3図参照) からのウェイ ト要求信号 W A I T · P L ( S 01) がイ ンバータ 1 0 9を介して 供給される。 オアゲート 1 0 7 は、 現ステージが基 本部ステージにあることを検出する機能を有する。 アン ドゲー ト 1 0 8 はウェイ ト要求 W A I T · P L 及び基本部遷移要求が無いことを検出して次ステー ジ遷移要求デコ一ド部の出力 S 1 1〜 S 1 3の取り 込みを支持する信号を発生する機能を有する。 アン ドゲー ト 1 0 8 の出力は、 ァン ドゲ一 ト 1 1 0 の一 方の入力端子に供給され、 アン ドゲー ト 1 1 0の他 方の入力端子には、 クロ ック信号《¾ 3 が供給される < ァン ドゲー ト 1 1 0の出力は、 ビッ トラ ッチ回路 4 2 1 , 2 2 , 4 2 3にデコード出力 S 1 1〜 S 1 3を取り込む為のラ ッチタイ ミ ング信号として用い られる。 アン ドゲー ト 1 0 1〜 1 0 3 の他方の入力 端子には、 基本部遷移要求のマスクを制御するノア ゲー ト 1 1 1 の出力が供給される。 ノアゲート 1 1 1 の入力端子には、 ビッ トラッチ回路 4 2 4 , 4 2 6の出力がそれぞれオアゲー ト 1 1 2 , ア ン ドゲ一 ト 1 1 3を介し信号 S 3 4 , S 3 6 として供給され. さらにビッ トラ ッチ回路 4 2 5 , 4 2 7 に保持され たデータ S 2 5 , S 2 7が直接供給され、 拡張部へ の遷移要求の有無を検出している。 データ S 3 4 , S 2 5 , S 3 6 はクロ ック信号 のタイ ミ ングで それぞれビッ トラ ッチ画路 1 1 4 , 1 1 5 , 1 1 6
嚳 に保持され、 拡張部デコー ドイ ネ一ブル信号 A D D M ( S 4 4 ) 、 I M M 2 ( S 4 5 ) 、 I M M 3 ( S 4 6 ) として出力される。 データ S 4 4 , S 4 5 は それぞれビッ トラ ッチ回路 1 1 7 , 1 1 8にデータ S 5 4 , S 5 5 として保持される。 データ S 5 4 は アン ドゲー ト 1 2 0の一方の入力端子に供給され、 データ S 5 5 はアン ドゲ一 ト 1 1 3 の他方の入力端 子に供給される。 ア ン ドゲー ト 1 1 3 は I M M 2ス テージに於いて I M M 3 R E Qがあるときにビッ ト ラ ッチ回路 1 1 6へ I MM 3 R E Qを転送する機能 を有する。 ア ン ドゲー ト 1 2 0 は、 拡張モー ドの最 中に拡張部をデコー ドした結果、 更に拡張モー ドが 繞く と判別されたことを検出して A D D M · R E Q をビッ トラ ツチ回路 1 1 4へ転送する機能を有する。 ィ ンバータ 1 0 9の出力とク ロ ック信号 3 とがァ ン ドゲー ト ί 1 9へ供給され、 ア ン ドゲー ト 1 1 9 の出力がラ ッチタイ ミ ング信号としてビッ トラ ツチ 回路 1 1 7 , 1 1 8 , 4 2 4〜 4 2 7へデコー ド出 力 S 1 4〜 S 1 7を取り込む為のタイ ンミ ング信号 として用いられている。
付加モー ドデコ一 ド部 3 4からのデコー ド出力 S 1 8 はアン ドゲー ト 1 1 9 の出力のタイ ミ ングでラ ツチ回路 4 4 に保持され、 付加モー ド継続信号 A D D M - C N ( S 2 8 ) としてとしてア ン ドゲー ト 1 2 0 の他方の入力端子に供給される。 ゥヱイ ト要求 信号 W A I T · R E Q ( S 2 7 ) はク ロ ック信号 Φ , のタイ ミ ングでビッ ト ラ ツチ回路 1 2 1 に保持され、 ウェイ ト信号 WA I T ( S 4 7 ) としてノアゲー ト 1 2 2へ供給される。 ノアゲート 1 2 2 は W A I T 又は WA I T · P Lの有無を検出する機能を有する。 ソ ァゲー ト 1 2 2の出力及びク ロ ック信号 3 がァ ン ドゲ一 ト 1 2 3へ供給され、 ウェイ ト要求が無い ときにアン ドゲ一 ト 1 2 3からラ ッチ制櫛信号 S 0 3が出力される。 このラ ッチ制御信号 S 0 3 は、 第 1 0図に示すラ ッチ回路 3 6、 3 8、 4 4、 4 8の ラ ッチタイ ミ ング信号として用いられる。 アン ドゲ — ト 1 0 1の出力はラ ッチ制御信号 0 P 1 Γ ( S 3 1 ) として第 1 0図に示すラ ッチ回路 1 6〜2 0を ィ ネーブル状態とする為に供給される。 ア ン ドゲ一 ト 1 0 2の出力はラ ッチ制御信号 0 P 2 I ( S 3 2 ) として第 1 0図に示すラ ッチ回路 1 8 , 2 2をィ ネーブル状態とする為に供給される。 アン ドゲー ト 1 0 3の出力はラ ッチ制御信号 0 P 3 I ( S 3 3 ) として第 1 0図に示すラ ッチ回路 2 4をイネ一ブル 状態とする為に供給される。 ビッ トラ ッチ回路 1 0 の保持データ S 4 1 は第 1基本部デコードィネー ブル信号 0 P 1 として第 1 0図に示す 0 P 1デコー ド部 2 8及びァ ドレッ シングデコード部 3 2 Bに供 給される。 ビッ トラ ツチ回路 1 0 5の保持データ S 4 2 は第 2基本部デコ一ドィ ネーブル信号 0 P 2 と して第 1 0図に示す 0 P 2デコ一 ド部 3 0及びァ ド レ ッ シングデコー ド部 3 2 Bに供給される。 ビッ ト ラ ッチ回路 1 0 6 の保持データ S 4 3 は第 3基本部 デコー ドィネーブル信号 0 P 3 として第 1 0図に示 すア ドレッ シングデコー ド部 3 2 Bに供給される。 各デコー ド部はデコー ドィネ一ブル信号 0 P 1〜 0 P 3に応答してデコー ドを開始する。 また、 ビッ ト ラ ッチ回路 1 1 4〜 1 1 6 の保持データ S 4 4 , S 4 5 , S 4 6 はそれぞれ、 拡張部デコー ドイ ネ一ブ ル信号 A D D M、 I MM 2、 I MM 3 となる。 拡張 部デコ一 ドィ ネーブル信号 A D D Mとして拡張部の デコー ド開始を指示する為に第 1 0図の付加モー ド デコード部 3 4に供給される。 S 4 5 , S 4 6 はそ れぞれ 6 4 ビッ ト、 9 6 ビッ トのィ ミーディェ一 ト のデコー ドを指示するデコー ドイ ネ一ブル信号 と して、 ラ ッチ回路 4 4 に保持され、 この保持デ一 タは定数発生部に対して定数発生指示を与える。 デコー ドシーケ ンサの動作を説明する為、 一例と して、 第 8図に示したメ モ リ —メ モ リ間転送命令 M 0 Vのデコー ド時に於ける動作タイ ミ ングを第 1 2 図に示す。 尚、 第 1 2図に於いて第 1 1 図と同一符 号は同一の信号を示す。
前命令の処理終了後、 ク ロ ック信号 3 の立ち上 がりタイ ミ ングで第 1基本部遷移要求信号 S G 1 R E Q ( S 2 1 ) 力 " 1 " となる。 このとき第 2基本 部遷移要求信号 S G 2 R E Q ( S 2 2 ) 、 第 3基本 部遷移要求信号 S G 3 R E Q ( S 2 3 ) 、 拡張部遷 移要求信号 A D D M · R E Q ( S 2 4 ) 、 I MM 2 R E Q ( S 2 5 ) 、 I MM 3 R E Q ( S 2 6 ) 、 ゥ エイ ト要求信号 WA I T ♦ R E Q ( S 2 7 ) 、 付加 モ一ド継続信号 A D D M ' C N ( S 2 8 ) は全て " 0 " である。 従って、 ノアゲー ト 1 1 1 の出力は " 1 " であり、 ラ ッチ制御信号 0 P 1 I ( S 3 1 ) が " 1,' , 0 P 2 I ( S 3 2 ) 及び 0 P 3 I ( S 3 3 ) が " 0 " であるので、 ラ ッチ回路 1 6、 1 8、 2 0、 2 2に命令キューバス 1 2上の対応するデ一 夕が取り込まれる。 次のクロ ック信号 , の立ち上 がりタイ ミ ングで第 1基本部デコードィ ネーブル信 号 0 P 1 ( S 4 1 ) が " 1 " となり、 第 1基本部の デコードが行われる。 このとき、 第 2基本部デコ一 ドイ ネ一ブル信号 O P 2 ( S 4 2 ) 、 第 3基本部デ コードイネ一ブル信号 ( S 4 3 ) は " 0 " であり、 デイ スエーブル状態を指示している。
. 次のクロ ック信号 3 の立ち上がりタイ ミ ングで 第 1基本部遷移要求信号 S G 1 R E Q ( S 2 1 ) が " 0 " , 第 2基本部遷移要求信号 S G 2 R E Q ( S 2 2 ) 及び拡張部遷移要求信号 A D D M · R E Q ( S 2 4 ) が両方とも " 1 " になる。 但し、 ノ アゲ一 ト 1 1 1 の出力は " 0 " であるので、 第 2基本部遷 移要求信号 S G 2 R E Q ( S 2 2 ) はアン ドゲー ト 1 0 2により マスク され、 拡張部遷移要求信号 A D D M . R E Q ( S 2 4 ) が優先される。 従って、 次 のク ロ ッ ク信号 t の立ち上がり タイ ミ ングでは第 2基本部デコー ドイ ネ一ブル信号 0 P 2 ( S 4 2 ) は " 0 " でディ スエーブル状態のままであり、 拡張 部遷移要求信号 A D D M ♦ R E Q ( S 2 4 ) はビッ トラ ツチ回路 4 4 に取り込まれ、 拡張部デコー ドィ ネーブル信号 A D D M ( S 4 4 ) が " 1 " となり、 第 1拡張部 (付加モー ド) がデコー ドされる。
次のク ロ ック信号 3 の立ち上がり タイ ミ ングで 拡張部遷移要求信号 A D D M * R E Q ( S 2 4 ) が " 0 " になる。 この時、 付加モー ド継続信号 A D D M ♦ C N ( S 2 8 ) は " 0 " で後続の拡張部が無い こ とを示しているので付加モー ドステージの終了が 指示される。 付加モー ドステージの終了に応答して ノ アゲー ト 1 1 1が " 1 " になり、 ア ン ドゲー ト 1 0 1〜 1 0 3によるマスクが解除される。 その結果 、 ラ ッチ制御信号 0 P 2 I ( S 3 2 ) 力 " 1 " にな り、 ラ ッチ回路 1 8、 2 2に命令キューバス 1 2上 のデータが取り込まれる。 次のク ロ ック信号 の 立ち上がりタ イ ミ ングで第 2基本部遷移要求信号 S G 2 R E Q ( S 2 2 ) の " 1 " がビッ ト ラ ツチ回路 1 0 5 に取り込まれ、 第 2基本部デコ一ドィ ネーブ ル信号 0 P 2 ( S 4 2 ) 力く " 1 " となり、 第 2基本 部のデコー ドが行われる。 但し、 この時パイ プライ ン制御部からのウェイ ト要求信号 W A I T · P L (
S 0 1 ) が " 1 " となりウェイ ト要求が来ている。 従って、 ノアゲー ト 1 2 2の出力は " 0 " 、 アンド ゲー ト 1 2 3から出力される出力側ラ ッチ面路制御 信号 ( S 0 3 ) はクロ ック信号 Φ 3 の論理値に関わ らず " 0 " に固定され、 次のクロ ック信号 Φ 3 立ち 上がっても第 2基本部のデコード結果はラ ツチ回路 3 8に取り込まれない。 同様にァン ドゲ一 ト 1 1 0 , 1 1 9 もウェイ ト要求に応答して閉じているので、 ビッ トラ ツチ回路 4 2 aへの新たなデータの取込み は行われない。 従って、 デコードシンケンサの状態 は 1サイ クルの間変化がなく、 待ち伏態となる。
次のクロ ック信号 0 の立ち上がりタイ ミ ングで はウェイ ト要求信号 W A I T . P L ( S 0 1 ) 力く " 0 " となり、 待ち状態が解除される。 次のクロ ック 信号 Φ 3 の立ち上がりタイ ミ ングではラ ッチ制御信 号 ( S O 3 ) が " 1 " となるので前のサイ クルでデ コードした第 2基本部のデコー ド結果がラ ツチ回路 3 8に取り込まれる。 このとき、 第 1基本部遷移要 求信号 S G 1 R E Q ( S 2 1 ) 、 ラ ッチ制御信号 0
P 1 I ( S 3·1 ) は " 1 " になり第 2基本部遷移要 求信号 S G 2 R E Q ( S 2 2 ) 、 ラ ッチ制御信号 0
P 2 I ( S 3 2 ) は " 0 " になって M O V E命令の デコード処理が終了する。 次のサイ クルでは続く次 命令のデコード処理が開始される。 第 1 3図は、 本発明の一実施例であるマイ ク ロプロセ ッ サの概略 構成を示すブロ ック図である。 同図のマイ ク ロプロ セ ッ サは、 モノ リ シ ッ ク L S I と して構成され、 パ ィプライ ン制御や命令のデコ一 ド等を行う命令制御 部 8 0、 命令の実行を行う命令実行部 8 1、 内蔵し たキャ ッ シュメ モリ等の制御をするメモリ制御部 8 2 、 L S I チップ外部との情報の授受を制御するバ ス制御部 8 3 とからなる。 命令制御部制御部 8 0 は 命令キュー 6 1、 第 1 1図及び第 1 2図に示した構 成を備えた命令デコーダ 6 2、 デコー ドシーケ ンサ 6 3 、 ノ、'ィプラ イ ン制御部 6 4、 マイ クロコー ドを 格納しマイ ク ロア ドレスに基づいて制御信号を出力 するマイ ク ロプログラ ム R 0 M 6 5、 命令レジスタ 6 6を舎んで構成される。 命令実行部 8 1 は定数発 生部 6 7 、 ア ド レスァダ一及びプログラムカ ウ ンタ を含むア ド レス発生部 6 8 、 レジスタ フ ァ イ ル 7 0 、 演算部 7 0を含んで構成される。 演算部 Ί 0 は A L U 、 ノ レルシフタ、 エ ンコーダ、 B C Dチェ ッ カ等 を具備している。 メ モ リ制御部 8 2 は命令アク セス 制御部 Ί 1 、 オペラ ン ドァク セス制御部 Ί 2を舍ん で構成されている。 命令ア ク セス制御部 7 1 は、 命 令用のキ ヤ シュ メ モ リ 、 T L B、 プロテク シ ョ ンチ ユ ッ ク回路等を具備する。 オペラ ン ドアク セス制御 部 7 2 はオペラ ン ド用のキ ヤ シュメ モ リ 、 T L B 、 プロ テク シ ョ ンチェ ッ ク回路、 ス ト アノ ツ フ ァ等を 具備する。 バス制御部 8 3 は、 L S I チップ外部と のイ ンタフェース機能を有し、 ア ドレスのモニタリ ング回路等を有するァ ドレス制御部 7 3、 ブロ ック ァクセス用の制御信号等を発生するバス監視制御部 7 4、 データ送受部 7 5等を含んで構成される。 尚 、 本発明に係るデコーダ及びデコードシーケンサは 第 1 3図に示した構成のマイ クロプロセッサに限ら ず適用8できることはいうまでもない。 · 〔産業上の利用可能性〕
以上発明したように、 本発明に係るマイ クロプロ セッザによれば、 命令を先頭から順次読み込み後続 の基本部及び拡張部の有無を判別し、 その有無を記 憶回路に一時記憶し、 後続の基本部のデコード開始 要求と拡張部のデコード開始要求が競合した場合に は基本部のデコード開始要求を保持したまま拡張部 のデコ一ドを開始の方を優先させる様に制御するこ とで、 デコードシーケンサの構成を簡素化できる。 また、 デコードシーケンサの簡素化により、 処理速 度の向上が図られ、 且つ集積回路化にも適している,

Claims

請 求 の 範 囲
1. 命令コー ド及びオペラ ン ド指定部を舍む基本部 と、 該オペラ ン ド指定部を拡張する為に該基本部の 指定に応じて付加される拡張部を含む可変長命令を 実行するマイ ク 口プロセ ッ サであ って、
前記基本部をデコー ドするこ とで、 後続の基本 部及び拡張部の有無を判別し、 基本都遷移要求又は 拡張部遷移要求を出力する基本部デコーダと、
前記拡張部をデコー ドするこ とで、 拡張部の継 続の有無を判別し、 拡張部継続要求を出力する拡張 部デコーダと、
前記基本部デコーダ、 拡張部デコーダにデコ一 ドを指示する制御信号を所定のシーケ ンスに従って 発生するデコー ドシーケ ンサ とを具備し、
前記デコー ドシーケ ンサは、 前記基本部遷移要 求に応答して前記基本部デコーダに対する制御信号 を発生する第 1制御回路と、 前記拡張部遷移要求又 は拡張部継続要求に応答して前記拡張部デコーダに 対する制御信号を発生する第 2制御回路と、 前記第 1制御回路と前記第 2制御回路に接続され前記拡張 部遷移要求又は拡張部継続要求があるときには前記 基本部遷移要求に対応する第 1制御回路の動作を保 留させる第 3制御回路とを具備することを特徴とす るマイ ク ロプロ セ ッ サ。
2. 前記マイ クロプロセ ッサは更に、
命令を供給する命令バスと、 前記基本部デコー ダと前記命令バスとの間に接続された第 1入カラ ッ チ回路と、
前記拡張部デコ一ダと前記命令バスとの間に接 続された第 2入力ラ ッチ回路と、
前記基本部デコーダの出力を保持する第 1出力 ラ ッチ回路と、
前記拡張部デコーダと前記命令バスとの間に接 続された第 2出力ラ ッチ回路とを具備し、
前記第 1、 2入力ラ ッチ回路及び第 1、 2出力 ラ ッチ回路の入力取り込み動作が前記デコードシー ケンサにより制御されることを特徴とする請求の範囲 第 1項記載のマイ ク 口プロセッサ。
3. 前記基本部デコーダは、
ォペレ一ショ ンコー ドをデコードするオペレー シヨ ンコードデコード部と、
ァ ドレッ シングモー ドをデコー ドするァ ドレツ シングデコード部と、
後続の基本部又は拡張部の有無を判別する次ス テージ遷移要求デコ一下部とを具備することを特徴 とする請求の範囲第 1項記載のマイクロプロセッサ。
4. 前記オペレーショ ンコードデコード部は、 第 1 基本部のォペレ一ショ ンコー ドをデコー ドする第ォ ペレーシ ョ ンコー ドデコ一ド部と、
第 2基本部のオペレーショ ンコ一ドをデコード する第 2オペレーシ ョ ンコー ドデコー ド部とを具備 することを特徴とする請求の範囲第 3項記載のマイ ク αフ ° 13セ ッ サ„
5. 前記第 1 オペレーシ ョ ンコー ドと第 2 オペレー ショ ンコー ドが同時にデコー ドされることを特徴と する請求の範囲第 4項記載のマイ クロプロセ ッサ。
6. 前記マイ ク ロプロセッサは更に、 前記デコード シーケンサによる制御の下で前記命令中のデータ部 分を取り込む命令レジスタを具備するこ とを特徴と する請求の範囲第 1項記載のマイ ク口プロセ ッサ。
7. 前記第 1制御回路は、 前記基本部遷移要求を保 持する第 1 ラ ッチ回路と、 前記第 1 ラ ッチ回路の出 力を保持して基本部デコー ドィ ネーブル信号として 出力する第 2 ラ ッチ回路と、 前記第 1 ラ ッチ回路と 第 2 ラ ッチ回路との間に接続された第 1 ゲー ト回路 とを具備し、
前記第 2制御回路は、 前記拡張部遷移要求を保 持する第 3 ラ ッチ回路と、 前記第 3 ラ ッチ回路の出 力を保持して拡張部デコー ドィ ネーブル信号として 出力する第 4 ラ ッチ回路と、 前記第 3 ラ ッチ回路の 出力を受け、 前記拡張部遷移要求又前記拡張部綞繞 要求があるときには前記第 1ゲー ト回路を制御して 前記第 1 ラッチ回路の出力が前記第 2 ラッチ回路へ 転送されるのを禁止する第 2ゲー ト回路を具備する ことを特徴とする請求の範囲第 1項記載のマイ ク口 プロセッサ。
8. 前記デコー ドシーケンサは、 ウェイ ト要求に応 じて前記第 1、 第 2出力ラ ッチ回路の状態の変更を 禁止する第 3ゲー ト回路を具備することを特徴とす る請求の範囲第 2項記載のマイ クロプロセッサ。
PCT/JP1990/000034 1989-01-17 1990-01-12 Microprocesseur Ceased WO1990008355A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP90901686A EP0461257B1 (en) 1989-01-17 1990-01-12 Microprocessor sequencer for controlling the decoding of varable length instructions
KR1019900702057A KR930005768B1 (ko) 1989-01-17 1990-01-12 마이크로 프로세서
DE69030573T DE69030573D1 (de) 1989-01-17 1990-01-12 Ablaufsteuerung zur decodierung von befehlen variabler länge für ein mikroprozessor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1/8124 1989-01-17
JP812489 1989-01-17

Publications (1)

Publication Number Publication Date
WO1990008355A1 true WO1990008355A1 (fr) 1990-07-26

Family

ID=11684545

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP1990/000034 Ceased WO1990008355A1 (fr) 1989-01-17 1990-01-12 Microprocesseur

Country Status (5)

Country Link
US (1) US5249273A (ja)
EP (1) EP0461257B1 (ja)
KR (1) KR930005768B1 (ja)
DE (1) DE69030573D1 (ja)
WO (1) WO1990008355A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04156613A (ja) * 1990-10-20 1992-05-29 Fujitsu Ltd 命令バッファ装置
JP2646855B2 (ja) * 1991-01-21 1997-08-27 三菱電機株式会社 データ処理装置
EP0498654B1 (en) * 1991-02-08 2000-05-10 Fujitsu Limited Cache memory processing instruction data and data processor including the same
US5438668A (en) * 1992-03-31 1995-08-01 Seiko Epson Corporation System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer
US6735685B1 (en) 1992-09-29 2004-05-11 Seiko Epson Corporation System and method for handling load and/or store operations in a superscalar microprocessor
DE69329778T2 (de) 1992-09-29 2001-04-26 Seiko Epson Corp., Tokio/Tokyo System und verfahren zur handhabung von laden und/oder speichern in einem superskalar mikroprozessor
US5848289A (en) * 1992-11-27 1998-12-08 Motorola, Inc. Extensible central processing unit
US5590368A (en) * 1993-03-31 1996-12-31 Intel Corporation Method and apparatus for dynamically expanding the pipeline of a microprocessor
GB9412434D0 (en) * 1994-06-21 1994-08-10 Inmos Ltd Computer instruction compression
US5625784A (en) * 1994-07-27 1997-04-29 Chromatic Research, Inc. Variable length instructions packed in a fixed length double instruction
US5590358A (en) * 1994-09-16 1996-12-31 Philips Electronics North America Corporation Processor with word-aligned branch target in a byte-oriented instruction set
US5758116A (en) * 1994-09-30 1998-05-26 Intel Corporation Instruction length decoder for generating output length indicia to identity boundaries between variable length instructions
US5999742A (en) * 1995-01-26 1999-12-07 Zilog, Inc. Dual latch data transfer pacing logic using a timer to maintain a data transfer interval
US5966514A (en) * 1995-05-31 1999-10-12 Matsushita Electric Industrial Co., Ltd. Microprocessor for supporting reduction of program codes in size
US5896519A (en) * 1996-06-10 1999-04-20 Lsi Logic Corporation Apparatus for detecting instructions from a variable-length compressed instruction set having extended and non-extended instructions
US6085313A (en) * 1998-04-30 2000-07-04 International Business Machines Corporation Computer processor system for executing RXE format floating point instructions
US6237101B1 (en) 1998-08-03 2001-05-22 International Business Machines Corporation Microprocessor including controller for reduced power consumption and method therefor
KR100322277B1 (ko) * 1998-11-20 2002-03-08 권 기 홍 확장 명령어를 가진 중앙처리장치
KR100308211B1 (ko) 1999-03-27 2001-10-29 윤종용 압축 명령을 갖는 마이크로 컴퓨터 시스템
US6570334B2 (en) 2000-06-01 2003-05-27 Everbrite, Inc. Gas-discharge lamp including a fault protection circuit
US6633969B1 (en) 2000-08-11 2003-10-14 Lsi Logic Corporation Instruction translation system and method achieving single-cycle translation of variable-length MIPS16 instructions
US9013498B1 (en) * 2008-12-19 2015-04-21 Nvidia Corporation Determining a working set of texture maps

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57161943A (en) * 1981-03-31 1982-10-05 Hitachi Ltd Data processing device
JPH10237837A (ja) * 1997-02-28 1998-09-08 Sky Alum Co Ltd プラットホームの融雪床

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL149925C (ja) * 1968-10-25 1976-06-15
FR2407520B1 (fr) * 1977-10-25 1989-05-12 Digital Equipment Corp Unite de traitement centrale pour l'execution d'instructions avec un specificateur d'operande special
US4188669A (en) * 1978-01-13 1980-02-12 Ncr Corporation Decoder for variable-length codes
US4240142A (en) * 1978-12-29 1980-12-16 Bell Telephone Laboratories, Incorporated Data processing apparatus providing autoincrementing of memory pointer registers
US4258419A (en) * 1978-12-29 1981-03-24 Bell Telephone Laboratories, Incorporated Data processing apparatus providing variable operand width operation
US4293907A (en) * 1978-12-29 1981-10-06 Bell Telephone Laboratories, Incorporated Data processing apparatus having op-code extension register
CA1174370A (en) * 1980-05-19 1984-09-11 Hidekazu Matsumoto Data processing unit with pipelined operands
US4530050A (en) * 1981-08-26 1985-07-16 Hitachi, Ltd. Central processing unit for executing instructions of variable length having end information for operand specifiers
US4724517A (en) * 1982-11-26 1988-02-09 Inmos Limited Microcomputer with prefixing functions
EP0186668A1 (en) * 1984-06-27 1986-07-09 Motorola, Inc. Three word instruction pipeline
US4785393A (en) * 1984-07-09 1988-11-15 Advanced Micro Devices, Inc. 32-Bit extended function arithmetic-logic unit on a single chip
JP2554050B2 (ja) * 1986-02-26 1996-11-13 株式会社日立製作所 デ−タ処理方法
JPH0766324B2 (ja) * 1988-03-18 1995-07-19 三菱電機株式会社 データ処理装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57161943A (en) * 1981-03-31 1982-10-05 Hitachi Ltd Data processing device
JPH10237837A (ja) * 1997-02-28 1998-09-08 Sky Alum Co Ltd プラットホームの融雪床

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP0461257A4 *

Also Published As

Publication number Publication date
EP0461257B1 (en) 1997-04-23
DE69030573D1 (de) 1997-05-28
EP0461257A1 (en) 1991-12-18
US5249273A (en) 1993-09-28
EP0461257A4 (en) 1991-05-15
KR930005768B1 (ko) 1993-06-24
KR910700497A (ko) 1991-03-15

Similar Documents

Publication Publication Date Title
WO1990008355A1 (fr) Microprocesseur
JP5222941B2 (ja) コンパクト命令セットの符号化
JP2616182B2 (ja) データ処理装置
US6405302B1 (en) Microcomputer
US6327647B1 (en) Method and apparatus for interfacing a processor to a coprocessor
US5465376A (en) Microprocessor, coprocessor and data processing system using them
JP2554050B2 (ja) デ−タ処理方法
JP2001195250A (ja) 命令トランスレータ、トランスレータ付命令メモリおよびそれらを用いたデータ処理装置
JPH0926878A (ja) データ処理装置
JPH0827716B2 (ja) データ処理装置及びデータ処理方法
US4945511A (en) Improved pipelined processor with two stage decoder for exchanging register values for similar operand instructions
JP2001142692A (ja) 2つの異なる固定長命令セットを実行するマイクロプロセッサ、マイクロコンピュータおよび命令実行方法
JPH0338725A (ja) データ処理装置及びマイクロプロセッサ
CN111352658A (zh) 用于在从存储器加载时在进行中转置向量的系统和方法
JP3789583B2 (ja) データ処理装置
JP2556182B2 (ja) デ−タ処理装置
US6925548B2 (en) Data processor assigning the same operation code to multiple operations
JP2504312B2 (ja) プライオリティエンコ―ダ及びそれを備えたデ―タ処理装置
JP2513884B2 (ja) マイクロプロセッサ
GB2366426A (en) Multi-processor system with registers having a common address map
JP2003005954A (ja) データ処理装置およびその制御方法
JP2522048B2 (ja) マイクロプロセッサ及びそれを使用したデ―タ処理装置
JPH04199331A (ja) マイクロコンピュータ
JP2004152049A (ja) データ処理装置
JP3003292B2 (ja) データ・アライン装置

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): KR US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FR GB IT LU NL SE

WWE Wipo information: entry into national phase

Ref document number: 1990901686

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 1990901686

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 1990901686

Country of ref document: EP