JP3311624B2 - Barrel shifter control method and integrated circuit - Google Patents
Barrel shifter control method and integrated circuitInfo
- Publication number
- JP3311624B2 JP3311624B2 JP00011297A JP11297A JP3311624B2 JP 3311624 B2 JP3311624 B2 JP 3311624B2 JP 00011297 A JP00011297 A JP 00011297A JP 11297 A JP11297 A JP 11297A JP 3311624 B2 JP3311624 B2 JP 3311624B2
- Authority
- JP
- Japan
- Prior art keywords
- shift
- decoder
- input
- cells
- barrel shifter
- 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.)
- Expired - Fee Related
Links
Landscapes
- Shift Register Type Memory (AREA)
Description
【0001】[0001]
【発明の属する技術分野】本発明は、バレルシフターに
関し、特に、バレルシフターを制御するための2の補数
符号化シフト値の高速変換に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a barrel shifter, and more particularly, to a high speed conversion of a two's complement coded shift value for controlling a barrel shifter.
【0002】[0002]
【従来の技術】Nビットバレルシフター(ここで、N
は、そのバレルシフターのビット幅)は、N桁のデータ
入力ビット、N桁のデータ出力ビット、N桁の制御入力
を有する組合せ論理回路であり、これらは、log2Nビッ
トに符号化されている。このN桁のデータ入力ビット
は、入力ワードである。このN桁のデータ出力ビット
は、入力ワードであり、これは、制御入力によって決め
られ、ビット位置の数、即ちシフト値の分、回転又はシ
フトされる。バレルシフターは、左又は右のいずれかに
シフトするように用いられ、シフト値は、+(N−1)
から−(N−1)の範囲のいかなる値をも、とることが
できる。2. Description of the Related Art N-bit barrel shifters (where N
Is a combinational logic circuit having N digit data input bits, N digit data output bits, and N digit control inputs, which are encoded into log 2 N bits. I have. The N digit data input bits are the input word. The N data output bits are the input word, which is determined by the control input and is rotated or shifted by the number of bit positions, ie, the shift value. The barrel shifter is used to shift either left or right, and the shift value is + (N-1)
And any value in the range from-(N-1) to.
【0003】バレルシフターは、左シフトのみ、右シフ
トのみ、又は左、右のいずれかのシフトのみをする。1
つを左シフトに、別の1つを右シフトに用いて2つのバ
レルシフターを設けることよりも、通常バレルシフター
は、左又は右シフトのいずれかをする適当な多重化機能
を備える。このようなバレルシフターは、双方向バレル
シフターと呼ばれる。双方向バレルシフターはシフト値
とシフト方向を前もって知らないことが多いので、シス
テム設計の多様性を増加させる。このように双方向バレ
ルシフターには、シフト値とシフト方向の双方を制御入
力として供給する必要がある。2つの入力量に対して
は、以下の4つの組合せが考えられる。即ち、正の右シ
フト、負の右シフト(これは実際は左シフトである)、
正の左シフト、及び負の左シフト(これは実際は右シフ
トである)の4つである。バレルシフターは主要なシフ
ト方向を有し、他方の方向へのシフトには、そのバレル
シフタのビット幅とシフト値との差である値へとシフト
値を変換することを要する。バレルシフタによって、デ
ータパスはシングルステージとなり、バレルシフタを制
御するためにmビットのシフト値を2m−1の制御ビッ
トへと復号する(デコードする)。[0003] The barrel shifter shifts left only, shifts right only, or shifts left or right only. 1
Rather than providing two barrel shifters, one for left shift and another for right shift, the barrel shifter usually has the appropriate multiplexing function to either shift left or right. Such a barrel shifter is called a bidirectional barrel shifter. Bi-directional barrel shifters increase the variety of system designs because they often do not know the shift value and shift direction in advance. Thus, both the shift value and the shift direction need to be supplied to the bidirectional barrel shifter as control inputs. The following four combinations can be considered for two input quantities. That is, a positive right shift, a negative right shift (this is actually a left shift),
A positive left shift and a negative left shift (which is actually a right shift). A barrel shifter has a primary shift direction, and shifting in the other direction requires converting the shift value to a value that is the difference between the bit width of the barrel shifter and the shift value. The barrel shifter causes the data path to be single stage and decodes the m-bit shift value into 2 m -1 control bits to control the barrel shifter.
【0004】バレルシフタは、ローテート演算(回転演
算)とともに、算術シフト及び論理シフトを行うことが
できる。左シフトにおいては、入力ワードの各ビット
は、シフト値により指示されるビット位置の数の分、左
にシフトして、出力ワードを生成する。出力ワードの低
位のビットは、ゼロ埋めされる。右シフトにおいては、
入力ワードの各ビットは、シフト値によって指示される
ビット位置の数の分、右にシフトされ、出力ワードを生
成する。高位のビットは、算術シフトでは符号拡張部分
のもので、論理シフトでは0で埋められる。回転演算で
は、ワードの一方の端からシフトアウトした各ビット
が、そのワードの他の端へとシフトインして入って再び
現れる。[0004] The barrel shifter can perform an arithmetic shift and a logical shift together with a rotate operation (rotation operation). In a left shift, each bit of the input word is shifted left by the number of bit positions indicated by the shift value to produce an output word. The low order bits of the output word are zero filled. In a right shift,
Each bit of the input word is shifted to the right by the number of bit positions indicated by the shift value, producing an output word. The higher order bits are for the sign extension in arithmetic shifts and are filled with zeros in logical shifts. In the rotation operation, each bit shifted out from one end of the word appears again shifted in and into the other end of the word.
【0005】ディジタル信号プロセッサにおける計算
は、2の補数演算を行うハードウェアにより行われる。
シフト値は、2の補数系によって表されなければなら
ず、これは、バイナリ数の基数の補数である。数の2の
補数表現は、バイナリ表現から個々の桁の補数演算を
し、1を加えることによって得ることができる。2の補
数系では、最上位ビットは、負の数では1で、正の数で
は0である。ゼロはその符号が正なので正と考える。m
ビット表現の場合、数の範囲は、−(2m-1)〜 +(2
m-1−1)であり、1つの負の数−2m-1だけが正の側の
対応する数を有しない。[0005] Calculations in the digital signal processor are performed by hardware that performs two's complement arithmetic.
The shift value must be represented by a two's complement system, which is the radix complement of a binary number. The two's complement representation of a number can be obtained by performing a complement operation on each digit from the binary representation and adding one. In a two's complement system, the most significant bit is 1 for negative numbers and 0 for positive numbers. Zero is considered positive because its sign is positive. m
In the case of the bit representation, the range of the number is from − (2 m−1 ) to + (2
m-1 -1), and only one negative number -2 m-1 has no corresponding number on the positive side.
【0006】図3には、バレルシフタを制御する従来技
術の回路の概略図を示してあり、これに示したような排
他的論理和ゲート(EORゲート)及び加算器を用いて
バイナリ表現から、ある数の2の補数表現を作ることが
できる。シフト方向は、右シフトが0で、左シフトが1
として表してある。シフト方向302は、排他的論理和
ゲート300におけるシフト値308の符号ビット30
4と結合され(組合わされ)、修正シフト方向306を
作る。この符号ビット304は、正のシフト値では0
で、負のシフト値では1である。シフト値308のビッ
トは、EORゲート3100〜310m-1及び311にて
シフト方向302と排他的論理和演算され、出力312
にビットの1の補数を作る。シフト方向に適応するた
め、バレルシフタの主要な方向のシフトの0、又はバレ
ルシフタのビット幅のいずれかは、選択入力306によ
って制御されてマルチプレキサ316によって選択さ
れ、そして、全加算器318にてシフト値の2の補数表
現に加えられる。シフト方向302は、1の補数表現
と、及びマルチプレキサ316により選択されるよう
に、0、又はバレルシフタ314のビット幅のいずれか
と全加算器318にて加算され、出力320にシフト値
の2の補数表現を作る。出力320の最上位ビットは捨
てられる。全加算器318からの出力は常に正である。
全加算器318の出力320の低位mビットは、符号化
シフト値であり、このmビットは、デコーダ324にて
復号され、バレルシフタ314を制御するのに用いられ
るN桁の制御信号326を供給される。また、バレルシ
フタ314は、直接、修正シフト方向306を受け取
り、制御入力326に応答して、その出力330として
入力ワード328のシフトされたバージョンを作る。FIG. 3 shows a schematic diagram of a prior art circuit for controlling a barrel shifter, which is derived from a binary representation using an exclusive OR gate (EOR gate) and an adder as shown. A two's complement representation of a number can be made. The shift direction is 0 for right shift and 1 for left shift.
It is expressed as The shift direction 302 corresponds to the sign bit 30 of the shift value 308 in the exclusive OR gate 300.
4 to create a modified shift direction 306. This sign bit 304 is 0 for positive shift values.
Where 1 is a negative shift value. The bit of the shift value 308 is XORed with the shift direction 302 by EOR gates 310 0 to 310 m -1 and 311, and the output 312 is output.
Make the one's complement of the bits. To accommodate the shift direction, either the shift of the barrel shifter in the main direction, 0, or the bit width of the barrel shifter is selected by the multiplexer 316, controlled by the select input 306, and shifted by the full adder 318. Added to the two's complement representation of the value. The shift direction 302 is added to the one's complement representation and either 0 or the bit width of the barrel shifter 314, as selected by the multiplexer 316, in a full adder 318, and the shift value 2 of the shift value is output 320. Create the complement representation. The most significant bit of output 320 is discarded. The output from full adder 318 is always positive.
The low order m bits of output 320 of full adder 318 are the encoded shift values, which are decoded by decoder 324 and provided with an N digit control signal 326 used to control barrel shifter 314. You. Barrel shifter 314 also receives the modified shift direction 306 directly and produces a shifted version of input word 328 as its output 330 in response to control input 326.
【0007】[0007]
【発明が解決しようとする課題】このような従来の技術
は、バレルシフタ314を制御するのに使われるN桁の
制御信号を作る際に遅延が生じるという欠点がある。こ
の遅延は加算器318の演算によって起こる。バレルシ
フタへの制御入力を作る際の遅延は、バレルシフタの演
算における遅延を生じさせることになる。本発明は、こ
のような遅延の生じなく高速変換を行うバレルシフタを
提供することを目的とする。Such a conventional technique has a disadvantage in that a delay occurs in producing an N-digit control signal used to control the barrel shifter 314. This delay is caused by the operation of the adder 318. The delay in creating the control input to the barrel shifter will cause a delay in the operation of the barrel shifter. An object of the present invention is to provide a barrel shifter that performs high-speed conversion without causing such a delay.
【0008】[0008]
【課題を解決するための手段】本発明のバレルシフタ制
御方法及び集積回路は、シフト値の分、入力ワードのビ
ットをシフトするためにNビットバレルシフタを制御す
るために提供される。本方法は、シフト方向が第1方向
であれば、入力を生成するためにシフト値のmビットバ
イナリ表現の1の補数演算を行い、シフト方向が第2方
向であれば、シフト値のこのバイナリ表現を入力として
渡すステップと、この入力を2mの制御信号へと復号す
るステップと、この2mの制御信号から複数の制御信号
群を生成するステップと、バレルシフタを制御するため
に、この複数の制御信号群の1つを選択するステップを
有する。シフト値のバイナリ表現のビットは、複数のE
ORゲートを通って渡され、第1デコーダへの入力とし
て供給される。第1デコーダは、この入力を制御信号と
して用いられる複数のビットへと復号する。この制御信
号は複数の群に分けられる。制御信号群の幾つかは、ゼ
ロ埋めをするように、別の制御信号によって埋め合わさ
れる。選択入力に基づいて、マルチプレキサは、どの複
数の制御信号群のうちの1つを、バレルシフタを制御す
るために渡すかを選択する。第2デコーダは、シフト方
向及びシフト値の符号を復号し、マルチプレキサへの選
択入力を提供する。SUMMARY OF THE INVENTION A barrel shifter control method and integrated circuit of the present invention are provided for controlling an N-bit barrel shifter to shift bits of an input word by a shift value. The method performs a one's complement operation of an m-bit binary representation of the shift value to generate an input if the shift direction is the first direction, and this binary value of the shift value if the shift direction is the second direction. Passing the representation as an input, decoding the input into a 2 m control signal, generating a plurality of control signal groups from the 2 m control signal, and controlling the barrel shifter. And selecting one of the control signal groups. The bits of the binary representation of the shift value are
Passed through an OR gate and provided as input to the first decoder. The first decoder decodes this input into a plurality of bits used as control signals. The control signals are divided into a plurality of groups. Some of the control signals are padded with other control signals to provide zero padding. Based on the selection input, the multiplexer selects which of a plurality of control signals to pass to control the barrel shifter. A second decoder decodes the sign of the shift direction and the shift value and provides a select input to the multiplexer.
【0009】[0009]
【発明の実施の形態】図1には、本発明の実施例に従う
双方向バレルシフタ22等のバレルシフタを制御する制
御回路10を示す。この制御回路10は、修正シフト方
向生成器、EORゲート12、1の補数生成器を備え、
この1の補数生成器は、EORゲート140〜14mー1、
デコーダ16と18、及びマルチプレキサ20からな
る。制御回路10は集積回路チップ上に作られる。制御
回路10はマイクロプロセッサ、ディジタルシグナルプ
ロセッサ等の集積回路の一部である。FIG. 1 shows a control circuit 10 for controlling a barrel shifter such as a bidirectional barrel shifter 22 according to an embodiment of the present invention. The control circuit 10 includes a modified shift direction generator, a complement generator of the EOR gates 12 and 1, and
The one's complement generator has EOR gates 14 0 to 14 m -1 ,
It comprises decoders 16 and 18 and a multiplexer 20. The control circuit 10 is made on an integrated circuit chip. The control circuit 10 is a part of an integrated circuit such as a microprocessor and a digital signal processor.
【0010】制御回路10は、正の右シフト、負の右シ
フト(これは実際は左シフトである)、正の左シフト、
及び負の左シフト(これは実際は右シフトである)の可
能性のある4つの制御要求を処理する必要がある。好ま
しい実施例においては、バレルシフタ22は双方向バレ
ルシフタであり、これは、Nビットの入力ワード24の
右、左シフト双方を処理でき、Nビットのシフト出力ワ
ード26を生むことができるものである。The control circuit 10 includes a positive right shift, a negative right shift (which is actually a left shift), a positive left shift,
And four possible control requests of negative left shift (which is actually a right shift) need to be handled. In the preferred embodiment, barrel shifter 22 is a bi-directional barrel shifter that can handle both right and left shifts of an N-bit input word 24 and produce an N-bit shift output word 26.
【0011】制御回路10への入力は、シフト値30と
シフト方向32である。シフト値30は、シフト値のm
ビットバイナリ表現である。最上位ビットは符号ビット
であり、通常、負のシフト値であれば1であり、正のシ
フト値であれば0である。シフト方向は左か右のいずれ
かであり、表現するのに1ビットしか要さない。実施例
においては、左シフトを1で表し、右シフトを0で表
す。The inputs to control circuit 10 are shift value 30 and shift direction 32. The shift value 30 is the shift value m.
It is a bit binary representation. The most significant bit is a sign bit, which is usually 1 for a negative shift value and 0 for a positive shift value. The shift direction is either left or right, requiring only one bit to represent. In the embodiment, a left shift is represented by 1 and a right shift is represented by 0.
【0012】シフト値30の符号ビット28とシフト方
向32は、EORゲート12への入力を供給し、このE
ORゲート12は、各入力を結合し、その排他的論理和
結合である修正シフト方向34を出力として供給する。
この修正シフト方向34は、バレルシフタ22への入力
として供給される。EORゲート12は、シフト方向3
2とシフト値の符号ビット28を復号して、以下の第1
表に示すように、各入力の排他的論理和結合である修正
シフト方向12を作る。The sign bit 28 and the shift direction 32 of the shift value 30 provide an input to the EOR gate 12 which
The OR gate 12 combines the respective inputs and supplies as its output the modified shift direction 34, which is the exclusive OR combination.
This modified shift direction 34 is provided as an input to barrel shifter 22. The EOR gate 12 controls the shift direction 3
2 and the sign bit 28 of the shift value are decoded, and the following first
As shown in the table, a modified shift direction 12, which is an exclusive OR combination of each input, is created.
【0013】[0013]
【表1】 [Table 1]
【0014】EORゲート14は、シフト値30のビッ
ト数に対応する複数であるm個のEORゲートである。
各EORゲート140〜14mー1は、シフト方向32を一
方の入力として、シフト値30のmビットの1つを他方
の入力として受け取り、それらの入力を結合して対応す
る出力を作る。EORゲート140〜14mー1からの出力
36は、シフト値30のバイナリ表現の1の補数を表す
mビットである。The EOR gates 14 are a plurality of m EOR gates corresponding to the number of bits of the shift value 30.
Each EOR gate 14 0 -14 m-1 receives the shift direction 32 as one input and one of the m bits of the shift value 30 as the other input, and combines those inputs to produce a corresponding output. The output 36 from the EOR gates 14 0 -14 m-1 is m bits representing the one's complement of the binary representation of the shift value 30.
【0015】EORゲート140〜14mー1からのmビッ
トで1の補数の出力は、デコーダ16への入力を供給す
る。デコーダ16(m TO 2mデコーダ)は、mビット
の1の補数を2mの復号された制御信号38の出力へと
復号する組合せ論理回路であり、この制御信号38はバ
レルシフタ22へと供給される。2mの出力のうちの1
つは高位であり、他の2m−1の出力は低位である。好
ましい実施例においては、高位である出力は、デコーダ
16へのバイナリ入力により表される出力となる。例え
ば、以下の第2表は、3ビットのバイナリ入力から、C
L0〜CL7で表される8つの出力への復号の内容を示
す。The m bit, one's complement output from EOR gates 14 0 -14 m -1 provides an input to decoder 16. The decoder 16 (m TO 2 m decoder) is a combinational logic circuit that decodes an m-bit one's complement into an output of a 2 m decoded control signal 38, which is supplied to the barrel shifter 22. You. 1 of 2 m output
One is high and the other 2 m -1 outputs are low. In the preferred embodiment, the output that is high is the output represented by the binary input to decoder 16. For example, Table 2 below shows that from a 3-bit binary input, C
The content of decoding into eight outputs represented by L0 to CL7 is shown.
【0016】[0016]
【表2】 [Table 2]
【0017】本発明は、1の補数演算の後に行われる復
号演算の利点を利用する。第2表から分かるように、デ
コーダ出力を1で増分させることは、高位な1つの制御
線路であるデコーダ出力制御線路を左にシフトすること
と同じである。第2表の例では、310(0112)から
410(1002)へのように(括弧内は2進数)、デコ
ーダへの入力を1で増分して、右に0を埋めることは、
CL3が高位な状態から制御線路CL4が高位な状態へ
と、高位な制御線路の出力をシフトする。ハードワイヤ
をVSSに結合する等によるゼロ埋めは、1つを除いて
全ての制御出力38を低位に維持する。シフト方向は右
又は左シフトを表す方法によって相違する。The present invention takes advantage of the decoding operation performed after the one's complement operation. As can be seen from Table 2, incrementing the decoder output by one is equivalent to shifting the decoder output control line, one of the higher order control lines, to the left. In the example in Table 2, it is not possible to increment the input to the decoder by 1 and pad it to the right with 0, such as from 3 10 (011 2 ) to 4 10 (100 2 ) (binary number in parentheses) ,
The output of the higher control line is shifted from the state where CL3 is higher to the state where control line CL4 is higher. Zero padding, such as by coupling a hard wire to VSS, keeps all but one control output 38 low. The shift direction differs depending on how the right or left shift is represented.
【0018】デコーダ18(2 TO 4デコーダ)は、2
ビットの入力を4つの出力に復号する組合せ論理回路で
ある。この2ビットの入力の各組合せにおいては、4つ
の出力50の1つは高位であり、他の3つは低位であ
る。シフト方向32と及びシフト値30の符号ビット2
8は、デコーダ18で復号され、マルチプレキサ20へ
4つの選択入力50を供給する。この4つの選択入力5
0は、4つの入力40、42、44、46のうちの1つ
をマルチプレキサ20の出力52として選択する。この
選択入力50は、1の補数評価の演算及びデコーダ16
の演算と同時に復号され、制御回路10、従ってバレル
シフタ22の演算の遅延を最小化できる。第3表には、
2つの入力から4つの出力への復号が示してある。ここ
で、選択される入力の項で示した数字は、図1で用いた
符号である。The decoder 18 (2 TO 4 decoder)
It is a combinational logic circuit that decodes a bit input into four outputs. In each combination of the two bit inputs, one of the four outputs 50 is high and the other three are low. Shift direction 32 and sign bit 2 of shift value 30
8 is decoded by decoder 18 and provides four select inputs 50 to multiplexer 20. These four selection inputs 5
0 selects one of the four inputs 40, 42, 44, 46 as the output 52 of the multiplexer 20. This selection input 50 is used for the operation of one's complement evaluation and the decoder 16.
And the delay of the operation of the control circuit 10 and therefore of the barrel shifter 22 can be minimized. In Table 3,
Decoding from two inputs to four outputs is shown. Here, the numerals shown in the item of the input to be selected are the symbols used in FIG.
【0019】[0019]
【表3】 [Table 3]
【0020】デコーダ16は、m個の入力ビットを受け
取り、そして、m個の入力ビットを2mの出力38へと
復号し、バレルシフタ22を制御する。このバレルシフ
タ22は、N桁のビット幅を有する(ここで、N≦
2m)。高位でいっぱいになったデコーダを表すN=2m
のビット幅に対して、全範囲である2mの可能性がある
シフト値、−(N−1)〜(N−1)を用いる。高位で
いっぱいになったデコーダよりも小さければ、可能性が
ある2mのシフト値全ては使われない。The decoder 16 receives the m input bits and decodes the m input bits into 2 m outputs 38 to control the barrel shifter 22. This barrel shifter 22 has a bit width of N digits (where N ≦
2 m ). N = 2 m representing a decoder full and high
For all bit widths, a shift value of − (N−1) to (N−1) is used, which may be the entire range of 2 m . If it is smaller than the high and full decoder, all possible 2 m shift values are not used.
【0021】4つの制御信号群40、42、44、46
は、複数ビットマルチプレキサ20への入力として供給
される。4つの制御信号群のそれぞれは、2m個の出力
38から、結線論理(ハードワイヤ)等によって得られ
る。制御信号40、42、44、46を形成する2m個
の出力38のそれぞれは、受け取った各シフト値とシフ
ト方向に対応して生成される。マルチプレキサ20は、
適切な出力38を選択するのに用いられ、バレルシフタ
22へ制御信号52として供給する。この制御信号52
により、N個の制御信号をバレルシフタ22へと制御線
路0〜(N−1)上に供給される。Four control signal groups 40, 42, 44, 46
Is supplied as an input to the multi-bit multiplexer 20. Each of the four control signal groups is obtained from 2 m outputs 38 by connection logic (hard wire) or the like. Each of the 2 m outputs 38 forming control signals 40, 42, 44, 46 is generated corresponding to each received shift value and shift direction. The multiplexer 20
It is used to select the appropriate output 38 and provides it as a control signal 52 to the barrel shifter 22. This control signal 52
Thus, N control signals are supplied to the barrel shifter 22 on the control lines 0 to (N−1).
【0022】制御信号40は、シフト方向と符号ビット
の双方がゼロであるとき、即ち、シフト方向が右でシフ
ト値が正であるときに選択される。これは、正の右シフ
ト、即ち、好ましい実施例において双方向バレルシフタ
22の主要なシフト方向である。制御信号40は、デコ
ーダ16によって生成された2m個の制御信号38の中
から選択される。正の右シフトをさせるので、デコーダ
16への入力は、[0,(N−1)]の範囲を有するシ
フト値である。この範囲の表記法は、制御線路0〜(N
−1)上へ出力された制御信号38が、結線論理等によ
って制御信号40として選択されることを意味する。ま
た、制御信号40として選択された制御信号38の範囲
を表記する別の表記法を用い、図1の「範囲 1」で示
すように[LSB:MSB]を[0:(N−1)]とし
て表す方法がある(ここで、LSBは最下位ビットで、
MSBは最上位ビットである)。The control signal 40 is selected when both the shift direction and the sign bit are zero, ie, when the shift direction is right and the shift value is positive. This is the positive right shift, the primary shift direction of the bi-directional barrel shifter 22 in the preferred embodiment. The control signal 40 is selected from 2 m control signals 38 generated by the decoder 16. The input to the decoder 16 is a shift value having a range of [0, (N-1)] because it causes a positive right shift. The notation of this range is as follows: control lines 0 to (N
-1) It means that the control signal 38 output upward is selected as the control signal 40 by connection logic or the like. Also, using another notation notation indicating the range of the control signal 38 selected as the control signal 40, [LSB: MSB] is changed to [0: (N−1)] as shown by “Range 1” in FIG. (Where LSB is the least significant bit,
The MSB is the most significant bit).
【0023】制御信号42は、シフト方向が0で、シフ
トビットが1であるとき、即ち、シフト方向が右で、シ
フト値が負であるときに選択される。この負の右シフト
は実際は左シフトである。そして、制御信号42は、デ
コーダ16によって生成された2mの制御信号38から
選択される。負の右シフトをさせるので、デコーダ16
への入力は、|0,(N−1)]の範囲を有する。図1
の「範囲 2」で示す制御線路[2「log 2 N」−(N−
1):2「log 2 N」ー1,VSS]のデコーダ16から出
力された制御信号38は、結線論理等によって制御信号
42として選択される。上の範囲の記述において2の乗
数となっている“「log2N」”の表現は、シーリング関数
を表し、整数でない値は、次に大きい整数に切り上げら
れる。VSSは、シフトにより必要になったゼロ埋めを
表す。制御信号38は、結線論理で1の引算を行う等に
より制御信号42となるように修正される。ここでは、
制御信号38を1桁分シフトし、これは1で減分するこ
とと同じである。実施例の方法を使うと、制御信号38
は右の1つの線にシフトされ、制御信号42を作る。制
御信号38を右の1つの線にシフトすることは、シフト
値の1の補数表現から1を引くことと同じである。制御
信号42は、マルチプレキサ20を通って双方向バレル
シフタ22へと選択入力50に従って選択されて供給さ
れる。The control signal 42 is selected when the shift direction is 0 and the shift bit is 1, that is, when the shift direction is right and the shift value is negative. This negative right shift is actually a left shift. Then, the control signal 42 is selected from the 2 m control signals 38 generated by the decoder 16. Since a negative right shift is performed, the decoder 16
Has the range | 0, (N−1)]. FIG.
Control line [2 “log 2 N” -(N-
1): 2 The control signal 38 output from the “log 2 N” −1, VSS] decoder 16 is selected as the control signal 42 by connection logic or the like. In the above range description, the expression “log 2 N”, which is a power of 2, represents a sealing function, and non-integer values are rounded up to the next larger integer. The control signal 38 is modified to be a control signal 42 by subtracting 1 by a connection logic, etc. Here,
The control signal 38 is shifted by one digit, which is equivalent to decrementing by one. Using the method of the embodiment, the control signal 38
Is shifted to the right one line, producing a control signal 42. Shifting the control signal 38 to the one line to the right is the same as subtracting one from the one's complement representation of the shift value. The control signal 42 is selected and supplied according to the selection input 50 to the bidirectional barrel shifter 22 through the multiplexer 20.
【0024】制御信号44は、シフト方向が1で、符号
ビットが0であるとき、即ち、シフト方向が左でシフト
値が正であるときに選択される。これは正の左シフトを
表す。制御信号44は、デコーダ16により生成された
2mの制御信号38から選択される。正の左シフトをす
るために、デコーダ16への入力は、シフト値の1の補
数である。シフト値の1の補数の符号は使われない。図
1の「範囲 3」で示す制御線路[2「log 2 N」−N:2
「log 2 N」ー1]のデコーダ16からの制御信号38出力
は、結線論理等によって制御信号42として選択され
る。制御信号44は、マルチプレキサ20を通って双方
向バレルシフタ22へと選択入力50で選択されるに従
って供給される。The control signal 44 is selected when the shift direction is 1 and the sign bit is 0, that is, when the shift direction is left and the shift value is positive. This represents a positive left shift. The control signal 44 is selected from the 2 m control signal 38 generated by the decoder 16. To make a positive left shift, the input to decoder 16 is the one's complement of the shift value. The one's complement sign of the shift value is not used. The control line [2 “log 2 N” −N: 2 indicated by “range 3” in FIG.
The output of the control signal 38 from the decoder 16 of "log 2 N" -1] is selected as the control signal 42 by connection logic or the like. Control signal 44 is provided through multiplexer 20 to bidirectional barrel shifter 22 as selected at select input 50.
【0025】制御信号46はシフト方向が1で符号ビッ
トが1であるとき、即ち、シフト方向が左でシフト値が
負であるときに選択される。負の左シフトは実際は右シ
フトを表す。制御信号46はデコーダ16により生成さ
れた2mの制御信号38から選択される。負の左シフト
をするため、デコーダ16への入力はシフト値の1の補
数である。バイナリ表現から2の補数表現を得るため、
1の補数が採用され、1をその1の補数に加える。負の
シフト値の1の補数がデコーダ16への入力として生成
されたので、1を加えるのみでよい。このことは上述の
ように1制御線路分デコーダ16の出力をシフトするこ
とにより達成できる。図1の「範囲 4」で示す制御線
路[VSS,0:(N−1)]のデコーダ16から出力
された制御信号38は、結線論理等によって制御信号4
6として選択される。VSSは、シフトにより必要とな
ったゼロ埋めを表す。負の左シフトの入力シフト値は、
−1〜 −(N−1)の範囲を有する。制御信号44
は、マルチプレキサ20を通って双方向バレルシフタ2
2へと、選択入力50に従って選択されて供給される。The control signal 46 is selected when the shift direction is 1 and the sign bit is 1, that is, when the shift direction is left and the shift value is negative. A negative left shift actually represents a right shift. The control signal 46 is selected from the 2 m control signal 38 generated by the decoder 16. To perform a negative left shift, the input to decoder 16 is the one's complement of the shift value. To get the two's complement representation from the binary representation,
A one's complement is taken and one is added to the one's complement. Since the one's complement of the negative shift value was generated as an input to the decoder 16, only one need be added. This can be achieved by shifting the output of the decoder 16 by one control line as described above. The control signal 38 output from the decoder 16 of the control line [VSS, 0: (N−1)] indicated by “Range 4” in FIG.
6 is selected. VSS represents the zero padding required by the shift. The input shift value for negative left shift is
-1 to-(N-1). Control signal 44
Is transmitted through the multiplexer 20 to the two-way barrel shifter 2.
2 is selected and supplied according to the selection input 50.
【0026】図示したように、主要なシフト方向(左)
の正のシフト値の場合、制御線路[0:(N−1)]
(範囲1)の制御信号38がバレルシフタ22を制御す
るために選択される。シフト値が負であれば、デコーダ
16により出力された制御線路はシフトされ、マルチプ
レキサ20へ供給される制御信号が生成される。シフト
方向が主要なシフト方向でなければ、シフト値の1の補
数がデコーダ16への入力として供給される。As shown, the main shift direction (left)
Control line [0: (N-1)]
A (range 1) control signal 38 is selected to control the barrel shifter 22. If the shift value is negative, the control line output by the decoder 16 is shifted, and a control signal to be supplied to the multiplexer 20 is generated. If the shift direction is not the primary shift direction, the one's complement of the shift value is provided as an input to decoder 16.
【0027】図2は、デコーダ16とマルチプレキサ2
0、結線論理(経路)シフト、及びゼロ埋めを示す概略
図である。図2はさらに、本発明をチップ上にレイアウ
トする技術を示す。例えば、40のビット幅を有するバ
レルシフタは、符号ビットを除いて、シフト値を表すの
に6ビットを要する。デコーダ16は、ビット0〜63
で表される64の出力52を作る。デコーダ16は、図
2で出力番号として表してある2mのセルからなる。デ
コーダ16の各セルは、結線論理シフトになるようにオ
ンピッチで製造されている。デコーダのビット63は、
多ビットマルチプレキサ20のセル39と38の双方へ
の入力として供給できる必要がある。。同様に、ビット
62は、マルチプレキサ20のセル38と37の双方へ
の入力として供給できる必要があり、ビット38は、多
ビットマルチプレキサ20のセル39と38の双方への
入力として供給できる必要がある。VSSは、マルチプ
レキサ20のセル39と0のそれぞれへの入力の1つと
して供給され、シフト演算により1を加えるときにゼロ
埋めを行う。マルチプレキサ20の各セルへの4つの入
力は、図2の左から右にあげると、制御信号40、4
2、44、46である。FIG. 2 shows the decoder 16 and the multiplexer 2
FIG. 5 is a schematic diagram illustrating 0, connection logic (path) shift, and zero padding. FIG. 2 further illustrates a technique for laying out the present invention on a chip. For example, a barrel shifter having a bit width of 40 requires 6 bits to represent the shift value, except for the sign bit. The decoder 16 has bits 0 to 63
Produces 64 outputs 52 represented by The decoder 16 comprises 2 m cells, represented as output numbers in FIG. Each cell of the decoder 16 is manufactured on-pitch so as to achieve a connection logical shift. Bit 63 of the decoder is
It must be able to be supplied as an input to both cells 39 and 38 of multi-bit multiplexer 20. . Similarly, bit 62 needs to be available as an input to both cells 38 and 37 of multiplexer 20, and bit 38 needs to be available as an input to both cells 39 and 38 of multi-bit multiplexer 20. There is. The VSS is supplied as one of the inputs to each of the cells 39 and 0 of the multiplexer 20, and performs zero padding when adding 1 by a shift operation. The four inputs to each cell of the multiplexer 20 are, from left to right in FIG.
2, 44, 46.
【0028】また、0〜63のセルデコーダ16をオン
ピッチで製造する代わりに、デコーダ16のセル0〜3
9は、マルチプレキサ20の対応する0〜39のセルと
オンピッチで製造できる。デコーダセル24〜39は、
デコーダ16を形成するように複製され、デコーダ16
とマルチプレキサ20の双方のデコーダセル0〜15と
(横方向に)並び、セル16〜39の上に載る。デコー
ダ16のセル40〜63は、デコーダ16のセル16〜
39の対応する1つと並び、セル16〜39の上に載
る。Also, instead of manufacturing the cell decoders 16 of 0 to 63 at an on-pitch, cells 0 to 3 of the decoder 16 are
9 can be manufactured on-pitch with the corresponding 0-39 cells of the multiplexer 20. The decoder cells 24-39
Duplicated to form the decoder 16
And the decoder cells 0 to 15 of the multiplexer 20 (in the horizontal direction), and are mounted on the cells 16 to 39. The cells 40 to 63 of the decoder 16 are
Line up with the corresponding one of the 39, and rest on cells 16-39.
【0029】この方法でデコーダをスタック(積層)す
るので、経路シフトの量は抑えられる。右の正のシフト
に対しては、デコーダ16のセル0〜39からの出力ビ
ットは、マルチプレキサ20のセル0〜39へとピッチ
が同じ(ピッチマッチ)で直接的な入力を供給し、経路
シフトはされない。これらは図2の制御信号40の場合
である。Since the decoders are stacked (stacked) in this manner, the amount of path shift can be suppressed. For a positive shift to the right, the output bits from cells 0-39 of decoder 16 provide a direct input at the same pitch (pitch match) to cells 0-39 of multiplexer 20 via a path. No shift is performed. These are the cases of the control signal 40 in FIG.
【0030】左の負シフトの場合、デコーダ16のセル
0〜38からの出力ビットは、同じピッチで、ピッチの
一単位分シフトされたマルチプレキサ20のセル1〜3
9への入力として供給される。ここで、マルチプレキサ
20のセル0には接地(VSS)が入力してある。経路
シフトをするために、デコーダ16の出力において、1
つの導体(金属等)経路しか必要とされない。In the case of the left negative shift, the output bits from the cells 0 to 38 of the decoder 16 are output to the cells 1 to 3 of the multiplexer 20 at the same pitch and shifted by one unit of the pitch.
9 is provided as an input to. Here, ground (VSS) is input to the cell 0 of the multiplexer 20. At the output of the decoder 16, 1
Only one conductor (metal, etc.) path is required.
【0031】左の正シフトの場合、デコーダ16のセル
24〜63からの出力ビットは、同じピッチのマルチプ
レキサ20のセル0〜39への直接的な入力を経路シフ
トなしで供給する。これらは制御信号44である。For the left positive shift, the output bits from cells 24-63 of decoder 16 provide the direct input to cells 0-39 of multiplexer 20 of the same pitch without path shifting. These are control signals 44.
【0032】右の負シフトの場合、デコーダ16のセル
25〜63からの出力ビットは、同じピッチで、ピッチ
の一単位分シフトしたセル0〜38への入力として供給
される。ここで、マルチプレキサ20のセル39には接
地が供給してある。経路シフトと反対方向では1つの導
体経路しかシフトするために必要ではない。右の負シフ
トをするための経路シフトは、左の負シフトをするため
の経路シフトとは反対である。In the case of a negative shift right, the output bits from cells 25-63 of decoder 16 are provided as inputs to cells 0-38 at the same pitch and shifted by one unit of the pitch. Here, the ground is supplied to the cell 39 of the multiplexer 20. It is not necessary to shift only one conductor path in the opposite direction of the path shift. A path shift to a negative right shift is the opposite of a path shift to a negative left shift.
【0033】Nが2のべき乗である場合は、1つのデコ
ーダセルの行しか必要でなく、セルは二重ではなくな
る。しかし、2つの経路シフトは未だ要する。If N is a power of two, only one row of decoder cells is needed and the cells are no longer double. However, two path shifts are still required.
【0034】マルチプレキサ20により供給されたN桁
の出力制御信号52は、バレルシフタ22に供給され、
これを制御する。また、別の制御入力もバレルシフタ2
2に供給される。The N-digit output control signal 52 supplied by the multiplexer 20 is supplied to the barrel shifter 22,
Control this. Also, another control input is barrel shifter 2
2 is supplied.
【0035】実施例として、双方向バレルシフタを制御
するものを示したが、右シフト又は左シフトのバレルシ
フタ等を用いることもできる。Although the embodiment controls the bidirectional barrel shifter, a right-shift or left-shift barrel shifter may be used.
【0036】また、バレルシフタ制御回路は、0が右シ
フト方向、1が左シフト方向を表すものでなくともよ
く、0の符号ビットが正のシフト値、1のシフトビット
が負のシフト値を表すものでなくともよい。さらに、バ
レルシフタ制御回路は、主要シフト(符号ビット0でシ
フト方向0)が右で正でないものであってもよい。ま
た、デコーダ出力を修正するのに結線論理ではない方法
を用いてもよい。1つのデコーダ出力が高位で、残りの
出力が低位であるデコーダを示したが、反対の状態や他
の組合せの状態に基づいて設計してもよい。このような
バレルシフタでは、論理値低によってではなく、論理値
高によって埋めることが要される。In the barrel shifter control circuit, 0 does not need to indicate the right shift direction and 1 does not indicate the left shift direction, and the sign bit of 0 indicates a positive shift value and the 1 shift bit indicates a negative shift value. It doesn't have to be something. Further, the barrel shifter control circuit may be one in which the main shift (sign bit 0 and shift direction 0) is not positive on the right. A method other than the connection logic may be used to correct the decoder output. While one decoder output is shown as high and the remaining outputs as low, the design may be based on the opposite or other combination of states. In such a barrel shifter, it is necessary to fill not with a low logical value but with a high logical value.
【0037】本発明は、集積回路を用いる通信システム
及び装置において特に有用であり、加算器、通常はリッ
プル加算器の遅延をなくすことができ、マルチプレキサ
入力がデコーダの演算時にセットアップされる場合にお
いて、加算器遅延をマルチプレキサ遅延に置き換えるこ
とができる。また、集積回路に用いれば従来技術の制御
回路よりも速くバレルシフタを演算でき、高速の右及び
左シフト又は回転演算ができるようになる。The present invention is particularly useful in communication systems and devices that use integrated circuits, which eliminates the delay of adders, usually ripple adders, and where the multiplexer input is set up during the operation of the decoder. , The adder delay can be replaced by a multiplexer delay. Also, when used in an integrated circuit, the barrel shifter can be operated faster than the control circuit of the prior art, and high-speed right and left shift or rotation operations can be performed.
【0038】本発明は1の補数演算の後の復号演算にお
ける利点を利用する。デコーダの入力に1を加えること
は、デコーダの高位の出力を1つの制御線路の分、シフ
トすることと同等である。The present invention takes advantage of the advantages of the decoding operation after the one's complement operation. Adding one to the input of the decoder is equivalent to shifting the higher output of the decoder by one control line.
【0039】[0039]
【発明の効果】以上述べたように、本発明のバレルシフ
タ制御方法及び集積回路は、シフト値30の分、入力ワ
ード24のビットをシフトするようにNビットバレルシ
フタ22を制御する。本方法は、シフト方向が第1方向
であれば、入力を生成するために、シフト値のmビット
バイナリ表現の1の補数演算を行うか又はシフト方向が
第2方向であれば、シフト値のこのバイナリ表現を入力
として渡すステップと、この入力を2mの制御信号へと
復号するステップと、この2mの制御信号から複数の制
御信号群を生成するステップと、バレルシフタを制御す
るために、この複数の制御信号群の1つを選択するステ
ップとを有する。シフト値のバイナリ表現のビットは、
複数のEORゲート140〜14m-1を通って渡され、第
1デコーダ16への入力として供給される。第1デコー
ダ16は、この入力を制御信号として用いられる複数の
ビットへと復号し、この制御信号は複数の群に分けられ
る。そこで、制御信号群の幾つかは、ゼロ埋めをするよ
うに、別の制御信号によって埋め合わされる。選択入力
50に基づいて、マルチプレキサ20は、どの複数の制
御信号群のうちの1つを、バレルシフタ22を制御する
ために渡すかを選択する。第2デコーダ18は、シフト
方向及びシフト値の符号を復号し、マルチプレキサ20
への選択入力50を提供する。このようにして、バレル
シフタ314を制御するのに使われるN桁の制御信号を
作る際に生じる加算器318の演算によって起こる遅延
の問題を解決でき、高速変換を行うバレルシフタが可能
となる。As described above, the barrel shifter control method and integrated circuit of the present invention controls the N-bit barrel shifter 22 to shift the bits of the input word 24 by the shift value 30. The method performs a one's complement operation of an m-bit binary representation of the shift value to generate an input if the shift direction is the first direction, or a shift value of the shift value if the shift direction is the second direction. Passing the binary representation as an input, decoding the input into a 2 m control signal, generating a plurality of control signals from the 2 m control signal, and controlling the barrel shifter. Selecting one of the plurality of control signal groups. The bits in the binary representation of the shift value are
It passes through a plurality of EOR gates 14 0 to 14 m -1 and is provided as an input to the first decoder 16. The first decoder 16 decodes this input into a plurality of bits used as control signals, which are divided into a plurality of groups. Thus, some of the control signals are padded with other control signals so as to pad with zeros. Based on the selection input 50, the multiplexer 20 selects which of a plurality of control signals to pass to control the barrel shifter 22. The second decoder 18 decodes the sign of the shift direction and the shift value, and
Provide a selection input 50 to the. In this way, it is possible to solve the problem of delay caused by the operation of the adder 318 that occurs when creating an N-digit control signal used for controlling the barrel shifter 314, and a barrel shifter that performs high-speed conversion is made possible.
【図1】本発明のバレルシフタ制御回路を示す概略図で
ある。FIG. 1 is a schematic diagram showing a barrel shifter control circuit of the present invention.
【図2】詳細なデコーダ及び出力制御選択マルチプレキ
サのセル図である。FIG. 2 is a detailed cell diagram of a decoder and an output control selection multiplexer.
【図3】バレルシフタを制御する従来技術の回路を示す
概略図である。FIG. 3 is a schematic diagram showing a prior art circuit for controlling a barrel shifter.
10 制御回路 12、14 EORゲート 16、18 デコーダ 20 マルチプレキサ 22 N×N双方向バレルシフタ 24 入力ワード 26 シフト出力ワード 28 符号ビット 30 シフト値 32 シフト方向 34 修正シフト方向 36 EORゲート出力 38 制御信号 40、42、44、46 制御信号 50 選択入力 52 制御信号 300 EORゲート 302 シフト方向 304 符号ビット 306 選択入力 308 シフト値 310、311 EORゲート 312 EORゲート出力 314 N×N双方向バレルシフタ 316 マルチプレキサ 318 全加算器 320 全加算器の出力 324 デコーダ 326 制御信号 328 入力ワード 330 シフト出力ワード Reference Signs List 10 control circuit 12, 14 EOR gate 16, 18 decoder 20 multiplexer 22 N × N bidirectional barrel shifter 24 input word 26 shift output word 28 sign bit 30 shift value 32 shift direction 34 correction shift direction 36 EOR gate output 38 control signal 40 , 42, 44, 46 control signal 50 selection input 52 control signal 300 EOR gate 302 shift direction 304 sign bit 306 selection input 308 shift value 310, 311 EOR gate 312 EOR gate output 314 N × N bidirectional barrel shifter 316 multiplexer 318 all Adder 320 Output of full adder 324 Decoder 326 Control signal 328 Input word 330 Shift output word
フロントページの続き (73)特許権者 596077259 600 Mountain Avenue, Murray Hill, New J ersey 07974−0636U.S.A. (72)発明者 マーク ステファン ダイアモンドスタ イン アメリカ合衆国、18104 ペンシルバニ ア、レハイ カウンティ、アレンタウ ン、エヌ.フォーティース ストリート 1491 (72)発明者 ホサハリ アール.スリニバス アメリカ合衆国、18104 ペンシルバニ ア、レハイ カウンティ、アレンタウ ン、ベンナー ロード 554,アパート メント ナンバー 102 (56)参考文献 特開 平4−245323(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 7/00 G11C 19/00 Continuation of the front page (73) Patent holder 596077259 600 Mountain Avenue, Murray Hill, New Jersey 07974-0636 U.S.A. S. A. (72) Inventor Mark Stephen Diamond Stein United States of America, 18104 Pennsylvania, Lehigh County, Alentaun, NJ. Forties Street 1491 (72) Inventor Hosahari Earl. Srinivas United States, 18104 Pennsylvania, Lehigh County, Arrentaun, Benner Road 554, Apartment No. 102 (56) References JP-A-4-245323 (JP, A) (58) Fields studied (Int. Cl. 7 , (DB name) G06F 7/00 G11C 19/00
Claims (11)
4)のビットをシフトするために、バレルシフタ(2
2)を制御する方法であって、 a)シフト方向(32)が第1方向であるときに、入力
を生成するために、シフト値のmビットバイナリ表現の
1の補数演算を行うステップと、 b)シフト方向(32)が第2方向であるときに、入力
としてシフト値の前記バイナリ表現を渡すステップと、 c)前記入力を2mの制御信号へと復号するステップ
と、 d)この2mの制御信号から複数の制御信号群を生成す
るステップと、 e)バレルシフタ(22)を制御させるため、前記複数
の制御信号群の1つを選択するステップとを有すること
を特徴とするバレルシフタ制御方法。1. An input word (2) corresponding to a shift value (30).
To shift the bits of 4), the barrel shifter (2
A) performing a one's complement operation of an m-bit binary representation of the shift value to generate an input when the shift direction (32) is the first direction; b) passing the binary representation of the shift value as an input when the shift direction (32) is the second direction; c) decoding the input into a 2 m control signal; d) generating a plurality of control signal groups from the m control signals; and e) selecting one of the plurality of control signal groups to control the barrel shifter (22). Method.
別の制御信号で埋め合わせるステップを更に有すること
を特徴とする請求項1記載の方法。2. The method of claim 1, further comprising: f) filling at least one of the control signals with another control signal.
制御信号のサブセットである制御信号群を選択するステ
ップを有することを特徴とする請求項1記載の方法。3. The method of claim 1, wherein said generating step (d) comprises selecting control signals that are a subset of said 2 m control signals.
号で埋め合わせるステップを更に有することを特徴とす
る請求項3記載の方法。4. The method of claim 3, further comprising the step of: g) padding one of the control signals with another control signal.
所定ビット数に対応する数の複数であるm個の排他的O
Rゲート(140〜14m-1)と、 この複数のEORゲート(14)のそれぞれは、前記シ
フト値(30)バイナリ表現のビットを受け取る第1入
力と、シフト方向(32)を受け取る第2入力と、及び
出力(36)とを有し、前記複数の排他的論理和ゲート
の前記出力(36)は、前記シフト方向が第1値であれ
ば、前記第1入力の1の補数を供給し、前記シフト方向
が第2値であれば、前記第1入力と同じ出力を供給し、 b)前記複数のEORゲートからの前記出力を受け取る
第1デコーダ(16)と、 この第1デコーダは、バレルシフタを制御するために、
前記複数のEORゲートからの前記出力を2mの制御信
号へと復号し、 c)前記2mの制御信号を受け取るため、出力(52)
として前記2mの制御信号のサブセットの所定の数の1
つを選択するための、選択入力(50)により制御され
たマルチプレキサ(20)と、 d)第1及び第2入力として、シフト方向(32)及び
シフト値の符号ビット(28)を受け取る第2デコーダ
(18)と、 この第2デコーダ前記は、前記マルチプレキサ(20)
を制御するために前記第1及び第2入力を前記選択入力
(50)へと復号しを有することを特徴とする集積回
路。5. a) A number m of exclusive ORs corresponding to a predetermined number of bits in a binary representation of a shift value (30).
Each of the R gates (14 0 to 14 m -1 ) and the plurality of EOR gates (14) has a first input for receiving a bit of the shift value (30) in binary representation and a second input for receiving a shift direction (32). An output (36) having two inputs and an output (36), wherein the output (36) of the plurality of exclusive OR gates is a 1's complement of the first input if the shift direction is a first value. Supplying, if the shift direction is a second value, supplying the same output as the first input; b) a first decoder (16) receiving the output from the plurality of EOR gates; To control the barrel shifter
Decoding the outputs from the plurality of EOR gates into 2 m control signals; c) receiving the 2 m control signals;
A predetermined number 1 of the subset of the 2 m control signals
A multiplexer (20) controlled by a selection input (50) for selecting one; d) a first receiving a shift direction (32) and a sign bit (28) of a shift value as first and second inputs. A second decoder (18); and the second decoder (20).
Decoding the first and second inputs to the select input (50) to control the integrated circuit.
方向及び前記シフト値の前記符号ビットを受け取るEO
Rゲート(12)をさらに有し、 このEORゲート(12)は、修正シフト方向(34)
を作るために、前記第1及び第2入力を結合することを
特徴とする請求項5記載の集積回路。6. e) an EO receiving the sign bit of the shift direction and the shift value as first and second inputs.
The EOR gate further has an R gate, and the EOR gate has a modified shift direction.
6. The integrated circuit according to claim 5, wherein the first and second inputs are combined to produce
(52)を受け取るバレルシフタ(22)を更に有する
請求項6記載の集積回路。7. The integrated circuit according to claim 6, further comprising: f) a barrel shifter (22) for receiving said output (52) of said multiplexer 20.
バレルシフタであることを特徴とする請求項7記載の集
積回路。8. The integrated circuit according to claim 7, wherein said barrel shifter is a bidirectional barrel shifter.
コーダセルからなり、前記マルチプレキサは、複数のマ
ルチプレキサセルからなり、前記各デコーダセルは、マ
ルチプレキサセルとオンピッチで製造されていることを
特徴とする請求項5記載の集積回路。9. The first decoder (16) includes a plurality of decoder cells, the multiplexor includes a plurality of multiplexor cells, and each of the decoder cells is manufactured with the multiplexor cells at an on-pitch. The integrated circuit according to claim 5, wherein:
1つは、複製され、前記デコーダセルは、第1群及び第
2群に分けられ、前記複数のデコーダセルの前記少なく
とも1つは、デコーダセルの前記第1群の近隣に位置
し、前記複数のデコーダセルの前記少なくとも1つ及び
デコーダセルの前記第1群は、前記マルチプレキサセル
の対応する1つとオンピッチで製造されていることを特
徴とする請求項9記載の集積回路。10. The method of claim 1, wherein at least one of the plurality of decoder cells is duplicated, the decoder cells are divided into a first group and a second group, and wherein at least one of the plurality of decoder cells is The at least one of the plurality of decoder cells and the first group of decoder cells located in proximity to the first group are fabricated on-pitch with a corresponding one of the multiplexor cells. An integrated circuit according to claim 9.
1つは、複製され、前記デコーダセルは、第1群及び第
2群に分けられ、前記複数のデコーダセルの前記少なく
とも1つは、デコーダセルの前記第1群の近隣に位置
し、前記複数のデコーダセルの前記少なくとも1つ及び
デコーダセルの前記第1群は、前記マルチプレキサセル
の対応する1つと及びデコーダセルの前記第2群の対応
する1つとオンピッチで製造されていることを特徴とす
る請求項9記載の集積回路。11. The method of claim 11, wherein at least one of the plurality of decoder cells is duplicated, the decoder cells are divided into a first group and a second group, and wherein at least one of the plurality of decoder cells is Located in the vicinity of the first group, the at least one of the plurality of decoder cells and the first group of decoder cells are a corresponding one of the multiplexor cells and a corresponding one of the second group of decoder cells. 10. The integrated circuit according to claim 9, wherein one of the integrated circuits is manufactured on-pitch.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US987895P | 1995-12-29 | 1995-12-29 | |
US009878 | 1995-12-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09282142A JPH09282142A (en) | 1997-10-31 |
JP3311624B2 true JP3311624B2 (en) | 2002-08-05 |
Family
ID=21740246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP00011297A Expired - Fee Related JP3311624B2 (en) | 1995-12-29 | 1997-01-06 | Barrel shifter control method and integrated circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3311624B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9021000B2 (en) | 2012-06-29 | 2015-04-28 | International Business Machines Corporation | High speed and low power circuit structure for barrel shifter |
-
1997
- 1997-01-06 JP JP00011297A patent/JP3311624B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09282142A (en) | 1997-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4807172A (en) | Variable shift-count bidirectional shift control circuit | |
US20050289323A1 (en) | Barrel shifter for a microprocessor | |
US4623982A (en) | Conditional carry techniques for digital processors | |
US7418648B2 (en) | System and method for generating a cyclic redundancy check | |
US5948050A (en) | Fast conversion two's complement encoded shift value for a barrel shifter | |
US6317763B1 (en) | Circuits, barrel shifters, and methods of manipulating a bit pattern | |
US6715066B1 (en) | System and method for arranging bits of a data word in accordance with a mask | |
JPH05224883A (en) | System for converting binary number of magnitude having floating-point n-bit code into binary number indicated by two's complement of fixed-point m-bit | |
US5726926A (en) | Shifter for shifting floating point number utilizing arithmetic operation of redundant binary number, and adder containing the same | |
US6370667B1 (en) | CRC operating calculating method and CRC operational calculation circuit | |
JPH0531769B2 (en) | ||
JP3311624B2 (en) | Barrel shifter control method and integrated circuit | |
US5710731A (en) | Combined adder and decoder digital circuit | |
US6738792B1 (en) | Parallel mask generator | |
US5699285A (en) | Normalization circuit device of floating point computation device | |
US6138133A (en) | Circuit for calculating the inverse of an arbitrary element of a finite field | |
US6629239B1 (en) | System and method for unpacking and merging bits of a data world in accordance with bits of a mask word | |
EP1202488A2 (en) | Encryption sub-key generation circuit | |
JP3418595B2 (en) | Ternary digital circuit | |
JPH0450615B2 (en) | ||
EP0431416A2 (en) | Apparatus and method for accessing a cyclic redundancy error check code generated in parallel | |
US5905663A (en) | Minimal circuit for detecting loss of precision in floating point numbers | |
US7472154B2 (en) | Multiplication remainder calculator | |
JP3191442B2 (en) | Arithmetic unit for Viterbi decoding | |
JP3259343B2 (en) | Viterbi decoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080524 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090524 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100524 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110524 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110524 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120524 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130524 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130524 Year of fee payment: 11 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |