(57)【特許請求の範囲】
【請求項１】
プログラマブル半導体デバイスであって、
Ｎを整数とするとき、複数のＮ個の入力／出力（Ｉ／Ｏ）ブロックに配置された複数のＩ／Ｏセルを含み、各Ｉ／Ｏブロックは少なくとも２つのＩ／Ｏセルを含み、各Ｉ／Ｏセルは、各Ｉ／Ｏブロックがそれ自身のピンのセットを有するようにプログラマブル半導体デバイスのピンと関連付けられ、さらに
複数のＮ個のＩ／Ｏブロックに対応する複数のＮ個のルーティング構造を含み、各ルーティング構造は、複数のＩ／Ｏセルから信号を受けかつその信号をルーティング構造のＩ／Ｏブロック内の各Ｉ／Ｏセルにプログラム可能にルーティングするように構成され、
各Ｉ／Ｏブロックは、
そのＩ／ＯブロックとＩ／ＯブロックのＩ／Ｏピンのセットとの間に結合されたシリアライザ／デシリアライザ（ＳＥＲＤＥＳ）および
ＳＥＲＤＥＳとそのＩ／Ｏブロックとの間に結合された先入れ先出し（ＦＩＦＯ）バッファと関連し、
ＳＥＲＤＥＳは、Ｉ／Ｏブロックのピンのセット内の第１のピンのサブセットから結合されるデータ信号のシリアルストリームから埋込クロック信号を復元しかつ、その復元されたクロック信号を用いてシリアルデータストリームをパラレルデータコードワードに変換するように動作可能であり、ＦＩＦＯバッファは、ＳＥＲＤＥＳからコードワードを受けかつ、コードワードからそのＩ／Ｏブロック内のＩ／Ｏセルにビットをルーティングするように動作可能である、プログラマブル半導体デバイス。
【請求項２】
各Ｉ／Ｏブロックの第１のピンのサブセットは２つのピンを含み、その各々は、２つのピン上を搬送される差動信号を受けかつ差動信号をシリアルデータストリームに変換するように動作可能な差動信号インターフェイスに結合される、請求項１に記載のプログラマブル半導体デバイス。
【請求項３】
各Ｉ／Ｏセルは、
Ｉ／Ｏセルのルーティング構造から入力信号を受けるためのマルチプレクサと、
Ｉ／Ｏ回路とを含み、Ｉ／Ｏ回路は、
Ｉ／ＯセルのピンまたはＩ／ＯセルのＦＩＦＯから信号を受けるための入力レジスタを有し、Ｉ／Ｏ回路はＩ／Ｏセルのルーティング構造に出力を与え、さらにＩ／Ｏ回路は、
マルチプレクサから出力を受けるための出力レジスタを有し、出力レジスタは、Ｉ／ＯセルのピンまたはＩ／ＯセルのＳＥＲＤＥＳに出力を与える、請求項１に記載のプログラマブル半導体デバイス。
【請求項４】
各ＳＥＲＤＥＳは、多数のシリアルデータフォーマットの１つとしてシリアルデータストリームのデータフォーマットを認識するようにプログラム可能である、請求項１に記載のプログラマブル半導体デバイス。
【請求項５】
プログラマブル半導体デバイスであって、
複数の入力／出力（Ｉ／Ｏ）ピンと、
複数の関連Ｉ／Ｏセルを含むＩ／Ｏブロックと、
Ｉ／ＯブロックとＩ／Ｏピンとの間に結合される高速インターフェイスと、
高速インターフェイスとＩ／Ｏブロックとの間に結合される先入れ先出し（ＦＩＦＯ）バッファとを含み、
高速インターフェイスは、Ｉ／Ｏピンで受けられるデータ信号のシリアルストリームから埋込クロック信号を復元し、かつ、復元されたクロック信号を用いてシリアルデータストリームをパラレルデータストリームに変換するように動作可能であり、ＦＩＦＯバッファは、高速インターフェイスからパラレルデータストリームを受けかつ、パラレルデータストリームをＩ／Ｏブロックにルーティングするように動作可能である、プログラマブル半導体デバイス。
【請求項６】
Ｉ／Ｏピン、Ｉ／Ｏブロック、高速インターフェイスおよびＦＩＦＯバッファは、複数の動作モードを与える構成に結合され、複数の動作モードは、高速インターフェイスがＩ／Ｏピンで受けたシリアルデータストリームをパラレルデータストリームに変換しかつパラレルデータストリームをＦＩＦＯバッファにルーティングする第１のモードと、高速インターフェイスがＩ／Ｏピンで受けたシリアルデータストリームをパラレルデータストリームに変換しかつパラレルデータストリームをＩ／Ｏブロックにルーティングする第２のモードと、シリアルデータストリームが高速インターフェイスを迂回し、かつ、Ｉ／ＯピンからＦＩＦＯバッファにルーティングされる第３のモードと、シリアルデータストリームが高速インターフェイスおよびＦＩＦＯバッファを迂回し、かつ、Ｉ／ＯピンからＩ／Ｏセルにルーティングされる第４のモードとを含む、請求項５に記載のプログラマブル半導体デバイス。
【請求項７】
Ｉ／Ｏブロックは、Ｉ／Ｏブロック内のＩ／Ｏセルに結合される制御アレイを含む、請求項５に記載のプログラマブル半導体デバイス。
【請求項８】
高速インターフェイスは、多数のシリアルデータフォーマットの１つとしてシリアルデータストリームのデータフォーマットを認識するようにプログラム可能である、請求項５に記載のプログラマブル半導体デバイス。
【請求項９】
ＦＩＦＯバッファは、第１の周波数でパラレルデータストリームを高速インターフェイスから受け、かつ、第２の周波数でパラレルデータストリームをＩ／Ｏブロックに送信するように動作可能である、請求項５に記載のプログラマブル半導体デバイス。
【請求項１０】
半導体デバイスのＩ／Ｏピンからのデータをその中のＩ／Ｏセルに転送する方法であって、
デバイスの異なる動作モードに対応する複数の選択可能な信号経路を設けるステップを含み、複数の経路は、Ｉ／Ｏピンから高速インターフェイスおよびＦＩＦＯバッファを通ってＩ／Ｏセルへの第１の経路と、高速インターフェイスを迂回する、Ｉ／ＯピンからＦＩＦＯバッファを通ってＩ／Ｏセルへの第２の経路と、ＦＩＦＯバッファを迂回する、Ｉ／Ｏピンから高速インターフェイスを通ってＩ／Ｏセルへの第３の経路と、高速インターフェイスおよびＦＩＦＯバッファを迂回する、Ｉ／Ｏピンから直接にＩ／Ｏセルへの第４の信号経路とを含み、さらに
動作モードの選択に応答して、対応する信号経路を選択するステップと、
Ｉ／Ｏピンで受けたデータに応答して、選択された動作モードに従って、選択された経路に沿ってデータをＩ／Ｏセルに転送するステップとを含む、方法。
【発明の詳細な説明】
【０００１】
【発明の分野】
この発明は、一般的には、プログラマブル半導体回路に関し、より特定的には、そのような回路を通したデータの入力および出力に関する。
【０００２】
【関連技術の説明】
インシステムプログラマブル（ｉｎ−ｓｙｓｔｅｍ−ｐｒｏｇｒａｍｍａｂｌｅ）配線デバイスは、ユーザがデバイスのピン間で信号をプログラム可能にルーティングできるようにする。たとえば、ラティス・セミコンダクター・コーポレイション（Ｌａｔｔｉｃｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ  Ｃｏｒｐ．）は現在、プログラマブルスイッチング、配線およびジャンパ機能のため、不揮発性Ｅ２ＣＭＯＳ（Ｒ）インシステムプログラマブルクロスバースイッチマトリックスを有するプログラマブル配線デバイスのｉｓｐＧＤＸ（Ｒ）ファミリを製造している。ｉｓｐＧＤＸ（Ｒ）デバイスの各ピンは、グローバルルーティングプール（ＧＲＰ）と表されるルーティング構造を介して他のＩ／Ｏ回路にプログラム可能に結合する入力／出力（Ｉ／Ｏ）回路と関連付けられる。Ｉ／Ｏ回路は、関連のピン上の入力および出力信号を選択的に登録できるようにするレジスタを含む。
【０００３】
ここで図１を参照して、ｉｓｐＧＤＸ（Ｒ）デバイス用の入力／出力回路１０は、４：１マルチプレクサ（Ｍｕｘ）１２に結合し、これは、４つの異なるルーティング構造ＧＲＰ＿Ａ、ＧＲＰ＿Ｂ、ＧＲＰ＿ＣおよびＧＲＰ＿Ｄ（図示せず）からそれぞれ信号Ａ、Ｂ、ＣおよびＤを受ける。各ルーティング構造は、デバイスの所与の象限（集積回路の側）に対応する。したがって、ＧＲＰ＿Ａは象限ＡのＩ／Ｏピン２０から入力信号を受け、ＧＲＰ＿Ｂは象限ＢのＩ／Ｏピン２０から入力信号を受け、以下同様である。入力／出力回路１０はそのピン２０からその入力信号を受け、経路１９上の適切なグローバルルーティング構造にそれらを向ける。たとえば、Ｉ／Ｏ回路１０が象限Ａの中にある場合、経路１９はＧＲＰ＿Ａに結合する。
【０００４】
各ルーティング構造は、選択されたＩ／Ｏ回路１０から入力信号を受けかつ出力信号をすべてのＩ／Ｏ回路１０にプログラム可能にルーティングし得るスイッチマトリックスである。明瞭さのため、個々のルーティング構造は共にグループ化され、単一のルーティング構造１４でまとめて示される。同様のデバイスまたは回路は特許文献１（米国特許第６，０３４，５４１号）に開示され、その内容の全体がここに引用により援用されている。
【０００５】
さらに、各グローバルルーティングプールは、１方向にルーティング可能であるように構成され、インシステムプログラマブル不揮発性Ｅ２ＣＭＯＳ（Ｒ）メモリバンクによって結合される（ｆｕｓｅｄ）スイッチマトリックスを有する。揮発性Ｅ２ＣＭＯＳ（Ｒ）メモリバンク中の所与のメモリセルは、スイッチマトリックス中の“ヒューズ点”（ｆｕｓｅ  ｐｏｉｎｔ）の状態を制御する。ヒューズ点は、たとえば、ヒューズ点のメモリセルの論理状態（ハイまたはロー）に依存して、スイッチマトリックスの入力リードをスイッチマトリックスの出力リードにプログラム可能に接続するパストランジスタによって形成され得る。デバイスへのＩ／Ｏピン２０は、個々のルーティング構造が単一の象限中のＩ／Ｏ回路１０から信号を受けかつ、すべての４つの象限の中のＩ／Ｏ回路１０にこれらの信号を配布し得るように、象限（チップの４つの側）の中に配置される。したがって、各Ｍｕｘ１２ごとの４つの入力信号Ａ、Ｂ、ＣおよびＤは、それらのそれぞれの象限の中から発するように“象限”限定される。ルーティング構造１４について、各Ｉ／Ｏ回路１０は、残余のＩ／Ｏ回路１０とは独立しておりかつ別個であることに留意されたい。ルーティング構造１４は独立して各Ｉ／Ｏ回路１０に信号を配布するので、各Ｉ／Ｏ回路１０が単一のＩ／Ｏピン２０と関連することから、結果的に得られる構成を“ピンオリエンテッド”（ｐｉｎ−ｏｒｉｅｎｔｅｄ）または“ビットオリエンテッド”（ｂｉｔ−ｏｒｉｅｎｔｅｄ）と表してもよい。
【０００６】
この“ビットオリエンテッド”アーキテクチャにより、ユーザはデバイスを通して信号をプログラム可能に配線できるようになったが、ピンの数が増加するにつれ、結果的に得られるグローバルルーティングプールのヒューズの数が抑制される。しかしながら、現代の基板の密度は高まり続け、信号を配線するのに好適な数のピンを有する配線デバイスが求められている。さらに、絶えず増大する帯域およびスループットの要求がピンの数の増加を必要とする電気通信用途向けのバックプレーンで、信号をルーティングするのに配線デバイスを用いる場合もある。これらの用途のギガビットの伝送速度では、パラレルデータ伝送は、同一チャネル干渉およびＥＭＩによる影響を受ける。
【０００７】
高速パラレルデータ伝送に関連の問題を解決するため、パラレルデータを伝送前にシリアル化し、次に、低電圧差動伝送プロトコル（ＬＶＤＳ）などのシリアル伝送プロトコルを用いて受信し、その際に非シリアル化してもよい。ＬＶＤＳは、高速回路技術を用いて銅配線上での数ギガビットのデータ転送を提供し、また、ＬＶＤＳは、高速データ伝送の一般的インターフェイス規格である。データの同期、クロックのエンコードおよび低スキューなどのＬＶＤＳシステムの特徴はすべて共に作用し、より高い性能をもたらす。スキューは、ケーブルまたはＰＣＢトレースにわたってパラレルデータおよびそのクロックを送ることに関する大きな問題である。なぜなら、リンクを通る異なる伝送時間の結果、データとクロックとの位相関係を失う可能性があるからである。しかしながら、パラレルデータを埋込クロックを有する高速信号にシリアル化できることによってスキューの問題が排除される。問題が解消するのは、同一の差動ペアのワイヤ上をデータと共にクロックが伝わるからである。レシーバは、クロックおよびデータ復元回路を用いてデータストリームから埋込位相整列クロックを抽出する。しかしながら、多くのシリアルビットストリームは、連続した０または１の期間を有する。ビット遷移が存在しないため、クロック復元構成要素は、これらの期間の間にクロックを失ってしまうかまたはそれを復元することができない。その結果、ＬＶＤＳシステムは、データコーディングを導入して、好適なビット遷移レートを確実にするのが典型的である。たとえば、８Ｂ／１０Ｂ  ＬＶＤＳシステムでは、８ビットのデータを１０ビットのコードワードにエンコードして、クロック復元構成要素が埋込クロック信号を確実に復元するようにする。次に、データ復元構成要素が復元されたクロックを用いて、伝送されたコードワード中のビットを識別する。
【０００８】
パラレルおよびシリアルデータ伝送間の遷移を可能にするため、シリアルデータストリームの送信端および受信端の両者にシリアライザ／デシリアライザ（ＳＥＲＤＥＳ）ユニットを組入れる。さらに、クロックはシリアルデータストリームにエンコードされるため、非同期読出および書込クロックに対応することは、先入れ先出し（ＦＩＦＯ）バッファを必要とする、受信端向けのシステムクロックとは相容れない。
【０００９】
したがって、技術分野では、バススイッチング用途に特化されかつ、シリアライザ／デシリアライザ、クロックデータ復元およびＦＩＦＯ能力を提供して高速シリアルシグナリングを可能にする、改良されたプログラマブル配線デバイスに対する必要性が存在する。
【００１０】
【特許文献１】
米国特許第６，０３４，５４１号
【００１１】
【特許文献２】
米国特許第５，２３７，２１８号
【００１２】
【発明の概要】
この発明の１つの局面に従うと、プログラマブル半導体回路は、Ｉ／Ｏブロックに配置される複数のＩ／Ｏ回路を含む。各Ｉ／Ｏブロックは、すべてのＩ／Ｏ回路からの入力信号をそのブロックのＩ／Ｏセルにプログラム可能に結合するそれ自身のルーティング構造を有する。この態様で、所与のＩ／Ｏブロック中のＩ／Ｏ回路は、すべてのＩ／Ｏブロック中のＩ／Ｏ回路からまたはそこへＩ／Ｏ信号をプログラム可能に受信または送信し得る。ルーティング構造は、インシステムプログラマブルであり得るメモリデバイス中に記憶される構成データに従って、Ｉ／Ｏ信号をプログラム可能にルーティングする。各Ｉ／Ｏ回路は、各Ｉ／ＯブロックがそのＩ／Ｏセルに対応するピンのセットを有するように、ピンと関連する。各Ｉ／Ｏブロックは、そのＩ／ＯブロックとＩ／ＯブロックのＩ／Ｏピンのセットとの間に結合されるシリアライザ／デシリアライザ（ＳＥＲＤＥＳ）と関連する。さらに、先入れ先出し（ＦＩＦＯ）バッファは、ＳＥＲＤＥＳとそのＩ／Ｏブロックとの間に結合する。ＳＥＲＤＥＳは、Ｉ／Ｏブロックのピンのセット内の第１のピンのサブセットから結合されるデータ信号のシリアルストリームから埋込クロック信号を復元しかつ、復元されたクロック信号を用いてシリアルデータストリームをパラレルデータストリームに変換するように動作可能である。ＦＩＦＯバッファは、ＳＥＲＤＥＳからパラレルデータストリームを受けかつそのＩ／Ｏブロック内のＩ／Ｏ回路にパラレルデータストリームをルーティングするように動作可能である。
【００１３】
この発明は、添付の図面とともに、以下の詳細な説明を考察すると、より十分に理解されるであろう。
【００１４】
異なる図面中の同じ参照番号の使用は、類似のまたは同一の項目を示す。
【００１５】
【詳細な説明】
ここで図２および図３を参照して、“ブロックオリエンテッド”アーキテクチャ３０を有するプログラマブル配線デバイス２５が図示される。先行技術の“ビットオリエンテッド”アーキテクチャと対照的に、Ｉ／Ｏ回路１６（図３）は、複数Ｘ個のＩ／Ｏ回路１６を有する各ブロック３２がそれ自身のルーティング構造１５（図３）と関連するようにＩ／Ｏブロック３２に配置される。一般的に、Ｘは任意であるので、Ｉ／Ｏブロック３２にいかなる数のＩ／Ｏ回路１６を割当ててもよい。しかしながら、バススイッチング用途は典型的に８個（１バイト）または１６個（２バイト）のグループでバイナリ信号をルーティングするので、Ｉ／Ｏブロック３２あたり１６個のＩ／Ｏ回路を割当てることが特に好都合である。しかしながら、たとえば４個または８個など、Ｉ／Ｏブロックあたり他の数のＩ／Ｏ回路を用いてもよいことを認められたい。各Ｉ／Ｏ回路１６をＩ／Ｏセル３１内に含んでもよく、Ｉ／Ｏセルは、Ｉ／Ｏ回路１６のためのデータ信号入力を選択するために４：１ＭＵＸ１２も含む。図２では、明瞭さのため、ルーティング構造１５を、単一のルーティング構造１４としてまとめて表す。再び図３を参照して、各Ｉ／Ｏ回路１６はそのピン２０から入力信号を受け得る。これらの入力信号はデータ信号を含み得、それらは最終的に他のピン２０にルーティングされる。これに代えて、これらの入力信号は、たとえば、Ｉ／Ｏ回路１６内のマルチプレクサ１２またはレジスタを制御するための制御信号を含んでもよい。
【００１６】
さらに本明細書中に記載のように、配線デバイス２５は、プログラマブルメモリ（図示せず）との関連によりプログラマブルである。プログラマブルメモリは典型的に不揮発性であるが、所望により揮発性メモリとして実現してもよい。ユーザは、プログラマブルメモリ内のメモリ素子を所望の論理レベルにプログラムする。次に、これらのメモリ素子は、配線デバイス２５内のヒューズ点、マルチプレクサおよびスイッチなどのプログラマブル素子を制御して、所望の動作モードを与える。プログラマブルメモリは好ましくは、インシステムプログラマブルであるため、ユーザは配線デバイスの動作の間にプログラミングを変更し得る。
【００１７】
各ブロック３２ごとのピン２０のサブセット、たとえばピン２０ａおよび２０ｂは、低電圧差動伝送（ＬＶＤＳ）信号などのシリアルデータ信号を受信し得る。実現され得るその他の差動伝送規格は、ＬＶＰＥＣＬ、ＮＬＶＤＳおよびＢＬＶＤＳを含む。シリアルインターフェイスユニット１６０はピン２０ａおよび２０ｂを結合して、差動信号をデコードしかつデコードされたデータを非シリアル化する。図示された実施例では、シリアルインターフェイスユニット１６０は２つのＩ／Ｏブロック３２に跨る。なぜなら、各々の跨ったＩ／Ｏブロックの対３２はそのシリアルインターフェイスユニット１６０とリソースを共有して構成要素の数を削減するからである。これに代えて、各シリアルインターフェイスユニット１６０は２つよりも多くのＩ／Ｏブロック３２に跨ってもまたはＩ／Ｏブロック３２ただ１つのみに跨ってもよい。図２に示された実施例は２つのＩ／Ｏブロック３２に跨るシリアルインターフェイスユニット１６０を有するため、各シリアルインターフェイスユニット１６０内に、各Ｉ／Ｏブロック３２ごとに１つずつの、２つのシリアライザ／デシリアライザ（ＳＥＲＤＥＳ）ユニット１６５（図３）が存在する。外部デバイスからのシリアルデータをＩ／Ｏブロック３２に結合するのにピン２０ａおよび２０ｂを用いる場合、ピン２０ａおよび２０ｂに結合するＳＥＲＤＥＳユニット１６５はレシーバとして働き、受信したシリアルデータを非シリアル化する。さらに、クロックがシリアルデータストリームにエンコードされ得るため、シリアルインターフェイスユニット１６０内のクロックデータ復元（ＣＤＲ）ユニット（図９）がシリアルデータストリームからシリアルデータクロックを復元し、次にこれを用いてシリアルデータストリーム中のビットを識別するので、それらを非シリアル化し得る。８Ｂ／１０Ｂ  ＬＶＤＳプロトコルに従ってシリアルデータストリームをエンコードすれば、非シリアル化された（パラレル）データは１０ビットコードワードの形態にあるであろう。シリアルデータストリームが１ＧＨｚのビットレートを有するならば、１０ビットコードワードのボーレートは１００ＭＨｚであろう。配線デバイス２５への内部クロック信号はこのボーレートと一致することもあるが、それと位相整列されない。したがって、シリアルインターフェイス１６０はコードワードをＦＩＦＯ１７０に書込む。次に、ブロック３２内のＩ／Ｏ回路１６のサブセットにより、内部クロック信号に従ってＦＩＦＯ１７０からコードワードを読出すことができる。こうして、ＦＩＦＯ１７０は、パラレル化されたコードワードのボーレートと内部クロックとの間の非同時性に対処する。Ｉ／Ｏ回路１６のサブセットはコードワードの長さによって決まる。たとえば、コードワードが１０ビット幅であれば、１０個のＩ／Ｏ回路１６がコードワードを記憶する。シリアルインターフェイスユニット１６０が、そのブロック３２からシリアル化データを送信するトランスミッタとして働いている場合、シリアルインターフェイスユニット１６０内のＰＬＬユニット（図９の素子１９０）は、内部クロック信号からシリアルデータクロックを合成する。このシリアルデータクロックは内部クロック信号���同相であるため、ＦＩＦＯバッファは、ブロック３２中のＩ／Ｏ回路１６からそのシリアルインターフェイスユニット１６０への書込データを調節する必要はない。シリアルインターフェイスユニット１６０は、シリアル化データを差動信号インターフェイス（図９の素子１９２）に送信し、差動信号インターフェイスは、シリアル化データストリームを、たとえばピン２０ｃおよび２０ｄなどのピン２０のサブセットに結合される差動信号に変換する。なお、ピンは、差動信号インターフェイスに結合して差動信号を受けるものである。
【００１８】
シリアルインターフェイスユニット１６０がそのブロック３２へおよびそれから高速シリアルデータ信号を結合するときの動作モード（シリアル動作モードとも表し得る）は、ブロック３２内のＩ／Ｏ回路１６が、シリアルインターフェイスユニット１６０に関わらずに、それらのそれぞれのピン２０と直接により低速のパラレルデータを通信する際に用いるモード（パラレルモードと表し得る）とは異なることに留意されたい。パラレルモードでは、各Ｉ／Ｏ回路１６は、そのそれぞれのピン２０からの入力信号を記憶し得る。同様に、パラレルモードでは、各Ｉ／Ｏ回路１６は、そのそれぞれのピン２０に出力信号を送信し得る。しかしながら、シリアルモードでは、Ｉ／Ｏ回路１６は、そのそれぞれのピン２０からではなく、代わりに、ピン２０ａおよび２０ｂを用いて受信するビットを記憶し得る。同様に、シリアルインターフェイス１６０がそのブロックのＩ／Ｏ回路１６からのシリアル化差動データをそのブロックのピン２０へ送信している場合、所与のＩ／Ｏ回路１６は、出力信号をそのそれぞれのピンに送信しない。代わりに、ピン２０ｃおよび２０ｄで、出力された差動信号を受ける。
【００１９】
Ｉ／Ｏ回路１６がどのように入力信号を受信したか（パラレルモード動作ではそのピンから直接にまたはシリアルモード動作ではそのシリアルインターフェイス１６０から）に拘らず、受信された信号は次に、経路１９上にブロックのルーティング構造１５にルーティングされ得る。さらに、留意すべきなのは、各々のブロックのルーティング構造１５は、経路２１上ですべての残余のブロック３２からピン２０上で受信される入力信号を受け得ることである。図示の目的のため、経路１９および２１は別個に示されるが、実際のデバイスの中では組合せてもよい。図２に図示された実施例では、ブロック３２が８個存在し、その各々が、１６本のピン２０のそのそれぞれのセットから入力信号を受けることができる。そのような実施例について、各ブロックのルーティング構造１５で受信し得る入力信号の総数は、８＊１６＝１２８である。
【００２０】
各Ｉ／Ｏブロック３２は、ルーティング構造１５内に含まれる２つの独立したルーティング構造、すなわち、データ信号をプログラム可能にルーティングするためのデータ経路ルーティング構造３４と、積項（ｐｒｏｄｕｃｔ−ｔｅｒｍ）制御信号をＩ／Ｏブロック３２に与える制御アレイ５６に制御信号をプログラム可能に結合するための第２の制御経路ルーティング構造３６とから、信号を受信し得ることに留意されたい。データ経路ルーティング構造３４および制御経路ルーティング構造３６は独立したものとして図示されるが、そのような独立性は概念上のものでしかなく、データ経路ルーティング構造３４および制御経路ルーティング構造３６を単一のグローバルルーティング構造に組合せてもよいことを認められたい。たとえば、単一のスイッチマトリックスがデータおよび制御信号の両者に対応してもよい。しかしながら、スイッチマトリックスまたはグローバルルーティング構造内のヒューズパターンは、ルーティングされているのがデータ信号なのかまたは制御信号なのかによって異なることがある。
【００２１】
本明細書中にさらに説明されるように、各Ｉ／Ｏブロック３２に関連する制御アレイ５６は積項制御信号のセットを発生する。積項信号の一方のセットは、４：１ＭＵＸ１２にＭＵＸ選択信号５４を与える。各Ｉ／Ｏ回路１６は、図７について述べられる、入力レジスタ９０、出力レジスタ９２および出力イネーブルレジスタ９４を含み得る。制御アレイ５６からの積項信号の他方のセットは、これらのレジスタに、クロックおよびクロックイネーブル（ＣＥ）信号７０、セット／リセット信号６８ならびに出力イネーブル（ＯＥ）信号６６を与える。
【００２２】
Ｉ／Ｏ回路１６をＩ／Ｏブロック３２の中に配置することにより、各々のデータ経路ルーティング構造３４および制御経路ルーティング構造３６が２レベル編成に配置されるようになる。以下の説明はこの２レベル編成を要約し、本願と同時出願される、「プログラマブル配線回路のためのマルチレベルルーティング構造」（“Ｍｕｌｔｉ−Ｌｅｖｅｌ  Ｒｏｕｔｉｎｇ  Ｓｔｒｕｃｔｕｒｅ  ｆｏｒ  ａ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｃｉｒｃｕｉｔ”）と題される、同時係属中の出願により十分に記載される。図４に示されるように、データ経路ルーティング構造３４は、第１のレベルのデータ経路ルーティング構造４０と第２のレベルのデータ経路ルーティング構造４２とを含み得る。第１のレベルのデータ経路ルーティング構造４０は、デバイスのすべてのＩ／Ｏブロック３２に対応するピン２０から発し得る入力信号４１を受ける。各ピン２０は入力／出力回路１６と関連する。したがって、Ｉ／Ｏ回路１６が２５６個存在すれば、第１のレベルのデータ経路ルーティング構造４０は２５６個の入力信号４１を受け得る。ヒューズの数を減らすため、不揮発性メモリバンク（図示せず）によって結合され得る第１のレベルのデータ経路ルーティング構造のスイッチマトリックス（図示せず）を部分的にしか搭載せず（ｐａｒｔｉａｌｌｙ  ｐｏｐｕｌａｔｅｄ）、それにより、バス４３上を搬送される各出力信号ごとにＭ：１ＭＵＸを形成する。なお、Ｍは、関連のＩ／Ｏブロック３２内のＩ／Ｏ回路１６の数に対する、第１のレベルのデータ経路ルーティング構造４０に供給する入力信号４１の総数の比に対応する。したがって、Ｉ／Ｏブロック３２が各々、固定数ＸのＩ／Ｏセルを有するとすると、第１のレベルのデータ経路ルーティング構造４０に供給する入力信号４１の総数は（Ｎ＊Ｘ）となる。なお、ＮはＩ／Ｏブロック３２の総数である。このときＭは（Ｎ＊Ｘ）／Ｘと等しく、これはＩ／Ｏブロックの総数であるＮと等しい。したがって、第１のレベルのデータ経路ルーティング構造４０のバス４３上に各出力ごとに形成されるＭ：１ＭＵＸは、デバイス内のＩ／Ｏブロック３２の数に依存する。Ｉ／Ｏブロック３２が１６個存在する場合、第１のレベルのデータ経路ルーティング構造４０内のヒューズパターンは、それが、バス４３上を搬送される各出力信号ごとに１６：１ＭＵＸを形成するようなものである。同様に、各Ｉ／Ｏ回路１６（図３）に結合される４：１ＭＵＸ１２（図３）は入力データ信号を４つ受けるので、１６個のＩ／Ｏ回路を有するＩ／Ｏブロック３２は、入力データ信号を６４個必要とする。したがって、そのような実施例では、第１のレベルのデータ経路ルーティング構造４０は６４ビット幅の出力バス４３を有する。結果的に得られる、第１のレベルのデータ経路ルーティング構造４０のこの実施例のスイッチマトリックス（図示せず）は４方向にルーティングされるため、各入力信号は、出力に達するのに取り得る異なる経路を４つ有する。すなわち、第１のレベルのデータ経路ルーティング構造４０への入力リードは、それを出力リードに接続する４つのヒューズ点を有し、異なる経路を４つ設け得る。そのようなスイッチマトリックスは、本願と��時出願される、同時係属中の「プログラマブル配線回路のためのマルチレベルルーティング構造」（“Ｍｕｌｔｉ−Ｌｅｖｅｌ  Ｒｏｕｔｉｎｇ  Ｓｔｒｕｃｔｕｒｅ  ｆｏｒ  ａ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｃｉｒｃｕｉｔ”）により十分に論じられる。
【００２３】
第１のレベルのデータ経路ルーティング構造４０と関連のＩ／Ｏブロック３２内の所与のいずれの４：１Ｍｕｘ１２への信号ルーティングにおいても増大した柔軟性を許すため、第２のレベルのデータ経路ルーティング構造４２は、第１のレベルのデータ経路ルーティング構造４０をＩ／Ｏブロック３２に結合する。第２のレベルのデータ経路ルーティング構造４２のためのスイッチマトリックス（図示せず）は完全に搭載されて、この増大した柔軟性をもたらし得る。このスイッチマトリックスは、不揮発性インシステムプログラマブルメモリバンクによって結合され得る。概念上、第２のレベルのデータ経路ルーティング構造４２を、いずれの所与のＩ／Ｏブロック３２にも割当てられるＩ／Ｏ回路１６の数Ｘに対応するＸ個の信号のグループに編成してもよい。Ｘ＝１６のアーキテクチャについて、結果的に得られる第２のレベルのデータ経路ルーティング構造４２は４つのブロック４４に編成され、各々が、第１のレベルのデータ経路ルーティング構造４０からのバス４３上の１６個の信号の連続したグループに対応する。各ブロック４４は、１６個の信号を与えて４つの４：１ＭＵＸ１２を駆動する。したがって、各ブロック４４は１６個の信号を受け、これらの信号を１６個の出力信号にプログラム可能にルーティングする。受信された１６個の信号のうちどの特定の１つもルーティングされて１６個の出力信号のうちどの特定の１つにもなり得るため、ブロック４４は、１６個の出力信号の各々ごとに１６：１Ｍｕｘを形成する。これらの１６個の出力信号は、特定のデータ経路ルーティング構造３４と関連のＩ／Ｏブロック３２内の４つの４：１マルチプレクサ１２の入力信号になる。（第１のレベルのデータ経路ルーティング構造４０によって与えられる）各ブロック４４ごとの１６個の入力信号は、２５６個の入力信号のうちどの１６個からも導出されることに留意されたい。これらの１６個の信号を受ける第２のレベルのデータ経路ルーティング構造４２中のブロック４４は完全搭載されたスイッチマトリックスを有するため、いずれの所与の４：１Ｍｕｘ１２に対する４つの入力も、２５６個の入力信号のうちいずれからも入来することができる。このルーティングは、図１について述べられた先行技術のアーキテクチャよりも有利である。４：１Ｍｕｘ１２（図３）への入力はもはや“象限”制限されず、各々の４：１Ｍｕｘ１２への４つの入力は、デバイスの１つの側、２つの側、３つの側またはすべての４つの側から入来することができる。先行技術の象限制限を取り除くことに加えて、データ経路ルーティング構造３４の２レベル編成は、ヒューズ数の大幅な低減をもたらす。
【００２４】
制御経路ルーティング構造３６について、同様の２レベル編成を用いてもよい。したがって、制御経路ルーティング構造３６は、第１のレベルの制御経路ルーティング構造５０と、第２のレベルの制御経路ルーティング構造５２とを含み得る。図５に示されるように、２５６個のＩ／Ｏ回路１６を有するデバイスについて、第１のレベルの制御経路ルーティング構造５０は、２５６個の入力信号５３を受け得る。スイッチマトリックス（図示せず）は、第１のレベルのデータ経路ルーティング構造４０について述べられたように、第１のレベルの制御経路ルーティング構造５０の各出力がＩ／Ｏブロック３２の総数に対応するＭ：１Ｍｕｘを形成するように結合される。図５に図示される実施例では、Ｉ／Ｏブロック３２（図３）の数は１６に等しいため、第１のレベルの制御経路ルーティング構造５０は、その６４個の出力信号の各々ごとに１６：１Ｍｕｘを形成する。したがって、第１のレベルの制御経路ルーティング構造５０は、第１のレベルのデータ経路ルーティング構造４０に用いたのと同様のヒューズパターンを有し得る。
【００２５】
しかしながら、第２のレベルのデータ経路ルーティング構造４２のある実施例とは異なり、結果として得られるデバイスの使用についてある仮定がなされる場合、第２のレベルの制御経路ルーティング構造５２が完全搭載されたスイッチマトリックスを有する必要性は存在しない。たとえば、各Ｉ／Ｏブロック３２ごとに４：１マルチプレクサ１２のセットを制御する必要のあるＭｕｘ選択信号５４（図３）を考察する。各Ｍｕｘ１２は２つのＭｕｘ選択信号５４を必要とするため、完全に独立したＭｕｘ制御構造は３２個の独立したＭｕｘ選択信号５４を必要とする。しかしながら、バススイッチングなどの多くの用途において、この独立レベルは無駄である。なぜなら、所与のバス内の信号は独立してスイッチされるのではなく、したがって、独立したＭｕｘ選択信号を必要としないからである。制御信号をグルーピングすることにより、第２のレベルの制御経路ルーティング構造５２は、３２個の出力信号の各々ごとに４：１Ｍｕｘを形成するように結合された、部分搭載されたスイッチマトリックス（図示せず）を有することが可能になる。出力信号の数は任意であり、ヒューズの数と柔軟性との間のトレードオフの結果からもたらされることを認められたい。これらの同様の設計上考慮すべきことにより、第２のレベルの制御経路ルーティング構造５２が有するスイッチマトリックスが完全搭載されるのかまたは部分搭載されるのかが制御される。２レベルデータ経路ルーティング構造および制御経路ルーティング構造のさらなる詳細および構造は、本願と同時出願される、同時係属中の米国出願「プログラマブル配線回路のためのマルチレベルグローバルルーティングプール構造」（“Ｍｕｌｔｉ−Ｌｅｖｅｌ  Ｇｌｏｂａｌ  Ｒｏｕｔｉｎｇ  Ｐｏｏｌ  Ｓｔｒｕｃｔｕｒｅ  ｆｏｒ  ａ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｃｉｒｃｕｉｔ”）に記載されている。
【００２６】
制御経路ルーティング構造３６によって生じた制御信号の独立した制御機能を生成するため、Ｉ／Ｏブロック３２（図３）内の制御アレイ５６は、図６に図示されるように、積項６２を形成するＡＮＤアレイ６０を有する。制御アレイは、（図５に図示される）第２のレベルの制御経路ルーティング構造５２から出力の真と補数との両者を受ける。したがって、第２のレベルの制御経路ルーティング構造５２からの３２個の出力信号を有する実施例について、ＡＮＤアレイ６０は６４個の信号を受ける。ＡＮＤアレイ６０から導出される積項６２の数は、第２のレベルの制御経路ルーティング構造５２について先程述べたように、ヒューズの数と柔軟性との間で望まれるバランスに依存する。言い換えると、ＡＮＤアレイ６０からの積項出力の数を増やすことは、ユーザが利用できる制御オプションの柔軟性を高めることになる。しかしながら、積項出力の数を増やすことは、必要なヒューズの数を増やすことになり、コストが増大する。図３に示されるように、望まれる制御信号は、４：１マルチプレクサ１２のためのＭｕｘ選択５４、出力イネーブル信号（ＯＥ）６６、セット／リセット６８、クロックおよびクロックイネーブル（ＣＥ）信号７０を含む。図６に図示される実施例では、ＡＮＤアレイ６０は２０個の制御信号を発生する。すなわち、８個の積項Ｍｕｘ選択５４、４個の積項クロック／クロックイネーブル信号７０、４個の積項セット／リセット６８および４個の積項ＯＥ信号６６である。ＡＮＤアレイ６０が発生する積項制御信号の各タイプの実際の数は任意でありかつ、ヒューズの数と制御機能の柔軟性との間のトレードオフによって駆動されることを認められたい。ＡＮＤアレイ６０が提供する制御機能のさらなる詳細は、本願と同時出願される、同時係属中の米国出願「プログラマブル配線回路のためのＩ／Ｏブロック」（“Ｉ／Ｏ  Ｂｌｏｃｋ  ｆｏｒ  ａ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｃｉｒｃｕｉｔ”）に記載されている。Ｉ／Ｏセル３１中の各々の４：１Ｍｕｘ１２（図３）は２つのＭｕｘ選択信号を必要とするので、図３のＩ／Ｏブロック３２内の１６個すべてのマルチプレクサ１２の完全に独立した制御は、３２個のＭｕｘ選択信号を必要とする。しかしながら、図５の第２のレベルの制御経路ルーティング構造５２について述べられたように、バススイッチング用途を仮定する場合、制御信号はＩ／Ｏブロック３２内のＩ／Ｏセル３１間で共有され得る。したがって、図６に図示される実施例について、積項Ｍｕｘ選択信号５４は、各々、２つの積項信号のセット５４ａ−５４ｄに配置され、制御信号を共有する結果となる。たとえば、積項５４ａは、Ｉ／Ｏブロック３２（図３）内の４：１マルチプレクサ１２のうち４つを制御し、セット５４ｂは別の４つを制御し得るなどである。そのような構成では、共通のＭｕｘ選択信号５４を有する４つのマルチプレクサ１２は、独立してスイッチすることができない。図３に戻って、Ｉ／Ｏブロック３２内の各セル３１ごとの各々の４：１Ｍｕｘ１２は、Ｉ／Ｏブロック３２内のＭｕｘ１２ごとに独立したデータ信号経路上に４つのデータ信号を受ける。しかしながら、セル３１内の各々の４：１Ｍｕｘ１２は、その制御信号（Ｍｕｘ選択信号５４）についてそのような独立性を有していないことがある。代わりに、Ｉ／Ｏブロック３２内の各セル３１ごとの各々の４：１Ｍｕｘ１２は、Ｉ／Ｏブロック３２内の複数のマルチプレクサ１２の間で共有され得る制御信号経路上に２つのＭｕｘ選択信号５４を受ける。図６について述べられる実施例について、Ｍｕｘ選択信号５４を共有するこの複数のマルチプレクサ１２は４つである。
【００２７】
ここで図７を参照して、図３のＩ／Ｏ回路１６の実施例の入力レジスタ９０および出力レジスタ９２は離され、これにより、真の２方向入力および出力能力が与えられる。そのような２方向の能力は有利ではあるが、Ｉ／Ｏ回路１６中の離れた入力および出力レジスタなしでこの発明のブロックオリエンテッドアーキテクチャ３０を実現してもよい。ピン２０は、パラレルまたはシリアルの動作モードに依存して、プログラマブル配線デバイス２５（図２）へおよびそれからデータを異なって送信および受信する。ピン２０がどのようにプログラマブル配線デバイス２５から信号を受信するかをまず説明する。Ｉ／Ｏセル３１において、出力レジスタバイパスＭｕｘ９５は、出力レジスタ９２の登録済み出力Ｑまたは４：１Ｍｕｘ１２の未登録出力のいずれかを選択する。この態様で、出力バッファ１８は、出力レジスタバイパスＭｕｘ９５から登録済みまたは未登録出力信号のいずれかを受け得る。さらに、出力レジスタバイパスＭｕｘ９５は、いずれかの出力信号に対して極性制御を行なう。接地のはね返りを防止するため、出力レジスタバイパスＭｕｘ９５の出力は、プログラマブル遅延素子（図示せず）を通して出力バッファ１８に結合し得る。パラレル動作モードでは、出力バッファ１８は、先に述べた登録または未登録信号のいずれかである出力信号をそのピン２０に与える。ＯＥレジスタ９４からのＱ出力は、以下の態様で出力バッファ１８を制御する。出力レジスタ９４に入力されるデータは、積項ＯＥ信号６６と４つのグローバルＯＥ信号１５０との間を選択するＯＥ  Ｍｕｘ１４６の出力を受ける。グローバルＯＥ信号１５０は、ルーティング構造１４とは独立した伝送経路（図示せず）上に専用ＯＥピンからルーティングする。ＯＥ  Ｍｕｘ１４５は、ＶＣＣまたは接地（ＧＮＤ）のいずれかからも選択し得る。ＯＥ  Ｍｕｘ１４５からのＱ出力はバイパスマルチプレクサ１５５に結合し、これは、ＯＥ  Ｍｕｘ１４６のＱ出力または未登録出力のいずれかを選択し得る。したがって、バイパスＭｕｘ１５５は、出力バッファ１８の登録済みまたは未登録のいずれかの制御を行なう。
【００２８】
シリアル動作モードでは、出力レジスタバイパスＭｕｘ９５は、（出力レジスタ９２のＱ出力または４：１Ｍｕｘ１２の未登録出力のいずれかから選択された）出力信号をそのＩ／ＯブロックのＳＥＲＤＥＳユニット１６５に与え得る。ＳＥＲＤＥＳユニット１６５がこの信号をそのＩ／Ｏブロック３２から受けると、ＳＥＲＤＥＳユニット１６５は、ピン２０へのシリアルデータのシリアライザおよびトランスミッタとして機能する。たとえば、８Ｂ／１０Ｂ  ＬＶＤＳ動作のためにＳＥＲＤＥＳユニット１６５を構成する場合、Ｉ／Ｏブロック３２内の８個または１０個の出力レジスタバイパスＭｕｘ９５から来る８個または１０個の信号は、ＣＭＯＳ／ＴＴＬバスとして実現されかつ、バス上のＩ／ＯブロックのＳＥＲＤＥＳユニット１６５に結合され得るパラレルバス（図示せず）によって受けられる。したがって、ＳＥＲＤＥＳユニット１６５は８ビットまたは１０ビット幅（比較的低速）のデータ信号を受け、その信号を（比較的高速の）シリアルデータストリームに変換する。次に、ＳＥＲＤＥＳユニット１６５は、差動信号インターフェイス１９２（図９）を通して、シリアル化されたデータをピン２０ｃおよび２０ｄに送信する。
【００２９】
ピン２０からプログラマブル配線デバイス２５へどのように信号が伝送されるかのプロセスをここで扱う。パラレル動作モードで、入力レジスタ９０は、以下のようにピン２０から入力信号を受ける。ピン２０で受ける入力信号は、プログラマブル遅延素子１１４を介して入力選択Ｍｕｘ１７２に結合する。Ｍｕｘ１７２は、プログラマブル遅延素子１１４の出力と信号１７１との間を選択する。信号１７１は、グローバルクロック信号１０５（図８）またはＦＩＦＯバッファ１７０のパラレルデータ出力からのビットのいずれかであり得る。ピン２０から入力信号を受けるため、入力選択Ｍｕｘ１７２は、プログラマブル遅延素子１１４の出力を選択するように構成される。これに対して、シリアル動作モードでは、入力選択Ｍｕｘ１７２は、入力レジスタ９０が、シリアルインターフェイスユニット１６０がデコードする受信シリアルデータのビットを記憶し得るように、ＦＩＦＯバッファ１７０の出力を選択する。
【００３０】
どの動作モードを用いて入力レジスタ９０にデータを書込むかに拘らず、結果的に得られる入力レジスタ９０からのＱ信号は、フィードバックまたは入力Ｍｕｘ１０１を通してそのＩ／Ｏブロックのルーティング構造１５に（具体的には、第１のレベルのデータ経路ルーティング構造４０に）結合する。フィードバックＭｕｘ１０１は、４：１Ｍｕｘ１２からの出力（これにより、ルーティング構造１５への高速フィードバック経路を設ける）と入力レジスタ９０のＱ出力との間を選択する。さらに、フィードバックＭｕｘ１０１は、プログラマブル遅延素子１１４を通してピン２０から結合される未登録入力または出力レジスタ９２からの登録済みＱ出力を選択し得る。
【００３１】
各々の４：１Ｍｕｘ１２は、フィードバックＭｕｘ１０１が設ける高速フィードバック経路を有し得るため、さらなるインクリメンタルなルーティング構造１５遅延を伴なって縦列接続するマルチプレクサを通して、１６：１、６４：１またはさらに幅広のものなどの幅広のマルチプレクサを形成し得る。たとえば、１６：１Ｍｕｘ（図示せず）は、５つの４：１マルチプレクサ１２の出力から構成可能であり、その結果、ルーティング構造遅延のさらなる１つのレベルを生じる。同様に、６４：１Ｍｕｘ（図示せず）は、２１個の４：１マルチプレクサ１２から構成可能であり、その結果、ルーティング構造遅延のさらなる２つのレベルを生じる。結果的に得られるマルチプレクサの幅は、４：１マルチプレクサ１２の供給および許容可能な遅延のレベルによってしか限定されない。より幅広のマルチプレクサを形成することに加えて、高速フィードバック経路を用いて、より大きなルックアップテーブル（ＬＵＴ）を形成してもよい。各々の４：１マルチプレクサ１２は、その４つのデータ入力を用いて、２入力ＬＵＴとして構成してもよい。２つの積項マルチプレクサ選択信号５４の状態に従って適切な入力を“ルックアップ”し得るように、４つのデータ入力は公知の値でなければならない。高速フィードバック経路を用いて、４つの２入力ＬＵＴ（４：１マルチプレクサ１２）を組合せて４入力ＬＵＴ（図示せず）を形成し、その結果、ルーティング構造遅延のさらなる１つのレベルを生じてもよい。
【００３２】
Ｉ／Ｏセル３１内の各レジスタ９０、９２および９４ならびに４：１Ｍｕｘ１２は、制御アレイ５６から積項制御信号を受ける。出力イネーブルレジスタ９４への積項ＯＥ信号７０の結合は上述されたとおりである。積項Ｍｕｘ選択信号５４は、極性選択マルチプレクサ１１７を通して４：１ＭＵＸ１２に結合し得る。図８を参照して、残余の積項レジスタ制御信号の結合を説明する。ここで図８を参照して、制御アレイ５６からの積項制御信号６２（図６）の、Ｉ／Ｏセルのレジスタへの結合が図示される。本明細書中にさらに述べられるように、積項クロックおよびクロックイネーブル（ＣＥ）信号７０に加えて、グローバルクロック信号１０５もレジスタに配布される。クロックスキューを制御するためおよびクロック合成を可能にするため、各グローバルクロック信号１０５は位相ロックループ（ＰＬＬ）１００（図２）と関連付けられる。したがって、４つのグローバルクロック信号１０５が存在すれば、４つのＰＬＬ１００が存在する。ＰＬＬ１００に関するさらなる詳細は、本願と同時出願される、同時係属中の米国出願「位相ロックループを有するプログラマブル配線回路」（“Ｐｒｏｇｒａｍｍａｂｌｅ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｃｉｒｃｕｉｔ  Ｗｉｔｈ  Ａ  Ｐｈａｓｅ−Ｌｏｃｋｅｄ  Ｌｏｏｐ”）に記載されている。グローバルクロック信号１０５は、ルーティング構造１４とは独立して、クロックツリー（図示せず）を通してＩ／Ｏ回路１６に配布される。各レジスタ９０、９２および９４ごとのクロックマルチプレクサ１２０は、グローバルクロック信号１０５と積項クロックおよびクロックイネーブル（ＣＥ）信号７０との間を選択して、極性マルチプレクサ１１０に入力を与える。これは次に、それぞれのクロックおよびＣＥ入力をレジスタ９０、９２および９４に与える。ある実施例では、クロックＭＵＸ１２０は、ＯＥレジスタ９４および出力レジスタ９２の両者のクロック入力に共通であり、ハードウェアの必要数を削減し得る。同様に、クロックＭＵＸ１２０は、ＯＥレジスタ９４および出力レジスタ９２の両者のＣＥ入力に共通であり得る。しかしながら、破線１３０が示すように、極性マルチプレクサ１１０は、クロックＭＵＸ１２０での共通の発生源に拘らず、レジスタ９２および９４に対してクロック入力の個々の制御を行なう。
【００３３】
レジスタ９０、９２および９４に対するセットおよびリセット入力信号は、セット／リセットマルチプレクサ１４０で積項セット／リセット信号６８から選択される。極性マルチプレクサ１１５は、セット／リセットマルチプレクサ１４０が選択する出力信号に対して極性制御を行なう。パワーアップリセット（ＰＵＲ）またはグローバルリセット制御機能を可能にするため、ＰＵＲ／グローバルリセット信号１４５は、ＯＲゲート１４２で極性マルチプレクサ１１５の出力の論理和がとられる。クロックおよびクロックイネーブル信号について説明されたように、出力レジスタ９２および出力イネーブルレジスタ９４は、共通のセット／リセットマルチプレクサ１４０の出力を共有し得る。
【００３４】
プログラマブル配線を形成するルーティング構造１５の結合と、たとえば、ＯＥ  Ｍｕｘ１４６およびバイパスＭｕｘ１５５ならびに他のマルチプレクサおよびスイッチング点などの残余の構成可能デバイスの構成とは、不揮発性メモリに記憶される信号によって生じ得る。この不揮発性メモリはインシステムプログラマブルであり得る。インシステムプログラマブル回路は、たとえば、１９９１年５月３日に出願され１９９３年８月１７日に発行された、Ｇ．ジョセフソンら（Ｇ．  Ｊｏｓｅｐｈｓｏｎ  ｅｔ  ａｌ．）に対する米国特許第５，２３７，２１８号に述べられている。米国特許第５，２３７，２１８号の開示は、その全体が援用され、インシステムプログラマブル回路に関する背景情報を提供している。インシステムプログラム可能性に加えて、本明細書中に開示されるプログラマブル配線デバイスは、ＩＥＥＥ規格１１４９．１（ＪＴＡＧ規格）に準拠するバウンダリスキャンテスト能力も有し得る。電気電子学会が発行する（１９９０年５月）、ＩＥＥＥ規格テストアクセスポートおよびバウンダリスキャンアーキテクチャに述べられるＪＴＡＧ規格は、当業者には周知である。
【００３５】
複数のＩ／Ｏセル３１からの入力レジスタ９０は共に繋がれてシフトレジスタを形成し得る。したがって、入力レジスタ９０のＤ入力は、入力シフトレジスタＭｕｘ１７５に結合する。図１０の入力レジスタ９０が、結果的に得られるシフトレジスタ中のｎ番目のレジスタであると仮定すると、入力シフトレジスタＭｕｘ１７５は、（ｎ＋１）の入力レジスタ９０のＱ出力１７６と（ｎ−１）の出力レジスタ９０のＱ出力１７７との間を選択し得る。入力シフトレジスタＭｕｘ１７５からの選択された出力は、ｎ番目の入力レジスタ９０のためのＤ入力となる。次に、ｎ番目の入力レジスタ９０のＱ出力は、（ｎ−１）番目および（ｎ＋１）番目の入力レジスタ９０のためのＤ入力として選択され得る。
【００３６】
類似の態様で、複数のＩ／Ｏセルからの出力レジスタ９２は共に繋がれてシフトレジスタを形成し得る。図１０の出力レジスタ９２が、結果的に得られるシフトレジスタ中のｎ番目のレジスタであると仮定すると、出力シフトレジスタＭｕｘ１８０は、４：１Ｍｕｘ１２の出力と、（ｎ＋１）番目および（ｎ−１）番目の出力レジスタ９２からのＱ出力との間を選択する。次に、ｎ番目の出力レジスタ９２のＱ出力は、（ｎ＋１）番目および（ｎ−１）番目の出力レジスタ９２のためのＤ入力を形成し得る。
【００３７】
この発明の別の実施例では、入力レジスタ９０および出力レジスタ９２で形成されるシフトレジスタを組合せてもよい。たとえば、各々が１６個のＩ／Ｏ回路１６を有する１６個のＩ／Ｏブロック３２を有する実施例を考察する。結果的に得られる２５６個の入力レジスタ９０および２５６個の出力レジスタ９２を２分割し、一方を“右半分”と表し、他方を“左半分”と表す。左半分の入力レジスタ９２を共に繋いで１２８ビットのシフトレジスタを形成し、その段に０から１２７までの番号を与え得る。同様に、右半分の入力レジスタ９０およびいずれかの半分の出力レジスタ９２は、各々、別の１２８ビットシフトレジスタを形成する。左半分の入力レジスタ９０と出力レジスタ９２とを共に繋ぐため、“０番目の”入力レジスタ９０は、１２７番目の出力レジスタ９０からＱ出力を受け得る。これに類似して、左半分で、０番目の出力レジスタ９２は、１２７番目の入力レジスタ９０からＱ出力を受け得る。この態様で、左半分の入力および出力レジスタ９０および９２は２５６ビットのシフトレジスタを形成し得る。同様に、右半分の入力レジスタ９０および出力レジスタ９２は、類似の態様で別の２５６ビットシフトレジスタを形成し得る。さらに、ルーティング構造１４を用いてシフトレジスタを組合せてもよい。たとえば、左半分側の入力レジスタ９０が形成するシフトレジスタを、右半分側の出力レジスタ９２が形成するシフトレジスタと組合せてもよい。この実施例では、右半分側の１２７番目の出力レジスタは、フィードバックＭｕｘ１０１により設けられる高速フィードバックを用いて、そのＱ出力をルーティング構造１４に結合する。これは次に、この信号を左半分側の０番目の入力レジスタ９０にルーティングする。これに代えて、ルーティング構造１４およびピン２０を用いて、両方の半分の中のすべての入力レジスタ９０および出力レジスタ９２を共に繋いでもよい。
【００３８】
シリアルインターフェイス１６０は、図９に示されるように実現され得る。これは、２つの独立したＳＥＲＤＥＳユニット１６５を含む。１つの実施例では、各ＳＥＲＤＥＳユニット１６５は、クロックデータ復元およびデジタル位相ロックループ（ＤＰＬＬ）を備えるレシーバおよびデシリアライザユニット１８４と、トランスミッタおよびシリアライザユニット１８６とを有する。レシーバ１８４のクロックデータ復元部（図示せず）は、本願と同時出願された、２００１年１２月３日に出願された連続番号１０／００６，５１６号の、同時係属中の出願「プログラマブルデジタルフィルタを備えるデジタル位相ロックループ」（“ＤＩＧＩＴＡＬ  ＰＨＡＳＥ  ＬＯＣＫＥＤ  ＬＯＯＰ  ＷＩＴＨ  ＰＲＯＧＲＡＭＭＡＢＬＥ  ＤＩＧＩＴＡＬ  ＦＩＬＴＥＲ”）に記載のように構築され得る。なお、その内容は、その全体が引用により援用されている。アナログ位相ロックループ（ＰＬＬ）１９０は、内部クロック信号１９４（図８に示されるグローバルクロック信号１０５のうち１つ）を受け、内部クロック信号１９４を増倍して、各トランスミッタユニット１８６ごとにシリアルデータクロックを与える。図７について説明されるように、Ｉ／Ｏブロック３２は、データワード（たとえば、８から１０ビット幅）を与え、そのシリアルインターフェイス１６０によって送信し得る。トランスミッタ１８６は受信したワードをシリアル化し、シリアル化されたデータをシリアルデータクロックレートで差動信号インターフェイス１９２に送信する。各差動信号インターフェイス１９２はシリアルデータストリームを受け、受けたシリアルデータストリームを差動信号に変換し得る。これに対し、差動信号インターフェイス１９２は差動信号を受け、差動信号をシリアルデータストリームに変換し得る。特定用途向け集積回路（ＡＳＩＣ）コンポーネントとして差動信号インターフェイス１９２を実現してもよい。差動信号インターフェイス１９２は、ＬＶＤＳ、ＮＬＶＤＳ、ＢＬＶＤＳまたはＬＶＰＥＣＬプロトコルに従って動作するように構成され得る。差動信号インターフェイス１９２は、その表現のために２つの導体を必要とする差動信号を発生し得るため、各トランスミッタ１８６は、その差動信号インターフェイス１９２を通して２つのピン２０と通信する。たとえば、一方のＳＥＲＤＥＳ１６５中のトランスミッタ１８６はピン２０ｃおよび２０ｄに結合し、一方、他方のＳＥＲＤＥＳ１６５中のトランスミッタ１８６はピン２０ｇおよび２０ｈに結合する。同様に、一方のＳＥＲＤＥＳ１６５中のレシーバ１８４はピン２０ａおよび２０ｂに結合し、一方、他方のＳＥＲＤＥＳ１６５中のレシーバ１８４はピン２０ｇおよび２０ｈに結合する。各レシーバ１８４は、その差動信号インターフェイス１９２から受けるシリアルデータストリームを非シリアル化すると、データワードをそのＦＩＦＯ１７０に与え得る。差動インターフェイスユニット１９２がＮＬＶＤＳプロトコルでの動作のために構成される場合、ＰＬＬ１９０は、内部クロック１９４からシリアルデータ信号クロックを生成する必要はない。代わりに、差動シリアルデータクロックはピン２０ｋおよび２０ｌ上を差動信号インターフェイスユニッ���１９２へ伝送され、これは次に、シリアルデータクロック信号をＰＬＬ１９０に与える。次に、ＰＬＬ１９０は、受けたシリアルデータクロック信号をそのレシーバ１８４に与え得る。（受信モードよりもむしろ）ＮＬＶＤＳ伝送では、ＰＬＬ１９０は、ＮＬＶＤＳクロック信号を差動信号インターフェイスユニット１９２に与え、これは次に、ＮＬＶＤＳ差動クロック信号をそのピン２０ｉおよび２０ｊに与える。ＮＬＶＤＳクロック信号と関連の複数のトランスミッタ１８６またはレシーバ１８４は、ｎビットのＮＬＶＤＳデータワードの送信または受信を補助する。ＮＬＶＤＳ動作の間、ＣＡＬＩＢ（図示せず）と表される、チップレベル入力によってイネーブルされる較正モードでのボード／ケーブルスキューキャンセルに、各レシーバ１８４と関連のデジタル位相ロックループを用いてもよい。実現される特定の差動信号伝送プロトコルに拘らず、レシーバ１８４は、シリアルモードでそのＦＩＦＯ１７０へパラレルデータストリームをバス２３１上に与え得る。ＦＩＦＯ１７０は、そのピン２０から直接にパラレルデータストリームを受ける一般的ＦＩＦＯとしても動作し得る。ここで図１０を参照して、マルチプレクサ２３３は、レシーバ１８４からバス２３１上を搬送されるパラレルデータストリームと、ピン２０から直接に結合されるパラレルデータストリームとの間を選択する。ＦＩＦＯ１７０は、バス２１４上にマルチプレクサ２３３の出力を受ける。
【００３９】
ＦＩＦＯ１７０を備えるＳＥＲＤＥＳユニット１６５の適切な動作は多数のフラグを必要とする。ＳＥＲＤＥＳ１６５、ＦＩＦＯ１７０およびピン２０の間のフラグ信号のフローが図１０に図示される。レシーバ１８４内のＣＤＲユニット（図示せず）は、復元したシリアルデータクロックを用いてその受信シリアルビットストリーム中のビットを識別しなければならないだけでなく、シリアルビットストリーム内のデータワードの始め／終りも識別しなければならない。技術分野で公知のように、各ＣＤＲユニットは、パターン認識技術を用いてこれを行ない得る。ＣＤＲフラグであるＳＹＰＴ２４０は、パターン認識とともに１０Ｂ／１２Ｂ  ＬＶＤＳ動作で用いられる。ＣＤＲリセットフラグ、すなわちＣＤＲＲＳＴ２４２は、サポートされているのがＬＶＤＳ、ＮＬＶＤＳまたはＢＬＶＤＳ動作であるかに拘らず、ＣＤＲユニットをリセットしてプロセス中にロックを開始する。別のフラグ、すなわち信号損失（ＬＯＳ）２４４は、レシーバ１８４が１０Ｂ／１２Ｂ  ＬＶＤＳ動作の間にいつその信号を失うかを示す。これに代えて、ＬＯＳ２４４は、レシーバ１８４がＮＬＶＤＳ動作の間にいつ同期を失うかを示し得る。別のフラグ、すなわちＳＹＰＴＤＥＴ２４６は、１０Ｂ／１２Ｂ  ＬＶＤＳ動作のためのオプションである。最後に、ＥＸＬＯＳフラグ２４８は、ＮＬＶＤＳ動作で用いられる、外部光ＬＯＳ検出器（図示せず）から発せられる。別のフラグ、すなわちＣＡＬ（図示せず）は、ＣＤＲ較正をイネーブルするのに用いられる。用いられるＣＤＲフラグの数およびタイプは異なってもよく、当業者には公知の設計選択肢に依存することを認められたい。図１０に図示される実施例について、シリアルモード動作の間に先程説明されたフラグを搬送するため、各Ｉ／Ｏブロック３２内に６本のピン２０が専用に設けられる。さらに、ＬＶＤＳ入力および出力差動信号に対し、４つのピン（たとえば、図９の２０ａ、２０ｂ、２０ｃおよび２０ｄ）が専用に設けられる。
【００４０】
受信したシリアルデータを非シリアル化すると、各レシーバ１８４は、データワードをそのＦＩＦＯ１７０に与え得る。たとえば、ピン２０ａおよび２０ｂが、８Ｂ／１０Ｂ  ＬＶＤＳプロトコルを用いてエンコードされた差動信号を受信すれば、レシーバ１８４は、１０ビットのワードをＦＩＦＯ１７０に与える。ＦＩＦＯ１７０は、ＬＶＤＳシリアルデータストリームに関連のシリアルデータクロックと内部クロック１９４との間のクロック同期を可能にする。したがって、ＦＩＦＯ１７０は大きいものである必要はなく、深さ１５、１０ビット幅のＦＩＦＯとして実現され得る。そのクロック同期機能のため、ＦＩＦＯ１７０は、２つの別個のクロック、すなわち読出クロックおよび書込クロックにより、順繰りの態様で単純な“環状待ち行列”として実現され得る。ＦＩＦＯ１７０は、同期（共通のクロック）または非同期（別個のクロック）のいずれかであり得る。１５ワード深さ×１０ビット幅のＦＩＦＯ１７０は、８Ｂ／１０Ｂまたは１０Ｂ／１２Ｂ  ＬＶＤＳプロトコルおよびＮＬＶＤＳプロトコルをサポートすることができる。配線デバイス２５のプログラミングに依存して、各ＦＩＦＯ１７０は３つの異なるモードで動作し得る。すなわち、
１）  ＬＶＤＳ  ＣＤＲシリアルモード動作のサポート
２）  レシーバ１８４におけるＬＶＤＳ  ＣＤＲ機能性を迂回する一般的ＦＩＦＯ。上述のように、ＦＩＦＯ１７０は、シリアルモードでＳＥＲＤＥＳ１６５から１０ビットのデータワードを受ける。そのようなモードでは、１０本のピン２０を用いて１０ビットワードを送信する（１０ビット幅のＦＩＦＯを仮定する）。ＦＩＦＯ１７０は、これらのピンを直接に結合して、データワードを受ける。本明細書中に記載のように、この結合はマルチプレクサ２３３を通して生じる。
【００４１】
３）  ＬＶＤＳ  ＣＤＲ機能性を用いるが、レシーバ１８４から結果的に生じるパラレルデータストリームのためのフロースルーデバイスとしてＦＩＦＯ１７０が働く、バイパスモード。
【００４２】
最初の２つのモードのうちいずれかでＦＩＦＯ１７０を用いる場合、ＦＩＦＯフラグがその動作を補助する。ここで図１１を参照して、書込カウンタ２０２、読出カウンタ２０４および比較論理２０６を有するＦＩＦＯフラグ生成回路２００が図示される。ＦＩＦＯ１７０は僅か１５ワードの深さとなるように構築されると仮定すると、書込カウンタ２０２および読出カウンタ２０４は、各々僅か４ビットであればよい。レシーバ１８４（図９）中のＣＤＲユニットは、そのＤＰＬＬを用いて、クロックエンコードされたシリアルデータストリームから復元されるシリアルデータクロックを発生する。このシリアルデータクロックは、レシーバ１８４によって変換されて、１０ビットワードがいつＦＩＦＯ１７０に書込まれるかを信号で伝える書込クロック信号２１０を発生し得る。さらに、レシーバ１８４は、書込クロック信号２１０を発生するのとともに、書込イネーブル信号２５０も発生する。書込カウンタ２０２は書込クロック信号２１０を受け、書込イネーブル信号２５０が真である場合は、これに応じてその書込ポインタ２１２をインクリメントする。ＦＩＦＯ１７０内のメモリアレイ２５２は書込ポインタ２１２を受け、それにより、バス２１４上を搬送される１０ビットのワードを、書込ポインタ２１２が示すワード位置に書込み得る（配線デバイス２５がパラレルモードにある場合は、ピン２０から１０ビットのワードを受け、これに代えて、配線デバイス２５がシリアルモードにある場合は、レシーバ１８４から１０ビットのワードを受ける）。
【００４３】
読出カウンタ２０４は、その読出クロック信号として内部クロック信号１９４を受け、（Ｉ／Ｏブロック３２から受ける）読出イネーブル信号２５４が真である場合、これに応じてその読出ポインタ２１６をインクリメントする。さらに、Ｉ／Ｏブロック３２は、書込イネーブル信号２２５、書込クロック信号２２７および読出クロック信号２２９を与え得る。メモリアレイ２５２は、読出ポインタ２１６を受け、読出ポインタ２１６が指し示す１０ビットワードをＩ／Ｏブロック３２中の入力レジスタ９０（図７）に出力する。比較論理２０６はポインタ２１２および２１６の両者を受け、これに応じて、空のフラグ２２０、ほぼ空のフラグ２２２、ほぼフルのフラグ２２４およびフルフラグ２２６を調節する。ＦＩＦＯ１７０がフルであるとき、フルフラグは真となる。フルフラグ２２６は、書込クロック２１０の立上がりエッジと同期し得る。したがって、フルフラグ２２６が真になりかつ、データがその後でＦＩＦＯ１７０から読出され、ＦＩＦＯ１７０のワードスロットを開いた場合、書込クロック２１０の次の立上がりエッジまでは、フルフラグ２２６はリセットされない。フルフラグ２２６が真になれば、書込カウンタ２０２は動作を停止する。
【００４４】
ＦＩＦＯ１７０がデータを全く記憶していないときは空のフラグ２２０が真になる。空のフラグ２２０は、読出クロック（内部クロック１９４）の立上がりエッジと同期し得る。したがって、空のフラグが真になり、その後でデータがＦＩＦＯ１７０に書込まれれば、空のフラグ２２０は、内部クロック１９４の次の立上がりエッジまではリセットされない。空のフラグ２２０が真であるならば、読出カウンタ２０４は動作を停止する。ＦＩＦＯ１７０はかなり小さい（僅か１５ワードの深さ）ものであり得るため、ほぼ空のフラグ２２２およびほぼフルのフラグ２２４は、ＦＩＦＯ１７０が一般的ＦＩＦＯモードにある場合は、限られてしか用いられないであろう。
【００４５】
上述のように、各ＦＩＦＯ１７０は４つのフラグ信号と関連付けられる。さらなるフラグ信号、すなわち読出開始フラグ２５６は、ＣＤＲ動作と関連付けられる。すべてのＦＩＦＯ１７０が同じ書込クロック２１０および読出クロック（内部クロック１９４）を有するのを確実にすることによって、複数のＦＩＦＯ１７０を組合せてもよい。ＣＤＲフラグのように、実現されるＦＩＦＯフラグの数およびタイプは異なってもよく、当業者には公知の設計上考慮すべきことに依存する。リセット論理ブロック２６０は、グローバルＲＥＳＥＴピンおよびＣＤＲ／ＦＩＦＯ  ＲＥＳＥＴピンに結合し、リセット信号をメモリアレイ２５２に与える。これらのピンのいずれかの上の信号がハイであれば、ＦＩＦＯ１７０はリセットする。
【００４６】
ここで図１２を参照して、動作モードに従うＩ／Ｏブロックの１６本のピン２０の割当が図示される。図７で述べられたように、パラレルモードでは、すべての１６本のピン２０は、Ｉ／Ｏブロック３２中のそれらのそれぞれの入力および出力レジスタと通信する。この動作モードでは、Ｉ／ＯブロックのＳＥＲＤＥＳユニット１６５およびＦＩＦＯ１７０は迂回される。一般的ＦＩＦＯモードでは、５本のピン２０を用いて上述のＦＩＦＯフラグを搬送する。１０ビット幅のＦＩＦＯ１７０を仮定すると、１０本のピン２０が１０ビットのデータワードを受け、そのデータワードを、ＳＥＲＤＥＳ１６５を迂回するバス２３０（図１０）を介してＦＩＦＯ１７０に結合する。したがって、一般的ＦＩＦＯモードでは、１５本のピンを用いる。最後に、シリアルモードでは、１１本のピンが、上述のＣＤＲフラグ、（ＮＬＶＤＳ動作にのみ用いられる）ＣＡＬ信号およびＦＩＦＯフラグを搬送する。４本のピンがそれぞれ入力および出力ＬＶＤＳ信号専用に設けられる。したがって、シリアルモードでは、１５本までのピンも用いられる。ＳＥＲＤＥＳ１６５がデータを送信または受信可能にならないうちに、レシーバ１８４とトランスミッタ１８６との両者を初期化しなければならない。この初期化は、トランスミッタ１８６中のシリアライザおよびレシーバ１８４中のＤＰＬＬの、内部クロック信号１９４への同期を含む。
【００４７】
この発明は特定の実施例を参照して説明されたが、説明はこの発明の適用例の例に過ぎず、限定と解釈されるべきものではない。その結果、添付の請求項に包含されるように、開示された実施例の特徴のさまざまな適合および組合せがこの発明の範囲内に入る。
【図面の簡単な説明】
【図１】先行技術のプログラマブル配線アーキテクチャを示す図である。
【図２】この発明の１つの実施例に従う、複数のシリアルインターフェイスを有するブロックオリエンテッドプログラマブル配線回路を示す図である。
【図３】この発明の１つの実施例に従う、シリアルインターフェイスおよびルーティング構造に対するＩ／Ｏブロックの関係を示す図である。
【図４】この発明の１つの実施例に従う２レベルデータ経路ルーティング構造を示す図である。
【図５】この発明の１つの実施例に従う、２レベル制御経路ルーティング構造を示す図である。
【図６】この発明の１つの実施例に従う積項制御信号を生成するための制御アレイを示す図である。
【図７】この発明の１つの実施例に従うＩ／Ｏ回路のブロック図である。
【図８】この発明の１つの実施例に従う、図７のＩ／Ｏセルへの積項制御信号の結合を示す図である。
【図９】この発明の１つの実施例に従うシリアルインターフェイス回路のブロック図である。
【図１０】図９のシリアルインターフェイス回路内のＳＥＲＤＥＳおよびＦＩＦＯユニットのブロック図である。
【図１１】図１０のＦＩＦＯユニットのさらなる詳細を示すブロック図である。
【図１２】Ｉ／ＯブロックのＳＥＲＤＥＳおよびＦＩＦＯユニットとそのＩ／Ｏピンとの間の関係を示す図である。
【符号の説明】
１２  マルチプレクサ、１６  Ｉ／Ｏ回路、３１  Ｉ／Ｏセル、３２  Ｉ／Ｏブロック。
【図１】
0003634335.tif 000002
【図２】
0003634335.tif 000003
【図３】
0003634335.tif 000004
【図４】
0003634335.tif 000005
【図５】
0003634335.tif 000006
【図６】
0003634335.tif 000007
【図７】
0003634335.tif 000008
【図８】
0003634335.tif 000009
【図９】
0003634335.tif 000010
【図１０】
0003634335.tif 000011
【図１１】
0003634335.tif 000012
【図１２】
0003634335.tif 000013