(57)【要約】コンピュータに用いるデータレジスタ（３００）はクロック信号を受信するように構成したクロック端末（３１０）を備えている。複数のレジスタ（３２０）は、データを選択的に格納するように構成される。データ入力回路（３３０）が、レジスタに結合され、このデータ入力回路は、入力データを受け取って、その入力データをレジスタに選択的に配信するように構成される。また、データ出力回路（３４０）も、データレジスタに結合され、このデータ出力回路は、出力データを選択的に出力するように構成される。セレクタ（３５０）が、データ入力回路及びデータ出力回路に結合され、このセレクタは、入力データを、データ入力回路を介して、選択されたレジスタに入れることができると共に、選択されたレジスタにデータ出力回路を介してデータを出力させることができるように構成される。本発明は、多数の同時直列シフト無しでシフトレジスタにロードするための、効率的な技法を提供する。その結果、電力消費を最小化すると共に、高いパフォーマンスを達成する、電力効率の良いデバイスが得られる。
2008530651.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに用いるデータレジスタであって、クロック信号を受信すべく構成したクロック端末と、データを選択的に格納すべく構成した複数のレジスタと、該レジスタに結合され、かつ入力データを受け取って、当該入力データをレジスタに選択的に配信すべく構成したデータ入力回路と、前記データレジスタに結合され、かつ出力データを選択的に出力すべく構成したデータ出力回路と、前記データ入力回路及び前記データ出力回路に結合され、かつ前記入力データを前記データ入力回路を介して、選択されたレジスタに入れることができると共に、前記選択されたレジスタに前記データ出力回路を介してデータを出力させることができるように構成したセレクタとを備えている、データレジスタ。
【請求項２】
前記データ入力回路はデマルチプレクサを備え、前記データ出力回路はマルチプレクサを備え、かつ前記セレクタはアドレスジェネレータを備える、請求項１に記載のデータレジスタ。
【請求項３】
前記データ入力回路は、前記複数のレジスタへのイネーブル入力を備え、前記データ出力回路はマルチプレクサを備え、かつ前記セレクタはアドレス／イネーブルジェネレータを備える、請求項１に記載のデータレジスタ。
【請求項４】
前記データ入力回路は組合わせロジックを備え、前記データ出力回路はマルチプレクサを備え、かつ前記セレクタはアドレス／イネーブルジェネレータを備える、請求項１に記載のデータレジスタ。
【請求項５】
前記セレクタは、データ入力及びデータ出力のために前記複数のレジスタを逐次選択するように構成される、請求項１に記載のデータレジスタ。
【請求項６】
前記セレクタは、データ入力及びデータ出力のために前記複数のレジスタを逐次選択するように構成される、請求項２に記載のデータレジスタ。
【請求項７】
前記セレクタは、データ入力及びデータ出力のために前記複数のレジスタを逐次選択するように構成される、請求項３に記載のデータレジスタ。
【請求項８】
前記セレクタは、データ入力及びデータ出力のために前記複数のレジスタを逐次選択するように構成される、請求項４に記載のデータレジスタ。
【請求項９】
複数のレジスタと、データ入力回路と、データ出力回路と、セレクタとを備えるデータレジスタを用いてデータを一時的に格納する方法であって、前記セレクタ回路に応答して、前記データ入力回路を介して入力データを前記レジスタに選択的に配信するステップと、前記セレクタ回路に応答して、前記レジスタから前記データ出力回路を介して出力データを選択的に出力するステップとを有する、データ格納方法。
【請求項１０】
前記入力データをレジスタに選択的に配信するステップは逐次的である、請求項１０に記載の方法。
【請求項１１】
前記レジスタから出力データを選択的に出力するステップは逐次的である、請求項１０に記載の方法。
【請求項１２】
前記レジスタから出力データを選択的に出力するステップは逐次的である、請求項１１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レジスタの内容をレジスタ間でシフトすることに基づいて、高速演算することに役立つシフトレジスタの一般的な分野に関する。この種のシフトレジスタは、特に、信号プロセッサアプリケーションに有用である。
【背景技術】
【０００２】
シフトレジスタアレイは、有限インパルス応答（ＦＩＲ）フィルタ、パイプライン高速フーリエ変換（ＦＦＴ）及びその逆高速フーリエ変換（ＩＦＦＴ）のような、多くの信号プロセッサアプリケーションに広く用いられている。図１は、Ｎ個のレジスタ１１０ａ〜１１０ｄを有する、慣例のシフトレジスタアレイを示す。Ｎ個のレジスタは数珠つなぎに連鎖結合され、１つのレジスタの出力端が次のレジスタの入力端に結合される。
【０００３】
レジスタ間には組合わせ回路のロジックが無いので、シフトレジスタアレイは、慣例の集積回路設計、例えば超大規模集積回路（ＶＬＳＩ）の実現で、高速に動作することができる。しかしながら、入力データをシフトレジスタアレイの各サイクルに対して出力端に到達させるには、Ｎ回のシフトを必要とするため、動的な電力消費が、回数Ｎに直接関係する。したがって、Ｎが大きな数になる場合、電力消費もまた大きくなる。
【０００４】
図２は、Ｒ２２ＳＤＦアーキテクチャ（Radix-22 Single-path Delay Feedback）を有する、慣例の１２８ポイント高速フーリエ変換／逆高速フーリエ変換（ＦＦＴ／ＩＦＦＴ）の構成を示す。図２において、ＢＵＦ１の２１０ａ１は、データをスワッピングしたり、データをネゲート（negate）したりするバタフライユニットを表す。ＢＵＦ２の２１０ｂ１は、通常のバタフライユニットを表す。各バタフライユニットの上には記憶素子アレイ、例えば、２１０ａ２及び２１０ｂ２がある。高速ＦＦＴ／ＩＦＦＴの設計において、記憶素子は通常、スループットを改善すべくレジスタアレイとして実装される。このような慣例のレジスタアレイの実装が、図１に示すシフトレジスタアレイである。この例の場合には、各サイクル毎に１２７回のレジスタシフトが行われる。このような多数のシフト動作は、多量の動的電力を消費する。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
技術者は、現代のＶＬＳＩ設計において電力消費が重要な関心事であること、特に、携帯電話あるいは携帯機器で使用される集積回路にとって重要であることを、痛感している。これらの機器は電池によって附勢されるため、低電力設計は非常に切望されている。このような場合に、低電力消費のために、ハードウェアのコストを適当な値にすることはもっともである。したがって、本発明は、低電力のレジスタアレイを用いるシフトレジスタアレイにおける、電力消費を減らすことを目的とする。本発明は、低電力消費につながるランダムアクセスメモリ（ＲＡＭ）技術を提供する。本発明はレジスタを構成することにあるため、本発明はまた、高スループットを実現することもできる。
【課題を解決するための手段】
【０００６】
本発明は、高速シフト演算のための、低電力レジスタアレイを提供する。模範的な例では、低電力ＲＡＭのようなレジスタアレイを使用して、シフト演算を行う。ＲＡＭのようなレジスタは、シフトレジスタアレイに似ており、それは、高速ＦＩＲ及び高速ＦＦＴのような何らかのアプリケーションによって、要求される高スループットを達成することができる。しかしながら、本発明によるレジスタアレイは、ＲＡＭのように機能するので、シフトレジスタアレイよりも、動的な電力消費が非常に少なくて済む。低電力ＲＡＭのようなレジスタアレイに対する、いくつかの模範的なアーキテクチャを提供する。
【０００７】
その模範的な例では、コンピュータに用いるデータレジスタが、クロック信号を受信するように構成したクロック端末を備えるようにする。複数のレジスタは、データを選択的に格納するように構成する。レジスタには、データ入力回路を結合させ、このデータ入力回路は、入力データを受信して、その入力データをレジスタに選択的に配信するように構成する。また、データレジスタには、データ出力回路も結合させ、このデータ出力回路は出力データを選択的に出力するように構成する。データ入力回路及びデータ出力回路にはセレクタを結合させ、このセレクタは、入力データがデータ入力回路を経て、選択されたデータレジスタに入り、その選択されたレジスタがデータ出力回路を経てデータを出力することができるように構成する。
【０００８】
本発明は、多数の同時直列シフト無しでシフトレジスタにロードするための、効率的な技法を提供する。その結果、電力消費を最小化すると共に、高いパフォーマンス目標を達成する、電力効率の良いデバイスが得られる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明を、特定の装置及び実施例につき説明する。当業者は、この説明が例証のためのものであって、本発明を実施すための最良の形態に過ぎないことを認識するであろう。
【００１０】
本発明の１つの模範的なコンセプトは、低電力ＲＡＭのようなレジスタアレイは、１つのデータだけをアレイに入力させ、常に、１つのデータだけをアレイから出力するように構成することができるということである。したがって、入力データを、内容が現時点のクロックサイクルで出力となるレジスタに配信することによって、Ｎ回のデータシフトを回避することができる。このように、１つのレジスタだけが、Ｎ個のレジスタの代わりにトグルされる。このコンセプトは、高速スループットをも提供すると共に、電力消費を非常に減少させるのに役立つ。
【００１１】
図３は、本発明の実施例による低電力データレジスタのアーキテクチャ３００を示す。クロック入力３１０は、レジスタ３２０へのデータ入力とレジスタ３２０からの出力とをクロック同期させるためにレジスタ３２０に供給される。レジスタ３２０には、データ入力回路３３０を結合させ、このデータ入力回路３３０は、入力データを受信して、その入力データをレジスタに選択的に配信するように構成する。データレジスタ３２０には、データ出力回路３４０も結合させ、このデータ出力回路は、出力データを選択的に出力するように構成する。データ入力回路３３０及びデータ出力回路３４０には、セレクタ３５０を結合させ、このセレクタは、入力データがデータ入力回路を経て、選択されたレジスタに入り、また、選択されたレジスタがデータ出力回路を経てデータを出力することができるように構成する。
【００１２】
データ入力回路３３０は、多くの異なる方法で構成することができ、それらを以下追加の図面にて明らかにする。データ出力回路３４０を下記の全ての図においてマルチプレクサとして示すのと同様に、そのデータ出力回路は、同様の変更をすることができる。
【００１３】
図４は、デマルチプレクサ３３０Ａと、マルチプレクサ３４０Ａと、アドレスジェネレータ３５０Ａとを備えた、本発明の実施例による、低電力データレジスタのアーキテクチャ３００Ａを示す。レジスタブロック３２０は、Ｎ個の複数のレジスタ３２０Ａ０〜３２０ＡＮ−１を用いて構成する。一形態において、アドレスジェネレータ３５０Ａは、デマルチプレクサ３３０Ａを介してレジスタに順番に入力データをロードする昇順をインクリメントする。同様に、アドレスジェネレータ３５０Ａは、マルチプレクサ３４０Ａを介して、レジスタを順番にアンロードすることができる。
【００１４】
アドレスジェネレータ３５０Ａは、デマルチプレクサ３３０Ａ用のアドレス信号を生成して、内容がこのサイクルにおける出力となるレジスタに、入力データを正確に通すことができるようする。入力データを受け取るレジスタが出力を生成することになるから、同じアドレス信号が、マルチプレクサ３４０Ａにも与えられる。
【００１５】
図１のシフトレジスタのアーキテクチャと比較して、図４の例では、多少の追加のハードウェア、即ち、デマルチプレクサ３３０Ａ、マルチプレクサ３４０Ａ、アドレスジェネレータ３５０Ａが用いられる。一形態において、アドレスジェネレータ３５０Ａは、Ｎ個のレジスタアレイの場合に０からＮ−１までをカウントする、カウンタとする。１：Ｎのデマルチプレクサ３３０Ａ及びＮ：１のマルチプレクサ３４０Ａのハードウェアコストはかなりなものとなるが、総電力は大幅に減少する。
【００１６】
追加の実施例は、本発明によって実装することができるハードウェアの、さらなる削減を実証するために提供する。
【００１７】
図５は、チップイネーブルレジスタ３２０Ｂ１〜３２０ＢＮ−１と、アドレス／イネーブルジェネレータ３５０Ｂとを備えた、本発明の実施例による低電力データレジスタのアーキテクチャ３００Ｂを示す。レジスタブロック３２０は、Ｎ個の複数のレジスタ３２０Ｂ０〜３２０ＢＮ−１を用いて構成され、これらのレジスタは、アドレス／イネーブルジェネレータ３５０Ｂからの入力によってチップイネーブルにする。基本的には、標準的なレジスタを、保持可能なレジスタ３２０Ｂ０〜３２０ＢＮ−１と交換して、イネーブル信号がアクティブのときにだけ、データがレジスタにクロックされるようにする。本例におけるデータ入力回路３３０は３３０Ｂにて示してあり、この入力回路は、レジスタ３２０Ｂ０〜３２０ＢＮ−１の使用可能性を制御する、チップイネーブル信号３３０ＢＥを含む。一形態において、アドレス／イネーブルジェネレータ３５０Ｂは、データ入力回路３３０Ｂを介してレジスタに順番に入力データをロードする昇順をインクリメントする。同様に、アドレス／イネーブルジェネレータ３５０Ｂは、マルチプレクサ３４０Ｂを介して順序正しく、レジスタをアンロードすることもできる。
【００１８】
本例は、図４におけるデマルチプレクサ３３０Ａを排除している。保持可能なレジスタは、標準レジスタと同じようにシリコン領域内にあるため、図５におけるアーキテクチャでは、図４のアーキテクチャと比較して追加のハードウェアがほぼ半分に削減される。
【００１９】
適切な追加のハードウェアで、より多くの節電を達成する他のやり方は、クロックゲーティングを使用するものである。図６は、クロックゲーティング３３０Ｃと、アドレス／イネーブルジェネレータ３５０Ｃとを備えた、本発明の実施例による低電力データレジスタのアーキテクチャ３００Ｃを示す。レジスタブロック３２０は、Ｎ個の複数のレジスタ３２０Ｃ０〜３２０ＣＮ−１を用いて構成される。本形態においては、１つのレジスタが各サイクルにトグルされるため、他のＮ−１個のレジスタは、クロックゲーティングスキームによってディスエーブルにすることができる。本例におけるデータ入力回路３３０は３３０Ｃにて示してあり、この入力回路は、レジスタ３２０Ｃ０〜３２０ＣＮ−１のクロックを制御するイネーブル信号３３０ＣＥを含む。対応するイネーブル信号が非アクティブとなる場合に、各レジスタのクロックはディスエーブルになる。クロックゲーティングは、手動ＲＴＬコーディングによるか、またはSynopsys社のパワーコンパイラのようなＥＤＡツールによって実装することができる。一形態において、アドレス／イネーブルジェネレータ３５０Ｃは、データ入力回路３３０Ｃを介してレジスタに順番に入力データをロードする昇順をインクリメントする。同様に、アドレス／イネーブルジェネレータ３５０Ｃは、マルチプレクサ３４０Ｃを介して順序正しく、レジスタをアンロードすることもできる。
【００２０】
表１には、上記３つのアーキテクチャに対する、ハードウェアのコスト及び節電に関する比較を示してある。
【表１】
2008530651.tif 000003
【００２１】
表１に示すように、図５及び図６に示したアーキテクチャは有望であり、適切な追加のハードウェアを備えた低電力設計を導くことができる。
【００２２】
本発明の利点は多数ある。本発明は、多数の同時直列シフト無しでシフトレジスタにロードするための、効率的な技法を提供する。その結果、電力消費を最小化すると共に、高いパフォーマンスを達成する、電力効率の良いデバイスが得られる。
【００２３】
模範的な実施例及び最良な形態につき説明してきたが、特許請求の範囲にて規定した本発明の主題及び精神を逸脱しない範囲内において、開示した実施例には変更及び修正が可能である。
【図面の簡単な説明】
【００２４】
【図１】慣例のシフトレジスタアレイを示す図である。
【図２】慣例の１２８ポイントＲ２２ＳＤＦ  ＦＦＴ／ＩＦＦＴアーキテクチャを示す図である。
【図３】本発明の実施例による、低電力データレジスタのアーキテクチャを示す図である。
【図４】デマルチプレクサと、マルチプレクサと、アドレスレジスタとを備えた、本発明の実施例による低電力データレジスタのアーキテクチャを示す図である。
【図５】チップイネーブルレジスタと、アドレス／イネーブルジェネレータとを備えた、本発明の実施例による低電力データレジスタのアーキテクチャを示す図である。
【図６】クロックゲーティングと、アドレス／イネーブルジェネレータとを備えた、本発明の実施例による低電力データレジスタのアーキテクチャを示す図である。
【図１】
2008530651.tif 000004
【図２】
2008530651.tif 000005
【図３】
2008530651.tif 000006
【図４】
2008530651.tif 000007
【図５】
2008530651.tif 000008
【図６】
2008530651.tif 000009
【国際調査報告】
2008530651.tif 000010
2008530651.tif 000011