(57)【特許請求の範囲】
【請求項１】
第１の電圧レベルを有する入力信号を受け取るように結合された入力部を有するインバータと、
第２のトランジスタと直列に結合された第１のトランジスタであって、前記直列に結合された前記第１のトランジスタ及び前記第２のトランジスタは、電気的グランドと第２の電圧レベルとの間に結合されている、第１のトランジスタ、および前記第２の電圧レベルを有する出力信号を生成する、前記第１のトランジスタと前記第２のトランジスタとの間の出力ノードを有する出力段であって、
前記第２のトランジスタのゲートが前記インバータの出力部に結合されている、
出力段と、
前記第２の電圧レベルを有する基準電圧と前記第１のトランジスタのゲートとの間に結合された第３のトランジスタであって、前記第３のトランジスタのゲートは、前記出力ノードに結合されている、第３のトランジスタと、
前記第１のトランジスタの前記ゲートの電圧を制御するように前記第１のトランジスタの前記ゲートと前記第２のトランジスタの前記ゲートとの間に結合されたスイッチであって、
前記第１のトランジスタが第１のｐチャネルトランジスタを備え、
前記第２のトランジスタが第１のｎチャネルトランジスタを備え、
第２のｐチャネルトランジスタ及び第２のｎチャネルトランジスタであって、前記第２のｎチャネルトランジスタのゲートは前記インバータの前記入力部に結合され、前記第２のｐチャネルトランジスタのゲートは前記第１のｐチャネルトランジスタの前記ゲートに結合され、前記第２のｎチャネルトランジスタのドレインおよび前記第２のｐチャネルトランジスタのソースが前記第１のｐチャネルトランジスタの前記ゲートに結合され、前記第２のｎチャネルトランジスタのソースおよび前記第２のｐチャネルトランジスタのドレインが前記第１のｎチャネルトランジスタの前記ゲートに結合されている、第２のｐチャネルトランジスタ及び第２のｎチャネルトランジスタを備える、
前記スイッチと、
を備える、集積回路において電圧レベルシフトを行うための回路。
【請求項２】
前記第１の電圧レベルを有する第１の基準信号を受け取るように結合された第１の回路ブロックと、
前記第２の電圧レベルを有する第２の基準信号を受け取るように結合された第２の回路ブロックと、
をさらに備える、請求項１に記載の回路。
【請求項３】
前記集積回路が前記第１の回路ブロックおよび前記第２の回路ブロックを含む複数の回路ブロックを備え、
前記複数の回路ブロックの各回路ブロックが構成可能な論理素子およびレベルシフト回路を含む、
請求項２に記載の回路。
【請求項４】
第１の電圧レベルを有する入力信号をインバータの入力部に結合することと、
出力段の第１のトランジスタを前記出力段の第２のトランジスタと直列に結合することであって、前記直列に結合された前記第１のトランジスタ及び前記第２のトランジスタは、電気的グランドと第２の電圧レベルとの間に結合される、結合することと、
前記第２のトランジスタのゲートを前記インバータの出力部に結合することと、
前記第２の電圧レベルを有する基準電圧と前記第１のトランジスタのゲートとの間に第３のトランジスタを結合することであって、前記第３のトランジスタのゲートは、前記第１のトランジスタと前記第２のトランジスタとの間の出力ノードに結合される、結合することと、
前記第１のトランジスタの前記ゲートと前記第２のトランジスタの前記ゲートとの間に結合されたスイッチによって前記第１のトランジスタの前記ゲートの電圧を制御することであって、前記スイッチがｐチャネルトランジスタ及びｎチャネルトランジスタを備え、前記ｎチャネルトランジスタのドレインおよび前記ｐチャネルトランジスタのソースは前記第１のトランジスタの前記ゲートに結合され、前記ｎチャネルトランジスタのソースおよび前記ｐチャネルトランジスタのドレインは前記第２のトランジスタの前記ゲートに結合され、前記ｎチャネルトランジスタのゲートは前記インバータの前記入力部に結合され、前記ｐチャネルトランジスタのゲートは前記第１のトランジスタの前記ゲートに結合される、制御することと、
前記出力ノードにおいて前記第２の電圧レベルを有する出力信号を生成することと、
を含む、集積回路において電圧レベルシフトを行う方法。
【請求項５】
前記集積回路において複数の回路ブロックを実装することであって、
前記複数の回路ブロックの各回路ブロックが構成可能な論理素子およびレベルシフト回路を含む、実装すること
をさらに含む、請求項４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に集積回路デバイス、詳細には集積回路デバイスにおける電圧レベルシフトを行うための回路および方法に関する。
【背景技術】
【０００２】
集積回路は、しばしば、集積回路内部へのおよび外部装置との両方の、データの伝送に関与する。データ伝送は、ほとんどの集積回路デバイスにおいて重要な態様である。データ伝送における誤りは、集積回路の動作に影響するだけでなく、集積回路デバイスを組み込む装置またはシステムの動作にも影響することがある。さらに、データ伝送は、集積回路デバイスの性能にも影響することがある。例えば、伝送されるデータの速度は、データの電圧レベル、したがって集積回路デバイスの速度に依存することがある。
【０００３】
データ伝送は、典型的には所定の規格に従って行われ、データ信号は、ある特定のタイミングおよび電圧特性に準拠していなければならない。より重要なことには、データは、データのもとの電圧とは異なる電圧で、集積回路内で伝送される必要がある場合がある。例えば、集積回路は、異なる電源基準電圧を実施することがあり、集積回路のある特定の回路は、第１の基準電圧で動作することがあり、他の回路は、第２の基準電圧で動作することがある。それに応じて、集積回路において信号の電圧レベル変換を行うことがしばしば必要である。したがって、ある特定の電圧からより高い電圧に電圧レベル変換を行うための改善された回路が望ましい。
【発明の概要】
【０００４】
集積回路において電圧レベルシフトを行うための回路が開示される。本回路は、第１の電圧レベルを有する入力信号を受け取るように結合された入力部を有するインバータと、第２のトランジスタと直列に結合された第１のトランジスタ、および第２の電圧レベルを有する出力信号を生成する、第１のトランジスタと第２のトランジスタとの間の出力ノードを有する出力段と、を備える。第２のトランジスタのゲートは、インバータの出力部に結合されている。プルアップトランジスタは、第２の電圧レベルを有する基準電圧と第１のトランジスタのゲートとの間に結合されている。スイッチは、第１のトランジスタのゲートの電圧を制御するように第１のトランジスタのゲートと第２のトランジスタのゲートとの間に結合されている。
【０００５】
任意選択で、第１のトランジスタは、第１のｐチャネルトランジスタを含み、第２のトランジスタは、第１のｎチャネルトランジスタを含み、スイッチは、第２のｎチャネルトランジスタと並列に結合された第２のｐチャネルトランジスタを含む。
【０００６】
任意選択で、スイッチの第１のソース／ドレイン対は、第１のｐチャネルトランジスタのゲートに結合されている。
【０００７】
任意選択で、スイッチの第２のソース／ドレイン対は、第１のｎチャネルトランジスタのゲートに結合されている。
【０００８】
任意選択で、第２のｎチャネルトランジスタのゲートは、インバータの入力部に結合されている。
【０００９】
任意選択で、第２のｐチャネルトランジスタのゲートは、第１のｐチャネルトランジスタのゲートに結合されている。
【００１０】
任意選択で、出力ノードは、プルアップトランジスタのゲートに結合されている。
【００１１】
別の実施態様によると、集積回路において電圧レベルシフトを行うための回路は、第１の電圧レベルを有する第１の基準信号を受け取るように結合された第１の回路ブロックと、第２の電圧レベルを有する第２の基準信号を受け取るように結合された第２の回路ブロックと、電圧レベルシフト回路と、を備える。電圧レベルシフト回路は、第１の電圧レベルを有する入力信号を受け取るように結合された入力部を有するインバータと、第２のトランジスタと直列に結合された第１のトランジスタ、および第２の電圧レベルを有する出力信号を生成する、第１のトランジスタと第２のトランジスタとの間の出力ノードを有する出力段と、を備える。第２のトランジスタのゲートは、インバータの出力部に結合されている。プルアップトランジスタは、第２の電圧レベルを有する基準電圧と第１のトランジスタのゲートとの間に結合されている。スイッチは、第１のトランジスタのゲートの電圧を制御するように第１のトランジスタのゲートと第２のトランジスタのゲートとの間に結合されている。
【００１２】
任意選択で、第１のトランジスタは、第１のｐチャネルトランジスタを含み、第２のトランジスタは、第１のｎチャネルトランジスタを含み、スイッチは、第２のｎチャネルトランジスタと並列に結合された第２のｐチャネルトランジスタを含む。
【００１３】
任意選択で、スイッチの第１のソース／ドレイン対は、第１のｐチャネルトランジスタのゲートに結合され、スイッチの第２のソース／ドレイン対は、第１のｎチャネルトランジスタのゲートに結合されている。
【００１４】
任意選択で、第２のｎチャネルトランジスタのゲートは、インバータの入力部に結合され、第２のｐチャネルトランジスタのゲートは、第１のｐチャネルトランジスタのゲートに結合されている。
【００１５】
任意選択で、出力ノードは、プルアップトランジスタのゲートに結合されている。
【００１６】
任意選択で、第１の回路ブロックは、構成可能な論理素子および電圧レベルシフト回路を含む。
【００１７】
任意選択で、集積回路は、第１の回路ブロックおよび第２の回路ブロックを含む複数の回路ブロックを含み、複数の回路ブロックの各回路ブロックは、構成可能な論理素子およびレベルシフト回路を含む。
【００１８】
集積回路において電圧レベルシフトを行う方法も記載される。本方法は、第１の電圧レベルを有する入力信号をインバータの入力部に結合することと、出力段の第１のトランジスタを出力段の第２のトランジスタと直列に結合することと、第２のトランジスタのゲートをインバータの出力部に結合することと、第２の電圧レベルを有する基準電圧と第１のトランジスタのゲートとの間にプルアップトランジスタを結合することと、第１のトランジスタのゲートと第２のトランジスタのゲートとの間に結合されたスイッチによって第１のトランジスタのゲートの電圧を制御することと、第１のトランジスタと第２のトランジスタとの間の出力ノードにおいて第２の電圧レベルを有する出力信号を生成することと、を含む。
【００１９】
任意選択で、第１のトランジスタのゲートと第２のトランジスタのゲートとの間に結合されたスイッチによって第１のトランジスタのゲートの電圧を制御することは、ｎチャネルトランジスタと並列に結合されたｐチャネルトランジスタを有するスイッチを実装することを含む。
【００２０】
任意選択で、本方法は、スイッチの第１のソース／ドレイン対を第１のｐチャネルトランジスタのゲートに結合することと、スイッチの第２のソース／ドレイン対を第１のｎチャネルトランジスタのゲートに結合することと、をさらに含む。
【００２１】
任意選択で、本方法は、第２のｎチャネルトランジスタのゲートをインバータの入力部に結合することと、第２のｐチャネルトランジスタのゲートを第１のｐチャネルトランジスタのゲートに結合することと、をさらに含む。
【００２２】
任意選択で、本方法は、出力ノードの出力信号をプルアップトランジスタのゲートに結合することをさらに含む。
【００２３】
任意選択で、本方法は、集積回路において第１の回路ブロックおよび第２の回路ブロックを含む複数の回路ブロックを実装することをさらに含む。複数の回路ブロックの各回路ブロックは、構成可能な論理素子およびレベルシフト回路を含んでもよい。
【００２４】
他の特徴は、以下の詳細な説明および特許請求の範囲を考察することにより認識されるであろう。
【図面の簡単な説明】
【００２５】
【図１】電圧レベルシフトを可能にする回路を有する集積回路のブロック図である。
【図２】図１の集積回路のプログラマブルリソースの一部のブロック図である。
【図３】図２の回路の２つの構成可能な論理素子のブロック図である。
【図４】ユーザが選択可能な電圧レベルシフト回路を有する図２の回路の構成可能な論理素子のアレイのブロック図である。
【図５】図４の回路の選択回路４０１のブロック図である。
【図６】図２の電圧レベルシフト回路２１２のブロック図である。
【図７】図５のレベルシフト回路の動作を示すタイミング図である。
【図８】プログラマブルリソースを有するデバイスをプログラムするためのシステムのブロック図である。
【図９】図１〜図６の回路を実施することができるプログラマブルリソースを有するデバイスのブロック図である。
【図１０】図９のデバイスの構成可能な論理素子のブロック図である。
【図１１】集積回路デバイスにおいて電圧レベルシフトを行う方法を示す流れ図である。
【発明を実施するための形態】
【００２６】
本明細書は、新奇であると見なされる本発明の１つまたは複数の実施態様の特徴を規定する特許請求の範囲を含んでいるが、回路および方法は、図面と併せて記載を考察することにより一層よく理解されると考えられる。様々な回路および方法が開示されているが、これら回路および方法は、様々な形態で具現化することができる本発明の構成例に過ぎないことを理解されたい。したがって、本明細書の範囲内で開示される特定の構造的および機能的な詳細は、限定していると解釈されるべきではなく、単に特許請求の範囲に対する基準として、および実質的にすべての適切に詳述された構造において本発明の構成を様々に用いる当業者に教示するための代表的な基準として解釈されるべきである。さらに、本明細書に使用される用語および熟語は、限定することは意図されておらず、回路および方法についてのわかりやすい説明を提供することが意図されている。
【００２７】
以下に述べる回路および方法は、２つの電源領域間での信号のレベルシフトについて記載し、２つの電源領域のレベルがあまり離れてない特定の用途を見出す。本回路および方法は、従来のレベルシフタと比較して、より低いレイテンシーおよび面積オーバヘッドという利点を有する。また、レベルシフタは、フィールドプログラマブルロジックデバイス（ＦＰＧＡ）などのプログラマブルロジックデバイス（ＰＬＤ）の相互接続ファブリックに集積化されてもよい。ＦＰＧＡファブリックは、ＣＬＥおよび相互接続からなり、ユーザは、ファブリックによってカスタムデータパスを実施することができる。ＦＰＧＡファブリックにおけるそのような実施は、従来のスキームと比較して、余分な遅延のオーバヘッドがないレベルシフトを実現する。個々のＣＬＥ／相互接続は、顧客の要求に応じて、低電力／高速モードに対してプログラムされることがある。これは、電源と直列にＮＭＯＳおよびＰＭＯＳトランジスタを使用して、およびＶｄｄ−Ｖｔｈの仮想低電圧電源レールを生成するためのＮＭＯＳトランジスタを使用して実施されることがある。電圧レベルシフト回路は、ある特定の電圧レベルを有する信号をより高い電圧レベルに変換するために使用されることがある。
【００２８】
より具体的には、集積回路において電圧レベルシフトを行うための回路は、第１の電圧レベルを有する入力信号を受け取るように結合された入力部を有するインバータと、第２のトランジスタと直列に結合された第１のトランジスタ、および第２の電圧レベルを有する出力信号を生成する、第１のトランジスタと第２のトランジスタとの間の出力ノードを有する出力段であって、第２のトランジスタのゲートがインバータの出力部に結合されている、出力段と、第２の電圧レベルを有する基準電圧と第１のトランジスタのゲートとの間に結合されたプルアップトランジスタと、を備えることができる。スイッチは、第１のトランジスタのゲートの電圧を制御するように第１のトランジスタのゲートと第２のトランジスタのゲートとの間に有利に結合され、スイッチおよびプルアップトランジスタによって、電源基準電圧ＶＤＤＬとより高い電源基準電圧ＶＤＤＨとの間で信号の電圧遷移が可能となる。本回路および方法は、より高い電圧と、出力信号を生成する最終インバータの入力部との間に結合された弱プルアップトランジスタを有する従来のレベルシフタと比較して、スルーレートが改善された、より高速の電圧レベル遷移を提供する。
【００２９】
初めに図１を参照すると、電圧レベルシフトを可能にする回路を有する集積回路のブロック図が示されている。具体的には、入力／出力ポート１０２は、コンフィギュレーションメモリ１０８を有するプログラマブルリソース１０６を制御する制御回路１０４に結合されている。図９〜１１を参照して以下でより詳細に記載されるコンフィギュレーションデータは、コンフィギュレーションコントローラ１１０によってコンフィギュレーションメモリ１０８に提供されてもよい。図１１を参照してより詳細に記載されるコンフィギュレーションデータによって、構成可能な素子１０９の動作が可能となる。ＣＬＥは、以下で詳細に図示され記載されるが、電圧レベルシフト回路は、任意のタイプの集積回路と共に使用されてもよく、ＣＬＥ以外の回路ブロックのスタガード電源投入を行うことができる場合があることを理解されたい。例えば、不揮発性メモリであってもよい別個のメモリ１１２は、制御回路１０４およびプログラマブルリソース１０６に結合されてもよい。もう１つの回路１１４は、制御回路１０４およびメモリ１１２に結合されてもよく、Ｉ／Ｏポート１１６を介して集積回路デバイスの外部に信号を伝達することができる。他のＩ／Ｏポート、例えば、図示されるような制御回路１０４に結合されたＩ／Ｏポート１１８は、集積回路デバイスの回路に結合されてもよい。
【００３０】
ここで、図２を参照すると、図１の集積回路のプログラマブルリソースの一部２０２のブロック図が示されている。ここではマトリックスで示される複数のＣＬＥは、複数の電圧の少なくとも１つを受け取るように結合されている。ＣＬＥ２０３および２０６〜２１０を有する第１の行、ＣＬＥ２１４〜２２０を有する第２の行、ならびにＣＬＥ２２４〜２３０を有する第３の行を含む３行のＣＬＥが示されているが、ＣＬＥのマトリックスは、より多くの数の行および列のＣＬＥを含むことができることを理解されたい。第１の電源基準電圧を受け取るＣＬＥは、図２では低電力ＣＬＥとして示され、第１の電源基準電圧よりも高い第２の電圧を受け取るＣＬＥは、高電力ＣＬＥとして示されている。各ＣＬＥは、複数の入力部２０４を備え、少なくとも１つの出力部２０５を有する。
【００３１】
図２のＣＬＥを通り抜ける１つの経路に従って、高電力ＣＬＥ２２４の入力部２３２は、入力信号（ＩＮ）を受け取るように結合され、ＣＬＥ２２４の出力部２３４で高電圧（例えば、ＶＤＤＨ）を有する出力信号は、高電力ＣＬＥ２１６の入力部２３５に結合されている。また、高電力ＣＬＥ２１６は、低電力ＣＬＥ２１４の出力部２３６に結合され、したがって、入力部２３７でより低い電圧（例えば、ＶＤＤＬ）を有する入力信号を受け取る。ＣＬＥ２１６の出力部２３８は、ＣＬＥ２１８の入力部２４０に結合され、出力部２４２は、ＣＬＥ２１０の入力部２４４に結合され、このＣＬＥ２１０が出力部２４６で出力信号（ＯＵＴ）を生成する。しかしながら、高電力ＣＬＥ２１６がその入力部２０４でデータを処理するために、電圧レベル変換器２１２がＣＬＥ２１４の出力部とＣＬＥ２１６の入力部との間に含まれている。すなわち、低電力ドメイン（例えば、ＶＤＤＬドメイン）から高速ドメイン（例えば、ＶＤＤＨドメイン）へ、またはある高速ドメインから別の高速ドメインへ横切る信号は、以下でより詳細に記載されるようにレベルシフトを必要とする。
【００３２】
電圧レベル変換器２１２がＣＬＥとは別に示され、相互接続構造の一部として実施されているが、以下でより詳細に記載されるように、電圧レベル変換器２１２は、ＣＬＥの一部として実施されてもよいことを理解されたい。さらに、単一の電圧レベル変換器２１２のみが図２で強調表示された特定のデータ経路において必要とされるように示されているが、以下でより詳細にされるように、電圧レベル変換器は、各ＣＬＥのそれぞれの出力部に関連付けられてもよく、電圧レベル変換器は、選択的に使用されてもよいことを理解されたい。
【００３３】
ここで、図３を参照すると、図２の回路の２つの構成可能な論理素子１０９のブロック図が示されている。図３は、入力部３０３で基準電圧を受け取るＣＬＥブロック３０２ならびに入力部３０５および３０９で基準電圧を受け取る対応する相互接続ブロック３０４を有する第１のＣＬＥ１０９を示し、この相互接続ブロックの出力部が、ＣＬＥブロック３０６および対応する相互接続ブロック３０８を有する第２のＣＬＥ１０９に結合されている。図３の回路構成は、ＣＬＥ３０２の出力部が（入力部３０３に印加されるＶＤＤ１基準電圧に基づく）第１の電圧レベルＶＤＤ１にあり、この第１の電圧レベルＶＤＤ１がＣＬＥブロック３０２によって受け取られる適切な電圧レベルとなるようにより高い電圧レベルＶＤＤ２に変換され、このＣＬＥブロック３０２が入力部３０７で受け取られる、より高い電圧レベルＶＤＤ２で動作する、コンフィギュレーションを示す。ＶＤＤ１およびＶＤＤ２の両方を受け取る電圧レベル変換器２１２の動作については、図６を参照してより詳細に記載する。ＣＬＥブロック３０２および３０６は、図１０により詳細に示されている。
【００３４】
ここで図３の回路の接続を参照すると、第１の相互接続線３１０は、ＣＬＥブロック３０２の入力部３１２に結合され、一方、第２の相互接続線３１４は、第２の入力部３１６に結合されている。２つの入力部のみが示されているが、図２に示されるようにＣＬＥへのさらなる入力部が実施されてもよい。さらに、図３の相互接続の接続は、接続されたこれらの２つの隣接するＣＬＥブロックを示すために提供されている。しかしながら、ＣＬＥ１０９は、図２に示され、図４を参照して以下に記載されるように、異なる行または列において接続されてもよいことを理解されたい。ＣＬＥブロック３０２の出力部３２２は、相互接続線３２５によって相互接続ブロック３０４の入力部３２４に結合され、出力部３２６は、相互接続線３２９によって入力部３２８に結合されている。
【００３５】
相互接続は、第２のＣＬＥ１０９に対しても設けられている。具体的には、相互接続は、第１のＣＬＥ１０９の相互接続ブロック３０４と第２のＣＬＥ１０９のＣＬＥブロック３０６との間に設けられている。相互接続ブロック３０４の出力部３３０は、相互接続線３３３によってＣＬＥブロック３０６の入力部３３２に結合され、出力部３３４は、相互接続線３３７によって入力部３３６に結合されている。ＣＬＥブロック３０６の出力部３４２は、相互接続線３４５によって相互接続ブロック３０８の入力部３４４に結合され、出力部３４６は、相互接続線３４９によって入力部３４８に結合されている。最終的に、相互接続ブロック３０８の出力部によって、他のＣＬＥに送られることがある信号を提供することができる。すなわち、出力部３５０によって、第１の出力信号を信号線３５２上に生成することができ、出力部３５４によって、第２の出力信号を信号線３５６上に生成することができる。したがって、レベルシフタは、常に経路内にあり、（例えば、設計において電力スイッチによって制御される）レベルシフタへの電源に基づいて、各レベルシフタは、２つの状態、すなわち（ＶＤＤ１＝ＶＤＤ２）または（ＶＤＤ１＜ＶＤＤ２）の一方の状態で動作している。
【００３６】
相互接続ブロック３０４は、対応する入力部３２４および３２８に関連付けられた２つの経路を備え、各経路が電圧レベルシフタ２１２を有する。具体的には、相互接続ブロック３０４の入力部３２４は、電圧レベルシフタ２１２の入力部３６１に結合され、出力部３６２は、マルチプレクサー３６６の入力部３６４に結合されている。入力部３２８は、第２の電圧レベルシフタ２１２、およびマルチプレクサー３６６の対応する入力部３６８に結合され、選択された出力信号が出力部３７０および３７２で生成される。各電圧レベルシフタは、入力部３２４に結合された電圧レベルシフタ２１２について上記で記載されたように、図３の他の相互接続ブロックにおいて同様に実施される。
【００３７】
ここで、図４を参照すると、電圧レベルシフト回路を有する構成可能な論理素子１０９のアレイのブロック図が示されている。アレイは、図３に記載されるような複数のＣＬＥ１０９を含み、相互接続回路によって、対応するＣＬＥブロックの入力部へ複数の入力信号を送ることが可能である。具体的には、ここではマルチプレクサーとして示される選択回路４０１は、選択回路４０１への対応する入力部４０４〜４０８に結合された入力線４０２上の複数の入力信号を受け取るように結合されている。例えば、コンフィギュレーションビットを記憶するメモリ素子によって生成されてもよい制御値４１０が制御線４１２に結合されている。相互接続ブロック３０４の出力線３３３および３３７、ならびに入力線４０２から明らかなように、（図９を参照してより詳細に記載される）相互接続素子によって、例えば、図２で示されるような、様々な入力部および出力部の接続が可能となる。この新しいレベルシフタを、例えば、ＦＰＧＡの相互接続素子に集積化することによって、従来のレベルシフタと比較して、データ経路の追加遅延が最小となる所望のレベルシフトを行うことができる。
【００３８】
ここで、図５を参照すると、図４の回路の選択回路４０１のブロック図が示されている。より具体的には、選択回路４０１は、第１のマルチプレクサー５０２および第２のマルチプレクサー５０４を備え、これらマルチプレクサーのそれぞれが複数の信号線５０６上の複数の信号を受け取るように結合されている。第１のマルチプレクサー５０２および第２のマルチプレクサー５０４についての選択された出力は、出力部５０８および５１０でそれぞれ生成される。図５の回路によって、例えば、図４の各ＣＬＥ１０９の入力部と出力部との間で信号を選択的に送ることができる。
【００３９】
ここで、図６を参照すると、電圧レベルシフト回路２１２のブロック図が図７のタイミング図と共に示されている。具体的には、電圧レベルシフト回路２１２は、入力信号を受け取るように結合された入力部６０４を有する第１のインバータ６０２と、ここでは第１の基準電圧ＶＤＤＬとして示される基準電圧を受け取るように結合された入力部６０６とを備える。第１のインバータ６０２の出力部６０８は、入力部６１２で第２のインバータ６１０に結合され、この第２のインバータ６１０も、入力部６１４で基準電圧を受け取り、出力信号が出力部６１６で生成される。図６に示されるように、インバータ６０２および６１０のそれぞれは、第２の電源基準電圧ＶＤＤＨよりも低い第１の電源基準電圧ＶＤＤＬを受け取るように結合されている。インバータ６１０の出力部は、電源基準電圧ＶＤＤＨとグランド（ＧＮＤ）との間で直列に結合された第１のトランジスタ６１９および第２のトランジスタ６２０を有する出力段６１８に結合されている。
【００４０】
スイッチ６２４は、並列に結合された、ｎチャネルトランジスタとして実施される第１のトランジスタ６２６およびｐチャネルトランジスタとして実施される第２のトランジスタ６２８を備える。スイッチ６２４は、プルアップトランジスタ６３０とインバータ６１０の出力部６１６との間に結合されている。より具体的には、ｐチャネルトランジスタ６３０のソース６３２は、ＶＤＤＨに結合されている。スイッチ６２４の第１トランジスタ６２６および第２トランジスタ６２８は、並列に結合され、トランジスタ６２６および６２８の第１のソース／ドレイン対は、トランジスタ６３０のドレイン６３４に結合され、トランジスタ６２６および６８８の第２のソース／ドレイン対は、インバータ６１０の出力部６１６に結合されている。すなわち、ｎチャネルトランジスタ６２６のドレイン６３６およびｐチャネルトランジスタ６２８のソース６３８は、トランジスタ６３０のドレイン６３４に結合され、一方、トランジスタ６２６のソース６４０およびトランジスタ６２８のドレイン６４２は、インバータ６１０の出力部６１６に結合されている。
【００４１】
トランジスタ６２８のゲート６４８は、トランジスタ６２０のゲート６４９に結合され、一方、ソース６５０は、ＶＤＤＨに結合され、ドレイン６５２は、トランジスタ６１９のドレイン６５４に結合されている。トランジスタ６１９のソース６５６は、グランドに結合されている。ドレイン６５２およびドレイン６５４のノードは、トランジスタ６３０のゲート６５８に結合されている。以下でより詳細に記載されるように、ノードＸの電圧は、ドレイン６５２およびドレイン６５４のノードでＶＤＤＨの電圧を有する出力信号（ＯＵＴ）を生成するようにスイッチ６２４の選択的なスイッチングによって制御される。
【００４２】
図７に示されるように、ＶＤＤＬまたはＶＤＤＨのいずれかによって表される論理１と、論理０との間の遷移の例が、ある特定のノードにおいて示され、論理１が、第１のインバータ６０２および第２のインバータ６１０の出力部でＶＤＤＬの電圧レベルを有し、一方、出力段６１８の出力部の論理１が、より高い電圧のＶＤＤＨにレベルシフトされた論理１を有する。インバータ６０２の入力部でｉｎ１信号が高くなるとともに、出力部６０８、およびインバータ６１０の入力部６１２のｉｎ２信号が低くなる。この間に、内部ノードＸは、トランジスタ６２８を介してＶＤＤＬに充電される。すなわち、トランジスタ６１９のゲートのｉｎ３信号が上昇し始めるとともに、ノードＸの電圧がＶＤＤＬに変化する（トランジスタ６１９をオンにし、トランジスタ６２０をオフにする）ため、トランジスタ６１９と６２０との間の競合が停止する。出力ノードの電圧が低下し続けるとともに、トランジスタ６２８がオフし、弱プルアップトランジスタ６３０は、トランジスタ６３０を介してＸをＶＤＤＨ電圧レベルに充電する。したがって、ノードＸの電圧の遷移の第１のフェーズは、トランジスタ６２８によって駆動される。ｉｎ３が増加し、ノードＸの電圧がＶＤＤＬに増加し始めるとともに、第２のフェーズで、トランジスタ６２８は、オフし始め、ＯＵＴ信号は、トランジスタ６３０をオンにするように低下し始め、ノードＸの電圧をＶＤＤＨに引き上げる。
【００４３】
レベルシフタを提供する回路および方法は、高速モード（例えば、ＶＤＤＨ＝ＶＤＤＬ＝０．９または１．０Ｖ）において最小のレイテンシーオーバヘッドを有するばかりでなく、低電力モード（例えば、ＶＤＤＬ＝０．８ＶおよびＶＤＤＨ＝０．９または１．０Ｖ）においても適切なシフトを行う。本回路および方法は、より高い電圧と、出力信号を生成する最終インバータの入力部との間に結合された弱プルアップトランジスタを有する従来のレベルシフタと比較して、スルーレートが改善されたより高速の電圧レベル遷移を行う。レベルシフタは、既存のレベルシフタ構造に基づいており、図６のレベルシフタの実施を可能にする追加素子が、スイッチ６２４、トランジスタ６３０、および出力段６１８のコンフィギュレーションのみであるレベルシフタを有するデバイスにおいて実施され得ることに留意されたい。
【００４４】
ここで、図８を参照すると、プログラマブルリソースを有するデバイスをプログラムするための例示的なシステムのブロック図が示されている。具体的には、コンピュータ８０２は、メモリ８０６から回路設計８０４を受け取り、不揮発性メモリ８０８に記憶されたコンフィギュレーションビットストリームを生成するように結合されている。以下でより詳細に記載されるように、回路設計は、ハードウェア記述言語（ＨＤＬ）を用いて規定される回路設計などの高水準設計であってもよい。また、コンピュータは、不揮発性メモリ８０８に記憶された、図９および図１０において以下に記載される集積回路などのプログラマブル集積回路であってもよい集積回路８１０に提供されるコンフィギュレーションビットストリームを生成するソフトウェアを実行するように構成されてもよい。
【００４５】
ここで、図９を参照すると、図１〜図６で実施されるような回路を含むプログラマブルリソースを有するデバイスのブロック図が示されている。プログラマブルリソースを有するデバイスは、プログラマブルリソースを有する特定用途向け集積回路（ＡＳＩＣ）などの任意のタイプの集積回路デバイスにおいて実施されてもよいが、他のデバイスは、専用プログラマブルロジックデバイス（ＰＬＤ）を備える。１つのタイプのＰＬＤは、複合プログラマブルロジックデバイス（ＣＰＬＤ）である。ＣＰＬＤは、相互接続スイッチマトリックスによって互いに、かつ入力／出力（Ｉ／Ｏ）リソースに接続された２つ以上の「機能ブロック」を含む。ＣＰＬＤの各機能ブロックは、プログラマブルロジックアレイ（ＰＬＡ）またはプログラマブルアレイロジック（ＰＡＬ）デバイスにおいて使用されるものと同様の２レベルのＡＮＤ／ＯＲ構造を含む。別のタイプのＰＬＤは、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）である。典型的なＦＰＧＡでは、構成可能な論理ブロック（ＣＬＢ）のアレイが、プログラマブルな入力／出力ブロック（ＩＯＢ）に結合されている。ＣＬＢおよびＩＯＢは、ある階層のプログラマブルな配線リソースによって相互接続されている。これらのＣＬＢ、ＩＯＢ、およびプログラマブルな配線リソースは、コンフィギュレーションビットストリームを、典型的にはオフチップメモリからＦＰＧＡのコンフィギュレーションメモリセルにロードすることによってカスタマイズされる。これらのタイプのプログラマブルロジックデバイス両方について、デバイスの機能性は、その目的のためにデバイスに提供されるコンフィギュレーションビットストリームのコンフィギュレーションデータビットによって制御される。コンフィギュレーションデータビットは、揮発性メモリ（例えば、ＦＰＧＡおよび一部のＣＰＬＤ内にあるようなスタティックメモリセル）、不揮発性メモリ（例えば、一部のＣＰＬＤ内にあるようなフラッシュメモリ）、またはその他のタイプのメモリセルに記憶されてもよい。
【００４６】
図９のデバイスは、マルチギガビット送受信器（ＭＧＴ）９０１、ＣＬＢ９０２、ランダムアクセスメモリブロック（ＢＲＡＭ）９０３、入力／出力ブロック（ＩＯＢ）９０４、コンフィギュレーションおよびクロックロジック（ＣＯＮＦＩＧ／ＣＬＯＣＫ）９０５、デジタル信号処理ブロック（ＤＳＰ）９０６、特殊な入力／出力ブロック（Ｉ／Ｏ）９０７（例えば、コンフィギュレーションポートおよびクロックポート）、ならびにデジタルクロックマネージャ、アナログデジタル変換器、システムモニタリングロジックなどの他のプログラマブルロジック９０８を含む多数の異なるプログラマブルなタイルを有するＦＰＧＡアーキテクチャ９００を備える。一部のＦＰＧＡは、例えば、ソフトウェアアプリケーションを実施するために使用されてもよい専用プロセッサブロック（ＰＲＯＣ）９１０も含む。
【００４７】
一部のＦＰＧＡでは、それぞれのプログラマブルなタイルは、それぞれの隣接するタイル内に、対応する相互接続素子間の標準化された接続を有するプログラマブルな相互接続素子（ＩＮＴ）９１１を含む。したがって、プログラマブルな相互接続素子それぞれは、一緒に合わさって、図示されるＦＰＧＡに対してプログラマブルな相互接続構造を実施する。図９の上部に含まれる例によって示されるように、プログラマブルな相互接続素子９１１は、同じタイル内部にプログラマブルな論理素子間接続も含む。
【００４８】
例えば、ＣＬＢ９０２は、ユーザロジックに加えて単一のプログラマブルな相互接続素子９１１を実施するようにプログラムすることができる構成可能な論理素子（ＣＬＥ）９１２を含むことができる。ＢＲＡＭ９０３は、１つまたは複数のプログラマブルな相互接続素子に加えてＢＲＡＭ論理素子（ＢＲＬ）９１３を含むことができる。ＢＲＡＭは、コンフィギュレーションロジックブロックの分散ＲＡＭとは別の専用メモリを含む。典型的には、タイルに含まれる相互接続素子の数は、タイルの高さに依存する。描かれた例では、ＢＲＡＭタイルは、５つのＣＬＢと同一の高さを有するが、他の数も用いることができる。ＤＳＰタイル９０６は、適切な数のプログラマブルな相互接続素子に加えてＤＳＰ論理素子（ＤＳＰＬ）９１４を含むことができる。ＩＯＢ９０４は、例えば、プログラマブルな相互接続素子９１１の１つのインスタンスに加えて入力／出力論理素子（ＩＯＬ）９１５の２つのインスタンスを含むことができる。デバイスの接続の位置は、その目的のためにデバイスに提供されるコンフィギュレーションビットストリームのコンフィギュレーションデータビットによって制御される。プログラマブルな相互接続によって、コンフィギュレーションビットストリームのビットに応じて、プログラマブルロジック、またはＢＲＡＭもしくはプロセッサなどの他の回路において実施される回路に様々な信号を結合するために使用される相互接続線を備える接続が可能となる。
【００４９】
描かれた例では、ダイの中心に近い列状領域は、コンフィギュレーション、クロック、および他の制御論理に使用されている。この列から延在するコンフィギュレーション／クロック分配領域９９は、ＦＰＧＡの幅を横切ってクロックおよびコンフィギュレーション信号を分配するために使用される。図９に示されるアーキテクチャを利用する一部のＦＰＧＡは、ＦＰＧＡの大部分を構成する規則的な列状構造を中断させる追加の論理ブロックを含む。追加の論理ブロックは、プログラマブルブロックおよび／または専用ロジックであってもよい。例えば、図９に示されるプロセッサブロックＰＲＯＣ９１０は、ＣＬＢおよびＢＲＡＭのいくつかの列にまたがる。
【００５０】
図９は、例示的なＦＰＧＡアーキテクチャのみを示すことが意図されていることに留意されたい。列の論理ブロックの数、列の相対的な幅、列の数および順番、列に含まれる論理ブロックのタイプ、論理ブロックの相対的なサイズ、および図９の上部に含まれる相互接続／ロジックの実施態様は、純粋に例示である。例えば、実際のＦＰＧＡでは、ユーザロジックの効率的な実施を容易にするために、ＣＬＢが現われるところにはどこでも、２つ以上の隣接するＣＬＢの列が典型的に含まれている。図９の例は、プログラマブルリソースを有する集積回路に関するが、以下でより詳細に述べる回路および方法は、任意のタイプのＡＳＩＣにおいて実施されてもよいことを理解されたい。
【００５１】
ここで、図１０を参照すると、図９のデバイスの構成可能な論理素子のブロック図が示されている。具体的には、図１０は、図９のコンフィギュレーションロジックブロック９０２の構成可能な論理素子を簡略化された形態で示す。図１０の例では、スライスＭ１００１は、４つのルックアップテーブル（ＬＵＴＭ）１００１Ａ〜１００１Ｄを含み、それぞれが６つのＬＵＴデータ入力端子Ａ１〜Ａ６、Ｂ１〜Ｂ６、Ｃ１〜Ｃ６、およびＤ１〜Ｄ６によって駆動され、それぞれが２つのＬＵＴ出力信号Ｏ５およびＯ６を提供する。ＬＵＴ１００１Ａ〜１００１ＤからのＯ６出力端子は、スライスの出力端子Ａ〜Ｄをそれぞれ駆動する。ＬＵＴのデータ入力信号は、入力マルチプレクサーを介して、プログラマブルな相互接続素子１０１１によって実施されてもよいＦＰＧＡの相互接続構造によって供給され、ＬＵＴの出力信号も、相互接続構造に供給される。また、スライスＭは、出力端子ＡＭＵＸ〜ＤＭＵＸを駆動する出力選択マルチプレクサー１０１１Ａ〜１０１１Ｄ、メモリ素子１００２Ａ〜１００２Ｄのデータ入力端子を駆動するマルチプレクサー１０１２Ａ〜１０１２Ｄ、組合せマルチプレクサー１０１６、１０１８および１０１９、バウンスマルチプレクサー回路１０２２〜１０２３、（一緒になって入力クロック経路上で任意選択的な反転を行う）インバータ１００５およびマルチプレクサー１００６によって表される回路、ならびにマルチプレクサー１０１４Ａ〜１０１４Ｄ、１０１５Ａ〜１０１５Ｄ、１０２０〜１０２１および排他的論理和ゲート１０１３Ａ〜１０１３Ｄを有するキャリーロジックを含む。図１０に示されるように、これらの素子はすべて、相互に結合されている。選択入力部が図１０に示されるマルチプレクサーに対して示されていない場合は、選択入力部は、コンフィギュレーションメモリセルによって制御される。すなわち、コンフィギュレーションメモリセルに記憶されたコンフィギュレーションビットストリームのコンフィギュレーションビットは、マルチプレクサーの選択入力部に結合され、マルチプレクサーへの正確な入力部を選択する。よく知られている、これらのコンフィギュレーションメモリセルは、明瞭にするために、図１０からならびに本明細書の他の選択された図から省略されている。
【００５２】
描かれた例では、各メモリ素子１００２Ａ〜１００２Ｄは、同期式もしくは非同期式フリップフロップまたはラッチとして機能するようにプログラムされてもよい。同期式機能と非同期式機能の選択は、Ｓｙｎｃ／Ａｓｙｎｃｈ選択回路１００３をプログラムすることによってスライス中の４つのメモリ素子すべてに対して行われる。Ｓ／Ｒ（セット／リセット）入力信号がセット機能を提供するようにメモリ素子がプログラムされる場合、ＲＥＶ入力端子は、リセット機能を提供する。Ｓ／Ｒ入力信号がリセット機能を提供するようにメモリ素子がプログラムされる場合、ＲＥＶ入力端子は、セット機能を提供する。メモリ素子１００２Ａ〜１００２Ｄは、例えば、グローバルクロックネットワーク、または相互接続構造によって提供されてもよいクロック信号ＣＫによってクロック制御される。そのようなプログラマブルメモリ素子は、ＦＰＧＡ設計の技術分野においてよく知られている。各メモリ素子１００２Ａ〜１００２Ｄは、登録された出力信号ＡＱ〜ＤＱを相互接続構造に提供する。各ＬＵＴ１００１Ａ〜１００１Ｄが２つの出力信号Ｏ５およびＯ６を提供するため、ＬＵＴは、５つの共有された入力信号（ＩＮ１〜ＩＮ５）を有する２つの５入力ＬＵＴ、または入力信号ＩＮ１〜ＩＮ６を有する１つの６入力ＬＵＴとして機能するように構成されてもよい。
【００５３】
図１０の例では、各ＬＵＴＭ１００１Ａ−１００１Ｄは、いくつかのモードのいずれで機能してもよい。ルックアップテーブルモードの場合は、各ＬＵＴは、入力マルチプレクサーを介してＦＰＧＡ相互接続構造によって供給される６つのデータ入力信号ＩＮ１〜ＩＮ６を有する。６４個のデータ値のうちの１つが、信号ＩＮ１〜ＩＮ６の値に基づいてコンフィギュレーションメモリセルからプログラム可能に選択される。ＲＡＭモードの場合は、各ＬＵＴは、単一の６４ビットＲＡＭ、またはアドレスを共有する２つの３２ビットＲＡＭとして機能する。ＲＡＭ書込みデータは、入力端子ＤＩ１を介して（ＬＵＴ１００１Ａ〜１００１Ｃに対するマルチプレクサー１０１７Ａ〜８１７Ｃを介して）６４ビットＲＡＭに、または入力端子ＤＩ１およびＤＩ２を介して２つの３２ビットＲＡＭに供給される。ＬＵＴのＲＡＭにおけるＲＡＭ書込み動作は、マルチプレクサー１００６からのクロック信号ＣＫ、およびマルチプレクサー１００７からの書込みイネーブル信号ＷＥＮによって制御され、このマルチプレクサー１００７は、クロックイネーブル信号ＣＥまたは書込みイネーブル信号ＷＥのいずれかを選択的に通すことができる。シフトレジスタモードでは、各ＬＵＴは、２つの１６ビットシフトレジスタとして、または単一の３２ビットシフトレジスタを生成するように２つの１６ビットシフトレジスタが直列に結合された状態で機能する。シフトイン信号は、入力端子ＤＩ１およびＤＩ２のうちの１つまたは両方を介して提供される。１６ビットおよび３２ビットシフトアウト信号は、ＬＵＴ出力端子を通して提供されてもよく、３２ビットシフトアウト信号も、ＬＵＴ出力端子ＭＣ３１を介してより直接的に提供されてもよい。また、ＬＵＴ８０１Ａの３２ビットシフトアウト信号ＭＣ３１は、出力選択マルチプレクサー８１１ＤおよびＣＬＥ出力端子ＤＭＵＸを介してシフトレジスタチェーンに対する汎用相互接続構造に提供されてもよい。したがって、上に述べた回路および方法は、図９および図１０のデバイスなどのデバイス、または他の適切なデバイスにおいて実施されてもよい。
【００５４】
ここで、図１１を参照すると、流れ図は、集積回路デバイスにおいて電圧レベルシフトを行う方法を示す。具体的には、ステップ１１０２で、第１の電圧レベルを有する入力信号がインバータの入力部に結合される。ステップ１１０４で、出力段の第１のトランジスタが出力段の第２のトランジスタと直列に結合される。ステップ１１０６で、第２のトランジスタのゲートがインバータの出力部に結合される。ステップ１１０８で、出力ノードが第１のトランジスタと第２のトランジスタとの間に設けられる。ステップ１１１０で、スイッチの第１のソース／ドレイン対が第１のトランジスタのゲートに結合され、スイッチの第２のソース／ドレイン対が第２のトランジスタのゲートに結合される。ステップ１１１２で、スイッチのトランジスタのゲートがインバータの入力部に結合され、スイッチのもう１つのトランジスタのゲートが第１のｐチャネルトランジスタのゲートに結合される。ステップ１１１４で、プルアップトランジスタが第２の電圧レベルを有する基準電圧と第１のトランジスタのゲートとの間に結合される。ステップ１１１６で、出力ノードが第１のトランジスタと第２のトランジスタとの間でプルアップトランジスタのゲートに結合される。ステップ１１１８で、第１のトランジスタのゲートの電圧がスイッチによって制御される。ステップ１１２０で、第２の電圧レベルを有する出力信号が出力ノードにおいて生成される。本方法の特定の素子について記載されているが、本方法のさらなる素子、または素子９０２〜９１６に関連するさらなる詳細が、図１〜図１０の本開示に従って実施されてもよいことを理解されたい。
【００５５】
したがって、集積回路デバイスにおいてレベルシフトを行うための回路およびその方法について記載されたことを認識することができる。開示された発明を組み込む多数の代替形態および均等物が存在することがわかるのを当業者は認識されるであろう。結果として、本発明は、前述の例によってではなく、以下の特許請求の範囲によってのみ限定されるべきである。
【図１】
0006705814.tif 000002
【図２】
0006705814.tif 000003
【図３】
0006705814.tif 000004
【図４】
0006705814.tif 000005
【図５】
0006705814.tif 000006
【図６】
0006705814.tif 000007
【図７】
0006705814.tif 000008
【図８】
0006705814.tif 000009
【図９】
0006705814.tif 000010
【図１０】
0006705814.tif 000011
【図１１】
0006705814.tif 000012