JP3554342B2

Backward-compatible computer architecture with extended word size and address space

Abstract

This record has no abstract on file.

Term

Term ended

Expired 11 March 2012, 14.5 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

17 claims: 15 independent, 2 dependent

  1. 1
    In a processing unit of a computer system consisting of a processing unit and a memory subsystem, a means for identifying an operation corresponding to an instruction fetched from the memory subsystem, a large number of m-bit load instructions, a large number of logical operation instructions, and the like. It has a large number of m-bit shift instructions and a large number of m-bit addition instructions, and a first subset instruction called an m-bit instruction, a large number of N-bit load instructions, a large number of N-bit shift instructions, and a large number of N-bit addition instructions. It has a second subset of instructions called N-bit instructions, a load circuit that performs the specified load operation to search for an entity with a maximum N-bit length from the memory subsystem, and the searched m-bits. To perform controllable load code extension means to code-extend an entity to N bits, a register file with a set of N-bit registers, and a logical operation specified between two N-bit operands. The logic circuit of, the shift circuit that performs the shift operation specified for the N-bit operand, the shift code extension means that can control the shift operation result to code-extend from m bits to N bits, and a pair of N bits. An adder for performing an addition operation specified between the operands, an addition code extension means capable of controlling operation to extend the operation result in the adder from m bits to N bits, and m in the adder. Means for detecting bit overflow, means for defining an N-bit data path from each output port of the load circuit, the logic circuit, the shift circuit, and the adder to the register file, and the logic from the register file. At least one means of defining an N-bit data path to each input port of the circuit, said shift circuit and said adder, and means of activating the load code extension means in response to at least one m-bit load instruction. A means for activating the shift code extension means in response to one m-bit shift instruction and the addition code extension means in response to the occurrence of at least one m-bit addition instruction and m-bit overflow.The means for activating the load code extension means, the means for activating the shift code extension means, and the means for activating the additive code extension means are N-bit loads. , A processing unit that does not respond to shift and add instructions. 処理ユニットとメモリサブシステムとからなるコンピュータシステムの処理ユニットにおいて、前記メモリサブシステムからフェッチされた命令に応答し対応する動作を特定する手段と、多数のmビットロード命令、多数の論理演算命令、多数のmビットシフト命令及び多数のmビット加算命令を有しておりmビット命令と呼ばれる第一サブセットの命令並びに多数のNビットロード命令、多数のNビットシフト命令、多数のNビット加算命令を有しておりNビット命令と呼ばれる第二サブセットの命令と、前記メモリサブシステムから最大でNビット長のエンティティを検索するために指定されたロード動作を実施するロード回路と、検索したmビットのエンティティをNビットへ符号拡張するために制御動作可能なロード符号拡張手段と、一組のNビットレジスタを持ったレジスタファイルと、二つのNビットオペランドの間で特定された論理演算を実施するための論理回路と、Nビットオペランドに関して特定されたシフト動作を実施するシフト回路と、シフト動作の結果をmビットからNビットへ符号拡張すべく制御動作可能なシフト符号拡張手段と、一対のNビットオペランドの間で特定された加算演算を実施するための加算器と、前記加算器における演算結果をmビットからNビットへ符号拡張すべく制御動作可能な加算符号拡張手段と、前記加算器におけるmビットオーバーフローを検知する手段と、前記ロード回路、前記論理回路、前記シフト回路及び前記加算器の各々の出力ポートから前記レジスタファイルへのNビットデータ経路を画定する手段と、前記レジスタファイルから前記論理回路、前記シフト回路及び前記加算器の各々の入力ポートへNビットデータ経路を画定する手段と、少なくとも一つのmビットロード命令に応答して前記ロード符号拡張手段を活性化させる手段と、少なくとも一つのmビットシフト命令に応答して前記シフト符号拡張手段を活性化させる手段と、少なくとも一つのmビット加算命令及びmビットオーバーフローの発生に応答して前記加算符号拡張手段を活性化させる手段と、を有しており、前記ロード符号拡張手段を活性化させる手段、前記シフト符号拡張手段を活性化させる手段、及び前記加算符号拡張手段を活性化させる手段がNビットのロード、シフト及び加算命令に応答するものでないことを特徴とする処理ユニット。
  2. 3
    In claim 1, further sign extension or zero of the searched entries less than m bits associated with the load circuit and the load sign extension means to define the searched entity of m bits. A processing unit characterized by being provided with means for expansion. 請求項1において、更に、前記ロード回路及び前記ロード符号拡張手段と関連しており更にmビットの検索されたエンティティを画定するためにmビット未満の検索されたエントリをmビットへ符号拡張又はゼロ拡張させる手段が設けられていることを特徴とする処理ユニット。
  3. 5
    In claim 1, the m-bit addition instruction has ADD and SUD instructions that are trapped by m-bit overflow and do not generate a result, and are not trapped by m-bit overflow and generate a result. A processing unit having ADDU and SUBU instructions, and the means for activating the addition sign extension means responds to the ADDU and SUBU instructions and does not respond to the ADD and SUBU instructions. 請求項1において、前記mビット加算命令がmビットオーバーフローでトラップし且つ結果を発生させることのないADD及びSUD命令を有しており、且つmビットオーバーフローでトラップすることがなく且つ結果を発生するADDU及びSUBU命令を有しており、且つ前記加算符号拡張手段を活性化させる手段が前記ADDU及びSUBU命令に応答し且つ前記ADD及びSUB命令に応答することがないことを特徴とする処理ユニット。
  4. 6
    In claim 1, further, the DADD and DSUB instructions in which the N-bit overflow detecting means is provided in the adder and the N-bit addition instruction is trapped by the N-bit overflow and does not generate a result. A processing unit that has DADDU and DSUBU instructions that generate results without being trapped by N-bit overflow. 請求項1において、更に、前記加算器内にNビットオーバーフロー検知手段が設けられており、且つ前記Nビット加算命令が、Nビットオーバーフローでトラップし且つ結果を発生することのないDADD及びDSUB命令を有しており且つNビットオーバーフローでトラップすることがなく且つ結果を発生するDADDU及びDSUBU命令を有していることを特徴とする処理ユニット。
  5. 7
    In the adder in the execution unit of the data processor, which can operate to combine two N-bit operands, the maximum digit bit is specified as bit (N-1) and the minimum digit bit is specified as bit (0), N A means of adding a pair of input operands in response to a first operation code named bit addition and supplying the addition result, adding a pair of input operands in response to a second operation code named m-bit addition and Initial result of bits (N-1) to bits (m) before feeding the result, at least if the bit (m) of the initial result is not equal to the bit (m-1) of the initial result. An adder, characterized in that it has a means of setting to the value of bits (m-1) of. 二つのNビットオペランドを結合すべく動作可能であり最大桁ビットはビット(N-1)と指定され且つ最小桁ビットがビット(0)として指定されるデータプロセサの実行ユニットにおける加算器において、Nビット加算と命名された第一オペコードに応答して一対の入力オペランドを加算し且つその加算結果を供給する手段、mビット加算と命名された第二オペコードに応答し一対の入力オペランドを加算し且つ少なくとも初期的な結果のビット(m)が初期的な結果のビット(m-1)に等しくない場合にはその結果を供給する前にビット(N-1)乃至ビット(m)を初期的結果のビット(m-1)の値にセットする手段、を有していることを特徴とする加算器。
  6. 8
    N-bit logic in the shift unit in the execution unit of the data processor that can operate to shift the N-bit operand, the maximum digit bit is specified as bit (N-1) and the minimum digit bit is specified as bit (0). A means of shifting the input operand to the right by a specified number of bit positions in response to the first operation code named right shift, and filling the empty bit positions with 0 if the specified number is not zero. In response to the second operation code named m-bit logical right shift, the input operand is shifted to the right by the specified number of bit positions, and if the specified number is not zero, the empty bit position and the next A shift unit characterized by having a means for filling the Nm maximum digit bit positions of the above with 0. Nビットオペランドをシフトすべく動作可能であり最大桁ビットはビット(N-1)として指定され且つ最小桁ビットはビット(0)として指定されるデータプロセサの実行ユニットにおけるシフトユニットにおいて、Nビット論理右シフトと命名された第一オペコードに応答して入力オペランドを指定した数のビット位置だけ右側へシフトさせ且つその指定した数がゼロでない場合には空きとされたビット位置を0で充填させる手段、mビット論理右シフトと命名された第二オペコードに応答して入力オペランドを指定した数のビット位置だけ右側へシフトさせ且つその指定した数がゼロでない場合には空きとされたビット位置及び次のN-m個の最大桁ビット位置を0で充填させる手段、を有していることを特徴とするシフトユニット。
  7. 9
    It is operational to shift the N-bit operand, the maximum digit bit is specified as bit (N-1) and the minimum digit bit is specified as bit (0) in the shift unit in the execution unit of the data processor. In response to the first operation code named as left shift, (1) the input operand is shifted to the left by the specified number of bit positions, and if the specified number is non-zero, it is (2) empty. A means of filling bit positions with 0, in response to a second operation code named m-bit left shift (1) shifts the input operand to the left by a specified number of bit positions and the specified number is zero. If not, (2) fill the empty bit positions with 0 and (3) set the resulting bits (N-1) to bits (m) to the resulting bit (m-1) value. A shift unit characterized by having means to make it. Nビットオペランドをシフトすべく動作可能であり最大桁ビットはビット(N-1)として指定され且つその最小桁ビットはビット(0)として指定されるデータプロセサの実行ユニットにおけるシフトユニットにおいて、Nビット左シフトとして命名された第一オペコードに応答して(1)入力オペランドを指定された数のビット位置だけ左側へシフトさせ且つその指定された数がゼロでない場合には(2)空きとされたビット位置を0で充填させる手段、mビット左シフトと命名された第二オペコードに応答して(1)入力オペランドを指定された数のビット位置だけ左側へシフトさせ且つその指定された数がゼロでない場合には(2)空きとされたビット位置を0で充填させ且つ(3)その結果のビット(N-1)乃至ビット(m)をその結果のビット(m-1)の値へセットさせる手段、を有していることを特徴とするシフトユニット。
  8. 10
    In claim 1, the shift circuit, the shift code extension means, and the means for activating the shift code extension means all provide an N-bit operand in response to a first operation code designated as an N-bit logical right shift. A means of shifting the bit position of the specified number S to the right and filling the bit position of the bit (N-1) to the bit (NS) with 0 when the specified number is not zero, with m-bit logical right shift. In response to the specified second operation code, the N-bit operand is shifted to the right by the specified number of S bit positions, and if the specified number is not zero, the bits of bits (N-1) to (mS). Means to fill the position with 0, in response to the third operation code specified as N-bit left shift (1) Shift the N-bit operand to the left by the specified number of S bit positions, and the specified number is not zero. In some cases, (2) means to fill the bit positions of bits (S-1) to (0) with 0, and (1) specify the N-bit operand in response to the fourth operation code specified as m-bit left shift. If only the bit position of the number S is shifted to the left and the specified number is not zero, (2) the bit positions of bits (S-1) to (0) are filled with 0 to give the initial result. A processing unit characterized in that (3) means for setting bits (N-1) to bits (m) to the value of the initial result bit (m-1). 請求項1において、前記シフト回路、前記シフト符号拡張手段、及び前記シフト符号拡張手段を活性化させる手段が、共に、Nビット論理右シフトと指定される第1オペコードに応答してNビットオペランドを指定した数Sのビット位置だけ右へシフトさせ且つその指定した数がゼロでない場合にはビット(N-1)乃至ビット(N-S)のビット位置を0で充填する手段、mビット論理右シフトと指定される第2オペコードに応答してNビットオペランドを指定した数Sのビット位置だけ右へシフトさせ且つその指定した数がゼロでない場合にはビット(N-1)乃至ビット(m-S)のビット位置を0で充填する手段、Nビット左シフトと指定される第3オペコードに応答して(1)Nビットオペランドを指定した数Sのビット位置だけ左へシフトさせ且つその指定した数がゼロでない場合には(2)ビット(S-1)乃至ビット(0)のビット位置を0で充填する手段、mビット左シフトと指定される第4オペコードに応答して(1)Nビットオペランドを指定した数Sのビット位置だけ左へシフトさせ且つその指定した数がゼロでない場合には(2)初期的結果を与えるためにビット(S-1)乃至ビット(0)のビット位置を0で充填し且つ(3)ビット(N-1)乃至ビット(m)を前記初期的結果のビット(m-1)の値へ設定する手段、を有していることを特徴とする処理ユニット。
  9. 11
    In the processing unit in the computer system consisting of the processing unit and the memory subsystem, a decoder that identifies the corresponding operation in response to the instruction fetched from the memory subsystem is provided, and the operation can be performed. A bit entity has a maximum digit bit designated as bit (m-1) and a minimum digit bit designated as bit (0), and an N-bit entity capable of performing an operation is a bit (N). It has a maximum digit bit designated as -1) and a minimum digit bit designated as bit (0), and the instructions are the first subset of instructions called m-bit instructions and the N-bit instruction. Containing a second subset of instructions called, where N is greater than m, the m-bit instructions include a large number of m-bit load instructions, a large number of logical operation instructions, and a large number of operations. It includes an m-bit shift instruction and a large number of m-bit addition instructions, and the N-bit instruction includes a large number of N-bit load instructions, a large number of N-bit shift instructions, and a large number of N-bit addition instructions. A load circuit is provided to perform a specified load operation to search for an entity with a maximum N-bit length from the memory subsystem, and the load circuit is provided with bits (m-) of the m-bit entity. N-bit result bits (N-1) to bits (Nm) equal to 1) and N-bit result bits (m-1) to bits (0) equal to m-bit entity bits (m-1) to bits (0) It has a set of related load code extension circuits that can control and operate in response to at least one m-bit load instruction to convert the retrieved m-bit entity to an N-bit result that has 0). A register file having the N-bit register of is provided, a logic circuit is provided to perform a specified logical operation between two N-bit operands and give a result, and a shift operation specified with respect to the N-bit operand is performed. A shift circuit is provided to perform and give the result, and the result of the shift operation is a bit (m) of the result.A shift code extension circuit that can be controlled and operated in response to at least one m-bit shift instruction is provided to change to an N-bit entity having bits (N-1) to bits (Nm) equal to -1). , An adder is provided that performs and gives a result of a specific adder operation between a pair of N-bit operands, which is from the bit position of bit (m-1) and bit (m-2). A condition in which a carry-out is provided and the carry-out from the bit position of the bit (m-1) and the bit (m-2) is different is called an m-bit overflow, and at least one m-bit adder instruction is executed and the carry-out is executed. Controllable operation is possible when an m-bit overflow occurs and the operation result in the adder is changed to an N-bit entity having bits (N-1) to bits (Nm) equal to the bit (m-1) of the result. An adder code extension circuit is provided, and an N-bit data path from each output port of the load circuit, the logic circuit, the shift circuit, and the adder to the register file is provided, and the register file is provided. An N-bit data path is provided from each input port of the logic circuit, the shift circuit, and the adder, and the load code extension circuit, the shift code extension circuit, and the adder code extension circuit are N bits. A processing unit that does not respond to load instructions, N-bit shift instructions, and N-bit adder instructions.M-bit addition instruction is executed and m-bit overflow occurs, and the operation result in the adder is an N-bit entity having bits (N-1) to bits (Nm) equal to the bit (m-1) of the result. An addition code extension circuit that can be controlled and operated when changing to is provided, and an N-bit data path from each output port of the load circuit, the logic circuit, the shift circuit, and the adder to the register file. Is provided, and an N-bit data path is provided from the register file to each input port of the logic circuit, the shift circuit, and the adder, and the load code extension circuit, the shift code extension circuit, and the like. A processing unit characterized in that the addition code extension circuit does not respond to an N-bit load instruction, an N-bit shift instruction, and an N-bit addition instruction.M-bit addition instruction is executed and m-bit overflow occurs, and the operation result in the adder is an N-bit entity having bits (N-1) to bits (Nm) equal to the bit (m-1) of the result. An addition code extension circuit that can be controlled and operated when changing to is provided, and an N-bit data path from each output port of the load circuit, the logic circuit, the shift circuit, and the adder to the register file. Is provided, and an N-bit data path is provided from the register file to each input port of the logic circuit, the shift circuit, and the adder, and the load code extension circuit, the shift code extension circuit, and the like. A processing unit characterized in that the addition code extension circuit does not respond to an N-bit load instruction, an N-bit shift instruction, and an N-bit addition instruction. 処理ユニットとメモリサブシステムとからなるコンピュータシステムにおける処理ユニットにおいて、メモリサブシステムからフェッチされた命令に応答して対応する動作を特定するデコーダが設けられており、動作を実施することが可能なmビットエンティティはビット(m-1)として指定される最大桁ビットとビット(0)として指定される最小桁ビットとを有しており且つ動作を実施することが可能なNビットエンティティはビット(N-1)として指定される最大桁ビットとビット(0)として指定される最小桁ビットとを有しており、前記命令は、mビット命令と呼称される命令の第一サブセットと、Nビット命令と呼称される命令の第二サブセットとを包含しており、尚Nはmよりも大きいものであり、前記mビット命令は、多数のmビットロード命令と、多数の論理演算命令と、多数のmビットシフト命令と、多数のmビット加算命令とを包含しており、前記Nビット命令は、多数のNビットロード命令と、多数のNビットシフト命令と、多数のNビット加算命令とを包含しており、前記メモリサブシステムから最大でNビット長のエンティティを検索するために指定されたロード動作を実施するロード回路が設けられており、前記ロード回路は、mビットエンティティのビット(m-1)に等しいNビット結果のビット(N-1)乃至ビット(N-m)及びmビットエンティティのビット(m-1)乃至ビット(0)に等しいNビット結果のビット(m-1)乃至ビット(0)を有しているNビット結果へ検索したmビットエンティティを変換させるために少なくとも一つのmビットロード命令に応答して制御動作可能な関連するロード符号拡張回路を有しており、一組のNビットレジスタを有するレジスタファイルが設けられており、二つのNビットオペランドの間で特定した論理演算を実施し且つ結果を与える論理回路が設けられており、Nビットオペランドに関して特定したシフト動作を実施し且つ結果を与えるシフト回路が設けられており、シフト動作の結果を該結果のビット(m-1)に等しいビット(N-1)乃至ビット(N-m)を有するNビットエンティティへ変化させるために少なくとも一つのmビットシフト命令に応答して制御動作可能なシフト符号拡張回路が設けられており、一対のNビットオペランドの間で特定した加算演算を実施し且つ結果を与える加算器が設けられており、前記加算器はビット(m-1)及びビット(m-2)のビット位置からのキャリーアウトを有しており、ビット(m-1)及びビット(m-2)のビット位置からのキャリーアウトが異なる条件をmビットオーバーフローと呼称し、少なくとも一つのmビット加算命令が実行され且つmビットオーバーフローが発生して前記加算器における演算結果を前記結果のビット(m-1)に等しいビット(N-1)乃至ビット(N-m)を有するNビットエンティティへ変化させる場合に制御動作可能な加算符号拡張回路が設けられており、前記ロード回路、前記論理回路、前記シフト回路、及び前記加算器の各々の出力ポートから前記レジスタファイルへのNビットデータ経路が設けられており、前記レジスタファイルから前記論理回路、前記シフト回路、及び前記加算器の各々の入力ポートへNビットデータ経路が設けられており、前記ロード符号拡張回路、前記シフト符号拡張回路、及び前記加算符号拡張回路がNビットロード命令、Nビットシフト命令、及びNビット加算命令に応答するものでない、ことを特徴とする処理ユニット。
  10. 12
    Claim 11A processing unit characterized in that N = 64 and m = 32. 請求項11において、N=64及びm=32であることを特徴とする処理ユニット。
  11. 13
    Claim 11The processing unit is characterized in that the additive sign extension circuit operates only when an m-bit overflow occurs. 請求項11において、前記加算符号拡張回路は、mビットオーバーフローが発生した場合にのみ動作することを特徴とする処理ユニット。
  12. 14
    Claim 11In the above, the m-bit addition instruction includes an ADD and SUB instruction that is trapped by an m-bit overflow and does not generate a result, and an ADDU and SUBU instruction that is not trapped by an m-bit overflow and produces a result. The processing unit is characterized in that the means for activating the additive sign extension circuit responds to the ADDU and SUBU instructions, but does not respond to the ADD and SUB instructions. 請求項11において、前記mビット加算命令は、mビットオーバーフローでトラップし且つ結果を発生することのないADD及びSUB命令と、mビットオーバーフローでトラップすることが無く且つ結果を発生するADDU及びSUBU命令とを包含しており、前記加算符号拡張回路を活性化させる手段が前記ADDU及びSUBU命令に応答するが前記ADD及びSUB命令には応答するものではない、ことを特徴とする処理ユニット。
  13. 15
    Claim 11Further, a means for detecting an N-bit overflow in the adder is provided, and the N-bit adder instruction is a DADD and DSUB instruction that is trapped by the N-bit overflow and does not generate a result, and N. A processing unit characterized by including DADDU and DSUBU instructions that do not trap due to bit overflow and generate a result. 請求項11において、更に、前記加算器におけるNビットオーバーフローを検知する手段が設けられており、且つ前記Nビット加算命令が、Nビットオーバーフローでトラップし且つ結果を発生することの無いDADD及びDSUB命令と、Nビットオーバーフローでトラップすることが無く且つ結果を発生するDADDU及びDSUBU命令とを包含していることを特徴とする処理ユニット。
  14. 16
    In a shift unit in a processing unit of a computer system that performs the shift operation specified with respect to the N-bit operand and gives an N-bit result, the processing unit includes a first subset of instructions called an m-bit shift instruction and an N-bit. It executes instructions that include a second subset of instructions, called shift instructions, and each of the input operands and results is specified as the maximum digit bit and bit (0), which are specified as bits (N-1). N-bit input, which receives the N-bit entity to be shifted, N-bit output which gives the N-bit entity generated from the shift operation, and N-bit output for the shift operation. A control input that specifies the bit position and direction of the specified number S, a first shift input terminal that receives a value for replacing the bit (N-1) for the right shift, and a bit (0) for the left shift. An N-bit shifter provided with a second input terminal that receives a value to be replaced is provided, and a first unit that is coupled to receive bits (N-1) to bits (m) of the N-bit operand. It comprises a (Nm) bit input, a second input that receives (Nm) 0s, and an output that is coupled to the bit positions of the input bits (N-1) to (m) of the shifter. The first data selector is provided, and the first data selector passes bits (N-1) to bits (m) of the N-bit operand to the N-bit shift instruction, and the designation When the number of bit positions is not zero, the (Nm) number of 0s are passed for the instruction specified as m-bit logical right shift, and the input bits (m-1) to bits of the shifter are passed. The bit positions of (0) are combined to receive the bits (m-1) to bits (0) of the N-bit operand, and are combined to receive the bit (N-1) of the N-bit input operand. A second data selector that includes a first input, a second input that receives 0, and an output that is coupled to the first shift input of the shifter.The second data selector is provided so that the bit (N-1) of the N-bit input operand is passed through the instruction designated as m-bit and N-bit operation right shift, and the m-bit and N-bit are provided. The 0 is passed for an instruction designated as a logical right shift, and the second shift input is coupled to receive 0, and the output bits (N-1) to bits (m) of the shifter are combined. The first input coupled to the bit position, the second input coupled to receive (Nm) copies of the output bits (m-1) of the shifter, and the N-bit result bits ( A third data selector is provided that includes an output that gives N-1) to bits (m), and the third data selector is a bit of the output of the shifter in response to the N-bit shift instruction. The (Nm) copies of the output bits (m-1) of the shifter for an instruction that passes through the bit positions of (N-1) to bits (Nm) and is designated as m-bit left shift. The bit positions of the output bits (m-1) to bits (0) of the shifter are combined to give the N-bit result bits (m-1) to bits (0). A shift unit featuring.Passing through the bit position of -m) and passing the (Nm) copies of the output bits (m-1) of the shifter for an instruction designated as m-bit left shift of the shifter. A shift unit characterized in that the bit positions of the output bits (m-1) to bits (0) are combined to give the N-bit result bits (m-1) to bits (0).Passing through the bit position of -m) and passing the (Nm) copies of the output bits (m-1) of the shifter for an instruction designated as m-bit left shift of the shifter. A shift unit characterized in that the bit positions of the output bits (m-1) to bits (0) are combined to give the N-bit result bits (m-1) to bits (0). Nビットオペランドに関して特定されたシフト動作を実施し且つNビット結果を与えるコンピュータシステムの処理ユニットにおけるシフトユニットにおいて、前記処理ユニットは、mビットシフト命令と呼称される第一サブセットの命令と、Nビットシフト命令と呼称される第二サブセットの命令とを包含している命令を実行し、入力オペランド及び結果の各々はビット(N-1)として指定される最大桁ビットとビット(0)として指定される最小桁ビットとを有しており、Nはmよりも大きく、シフトされるべきNビットエンティティを受取るNビット入力と、シフト動作から発生するNビットエンティティを与えるNビット出力と、シフト動作に対する指定した数Sのビット位置及び方向を特定する制御入力と、右シフト用にビット(N-1)を置換させるための値を受取る第1シフト入力端子と、左シフト用にビット(0)を置換させるための値を受取る第2入力端子とを具備しているNビットシフタが設けられており、前記Nビットオペランドのビット(N-1)乃至ビット(m)を受取るべく結合されている第1(N-m)ビット入力と、(N-m)個の0を受取る第2入力と、前記シフタの前記入力のビット(N-1)乃至ビット(m)のビット位置へ結合されている出力とを具備している第1データセレクタが設けられており、前記第1データセレクタは、前記Nビットシフト命令に対して前記Nビットオペランドのビット(N-1)乃至ビット(m)を通過させ、且つ前記指定した数のビット位置がゼロではない場合に、mビット論理右シフトと指定される命令に対して前記(N-m)個の0を通過させ、前記シフタの前記入力のビット(m-1)乃至ビット(0)のビット位置は前記Nビットオペランドのビット(m-1)乃至ビット(0)を受けとるべく結合されており、前記Nビット入力オペランドのビット(N-1)を受取るべく結合されている第1入力と、0を受取る第2入力と、前記シフタの前記第1シフト入力へ結合されている出力とを具備している第2データセレクタが設けられており、前記第2データセレクタは、mビット及びNビット演算右シフトと指定される命令に対して前記Nビット入力オペランドのビット(N-1)を通過させ、且つmビット及びNビット論理右シフトと指定される命令に対して前記0を通過させ、前記第2シフト入力は0を受取るべく結合されており、前記シフタの前記出力のビット(N-1)乃至ビット(m)のビット位置へ結合されている第1入力と、前記シフタの前記出力のビット(m-1)の(N-m)個のコピーを受取るべく結合されている第2入力と、前記Nビット結果のビット(N-1)乃至ビット(m)を与える出力とを具備している第3データセレクタが設けられており、前記第3データセレクタは、前記Nビットシフト命令に対して前記シフタの前記出力のビット(N-1)乃至ビット(N-m)のビット位置を通過させ、且つmビット左シフトと指定される命令に対して前記シフタの前記出力のビット(m-1)の前記(N-m)個のコピーを通過させ、前記シフタの前記出力のビット(m-1)乃至ビット(0)のビット位置は前記Nビット結果のビット(m-1)乃至ビット(0)を与えるべく結合されている、ことを特徴とするシフトユニット。
  15. 17
    In a shift unit that performs the shift operation specified for the N-bit operand and gives an N-bit result to the processing unit of the computer system, the processing unit is a first subset of instructions called an m-bit shift instruction and an N-bit shift instruction. Executes an instruction that includes a second subset of instructions called, the input operand and each of the results is the maximum digit bit specified as bit (N-1) and the minimum specified as bit (0). Has digit bits, where N is greater than m and is specified for the N-bit input that receives the N-bit entity to be shifted, the N-bit output that gives the N-bit entity that arises from the shift operation, and the shift operation. Replace the control input that specifies the bit position and direction of the number S, the first shift input terminal that receives the value for replacing the bit (N-1) for the right shift, and the bit (0) for the left shift. An N-bit shifter provided with a second input terminal for receiving a value to be made is provided, and (a) the N-bit to the bit positions of the input bits (N-1) to (m) of the shifter. Bits (N-1) to bits (m) and (b) of the N-bit operand for a shift instruction For an instruction specified as m-bit logical right shift when the specified number of bit positions are not zero. A means for communicating (Nm) 0s is provided, and the bit position of the input bit (m-1) to bit (0) of the shifter is the bit (m-1) to bit of the N bit operand. It is combined to receive (0), and to the first shift input of the shifter, (a) m-bit and N-bit operation The bit (N-) of the N-bit input operand for the instruction specified as right shift. 1) and (b) m-bit and N-bit A means for communicating 0 to an instruction designated as a logical right shift is provided, and the second shift input is combined to receive 0, and the N As the bit result bits (N-1) to bits (m), (a) the output bits (N-1) to bits (N-1) to the shifter for the N-bit shift instruction.Means are provided to provide (Nm) copies of the output bits (m-1) of the shifter for instructions designated as m) bit positions and (b) m bits left shift. A shift unit characterized in that the bit positions of the output bits (m-1) to bits (0) are combined to give the N-bit result bits (m-1) to bits (0). Nビットオペランドに関して特定したシフト動作を実施し且つコンピュータシステムの処理ユニットにNビット結果を与えるシフトユニットにおいて、前記処理ユニットはmビットシフト命令と呼称される命令の第一サブセットと、Nビットシフト命令と呼称される命令の第二サブセットとを包含する命令を実行し、前記入力オペランド及び前記結果の各々はビット(N-1)として指定される最大桁ビットとビット(0)として指定される最小桁ビットとを有しており、Nはmより大きく、シフトされるべきNビットエンティティを受取るNビット入力と、シフト動作から発生するNビットエンティティを与えるNビット出力と、シフト動作に対して指定した数Sのビット位置及び方向を指定する制御入力と、右シフト用にビット(N-1)を置換させるための値を受取る第1シフト入力端子と、左シフト用にビット(0)を置換させる値を受取る第2入力端子とを具備しているNビットシフタが設けられており、前記シフタの前記入力のビット(N-1)乃至ビット(m)のビット位置へ、(a)前記Nビットシフト命令のための前記Nビットオペランドのビット(N-1)乃至ビット(m)及び(b)前記指定した数のビット位置がゼロでない場合にmビット論理右シフトと指定される命令に対して(N-m)個の0を通信する手段が設けられており、前記シフタの前記入力のビット(m-1)乃至ビット(0)のビット位置が前記Nビットオペランドのビット(m-1)乃至ビット(0)を受取るべく結合されており、前記シフタの前記第1シフト入力へ、(a)mビット及びNビット演算右シフトと指定される命令に対して前記Nビット入力オペランドのビット(N-1)及び(b)mビット及びNビット論理右シフトと指定される命令に対して0を通信する手段が設けられており、前記第2シフト入力は0を受取るべく結合されており、前記Nビット結果のビット(N-1)乃至ビット(m)として、(a)前記Nビットシフト命令に対する前記シフタの前記出力のビット(N-1)乃至ビット(m)のビット位置及び(b)mビット左シフトと指定される命令に対する前記シフタの前記出力のビット(m-1)の(N-m)個のコピーを与える手段が設けられており、前記シフタの前記出力のビット(m-1)乃至ビット(0)のビット位置は前記Nビット結果のビット(m-1)乃至ビット(0)を与えるべく結合されている、ことを特徴とするシフトユニット。