JP3550986B2 - 論理回路の動的な構成方法 - Google Patents
論理回路の動的な構成方法 Download PDFInfo
- Publication number
- JP3550986B2 JP3550986B2 JP33273797A JP33273797A JP3550986B2 JP 3550986 B2 JP3550986 B2 JP 3550986B2 JP 33273797 A JP33273797 A JP 33273797A JP 33273797 A JP33273797 A JP 33273797A JP 3550986 B2 JP3550986 B2 JP 3550986B2
- Authority
- JP
- Japan
- Prior art keywords
- function
- processing unit
- general information
- logic circuit
- built
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Logic Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、セルラ・オートマトンと再構成可能布線論理素子とを組み合わせて、並列かつ動的な論理回路を任意に構成することが可能な論理回路の動的な構成方法に関する。
【0002】
【従来の技術】
従来より、再構成可能布線論理素子(FPGA:Field Programmable Gate Array)とセルラ・オートマトンの技術(例えば、共立出版1991年発行『超並列計算機アーキテクチャとそのアルゴリズム』第3章セルラ計算機、参照)が、それぞれ別個に知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、従来の再構成可能布線論理素子の大部分は、動作中の機能変更を想定していない。動作中の機能変更を許すものでも、個々のセルの機能を決定する全ての記憶に一次元のアドレスを振って外部からはメモリとみなす方法を採用しており、内部の布線論理による並列性とメモリアクセスによる逐次構成処理とのギャップが大きい。一方、セルラ・オートマトンによる並列処理は問題毎にセルラ・オートマトンの機能が設計され、かつセルは均質であることが前提であるため、設計、製造ともに困難が伴い、学問としては高度な発展を見ながらも、実用にはほど遠いのが現状である。
本発明の目的は、このような従来の課題を解決し、セルラ・オートマトンと再構成可能布線論理素子を組合わせることにより、並列かつ動的な論理回路を実現することが可能な論理回路の動的な構成方法を提供することにある。
【0004】
【課題を解決するための手段】
上記目的を達成するため、本発明による論理回路の動的な構成方法では、予め命令の実行機能を組込んだ組込み機能処理部と、該組込み機能処理部に入力および出力される組込み機能用通信路と、該組込み機能処理部からの指定により機能または記憶を決定する一般情報処理部と、該一般情報処理部に入力および出力される一般情報用通信路とを持つセルを、メッシュ状に複数個配置し、かつ上記組込み機能用通信路および一般情報用通信路により該セルを相互に接続してLSIを構成し、各セル内の該組込み機能処理部は、組込み機能用通信路から入力される命令と該組込み機能処理部の状態に応じて、該一般情報処理部の機能を指定、あるいは記憶を指定し、自セルに対する命令は自身で消費し、以後の命令をそのままあるいは加工して隣接セルに伝達することにより、各セルの一般情報処理部と一般情報用通信路を任意の論理回路として構成する。
また、組込み機能処理部への命令を発行する機能をもつ論理回路として動的に構成された前記一般情報処理部が、組込み機能処理部に命令を発行することにより、他のセルに含まれる一般情報処理部の機能または記憶を指定し、任意の論理回路として動的に構成する。
また、組込み機能処理部への命令を発行する機能をもつ論理回路として動的に構成された前記一般情報処理部が、組込み機能処理部の状態を操作して形成した命令伝達経路を介して、論理回路として動的に構成された他の一般情報処理部にメッセージを伝達する。
【0005】
【発明の実施の形態】
以下、本発明の実施例を、図面により詳細に説明する。
図1は、本発明の一実施例を示す論理回路の動的な構成方法の基本構成図であって、図1(a)は基本単位(セル)の構成を示し、図1(b)は全体の構成を示している。
図1(a)の基本単位の構成に示すように、FPGAまたはセルラ・オートマトンのセルを、いわば本能的な役割を担う部分(組込み機能処理部)11と本能からの指示によって機能や記憶が決定される部分(一般情報処理部)12の2つの部分から構成されるようにして、任意の情報処理システムを構成できるようにしている。一般情報処理部12は、さらに記憶部分13と機能部分14とに分割される。そして、一般情報処理部12に接続される入力および出力用の一般情報処理用通信路15と、組込み機能処理部11に接続される入力および出力用の組込み機能用通信路16とが配置されている。
図1(b)は、図1(a)の基本単位を複数個集合することにより構成された各種のLSIシステムである。ここでは、基本単位10A,10B,10C,10Dがメッシュ状に配列され、組込み機能用通信路16と一般情報処理用通信路15とがこれら複数個の基本セルを貫通して接続される。
【0006】
図2は、セルの機能を説明するための概念図である。
組込み機能内入力通信路16aから入力される命令は、組込み機能処理部11により解釈され、その結果により、予め用意された一般情報処理機能12の1つが選択されて一般情報用通信路15に接続される。ここでは、組込み機能用入力通信路16aから入力された命令を組込み機能処理部11が解釈することにより、一般情報処理部12に対して選択、書込みを行い、それにより一般情報用入力通信路15aから入力されたデータを選択された機能部分14a〜14eの1つが受け取り、機能を動作してその出力を一般情報用出力通信路15bから送出する。また、処理の結果により機能部分14から組込み機能処理部11に対して命令を送出する場合もある。
【0007】
図3は、一般情報処理部の要素機能を示す図である。
予め用意される一般情報処理機能12は、図3に示すような単なる結線(21,22,23)、レジスタ(24)、論理ゲート(25,26,27,28)、比較交換スイッチ(29)等である。レジスタ24のように記憶を持つ要素に対しては、組込み機能処理部11は単に選択するだけでなく、値を書込むこともできる。セルがメッシュ状に配置されているために、結果として任意の論理回路を構成することができる。
図4は、一般情報処理部の一構成例を示す図である。
論理ゲートは真理値表を表わすメモリとして構成することも可能であり、その場合には図4に示すように、予め用意した回路から選ぶのではなく、真理値表であるメモリ31へ値を設定することにより、機能を設定できる。任意の2入力論理関数と任意の接続を表現できる例を、図4に示した。ここで、メモリ31はアドレス2ビット、データ1ビットのメモリであり、任意の2入力論理関数を表わすことができる。このメモリ31には、4ビットの記憶が対応する。黒丸33は接続を表し、白丸31,32は接続するか否かを設定できることを表す。白丸31,32には1ビットの記憶が対応する。この例では、メモリ31の4ビットと白丸18ビットの合計数の22ビットの記憶が必要となる。この22ビットの値を何か意味のあるものに設定することにより、この例の場合の一般情報処理部30の機能が設定される。
22ビットの記憶を用いて高々2入力の論理関数を構成し、さらにこれらを組合わせて論理回路としての記憶を表現するのではなく、直接、この22ビットを論理回路中の記憶として扱えるようにしたものが先に示したレジスタに相当する。
【0008】
図5は、本発明の第2の実施例を示すもので、メッセージ・パッシングの経路を示す命令とその動作を説明する図である。
図5では、1112334XX0の命令を順次、経路となる6個のセルを通してメッセージ・パッシングを行う場合を示している。本実施例では、主に組込み機能処理の内容の一部を説明する。全てのセルは、最初、初期状態(a)にあり、上から命令1を受け取ると(b)、その命令は自身で消費し(c)、以後の命令を下のセルにそのまま転送するように設定される(c)。同様に、命令2では上からの命令を右に(i)、また命令3では左からの命令を右に転送するように設定される(k)。命令4はメッセージ・パッシングのターゲットを指定する。
また、命令0はセルの組込み機能処理部を初期状態に戻す命令である。
このように、セルラ・プログラミングされたセルのメッシュに図のように上から111233XX0の命令を注入すると、図に示す経路で順次セルが設定されることが分る。111233は経路を指定しており、XXは経路で指定されたセルの一般情報処理部を構成するための命令、または既に構成が完了している一般情報処理部に対するデータである。
【0009】
セルラ・プログラミングによるメッセージ・パッシングではメッセージのサイズが変化することが重要である。この例では、次第に小さくなっていく。動作が完了することは、メッセージのサイズがゼロになることである。このために各セルでは必要に応じて命令を消費、すなわち後続のセルには伝えないようにしなければならない。また、ここでは0とした初期化のための命令は、メッセージ・パッシングに関与した全てのセルを通過し、ターゲットであったセルで消費される。
なお、この例では、命令列は順次送られて止らない。しかし、途中のセルで命令が挿入されるような場合には、後続の命令列は止って待っている必要がある。全てセルを前方のセルが空となっている時に限って命令を送るようにすることで、命令列を止めるようにすることができる。この場合には、止まれない命令列のスピードの半分になる。
【0010】
図6は、本発明の第3の実施例を示すもので、フルアダーを構成する方法を説明する図である。
図6(a)では、11個のセルをフルアダーとして構成する場合を示している。第2の実施例の方法により、11個のセルをそれぞれ図3のように構成すれば、全体としてフルアダーとなる。なお、連続したセルの構成の方法を工夫することにより、構成に必要なステップを削減することも可能である。
図6(a)のフルアダーでは、下記計算式を表わしている。
S=AXBXCI、CO=(A&B)/(B&CI)/(CI&A)・・・・・・・・・・・・・(1)
なお、ここで&は論理積、Xは排他的論理和、/は論理和を表す。
また、CIが入力する排他的論理和40の詳細構成を、図6(b)に示している。
【0011】
図7〜図10は、本発明の第4の実施例を示すもので、矩形領域探索の全体像、探索に用いる波の動作、深さ一定の時の波の動作、深さの異なる時の波の動作をそれぞれ示している。
先ず、図7には、最大の矩形領域を検出する場合の実施例を示している。本実施例は、一般情報処理部12を意味のある論理回路として構成するに先立って、どこに構成可能な空きエリアがあるかを探索する場合等に利用できる。図7は、探索の進め方を示すもので、探索開始点71を左上の頂点とする最大の矩形を検出することを目的として、この例では探索を4回行っている。すなわち、最初の探索72、2回目の探索73、3回目の探索74、最後の探索である。
【0012】
図8は、探索の概念を示すもので、組込み機能処理部は第1の波を探索開始点80から右に送り、この波は境界で反射して戻ってくる(82)。第1の波はセル81を通過するときに全てのセルで第2の波84を下に向って送出する。第2の波84が境界で反射して第2の波の送出したセル81まで戻ってきたとき、既にそのセル81を第2の波が通過していなければ右に曲げる。そうでなければ、波84を止める。このことによって、最も浅いところで反射した波だけを残すことができる。第2の波84も境界で反射して、探索開始点83に戻る。このようにして、探索開始点80には波が2回到達することになり、第1の波82の経過時刻から横方向の長さが分り、第2の波83との時間差から縦方向の長さが分る。
【0013】
図9は、深さ一定の時の波の動作を示すもので、ここでは第2の波は最も浅いところで反射したものだけが残る仕組について述べる。図9のように、高さが同じ部分では、複数の第2の波は重なる。すなわち、セル91で下方向に送出された波が戻ってきたときに右方向に曲げられるが、次のセル92で下方向に送出された波が戻ってきたときに右方向に曲げられて、前と同じ第2の波と重なる。
図10は、深さの異なる時の波の動作を示すもので、最も浅いところで反射した波だけが残る仕組について述べる。図10のAの状況では、セルa1で先に送出された場合でも、深いところで反射した波はセルa1に戻って時点ではなく、セルa2の地点で後に送出され、浅いところで反射した波に追い抜かれたことが分る。Bの状況では、セルa3に戻った地点で追い抜かれたことが分る。このようにして、深いところで反射した波は止められてしまい、最も浅いところで反射した第2の波だけとなる。
第1の波のスタート位置を下げて、何回か同様の探索を行うことにより、矩形領域を抽出することができる。
【0014】
図11は、本発明の第5の実施例を示すもので、既構成の論理回路のコピーを生成する方法を説明する図である。
論理回路Aに対して、構成情報取出しの指示とコピーを作る相対位置を表す向き(下下下・・右右・・のような情報)の情報101を入れる。既構成のセルは、命令列の最後の部分に順次、自身の構成情報を接続していく。命令列が論理回路Aを出るときには、向きの情報の後に構成情報がつながったもの102となっている。この命令列102は、向きの情報によってコピーを作る位置まで送られる。コピーを作る位置では、向きの情報は消費されているので、構成情報103だけになっている。構成情報103によってコピーが作られる。
構成情報103は、一般情報処理部12の機能を指定する情報と一般情報処理部12が記憶要素として構成されているときのその値を示す情報からなる。後者は、論理回路の動作に伴って変化するものである。後者だけを取出して、これを図11に示すような記憶回路106に待避できる機能を用意すれば、論理回路の動作を止めて別の用途に利用した後、また同じ種類の論理回路を構成し、これに再び記憶の値を設定して動作を再開することができる。このような仕組により、仮想布線論理と呼ぶことができる構成を実現することが可能となる。
【0015】
次に、本発明の第6の実施例について説明する。
第4の実施例(図7)と同様に最大の矩形領域を検出する実施例を説明する。第4の実施例では、使用領域のセルに含まれる組込み機能処理部が組込み機能用通信路を介して伝達された命令に対して反射となる命令を送り返している。本実施例では、探索を進めた方向に空き領域が無い場合、一般情報処理部が空き領域の探索に対して応答(反射)する命令を発行することで、構成可能な空きエリアを探索する。なお、探索を進めた方向に空き領域が無い場合としては、例えばタイムアウトや探索先セルから空きセルでないことを通知する特定の命令が隣接したセルの組込み機能処理部から伝達された場合が考えられる。
この方法では、空きセルとなっている一般情報処理部に『探索を進めた方向に空き領域が無い旨の通知を組込み機能処理部から受信した場合、空きセルの探索命令に対して応答する命令を生成する』機能を設定する必要がある。空き領域の一般情報処理部は使用されていないので、このような機能を設定することは一般情報処理部のハード量の増加とはならない。また、隣接したセルが使用状態であることを通知するための命令に比べて、空き領域の検索命令に対して発行する命令(反射)は空きセルの位置情報等を含む必要があり、その命令の生成は複雑な処理を必要とするため、本実施例を用いることで、空き領域の検索命令に対して命令を発行するための組込み機能処理部の機能を削減可能となる。
【0016】
【発明の効果】
以上説明したように、本発明によれば、セルラ・オートマトンと再構成可能布線論理素子とを組合わせることにより、並列かつ動的な論理回路を任意に構成することが可能になる。また、論理が実現されていない矩形領域を抽出することができる。また、空き領域であることを構成すれば、その探索命令を発行する組込み機能部の削減も可能となる。さらに、ある領域に実現されている論理回路のコピーを別の場所に実現することができ、また一旦、論理回路の実現情報を記憶回路に待避させて、必要に応じて論理回路を実現して動作させることにより、仮想布線論理を構成することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例を示す論理回路の基本セルおよびシステムの構成図である。
【図2】図1におけるセルの機能を説明するための概念図である。
【図3】図1における一般情報処理部の要素機能を示す図である。
【図4】図1における一般情報処理部の一例を示す構成図である。
【図5】本発明の第2の実施例を示すメッセージ・パッシングの経路を示す命令とその動作の図である。
【図6】本発明の第3の実施例を示すフルアダーを構成する方法の説明図である。
【図7】本発明の第4の実施例を示す矩形領域探索の全体像の図である。
【図8】図7における探索に使用する波の動作を示す図である。
【図9】図7において、深さ一定の時の波の動作を示す図である。
【図10】図7において、深さの異なる時の波の動作を示す図である。
【図11】本発明の第5の実施例を示すもので、既構成の論理回路のコピーを生成する方法の説明図である。
【符号の説明】
10A,10B,10C,10D…セル、11…組込み機能処理部、
12…一般情報処理部、13…記憶部分、14…機能部分、
15…一般情報用通信路、16…組込み機能用通信路、21〜23…結線機能、24…レジスタ機能、25〜28…論理ゲート機能、
29…比較交換スイッチ機能、31…メモリ、31,32…接続設定可能交点、33…接続交点、30…一般情報処理部、40…排他的論理和回路、
71〜74…矩形探索軌跡、81,91,92,a1,a2,a3…セル、
82,83…探索波、84…下向け送出波、
101…構成情報取り出し指示と向きの情報、102…向きの情報と構成情報、103…構成情報、105…論理回路のコピー、106…記憶回路。
【発明の属する技術分野】
本発明は、セルラ・オートマトンと再構成可能布線論理素子とを組み合わせて、並列かつ動的な論理回路を任意に構成することが可能な論理回路の動的な構成方法に関する。
【0002】
【従来の技術】
従来より、再構成可能布線論理素子(FPGA:Field Programmable Gate Array)とセルラ・オートマトンの技術(例えば、共立出版1991年発行『超並列計算機アーキテクチャとそのアルゴリズム』第3章セルラ計算機、参照)が、それぞれ別個に知られている。
【0003】
【発明が解決しようとする課題】
しかしながら、従来の再構成可能布線論理素子の大部分は、動作中の機能変更を想定していない。動作中の機能変更を許すものでも、個々のセルの機能を決定する全ての記憶に一次元のアドレスを振って外部からはメモリとみなす方法を採用しており、内部の布線論理による並列性とメモリアクセスによる逐次構成処理とのギャップが大きい。一方、セルラ・オートマトンによる並列処理は問題毎にセルラ・オートマトンの機能が設計され、かつセルは均質であることが前提であるため、設計、製造ともに困難が伴い、学問としては高度な発展を見ながらも、実用にはほど遠いのが現状である。
本発明の目的は、このような従来の課題を解決し、セルラ・オートマトンと再構成可能布線論理素子を組合わせることにより、並列かつ動的な論理回路を実現することが可能な論理回路の動的な構成方法を提供することにある。
【0004】
【課題を解決するための手段】
上記目的を達成するため、本発明による論理回路の動的な構成方法では、予め命令の実行機能を組込んだ組込み機能処理部と、該組込み機能処理部に入力および出力される組込み機能用通信路と、該組込み機能処理部からの指定により機能または記憶を決定する一般情報処理部と、該一般情報処理部に入力および出力される一般情報用通信路とを持つセルを、メッシュ状に複数個配置し、かつ上記組込み機能用通信路および一般情報用通信路により該セルを相互に接続してLSIを構成し、各セル内の該組込み機能処理部は、組込み機能用通信路から入力される命令と該組込み機能処理部の状態に応じて、該一般情報処理部の機能を指定、あるいは記憶を指定し、自セルに対する命令は自身で消費し、以後の命令をそのままあるいは加工して隣接セルに伝達することにより、各セルの一般情報処理部と一般情報用通信路を任意の論理回路として構成する。
また、組込み機能処理部への命令を発行する機能をもつ論理回路として動的に構成された前記一般情報処理部が、組込み機能処理部に命令を発行することにより、他のセルに含まれる一般情報処理部の機能または記憶を指定し、任意の論理回路として動的に構成する。
また、組込み機能処理部への命令を発行する機能をもつ論理回路として動的に構成された前記一般情報処理部が、組込み機能処理部の状態を操作して形成した命令伝達経路を介して、論理回路として動的に構成された他の一般情報処理部にメッセージを伝達する。
【0005】
【発明の実施の形態】
以下、本発明の実施例を、図面により詳細に説明する。
図1は、本発明の一実施例を示す論理回路の動的な構成方法の基本構成図であって、図1(a)は基本単位(セル)の構成を示し、図1(b)は全体の構成を示している。
図1(a)の基本単位の構成に示すように、FPGAまたはセルラ・オートマトンのセルを、いわば本能的な役割を担う部分(組込み機能処理部)11と本能からの指示によって機能や記憶が決定される部分(一般情報処理部)12の2つの部分から構成されるようにして、任意の情報処理システムを構成できるようにしている。一般情報処理部12は、さらに記憶部分13と機能部分14とに分割される。そして、一般情報処理部12に接続される入力および出力用の一般情報処理用通信路15と、組込み機能処理部11に接続される入力および出力用の組込み機能用通信路16とが配置されている。
図1(b)は、図1(a)の基本単位を複数個集合することにより構成された各種のLSIシステムである。ここでは、基本単位10A,10B,10C,10Dがメッシュ状に配列され、組込み機能用通信路16と一般情報処理用通信路15とがこれら複数個の基本セルを貫通して接続される。
【0006】
図2は、セルの機能を説明するための概念図である。
組込み機能内入力通信路16aから入力される命令は、組込み機能処理部11により解釈され、その結果により、予め用意された一般情報処理機能12の1つが選択されて一般情報用通信路15に接続される。ここでは、組込み機能用入力通信路16aから入力された命令を組込み機能処理部11が解釈することにより、一般情報処理部12に対して選択、書込みを行い、それにより一般情報用入力通信路15aから入力されたデータを選択された機能部分14a〜14eの1つが受け取り、機能を動作してその出力を一般情報用出力通信路15bから送出する。また、処理の結果により機能部分14から組込み機能処理部11に対して命令を送出する場合もある。
【0007】
図3は、一般情報処理部の要素機能を示す図である。
予め用意される一般情報処理機能12は、図3に示すような単なる結線(21,22,23)、レジスタ(24)、論理ゲート(25,26,27,28)、比較交換スイッチ(29)等である。レジスタ24のように記憶を持つ要素に対しては、組込み機能処理部11は単に選択するだけでなく、値を書込むこともできる。セルがメッシュ状に配置されているために、結果として任意の論理回路を構成することができる。
図4は、一般情報処理部の一構成例を示す図である。
論理ゲートは真理値表を表わすメモリとして構成することも可能であり、その場合には図4に示すように、予め用意した回路から選ぶのではなく、真理値表であるメモリ31へ値を設定することにより、機能を設定できる。任意の2入力論理関数と任意の接続を表現できる例を、図4に示した。ここで、メモリ31はアドレス2ビット、データ1ビットのメモリであり、任意の2入力論理関数を表わすことができる。このメモリ31には、4ビットの記憶が対応する。黒丸33は接続を表し、白丸31,32は接続するか否かを設定できることを表す。白丸31,32には1ビットの記憶が対応する。この例では、メモリ31の4ビットと白丸18ビットの合計数の22ビットの記憶が必要となる。この22ビットの値を何か意味のあるものに設定することにより、この例の場合の一般情報処理部30の機能が設定される。
22ビットの記憶を用いて高々2入力の論理関数を構成し、さらにこれらを組合わせて論理回路としての記憶を表現するのではなく、直接、この22ビットを論理回路中の記憶として扱えるようにしたものが先に示したレジスタに相当する。
【0008】
図5は、本発明の第2の実施例を示すもので、メッセージ・パッシングの経路を示す命令とその動作を説明する図である。
図5では、1112334XX0の命令を順次、経路となる6個のセルを通してメッセージ・パッシングを行う場合を示している。本実施例では、主に組込み機能処理の内容の一部を説明する。全てのセルは、最初、初期状態(a)にあり、上から命令1を受け取ると(b)、その命令は自身で消費し(c)、以後の命令を下のセルにそのまま転送するように設定される(c)。同様に、命令2では上からの命令を右に(i)、また命令3では左からの命令を右に転送するように設定される(k)。命令4はメッセージ・パッシングのターゲットを指定する。
また、命令0はセルの組込み機能処理部を初期状態に戻す命令である。
このように、セルラ・プログラミングされたセルのメッシュに図のように上から111233XX0の命令を注入すると、図に示す経路で順次セルが設定されることが分る。111233は経路を指定しており、XXは経路で指定されたセルの一般情報処理部を構成するための命令、または既に構成が完了している一般情報処理部に対するデータである。
【0009】
セルラ・プログラミングによるメッセージ・パッシングではメッセージのサイズが変化することが重要である。この例では、次第に小さくなっていく。動作が完了することは、メッセージのサイズがゼロになることである。このために各セルでは必要に応じて命令を消費、すなわち後続のセルには伝えないようにしなければならない。また、ここでは0とした初期化のための命令は、メッセージ・パッシングに関与した全てのセルを通過し、ターゲットであったセルで消費される。
なお、この例では、命令列は順次送られて止らない。しかし、途中のセルで命令が挿入されるような場合には、後続の命令列は止って待っている必要がある。全てセルを前方のセルが空となっている時に限って命令を送るようにすることで、命令列を止めるようにすることができる。この場合には、止まれない命令列のスピードの半分になる。
【0010】
図6は、本発明の第3の実施例を示すもので、フルアダーを構成する方法を説明する図である。
図6(a)では、11個のセルをフルアダーとして構成する場合を示している。第2の実施例の方法により、11個のセルをそれぞれ図3のように構成すれば、全体としてフルアダーとなる。なお、連続したセルの構成の方法を工夫することにより、構成に必要なステップを削減することも可能である。
図6(a)のフルアダーでは、下記計算式を表わしている。
S=AXBXCI、CO=(A&B)/(B&CI)/(CI&A)・・・・・・・・・・・・・(1)
なお、ここで&は論理積、Xは排他的論理和、/は論理和を表す。
また、CIが入力する排他的論理和40の詳細構成を、図6(b)に示している。
【0011】
図7〜図10は、本発明の第4の実施例を示すもので、矩形領域探索の全体像、探索に用いる波の動作、深さ一定の時の波の動作、深さの異なる時の波の動作をそれぞれ示している。
先ず、図7には、最大の矩形領域を検出する場合の実施例を示している。本実施例は、一般情報処理部12を意味のある論理回路として構成するに先立って、どこに構成可能な空きエリアがあるかを探索する場合等に利用できる。図7は、探索の進め方を示すもので、探索開始点71を左上の頂点とする最大の矩形を検出することを目的として、この例では探索を4回行っている。すなわち、最初の探索72、2回目の探索73、3回目の探索74、最後の探索である。
【0012】
図8は、探索の概念を示すもので、組込み機能処理部は第1の波を探索開始点80から右に送り、この波は境界で反射して戻ってくる(82)。第1の波はセル81を通過するときに全てのセルで第2の波84を下に向って送出する。第2の波84が境界で反射して第2の波の送出したセル81まで戻ってきたとき、既にそのセル81を第2の波が通過していなければ右に曲げる。そうでなければ、波84を止める。このことによって、最も浅いところで反射した波だけを残すことができる。第2の波84も境界で反射して、探索開始点83に戻る。このようにして、探索開始点80には波が2回到達することになり、第1の波82の経過時刻から横方向の長さが分り、第2の波83との時間差から縦方向の長さが分る。
【0013】
図9は、深さ一定の時の波の動作を示すもので、ここでは第2の波は最も浅いところで反射したものだけが残る仕組について述べる。図9のように、高さが同じ部分では、複数の第2の波は重なる。すなわち、セル91で下方向に送出された波が戻ってきたときに右方向に曲げられるが、次のセル92で下方向に送出された波が戻ってきたときに右方向に曲げられて、前と同じ第2の波と重なる。
図10は、深さの異なる時の波の動作を示すもので、最も浅いところで反射した波だけが残る仕組について述べる。図10のAの状況では、セルa1で先に送出された場合でも、深いところで反射した波はセルa1に戻って時点ではなく、セルa2の地点で後に送出され、浅いところで反射した波に追い抜かれたことが分る。Bの状況では、セルa3に戻った地点で追い抜かれたことが分る。このようにして、深いところで反射した波は止められてしまい、最も浅いところで反射した第2の波だけとなる。
第1の波のスタート位置を下げて、何回か同様の探索を行うことにより、矩形領域を抽出することができる。
【0014】
図11は、本発明の第5の実施例を示すもので、既構成の論理回路のコピーを生成する方法を説明する図である。
論理回路Aに対して、構成情報取出しの指示とコピーを作る相対位置を表す向き(下下下・・右右・・のような情報)の情報101を入れる。既構成のセルは、命令列の最後の部分に順次、自身の構成情報を接続していく。命令列が論理回路Aを出るときには、向きの情報の後に構成情報がつながったもの102となっている。この命令列102は、向きの情報によってコピーを作る位置まで送られる。コピーを作る位置では、向きの情報は消費されているので、構成情報103だけになっている。構成情報103によってコピーが作られる。
構成情報103は、一般情報処理部12の機能を指定する情報と一般情報処理部12が記憶要素として構成されているときのその値を示す情報からなる。後者は、論理回路の動作に伴って変化するものである。後者だけを取出して、これを図11に示すような記憶回路106に待避できる機能を用意すれば、論理回路の動作を止めて別の用途に利用した後、また同じ種類の論理回路を構成し、これに再び記憶の値を設定して動作を再開することができる。このような仕組により、仮想布線論理と呼ぶことができる構成を実現することが可能となる。
【0015】
次に、本発明の第6の実施例について説明する。
第4の実施例(図7)と同様に最大の矩形領域を検出する実施例を説明する。第4の実施例では、使用領域のセルに含まれる組込み機能処理部が組込み機能用通信路を介して伝達された命令に対して反射となる命令を送り返している。本実施例では、探索を進めた方向に空き領域が無い場合、一般情報処理部が空き領域の探索に対して応答(反射)する命令を発行することで、構成可能な空きエリアを探索する。なお、探索を進めた方向に空き領域が無い場合としては、例えばタイムアウトや探索先セルから空きセルでないことを通知する特定の命令が隣接したセルの組込み機能処理部から伝達された場合が考えられる。
この方法では、空きセルとなっている一般情報処理部に『探索を進めた方向に空き領域が無い旨の通知を組込み機能処理部から受信した場合、空きセルの探索命令に対して応答する命令を生成する』機能を設定する必要がある。空き領域の一般情報処理部は使用されていないので、このような機能を設定することは一般情報処理部のハード量の増加とはならない。また、隣接したセルが使用状態であることを通知するための命令に比べて、空き領域の検索命令に対して発行する命令(反射)は空きセルの位置情報等を含む必要があり、その命令の生成は複雑な処理を必要とするため、本実施例を用いることで、空き領域の検索命令に対して命令を発行するための組込み機能処理部の機能を削減可能となる。
【0016】
【発明の効果】
以上説明したように、本発明によれば、セルラ・オートマトンと再構成可能布線論理素子とを組合わせることにより、並列かつ動的な論理回路を任意に構成することが可能になる。また、論理が実現されていない矩形領域を抽出することができる。また、空き領域であることを構成すれば、その探索命令を発行する組込み機能部の削減も可能となる。さらに、ある領域に実現されている論理回路のコピーを別の場所に実現することができ、また一旦、論理回路の実現情報を記憶回路に待避させて、必要に応じて論理回路を実現して動作させることにより、仮想布線論理を構成することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例を示す論理回路の基本セルおよびシステムの構成図である。
【図2】図1におけるセルの機能を説明するための概念図である。
【図3】図1における一般情報処理部の要素機能を示す図である。
【図4】図1における一般情報処理部の一例を示す構成図である。
【図5】本発明の第2の実施例を示すメッセージ・パッシングの経路を示す命令とその動作の図である。
【図6】本発明の第3の実施例を示すフルアダーを構成する方法の説明図である。
【図7】本発明の第4の実施例を示す矩形領域探索の全体像の図である。
【図8】図7における探索に使用する波の動作を示す図である。
【図9】図7において、深さ一定の時の波の動作を示す図である。
【図10】図7において、深さの異なる時の波の動作を示す図である。
【図11】本発明の第5の実施例を示すもので、既構成の論理回路のコピーを生成する方法の説明図である。
【符号の説明】
10A,10B,10C,10D…セル、11…組込み機能処理部、
12…一般情報処理部、13…記憶部分、14…機能部分、
15…一般情報用通信路、16…組込み機能用通信路、21〜23…結線機能、24…レジスタ機能、25〜28…論理ゲート機能、
29…比較交換スイッチ機能、31…メモリ、31,32…接続設定可能交点、33…接続交点、30…一般情報処理部、40…排他的論理和回路、
71〜74…矩形探索軌跡、81,91,92,a1,a2,a3…セル、
82,83…探索波、84…下向け送出波、
101…構成情報取り出し指示と向きの情報、102…向きの情報と構成情報、103…構成情報、105…論理回路のコピー、106…記憶回路。
Claims (3)
- 予め命令の実行機能を組込んだ組込み機能処理部と、該組込み機能処理部に入力および出力される組込み機能用通信路と、該組込み機能処理部からの指定により機能または記憶を決定する一般情報処理部と、該一般情報処理部に入力および出力される一般情報用通信路とを持つセルを、メッシュ状に複数個配置し、かつ上記組込み機能用通信路および一般情報用通信路により該セルを相互に接続してLSIを構成し、
各セル内の該組込み機能処理部は、組込み機能用通信路から入力される命令と該組込み機能処理部の状態に応じて、該一般情報処理部の機能を指定、あるいは記憶を指定し、
自セルに対する命令は自身で消費し、以後の命令をそのままあるいは加工して隣接セルに伝達することにより、各セルの一般情報処理部と一般情報用通信路を任意の論理回路として構成することを特徴とする論理回路の動的な構成方法。 - 請求項1に記載の論理回路の動的な構成方法において、
組込み機能処理部への命令を発行する機能をもつ論理回路として動的に構成された前記一般情報処理部が、組込み機能処理部に命令を発行することにより、他のセルに含まれる一般情報処理部の機能または記憶を指定し、任意の論理回路として動的に構成することを特徴とする論理回路の動的な構成方法。 - 請求項1または2に記載の論理回路の動的な構成方法において、
組込み機能処理部への命令を発行する機能をもつ論理回路として動的に構成された前記一般情報処理部が、組込み機能処理部の状態を操作して形成した命令伝達経路を介して、論理回路として動的に構成された他の一般情報処理部にメッセージを伝達することを特徴とする論理回路の動的な構成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33273797A JP3550986B2 (ja) | 1997-12-03 | 1997-12-03 | 論理回路の動的な構成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33273797A JP3550986B2 (ja) | 1997-12-03 | 1997-12-03 | 論理回路の動的な構成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11167556A JPH11167556A (ja) | 1999-06-22 |
JP3550986B2 true JP3550986B2 (ja) | 2004-08-04 |
Family
ID=18258303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33273797A Expired - Fee Related JP3550986B2 (ja) | 1997-12-03 | 1997-12-03 | 論理回路の動的な構成方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3550986B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6362650B1 (en) * | 2000-05-18 | 2002-03-26 | Xilinx, Inc. | Method and apparatus for incorporating a multiplier into an FPGA |
JP4156626B2 (ja) * | 2003-10-03 | 2008-09-24 | 富士通株式会社 | フィールドプログラマブルゲートアレイの書き換えシステム |
EP1675014B1 (en) | 2004-12-22 | 2009-09-09 | NEC Electronics Corporation | Data stream processor and information processing apparatus |
JP2007293701A (ja) | 2006-04-26 | 2007-11-08 | Canon Inc | 動的再構成可能デバイスの制御装置及び方法 |
JP6683046B2 (ja) * | 2016-07-13 | 2020-04-15 | 富士通株式会社 | 並列処理装置、ジョブ管理方法、およびジョブ管理プログラム |
-
1997
- 1997-12-03 JP JP33273797A patent/JP3550986B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH11167556A (ja) | 1999-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7822881B2 (en) | Process for automatic dynamic reloading of data flow processors (DFPs) and units with two- or three-dimensional programmable cell architectures (FPGAs, DPGAs, and the like) | |
US7028107B2 (en) | Process for automatic dynamic reloading of data flow processors (DFPS) and units with two- or three- dimensional programmable cell architectures (FPGAS, DPGAS, and the like) | |
US7899962B2 (en) | I/O and memory bus system for DFPs and units with two- or multi-dimensional programmable cell architectures | |
US7337249B2 (en) | I/O and memory bus system for DFPS and units with two- or multi-dimensional programmable cell architectures | |
US5677864A (en) | Intelligent memory architecture | |
JP2788590B2 (ja) | メモリの保護装置及びアドレスの発生方法 | |
JP4921638B2 (ja) | メモリサブシステムに複数のメモリアルゴリズムプロセッサを組込むマルチプロセッサコンピュータアーキテクチャ | |
CN107667474A (zh) | 使用可快速重新配置电路和高带宽存储器接口的计算机体系结构 | |
EP3859535A1 (en) | Streaming access memory device, system and method | |
WO1998019242A1 (fr) | Processeur de donnees et systeme de traitement de donnees | |
JP3550986B2 (ja) | 論理回路の動的な構成方法 | |
CN100357870C (zh) | 对挂接在片外单总线上的多种存储器进行访问的方法 | |
EP0377296B1 (en) | Cache coherency control when programmable option selection (POS) and memory expansion | |
JP3078000B2 (ja) | 情報処理装置 | |
RU2110088C1 (ru) | Параллельный процессор с перепрограммируемой структурой | |
CN118311916A (zh) | 一种可编程逻辑***和微处理器 | |
RU2263951C2 (ru) | Способ обработки цифровых данных в запоминающем устройстве и запоминающее устройство для осуществления способа | |
JP2003296130A (ja) | マイクロコンピュータ | |
JP2008287571A (ja) | 共有メモリ切替え回路と切替え方法 | |
AU673069B2 (en) | Intelligent memory architecture | |
JP3555856B2 (ja) | マスク処理回路 | |
JPH0283765A (ja) | データ処理装置 | |
JPH04138570A (ja) | 論理シミュレータ | |
JPH04138567A (ja) | 論理シミュレータ | |
JPH04184548A (ja) | メモリ拡張方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040123 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040330 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040412 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090514 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |