JPH0546383A - Data processor - Google Patents

Data processor

Info

Publication number
JPH0546383A
JPH0546383A JP3209112A JP20911291A JPH0546383A JP H0546383 A JPH0546383 A JP H0546383A JP 3209112 A JP3209112 A JP 3209112A JP 20911291 A JP20911291 A JP 20911291A JP H0546383 A JPH0546383 A JP H0546383A
Authority
JP
Japan
Prior art keywords
instruction
register
data
code
registers
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.)
Granted
Application number
JP3209112A
Other languages
Japanese (ja)
Other versions
JP2970821B2 (en
Inventor
Toshimichi Matsuzaki
敏道 松崎
Masashi Deguchi
雅士 出口
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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
Priority to JP3209112A priority Critical patent/JP2970821B2/en
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to EP92307632A priority patent/EP0528695B1/en
Priority to DE69231237T priority patent/DE69231237T2/en
Priority to EP99124499A priority patent/EP0989485B1/en
Priority to EP99124426A priority patent/EP0984358B1/en
Priority to DE69233561T priority patent/DE69233561T2/en
Priority to DE69233681T priority patent/DE69233681T2/en
Priority to US07/932,652 priority patent/US5440701A/en
Priority to DE69233282T priority patent/DE69233282T2/en
Priority to EP02078385A priority patent/EP1271305B1/en
Publication of JPH0546383A publication Critical patent/JPH0546383A/en
Application granted granted Critical
Publication of JP2970821B2 publication Critical patent/JP2970821B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/3013Organisation of register space, e.g. banked or distributed register file according to data content, e.g. floating-point registers, address registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/30134Register stacks; shift registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3016Decoding the operand specifier, e.g. specifier format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3017Runtime instruction translation, e.g. macros
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30181Instruction operation extension or modification

Abstract

PURPOSE:To provide the data processor which can suppress a program size small by constituting the processor so that many kinds of operations can be executed by short instruction word length. CONSTITUTION:This processor is constituted so that a register designation code coincidence detecting part 13 detects whether two register designation codes contained in an instruction held by an instruction register 12 coincide with each other or not, an instruction decoder 14 executes decoding of an instruction, and in accordance with a results of the detection, in the case two register designation codes are different from each other, a computing element 16 is allowed to calculate to calculate data of two registers designated by each register designation code, and on the other hand, in the case the designation codes are equal to each other, the data of the designated register and an immediate value outputted from an instruction buffer 11 are calculated. Accordingly, since two kinds of processings can be executed with respect to the same operation code, many kinds of operations can be executed by short instruction word length.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、CPUやマイクロプロ
セッサなどと称されるデータ処理装置に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device called a CPU or a microprocessor.

【0002】[0002]

【従来の技術】従来のデータ処理装置には、演算命令の
演算対象として、データを格納するメモリだけを用いる
ように構成されたものがある。この種のデータ処理装置
では、演算内容を示すオペレーションコード、および演
算対象となるメモリを示すための2つのオペランドアド
レス(すなわち、例えばソースオペランドアドレスとデ
ィスティネーションオペランドアドレス)から成るイン
ストラクションに基づいて、所定の演算が行われるよう
になっている。
2. Description of the Related Art Some conventional data processing devices are configured to use only a memory for storing data as an operation target of an operation instruction. In this type of data processing device, a predetermined operation code indicating an operation content and an instruction consisting of two operand addresses (that is, a source operand address and a destination operand address) for indicating a memory to be operated is predetermined. Is calculated.

【0003】また、アキュムレータと称されるレジス
タ、およびその他のレジスタを備え、主な演算の対象と
して上記アキュムレータが含まれるように構成されたデ
ータ処理装置も用いられている。この種のデータ処理装
置では、演算内容を示すオペレーションコード、および
アキュムレータ以外の演算対象となるレジスタを示す1
つのレジスタ指定コードから成るインストラクションに
基づいて、所定の演算が行われるようになっている。
Further, there is also used a data processing device which is provided with a register called an accumulator and other registers, and is configured so that the accumulator is included as a main operation target. In this type of data processing device, an operation code indicating the contents of the operation and a register 1 other than the accumulator, which is the operation target, are indicated.
A predetermined operation is performed based on an instruction consisting of one register designation code.

【0004】また、任意の組み合わせで演算対象となり
得る汎用レジスタを備え、演算内容を示すオペレーショ
ンコード、および演算対象となるレジスタを示す2つの
レジスタ指定コードから成るインストラクションに基づ
いて、所定の演算を行うように構成されたものも用いら
れている。
Further, a general-purpose register which can be an operation target in an arbitrary combination is provided, and a predetermined operation is performed based on an operation code indicating an operation content and an instruction consisting of two register designating codes indicating a target operation target. The one configured as described above is also used.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、上記メ
モリだけを演算対象として用いるデータ処理装置では、
インストラクションが2つのオペランドアドレスの設定
されるオペランドフィールドを必要とするため、命令語
長が長く、したがってプログラムサイズが大きくなりが
ちである。
However, in the data processing device that uses only the above memory as an operation target,
Since the instruction requires an operand field in which two operand addresses are set, the instruction word length is long and therefore the program size tends to be large.

【0006】また、アキュムレータを備えたデータ処理
装置では、インストラクションが、オペランドアドレス
よりもビット長の短い1つのレジスタ指定コードが設定
されるレジスタフィールドしか必要としないので、命令
語長は短いものの、主な演算はアキュムレータを対象と
して行われるために、アキュムレータと他のレジスタま
たはメモリとの間の転送を頻繁に行う必要があり、命令
数が多くなってやはりプログラムサイズが大きくなりが
ちであるうえ、処理速度も低下しがちである。
Further, in the data processing device equipped with the accumulator, the instruction requires only a register field in which one register designation code having a bit length shorter than the operand address is set, so that the instruction word length is short, Since many operations are performed on the accumulator, it is necessary to frequently transfer data between the accumulator and other registers or memory, and the number of instructions increases and the program size also tends to increase. It also tends to slow down.

【0007】一方、汎用レジスタを備えたデータ処理装
置では、汎用レジスタを任意の組み合わせで演算対象と
することができるので命令数を比較的小さく抑えること
ができ、また、オペランドアドレスよりもビット長の短
いレジスタ指定コードを用いるため、命令語長も比較的
短い。しかしながら、このようなデータ処理装置でも、
以下に示すように、短い命令語長で、しかも多くの種類
の演算を行えるようにして命令数を少なく抑え得るよう
に構成することは困難であるという問題点を有してい
る。
On the other hand, in a data processing device having a general-purpose register, since the general-purpose registers can be operated in any combination, the number of instructions can be kept relatively small, and the bit length is shorter than the operand address. Since a short register designation code is used, the instruction word length is also relatively short. However, even with such a data processing device,
As described below, there is a problem that it is difficult to configure so that the number of instructions can be suppressed to be small with a short instruction word length and capable of performing many kinds of operations.

【0008】すなわち、例えば8本の汎用レジスタが備
えられている場合、1つのレジスタを特定するためのレ
ジスタ指定コードのビット長は3ビットとなり、インス
トラクションは合計6ビットのレジスタフィールドを必
要とする。この場合、例えば命令語長を8ビットにする
ことは、インストラクションが最大でも4種類しか用い
られないことになるので実用的ではなく、実際上は命令
語長を16ビットにする必要がある。したがって、命令
語長を短くするとともに、多くの種類の演算を行えるよ
うにすることは困難である。
That is, for example, when eight general-purpose registers are provided, the bit length of the register designating code for specifying one register is 3 bits, and the instruction requires a register field of 6 bits in total. In this case, for example, setting the instruction word length to 8 bits is not practical because only four types of instructions are used at the maximum, and in practice it is necessary to set the instruction word length to 16 bits. Therefore, it is difficult to shorten the instruction word length and enable many kinds of operations.

【0009】本発明は上記の点に鑑み、短い命令語長で
多くの種類の演算を実行させ得るようにして、プログラ
ムサイズを小さく抑えることができるデータ処理装置の
提供を目的としている。
In view of the above points, the present invention has as its object the provision of a data processing apparatus capable of executing many kinds of operations with a short instruction word length and suppressing the program size small.

【0010】[0010]

【課題を解決するための手段】上記目的を達成するた
め、本発明は、オペレーションコードと、2つのレジス
タ指定コードとから成るインストラクションに基づいて
データ処理を行うように構成されたデータ処理装置であ
って、前記2つのレジスタ指定コードが互いに異なる場
合と同一である場合とで、異なる処理を行わせるインス
トラクション実行制御部を備えたことを特徴としてい
る。
To achieve the above object, the present invention is a data processing apparatus configured to perform data processing based on an instruction consisting of an operation code and two register specifying codes. In addition, an instruction execution control unit that performs different processing depending on whether the two register designation codes are the same or different is provided.

【0011】[0011]

【作用】上記の構成により、インストラクション実行制
御部の制御によって、2つのレジスタ指定コードが互い
に異なる場合と同一である場合とで異なる処理が行われ
る。
With the above structure, different processing is performed under the control of the instruction execution control unit depending on whether the two register designation codes are different or the same.

【0012】[0012]

【実施例】以下、本発明の一実施例を図1ないし図5に
基づいて説明する。図1はデータ処理装置の要部の構成
を示すブロック図である。同図において、命令バッファ
11は、図示しないメモリから読み出される命令(イン
ストラクション)を一時的に蓄えるものである。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to FIGS. FIG. 1 is a block diagram showing a configuration of a main part of a data processing device. In the figure, an instruction buffer 11 temporarily stores an instruction (instruction) read from a memory (not shown).

【0013】命令レジスタ12は、上記命令バッファ1
1に蓄えられた命令を、さらに命令の解読、または実行
が完了するまでの間保持するものである。レジスタ指定
コード一致検出部13は、命令に2つのレジスタ指定コ
ードが含まれている場合に、両者が等しいかどうかを検
出するものである。命令解読器14は、上記命令レジス
タ12に保持された命令の解読を行って、データ処理装
置各部の動作を制御する制御信号を出力するものであ
る。ここで、命令解読器14は、命令に含まれるオペレ
ーションコードが所定のオペレーションコードである場
合には、後述するように上記レジスタ指定コード一致検
出部の検出結果に応じて、レジスタ指定コードが一致す
る場合と一致しない場合とで異なる制御を行うようにな
っている。
The instruction register 12 is the instruction buffer 1 described above.
The instruction stored in 1 is retained until the instruction is decoded or executed. When the instruction includes two register designation codes, the register designation code match detection unit 13 detects whether the two are equal. The instruction decoder 14 decodes the instruction held in the instruction register 12 and outputs a control signal for controlling the operation of each part of the data processing device. Here, when the operation code included in the instruction is a predetermined operation code, the instruction decoder 14 matches the register designation code according to the detection result of the register designation code match detection unit as described later. Different controls are performed depending on whether or not the case is matched.

【0014】レジスタアレイ15は、図2に示すよう
に、それぞれ16ビット長のデータレジスタD0〜D3
から成るデータレジスタ組、アドレスレジスタA0〜A
3から成るアドレスレジスタ組、実行中の命令の格納ア
ドレスを保持するプログラムカウンタPC、およびデー
タ処理装置の状態を示す状態レジスタPSW(processo
r status word )が設けられて構成されている。
As shown in FIG. 2, the register array 15 has data registers D0 to D3 each having a 16-bit length.
Data register group consisting of, address registers A0-A
3, an address register group consisting of 3, a program counter PC for holding the storage address of the instruction being executed, and a status register PSW (processo) indicating the status of the data processor.
r status word).

