(57)【要約】【課題】可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができ、小さなチップ占有面積で可変論理機能を実現可能な半導体とする。【解決手段】可変論理機能を実現するためにそれぞれ記憶回路（２０）と制御回路（２１）を有する複数の機能再構成セルを備え、真理値データを格納する記憶回路の読み出しアドレスを機能再構成セルの記憶情報によって自律的に制御する。前記制御回路は、第１動作モードではインタフェース制御回路から供給されるアドレス情報に基づいて前記データフィールド（２７＿Ｄ）と制御フィールド（２７＿Ｃ）をランダムアクセス可能とし、第２動作モードでは前記データフィールドと一緒にリードされた制御フィールドからの制御情報（ＤＡＴ＿Ｃ）を帰還入力し、入力したロジック制御情報に従ってデータフィールド及び制御フィールドのリードアドレスを順次更新する動作を繰り返してロジック動作を可能とする。【選択図】図１
2008293226.tif 000002
【特許請求の範囲】
【請求項１】
記憶回路と制御回路を有する複数の機能再構成セルと、
アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路と、を備え、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセス可能なデータフィールドと制御フィールドを有し、
前記制御回路は、第１動作モードでは前記インタフェース制御回路から供給されるアドレス情報に基づいて前記データフィールドと制御フィールドをランダムアクセス可能とし、第２動作モードでは前記データフィールドと一緒にリードされた制御フィールドからの制御情報を帰還入力し、入力した制御情報に従ってデータフィールド及び制御フィールドのリードアドレスを順次更新する動作を繰り返してロジック動作を可能とする、半導体装置。
【請求項２】
前記第２動作モードは前記インタフェース制御回路に対する所定の外部イベント信号の活性化によって指定される、請求項１記載の半導体装置。
【請求項３】
前記インタフェース制御回路は、アドレス信号の上位側情報用いて対応する前記機能再構成セルを指定し、これによって指定された機能再構成セルの前記制御回路は、前記第１モードでは前記アドレス信号の下位側情報用いて対応するデータフィールドと制御フィールドを指定し、前記第２モードでは帰還入力された制御情報に従ってデータフィールドと制御フィールドに対するリードアドレス更新の順次進行、リードアドレスの初期値復帰、又はリードアドレス更新の停止を制御する、請求項２記載の半導体装置。
【請求項４】
前記インタフェース制御回路は前記リードアドレス更新を停止したとき割込み信号を出力する、請求項３記載の半導体装置。
【請求項５】
前記複数の機能再構成セルは、アドレス信号の上位側情報用いて指定された前記機能再構成セルの前記データフィールドと制御フィールドのランダムアクセスに用いる第１バスと、アドレス信号の上位側情報用いて指定された前記機能再構成セルの前記ロジック動作に用いる第２バスとに共通接続される、請求項３記載の半導体装置。
【請求項６】
前記記憶回路とは異なるアドレスにマッピングされ前記第２バスに接続されたバッファレジスタを有し、
アクセス要求に応答して前記インタフェース制御回路が前記バッファレジスタの出力動作を制御する、請求項５記載の半導体装置。
【請求項７】
前記機能再構成セルは、前記データフィールド及び制御フィールドから読出された情報を他の機能再構成セル又は前記第２のバスに伝達する経路を可変可能に選択する接続経路選択回路を更に有する請求項５記載の半導体装置。
【請求項８】
前記接続経路選択回路は、前記経路を選択するスイッチ回路と、前記スイッチ回路のスイッチ状態を決定するスイッチ制御情報を書換え可能に保持する接続用記憶回路とを有する、請求項７記載の半導体装置。
【請求項９】
アクセス要求主体となり得るロジック回路と、前記ロジック回路からのアクセス要求に応答して動作する機能再構成メモリとを備える半導体装置であって、
前記機能再構成メモリは、記憶回路と制御回路を有する複数の機能再構成セルと、前記ロジック回路からのアクセス要求に応答して機能再構成セルを制御するインタフェース制御回路と、を備え、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセス可能なデータフィールドと制御フィールドを有し、
前記制御回路は、第１動作モードでは前記インタフェース制御回路から供給されるアドレス情報に基づいて前記データフィールドと制御フィールドをランダムアクセス可能とし、第２動作モードでは前記データフィールドと一緒にリードされた制御フィールドからの制御情報を帰還入力し、入力した制御情報に従ってデータフィールド及び制御フィールドのリードアドレスを順次更新する動作を繰り返してロジック動作を可能とする、半導体装置。
【請求項１０】
前記ロジック回路は前記第１動作モードを指定するための前記第１のアドレス範囲に対するリードアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられている機能再構成セルの前記記憶回路をランダムアクセスして、前記機能再構成セルの記憶回路に所定の論理機能を実現するための情報を書き込む、請求項９記載の半導体装置。
【請求項１１】
前記ロジック回路は前記第２動作モードを指定するための前記第２のアドレス範囲に対するライトアクセス要求を行なうことにより、そのアクセス要求に係るアドレスの機能再構成セルに前記ロジック動作を開始させる、請求項１０記載の半導体装置。
【請求項１２】
前記ロジック動作により機能再構成セルが出力する情報を保持すると共に第３のアドレス範囲にマッピングされたバッファレジスタを更に有し、
前記ロジック回路は前記第３のアドレス範囲に対するリードアクセス要求を行なって前記ロジック動作による結果を前記バッファレジスタからリードする、請求項１１記載の半導体装置。
【請求項１３】
前記インタフェース制御回路は、アドレス信号の上位側情報用いて対応する前記機能再構成セルを指定し、これによって指定された機能再構成セルの前記制御回路は、前記第１モードでは前記アドレス信号の下位側情報用いて対応するデータフィールドと制御フィールドを指定し、前記第２モードでは帰還入力された制御情報に従ってデータフィールドと制御フィールドに対するリードアドレス更新の順次進行、リードアドレスの初期値復帰、又はリードアドレス更新の停止を制御する、請求項９記載の半導体装置。
【請求項１４】
前記インタフェース制御回路は前記リードアドレス更新を停止したとき割込み信号を出力する、請求項１３記載の半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は記憶回路を用いて可変可能に論理機能を実現することができる半導体装置に関し、例えばプログラマブルに周辺機能を実現することができる可変論理モジュールを備えた半導体データ処理装置に適用して有効な技術に関する。
【背景技術】
【０００２】
可変論理モジュール若しくは可変論理デバイス（リコンフィギュラブルデバイス）としてＰＬＤ（プログラマブル・ロジック・デバイス）若しくはＦＰＬＤ（フィールドＰＬＤ）が既に利用されている。代表的なＰＬＤとしてはＦＰＧＡ（フィールド・プログラマブル・ゲート・アレイ）などのプログラマブル・デバイスがある。ＦＰＧＡはルックアップ・テーブルを基本にしてそれにフリップ・フロップを併せ持たせたＣＬＢ(コンフィギャラブル・ロジック・ブロック)をＭＯＳスイッチでプログラマブルに接続させて大規模ロジックを構成するものである。ＦＰＧＡは基本的に書き換え可能な論理回路と可変スイッチ回路を持たせた素子である。特許文献１にはＦＰＧＡについて記載がある。ＦＰＧＡの基本である論理回路は例えば４入力のＬＵＴ(ルック・アップ・テーブル)で構成され、最終段にＦ／Ｆ（フリップ・フロップ）を有し、それを２段２層の論理構造で持っている。これをＣＬＢと呼んでいる。例えば、１メガ（Ｍ）ゲート相当をプログラマブルに論理を構成するためには１キロ（ｋ）以上のＣＬＢを集合させ、このＣＬＢの論理情報をＳＲＡＭ（スタティック・ランダム・アクセス・メモリ）に持たせて書き換え可能にしている。これらのＣＬＢはお互いの接続をプログラマブルにする為にスイッチマトリックスを有している。そのスイッチは方向性を持たせる為に、６ＭＯＳのスイッチＭＯＳで構成され、このスイッチＭＯＳのオン／オフ制御情報もＳＲＡＭに持たせているので、１Ｍゲート相当に対して１．７Ｍビット程度の情報量が必要である。また、特許文献２にはメモリに所定の真理値データを格納させることによって任意の論理を構成可能な複数の可変論理回路をマトリクス状に配置し、それらをＸ、Ｙ方向の配線に可変スイッチ回路で可変可能に接続するようにした半導体装置について記載がある。
【０００３】
【特許文献１】特開平０４−２４２８２５号公報
【特許文献２】特開２００３−１４９３００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら上記ＦＰＧＡに代表されるように多数のＣＬＢをスイッチマトリクスを用いて接続することによって可変論理モジュールを構成する場合には、必要な論理規模の増大にしたがってＣＬＢの数やスイッチマトリクスのスイッチ素子が多くなり、実装面積の改善に限界のあることが本発明者によって見出された。すなわち、複雑な論理やシーケンスをプログラムする場合には必要な論理規模に比例して多数のスイッチマトリクスを用いて多数のＣＬＢの接続を設定しなければならない。ＳＲＡＭに論理構成用の真理値データを格納するとき、ＳＲＡＭからリードした真理値データを単に論理構成のためのスタティックな情報としてしか利用しない場合には、必要な論理規模に比例してＳＲＡＭの記憶容量を増大しなければならない。また、従来技術においては、周辺回路のような実回路に可変論理モジュールを適用することについて何ら着眼されていない。
【０００５】
本発明の目的は、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる半導体装置を提供することにある。
【０００６】
本発明の別の目的は、小さなチップ占有面積で可変論理機能を実現可能な半導体装置を提供することにある。
【０００７】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００８】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【０００９】
すなわち、本発明に係る半導体装置は、可変論理機能を実現するためにそれぞれ記憶回路と制御回路を有する複数の機能再構成セルを備え、真理値データを格納する記憶回路の読み出しアドレスを機能再構成セルの記憶情報によって自律的に制御する。例えば前記制御回路は、第１動作モードでは前記インタフェース制御回路から供給されるアドレス情報に基づいて前記データフィールドと制御フィールドをランダムアクセス可能とし、第２動作モードでは前記データフィールドと一緒にリードされた制御フィールドからの制御情報を帰還入力し、入力した制御情報に従ってデータフィールド及び制御フィールドのリードアドレスを順次更新する動作を繰り返してロジック動作を可能とする。これにより、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができるから、実現可能な論理構成や論理規模に融通性を得ることができ、また、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。
【発明の効果】
【００１０】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記のとおりである。
【００１１】
すなわち、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる。
【００１２】
また、小さなチップ占有面積で可変論理機能を実現可能になる。また、論理機能をダイナミックに再構成することが容易になる。
【発明を実施するための最良の形態】
【００１３】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
【００１４】
〔１〕本発明の代表的な実施の形態に係る半導体装置は、記憶回路（２０）と制御回路（２１）を有する複数の機能再構成セル（１０）と、アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路（１３〜１７）とを備える。前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセス可能なデータフィールド（２７＿Ｄ）と制御フィールド（２７＿Ｃ）を有する。前記制御回路は、第１動作モードでは前記インタフェース制御回路から供給されるアドレス情報に基づいて前記データフィールドと制御フィールドをランダムアクセス可能とし、第２動作モードでは前記データフィールドと一緒にリードされた制御フィールドからの制御情報（ＤＡＴ＿Ｃ）を帰還入力し、入力した制御情報に従ってデータフィールド及び制御フィールドのリードアドレスを順次更新する動作を繰り返してロジック動作を可能とする。
【００１５】
上記より、記憶回路の読み出しを機能再構成セルの記憶情報に従って自律的に制御することができるから、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる。したがって、実現可能な論理構成や論理規模に融通性を得ることができ、また、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。
【００１６】
一つの具体的な形態として、前記インタフェース制御回路は、アドレス信号の上位側情報を用いて対応する前記機能再構成セルを指定し、これによって指定された機能再構成セルの前記制御回路は、前記第１モードでは前記アドレス信号の下位側情報を用いて対応するデータフィールドと制御フィールドを指定する。これによってデータフィールドと制御フィールドがランダムアクセスされる。また、前記第２モードでは帰還入力された制御情報に従ってデータフィールドと制御フィールドに対するリードアドレス更新の順次進行、リードアドレスの初期値復帰、又はリードアドレス更新の停止を制御する。これによって、記憶回路の記憶情報に従ったロジック動作が行われる。
【００１７】
更に具体的な形態として、前記インタフェース制御回路は前記リードアドレス更新を停止したとき割込み信号（ＩＲＱ）を出力する。これにより、割込み応答処理に基づいてロジック動作の結果を外部から容易に取得することができる。
【００１８】
別の具体的な形態として、前記複数の機能再構成セルは、アドレス信号の上位側情報を用いて指定された前記機能再構成セルの前記データフィールドと制御フィールドのランダムアクセスに用いる第１バス（ＭＢＵＳ）と、アドレス信号の上位側情報を用いて指定された前記機能再構成セルの前記ロジック動作に用いる第２バス（ＬＢＵＳ）とに共通接続される。情報の入出力形態が相違されるランダムアクセス動作とロジック動作に応じた入出力制御を容易化することが可能になる。
【００１９】
更に具体的な形態として、前記記憶回路とは異なるアドレスにマッピングされ前記第２バスに接続されたバッファレジスタ（ＭＢｕｆｆ）を有し、アクセス要求に応答して前記インタフェース制御回路が前記バッファレジスタの出力動作を制御する。ロジック動作による動作結果を、メモリマップドＩＯと同様のレジスタアクセスによって取得することが可能になる。
【００２０】
別の具体的な形態として、前記機能再構成セルは、前記データフィールド及び制御フィールドから読出された情報を他の機能再構成セル又は前記第２のバスに伝達する経路を可変可能に選択する接続経路選択回路（２２〜２３）を更に有する。複数の機能再構成セルを直列的又は並列的に動作させてロジック動作される動作形態を容易に実現できるようになる。このとき、前記接続経路選択回路は、例えば前記経路を選択するスイッチ回路（２２）と、前期スイッチ回路のスイッチ状態を決定するスイッチ制御情報（ＤＡＴ＿Ｒ）を書換え可能に保持する接続用記憶回路（２３）とを備えて構成される。
【００２１】
〔２〕本発明の別の実施の形態に係る半導体装置は、アクセス要求主体となり得るロジック回路（２）と、前記ロジック回路からのアクセス要求に応答して動作する機能再構成メモリ（８）とを有する。前記機能再構成メモリは、記憶回路（２０）と制御回路（２１）を有する複数の機能再構成セル（１０）と、前記ロジック回路からのアクセス要求に応答して機能再構成セルを制御するインタフェース制御回路（１３〜１７）と、を備える。前記記憶回路は前記半導体装置のアドレス空間中に前記ロジック回路からメモリとしてアクセス可能にアドレス割付（第１のアドレス範囲）をされると共に、ロジック動作をさせるために必要な情報の入出力のためにＩＯとしてアクセス可能にアドレス割付（第２のアドレス範囲）される。また前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセス可能なデータフィールドと制御フィールドを有する。前記制御回路は、第１動作モードでは前記インタフェース制御回路から供給されるアドレス情報に基づいて前記データフィールドと制御フィールドをランダムアクセス可能とし、第２動作モードでは前記データフィールドと一緒にリードされた制御フィールドからの制御情報を帰還入力し、入力した制御情報に従ってデータフィールド及び制御フィールドのリードアドレスを順次更新する動作を繰り返してロジック動作を可能とする。上記同様に、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができ、実現可能な論理構成に融通性があり、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。アクセス要求主体とは例えば中央処理装置やダイレクト・メモリ・アクセス・コントローラ等のバスマスタモジュールである。
【００２２】
一つの具体的な形態として、前記ロジック回路は前記第１動作モードを指定するための前記第１のアドレス範囲に対するライトアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられている機能再構成セルの前記記憶回路をメモリとしてアクセスして、前記機能再構成セルの記憶回路に所定の論理機能を実現するための情報を書き込む。これにより、アクセス要求主体は第１のアドレス範囲のアドレスを指定するランダムアクセスによって記憶回路に書き込みを行って機能再構成セルの論理構成を定義することができる。
【００２３】
また、前記ロジック回路は前記第２の動作モードを指定するための前記第２のアドレス範囲にリードアクセス要求を行なうことにより、そのアクセス要求に係るアドレスの機能再構成セルに前記ロジック動作を開始させる。これにより、アクセス要求主体は論理機能が設定された機能再構成セルによる論理動作を開始させることができる。
【００２４】
また、前記ロジック動作により機能再構成セルが出力する情報を保持すると共に第３のアドレス範囲にマッピングされたバッファレジスタを更に有する。前記ロジック回路は前記第３のアドレス範囲に対するリードアクセス要求を行なって前記ロジック動作による結果を前記バッファレジスタからリードする。これにより、アクセス要求主体は、第２のアドレス範囲のアドレスを指定することにより、機能再構成セルによるロジック動作の結果を、メモリマップドＩＯと同様のレジスタアクセスによって簡単に取得することができる。
【００２５】
前記記憶回路に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲)に対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレス（第３のアドレス範囲のアドレス）を個別化することにより、機能再構成セルに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。
【００２６】
２．実施の形態の詳細
実施の形態について更に詳述する。
【００２７】
図２には本発明の一例に係るデータプロセッサ（ＤＰＣＵ）1が例示される。同図に示されるデータプロセッサは、特に制限されないが、相補型ＭＯＳ集積回路製造技術により単結晶シリコンのような1個の半導体基板に形成されている。
【００２８】
データプロセッサ１は、特に制限されないが、プログラムに従って命令をフェッチして実行する中央処理装置（ＣＰＵ）２、ＣＰＵ２が実行するプログラム等が格納されたリード・オンリ・メモリ（ＲＯＭ）３、ＣＰＵ２のワーク領域等に用いられるランダム・アクセス・メモリ（ＲＡＭ）４、外部インタフェース回路（ＥＸＩＯ）５、バスステートコントローラ（ＢＳＣ）６、割込みコントローラ（ＩＮＴＣ）７及び機能再構成メモリ（ＲＣＦＧＭ）８を有し、それらは内部バス（ＩＢＵＳ）９に接続される。ＣＰＵ２等のバスマスタモジュールがアクセス要求を発行すると、ＢＳＣ６はそのアクセス要求に係る回路のマッピングアドレスに応じて、バス制御ストローブ信号等を出力して、アクセスに必要なバスサイクル数や並列データビット数等のバス制御を行う。
【００２９】
前記機能再構成メモリ８はＣＰＵ２等により内部バス９から書き込まれた論理機能設定情報（コンフィグレーション情報）に従って可変可能に論理機能が設定され、設定された論理機能に対してデータの入出力が可能にされる。
【００３０】
同図には割込み信号としてＩＮＴが代表的に示され、割込みコントローラ７は割込み信号に対する割り込みマスク制御や優先レベル制御を行って割込み信号を受け付け、受け付けた割込み信号に応ずるベクタを発行すると共に、ＣＰＵ２に割込み要求信号ＩＲＱを発行し、前記ベクタが示す割込み処理プログラムをＣＰＵ２に実行させる。
【００３１】
機能再構成メモリ８はマトリクス状に配置された複数の機能再構成セル１０を有する。更に、外部からのアクセス要求に応答して前記機能再構成セル１０を制御するインタフェース制御回路として、バスインタフェース（ＢＵＳＩＦ）１３、アクセス制御回路（ＡＣＣＮＴ）１４、入力回路（ＩＮＰ）１５、出力回路（ＯＵＴＰ）１６、及びアドレスデコーダ（ＡＤＥＣ）１７を備える。機能再構成セル１０はＣＰＵ２等により内部バス９からランダムアクセスにより書き込まれた論理機能用のコンフィグレーション情報に従って可変可能に論理機能が設定される。例えば、ＦＩＦＯバッファ、１６ビットパルス幅変調回路、８ビットパルス幅変調回路、シリアル送信ユニット、シリアル受信ユニット等の論理機能が設定されている。論理機能が設定されない残りの機能再構成セル１０は内部バス９を介してランダムアクセス可能な内部メモリとして利用可能にされる。アドレスデコーダ１７はアドレス信号で指定される機能再構成セルを選択する選択信号ＣＥＸ，ＣＥＹを生成する。選択信号ＣＥＸ，ＣＥＹによって選択された機能再構成セルは外部から制御を受けて動作可能にされる。設定された論理動作に用いるプリセットデータの書込み、論理動作結果のデータリードは内部バス９経由で行われる。
【００３２】
図１には機能再構成セル１０の一例が示される。機能再構成セル１０は記憶回路（ＭＲＹ）２０、制御回路（ＭＣＯＮＴ）２１、経路選択用のスイッチ回路（ＲＴＳＷ）２２及び経路選択レジスタ（ＲＴＲＥＧ）２３を有する。マトリクス配置された機能再構成セル１０のアレイ内には、機能再構成セル１０の行単位でアドレスバスＡＢＵＳ、メモリバスＭＢＵＳ及びロジックバスＬＢＵＳが配置される。
【００３３】
スイッチ回路２２は、上下の隣接行に配置された同一列の機能再構成セルのスイッチ回路２２に接続可能にされると共に、同一行に配置された次段の機能再構成セル１０の制御回路２１と、ロジックバスＬＢＵＳに接続可能にされる。何れの接続形態を採るかは経路選択レジスタ２３にセットされるスイッチ制御情報に従ってプログラマブルにされる。
【００３４】
前記記憶回路２０は例えばシングルポートのスタティック・ランダム・アクセスメモリ（ＳＲＡＭ）によって構成される。記憶回路２０は制御回路２１から供給されるアドレス信号によってアクセスされるデータフィールド（ＤＦＬＤ）２７＿Ｄと制御フィールド（ＣＦＬＤ）２７＿Ｃを有する。アドレスデコーダ（ＳＤＥＣ）２８は入力されるアドレス信号をデコードして、データフィールド（ＤＦＬＤ）２７＿Ｄ及び制御フィールド（ＣＦＬＤ）２７＿Ｃの夫々からアクセス単位のメモリセルを選択する。夫々の機能再構成セル１０には記憶回路２０の記憶容量分のアドレスがマッピングされる。マッピングされたアドレスの上位側が機能再構成セル１０の選択情報、当該アドレスの下位側が記憶回路２０内におけるアクセス単位の選択情報（ＡＤＤ）とみなされる。前記アドレスの上位側アドレス情報がアドレスデコーダ１７でデコードされることによって前記選択信号ＣＥＸ，ＣＥＹが生成される。制御回路２１は、対応する機能再構成セルの選択信号ＣＥＸ，ＣＥＹにより選択されることによって活性化される。Ｒ／Ｗはリード・ライト信号（メモリモード、レジスタ設定モードではＲ／Ｗが有効であるが、ロジックモード時はリードのみ有効となる）、ＣＬＫは機能再構成セル１０の同期クロック信号、ＭＯＤはモード信号である。
【００３５】
活性化された制御回路２１は、モード信号ＭＯＤによってメモリモードが指定されているとき、図３に例示されるように、アドレスバスＡＢＵＳからの下位側アドレス情報ＡＤＤで指定される記憶回路２０の記憶領域に対して、リード・ライト信号Ｒ／Ｗに従って、リード動作、又はライト動作を制御する。リードデータはメモリバスＭＢＵＳに出力され、ライトデータはメモリバスＭＢＵＳから供給される。２点鎖線は当該動作モードにおける主な信号の流れを意味する。
【００３６】
制御回路２１が選択信号ＣＥＸ，ＣＥＹにより活性化されたとき、モード信号ＭＯＤによってロジックモードが指定される（周辺回路に対する動作イネーブルビットのセット動作の指示に対応する）。このとき、図４に例示されるように、制御回路２１は記憶回路２０の先頭アドレスに対するリード動作を開始し、リードされた制御フィールド２７＿Ｃからのロジック制御情報ＤＡＴ＿Ｃを帰還入力し、帰還入力したロジック制御情報ＤＡＴ＿Ｃに従ってデータフィールド２７＿Ｄ及び制御フィールド２７＿Ｃのリードアドレスを順次更新する動作を繰り返すことによって、ロジック動作を制御する。前記ロジック動作におけるアドレスの順次更新動作は、例えばロジック制御情報の値に応じた、リードアドレス更新の順次進行、リードアドレスの初期値復帰、又はリードアドレス更新の停止である。制御回路２１からのリード動作指示と記憶回路２０からのリード動作、リードされた情報の制御回路２１への帰還入力、の動作を繰り返すことから、配線遅延等の影響によりロジック動作中の動作が同期クロックＣＬＫの１サイクル動作に間に合わないことも考えられる。制御回路２１は記憶回路２０へのリード動作指示を同期クロックＣＬＫの１サイクル〜１／２サイクル先行して発行するように制御することで、記憶回路２０からのリード動作と帰還入力に基づく次のアクセスアドレス判定をパイプライン化することが可能となる。データフィールド２７＿Ｄから読出された情報ＤＡＴ＿ＤがロジックバスＬＢＵＳを介して出力回路１６の出力データレジスタ（ＭＢｕｆｆ）にロードされるようにスイッチ回路２２が設定されている場合、ロジックモードにおける論理動作の結果は、出力回路１６の前記出力データレジスタに対するメモリマップドＩＯレジスタアクセスと同様のＣＰＵ２によるレジスタリード動作によって取得可能である。即ち、制御回路２１が選択信号ＣＥＸ，ＣＥＹにより活性化されたとき、モード信号ＭＯＤによってロジックモードが指定されること（周辺回路のメモリマップドＩＯレジスタに対するリード動作の指示に対応する）によって読出し可能にされる。
【００３７】
制御回路２１が選択信号ＣＥＸ，ＣＥＹにより活性化されたとき、モード信号ＭＯＤによってレジスタ設定モードが指定され且つリード・ライト信号Ｒ／Ｗによりライト動作が指示されている場合は、図５に例示されるように、制御回路２１は対応する経路選択レジスタ２３を選択してロジックバスＬＢＵＳからの接続制御情報ＤＡＴ＿Ｒを経路選択レジスタ２３に格納する。経路選択レジスタ２３に格納された接続制御情報ＤＡＴ＿Ｒはスイッチ回路２２に供給されて経路選択を決定する。更に経路選択レジスタ２３に格納された接続制御情報ＤＡＴ＿Ｒは制御回路２１にも供給され、ロジック制御情報ＤＡＴ＿Ｃの帰還入力及びロジックバスＬＢＵＳからの入力を遮断選択してメモリモードだけで利用される機能再構成セル１０の制御回路２１に無用な情報が入力されるのを遮断し、また、メモリバスＭＢＵＳからの入力を遮断選択してロジックモードだけで利用される機能再構成セル１０の制御回路２１に無用な情報が入力されるのを遮断するようにされる。かかる制御により機能再構成セルのロジック動作の誤動作防止に役立つ。
【００３８】
上記機能再構成セル１０によれば、記憶回路２０の読み出しを機能再構成セル１０が保持するロジック制御情報によって自律的に制御することができる。例えば、前記制御回路２１は記憶回路２０の次の読出しアドレスを先に記憶回路２０から読出した制御フィールドＣＦＤＬの情報ＤＡＴ＿Ｃに基づいて歩進させるか、初期値に復帰させるか、又は停止させるかを自律的に制御することが可能である。これにより、可変論理機能を実現するための記憶回路２０を論理回路と等価な回路として扱うことができる。したがって、実現可能な論理構成や論理規模に融通性を得ることができ、また、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。
【００３９】
図６には機能再構成メモリ８の全体的な構成が例示される。同図において２５は機能再構成セル１０のアレイである。アドレスバスＡＢＵＳは図示を省略してある。入力回路１５はメモリバス及びアドレスバス用入力回路（ＭＩＮＰ）１５＿Ｍとロジックバス用入力回路（ＬＩＮＰ）１５＿Ｌとによって構成される。入力回路１５＿Ｍはバスインタフェース回路１３にメイン入力メモリアドレスバスＧＩＭＡＢを介して接続され、メイン入力メモリアドレスバスＧＩＭＡＢを選択的にメモリバスＭＢＵＳ及びアドレスバスＡＢＵＳに接続する入力セレクタスイッチＭＳＷを有する。入力回路１５＿Ｌはバスインタフェース回路１３にメイン入力ロジックバスＧＩＬＢを介して接続され、メイン入力ロジックバスＧＩＬＢを選択的にロジックバスＬＢＵＳに接続する入力セレクタスイッチＬＳＷを有する。出力回路１６はメモリバス用出力回路（ＭＯＵＴＰ）１６＿Ｍとロジックバス用出力回路１６＿Ｌとによって構成される。出力回路１６＿Ｍは各メモリバスＭＢＵＳに対応してデータ出力レジスタＭＢｕｆｆを有し、メモリリードデータを一時的に保持し、保持されたリードデータは選択的にメイン出力データバスＧＯＭＡＢに出力可能にされる。出力回路１６＿Ｌは各ロジックバスＭＢＵＳに対応してデータ出力レジスタＬＢｕｆｆを有し、ロジックデータを一時的に保持し、保持されたロジックデータは選択的にメイン出力ロジックバスＧＯＬＢに出力可能にされる。特に制限されないがデータ出力レジスタＬＢｕｆｆ及び前記経路選択レジスタ２３はメモリマップドＩＯレジスタとされる。
【００４０】
前記アドレスデコーダ１７はアドレス信号ＡＤＲＳをデコードして選択信号ＣＥＸ，ＣＥＹを生成する。このとき、前記メモリモードではアドレスデコーダ１７は選択信号ＣＥＹで選択する列に対応する入力セレクタスイッチＭＳＷを選択信号ＳＢＳで選択動作させ、リード動作が指定されているときは更にデータ出力レジスタＭＢｕｆｆの出力動作を選択信号ＳＢＳで選択する。前記ロジックモードではアドレスデコーダ１７は選択信号ＣＥＹで選択する列に対応するデータ出力レジスタＬＢｕｆｆの出力動作を選択信号ＳＢＳで選択する。前記レジスタ設定モードではアドレスデコーダ１７は選択信号ＣＥＹで選択する列に対応する入力セレクタスイッチＬＳＷを選択信号ＳＢＳで選択動作させ、対応するロジックバスＬＢＵＳ経由で経路選択レジスタ２３に接続制御情報をセット可能にする。
【００４１】
前記アクセス制御回路１４は外部からシステムリセット信号ＲＥＳ及びシステムクロック信号ＳＣＬＫを受けると共に、前記バスステートコントローラ６から、メモリアクセスストローブ信号ＭＡＣ、レジスタアクセスストローブ信号ＲＡＣ、リード信号ＲＤ、及びライト信号ＷＴを入力する。特に制限されないが、機能再構成メモリ８において、前記メモリモードのためのマッピングアドレスと、前記ロジックモードのためのマッピングアドレスと、前記レジスタ設定モードのためのマッピングアドレスとは夫々別々にされる。前述のように、ここでは、何れの動作モードにおいても選択信号ＣＥＸ，ＣＥＹを生成するアドレス情報の上位側を共通利用するように、夫々のマッピングアドレスが決められている。ＣＰＵ２によるアクセス要求があったとき、前記バスステートコントローラ６はアクセス対象アドレスがメモリモードのためのマッピングアドレスに対応する場合はメモリアクセスストローブ信号ＭＡＣをイネーブルとし、このときライト動作が要求されていればライト信号ＷＴをイネーブルとし、リード動作が要求されていればリード信号ＲＤをイネーブルとし、これによってアクセス制御回路１４はモード信号ＭＯＤとリード・ライト信号Ｒ／Ｗによって前記メモリモードで内部を制御する。このようにして、論理機能を設定するためのコンフィギュレーション情報を機能再構成セル１０に設定したり、ロジック動作に用いない機能再構成セルに対するランダムアクセスが可能にされる。また、前記バスステートコントローラ６はアクセス対象アドレスがロジックモードのためのマッピングアドレスに対応する場合はレジスタアクセスストローブ信号ＲＡＣをイネーブルとし、このときライト動作が要求されていればライト信号ＷＴをイネーブルとし、リード動作が要求されていればリード信号ＲＤをイネーブルとし、これによってアクセス制御回路１４はモード信号ＭＯＤとリード・ライト信号Ｒ／Ｗによって前記レジスタモードで内部を制御する。ちなみに、ライト動作が指示されていれば、アドレスで指定された機能再構成セル１０を基点にロジック動作を開始させることができ、リード動作が指示されていれば、アドレスで指定されたデータレジスタＭＢｕｆｆが保持するデータの読出し動作を開始することができる。また、前記バスステートコントローラ６はアクセス対象アドレスがレジスタ設定モードのためのマッピングアドレスに対応する場合はレジスタアクセスストローブ信号ＲＡＣ及びライト信号ＷＴをイネーブルとし、これによってアクセス制御回路１４はモード信号ＭＯＤとリード・ライト信号Ｒ／Ｗによって前記レジスタ設定モードで内部を制御し、レジスタ２３に接続制御情報をセットする動作を開始することができる。
【００４２】
図７には機能再構成セル１０を用いて８ビットカウンタを実現する場合の例を示す。ここに示す例は２５６カウントを１回行って動作を終了する例である。記憶回路２０に設定されるコンフィグレーション情報の例は図８に示される。データフィールド２７＿Ｄには先頭アドレス“０から順番に“ａｄｄ＋１”の値を保有し、最終アドレス“２５５”の値はオール０にされる。制御フィールド２７＿Ｃには制御フラグＡ，Ｂ，Ｃ，Ｄが格納される。制御フラグＡは連続カウント動作について指示し（”１”=カウントする、”０”=カウントしない）を意味し、制御フラグＢは繰返しカウント動作について指示し（”１”=繰返しする、”０”=繰返ししない）、制御フラグＣはキャリーフラグ（”１”でカウント終了通知）とされ、制御フラグＤはトリガ信号（次段にカウンタ追加する場合の開始トリガ）とされる。図９には８ビットカウンタの実装からか動作終了までのフローチャートが例示される。最初に機能再構成メモリ８がリセットされ（Ｓ１）、ロジック動作させる機能再構成セルに前記メモリモードでコンフィギュレーション情報の書込みを行う（Ｓ２）。図７の例に従えば、図８に例示されるデータ情報ＤＡＴ＿Ｃとロジック制御情報ＤＡＴ＿Ｃを対応する機能再構成セル１０に書き込む。次いで、レジスタ設定モードでスイッチ回路２２による経路と、制御回路２１へのロジック制御情報ＤＡＴ＿Ｃの帰還経路を設定する（Ｓ３）。この後、カウンタ動作の対象とされる機能再構成セル１０が信号ＣＥＸ，ＣＥＹで選択され、ロジックモードが指定されることを条件に（Ｓ４）、当該機能再構成セル１０はカウンタ動作を開始する（Ｓ５）。カウント動作を開始した機能再構成セル１０は帰還されるロジック制御情報ＤＡＴ＿Ｃにより、フラグＡ＝１が続く限りアドレス歩進によるカウントアップ動作を継続し（Ｓ６）、フラグＡ＝０、フラグＢ＝０においてカウントが終了され、フラグＣ＝１によって割込み信号ＩＮＴが割込みコントローラ７に出力される（Ｓ７）。
【００４３】
図１０及び図１１には機能再構成セル１０を用いて８ビットカウンタを実現する場合の別の例を示す。ここに示す例は２５６カウントを複数回繰り返す例である。図７及び図８との相違点は、ａｄｄ＝２５４のときフラグＢ＝１とされたコンフィギュレーション情報を記憶回路２０に記憶させたことである。図１２には当該８ビットカウンタの実装からか動作終了までのフローチャートが例示される。図９との相違点は、カウント動作を開始した機能再構成セル１０は帰還されるロジック制御情報ＤＡＴ＿Ｃにより、フラグＡ＝１が続く限りアドレス歩進によるカウントアップ動作を継続し（Ｓ６Ａ）、フラグＡ＝１、フラグＢ＝１においてアドレスａｄｄを初期値に復帰させる（Ｓ６Ｂ）点である。
【００４４】
以上説明したデータプロセッサ１によれば以下の作用効果がある。
【００４５】
（１）記憶回路２０の読み出しを機能再構成セル１０のロジック制御情報に従って自律的に制御することができる。したがって、可変論理機能を実現するための記憶回路２０を論理回路と等価な回路として扱うことができ、実現可能な論理構成に融通性があり、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。
【００４６】
（２）ＣＰＵ２は、機能再構成セル１０をメモリモードでランダムアクセスすることによって前記機能再構成セル２０に所定の論理機能を実現するためのコンフィギュレーション情報を任意に定義することができる。
【００４７】
（３）メモリモードにおける機能再構成セル１０のランダムアクセス用アドレスマッピングに対し、ロジックモードによる動作結果を格納するレジスタのアドレスマッピングを個別化することにより、機能再構成セル２０及びデータレジスタＭＢｕｆｆに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレス等に変更を生ぜず、機能再構成セル１０に対する論理機能をダイナミックに再構成することが容易になる。
【００４８】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００４９】
例えば、機能再構成セル２０、接続用レジスタ２３、データレジスタＭＢｕｆｆに対するアドレスマッピングの手法、そして、メモリモード、ロジックモード及びレジスタ設定モード等の動作モードの指定手法は上記の説明に限定されず適宜変更可能である。また、機能再構成メモリが接続するバス構成は上記に限定されず、ＣＰＵが接続するＣＰＵバスと、バスステートコントローラを介してＣＰＵバスに接続する周辺バスとに分離された構成であってもよい。マトリクス配置された機能再構成セルとバスの接続形態として、Ｘ，Ｙ方向にバスを配置し、Ｘ，Ｙのそれぞれの方向からアドレシングしてバスに接続する接続形態を採用してもよい。機能再構成セルによって実現される周辺機能は上記に限定されず適宜変更可能である。また、ＣＰＵに対する所謂周辺機能に限定されない。アクセラレータのようにＣＰＵの負担を軽減する演算機能等を割り当てることも可能である。機能再構成メモリと一緒に半導体装置に搭載される回路は図２に限定されず、半導体集積回路の機能や用途に応じて適宜変更可能である。半導体装置はシングルチップに限定されず、マルチチップをモジュール基板に搭載して封止したシステム・イン・パッケージのような半導体装置にも適用することができる。
【図面の簡単な説明】
【００５０】
【図１】本発明の半導体装置が備える機能再構成セルの一例を示すブロック図である。
【図２】本発明の一例に係るデータプロセッサのブロック図である。
【図３】モード信号ＭＯＤによってメモリモードが指定されたときの機能再構成セルにおける主な信号の流れを示すブロック図である。
【図４】モード信号ＭＯＤによってロジックモードが指定されたときの機能再構成セルにおける主な信号の流れを示すブロック図である。
【図５】モード信号ＭＯＤによってレジスタ設定モードが指定されたときの機能再構成セルにおける主な信号の流れを示すブロック図である。
【図６】機能再構成メモリの全体的な構成が例示するブロック図である。
【図７】２５６カウントを１回行って動作を終了する８ビットカウンタを機能再構成セルで実現する場合の例を示す概略構成図である。
【図８】図７の機能再構成セルの記憶回路に設定される機能構成情報を例示する説明図である。
【図９】図７の８ビットカウンタの実装からか動作終了までを示すフローチャートである。
【図１０】２５６カウントを複数回繰り返す８ビットカウンタを機能再構成セルで実現する場合の例を示す概略構成図である。
【図１１】図１０の機能再構成セルの記憶回路に設定される機能構成情報を例示する説明図である。
【図１２】図１０の８ビットカウンタの実装からか動作終了までを示すフローチャートである。
【符号の説明】
【００５１】
１  データプロセッサ１
２  中央処理装置（ＣＰＵ）
６  バスステートコントローラ（ＢＳＣ）
７  割込みコントローラ（ＩＮＴＣ）
８  機能再構成メモリ（ＲＣＦＧＭ）
９  内部バス（ＩＢＵＳ）
ＩＮＴ  割込み信号
１０  機能再構成セル
１３  バスインタフェース（ＢＵＳＩＦ）
１４  アクセス制御回路（ＡＣＣＮＴ）
１５  入力回路（ＩＮＰ）
１６  出力回路（ＯＵＴＰ）
１７  アドレスデコーダ（ＡＤＥＣ）
２０  記憶回路（ＭＲＹ）
２１  制御回路（ＭＣＯＮＴ）
２２  経路選択用のスイッチ回路（ＲＴＳＷ）
２３  経路選択レジスタ（ＲＴＲＥＧ）
ＡＢＵＳ  アドレスバス
ＭＢＵＳ  メモリバス
ＬＢＵＳ  ロジックバス
２７＿Ｄ  データフィールド（ＤＦＬＤ）
２７＿Ｃ  制御フィールド（ＣＦＬＤ）
２８  アドレスデコーダ（ＳＤＥＣ）
ＣＥＸ，ＣＥＹ  選択信号
Ｒ／Ｗ  リード・ライト信号
ＣＬＫ  同期クロック信号
ＭＯＤ  モード信号
ＤＡＴ＿Ｄ  データ情報
ＤＡＴ＿Ｃ  ロジック制御情報
ＤＡＴ＿Ｒ  接続制御情報
【図１】
2008293226.tif 000003
【図２】
2008293226.tif 000004
【図３】
2008293226.tif 000005
【図４】
2008293226.tif 000006
【図５】
2008293226.tif 000007
【図６】
2008293226.tif 000008
【図７】
2008293226.tif 000009
【図８】
2008293226.tif 000010
【図９】
2008293226.tif 000011
【図１０】
2008293226.tif 000012
【図１１】
2008293226.tif 000013
【図１２】
2008293226.tif 000014