(57)【要約】  ＰＬＡは、複数のデータ線（１０３）及び当該複数のデータ線への信号入力に応じて電圧レベルが変化する複数の積項線（１０４）を有する入力平面（１０）と、入力平面における複数の積項線の電圧レベル変化に応じて電圧レベルが変化する複数の積項線（２０４）及び当該複数の積項線の電圧レベルに応じた信号出力をする複数のデータ線（２０３）を有する出力平面（２０）とを備えている。ここで、入力平面及び出力平面の少なくとも一方における複数のデータ線の少なくとも一つの両端にデータ端子（１０１）を設ける。【特許請求の範囲】
【請求項１】
複数のデータ線及び当該複数のデータ線への信号入力に応じて電圧レベルが変化する複数の積項線を有する入力平面と、前記入力平面における複数の積項線の電圧レベル変化に応じて電圧レベルが変化する複数の積項線及び当該複数の積項線の電圧レベルに応じた信号出力をする複数のデータ線を有する出力平面とを備えたプログラマブル・ロジック・アレイであって、
前記入力平面及び出力平面の少なくとも一方における前記複数のデータ線の少なくとも一つの両端にデータ端子を備えた
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項２】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面は、前記入力平面における前記複数の積項線のプリチャージを行うプリチャージ回路を有するものであり、
前記プリチャージ回路は、前記複数の積項線の長さ方向の中間位置に設けられている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項３】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記出力平面は、前記出力平面における前記複数のデータ線のプリチャージを行うプリチャージ回路を有するものであり、
前記プリチャージ回路は、前記複数のデータ線の長さ方向の中間位置に設けられている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項４】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面は、前記入力平面における前記複数のデータ線の少なくとも一つについて、当該データ線に入力される信号の反転及び非反転を生成するバッファ回路を備え、
前記データ線は、前記生成された反転信号及び非反転信号を伝達する対線である
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項５】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面及び出力平面の少なくとも一方における前記複数のデータ線のそれぞれは、隣接するデータ線とは異なる配線層に設けられている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項６】
請求項５に記載のプログラマブル・ロジック・アレイにおいて、
前記複数のデータ線の少なくとも一つは、拡散層配線である
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項７】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
与えられた信号に応じて遷移する状態を記憶するとともに、記憶内容が変化したとき、イベントを発するイベント発生記憶回路と、
前記イベント発生記憶回路からイベントを受けたとき、前記イベント発生記憶回路の記憶内容を評価して評価結果を出力するイベント駆動インタフェースとを備え、
前記イベント発生記憶回路は、前記入力平面に入力される信号を受けるものであり、
前記イベント駆動インタフェースは、前記評価結果を、前記入力平面における前記複数のデータ線に与えるものである
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項８】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
与えられた信号に応じて遷移する状態を記憶するとともに、記憶内容が変化したとき、イベントを発するイベント発生記憶回路と、
前記イベント発生記憶回路からイベントを受けたとき、前記イベント発生記憶回路の記憶内容を評価して評価結果を出力するイベント駆動インタフェースとを備え、
前記イベント発生記憶回路は、前記入力平面における前記複数の積項線から出力された信号を受けるものであり、
前記イベント駆動インタフェースは、前記評価結果を、前記出力平面における前記複数の積項線に与えるものである
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項９】
請求項８に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面及びイベント発生記憶回路を複数備え、
前記複数のイベント発生記憶回路のそれぞれは、前記複数の入力平面のそれぞれにおける前記複数の積項線から出力された信号を受けるものであり、
前記イベント駆動インタフェースは、前記複数のイベント発生記憶回路のいずれかからイベントを受けたとき、前記複数のイベント発生記憶回路の記憶内容を評価して評価結果を前記出力平面における前記複数の積項線に与えるものである
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項１０】
請求項７及び８のいずれか一つに記載のプログラマブル・ロジック・アレイにおいて、
前記イベント駆動インタフェースは、
前記イベントを遅延させた信号に基づいて、当該イベント駆動インタフェースにおける所定のノードを与えられた電圧でプリチャージするプリチャージ回路と、
前記イベント出力記憶回路の記憶内容が第１の値から第２の値に変化したときに発せられたイベントが活性状態にあるとき、前記プリチャージ回路に第１の電圧を与える第１の電圧供給回路と、
前記イベント出力記憶回路の記憶内容が前記第２の値から前記第１の値に変化したときに発せられたイベントが活性状態にあるとき、前記プリチャージ回路に、前記第１の電圧よりも低い第２の電圧を与える第２の電圧供給回路とを有する
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項１１】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
当該プログラマブル・ロジック・アレイを構成するＭＯＳデバイスは、ＳＯＩウェハ上に形成されている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項１２】
プログラマブル・ロジック・アレイに係る論理記述ファイルを読み込むファイル読み込み部と、
前記論理記述ファイルによって記述されたプログラマブル・ロジック・アレイの入力平面及び出力平面の少なくとも一方における複数のデータ線について、相対的に多くのトランジスタが形成されるデータ線と相対的に少ないトランジスタが形成されるデータ線とが隣接するように、データ線の入れ替えを行う真理値表ソート部と、
前記データ線入れ替え後の論理記述ファイルに基づいて、下地レイアウトを生成する下地レイアウト生成部と、
前記データ線入れ替え後の論理記述ファイルに基づいて、入力平面のアレイ配置を行う入力平面プログラミング部と、
前記データ線入れ替え後の論理記述ファイルに基づいて、出力平面のアレイ配置を行う出力平面プログラミング部とを備えた
ことを特徴とするプログラマブル・ロジック・アレイモジュールジェネレータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブル・ロジック・アレイ及びプログラマブル・ロジック・アレイモジュールジェネレータに関し、特に不要輻射（ＥＭＩ）を軽減するプログラマブル・ロジック・アレイに関するものである。
【背景技術】
【０００２】
従来のプログラマブル・ロジック・アレイ（以下、“ＰＬＡ”と略記することがある）として、例えば、ＣＭＯＳで構成されたものやダイナミック回路で構成されたものが公知である（例えば、非特許文献１参照）。また、ＰＬＡの構成に関して、チップ面積を小さくし、かつ、歩留まりを向上させる技術が公知である（例えば、特許文献１参照）。
【特許文献１】特願昭５９−２３８９２１号公報
【非特許文献１】富沢孝、松山泰男、「CMOS  VLSI設計の原理」、丸善(株)、P326〜P335
【発明の開示】
【発明が解決しようとする課題】
【０００３】
近年、システムＬＳＩの高速化に伴い、ＥＭＩ（Electro Magnetic Interference）が問題視されるようになってきている。しかしながら、従来のダイナミックＰＬＡの構成では、データの出力のタイミングが同じであり、また、入出力端子が一方向に揃えられて配置されているため、ピーク電流の発生箇所が集中し、さらに電流の向きが揃ってしまうことから、発生する磁界が重畳してしまい、周辺の機能ブロックやチップに対して大きな不要輻射（ＥＭＩ）を発生していた。また、ＥＭＩの影響はチップが出来上がってから判明することが多く、そのたびにマスク修正していたのでは莫大な開発コストと工数がかかってしまう。【０００４】
さらに、入力端子及び出力端子が同一方向に偏る場合には、前後の機能ブロックとの間の配線レイアウトに余分なオーバーヘッドを生じる可能性がある。【０００５】
また、従来のＰＬＡではその構成上、電源が投入された状態では定常電流が流れる。例えば、入力平面又は出力平面においてアレイトランジスタが導通状態のとき、電源から当該トランジスタを介してグランドに電流が流れ続ける。したがって、電源が投入された状態にあって、使用されていない状態で有効な出力を取り出そうとしない状態（以下、「未使用状態」ということがある）にあっても、定常電流は流れることになる。このような未使用状態での定常電流は無駄な電流であり、消費電力の増大をもたらすことになる。また、このような定常電流は、ＰＬＡの規模が大型化するにつれて、さらには平面内に存在するプログラムを行うトランジスタの数が増加するに伴って多くなるため、未使用状態での消費電力の増大は顕著な問題となってくる。同時に、ＰＬＡの未使用状態での時間が長い場合であっても、消費電力の増大を招くことになる。
【課題を解決するための手段】
【０００６】
上記課題を解決するために本発明が講じた手段は、複数のデータ線及び当該複数のデータ線への信号入力に応じて電圧レベルが変化する複数の積項線を有する入力平面と、前記入力平面における複数の積項線の電圧レベル変化に応じて電圧レベルが変化する複数の積項線及び当該複数の積項線の電圧レベルに応じた信号出力をする複数のデータ線を有する出力平面とを備えたプログラマブル・ロジック・アレイとして、前記入力平面及び出力平面の少なくとも一方における前記複数のデータ線の少なくとも一つの両端にデータ端子を備えたものとする。【０００７】
また、本発明が講じた手段は、プログラマブル・ロジック・アレイモジュールジェネレータとして、プログラマブル・ロジック・アレイに係る論理記述ファイルを読み込むファイル読み込み部と、前記論理記述ファイルによって記述されたプログラマブル・ロジック・アレイの入力平面及び出力平面の少なくとも一方における複数のデータ線について、相対的に多くのトランジスタが形成されるデータ線と相対的に少ないトランジスタが形成されるデータ線とが隣接するように、データ線の入れ替えを行う真理値表ソート部と、前記データ線入れ替え後の論理記述ファイルに基づいて、下地レイアウトを生成する下地レイアウト生成部と、前記データ線入れ替え後の論理記述ファイルに基づいて、入力平面のアレイ配置を行う入力平面プログラミング部と、前記データ線入れ替え後の論理記述ファイルに基づいて、出力平面のアレイ配置を行う出力平面プログラミング部とを備えたものとする。
【発明の効果】
【０００８】
本発明に係るプログラマブル・ロジック・アレイによると、ディスチャージ時にピーク電流の発生する回路部が分散され、磁界の重畳が少なくなる。また、本発明に係るプログラマブル・ロジック・アレイモジュールジェネレータによると、信号変化の起こり易い項と起こりにくい項の順番が並び替えられ、マスクレイアウト前にピーク電流の発生する回路位置が分散される。これにより、磁界の重畳が比較的少ないプログラマブル・ロジック・アレイがレイアウトされる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図２】図２は、第２の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図３】図３は、第３の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図４】図４は、第４の実施形態に係るプログラマブル・ロジック・アレイにおけるデータ線の配線断面図である。
【図５】図５は、第５の実施形態に係るプログラマブル・ロジック・アレイにおけるデータ線の配線断面図である。
【図６】図６は、第６の実施形態に係るプログラマブル・ロジック・アレイにおけるイベント駆動インタフェース部分の構成図である。
【図７】図７は、図６に示したイベント発生記憶回路の真理値表である。
【図８】図８は、図６に示したイベント駆動インタフェースのタイミングチャートである。
【図９】図９は、第７の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図１０】図１０は、本発明に係るプログラマブル・ロジック・アレイモジュールジェネレータの構成図である。
【図１１】図１１は、真理値表ソートの概要の説明図である。
【符号の説明】
【００１０】
１０１，２０１  データ端子
１０５，２０５  Ｐｃｈトランジスタ（プリチャージ回路）
１０２Ａ  バッファ回路
３１  イベント発生記憶回路
３２  イベント駆動インタフェース
３２２  Ｐｃｈトランジスタ（第２の電圧供給回路）
３２３  Ｐｃｈトランジスタ（第１の電圧供給回路）
３２６  Ｐｃｈトランジスタ（プリチャージ回路）
１００  ファイル読み込み部
２００  真理値表ソート部
３００  下地レイアウト生成部
４００  入力平面プログラミング部
５００  出力平面プログラミング部
【発明を実施するための最良の形態】
【００１１】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。【００１２】
（第１の実施形態）
図１は、本発明の第１の実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、ＡＮＤアレイとして構成された入力平面１０、ＯＲアレイとして構成された出力平面２０、インタフェースバッファ３０を備えている。入力平面１０において、１０１は入力端子、１０２は入力バッファ、１０３はデータ線、１０４は積項線、１０５はプリチャージ回路としてのＰｃｈトランジスタ、１０６はアレイトランジスタとしてのＮｃｈトランジスタである。一方、出力平面２０において、２０１は出力端子、２０２は出力バッファ、２０３はデータ線、２０４は積項線、２０５はプリチャージ回路としてのＰｃｈトランジスタ、２０６はアレイトランジスタとしてのＮｃｈトランジスタである。【００１３】
各平面内にプログラムされる演算内容として例えばＡＮＤやＯＲなどがあるが、入力平面１０がＡＮＤ平面、出力平面２０がＯＲ平面と一意に決まっているわけではなく、この逆である場合やＮＯＲ−ＮＯＲで構成されることもある。【００１４】
入力平面１０における複数のデータ線１０３のうち少なくとも１本は入力平面１０の双方向から入力可能なように構成され、この１本のデータ線の両端には入力端子１０１が設けられている。データは複数の入力端子１０１に入力され、入力平面１０及び出力平面２０のそれぞれにプログラムされた論理演算がなされ、その演算結果は複数の出力端子２０１から出力される。【００１５】
本実施形態に係るＰＬＡはプリチャージ型であることから、その動作の概略はクロックＣＬＫに同期してプリチャージと評価とを繰り返し行う。１回目のクロックサイクルで入力平面１０において論理演算を行い、２回目のクロックサイクルで積項線１０４を通じて出力平面２０にデータを伝播し、３回目のクロックサイクルで出力平面２０において論理演算を行い、データを出力する。【００１６】
図１に示したＰＬＡの動作は次の通りである。まず、入力平面１０において、クロックＣＬＫがＬｏレベルのとき、Ｐｃｈトランジスタ１０５によって、入力平面１０における複数の積項線１０４に電源電圧ＶＤＤが与えられ、積項線１０４はＨｉレベルとなる。ここで、入力平面１０における複数の入力端子１０１のいずれかにＬｏレベルの信号が与えられたとすると、その入力端子１０１から信号を受けたデータ線１０３はＨｉレベルとなり、そのデータ線１０３にゲート端子が接続されたＮｃｈトランジスタ１０６は導通状態となる。そして、Ｎｃｈトランジスタ１０６が導通状態のときにクロックＣＬＫがＨｉレベルになると、Ｎｃｈトランジスタ１０７を介して積項線１０４がグランドに接続され、積項線１０４はＬｏレベルになる。【００１７】
次に、インタフェースバッファ３０において、クロックＣＬＫがＬｏレベルのとき、Ｐｃｈトランジスタ３０１及びバッファ３０２によって、出力平面２０における複数の積項線２０４はＬｏレベルとなる。積項線１０４がＬｏレベルのとき、その積項線１０４にゲート端子が接続されたＮｃｈトランジスタ３０３は非導通状態になる。その後、クロックＣＬＫがＨｉレベルとなりＮｃｈトランジスタ３０４が導通状態になっても、Ｎｃｈトランジスタ３０３は非導通状態のため、インタフェースバッファ３０の出力はＬｏレベルに保たれ、出力平面２０における積項線２０４はＬｏレベルのままである。【００１８】
次に、出力平面２０において、クロックＣＬＫがＬｏレベルのとき、Ｐｃｈトランジスタ２０５によって、出力平面２０における複数のデータ線２０３に電源電圧ＶＤＤが与えられ、データ線２０３はＨｉレベルとなる。積項線２０４にゲート端子が接続されたＮｃｈトランジスタ２０６は、その積項線２０４がＬｏレベルのとき非導通状態となる。Ｎｃｈトランジスタ２０６のドレイン端子は、複数のデータ線２０３のいずれかに接続されており、いずれかのデータ線２０３は、その接続されたＮｃｈトランジスタ２０６がいずれも非導通状態であるなら、クロックＣＬＫがＬｏレベルとなってもそのデータ線２０３はＨｉレベルを維持する。その結果、出力バッファ２０２によってレベルが反転され、出力端子２０１からＬｏレベルの信号が出力される。【００１９】
一方、Ｈｉレベルの信号が入力平面１０に与えられると、ＡＮＤアレイ及びＯＲアレイでの動作は上述した動作と逆となる。すなわち、入力平面１０における積項線１０４はＨｉレベルに保持され、インタフェースバッファ３０の出力はＨｉレベルに維持され、出力平面２０におけるＮｃｈトランジスタ２０６は導通状態となりグランドに接続されるため、出力端子２０１からはＨｉレベルの信号が出力される。【００２０】
本実施形態に係るＰＬＡにおいて、入力平面１０への信号入力は任意の入力端子１０１から行うことができる。そして、信号入力が局所的に集中しないように、特に、両端に入力端子１０１を有するデータ線１０３への信号入力方向を分散することによって、入力バッファ１０２におけるピーク電流の発生位置を分散させることができる。また、入力端子１０１を入力平面１０の双方向に設ける構成にすれば、前後の機能ブロックとの信号配線レイアウトにおいて最短距離での配線を可能とし、配線自由度が上がる。【００２１】
なお、出力平面２０におけるデータ線２０３についても、その両端に出力端子２０１を設けるようにするとよい。【００２２】
（第２の実施形態）
第１の実施形態に係るＰＬＡにおいて、例えばＮｃｈトランジスタ１０６のいくつかが非導通状態、その他のＮｃｈトランジスタ１０６が導通状態から非導通状態に遷移する場合を考える。この場合、基本的には、クロックＣＬＫがＬｏレベルの期間（プリチャージ期間）に積項線１０４及びＮｃｈトランジスタ１０６のドレイン（又はソース）容量はすべてＨｉレベル（電源電圧）に充電される。そして、クロックＣＬＫがＨｉレベルの期間（ディスチャージ期間）に積項線１０４からＨｉレベルの信号が出力されるはずである。しかしながら、プリチャージ期間と入力信号のレベル遷移期間とが重なっている場合、例えば、Ｐｃｈトランジスタ１０５近傍のＮｃｈトランジスタ１０６がプリチャージ期間終了間際の最後に導通状態に遷移した場合、その残りのプリチャージ期間ではＮｃｈトランジスタ１０６のドレイン（又はソース）容量のすべてについては充電が間に合わず、そのため、いわゆるチャージシェアを起こして積項線１０４に保持されているデータがＨｉレベルからＬｏレベル（グランド電圧）に変化してしまうことが起こり得る。この現象により、本来Ｈｉレベルとなるべき信号がＬｏレベルとなり、ＰＬＡの誤動作の要因となる。【００２３】
上記のような現象を回避するために、積項線１０４の寄生容量、例えばＰｃｈトランジスタ１０５のドレイン（又はソース）容量を大きくすることで、チャージシェアが起こっても積項線１０４はＨｉレベルを保持し続ける方法が考えられる。しかし、これは、読み出し（ディスチャージ）時に放電しなければならない容量が大きくなることを意味し、読み出し速度を低下させることになる。また、補助的なプリチャージトランジスタを付加することも考えられるが、回路面積を増やすことになるため好ましくない。一方、必要なプリチャージを十分に行うことができるように、アドレスの遷移（入力信号のレベル遷移）をプリチャージ期間の終了よりも十分早い時期に終了させる方法も考えられるが、このことは、アドレスのセットアップタイムに負担をかけ、演算等に使える時間を無駄にしなければならないという問題がある。【００２４】
そこで、本発明に係る第２の実施形態では、上記の問題点を解決するＰＬＡを提供する。図２は、本実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、図１のＰＬＡにおける入力平面１０のプリチャージ回路（Ｐｃｈトランジスタ１０５）を積項線１０４の長さ方向の中間位置に設けたものである。これ以外の点については第１の実施形態と同様であるため説明を省略する。【００２５】
このように、プリチャージ回路を積項線１０４の中間位置に設けたことにより、積項線１０４の長さに対して必要なプリチャージ時間を短縮し、かつ均等なプリチャージ電位レベルが供給される。これにより、チャージシェアの発生を軽減することができる。【００２６】
なお、出力平面２０におけるプリチャージ回路（Ｐｃｈトランジスタ２０５）についても、出力平面２０におけるデータ線２０３の長さ方向の中間位置に設けるようにするとよい。【００２７】
（第３の実施形態）
図３は、本発明の第３の実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、図１のＰＬＡにおける入力バッファ１０２をバッファ回路１０２Ａに置き換え、データ線１０３を対線で構成したものである。これ以外の点については第１の実施形態と同様であるため説明を省略する。【００２８】
バッファ回路１０２Ａは、入力端子１０１に入力された一つの信号の反転及び非反転を生成し、隣り合うデータ線１０３のペアに差動信号を与える。これにより、バッファ回路１０２において信号伝播時の隣り合う入力バッファ（ここではインバータ）から発生する磁力線の発生向きを逆にし、不要輻射が軽減される。【００２９】
（第４の実施形態）
図４は、本発明の第４の実施形態に係るＰＬＡにおけるデータ線の配線断面を示す。図４において、４１はＮ層配線、４２はＮ＋１層配線、４３は層間絶縁膜である。ここでＮは自然数であり、Ｎ層及びＮ＋１層はいずれも金属配線層である。金属配線層の周辺は層間絶縁膜４３で囲まれる。データ線は、入力平面及び出力平面のいずれのものであってもよい。【００３０】
本実施形態によると、隣り合うデータ線を上下異なる層で構成したことにより、配線間にできる容量が低減されるとともに、発生する磁力線の重畳が軽減される。【００３１】
（第５の実施形態）
図５は、本発明の第５の実施形態に係るＰＬＡにおけるデータ線の配線断面を示す。
図５において、５１は拡散層配線、５２は金属配線、５３は層間絶縁膜、５４はシリコン基板である。データ線は、入力平面及び出力平面のいずれのものであってもよい。【００３２】
本実施形態によると、隣り合う信号配線を上下異なる層で構成し、かつ拡散層で構成したことにより、配線間にできる容量が低減されるとともに、配線抵抗が異なることから出力バッファに伝播するまでの時間に差を持たせ、隣り合う出力バッファで発生する磁力線の重畳を抑えることができる。【００３３】
（第６の実施形態）
図６は、本発明の第６の実施形態に係るＰＬＡにおけるイベント駆動インタフェース部分の構成を示す。本実施形態に係るＰＬＡは、出力平面１０の信号入力部分に、イベント発生記憶回路３１及びイベント駆動インタフェース３２を備えている。【００３４】
イベント発生記憶回路３１は、図７の真理値表に示したように、与えられた信号ＩＮに応じて遷移する状態を記憶するとともに、記憶内容が変化したとき、クロックＣＬＫに同期したイベントＥＶを発する。なお、イベント駆動回路については、例えば、特願２００４−２２９８４２に具体例が開示されている。【００３５】
イベント駆動インタフェース３２は、イベント発生記憶回路３１からのイベントＥＶが活性化したとき、イベント発生記憶回路３１の記憶内容を評価して、評価結果を入力平面１０におけるデータ線１０３に与える。また、イベント駆動インタフェース３２は、イベントＥＶに応じて複数の電源電圧を選択できるようになっている。【００３６】
イベント駆動インタフェース３２の動作について図８のタイミングチャートを参照しながら説明する。信号ＣＬＫと信号Ｄａｔａの変化エッジに対応してイベントＥＶが活性化（ハイアクティブ）する。ここで、信号Ｄａｔａが立ち上がり変化をしたとき、ノードＡ１が活性化（ローアクティブ）し、電源電圧ＶＤＤＨが接続される。一方、信号Ｄａｔａが立ち下がり変化をしたとき、ノードＡ２が活性化（ローアクティブ）し、電源電圧ＶＤＤＬが接続される。なお、ＶＤＤＨ＞ＶＤＤＬの関係にあるとする。【００３７】
イベントＥＶの反転信号の立ち下りエッジからイベントＥＶを遅延させた信号の立ち上がりエッジまでの期間でプリチャージが行われ、イベントＥＶを遅延させた信号のＨｉレベル期間で評価が行われる。ここで、イベント駆動インタフェース３２はダイナミック論理で構成されているため、イベント発生記憶回路３１の出力信号ＤａｔａがＬｏレベルからＨｉレベルに遷移する場合に、評価トランジスタとしてのＮｃｈトランジスタ３２１が導通状態となり、次段以降に論理を伝播することとなる。【００３８】
この動作の中で、プリチャージ時のみ２種類の電源電圧のうち高い方の電源電圧ＶＤＤＨを接続し、評価期間以後は低い方の電源電圧ＶＤＤＨに切り替えるようにする。逆に、信号ＤａｔａがＨｉレベルからＬｏレベルに遷移する場合にはプリチャージ状態を保った論理を伝播することになる。この動作の中ではプリチャージレベルを認識し、次段のインバータが反転しないスレッショルド電圧以上の低い電源電圧ＶＤＤＬにしておく。【００３９】
図６に戻り、イベント駆動インタフェース３２の回路構成を説明する。イベント駆動インタフェース３２において、イベントＥＶと信号Ｄａｔａの反転信号とをＮＡＮＤ接続し、低い方の電源電圧ＶＤＤＬをソースとする電圧供給回路としてのＰｃｈトランジスタ３２２のゲートに入力する。一方、イベントＥＶと信号ＤａｔａとをＮＡＮＤ接続し、高い方の電源電圧ＶＤＤＨをソースとする電圧供給回路としてのＰｃｈトランジスタ３２３のゲートに入力する。これにより、信号Ｄａｔａのレベル遷移の方向によってプリチャージ時の電源電圧を選択する。また、プリチャージパルスは、イベントＥＶと信号ＤａｔａとをＮＡＮＤしたものをインバータ３２４で反転し、バッファ回路３２５で遅延させた信号を受けるプリチャージ回路としてのＰｃｈトランジスタ３２６で生成する。さらに、ダイナミックノードのデータ誤反転を防止するキーパー回路３２７の電源電圧もイベントＥＶに応じて、ＶＤＤＨとＶＤＤＬとを選択的に与える。【００４０】
以上のように本実施形態によると、イベント駆動インタフェースにより回路の活性化率が下がり、さらに、２電源電圧を選択的にソース電源とし、パルスプリチャージを行うイベント駆動インタフェースをＰＬＡのインタフェースバッファとしたことにより、定常電流が低減される。例えば、ＶＤＤＨ＝１．２Ｖ、ＶＤＤＬ＝０．９Ｖとすると、電力Ｐ＝ｆ・Ｃ・Ｖ２で与えられることから、ｆ及びＣを一定とすると約４０％程度の電力が削減されることになる。【００４１】
なお、上記のイベント駆動インタフェースは、すなわち、図１等に示したインタフェースバッファ３０に代えて、出力平面の前に設けてもよい。【００４２】
（第７の実施形態）
図９は、本発明の第７の実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、イベント駆動インタフェース３２を複数のイベント発生記憶回路３１から発せられたイベントＥＶに基づいて動作するようにしたものである。【００４３】
複数の入力平面１０のそれぞれに対応するイベント発生記憶回路３１は、当該対応する入力平面１０における積項線１０４を通じて与えられる信号を受け、そのいずれかが変化したとき、イベントＥＶを発する。そして、各イベント発生記憶回路３１からのイベントＥＶはＯＲされて、イベント駆動インタフェース３２に与えられる。また、イベント駆動インタフェース３２には、各イベント発生記憶回路３１の記憶内容としての信号Ｄａｔａが与えられる。【００４４】
以上のように本実施形態によると、入力平面１０を複数に分割し、入力信号の変化時にその遷移方向に応じて電源電圧を選択的に与えるようにしたことにより、不必要な定常電流を効果的に削減することができ、さらに、不要輻射の起こる箇所を減らすことができる。【００４５】
（ＰＬＡモジュールジェネレータの実施形態）
図１０は、本発明に係るＰＬＡモジュールジェネレータの構成を示す。本発明に係るＰＬＡモジュールジェネレータは、ファイル読み込み部１００、真理値表ソート部２００、下地レイアウト生成部３００、入力平面プログラミング部４００、及び出力平面プログラミング部５００を備えている。【００４６】
本実施形態に係るＰＬＡモジュールジェネレータの動作は次の通りである。まず、ファイル読み込み部１００は、真理値表に基づいて書かれた論理記述ファイル１５０を読み込む。真理値表ソート部２００は、読み込んだ真理値表のソートを行う。詳細については後述する。下地レイアウト生成部１１３は、読み込まれた論理記述ファイル１１２に基づいて下地レイアウトを生成する。さらに、論理記述ファイル１１２に基づいて、入力平面プログラミング部１１４は、入力平面におけるアレイトランジスタの配置を行う。続いて、出力平面プログラミング部１１５は、出力平面におけるアレイトランジスタの配置を行う。以上の処理フローによりＰＬＡが生成される。【００４７】
次に、図１１を参照しながら、真理値表ソート部２００による真理値表ソートの概要を説明する。図１１の左半分は、ソート前の真理値表及びこれに基づいた場合のＰＬＡ平面構成である。図１１の右半分は、ソート後の真理値表及び実際にレイアウトされるＰＬＡ平面構成である。【００４８】
まず、論理入れ替え前の真理値表１５０（図１１の左）から列ごとにプログラムトランジスタと非プログラム部分の構成比率を検出し、プログラム部分の比率が多い列と少ない列が隣り合うようペアにし、列ごとの入れ替えを行う。図１１の例では、出力平面２０におけるデータ線ｆ２及びｆ３が入れ替えられ、図１１の右の真理値表１５０が得られる。【００４９】
以上のように本実施形態に係るＰＬＡモジュールジェネレータによると、プログラム部分の比率が多い列と少ない列とが隣り合うように  列ごとの入れ替えを行うことにより、隣り合う列同士が同時にスイッチングする確率を少しでも下げ、隣同士の列で発生する同一方向への電流の変化を少なくしている。すなわち、磁力線の重畳を減らすことになるため、不要輻射の拡大を防ぐことができる。また、モジュールジェネレータ中に真理値表ソート部２００を設けたことにより、レイアウト設計後に再配置する手戻りの発生がない。
【産業上の利用可能性】
【００５０】
本発明に係るプログラマブル・ロジック・アレイ及びプログラマブル・ロジック・アレイモジュールジェネレータは、高速性及び低ＥＭＩ特性（低消費電力性）を有することから、高クロック周波数のマイクロプロセッサの制御回路等として有用である。
【図１】
2007015479.tif 000002
【図２】
2007015479.tif 000003
【図３】
2007015479.tif 000004
【図４】
2007015479.tif 000005
【図５】
2007015479.tif 000006
【図６】
2007015479.tif 000007
【図７】
2007015479.tif 000008
【図８】
2007015479.tif 000009
【図９】
2007015479.tif 000010
【図１０】
2007015479.tif 000011
【図１１】
2007015479.tif 000012
【手続補正書】
【提出日】平成20年1月22日(2008.1.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のデータ線及び当該複数のデータ線への信号入力に応じて電圧レベルが変化する複数の積項線を有する入力平面と、前記入力平面における複数の積項線の電圧レベル変化に応じて電圧レベルが変化する複数の積項線及び当該複数の積項線の電圧レベルに応じた信号出力をする複数のデータ線を有する出力平面とを備えたプログラマブル・ロジック・アレイであって、
前記入力平面及び出力平面の少なくとも一方における前記複数のデータ線の少なくとも一つの両端にデータ端子を備えた
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項２】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面は、前記入力平面における前記複数の積項線のプリチャージを行うプリチャージ回路を有するものであり、
前記プリチャージ回路は、前記複数の積項線の長さ方向の中間位置に設けられている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項３】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記出力平面は、前記出力平面における前記複数のデータ線のプリチャージを行うプリチャージ回路を有するものであり、
前記プリチャージ回路は、前記複数のデータ線の長さ方向の中間位置に設けられている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項４】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面は、前記入力平面における前記複数のデータ線の少なくとも一つについて、当該データ線に入力される信号の反転及び非反転を生成するバッファ回路を備え、
前記データ線は、前記生成された反転信号及び非反転信号を伝達する対線である
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項５】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面及び出力平面の少なくとも一方における前記複数のデータ線のそれぞれは、隣接するデータ線とは異なる配線層に設けられている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項６】
請求項５に記載のプログラマブル・ロジック・アレイにおいて、
前記複数のデータ線の少なくとも一つは、拡散層配線である
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項７】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
与えられた信号に応じて遷移する状態を記憶するとともに、記憶内容が変化したとき、イベントを発するイベント発生記憶回路と、
前記イベント発生記憶回路からイベントを受けたとき、前記イベント発生記憶回路の記憶内容を評価して評価結果を出力するイベント駆動インタフェースとを備え、
前記イベント発生記憶回路は、前記入力平面に入力される信号を受けるものであり、
前記イベント駆動インタフェースは、前記評価結果を、前記入力平面における前記複数のデータ線に与えるものである
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項８】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
与えられた信号に応じて遷移する状態を記憶するとともに、記憶内容が変化したとき、イベントを発するイベント発生記憶回路と、
前記イベント発生記憶回路からイベントを受けたとき、前記イベント発生記憶回路の記憶内容を評価して評価結果を出力するイベント駆動インタフェースとを備え、
前記イベント発生記憶回路は、前記入力平面における前記複数の積項線から出力された信号を受けるものであり、
前記イベント駆動インタフェースは、前記評価結果を、前記出力平面における前記複数の積項線に与えるものである
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項９】
請求項８に記載のプログラマブル・ロジック・アレイにおいて、
前記入力平面及びイベント発生記憶回路を複数備え、
前記複数のイベント発生記憶回路のそれぞれは、前記複数の入力平面のそれぞれにおける前記複数の積項線から出力された信号を受けるものであり、
前記イベント駆動インタフェースは、前記複数のイベント発生記憶回路のいずれかからイベントを受けたとき、前記複数のイベント発生記憶回路の記憶内容を評価して評価結果を前記出力平面における前記複数の積項線に与えるものである
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項１０】
請求項７及び８のいずれか一つに記載のプログラマブル・ロジック・アレイにおいて、
前記イベント駆動インタフェースは、
前記イベントを遅延させた信号に基づいて、当該イベント駆動インタフェースにおける所定のノードを与えられた電圧でプリチャージするプリチャージ回路と、
前記イベント出力記憶回路の記憶内容が第１の値から第２の値に変化したときに発せられたイベントが活性状態にあるとき、前記プリチャージ回路に第１の電圧を与える第１の電圧供給回路と、
前記イベント出力記憶回路の記憶内容が前記第２の値から前記第１の値に変化したときに発せられたイベントが活性状態にあるとき、前記プリチャージ回路に、前記第１の電圧よりも低い第２の電圧を与える第２の電圧供給回路とを有する
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項１１】
請求項１に記載のプログラマブル・ロジック・アレイにおいて、
当該プログラマブル・ロジック・アレイを構成するＭＯＳデバイスは、ＳＯＩウェハ上に形成されている
ことを特徴とするプログラマブル・ロジック・アレイ。
【請求項１２】
プログラマブル・ロジック・アレイに係る論理記述ファイルを読み込むファイル読み込み部と、
前記論理記述ファイルによって記述されたプログラマブル・ロジック・アレイの入力平面及び出力平面の少なくとも一方における複数のデータ線について、相対的に多くのトランジスタが形成されるデータ線と相対的に少ないトランジスタが形成されるデータ線とが隣接するように、データ線の入れ替えを行う真理値表ソート部と、
前記データ線入れ替え後の論理記述ファイルに基づいて、下地レイアウトを生成する下地レイアウト生成部と、
前記データ線入れ替え後の論理記述ファイルに基づいて、入力平面のアレイ配置を行う入力平面プログラミング部と、
前記データ線入れ替え後の論理記述ファイルに基づいて、出力平面のアレイ配置を行う出力平面プログラミング部とを備えた
ことを特徴とするプログラマブル・ロジック・アレイモジュールジェネレータ。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラマブル・ロジック・アレイ及びプログラマブル・ロジック・アレイモジュールジェネレータに関し、特に不要輻射（ＥＭＩ）を軽減するプログラマブル・ロジック・アレイに関するものである。
【背景技術】
【０００２】
従来のプログラマブル・ロジック・アレイ（以下、“ＰＬＡ”と略記することがある）として、例えば、ＣＭＯＳで構成されたものやダイナミック回路で構成されたものが公知である（例えば、非特許文献１参照）。また、ＰＬＡの構成に関して、チップ面積を小さくし、かつ、歩留まりを向上させる技術が公知である（例えば、特許文献１参照）。
【特許文献１】特願昭５９−２３８９２１号明細書
【非特許文献１】富沢孝、松山泰男、「CMOS  VLSI設計の原理」、丸善(株)、P326〜P335
【発明の開示】
【発明が解決しようとする課題】
【０００３】
近年、システムＬＳＩの高速化に伴い、ＥＭＩ（Electro Magnetic Interference）が問題視されるようになってきている。しかしながら、従来のダイナミックＰＬＡの構成では、データの出力のタイミングが同じであり、また、入出力端子が一方向に揃えられて配置されているため、ピーク電流の発生箇所が集中し、さらに電流の向きが揃ってしまうことから、発生する磁界が重畳してしまい、周辺の機能ブロックやチップに対して大きな不要輻射（ＥＭＩ）を発生していた。また、ＥＭＩの影響はチップが出来上がってから判明することが多く、そのたびにマスク修正していたのでは莫大な開発コストと工数がかかってしまう。
【０００４】
さらに、入力端子及び出力端子が同一方向に偏る場合には、前後の機能ブロックとの間の配線レイアウトに余分なオーバーヘッドを生じる可能性がある。
【０００５】
また、従来のＰＬＡではその構成上、電源が投入された状態では定常電流が流れる。例えば、入力平面又は出力平面においてアレイトランジスタが導通状態のとき、電源から当該トランジスタを介してグランドに電流が流れ続ける。したがって、電源が投入された状態にあって、使用されていない状態で有効な出力を取り出そうとしない状態（以下、「未使用状態」ということがある）にあっても、定常電流は流れることになる。このような未使用状態での定常電流は無駄な電流であり、消費電力の増大をもたらすことになる。また、このような定常電流は、ＰＬＡの規模が大型化するにつれて、さらには平面内に存在するプログラムを行うトランジスタの数が増加するに伴って多くなるため、未使用状態での消費電力の増大は顕著な問題となってくる。同時に、ＰＬＡの未使用状態での時間が長い場合であっても、消費電力の増大を招くことになる。
【課題を解決するための手段】
【０００６】
上記課題を解決するために本発明が講じた手段は、複数のデータ線及び当該複数のデータ線への信号入力に応じて電圧レベルが変化する複数の積項線を有する入力平面と、前記入力平面における複数の積項線の電圧レベル変化に応じて電圧レベルが変化する複数の積項線及び当該複数の積項線の電圧レベルに応じた信号出力をする複数のデータ線を有する出力平面とを備えたプログラマブル・ロジック・アレイとして、前記入力平面及び出力平面の少なくとも一方における前記複数のデータ線の少なくとも一つの両端にデータ端子を備えたものとする。
【０００７】
また、本発明が講じた手段は、プログラマブル・ロジック・アレイモジュールジェネレータとして、プログラマブル・ロジック・アレイに係る論理記述ファイルを読み込むファイル読み込み部と、前記論理記述ファイルによって記述されたプログラマブル・ロジック・アレイの入力平面及び出力平面の少なくとも一方における複数のデータ線について、相対的に多くのトランジスタが形成されるデータ線と相対的に少ないトランジスタが形成されるデータ線とが隣接するように、データ線の入れ替えを行う真理値表ソート部と、前記データ線入れ替え後の論理記述ファイルに基づいて、下地レイアウトを生成する下地レイアウト生成部と、前記データ線入れ替え後の論理記述ファイルに基づいて、入力平面のアレイ配置を行う入力平面プログラミング部と、前記データ線入れ替え後の論理記述ファイルに基づいて、出力平面のアレイ配置を行う出力平面プログラミング部とを備えたものとする。
【発明の効果】
【０００８】
本発明に係るプログラマブル・ロジック・アレイによると、ディスチャージ時にピーク電流の発生する回路部が分散され、磁界の重畳が少なくなる。また、本発明に係るプログラマブル・ロジック・アレイモジュールジェネレータによると、信号変化の起こり易い項と起こりにくい項の順番が並び替えられ、マスクレイアウト前にピーク電流の発生する回路位置が分散される。これにより、磁界の重畳が比較的少ないプログラマブル・ロジック・アレイがレイアウトされる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図２】図２は、第２の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図３】図３は、第３の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図４】図４は、第４の実施形態に係るプログラマブル・ロジック・アレイにおけるデータ線の配線断面図である。
【図５】図５は、第５の実施形態に係るプログラマブル・ロジック・アレイにおけるデータ線の配線断面図である。
【図６】図６は、第６の実施形態に係るプログラマブル・ロジック・アレイにおけるイベント駆動インタフェース部分の構成図である。
【図７】図７は、図６に示したイベント発生記憶回路の真理値表である。
【図８】図８は、図６に示したイベント駆動インタフェースのタイミングチャートである。
【図９】図９は、第７の実施形態に係るプログラマブル・ロジック・アレイの構成図である。
【図１０】図１０は、本発明に係るプログラマブル・ロジック・アレイモジュールジェネレータの構成図である。
【図１１】図１１は、真理値表ソートの概要の説明図である。
【符号の説明】
【００１０】
１０１，２０１  データ端子
１０５，２０５  Ｐｃｈトランジスタ（プリチャージ回路）
１０２Ａ  バッファ回路
３１  イベント発生記憶回路
３２  イベント駆動インタフェース
３２２  Ｐｃｈトランジスタ（第２の電圧供給回路）
３２３  Ｐｃｈトランジスタ（第１の電圧供給回路）
３２６  Ｐｃｈトランジスタ（プリチャージ回路）
１００  ファイル読み込み部
２００  真理値表ソート部
３００  下地レイアウト生成部
４００  入力平面プログラミング部
５００  出力平面プログラミング部
【発明を実施するための最良の形態】
【００１１】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００１２】
（第１の実施形態）
図１は、本発明の第１の実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、ＡＮＤアレイとして構成された入力平面１０、ＯＲアレイとして構成された出力平面２０、インタフェースバッファ３０を備えている。入力平面１０において、１０１は入力端子、１０２は入力バッファ、１０３はデータ線、１０４は積項線、１０５はプリチャージ回路としてのＰｃｈトランジスタ、１０６はアレイトランジスタとしてのＮｃｈトランジスタである。一方、出力平面２０において、２０１は出力端子、２０２は出力バッファ、２０３はデータ線、２０４は積項線、２０５はプリチャージ回路としてのＰｃｈトランジスタ、２０６はアレイトランジスタとしてのＮｃｈトランジスタである。
【００１３】
各平面内にプログラムされる演算内容として例えばＡＮＤやＯＲなどがあるが、入力平面１０がＡＮＤ平面、出力平面２０がＯＲ平面と一意に決まっているわけではなく、この逆である場合やＮＯＲ−ＮＯＲで構成されることもある。
【００１４】
入力平面１０における複数のデータ線１０３のうち少なくとも１本は入力平面１０の双方向から入力可能なように構成され、この１本のデータ線の両端には入力端子１０１が設けられている。データは複数の入力端子１０１に入力され、入力平面１０及び出力平面２０のそれぞれにプログラムされた論理演算がなされ、その演算結果は複数の出力端子２０１から出力される。
【００１５】
本実施形態に係るＰＬＡはプリチャージ型であることから、その動作の概略はクロックＣＬＫに同期してプリチャージと評価とを繰り返し行う。１回目のクロックサイクルで入力平面１０において論理演算を行い、２回目のクロックサイクルで積項線１０４を通じて出力平面２０にデータを伝播し、３回目のクロックサイクルで出力平面２０において論理演算を行い、データを出力する。
【００１６】
図１に示したＰＬＡの動作は次の通りである。まず、入力平面１０において、クロックＣＬＫがＬｏレベルのとき、Ｐｃｈトランジスタ１０５によって、入力平面１０における複数の積項線１０４に電源電圧ＶＤＤが与えられ、積項線１０４はＨｉレベルとなる。ここで、入力平面１０における複数の入力端子１０１のいずれかにＬｏレベルの信号が与えられたとすると、その入力端子１０１から信号を受けたデータ線１０３はＨｉレベルとなり、そのデータ線１０３にゲート端子が接続されたＮｃｈトランジスタ１０６は導通状態となる。そして、Ｎｃｈトランジスタ１０６が導通状態のときにクロックＣＬＫがＨｉレベルになると、Ｎｃｈトランジスタ１０７を介して積項線１０４がグランドに接続され、積項線１０４はＬｏレベルになる。
【００１７】
次に、インタフェースバッファ３０において、クロックＣＬＫがＬｏレベルのとき、Ｐｃｈトランジスタ３０１及びバッファ３０２によって、出力平面２０における複数の積項線２０４はＬｏレベルとなる。積項線１０４がＬｏレベルのとき、その積項線１０４にゲート端子が接続されたＮｃｈトランジスタ３０３は非導通状態になる。その後、クロックＣＬＫがＨｉレベルとなりＮｃｈトランジスタ３０４が導通状態になっても、Ｎｃｈトランジスタ３０３は非導通状態のため、インタフェースバッファ３０の出力はＬｏレベルに保たれ、出力平面２０における積項線２０４はＬｏレベルのままである。
【００１８】
次に、出力平面２０において、クロックＣＬＫがＬｏレベルのとき、Ｐｃｈトランジスタ２０５によって、出力平面２０における複数のデータ線２０３に電源電圧ＶＤＤが与えられ、データ線２０３はＨｉレベルとなる。積項線２０４にゲート端子が接続されたＮｃｈトランジスタ２０６は、その積項線２０４がＬｏレベルのとき非導通状態となる。Ｎｃｈトランジスタ２０６のドレイン端子は、複数のデータ線２０３のいずれかに接続されており、いずれかのデータ線２０３は、その接続されたＮｃｈトランジスタ２０６がいずれも非導通状態であるなら、クロックＣＬＫがＬｏレベルとなってもそのデータ線２０３はＨｉレベルを維持する。その結果、出力バッファ２０２によってレベルが反転され、出力端子２０１からＬｏレベルの信号が出力される。
【００１９】
一方、Ｈｉレベルの信号が入力平面１０に与えられると、ＡＮＤアレイ及びＯＲアレイでの動作は上述した動作と逆となる。すなわち、入力平面１０における積項線１０４はＨｉレベルに保持され、インタフェースバッファ３０の出力はＨｉレベルに維持され、出力平面２０におけるＮｃｈトランジスタ２０６は導通状態となりグランドに接続されるため、出力端子２０１からはＨｉレベルの信号が出力される。
【００２０】
本実施形態に係るＰＬＡにおいて、入力平面１０への信号入力は任意の入力端子１０１から行うことができる。そして、信号入力が局所的に集中しないように、特に、両端に入力端子１０１を有するデータ線１０３への信号入力方向を分散することによって、入力バッファ１０２におけるピーク電流の発生位置を分散させることができる。また、入力端子１０１を入力平面１０の双方向に設ける構成にすれば、前後の機能ブロックとの信号配線レイアウトにおいて最短距離での配線を可能とし、配線自由度が上がる。
【００２１】
なお、出力平面２０におけるデータ線２０３についても、その両端に出力端子２０１を設けるようにするとよい。
【００２２】
（第２の実施形態）
第１の実施形態に係るＰＬＡにおいて、例えばＮｃｈトランジスタ１０６のいくつかが非導通状態、その他のＮｃｈトランジスタ１０６が導通状態から非導通状態に遷移する場合を考える。この場合、基本的には、クロックＣＬＫがＬｏレベルの期間（プリチャージ期間）に積項線１０４及びＮｃｈトランジスタ１０６のドレイン（又はソース）容量はすべてＨｉレベル（電源電圧）に充電される。そして、クロックＣＬＫがＨｉレベルの期間（ディスチャージ期間）に積項線１０４からＨｉレベルの信号が出力されるはずである。しかしながら、プリチャージ期間と入力信号のレベル遷移期間とが重なっている場合、例えば、Ｐｃｈトランジスタ１０５近傍のＮｃｈトランジスタ１０６がプリチャージ期間終了間際の最後に導通状態に遷移した場合、その残りのプリチャージ期間ではＮｃｈトランジスタ１０６のドレイン（又はソース）容量のすべてについては充電が間に合わず、そのため、いわゆるチャージシェアを起こして積項線１０４に保持されているデータがＨｉレベルからＬｏレベル（グランド電圧）に変化してしまうことが起こり得る。この現象により、本来Ｈｉレベルとなるべき信号がＬｏレベルとなり、ＰＬＡの誤動作の要因となる。
【００２３】
上記のような現象を回避するために、積項線１０４の寄生容量、例えばＰｃｈトランジスタ１０５のドレイン（又はソース）容量を大きくすることで、チャージシェアが起こっても積項線１０４はＨｉレベルを保持し続ける方法が考えられる。しかし、これは、読み出し（ディスチャージ）時に放電しなければならない容量が大きくなることを意味し、読み出し速度を低下させることになる。また、補助的なプリチャージトランジスタを付加することも考えられるが、回路面積を増やすことになるため好ましくない。一方、必要なプリチャージを十分に行うことができるように、アドレスの遷移（入力信号のレベル遷移）をプリチャージ期間の終了よりも十分早い時期に終了させる方法も考えられるが、このことは、アドレスのセットアップタイムに負担をかけ、演算等に使える時間を無駄にしなければならないという問題がある。
【００２４】
そこで、本発明に係る第２の実施形態では、上記の問題点を解決するＰＬＡを提供する。図２は、本実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、図１のＰＬＡにおける入力平面１０のプリチャージ回路（Ｐｃｈトランジスタ１０５）を積項線１０４の長さ方向の中間位置に設けたものである。これ以外の点については第１の実施形態と同様であるため説明を省略する。
【００２５】
このように、プリチャージ回路を積項線１０４の中間位置に設けたことにより、積項線１０４の長さに対して必要なプリチャージ時間を短縮し、かつ均等なプリチャージ電位レベルが供給される。これにより、チャージシェアの発生を軽減することができる。
【００２６】
なお、出力平面２０におけるプリチャージ回路（Ｐｃｈトランジスタ２０５）についても、出力平面２０におけるデータ線２０３の長さ方向の中間位置に設けるようにするとよい。
【００２７】
（第３の実施形態）
図３は、本発明の第３の実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、図１のＰＬＡにおける入力バッファ１０２をバッファ回路１０２Ａに置き換え、データ線１０３を対線で構成したものである。これ以外の点については第１の実施形態と同様であるため説明を省略する。
【００２８】
バッファ回路１０２Ａは、入力端子１０１に入力された一つの信号の反転及び非反転を生成し、隣り合うデータ線１０３のペアに差動信号を与える。これにより、バッファ回路１０２において信号伝播時の隣り合う入力バッファ（ここではインバータ）から発生する磁力線の発生向きを逆にし、不要輻射が軽減される。
【００２９】
（第４の実施形態）
図４は、本発明の第４の実施形態に係るＰＬＡにおけるデータ線の配線断面を示す。図４において、４１はＮ層配線、４２はＮ＋１層配線、４３は層間絶縁膜である。ここでＮは自然数であり、Ｎ層及びＮ＋１層はいずれも金属配線層である。金属配線層の周辺は層間絶縁膜４３で囲まれる。データ線は、入力平面及び出力平面のいずれのものであってもよい。
【００３０】
本実施形態によると、隣り合うデータ線を上下異なる層で構成したことにより、配線間にできる容量が低減されるとともに、発生する磁力線の重畳が軽減される。
【００３１】
（第５の実施形態）
図５は、本発明の第５の実施形態に係るＰＬＡにおけるデータ線の配線断面を示す。図５において、５１は拡散層配線、５２は金属配線、５３は層間絶縁膜、５４はシリコン基板である。データ線は、入力平面及び出力平面のいずれのものであってもよい。
【００３２】
本実施形態によると、隣り合う信号配線を上下異なる層で構成し、かつ拡散層で構成したことにより、配線間にできる容量が低減されるとともに、配線抵抗が異なることから出力バッファに伝播するまでの時間に差を持たせ、隣り合う出力バッファで発生する磁力線の重畳を抑えることができる。
【００３３】
（第６の実施形態）
図６は、本発明の第６の実施形態に係るＰＬＡにおけるイベント駆動インタフェース部分の構成を示す。本実施形態に係るＰＬＡは、入力平面１０の信号入力部分に、イベント発生記憶回路３１及びイベント駆動インタフェース３２を備えている。
【００３４】
イベント発生記憶回路３１は、図７の真理値表に示したように、与えられた信号ＩＮに応じて遷移する状態を記憶するとともに、記憶内容が変化したとき、クロックＣＬＫに同期したイベントＥＶを発する。なお、イベント駆動回路については、例えば、特願２００４−２２９８４２に具体例が開示されている。
【００３５】
イベント駆動インタフェース３２は、イベント発生記憶回路３１からのイベントＥＶが活性化したとき、イベント発生記憶回路３１の記憶内容を評価して、評価結果を入力平面１０におけるデータ線１０３に与える。また、イベント駆動インタフェース３２は、イベントＥＶに応じて複数の電源電圧を選択できるようになっている。
【００３６】
イベント駆動インタフェース３２の動作について図８のタイミングチャートを参照しながら説明する。信号ＣＬＫと信号Ｄａｔａの変化エッジに対応してイベントＥＶが活性化（ハイアクティブ）する。ここで、信号Ｄａｔａが立ち上がり変化をしたとき、ノードＡ１が活性化（ローアクティブ）し、電源電圧ＶＤＤＨが接続される。一方、信号Ｄａｔａが立ち下がり変化をしたとき、ノードＡ２が活性化（ローアクティブ）し、電源電圧ＶＤＤＬが接続される。なお、ＶＤＤＨ＞ＶＤＤＬの関係にあるとする。
【００３７】
イベントＥＶの反転信号の立ち下りエッジからイベントＥＶを遅延させた信号の立ち上がりエッジまでの期間でプリチャージが行われ、イベントＥＶを遅延させた信号のＨｉレベル期間で評価が行われる。ここで、イベント駆動インタフェース３２はダイナミック論理で構成されているため、イベント発生記憶回路３１の出力信号ＤａｔａがＬｏレベルからＨｉレベルに遷移する場合に、評価トランジスタとしてのＮｃｈトランジスタ３２１が導通状態となり、次段以降に論理を伝播することとなる。
【００３８】
この動作の中で、プリチャージ時のみ２種類の電源電圧のうち高い方の電源電圧ＶＤＤＨを接続し、評価期間以後は低い方の電源電圧ＶＤＤＬに切り替えるようにする。逆に、信号ＤａｔａがＨｉレベルからＬｏレベルに遷移する場合にはプリチャージ状態を保った論理を伝播することになる。この動作の中ではプリチャージレベルを認識し、次段のインバータが反転しないスレッショルド電圧以上の低い電源電圧ＶＤＤＬにしておく。
【００３９】
図６に戻り、イベント駆動インタフェース３２の回路構成を説明する。イベント駆動インタフェース３２において、イベントＥＶと信号Ｄａｔａの反転信号とをＮＡＮＤ接続し、低い方の電源電圧ＶＤＤＬをソースとする電圧供給回路としてのＰｃｈトランジスタ３２２のゲートに入力する。一方、イベントＥＶと信号ＤａｔａとをＮＡＮＤ接続し、高い方の電源電圧ＶＤＤＨをソースとする電圧供給回路としてのＰｃｈトランジスタ３２３のゲートに入力する。これにより、信号Ｄａｔａのレベル遷移の方向によってプリチャージ時の電源電圧を選択する。また、プリチャージパルスは、イベントＥＶと信号ＤａｔａとをＮＡＮＤしたものをインバータ３２４で反転し、バッファ回路３２５で遅延させた信号を受けるプリチャージ回路としてのＰｃｈトランジスタ３２６で生成する。さらに、ダイナミックノードのデータ誤反転を防止するキーパー回路３２７の電源電圧もイベントＥＶに応じて、ＶＤＤＨとＶＤＤＬとを選択的に与える。
【００４０】
以上のように本実施形態によると、イベント駆動インタフェースにより回路の活性化率が下がり、さらに、２電源電圧を選択的にソース電源とし、パルスプリチャージを行うイベント駆動インタフェースをＰＬＡのインタフェースバッファとしたことにより、定常電流が低減される。例えば、ＶＤＤＨ＝１．２Ｖ、ＶＤＤＬ＝０．９Ｖとすると、電力Ｐ＝ｆ・Ｃ・Ｖ２で与えられることから、ｆ及びＣを一定とすると約４０％程度の電力が削減されることになる。
【００４１】
なお、上記のイベント駆動インタフェースは、すなわち、図１等に示したインタフェースバッファ３０に代えて、出力平面の前に設けてもよい。
【００４２】
（第７の実施形態）
図９は、本発明の第７の実施形態に係るＰＬＡの構成を示す。本実施形態に係るＰＬＡは、イベント駆動インタフェース３２を複数のイベント発生記憶回路３１から発せられたイベントＥＶに基づいて動作するようにしたものである。
【００４３】
複数の入力平面１０のそれぞれに対応するイベント発生記憶回路３１は、当該対応する入力平面１０における積項線１０４を通じて与えられる信号を受け、そのいずれかが変化したとき、イベントＥＶを発する。そして、各イベント発生記憶回路３１からのイベントＥＶはＯＲされて、イベント駆動インタフェース３２に与えられる。また、イベント駆動インタフェース３２には、各イベント発生記憶回路３１の記憶内容としての信号Ｄａｔａが与えられる。
【００４４】
以上のように本実施形態によると、入力平面１０を複数に分割し、入力信号の変化時にその遷移方向に応じて電源電圧を選択的に与えるようにしたことにより、不必要な定常電流を効果的に削減することができ、さらに、不要輻射の起こる箇所を減らすことができる。
【００４５】
（ＰＬＡモジュールジェネレータの実施形態）
図１０は、本発明に係るＰＬＡモジュールジェネレータの構成を示す。本発明に係るＰＬＡモジュールジェネレータは、ファイル読み込み部１００、真理値表ソート部２００、下地レイアウト生成部３００、入力平面プログラミング部４００、及び出力平面プログラミング部５００を備えている。
【００４６】
本実施形態に係るＰＬＡモジュールジェネレータの動作は次の通りである。まず、ファイル読み込み部１００は、真理値表に基づいて書かれた論理記述ファイル１５０を読み込む。真理値表ソート部２００は、読み込んだ真理値表のソートを行う。詳細については後述する。下地レイアウト生成部３００は、読み込まれた論理記述ファイル１５０に基づいて下地レイアウトを生成する。さらに、論理記述ファイル１５０に基づいて、入力平面プログラミング部４００は、入力平面におけるアレイトランジスタの配置を行う。続いて、出力平面プログラミング部５００は、出力平面におけるアレイトランジスタの配置を行う。以上の処理フローによりＰＬＡが生成される。
【００４７】
次に、図１１を参照しながら、真理値表ソート部２００による真理値表ソートの概要を説明する。図１１の左半分は、ソート前の真理値表及びこれに基づいた場合のＰＬＡ平面構成である。図１１の右半分は、ソート後の真理値表及び実際にレイアウトされるＰＬＡ平面構成である。
【００４８】
まず、論理入れ替え前の真理値表１５０（図１１の左）から列ごとにプログラムトランジスタと非プログラム部分の構成比率を検出し、プログラム部分の比率が多い列と少ない列が隣り合うようペアにし、列ごとの入れ替えを行う。図１１の例では、出力平面２０におけるデータ線ｆ２及びｆ３が入れ替えられ、図１１の右の真理値表１５０が得られる。
【００４９】
以上のように本実施形態に係るＰＬＡモジュールジェネレータによると、プログラム部分の比率が多い列と少ない列とが隣り合うように  列ごとの入れ替えを行うことにより、隣り合う列同士が同時にスイッチングする確率を少しでも下げ、隣同士の列で発生する同一方向への電流の変化を少なくしている。すなわち、磁力線の重畳を減らすことになるため、不要輻射の拡大を防ぐことができる。また、モジュールジェネレータ中に真理値表ソート部２００を設けたことにより、レイアウト設計後に再配置する手戻りの発生がない。
【産業上の利用可能性】
【００５０】
本発明に係るプログラマブル・ロジック・アレイ及びプログラマブル・ロジック・アレイモジュールジェネレータは、高速性及び低ＥＭＩ特性（低消費電力性）を有することから、高クロック周波数のマイクロプロセッサの制御回路等として有用である。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2007015479.tif 000013
【図２】
2007015479.tif 000014
【図３】
2007015479.tif 000015
【図４】
2007015479.tif 000016
【図５】
2007015479.tif 000017
【図６】
2007015479.tif 000018
【図７】
2007015479.tif 000019
【図８】
2007015479.tif 000020
【図９】
2007015479.tif 000021
【図１０】
2007015479.tif 000022
【図１１】
2007015479.tif 000023
【国際調査報告】
2007015479.tif 000024
2007015479.tif 000025