JPH06337782A - Processor and method for data processing - Google Patents
Processor and method for data processingInfo
- Publication number
- JPH06337782A JPH06337782A JP5129529A JP12952993A JPH06337782A JP H06337782 A JPH06337782 A JP H06337782A JP 5129529 A JP5129529 A JP 5129529A JP 12952993 A JP12952993 A JP 12952993A JP H06337782 A JPH06337782 A JP H06337782A
- Authority
- JP
- Japan
- Prior art keywords
- data
- instruction
- register
- bit
- immediate
- 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
Links
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
Description
【発明の詳細な説明】Detailed Description of the Invention
【0001】[0001]
【産業上の利用分野】本発明は、プログラムの命令に従
って処理を実行するデータ処理装置及びデータ処理方法
に関し、特に、メモリにアクセスするためのアドレス空
間におけるアドレスを指定する即値データ(即値アドレ
ス)の指定処理あるいは演算処理の適正化が可能なデー
タ処理装置およびデータ処理方法に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device and a data processing method for executing a process in accordance with a program instruction, and particularly to immediate data (immediate address) for designating an address in an address space for accessing a memory. The present invention relates to a data processing device and a data processing method capable of optimizing designation processing or arithmetic processing.
【0002】[0002]
【従来の技術】一般的に、マイクロコンピュータ等のデ
ータ処理装置では、種々のデータ幅を有するデータの処
理が可能なように構成されている。例えば、プログラム
の命令によって直接的に数値を指定する即値データに対
しては、符号拡張処理によってデータ幅の調整がなされ
た後、所定の演算処理が行われるように構成されてい
る。2. Description of the Related Art Generally, a data processing device such as a microcomputer is configured to process data having various data widths. For example, for immediate data whose numerical value is directly designated by a program instruction, a predetermined arithmetic process is performed after the data width is adjusted by the sign extension process.
【0003】以下、この即値データに対する符号拡張処
理を伴うデータ処理装置の構成及び動作について説明す
る。即値データの符号拡張機能を有する従来のデータ処
理装置の例が、”「マイクロコンピュータシリーズ14
68000マイクロコンピュータ」喜田祐三他、丸善
1983年3月”に記載されている。図7は、この従来
のデータ処理装置の構成を示すブロック図である。図7
において、11は主にデータを格納するN(整数)ビッ
ト幅のデータレジスタ群、12は主にアドレスを格納す
るNビット幅のアドレスレジスタ群、13は16ビット
データの最上位ビットを符号拡張して32ビットデータ
として出力する符号拡張器、14は命令を解読する命令
解読部、15は命令解読部14での解読結果に基づいて
演算を実行する演算器である。The structure and operation of the data processing apparatus which involves sign extension processing for this immediate data will be described below. An example of a conventional data processing device having a sign extension function for immediate data is "Microcomputer Series 14".
68000 microcomputer "Yuda Kida et al., Maruzen, March 1983". Fig. 7 is a block diagram showing the configuration of this conventional data processing apparatus.
In FIG. 11, 11 is an N (integer) bit width data register group that mainly stores data, 12 is an N bit width address register group that mainly stores addresses, and 13 is a sign extension of the most significant bit of 16 bit data. A code extender for outputting as 32-bit data, 14 is an instruction decoding unit for decoding an instruction, and 15 is an arithmetic unit for executing an operation based on the decoding result of the instruction decoding unit 14.
【0004】この従来のデータ処理装置の一般的な動作
を以下に説明する。まず命令解読部14は、外部から与
えられた命令を解読する。そして、命令の内容によって
次のような動作を行う。 (1)命令が「データレジスタ11またはアドレスレジ
スタ12間でデータを格納し、あるいは演算する」場
合。The general operation of this conventional data processing apparatus will be described below. First, the instruction decoding unit 14 decodes an instruction given from the outside. Then, the following operation is performed depending on the content of the instruction. (1) When the instruction is “to store data between the data registers 11 or the address registers 12 or to operate”.
【0005】演算器15に2つのNビット幅のデータが
入力され、所定の演算がなされた後、指定されたレジス
タにデータが格納される。 (2)命令が「Mビットの即値データをデータレジスタ
11またはアドレスレジスタ12に格納し、あるいは演
算する」場合。Mビットの即値データが符号拡張器13
でNビットに拡張されて演算器15の一方の入力とな
り、所定の演算が行われた後、指定されたレジスタへ出
力される。Two N-bit wide data are input to the arithmetic unit 15, a predetermined arithmetic operation is performed, and the data is stored in a designated register. (2) When the instruction is "store M-bit immediate data in the data register 11 or the address register 12 or perform an operation". The M-bit immediate data is code extender 13
Is expanded to N bits and becomes one input of the arithmetic unit 15 to perform a predetermined arithmetic operation and then output to a designated register.
【0006】ここで、符号拡張器13の動作を図5を用
いて説明する。まず、図5(a)において、Mビットで
表現される数値の最上位ビットが0の場合には、上位側
へNビットまで0を複写してデータ幅を拡張する。ま
た、図5(b)において、Mビットで表現される数値の
最上位ビットが1の場合には、上位側へNビットまで1
を複写してデータ幅を拡張する。Now, the operation of the code extender 13 will be described with reference to FIG. First, in FIG. 5A, when the most significant bit of the numerical value represented by M bits is 0, 0 is copied to N bits up to the upper side to expand the data width. Further, in FIG. 5B, if the most significant bit of the numerical value represented by M bits is 1, then up to N bits are incremented by 1
To extend the data width.
【0007】さらに、この従来のデータ処理装置におい
て、特に、即値データのビット幅が格納または演算する
対象となるレジスタのビット幅よりも短い場合の即値デ
ータの処理動作について具体的に説明する。一例とし
て、図8に示すプログラムの実行動作について説明す
る。図8に示すプログラムは、32ビットでアドレス指
定される全空間の中でH’8000(H’は16進数表
記を示す)番地からH’8100番地までH’10番地
刻みに格納されているメモリ上の16個のデータを順次
加算し、その和をH’10000000番地へ書き出す
処理を示している。図9は、図8においてニモニック表
記されたプログラムの処理フローを示している。さら
に、図10は、メモリのアドレス空間を模式的に示して
いる。以下、図7〜図10を参照して説明する。なお、
以下の説明では、即値データの符号拡張処理は、正規の
拡張処理が行われる場合を示しており、実際の符号拡張
処理における問題点については、後述される。 命令(1):データレジスタD0をクリアする。 命令(2):アドレスレジスタA0に32ビットの即値
データH’8000を設定する。Further, in this conventional data processing apparatus, the operation of processing immediate data will be specifically described, particularly when the bit width of immediate data is shorter than the bit width of the register to be stored or operated. As an example, the operation of executing the program shown in FIG. 8 will be described. The program shown in FIG. 8 is a memory stored in H'10 (H 'indicates hexadecimal notation) to H'8100 in H'10 units in the entire space addressed by 32 bits. The process of sequentially adding the above 16 data and writing the sum to the address H'10000000 is shown. FIG. 9 shows a processing flow of the program represented by the mnemonic notation in FIG. Further, FIG. 10 schematically shows the address space of the memory. Hereinafter, description will be made with reference to FIGS. 7 to 10. In addition,
In the following description, the sign extension process of the immediate data shows a case where the normal extension process is performed, and the problem in the actual sign extension process will be described later. Instruction (1): Clear the data register D0. Instruction (2): 32-bit immediate data H'8000 is set in the address register A0.
【0008】この命令の表記は16ビットの即値データ
H’8000を使用している。したがって、この即値デ
ータH’8000は、符号拡張器13によって32ビッ
トデータに符号拡張された後、アドレスレジスタA0に
格納される。 命令(3):アドレスレジスタA0で指定される番地の
内容をメモリから読み出してデータレジスタD1に格納
する。 命令(4):データレジスタD1の内容をデータレジス
タD0の内容に加算し、その結果をデータレジスタD0
に格納する。 命令(5):アドレスレジスタA0に即値H’0010
を加算し、アドレスレジスタA0に格納する。The notation of this instruction uses 16-bit immediate data H'8000. Therefore, this immediate data H'8000 is sign-extended to 32-bit data by the sign extender 13 and then stored in the address register A0. Instruction (3): The content of the address specified by the address register A0 is read from the memory and stored in the data register D1. Instruction (4): The content of the data register D1 is added to the content of the data register D0, and the result is added to the data register D0.
To store. Instruction (5): Immediate value H'0010 in the address register A0
Is added and stored in the address register A0.
【0009】16ビット即値データH’0010は、符
号拡張器13によって32ビットデータH’00000
010に拡張される。その後、演算器15においてアド
レスレジスタA0に格納されているアドレスデータH’
00008000と拡張されたデータH’000000
10とが加算され、H’00008010が算出され
る。この算出データはアドレスレジスタA0に格納され
る。 命令(6):上記の算出データと即値データH’810
0とを比較する。The 16-bit immediate data H'0010 is converted into 32-bit data H'00000 by the code extender 13.
Extended to 010. After that, the address data H ′ stored in the address register A0 in the arithmetic unit 15
Expanded data H'000000 with 00008000
10 is added to calculate H'00008010. This calculated data is stored in the address register A0. Command (6): Above calculated data and immediate data H'810
Compare with 0.
【0010】即値データH’8100は符号拡張器13
によって32ビットデータに符号拡張された後、演算器
15に出力される。そして、演算器15において、アド
レスレジスタA0から読み出されたアドレスデータH’
00008010と比較される。 命令(7):比較結果に基づいて、小さければラベルA
で示す命令(3)へ戻り、等しいかまたは大きければ命
令(8)へ進むように判断する。Immediate data H'8100 is code extender 13
The data is sign-extended to 32-bit data by and output to the calculator 15. Then, in the arithmetic unit 15, the address data H ′ read from the address register A0
Compared with 00008010. Command (7): Label A if smaller based on the comparison result
Return to the instruction (3) indicated by, and if equal or larger, it is determined to proceed to the instruction (8).
【0011】命令(3)から命令(7)で記述されるル
ープ処理は、アドレスレジスタA0の値がH’0000
8000から始めてH’00000010ずつ更新され
H’00008100になるまで繰返されるために、1
6回の加算結果がデータレジスタD0に格納された後、
命令(8)へ進む。 命令(8):データレジスタD0の内容をメモリのH’
10000000番地へ格納する。In the loop processing described by the instructions (3) to (7), the value of the address register A0 is H'0000.
Since it starts from 8000 and is updated by H'00000010 and is repeated until H'00008100, 1
After the addition result of 6 times is stored in the data register D0,
Go to instruction (8). Instruction (8): The contents of data register D0 are stored in memory H '
Store at address 10000000.
【0012】[0012]
【発明が解決しようとする課題】しかしながら、上記の
従来のデータ処理装置においては、アドレスレジスタ1
2に対してアクセスされる即値データについて行われた
符号拡張によって、指定した即値データの内容と異なる
データとなる場合が生じる。このような状態を図8に示
す例で説明すると、符号拡張される即値データは、命令
(2)におけるH’8000と、命令(5)における
H’0010と、命令(6)におけるH’8100であ
る。However, in the above conventional data processor, the address register 1 is used.
The sign extension performed on the immediate data accessed for 2 may result in data different from the content of the specified immediate data. Explaining such a state with the example shown in FIG. 8, the immediate data to be sign-extended is H'8000 in the instruction (2), H'0010 in the instruction (5), and H'8100 in the instruction (6). Is.
【0013】まず、命令(2)における即値データH’
8000は、符号拡張されると、最上位ビット”1”が
上位側に複写されるため、H’00008000ではな
く、H’FFFF8000に拡張される。したがって、
上記の命令(2)においてアドレスレジスタA0に格納
されたデータは、H’00008000ではなく、H’
FFFF8000となる。このため、図10に示すよう
に、次の命令(3)においては、メモリから読み出され
るデータは、H’0008000番地のデータではな
く、H’FFFF8000番地のデータが読み出され
る。このために、誤ったデータが読み出される。First, the immediate data H'in the instruction (2)
When the code extension of 8000 is performed, the most significant bit “1” is copied to the high-order side, and therefore it is extended to H′FFFF8000 instead of H′00008000. Therefore,
The data stored in the address register A0 in the above instruction (2) is not H'00008000, but H'00008000.
It becomes FFFF8000. Therefore, as shown in FIG. 10, in the next instruction (3), the data read from the memory is not the data at the address H'00080000 but the data at the address H'FFFF8000. Therefore, erroneous data is read.
【0014】また、命令(6)においても、即値データ
H’8100が符号拡張されると、H’0000810
0ではなく、H’FFFF8100に拡張される。従っ
て、誤った演算が行われる。このような即値データの誤
拡張は、図10に示すように、即値データがメモリの全
アドレス空間の内、MSB(最上位ビット)の値が”
1”のアドレスを指定する場合に発生する。Also in the instruction (6), if the immediate data H'8100 is sign-extended, H'0000810
It is extended to H'FFFF8100 instead of 0. Therefore, incorrect calculation is performed. Such an erroneous extension of immediate data causes the immediate data to have an MSB (most significant bit) value of "in the entire address space of the memory" as shown in FIG.
It occurs when an address of 1 "is specified.
【0015】このような状態を解消するためには、即値
データの指定を32ビット表記することが考えられる。
例えば、命令(2)においては、即値データをH’00
008000と指定すればよい。しかしながら、このよ
うな指定方法は、16ビットデータを指定する場合でも
32ビット表記する必要が生じるため、命令の表記およ
びオブジェクトコードが長くなり好ましくない。In order to eliminate such a situation, it is considered that the designation of immediate data is represented by 32 bits.
For example, in the instruction (2), the immediate data is H'00.
It may be specified as 008000. However, such a designation method is not preferable because it requires a 32-bit notation even when 16-bit data is specified, resulting in a long instruction notation and object code.
【0016】このような問題点を解消するために、16
ビット即値データを使用して図8に示すプログラムを書
き直す方法が図11に示されている。図11において、
図8に示す命令(2)に該当する命令は、命令(2ー
1)、(2ー2)の2ステップで行われる。まず、命令
(2ー1)で与えられた即値データH’8000は、符
号拡張されてH’FFFF8000となる。そして、命
令(2ー2)では、拡張データの上位16ビット分を0
にクリアするために、拡張データH’0000FFFF
とH’0000FFFFとの論理積を取り、32ビット
データH’00008000に変換している。In order to solve such a problem, 16
A method of rewriting the program shown in FIG. 8 using bit immediate data is shown in FIG. In FIG.
The instruction corresponding to the instruction (2) shown in FIG. 8 is executed in two steps of the instructions (2-1) and (2-2). First, the immediate data H'8000 given by the instruction (2-1) is sign-extended to H'FFFF8000. Then, in the instruction (2-2), the upper 16 bits of the extension data are set to 0.
Extension data H'0000FFFF to clear
And H'0000FFFF are ANDed and converted into 32-bit data H'00008000.
【0017】また、図8の命令(6)に該当する命令
は、図11において命令(6ー1)、(6ー2)、(6
ー3)の3ステップで行われる。命令(6ー1)で与え
られた即値データH’8100は、符号拡張されてH’
FFFF8100となり、アドレスレジスタA1に格納
される。次に命令(6ー2)では、拡張データの上位1
6ビット分を0にクリアするために、拡張データH’F
FFF8100とH’0000FFFFとの論理積を取
り32ビットデータH’00008100に変換する。
その後、命令(6ー3)において、アドレスレジスタA
0とA1とを比較している。The instruction corresponding to the instruction (6) in FIG. 8 is the instruction (6-1), (6-2), (6) in FIG.
-It is done in 3 steps of 3). The immediate data H'8100 given by the instruction (6-1) is sign-extended to H '
It becomes FFFF8100 and is stored in the address register A1. Next, in the instruction (6-2), the upper 1 of the extension data
In order to clear 6 bits to 0, the extension data H'F
The logical product of FFF8100 and H'0000FFFF is obtained and converted into 32-bit data H'00008100.
After that, in the instruction (6-3), the address register A
0 is compared with A1.
【0018】しかしながら、この方法では、16ビット
即値データの使用が可能なものの、図8に示す方法に比
べてプログラムのステップ数が増加してしまうという新
たな問題がある。このように、従来の2つの例は、いず
れもアドレスレジスタのデータ幅よりも短い即値データ
を使用してメモリのアドレス空間にあるデータに対して
正確にアクセスするようなプログラム命令を効率良く実
行することができないという問題点を有していた。However, although this method can use 16-bit immediate data, it has a new problem that the number of steps of the program is increased as compared with the method shown in FIG. As described above, the two conventional examples efficiently execute the program instruction for accurately accessing the data in the address space of the memory by using the immediate data shorter than the data width of the address register. It had a problem that it could not.
【0019】したがって、本発明は上記のような問題点
を解消するためになされたもので、全アドレス空間の先
頭から2のM乗の範囲内のアドレス空間にあるデータを
アクセスする場合に、アドレスレジスタのデータ幅より
も短いデータを即値データとして与えることが可能なデ
ータ処理装置およびデータ処理方法を提供することを目
的とする。Therefore, the present invention has been made to solve the above-mentioned problems, and when accessing data in an address space within a range of 2 M from the head of the entire address space, the address An object of the present invention is to provide a data processing device and a data processing method capable of giving data shorter than the data width of a register as immediate data.
【0020】[0020]
【課題を解決するための手段】請求項1の発明に係るデ
ータ処理装置は、整数Nビット幅を有する第1レジスタ
と、Nビット幅を有する第2レジスタと、Nより小さい
M(整数)ビットデータの最上位ビットを上位側へ複写
することによってMビットデータのデータ幅をNビット
に拡張する符号拡張器と、Mビットデータの上位側にゼ
ロ値を発生させることによってMビットデータのデータ
幅をNビットに拡張するゼロ拡張器と、与えられた命令
に従って演算処理を行う演算器と、命令を解読し、命令
がMビットの即値データを含み、かつ第1レジスタに対
する格納処理を有する場合、即値データを前記ゼロ拡張
器に出力し、命令がMビットの即値データを含み、かつ
第2レジスタに対する格納処理を有する場合、即値デー
タを符号拡張器に出力するように第1レジスタ、第2レ
ジスタ及び演算器を制御する命令制御手段とを備える。According to a first aspect of the present invention, there is provided a data processing device including a first register having an integer N-bit width, a second register having an N-bit width, and M (integer) bits smaller than N. A sign extender that extends the data width of M-bit data to N bits by copying the most significant bit of the data to the upper side, and a data width of M-bit data by generating a zero value on the upper side of the M-bit data. Is extended to N bits, an arithmetic unit for performing arithmetic processing in accordance with a given instruction, an instruction is decoded, and the instruction includes M-bit immediate data, and has a storage processing for the first register, When the immediate data is output to the zero extender, the instruction includes the M-bit immediate data, and the storing process for the second register is performed, the immediate data is output to the sign extender. First register to force, and a command control means for controlling the second register and arithmetic unit.
【0021】請求項2の発明に係るデータ処理装置は、
請求項1の発明に対し、第1レジスタが、メモリのアド
レスデータを格納するアドレスレジスタであり、第2レ
ジスタが、命令のデータオペランドを格納するデータレ
ジスタである。請求項3の発明に係るデータ処理装置
は、請求項1の発明に対し、命令制御手段が、2のベキ
乗の即値データを解読する。A data processing apparatus according to the invention of claim 2 is
According to the first aspect of the invention, the first register is an address register that stores the address data of the memory, and the second register is a data register that stores the data operand of the instruction. In the data processor according to the invention of claim 3, in addition to the invention of claim 1, the instruction control means decodes immediate data of a power of 2.
【0022】請求項4の発明に係るデータ処理方法は、
整数Nビット幅の第1及び第2レジスタに対してアクセ
スするNより小さい整数Mビット幅の即値データを指定
した命令に従って所定の演算を行う方法であって、命令
を解読し、命令が指定するアクセス先レジスタを判別す
る命令解読ステップと、命令が第1レジスタに対する格
納処理を有する場合、Mビット幅の即値データをゼロ拡
張することによってNビット幅のデータに拡張し、命令
が第2レジスタに対する格納処理を有する場合、Mビッ
ト幅の即値データを符号拡張することによってNビット
幅のデータに拡張するデータ拡張ステップと、Nビット
幅に拡張された即値データを用い、命令に従って所定の
演算処理を行う演算ステップとを備える。The data processing method according to the invention of claim 4 is
A method of performing a predetermined operation according to an instruction specifying immediate data having an integer M-bit width smaller than N, which accesses the first and second registers having an integer N-bit width, by decoding the instruction and designating the instruction When the instruction decoding step of determining the access destination register and the storage processing for the first register are performed, the immediate data of the M-bit width is zero-extended to be extended to the N-bit width of the data, and the instruction is transmitted to the second register. In the case of having a storage process, the data expansion step of expanding the immediate data of M bit width to the data of N bit width by sign expansion and the immediate data expanded to N bit width are used to perform a predetermined arithmetic process according to the instruction. And a calculation step to be performed.
【0023】請求項5の発明に係るデータ処理方法は、
請求項4の発明に対し、第1レジスタが、メモリのアド
レスデータを格納するアドレスレジスタであり、第2レ
ジスタが、命令のデータオペランドを格納するデータレ
ジスタである。請求項6の発明に係るデータ処理方法
は、請求項4の発明に対し、即値データのビット幅M
が、2のベキ乗で指定される。The data processing method according to the invention of claim 5 is
According to the fourth aspect of the invention, the first register is an address register that stores the address data of the memory, and the second register is a data register that stores the data operand of the instruction. The data processing method according to the invention of claim 6 is the same as that of the invention of claim 4, in which the bit width M of immediate data is M.
Is specified by a power of 2.
【0024】[0024]
【作用】請求項1乃至請求項6の発明において、命令制
御手段は、即値データを含む命令を解読する。そして、
即値データが第1レジスタに対してアクセスされるデー
タである場合、即値データをゼロ拡張器に出力する。ま
た、即値データが第2レジスタに対してアクセスされる
データである場合には、即値データを符号拡張器に出力
する。ゼロ拡張器及び符号拡張器は、与えられた即値デ
ータに対して、各々ゼロ拡張及び符号拡張処理を行い、
Mビット幅の即値データをNビット幅のデータに拡張す
る。その後、演算器は、拡張された即値データを使用
し、所定の演算処理を行う。In the inventions of claims 1 to 6, the instruction control means decodes an instruction including immediate data. And
If the immediate data is the data accessed to the first register, the immediate data is output to the zero extender. If the immediate data is the data accessed to the second register, the immediate data is output to the code extender. The zero extender and the sign extender perform zero extension and sign extension processing on the given immediate data, respectively,
Immediate data having an M-bit width is expanded to data having an N-bit width. After that, the arithmetic unit uses the expanded immediate data to perform a predetermined arithmetic process.
【0025】[0025]
【実施例】以下、本発明の実施例について、図面を参照
しながら説明する。図1は、本発明の実施例によるデー
タ処理装置の全体構成を示すブロック図であり、図2は
その詳細ブロック図である。図1及び図2において、デ
ータ処理装置は、外部との命令及びデータ転送を制御す
るバス転送制御部101と、命令読み出し動作を制御す
る命令フェッチ部102と、命令を解読する命令解読部
103と、32ビット幅のデータ演算を行う演算器10
4と、演算器104が使用するデータを格納するレジス
タ105と、演算器104での演算結果に基づいて設定
されるフラグ群を格納するプログラム状態語106と、
分岐命令の場合に条件成立か不成立かを判断する分岐判
断部107と、実行中の命令アドレスを格納するプログ
ラムカウンタ108と、16ビット入力データの最上位
ビットを符号拡張して32ビットデータとして出力する
符号拡張器109と、16ビット入力データの上位側1
6ビット分に値ゼロを発生させて32ビットに拡張する
ゼロ拡張器110とを備えている。Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing the overall configuration of a data processing device according to an embodiment of the present invention, and FIG. 2 is a detailed block diagram thereof. 1 and 2, the data processing device includes a bus transfer control unit 101 that controls external instruction and data transfer, an instruction fetch unit 102 that controls an instruction read operation, and an instruction decoding unit 103 that decodes an instruction. , Arithmetic unit 10 for performing 32-bit wide data operation
4, a register 105 that stores data used by the arithmetic unit 104, a program state word 106 that stores a flag group set based on the arithmetic result of the arithmetic unit 104,
In the case of a branch instruction, a branch determination unit 107 that determines whether the condition is met or not, a program counter 108 that stores the instruction address being executed, and the most significant bit of 16-bit input data are sign-extended and output as 32-bit data. Sign extender 109 and upper side 1 of 16-bit input data
A zero extender 110 that generates a value of zero for 6 bits and extends the value to 32 bits is provided.
【0026】レジスタ105は、主としてデータを格納
する32ビット幅の8個のレジスタD0〜D7からなる
データレジスタ群105aと、主としてアドレスデータ
を格納する32ビット幅の7個のレジスタA0〜A6か
らなるアドレスレジスタ群105bとを備えている。以
上のように構成されたデータ処理装置について、その動
作を説明する。なお、図3は、主に命令解読部103の
処理フローを示している。The register 105 includes a data register group 105a composed of eight registers D0 to D7 each having a 32-bit width for mainly storing data, and seven registers A0 to A6 each having a 32-bit width for mainly storing address data. Address register group 105b. The operation of the data processing device configured as described above will be described. Note that FIG. 3 mainly shows the processing flow of the instruction decoding unit 103.
【0027】まず、命令フェッチ部102は、バス転送
制御部101を起動し、外部のROM等に格納されたプ
ログラムの命令を逐次読み出す。読み出されたプログラ
ムの命令は、命令フェッチ部102を介して命令解読部
103に出力される。図3を参照して、命令解読部10
3は、読み出された命令を解読する(ステップS1
0)。命令の解読動作において、算術演算、論理演算、
レジスタ間転送、メモリ、分岐等の命令の種類を示すオ
ペレーションコード及びデータ、即値データ、レジスタ
番号、メモリアドレス等の演算数(オペランド)が解読
される。この解読結果に従って、この命令が32ビット
より短いビット幅の即値データを指定しているか否かを
判断する(ステップS20)。短いビット幅の即値デー
タを指定していれば、次のステップS30に進み、指定
していなければステップS40に進む。First, the instruction fetch unit 102 activates the bus transfer control unit 101 to sequentially read the instructions of the program stored in the external ROM or the like. The instruction of the read program is output to the instruction decoding unit 103 via the instruction fetch unit 102. Referring to FIG. 3, the instruction decoding unit 10
3 decodes the read instruction (step S1)
0). In the instruction decoding operation, arithmetic operation, logical operation,
The operation code and data indicating the type of instruction such as transfer between registers, memory, and branch, immediate data, register number, operation number (operand) such as memory address are decoded. According to the result of the decoding, it is determined whether or not this instruction specifies immediate data having a bit width shorter than 32 bits (step S20). If immediate data having a short bit width is designated, the process proceeds to the next step S30, and if not, the process proceeds to step S40.
【0028】短いデータ幅の即値データが検出される
と、この命令が指定するアクセス先レジスタ(ディステ
ィネーションレジスタ)がデータレジスタ群105aに
あるかアドレスレジスタ群105bにあるかを判別する
(ステップS30)。さらに、制御信号発生部103a
は、解読された命令の内容及びアクセス先のレジスタの
種別に応じて演算器104、符号拡張器109、ゼロ拡
張器110に制御信号を出力する(ステップS40)。When immediate data having a short data width is detected, it is determined whether the access destination register (destination register) designated by this instruction is in the data register group 105a or the address register group 105b (step S30). . Further, the control signal generator 103a
Outputs a control signal to the arithmetic unit 104, the code extender 109, and the zero extender 110 according to the content of the decoded instruction and the type of the register of the access destination (step S40).
【0029】ここで、命令の内容毎にデータ処理装置の
処理動作を説明する。 (1)「データレジスタ群105aまたはアドレスレジ
スタ群105bに属するレジスタ間のデータ転送、ある
いはこれらのレジスタに格納されたデータの演算」命令
の場合。(例えば、”MOVE D0,D1”や”AD
D A0,A1”等) 前者では、ソースレジスタから読み出されたNビット幅
のデータが指定されたレジスタ(ディスティネーション
レジスタ)に格納される。Here, the processing operation of the data processing device will be described for each instruction content. (1) In the case of a "data transfer between registers belonging to data register group 105a or address register group 105b or operation of data stored in these registers" instruction. (For example, "MOVE D0, D1" or "AD
In the former case, the N-bit width data read from the source register is stored in the designated register (destination register).
【0030】後者では、所定のレジスタから読み出され
た2つのNビット幅のデータが演算器104に入力さ
れ、所定の演算がなされた後、指定されたレジスタに格
納される。 (2)「Mビットの即値データをデータレジスタ群10
5aに格納し、あるいは演算する」命令の場合。(例え
ば、”MOVI #H’0010,D0”や”ADDI
#H’0010,D0”等) 前者では、命令解読部103において、命令がMビット
幅の即値データを指定し、かつディスティネーションレ
ジスタがデータレジスタ群105aであることが解読さ
れる。この結果、Mビット幅の即値データは、符号拡張
器109でNビット幅に拡張されて指定されたデータレ
ジスタへ格納される。In the latter case, the two data of N-bit width read from the predetermined register are input to the arithmetic unit 104, and after the predetermined arithmetic operation is performed, the data are stored in the designated register. (2) “M-bit immediate data is transferred to the data register group 10
5a, store or operate ”. (For example, "MOVI # H'0010, D0" or "ADDI
# H'0010, D0 ", etc.) In the former case, the instruction decoding unit 103 decodes that the instruction specifies immediate data having an M-bit width, and the destination register is the data register group 105a. The M-bit width immediate data is expanded to an N-bit width by the sign extender 109 and stored in the designated data register.
【0031】後者では、上記と同様に、Mビット幅の即
値データは、符号拡張器109でNビット幅に拡張され
て演算器104の一方に入力される。そして、所定の演
算が行われた後、指定されたデータレジスタへ出力され
る。 (3)「Mビットの即値データをアドレスレジスタ群1
05bに格納し、あるいは演算する」命令の場合。(例
えば、”MOVI #H’0010,A0”や”ADD
I #H’0010,A0”等) 前者では、命令解読部103において、命令がMビット
の即値データを指定し、かつディスティネーションレジ
スタがアドレスレジスタ群105bであることが解読さ
れる。この結果、Mビット幅の即値データは、ゼロ拡張
器110でNビット幅に拡張されて指定されたアドレス
レジスタへ出力される。In the latter case, similarly to the above, the M-bit width immediate data is expanded to the N-bit width by the sign extender 109 and input to one of the arithmetic units 104. Then, after a predetermined calculation is performed, the data is output to the designated data register. (3) “M-bit immediate data is transferred to address register group 1
Command stored in 05b or operated ". (For example, "MOVI # H'0010, A0" or "ADD
I # H'0010, A0 ") In the former case, the instruction decoding unit 103 decodes that the instruction specifies M-bit immediate data and the destination register is the address register group 105b. The immediate data of M-bit width is expanded to N-bit width by the zero extender 110 and output to the designated address register.
【0032】後者では、同様にMビット幅の即値データ
がゼロ拡張器110でNビット幅にゼロ拡張されて演算
器104の一方に入力される。そして、所定の演算が行
われた後、指定されたアドレスレジスタ群105bへ出
力される。ここで、ゼロ拡張器110の動作について図
4を用いて説明する。ゼロ拡張器110は、Mビットで
表現される数値の最上位ビットが0、1のいずれであっ
ても、上位側へNビットまで0を発生させて拡張する。In the latter case, similarly, immediate data of M-bit width is zero-extended to N-bit width by the zero extender 110 and input to one of the arithmetic units 104. Then, after a predetermined calculation is performed, it is output to the designated address register group 105b. Here, the operation of the zero extender 110 will be described with reference to FIG. The zero extender 110 generates and extends 0 to N bits to the upper side regardless of whether the most significant bit of the numerical value represented by M bits is 0 or 1.
【0033】さらに、この実施例によるデータ処理装置
について、特に、Mビット幅の即値データの処理動作を
具体例を用いて説明する。一例として、従来の装置の説
明に使用したものと同じ内容のプログラムの実行動作に
ついて説明する。図6は、従来の例を示す図8及び図1
1に対応するプログラムを示している。このプログラム
の内容を再記すると、図10に示すように、32ビット
でアドレス指定されるメモリの全アドレス空間の中で
H’8000(H’は16進数表記を示す)番地から
H’8100番地までH’10番地刻みに格納されてい
るメモリ上の16個のデータを順次加算し、その和を
H’10000000番地へ書き出す処理を示してい
る。以下、図6に従って図1〜図5を参照して説明す
る。 命令(1):データレジスタD0をクリアする。 命令(2):アドレスレジスタA0に32ビットの即値
データH’00008000を設定する。Further, the data processing apparatus according to this embodiment will be described in particular with reference to a specific example of the processing operation of M-bit width immediate data. As an example, the operation of executing a program having the same content as that used to describe the conventional apparatus will be described. FIG. 6 is a conventional example shown in FIG. 8 and FIG.
The program corresponding to 1 is shown. When the contents of this program are rewritten, as shown in FIG. 10, from the address H'8000 (H 'indicates hexadecimal notation) to the address H'8100 in the entire address space of the memory addressed by 32 bits. Up to 16 data in the memory stored at every H'10 address are sequentially added, and the sum is written to the H'10000000 address. Hereinafter, description will be given with reference to FIGS. 1 to 5 according to FIG. Instruction (1): Clear the data register D0. Instruction (2): Set 32-bit immediate data H'00008000 in the address register A0.
【0034】図3を参照して、命令解読部103は、こ
の命令を解読する(ステップS10)。そして、16ビ
ット表記の即値データH’8000を使用していること
を判別する(ステップS20)。さらに、アドレスレジ
スタ群105bへのデータ格納命令であることを判別す
る(ステップS30)。したがって、命令解読部103
は、制御信号発生部103aによって、ゼロ拡張器11
0に制御信号を発する(ステップS40)。ゼロ拡張器
110は、制御信号に従って16ビットの即値データ
H’8000を32ビットデータH’00008000
にゼロ拡張し、アドレスレジスタA0にロードする。 命令(3):アドレスレジスタA0で指定されるメモリ
の内容をデータレジスタD1に格納する。 命令(4):データレジスタD1に格納されたデータを
データレジスタD0に格納されたデータに加算し、デー
タレジスタD0に格納する。 命令(5):アドレスレジスタA0に格納されたデータ
に即値データH’0010を加算し、アドレスレジスタ
A0に格納する。Referring to FIG. 3, the instruction decoding unit 103 decodes this instruction (step S10). Then, it is determined that the immediate data H'8000 in 16-bit notation is used (step S20). Further, it is determined that the instruction is a data storage instruction to the address register group 105b (step S30). Therefore, the instruction decoding unit 103
Is generated by the control signal generator 103a.
A control signal is issued to 0 (step S40). The zero extender 110 converts the 16-bit immediate data H'8000 into 32-bit data H'00008000 according to the control signal.
Zero-extend to and load address register A0. Instruction (3): Store the contents of the memory specified by the address register A0 in the data register D1. Instruction (4): Add the data stored in the data register D1 to the data stored in the data register D0, and store in the data register D0. Instruction (5): Immediate data H'0010 is added to the data stored in the address register A0 and the result is stored in the address register A0.
【0035】この命令は16ビットの即値データH’0
010を使用している。そして、アドレスレジスタA0
へのデータ格納を指示している。したがって、命令解読
部103は、制御信号発生部103aによって、先ずゼ
ロ拡張器110に制御信号を発する。ゼロ拡張器110
は、制御信号に従って16ビットの即値データH’00
10を32ビットデータH’00000010にゼロ拡
張し、演算器104の一方に出力する。This instruction is 16-bit immediate data H'0.
I am using 010. Then, the address register A0
To store data in. Therefore, the instruction decoding unit 103 first issues a control signal to the zero extender 110 by the control signal generation unit 103a. Zero extender 110
Is 16-bit immediate data H'00 according to the control signal.
10 is zero-extended to 32-bit data H'00000010 and output to one of the arithmetic units 104.
【0036】また、制御信号発生部103aからの制御
信号を受けて、アドレスレジスタA0は、格納されたデ
ータH’00008000を読み出し、演算器104の
他方に出力する。さらに、演算器104は、入力された
2つの32ビットデータ(H’00008000、H’
00000010)を加算し、加算結果をアドレスレジ
スタA0に格納する。 命令(6):上記の算出データと即値データH’810
0とを比較する。Upon receiving the control signal from the control signal generator 103a, the address register A0 reads the stored data H'00008000 and outputs it to the other of the arithmetic units 104. Further, the arithmetic unit 104 receives the two input 32-bit data (H'00008000, H ').
00000010) is added and the addition result is stored in the address register A0. Command (6): Above calculated data and immediate data H'810
Compare with 0.
【0037】この命令は、16ビットの即値データH’
8100を使用している。そして、アドレスレジスタA
0のデータとの比較を指示している。したがって、制御
信号発生部103aは、先ずゼロ拡張器110に制御信
号を発する。ゼロ拡張器110は、制御信号に従って1
6ビットの即値データH’8100を32ビットデータ
H’00008100にゼロ拡張し、演算器104の一
方に出力する。This instruction is 16-bit immediate data H '.
I am using 8100. And the address register A
Instructed to compare with 0 data. Therefore, the control signal generator 103a first issues a control signal to the zero extender 110. The zero extender 110 outputs 1 according to the control signal.
The 6-bit immediate data H'8100 is zero-extended to the 32-bit data H'00008100 and output to one of the arithmetic units 104.
【0038】また、アドレスレジスタ105bは、制御
信号発生部103aからの制御信号を受けて、アドレス
レジスタA0から格納データ(H’00008010)
を読み出し、演算器104の他方側に出力する。演算器
104は、入力された2つの32ビットデータを比較す
る。 命令(7):比較結果に基づいて、小さければラベルA
で示す命令(3)へ戻り、等しいかまたは大きければ命
令(8)へ進むように判断する。The address register 105b receives the control signal from the control signal generator 103a, and stores the data (H'00008010) stored in the address register A0.
Is read out and output to the other side of the arithmetic unit 104. The arithmetic unit 104 compares the two input 32-bit data. Command (7): Label A if smaller based on the comparison result
Return to the instruction (3) indicated by, and if equal or larger, it is determined to proceed to the instruction (8).
【0039】命令(3)から命令(7)で記述されるル
ープ処理は、アドレスレジスタA0の値がH’0000
8000から始めてH’00000010ずつ更新さ
れ、H’00008100になるまで繰返される。この
ために、16回の加算結果がデータレジスタD0に格納
された後、命令(8)へ進む。 命令(8):データレジスタD0の内容をメモリのH’
10000000番地へ格納する。In the loop processing described by the instructions (3) to (7), the value of the address register A0 is H'0000.
It starts from 8000, is updated by H'00000010, and is repeated until it becomes H'00008100. For this reason, after the addition result of 16 times is stored in the data register D0, the operation proceeds to the instruction (8). Instruction (8): The contents of data register D0 are stored in memory H '
Store at address 10000000.
【0040】このように、命令(2)及び命令(6)に
おいて使用した即値データは、図10に示すメモリの先
頭から2の16乗のアドレス空間のアドレスデータを1
6ビット表記で指定することができる。このために、3
2ビット表記する必要のある従来例に比べて、命令
(2)、(6)の2ステップにおいて即値データの記述
がそれぞれ2バイト(16ビット)分短くなる。その結
果、上記例のプログラムの場合には、従来例に比較して
プログラムサイズを4バイト小さくすることができる。As described above, the immediate data used in the instruction (2) and the instruction (6) are the address data in the address space of 2 16 to the 1st power of the memory shown in FIG.
It can be specified in 6-bit notation. Because of this, 3
Compared with the conventional example which requires 2-bit notation, the description of immediate data in each of the two steps of instructions (2) and (6) is shortened by 2 bytes (16 bits). As a result, in the case of the program of the above example, the program size can be reduced by 4 bytes as compared with the conventional example.
【0041】さらに、同一バスで命令とデータがアクセ
スされる構成のデータ処理装置においては、プログラム
サイズの削減は、命令獲得のためのバスアクセスと命令
実行に伴うデータアクセスのためのバスアクセスとの競
合を減少させることになり、実行速度の向上に寄与する
ことができる。なお、上記実施例においては、32ビッ
トのアドレスレジスタを有するデータ処理装置に対し
て、16ビットの即値データの処理について説明した
が、この例に限定されるものではなく、16、32等N
ビットデータの格納が可能なアドレスレジスタに対し
て、4、8、16等M(M<N)ビットの即値データの
処理に適用することができる。Further, in a data processing device having a structure in which instructions and data are accessed on the same bus, the program size is reduced by bus access for instruction acquisition and bus access for data access accompanying instruction execution. Contention is reduced, which can contribute to improvement in execution speed. In the above embodiment, the processing of 16-bit immediate data is described with respect to the data processing device having the 32-bit address register, but the present invention is not limited to this example, and N of 16, 32, etc.
For an address register capable of storing bit data, it can be applied to processing of immediate data of M (M <N) bits such as 4, 8, and 16 bits.
【0042】[0042]
【発明の効果】このように、本発明は、即値データを含
む命令が与えられた場合に、即値データがアクセス対象
とするレジスタの種別に応じて、ゼロ拡張及び符号拡張
のいずれかを判別してデータ拡張した後、所定の演算処
理を行うように構成されているので、Nビットで表現さ
れる全アドレス空間のMSBが”1”のアドレス空間に
あるデータをアクセスするための即値データとして、N
より小さいMビットの即値データを指定することができ
る。これにより、即値データの表記が簡略化され、プロ
グラムサイズを小さくすることができる。As described above, according to the present invention, when an instruction including immediate data is given, either zero extension or sign extension is discriminated according to the type of the register to be accessed by the immediate data. Since it is configured to perform predetermined arithmetic processing after data expansion by means of data expansion, as immediate data for accessing data in the MSB of the entire address space represented by N bits in the address space of "1", N
It is possible to specify smaller M-bit immediate data. This simplifies the notation of immediate data and reduces the program size.
【図1】本発明の実施例によるデータ処理装置の全体構
成を示すブロック図である。FIG. 1 is a block diagram showing an overall configuration of a data processing device according to an embodiment of the present invention.
【図2】図1に示すデータ処理装置の主要部の構成を示
すブロック図である。FIG. 2 is a block diagram showing a configuration of a main part of the data processing device shown in FIG.
【図3】本実施例のデータ処理装置の命令解読部103
の処理を示す処理フロー図である。FIG. 3 is an instruction decoding unit 103 of the data processing apparatus of this embodiment.
It is a processing flow diagram showing the processing of.
【図4】ゼロ拡張器の動作を概念的に示す説明図であ
る。FIG. 4 is an explanatory diagram conceptually showing the operation of the zero extender.
【図5】符号拡張器の動作を概念的に示す説明図であ
る。FIG. 5 is an explanatory diagram conceptually showing the operation of the code extender.
【図6】本実施例のデータ処理装置に使用されるプログ
ラム例を示す説明図である。FIG. 6 is an explanatory diagram showing an example of a program used in the data processing device of this embodiment.
【図7】従来の第1例におけるデータ処理装置の構成を
示すブロック図である。FIG. 7 is a block diagram showing a configuration of a conventional data processing device in a first example.
【図8】図7に示す従来のデータ処理装置に使用される
プログラム例を示す説明図である。8 is an explanatory diagram showing an example of a program used in the conventional data processing device shown in FIG.
【図9】図8に示すプログラムの動作を説明するフロー
チャートである。9 is a flowchart illustrating the operation of the program shown in FIG.
【図10】データ処理装置が使用するメモリ空間を模式
的に示す説明図である。FIG. 10 is an explanatory diagram schematically showing a memory space used by the data processing device.
【図11】従来の第2例によるプログラム例を示す説明
図である。FIG. 11 is an explanatory diagram showing a program example according to a second conventional example.
103 命令解読部 103a 制御信号発生部 104 演算部 105 レジスタ 105a データレジスタ群 105b アドレスレジスタ群 109 符号拡張器 110 ゼロ拡張器 103 Instruction Decoding Unit 103a Control Signal Generating Unit 104 Arithmetic Unit 105 Register 105a Data Register Group 105b Address Register Group 109 Code Extender 110 Zero Extender
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.5 識別記号 庁内整理番号 FI 技術表示箇所 G06F 9/36 330 B ─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 5 Identification code Internal reference number FI technical display location G06F 9/36 330 B
Claims (6)
のデータ演算を行うデータ処理装置であって、 整数Nビット幅を有する第1レジスタと、 Nビット幅を有する第2レジスタと、 Nより小さいM(整数)ビットデータの最上位ビットを
上位側へ複写することによって前記Mビットデータのデ
ータ幅をNビットに拡張する符号拡張器と、 Mビットデータの上位側にゼロ値を発生させることによ
って前記Mビットデータのデータ幅をNビットに拡張す
るゼロ拡張器と、 与えられた命令に従って演算処理を行う演算器と、 命令を解読し、前記命令がMビットの即値データを含
み、かつ前記第1レジスタに対する格納処理を有する場
合、前記即値データを前記ゼロ拡張器に出力し、前記命
令がMビットの即値データを含み、かつ前記第2レジス
タに対する格納処理を有する場合、前記即値データを前
記符号拡張器に出力するように前記第1レジスタ、前記
第2レジスタ及び前記演算器を制御する命令制御手段と
を備えた、データ処理装置。1. A data processing device for performing a predetermined data operation according to an instruction designating immediate data, comprising: a first register having an integer N-bit width, a second register having an N-bit width, and M smaller than N. A sign extender for extending the data width of the M-bit data to N bits by copying the most significant bit of the (integer) bit data to the upper side; and a zero extender for generating a zero value on the upper side of the M-bit data. A zero extender that extends the data width of M-bit data to N bits; an arithmetic unit that performs arithmetic processing according to a given instruction; an instruction that decodes the instruction, and the instruction includes M-bit immediate data; In the case of having a storage process for a register, the immediate data is output to the zero extender, the instruction includes M-bit immediate data, and the second register A data processing device comprising: instruction storing means for controlling the first register, the second register, and the arithmetic unit so as to output the immediate data to the sign extender when the data processing is performed.
データを格納するアドレスレジスタであり、 前記第2レジスタは、前記命令のデータオペランドを格
納するデータレジスタである、請求項1記載のデータ処
理装置。2. The data processing apparatus according to claim 1, wherein the first register is an address register that stores address data of a memory, and the second register is a data register that stores a data operand of the instruction. .
データを解読する、請求項1記載のデータ処理装置。3. The data processing device according to claim 1, wherein the instruction control means decodes immediate data of a power of two.
に対してアクセスするNより小さい整数Mビット幅の即
値データを指定した命令に従って所定の演算を行うデー
タ処理方法であって、 命令を解読し、命令が指定するアクセス先レジスタを判
別する命令解読ステップと、 前記命令が前記第1レジスタに対する格納処理を有する
場合、Mビット幅の前記即値データをゼロ拡張すること
によってNビット幅のデータに拡張し、前記命令が前記
第2レジスタに対する格納処理を有する場合、Mビット
幅の前記即値データを符号拡張することによってNビッ
ト幅のデータに拡張するデータ拡張ステップと、 Nビット幅に拡張された前記即値データを用い、前記命
令に従って所定の演算処理を行う演算ステップとを備え
た、データ処理方法。4. A data processing method for performing a predetermined operation according to an instruction designating immediate data having an integer M bit width smaller than N, which accesses the first and second registers having an integer N bit width. An instruction decoding step of decoding and discriminating an access destination register designated by the instruction; and, if the instruction has a storing process for the first register, N-bit wide data by zero-extending the immediate data of M-bit width And the instruction has a storing process for the second register, the data expansion step of expanding the immediate data of M bit width to data of N bit width by sign extension, and expanding to N bit width. And a calculation step of performing a predetermined calculation process according to the instruction using the immediate data.
データを格納するアドレスレジスタであり、 前記第2レジスタは、前記命令のデータオペランドを格
納するデータレジスタである、請求項5記載のデータ処
理方法。5. The data processing method according to claim 5, wherein the first register is an address register that stores address data of a memory, and the second register is a data register that stores a data operand of the instruction. .
キ乗で指定される、請求項4記載のデータ処理方法。6. The data processing method according to claim 4, wherein the bit width M of the immediate data is designated by a power of 2.
Priority Applications (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5129529A JP2832900B2 (en) | 1993-05-31 | 1993-05-31 | Data processing device and data processing method |
EP01202455A EP1164479B1 (en) | 1993-05-27 | 1994-05-27 | Program converting unit |
DE69434971T DE69434971T2 (en) | 1993-05-27 | 1994-05-27 | Program Implementation Unit |
EP94303862A EP0626641B1 (en) | 1993-05-27 | 1994-05-27 | Processor improved in address management |
DE69434967T DE69434967T2 (en) | 1993-05-27 | 1994-05-27 | Program conversion unit and improved addressing processor |
EP02076028A EP1229440B1 (en) | 1993-05-27 | 1994-05-27 | Program converting unit and processor improved in address management |
DE69432445T DE69432445T2 (en) | 1993-05-27 | 1994-05-27 | Improved processor for addressing |
EP04075265A EP1416374A3 (en) | 1993-05-27 | 1994-05-27 | Program converting unit and processor improved in address management |
EP02076025A EP1229439A3 (en) | 1993-05-27 | 1994-05-27 | Program converting unit and processor improved in address management |
US08/587,338 US5809306A (en) | 1993-05-27 | 1996-01-16 | Variable address length compiler and processor improved in address management |
US09/662,484 USRE41959E1 (en) | 1993-05-27 | 2000-09-14 | Variable address length compiler and processor improved in address management |
US10/991,367 USRE40498E1 (en) | 1993-05-27 | 2004-11-19 | Variable address length compiler and processor improved in address management |
US11/607,889 US20080320454A1 (en) | 1993-05-27 | 2006-12-04 | Variable address length compiler and processor improved in address management |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5129529A JP2832900B2 (en) | 1993-05-31 | 1993-05-31 | Data processing device and data processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06337782A true JPH06337782A (en) | 1994-12-06 |
JP2832900B2 JP2832900B2 (en) | 1998-12-09 |
Family
ID=15011774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5129529A Expired - Lifetime JP2832900B2 (en) | 1993-05-27 | 1993-05-31 | Data processing device and data processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2832900B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006154979A (en) * | 2004-11-25 | 2006-06-15 | Sony Corp | Floating point number arithmetic circuit |
-
1993
- 1993-05-31 JP JP5129529A patent/JP2832900B2/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006154979A (en) * | 2004-11-25 | 2006-06-15 | Sony Corp | Floating point number arithmetic circuit |
US7949696B2 (en) | 2004-11-25 | 2011-05-24 | Sony Corporation | Floating-point number arithmetic circuit for handling immediate values |
Also Published As
Publication number | Publication date |
---|---|
JP2832900B2 (en) | 1998-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0827716B2 (en) | Data processing device and data processing method | |
US5249280A (en) | Microcomputer having a memory bank switching apparatus for accessing a selected memory bank in an external memory | |
JPS6122331B2 (en) | ||
JP2970821B2 (en) | Data processing device | |
US5581774A (en) | Data processor decoding and executing a train of instructions of variable length at increased speed | |
JP3605978B2 (en) | Microcomputer | |
JP2000357088A (en) | Microprocessor and data processing system | |
JP2551167B2 (en) | Microcomputer | |
US5301338A (en) | System including central processing unit | |
JPH07239780A (en) | One-clock variable length instruction execution process type instruction read computer | |
JP2556182B2 (en) | Data processing device | |
JPH027097B2 (en) | ||
JP2832900B2 (en) | Data processing device and data processing method | |
US5596761A (en) | Central processing unit with internal register initializing means | |
JPH0192851A (en) | Address space switching device | |
JP3507193B2 (en) | Load / store instruction processor | |
US7103751B1 (en) | Method and apparatus for representation of an address in canonical form | |
JP3123545B2 (en) | Data processing device | |
JP3024410B2 (en) | Programmable controller | |
JP2922979B2 (en) | Central processing unit | |
JP2918570B2 (en) | Central processing unit | |
JPH04195629A (en) | Arithmetic flag generation device | |
JPS5955546A (en) | Firmware processing equipment | |
JP3269435B2 (en) | Bus interface unit | |
JPS5951070B2 (en) | address translation device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081002 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091002 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091002 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101002 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111002 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121002 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131002 Year of fee payment: 15 |
|
EXPY | Cancellation because of completion of term |