(57)【要約】【課題】再構成可能論理回路の再構成にかかる時間を見かけ上０にして、再構成を繰り返すときの処理に遅れを生じさせないようにする。【解決手段】１行目のＰＥ１１、１２の再構成データメモリ１００から再構成データＳ２を選択する選択レジスタ２と、選択レジスタ２の出力の再構成データ選択信号Ｓ１を記憶して２行目以降のＰＥ１３〜１６の再構成データメモリ１００から再構成データＳ２を選択する選択保持レジスタ３と、共有レジスタ４と、順序回路５と、レジスタ選択スイッチ２０とを備える。【選択図】図１
2008219728.tif 000002
【特許請求の範囲】
【請求項１】
複数の再構成データを記憶する再構成データメモリ１００と処理の主体となる組合せ回路１０１と組合せ回路の出力を記憶するレジスタ１０２からなるＰＥが行と列に配列された再構成可能論理回路１と、該再構成可能論理回路１にアクセスするＣＰＵ６を備えた再構成可能な演算処理回路において、
前記再構成可能論理回路１にある１行目のＰＥ１１、１２の再構成データメモリ１００に記憶されている再構成データＳ２を選択する選択レジスタ２と、
前記選択レジスタ２が出力する再構成データ選択信号Ｓ１を記憶し、前記再構成可能論理回路１にある２行目以降のＰＥ１３〜１６の再構成データメモリ１００に記憶されている再構成データＳ２を選択する選択保持レジスタ３と、
前記再構成可能論理回路１の入出力データを格納する共有レジスタ４と、
前記選択レジスタ２を制御する選択レジスタ制御信号Ｓ３と前記選択保持レジスタ３を制御する選択保持レジスタ制御信号Ｓ４と前記再構成可能論理回路１の演算を制御する制御信号Ｓ５と前記共有レジスタ４を制御する共有レジスタ制御信号Ｓ１２と選択信号セレクタ制御信号Ｓ１１を生成する順序回路５と、
前記再構成可能論理回路１と前記共有レジスタ４の間に接続され、選択信号セレクタ制御信号Ｓ１１によってライトスイッチ２３のデータＡ’と再構成データ選択保持信号Ｓ１０の何れかを選択して出力する選択信号セレクタ２４と該選択信号セレクタ２４の出力によって格納された何れかのスイッチ再構成データＳ２０を出力するスイッチ再構成データメモリ２１とスイッチ再構成データＳ２０によって前記再構成可能論理回路１のデータＣを前記共有レジスタ４へ伝えるか前記再構成可能論理回路１のデータＣを出力するかを選択するライトスイッチ２３とスイッチ再構成データＳ２０によって前記共有レジスタ４のデータＢか前記再構成データ選択信号Ｓ１の何れかを選択して前記再構成可能論理回路１にデータＤを出力するリードスイッチ２２からなるレジスタ選択スイッチ２０と
を備えることを特徴とする再構成可能な演算処理回路。
【請求項２】
複数の再構成データを記憶する再構成データメモリ１００と処理の主体となる組合せ回路１０１と組合せ回路の出力を記憶するレジスタ１０２からなるＰＥが行と列に配列された再構成可能論理回路１と、該再構成可能論理回路にアクセスするＣＰＵ６を備えた再構成可能な演算処理回路において、
前記再構成可能論理回路にある１行目のＰＥの再構成データメモリに記憶されている再構成データＳ２を選択する選択レジスタ２と、
再構成可能論理回路の入出力データを格納する共有レジスタ４と、
前記選択レジスタを制御する選択レジスタ制御信号Ｓ３と前記選択保持レジスタを制御する選択保持レジスタ制御信号Ｓ４と前記再構成可能論理回路の演算を制御する制御信号Ｓ５と前記共有レジスタを制御する共有レジスタ制御信号Ｓ１２と選択信号セレクタ制御信号Ｓ１１を生成する順序回路５と、
前記再構成可能論理回路１と前記共有レジスタ４の間に接続され、再構成データ選択信号Ｓ１を入力し格納されたデータの何れかを選択してデータＥを出力するスイッチ再構成データメモリ２１とスイッチデータ保持レジスタ制御信号Ｓ１４によってデータＥを保持してデータＧを出力するスイッチデータ保持レジスタ２５とデータセレクタ制御信号Ｓ２２によってデータＥとデータＧのいずれかを選択してスイッチ再構成データＳ２０を出力するスイッチデータセレクタＳ２６とスイッチ再構成データＳ２０によって前記再構成可能論理回路１のデータＣをデータＡとして前記共有レジスタに出力するかデータＡ’として出力するかを選択するライトスイッチ２３とスイッチ再構成データＳ２０によって前記共有レジスタ４のデータＢか前記再構成データ選択信号Ｓ１の何れかを選択して前記再構成可能論理回路１に伝えるリードスイッチ２２からなるレジスタ選択スイッチ２０と、
を備えることを特徴とする再構成可能な演算処理回路。
【請求項３】
前記順序回路５が、状態遷移と出力する制御信号Ｓ５を再構成できる再構成可能順序回路８であることを特徴とする請求項１または２に記載の再構成可能な演算処理回路。
【請求項４】
前記ＰＥは再構成データＳ２により構成が決定されるスイッチ１０３と該スイッチ１０３の出力を入力する演算回路１０４とを含む組合せ回路１０１と、該組み合わせ回路１０１の出力を入力するレジスタ１０２を備えており、
ｎ行目のＰＥのレジスタ１０２の出力のすべてがｎ＋１行目の各ＰＥのスイッチ１０３の入力になるようにＰＥ間が接続されており、
すべてのＰＥの組合せ回路１０１の出力をレジスタ選択スイッチ２０が入力し、
レジスタ選択スイッチ２０の出力をすべてのＰＥのスイッチ１０３が入力し、
行単位のＰＥとレジスタ選択スイッチ２０の間でデータが入出力される
ことを特徴とする請求項１または２に記載の再構成可能な演算処理回路。
【請求項５】
前記共有レジスタ４が、外部に設けられた回路の処理結果を格納するＩＦレジスタを備える
ことを特徴とする請求項１または２に記載の再構成可能な演算処理回路。
【請求項６】
前記共有レジスタ４が複数設けられてレジスタバンク４１をなしており、再構成データ選択信号Ｓ１によって何れかの共有レジスタを選択して切り替えることを特徴とする請求項１または２に記載の再構成可能な演算処理回路。
【請求項７】
前記再構成可能論理回路１が、再構成データ選択信号Ｓ１の所定のビットの内容により、ＰＥの配列と、異なった機能を持つＰＥと、異なった構成の再構成可能論理回路とを再構成することを特徴とする請求項１または２に記載の再構成可能な演算処理回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタル式の再構成可能な演算処理回路に関し、特に再構成にかかる時間が演算処理をさまたげることのない再構成可能な演算処理回路に関する。
【背景技術】
【０００２】
外部のデータによって回路を再構成する再構成可能論理回路（リコンフィギュラブル・ロジック）は、本来の機能である回路変更の容易性と合わせ、再構成の高速化が検討されてきている。
図１０は、従来の再構成可能な演算処理回路を説明する図である。この回路の場合、再構成しようとする一部の領域に既に再構成されて処理が実行されているところがあり、再構成のためのデータが再構成前の回路の領域と重なる部分と再構成前の回路の領域と重ならない部分とに分割されている。そして再構成される際は、重ならない部分を再構成前の回路の処理と並行して再構成し、再構成前の回路の処理が終了した後に、重なる部分を再構成するように構成されている（例えば、特許文献１参照）。
図１１は、そのような再構成可能な演算処理回路のタイミングチャートであり、再構成可能論理回路でＡ〜Ｄの処理を、この順番で行なう様子を示している。ＡとＣは処理が重なっており、Ｃの処理はＣ１とＣ２に分けられている。また、ＢとＤも処理が重なっている。Ａを再構成（ｔ０〜ｔ１）して処理（ｔ１〜ｔ４）をし、これ以降は、Ｂの再構成（ｔ１〜ｔ２）をして処理（ｔ４〜ｔ６）をし、Ｃ１の再構成（ｔ２〜ｔ３）とＣ２の再構成（ｔ４〜ｔ５）をして処理（ｔ６〜ｔ８）をし、Ｄの再構成（ｔ６〜ｔ７）をして処理（ｔ８〜ｔ９）をする。
このようにして、再構成可能な演算処理回路に、複数個の回路を順次に再構成しながら、再構成した回路による処理を並行して順次、実行させており、各回路の処理と処理の間の待ち時間を無くす、あるいは短くするのである。
【特許文献１】特開平２００１−３２０２７１（第１２頁、図５）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来例では、再構成可能論理回路の再構成の領域の重なりをあらかじめ計算しておき、重なる領域を分割して再構成処理を行なうようにしている。例えば、図１１では、Ｄの処理とＡの処理を行なう場合、Ａの再構成によりＡの処理の開始にウエイト（ｔｗａ）が発生している。このように、再構成の領域の重なりによっては、さらに多くのウエイトが発生するという問題をもっていた。
本発明はこのような問題点に鑑みてなされたものであり、再構成可能論理回路の再構成にかかる時間を見かけ上０にして、再構成を繰り返しながらの処理に遅れを生じさせないことを目的とする。
【課題を解決するための手段】
【０００４】
上記問題を解決するため、本発明は、次のように構成したものである。
第１の発明は、複数の再構成データを記憶する再構成データメモリと処理の主体となる組合せ回路と組合せ回路の出力を記憶するレジスタからなるＰＥが行と列に配列された再構成可能論理回路と、再構成可能論理回路にアクセスするＣＰＵを備えた再構成可能な演算処理回路において、再構成可能論理回路にある１行目のＰＥ再構成データメモリに記憶されている再構成データＳ２を選択する選択レジスタと、選択レジスタが出力する再構成データ選択信号Ｓ１を記憶し、再構成可能論理回路にある２行目以降のＰＥの再構成データメモリに記憶されている再構成データＳ２を選択する選択保持レジスタと、再構成可能論理回路の入出力データを格納する共有レジスタと、選択レジスタを制御する選択レジスタ制御信号Ｓ３と選択保持レジスタを制御する選択保持レジスタ制御信号Ｓ４と再構成可能論理回路の演算を制御する制御信号Ｓ５と共有レジスタを制御する共有レジスタ制御信号Ｓ１２と選択信号セレクタ制御信号Ｓ１１を生成する順序回路と、再構成可能論理回路と共有レジスタの間に接続され、選択信号セレクタ制御信号Ｓ１１によってライトスイッチのデータＡ’と再構成データ選択保持信号Ｓ１０の何れかを選択して出力する選択信号セレクタと選択信号セレクタ２４の出力によって格納された何れかのスイッチ再構成データＳ２０を出力するスイッチ再構成データメモリとスイッチ再構成データＳ２０によって再構成可能論理回路のデータＣを共有レジスタへ伝えるか再構成可能論理回路のデータＣを出力するかを選択するライトスイッチとスイッチ再構成データＳ２０によって共有レジスタのデータＢか再構成データ選択信号Ｓ１の何れかを選択して再構成可能論理回路にデータＤを出力するリードスイッチからなるレジスタ選択スイッチとを備えることを特徴としている。
第２の発明は、複数の再構成データを記憶する再構成データメモリと処理の主体となる組合せ回路と組合せ回路の出力を記憶するレジスタからなるＰＥが行と列に配列された再構成可能論理回路と、再構成可能論理回路にアクセスするＣＰＵを備えた再構成可能な演算処理回路において、再構成可能論理回路にある１行目のＰＥの再構成データメモリに記憶されている再構成データＳ２を選択する選択レジスタと、再構成可能論理回路の入出力データを格納する共有レジスタと、選択レジスタを制御する選択レジスタ制御信号Ｓ３と選択保持レジスタを制御する選択保持レジスタ制御信号Ｓ４と再構成可能論理回路の演算を制御する制御信号Ｓ５と共有レジスタを制御する共有レジスタ制御信号Ｓ１２と選択信号セレクタ制御信号Ｓ１１を生成する順序回路と、再構成可能論理回路と共有レジスタの間に接続され、再構成データ選択信号Ｓ１を入力し格納されたデータの何れかを選択してデータＥを出力するスイッチ再構成データメモリとスイッチデータ保持レジスタ制御信号Ｓ１４によってデータＥを保持してデータＧを出力するスイッチデータ保持レジスタとデータセレクタ制御信号Ｓ２２によってデータＥとデータＧのいずれかを選択してスイッチ再構成データＳ２０を出力するスイッチデータセレクタとスイッチ再構成データＳ２０によって再構成可能論理回路のデータＣをデータＡとして共有レジスタに出力するかデータＡ’として出力するかを選択するライトスイッチとスイッチ再構成データＳ２０によって共有レジスタのデータＢか再構成データ選択信号Ｓ１の何れかを選択して再構成可能論理回路に伝えるリードスイッチからなるレジスタ選択スイッチと、を備えることを特徴としている。
第３の発明は、順序回路が、状態遷移と出力する制御信号Ｓ５を再構成できる再構成可能順序回路であることを特徴としている。
第４の発明は、ＰＥは再構成データＳ２により構成が決定されるスイッチとスイッチの出力を入力する演算回路とを含む組合せ回路と、組み合わせ回路の出力を入力するレジスタを備えており、ｎ行目のＰＥのレジスタの出力のすべてがｎ＋１行目の各ＰＥのスイッチの入力になるようにＰＥ間が接続されており、すべてのＰＥの組合せ回路の出力をレジスタ選択スイッチが入力し、レジスタ選択スイッチの出力をすべてのＰＥのスイッチが入力し、行単位のＰＥとレジスタ選択スイッチの間でデータが入出力されることを特徴としている。
第５の発明は、共有レジスタが、外部に設けられた回路の処理結果を格納するＩＦレジスタを備えることを特徴としている。
第６の発明は、共有レジスタが複数設けられてレジスタバンクをなしており、再構成データ選択信号Ｓ１によって何れかの共有レジスタを選択して切り替えることを特徴としている。
第７の発明は、再構成可能論理回路が、再構成データ選択信号Ｓ１の所定のビットの内容により、ＰＥの配列と、異なった機能を持つＰＥと、異なった構成の再構成可能論理回路とを再構成することを特徴としている。
【発明の効果】
【０００５】
第１の発明によると、再構成の時間という演算処理に無駄な時間を見かけ上なくすことができるため、再構成可能論理回路を用いた処理を高速化することができる。また、小さな回路で再構成を繰り返すことで大きな処理に対応できるため、回路規模を抑えることができるので、消費電力の低減や、さらにはＬＳＩ化したときの検証時間を抑えることができる。さらに、再構成可能論理回路の演算結果で選択レジスタの変更をできるため、自律的に再構成を行なうこともできる。
第２の発明によると、再構成の時間という演算処理に無駄な時間を見かけ上なくすことができるため、再構成可能論理回路を用いた処理を高速化することができる。また、小さな回路で再構成を繰り返すことで大きな処理に対応できるため、回路規模を抑えることができるので、消費電力の低減や、さらにはＬＳＩ化したときの検証時間を抑えることができる。さらに、再構成可能論理回路の演算結果で選択レジスタの変更をできるため、自律的に再構成を行なうこともできる。
第３の発明によると、順序回路の状態遷移と出力する制御信号を再構成できるので、ハードウェアだけで複雑な処理に柔軟に対応することができる。
第４の発明によると、柔軟性を持ちながら、ＰＥ間、またはＰＥとレジスタ選択スイッチ間の配線を抑えることができ、検証の時間を抑えることができる。また、ディジタル制御で用いられる、差分方程式に最適な配線とすることができる。
第５の発明によると、ＣＰＵを介さずに外部にある回路の結果を利用できるため、ＣＰＵを用いた共有レジスタへのコピーを省略でき、処理を高速に行なうことができる。さらに、ＣＰＵを介さずに外部回路とのインターフェースをとることができるため、ハードウェアだけで複雑な処理に柔軟に対応することができる。
第６の発明によると、演算結果や入力データを選択するバンクの切り替えができるため、例えば制御周期の切り替わりでバンクを切り替えられ、メモリのコピーを省略でき、処理を高速に行なうことができる。
第７の発明によると、複数の再構成可能論理回路を仮想的に持つことができるため、アプリケーションに最適な回路の再構成を行うことができるようになる。さらに、複数の再構成可能論理回路を仮想的に持つことができるため、組合せ回路のとる組合せを抑えることができて検証の時間を低減することができるようになる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【０００７】
図１は、本発明の第１実施例を示す再構成可能な演算処理回路の構成を示すブロック図である。図において、再構成可能な演算処理回路は、再構成可能論理回路１、選択レジスタ２、選択保持レジスタ３、共有レジスタ４、順序回路５、ＣＰＵ６、レジスタ選択スイッチ２０で構成される。以下、各部の機能について説明する。
再構成可能論理回路１は、複数のＰＥ１１〜１６で構成され、ＰＥは再構成データメモリ１００と組合せ回路１０１とレジスタ１０２で構成されている。再構成可能論理回路１のＰＥは行と列から構成されており、図では６個のＰＥが３行２列の構成をとっているが図１と異なっても構わない。なお、ＰＥの縦の並びを列、横の並びを行と定義する。再構成データメモリ１００は再構成データ領域を備えている。また各ＰＥの再構成データ領域は複数の再構成データＳ２を有しており、後述する再構成データ選択信号Ｓ１で切り替えて出力する。再構成可能論理回路１にはバスＳ９が接続されておりＣＰＵ６からアクセスすることができる。
レジスタ選択スイッチ２０はスイッチ再構成データメモリ２１とリードスイッチ２２、ライトスイッチ２３、選択信号セレクタ２４から構成されている。選択信号セレクタ２４は選択信号セレクタ制御信号Ｓ１１で再構成データ選択信号Ｓ１と再構成データ選択保持信号Ｓ１０の切り替えを行なう。スイッチ再構成データメモリ２１はリードスイッチ２２とライトスイッチ２３用の再構成データ領域を備えている。また複数の再構成データを有しており、選択信号セレクタ２４の出力でスイッチ再構成データＳ２０を生成する。ライトスイッチ２３には再構成可能論理回路１の各ＰＥの組合せ回路の出力が入力され、スイッチ再構成データメモリ２１を用いて共有レジスタ４もしくは選択レジスタ２への接続が決定される。リードスイッチ２２には共有レジスタ４もしくは選択レジスタ２が入力されており、スイッチ再構成データメモリ２１を用いて各ＰＥの組合せ回路への接続が決定される。レジスタ選択スイッチ２０にもバスＳ９が接続されておりＣＰＵ６からアクセスできる。共有レジスタ４はレジスタ選択スイッチ２０と接続されている。またバスＳ９も接続されており、ＣＰＵ６からアクセスできる。
選択レジスタ２は１行目の再構成データメモリ１００と選択保持レジスタ３、レジスタ選択スイッチ２０と接続されている。選択レジスタ２に記憶されている値は選択レジスタ制御信号Ｓ３により制御される。選択レジスタ２はレジスタ選択スイッチ２０に接続されているため、再構成可能論理回路１の入出力とすることができる。選択レジスタ２にもバスＳ９が接続されており、ＣＰＵ６からアクセスできるようになっている。選択保持レジスタ３は選択レジスタ２と２行目以降の再構成データメモリ１００、選択レジスタスイッチ２０と接続されている。選択保持レジスタ制御信号Ｓ４によって選択レジスタ２の出力再構成データ信号が記憶される。選択保持レジスタ３にもバスＳ９が接続されており、ＣＰＵ６からアクセスできるようになっている。
順序回路５は選択レジスタ制御信号Ｓ３と選択保持レジスタ制御信号Ｓ４、制御信号Ｓ５、選択信号セレクタ制御信号、共有レジスタ制御信号Ｓ１２、順序回路応答信号Ｓ８を生成する。制御信号Ｓ５は順序回路起動信号Ｓ７をトリガとして生成され、再構成可能論理回路１の演算の制御を行なう。
本発明が特許文献１と異なる点は、選択レジスタ２と選択保持レジスタ３とレジスタ選択スイッチ２０と順序回路５と共有レジスタ４を備えた部分である。
以下、各部の動作について説明する。なおレジスタ等のＦＦ（ＦｌｉｐＦｌｏｐ）の動作はクロック同期である。
選択レジスタ２は再構成データ選択信号Ｓ１を出力し、再構成可能論理回路１の１行目のＰＥ１１、１２を再構成することに利用される。選択レジスタ２の設定値は１行目のＰＥ１１、１２で演算中に出力される選択レジスタ制御信号Ｓ３で変更される。その他、選択レジスタ制御信号Ｓ３は再構成論理回路の演算結果を選択レジスタ２に設定する際にも利用される。また選択レジスタ２はバスＳ９でＣＰＵ６からアクセスされて、設定値の読み書きを行なうことができる。選択レジスタ２と接続される選択保持レジスタ３は、最終行である３行目のＰＥ１５、１６の演算中と動作開始時に出力される選択保持レジスタ制御信号Ｓ４により再構成データ選択信号Ｓ１を保持する。選択保持レジスタ３は再構成データ選択保持信号Ｓ１０を出力し、再構成可能論理回路１の２行目以降のＰＥ１３〜１６を再構成することに利用される。選択保持レジスタ３はバスＳ９でＣＰＵ６からアクセスされて、設定値を読むことができる。
レジスタ選択スイッチ２０の選択信号セレクタ２４は、選択信号セレクタ制御信号Ｓ１１で再構成データ選択信号Ｓ１と再構成データ選択保持信号Ｓ１０を選択し、選択された信号でスイッチ再構成データメモリ２１のスイッチ再構成データを選択する。再構成論理回路のすべての組合せ回路の出力はライトスイッチ２３の入力となり、スイッチの出力は共有レジスタ４および選択レジスタ２に接続されている。ライトスイッチ２３と共有レジスタ４および選択レジスタ２との間の配線はスイッチ再構成データＳ２０で決定される。ライトスイッチ２３の出力は共有レジスタ選択信号で制御されて共有レジスタ４に書き込まれる。共有レジスタ４と再構成データ選択信号Ｓ１はリードスイッチ２２の入力となりスイッチの出力は再構成可能論理回路１のすべての組合せ回路１０１に接続されている。リードスイッチ２２と組合せ回路１０１との間の配線はスイッチ再構成データＳ２０で決定される。ＰＥの演算は行単位で行なわれるため、レジスタ選択スイッチ２０の再構成も行ごとに行なわれる。レジスタ選択スイッチ２０はバスＳ９でＣＰＵ６からアクセスされて、スイッチ再構成データメモリ２１を読み書きすることができる。
順序回路５は順序回路起動信号Ｓ７により動作を開始する。再構成論理回路の制御を行なう制御信号Ｓ５を生成し、演算終了後に応答信号Ｓ６を受け取って動作を終了し、順序回路応答信号Ｓ８を生成する。動作中に選択レジスタ制御信号Ｓ３と選択保持レジスタ制御信号Ｓ４、選択信号セレクタ制御信号Ｓ１１、共有レジスタ制御信号Ｓ１２を生成する。
図１の再構成可能論理回路１は３行２列で構成されており、行ごとに演算を行なう。レジスタ選択スイッチ２０から供給された入力を元に組合せ回路１０１で１行目の演算が終了すると、制御信号Ｓ５でレジスタへの書き込みが行なわれる。すべての１行目のレジスタ出力は２行目のＰＥ１３、１４の組合せ回路１０１に入力され、レジスタ選択スイッチ２０から供給された入力とともに２行目での演算を行なう。３行目も同様にして演算が行なわれる。１行目のＰＥ１１、１２では再構成データメモリ１００は再構成データ選択信号Ｓ１で選択された再構成データＳ２を出力する。また２行目以降のＰＥ１３〜１６では、再構成データメモリ１００が再構成データ選択保持信号Ｓ１０で選択された再構成データＳ２を出力する。組合せ回路１０１は再構成データＳ２をもとに入力の接続と回路構成の再構成を行い、ＰＥの演算処理を行なう。再構成論理回路はバスＳ９でＣＰＵ６からアクセスされて、再構成データメモリ１００を読み書きすることができる。
【０００８】
再構成可能論理回路１において、１行目のＰＥ１１、１２の演算が終了することで、選択レジスタ２の値を選択保持レジスタ３に記憶し、かつ先行的に選択レジスタ２の値を変更する。これにより再構成にかかる時間を見かけ上０にすることができるようになり、演算が行えない無駄な時間を発生させること無く、再構成論理回路で再構成を繰り返しながら演算を行えるようになる。
【０００９】
図２は第１実施例の再構成可能な演算処理回路のタイミングチャートである。再構成可能論理回路１を用いた処理はｔ０から開始される。ＰＥ１（ｔ０〜ｔ１）からＰＥ２（ｔ１〜ｔ２）、ＰＥ３（ｔ２〜ｔ３）へと順に処理され、引き続きＰＥ１（ｔ３〜ｔ４）、・・・と再構成可能論理回路１を用いて繰り返して処理される。ＰＥ１の再構成はＰＥ１の処理が終わるｔ１（およびｔ４とｔ７）で行なわれる。最初の再構成データはＣ１であり、ＰＥ１の演算が終了するｔ１でＣ２になり、ＰＥ１だけが先行的にＣ２の再構成データによって再構成される。再構成データ選択保持信号Ｃ１で再構成された組合せ回路１０１でＰＥ２とＰＥ３では演算が行なわれている。ＰＥ３の演算が終了した時点で再構成データ選択保持信号Ｓ１０の値が変更されるため、ＰＥ２とＰＥ３はＣ２に再構成される。
【実施例２】
【００１０】
図３は、本発明の第２実施例の再構成可能な演算処理回路の構成を示すブロック図である。図において、再構成可能な演算処理回路は再構成可能論理回路１と選択レジスタ２、共有レジスタ４、順序回路５、ＣＰＵ６、レジスタ選択スイッチ２０で構成されている。以下、各部の機能について説明する。
再構成可能論理回路１は複数のＰＥ１１〜１６で構成されており、各ＰＥは再構成データメモリ１００と組合せ回路１０１、レジスタ１０２、データ保持レジスタ７で構成されている。再構成可能論理回路１のＰＥは行と列から構成されている。図では６個のＰＥが３行２列の構成をしているが、図３と異なっても構わない。なおＰＥの縦の並びを列、横の並びを行と定義する。再構成データメモリ１００は再構成データ領域を備えている。また各ＰＥの再構成データ領域は複数の再構成データＳ２を有しており、後述する再構成データ選択信号Ｓ１で切り替えて出力する。２行目以降のＰＥ１３〜１６は再構成データを保持するためのデータ保持レジスタ７を備えており、その出力の再構成保持データＳ２１が組合せ回路１０１に作用する。なお１行目のＰＥ１１、１２にはデータ保持レジスタ７は備えられていない。再構成可能論理回路１にはバスＳ９が接続されており、ＣＰＵ６からアクセスできるようになっている。
レジスタ選択スイッチ２０はスイッチ再構成データメモリ２１とリードスイッチ２２、ライトスイッチ２３、スイッチデータセレクタ２６、スイッチデータ保持レジスタ２５から構成されている。スイッチ再構成データメモリ２１は、リードスイッチ２２とライトスイッチ２３用の再構成データ領域を備えている。また複数の再構成データＳ２を有しており、再構成データ選択信号Ｓ１で選択を行なう。この選択された出力はスイッチデータ保持レジスタ制御信号Ｓ１４でスイッチデータ保持レジスタ２５に記憶される。スイッチデータセレクタ２６はデータセレクタ制御信号Ｓ２２でスイッチ再構成データメモリ２１の出力とスイッチデータ保持レジスタ２５の出力の切り替えを行ない、スイッチ再構成データＳ２０を生成する。ライトスイッチ２３には再構成可能論理回路１の各ＰＥの組合せ回路１０１の出力が入力され、スイッチ再構成データメモリ２１を用いて共有レジスタ４もしくは選択レジスタ２への接続が決定される。リードスイッチ２２には共有レジスタ４もしくは選択レジスタ２が入力され、スイッチ再構成データメモリ２１を用いて各ＰＥの組合せ回路１０１への接続が決定される。レジスタ選択スイッチ２０にもバスＳ９が接続されており、ＣＰＵ６からアクセスできるようになっている。共有レジスタ４はレジスタ選択スイッチ２０と接続されており、バスも接続されＣＰＵ６からアクセスできるようになっている。
選択レジスタ２は１行目の再構成データメモリ１００と選択保持レジスタ、レジスタ選択スイッチ２０と接続される。選択レジスタ２に記憶されている値は選択レジスタ制御信号Ｓ３により制御される。レジスタ選択スイッチ２０に接続されているため再構成可能論理回路１の入出力とすることができる。選択レジスタ２にもバスＳ９が接続されておりＣＰＵ６からアクセスできるようになっている。
順序回路５は選択レジスタ制御信号Ｓ３とデータ保持レジスタ制御信号Ｓ１３、制御信号Ｓ５、データセレクタ制御信号、スイッチデータ保持レジスタ制御信号、共有レジスタ制御信号Ｓ１２、順序回路応答信号Ｓ８を生成する。制御信号Ｓ５は順序回路起動信号Ｓ７をトリガとして生成され、再構成可能論理回路１の演算の制御を行なう。
本発明が特許文献１と異なるのは、選択レジスタ２とレジスタ選択スイッチ２０、順序回路５、共有レジスタ４を備えた部分である。
以下、各部の動作について説明する。なおレジスタ等のＦＦ（ＦｌｉｐＦｌｏｐ）の動作はクロック同期である。
選択レジスタ２は再構成データ選択信号Ｓ１を出力し、再構成可能論理回路１とレジスタ選択スイッチ２０を再構成することに利用される。選択レジスタ２の設定値は最後のＰＥである３行目のＰＥ１５、１６で演算中に出力される選択レジスタ制御信号Ｓ３で変更される。その他、選択レジスタ制御信号Ｓ３は再構成論理回路の演算結果を選択レジスタ２に設定する際にも利用される。また選択レジスタ２はバスＳ９でＣＰＵ６からアクセスされて、設定値の読み書きを行なうことができるようになっている。
レジスタ選択スイッチ２０は再構成データ選択信号Ｓ１でスイッチ再構成データメモリ２１の内容を選択する。スイッチ再構成データメモリ２１の出力はスイッチデータ保持レジスタ制御信号Ｓ１４でスイッチデータ保持レジスタ２５に記憶される。スイッチデータセレクタ２６はスイッチ再構成データメモリ２１の出力とスイッチデータ保持レジスタ２５の出力から、データセレクタ制御信号Ｓ２２でスイッチ再構成データＳ２０を選択する。再構成論理回路のすべての組合せ回路１０１の出力はライトスイッチ２３の入力となり、スイッチの出力は共有レジスタ４および選択レジスタ２に接続されている。ライトスイッチ２３と共有レジスタ４および選択レジスタ２との間の配線は、スイッチ再構成データＳ２０で決定される。ライトスイッチ２３の出力の共有レジスタ４への値の書き込みは共有レジスタ選択信号Ｓ１２で制御されて行なわれる。共有レジスタ４と再構成データ選択信号Ｓ１はリードスイッチ２２の入力となり、スイッチの出力は再構成可能論理回路１のすべての組合せ回路１０１に接続されている。リードスイッチ２２と組合せ回路１０１との間の配線は、スイッチ再構成データＳ２０で決定される。ＰＥの演算は行単位で行なわれるため、レジスタ選択スイッチ２０の再構成も行ごとに行なわれる。レジスタ選択スイッチ２０はバスＳ９でＣＰＵ６からアクセスされて、スイッチ再構成データメモリ２１を読み書きすることができるようになっている。
順序回路５は順序回路起動信号Ｓ７により動作を開始する。再構成論理回路の制御を行なう制御信号Ｓ５を生成し、演算終了後に応答信号Ｓ６を受け取って動作を終了し、順序回路応答信号Ｓ８を生成する。動作中に選択レジスタ制御信号Ｓ３とデータ保持レジスタ制御信号Ｓ１３、データセレクタ制御信号Ｓ２２、スイッチデータ保持レジスタ制御信号Ｓ１４、共有レジスタ制御信号Ｓ１２を生成する。
図２の再構成可能論理回路１は３行２列で構成されており、行ごとに演算を行なう。レジスタ選択スイッチ２０から供給された入力を元に組合せ回路１０１で１行目の演算が終了すると、制御信号Ｓ５でレジスタへの書き込みが行なわれる。すべての１行目のレジスタ出力は２行目のＰＥ１３、１４の組合せ回路１０１に入力され、レジスタ選択スイッチ２０から供給された入力とともに２行目の演算を行なう。３行目も同様にして演算が行なわれる。２行目以降のＰＥ１３〜１６はデータ保持レジスタ７を備えており、データ保持レジスタ制御信号Ｓ１３で再構成データメモリ１００の出力である再構成データＳ２を記憶し、再構成保持データＳ２１とする。このようにＰＥの演算が行なわれている間、２行目以降では再構成データＳ２を記憶しているため、選択レジスタ２を先行的に変更することができるようになる。１行目のＰＥ１１、１２では再構成データメモリ１００は再構成データ選択信号Ｓ１で選択された再構成データＳ２を出力する。組合せ回路１０１は再構成データＳ２をもとに入力の接続と回路構成の再構成を行い、ＰＥの演算処理を行なう。２行目以降のＰＥ１３〜１６は組合せ回路１０１が再構成保持データＳ２１をもとにして入力の接続と回路構成の再構成を行い、ＰＥの演算処理を行なう。再構成論理回路はバスＳ９でＣＰＵ６からアクセスされて、再構成データメモリ１００を読み書きすることができる。
【００１１】
再構成可能論理回路１の２行目以降のＰＥ１３〜１６は、１行目のＰＥ１１、１２の演算が終了すると再構成データＳ２の値をデータ保持レジスタ７に記憶し、かつ先行的に選択レジスタ２の値を変更する。これにより再構成にかかる時間を見かけ上０にすることができるようになり、演算を行えない無駄な時間を発生させること無く再構成論理回路で再構成を繰り返しながら演算を行えるのである。
【実施例３】
【００１２】
図４は本発明の第３実施例の再構成可能な演算処理回路の構成を示す要部のブロック図である。
図において再構成可能順序回路８は状態遷移と出力する制御信号Ｓ５を再構成可能な順序回路である。再構成可能順序回路８は順序回路起動信号Ｓ７により動作を開始する。再構成論理回路の制御を行なう制御信号Ｓ５を生成し、演算終了後に応答信号Ｓ６を受け取って動作を終了し、順序回路応答信号Ｓ８を生成する。例えば実施例１と実施例２は構成と動作が異なる。そのため状態遷移と選択レジスタ２等への制御信号Ｓ５が異なるので状態遷移と制御信号Ｓ５の再構成を行ない対応させる。再構成可能順序回路８の動作中に選択レジスタ制御信号Ｓ３と共有レジスタ制御信号Ｓ１２を生成する。また回路構成により異なる波形と意味を持つ保持レジスタ制御信号Ｓ３０とセレクタ制御信号Ｓ３１を生成する。再構成可能順序回路８はバスＳ９を介してＣＰＵ６からアクセスされる。
【００１３】
再構成可能順序回路８は状態遷移と出力する制御信号Ｓ５を再構成可能できるので、ハードウェアだけで複雑な処理に柔軟に対応することができる。本発明が特許文献１と異なるのは再構成可能順序回路８を備えた部分である。
【実施例４】
【００１４】
図５は第４実施例の再構成可能な演算処理回路の構成を示す要部のブロック図である。
以下、各部の動作について説明する。
ＰＥ（１１〜１６）間の接続はある行のすべてのＰＥのレジスタ１０２の出力が次の行のＰＥの組合せ回路１０１のスイッチ１０３に入力されるように接続されている。例えばＰＥ１１〜１２のレジスタ出力はＰＥ１３のスイッチの入力となっている。レジスタ選択スイッチ２０のライトスイッチ２３にはＰＥの組合せ回路１０１の出力がすべて接続されている。レジスタ選択スイッチ２０のリードスイッチ２２は各ＰＥの組合せ回路１０１のスイッチに列ごとに共通の配線で接続されている。図５では２列あるため２本の配線でＰＥとレジスタ選択スイッチ２０間が接続されている。レジスタ選択スイッチ２０とＰＥ間の入出力制御は行単位で行なわれる。本発明が特許文献１と異なるのはＰＥ間およびＰＥとレジスタ選択スイッチ間の接続部分である。
【００１５】
このように、柔軟性を持ちながらＰＥ間またはＰＥとレジスタ選択スイッチ間の配線を抑えることができので検証の時間を抑えることができる。またディジタル制御で用いられる差分方程式に最適な配線とすることができる。
【実施例５】
【００１６】
図６は第５実施例の再構成可能な演算処理回路の構成を示す要部のブロック図である。図において図１や図２と異なるのは以下の点である。すなわち共有レジスタ４が回路３０、３１の処理結果を格納するＩＦレジスタ４２を備えているという点である。図では回路の数を２にしているがこの回路の数は異なっていても構わない。
回路３０、３１で行なった処理の結果は回路の処理終了後に共有レジスタ４内のＩＦレジスタ４２に格納されている。このＩＦレジスタ４２の内容は再構成可能論理回路１の入力として利用される。
【００１７】
このように外部回路のインターフェースをとるときにＣＰＵ６を介さずにできることから、共有レジスタ４へのコピーを省略でき処理を高速に行なうことができる。さらに外部回路のインターフェースをとるときにＣＰＵ６を介さずにできることから、ハードウェアだけで複雑な処理に柔軟に対応することができるようになる。
【実施例６】
【００１８】
図７は第６実施例の再構成可能な演算処理回路の構成を示す要部のブロック図である。
図において図１や図２と異なる点は以下のとおりである。すなわち共有レジスタ４を複数個備えたレジスタバンク４１で構成した部分である。なお図７ではレジスタバンクのバンク数を３にしているが、このバンク数は異なっていても構わない。
再構成データ選択信号Ｓ１によりレジスタバンク４１のバンクが切り替えられ再構成可能論理回路１への入出力となる。
【００１９】
このように演算結果や入力データを選択するバンクの切り替えができることから、例えば制御周期の切り替わりでバンクを切り替えられ、メモリのコピーを省略でき、処理を高速に行なうことができるようになる。
【実施例７】
【００２０】
図８は第７実施例の再構成可能な演算処理回路の構成を示す要部のブロック図である。
図において図１や図２と異なる点は以下のとおりである。すなわち選択レジスタ２を構成するビットの一部を作用させて、異なる再構成可能論理回路（ＰＥ構成１の時〜ＰＥ構成ｎの時）１に再構成する点である。
図８は概念的な図であり、複数の異なる再構成可能論理回路１を備え、選択レジスタ２を用いて再構成可能論理回路１をひとつ選択するものである。選択されてもＰＥの機能や配線は再構成されていないため、選択レジスタ２の残りのビットを作用させて再構成可能論理回路１を再構成し、回路として動作させるものである。
図９には２つの異なる再構成可能論理回路１を選択する例を示している。この例では選択レジスタ２の最上位を使って再構成可能論理回路１の構成を変更している。図９（１）では選択レジスタ２の最上位が０の時の再構成可能論理回路１のＰＥ１１〜１６は３行２列であり、ＰＥの組合せ回路では加算（＋）と減算（−）を実行できるものとする。この状態から、図９（２）のように、選択レジスタの最上位を1にした場合、４行２列へとＰＥ１１〜１８に構成が変わっている。
また、ＰＥ１７〜１８は加算と減算に加え乗算（×）と除算（÷）も行えるとする。ＰＥの持つ機能も変更されている。この状態で選択レジスタ２の残りのビットを作用させて再構成可能論理回路１の再構成を行い、回路として動作させる。
【００２１】
このように第７実施例によれば複数の再構成可能論理回路を仮想的に持つことができるため、アプリケーションに最適な回路の再構成を行うことができるようになる。さらに複数の再構成可能論理回路を仮想的に持つことができるため、組合せ回路のとる組合せを抑えることができて検証の時間を低減することができるようになる。
【図面の簡単な説明】
【００２２】
【図１】第１実施例の再構成可能な演算処理回路のブロック図
【図２】第１実施例の再構成可能な演算処理回路のタイミングチャート
【図３】第２実施例の再構成可能な演算処理回路のブロック図
【図４】第３実施例の再構成可能な演算処理回路のブロック図
【図５】第４実施例の再構成可能な演算処理回路のブロック図
【図６】第５実施例の再構成可能な演算処理回路のブロック図
【図７】第６実施例の再構成可能な演算処理回路のブロック図
【図８】第７実施例の再構成可能な演算処理回路のブロック図
【図９】第７実施例の再構成可能な演算処理回路のブロック図
【図１０】従来の再構成可能な演算処理回路を説明する図
【図１１】従来の再構成可能な演算処理回路のタイミングチャート
【符号の説明】
【００２３】
１  再構成可能論理回路
２  選択レジスタ
３  選択保持レジスタ
４  共有レジスタ
５  順序回路
６  ＣＰＵ
７  データ保持レジスタ
８  再構成可能順序回路
１１、１２、１３、１４、１５、１６  ＰＥ
１００  再構成データメモリ
１０１  組合せ回路
１０２  レジスタ
１０３  スイッチ
１０４  演算回路
２０  レジスタ選択スイッチ
２１  スイッチ再構成データメモリ
２２  リードスイッチ
２３  ライトスイッチ
２４  選択信号セレクタ
２５  スイッチデータ保持レジスタ
２６  スイッチデータセレクタ
３０、３１  回路
４１  レジスタバンク
４２  ＩＦレジスタ
Ｓ９  バス
【図１】
2008219728.tif 000003
【図２】
2008219728.tif 000004
【図３】
2008219728.tif 000005
【図４】
2008219728.tif 000006
【図５】
2008219728.tif 000007
【図６】
2008219728.tif 000008
【図７】
2008219728.tif 000009
【図８】
2008219728.tif 000010
【図９】
2008219728.tif 000011
【図１０】
2008219728.tif 000012
【図１１】
2008219728.tif 000013