(57)【特許請求の範囲】
【請求項１】
複数のセルからなる論理回路であって、各セルは論理機能部とアクセス部とから成り、上記論理機能部を種々の機能要素として構成した１個以上の上記セルにより構成される機能ブロックがアクセス部を介して他の機能ブロックと通信を行う論理回路の機能ブロック間通信方法において、
送信元となる上記機能ブロックは、自機能ブロックに含まれる外部出力端子となるセルの上記アクセス部から、送信先となる上記機能ブロックに含まれる外部入力端子となるセルのアクセス部を指定するアドレス情報とマスク情報とを併せた情報を、複数の部分に分解して順次、隣接するセルに出力し、
上記アドレス情報とマスク情報とを併せた情報を受信した隣接セルのアクセス部は、上記受信した分解されたアドレス情報の部分と、自セルのアドレス情報のうちの上記受信したマスク情報で指定される部分とを比較し、該比較結果に応じて、隣接したセルの中から上記受信したアドレス情報とマスク情報とを併せた情報を出力するセルを選択することで、機能ブロック間の通信経路を決定することを特徴とする論理回路の機能ブロック間通信方法。
【請求項２】
請求項１に記載の論理回路の機能ブロック間通信方法において、
上記アドレス情報とマスク情報とを併せた情報を受信したセルは、自セルのアドレス情報のうちの上記受信したマスク情報で指定される部分と、上記受信した分解されたアドレス情報の部分とを比較し、それぞれが一致した場合、上記受信したアドレス情報とマスク情報とを併せた情報を更新し、上記選択した隣接セルに出力することを特徴とする論理回路の機能ブロック間通信方法。
【請求項３】
請求項１もしくは請求項２のいずれかに記載の論理回路の機能ブロック間通信方法において、
上記選択した隣接セルに出力する上記アドレス情報の先頭部分が、上記選択した隣接セルで自アドレスと比較する部分からなるように、上記アドレス情報のうちの先行部分を破棄することを特徴とする論理回路の機能ブロック間通信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の機能ブロックの相互通信によって動作する論埋回路に係わり、特に、機能ブロック間の結線を効率的に行なうのに好適な論理回路の機能ブロック間通信方法に関するものである。
【０００２】
【従来の技術】
セルを用いて半導体装置の論理回路を構成する技術は、例えば、電子情報通信学会編「電子情報通信ハンドブック」（１９８８年、オーム社発行）の第２８５〜２８６頁や第８８１〜８８５頁に記載のように、論理アレーやフルカスタム論理集積回路などに適用されている。
複数のセルは、目的の機能に対応して組み合わされて機能ブロックを構成し、各機能ブロックを適宜配置して結線し、相互に通信させることにより、所望の機能の論理回路が構成される。
【０００３】
従来の各機能ブロック間の通信では、図２２に示すように、相互に信号通信を行う全ての機能ブロック２２ａ〜２２ｄ（図中、「機能ブロック１〜４」と記載）の間に、物理的な信号線（図中、「信号線１〜４」と記載）を静的に配置し、この信号線を介して信号通信を行なっている。
この場合、図２２（ｂ）に示すように、複数の信号線が電気的に交差すると、正常な信号通信が行なえなくなる。従って、図２２（ａ）のように、各機能ブロック２２ａ〜２２ｄの配置を変更することにより、信号線の交差を解消する。
【０００４】
しかし、このように、物理的な信号線を静的に配置して、各機能ブロック２２ａ〜２２ｄ間での信号通信を行なう技術では、図２３に示すように、どのように各機能ブロック２３ａ〜２３ｅを配置しても、信号線の交差が解消できないような機能ブロック間接続も生じうる。
【０００５】
このような問題に対処する従来技術として、電気的に絶縁された複数の配線面を物理的に用意し、信号線を適宜異なる配線面を用いて配置することにより、信号線の電気的交差を解消する技術がある。
しかし、このような従来技術を用いる場合、以下のような問題がある。
【０００６】
まず、信号伝達が物理的な信号線に依ることにより、三つの問題が生じる。
―つ目は、物理的に用意された有限個の配線面で信号交差を解消するので、機能ブロックの配置計画の自由度が制限されてしまうことである。
二つ目は、信号交差を解消するような機能ブロック配置の探索処埋、すなわち、機能ブロック配置配線処理が必要であることである。
そして、三つ目は、信号線が特定の機能ブロックの組に占有されるため、物理的に有限である貴重な配線リソースを有効に活用できないことである。
【０００７】
その他、信号線の配置が物理的に固定されることにより、機能ブロックの物理的配置が、動作時に固定されるという問題が生じる。この問題は、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒｅｙ）などの再構成可能半導体装置を有効に利用するために、装置の動作中に機能ブロックの配置を移動したり、機能ブロックを装置の動作に応じて新たに生成あるいは既存の機能ブロックを消去するといった応用の可能性を、大きく制限する。
【０００８】
【発明が解決しようとする課題】
解決しようとする問題点は、従来の技術では、機能ブロックの配置によらず任意の機能ブロック間で信号伝達ができない点と、機能ブロック配置配線処理が必要な点、配線リソースを特定の機能ブロックの組が占有してしまう点、および、機能ブロックの配置が物理的信号線に束縛されてしまう点である。
本発明の目的は、これら従来技術の課題を解決し、機能ブロックの配置計画の自由度を損なわず、かつ、機能ブロック配置配線処理を不要とし、また、信号伝達経路を動作中に動的に形成して配線リソースを有効活用でき、さらに、動作時に、ある機能ブロックが移動、生成、消去などを行なう場合でも容易に対応でき、効率的な機能ブロック間通信が可能な論理回路の機能ブロック間通信方法を提供することである。
【０００９】
【課題を解決するための手段】
上記目的を達成するため、本発明の論理回路の機能ブロック間通信方法は、（１）複数のセルからなる論理回路であって、各セルは論理機能部とアクセス部とから成り、上記論理機能部を種々の機能要素として構成した１個以上の上記セルにより構成される機能ブロックがアクセス部を介して他の機能ブロックと通信を行う論理回路の機能ブロック間通信方法において、送信元となる上記機能ブロックは、自機能ブロックに含まれる外部出力端子となるセルの上記アクセス部から、送信先となる上記機能ブロックに含まれる外部入力端子となるセルのアクセス部を指定するアドレス情報とマスク情報とを併せた情報を、複数の部分に分解して順次、隣接するセルに出力し、上記アドレス情報とマスク情報とを併せた情報を受信した隣接セルのアクセス部は、上記受信した分解されたアドレス情報の部分と、自セルのアドレス情報のうちの上記受信したマスク情報で指定される部分とを比較し、該比較結果に応じて、隣接したセルの中から上記受信したアドレス情報とマスク情報とを併せた情報を出力するセルを選択することで、機能ブロック間の通信経路を決定することを特徴としている。
また、（２）上記アドレス情報とマスク情報とを併せた情報を受信したセルは、自セルのアドレス情報のうちの上記受信したマスク情報で指定される部分と、上記受信した分解されたアドレス情報の部分とを比較し、それぞれが一致した場合、上記受信したアドレス情報とマスク情報とを併せた情報を更新し、上記選択した隣接セルに出力することも特徴としている。
また、（３）上記選択した隣接セルに出力する上記アドレス情報の先頭部分が、上記選択した隣接セルで自アドレスと比較する部分からなるように、上記アドレス情報のうちの先行部分を破棄することも特徴としている。
【００１０】
【発明の実施の形態】
以下、本発明の実施例を、図面により詳細に説明する。
図１は、本発明の論理回路の機能ブロック通信方法の処理手順例を示す状態遷移図であり、図２は、図１における機能ブロック通信処理手順を実行するセル間の接続構成例を示すブロック図であり、図３は、図２におけるセルを用いて構成された半導体装置の構成例を示すブロック図である。
図３において、１は半導体装置、２，３は本発明の論理回路セルを構成する論理機能部（図中、「論理セル」と記載）とアクセス部（図中、「アクセスセル」と記載）である。
【００１１】
このように、本例においては、半導体装置１は正方格子状に仕切られている。以降、仕切られた一つの単位を単位セルと呼ぶ。尚、ｍを２以上の自然数として、格子は一辺が２のｍ乗セルの正方格子であり、従って、単位セルの総数は４のｍ乗個である。
説明の便宣上、単位セルを構成する論理機能部２とアクセス部３は、上下二層に分離しているものとし、論埋機能部２を論理セル、アクセス部３をアクセスセルと呼ぶことにする。従って、半導体装置１は、上下二層からなり、以降、上位層を論理層、下位層をアクセス層と呼ぶ。
【００１２】
論理セルとアクセスセル、また、相互に隣り合う（隣接する）アクセスセルは、図２に示すように各信号線を介して相互に通信を行なう。
以下、図２を用いて、各セルの隣接関係を説明する。
本図２においては、論理セル２を含む各アクセスセル３〜７の隣接関係と、論理セル２と各アクセスセル３〜７が持つ信号線およびそれら信号線の接続関係を示している。尚、論理セル２間の接続信号線については、本例では、特に規定しない。
【００１３】
各アクセスセル３〜７は、上位の論理セル２（以降、「上位論理セル」と記載）、北隣のアクセスセル４（以降、「北隣アクセスセル」と記載）、東隣のアクセスセル５（以降、「東隣アクセスセル」と記載）、南隣のアクセスセル６（以隆、「南隣アクセスセル」と記載）、西隣のアクセスセル７（以隣、「西隣アクセスセル」と記載）の合計５個のセルと隣接関係にある。
【００１４】
そして、例えば、ｅｉＮ、ｄｉＮ、ｅｏＮ、ｄｏＮは、アクセスセル３が北隣アクセスセル４と接続される信号線であり、それぞれ、１ビット、（１＋ｌｏｇ２ｍ）ビット、１ビット、（１＋ｌｏｇ２ｍ）ビットの信号線幅を持つ。ここで、ｅｉＮとｄｉＮは共に北隣アクセスセル４からの入力信号線であり、ｅｏＮ、ｄｏＮは共に北隣アクセスセル４への出力信号線である。
【００１５】
上位論理セル２は、図３に示した論理層を構成するものであり、この論理層は、半導体装置の使用者が任意に定義する機能ブロックを、任意数個構成するための層であり、機能ブロック群を構成するための機構として、従来の再構成可能半導体素子と同様である。すなわち、機能ブロック群を構成する各論理セルは、適当なビット数の構成情報記憶素子を有し、この構成情報記憶素子の値によって、回路内配線要素、論理素子要素、フリップフロップ要素など、機能ブロックを構成するために必要な機能要素のいずれかと同等な動作を行なう。
【００１６】
但し、このような機能要素に加えて、各論理セルは、機能ブロックの入出力信号の一部を、下位のアクセスセルに接続する要素に構成し得る。
すなわち、半導体装置の使用者は、任意の単位セル内の論理セル２とアクセスセル３間の接続信号線群を、機能ブロックの入出力信号線群の一部となるように、論理層を構成する。そのために、各論理セル２は、下位に隣接するアクセスセル３との接続信号線として、ｅｉＤ、ｄｉＤ、ｅｏＤ、ｄｏＤの各信号線を持ち、これらの信号線が、機能ブロックの外部入出力端子となるように構成する。
【００１７】
それぞれの信号線幅は、ｅｉＤが１ビット、ｄｉＤが（１＋ｌｏｇ２ｍ）ビット、ｅｏＤが１ビット、ｄｏＤが（１＋ｌｏｇ２ｍ）ビットであり、ｅｉＤ、ｄｉＤは共に隣接アクセスセルからの入力信号線であり、また、ｅｏＤ、ｄｏＤは共にアクセスセル３への出力信号線である。
機能ブロックを構成する論理セルの内、この論理セル２のように下位のアクセスセル３との接続要素として構成された論理セルを、その機能ブロックの送受信口論理セルと呼ぶ。
【００１８】
次に、アクセスセル３〜７の構成を図４を用いてアクセスセル３を代表として説明する。
図４は、図２におけるアクセスセルの構成例を示すブロック図である。
アクセスセル３は、次の構成要素を持つ。
Ｂ、Ｆ、Ｌ、Ａは記憶素子であり、それぞれ２ビット、３ビット、ｌｏｇ２ｍビット、２ｍビットの大きさを持つ。
Ｍは、セル間の接続信号詳の全てを入出力とし、かつ、Ｂ、Ｆ、Ｌ、Ａの記憶素子の値を任意に読み書きする順序回路であり、その動作は、図１の状態遷移図で表される。
【００１９】
順序回路Ｍは、図１における状態０〜状態３までの４状態を持ち、各状態間の遷移動作として、遷移１から遷移１１までの１１遷移を持つ。
図１では、各遷移１〜遷移１１を表す矢印に、その遷移が生じる条件と、遷移に付随する動作を記入してある。
【００２０】
この順序回路Ｍの動作において、図５に示すテーブルが用いられる。
図５は、図４におけるアクセスセルが具備するテーブルの具体例を示す説明図である。
このテーブルを参照して、図４におけるアクセスセル３は、順序回路Ｍにより、通信先の隣接セルの選択を行う。
このような隣接セルの選択を含む、この順序回路Ｍの動作については、後ほど、実際の信号伝達の実行例で詳しく述べる。
【００２１】
次に、セルのアドレスに関して説明する。
図６は、図３に示す半導体装置における各セルのアドレスの設定構成例を示す説明図である。
４ｍ個の各単位セルは、ｌｏｇ２（４のｍ乗）ビット（＝２ｍビット）の固有の値によって、一意に識別される。この固有値を、単位セルのアドレスと呼ぶ。この単位セルのアドレスは、次のようにして定める。
【００２２】
４ｍ個の単位セルの領城は、本図６のように、縦横の各辺の中線によって、Ｄ（０、０）（図中、各「０」はＤの上付、下付である）、Ｄ（０、１）、Ｄ（０、２）、Ｄ（０、３）の４領域に分割できる。
この分割を、「探さ０の分割」と呼ぶ。また、図面の上方向を「北」、右方向を「東」、下方向を「南」、左方向を「西」として、各領域の位置関係を表す。
【００２３】
領域Ｄ（０、０）（北西）に含まれるセルの下位「１，０」ビットは「００」、領域Ｄ（０、１）（北東）に含まれるセルの下位「１，０」ビットは「０１」、領域Ｄ（０、２）（南西）に含まれるセルの下位「１，０」ビットは「１０」、領域Ｄ（０、３）（南東）に含まれるセルの下位「１，０」ビットは「１１」と定める。
【００２４】
０≦ｉ≦３の自然数ｉの各々について、領域Ｄ（０、ｉ）は、同様な４分割を施すことにより、Ｄ（ｉ、０，０）、Ｄ（ｉ、０，１）、Ｄ（ｉ、０，２）、Ｄ（ｉ、０，３）の４領域に分割できる。
この分割を「深さ１の分割」と呼ぶ。
【００２５】
こうしてできた１６個の領域Ｄ（ｉ、０，０）、Ｄ（ｉ、０，１）、Ｄ（ｉ、０，２）、Ｄ（ｉ、０，３）（０≦ｉ≦３）について、領域Ｄ（ｉ、０，０）（北西）に含まれる単位セルのアドレスの下位「３，２」ビットは「００」、また、領域Ｄ（ｉ、０，１）に含まれる単位セルのアドレスの下位「３，２」ビットは「０１」、領域Ｄ（ｉ、０，２）に含まれる単位セルのアドレスの下位「３，２」ビットは「１０」、そして、領域Ｄ（ｉ、０，３）に含まれるセルのアドレスの下位「３，２」ビットは「１１」と定める。
【００２６】
以下、同様な手順を深さ「ｍ−１」まで繰り返すことにより、各単位セルのアドレスを定める。
本図６では、例として、「ｍ＝３」の場合のアドレスを示している。
このアドレスの付け方によれば、ある単位セルのアドレスの「ａ」が与えられた時、「ａ」の「２ｋ＋１」，「２ｋ」（０≦ｋ≦ｍ−１）の２ビットの値によって、その単位セルを含む深さ「ｋ」の分割領域の中で、その単位セルが、北西、北東、南西、南東のどの領域に含まれているかを知ることができる。
【００２７】
このようなアドレス設定で信号伝達の概要を、図７を用いて説明する。
図７は、図２におけるアクセスセルの信号伝達例を示す説明図である。
ある機能ブロック（Ｆ１）が、他の機能ブロック（Ｆ２）に、長さ２ｎ（ｎは自然数）ビットのデータ（Ｘ）を送信するために、Ｆ１，Ｆ２は、以下に述べる条件に従うように、構成する。
Ｆ１，Ｆ２の送受信口論理セルを、それぞれ、ＬＣ１、ＬＣ２とし、ＬＣ１、ＬＣ２のアドレスを、それぞれａ１、ａ２とする。
【００２８】
Ｆ１は、その内部の回路動作により、Ｆ２へＸを伝達すべき時刻ｔにおいて、ＬＣ１のｅｏＤ，ｄｏＤの各信号線に、本図７に示す信号系列を出力する。
この信号系列は、ａ２のアドレスを、下位から順に２ビットずつ区切った系列と、Ｘの値を２ビットずつ区切った系列とを、順に連結した系列である。
この、アドレス（ａ２）および送信データ（Ｘ）の信号系列を送信している時、かつ、その時に限り、ＬＣ１のｅｏＤ信号は「１」の値をとり、それ以外の場合は常に「０」である。
【００２９】
この信号系列は、ＬＣ１，ＬＣ２（送受信口論理セル）の幾何学的距離に依存する時間的遅延の後に、図７の下部に示すように、ＬＣ２のｅｉＤ、ｄｉＤ信号線を介して、ＬＣ２に伝達される。この時、送信信号系列に含まれていたアドレス（ａ２）の系列は削除され、データ（Ｘ）の系列のみが、送信時と同様に区切られた２ビットの信号系列として、かつ、送信時の順序を保ってＬＣ２のｄｉＤ（信号線）に現れる。
【００３０】
このように、データ（Ｘ）の信号系列が信号線ｄｉＤに現れている時、かつ、その時に限り、ＬＣ２のｅｉＤ信号は「１」の値をとり、それ以外の場合は常に「０」である。
また、他の機能ブロック（Ｆ２）は、その内部の回路動作において、受信したデータ（Ｘ）の信号系列を適宜変換、蓄積することにより、その値を利用することができる。
【００３１】
以上のような構成およびアドレス設定に基づくアクセスセルの信号伝達動作の具体例を、以下の図８〜図２１を用いて説明する。
図８〜図２１は、それぞれ、時刻ｔ〜時刻（ｔ＋１３）における信号伝達状態を示す説明図である。
尚、ここでは、図６に示したように、ｍ＝３（６４単位セル）とし、アドレス「００１１００」の論埋セルを送受信口論理セルとする機能ブロックから、アドレス「１１００１１」の論埋セルを送受信口論理セルとする機能ブロックへ、４ビットのデータ「０１１０」を「０１」，「１０」の順に送信する場合を例にして、各時刻０，ｔ〜（ｔ＋１３）に渡る信号伝達の様子を説明する。
【００３２】
時刻０：
半導体装置の初期化時、全てのアクセスセルの記憶素子Ａには、各々のアドレスの値が格納されている。また、全てのアクセスセルは、図１における状態０にあり、遷移１により状態０にとどまり続けている。
【００３３】
時刻ｔ（図８参照）：
送信側の機能ブロックによるデータ送信が開始される。
セル１（図中、丸付き数字「▲１▼」で表記）は、上位論理セルからの信号「ｅｉＵ＝１」と「ｄｉＵ＝０００（深さ０を表すマスク情報）」を受け、図１における遷移２に従って、進入方向を上とし、記憶素子Ｌに「００（深さ０を表す）」、Ｆに「１１１（進入方向が上であることを表す）」を格納し、状態１に遷移する。
【００３４】
時刻ｔ＋１（図９参照）：
セル１は、図１における状態１にあり、上位論理セルからの信号「ｅｉＵ＝１」と「ｄｉＵ＝１１１（送信先アドレス「１１００１１」の第１，０ビットを表すアドレス情報）」を受け、遷移５に従う。すなわち、隣接するセル２〜５に、信号「ｅｏ＝１」、「ｄｏ＝０００（深さ０を表すマスク情報）」を出力し、ｄｉＵの下位２ビット「１１（送信先アドレス「１１００１１」の第１，０ビットを表すアドレス情報）」を図４の記憶素子Ｂに格納し、状態２に遷移する。
【００３５】
セル２〜５は、図１における状態０にあり、セル１からのｅｏ，ｄｏ信号を受け、遷移２に従い、記憶素子Ｌに「００（深さ０を表す）」、記憶素子Ｆにそれぞれの進入方向（セル２では、南を表す値「０１１」、セル３では西を表す値「０１０」、セル４では北を表す値「０００」、セル５では東を表す値「００１」を格納し、状態１へ遷移する。
【００３６】
時刻ｔ＋２（図１０参照）：
セル１は、図１における状態２にあり、上位論理セルからの信号ｅｉＵ＝１，ｄｉＵ＝１００（送信先アドレス「１１００１１」の第３，２ビットを表すアドレス情報）を受ける。
【００３７】
ここで、記憶素子Ｌ（＝００）に対応する記憶素子Ａ（＝００１１００）の第１，０ビットの値は「００」であり、記憶素子Ｂ（＝１１）の値と異なるので、遷移９に従う。すなわち、図５のテーブルに従い、進行方向を南に定め、ｅｏＳ＝１、ｄｏＳ＝１１１を出力し、記憶素子ＢにｄｉＵの下位２ビット「００（送信先アドレス「１１００１１」の第３，２ビットを表すアドレス情報）」を格納し、状態３に遷移する。
【００３８】
また、セル４は図１における状態１にあり、セル１からのｅｏ，ｄｏ信号を受けて、遷移５に従う。すなわち、隣接するセル６〜８に、信号ｅｏ＝１、ｄｏ＝０００（探さ０を表すマスク情報）を出力し、次の時刻で、ｄｉＵの下位２ビット「１１（送信先アドレス「１１００１１」の第１，０ビットを表すアドレス情報）」を記憶素子Ｂに格納し、状態２に遷移する。
【００３９】
また、各セル２，３，５は図１における状態１にあり、遷移４に従って状態０に遷移する。
セル６〜８は図１における状態０にあり、セル４からのｅｏ，ｄｏ信号を受け、遷移２に従い、記憶素子Ｌに「００（深さ０を表す）」、記憶素子Ｆにそれぞれの進入方向を格納し、状態１へ遷移する。
【００４０】
時刻ｔ＋３（図１１参照）：
セル１は、図１における状態３にあり、上位論理セルからの信号ｅｉＵ＝１，ｄｉＵ＝１１１（送信先アドレス「１１００１１」の第５，４ビットを表すアドレス情報）を受け、遷移１０に従い、ｅｏＳ＝１、ｄｏＳ＝１００（アドレス情報）を出力し、状態３に留まる。
【００４１】
また、セル４は、時刻ｔ＋２におけるセル１と同様な動作をおこない、進行方向を南に定め、状態３に遷移する。
セル７およびセル９〜１１は、時刻ｔ＋２におけるセル４およびセル６〜８と、それぞれ同様な動作を行なう。
特に、セル７は、遷移５に従い、進行方向を東に定める。
【００４２】
以上の時刻ｔ〜（ｔ＋３）の動作でわかるように、状態１にあるセルのうち、進入方向からの信号ｅｏ、ｄｏを受けているセルが、データ通信経路の先頭を表している（図１１における時刻ｔ＋３では、セル７）。この先頚セルは、周囲の隣接するセルで進入方向以外の３つまたは４つのセルに、マスク情報としての深さの値を伝え、自らは進入方向からアドレス情報を取得する。
【００４３】
そして、次の時刻で先頭セルは、取得したアドレス情報をもとに、進行方向を選択する。選択された進行方向の隣接セルのみが状態１として生き残り、新たな経路先頭となる。それ以外の隣接セルは状態０に戻る。
このような、データ通信経路の形成は、経路の先頭が、「深さ０」の領域分割において、最終的な送信先セルと同一の領域に達するまで繰り返される。
【００４４】
時刻ｔ＋４（図１２参照）：
図１１の時刻ｔ＋３における動作と同様にして、西方向に経路が形成されていく。
時刻ｔ＋５（図１３参照）：
この時刻で、経路の先頭（セル１２）が、「深さ０」の分割において送信先のセルと同一の領域に達する。
セル１２は、これまでと同様に、隣接セル１３〜１５に、マスク情報としての深さの値（０）を伝え、図１における遷移５に従い、状態２に遷移する。
【００４５】
時刻ｔ＋６（図１４参照）：
この時刻で、セル１２は図１における状態２にあり、各記憶素子Ｌ（＝００）、Ａ（＝００００１１）、Ｂ（＝１１）の記憶内容に基づき、遷移６に従う。これは、経路の先頭であるセル１２が、自分は「深さ０」の分割において送信先のセルと同一の領域に存在するということを認識したことを表している。
【００４６】
従って、より詳細な領域分割で送信先セルを探索するために、深さを「＋１」して、これまでと同様な手順を繰り返す。
すなわち、周囲の隣接するセル１３〜１５に「深さ０＋１」を表す「００１」を伝え、「深さ０」の送信先アドレスの情報「１１」は破棄し、進入方向より取得した「深さ１」の送信先アドレスの情報「００」をＢに格納して、状態２に留まる。
【００４７】
また、セル１３〜１５は、図１における遷移３により、Ｌに「０１（深さ１を表す）」を格納し、状態１に留まる。
これにより、深さが「１」になった以外は、全くこれまでと同様にして、経路形成が進められる。
【００４８】
一方、セル１では、上位論理セルからの信号ｅｉＵが０になり、図１における遷移１１により状態０に遷移する。
このようにして、データ送信経路の末尾に当たるセルが、図１における状態３から、遷移１１により状態０に遷移することによって、データ送信経路は、末尾から順に経路進行方向に向かって消滅していく。
【００４９】
時刻ｔ＋７（図１５参照）：
この時刻で、セル１２は、各記憶素子Ｌ（＝０１）、Ａ（＝００００１１）、Ｂ（＝００）の記憶内容に基づき、再び、図１における遷移６に従う。これは、セル１２が、「深さ１」の分割においても、送信先のセルと同一の領域に存在することを表している。
従って、時刻ｔ＋６と同様に、深さを「２」にして経路形成を進める。
【００５０】
時刻ｔ＋８（図１６参照）：
セル１２が、図１における遷移９に従って進行方向を南に定め、その結果、セル１５がデータ送信経路の先頭になる。
時刻ｔ＋９（図１７参照）：
セル１５が、図１における遷移９に従って進行方向を西に定め、データ送信経路の先頭が、送信先セル１６に到達する。
【００５１】
時刻ｔ＋１０（図１８参照）：
送信先セル１６は、図１における状態２にあり、各記憶素子Ｌ＝１０（探さ２）、Ａ＝１１００１１、Ｂ＝１１の記憶内容に基づき、「深さ２」の自アドレス情報（記憶素子Ａの第５，４ビットで、値は「１１」）が、進入方向より取得した送信先アドレスの情報「１１」に等しいことがわかる。
【００５２】
これはすなわち、、「深さ２」の分割において、送信先セルと自分が同一の領域にあることを示している。さらに、「深さ２＝（ｍ−１）」なので、これはすなわち、自分が最終的な送信先セルであることを示している。従って、図１における遷移７に従い、進入方向から取得する送信データの最初の２ビット「０１」を記憶素子Ｂに格納し、データ進行方向を上（すなわち上位論理セルの方向）に定め、状態３に遷移する。
【００５３】
時刻ｔ＋１１（図１９参照）：
送信先セル１６は、図１における状態３にあり、遷移１０に従い、上位論理セルに向けてｅｏＵ＝１，ｄｏＵ＝１０１（送信データの最初の２ビットの情報）を出力する。また、進入方向から取得する、送信データの次の２ビット「１０」を記憶素子Ｂに格納し、状態３に留まる。
【００５４】
時刻ｔ＋１２（図２０参照）：
送信先セル１６は、図１における状態３にあり、遷移１１に従い、上位論理セルに向けてｅｏＵ＝１，ｄｏＵ＝１１０（送信データの次の２ビットの情報）を出力し、状態０に遷移する。この時点で、送信先セル１６の上位論理セルは、４ビットの送信データを全て受信し、データ送信処理が完了する。
【００５５】
時刻ｔ＋１３（図２１参照）：
送信先セル１６が、状態０に戻り、時刻ｔ以前の状態に戻っている。
以上のようにして、機能ブロック聞の通信が実現される。
【００５６】
以上、図１〜図２１を用いて説明したように、本実施例の論理回路の機能ブロック間通信方法では、機能ブロック間での通信経路を、必要となった時点で動的に生成し、配線リソースであるアクセス部結合網を特定の機能ブロックの組が占有することはなく、機能ブロック間の通信で使用するリソースを有効に活用することが可能となる。
【００５７】
また、このことにより、機能ブロックの配置計画の自由度が損なわれないので、機能ブロック配置配線処理が不要となる。さらに、動作時の機能ブロックの配置が物理的信号線に束縛されないので、ＦＰＧＡのような再構成可能半導体装置を有効利用するために、動作時に、ある機能ブロックが移動、生成、消去などを行なう場合でも、当該機能ブロックと通信を行ない得る各機能ブロックが保持する、当該機能ブロックの位置を表すアドレス情報を操作することによって、容易に対応できる
【００５８】
尚、本発明は、図１〜図２１を用いて説明した実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、６４単位セルの構成での説明を行ったが、より大規模な論理回路にも適用可能である。
【００５９】
【発明の効果】
本発明によれば、信号伝達を、物理的な信号線を介して行なわないので、信号交差を効率良く解消でき、例えば、機能ブロックの配置によらず任意の機能ブロック間で信号伝達ができ、機能ブロックの配置計画の自由度を損なうことがなく、機能ブロック配置配線処理が不要となる。また、配線リソースを特定の機能ブロックの組が占有してしまうことがなくなり、機能ブロックの配置が物理的信号線に束縛されなくなる。また、信号伝達経路を動作中に動的に形成して配線リソースを有効活用でき、動作時に、ある機能ブロックが移動、生成、消去などを行なう場合でも容易に対応でき、効率的な機能ブロック間通信が可能である。
【図面の簡単な説明】
【図１】本発明の論理回路の機能ブロック通信方法の処理手順例を示す状態遷移図である。
【図２】図１における機能ブロック通信処理手順を実行するセル間の接続構成例を示すブロック図である。
【図３】図２におけるセルを用いて構成された半導体装置の構成例を示すブロック図である。
【図４】図２におけるアクセスセルの構成例を示すブロック図である。
【図５】図４におけるアクセスセルが具備するテーブルの具体例を示す説明図である。
【図６】図３に示す半導体装置における各セルのアドレスの設定構成例を示す説明図である。
【図７】図２におけるアクセスセルの信号伝達例を示す説明図である。
【図８】時刻ｔにおける信号伝達状態を示す説明図である。
【図９】時刻（ｔ＋１）における信号伝達状態を示す説明図である。
【図１０】時刻（ｔ＋２）における信号伝達状態を示す説明図である。
【図１１】時刻（ｔ＋３）における信号伝達状態を示す説明図である。
【図１２】時刻（ｔ＋４）における信号伝達状態を示す説明図である。
【図１３】時刻（ｔ＋５）における信号伝達状態を示す説明図である。
【図１４】時刻（ｔ＋６）における信号伝達状態を示す説明図である。
【図１５】時刻（ｔ＋７）における信号伝達状態を示す説明図である。
【図１６】時刻（ｔ＋８）における信号伝達状態を示す説明図である。
【図１７】時刻（ｔ＋９）における信号伝達状態を示す説明図である。
【図１８】時刻（ｔ＋１０）における信号伝達状態を示す説明図である。
【図１９】時刻（ｔ＋１１）における信号伝達状態を示す説明図である。
【図２０】時刻（ｔ＋１２）における信号伝達状態を示す説明図である。
【図２１】時刻（ｔ＋１３）における信号伝達状態を示す説明図である。
【図２２】従来の各機能ブロック間の通信路の構成例を示すブロック図である。
【図２３】従来の各機能ブロック間の通信路の他の構成例を示すブロック図である。
【符号の説明】
１：半導体装置、２：論理機能部（論理セル）、３〜７：アクセス部（アクセスセル）、２２ａ〜２２ｄ，２３ａ〜２３ｅ：機能ブロック。
【図１】
0003550988.tif 000002
【図２】
0003550988.tif 000003
【図３】
0003550988.tif 000004
【図４】
0003550988.tif 000005
【図５】
0003550988.tif 000006
【図６】
0003550988.tif 000007
【図７】
0003550988.tif 000008
【図８】
0003550988.tif 000009
【図９】
0003550988.tif 000010
【図１０】
0003550988.tif 000011
【図１１】
0003550988.tif 000012
【図１２】
0003550988.tif 000013
【図１３】
0003550988.tif 000014
【図１４】
0003550988.tif 000015
【図１５】
0003550988.tif 000016
【図１６】
0003550988.tif 000017
【図１７】
0003550988.tif 000018
【図１８】
0003550988.tif 000019
【図１９】
0003550988.tif 000020
【図２０】
0003550988.tif 000021
【図２１】
0003550988.tif 000022
【図２２】
0003550988.tif 000023
【図２３】
0003550988.tif 000024