【0015】上記データレジスタD0〜D3、およびア
ドレスレジスタA0〜A3は、それぞれデータまたはア
ドレスを保持し、後述する演算器16の演算に用いられ
るようになっている。より具体的には、例えば、データ
レジスタD0〜D3は主として演算における作業用とし
て用いられる一方、アドレスレジスタA0〜A3は、そ
れぞれ、ソースオペランド用、ディスティネーションオ
ペランド用、フレームポインタ用、またはスタックポイ
ンタ用として用いられる。
The data registers D0 to D3 and the address registers A0 to A3 hold data or addresses, respectively, and are used in the arithmetic operation of the arithmetic unit 16 described later. More specifically, for example, the data registers D0 to D3 are mainly used for work in operations, while the address registers A0 to A3 are for source operands, destination operands, frame pointers, or stack pointers, respectively. Used as.

【0016】各データレジスタD0〜D3、およびアド
レスレジスタA0〜A3は、命令コード中で、00〜1
1(2進数表記)のレジスタ指定コードによって指定さ
れるようになっている。また、上記状態レジスタPSW
は、より詳しくは例えば図3に示すように、デバッグモ
ードで動作中にプログラムのシングルステップ実行を指
定するトレースフラグTと、16レベルの割り込みマス
クを指定する割り込みマスクフラグIM3〜IM0と、
演算の結果を反映するオーバフローフラグV、キャリフ
ラグC、ネガティブフラグN、およびゼロフラグZから
成っている。
Each of the data registers D0 to D3 and the address registers A0 to A3 has an instruction code of 0-1.
It is designated by a register designation code of 1 (binary notation). In addition, the status register PSW
More specifically, for example, as shown in FIG. 3, a trace flag T that specifies single step execution of a program while operating in a debug mode, interrupt mask flags IM3 to IM0 that specify a 16-level interrupt mask,
It is composed of an overflow flag V, a carry flag C, a negative flag N, and a zero flag Z that reflect the result of the operation.

