JP3578077B2 - バレルシフト回路 - Google Patents
バレルシフト回路 Download PDFInfo
- Publication number
- JP3578077B2 JP3578077B2 JP2000315820A JP2000315820A JP3578077B2 JP 3578077 B2 JP3578077 B2 JP 3578077B2 JP 2000315820 A JP2000315820 A JP 2000315820A JP 2000315820 A JP2000315820 A JP 2000315820A JP 3578077 B2 JP3578077 B2 JP 3578077B2
- Authority
- JP
- Japan
- Prior art keywords
- signal line
- output signal
- barrel shift
- turned
- shift circuit
- 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
Images
Landscapes
- Electronic Switches (AREA)
Description
【発明の属する技術分野】
本発明はバレルシフト回路に関し、特に入力信号線と出力信号線とを一対一に組合せて接続することによって入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて出力信号線からのデータを構成する各ビットとするバレルシフト回路に関する。
【0002】
【従来の技術】
従来のバレルシフト回路は、図17に示されているように、入力信号線と出力信号線との各交点にスイッチング素子SWを設けた構成である。N本(ここでは、N=4)の入力信号線とN本の出力信号線とを一対一に組合せて接続するので、N2個のスイッチング素子が必要となる。そして、これらスイッチング素子をオンさせるための制御信号A〜Dを択一的に与える。図中の制御信号A〜Dのうち、同じ符号が付されているものは同時にオン状態になるものとする。
【0003】
スイッチング素子には、MOSトランジスタを用いるのが一般的であり、そのソース端子又はドレイン端子には入力信号線又は出力信号線が接続される。また、そのゲート端子には制御信号A〜Dを図示されているように与えている。
【0004】
以上のように構成することにより、入力信号線による入力データを構成する各入力ビットと、出力信号線による出力データを構成する各出力ビットとの対応関係を変更することができる。この場合、入力データをビットシフトさせたものが出力データの各ビットに対応することになる。このとき、シフトによって追い出されたビットが反対側のビットに付加される、いわゆるバレルシフト(barrel shift)が行われることになる。例えば、右に1ビットシフトした場合、追い出された1ビットの値は左に付加されることになる。このようなバレルシフト回路は、周知のDSP(digital signal processor)やRISC(reduced instruction set computer)チップにおける演算処理に用いられる。
【0005】
なお、特開昭64−23330号公報においても、入力信号線と出力信号線との交点にスイッチング素子を同様に設けたバレルシフト回路が記載されている。
【0006】
【発明が解決しようとする課題】
しかし、以上のような構成からなるバレルシフト回路は、入力から出力まで多くの負荷がかかっていた。まず、入力側からみると、まず入力信号線を充電する必要がある。ここには、スイッチング素子であるMOSトランジスタのドレインが接続されているので、ドレイン容量が付く。さらに、導通状態になったスイッチング素子を通り、出力信号線を充電する。ここにも入力信号線と同じく多くのドレイン容量が付く。このため、入力信号線から出力信号線までの間に付く容量が大きく、動作速度の低下を招くという欠点がある。上述した特許公報に記載されているバレルシフト回路においても同様の欠点がある。
【0007】
本発明は上述した従来技術の欠点を解決するためになされたものであり、その目的は動作速度を向上することのできるバレルシフト回路を提供することである。
【0008】
【課題を解決するための手段】
本発明によるバレルシフト回路は、N本(Nは2以上の整数、以下同じ)の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって前記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて前記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、前記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって前記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、前記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、前記N個の駆動素子のうちオン状態になっている駆動素子により前記出力信号線を駆動するようにしたことを特徴とする。なお、前記スイッチング素子は、前記入力信号線に与えられる信号がゲート端子に印加されるMOSトランジスタであることを特徴とする。
【0009】
また、前記出力信号線群をプリチャージするプリチャージ手段や、前記出力信号線群のデータを保持する保持手段を更に含んでいても良い。
【0010】
そして、外部制御信号に応じて前記N本の出力信号線のうちの少なくとも1本を強制的に他の出力信号線の論理値と同一の論理値に設定する設定手段を更に含み、前記第1の駆動素子群と前記設定手段とを択一的に有効にしたり、外部制御信号に応じて前記N本の出力信号線のうちの少なくとも1本を強制的に特定論理値に設定する設定手段を更に含み、前記第1の駆動素子群と前記設定手段とを択一的に有効にしても良い。
【0011】
なお、前記入力信号線への入力データを構成する各ビットのLSBからMSBへの順序を逆にしかつ所定方向にバレルシフトさせて前記出力信号線からのデータを構成する各ビットとするための第2のバレルシフト用配線と、前記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなり、かつ、前記第1のスイッチング素子群とは択一的に有効になる第2のスイッチ素子群と、択一的にオン状態になることによって前記出力信号線各々を駆動するためのN個の駆動素子からなり、かつ、前記第1の駆動素子群とは択一的に有効になる第2の駆動素子群とを更に含み、オン状態になっているスイッチング素子を介して、オン状態になっている駆動素子により前記出力信号線を駆動するようにしても良い。
【0012】
要するに、本発明においては、制御信号線に与えられる制御信号のレベルに応じてスイッチング素子をオンオフ制御するのではなく、入力信号線に与えられる信号レベルに応じてオンオフ制御する。また、出力信号線を駆動するための駆動素子を設け、オン状態になっている駆動素子により出力信号線を駆動する。こうすることにより、ドレイン容量ではなく、ゲート容量のみが付加されるので、動作を高速にすることができるのである。
【0013】
【発明の実施の形態】
次に、図面を参照して本発明の実施の形態について説明する。なお、以下の説明において参照する各図では、他の図と同等部分は同一符号によって示されている。
【0014】
図1は本発明によるバレルシフト回路の第1の実施形態を示す回路図である。同図に示されているように、本実施形態によるバレルシフト回路においては、N本(N=4)の入力信号線とN本の出力信号線とを一対一に組合せて接続するために、N2個のスイッチング素子を用いている。そして、各スイッチング素子SWのゲート端子には、入力信号線の入力データを構成する各ビットが与えられている。そして、スイッチング素子のソース端子(ドレイン端子)から、出力データを構成する各ビットが導出される。また、スイッチング素子のドレイン端子(ソース端子)には、NチャンネルMOSトランジスタによる駆動素子TA〜TDが接続されている。これら駆動素子TA〜TDは、全てがオン状態になるのではなく、択一的にオン状態になるように駆動信号A〜Dによって制御されるものとする。これら駆動素子TA〜TDの一端は電源VSSに接続され、他端はバレルシフト用配線となる。なお、各出力信号線は抵抗を介して電源VDDにプルアップされ、各出力信号線に対応して設けられたバッファB1〜B4を介して出力データが導出される。
【0015】
このような構成において、入力信号の負荷は、NチャンネルMOSトランジスタのゲート容量だけである。また、出力信号線に付いている容量は、NチャンネルMOSトランジスタのドレイン容量であり、これを駆動するのは入力信号ではなく、NチャンネルMOSトランジスタによる駆動素子TA〜TDである。したがって、入力信号が全ての容量を駆動する必要はなく、トランジスタのサイズを最適化することにより、高速動作が可能となる。この効果は、本回路の扱うビット数が増加すればするほど、顕著になる。なお、回路規模の増加はわずかで済む。
【0016】
以上のように、本実施形態によるバレルシフト回路においては、N本の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて出力信号線からのデータを構成する各ビットとするためのバレルシフト用配線と、入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって出力信号線各々を駆動するためのN個の駆動素子からなる駆動素子群とを含み、オン状態になっているスイッチング素子を介して、オン状態になっている駆動素子により出力信号線を駆動するようにしていることになる。したがって、入力信号が全ての容量を駆動する必要はなく、トランジスタサイズを最適にすることにより、従来回路よりも高速に動作することができるという効果がある。
【0017】
次に、本発明の第2の実施形態によるバレルシフト回路について、図2を参照して説明する。本回路は、上述した第1の実施形態によるバレルシフト回路とは異なり、バレルシフト用配線を2種類含んで構成されている。これにより、入力データの各ビットの順序を逆に入換えて出力データとして導出することもできる。
【0018】
上述した第1の実施形態によるバレルシフト回路は、ビットを単一方向にシフトさせる循環機能を有している。しかしながら、LSB(least significant bit)からMSB(most significant bit)へのビット順序を、MSBからLSBへのビット順序に並べ変えた状態でビットをシフトさせることはできない。
【0019】
これに対し、本実施形態の回路では、LSBからMSBへのビット配列順序をそのまま循環させる機能と共に、その順序を逆に入換えてMSBからLSBへのビット順序にして出力することができるのである。このように、本回路では、2組のバレルシフト用配線を有しているため、各バレルシフト用配線に対応して2組の駆動素子群をも有している。すなわち、駆動素子TA〜TDの他に、NチャンネルMOSトランジスタによる駆動素子Ta〜Tdが設けられている。これら駆動素子TA〜TD及びTa〜Tdの一端は電源VSSに接続され、他端はバレルシフト用配線となる。そして、駆動信号A〜D及びa〜dによって、これら2つの駆動素子群が択一的に有効になり、有効になった駆動素子群に含まれている駆動素子が択一的にオン状態になるものとする。
【0020】
このように2種類のバレルシフト用配線を用いてバレルシフト回路を構成することにより、図3に示されているように、駆動信号A〜Dのいずれかが「1」、すなわち駆動素子TA〜TDのいずれかがオン状態になっている時は、LSBからMSBへのビット配列順序はそのままでビットシフトしたデータが出力される。一方、駆動信号a〜dのいずれかが「1」、すなわち駆動素子Ta〜Tdのいずれかがオン状態になっている時は、LSBからMSBへのビット配列順序が逆になり、さらにビットシフトしたデータが出力される。
【0021】
以上のように、本実施形態によるバレルシフト回路においては、第1の実施形態の回路に、入力信号線への入力データを構成する各ビットのLSBからMSBへの順序を逆にしかつ所定方向にバレルシフトさせて出力信号線からのデータを構成する各ビットとするための第2のバレルシフト用配線と、入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなり、かつ、第1のスイッチング素子群とは択一的に有効になる第2のスイッチ素子群と、択一的にオン状態になることによって出力信号線各々を駆動するためのN個の駆動素子からなり、かつ、第1の駆動素子群とは択一的に有効になる第2の駆動素子群とを更に含んで構成されており、オン状態になっているスイッチング素子を介して、オン状態になっている駆動素子により出力信号線を駆動するようにしていることになる。したがって、通常のバレルシフトと共に、LSBからMSBまでの逆並び、更にはそのバレルシフトすなわち正逆のビット循環機能を実現できるという効果がある。また、2種類のバレルシフト用配線を1つの回路に設けているので、2つの回路を設けるよりも回路規模をより小さくすることができるという効果もある。
【0022】
次に、本発明の第3の実施形態によるバレルシフト回路について、図4を参照して説明する。本実施形態の回路は、第1の実施形態の回路に、出力信号線をプリチャージするためのトランジスタT1〜T4からなるプリチャージ回路と、出力信号線の各ビットの値を保持するためのラッチ回路L1〜L4とを設けた構成である。
【0023】
このプリチャージ回路によるプリチャージのタイミングは、図5に示されている通りである。同図には、入力信号線の各ビット、プリチャージ信号PC、各駆動信号A〜Dの遷移タイミング、ラッチ信号LC、出力信号線の各ビットの波形が示されている。同図に示されているように、駆動信号A〜Dによって駆動素子のいずれかがオン状態になる以前にプリチャージ回路がオン状態になるので、タイミング上電流パスが形成されず、消費電力をより低減することができる。この消費電力低減は、特に扱うビット数が多ければ多いほど効果が大きい。
【0024】
第1の実施形態の回路では、駆動素子TA〜TDのいずれかがオン状態になった時、入力ビットにハイレベル「1」が含まれていればプルアップ抵抗を通した電源VDD−電源VSS間の電流経路ができる。この電流経路により、消費電流が増加する。
【0025】
これに対し、本実施形態の回路では、タイミング上電流パスが形成されず、消費電力をより低減することができる。
【0026】
さらに本回路では、出力信号線群をプリチャージするためのトランジスタT1〜T4によって駆動される出力信号線のデータを構成する各ビットの値を保持するラッチ回路を設けているので、出力データが確定した後は、その内容を保持することができるのである。
【0027】
以上のように、本実施形態によるバレルシフト回路においては、N本の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって上記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、上記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、上記N個の駆動素子のうちオン状態になっている駆動素子により上記出力信号線を駆動していることになる。また、出力信号線群をプリチャージし、かつ、出力信号線群のデータを保持していることになる。したがって、消費電力をより低減できるという効果がある。
【0028】
次に、本発明の第4の実施形態によるバレルシフト回路について、図6を参照して説明する。本実施形態の回路は、ビットを循環させる機能の他に符号拡張機能を有し、これらの機能をスイッチによって切換える構成である。この切換スイッチは、同図中のトランジスタTS1及びTS2である。そして、トランジスタTS1のゲート端子には制御信号Sが与えられ、トランジスタTS2のゲート端子には制御信号Sの反転信号S(−)が与えられる。なお、本明細書において、(−)は反転信号であることを示すものとする。
【0029】
本回路は、制御信号Sが「1」の場合、ビットを循環させるように動作する。一方、制御信号Sが「0」の場合、符号拡張させるように動作する。すなわち、図7に示されているように、制御信号Sが「1」(反転信号S(−)が「0」)であるとき循環機能を実現し、制御信号Sが「0」(反転信号S(−)が「1」)であるとき符号拡張機能を実現している。
【0030】
制御信号Sが「1」(反転信号S(−)が「0」)であるとき、駆動信号A〜Dによってオン状態になる駆動素子によって、先述した第1の実施形態の場合と同様に、ビットを循環させることができる。一方、制御信号Sが「0」(反転信号S(−)が「1」)であるとき、駆動信号A〜Dによってオン状態になる駆動素子によって、ビットを右にシフトさせ、かつ、シフト量に応じて左側(MSB側)からMSBと同じ値のビットを付加している。
【0031】
本実施形態の回路の動作について、図7を参照して説明する。同図を参照すると、制御信号Sが「1」であるとき、駆動信号A〜Dが入力される駆動素子TA〜TDによって正循環によるバレルシフトを実現できる。また、制御信号Sが「0」であるとき、駆動信号a〜dが入力される駆動素子Ta〜Tdによってビットを右にシフトさせ、かつ、シフト量に応じて左側からMSBと同じ値を付加することができる。つまり、制御信号Sが「0」であるとき、他の出力信号線の論理値と同一の論理値を、シフト量に応じて左側から設定していることになる。
【0032】
以上のような切換により、バレルシフトについて、循環と符号拡張との2つの機能を持たせることができる。これにより、符号拡張のために外付け回路を多く持たせる必要はない。また、本回路においては、符号拡張機能によって動作速度が低下することはなく、従来回路と同等程度の動作速度が得られる。
【0033】
以上のように、本実施形態によるバレルシフト回路においては、N本の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって上記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、上記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、上記N個の駆動素子のうちオン状態になっている駆動素子により上記出力信号線を駆動していることになる。また、外部制御信号に応じて上記N本の出力信号線のうちの少なくとも1本を強制的に他の出力信号線の論理値と同一の論理値に設定する設定手段を更に含み、上記第1の駆動素子群と上記設定手段とを択一的に有効にしていることになる。したがって、外付け回路を多く持たせることなく、かつ、動作速度が低下することはなく、符号拡張機能を実現できるという効果がある。
【0034】
次に、本発明の第5の実施形態によるバレルシフト回路について、図8を参照して説明する。本実施形態の回路は、ビットを循環させる機能の他にビットを左にシフトさせ、かつ、シフト量に応じて右側(LSB側)から「0」又は「1」を付加する機能を有し、これらの機能をスイッチによって切換える構成である。この切換スイッチは同図中のトランジスタT1及びT2である。トランジスタT1に与えられる制御信号α及びトランジスタT2に与えられる制御信号βの値によって、ビット循環動作又は左シフトして「0」又は「1」を付加する動作を実現することができる。
【0035】
すなわち、図9に示されているように、制御信号αが「1」で制御信号βが「0」のときには上述したビット循環機能を実現している。そして、制御信号α及びβが共に「0」のときには左シフト動作して右側から値「0」を詰める動作、制御信号βが「1」のとき(制御信号αの値は問わない)には左シフト動作して右側から値「1」を詰める動作、を実現することができる。つまり、制御信号α及びβの値に応じて、出力信号線のうちの少なくとも1本を強制的に特定論理値に設定しているのである。
【0036】
以上のように、本実施形態によるバレルシフト回路においては、N本の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって上記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、上記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、上記N個の駆動素子のうちオン状態になっている駆動素子により上記出力信号線を駆動していることになる。また、N本の出力信号線のうちの少なくとも1本を強制的に特定論理値に設定する設定手段を更に含み、上記第1の駆動素子群と上記設定手段とを択一的に有効にしていることになる。したがって、わずかに回路規模が増加するだけで、ビット循環機能又は上述した左シフト機能を実現できるという効果がある。
【0037】
次に、本発明の第6の実施形態によるバレルシフト回路について、図10を参照して説明する。本実施形態の回路は、第2の実施形態の場合と同様に2種類のバレルシフト用配線を設け、更に第3の実施例の場合と同様に出力信号線をプリチャージする回路を設けた構成である。なお、出力信号線の各ビットの値を保持するためのラッチ回路L1〜L4も設けている。
【0038】
本実施形態においては、第2の実施形態の場合と同様に、LSBからMSBへのビット配列順序をそのまま循環させることができると共に、その順序を逆に入換えてMSBからLSBへのビット順序にして出力することができるのである。そして、第3の実施形態の場合と同様に、出力信号線をプリチャージする回路を設けている。
【0039】
本実施形態の回路の動作について、図11を参照して説明する。同図(a)を参照すると、制御信号S1が「1」であるとき、駆動信号A〜Dによって正循環によるバレルシフトを実現できる。また、制御信号S1が「0」であるとき、駆動信号A〜Dによってビットを右にシフトさせ、かつ、シフト量に応じて左側からMSBと同じ値を付加することができる。
【0040】
一方、同図(b)を参照すると、制御信号S2が「1」であるとき、駆動信号a〜dによって逆循環によるバレルシフトを実現できる。また、制御信号S2が「0」であるとき、駆動信号a〜dによってLSBからMSBまでを逆に並べ換えかつビットを右にシフトさせ、更にシフト量に応じてシフト量に応じて左側からLSBと同じ値を付加することができる。
【0041】
かかる構成において、図12に示されているように、駆動信号A〜D及び駆動信号a〜dによって駆動素子のいずれかがオン状態になる以前にプリチャージ回路がオン状態になるように動作させれば、タイミング上電流パスが形成されず、消費電力をより低減することができる。この消費電力低減は、特に扱うビット数が多ければ多いほど効果が大きい。
【0042】
以上のように、本実施形態によるバレルシフト回路においては、N本の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって上記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、上記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、上記N個の駆動素子のうちオン状態になっている駆動素子により上記出力信号線を駆動していることになる。また、入力信号線への入力データを構成する各ビットのLSBからMSBへの順序を逆にしかつ所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第2のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなり、かつ、上記第1のスイッチング素子群とは択一的に有効になる第2のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなり、かつ、上記第1の駆動素子群とは択一的に有効になる第2の駆動素子群とを更に含み、オン状態になっているスイッチング素子を介して、オン状態になっている駆動素子により上記出力信号線を駆動していることになる。そして、出力信号線群をプリチャージしている。したがって、2種類のバレルシフトを低消費電力で実現できるという効果がある。
【0043】
次に、本発明の第7の実施形態によるバレルシフト回路について、図13を参照して説明する。本実施形態の回路は、第4の実施例の場合と同様に循環機能又は符号拡張機能を実現するためのバレルシフト用配線を設け、更に第3の実施例の場合と同様に出力信号線をプリチャージする回路を設けた構成である。
【0044】
本実施形態においては、第2の実施形態の場合と同様にLSBからMSBへのビット配列順序をそのままで又は逆にして循環させることができると共に、第4の実施形態の場合と同様にビットを右にシフトさせ、かつ、シフト量に応じて左側(MSB側)からMSBと同じ値のビットを付加して出力することができるのである。そして、第3の実施形態の場合と同様に、出力信号線をプリチャージする回路を設けている。なお、符号拡張機能のために設けられているトランジスタTS11,TS12,TS21,TS22は、制御信号S1,S1(−),S2,S2(−)によってオンオフ制御される。
【0045】
かかる構成において、図12に示されているように、駆動信号A〜D及び駆動信号a〜dによって駆動素子のいずれかがオン状態になる以前にプリチャージ回路がオン状態になるように動作させれば、タイミング上電流パスが形成されず、消費電力をより低減することができる。この消費電力低減は、特に扱うビット数が多ければ多いほど効果が大きい。
【0046】
以上のように、本実施形態によるバレルシフト回路においては、N本の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって上記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、上記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、上記N個の駆動素子のうちオン状態になっている駆動素子により上記出力信号線を駆動していることになる。また、入力信号線への入力データを構成する各ビットのLSBからMSBへの順序を逆にしかつ所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第2のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなり、かつ、上記第1のスイッチング素子群とは択一的に有効になる第2のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなり、かつ、上記第1の駆動素子群とは択一的に有効になる第2の駆動素子群とを更に含み、オン状態になっているスイッチング素子を介して、オン状態になっている駆動素子により上記出力信号線を駆動していることになる。そして、外部制御信号に応じて上記N本の出力信号線のうちの少なくとも1本を強制的に他の出力信号線の論理値と同一の論理値に設定し、更に出力信号線群をプリチャージしている。したがって、正逆の循環機能又は符号拡張機能を低消費電力で実現できるという効果がある。
【0047】
次に、本発明の第8の実施形態によるバレルシフト回路について、図14を参照して説明する。本実施形態の回路は、循環機能又はビットシフトと共に「0」もしくは「1」を挿入する機能を左右両方向について実現するための配線を設け、更に第3の実施例の場合と同様に出力信号線をプリチャージする回路を設けた構成である。なお、出力信号線の各ビットの値を保持するためのラッチ回路L1〜L4も設けている。
【0048】
本実施形態においては、トランジスタT11に与えられる制御信号α1、トランジスタT12に与えられる制御信号α2、トランジスタT21に与えられる制御信号β1及びトランジスタT22に与えられる制御信号β2の値によって、ビットを左又は右に循環させる機能の他に、機能を有し、これらの機能をスイッチによって切換える構成である。この動作が図15に示されている。
【0049】
まず、同図(a)を参照すると、制御信号α1が「1」で制御信号α2が「0」であるとき、駆動信号A〜Dによって正循環によるバレルシフトを実現できる。また、制御信号α1及び制御信号α2が共に「0」であるとき、駆動信号A〜Dによってビットを右にシフトさせ、かつ、シフト量に応じて「0」を付加することができる。そして、制御信号α1が「0」で制御信号α2が「1」であるとき、駆動信号A〜Dによってビットを右にシフトさせ、かつ、シフト量に応じて「1」を付加することができる。
【0050】
次に、同図(b)を参照すると、制御信号β1が「1」で制御信号β2が「0」であるとき、駆動信号a〜dによって逆循環によるバレルシフトを実現できる。また、制御信号β1及び制御信号β2が共に「0」であるとき、駆動信号a〜dによってLSBからMSBまでを逆に並べ換えかつビットを右にシフトさせ、更にシフト量に応じて「0」を付加することができる。そして、制御信号β1が「0」で制御信号β2が「1」であるとき、駆動信号a〜dによってLSBからMSBまでを逆に並べ換えかつビットを右にシフトさせ、更にシフト量に応じて「1」を付加することができる。
【0051】
かかる構成において、図12に示されているように、駆動信号A〜D及び駆動信号a〜dによって駆動素子のいずれかがオン状態になる以前にプリチャージ回路がオン状態になるように動作させれば、タイミング上電流パスが形成されず、消費電力をより低減することができる。この消費電力低減は、特に扱うビット数が多ければ多いほど効果が大きい。
【0052】
つまり、本実施形態においては、図16に示されているような動作モードを実現していることになる。すなわち、制御信号α1のみが「1」で他の制御信号α2並びにβ1及びβ2が「0」のときは左シフト循環機能を実現し、制御信号α1及びα2並びにβ1及びβ2が全て「0」のときは左シフトして「0」を挿入する機能を実現し、制御信号α2のみが「1」で他の制御信号α1並びにβ1及びβ2が「0」のときは左シフトして「1」を挿入する機能を実現している。また、制御信号β1のみが「1」で他の制御信号α1及びα2並びにβ2が「0」のときは右シフト循環機能を実現し、制御信号α1及びα2並びにβ1及びβ2が全て「0」のときは右シフトして「0」を挿入する機能を実現し、制御信号β2のみが「1」で他の制御信号α1及びα2並びにβ1が「0」のときは右シフトして「1」を挿入する機能を実現している。
【0053】
以上のように、本実施形態によるバレルシフト回路においては、N本の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって上記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、上記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、上記N個の駆動素子のうちオン状態になっている駆動素子により上記出力信号線を駆動していることになる。また、入力信号線への入力データを構成する各ビットのLSBからMSBへの順序を逆にしかつ所定方向にバレルシフトさせて上記出力信号線からのデータを構成する各ビットとするための第2のバレルシフト用配線と、上記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなり、かつ、上記第1のスイッチング素子群とは択一的に有効になる第2のスイッチ素子群と、択一的にオン状態になることによって上記出力信号線各々を駆動するためのN個の駆動素子からなり、かつ、上記第1の駆動素子群とは択一的に有効になる第2の駆動素子群とを更に含み、オン状態になっているスイッチング素子を介して、オン状態になっている駆動素子により上記出力信号線を駆動していることになる。そして、外部制御信号に応じて上記N本の出力信号線のうちの少なくとも1本を強制的に特定論理値に設定する設定手段を更に含み、上記第1の駆動素子群と上記設定手段とを択一的に有効にし、更に出力信号線群をプリチャージしている。したがって、正逆の循環機能又は特定の論理値を詰める機能を低消費電力で実現できるという効果がある。
【0054】
なお以上の各実施形態においては、入力データ及び出力データが共に4ビットである場合について説明したが、これ以外のビット数の場合についても本発明が適用できることは明白である。
【0055】
【発明の効果】
以上説明したように本発明は、制御信号線に与えられる制御信号のレベルに応じてスイッチング素子をオンオフ制御するのではなく、入力信号線に与えられる信号レベルに応じてオンオフ制御し、また出力信号線を駆動するための駆動素子を設けてオン状態になっている駆動素子により出力信号線を駆動することにより、ドレイン容量ではなく、ゲート容量のみが付加されるので、動作速度を向上できるという効果がある。
【図面の簡単な説明】
【図1】本発明によるバレルシフト回路の第1の実施形態を示す回路図である。
【図2】本発明によるバレルシフト回路の第2の実施形態を示す回路図である。
【図3】第2の実施形態によるバレルシフト回路の動作を示す図である。
【図4】本発明によるバレルシフト回路の第3の実施形態を示す回路図である。
【図5】本発明の第3の実施形態によるバレルシフト回路の動作を示す波形図である。
【図6】本発明によるバレルシフト回路の第4の実施形態を示す回路図である。
【図7】第4の実施形態によるバレルシフト回路の動作を示す図である。
【図8】本発明によるバレルシフト回路の第5の実施形態を示す回路図である。
【図9】第5の実施形態によるバレルシフト回路の動作を示す図である。
【図10】本発明によるバレルシフト回路の第6の実施形態を示す回路図である。
【図11】第6の実施形態によるバレルシフト回路の動作を示す図である。
【図12】本発明の第6の実施形態によるバレルシフト回路の動作を示す波形図である。
【図13】本発明によるバレルシフト回路の第7の実施形態を示す回路図である。
【図14】本発明によるバレルシフト回路の第8の実施形態を示す回路図である。
【図15】第8の実施形態によるバレルシフト回路の動作を示す図である。
【図16】本発明の第8の実施形態によるバレルシフト回路の動作モードを示す図である。
【図17】従来のバレルシフト回路の構成を示す回路図である。
【符号の説明】
B1〜B4 バッファ回路
L1〜L4 ラッチ回路
SW スイッチング素子
T1〜T4
TS1,TS2
TS11,TS12
TS21,TS22 トランジスタ
Ta〜Td、TA〜TD 駆動素子
Claims (7)
- N本(Nは2以上の整数、以下同じ)の入力信号線とN本の出力信号線とを一対一に組合せて接続することによって前記入力信号線への入力データを構成する各ビットを所定方向にバレルシフトさせて前記出力信号線からのデータを構成する各ビットとするための第1のバレルシフト用配線と、前記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなる第1のスイッチ素子群と、択一的にオン状態になることによって前記出力信号線各々を駆動するためのN個の駆動素子からなる第1の駆動素子群とを含み、前記N2個のスイッチング素子のうちオン状態になっているスイッチング素子を介して、前記N個の駆動素子のうちオン状態になっている駆動素子により前記出力信号線を駆動するようにしたことを特徴とするバレルシフト回路。
- 前記スイッチング素子は、前記入力信号線に与えられる信号がゲート端子に印加されるMOSトランジスタであることを特徴とする請求項1記載のバレルシフト回路。
- 前記出力信号線群をプリチャージするプリチャージ手段を更に含むことを特徴とする請求項1又は2記載のバレルシフト回路。
- 前記出力信号線群のデータを保持する保持手段を更に含むことを特徴とする請求項1〜3のいずれかに記載のバレルシフト回路。
- 外部制御信号に応じて前記N本の出力信号線のうちの少なくとも1本を強制的に他の出力信号線の論理値と同一の論理値に設定する設定手段を更に含み、前記第1の駆動素子群と前記設定手段とを択一的に有効にするようにしたことを特徴とする請求項1〜4のいずれかに記載のバレルシフト回路。
- 外部制御信号に応じて前記N本の出力信号線のうちの少なくとも1本を強制的に特定論理値に設定する設定手段を更に含み、前記第1の駆動素子群と前記設定手段とを択一的に有効にするようにしたことを特徴とする請求項1〜5のいずれかに記載のバレルシフト回路。
- 前記入力信号線への入力データを構成する各ビットのLSBからMSBへの順序を逆にしかつ所定方向にバレルシフトさせて前記出力信号線からのデータを構成する各ビットとするための第2のバレルシフト用配線と、前記入力信号線に与えられる信号レベルに応じてオン状態になるN2個のスイッチング素子からなり、かつ、前記第1のスイッチング素子群とは択一的に有効になる第2のスイッチ素子群と、択一的にオン状態になることによって前記出力信号線各々を駆動するためのN個の駆動素子からなり、かつ、前記第1の駆動素子群とは択一的に有効になる第2の駆動素子群とを更に含み、オン状態になっているスイッチング素子を介して、オン状態になっている駆動素子により前記出力信号線を駆動するようにしたことを特徴とする請求項1〜6のいずれかに記載のバレルシフト回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000315820A JP3578077B2 (ja) | 2000-10-16 | 2000-10-16 | バレルシフト回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000315820A JP3578077B2 (ja) | 2000-10-16 | 2000-10-16 | バレルシフト回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002123387A JP2002123387A (ja) | 2002-04-26 |
JP3578077B2 true JP3578077B2 (ja) | 2004-10-20 |
Family
ID=18794863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000315820A Expired - Fee Related JP3578077B2 (ja) | 2000-10-16 | 2000-10-16 | バレルシフト回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3578077B2 (ja) |
-
2000
- 2000-10-16 JP JP2000315820A patent/JP3578077B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002123387A (ja) | 2002-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0130413B1 (en) | A multi-stage pass transistor shifter/rotator | |
US4645944A (en) | MOS register for selecting among various data inputs | |
KR980011424A (ko) | 디지털 신호 전달 장치 | |
KR100499816B1 (ko) | 동기형반도체논리회로 | |
KR100567497B1 (ko) | 버스 인터페이스 회로 및 리시버 회로 | |
US5329477A (en) | Adder circuit having carry signal initializing circuit | |
JP3272724B2 (ja) | バレルシフタ | |
JPH042008B2 (ja) | ||
JP3578077B2 (ja) | バレルシフト回路 | |
US6212615B1 (en) | Semiconductor circuit having burst counter circuit which is reduced the circuits passing from the clock input terminal to output terminal | |
EP1130601A1 (en) | Column decoder circuit for page reading of a semiconductor memory | |
JP2853673B2 (ja) | デコード回路 | |
US4631425A (en) | Logic gate circuit having P- and N- channel transistors coupled in parallel | |
KR0166843B1 (ko) | 저소비 전력의 디램 비트라인 선택회로 | |
JP4173608B2 (ja) | 入出力制御回路およびマイクロコンピュータ | |
JP2538628B2 (ja) | 半導体集積回路 | |
US4745306A (en) | Half adder having a pair of precharged stages | |
US5381378A (en) | Semiconductor memory device | |
JPH02246098A (ja) | 半導体回路 | |
JP3068382B2 (ja) | プログラマブルロジックアレイ | |
JP3425875B2 (ja) | 比較回路 | |
JP4776183B2 (ja) | 複数のバスを駆動するマルチバス駆動装置 | |
US5724302A (en) | High density decoder | |
JP2540178B2 (ja) | 半導体集積回路 | |
JPS6350997A (ja) | 出力バツフア回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040614 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040622 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040705 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080723 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090723 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100723 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110723 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110723 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120723 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120723 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130723 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |