(57)【要約】【課題】低消費電力化、設計期間の短縮化、及び複数の用途に対してシステム構成を変更することを可能とする。【解決手段】特定の機能を有する機能ブロックであるコンポーネントの集合であるコンポーネント群１０２と、コンポーネント群の各コンポーネントの動作条件及びコンポーネント間の接続情報を含むパラメータが格納されている記憶手段１０６と、コンポーネント群の各コンポーネントに動作条件及びコンポーネント間の接続情報を含むパラメータを設定する制御手段１００と、各部の動作を規定するクロックを生成し、各部に供給するクロック生成部１１２とを有する。【選択図】      図１
2005004343.tif 000002
【特許請求の範囲】
【請求項１】
特定の機能を有する機能ブロックであるコンポーネントの集合であるコンポーネント群と、
前記コンポーネント群の各コンポーネントの動作条件及びコンポーネント間の接続情報を含むパラメータが格納されている記憶手段と、
前記コンポーネント群の各コンポーネントに動作条件及びコンポーネント間の接続情報を含むパラメータを設定する制御手段と、
各部の動作を規定するクロックを生成し、各部に供給するクロック生成部と、を有することを特徴とする論理集積回路。
【請求項２】
前記各コンポーネントは、
入力信号を取り込み、一時的に保持し、出力する入力インタフェース部と、
前記制御手段により転送された前記パラメータを保存する記憶部と、
前記入力インタフェースを介して入力されたデータを前記記憶部に保存された前記パラメータによって割り当てられた機能により処理するコア部と、
前記コア部から出力されるデータを一時的に保持し、外部に出力する出力インタフェース部と、
各部の動作タイミングを制御する制御部と、を有することを特徴とする請求項１に記載の論理集積回路。
【請求項３】
前記入力インタフェース部及び出力インタフェース部をそれぞれ、複数有することを特徴とする請求項２に記載の論理集積回路。
【請求項４】
前記入力インタフェース部は、
入力されるデータを一時的に保持し、出力するＲＡＭと、
前記ＲＡＭにデータが入力されるメモリエリアを指定するための入力アドレスを生成する入力アドレス生成部と、
前記ＲＡＭから出力されるデータが格納されているメモリエリアを指定するための出力アドレスを生成する出力アドレス生成部と、
外部または内部からの制御信号に基づいて前記入力アドレス生成部及び出力アドレス生成部を制御するタイミング制御部と、を有することを特徴とする請求項２または３のいずれかに記載の論理集積回路。
【請求項５】
前記出力インタフェース部は、
入力されるデータを一時的に保持し、出力するＲＡＭと、
前記ＲＡＭにデータが入力されるメモリエリアを指定するための入力アドレスを生成する入力アドレス生成部と、
前記ＲＡＭから出力されるデータが格納されているメモリエリアを指定するための出力アドレスを生成する出力アドレス生成部と、
外部または内部からの制御信号に基づいて前記入力アドレス生成部及び出力アドレス生成部を制御するタイミング制御部と、を有することを特徴とする請求項２または３のいずれかに記載の論理集積回路。
【請求項６】
前記クロック生成部は、周波数が異なる複数のクロックを生成し、各コンポーネントに供給するクロックを、各コンポーネントの内部で使用するクロックと、各コンポーネントにおける外部との入出力に使用するクロックとで異なる周波数とすることを特徴とする請求項１乃至５のいずれかに記載の論理集積回路。
【請求項７】
前記入力インタフェース部におけるＲＡＭは、デュアルポートＲＡＭであり、
前記クロック生成部は、周波数が異なる複数のクロックを生成し、
前記ＲＡＭにおいて、書き込み動作に使用するクロックと読み出し動作に使用するクロックとで周波数を異ならしめるように、前記ＲＡＭに対し異なる周波数のクロックを供給することを特徴とする請求項４に記載の論理集積回路。
【請求項８】
前記出力インタフェース部におけるＲＡＭは、デュアルポートＲＡＭであり、
前記クロック生成部は、周波数が異なる複数のクロックを生成し、
前記ＲＡＭにおいて、書き込み動作に使用するクロックと読み出し動作に使用するクロックとで周波数を異ならしめるように、前記ＲＡＭに対し異なる周波数のクロックを供給することを特徴とする請求項５に記載の論理集積回路。
【請求項９】
前記コンポーネント群のうちのいずれかのコンポーネントは、
入力されるデータを処理し、該処理されたデータを転送すべき外部のコンポーネントに対して出力する信号処理手段と、
前記信号処理手段がデータ処理に要する時間だけ、書き込みアドレスリセット信号を遅延させて前記転送すべき外部のコンポーネントに出力する遅延回路と、前記コンポーネント群の各コンポーネントの動作条件及びコンポーネント間の接続情報を含むパラメータが格納されている記憶手段と、を有することを特徴とする請求項１乃至８のいずれかに記載の論理集積回路。
【請求項１０】
前記コア部に、前記入力インタフェース部を構成する出力アドレス生成部と、出力インタフェース部を構成する入力アドレス生成部を設けたことを特徴とする請求項１乃至９のいずれかに記載の論理集積回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、論理集積回路に関する。
【０００２】
【従来の技術】
アイピーフレックス株式会社では、開発対象システムをソフトウェア（Ｃ言語など）で記述すると、それがそのままカスタム・チップ並みの性能を持った高性能デバイスになる「Ｓｏｆｔｗａｒｅ  ｔｏ  Ｓｉｌｉｃｏｎ」を実現するリコンフィギュラブル・プロセッサ技術がある（例えば、非特許文献１参照。）。そのプロセッサの構成を図２３に示す。
【０００３】
ＤＡＰ／ＤＮＡ−ＨＰと呼ばれている。ＤＡＰ（Ｄｉｇｉｔａｌ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｃｅｓｓｏｒ）はハーバード・アーキテクチャを採用したアイピーフレックス独自の３２ビットＲＩＳＣプロセッサである。図２４に示すようにＤＮＡ（Ｄｉｓｔｒｉｂｕｔｅｄ  Ｎｅｔｗｏｒｋ  Ａｒｃｈｉｔｅｃｔｕｒｅ）マトリックスは１４４個のダイナミックにリコンフィギュレーション可能な演算ユニットが配置されたデータ・フロー型のアクセラレータである。各エレメント間の配線はダイナミックに変更することができ、アプリケーションに応じてこれらの演算ユニットが実行する処理に応じたパラレル／パイプライン処理系を瞬時に構成することができる。
【０００４】
【非特許文献１】
アイピーフレックス社
Ｄｉｇｉｔａｌ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｃｅｓｓｏｒ／Ｄｉｓｔｒｉｂｕｔｅｄ  Ｎｅｔｗｏｒｋ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＤＡＰ／ＤＮＡ）
（ｈｔｔｐ：／／ｗｗｗ．ｉｐｆｌｅｘ．ｃｏｍ／ｐｒｏｄｕｃｔ／ｄａｐｄｎａ＿ａｒｃ．ｈｔｍｌ）
【０００５】
【発明が解決しようとする課題】
しかしながら、マルチプロセッサを使用した論理回路は、低消費電力化には困難と思われる。また、用途を限定した場合には、マルチプロセッサを使用するという複雑な処理を行う必要がない。特定の複数の用途に変更できれば良い場合には、高コストになることが予想される。
本発明はこのような事情に鑑みてなされたものであり、低消費電力化、設計期間の短縮化、及び複数の用途に対してシステム構成を変更することができる論理集積回路を提供することを目的とする。
【０００６】
【課題を解決するための手段】上記目的を達成するために、請求項１に記載の発明は、特定の機能を有する機能ブロックであるコンポーネントの集合であるコンポーネント群と、前記コンポーネント群の各コンポーネントの動作条件及びコンポーネント間の接続情報を含むパラメータが格納されている記憶手段と、前記コンポーネント群の各コンポーネントに動作条件及びコンポーネント間の接続情報を含むパラメータを設定する制御手段と、各部の動作を規定するクロックを生成し、各部に供給するクロック生成部とを有することを特徴とする。
【０００７】
また、請求項２に記載の発明は、請求項１に記載の論理集積回路において、前記各コンポーネントは、入力信号を取り込み、一時的に保持し、出力する入力インタフェース部と、前記制御手段により転送された前記パラメータを保存する記憶部と、前記入力インタフェースを介して入力されたデータを前記記憶部に保存された前記パラメータによって割り当てられた機能により処理するコア部と、前記コア部から出力されるデータを一時的に保持し、外部に出力する出力インタフェース部と、各部の動作タイミングを制御する制御部とを有することを特徴とする。
【０００８】
また、請求項３に記載の発明は、請求項２に記載の論理集積回路において、前記入力インタフェース部及び出力インタフェース部をそれぞれ、複数有することを特徴とする。
【０００９】
また、請求項４に記載の発明は、請求項２または３のいずれかに記載の論理集積回路において、前記入力インタフェース部は、入力されるデータを一時的に保持し、出力するＲＡＭと、前記ＲＡＭにデータが入力されるメモリエリアを指定するための入力アドレスを生成する入力アドレス生成部と、前記ＲＡＭから出力されるデータが格納されているメモリエリアを指定するための出力アドレスを生成する出力アドレス生成部と、外部または内部からの制御信号に基づいて前記入力アドレス生成部及び出力アドレス生成部を制御するタイミング制御部とを有することを特徴とする。
【００１０】
また、請求項５に記載の発明は、請求項２または３のいずれかに記載の論理集積回路において、前記出力インタフェース部は、入力されるデータを一時的に保持し、出力するＲＡＭと、前記ＲＡＭにデータが入力されるメモリエリアを指定するための入力アドレスを生成する入力アドレス生成部と、前記ＲＡＭから出力されるデータが格納されているメモリエリアを指定するための出力アドレスを生成する出力アドレス生成部と、外部または内部からの制御信号に基づいて前記入力アドレス生成部及び出力アドレス生成部を制御するタイミング制御部とを有することを特徴とする。
【００１１】
また、請求項６に記載の発明は、請求項１乃至５のいずれかに記載の論理集積回路において、前記クロック生成部は、周波数が異なる複数のクロックを生成し、各コンポーネントに供給するクロックを、各コンポーネントの内部で使用するクロックと、各コンポーネントにおける外部との入出力に使用するクロックとで異なる周波数とすることを特徴とする。
【００１２】
また、請求項７に記載の発明は、請求項４に記載の論理集積回路において、前記入力インタフェース部におけるＲＡＭは、デュアルポートＲＡＭであり、前記クロック生成部は、周波数が異なる複数のクロックを生成し、前記ＲＡＭにおいて、書き込み動作に使用するクロックと読み出し動作に使用するクロックとで周波数を異ならしめるように、前記ＲＡＭに対し異なる周波数のクロックを供給することを特徴とする。
【００１３】
また、請求項８に記載の発明は、請求項５に記載の論理集積回路において、前記出力インタフェース部におけるＲＡＭは、デュアルポートＲＡＭであり、前記クロック生成部は、周波数が異なる複数のクロックを生成し、前記ＲＡＭにおいて、書き込み動作に使用するクロックと読み出し動作に使用するクロックとで周波数を異ならしめるように、前記ＲＡＭに対し異なる周波数のクロックを供給することを特徴とする。
【００１４】
また、請求項９に記載の発明は、請求項１乃至８のいずれかに記載の論理集積回路において、前記コンポーネント群のうちのいずれかのコンポーネントは、
入力されるデータを処理し、該処理されたデータを転送すべき外部のコンポーネントに対して出力する信号処理手段と、前記信号処理手段がデータ処理に要する時間だけ、書き込みアドレスリセット信号を遅延させて前記転送すべき外部のコンポーネントに出力する遅延回路と、前記コンポーネント群の各コンポーネントの動作条件及びコンポーネント間の接続情報を含むパラメータが格納されている記憶手段とを有することを特徴とする。
【００１５】
また、請求項１０に記載の発明は、請求項１乃至９のいずれかに記載の論理集積回路において、前記コア部に、前記入力インタフェース部を構成する出力アドレス生成部と、出力インタフェース部を構成する入力アドレス生成部を設けたことを特徴とする。
【００１６】
【発明の実施の形態】
以下、本発明の実施形態を、図面を参照して詳細に説明する。図１に本発明の実施形態に係る論理集積回路の構成を示す。同図において、本実施形態に係る論理集積回路１は、ＣＰＵ１００と、機能ブロックであるコンポーネントの集合体であるコンポーネント群１０２と、ＲＯＭ１０４と、ＲＡＭ１０６と、インタフェース変換器１０８、１１０と、各部に供給するクロックを生成するクロック生成回路（ＣＬＫ）１１２とを有している。
【００１７】
ＣＰＵ１００は、各コンポーネントに対し、各コンポーネントの動作条件及びコンポーネント間の接続情報を含むパラメータの設定を行い、かつ各コンポーネントの動作管理を行う機能を有している。ＲＯＭ１０４には各種制御プログラム及び固定データが格納されている。また、ＲＡＭ１０６には、各コンポーネントに設定されるパラメータが格納される。
インタフェース変換器１０８は、ＣＰＵ１００と外部との入出力のインタフェースを行う機能を有する。
【００１８】
また、インタフェース変換器１１０は、ＣＰＵ１００を介さずにコンポーネント群１０２と外部との入出力のインタフェースを行う機能を有している。
コンポーネント群１０２は、図２に示すようにそれぞれ、特定の機能を有する複数のコンポーネント（例えば、Ａ〜Ｈ）の集合体であり、これらのコンポーネントＡ〜Ｈの論理的な接続関係をＣＰＵ１００によるパラメータの設定により行うことにより複数種のシステムを構築することができるようになっている。
【００１９】
図３に本発明に係る論理集積回路におけるコンポーネントの使用例を示す。図３において、システム１では、コンポーネントＡ，Ｂ，Ｃ，Ｄがこの接続により動作している。システム２ではＡ，Ｆ，Ｇ，Ｄがこの接続により動作している。このように、コンポーネント群１０２の外部から、具体的にはＣＰＵ１００により設定されるパラメータによりこのように動作及び接続線を選択して、複数の機能を備えること、すなわち、機能の異なる複数種のシステムを構築することができる。
【００２０】
次に、本発明の実施形態に係る論理集積回路におけるコンポーネント群を構成するコンポーネントの具体的構成を図４に示す。同図において、コンポーネント２０は入力インタフェース（Ｉ／Ｆ）部２００と、コア部２０２と、出力インタフェース部２０４と、制御部２０６と、パラメータ保存用ＲＡＭ２０８とからなり、入力側と出力側が明確に区別されている。
【００２１】
図１におけるＣＰＵ１００に接続するバスはパラメータ保存用ＲＡＭ２０８に接続されており、ＣＰＵ１００は、パラメータ保存用ＲＡＭ２０８に対して読み書きできるようになっている。ＣＰＵ１００がパラメータ保存用ＲＡＭ２０８にパラメータを設定することにより、コンポーネント２０は機能を選択することができるようになっている。
また、コンポーネント２０が異常動作を行った場合には、パラメータ保存用ＲＡＭ２０８に割り付けられたビットをアラーム信号として、コンポーネント２０はＣＰＵ１００に対して異常を知らせることが可能である。
【００２２】
図５は本発明のコンポーネント群１０２の各コンポーネントにパラメータを設定するためのＲＡＭ１０６（図１）におけるアドレスマップを示している。同図において、アドレス００００のＮビットはコンポーネントＡの情報（パラメータ）であり、アドレス０００１、０００２はコンポーネントＢの情報である。各コンポーネントに対して任意の数の情報を予め用意可能である。
【００２３】
図６はコンポーネントの情報の使用例を示している。ＦＦＴ（高速フーリエ変換）演算機能を例にとり、説明する。コンポーネント２０のパラメータ保存用ＲＡＭ２０８は、例えば、８ビットのレジスタ群で構成されている。図６は、ＣＰＵ１００によりＲＡＭ１０６よりコンポーネント２０のパラメータ保存用ＲＡＭ２０８（８ビットのレジスタ）にパラメータが転送され、設定されている状態を示している。
【００２４】
図６において、ビット０（ｂ０）は動作設定ビットであり、ＣＰＵ１００がｂ０に０を書き込めば、このコンポーネントは動作し、ビット０（ｂ０）に１を書き込めば、休止する。ビット１（ｂ１）、ビット２（ｂ２）はＦＦＴのポイント数である。ｂ２、ｂ１が（００）のとき１６ポイント、ｂ２、ｂ１が（０１）のとき６４ポイント、ｂ２、ｂ１が（１０）のとき２５６ポイント、ｂ２、ｂ１が（１１）のとき１０２４ポイントとして動作する。
【００２５】
ビット３（ｂ３）は自己診断モードを示す。ｂ３が０のとき自己診断モードとなる。自己診断時は該コンポーネントが正常動作するか否か確認を行う。例えば、ある特定の信号を入力して、その答えが期待値と一致するか否かをもって判定する。もし一致すれば、正常として、該コンポーネントがｂ７を０にする。異常であれば、該コンポーネントがｂ７を１にする。
【００２６】
ＣＰＵ１００はコンポーネントによる自己診断後、コンポーネントのパラメータ保存用ＲＡＭ２０８内のレジスタにおけるｂ７をみて、コンポーネントを診断する。ｂ４、ｂ５、ｂ６はＣＰＵ１００がＦＦＴ内部のゲインを設定する。このように、ＣＰＵ１００は各コンポーネントに対して、設定パラメータによって、複数の機能を有する論理集積回路とすることができる。
【００２７】
図７は図４に示すコンポーネント２０内部の入力インタフェース（Ｉ／Ｆ）部２００の構成を示している。入力インタフェース部２００は、ＲＡＭ２０００と、入力アドレス生成器２００１と、出力アドレス生成器２００２と、タイミング制御部２００３とを有している。ＲＡＭ２０００はデュアルポートＲＡＭであってもよい。
入力データはＲＡＭ２０００に一時的に格納されることによりコンポーネント２０内部に入力可能な状態になる。
【００２８】
入力アドレス生成器２００１と出力アドレス生成器２００２からのパラメータ設定により、アドレス数を設定する。図６に示した例では、ＦＦＴ演算のポイント数がアドレス数に相当する。外部からの制御信号とコンポーネント２０内部の制御部２０６からの命令によりタイミング制御部２００３は入出力のアドレスを生成し、データの入力、データのコンポーネント２０内部への出力を行う。
【００２９】
図８はコンポーネント２０内部の出力インタフェース部２０４の構成を示している。出力インタフェース部２０４はＲＡＭ２０４０と、入力アドレス生成器２０４１と、出力アドレス生成器２０４２と、タイミング制御部２０４３とを有している。ＲＡＭ２０４０は、デュアルポートＲＡＭであってもよい。
コンポーネント内部からのデータはＲＡＭ２０４０に一時的に格納されることによりコンポーネント２０の外部に出力可能な状態となる。
【００３０】
入力アドレス生成器２０４１と出力アドレス生成器２０４２はＣＰＵ１００からのパラメータ設定により、アドレス数を設定する。図６に示した例では、ＦＦＴ演算のポイント数がアドレス数に相当する。コンポーネント２０外部からの制御信号とコンポーネント２０内部の制御部２０６からの命令によりタイミング制御部２０４３は入出力のアドレスを生成し、コンポーネント２０内部からのデータを入力を行い、コンポーネント２０外部へのデータ出力を行う。
【００３１】
図９は外部入力、入力インタフェース（Ｉ／Ｆ）部２００、出力インタフェース（Ｉ／Ｆ）部２０４、外部出力、及びコンポーネント２０内部における制御部２０６の命令フロー例を示している。同図において丸は制御部２０６からの命令を示している。制御部２０６は図９に示すフローを統括する。
図９において、まず、制御部２０６は入力インタフェース部２００に入力許可命令を出す。入力インタフェース（Ｉ／Ｆ）部２００は、外部からの書き込み要求信号を受けると許可を示す。
【００３２】
もし、入力不許可の場合は入力インタフェース（Ｉ／Ｆ）部２００は、確認メッセージＡＣＫを外部に返さない。確認メッセージＡＣＫを外部に対して返すと、外部から書き込みアドレスリセット信号と共にデータが送られてくる。
入力インタフェース部２００では、書き込みアドレスリセット信号で入力アドレス生成器２００１をリセットすると共に、ＲＡＭ２０００に書き込む。所定のデータ数をＲＡＭ２０００に書き込むと、制御部２０６は入力インタフェース部２００に入力不許可命令を出す。
【００３３】
その後、制御部２０６は入力インタフェース部２００内のＲＡＭ２０００に出力命令を送り、入力インタフェース部２０００のＲＡＭ２０００から出力アドレス生成器２００２を用いてデータをコア部２０２に出力する。コア部２０２ではデータを処理し、処理されたデータは、予め定められた遅延時間で出力インタフェース部２０４のＲＡＭ２０４０に到達する。
【００３４】
制御部２０６は出力インタフェース部２０４に対し、データの到達時間が合うように、入力命令を出して、入力インタフェース部２０００における出力アドレス生成器２００２を動作させて、出力インタフェース部２０４のＲＡＭ２０４０に入力させる。
所定のデータ数が出力インタフェース部２０４のＲＡＭ２０４０に書き込まれると、制御部２０６は出力インタフェース部２０４に対して入力停止命令を送る。
【００３５】
その後、制御部２０６は出力インタフェース部２０４のＲＡＭ２０４０に対して外部への出力命令を送る。出力インタフェース部２０４は外部に対して出力要求信号を送り、外部からは確認メッセージＡＣＫが返ってくるまで待つ。
確認メッセージＡＣＫが外部から返ってくれば、出力アドレスリセット信号を出力アドレス生成器２０４２に出力して出力アドレスをリセットする。
【００３６】
そして、出力インタフェース部２０４のＲＡＭ２０４０に対して、出力アドレス生成器２０４２を用いてデータを出力させる。所定のデータ数がＲＡＭ２０４０から出力されると、制御部２０６は出力インタフェース部２０４に対して、出力停止命令を送る。
なお、外部の入出力は、同じ構成のコンポーネントで接続される。以上述べたように、本発明の論理集積回路は動作する。
【００３７】
次に、本発明の実施形態に係る論理集積回路におけるコンポーネントの他の構成例を図１０に示す。このコンポーネント３０は、入力インタフェース（Ｉ／Ｆ）部３００と、コア部３０２と、出力インタフェース（Ｉ／Ｆ）部３０４と、制御部３０６と、パラメータ保存用ＲＡＭ３０８とを有している。
このコンポーネント３０は、周波数の異なる複数のクロック１，２，３を用いることを特徴としている。
【００３８】
このコンポーネント３０では、コンポーネント３０内部の動作に使用するクロック２と外部との入出力に対するクロック１、３とを異なる周波数にする。その理由として、コンポーネント内部は１まとまりとして、集積回路に配置されるとすると、高速のクロックに対して動作するが、コンポーネント間を接続した場合、集積回路の構成によっては接続されるコンポーネントは相互に離れた場所に配置される場合も想定される。
【００３９】
その時、配線の引き回しに起因する遅延が発生するため、高速のクロックを用いてコンポーネント間を動作させることができない場合もある。そのような場合には、コンポーネントにおけるデータの入出力動作に使用するクロックとコンポーネント内部の動作に使用するクロックとを異なる周波数のものを使う必要がある場合がある。論理集積回路１内のクロック生成回路１１２は、上述した周波数の異なるクロック１、２、３を生成し、各コンポーネントに供給する。
なお、このとき入力インタフェース部３００と出力インタフェース部３０４では、記憶手段としてはデュアルポートＲＡＭを用いる。
【００４０】
次に、図１０に示したコンポーネント３０における入力インタフェース（Ｉ／Ｆ）部３００の構成を図１１に示す。同図において、入力インタフェース（Ｉ／Ｆ）部３００は、デュアルポートＲＡＭ（ＤＰ‐ＲＡＭ）３０００と、入力アドレス生成器３００１と、出力アドレス生成器３００２と、タイミング制御部３００３とを有している。
上記構成において、入力インタフェース部３００内部のデュアルポートＲＡＭ３０００には入出力に対して、周波数の異なるクロック１、２が入力されている。
【００４１】
次に、図１０に示したコンポーネント３０における出力インタフェース（Ｉ／Ｆ）部３０４の構成を図１２に示す。同図において、出力インタフェース（Ｉ／Ｆ）部３０４は、デュアルポートＲＡＭ（ＤＰ‐ＲＡＭ）３０４０と、入力アドレス生成器３０４１と、出力アドレス生成器３０４２と、タイミング制御部３０４３と、分周器３０４４とを有している。
【００４２】
上記構成において、出力インタフェース部３０４内部のデュアルポートＲＡＭ３０４０には入出力に対して、異なるクロック２、３が入力されている。このうちクロック３は、図１に示すクロック生成回路１１２から供給されるのではなく、この実施例では、クロック２を分周器３０４４により分周することにより得ている。すなわち、この出力インタフェース部３０４が内蔵されるコンポーネント３０に接続されるコンポーネントの処理が比較的遅い場合に次のコンポーネントの入力インタフェース部に供給するクロックを、その周波数が低くなるようにクロック３の周波数を変更するものである。
【００４３】
次に、本発明の実施形態に係る論理集積回路におけるコンポーネントの他の構成例を図１３に示す。同図において、コンポーネント４０は、信号処理部４００と、信号処理部４００でデータ処理に要する時間だけ書き込みアドレスリセット信号を遅延させる遅延回路４０２と、パラメータ保存用ＲＡＭ４０４とを有している。
コンポーネント４０は、図４に示したコンポーネント２０と比較すると判るように、入出力インタフェース部が無い。信号処理部４００は、コア部２０２と制御部２０６とを合わせた機能を有する。
【００４４】
図１３において、信号処理部４００は、ある特定の遅延時間をもってデータ処理し、出力する。書き込みアドレスリセット信号は、前記特定の遅延時間と同じ事件遅延させる遅延回路を通過する。つまり、信号処理部４００におけるデータ処理による遅延時間と、遅延回路を通過することによる書き込みアドレスリセット信号の遅延時間とをあわせることにより入力インタフェース部及び出力インタフェース部とを不要とするものである。図１３に示すコンポーネント４０は、ＲＡＭなしコンポーネントとする。
【００４５】
図１４は、ＲＡＭなしコンポーネント４０と図４に示す通常のコンポーネント２０（または図１０に示すコンポーネント３０）との接続例を示している。
図１４において、データ及び書き込みアドレスリセット信号がＲＡＭなしコンポーネント４０に入力される。後段に接続されるコンポーネント２０（または３０）から見れば、ＲＡＭなしコンポーネント４０は、図４または図１０に示すコンポーネントと同じに見える。
【００４６】
図１５は図１４におけるＲＡＭなしコンポーネント４０の後段に接続されるコンポーネント２０（または３０）の制御フローを示す。ＲＡＭなしコンポーネント４０が挿入されると、図１５の外部入力において黒く塗りつぶした部分がＲＡＭなしコンポーネント４０の処理遅延時間となる。図１５の制御フローでは、この遅延時間は吸収され、正しく動作していることが判る。
【００４７】
次に、本発明の実施形態に係る論理集積回路におけるコンポーネントの構成を図１６に示す。このコンポーネントは、入出力がそれぞれ複数個存在する場合に対応できる構成となっている。この例では、入出力をそれぞれ、２系統有しているものについて示している。同図において、コンポーネント５０は、入力インタフェース（Ｉ／Ｆ）部５００Ａ，５００Ｂと、コア部５０２と、出力インタフェース（Ｉ／Ｆ）部５０４Ａ，５０４Ｂと、制御部５０６と、パラメータ保存用ＲＡＭ５０８とを有している。
【００４８】
上記構成において、使用する入力インタフェース部または出力インタフェース部をパラメータの設定により、切り替えることにより、（１）入力インタフェース部が１つで、かつ出力インタフェース部が２つ、（２）入力インタフェース部が２つで、かつ出力インタフェース部が１つ、（３）入力インタフェース部が１つで、かつ出力インタフェース部が１つ、の各コンポーネントを構成することができる。
これにより、本発明による論理集積回路では、入力インタフェース部及び出力インタフェース部の数が異なるコンポーネントを混在させた状態でシステムを構築することができる。
【００４９】
次に、図１６に示したコンポーネントの接続例を図１７に示す。同図において、コンポーネント５０Ａ，５０Ｂが、コンポーネント５０Ｃに接続されている。
ここで、コンポーネント５０Ａ，５０Ｂの出力側とコンポーネント５０Ｃの入力側との間は、制御バス５２，５３はそれぞれ、独立に設けられているが、データバス５４は共通化されている。したがって、データ配線数の削減が図れる。
【００５０】
次に、図１７におけるコンポーネント５０Ａの制御フローを図１８に示す。同図において、出力インタフェース部において太く線が引いてある部分がある。この部分はコンポーネント５０Ａが出力していない時間帯である。この時間帯には、出力データバスを開放状態にする。その理由は、開放時には図１７におけるコンポーネント５０Ｂが出力可能である。このように図１７におけるコンポーネント５０Ｃの制御部がコンポーネント５０Ａとコンポーネント５０Ｂの入力を衝突しないように制御することによって、図１７の構成において、正しく動作可能となる。
【００５１】
次に、本発明の実施形態に係る論理集積回路におけるコンポーネントの他の構成例を図１９に示す。同図において、コンポーネント６０は、入力インタフェース（Ｉ／Ｆ）部６００と、コア部６０２と、出力インタフェース（Ｉ／Ｆ）部６０４と、制御部６０６と、パラメータ保存用ＲＡＭ６０８とを有している。このコンポーネント６０が図４に示すコンポーネント２０と構成上、異なるのは、入力インタフェース部及び出力インタフェース部における入出力アドレス生成器を含めるように構成した点である。すなわち、この例では、図２０に示すようにコア部６０２に、入力インタフェース部６００に設けられるべき出力アドレス生成器６００２と、出力インタフェース部６０４に設けられるべき入力アドレス生成器６０４１とを設けている。
【００５２】
したがって、図１９における入力インタフェース（Ｉ／Ｆ）部６００の構成は図２１のようになる。すなわち、図２１において入力インタフェース（Ｉ／Ｆ）部６００は、ＲＡＭ６０００と、入力アドレス生成器６００１と、タイミング制御部６００３とを有している。既述したようにコア部６０２に出力アドレス生成器６００２を設け、この出力アドレス生成器６００２をＲＡＭ６０００からデータを出力する際に出力アドレスを指定するようにしたので、入力インタフェース（Ｉ／Ｆ）部６００には出力アドレス生成器が設けられていない。
【００５３】
入力インタフェース（Ｉ／Ｆ）部６００と同様に、図１９における出力インタフェース（Ｉ／Ｆ）部６０４の構成は図２２のようになる。すなわち、図２２において出力インタフェース（Ｉ／Ｆ）部６０４は、ＲＡＭ６０４０と、出力アドレス生成器６０４２と、タイミング制御部６０４３とを有している。既述したようにコア部６０２に入力アドレス生成器６０４１を設け、この入力アドレス生成器６０４１をＲＡＭ６０４０にデータを入力する際に入力アドレスを指定するようにしたので、出力インタフェース（Ｉ／Ｆ）部６０４には入力アドレス生成器が設けられていない。
【００５４】
【発明の効果】
以上、述べたように、本発明の論理集積回路は特定の機能をもつコンポーネント群を備え、各コンポーネントは低消費電力化さている。各コンポーネントを接続してできる論理集積回路全体も低消費電力化される。
本発明の各コンポーネント間は共通の制御フローをもつインタフェースで接続される。インタフェースを共通化することにより、この仕様で作成されるコンポーネントは再利用が容易になる。コンポーネントの最適化を図る場合においても、１クロックタイミングがずれただけで、後段が再設計となることはない。最適化されたコンポーネントを取り替えるだけでよい。
【００５５】
本発明の論理集積回路において、内蔵されるＣＰＵから、各コンポーネントが動作または停止、モード設定、及び、動作可能接続線設定によって、使用用途を変更可能になっている。これらの設定はパラメータ設定に基づいてコンポーネントの制御部が行う。コンポーネントのコア部はハードマクロ化されている。機能そのものをダウンロードする必要はない。ＣＰＵからのパラメータ設定ということで変更データ数が少ない。これに対して、マルチプロセッサの場合はすべてのプロセッサに対してダウンロードプログラム変更なのでデータ数が多く、変更時間が多くなる。
【図面の簡単な説明】
【図１】本発明の実施形態に係る論理集積回路の構成を示すブロック図。
【図２】図１に示した本発明の実施形態に係る論理集積回路におけるコンポーネント群の構成例を示す説明図。
【図３】図２に示すコンポーネント群における各コンポーネントの接続例を示す説明図。
【図４】図１に示した本発明の実施形態に係る論理集積回路におけるコンポーネント群を構成するコンポーネントの具体的構成の一例を示すブロック図。
【図５】図１に示した本発明の実施形態に係る論理集積回路のＲＡＭにおけるアドレスマップを示す説明図。
【図６】コンポーネントの情報の使用例を示す説明図。
【図７】図４に示したコンポーネントにおける入力インタフェース部の具体的構成を示すブロック図。
【図８】図４に示したコンポーネントにおける出力インタフェース部の具体的構成を示すブロック図。
【図９】外部入力、入力インタフェース（Ｉ／Ｆ）部、出力インタフェース（Ｉ／Ｆ）部、外部出力、及びコンポーネント内部における制御部の命令フロー例を示すシーケンス図。
【図１０】本発明の実施形態に係る論理集積回路におけるコンポーネントの他の構成例を示すブロック図。
【図１１】図１０に示したコンポーネントにおける入力インタフェース部の具体的構成を示すブロック図。
【図１２】図１０に示したコンポーネントにおける出力インタフェース部の具体的構成を示すブロック図。
【図１３】ＲＡＭなしコンポーネントの具体的構成を示すブロック図。
【図１４】図１３に示したＲＡＭなしコンポーネントと通常のコンポーネントとの接続状態を示す説明図。
【図１５】図１４におけるＲＡＭなしコンポーネントの後段に接続される通常のコンポーネントの制御フローを示すシーケンス図。
【図１６】本発明の実施形態に係る論理集積回路におけるコンポーネントの他の構成例を示すブロック図。
【図１７】図１６に示したコンポーネントの接続例を示す説明図。
【図１８】図１７におけるコンポーネント５０Ａの制御フローを示すシーケンス図。
【図１９】本発明の実施形態に係る論理集積回路におけるコンポーネントの他の構成例を示すブロック図。
【図２０】図１９に示した本発明の実施形態に係る論理集積回路のコンポーネントにおけるコア部の構成を示すブロック図。
【図２１】図１９に示した本発明の実施形態に係る論理集積回路のコンポーネントにおける入力インタフェース部の構成を示すブロック図。
【図２２】図１９に示した本発明の実施形態に係る論理集積回路のコンポーネントにおける出力インタフェース部の構成を示すブロック図。
【図２３】従来のリコンフィギュラブルプロセッサの構成を示すブロック図。
【図２４】図２３に示した従来のリコンフィギュラブルプロセッサにおけるＤＮＡマトリックスの構成を示すブロック図。
【符号の説明】
１…論理集積回路
１００…ＣＰＵ（制御手段）
１０２…コンポーネント群
１０４…ＲＯＭ
１０６…ＲＡＭ（記憶手段）
１０８、１１０…インタフェース変換器
１１２…クロック生成回路（クロック生成部）
２０…コンポーネント
２００…入力インタフェース（Ｉ／Ｆ）部
２０２…コア部
２０４…出力インタフェース（Ｉ／Ｆ）部
２０６…制御部
２０８…パラメータ保存用ＲＡＭ
【図１】
2005004343.tif 000003
【図２】
2005004343.tif 000004
【図３】
2005004343.tif 000005
【図４】
2005004343.tif 000006
【図５】
2005004343.tif 000007
【図６】
2005004343.tif 000008
【図７】
2005004343.tif 000009
【図８】
2005004343.tif 000010
【図９】
2005004343.tif 000011
【図１０】
2005004343.tif 000012
【図１１】
2005004343.tif 000013
【図１２】
2005004343.tif 000014
【図１３】
2005004343.tif 000015
【図１４】
2005004343.tif 000016
【図１５】
2005004343.tif 000017
【図１６】
2005004343.tif 000018
【図１７】
2005004343.tif 000019
【図１８】
2005004343.tif 000020
【図１９】
2005004343.tif 000021
【図２０】
2005004343.tif 000022
【図２１】
2005004343.tif 000023
【図２２】
2005004343.tif 000024
【図２３】
2005004343.tif 000025
【図２４】
2005004343.tif 000026