(57)【要約】  本発明は、複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路であって、前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部と、前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部と、前記演算処理部の構成変更時に、前記フラグ保持部に保持されているフラグを用いて、前記演算記憶部のリセットを制御するリセット制御部とを備えることを特徴とする。
2009063596.tif 000002
【特許請求の範囲】
【請求項１】
複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路であって、
前記各再構成セルは、
前記演算処理部による演算結果を保持する演算記憶部と、
前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部と、
前記演算処理部の構成変更時に、前記フラグ保持部に保持されているリセットフラグを用いて、前記演算記憶部のリセットを制御するリセット制御部と
を備えることを特徴とする再構成可能回路。
【請求項２】
前記リセット制御部は、前記リセットフラグが、リセットが必要である旨を示す場合に前記演算記憶部をリセットし、リセットが不要である旨を示す場合に前記演算記憶部をリセットしないように制御する
ことを特徴とする請求項１に記載の再構成可能回路。
【請求項３】
前記各再構成セルは、
前記演算処理部の構成を変更するための構成情報と前記リセットフラグとを対応付けて取得する取得手段と、
前記取得手段が取得した前記構成情報を保持する構成情報保持部とを備え、
前記フラグ保持部は、前記取得手段が取得した前記リセットフラグを保持し、
前記リセット制御部は、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行う
ことを特徴とする請求項２に記載の再構成可能回路。
【請求項４】
前記取得手段は、さらに、前記演算処理部の構成をさらに変更するための、前記構成情報とは異なる他の構成情報を取得し、
前記リセット制御部は、前記取得手段が取得した前記他の構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行う
ことを特徴とする請求項３に記載の再構成可能回路。
【請求項５】
前記各再構成セルは、前記演算記憶部をリセットから保護する保護モード、及び、リセットから保護しない通常モードの何れかの状態にあり、
前記リセットフラグは、前記各再構成セルの状態を通常モードから保護モードへ遷移させるための保護設定フラグ、及び、前記再構成セルの状態を保護モードから通常モードへ遷移させるための保護解除フラグの何れかに設定されており、
前記リセット制御部は、
再構成セルが通常モードの状態にある場合、並びに、再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されている場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットし、
再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されていない場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットしないように制御する
ことを特徴とする請求項４に記載の再構成可能回路。
【請求項６】
前記構成情報保持部は、前記演算処理部の構成変更を指示する構成変更信号を検出すると、前記演算処理部に対して構成情報を出力し、
前記演算処理部は、前記構成情報保持部から受け取る前記構成情報を用いて内部を再構成し、
前記リセット制御部は、前記構成変更信号を検出すると、前記再構成処理部による再構成処理と並行して、前記演算記憶部のリセット制御を行う
ことを特徴とする請求項３に記載の再構成可能回路。
【請求項７】
前記リセット制御部は、
前記構成変更信号を検出すると、リセット信号を生成するリセット生成部と、
前記リセット生成部により生成された前記リセット信号を受け取ると、前記フラグ保持部に保持されている前記リセットフラグを用いて、前記リセット信号を前記演算記憶部に出力するか否かを判断し、前記リセット信号を出力すると判断する場合にのみ、前記リセット信号を前記演算記憶部に出力し、前記リセット信号を出力しないと判断する場合には、前記リセット信号を前記演算記憶部に出力しないリセット保護部とを備え、
前記演算記憶部は、前記リセット保護部から前記リセット信号を受け取った場合にのみ、内部をリセットする
ことを特徴とする請求項６に記載の再構成可能回路。
【請求項８】
複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路で用いられる構成情報を生成する構成情報生成装置であって、
前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部を備え、
前記構成情報生成装置は、
前記構成情報を生成する過程において、前記各再構成セルの構成変更時にリセットする演算記憶部の選択を、ユーザから受け付ける
ことを特徴とする構成情報生成装置。
【請求項９】
前記構成情報生成装置は、
前記演算処理部の構成を変更するための情報である演算構成情報のソースコードの入力を受け付けるソースコード入力手段と、
前記ソースコードの構文を解析する解析手段と、
前記解析手段が演算記憶部を示す所定の構文を検出すると、構成変更時に前記演算記憶部をリセットするか否かを示すリセットフラグの設定をユーザから受け付けるためのＧＵＩ画像を出力する出力手段と、
ユーザの操作により、リセットフラグの設定を受け付けるユーザ入力手段と
を備えることを特徴とする請求項８に記載の構成情報生成装置。
【請求項１０】
前記構成情報生成装置は、さらに、
前記演算構成情報とユーザにより指定された前記リセットフラグとを含む構成情報を生成する構成情報生成手段を含む
ことを特徴とする請求項９に記載の構成情報生成装置。
【請求項１１】
複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路で用いられるリセット方法であって、
前記各再構成セルは、
前記演算処理部による演算結果を保持する演算記憶部と、
前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部とを備え、
前記リセット方法は、
前記フラグ保持部からリセットフラグを取得するステップと、
前記リセットフラグの値を判断するステップと、
前記再構成処理部の構成変更時に、前記リセットフラグの値に応じて、前記演算記憶部のリセットを制御するステップとを含む
ことを特徴とするリセット方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再構成可能回路に関し、特に、再構成可能回路内で演算結果を保持するレジスタのリセットを制御する技術に関する。
【背景技術】
【０００２】
従来では複数個のＬＳＩで実現していたシステムを、近年では１チップに集約するＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  Ａ  Ｃｈｉｐ）と呼ばれるＬＳＩが多数開発されている。【０００３】
ＳｏＣでは、多数の機能を一つのＬＳＩ上に実装するが、必要な全ての機能を搭載しようとすれば、回路面積が大きくなる。また、ユースケースによって使用する機能の組み合わせが決まっており、ＬＳＩ上で休止中のブロックが存在すれば、実装面積の非効率という問題がある。上記問題を解決すべくハードウェア的な柔軟性をもつ再構成可能回路が開発されている。【０００４】
再構成可能回路では、各再構成セルの内部のレジスタに演算結果である中間データを保持しているが、構成変更時にレジスタが初期化されるため、構成変更後に前の演算結果を再利用することができない。【０００５】
特許文献１は、再構成セルの外部にデータキャッシュ部を設け、データキャッシュ部に演算結果を退避させておくことにより、構成変更後においても、前の演算結果を再利用することができる発明を開示している。【０００６】
具体的には、特許文献１は、ブロック単位で画像を処理する場合に、データキャッシュ部に複数のブロックの中間データを退避させておき、効率的に画像処理を行うことができる発明を開示している。
【特許文献１】特開２００１−２０２２３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１の技術は、データの退避のためのデータキャッシュ部が必須であることからコスト高の問題が生じる。【０００８】
さらには、特許文献１の技術は、画像処理のように複数のブロックデータに対して同一の処理を行う場合には有効であると考えられるが、小規模の再構成セルを用いて短い時間で再構成を繰り返す処理で用いれば、データの退避及びデータの復帰によるオーバーヘッドが大きくなり、処理性能が低下するという問題がある。【０００９】
本発明は、上記の問題点に鑑みなされたものであって、データキャッシュ部を設けることなく、前の再構成可能回路で処理した中間データを、次の回路でも使用することができる再構成可能回路、再構成可能回路のリセット方法、及び、再構成可能回路で用いられる構成情報を生成する構成情報生成装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために、本発明の一実施形態である再構成可能回路は、複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路であって、前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部と、前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部と、前記演算処理部の構成変更時に、前記フラグ保持部に保持されているリセットフラグを用いて、前記演算記憶部のリセットを制御するリセット制御部とを備えることを特徴とする。
【発明の効果】
【００１１】
上記の構成を有することにより、従来必要とされていた中間データ退避用のバッファメモリを必要とせずに、前の回路で生成された演算結果を次の回路で利用することができる。【００１２】
また、上記の構成を有することにより、再構成可能回路に含まれる再構成セル毎に、演算内容に応じて、選択的に演算記憶部をリセットすることができるので、ユースケースに即した効率的な処理を実現できる。
【図面の簡単な説明】
【００１３】
【図１】再構成可能回路１の構成を示す図である。
【図２】再構成セル１１の構成を機能的に示す図である。
【図３】構成情報記憶部１０２の構成を機能的に示す図である。
【図４】リセット制御部１０４の構成を機能的に示す図である。
【図５】再構成セル１１の動作を示すフローチャートである。
【図６】（ａ）再構成セル１１が行う処理の具体例を説明するための図である。（ｂ）再構成セル１１に入力される構成情報１２０のデータ構成を示す図である。
【図７】（ａ）再構成セル１１の構成を模式的に示す図である。（ｂ）リセット制御の具体例を説明するための図である。
【図８】回路構成情報の生成処理の動作を示すフローチャートである。
【図９】回路構成情報の生成処理において、ユーザからリセットフラグの設定を受け付けるためのＧＵＩ画像を示す図である。
【図１０】本発明の変形例に係る再構成セル１１ａの構成を機能的に示す図である。
【図１１】本発明の変形例に係るリセット制御部１０４ａの構成を機能的に示す図である。
【図１２】本発明の変形例に係るリセット制御を説明するための図である。
【図１３】本発明の変形例に係るリセット制御を説明するための図である。
【図１４】本発明の再構成可能回路をＢｌｕ−ｒａｙレコーダシステムで用いる場合の例を示す図である。
【図１５】本発明の再構成可能回路の応用例を示す図である。
【符号の説明】
【００１４】
１      再構成可能回路
１０      構成制御部
１１      再構成セル
１１ａ    再構成セル
１２      再構成セル
１０１      演算処理部
１０２      構成情報記憶部
１０３      配線部
１０４      リセット制御部
１０４ａ    リセット制御部
１０５      演算記憶部
１０２１    演算構成情報保持部
１０２２    配線構成情報保持部
１０２３    リセットフラグ保持部
１０４１    リセット生成部
１０４２    リセット保護部
【発明を実施するための最良の形態】
【００１５】
請求項１に記載の態様である再構成可能回路は、複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路であって、前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部と、前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部と、前記演算処理部の構成変更時に、前記フラグ保持部に保持されているリセットフラグを用いて、前記演算記憶部のリセットを制御するリセット制御部とを備えることを特徴とする。【００１６】
請求項２に記載の態様である再構成可能回路において、前記リセット制御部は、前記リセットフラグが、リセットが必要である旨を示す場合に前記演算記憶部をリセットし、リセットが不要である旨を示す場合に前記演算記憶部をリセットしないように制御することを特徴とする。【００１７】
この構成によると、再構成セル毎にリセットの要否を示すリセットフラグを用いて、演算記憶部をリセットしたり、リセットから保護したりすることができる。【００１８】
ここで、リセットが不要である旨を示すリセットフラグが保持されている場合には、演算記憶部に保持されている演算結果を、外部バッファに退避させることなく、次の回路でも利用することができる。【００１９】
請求項３に記載に態様である再構成可能回路において、前記各再構成セルは、前記演算処理部の構成を変更するための構成情報と前記リセットフラグとを対応付けて取得する取得手段と、前記取得手段が取得した前記構成情報を保持する構成情報保持部とを備え、前記フラグ保持部は、前記取得手段が取得した前記リセットフラグを保持し、前記リセット制御部は、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行うことを特徴とする。【００２０】
ここで、前記取得手段は、後述する実施形態では、構成情報記憶部１０２によって実現される。【００２１】
この構成によると、リセット制御部は、リセットフラグとセットで取得された構成情報を用いて構成される回路による演算処理の前に、演算記憶部のリセット制御を行うので、前記リセットフラグが、リセットが不要である旨を示す場合には、演算処理部は、前の回路で算出された演算結果を、当該構成情報を用いて構成される回路で利用することができる。【００２２】
請求項４に記載の態様である再構成可能回路において、前記取得手段は、さらに、前記演算処理部の構成をさらに変更するための、前記構成情報とは異なる他の構成情報を取得し、前記リセット制御部は、前記取得手段が取得した前記他の構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行うことを特徴とする。【００２３】
この構成によると、リセット制御部は、リセットフラグとセットで取得された構成情報を用いて構成される回路による演算結果が演算記憶部に保持されている状態において、次の構成情報を用いて演算記憶部が再構成される前に、前記リセットフラグを用いたリセット制御を行うので、前記リセットフラグが、リセットが不要である旨を示す場合には、演算処理部は、当該構成情報を用いて構成された回路で算出された演算結果を、次の構成情報を用いて構成される回路で利用することができる。【００２４】
請求項５に記載の態様である再構成可能回路において、前記各再構成セルは、前記演算記憶部をリセットから保護する保護モード、及び、リセットから保護しない通常モードの何れかの状態にあり、前記リセットフラグは、前記各再構成セルの状態を通常モードから保護モードへ遷移させるための保護設定フラグ、及び、前記再構成セルの状態を保護モードから通常モードへ遷移させるための保護解除フラグの何れかに設定されており、前記リセット制御部は、再構成セルが通常モードの状態にある場合、並びに、再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されている場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットし、再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されていない場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットしないように制御することを特徴とする。【００２５】
この構成によると、各再構成セルは、リセットフラグを用いてモードを遷移させ、モードに応じてリセットの保護／非保護を決定する。そのため、保護設定フラグを含まない構成情報で回路が構成されるときであっても、保護モードであれば、演算記憶部をリセットから保護することができる。【００２６】
請求項６に記載の態様である再構成可能回路において、前記構成情報保持部は、前記演算処理部の構成変更を指示する構成変更信号を検出すると、前記演算処理部に対して構成情報を出力し、前記演算処理部は、前記構成情報保持部から受け取る前記構成情報を用いて内部を再構成し、前記リセット制御部は、前記構成変更信号を検出すると、前記再構成処理部による再構成処理と並行して、前記演算記憶部のリセット制御を行うことを特徴とする。【００２７】
例えば、クロック用のグローバル配線を用いて、各再構成セルにリセット信号を入力する場合、構成切替時には、構成切替信号のための１クロックと、リセット信号のための１クロックとが必要である。そして、数クロックで構成を変更しながら処理を行うアプリケーションを実行する場合を考えると、構成切替信号に１クロック、リセット信号に１クロックを要すると、リセット時間が、オーバーヘッドとして大きくなってしまう。【００２８】
しかし、上記の構成によると、再構成処理とリセット制御とを並列処理するため、リセット時間を再構成時間内に隠蔽することができ、リセット制御によるオーバーヘッドを解消することができる。【００２９】
請求項７に記載の態様である再構成可能回路において、前記リセット制御部は、前記構成変更信号を検出すると、リセット信号を生成するリセット生成部と、前記リセット生成部により生成された前記リセット信号を受け取ると、前記フラグ保持部に保持されている前記リセットフラグを用いて、前記リセット信号を前記演算記憶部に出力するか否かを判断し、前記リセット信号を出力すると判断する場合にのみ、前記リセット信号を前記演算記憶部に出力し、前記リセット信号を出力しないと判断する場合には、前記リセット信号を前記演算記憶部に出力しないリセット保護部とを備え、前記演算記憶部は、前記リセット保護部から前記リセット信号を受け取った場合にのみ、内部をリセットすることを特徴とする。【００３０】
上記の構成では、再構成セル毎にローカル配線を用いてリセット制御を行う。そのため、外部から各再構成セルにリセット信号を入力するためのグローバル配線は不要である。【００３１】
請求項８に記載の態様である構成情報生成装置は、複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路で用いられる構成情報を生成する構成情報生成装置であって、前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部を備え、前記構成情報生成装置は、前記構成情報を生成する過程において、前記各再構成セルの構成変更時にリセットする演算記憶部の選択を、ユーザから受け付けることを特徴とする。【００３２】
ここで、前記構成情報生成装置は、後述する実施形態では、コンパイラを実行するコンパイル装置によって実現される。【００３３】
この構成によると、再構成可能回路を用いて実行される様々なコンピュータプログラムを作成する際に、再構成セル毎に、リセットの要否をユーザが設定することが可能となる。【００３４】
請求項９に記載の態様である構成情報生成装置は、前記演算処理部の構成を変更するための情報である演算構成情報のソースコードの入力を受け付けるソースコード入力手段と、前記ソースコードの構文を解析する解析手段と、前記解析手段が演算記憶部を示す所定の構文を検出すると、構成変更時に前記演算記憶部をリセットするか否かを示すリセットフラグの設定をユーザから受け付けるためのＧＵＩ画像を出力する出力手段と、ユーザの操作により、リセットフラグの設定を受け付けるユーザ入力手段とを備えることを特徴とする。【００３５】
この構成によると、ユーザはＧＵＩ画像を用いることで、簡便な操作でリセットフラグを設定することができる。【００３６】
請求項１０に記載の態様である構成情報生成装置は、さらに、前記演算構成情報とユーザにより指定された前記リセットフラグとを含む構成情報を生成する構成情報生成手段を含むことを特徴とする。【００３７】
この構成によると、ユーザが設定したリセットフラグを含む構成情報を生成することができる。【００３８】
以下、本発明の一実施形態である再構成可能回路１について、図面を参照して説明する。【００３９】
＜構成＞
図１は、再構成可能回路１を示す図である。【００４０】
同図に示すように、再構成可能回路１は、構成制御部１０、及び、マトリックス状に配置された複数個の再構成セル１１、１２、１３、・・・から構成される。【００４１】
１．構成制御部１０
構成制御部１０は、再構成可能回路１の外部に接続された外部メモリから、回路構成情報の入力を受け付ける。回路構成情報は、再構成セル１１、１２、１３、・・・を用いて所望の回路を構成するために各再構成セルの演算内容及び配線を決定するための構成情報を含む。【００４２】
構成制御部１０は、再構成可能回路１に含まれる全ての再構成セルと接続されており、各再構成セルへ、対応する構成情報を出力する。また、構成制御部１０は、各再構成セルへ、回路の変更を指示する構成切替信号を出力する。【００４３】
２．再構成セル
図１に記載した複数個の再構成セルのそれぞれは、組み合わせ回路、順序回路、フリップフロップ等から構成され、入力される構成情報に従い演算内容を変更しながら処理を行う。【００４４】
図２は、再構成セル１１の内部構成を機能的に示す機能ブロック図である。なお、再構成セル１１以外の他の再構成セル１２、１３、・・・は、再構成セル１１と同様の構成を有するため説明を省略する。【００４５】
図２に示すように、再構成セル１１は、演算処理部１０１、構成情報記憶部１０２、配線部１０３、リセット制御部１０４、及び演算記憶部１０５から構成される。以下では、再構成セル１１の各構成要素について説明する。【００４６】
（１）演算処理部１０１
演算処理部１０１は、ＡＬＵ（Ａｒｉｔｈｍｅｔｉｃ  Ｌｏｇｉｃ  Ｕｎｉｔ）及びＬＵＴ（Ｌｏｏｋ  Ｕｐ  Ｔａｂｌｅ）等から構成され、構成情報記憶部１０２から受け取る演算構成情報、演算記憶部１０５内の演算結果、及び他の再構成セルから受け取る演算結果等を入力として、算術演算及び論理演算を行う。【００４７】
演算処理部１０１は、構成切替信号に基づき、構成情報記憶部１０２から演算構成情報を受け取ると、受け取った演算構成情報に基づいてＬＵＴの設定値を変更することにより、回路の再構成を行う。【００４８】
なお、演算処理部１０１は、具体的には小規模なＳＲＡＭで構成される。【００４９】
（２）構成情報記憶部１０２
図３は、構成情報記憶部１０２の内部構成を示す図である。【００５０】
同図に示すように、構成情報記憶部１０２は、演算構成情報保持部１０２１、配線構成情報保持部１０２２、及びリセットフラグ保持部１０２３を含み、これらの各構成要素は、複数のフリップフロップから成るレジスタで構成されている。【００５１】
構成情報記憶部１０２は、構成制御部１０から構成情報の入力を受け付けることにより、構成情報を取得する。構成情報は、演算処理部１０１にて所望の演算を実現するための情報であって、演算構成情報、配線構成情報、及びリセットフラグから構成される。【００５２】
構成情報記憶部１０２は、構成制御部１０から受け取る構成情報に含まれる演算構成情報を演算構成情報保持部１０２１に保持し、配線構成情報を、配線構成情報保持部１０２２に保持し、リセットフラグを、リセットフラグ保持部１０２３に保持する。【００５３】
続いて、構成情報に含まれる各情報について説明する。【００５４】
演算構成情報は、演算処理部１０１が行う演算内容を決定するための情報であり、先に述べたようにＬＵＴの設定値などを含む。【００５５】
配線構成情報は、配線部１０３の接続を決定するための情報であり、具体的には配線部１０３に含まれる複数個のトランジスタスイッチのオン又はオフを示す情報である。【００５６】
リセットフラグは、演算記憶部１０５のリセットを制御するための情報であって、具体的には、保護設定フラグ及び保護解除フラグの２種類がある。【００５７】
後述するリセット保護部１０４２は、演算記憶部１０５をリセットから保護する保護モードと、リセットから保護しない通常モードとの何れかの状態にある。保護設定フラグは、リセット保護部１０４２の状態を、通常モードから保護モードへ遷移させるためのフラグであり、保護解除モードは、リセット保護部１０４２の状態を、保護モードから通常モードへ遷移させるためのフラグである。【００５８】
リセット保護部１０４２の状態が保護モードのとき、演算記憶部１０５内のデータは、回路の再構成時にリセットから保護されるので、演算処理部１０１は、前の演算で生成された演算結果を次の演算でも使用することができる。【００５９】
一方、リセット保護部１０４２の状態が通常モードのとき、演算記憶部１０５内のデータは、回路の再構成時にリセットされるので、演算処理部１０１は、前の演算で生成された演算結果を次の演算で使用することはできない。【００６０】
再構成セル１１は、構成情報に基づき回路の構成を変更しながら一連の処理を行うが、構成情報に含まれるリセットフラグを用いて、リセット保護部１０４２の状態（モード）を変更しながら演算記憶部１０５のリセット制御を行う。このようにして、再構成セル１１は、一連の処理において、演算記憶部１０５に保持されている演算結果を有効に利用し、処理の効率化を図ることができる。【００６１】
なお、構成情報記憶部１０２が構成制御部１０から受け取る構成情報に、演算構成情報及び配線構成情報のみが含まれ、保護設定フラグ及び保護解除フラグの何れも含まれていない場合には、リセット保護部１０４２は、現在の状態を維持し、そのときの状態に応じて、演算記憶部１０５のリセットを制御する。【００６２】
ここで、実装レベルの具体例として、構成情報に含まれるリセットフラグを２ビットのデータで表してもよい。この場合、例えば、保護設定フラグを「０１」とし、保護解除フラグを「１０」とし、保護設定フラグ及び保護解除フラグの何れでもない場合を「００」としてもよい。【００６３】
（３）配線部１０３
配線部１０３は、演算処理部１０１及び演算記憶部１０５を、他の再構成セルと接続することができる。具体的には、配線部１０３は、各再構成セルを接続している配線の端子であり、複数のトランジスタスイッチで構成される。各トランジスタスイッチは、構成情報記憶部１０２から受け取る配線構成情報に基づいて、オン及びオフの何れかに設定される。【００６４】
また、配線部１０３は、構成切替信号に基づき、構成情報記憶部１０２から配線構成情報を受け取ると、受け取った配線構成情報に基づいて各トランジスタスイッチのオン及びオフの設定を変更することにより、接続先を変更することができる。【００６５】
（４）リセット制御部１０４
図４は、リセット制御部１０４の内部構成を示す図である。同図に示すように、リセット制御部１０４は、リセット生成部１０４１及びリセット保護部１０４２から構成される。【００６６】
リセット生成部１０４１は、回路の再構成時を検出する機能を備え、再構成時を検出すると、リセット信号を生成する。リセット生成部１０４１は、生成したリセット信号をリセット保護部１０４２へ出力する。【００６７】
なお、本実施形態では、グローバル配線を用いて、構成制御部１０から各再構成セルへ回路の再構成を指示する構成切替信号が入力されるので、リセット生成部１０４１は、構成切替信号を検出すると、リセット信号を生成する。【００６８】
リセット保護部１０４２は、通常モード及び保護モードの何れかの状態を保持している。【００６９】
リセット保護部１０４２は、通常モードのときに、リセット生成部１０４１によって生成されたリセット信号を受け取ると、リセット信号を演算記憶部１０５に出力する。【００７０】
また、リセット保護部１０４２は、保護モードのときに、リセット信号をマスクする機能を備え、リセット信号をマスクすることにより、演算記憶部１０５をリセットから保護することができる。【００７１】
再構成セル１１が処理を行っていない初期状態では、リセット保護部１０４２は通常モードである。そして、再構成セル１１が保護設定フラグを含む構成情報に基づき処理を行った後に、リセット保護部１０４２は、通常モードから保護モードへ遷移する。その後、リセット保護部１０４２は、再構成セル１１が保護解除フラグを含む構成情報に基づき回路を再構成するまで、保護モードを維持する。【００７２】
（５）演算記憶部１０５
演算記憶部１０５は、演算処理部１０１による演算結果を保持するレジスタを含む。【００７３】
演算記憶部１０５は、リセット保護部１０４２からリセット信号を受け取ると、レジスタをリセットする。【００７４】
先に述べたように、回路の再構成時に演算記憶部１０５のレジスタがリセットされると、前の回路による演算で生成された演算結果を、次に構成された回路による演算で利用することができるが、回路の再構成時にレジスタがリセットされなければ、前の回路による演算で生成された演算結果を、次に構成された回路による演算で利用することができない。【００７５】
＜動作＞
図５は、再構成セル１１の動作を示すフローチャートである。【００７６】
再構成可能回路１は複数の再構成セルから構成されるので、再構成可能回路１全体では、各再構成セルによって、図５に示す動作が並列処理される。【００７７】
再構成セル１１は、構成情報記憶部１０２に構成情報が入力されると、処理を開始する。【００７８】
構成変更信号を検出しない場合（ステップＳ１でＮ）、再構成セル１１は、処理を終了する。構成変更信号を検出する場合（ステップＳ１でＹ）、再構成セル１１は、ステップＳ２の処理とステップＳ３からステップＳ９までの処理とを並列に行う。【００７９】
ステップＳ１で構成変更信号を検出した構成情報記憶部１０２は、演算構成情報保持部１０２１に保持されている演算構成情報を演算処理部１０１へ出力し、配線構成情報保持部１０２２に保持されている配線構成情報を配線部１０３へ出力する。【００８０】
演算処理部１０１は、受け取った演算構成情報に基づき回路の再構成を行い、配線部１０３は、受け取った配線構成情報に基づきトランジスタスイッチのオン及びオフの設定を行う（ステップＳ２）。【００８１】
ステップＳ１で構成変更信号を検出したリセット生成部１０４１は、リセット信号を生成し、リセット保護部１０４２へ出力する。【００８２】
リセット保護部１０４２は、リセット信号を受け取ると、現在のモードが保護モードであるのか、通常モードであるのか判断する。【００８３】
通常モードの場合（ステップＳ３でＮ）、ステップＳ６へ進む。【００８４】
保護モードの場合（ステップＳ３でＹ）、リセット保護部１０４２は、リセットフラグ保持部１０２３に保護解除フラグが保持されているか否か判断する。なお、リセットフラグ保持部１０２３に、２種類のリセットフラグが保持されている場合（後述する図６（ｂ）の構成情報Ａのように、２種類のリセットフラグＡ１及びＡ２が含まれる場合）は、ここでは、先頭のリセットフラグ（図６（ｂ）のリセットフラグＡ１）が保護解除フラグであるか否かを判断する。【００８５】
保護解除フラグが保持されている場合（ステップＳ４でＹ）、リセット保護部１０４２は、モードを保護モードから通常モードに変更して（ステップＳ５）、ステップＳ６へ進む。【００８６】
保護解除フラグが保持されていない場合（ステップＳ４でＮ）、リセット保護部１０４２は、ステップＳ８へ進む。【００８７】
リセット保護部１０４２の状態が通常モードのとき、リセット保護部１０４２は、リセット信号を演算記憶部１０５へ出力する。リセット信号を受け付けた演算記憶部１０５は、内部のレジスタをリセットする（ステップＳ６）。【００８８】
次に、リセット保護部１０４２は、リセットフラグ保持部１０２３に保護設定フラグが保持されているか否か判断する。なお、リセットフラグ保持部１０２３に、２種類のリセットフラグが保持されている場合（後述する図６（ｂ）の構成情報Ａのように、２種類のリセットフラグＡ１及びリセットフラグＡ２が含まれる場合）は、ここでは、先頭のリセットフラグに後続するリセットフラグ（図６（ｂ）のリセットフラグＡ２）が保護設定フラグであるか否かを判断する。【００８９】
保護設定フラグが保持されている場合（ステップＳ７でＹ）、モードを保護モードに変更し、既に保護モードの場合は、そのまま保護モードを維持する（ステップＳ８）。【００９０】
保護設定フラグが保持されていない場合（ステップＳ７でＮ）、モードを通常モードに変更し、既に通常モードの場合は、そのまま通常モードを維持する（ステップＳ９）。【００９１】
ステップＳ２の再構成とステップＳ３からステップＳ９までのリセット制御とが終了すると、演算処理部１０１は、演算処理を行う（ステップＳ１０）。【００９２】
その後、再構成セル１１は、ステップＳ１に戻り、処理を継続する。【００９３】
＜具体例＞
ここでは、図６（ａ）に示すように、再構成セル１１が、入力データＡ及び入力データＢに対して、１クロック毎に構成を変更しながら３クロックで、加算処理、乗算処理及び減算処理の順序で処理を行う場合を考える。【００９４】
ここで、２クロック目の乗算処理及び３クロック目の減算処理は、それぞれ前の処理の演算結果を使用して処理を行う。【００９５】
なお、以下では、図６（ａ）に示す加算処理、乗算処理及び減算処理を行う回路を、それぞれ、回路Ａ、回路Ｂ、及び回路Ｃと呼称する。【００９６】
図６（ａ）に示した一連の処理を行うため、構成情報記憶部１０２には、図６（ｂ）に示す構成情報Ａ（１２１）、構成情報Ｂ（１２２）、及び構成情報Ｃ（１２３）が入力される。【００９７】
構成情報Ａは、回路Ａを構成するための情報であり、構成情報Ｂは、回路Ｂを構成するための情報であり、構成情報Ｃは、回路Ｃを構成するための情報である。【００９８】
構成情報Ａ（１２１）は、リセットフラグＡ１（１０）、リセットフラグＡ２（０１）、演算構成情報Ａ、及び配線構成情報Ａから構成される。リセットフラグＡ１及びＡ２は、回路Ａを構成するときに演算記憶部１０５のリセットを制御するための情報である。【００９９】
構成情報Ｂ（１２２）は、リセットフラグＢ（００）、演算構成情報Ｂ、及び配線構成情報Ｂから構成される。リセットフラグＢは、回路Ｂを構成するときに演算記憶部１０５のリセットを制御するための情報である。【０１００】
構成情報Ｃ（１２３）は、リセットフラグＣ（００）、演算構成情報Ｃ、及び配線構成情報Ｃから構成される。リセットフラグＣは、回路Ｃを構成するときに演算記憶部１０５のリセットを制御するための情報である。【０１０１】
なお、ここでは、保護設定フラグを「０１」と表し、保護解除フラグを「１０」と表している。また、構成情報に保護設定フラグ及び保護解除フラグの何れでもない場合を「００」と表している。したがって、リセットフラグＡ１は、保護解除フラグであり、リセットフラグＡ２は、保護設定フラグであり、リセットフラグＢ及びＣは、何れでもない。【０１０２】
続いて、図７を用いて、再構成セル１１における、モード、リセットフラグ、及びリセット制御について説明する。【０１０３】
図７（ａ）は、再構成セル１１の構成要素を模式的に表している。【０１０４】
図７（ｂ）は、再構成セル１１で構成される回路とモードの時間的変化、リセットフラグ、及びリセット制御について説明するための図である。【０１０５】
先ず、構成変更信号を検出すると、再構成セル１１は、構成情報Ａ（１２１）に基づく処理を開始する。【０１０６】
図６（ｂ）に示したように、構成情報Ａ（１２１）に含まれるリセットフラグＡ１は、保護解除フラグであるから、加算処理→乗算処理→減算処理の一連の処理の開始前である時刻Ｔ１において、再構成セル１１は、通常モードに設定される。以後、保護設定フラグが出るまで、再構成セル１１は、通常モードを維持する。【０１０７】
時刻Ｔ１において、再構成セル１１が通常モードに設定されるのは、回路Ａによる演算の前に、演算記憶部１０５をリセットするためである。【０１０８】
なお、処理開始前のモードが通常モードであるなら、保護解除フラグが無くても回路Ａを構成するときに演算記憶部１０５は当然にリセットされる（図５のフローチャートのステップＳ３及びステップＳ５参照）。したがって、ここに設定されているリセットフラグＡ１（保護解除フラグ）は、処理開始前のモードが保護モードの場合であっても、演算記憶部１０５をリセットしてから処理を開始できるようにするためである。【０１０９】
いま、再構成セル１１は通常モードであるから、時刻Ｔ１の後に、演算記憶部１０５はリセットされる。【０１１０】
続いて、構成情報Ａ（１２１）には、保護設定フラグであるリセットフラグＡ２が含まれることから、演算記憶部１０５のリセットの後、時刻Ｔ２において再構成セル１１は保護モードに設定される（図５のフローチャートのステップＳ７及びステップＳ８参照）。以後、保護解除フラグが出るまで、再構成セル１１は保護モードを維持する。【０１１１】
リセット制御と並行して、演算処理部１０１及び配線部１０３では、それぞれ、構成情報Ａ（１２１）に含まれる演算構成情報Ａ及び配線構成情報Ａに基づき回路Ａを構成する。そして、再構成セル１１は、時刻Ｔ２以降に、回路Ａによる加算処理を行う。加算処理の結果であるＡ＋Ｂの値は、演算記憶部１０５に保持される。【０１１２】
次に、構成変更信号を検出すると、再構成セル１１は、構成情報Ｂ（１２２）に基づく処理を開始する。【０１１３】
図６（ｂ）に示したように、構成情報Ｂ（１２２）に含まれるリセットフラグＢは、保護解除フラグではないから、再構成セル１１は、このまま保護モードを維持する。したがって、時刻Ｔ３において演算記憶部１０５はリセットされない。【０１１４】
リセット制御と並行して、演算処理部１０１及び配線部１０３では、それぞれ、構成情報Ｂ（１２２）に含まれる演算構成情報Ｂ及び配線構成情報Ｂに基づき回路Ｂを構成する。そして、再構成セル１１は、時刻Ｔ３以降に、演算記憶部１０５に保持されているＡ＋Ｂの値を用いて、回路Ｂによる乗算処理を行う。乗算処理の結果である（Ａ＋Ｂ）×Ｂの値は、演算記憶部１０５に保持される。【０１１５】
次に、構成変更信号を検出すると、再構成セル１１は、構成情報Ｃ（１２３）に基づく処理を開始する。【０１１６】
図６（ｂ）に示したように、構成情報Ｃ（１２３）に含まれるリセットフラグＣは、保護解除フラグではないから、再構成セル１１は、このまま保護モードを維持する。したがって、時刻Ｔ４において演算記憶部１０５はリセットされない。【０１１７】
リセット制御と並行して、演算処理部１０１及び配線部１０３では、それぞれ、構成情報Ｃ（１２３）に含まれる演算構成情報Ｃ及び配線構成情報Ｃに基づき回路Ｃを構成する。そして、再構成セル１１は、時刻Ｔ４以降に、演算記憶部１０５に保持されている（Ａ＋Ｂ）×Ｂの値を用いて、回路Ｃによる減算処理を行う。減算処理の結果である（（Ａ＋Ｂ）×Ｂ）−Ｂの値は、演算記憶部１０５に保持され、その後、他の再構成セルや外部端子へ出力される。【０１１８】
＜回路構成情報の生成＞
再構成可能回路１で用いられる構成情報を作成する過程において、ユーザは、ＥＤＡ（Ｅｌｅｃｔｒｏｎｉｃ  Ｄｅｓｉｇｎ  Ａｕｔｏｍａｔｉｏｎ）ツールを用いて、構成情報に含まれるリセットフラグの設定を行うことができる。以下では、ＥＤＡツールを用いたリセットフラグの設定について説明する。【０１１９】
図８は、再構成可能回路１で用いられる回路構成情報の生成処理の動作を示すフローチャートである。ここに示す動作は、図示していないコンパイル装置がコンパイラを実行することにより実現される。【０１２０】
先ず、コンパイル装置にソースコードが入力される（ステップＳ１１）。ここで入力されるソースコードは、ＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で記述されており、再構成可能回路１の各再構成セルで用いられる演算構成情報及び配線構成情報が記述されている。【０１２１】
コンパイル装置は、always文を検索する。always文が検出されなければ（ステップＳ１２でＮ）、ステップＳ１７に進む。【０１２２】
always文が検出されると（ステップＳ１２でＹ）、コンパイル装置は、always文に続くライン毎にレジスタ記述（ここでは、一例としてReg_delay_sel）を検索する。レジスタ記述が検出されなければ（ステップＳ１３でＮ）、ステップＳ１７に進む。【０１２３】
レジスタ記述が検出されると（ステップＳ１３でＹ）、コンパイル装置は、ソースコードにリセットフラグ設定のためのＧＵＩ画像を付加した画面を、コンパイル装置と接続されているディスプレイに出力する（ステップＳ１４）。【０１２４】
続いて、コンパイル装置は、ユーザ入力を受け付ける（ステップＳ１５）。例えば、ユーザは、ディスプレイに表示されている画面を見ながら、コンパイル装置に接続されたキーボードやマウス等の入力デバイスを用いて、保護設定フラグ及び保護解除フラグの選択を入力する。【０１２５】
コンパイル装置は、ステップＳ１５で受け付けた内容に従って、演算構成情報及び配線構成情報に対応付けて、リセットフラグを設定する（ステップＳ１６）。【０１２６】
なお、ステップＳ１３で複数のレジスタ記述が検出されると、コンパイル装置は、検出されたレジスタ記述毎に、ステップＳ１４からステップＳ１６までの処理を繰り返す。【０１２７】
コンパイル装置は、入力されたソースコードの全てについて処理が終了していなければ（ステップＳ１７でＮ）、ステップＳ１２に戻り処理を続ける。入力されたソースコードの全てについて処理が終了していれば（ステップＳ１７でＹ）、コンパイル装置は、ソースコードをオブジェクトコードへ変換し（ステップＳ１８）、その後、処理を終了する。【０１２８】
ここで生成されたオブジェクトコードは、回路構成情報として、再構成可能回路１と接続された外部メモリに格納される。【０１２９】
図９は、図８のステップＳ１５で、ディスプレイに表示される画面の具体例を示す図である。【０１３０】
同図に示すように、画面１５０は、ＨＤＬで記述された構成情報のソースコードが表示されており、always文１０５１に続くレジスタ記述（Reg_delay_sel）１０５２に対応付けて、ＧＵＩ画像１５１が付加されている。【０１３１】
ＧＵＩ画像１５１は、リセット保護設定を受け付けるチェックボックス１５２と、リセット解除設定を受け付けるチェックボックス１５３とを含む。ユーザは、入力デバイスを用いて（例えば、マウスをクリックすることにより）、画面１５０上でチェックボックス１５２及びチェックボックス１５３にチェックを入れることができる。【０１３２】
ユーザがチェックボックス１５２をチェックすれば、レジスタ記述１０５２に対応する演算記憶部をリセットから保護するために、コンパイル装置は、構成情報に含まれるリセットフラグに「保護設定フラグ」を設定する。【０１３３】
一方、ユーザがチェックボックス１５３をチェックすれば、レジスタ記述１０５２に対応する演算記憶部をリセットするために、コンパイル装置は、構成情報に含まれるリセットフラグに「保護解除フラグ」を設定する。【０１３４】
＜その他の変形例＞
以上、本発明を上記の実施形態に基づき説明してきたが、本発明は、上記の実施形態に限定されないのは勿論のことであり、以下のような場合も本発明に含まれる。【０１３５】
（１）上記の実施形態では、各再構成セルの演算記憶部にリセットフラグが１対１に対応しており、再構成セル毎に演算記憶部のリセット制御を行うことができる。しかし、本発明はこの構成に限定されず、演算記憶部内の特定のビットフィールド毎に一つのリセットフラグを割り当てて、ビットフィールド毎にリセットの可否を制御してもよい。この構成により、きめ細かいリセット制御を実現することが可能となる。【０１３６】
（２）上記の実施形態では、リセット制御部１０４がリセット生成部１０４１を備え、リセット生成部１０４１が構成切替信号を検出することにより、リセット信号を生成する構成を有していた。しかし、本発明は、この構成に限定されず、以下のような場合も含まれる。【０１３７】
例えば、図１０に示す再構成セル１１ａは、上記の実施形態のリセット制御部１０４に替えて、リセット制御部１０４ａを備える。リセット制御部１０４ａは、リセット信号を生成せず、外部信号として取り込む構成を備えている。この場合、配線リソースが多く必要になるが、図１１に示すように、リセット制御部１０４ａは、リセット保護部１０４２のみを備えており、リセット生成部１０４１を備えている必要がない。【０１３８】
（３）上記の実施形態では、リセットフラグは２ビットの情報であり、保護設定フラグ及び保護解除フラグの２種類があった。しかしながら、本発明におけるリセットフラグは、１ビットの情報で、保護解除フラグを用いず、保護フラグのみを用いても実現することができる。【０１３９】
例えば、構成情報に含まれるリセットフラグが「１」の場合を「保護フラグあり」とし、構成情報に含まれるリセットフラグが「０」の場合を「保護フラグなし」としてリセット制御を行うことができる。【０１４０】
また、上記の実施形態では、保護設定フラグの有効期限（保護モードの有効期限）は、次に保護解除フラグが出るまでであった。しかし、保護フラグのみを用いてリセット制御を実現する場合には、保護フラグの有効期限（保護モードの有効期限）は、再構成セルが一つの構成で処理を行う期間のみとする。【０１４１】
図１２及び図１３は、保護フラグのみを用いてリセット制御を実現する実施形態を示す図である。ここでは、図６及び図７で説明した例と同様の例を用いて説明する。なお、再構成セルで回路Ａが構成される以前のリセット保護部の状態は「通常モード」であるとする。【０１４２】
図１２の具体例では、構成情報に保護フラグが含まれる場合に、その構成情報に基づき回路の構成変更がされるときに、演算記憶部をリセットから保護する。【０１４３】
この場合、構成情報Ａに含まれるリセットフラグＡの値を「０」、構成情報Ｂに含まれるリセットフラグＢの値を「１」、構成情報Ｃに含まれるリセットフラグＣの値を「１」に設定すればよい。【０１４４】
リセットフラグＡは「０」なので、時刻Ｔ１〜Ｔ２まで、リセット保護部は通常モードであり、さらに、回路Ａによる処理を行う前の時刻Ｔ１で演算記憶部１０５はリセットされる。【０１４５】
リセットフラグＢは「１」なので、時刻Ｔ２〜Ｔ３まで、リセット保護部は保護モードであり、時刻Ｔ２で、演算記憶部はリセットから保護される。【０１４６】
リセットフラグＣは「１」なので、時刻Ｔ３以降、リセット保護部は保護モードであり、時刻Ｔ３で、演算記憶部はリセットから保護される。【０１４７】
この構成により、演算処理部１０１は、回路Ａで算出された演算結果を回路Ｂで利用することができ、回路Ｂで算出された演算結果を回路Ｃで利用することができる。【０１４８】
図１３の具体例では、構成情報に保護フラグが含まれる場合に、その構成情報の次の構成情報に基づき回路の構成変更がされるときに、演算記憶部をリセットから保護する。【０１４９】
この場合、構成情報Ａに含まれるリセットフラグＡの値を「１」、構成情報Ｂに含まれるリセットフラグＢの値を「１」、構成情報Ｃに含まれるリセットフラグＣの値を「０」に設定すればよい。【０１５０】
時刻Ｔ１以前にリセット保護部は通常モードなので、時刻Ｔ１で、演算記憶部はリセットされる。【０１５１】
そして、リセットフラグＡは「１」なので、時刻Ｔ１〜Ｔ２まで、リセット保護部は保護モードであり、時刻Ｔ２で、演算記憶部はリセットから保護される。【０１５２】
リセットフラグＢは「１」なので、時刻Ｔ２〜Ｔ３まで、リセット保護部は保護モードであり、時刻Ｔ３で、演算記憶部はリセットから保護される。【０１５３】
リセットフラグＣは「０」なので、時刻Ｔ３以降、リセット保護部は通常モードであり、回路Ｃの次の回路が構成されるときに、演算記憶部はリセットされる。【０１５４】
この構成により、演算処理部１０１は、回路Ａで算出された演算結果を回路Ｂで利用することができ、回路Ｂで算出された演算結果を回路Ｃで利用することができる。【０１５５】
（４）上記の実施形態で説明した再構成可能回路１は、例えば、図１４に示すＢｌｕ−ｒａｙレコーダシステム２に応用することができる。【０１５６】
Ｂｌｕ−ｒａｙレコーダシステム２は、図１４に示すように、メモリ処理用ＬＳＩ２０１、フラッシュメモリ２０２、ＤＲＡＭ２０３、光学Ｄｉｓｃ制御回路２０４、デジタルチューナ回路２０５、アナログチューナ回路２０６、ビデオＡ／Ｄ２０７、オーディオＡ／Ｄ２０８、ＵＳＢ用回路２０９、オーディオＤ／Ａ２１０、及びＨＤＭＩ用回路２１１から構成される。【０１５７】
ここで、メディア処理用ＬＳＩ２０１は、上記の実施形態で説明した再構成可能回路１、ＤＭＡ制御回路２１１、及びメディア制御回路２２２を含む。【０１５８】
再構成可能回路１は、各再構成セルの構成を変更しながら、ＡＶ入出力制御回路、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、メディア処理回路などの機能を実現する。【０１５９】
（５）さらに、上記の実施形態における再構成可能回路１は、様々な電子機器に搭載して用いることができる。【０１６０】
例えば、図１５に示すように、再構成可能回路１を組み込んだシステムＬＳＩ３を基板回路４に搭載する。そして基板回路４を、携帯電話５、放送受信装置又は蓄積再生装置６、デジタルテレビ７、車載端末８等に応用することができる。車載端末８は、自動車９に搭載して用いることができる。【０１６１】
（６）本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。【０１６２】
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。【０１６３】
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。【０１６４】
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記録しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。【０１６５】
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。【０１６６】
（７）上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【０１６７】
本発明は、ＦＰＧＡ、ＰＬＤ、リコンフィギュラブルロジック等の再構成可能回路に利用可能であって、特に数クロックで再構成を繰り返すマルチコンテキスト型のリコンフィギュラブルロジックに有効である。そして、本発明は、再構成可能回路を製造及び販売する産業、及び、これらの再構成回路を組み込んだ電子機器を製造及び販売する産業において利用可能である。
【図１】
2009063596.tif 000003
【図２】
2009063596.tif 000004
【図３】
2009063596.tif 000005
【図４】
2009063596.tif 000006
【図５】
2009063596.tif 000007
【図６】
2009063596.tif 000008
【図７】
2009063596.tif 000009
【図８】
2009063596.tif 000010
【図９】
2009063596.tif 000011
【図１０】
2009063596.tif 000012
【図１１】
2009063596.tif 000013
【図１２】
2009063596.tif 000014
【図１３】
2009063596.tif 000015
【図１４】
2009063596.tif 000016
【図１５】
2009063596.tif 000017
【手続補正書】
【提出日】平成21年6月25日(2009.6.25)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、再構成可能回路に関し、特に、再構成可能回路内で演算結果を保持するレジスタのリセットを制御する技術に関する。
【背景技術】
【０００２】
従来では複数個のＬＳＩで実現していたシステムを、近年では１チップに集約するＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  Ａ  Ｃｈｉｐ）と呼ばれるＬＳＩが多数開発されている。
ＳｏＣでは、多数の機能を一つのＬＳＩ上に実装するが、必要な全ての機能を搭載しようとすれば、回路面積が大きくなる。また、ユースケースによって使用する機能の組み合わせが決まっており、ＬＳＩ上で休止中のブロックが存在すれば、実装面積の非効率という問題がある。上記問題を解決すべくハードウェア的な柔軟性をもつ再構成可能回路が開発されている。
【０００３】
再構成可能回路では、各再構成セルの内部のレジスタに演算結果である中間データを保持しているが、構成変更時にレジスタが初期化されるため、構成変更後に前の演算結果を再利用することができない。
特許文献１は、再構成セルの外部にデータキャッシュ部を設け、データキャッシュ部に演算結果を退避させておくことにより、構成変更後においても、前の演算結果を再利用することができる発明を開示している。
【０００４】
具体的には、特許文献１は、ブロック単位で画像を処理する場合に、データキャッシュ部に複数のブロックの中間データを退避させておき、効率的に画像処理を行うことができる発明を開示している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−２０２２３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１の技術は、データの退避のためのデータキャッシュ部が必須であることからコスト高の問題が生じる。
さらには、特許文献１の技術は、画像処理のように複数のブロックデータに対して同一の処理を行う場合には有効であると考えられるが、小規模の再構成セルを用いて短い時間で再構成を繰り返す処理で用いれば、データの退避及びデータの復帰によるオーバーヘッドが大きくなり、処理性能が低下するという問題がある。
【０００７】
本発明は、上記の問題点に鑑みなされたものであって、データキャッシュ部を設けることなく、前の再構成可能回路で処理した中間データを、次の回路でも使用することができる再構成可能回路、再構成可能回路のリセット方法、及び、再構成可能回路で用いられる構成情報を生成する構成情報生成装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために、本発明の一実施形態である再構成可能回路は、  複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路であって、前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部と、前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部と、前記演算処理部の構成変更時に、前記フラグ保持部に保持されているリセットフラグを用いて、前記演算記憶部のリセットを制御するリセット制御部とを備えることを特徴とする。
【発明の効果】
【０００９】
上記の構成を有することにより、従来必要とされていた中間データ退避用のバッファメモリを必要とせずに、前の回路で生成された演算結果を次の回路で利用することができる。
また、上記の構成を有することにより、再構成可能回路に含まれる再構成セル毎に、演算内容に応じて、選択的に演算記憶部をリセットすることができるので、ユースケースに即した効率的な処理を実現できる。
【図面の簡単な説明】
【００１０】
【図１】再構成可能回路１の構成を示す図である。
【図２】再構成セル１１の構成を機能的に示す図である。
【図３】構成情報記憶部１０２の構成を機能的に示す図である。
【図４】リセット制御部１０４の構成を機能的に示す図である。
【図５】再構成セル１１の動作を示すフローチャートである。
【図６】（ａ）再構成セル１１が行う処理の具体例を説明するための図である。（ｂ）再構成セル１１に入力される構成情報１２０のデータ構成を示す図である。
【図７】（ａ）再構成セル１１の構成を模式的に示す図である。（ｂ）リセット制御の具体例を説明するための図である。
【図８】回路構成情報の生成処理の動作を示すフローチャートである。
【図９】回路構成情報の生成処理において、ユーザからリセットフラグの設定を受け付けるためのＧＵＩ画像を示す図である。
【図１０】本発明の変形例に係る再構成セル１１ａの構成を機能的に示す図である。
【図１１】本発明の変形例に係るリセット制御部１０４ａの構成を機能的に示す図である。
【図１２】本発明の変形例に係るリセット制御を説明するための図である。
【図１３】本発明の変形例に係るリセット制御を説明するための図である。
【図１４】本発明の再構成可能回路をＢｌｕ−ｒａｙレコーダシステムで用いる場合の例を示す図である。
【図１５】本発明の再構成可能回路の応用例を示す図である。
【発明を実施するための形態】
【００１１】
請求項１に記載の態様である再構成可能回路は、複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路であって、前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部と、前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部と、前記演算処理部の構成変更時に、前記フラグ保持部に保持されているリセットフラグを用いて、前記演算記憶部のリセットを制御するリセット制御部とを備えることを特徴とする。
【００１２】
請求項２に記載の態様である再構成可能回路において、前記リセット制御部は、前記リセットフラグが、リセットが必要である旨を示す場合に前記演算記憶部をリセットし、リセットが不要である旨を示す場合に前記演算記憶部をリセットしないように制御することを特徴とする。
この構成によると、再構成セル毎にリセットの要否を示すリセットフラグを用いて、演算記憶部をリセットしたり、リセットから保護したりすることができる。
【００１３】
ここで、リセットが不要である旨を示すリセットフラグが保持されている場合には、演算記憶部に保持されている演算結果を、外部バッファに退避させることなく、次の回路でも利用することができる。
請求項３に記載に態様である再構成可能回路において、前記各再構成セルは、前記演算処理部の構成を変更するための構成情報と前記リセットフラグとを対応付けて取得する取得手段と、前記取得手段が取得した前記構成情報を保持する構成情報保持部とを備え、前記フラグ保持部は、前記取得手段が取得した前記リセットフラグを保持し、前記リセット制御部は、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行うことを特徴とする。
【００１４】
ここで、前記取得手段は、後述する実施形態では、構成情報記憶部１０２によって実現される。
この構成によると、リセット制御部は、リセットフラグとセットで取得された構成情報を用いて構成される回路による演算処理の前に、演算記憶部のリセット制御を行うので、前記リセットフラグが、リセットが不要である旨を示す場合には、演算処理部は、前の回路で算出された演算結果を、当該構成情報を用いて構成される回路で利用することができる。
【００１５】
請求項４に記載の態様である再構成可能回路において、前記取得手段は、さらに、前記演算処理部の構成をさらに変更するための、前記構成情報とは異なる他の構成情報を取得し、前記リセット制御部は、前記取得手段が取得した前記他の構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行うことを特徴とする。
【００１６】
この構成によると、リセット制御部は、リセットフラグとセットで取得された構成情報を用いて構成される回路による演算結果が演算記憶部に保持されている状態において、次の構成情報を用いて演算記憶部が再構成される前に、前記リセットフラグを用いたリセット制御を行うので、前記リセットフラグが、リセットが不要である旨を示す場合には、演算処理部は、当該構成情報を用いて構成された回路で算出された演算結果を、次の構成情報を用いて構成される回路で利用することができる。
【００１７】
請求項５に記載の態様である再構成可能回路において、前記各再構成セルは、前記演算記憶部をリセットから保護する保護モード、及び、リセットから保護しない通常モードの何れかの状態にあり、前記リセットフラグは、前記各再構成セルの状態を通常モードから保護モードへ遷移させるための保護設定フラグ、及び、前記再構成セルの状態を保護モードから通常モードへ遷移させるための保護解除フラグの何れかに設定されており、前記リセット制御部は、再構成セルが通常モードの状態にある場合、並びに、再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されている場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットし、再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されていない場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットしないように制御することを特徴とする。
【００１８】
この構成によると、各再構成セルは、リセットフラグを用いてモードを遷移させ、モードに応じてリセットの保護／非保護を決定する。そのため、保護設定フラグを含まない構成情報で回路が構成されるときであっても、保護モードであれば、演算記憶部をリセットから保護することができる。
請求項６に記載の態様である再構成可能回路において、前記構成情報保持部は、前記演算処理部の構成変更を指示する構成変更信号を検出すると、前記演算処理部に対して構成情報を出力し、前記演算処理部は、前記構成情報保持部から受け取る前記構成情報を用いて内部を再構成し、前記リセット制御部は、前記構成変更信号を検出すると、前記再構成処理部による再構成処理と並行して、前記演算記憶部のリセット制御を行うことを特徴とする。
【００１９】
例えば、クロック用のグローバル配線を用いて、各再構成セルにリセット信号を入力する場合、構成切替時には、構成切替信号のための１クロックと、リセット信号のための１クロックとが必要である。そして、数クロックで構成を変更しながら処理を行うアプリケーションを実行する場合を考えると、構成切替信号に１クロック、リセット信号に１クロックを要すると、リセット時間が、オーバーヘッドとして大きくなってしまう。
【００２０】
しかし、上記の構成によると、再構成処理とリセット制御とを並列処理するため、リセット時間を再構成時間内に隠蔽することができ、リセット制御によるオーバーヘッドを解消することができる。
請求項７に記載の態様である再構成可能回路において、前記リセット制御部は、前記構成変更信号を検出すると、リセット信号を生成するリセット生成部と、前記リセット生成部により生成された前記リセット信号を受け取ると、前記フラグ保持部に保持されている前記リセットフラグを用いて、前記リセット信号を前記演算記憶部に出力するか否かを判断し、前記リセット信号を出力すると判断する場合にのみ、前記リセット信号を前記演算記憶部に出力し、前記リセット信号を出力しないと判断する場合には、前記リセット信号を前記演算記憶部に出力しないリセット保護部とを備え、前記演算記憶部は、前記リセット保護部から前記リセット信号を受け取った場合にのみ、内部をリセットすることを特徴とする。
【００２１】
上記の構成では、再構成セル毎にローカル配線を用いてリセット制御を行う。そのため、外部から各再構成セルにリセット信号を入力するためのグローバル配線は不要である。
請求項８に記載の態様である構成情報生成装置は、複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路で用いられる構成情報を生成する構成情報生成装置であって、前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部を備え、前記構成情報生成装置は、前記構成情報を生成する過程において、前記各再構成セルの構成変更時にリセットする演算記憶部の選択を、ユーザから受け付けることを特徴とする。
【００２２】
ここで、前記構成情報生成装置は、後述する実施形態では、コンパイラを実行するコンパイル装置によって実現される。
この構成によると、再構成可能回路を用いて実行される様々なコンピュータプログラムを作成する際に、再構成セル毎に、リセットの要否をユーザが設定することが可能となる。
【００２３】
請求項９に記載の態様である構成情報生成装置は、前記演算処理部の構成を変更するための情報である演算構成情報のソースコードの入力を受け付けるソースコード入力手段と、前記ソースコードの構文を解析する解析手段と、前記解析手段が演算記憶部を示す所定の構文を検出すると、構成変更時に前記演算記憶部をリセットするか否かを示すリセットフラグの設定をユーザから受け付けるためのＧＵＩ画像を出力する出力手段と、ユーザの操作により、リセットフラグの設定を受け付けるユーザ入力手段とを備えることを特徴とする。
【００２４】
この構成によると、ユーザはＧＵＩ画像を用いることで、簡便な操作でリセットフラグを設定することができる。
請求項１０に記載の態様である構成情報生成装置は、さらに、前記演算構成情報とユーザにより指定された前記リセットフラグとを含む構成情報を生成する構成情報生成手段を含むことを特徴とする。
【００２５】
この構成によると、ユーザが設定したリセットフラグを含む構成情報を生成することができる。
以下、本発明の一実施形態である再構成可能回路１について、図面を参照して説明する。
＜構成＞
図１は、再構成可能回路１を示す図である。
【００２６】
同図に示すように、再構成可能回路１は、構成制御部１０、及び、マトリックス状に配置された複数個の再構成セル１１、１２、１３、・・・から構成される。
１．構成制御部１０
構成制御部１０は、再構成可能回路１の外部に接続された外部メモリから、回路構成情報の入力を受け付ける。回路構成情報は、再構成セル１１、１２、１３、・・・を用いて所望の回路を構成するために各再構成セルの演算内容及び配線を決定するための構成情報を含む。
【００２７】
構成制御部１０は、再構成可能回路１に含まれる全ての再構成セルと接続されており、各再構成セルへ、対応する構成情報を出力する。また、構成制御部１０は、各再構成セルへ、回路の変更を指示する構成切替信号を出力する。
２．再構成セル
図１に記載した複数個の再構成セルのそれぞれは、組み合わせ回路、順序回路、フリップフロップ等から構成され、入力される構成情報に従い演算内容を変更しながら処理を行う。
【００２８】
図２は、再構成セル１１の内部構成を機能的に示す機能ブロック図である。なお、再構成セル１１以外の他の再構成セル１２、１３、・・・は、再構成セル１１と同様の構成を有するため説明を省略する。
図２に示すように、再構成セル１１は、演算処理部１０１、構成情報記憶部１０２、配線部１０３、リセット制御部１０４、及び演算記憶部１０５から構成される。以下では、再構成セル１１の各構成要素について説明する。
【００２９】
（１）演算処理部１０１
演算処理部１０１は、ＡＬＵ（Ａｒｉｔｈｍｅｔｉｃ  Ｌｏｇｉｃ  Ｕｎｉｔ）及びＬＵＴ（Ｌｏｏｋ  Ｕｐ  Ｔａｂｌｅ）等から構成され、構成情報記憶部１０２から受け取る演算構成情報、演算記憶部１０５内の演算結果、及び他の再構成セルから受け取る演算結果等を入力として、算術演算及び論理演算を行う。
【００３０】
演算処理部１０１は、構成切替信号に基づき、構成情報記憶部１０２から演算構成情報を受け取ると、受け取った演算構成情報に基づいてＬＵＴの設定値を変更することにより、回路の再構成を行う。
なお、演算処理部１０１は、具体的には小規模なＳＲＡＭで構成される。
（２）構成情報記憶部１０２
図３は、構成情報記憶部１０２の内部構成を示す図である。
【００３１】
同図に示すように、構成情報記憶部１０２は、演算構成情報保持部１０２１、配線構成情報保持部１０２２、及びリセットフラグ保持部１０２３を含み、これらの各構成要素は、複数のフリップフロップから成るレジスタで構成されている。
構成情報記憶部１０２は、構成制御部１０から構成情報の入力を受け付けることにより、構成情報を取得する。構成情報は、演算処理部１０１にて所望の演算を実現するための情報であって、演算構成情報、配線構成情報、及びリセットフラグから構成される。
【００３２】
構成情報記憶部１０２は、構成制御部１０から受け取る構成情報に含まれる演算構成情報を演算構成情報保持部１０２１に保持し、配線構成情報を、配線構成情報保持部１０２２に保持し、リセットフラグを、リセットフラグ保持部１０２３に保持する。
続いて、構成情報に含まれる各情報について説明する。
演算構成情報は、演算処理部１０１が行う演算内容を決定するための情報であり、先に述べたようにＬＵＴの設定値などを含む。
【００３３】
配線構成情報は、配線部１０３の接続を決定するための情報であり、具体的には配線部１０３に含まれる複数個のトランジスタスイッチのオン又はオフを示す情報である。
リセットフラグは、演算記憶部１０５のリセットを制御するための情報であって、具体的には、保護設定フラグ及び保護解除フラグの２種類がある。
後述するリセット保護部１０４２は、演算記憶部１０５をリセットから保護する保護モードと、リセットから保護しない通常モードとの何れかの状態にある。保護設定フラグは、リセット保護部１０４２の状態を、通常モードから保護モードへ遷移させるためのフラグであり、保護解除モードは、リセット保護部１０４２の状態を、保護モードから通常モードへ遷移させるためのフラグである。
【００３４】
リセット保護部１０４２の状態が保護モードのとき、演算記憶部１０５内のデータは、回路の再構成時にリセットから保護されるので、演算処理部１０１は、前の演算で生成された演算結果を次の演算でも使用することができる。
一方、リセット保護部１０４２の状態が通常モードのとき、演算記憶部１０５内のデータは、回路の再構成時にリセットされるので、演算処理部１０１は、前の演算で生成された演算結果を次の演算で使用することはできない。
【００３５】
再構成セル１１は、構成情報に基づき回路の構成を変更しながら一連の処理を行うが、構成情報に含まれるリセットフラグを用いて、リセット保護部１０４２の状態（モード）を変更しながら演算記憶部１０５のリセット制御を行う。このようにして、再構成セル１１は、一連の処理において、演算記憶部１０５に保持されている演算結果を有効に利用し、処理の効率化を図ることができる。
【００３６】
なお、構成情報記憶部１０２が構成制御部１０から受け取る構成情報に、演算構成情報及び配線構成情報のみが含まれ、保護設定フラグ及び保護解除フラグの何れも含まれていない場合には、リセット保護部１０４２は、現在の状態を維持し、そのときの状態に応じて、演算記憶部１０５のリセットを制御する。
ここで、実装レベルの具体例として、構成情報に含まれるリセットフラグを２ビットのデータで表してもよい。この場合、例えば、保護設定フラグを「０１」とし、保護解除フラグを「１０」とし、保護設定フラグ及び保護解除フラグの何れでもない場合を「００」としてもよい。
【００３７】
（３）配線部１０３
配線部１０３は、演算処理部１０１及び演算記憶部１０５を、他の再構成セルと接続することができる。具体的には、配線部１０３は、各再構成セルを接続している配線の端子であり、複数のトランジスタスイッチで構成される。各トランジスタスイッチは、構成情報記憶部１０２から受け取る配線構成情報に基づいて、オン及びオフの何れかに設定される。
【００３８】
また、配線部１０３は、構成切替信号に基づき、構成情報記憶部１０２から配線構成情報を受け取ると、受け取った配線構成情報に基づいて各トランジスタスイッチのオン及びオフの設定を変更することにより、接続先を変更することができる。
（４）リセット制御部１０４
図４は、リセット制御部１０４の内部構成を示す図である。同図に示すように、リセット制御部１０４は、リセット生成部１０４１及びリセット保護部１０４２から構成される。
【００３９】
リセット生成部１０４１は、回路の再構成時を検出する機能を備え、再構成時を検出すると、リセット信号を生成する。リセット生成部１０４１は、生成したリセット信号をリセット保護部１０４２へ出力する。
なお、本実施形態では、グローバル配線を用いて、構成制御部１０から各再構成セルへ回路の再構成を指示する構成切替信号が入力されるので、リセット生成部１０４１は、構成切替信号を検出すると、リセット信号を生成する。
【００４０】
リセット保護部１０４２は、通常モード及び保護モードの何れかの状態を保持している。
リセット保護部１０４２は、通常モードのときに、リセット生成部１０４１によって生成されたリセット信号を受け取ると、リセット信号を演算記憶部１０５に出力する。
また、リセット保護部１０４２は、保護モードのときに、リセット信号をマスクする機能を備え、リセット信号をマスクすることにより、演算記憶部１０５をリセットから保護することができる。
【００４１】
再構成セル１１が処理を行っていない初期状態では、リセット保護部１０４２は通常モードである。そして、再構成セル１１が保護設定フラグを含む構成情報に基づき処理を行った後に、リセット保護部１０４２は、通常モードから保護モードへ遷移する。その後、リセット保護部１０４２は、再構成セル１１が保護解除フラグを含む構成情報に基づき回路を再構成するまで、保護モードを維持する。
【００４２】
（５）演算記憶部１０５
演算記憶部１０５は、演算処理部１０１による演算結果を保持するレジスタを含む。
演算記憶部１０５は、リセット保護部１０４２からリセット信号を受け取ると、レジスタをリセットする。
先に述べたように、回路の再構成時に演算記憶部１０５のレジスタがリセットされると、前の回路による演算で生成された演算結果を、次に構成された回路による演算で利用することができるが、回路の再構成時にレジスタがリセットされなければ、前の回路による演算で生成された演算結果を、次に構成された回路による演算で利用することができない。
【００４３】
＜動作＞
図５は、再構成セル１１の動作を示すフローチャートである。
再構成可能回路１は複数の再構成セルから構成されるので、再構成可能回路１全体では、各再構成セルによって、図５に示す動作が並列処理される。
再構成セル１１は、構成情報記憶部１０２に構成情報が入力されると、処理を開始する。
【００４４】
構成変更信号を検出しない場合（ステップＳ１でＮ）、再構成セル１１は、処理を終了する。構成変更信号を検出する場合（ステップＳ１でＹ）、再構成セル１１は、ステップＳ２の処理とステップＳ３からステップＳ９までの処理とを並列に行う。
ステップＳ１で構成変更信号を検出した構成情報記憶部１０２は、演算構成情報保持部１０２１に保持されている演算構成情報を演算処理部１０１へ出力し、配線構成情報保持部１０２２に保持されている配線構成情報を配線部１０３へ出力する。
【００４５】
演算処理部１０１は、受け取った演算構成情報に基づき回路の再構成を行い、配線部１０３は、受け取った配線構成情報に基づきトランジスタスイッチのオン及びオフの設定を行う（ステップＳ２）。
ステップＳ１で構成変更信号を検出したリセット生成部１０４１は、リセット信号を生成し、リセット保護部１０４２へ出力する。
【００４６】
リセット保護部１０４２は、リセット信号を受け取ると、現在のモードが保護モードであるのか、通常モードであるのか判断する。
通常モードの場合（ステップＳ３でＮ）、ステップＳ６へ進む。
保護モードの場合（ステップＳ３でＹ）、リセット保護部１０４２は、リセットフラグ保持部１０２３に保護解除フラグが保持されているか否か判断する。なお、リセットフラグ保持部１０２３に、２種類のリセットフラグが保持されている場合（後述する図６（ｂ）の構成情報Ａのように、２種類のリセットフラグＡ１及びＡ２が含まれる場合）は、ここでは、先頭のリセットフラグ（図６（ｂ）のリセットフラグＡ１）が保護解除フラグであるか否かを判断する。
【００４７】
保護解除フラグが保持されている場合（ステップＳ４でＹ）、リセット保護部１０４２は、モードを保護モードから通常モードに変更して（ステップＳ５）、ステップＳ６へ進む。
保護解除フラグが保持されていない場合（ステップＳ４でＮ）、リセット保護部１０４２は、ステップＳ８へ進む。
【００４８】
リセット保護部１０４２の状態が通常モードのとき、リセット保護部１０４２は、リセット信号を演算記憶部１０５へ出力する。リセット信号を受け付けた演算記憶部１０５は、内部のレジスタをリセットする（ステップＳ６）。
次に、リセット保護部１０４２は、リセットフラグ保持部１０２３に保護設定フラグが保持されているか否か判断する。なお、リセットフラグ保持部１０２３に、２種類のリセットフラグが保持されている場合（後述する図６（ｂ）の構成情報Ａのように、２種類のリセットフラグＡ１及びリセットフラグＡ２が含まれる場合）は、ここでは、先頭のリセットフラグに後続するリセットフラグ（図６（ｂ）のリセットフラグＡ２）が保護設定フラグであるか否かを判断する。
【００４９】
保護設定フラグが保持されている場合（ステップＳ７でＹ）、モードを保護モードに変更し、既に保護モードの場合は、そのまま保護モードを維持する（ステップＳ８）。
保護設定フラグが保持されていない場合（ステップＳ７でＮ）、モードを通常モードに変更し、既に通常モードの場合は、そのまま通常モードを維持する（ステップＳ９）。
ステップＳ２の再構成とステップＳ３からステップＳ９までのリセット制御とが終了すると、演算処理部１０１は、演算処理を行う（ステップＳ１０）。
【００５０】
その後、再構成セル１１は、ステップＳ１に戻り、処理を継続する。
＜具体例＞
ここでは、図６（ａ）に示すように、再構成セル１１が、入力データＡ及び入力データＢに対して、１クロック毎に構成を変更しながら３クロックで、加算処理、乗算処理及び減算処理の順序で処理を行う場合を考える。
【００５１】
ここで、２クロック目の乗算処理及び３クロック目の減算処理は、それぞれ前の処理の演算結果を使用して処理を行う。
なお、以下では、図６（ａ）に示す加算処理、乗算処理及び減算処理を行う回路を、それぞれ、回路Ａ、回路Ｂ、及び回路Ｃと呼称する。
図６（ａ）に示した一連の処理を行うため、構成情報記憶部１０２には、図６（ｂ）に示す構成情報Ａ（１２１）、構成情報Ｂ（１２２）、及び構成情報Ｃ（１２３）が入力される。
【００５２】
構成情報Ａは、回路Ａを構成するための情報であり、構成情報Ｂは、回路Ｂを構成するための情報であり、構成情報Ｃは、回路Ｃを構成するための情報である。
構成情報Ａ（１２１）は、リセットフラグＡ１（１０）、リセットフラグＡ２（０１）、演算構成情報Ａ、及び配線構成情報Ａから構成される。リセットフラグＡ１及びＡ２は、回路Ａを構成するときに演算記憶部１０５のリセットを制御するための情報である。
【００５３】
構成情報Ｂ（１２２）は、リセットフラグＢ（００）、演算構成情報Ｂ、及び配線構成情報Ｂから構成される。リセットフラグＢは、回路Ｂを構成するときに演算記憶部１０５のリセットを制御するための情報である。
構成情報Ｃ（１２３）は、リセットフラグＣ（００）、演算構成情報Ｃ、及び配線構成情報Ｃから構成される。リセットフラグＣは、回路Ｃを構成するときに演算記憶部１０５のリセットを制御するための情報である。
【００５４】
なお、ここでは、保護設定フラグを「０１」と表し、保護解除フラグを「１０」と表している。また、構成情報に保護設定フラグ及び保護解除フラグの何れでもない場合を「００」と表している。したがって、リセットフラグＡ１は、保護解除フラグであり、リセットフラグＡ２は、保護設定フラグであり、リセットフラグＢ及びＣは、何れでもない。
続いて、図７を用いて、再構成セル１１における、モード、リセットフラグ、及びリセット制御について説明する。
【００５５】
図７（ａ）は、再構成セル１１の構成要素を模式的に表している。
図７（ｂ）は、再構成セル１１で構成される回路とモードの時間的変化、リセットフラグ、及びリセット制御について説明するための図である。
先ず、構成変更信号を検出すると、再構成セル１１は、構成情報Ａ（１２１）に基づく処理を開始する。
【００５６】
図６（ｂ）に示したように、構成情報Ａ（１２１）に含まれるリセットフラグＡ１は、保護解除フラグであるから、加算処理→乗算処理→減算処理の一連の処理の開始前である時刻Ｔ１において、再構成セル１１は、通常モードに設定される。以後、保護設定フラグが出るまで、再構成セル１１は、通常モードを維持する。
時刻Ｔ１において、再構成セル１１が通常モードに設定されるのは、回路Ａによる演算の前に、演算記憶部１０５をリセットするためである。
【００５７】
なお、処理開始前のモードが通常モードであるなら、保護解除フラグが無くても回路Ａを構成するときに演算記憶部１０５は当然にリセットされる（図５のフローチャートのステップＳ３及びステップＳ５参照）。したがって、ここに設定されているリセットフラグＡ１（保護解除フラグ）は、処理開始前のモードが保護モードの場合であっても、演算記憶部１０５をリセットしてから処理を開始できるようにするためである。
【００５８】
いま、再構成セル１１は通常モードであるから、時刻Ｔ１の後に、演算記憶部１０５はリセットされる。
続いて、構成情報Ａ（１２１）には、保護設定フラグであるリセットフラグＡ２が含まれることから、演算記憶部１０５のリセットの後、時刻Ｔ２において再構成セル１１は保護モードに設定される（図５のフローチャートのステップＳ７及びステップＳ８参照）。以後、保護解除フラグが出るまで、再構成セル１１は保護モードを維持する。
【００５９】
リセット制御と並行して、演算処理部１０１及び配線部１０３では、それぞれ、構成情報Ａ（１２１）に含まれる演算構成情報Ａ及び配線構成情報Ａに基づき回路Ａを構成する。そして、再構成セル１１は、時刻Ｔ２以降に、回路Ａによる加算処理を行う。加算処理の結果であるＡ＋Ｂの値は、演算記憶部１０５に保持される。
次に、構成変更信号を検出すると、再構成セル１１は、構成情報Ｂ（１２２）に基づく処理を開始する。
【００６０】
図６（ｂ）に示したように、構成情報Ｂ（１２２）に含まれるリセットフラグＢは、保護解除フラグではないから、再構成セル１１は、このまま保護モードを維持する。したがって、時刻Ｔ３において演算記憶部１０５はリセットされない。
リセット制御と並行して、演算処理部１０１及び配線部１０３では、それぞれ、構成情報Ｂ（１２２）に含まれる演算構成情報Ｂ及び配線構成情報Ｂに基づき回路Ｂを構成する。そして、再構成セル１１は、時刻Ｔ３以降に、演算記憶部１０５に保持されているＡ＋Ｂの値を用いて、回路Ｂによる乗算処理を行う。乗算処理の結果である（Ａ＋Ｂ）×Ｂの値は、演算記憶部１０５に保持される。
【００６１】
次に、構成変更信号を検出すると、再構成セル１１は、構成情報Ｃ（１２３）に基づく処理を開始する。
図６（ｂ）に示したように、構成情報Ｃ（１２３）に含まれるリセットフラグＣは、保護解除フラグではないから、再構成セル１１は、このまま保護モードを維持する。したがって、時刻Ｔ４において演算記憶部１０５はリセットされない。
【００６２】
リセット制御と並行して、演算処理部１０１及び配線部１０３では、それぞれ、構成情報Ｃ（１２３）に含まれる演算構成情報Ｃ及び配線構成情報Ｃに基づき回路Ｃを構成する。そして、再構成セル１１は、時刻Ｔ４以降に、演算記憶部１０５に保持されている（Ａ＋Ｂ）×Ｂの値を用いて、回路Ｃによる減算処理を行う。減算処理の結果である（（Ａ＋Ｂ）×Ｂ）−Ｂの値は、演算記憶部１０５に保持され、その後、他の再構成セルや外部端子へ出力される。
【００６３】
＜回路構成情報の生成＞
再構成可能回路１で用いられる構成情報を作成する過程において、ユーザは、ＥＤＡ（Ｅｌｅｃｔｒｏｎｉｃ  Ｄｅｓｉｇｎ  Ａｕｔｏｍａｔｉｏｎ）ツールを用いて、構成情報に含まれるリセットフラグの設定を行うことができる。以下では、ＥＤＡツールを用いたリセットフラグの設定について説明する。
【００６４】
図８は、再構成可能回路１で用いられる回路構成情報の生成処理の動作を示すフローチャートである。ここに示す動作は、図示していないコンパイル装置がコンパイラを実行することにより実現される。
先ず、コンパイル装置にソースコードが入力される（ステップＳ１１）。ここで入力されるソースコードは、ＨＤＬ（Ｈａｒｄｗａｒｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ）で記述されており、再構成可能回路１の各再構成セルで用いられる演算構成情報及び配線構成情報が記述されている。
【００６５】
コンパイル装置は、always文を検索する。always文が検出されなければ（ステップＳ１２でＮ）、ステップＳ１７に進む。
always文が検出されると（ステップＳ１２でＹ）、コンパイル装置は、always文に続くライン毎にレジスタ記述（ここでは、一例としてReg_delay_sel）を検索する。レジスタ記述が検出されなければ（ステップＳ１３でＮ）、ステップＳ１７に進む。
【００６６】
レジスタ記述が検出されると（ステップＳ１３でＹ）、コンパイル装置は、ソースコードにリセットフラグ設定のためのＧＵＩ画像を付加した画面を、コンパイル装置と接続されているディスプレイに出力する（ステップＳ１４）。
続いて、コンパイル装置は、ユーザ入力を受け付ける（ステップＳ１５）。例えば、ユーザは、ディスプレイに表示されている画面を見ながら、コンパイル装置に接続されたキーボードやマウス等の入力デバイスを用いて、保護設定フラグ及び保護解除フラグの選択を入力する。
【００６７】
コンパイル装置は、ステップＳ１５で受け付けた内容に従って、演算構成情報及び配線構成情報に対応付けて、リセットフラグを設定する（ステップＳ１６）。
なお、ステップＳ１３で複数のレジスタ記述が検出されると、コンパイル装置は、検出されたレジスタ記述毎に、ステップＳ１４からステップＳ１６までの処理を繰り返す。
コンパイル装置は、入力されたソースコードの全てについて処理が終了していなければ（ステップＳ１７でＮ）、ステップＳ１２に戻り処理を続ける。入力されたソースコードの全てについて処理が終了していれば（ステップＳ１７でＹ）、コンパイル装置は、ソースコードをオブジェクトコードへ変換し（ステップＳ１８）、その後、処理を終了する。
【００６８】
ここで生成されたオブジェクトコードは、回路構成情報として、再構成可能回路１と接続された外部メモリに格納される。
図９は、図８のステップＳ１５で、ディスプレイに表示される画面の具体例を示す図である。
同図に示すように、画面１５０は、ＨＤＬで記述された構成情報のソースコードが表示されており、always文１０５１に続くレジスタ記述（Reg_delay_sel）１０５２に対応付けて、ＧＵＩ画像１５１が付加されている。
【００６９】
ＧＵＩ画像１５１は、リセット保護設定を受け付けるチェックボックス１５２と、リセット解除設定を受け付けるチェックボックス１５３とを含む。ユーザは、入力デバイスを用いて（例えば、マウスをクリックすることにより）、画面１５０上でチェックボックス１５２及びチェックボックス１５３にチェックを入れることができる。
ユーザがチェックボックス１５２をチェックすれば、レジスタ記述１０５２に対応する演算記憶部をリセットから保護するために、コンパイル装置は、構成情報に含まれるリセットフラグに「保護設定フラグ」を設定する。
【００７０】
一方、ユーザがチェックボックス１５３をチェックすれば、レジスタ記述１０５２に対応する演算記憶部をリセットするために、コンパイル装置は、構成情報に含まれるリセットフラグに「保護解除フラグ」を設定する。
＜その他の変形例＞
以上、本発明を上記の実施形態に基づき説明してきたが、本発明は、上記の実施形態に限定されないのは勿論のことであり、以下のような場合も本発明に含まれる。
【００７１】
（１）上記の実施形態では、各再構成セルの演算記憶部にリセットフラグが１対１に対応しており、再構成セル毎に演算記憶部のリセット制御を行うことができる。しかし、本発明はこの構成に限定されず、演算記憶部内の特定のビットフィールド毎に一つのリセットフラグを割り当てて、ビットフィールド毎にリセットの可否を制御してもよい。この構成により、きめ細かいリセット制御を実現することが可能となる。
【００７２】
（２）上記の実施形態では、リセット制御部１０４がリセット生成部１０４１を備え、リセット生成部１０４１が構成切替信号を検出することにより、リセット信号を生成する構成を有していた。しかし、本発明は、この構成に限定されず、以下のような場合も含まれる。
例えば、図１０に示す再構成セル１１ａは、上記の実施形態のリセット制御部１０４に替えて、リセット制御部１０４ａを備える。リセット制御部１０４ａは、リセット信号を生成せず、外部信号として取り込む構成を備えている。この場合、配線リソースが多く必要になるが、図１１に示すように、リセット制御部１０４ａは、リセット保護部１０４２のみを備えており、リセット生成部１０４１を備えている必要がない。
【００７３】
（３）上記の実施形態では、リセットフラグは２ビットの情報であり、保護設定フラグ及び保護解除フラグの２種類があった。しかしながら、本発明におけるリセットフラグは、１ビットの情報で、保護解除フラグを用いず、保護フラグのみを用いても実現することができる。
例えば、構成情報に含まれるリセットフラグが「１」の場合を「保護フラグあり」とし、構成情報に含まれるリセットフラグが「０」の場合を「保護フラグなし」としてリセット制御を行うことができる。
【００７４】
また、上記の実施形態では、保護設定フラグの有効期限（保護モードの有効期限）は、次に保護解除フラグが出るまでであった。しかし、保護フラグのみを用いてリセット制御を実現する場合には、保護フラグの有効期限（保護モードの有効期限）は、再構成セルが一つの構成で処理を行う期間のみとする。
図１２及び図１３は、保護フラグのみを用いてリセット制御を実現する実施形態を示す図である。ここでは、図６及び図７で説明した例と同様の例を用いて説明する。なお、再構成セルで回路Ａが構成される以前のリセット保護部の状態は「通常モード」であるとする。
【００７５】
図１２の具体例では、構成情報に保護フラグが含まれる場合に、その構成情報に基づき回路の構成変更がされるときに、演算記憶部をリセットから保護する。
この場合、構成情報Ａに含まれるリセットフラグＡの値を「０」、構成情報Ｂに含まれるリセットフラグＢの値を「１」、構成情報Ｃに含まれるリセットフラグＣの値を「１」に設定すればよい。
【００７６】
リセットフラグＡは「０」なので、時刻Ｔ１〜Ｔ２まで、リセット保護部は通常モードであり、さらに、回路Ａによる処理を行う前の時刻Ｔ１で演算記憶部１０５はリセットされる。
リセットフラグＢは「１」なので、時刻Ｔ２〜Ｔ３まで、リセット保護部は保護モードであり、時刻Ｔ２で、演算記憶部はリセットから保護される。
【００７７】
リセットフラグＣは「１」なので、時刻Ｔ３以降、リセット保護部は保護モードであり、時刻Ｔ３で、演算記憶部はリセットから保護される。
この構成により、演算処理部１０１は、回路Ａで算出された演算結果を回路Ｂで利用することができ、回路Ｂで算出された演算結果を回路Ｃで利用することができる。
図１３の具体例では、構成情報に保護フラグが含まれる場合に、その構成情報の次の構成情報に基づき回路の構成変更がされるときに、演算記憶部をリセットから保護する。
【００７８】
この場合、構成情報Ａに含まれるリセットフラグＡの値を「１」、構成情報Ｂに含まれるリセットフラグＢの値を「１」、構成情報Ｃに含まれるリセットフラグＣの値を「０」に設定すればよい。
時刻Ｔ１以前にリセット保護部は通常モードなので、時刻Ｔ１で、演算記憶部はリセットされる。
【００７９】
そして、リセットフラグＡは「１」なので、時刻Ｔ１〜Ｔ２まで、リセット保護部は保護モードであり、時刻Ｔ２で、演算記憶部はリセットから保護される。
リセットフラグＢは「１」なので、時刻Ｔ２〜Ｔ３まで、リセット保護部は保護モードであり、時刻Ｔ３で、演算記憶部はリセットから保護される。
リセットフラグＣは「０」なので、時刻Ｔ３以降、リセット保護部は通常モードであり、回路Ｃの次の回路が構成されるときに、演算記憶部はリセットされる。
【００８０】
この構成により、演算処理部１０１は、回路Ａで算出された演算結果を回路Ｂで利用することができ、回路Ｂで算出された演算結果を回路Ｃで利用することができる。
（４）上記の実施形態で説明した再構成可能回路１は、例えば、図１４に示すＢｌｕ−ｒａｙレコーダシステム２に応用することができる。
Ｂｌｕ−ｒａｙレコーダシステム２は、図１４に示すように、メモリ処理用ＬＳＩ２０１、フラッシュメモリ２０２、ＤＲＡＭ２０３、光学Ｄｉｓｃ制御回路２０４、デジタルチューナ回路２０５、アナログチューナ回路２０６、ビデオＡ／Ｄ２０７、オーディオＡ／Ｄ２０８、ＵＳＢ用回路２０９、オーディオＤ／Ａ２１０、及びＨＤＭＩ用回路２１１から構成される。
【００８１】
ここで、メディア処理用ＬＳＩ２０１は、上記の実施形態で説明した再構成可能回路１、ＤＭＡ制御回路２１１、及びメディア制御回路２２２を含む。
再構成可能回路１は、各再構成セルの構成を変更しながら、ＡＶ入出力制御回路、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、メディア処理回路などの機能を実現する。
【００８２】
（５）さらに、上記の実施形態における再構成可能回路１は、様々な電子機器に搭載して用いることができる。
例えば、図１５に示すように、再構成可能回路１を組み込んだシステムＬＳＩ３を基板回路４に搭載する。そして基板回路４を、携帯電話５、放送受信装置又は蓄積再生装置６、デジタルテレビ７、車載端末８等に応用することができる。車載端末８は、自動車９に搭載して用いることができる。
【００８３】
（６）本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
【００８４】
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記録しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
【００８５】
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
（７）上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【産業上の利用可能性】
【００８６】
本発明は、ＦＰＧＡ、ＰＬＤ、リコンフィギュラブルロジック等の再構成可能回路に利用可能であって、特に数クロックで再構成を繰り返すマルチコンテキスト型のリコンフィギュラブルロジックに有効である。そして、本発明は、再構成可能回路を製造及び販売する産業、及び、これらの再構成回路を組み込んだ電子機器を製造及び販売する産業において利用可能である。
【符号の説明】
【００８７】
１      再構成可能回路
１０      構成制御部
１１      再構成セル
１１ａ    再構成セル
１２  再構成セル
１０１  演算処理部
１０２  構成情報記憶部
１０３  配線部
１０４  リセット制御部
１０４ａ リセット制御部
１０５  演算記憶部
１０２１           演算構成情報保持部
１０２２           配線構成情報保持部
１０２３    リセットフラグ保持部
１０４１    リセット生成部
１０４２    リセット保護部
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路であって、
前記各再構成セルは、
前記演算処理部による演算結果を保持する演算記憶部と、
前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部と、
前記演算処理部の構成変更時に、前記フラグ保持部に保持されているリセットフラグを用いて、前記演算記憶部のリセットを制御するリセット制御部と
を備えることを特徴とする再構成可能回路。
【請求項２】
前記リセット制御部は、前記リセットフラグが、リセットが必要である旨を示す場合に前記演算記憶部をリセットし、リセットが不要である旨を示す場合に前記演算記憶部をリセットしないように制御する
ことを特徴とする請求項１に記載の再構成可能回路。
【請求項３】
前記各再構成セルは、
前記演算処理部の構成を変更するための構成情報と前記リセットフラグとを対応付けて取得する取得手段と、
前記取得手段が取得した前記構成情報を保持する構成情報保持部とを備え、
前記フラグ保持部は、前記取得手段が取得した前記リセットフラグを保持し、
前記リセット制御部は、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行う
ことを特徴とする請求項２に記載の再構成可能回路。
【請求項４】
前記取得手段は、さらに、前記演算処理部の構成をさらに変更するための、前記構成情報とは異なる他の構成情報を取得し、
前記リセット制御部は、前記取得手段が取得した前記他の構成情報に基づいて前記演算処理部の構成が変更される時に、前記リセットフラグを用いて前記演算記憶部のリセット制御を行う
ことを特徴とする請求項３に記載の再構成可能回路。
【請求項５】
前記各再構成セルは、前記演算記憶部をリセットから保護する保護モード、及び、リセットから保護しない通常モードの何れかの状態にあり、
前記リセットフラグは、前記各再構成セルの状態を通常モードから保護モードへ遷移させるための保護設定フラグ、及び、前記再構成セルの状態を保護モードから通常モードへ遷移させるための保護解除フラグの何れかに設定されており、
前記リセット制御部は、
再構成セルが通常モードの状態にある場合、並びに、再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されている場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットし、
再構成セルが保護モードの状態にあり、且つ、前記リセットフラグが保護解除フラグに設定されていない場合に、前記構成情報に基づいて前記演算処理部の構成が変更される時に、前記演算記憶部をリセットしないように制御する
ことを特徴とする請求項４に記載の再構成可能回路。
【請求項６】
前記構成情報保持部は、前記演算処理部の構成変更を指示する構成変更信号を検出すると、前記演算処理部に対して構成情報を出力し、
前記演算処理部は、前記構成情報保持部から受け取る前記構成情報を用いて内部を再構成し、
前記リセット制御部は、前記構成変更信号を検出すると、前記再構成処理部による再構成処理と並行して、前記演算記憶部のリセット制御を行う
ことを特徴とする請求項３に記載の再構成可能回路。
【請求項７】
前記リセット制御部は、
前記構成変更信号を検出すると、リセット信号を生成するリセット生成部と、
前記リセット生成部により生成された前記リセット信号を受け取ると、前記フラグ保持部に保持されている前記リセットフラグを用いて、前記リセット信号を前記演算記憶部に出力するか否かを判断し、前記リセット信号を出力すると判断する場合にのみ、前記リセット信号を前記演算記憶部に出力し、前記リセット信号を出力しないと判断する場合には、前記リセット信号を前記演算記憶部に出力しないリセット保護部とを備え、
前記演算記憶部は、前記リセット保護部から前記リセット信号を受け取った場合にのみ、内部をリセットする
ことを特徴とする請求項６に記載の再構成可能回路。
【請求項８】
複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路で用いられる構成情報を生成する構成情報生成装置であって、
前記各再構成セルは、前記演算処理部による演算結果を保持する演算記憶部を備え、
前記構成情報生成装置は、
前記構成情報を生成する過程において、前記各再構成セルの構成変更時にリセットする演算記憶部の選択を、ユーザから受け付ける
ことを特徴とする構成情報生成装置。
【請求項９】
前記構成情報生成装置は、
前記演算処理部の構成を変更するための情報である演算構成情報のソースコードの入力を受け付けるソースコード入力手段と、
前記ソースコードの構文を解析する解析手段と、
前記解析手段が演算記憶部を示す所定の構文を検出すると、構成変更時に前記演算記憶部をリセットするか否かを示すリセットフラグの設定をユーザから受け付けるためのＧＵＩ画像を出力する出力手段と、
ユーザの操作により、リセットフラグの設定を受け付けるユーザ入力手段と
を備えることを特徴とする請求項８に記載の構成情報生成装置。
【請求項１０】
前記構成情報生成装置は、さらに、
前記演算構成情報とユーザにより指定された前記リセットフラグとを含む構成情報を生成する構成情報生成手段を含む
ことを特徴とする請求項９に記載の構成情報生成装置。
【請求項１１】
複数の再構成セルを含み、各再構成セルに含まれる演算処理部の構成を変更する再構成可能回路で用いられるリセット方法であって、
前記各再構成セルは、
前記演算処理部による演算結果を保持する演算記憶部と、
前記演算記憶部のリセットの要否を示すリセットフラグを保持しているフラグ保持部とを備え、
前記リセット方法は、
前記フラグ保持部からリセットフラグを取得するステップと、
前記リセットフラグの値を判断するステップと、
前記再構成処理部の構成変更時に、前記リセットフラグの値に応じて、前記演算記憶部のリセットを制御するステップとを含む
ことを特徴とするリセット方法。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2009063596.tif 000018
【図２】
2009063596.tif 000019
【図３】
2009063596.tif 000020
【図４】
2009063596.tif 000021
【図５】
2009063596.tif 000022
【図６】
2009063596.tif 000023
【図７】
2009063596.tif 000024
【図８】
2009063596.tif 000025
【図９】
2009063596.tif 000026
【図１０】
2009063596.tif 000027
【図１１】
2009063596.tif 000028
【図１２】
2009063596.tif 000029
【図１３】
2009063596.tif 000030
【図１４】
2009063596.tif 000031
【図１５】
2009063596.tif 000032
【国際調査報告】
2009063596.tif 000033
2009063596.tif 000034
2009063596.tif 000035