【0017】演算器16は、レジスタアレイ15から出
力されるデータやアドレス、命令バッファ11から出力
される即値、および図示しないメモリから読み出された
データ等が内部データバス17を介して入力され、命令
解読器14からの制御信号に従って算術演算や、論理演
算、転送等の所定の演算を行うものである。演算器16
の演算結果は、内部データバス17を介してレジスタア
レイ15やメモリに送られ、命令に応じた所定のレジス
タ等に保持されるようになっている。
The arithmetic unit 16 is supplied with data and addresses output from the register array 15, immediate values output from the instruction buffer 11 and data read from a memory (not shown) via the internal data bus 17. According to the control signal from the instruction decoder 14, the arithmetic operation, the logical operation, the predetermined operation such as the transfer are performed. Calculator 16
The calculation result of is sent to the register array 15 and the memory via the internal data bus 17 and held in a predetermined register or the like according to the instruction.

【0018】なお、データ処理装置には、上記の他にも
図示しないデータ処理装置外部のデータバスに接続され
るデータバスインタフェイスや、アドレスバスに接続さ
れるアドレスバスインタフェイスなどが設けられている
が、本発明には直接関係しないので、その説明を省略す
る。次に、上記データ処理装置に適用される命令コード
の構造、およびオペレーションコードの割り当ての例を
図4および図5に基づいて説明する。ここで、命令体系
としては、装置の構成を簡素化し得るとともに処理の高
速化が容易なロードストアの命令体系、すなわち各レジ
スタとメモリとの間ではデータ転送だけが可能な命令体
系が適用される場合の例を示す。
In addition to the above, the data processing device is provided with a data bus interface connected to a data bus outside the data processing device (not shown), an address bus interface connected to an address bus, and the like. Although it is not directly related to the present invention, its description is omitted. Next, an example of an instruction code structure and an operation code assignment applied to the data processing apparatus will be described with reference to FIGS. 4 and 5. Here, as the instruction system, a load / store instruction system that can simplify the configuration of the device and facilitates high-speed processing, that is, an instruction system that can only transfer data between each register and the memory is applied. An example of the case is shown.

【0019】図4は命令コードの構造の例を示すもの
で、(a)は、4ビットのオペレーションコードと、そ
れぞれ2ビットの2つのレジスタ指定コード(D.およ
びD.’、またはD.およびA.)とから成る構造を示
す。 (b)は、(a)と同様のオペレーションコードおよび
レジスタ指定コードに加えて、8ビットの即値(imm
8)、アドレスのディスプレースメント(d8)、また
は8ビットの絶対アドレス(abs8)から成る構造を
示す。
FIG. 4 shows an example of the structure of the instruction code. (A) shows a 4-bit operation code and two 2-bit register designation codes (D. and D. ', or D. and D. A.) is shown. In addition to the operation code and the register designation code similar to those in (a), (b) includes an 8-bit immediate value (imm
8), address displacement (d8), or 8-bit absolute address (abs8).

【0020】(c)は、6ビットのオペレーションコー
ドと、1つの2ビットのレジスタ指定コード(D.)か
ら成る構造を示す。 (d)は、8ビットのオペレーションコード、および8
ビット×1〜3の拡張命令や即値、アドレス指定のディ
スプレースメント等の付加部から成る構造を示す。
(C) shows a structure composed of a 6-bit operation code and one 2-bit register designation code (D.). (D) is an 8-bit operation code and 8
1 shows a structure including an extension instruction of bits × 1 to 3 and an additional portion such as an immediate value and a displacement for addressing.

【0021】図5は命令コードの割り当ての例を示すも
ので、左から順に、命令コード、命令コードの構造(図
4に示した(a)〜(d)の何れであるか)、命令タイ
プ、および演算の内容が対応付けて表わされている。こ
こで図5において、「***」および「**」は、その
3ビットまたは2ビットの値に応じて、演算内容の欄に
示す何れかの演算が行われることを示すものである。
FIG. 5 shows an example of instruction code allocation. In order from the left, the instruction code, the structure of the instruction code (which is (a) to (d) shown in FIG. 4), and the instruction type. , And the content of the calculation are associated with each other. Here, in FIG. 5, "***" and "***" indicate that any of the operations shown in the operation content column is performed according to the value of 3 bits or 2 bits.

【0022】以下、各命令コードについて命令タイプご
とに説明する。命令タイプ[R−R]は、2つのデータ
レジスタ間の2項演算命令で、命令コード「0***
D.D.’」(ただし、D.≠D.’)で表わされ、3
ビットの「***」の値に応じて、(1)データレジス
タ指定コードD.’で示されるデータレジスタ(以下、
単にデータレジスタD.’等と称する。)から、データ
レジスタD.へのデータ転送、(2)両データレジスタ
に保持されているデータのキャリ無し加算、(3)同、
ボロー無し減算、(4)同、比較、(5)同、キャリ付
き加算、(6)同、ボロー付き減算、(7)同、論理
積、(8)同、論理和 の8種類の演算命令であることを示している。なお、上
記各演算についての演算結果は、データレジスタD.に
格納される。
Each instruction code will be described below for each instruction type. The instruction type [RR] is a binary operation instruction between two data registers, and the instruction code is “0 ***”.
D. D. “” (However, D. ≠ D. '), And 3
Depending on the value of "***" of the bit, (1) data register designation code D. Data register indicated by '(
Data register D. It is called'etc. ) From the data register D. Data transfer to (2) addition without carry of data held in both data registers, (3) same as
Eight types of operation instructions: subtraction without borrow, (4) same, comparison, (5) same, addition with carry, (6) same, subtract with borrow, (7) same, logical product, (8) same, logical sum Is shown. In addition, the calculation result of each of the above-mentioned calculations is shown in the data register D. Stored in.

【0023】命令タイプ[R−imm8]は、上記命令
タイプ[R−R]の命令とは、2つのレジスタ指定コー
ドが互いに等しい(D.=D.’)ことによって区別さ
れ、命令タイプ[R−R]と同様の2項演算が、データ
レジスタD.のデータと、命令コードの「0***D.
D.’」に続く8ビットの即値(imm8)とについて
行われることを示す。ここで、8ビットの即値が演算に
用いられる場合でも、演算器16には16ビットのデー
タが入力されるが、その上位8ビットは演算の種類に応
じて0拡張(例えば論理演算の場合)や、符号拡張(例
えば算術演算の場合)などが行われるようになってい
る。
The instruction type [R-imm8] is distinguished from the instruction of the instruction type [R-R] by the fact that the two register designation codes are equal (D. = D. '), And the instruction type [R-imm8] is Binary operation similar to that of data register D. Data and the instruction code “0 *** D.
D. It is shown that an 8-bit immediate value (imm8) following "" is performed. Here, even when an 8-bit immediate value is used for the operation, 16-bit data is input to the operator 16, but the upper 8 bits thereof are extended by 0 according to the type of operation (for example, in the case of logical operation). Also, sign extension (for example, in the case of arithmetic operation) is performed.

【0024】命令タイプ[LD]、[ST]は、それぞ
れ、メモリからデータレジスタD.へのデータ転送命令
(load)、またはその逆のデータ転送命令(store )を
示し、メモリにおける転送元または転送先のアドレスは
4種類のアドレッシングモードで示されるようになって
いる。ここで、図5の演算内容の欄における記号「@」
は、これに続く値をアドレスとする領域がデータの転送
元または転送先であることを示し、また、記
号「(,)」は、「,」の両側の値の和を示す。
The instruction types [LD] and [ST] are stored in the memory register D.D. Data transfer instruction (load) to the memory, or the reverse data transfer instruction (store), and the address of the transfer source or the transfer destination in the memory is indicated by four types of addressing modes. Here, the symbol “@” in the calculation content column of FIG.
Indicates that the area having a value following this as an address is a data transfer source or a transfer destination, and the symbol “(,)” indicates the sum of the values on both sides of “,”.

【0025】すなわち、各転送命令のアドレッシングモ
ードは、データの転送元または転送先が、(1)「@
A.」である場合には、アドレスレジスタ間接アドレッ
シング、(2)同、「@(A.,d8)」である場合に
は、命令コードの「1001D.A.」または「110
1D.A.」に続く8ビットのディスプレースメントd
8を用いる8ビットディスプレースメント付きアドレス
レジスタ間接アドレッシング、(3)同、「@(A.,
D0)」である場合には、アドレスレジスタA.(ただ
しA.≠11)とデータレジスタD0(D0に固定)と
を用いるインデックスアドレッシング、(4)同、「@
abs8」である場合には、命令コードに続く8ビット
の絶対アドレスabs8を用いる8ビット絶対アドレッ
シング、であることを表わしている。
That is, in the addressing mode of each transfer instruction, the data transfer source or transfer destination is (1) "@
A. Address register indirect addressing, (2) same as above, and if it is “@ (A., D8)”, the instruction code is “1001D.A.” Or “110”.
1D. A. 8-bit displacement d
Address register indirect addressing with 8-bit displacement using 8 (3) Same as “@ (A.,
D0) ”, the address register A.D. (However, A. ≠ 11) and the index register using the data register D0 (fixed to D0), (4) Same as “@
If it is "abs8", it means that it is 8-bit absolute addressing using an 8-bit absolute address abs8 following the instruction code.

【0026】なお、上記(3)のインデックスアドレッ
シングにおいては、アドレスレジスタをA0〜A2に限
定し、A3を除外しているが、これは、この種のアドレ
ッシングは一般にストリング列や配列などのデータを転
送する際に用いられ、そのようなデータは、通常、メモ
リのスタック領域を対象として転送されることが少な
く、それゆえ、前述のようにアドレスレジスタA3がス
タックポインタ用として用いられる場合に、これをイン
デックスアドレッシングに用いることは希であるからで
ある。
In the above-mentioned (3) index addressing, the address register is limited to A0 to A2 and A3 is excluded, but this kind of addressing generally uses data such as string strings and arrays. Such data, which is used in the transfer, is usually transferred to the stack area of the memory, and therefore, when the address register A3 is used for the stack pointer as described above, Is rarely used for index addressing.

【0027】そして、上記(4)の8ビット絶対アドレ
ッシングでは、インデックスアドレッシングで除外され
たアドレスレジスタA3を示すレジスタ指定コードA.
=11をダミーとして用い、転送元または転送先のデー
タレジスタをD0に限定した命令コードを割り当ててい
る。ここで、8ビット絶対アドレッシングでデータ転送
が行われる場合、データ処理装置からは、16ビットの
アドレスのうちの上位8ビットとして、例えば「000
00000」など、あらかじめ設定された値が出力され
るようになっている。
In the 8-bit absolute addressing of (4) above, the register designation code A.A indicating the address register A3 excluded by the index addressing.
= 11 is used as a dummy, and an instruction code that limits the data register of the transfer source or the transfer destination to D0 is assigned. Here, when data transfer is performed by 8-bit absolute addressing, from the data processing device, for example, “000” is set as the upper 8 bits of the 16-bit address.
A preset value such as "00000" is output.

【0028】命令タイプ[R]は、1つのデータレジス
タを対象とする単項演算命令で、命令コード「1011
**D.」、または「1111**D.」で表わされ、
2ビットの「**」の値に応じて、算術シフト命令
(右、左)、回転命令(右、左)、論理反転命令、値1
の加減算命令、またはプログラム割り込み命令の8種類
の演算命令であることを示している。
The instruction type [R] is a unary operation instruction for one data register, and the instruction code "1011".
** D. , Or “1111 ** D.”,
Arithmetic shift instruction (right, left), rotation instruction (right, left), logical inversion instruction, value 1 according to the value of 2-bit "**"
It is shown that there are eight types of operation instructions, that is, the add / subtract instruction of 1 or the program interrupt instruction.

【0029】また、以上の説明で演算の割り当てられて
いない命令コードは、上位ビットが「1010」または
「1110」であるものが各3つずつあるが、これらの
命令コードは、アドレスレジスタA0〜A3へのアドレ
ス転送等、図示しない他の命令の割り当てや、16ビッ
ト以上の命令コードに拡張するためなどに用いられる。
すなわち、使用頻度が少なく、プログラムサイズに与え
る影響が小さい命令などは、このように拡張命令コード
として設定すればよい。なお、このような命令コードの
拡張については、本発明とは直接関係しないので詳細な
説明を省略する。
Further, in the above description, there are three instruction codes to which no operation is assigned, each of which has a high-order bit of "1010" or "1110". These instruction codes are assigned to the address registers A0 to A0. It is used for allocating other instructions (not shown) such as address transfer to A3 and for expanding to an instruction code of 16 bits or more.
That is, an instruction or the like that is used less frequently and has a smaller influence on the program size may be set as the extended instruction code in this way. Note that such an extension of the instruction code is not directly related to the present invention, so a detailed description thereof will be omitted.

【0030】上記のように構成されたデータ処理装置に
最上位ビットが0である命令コード、例えば「0111
0001」が入力されると、レジスタ指定コード一致検
出部13は下位2ビットの値とこれよりも上位の2ビッ
トの値と、すなわち2つのレジスタ指定コードD.(=
00)と、D.’(=01)とを比較し、一致していな
いことを示す信号を命令解読器14に出力する。
An instruction code whose most significant bit is 0, for example, "0111", is applied to the data processing apparatus configured as described above.
0001 ”is input, the register designation code match detection unit 13 determines that the value of the lower 2 bits and the value of the upper 2 bits, that is, the two register designation codes D. (=
00), and D. '(= 01) is compared, and a signal indicating that they do not match is output to the instruction decoder 14.

【0031】そこで、命令解読器14はデータレジスタ
D0、D1に制御信号を出力し、これらのデータレジス
タD0、D1に保持されているデータを内部データバス
17を介して演算器16に出力させる。命令解読器14
は、また、命令コードの上位2ビットめから4ビットめ
の値「111」に基づいて論理和演算を行わせるための
制御信号を演算器16に出力し、演算器16はデータレ
ジスタD0、D1から出力されたデータの論理和演算を
行う。演算結果は内部データバス17を介してデータレ
ジスタD0に格納される。
Therefore, the instruction decoder 14 outputs a control signal to the data registers D0 and D1 and causes the data held in these data registers D0 and D1 to be output to the arithmetic unit 16 via the internal data bus 17. Instruction decoder 14
Outputs to the arithmetic unit 16 a control signal for performing a logical sum operation based on the value "111" of the second to fourth bits of the instruction code, and the arithmetic unit 16 outputs the data registers D0 and D1. The logical sum operation of the data output from is performed. The calculation result is stored in the data register D0 via the internal data bus 17.

【0032】一方、データ処理装置に「0111000
0」およびこれに続く8ビットの即値が入力されると、
レジスタ指定コード一致検出部13はD.=D.’=0
0であることを検出する。そこで、命令解読器14の制
御により、データレジスタD0に保持されているデー
タ、および命令バッファ11に蓄積されている8ビット
の即値が内部データバス17を介して演算器16に入力
され、論理和演算が行われて演算結果がデータレジスタ
D0に格納される。
On the other hand, the data processing device is set to "0111000".
When "0" and the subsequent 8-bit immediate value are input,
The register designation code match detection unit 13 is a D.D. = D. '= 0
It is detected that it is zero. Therefore, under the control of the instruction decoder 14, the data held in the data register D0 and the 8-bit immediate value stored in the instruction buffer 11 are input to the arithmetic unit 16 via the internal data bus 17, and the logical sum is obtained. The calculation is performed and the calculation result is stored in the data register D0.

【0033】すなわち、従来のデータ処理装置のよう
に、2つのレジスタ指定コードが互いに等しい場合でも
等しくない場合と同じ演算を行わせるとすると、例えば
データレジスタD0のデータどうしの論理和演算は実際
には何もしていないことになる。これに対し、本実施例
のデータ処理装置では、このような場合に異なる演算を
行わせるようにすることにより、図5に「***」で表
わされる3ビットのフィールドで16種類の命令を割り
当てることができ、したがって、基本命令語長が8ビッ
トであっても多くの種類の演算を実行させることが可能
になっている。なお、例えば、減算命令についてはレジ
スタ指定コードが等しい場合でも減算を実行させるよう
にしてレジスタのクリア命令として用いられるようにす
るなど、一部の命令については同じ演算を行わせるよう
にしてもよい。
That is, assuming that the same operation is performed when the two register designation codes are equal to each other as in the conventional data processing device, for example, the logical sum operation of the data in the data register D0 is actually performed. Is not doing anything. On the other hand, in the data processing device of the present embodiment, by performing different operations in such a case, 16 types of instructions can be executed in the 3-bit field represented by "***" in FIG. Therefore, even if the basic instruction word length is 8 bits, many kinds of operations can be executed. It should be noted that, for example, with respect to a subtraction instruction, even if the register designation codes are the same, the subtraction is executed so that it can be used as a register clear instruction. For example, the same operation may be performed for some instructions. ..

【0034】また、上記の例ではレジスタアレイ15内
の8本のレジスタをデータレジスタD0〜D3とアドレ
スレジスタA0〜A3との、機能を特化した2組に分け
ることにより、2ビットのフィールドで1つのレジスタ
を指定することができる。それゆえ、8ビットの命令コ
ードにソースレジスタとディスティネーションレジスタ
との2つのレジスタ指定コードを含ませる場合でも、残
りの4ビットで演算の種類を指定できるので、一層、短
い基本命令語長で多くの種類の演算を実行させることが
できる。
Further, in the above example, the eight registers in the register array 15 are divided into two sets of the data registers D0 to D3 and the address registers A0 to A3, which have specialized functions, so that a 2-bit field is formed. One register can be specified. Therefore, even if the 8-bit instruction code includes the two register designation codes of the source register and the destination register, the operation type can be designated by the remaining 4 bits, so that the basic instruction word length is much shorter. Can be performed.

【0035】このように、短い基本命令語長で多くの種
類の演算を実行させることができるので、頻繁に用いら
れる基本的な演算(上記の例では、8種類のデータレジ
スタ間演算、8種類のデータレジスタ、即値間演算、8
種類のデータレジスタ、メモリ間転送、および8種類
の、1つのデータレジスタに対する単一オペランド演
算)を短い命令語長の命令で実行させることができる。
As described above, since many kinds of operations can be executed with a short basic instruction word length, frequently used basic operations (in the above example, eight kinds of operations between data registers, eight kinds of operations between data registers, and eight kinds of operations). Data register, immediate value operation, 8
It is possible to execute various types of data registers, memory-to-memory transfers, and eight types of single-operand operations for one data register) with an instruction having a short instruction word length.

【0036】したがって、上記のようなレジスタおよび
演算命令の構成によって、例えばC言語などの高級言語
による処理を効果的に実行させるための必要最小限の環
境を提供することができ、しかもプログラムサイズを小
さく抑え得るとともに処理速度の高速化を図ることがで
きる。なお、上記実施例においては、命令コードにおけ
る即値や絶対アドレスは8ビットで、命令に応じて16
ビットに拡張される例を示したが、これに限らず必要に
応じて16ビットの即値を用い得るようにしてもよい。
Therefore, with the configuration of the registers and the operation instructions as described above, it is possible to provide the minimum necessary environment for effectively executing the processing in the high-level language such as C language, and moreover, to reduce the program size. It can be kept small and the processing speed can be increased. In the above embodiment, the immediate value or absolute address in the instruction code is 8 bits, and 16 bits are used depending on the instruction.
An example in which the value is extended to bits is shown, but the present invention is not limited to this, and an immediate value of 16 bits may be used if necessary.

【0037】さらに、レジスタ構成や命令コードの構
造、演算の種類、オペレーションコードのビット割り当
て等は上記のものに限らず、データ処理装置の用途に応
じた種々の構成等においても本発明を適用することが可
能である。また、レジスタ指定コード一致検出部13を
設ける構成に限らず、例えば命令解読器14が、レジス
タ指定コードが一致する場合と一致しない場合とで異な
る命令として解読するように構成してもよい。
Furthermore, the register configuration, the structure of the instruction code, the type of operation, the bit assignment of the operation code, etc. are not limited to the above, and the present invention is applied to various configurations according to the use of the data processing device. It is possible. Further, not limited to the configuration in which the register designation code match detection unit 13 is provided, for example, the instruction decoder 14 may be configured to decode as different instructions depending on whether the register designation codes match or not match.

【0038】[0038]

【発明の効果】以上説明したように、本発明によれば、
2つのレジスタ指定コードが互いに異なる場合と同一で
ある場合とで、異なる処理を行わせるインストラクショ
ン実行制御部を備えていることにより、同一のオペレー
ションコードに対して2通りの処理を行わせることがで
きるので、短い命令語長で多くの種類の演算を実行させ
ることができ、したがってプログラムサイズを小さく抑
えることができるという効果を奏する。
As described above, according to the present invention,
By providing the instruction execution control unit that performs different processing depending on whether the two register designation codes are different or the same, two types of processing can be performed on the same operation code. Therefore, it is possible to execute many kinds of operations with a short instruction word length, and thus it is possible to reduce the program size.

【図面の簡単な説明】[Brief description of drawings]

【図1】データ処理装置の要部の構成を示すブロック図
である。
FIG. 1 is a block diagram showing a configuration of a main part of a data processing device.

【図2】レジスタアレイの詳細な構成を示す説明図であ
る。
FIG. 2 is an explanatory diagram showing a detailed configuration of a register array.

【図3】状態レジスタPSWの詳細な構成を示す説明図
である。
FIG. 3 is an explanatory diagram showing a detailed configuration of a status register PSW.

【図4】命令コードの構造の例を示す説明図である。FIG. 4 is an explanatory diagram showing an example of the structure of an instruction code.

【図5】命令コードの割り当ての例を示す説明図であ
る。
FIG. 5 is an explanatory diagram showing an example of instruction code allocation.

【符号の説明】[Explanation of symbols]

11 命令バッファ 12 命令レジスタ 13 レジスタ指定コード一致検出部 14 命令解読器 15 レジスタアレイ 16 演算器 17 内部データバス 11 instruction buffer 12 instruction register 13 register designation code match detection unit 14 instruction decoder 15 register array 16 arithmetic unit 17 internal data bus

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 オペレーションコードと、2つのレジス
タ指定コードとから成るインストラクションに基づいて
データ処理を行うように構成されたデータ処理装置であ
って、 前記2つのレジスタ指定コードが互いに異なる場合と同
一である場合とで、異なる処理を行わせるインストラク
ション実行制御部を備えたことを特徴とするデータ処理
装置。
1. A data processing device configured to perform data processing based on an instruction consisting of an operation code and two register specifying codes, the same as when the two register specifying codes are different from each other. A data processing device comprising an instruction execution control unit for performing different processing depending on a case.
【請求項2】 データを保持するm本のデータレジスタ
と、 アドレスを保持するn本のアドレスレジスタとを備え、 前記オペレーションコードは、所定の最小長さのコード
で、メモリとデータレジスタ間のデータ転送およびデー
タレジスタ間の演算を示すとともに、 前記レジスタ指定コードは、log2 m、およびlog
2 nの長さのコードで、処理対象となるレジスタを示す
ように設定されていることを特徴とする請求項1のデー
タ処理装置。
2. An m number of data registers for holding data and n number of address registers for holding addresses are provided, and the operation code is a code having a predetermined minimum length, and is a data between the memory and the data register. While showing the operation between transfer and data register, the register designation code is log 2 m, and log
2. The data processing apparatus according to claim 1, wherein the code has a length of 2 n and is set so as to indicate a register to be processed.
JP3209112A 1991-08-21 1991-08-21 Data processing device Expired - Lifetime JP2970821B2 (en)

Priority Applications (10)

Application Number Priority Date Filing Date Title
JP3209112A JP2970821B2 (en) 1991-08-21 1991-08-21 Data processing device
DE69233282T DE69233282T2 (en) 1991-08-21 1992-08-20 Data processing device
EP99124499A EP0989485B1 (en) 1991-08-21 1992-08-20 Data processing apparatus
EP99124426A EP0984358B1 (en) 1991-08-21 1992-08-20 Data processing apparatus
DE69233561T DE69233561T2 (en) 1991-08-21 1992-08-20 Data processing device
DE69233681T DE69233681T2 (en) 1991-08-21 1992-08-20 Data processing device
EP92307632A EP0528695B1 (en) 1991-08-21 1992-08-20 Data processing apparatus
DE69231237T DE69231237T2 (en) 1991-08-21 1992-08-20 Data processing device
EP02078385A EP1271305B1 (en) 1991-08-21 1992-08-20 Data processing apparatus
US07/932,652 US5440701A (en) 1991-08-21 1992-08-20 For shortening an instruction code length

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3209112A JP2970821B2 (en) 1991-08-21 1991-08-21 Data processing device

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP11147962A Division JP3123545B2 (en) 1999-05-27 1999-05-27 Data processing device

Publications (2)

Publication Number Publication Date
JPH0546383A true JPH0546383A (en) 1993-02-26
JP2970821B2 JP2970821B2 (en) 1999-11-02

Family

ID=16567489

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3209112A Expired - Lifetime JP2970821B2 (en) 1991-08-21 1991-08-21 Data processing device

Country Status (4)

Country Link
US (1) US5440701A (en)
EP (4) EP0984358B1 (en)
JP (1) JP2970821B2 (en)
DE (4) DE69231237T2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194602B2 (en) 1998-03-11 2007-03-20 Matsushita Electric Industrial Co., Ltd. Data processor
USRE40498E1 (en) 1993-05-27 2008-09-09 Matsushita Electric Industrial Co., Ltd. Variable address length compiler and processor improved in address management

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9412434D0 (en) * 1994-06-21 1994-08-10 Inmos Ltd Computer instruction compression
US5636352A (en) * 1994-12-16 1997-06-03 International Business Machines Corporation Method and apparatus for utilizing condensed instructions
US5966514A (en) * 1995-05-31 1999-10-12 Matsushita Electric Industrial Co., Ltd. Microprocessor for supporting reduction of program codes in size
US6065108A (en) * 1996-01-24 2000-05-16 Sun Microsystems Inc Non-quick instruction accelerator including instruction identifier and data set storage and method of implementing same
US5867681A (en) * 1996-05-23 1999-02-02 Lsi Logic Corporation Microprocessor having register dependent immediate decompression
US6012138A (en) * 1997-12-19 2000-01-04 Lsi Logic Corporation Dynamically variable length CPU pipeline for efficiently executing two instruction sets
EP0947922B1 (en) 1998-04-01 2006-09-27 Matsushita Electric Industrial Co., Ltd. Compiler
US6351806B1 (en) 1999-10-06 2002-02-26 Cradle Technologies Risc processor using register codes for expanded instruction set
WO2001025941A1 (en) 1999-10-06 2001-04-12 Cradle Technologies Multiprocessor computer systems with command fifo buffer at each target device
KR20010091132A (en) * 2000-03-13 2001-10-23 구자홍 Data processing unit in a micro processor
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
CN101685388B (en) * 2008-09-28 2013-08-07 北京大学深圳研究生院 Method and device for executing comparison operation
CN102043750B (en) * 2010-12-13 2013-05-01 青岛海信信芯科技有限公司 Microprocessor bus structure and microprocessor
GB2522990B (en) * 2013-12-20 2016-08-03 Imagination Tech Ltd Processor with virtualized instruction set architecture and methods

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5317240A (en) * 1976-07-31 1978-02-17 Toshiba Corp Controller
US4236206A (en) * 1978-10-25 1980-11-25 Digital Equipment Corporation Central processor unit for executing instructions of variable length
US4347566A (en) * 1978-12-11 1982-08-31 Tokyo Shibaura Denki Kabushiki Kaisha Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip
US4250545A (en) * 1978-12-29 1981-02-10 Bell Telephone Laboratories, Incorporated Data processing apparatus providing autoloading of memory pointer registers
JPS55162167A (en) * 1979-06-05 1980-12-17 Canon Inc Electronic program computer
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
US4481571A (en) * 1981-09-11 1984-11-06 Data General Corp. Digital data processing system with accumulation instructions
JPS6140650A (en) * 1984-08-02 1986-02-26 Nec Corp Microcomputer
DE3532481A1 (en) * 1985-09-12 1987-03-19 Philips Patentverwaltung DATA PROCESSING ARRANGEMENT
US4890218A (en) * 1986-07-02 1989-12-26 Raytheon Company Variable length instruction decoding apparatus having cross coupled first and second microengines
US5129087A (en) * 1988-02-03 1992-07-07 International Business Machines, Corp. Computer system and a method of monitoring transient data structures in a computer system
US5148528A (en) * 1989-02-03 1992-09-15 Digital Equipment Corporation Method and apparatus for simultaneously decoding three operands in a variable length instruction when one of the operands is also of variable length

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE40498E1 (en) 1993-05-27 2008-09-09 Matsushita Electric Industrial Co., Ltd. Variable address length compiler and processor improved in address management
USRE41959E1 (en) 1993-05-27 2010-11-23 Panasonic Corporation Variable address length compiler and processor improved in address management
US7194602B2 (en) 1998-03-11 2007-03-20 Matsushita Electric Industrial Co., Ltd. Data processor
US7664934B2 (en) 1998-03-11 2010-02-16 Panasonic Corporation Data processor decoding instruction formats using operand data
US7979676B2 (en) 1998-03-11 2011-07-12 Panasonic Corporation Method for instructing a data processor to process data
US8443173B2 (en) 1998-03-11 2013-05-14 Panasonic Corporation Method for instructing a data processor to process data
US8650386B2 (en) 1998-03-11 2014-02-11 Panasonic Corporation Data processor including an operation unit to execute operations in parallel

Also Published As

Publication number Publication date
EP0528695A2 (en) 1993-02-24
EP0528695B1 (en) 2000-07-12
DE69233561D1 (en) 2005-12-08
DE69233282D1 (en) 2004-02-05
EP1271305B1 (en) 2005-11-02
EP0528695A3 (en) 1994-08-24
EP0989485A3 (en) 2000-08-23
JP2970821B2 (en) 1999-11-02
EP0984358B1 (en) 2007-02-14
DE69231237D1 (en) 2000-08-17
DE69233282T2 (en) 2004-09-30
EP0984358A3 (en) 2000-12-06
US5440701A (en) 1995-08-08
EP0989485B1 (en) 2004-01-02
EP0984358A2 (en) 2000-03-08
DE69233561T2 (en) 2006-07-27
EP1271305A1 (en) 2003-01-02
DE69231237T2 (en) 2000-11-30
DE69233681D1 (en) 2007-03-29
DE69233681T2 (en) 2007-10-25
EP0989485A2 (en) 2000-03-29

Similar Documents

Publication Publication Date Title
JP2616182B2 (en) Data processing device
KR940009094B1 (en) Data processing system
JP2970821B2 (en) Data processing device
JP2581236B2 (en) Data processing device
US7546442B1 (en) Fixed length memory to memory arithmetic and architecture for direct memory access using fixed length instructions
JP2669158B2 (en) Data processing device
US4347566A (en) Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip
JPH1049369A (en) Data processor
JP2551167B2 (en) Microcomputer
JP2556182B2 (en) Data processing device
JPH034936B2 (en)
JP3123545B2 (en) Data processing device
US20080256335A1 (en) Microprocessor, microcomputer, and electronic instrument
JP2001216136A (en) Addition circuit and processor
JPS6230455B2 (en)
JPH05173778A (en) Data processor
JP2743947B2 (en) Micro program control method
JP2878250B2 (en) Data processing device
JP3199604B2 (en) Processor
JP2696578B2 (en) Data processing device
Ramirez An Overview of Intel's MMX Technology
JPH0354632A (en) Arithmetic instruction processor
JPH03204029A (en) Information processor
JPH0340013A (en) Central arithmetic processing unit
JPS62293432A (en) Information processor

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070827

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080827

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080827

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090827

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090827

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100827

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110827

Year of fee payment: 12

EXPY Cancellation because of completion of term