(57)【要約】  可変論理機能を実現するためにそれぞれ記憶回路と制御回路を有する複数の機能再構成セルを備え、真理値データを格納する記憶回路の読み出しアドレスを機能再構成セルそれ自体で自律的に制御する。例えば前記制御回路は記憶回路のデータフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とする。真理値データを格納する記憶回路の読み出しを機能再構成セルそれ自体で自律的に制御することができるから、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる。実現可能な論理構成や論理規模に融通性を得ることができ、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。
2008143285.tif 000002
【特許請求の範囲】
【請求項１】
記憶回路と制御回路を有する複数の機能再構成セルと、
アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は前記記憶回路の次の読出しアドレスを先に前記記憶回路から読出した制御フィールドの情報又は外部イベント入力に基づいて自律的に制御することが可能である、半導体装置。
【請求項２】
前記制御回路は次の読出しアドレスとして、前記アクセス要求に伴ってインタフェース制御回路に供給されるアドレス情報、所定の外部イベント入力を条件に前記制御回路が決定するアドレス情報、先に記憶回路のデータフィールドから読み出された情報、又は先に前記記憶回路に出力したアドレス情報のアドレス演算により得られるアドレス情報を出力する、請求項１記載の半導体装置。
【請求項３】
記憶回路と制御回路を有する複数の機能再構成セルと、
アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能である、半導体装置。
【請求項４】
前記制御回路は、前記制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をアドレス情報として選択するセレクタを有する、請求項３記載の半導体装置。
【請求項５】
前記別の情報は、前記アクセス要求に伴ってインタフェース制御回路に供給されるアドレス情報、所定の外部イベント入力を条件に前記制御回路が決定するアドレス情報、又は先に前記記憶回路に出力したアドレス情報のアドレス演算により得られるアドレス情報である、請求項４記載の半導体装置。
【請求項６】
前記制御回路は前記セレクタの入力に出力が接続され前記アドレス演算を行うアドレス演算器を更に有し、前記セレクタは前記制御フィールドからの帰還入力情報に基づいてアドレス演算器の出力を選択可能であり、前記アドレス演算器の入力は前記セレクタの出力に結合される、請求項５記載の半導体装置。
【請求項７】
前記複数個の機能再構成セルの記憶回路には第１のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第１のアドレス範囲に対するアクセス要求に応答して、当該アドレスが割り当てられた機能再構成セルの前記記憶回路をランダムアクセス可能とする、請求項６記載の半導体装置。
【請求項８】
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第２のアドレス範囲に対するリードアクセス要求に応答して、当該アドレスの制御回路がそのとき記憶回路に出力させている情報を読み出す、請求項７記載の半導体装置。
【請求項９】
前記複数の機能再構成セルの間を可変可能に接続する接続経路選択回路を更に有する請求項８記載の半導体装置。
【請求項１０】
前記接続経路選択回路は、一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続するスイッチ回路と、前記スイッチ回路のスイッチ制御情報を保持するための接続用記憶回路とを有する、請求項９記載の半導体装置。
【請求項１１】
前記接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第３のアドレス範囲に対するライトアクセス要求に応答して、当該アドレスが割り当てられた前記接続用記憶回路をランダムアクセス可能とする、請求項１０記載の半導体装置。
【請求項１２】
記憶回路と制御回路を有する複数の機能再構成セルと、
アクセス要求に応答して機能再構成セルを制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能であり、
前記複数個の機能再構成セルの記憶回路には第１のアドレス範囲のアドレスがマッピングされ、
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第１のアドレス範囲に対するアクセス要求に応答して、当該アドレスが割り当てられた機能再構成セルの前記記憶回路をランダムアクセス可能とし、第２のアドレス範囲に対するリードアクセス要求に応答して、当該アドレスの制御回路がそのとき記憶回路に出力させている情報を読み出す、半導体装置。
【請求項１３】
前記別の情報は、前記アクセス要求に伴ってインタフェース制御回路に供給されるアドレス情報、所定の外部イベント入力を条件に前記制御回路が決定するアドレス情報、又は先に前記記憶回路に出力したアドレス情報を演算して得られるアドレス情報である、請求項１２記載の半導体装置。
【請求項１４】
記憶回路と制御回路を有する複数の機能再構成セルと、
前記複数の機能再構成セルの間を可変化能に接続する接続経路選択回路と、
アクセス要求に応答して前記機能再構成セル及び接続経路選択回路を制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能であり、
前記接続経路選択回路は一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続するスイッチ回路と、前記スイッチ回路のスイッチ制御情報を保持する接続用記憶回路とを有し、
前記複数個の機能再構成セルの記憶回路には第１のアドレス範囲のアドレスがマッピングされ、
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第１のアドレス範囲に対するアクセス要求に応答して、当該アドレスが割り当てられた機能再構成セルの前記記憶回路をランダムアクセス可能とし、第２のアドレス範囲に対するリードアクセス要求に応答して、当該アドレスの制御回路がそのとき記憶回路に出力させている情報を読み出し、第３のアドレス範囲に対するライトアクセス要求に応答して、当該アドレスが割り当てられた前記接続用記憶回路をランダムアクセス可能とする、半導体装置。
【請求項１５】
前記別の情報は、前記アクセス要求に伴ってインタフェース制御回路に供給されるアドレス情報、所定の外部イベント入力を条件に前記制御回路が決定するアドレス情報、又は先に前記記憶回路に出力したアドレス情報を演算して得られるアドレス情報である、請求項１４記載の半導体装置。
【請求項１６】
アクセス要求主体となり得るロジック回路と、前記ロジック回路からのアクセス要求に応答して動作する機能再構成メモリとを有する半導体装置であって、
前記機能再構成メモリは、記憶回路と制御回路を有する複数の機能再構成セルと、前記ロジック回路からのアクセス要求に応答して機能再構成セルを制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報によってアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能である、半導体装置。
【請求項１７】
前記複数個の機能再構成セルの記憶回路には第１のアドレス範囲のアドレスがマッピングされ、
前記ロジック回路は第１のアドレス範囲に対してアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられている機能再構成セルの前記記憶回路をランダムアクセスして、前記機能再構成セルの記憶回路に所定の論理機能を実現するための情報を書き込む、請求項１６記載の半導体装置。
【請求項１８】
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記ロジック回路は第２のアドレス範囲に対してリードアクセス要求を行なうことにより、そのアクセス要求に係るアドレスの制御回路がそのとき記憶回路から出力している情報をリードする、請求項１７記載の半導体装置。
【請求項１９】
アクセス要求主体となり得るロジック回路と、前記ロジック回路からのアクセス要求に応答して動作する機能再構成メモリとを有する半導体装置であって、
前記機能再構成メモリは、記憶回路と制御回路を有する複数の機能再構成セルと、前記複数の機能再構成セルの間を可変化能に接続する接続経路選択回路と、アクセス要求に応答して前記機能再構成セル及び接続経路選択回路を制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能であり、
前記接続経路選択回路は一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続するスイッチ回路と、前記スイッチ回路のスイッチ制御情報を保持する接続用記憶回路とを有する、半導体装置。
【請求項２０】
前記接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされ、
前記ロジック回路は第３のアドレス範囲に対するライトアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられた前記接続用記憶回路をランダムアクセスして、前記スイッチ制御情報を書き込む、請求項１９記載の半導体装置。
【請求項２１】
前記複数個の機能再構成セルの記憶回路には第１のアドレス範囲のアドレスがマッピングされ、
前記ロジック回路は第１のアドレス範囲に対してアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられている機能再構成セルの前記記憶回路をランダムアクセスして、前記機能再構成セルの記憶回路に所定の論理機能を実現するための情報を書き込む、請求項２０記載の半導体装置。
【請求項２２】
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記ロジック回路は第２のアドレス範囲に対してリードアクセス要求を行なうことにより、そのアクセス要求に係るアドレスの制御回路がそのとき記憶回路から出力している情報を前記論理機能によって得られた結果としてリードする、請求項２１記載の半導体装置。
【請求項２３】
前記ロジック回路は中央処理装置である、請求項２２記載の半導体装置。
【請求項２４】
中央処理装置と、前記中央処理装置が接続される第１内部バスと、前記第１内部バスにバスステートコントローラを介して接続される第２内部バスと、前記第１内部バス及び第２内部バスに接続される機能再構成メモリとを有する半導体装置であって、
前記機能再構成メモリは、記憶回路と制御回路を有する複数の機能再構成セルと、前記複数の機能再構成セルの間を可変化能に接続する接続経路選択回路と、アクセス要求に応答して前記機能再構成セル及び接続経路選択回路を制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能であり、
前記接続経路選択回路は一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続するスイッチ回路と、前記スイッチ回路のスイッチ制御情報を保持する接続用記憶回路とを有する、半導体装置。
【請求項２５】
前記複数個の機能再構成セルの記憶回路には第１のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、前記第１バスからの第１のアドレス範囲に対するアクセス要求に応答して、そのアクセス要求に係るアドレスが割り当てられている機能再構成セルの前記記憶回路をランダムアクセス可能にする、請求項２４記載の半導体装置。
【請求項２６】
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、前記第２バスからの第２のアドレス範囲に対するリードアクセス要求に応答して、そのアクセス要求に係るアドレスの制御回路がそのとき記憶回路から読み出している情報を出力する、請求項２５記載の半導体装置。
【請求項２７】
前記接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、前記第１バスからの第３のアドレス範囲に対するライトアクセス要求に応答して、そのアクセス要求に係るアドレスが割り当てられた前記接続用記憶回路をランダムアクセス可能にする、請求項２６記載の半導体装置。
【請求項２８】
前記中央処理装置は前記第１バスを介して機能再構成メモリに前記第３のアドレス範囲に対するライトアクセスを要求して、前記接続用記憶回路に前記スイッチ制御情報を初期設定する、請求項２７記載の半導体装置。
【請求項２９】
前記中央処理装置は前記第１バスを介して機能再構成メモリに前記第１のアドレス範囲に対するライトアクセスを要求して、前記機能再構成セルの記憶回路に所定の論理機能を実現するためのコンフィグレーション情報を初期設定する、請求項２８記載の半導体装置。
【請求項３０】
前記中央処理装置は第２バスを介して前記機能再構成メモリに第２のアドレス範囲に対するリードアクセスを要求して、そのアクセス要求に係るアドレスの前記機能再構成セルが実現する前記論理機能により得られた結果をリードする、請求項２９記載の半導体装置。
【請求項３１】
前記第２バスには割込みコントローラが更に接続され、前記機能再構成メモリは割り込み信号を前記割り込みコントローラに出力する、請求項３０記載の半導体装置。
【請求項３２】
前記第１バスにはＲＡＭ及びＲＯＭが更に接続され、
前記第２バスにはその他の周辺回路が更に接続される、請求項３１記載の半導体装置。
【請求項３３】
記憶回路、クロック制御回路、及びそれらを制御する制御回路をそれぞれ有し、自らのクロック制御回路から出力されるクロック信号に同期して動作する複数の機能再構成セルと、
アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は先に前記記憶回路から読出した制御フィールドの情報又は外部から入力される情報に基づいて前記記憶回路の次の読出しアドレスを制御して所要の論理動作のシーケンス制御を行い、
前記クロック制御回路は、自らの機能再構成セルの外部から入力される第１情報に基づいて自らの機能再構成セルのクロック信号の生成を開始し、自らの前記記憶回路から読出される第２情報に基づいて前記クロック信号の生成を停止する、半導体装置。
【請求項３４】
前記制御回路は、次の読出しアドレスとして、前記インタフェース制御回路から供給されるアドレス情報、先に前記記憶回路のデータフィールドから読み出された情報、先に前記記憶回路に出力したアドレス情報、又は先に前記記憶回路に出力したアドレス情報を演算することによって得られるアドレス情報を出力する、請求項３３記載の半導体装置。
【請求項３５】
前記複数個の機能再構成セルには第１のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第１のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルにその記憶回路をランダムアクセスさせる、請求項３３記載の半導体装置。
【請求項３６】
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第２のアドレス範囲に対する第１のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロック制御回路でクロック信号を発生させて、記憶回路の読出し開始アドレスを設定する、請求項３５記載の半導体装置。
【請求項３７】
前記インタフェース制御回路は、第２のアドレス範囲に対する第２のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロック制御回路でクロック信号を発生させて、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始させる、請求項３６記載の半導体装置。
【請求項３８】
前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始した機能再構成セルの制御回路は、その記憶回路から読み出された特定の情報に基づく特定の信号を他の機能再構成セルに出力し、当該他の機能再構成セルは、前記特定の信号に応答して、自らのクロック制御回路でクロック信号を発生して、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始する、請求項３７記載の半導体装置。
【請求項３９】
前記インタフェース制御回路は、第２のアドレス範囲に対する第３のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロック制御回路でクロック信号を発生させ、記憶回路のデータフィールドの記憶情報を前記論理動作の結果として出力させる、請求項３８記載の半導体装置。
【請求項４０】
前記複数の機能再構成セルの間を可変可能に接続する接続経路選択回路を更に有し、
前記接続経路選択回路は、一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続する第１スイッチ回路と、前記第１スイッチ回路のスイッチ制御情報を保持するための第１接続用記憶回路とを有し、
前記第１接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第３のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第１接続用記憶回路をランダムアクセスする、請求項３３記載の半導体装置。
【請求項４１】
前記接続経路選択回路は、前記複数の機能再構成セルの間において一の機能再構成セルが出力する情報を前記第１情報として他の機能再構成セルに選択的に伝達する第２スイッチ回路と、前記第２スイッチ回路のスイッチ制御情報を保持するための第２接続用記憶回路とを更に有し、
前記第２接続用記憶回路には第４のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第４のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第２接続用記憶回路をランダムアクセスする、請求項３３記載の半導体装置。
【請求項４２】
前記接続経路選択回路は、前記複数の機能再構成セルの間において一の機能再構成セルのクロック信号を他の機能再構成セルに選択的に伝達する第３スイッチ回路と、前記第３スイッチ回路のスイッチ制御情報を保持するための第３接続用記憶回路とを更に有し、
前記第３接続用記憶回路には第５のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第５のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第３接続用記憶回路をランダムアクセスする、請求項３３記載の半導体装置。
【請求項４３】
前記クロック制御回路は、クロック信号の生成及び停止が可能にされるクロック発生回路と、クロック切換えスイッチ回路とを有し、
前記半導体装置は前記クロック切換えスイッチ回路のスイッチ制御情報を保持するための第４接続用記憶回路を有し、
前記クロック切換えスイッチ回路は、前記クロック発生回路で発生したクロック信号又は外部から供給されるクロック信号を選択し、
前記第４接続用記憶回路には第６のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第６のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第４接続用記憶回路をランダムアクセスする、請求項４２記載の半導体装置。
【請求項４４】
前記クロック制御回路は、クロック信号の生成及び停止が可能にされるクロック発生回路と、クロック分周器と、クロック切換えスイッチ回路とを有し、
前記半導体装置は前記クロック切換えスイッチ回路のスイッチ制御情報を保持するための第５接続用記憶回路を有し、
前記クロック分周器は、外部から供給されるクロック信号を分周し、
前記クロック切換えスイッチ回路は、前記クロック発生回路で発生したクロック信号、外部から供給されるクロック信号、又は前記クロック分周器から出力されるクロック信号を選択し、
前記第５接続用記憶回路には第７のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第７のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第５接続用記憶回路をランダムアクセスする、請求項４２記載の半導体装置。
【請求項４５】
前記アクセス要求の主体と成り得るロジック回路を更に有し、前記ロジック回路はバスを介して前記インタフェース制御回路に接続される、請求項３３記載の半導体装置。
【請求項４６】
記憶回路、クロックゲート回路、及びそれらを制御する制御回路をそれぞれ有し、自らのクロックゲート回路から出力されるクロック信号に同期して動作する複数の機能再構成セルと、
アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路と、
前記機能再構成セルの前記クロックゲート回路に前記クロック信号を供給するクロック発生回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は先に前記記憶回路から読出した制御フィールドの情報又は外部から入力される情報に基づいて前記記憶回路の次の読出しアドレスを制御して所要の論理動作のシーケンス制御を行い、
前記クロックゲート回路は、自らの機能再構成セルの外部からクロックイネーブル端子に与えられる信号の活性化に同期してクロック信号の出力を開始し、自らの前記記憶回路から読出される情報に基づいてクロック信号の出力を停止する、半導体装置。
【請求項４７】
前記制御回路は、次の読出しアドレスとして、前記インタフェース制御回路から供給されるアドレス情報、先に前記記憶回路のデータフィールドから読み出された情報、先に前記記憶回路に出力したアドレス情報、又は先に前記記憶回路に出力したアドレス情報を演算することによって得られるアドレス情報を出力する、請求項４６記載の半導体装置。
【請求項４８】
前記複数個の機能再構成セルには第１のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第１のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルにその記憶回路をランダムアクセスさせる、請求項４６記載の半導体装置。
【請求項４９】
前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第２のアドレス範囲に対する第１のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロックゲート回路からクロック信号を出力させて、記憶回路の読出し開始アドレスを設定する、請求項４８記載の半導体装置。
【請求項５０】
前記インタフェース制御回路は、第２のアドレス範囲に対する第２のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロックゲート回路からクロック信号を出力させて、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始させる、請求項４９記載の半導体装置。
【請求項５１】
前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始した機能再構成セルの制御回路は、その記憶回路から読み出された特定の情報に基づく特定の信号を他の機能再構成セルに出力し、当該他の機能再構成セルは、前記特定の信号に応答して、自らのクロックゲート回路からクロック信号を出力して、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始する、請求項５０記載の半導体装置。
【請求項５２】
前記インタフェース制御回路は、第２のアドレス範囲に対する第３のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロックゲート回路からクロック信号を出力させ、記憶回路のデータフィールドの記憶情報を前記論理動作の結果として出力させる、請求項５１記載の半導体装置。
【請求項５３】
前記複数の機能再構成セルの間を可変可能に接続する接続経路選択回路を更に有し、
前記接続経路選択回路は、一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続する第１スイッチ回路と、前記第１スイッチ回路のスイッチ制御情報を保持するための第１接続用記憶回路とを有し、
前記第１接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第３のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第１接続用記憶回路をランダムアクセスする、請求項４６記載の半導体装置。
【請求項５４】
前記接続経路選択回路は、前記複数の機能再構成セルの間において一の機能再構成セルのクロックイネーブル端子に他の機能再構成セルから伝達される情報を選択する第２スイッチ回路と、前記第２スイッチ回路のスイッチ制御情報を保持するための第２接続用記憶回路とを更に有し、
前記第２接続用記憶回路には第４のアドレス範囲のアドレスがマッピングされ、
前記インタフェース制御回路は、第４のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第２接続用記憶回路をランダムアクセスする、請求項４６記載の半導体装置。
【請求項５５】
前記クロックゲート回路は、自らの記憶回路から読み出される情報に基づいて制御値が設定されるレジスタと、レジスタの設定値と前記クロックイネーブル端子の値とに基づいて前記クロック信号の出力と出力停止を制御する論理回路とを有し、
前記論理回路は、前記レジスタの設定値が第１値のときにクロックイネーブル端子が活性化されるタイミングに同期してクロック信号の出力を開始し、前記レジスタの設定値が第２値のときにクロック信号の出力を抑止する、請求項４６記載の半導体装置。
【請求項５６】
前記アクセス要求の主体と成り得るロジック回路を更に有し、前記ロジック回路はバスを介して前記インタフェース制御回路に接続される、請求項４６記載の半導体装置。
【請求項５７】
記憶回路、電源ゲート回路、及びそれらを制御する制御回路を有する複数の機能再構成セルと、
アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路と、
前記機能再構成セルの前記電源ゲート回路に接続される電源回路と、を有し、
前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有し、
前記制御回路は先に前記記憶回路から読出した制御フィールドの情報又は外部から入力される情報に基づいて前記記憶回路の次の読出しアドレスを制御して所要の論理動作のシーケンス制御を行い、
前記電源ゲート回路は、自らの機能再構成セルの外部から与えられる信号の活性化に同期して自らの機能再構成セルの後段への電源供給を開始し、自らの前記記憶回路から読出される情報に基づいて前記電源供給を停止する、半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は記憶回路を用いて可変可能に論理機能を実現することができる半導体装置に関し、例えばプログラマブルに周辺機能を実現することができる可変論理モジュールを備えた半導体データ処理装置に適用して有効な技術に関する。
【背景技術】
【０００２】
可変論理モジュール若しくは可変論理デバイス（リコンフィギュラブルデバイス）としてＰＬＤ（プログラマブル・ロジック・デバイス）若しくはＦＰＬＤ（フィールドＰＬＤ）が既に利用されている。代表的なＰＬＤとしてはＦＰＧＡ（フィールド・プログラマブル・ゲート・アレイ）などのプログラマブル・デバイスがある。ＦＰＧＡはルックアップ・テーブルを基本にしてそれにフリップフロップを併せ持たせたＣＬＢ(コンフィギャラブル・ロジック・ブロック)をＭＯＳスイッチでプログラマブルに接続させて大規模ロジックを構成するものである。ＦＰＧＡは基本的に書き換え可能な論理回路と可変スイッチ回路を持たせた素子である。特許文献１にはＦＰＧＡについて記載がある。ＦＰＧＡの基本である論理回路は例えば４入力のＬＵＴ(ルック・アップ・テーブル)で構成され、最終段にＦ／Ｆ（フリップ・フロップ）を有し、それを２段２層の論理構造で持っている。これをＣＬＢと呼んでいる。例えば、1メガ（Ｍ）ゲート相当でプログラマブルに論理を構成するためには１キロ（ｋ）以上のＣＬＢを集合させ、このＣＬＢの論理情報をＳＲＡＭ（スタティック・ランダム・アクセス・メモリ）に持たせて書き換え可能にしている。これらのＣＬＢはお互いの接続をプログラマブルにする為にスイッチマトリックスを有している。そのスイッチは方向性を持たせる為に、６ＭＯＳのスイッチＭＯＳで構成され、このスイッチＭＯＳのオン／オフ制御情報もＳＲＡＭに持たせているので、１Ｍゲート相当に対して１．７Ｍビット程度の情報量が必要である。また、特許文献２にはメモリに所定の真理値データを格納させることによって任意の論理を構成可能な複数の可変論理回路をマトリクス状に配置し、それらをＸ、Ｙ方向の配線に可変スイッチ回路で可変化能に接続するようにした半導体装置について記載がある。【０００３】
【特許文献１】特開平０４−２４２８２５号公報
【特許文献２】特開２００３−１４９３００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記ＦＰＧＡに代表されるように多数のＣＬＢをスイッチマトリクスを用いて接続することによって可変論理モジュールを構成する場合には、必要な論理規模の増大にしたがってＣＬＢの数やスイッチマトリクスのスイッチ素子が多くなり、実装面積の改善に限界のあることが本発明者によって見出された。すなわち、複雑な論理やシーケンスをプログラムする場合には必要な論理規模に比例して多数のスイッチマトリクスを用いて多数のＣＬＢの接続を設定しなければならない。ＳＲＡＭに論理構成用の真理値データを格納するとき、ＳＲＡＭからリードした真理値データを単に論理構成のためのスタティックな情報としてしか利用しない場合には、必要な論理規模に比例してＳＲＡＭの記憶容量を増大しなければならない。また、従来技術においては、可変論理モジュールの論理構成をダイナミックに書き換えること、そして、周辺回路のような実回路に可変論理モジュールを適用することについて何ら着眼されていない。【０００５】
本発明の目的は、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる半導体装置を提供することにある。【０００６】
本発明の別の目的は、小さなチップ占有面積で可変論理機能を実現可能な半導体装置を提供することにある。【０００７】
本発明の更に別の目的は、論理機能をダイナミックに再構成することが容易な半導体装置を提供することにある。【０００８】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち代表的なものについて簡単に説明すれば下記のとおりである。【００１０】
本発明に係る半導体装置は、可変論理機能を実現するためにそれぞれ記憶回路と制御回路を有する複数の機能再構成セルを備え、真理値データを格納する記憶回路の読み出しアドレスを機能再構成セルそれ自体で自律的に制御する。例えば前記制御回路は記憶回路のデータフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とする。前記機能再構成セルはアクセス要求主体からのアクセス要求に応答するインタフェース制御回路の制御を受ける。【００１１】
上記より、真理値データを格納する記憶回路の読み出しを機能再構成セルそれ自体で自律的に制御することができるから、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる。したがって、実現可能な論理構成や論理規模に融通性を得ることができ、また、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。【００１２】
また、前記記憶回路に対するランダムアクセス用のアドレスマッピングに対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレスマップを個別化する。これにより、機能再構成セルに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。特に、機能再構成セルに周辺機能が設定される場合、中央処理装置等によるメモリアクセス経路と、周辺回路に対するアクセス経路を分離しているアーキテクチャとの整合を考慮する場合には、アクセス要求主体からインタフェース制御回路に対する機能再構成セルへの機能設定用アクセス経路と、機能設定された機能再構成セルへのアクセス経路とを分離すればよい。
【発明の効果】
【００１３】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。【００１４】
すなわち、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる。【００１５】
また、小さなチップ占有面積で可変論理機能を実現可能になる。【００１６】
また、論理機能をダイナミックに再構成することが容易になる。
【図面の簡単な説明】
【００１７】
【図１】図１は機能再構成セルの一例を示すブロック図である。
【図２】図２は本発明の一例に係るデータプロセッサを全体的に示すブロック図である。
【図３】図３は複数の機能再構成セルのアレイ構成を例示するブロック図である。
【図４】図４は機能再構成メモリの全体的な構成を例示するブロック図である。
【図５】図５は機能再構成セルと経路選択回路のアドレスマッピングを例示するアドレスマップである。
【図６】図６は機能再構成セルにおける論理動作の基本概念を示す説明図である。
【図７】図７は図６の内部シーケンスを例示するフローチャートである。
【図８】図８は機能再構成セルでリロード型ダウンカウンタを構成する場合の例が示すブロック図である。
【図９】図９は２個の機能再構成セルでリロード型ダウンカウンタを構成する場合の例を示すブロック図である。
【図１０】図１０は図８の（Ａ）の構成で３ビットカウンタを構成する場合の例を示すデータ例である。
【図１１】図１１は図１０による３ビットカウンタ動作の動作シーケンスを例示するフローチャートである。
【図１２】図１２は図６の論理動作基本概念図に対応する具体的な動作例を示す動作説明図である。
【図１３】図１３は３ビットカウンタを夫々構成する機能再構成セルを接続選択回路で接続して６ビットカウンタを構成する例を示すブロック図である。
【図１４】図１４はＣＰＵによる機能再構成メモリのアクセス形態を例示する説明図である。
【図１５】図１５は第２の実施の形態に係る機能再構成セルを例示するブロック図である。
【図１６】図１６は機能再構成セルをダウンカウンタに用いた例を示すブロック図である。
【図１７】図１７は複数の機能再構成セルを直列的に動作させてカウンタを実現する構成が例示されるシステム図である。
【図１８】図１８は前段と後段の機能再構成セルの動作タイミングを例示するタイミングチャートである。
【図１９】図１９は複数個の機能再構成セルの接続形態を例示するシステム図である。
【図２０】図２０には図１９の構成を用いた非同期動作を例示するタイミングチャートである。
【図２１】図２１は一の機能再構成セルで発生されたクロック信号ＣＫを後段の機能再構成セルに供給する構成を採用した例を示すシステム図である。
【図２２】図２２は第２の実施の形態に係る別の機能再構成セルを例示するブロック図である。
【図２３】図２３は第３の実施の形態に係る機能再構成セルを例示するブロック図である。
【図２４】図２４はクロックゲート回路（ＣＬＫＤＲＶ）の具体例を示す論理回路図である。
【図２５】図２５は複数の機能再構成セルを直列的に動作させて８ビットＰＷＭを実現するシステム図である。
【図２６】図２６は複数の機能再構成セルを直列的に動作させて２４ビットカウンタを実現するシステム図である。
【図２７】図２７は８ビットカウンタ機能が定義された４個の機能再構成セルを４個用いて３２ビットカウンタを実現するときのシステムズである。
【符号の説明】
【００１８】
１  データプロセッサ
２  中央処理装置（ＣＰＵ）
４  ランダム・アクセス・メモリ（ＲＡＭ）
５  ダイレクト・メモリ・アクセス・コントローラ（ＤＭＡＣ）
ＳＢＵＳ  システムバス（第１バス）
６  バスステートコントローラ（ＢＳＣ）
ＰＢＵＳ  周辺バス(第２バス)
８  機能再構成メモリ（ＲＣＦＧＭ）
１６  割込みコントローラ（ＩＮＴＣ）
２０、２０Ａ、２０Ｂ、２０Ｃ  機能再構成セル（ＡＣＭＵ）
２１  インタフェース制御回路（ＩＦＣＮＴ）
２３  記憶回路（ＭＲＹ）
２４  制御回路（ＭＣＯＮＴ）
２５  スタティック・ランダム・アクセスメモリ（ＳＲＡＭ）
２６  アドレスラッチ回路（ＡＤＲＬＡＴ）
２７  メモリアレイ２７
２８  アドレスデコーダ（ＳＤＥＣ）
２９  タイミングコントローラ（ＴＭＣＮＴ）
２７＿Ｄ  データフィールド（ＤＦＬＤ）
２７＿Ｃ  制御フィールド（ＣＦＬＤ）
３０  セレクタ（ＡＤＲＳＬ）
３１  アドレスインクリメンタ（ＩＣＲＭ）
３２  アクセス制御デコーダ（ＡＣＤＥＣ）
ＤＡＴ＿Ｃ  制御情報
ＥＸＥＶＴ  外部イベント信号
ＲＤＭＡＥ＿ｊ  ランダムアクセス選択信号
ＩＯＡＥ＿ｊ  ＩＯアクセス選択信号
ＲＷ＿ｊ  リード／ライト信号
ＬＯＧＥ＿ｊ  ロジックイネーブル信号
３５  接続経路選択回路
ＩＢＵＳ＿ｉ  内部バス
ＩＡＢＵＳ＿ｉ  内部アドレスバス
ＩＤＢＵＳ＿ｉ  内部データバス
３６  スイッチ回路
３７  接続用記憶回路
４０  バスインタフェース回路（ＢＵＳＩＦ）
４１  アドレスデコーダ（ＡＤＥＣ）
４２  内部バス選択回路（ＩＢＳＬ）
ＡＡ１  第１のアドレス範囲
ＡＡ２  第２のアドレス範囲
ＡＡ３  第３のアドレス範囲
【発明を実施するための最良の形態】
【００１９】
１．実施の形態の概要
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。【００２０】
〔１〕本発明の代表的な実施の形態に係る半導体装置は、記憶回路（２３）と制御回路（２４）を有する複数の機能再構成セル（２０）と、アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路（４０，４１，４２）と、を備える。前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールド（ＤＦＬＤ）と制御フィールド（ＣＦＬＤ）を有する。前記制御回路は前記記憶回路の次の読出しアドレスを先に前記記憶回路から読出した制御フィールドの情報又は外部イベント入力に基づいて自律的に制御することが可能である。【００２１】
上記より、記憶回路の読み出しを機能再構成セルそれ自体で自律的に制御することができるから、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができる。したがって、実現可能な論理構成や論理規模に融通性を得ることができ、また、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。【００２２】
例えば前記制御回路は前記次の読出しアドレスとして、前記アクセス要求に伴ってインタフェース制御回路に供給されるアドレス情報、所定の外部イベント入力を条件に前記制御回路が決定するアドレス情報、先に記憶回路のデータフィールドから読み出された情報、又は先に前記記憶回路に出力したアドレス情報のアドレス演算により得られるアドレス情報を出力する。【００２３】
〔２〕本発明の別の実施の形態に係る半導体装置は、上記同様の複数の機能再構成セルとインタフェース制御回路とを有し、特に、前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能である。この構成においても、記憶回路の読み出しを機能再構成セルそれ自体で自律的に制御することができる。したがって、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができ、実現可能な論理構成に融通性があり、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。【００２４】
一つの具体的な形態として、前記制御回路は、前記制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をアドレス情報として選択するセレクタ（３０、３２）を有する。【００２５】
前記別の情報は、前記アクセス要求に伴ってインタフェース制御回路に供給されるアドレス情報、所定の外部イベント入力を条件に前記制御回路が決定するアドレス情報、又は先に前記記憶回路に出力したアドレス情報のアドレス演算により得られるアドレス情報である。【００２６】
このとき前記制御回路は前記アドレス演算を行うアドレス演算器（３１）を有し、アドレス演算器の出力は前記セレクタの入力に接続され、前記セレクタは前記制御フィールドからの帰還入力情報に基づいてアドレス演算器の出力を選択可能であり、前記アドレス演算器の入力は前記セレクタの出力に結合される。【００２７】
別の具体的な形態として、前記複数個の機能再構成セルの記憶回路は、半導体装置のメモリ空間に割り当てられたアドレス範囲とＩＯ空間に割り当てられたアドレス範囲との両方にアドレスがマッピングされる。前記インタフェース制御回路は、メモリ空間に割り当てられた第１のアドレス範囲（ＡＡ１）に対するアクセス要求に応答して、当該アドレスが割り当てられた機能再構成セルの前記記憶回路をメモリとしてアクセス可能とする。これにより、アクセス要求主体は第１のアドレス範囲のアドレスを指定するメモリアクセスによって記憶回路に書き込みを行って機能再構成セルの論理構成を定義することができる。【００２８】
また、前記インタフェース制御回路は、ＩＯ空間に割り当てられた第２のアドレス範囲（ＡＡ２）に対するライトアクセス要求に応答して当該アドレスの制御回路での処理に必要な情報を書き込むことが出来る。同様にリードアクセス要求に応答して、当該アドレスの制御回路がそのとき記憶回路に出力させている情報を読み出す。これにより、アクセス要求主体は論理機能が設定された機能再構成セルによる論理動作に必要な情報を第２のアドレス範囲のアドレスを指定するライトアクセスによって供給し、論理動作の結果を第２のアドレス範囲のアドレスを指定するリードアクセスによって任意に取得することができる。【００２９】
上述のように、前記記憶回路に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲)に対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレス（第２のアドレス範囲のアドレス）を個別化することにより、機能再構成セルに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。【００３０】
更に別の具体的な形態として、前記複数の機能再構成セルの間を可変可能に接続する接続経路選択回路（３５）を更に有する。複数の機能再構成セルを直列的に動作させ、あるいは並列的に動作させて、一単位の論理機能を実現することが可能になる。【００３１】
このとき、前記接続経路選択回路は、一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続するスイッチ回路（３６）と、前記スイッチ回路のスイッチ制御情報を保持するための接続用記憶回路（３７）とを有する。複数の機能再構成セル間でそれぞれの自律制御を連関させることが可能になる。【００３２】
前記接続用記憶回路にはメモリ空間に割り当てられた第３のアドレス範囲（ＡＡ３）がマッピングされる。このとき、前記インタフェース制御回路は、第３のアドレス範囲に対するライトアクセス要求に応答して、当該アドレスが割り当てられた前記接続用記憶回路をメモリとしてアクセス可能とする。これにより、アクセス要求主体は第３のアドレス範囲のアドレスを指定するランダムアクセスにより接続用記憶回路に書き込みを行って機能再構成セル間の接続を任意に定義することができる。【００３３】
〔３〕本発明の更に別の実施の形態に係る半導体装置は、アクセス要求主体となり得るロジック回路（２，５）と、前記ロジック回路からのアクセス要求に応答して動作する機能再構成メモリ（８）とを有する。ロジック回路は例えば中央処理装置とされる。前記機能再構成メモリは、記憶回路と制御回路を有する複数の機能再構成セルと、前記複数の機能再構成セルの間を可変可能に接続する接続経路選択回路と、アクセス要求に応答して前記機能再構成セル及び接続経路選択回路を制御するインタフェース制御回路とを備える。前記記憶回路は半導体装置のアドレス空間のうち、メモリ空間にマッピングされたアドレス範囲とＩＯ空間にマッピングされたアドレス範囲とがマッピングされる。前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有する。前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能である。前記接続経路選択回路は一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続するスイッチ回路と、前記スイッチ回路のスイッチ制御情報を保持する接続用記憶回路とを有する。【００３４】
この半導体装置においても、記憶回路の読み出しを機能再構成セルそれ自体で自律的に制御することができる。したがって、可変論理機能を実現するための記憶回路を論理回路と等価な回路として扱うことができ、実現可能な論理構成に融通性があり、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。【００３５】
一つの具体的な形態として、前記接続用記憶回路には半導体装置のメモリ空間に第３のアドレス範囲のアドレスがマッピングされる。このとき、前記ロジック回路は第３のアドレス範囲に対するライトアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられた前記接続用記憶回路をランダムアクセスして、前記スイッチ制御情報を書き込む。これにより、ロジック回路は第３のアドレス範囲を指定したランダムアクセスにより機能再構成セル間の接続を任意に定義することができる。【００３６】
別の具体的な形態として、前記複数個の機能再構成セルの記憶回路には半導体装置のメモリ空間において第１のアドレス範囲のアドレスがマッピングされる。前記ロジック回路は第１のアドレス範囲に対してアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられている機能再構成セルの前記記憶回路をランダムアクセスして、前記機能再構成セルの記憶回路に所定の論理機能を実現するための情報を書き込む。これにより、ロジック回路は第１のアドレス範囲のアドレスを指定したランダムアクセスにより機能再構成セルの論理構成を任意に定義することができる。【００３７】
更に別の具体的な形態として、前記複数個の機能再構成セルには半導体装置のＩＯ空間において第２のアドレス範囲のアドレスがマッピングされる。前記ロジック回路は第２のアドレス範囲に対してリードアクセス要求を行なうことにより、そのアクセス要求に係るアドレスの制御回路がそのとき記憶回路から出力している情報を前記論理機能によって得られた結果としてリードする。これにより、ロジック回路は論理機能が設定された機能再構成セルによる論理動作の結果を第２のアドレス範囲のアドレスを指定したリードアクセスによって任意に取得することができる。【００３８】
上述のように、前記記憶回路と接続用記憶回路に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲と第３のアドレス範囲)に対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレス（第２のアドレス範囲のアドレス）を個別化することにより、機能再構成セル及び接続選択回路に対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。【００３９】
〔４〕本発明の更に別の実施の形態に係る半導体装置は、中央処理装置と、前記中央処理装置が接続される第１内部バスと、前記第１内部バスにバスステートコントローラを介して接続される第２内部バスと、前記第１内部バス及び第２内部バスに接続される機能再構成メモリとを備える。前記機能再構成メモリは、記憶回路と制御回路を有する複数の機能再構成セルと、前記複数の機能再構成セルの間を可変化能に接続する接続経路選択回路と、アクセス要求に応答して前記機能再構成セル及び接続経路選択回路を制御するインタフェース制御回路とを有する。前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有する。前記制御回路は前記データフィールド及び制御フィールドから同期的に読み出された情報を帰還入力し、制御フィールドからの帰還入力情報に基づいて、データフィールドからの帰還入力情報又は別の情報をデータフィールド及び制御フィールドを次に同期的に読み出し制御するためのアドレス情報とすることが可能である。前記接続経路選択回路は一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続するスイッチ回路と、前記スイッチ回路のスイッチ制御情報を保持する接続用記憶回路とを有する。【００４０】
一つの具体的な形態として、前記複数個の機能再構成セルの記憶回路には半導体装置のメモリ空間において第１のアドレス範囲のアドレスがマッピングされる。このとき、前記インタフェース制御回路は、前記第１バスからの第１のアドレス範囲に対するアクセス要求に応答して、そのアクセス要求に係るアドレスが割り当てられている機能再構成セルの前記記憶回路をランダムアクセス可能にする。これにより、前記中央処理装置は前記機能再構成セルの記憶回路を前記第１バスを介して接続されるメモリ装置（例えばSRAMアレイ）としてアクセス可能となり、前記第１バスを介して機能再構成メモリにライトアクセスを要求して第１のアドレス範囲のアドレスと書き込むべきデータを出力することで、前記機能再構成セルの記憶回路に所定の論理機能を実現するためのコンフィグレーション情報を設定することができる。前記第１バスはアドレス専用のバス配線とデータ専用のバス配線とが物理的に分離して存在するものであっても、同一のバス配線を時分割に用い分けるものであっても良い。【００４１】
更に具体的な形態として前記複数個の機能再構成セルには半導体装置のＩＯ空間において第２のアドレス範囲のアドレスがマッピングされる。このとき、前記インタフェース制御回路は、前記第２バスからの第２のアドレス範囲に対するリードアクセス要求に応答して、そのアクセス要求に係るアドレスの制御回路がそのとき記憶回路から読み出している情報を出力する。これにより、前記中央処理装置は第２バスを介して前記機能再構成メモリに第２のアドレス範囲に対するリードアクセスを要求して、そのアクセス要求に係るアドレスの前記機能再構成セルが実現する前記論理機能により得られた結果をリードすることができる。【００４２】
前記第２のアドレス範囲にマッピングされた前記複数個の機能再構成セルには、前記中央処理装置は前記第２バスを介して接続されるＩＯ装置としてアクセス可能とされる。【００４３】
更に具体的な形態として、前記接続用記憶回路には半導体装置のメモリ空間に第３のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、前記第１バスからの第３のアドレス範囲に対するライトアクセス要求に応答して、そのアクセス要求に係るアドレスが割り当てられた前記接続用記憶回路をランダムアクセス可能にする。これにより、前記中央処理装置は前記第１バスを介して機能再構成メモリに前記第３のアドレス範囲に対するライトアクセスを要求して、前記接続用記憶回路に前記スイッチ制御情報を初期設定することができる。【００４４】
前記第３のアドレス範囲にマッピングされた前記接続用記憶回路に、前記中央処理装置は前記第１のアドレス範囲にマッピングされた前記複数個の機能再構成セルの記憶回路と同様に、前記第１バスを介して接続されるメモリ装置としてアクセス可能とされる。【００４５】
更に具体的な形態として、前記第１バスにはＲＡＭ及びＲＯＭが接続され、前記第２バスにはその他の周辺回路が更に接続される。【００４６】
上述のように、前記記憶回路と接続用記憶回路に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲と第３のアドレス範囲)に対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレス（第２のアドレス範囲のアドレス）を個別化することにより、機能再構成セル及び接続選択回路に対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。さらに、中央処理装置からインタフェース制御回路に対する機能再構成セルへの機能設定用アクセス経路（第1バス）と、機能設定された機能再構成セルへのアクセス経路（第２バス）とが分離されるから、機能再構成セルに周辺機能を設定して利用する場合には、中央処理装置等によるメモリアクセス経路と、周辺回路に対するアクセス経路を分離しているアーキテクチャとの整合を容易に図ることができる。【００４７】
別の具体的な形態として、前記第２バスには割込みコントローラが更に接続され、前記機能再構成メモリは割り込み信号を前記割り込みコントローラに出力する。割込み発生要因としての機能も実現することができる。【００４８】
〔５〕本発明の更に別の実施の形態に係る半導体装置は複数の機能再構成セルを非同期でロジック動作させて低消費電力を図るものである。【００４９】
１）．半導体装置は、記憶回路(２３)、クロック制御回路(１００)、及びそれらを制御する制御回路(２４)をそれぞれ有し、自らのクロック制御回路から出力されるクロック信号(ＣＫ)に同期して動作する複数の機能再構成セル(２０Ａ)と、アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路（４０，４１，４２）と、を有する。前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールド(２７＿Ｄ)と制御フィールド(２７＿Ｃ)を有する。前記制御回路は先に前記記憶回路から読出した制御フィールドの情報又は外部から入力される情報に基づいて前記記憶回路の次の読出しアドレスを制御して所要の論理動作のシーケンス制御を行う。前記クロック制御回路は、自らの機能再構成セルの外部から入力される第１情報(ＥＸＥＶＴ)に基づいて自らの機能再構成セルのクロック信号の生成を開始し、自らの前記記憶回路から読出される第２情報(ＥＳ)に基づいて前記クロック信号の生成を停止する。【００５０】
上記より、個々の機能再構成セルは記憶回路の読み出しを制御回路で自律的に制御することができるから、それぞれの機能再構成セルを論理回路と等価な回路として扱うことにより、融通性のある可変論理機能を、比較的小さなチップ占有面積によって実現することができる。【００５１】
それぞれの機能再構成セルは必要に応じてクロックを発生して動作し、休止状態において自らクロックを停止するから、半導体装置の低消費電力に寄与する。【００５２】
２）．前記制御回路は、次の読出しアドレスとして、前記インタフェース制御回路から供給されるアドレス情報、先に前記記憶回路のデータフィールドから読み出された情報、先に前記記憶回路に出力したアドレス情報、又は先に前記記憶回路に出力したアドレス情報を演算することによって得られるアドレス情報を出力する。記憶回路の読出し制御形態の種類が豊富であるから複雑な自律制御にも対応でき、可変論理機能の融通性が増す。【００５３】
３）．前記複数個の機能再構成セルには第１のアドレス範囲のアドレスがマッピングされ、前記インタフェース制御回路は、第１のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルにその記憶回路をランダムアクセスさせる。このランダムアクセスによって所要の論理機能の設定が容易になる。【００５４】
４）．前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされ、前記インタフェース制御回路は、第２のアドレス範囲に対する第１のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロック制御回路でクロック信号を発生させて、記憶回路の読出し開始アドレスを設定する。機能再構成セルに設定した論理機能による動作イネーブルの設定をレジスタアクセスと同様な手順で行うことが可能になる。【００５５】
５）．前記インタフェース制御回路は、第２のアドレス範囲に対する第２のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロック制御回路でクロック信号を発生させて、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始させる。機能再構成セルに設定した論理機能の動作開始イベントの発生をレジスタアクセスと同様な手順で行うことができる。【００５６】
６）．前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始した機能再構成セルの制御回路は、その記憶回路から読み出された特定の情報に基づく特定の信号を他の機能再構成セルに出力し、当該他の機能再構成セルは、前記特定の信号に応答して、自らのクロック制御回路でクロック信号を発生して、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始する。複数の機能再構成セルを直列的に動作させることが容易になる。【００５７】
７）．前記インタフェース制御回路は、第２のアドレス範囲に対する第３のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロック制御回路でクロック信号を発生させ、記憶回路のデータフィールドの記憶情報を前記論理動作の結果として出力させる。【００５８】
上述のように、前記記憶回路に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲)に対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレス（第２のアドレス範囲のアドレス）を個別化することにより、機能再構成セルに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。【００５９】
８）．前記複数の機能再構成セルの間を可変可能に接続する接続経路選択回路(３５)を更に有する。前記接続経路選択回路は、一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続する第１スイッチ回路(３６)と、前記第１スイッチ回路のスイッチ制御情報を保持するための第１接続用記憶回路(３７)とを有する。前記第１接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第３のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第１接続用記憶回路をランダムアクセスする。データ伝播に関し複数の機能再構成セル間の接続をプログラマブルに行うことが容易になり、可変論理機能に対して更に高い融通性を得ることができる。【００６０】
９）．前記接続経路選択回路は、前記複数の機能再構成セルの間において一の機能再構成セルが出力する情報を前記第１情報として他の機能再構成セルに選択的に伝達する第２スイッチ回路(３６Ａ)と、前記第２スイッチ回路のスイッチ制御情報を保持するための第２接続用記憶回路(３７Ａ)とを更に有する。前記第２接続用記憶回路には第４のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第４のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第２接続用記憶回路をランダムアクセスする。複数の機能再構成セルの直列的な動作順をプログラマブルに決定することが容易になり、この点においても可変論理機能に対して更に高い融通性を得ることができる。【００６１】
１０）．前記接続経路選択回路は、前記複数の機能再構成セルの間において一の機能再構成セルのクロック信号を他の機能再構成セルに選択的に伝達する第３スイッチ回路(３６Ｂ)と、前記第３スイッチ回路のスイッチ制御情報を保持するための第３接続用記憶回路(３７Ｂ)とを更に有する。前記第３接続用記憶回路には第５のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第５のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第３接続用記憶回路をランダムアクセスする。一の機能再構成セルで生成したクロック信号を他の機能再構成セルに供給して複数の機能再構成セルを同期的に並列動作させることも容易に選択できるようになる。【００６２】
１１）．前記クロック制御回路は、クロック信号の生成及び停止が可能にされるクロック発生回路(１０１)と、クロック切換えスイッチ回路(１０２)とを有する。前記半導体装置は前記クロック切換えスイッチ回路のスイッチ制御情報を保持するための第４接続用記憶回路(１０３)を更に有する。前記クロック切換えスイッチ回路は、前記クロック発生回路で発生したクロック信号又は外部から供給されるクロック信号を選択する。前記第４接続用記憶回路には第６のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第６のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第４接続用記憶回路をランダムアクセスする。機能再構成セルに、自ら発生したクロック信号又は外部から供給されたクロック信号の何れを利用させるかに関しプログラマブルな設定が可能になり、この点においても可変論理機能に対して更に高い融通性を得ることができる。【００６３】
１２）．前記クロック制御回路は、クロック信号の生成及び停止が可能にされるクロック発生回路と、クロック分周器(１１０)と、クロック切換えスイッチ回路(１０２Ａ)とを有する。前記半導体装置は前記クロック切換えスイッチ回路のスイッチ制御情報を保持するための第５接続用記憶回路(１０３Ａ)を更に有する。前記クロック分周器は、外部から供給されるクロック信号を分周する。前記クロック切換えスイッチ回路は、前記クロック発生回路で発生したクロック信号、外部から供給されるクロック信号、又は前記クロック分周器から出力されるクロック信号を選択する。前記第５接続用記憶回路には第７のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第７のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第５接続用記憶回路をランダムアクセスする。機能再構成セルに自ら発生したクロック信号、外部から供給されたクロック信号、又は外部から供給されたクロック信号の分周クロック信号の何れを利用させるかに関しプログラマブルな設定が可能になり、この点においても可変論理機能に対して更に高い融通性を得ることができる。【００６４】
１３）．前記アクセス要求の主体と成り得るロジック回路（２）を更に有し、前記ロジック回路はバスを介して前記インタフェース制御回路に接続される。システム要求に従ってロジック回路の周辺機能やメモリ機能を複数個の機能再設定セル等から成る回路で容易に実現することができる。【００６５】
〔６〕本発明の更に別の実施の形態に係る半導体装置は複数の機能再構成セルに対する直列的なクロックイネーブル制御によって低消費電力を図るものである。【００６６】
１）．半導体装置は、記憶回路（２３）、クロックゲート回路（１２０）、及びそれらを制御する制御回路（２４）をそれぞれ有し、自らのクロックゲート回路から出力されるクロック信号に同期して動作する複数の機能再構成セル（２０Ｃ）と、アクセス要求に応答して前記機能再構成セルを制御するインタフェース制御回路（４０，４１，４２）と、前記それぞれの機能再構成セルの前記クロックゲート回路に前記クロック信号を供給するクロック発生回路（１４）と、を有する。前記記憶回路は前記制御回路から出力されるアドレス情報に基づいてアクセスされるデータフィールドと制御フィールドを有する。前記制御回路は先に前記記憶回路から読出した制御フィールドの情報又は外部から入力される情報に基づいて前記記憶回路の次の読出しアドレスを制御して所要の論理動作のシーケンス制御を行う。前記クロックゲート回路は、自らの機能再構成セルの外部からクロックイネーブル端子に与えられる信号（ＥＸＥＶＴ（ＣＫＥ））の活性化タイミングに同期してクロック信号の出力を開始し、自らの前記記憶回路から読出される情報（ＥＳ）に基づいてクロック信号の出力を停止する。【００６７】
上記より、個々の機能再構成セルは記憶回路の読み出しを制御回路で自律的に制御することができるから、それぞれの機能再構成セルを論理回路と等価な回路として扱うことにより、融通性のある可変論理機能を、比較的小さなチップ占有面積によって実現することができる。【００６８】
それぞれの機能再構成セルには必要に応じてクロックイネーブル制御によって各機能再構成セルに共通のクロック信号が供給されて動作し、休止状態において自らクロックディスエーブルにするから、半導体装置の低消費電力に寄与する。クロックイネーブル状態で機能再構成セルに供給されるクロック信号はそれぞれの機能再構成セルで共通化されるから、機能再構成セル間でのデータの受け渡しには時間を要せず簡単に行うことができる。前記項〔５〕における機能再構成セル毎にクロック信号を発生させる場合には機能再構成セル間は基本的に非同期となるので、機能再構成セル間でのデータの受け渡しには上記よりも時間を要する。項〔５〕の構成は複数の機能再構成セルに共通のクロック発生回路を要しないので、項〔６〕よりも優れた低消費電力性能を有する。【００６９】
２）．前記制御回路は、次の読出しアドレスとして、前記インタフェース制御回路から供給されるアドレス情報、先に前記記憶回路のデータフィールドから読み出された情報、先に前記記憶回路に出力したアドレス情報、又は先に前記記憶回路に出力したアドレス情報を演算することによって得られるアドレス情報を出力する。記憶回路の読出し制御形態の種類が豊富であるから複雑な自律制御にも対応でき、可変論理機能の融通性が増す。【００７０】
３）．前記複数個の機能再構成セルには第１のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第１のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルにその記憶回路をランダムアクセスさせる。このランダムアクセスによって所要の論理機能の設定が容易になる。【００７１】
４）．前記複数個の機能再構成セルには第２のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第２のアドレス範囲に対する第１のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロックゲート回路からクロック信号を出力させて、記憶回路の読出し開始アドレスを設定する。機能再構成セルに設定した論理機能による動作イネーブルの設定をレジスタアクセスと同様な手順で行うことが可能になる。【００７２】
５）．前記インタフェース制御回路は、第２のアドレス範囲に対する第２のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロックゲート回路からクロック信号を出力させて、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始させる。機能再構成セルに設定した論理機能の動作開始イベントの発生をレジスタアクセスと同様な手順で行うことができる。【００７３】
６）．前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始した機能再構成セルの制御回路は、その記憶回路から読み出された特定の情報に基づく特定の信号を他の機能再構成セルに出力し、当該他の機能再構成セルは、前記特定の信号に応答して、自らのクロックゲート回路からクロック信号を出力して、前記読出し開始アドレスから記憶回路の記憶情報の読出しを開始する、請求項５０記載の半導体装置。【００７４】
７）．前記インタフェース制御回路は、第２のアドレス範囲に対する第３のアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルに、当該機能再構成セルのクロックゲート回路からクロック信号を出力させ、記憶回路のデータフィールドの記憶情報を前記論理動作の結果として出力させる。複数の機能再構成セルを直列的に動作させることが容易になる。【００７５】
上述のように、前記記憶回路に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲)に対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレス（第２のアドレス範囲のアドレス）を個別化することにより、機能再構成セルに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。【００７６】
８）．前記複数の機能再構成セルの間を可変可能に接続する接続経路選択回路を更に有する。前記接続経路選択回路は、一の機能再構成セルにおけるデータフィールドからの出力と制御フィールドからの出力とを他の機能再構成セルの制御回路に選択的に接続する第１スイッチ回路と、前記第１スイッチ回路のスイッチ制御情報を保持するための第１接続用記憶回路とを有する。前記第１接続用記憶回路には第３のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第３のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第１接続用記憶回路をランダムアクセスする。データ伝播に関し複数の機能再構成セル間の接続をプログラマブルに行うことが容易になり、可変論理機能に対して更に高い融通性を得ることができる。【００７７】
９）．前記接続経路選択回路は、前記複数の機能再構成セルの間において一の機能再構成セルのクロックイネーブル端子に他の機能再構成セルから伝達される情報を選択する第２スイッチ回路と、前記第２スイッチ回路のスイッチ制御情報を保持するための第２接続用記憶回路とを更に有する。前記第２接続用記憶回路には第４のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第４のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第２接続用記憶回路をランダムアクセスする。複数の機能再構成セルの直列的な動作順をプログラマブルに決定することが容易になり、この点においても可変論理機能に対して更に高い融通性を得ることができる。【００７８】
１０）．前記クロックゲート回路は、自らの記憶回路から読み出される情報に基づいて制御値が設定されるレジスタと、レジスタの設定値と前記クロックイネーブル端子の値とに基づいて前記クロック信号の出力と出力停止を制御する論理回路とを有する。前記論理回路は、前記レジスタの設定値が第１値のときにクロックイネーブル端子が活性化されるタイミングに同期してクロック信号の出力を開始し、前記レジスタの設定値が第２値のときにクロック信号の出力を抑止する。【００７９】
１１）．前記アクセス要求の主体と成り得るロジック回路を更に有し、前記ロジック回路はバスを介して前記インタフェース制御回路に接続される。システム要求に従ってロジック回路の周辺機能やメモリ機能を複数個の機能再設定セル等から成る回路で容易に実現することができる。【００８０】
〔７〕前記のクロックゲート回路又はクロック制御回路を使ったクロックゲーティング手法は低消費電力化性能を有するものであり、このクロックゲーティング手法（クロック供給制御またはクロック発生器のオン／オフ制御）をそのままパワーゲーティング手法（各機能再構成セル自体の電源のオン／オフ制御）に切り替えれば、更に高い低消費電力性能を得ることができる。【００８１】
２．第１の実施の形態の詳細
実施の形態について更に詳述する。【００８２】
図２には本発明の一例に係るデータプロセッサ1が例示される。同図に示されるデータプロセッサは、特に制限されないが、相補型ＭＯＳ集積回路製造技術により単結晶シリコンのような1個の半導体基板に形成されている。【００８３】
データプロセッサ１はプログラムに従って命令をフェッチして実行する中央処理装置（ＣＰＵ）２、ＣＰＵ２が実行するプログラム等が格納されたリード・オンリ・メモリ（ＲＯＭ）３、ＣＰＵ２のワーク領域等に用いられるランダム・アクセス・メモリ（ＲＡＭ）４、及びＣＰＵ２による初期設定に従ってデータ転送を制御するダイレクト・メモリ・アクセス・コントローラ（ＤＭＡＣ）５を有し、それらはシステムバス（第１バス）ＳＢＵＳに接続される。システムバスＳＢＵＳはバスステートコントローラ（ＢＳＣ）６を介して周辺バス(第２バス)ＰＢＵＳに接続する。システムバスＳＢＵＳはＣＰＵ２の動作周波数に同期してデータ、アドレス及びバスコマンド等が伝送される高速バスとして位置付けられる。これに対して、周辺バスＰＢＵＳは動作速度の遅い周辺回路が接続され、データ等が低速で伝送される。ＣＰＵ２等が周辺回路に対するアクセス要求を発行すると、ＢＳＣ６はそのアクセス要求に係る周辺回路のマッピングアドレスに応じて、周辺バスを介するアクセスに必要なバスサイクル数や並列データビット数等のバス制御を行う。【００８４】
前記システムバスＳＢＵＳと周辺バスＰＢＵＳの双方には機能再構成メモリ（ＲＣＦＧＭ）８が接続される。機能再構成メモリ８はＣＰＵ２等によりシステムバスＳＢＵＳから書き込まれた論理機能設定情報（コンフィグレーション情報）に従って可変可能に論理機能が設定され、設定された論理機能に対して周辺バスＰＢＵＳ経由でデータの入出力が可能にされる。【００８５】
周辺バスＰＢＵＳに接続された周辺回路として、ディジタル信号をアナログ信号に変換して外部に出力するディジタル・アナログ・コンバータ（ＤＡＣ）１０、ＣＰＵ２の命令実行状態等を監視するウォッチドッグタイマ（ＷＤＴ）１１、インプットキャプチャ及びコンペアマッチ等のタイマ・カウンタ動作可能なタイマ（ＴＭＲ）１２、シリアルコミュニケーションインタフェースコントローラ（ＳＣＩ）１３、パルス幅変調回路（ＰＷＭ）１５、及び割込みコントローラ（ＩＮＴＣ）１６が例示される。同図には割込み信号としてＩＮＴａ，ＩＮＴｂが代表的に示され、割込みコントローラ１６は割込み信号に対する割り込みマスク制御や優先レベル制御を行って割込み信号を受け付け、受け付けた割込み信号に応ずるベクタを発行すると共に、ＣＰＵ２に割込み要求信号ＩＲＱを発行し、前記ベクタが示す割込み処理プログラムをＣＰＵ２に実行させる。周辺回路として、その他に図示を省略するＩＯポート等が設けられている。【００８６】
機能再構成メモリ８は複数の機能再構成セル（ＡＣＭＵ）２０、及び外部からのアクセス要求に応答して前記機能再構成セル２０を制御するインタフェース制御回路（ＩＦＣＮＴ）２１等を備える。機能再構成セル２０はＣＰＵ２等によりシステムバスＳＢＵＳから書き込まれたコンフィグレーション情報に従って可変可能に論理機能が設定される。図２においてその一部には、ＦＩＦＯバッファ（ＦＩＦＯ＿Ｂ）、１６ビットパルス幅変調回路（ＰＷＭ＿１６ｂ）、８ビットパルス幅変調回路（ＰＷＭ＿８ｂ）、シリアル送信ユニット（ＳＣＩ＿Ｔｘ）、シリアル受信ユニット（ＳＣＩ＿Ｒｘ）、２４ビットタイマ（ＴＭＲ＿２４ｂ）、及び３２ビットタイマ（ＴＭＲ＿３２ｂ）の論理機能が設定されている。残りの機能再構成セル２０はシステムバスＳＢＵＳを介してランダムアクセス可能な内部メモリ（ＩＴＮＲ＿ＲＡＭ）として利用可能にされる。設定された論理動作に用いるデータの書込み、論理動作の開始の指示、及び論理動作結果のデータリードは周辺バスＰＢＵＳ経由で行われる。【００８７】
図１には機能再構成セル２０の一例が示される。機能再構成セル２０は記憶回路（ＭＲＹ）２３と制御回路（ＭＣＯＮＴ）２４を有する。記憶回路２３は例えばシングルポートのスタティック・ランダム・アクセスメモリ（ＳＲＡＭ）２５と、アドレスラッチ回路（ＡＤＲＬＡＴ）２６によって構成される。ＳＲＡＭ２５はメモリアレイ２７、アドレスデコーダ（ＳＤＥＣ）２８、及びタイミングコントローラ（ＴＭＣＮＴ）２９を備える。メモリアレイ２７はアドレスラッチ回路２６から供給されるアドレス信号によってアクセスされるデータフィールド（ＤＦＬＤ）２７＿Ｄと制御フィールド（ＣＦＬＤ）２７＿Ｃを有する。アドレスデコーダ（ＳＤＥＣ）２８はアドレスラッチ回路（ＡＤＲＬＡＴ）２６から出力されるアドレス信号をデコードして、データフィールド（ＤＦＬＤ）２７＿Ｄ及び制御フィールド（ＣＦＬＤ）２７＿Ｃの夫々からアクセス単位のメモリセルを選択する。タイミングコントローラ（ＴＭＣＮＴ）２９は選択されたアクセス単位のメモリセルに対してリード・ライト信号ＲＷ＿ｊ（ｊ＝０〜ｍ）で指示されたリード動作又はライト動作を制御する。【００８８】
制御回路２４はアドレスラッチ回路２６にアドレス信号を供給するセレクタ（ＡＤＲＳＬ）３０、アドレスラッチ回路２６がラッチしたアドレス信号を＋１づつインクリメントするアドレスインクリメンタ（ＩＣＲＭ）３１、及びアクセス制御デコーダ（ＡＣＤＥＣ）３２を有する。セレクタ３０には、データフィールド２７＿Ｄから読み出された情報ＤＡＴ＿Ｄ、アドレスインクリメンタ３１の出力、及びバスＳＢＵＳ，ＰＢＵＳから供給されたアクセスアドレス情報の一部のアドレス情報ＡＤＲ＿ＥＸＴが入力される。アクセス制御デコーダ３２には制御フィールド２７＿Ｃから読み出された制御情報ＤＡＴ＿Ｃ、外部イベント信号ＥＸＥＶＴ、当該機能再構成セル２０に対するランダムアクセス選択信号ＲＤＭＡＥ＿ｊ、ロジックイネーブル信号ＬＯＧＥ＿ｊ、及びＩＯアクセス選択信号ＩＯＡＥ＿ｊが供給され、それに基づいてセレクタ３０の出力動作等を制御する。メモリアレイ２７には図示しないアドレスフィールド（ＡＦＬＤ）とアドレスフィールドの出力をセレクタ３０への入力とするパス（ＤＡＴ＿Ａ）を更に有し、メモリアレイ２７にアクセスしアドレスフィールドからの出力をアクセス制御デコーダによりメモリアレイ２７の次のアクセスアドレスとすることも可能である。【００８９】
ランダムアクセス選択信号ＲＤＭＡＥ＿ｊがアクティブにされたときアクセス制御デコーダ３２はセレクタ３０にアドレス情報ＡＤＲ＿ＥＸＴを選択させ、そのアドレス情報ＡＤＲ＿ＥＸＴに従ってタイミングコントローラ２９にリード／ライト信号ＲＷ＿ｊに従ったアクセス動作を指示する。これによってＳＲＡＭ２５はアドレス情報ＡＤＲ＿ＥＸＴで指定されるアドレスに対してランダムアクセス可能になる。【００９０】
ＩＯアクセス選択信号ＩＯＡＥ＿ｊがアクティブにされ、リード／ライト信号ＲＷ＿ｊによりリード動作が指示されたとき、アクセス制御デコーダ３２はそのときのアドレスラッチ回路２６のアドレスラッチ状態を維持したままそのラッチアドレス情報に従ってタイミングコントローラ２９にリードアクセス動作を指示する。これにより、機能再構成セル２０のＩＯアクセス選択信号ＩＯＡＥ＿ｊがアクティブにされると、そのときＳＲＡＭ２５で選択されている記憶領域に対してアクセス可能になり、ＳＲＡＭ２５に対して一つのメモリマップドＩＯデータレジスタに対する読出しと等価なアクセス動作が可能になる。また、ＩＯアクセス選択信号ＩＯＡＥ＿ｊがアクティブにされ、リード・ライト信号ＲＷ＿ｊによりライト動作が指示されたとき、アクセス制御デコーダ３２はアドレス情報ＡＤＲ＿ＥＸＴをアドレスセレクタ３０に選択させ、そのアドレス情報ＡＤＲ＿ＥＸＴをアドレスラッチ２６にセットして、ＳＲＡＭ２５に対する読出しアドレスを初期設定することができる。このように、ＩＯアクセス選択信号ＩＯＡＥ＿ｊがイネーブルにされたとき書込み対象とされるアドレスラッチ回路２６は書込み対象とされるメモリマップドＩＯレジスタと等価のレジスタとして把握することができる。この等価レジスタをスタートアドレス設定用等価ＩＯレジスタと称する。また、ＩＯアクセス選択信号ＩＯＡＥ＿ｊがイネーブルにされたとき読出し対象とされるＳＲＡＭのメモリ領域は読出し対象とされるメモリマップドＩＯレジスタと等価のレジスタとして把握することができる。この等価レジスタをデータリード用等価ＩＯレジスタと称する。【００９１】
ロジックイネーブル信号ＬＯＧＥ＿ｊがアクティブにされたとき、アクセス制御デコーダ３２はそのときアドレスラッチ２６が保持しているアドレスをスタートアドレスとして、そのアクティブ期間にＳＲＡＭ２５のメモリリードサイクルを繰り返し起動し、サイクル毎に、制御フィールド２７＿Ｃから読み出される制御情報ＤＡＴ＿Ｃに従ってセレクタ３０の選択動作を制御する。外部イベント信号ＥＸＥＶＴがイネーブルにされたとき、アクセス制御デコーダ３２は当該メモリリードサイクルにおいてアドレスセレクタ３０に特定のアドレス（例えばＳＲＡＭ２５の先頭アドレス）を出力させる。ロジックイネーブル信号ＬＯＧＥ＿ｊがイネーブルにされたときスタートアドレスを保持するアドレスラッチ２６はロジック動作の開始を指示するイネーブルビットの書込み対象とされるメモリマップドＩＯレジスタと等価のレジスタとして把握することができる。この等価レジスタをロジックイネーブル用等価ＩＯレジスタと称する。【００９２】
この機能再構成セル２０によれば、記憶回路２３の読み出しを機能再構成セル２０それ自体で自律的に制御することができる。例えば、前記制御回路２４はＳＲＡＭ２５の次の読出しアドレスを先にＳＲＡＭ２５から読出した制御フィールドＣＦＬＤの情報ＤＡＴ＿Ｃやアクセス制御デコーダ３２に供給される外部イベント信号ＥＸＥＶＴの入力に基づいて自律的に制御することが可能である。これにより、可変論理機能を実現するための記憶回路２３を論理回路と等価な回路として扱うことができる。したがって、実現可能な論理構成や論理規模に融通性を得ることができ、また、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。【００９３】
図３には複数の機能再構成セル２０のアレイ構成が例示される。複数の機能再構成セル２０はマトリクス配置され、左右に隣接する機能再構成セル２０の間には接続経路選択回路（ＲＳＷ）３５が配置される。機能再構成セル２０及び接続経路選択回路３５は行単位で内部バスＩＢＵＳ＿ｉ（ｉ＝０，１，…）に接続される。内部バスＩＢＵＳ＿ｉはアドレスバスＩＡＢＵＳ＿ｉとデータバスＩＤＢＵＳ＿ｉに大別される。内部アドレスバスＩＡＢＵＳ＿ｉは制御回路２４に前記アドレスＡＤＲ＿ＥＸＴを供給する。内部データバスＩＤＢＵＳ＿ｉは記憶回路２３との間で情報ＤＡＴ＿Ｃ，ＤＡＴ＿Ｄを伝達する。接続経路選択回路３５は、機能再構成セル２０のデータＤＡＴ＿Ｃ，ＤＡＴ＿Ｄの伝達経路を上下又は左右に隣接する機能再構成セル２０の間で選択的に接続するスイッチ回路３６と、前記スイッチ回路３６のスイッチ制御情報を保持するための接続用記憶回路３７とを有する。接続用記憶回路３７は内部バスＩＡＢＵＳ＿ｉ，ＩＤＢＵＳ＿ｉを介してランダムアクセスさせることによって所要のスイッチ制御情報が設定される。【００９４】
一の機能再構成セル２０のデータＤＡＴ＿Ｃ，ＤＡＴ＿Ｄを他の機能再構成セル２０のデータＤＡＴ＿Ｃ，ＤＡＴ＿Ｄに伝達することが可能であるから、複数の機能再構成セル２０間でそれぞれの前記自律制御を連動させることが可能になる。複数の機能再構成セル２０を直列的に動作させ、あるいは並列的に動作させて、一単位の論理機能を実現することが可能になる。具体例は後で詳述する。【００９５】
機能再構成セル２０の記憶回路２３には論理機能を定義するためのコンフィギュレーション情報がランダムアクセス設定され、接続経路選択回路３５の接続用記憶回路３７には接続経路を定義するためのコンフィグレーション情報がランダムアクセスによって設定される。論理機能が設定された機能再構成セル２０に論理動作の開始が指示されると、その論理動作によって得られる情報は左右又は上下に配置された別の機能再構成セル２０に接続経路選択回路３５を介して伝達可能にされ、また、機能再構成セル２０の論理動作による情報は前記メモリマップドＩＯレジスタに対する読出しと等価なアクセス動作により対応するバスＩＢＵＳ＿ｉを介して外部に読み出し可能にされる。【００９６】
図４には機能再構成メモリ８の全体的な構成が例示される。バスＳＢＵＳ，ＰＢＵＳからのアクセス要求に応答して、図３で説明した複数個の機能再構成セル２０と接続経路選択回路３５のアレイに対する制御を行うインタフェース制御回路として、バスインタフェース回路（ＢＵＳＩＦ）４０、アドレスデコーダ（ＡＤＥＣ）４１、及び内部バス選択回路（ＩＢＳＬ）４２を有する。【００９７】
前記複数個の機能再構成セル２０の記憶回路２３のメモリエリア（ＳＲＡＭ２５の記憶領域）には図５に例示されるように、第１のアドレス範囲ＡＡ１のアドレスがマッピングされる。第１のアドレス範囲ＡＡ１はシステムバスＳＢＵＳに接続するメモリ空間の一部のアドレス空間とされる。また、前記夫々の機能再構成セル２０のための等価的なメモリマップドＩＯレジスタとして把握することができる前記スタートアドレス設定用等価ＩＯレジスタ、データリード用等価ＩＯレジスタ及びロジックイネーブル用等価ＩＯレジスタには第２のアドレス範囲ＡＡ２のアドレスがマッピングされる。図５において1個の機能再構成セルにおけるＳＲＡＭのアドレスは２５６ワード分のアドレスとされ、１個の機能再構成セルにおける前記３個の等価的なメモリマップドＩＯレジスタのアドレスは３ワード分のアドレスとされる。第２のアドレス範囲ＡＡ２は周辺バスＰＢＵＳに接続される周辺回路のレジスタ等に割り当てられるメモリマップドＩＯアドレス空間の一部のアドレス空間とされる。前記接続用記憶回路３７の記憶領域には第３のアドレス範囲ＡＡ３のアドレスがマッピングされる。第３のアドレス範囲ＡＡ３はシステムバスＳＢＵＳ若しくは周辺バスＰＢＵＳに接続するメモリ空間の一部のアドレス空間とされる。【００９８】
バスステートコントローラ６は、第１又は第３のアドレス範囲ＡＡ１，ＡＡ３へのアクセス要求があったときデータプロセッサのアドレス空間中のメモリアドレス空間へのアクセスとしてアクセス制御を行い、第２のアドレス空間ＡＡ２へのアクセス要求があった時はデータプロセッサのアドレス空間中のＩＯアドレス空間へのアクセスとしてアクセス制御を行う。第１乃至第３のいずれのアドレス範囲へのアクセスであったとしても機能再構成メモリ８のバスインタフェース回路４０がアクセスの受付をする。第１又は第３のアドレス範囲ＡＡ１，ＡＡ３へのアクセス要求があったときはバスインタフェース回路４０はメモリウインドウイネーブル信号ＣＭＥをアクティブとし、第２のアドレス範囲ＡＡ２のアクセス要求があったときバスインタフェース回路４０はロジックウインドウイネーブル信号ＣＲＥをアクティブとする。アクセス要求に係るデータの方向はアクセス要求元から発行されるリード信号ＲＤ及びライト信号ＷＴによって判別される。尚、メモリウインドウイネーブル信号ＣＭＥ及びロジックウインドウイネーブル信号ＣＲＥは例えばアドレスデコーダ４１に供給される。【００９９】
アドレスデコーダ４１はアクセス要求に係るアドレス信号の上位側ビットをデコードして、アレイ状に配置された機能再構成セル２０と接続経路選択回路３５のうち何れの回路が指定されているかを判別する。接続経路選択回路３５が指定されているときは当該回路の接続用記憶回路３７をイネーブルとし、対応する内部バスＩＢＵＳ＿ｉをバス選択回路４２に選択させてシステムバスＳＢＵＳに接続し、そのアクセス要求に伴うアドレス信号の下位側アドレス情報を用いて当該接続用記憶回路３７をランダムアクセス可能にする。これにより、ＣＰＵ２等は第３のアドレス範囲ＡＡ３のアドレスを指定するランダムアクセスにより接続用記憶回路３７に書き込みを行って機能再構成セル２０間の接続を任意に定義することができる。【０１００】
また、アドレスデコーダ４１は、アドレスデコードにより、アドレス範囲ＡＡ１のアドレスにより機能再構成セル２０が指定されていることを判別したときは、当該機能再構成セルに割り当てられたＲＤＭＡＥ＿ｊをアクティブとし、対応する内部バスＩＢＵＳ＿ｉをバス選択回路４２に選択させてシステムバスＳＢＵＳに接続し、そのアクセス要求に伴うアドレス信号の下位側アドレス情報を用いて当該接続用記憶回路３７をランダムアクセス可能にする。これにより、ＣＰＵ２等は第１のアドレス範囲ＡＡ１のアドレスを指定するランダムアクセスによって記憶回路２３のＳＲＡＭ２５に書き込みを行って当該機能再構成セル２０の論理構成を任意に定義することができる。【０１０１】
アドレスデコーダ４１は、アドレスデコードにより、アドレス範囲ＡＡ２のアドレスにより機能再構成セル２０の前記等価的なメモリマップドＩＯレジスタが指定されていることを判別したときは、指定された等価的なメモリマップドＩＯレジスタに応じて、ＩＯＡＥ＿ｊ又はＬＯＧＥ＿ｊをアクティブとし、リード・ライト信号ＲＷ＿ｊを生成する。【０１０２】
即ち、そのとき、周辺バスＰＢＵＳから前記スタートアドレス設定用等価ＩＯレジスタを指定してライト信号ＷＴにより書き込み動作が指示されたとき、アドレスデコーダ４１はそのアクセス要求に伴うアドレス信号の下位側アドレス情報で指定される機能再構成セル２０に割り当てられたＩＯＡＥ＿ｊをアクティブとする。更に、リード・ライト信号ＲＷ＿ｊによってライト動作を指定する。これによって当該機能再構成セル２０のＡＤＲＳＥＬ３０を経由してＡＤＲＬＡＴ２６に書き込みデータがセットされる。【０１０３】
また、そのとき、周辺バスＰＢＵＳから前記ロジックイネーブル用等価ＩＯレジスタを指定してリード信号ＲＤにより読み出し動作が指示されたとき、アドレスデコーダ４１はそのアクセス要求に伴うアドレス信号の下位側アドレス情報で指定される機能再構成セル２０に割り当てられたＬＯＧＥ＿ｊをアクティブとする。更に、リード・ライト信号ＲＷ＿ｊによってリード動作を指定する。これによって当該機能再構成セル２０のアクセス制御デコーダ３２はそのときアドレスラッチ２６が保持しているアドレスをスタートアドレスとしてそのアクティブ期間にＳＲＡＭ２５のメモリリードサイクルを繰り返し起動し、サイクル毎にデータフィールド２７＿Ｄから読み出されるデータ情報ＤＡＴ＿Ｄをセレクタに帰還させ、サイクル毎に、制御フィールド２７＿Ｃから読み出される制御情報ＤＡＴ＿Ｃに従ってセレクタ３０の選択動作を制御して、論理動作を実現する。【０１０４】
また、そのとき、周辺バスＰＢＵＳから前記データリード用等価ＩＯレジスタを指定してリード信号ＲＤにより読み出し動作が指示されたとき、アドレスデコーダ４１はそのアクセス要求に伴うアドレス信号の下位側アドレス情報で指定される機能再構成セル２０に割り当てられたＩＯＡＥ＿ｊをアクティブとする。更に、バスインタフェース回路４０はリード・ライト信号ＲＷ＿ｊによってリード動作を指定する。これによって当該機能再構成セル２０のＡＤＲＬＡＴ２６が保持しているアドレス情報によって選択されるＳＲＡＭ２５の記憶領域からリードされる情報をバスインタフェース回路４０が受け取って周辺バスＰＢＵＳにリードデータとして出力する。これにより、ＣＰＵ２等は論理機能が設定された機能再構成セル２０による論理動作の結果を第２のアドレス範囲ＡＡ２のアドレスを指定するリードアクセスによって任意に取得することができる。バスインタフェース回路４０は論理動作の結果の一つとして論理動作完了のような要求を認識すると、割り込み信号を割り込みコントローラ１６に供給することができる。これによる割り込みが与えられたＣＰＵ２は例えば前記データリード用等価ＩＯレジスタに対するリード動作を指定することによって当該論理動作を終了した機能再構成セル２０から論理動作の結果を取得する動作ルーチンに移行したりすることが可能になる。【０１０５】
上述のように、前記記憶回路に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲)に対し、機能設定された機能再構成セルによる論理動作結果を取得するために機能再構成セルに割り当てたメモリマップドＩ／Ｏアドレスのようなアドレス（第２のアドレス範囲のアドレス）を個別化することにより、機能再構成セルに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することが容易になる。【０１０６】
図６には機能再構成セル２０における論理動作の基本概念が示される。制御回路２４は条件ＣＯＮＤ＝１で外部アドレスＡＤＲ＿ＥＸＴであるアドレスＹを記憶回路２３のアクセスアドレスとし、条件ＣＯＮＤ＝０の間は、制御情報ＤＡＴ＿Ｃで決まる内部シーケンスにしたがってデータ情報ＤＡＴ＿Ｄで指定されるアドレスによって記憶回路２３をアクセスする。図７に例示されるように、内部シーケンスにしたがって処理Ａを行っているとき、条件ＣＯＮＤ＝０の間は内部シーケンスで規定されるデータ情報ＤＡＴ＿Ｄにより指定されるアドレスに応じて処理Ｂに分岐することが可能であり、また、条件ＣＯＮＤ＝１の時に外部アドレスＡＤＲ＿ＥＸＴで指定される処理Ｃに分岐することも可能である。ここで、前記条件ＣＯＮＤは、前記ＣＰＵ２などによる機能再構成メモリ８に対するアクセス形態によって決まる条件、更には、前記制御情報ＤＡＴ＿Ｃで決まる条件として把握すればよい。【０１０７】
図８には機能再構成セル２０でリロード型ダウンカウンタを構成する場合の例が示される。ここではＴＹＰＥ、ＣＦＬＡＧは制御情報ＤＡＴ＿Ｃに含まれるものとする。図８の（Ｂ）には記憶回路２３の保持情報が例示される。ＤａｔａはデータフィールドＤＦＬＤの情報、ａｄｄｒｅｓｓはアドレスラッチ回路２６に供給されるアドレス情報を意味する。例えば、ＣＦＬＡＧ＝１（ＣＯＮＤ＝１）のとき外部アドレスＡＤＲ＿ＥＸＴとして“０１１０”が入力されると、これをアドレスとしてＣＦＬＡＧ＝０、Ｄａｔａ＝“０１０１”が読み出され、読み出されたデータが次の読み出しアドレスとされ、以下同様の動作がＣＦＬＡＧ＝１になるまで繰り返される。この間に出力されるデータ情報ＤＡＴ＿Ｄは“１０１０”から“００００”までのダウンカウント値とされる。ＣＯＮＤ＝１のとき再度、カウント初期値をリロードしてダウンカウントを繰り返すことができる。図８の（Ｃ）には前記ダウンカウント動作におけるフローチャートが例示される。【０１０８】
図９には２個の機能再構成セル２０でリロード型ダウンカウンタを構成する場合の例が示される。下位バイトの出力データＤＡＴ＿Ｄの全ビットがオール“０”になったとき、ＣＦＬＡＧを上位バイトの機能再構成セル２０の制御回路に与えて上位バイトの動作を開始させる。上位バイトの出力データＤＡＴ＿Ｄの全ビットがオール“０”になったときマルチバイトのダウンカウントが完了され、再度、下位バイトのカウント初期値をリロードすることによってマルチバイトのダウンカウントを再開することができる。【０１０９】
図１０には図８の（Ａ）の構成で３ビットカウンタを構成する場合の例を示す。図１０の（Ａ）にはＳＲＡＭの記憶データが例示される。同図に示されるＮｅｘｔ Ａｄｄｒｅｓｓ欄はアドレスラッチ回路２６の値を意味する。最後に示された[Reg]はＣＦＬＡＧ＝１によって外部から任意にアドレスが設定可能であることを意味する。図１１には図１０による３ビットカウンタ動作の動作シーケンスを例示する。ステップＳ１１−１においてＮにアドレスの初期値として“０００”を設定し、ステップＳ１１−２においてアドレス”０００“のＮｅｘｔ Ａｄｄｒｅｓｓフィールドに格納されている値”１１１“をＮの値として設定し、ステップＳ１１−３においてアドレス”１１１“のＣＦＬＡＧフィールドに格納されている値”０“を判定する。以降、ステップＳ１１−２とＳ１１−３とをＣＦＬＡＧフィールドの値が”１“になるまで繰り返す。この繰り返しの過程においてアドレスNのＤａｔａフィールドの値は値”１１１“から”０００“までの１ダウンカウンタとして出力される。【０１１０】
図１２には図６の論理動作基本概念図に対応する具体的な動作例が示される。外部トリガとして、例えば前記スタートアドレス設定用等価ＩＯレジスタの指定によって初期アドレス値として “１１１”がアドレスラッチ２６に入力される（Ｓ１）。次いで、ロジックイネーブル用等価ＩＯレジスタの指定によって、アドレスラッチ２６のアドレス情報がＳＲＡＭ２５に供給開始されることにより論理動作が起動される（Ｓ２）。これにより、そのアドレスで指定されたデータフィールドＤＦＬＤからデータ情報ＤＡＴ＿Ｄとして“１１０”がセレクタ３０に供給され（Ｓ３）、また、制御フィールドＣＦＬＤから制御情報ＤＡＴ＿Ｃとして情報“１０１”がアクセス制御デコーダ３２に供給される（Ｓ４）。アクセス制御デコーダ３２はその情報“１０１”をデコードし、Ｓ３により帰還された情報“１１０”を選択し（Ｓ５）、今度はこの情報“１１０”をアドレスとしてＳＲＡＭ２５のアクセスが行われる（Ｓ６）。以下同様に動作が繰り返されて所要の論理動作（３ビットダウンカウンタ動作）が行われる。ＣＬＫはＳＲＡＭ２５のメモリサイクル等を規定する、機能再構成セル２０の動作基準クロック信号である。【０１１１】
図１３には３ビットカウンタを夫々構成する機能再構成セル２０を接続選択回路３５で接続して６ビットカウンタを構成する例を示す。本構成では夫々の機能再構成セルは３ビットアップカウンタ動作を行う例を示しており、データフィールドＤＦＬＤの設定値と外部から供給される初期アドレス値が図１２の例と異なっている。機能再構成セル２０＿Ｌは下位３ビット、２０＿Ｕは上位３ビットを構成し、接続経路選択回路３５は、下位３ビットを構成する機能再構成セル２０＿Ｌの制御フィールドＣＦＬＤの最下位ビットの反転値を、上位３ビットを構成する機能再構成セル２０＿Ｕのロジックイネーブル信号ＬＯＧＥ＿ｊとして供給する。カウント動作を開始する前に機能再構成セル２０＿Ｌ、２０＿Ｕのアドレスラッチ回路２６に初期アドレス値として“０００”をセットし、その後、ＬＯＧＥ＿ｉをアクティブとして機能再構成セル２０＿Ｌに下位３ビットのカウント動作を開始させる。下位３ビットの機能再構成セル２０＿Ｌによるアップカウントが終了して制御情報ＤＡＴ＿Ｃが“１００”を出力する１サイクル期間だけＬＯＧＥ＿ｊをアクティブに変化させて、機能再構成セル２０＿Uに上位３ビットのカウント動作を行わせる。機能再構成セル２０＿Ｌの制御情報ＤＡＴ＿Ｃが“１００”を出力した場合、２０＿Ｌのアドレス制御デコーダ３２はセレクタ３０に対して外部からの入力を選択してアドレスラッチ回路２６にセットすることから、外部入力値としては“００１”をセットしておけばよい。【０１１２】
図１４にはＣＰＵによる機能再構成メモリ８のアクセス形態が例示される。ＣＰＵ２やＤＭＡＣ５による機能再構成メモリ８に対するランダムアクセスは経路ＰＡＳ＿Ｓを用いて行われる。このアクセス動作は機能再構成セル２０及び接続経路選択回路３５に対して機能を設定するためのコンフィギュレーション情報の設定に用いられる。また、論理機能の設定に用いられなかった機能再構成セル２０を内部ＲＡＭ（ＩＴＮＲ＿ＲＡＭ）としてリード・ライトアクセスする場合である。また、ＣＰＵ２やＤＭＡＣ５による機能再構成メモリ８に対するメモリマップドＩＯレジスタアクセスは経路ＰＡＳ＿Ｐを用いて行われる。このアクセス動作は、例えば前記スタートアドレス設定用等価ＩＯレジスタ、データリード用等かＩＯレジスタ、ロジックイネーブル用等価ＩＯレジスタに対するアクセスに用いられる。ランダムアクセス用のアドレスマッピングとメモリマップドＩＯレジスタアクセス用のアドレスマッピングは相互に分離されている。【０１１３】
図２の機能再構成メモリ８はＳＲＡＭで構成した例を説明したが、例えばＭＲＡＭで構成しても良い。ＭＲＡＭは高速の読出し／書込動作が可能とされる不揮発性メモリである。既知の他の不揮発性メモリであるＦｌａｓｈメモリや相変化メモリ等で構成することも可能である。ＭＲＡＭとＦｌａｓｈメモリとを比較すると読出し／書込動作ともにＭＲＡＭが高速であり、Ｆｌａｓｈメモリの持つ書換回数の制限がないという利点がある。相変化メモリと比較すると、読出し／書込動作速度はほぼ同等であるが、相変化メモリに比べて熱耐性が高いという利点がある。一方でＭＲＡＭは磁気記憶方式であることから、耐磁性が相変化メモリに比べて低い。使用環境に応じて機能再構成メモリ８を構成するメモリを選択すればよい。【０１１４】
機能再構成メモリ８を不揮発性メモリで構成することで、一旦構成した論理機能は電源が遮断されたとしても維持されるとの利点を得ることができ、またＲＯＭ３に格納しているプログラムを機能再構成メモリ８のランダムアクセス可能な内部メモリ（ＩＴＮＲ＿ＲＡＭ）の一部空間に格納することができる。ＭＲＡＭや相変化メモリで構成することで中央処理装置のワーク領域としてのＲＡＭ４に代えて、ランダムアクセス可能な内部メモリ（ＩＴＮＲ＿ＲＡＭ）の他の空間を用いることも可能となる。【０１１５】
以上説明したマイクロコンピュータ１によれば以下の作用効果がある。【０１１６】
（１）記憶回路２３の読み出しを機能再構成セル２０それ自体で自律的に制御することができる。したがって、可変論理機能を実現するための記憶回路２３を論理回路と等価な回路として扱うことができ、実現可能な論理構成に融通性があり、小さなチップ占有面積で大きな論理規模にも対応可能な可変論理機能を実現可能になる。【０１１７】
（２）ＣＰＵ２等は第３のアドレス範囲ＡＡ３に対するライトアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられた前記接続用記憶回路３５をランダムアクセスして、機能再構成セル２０の間の接続を定義するためのスイッチ制御情報を任意に書き込むことができる。【０１１８】
（３）ＣＰＵ２等は第１のアドレス範囲ＡＡ１に対してアクセス要求を行なうことにより、そのアクセス要求に係るアドレスが割り当てられている機能再構成セル２０のＳＲＡＭ２５をランダムアクセスして、前記機能再構成セル２０のＳＲＡＭ２５に所定の論理機能を実現するための情報を任意に定義することができる。【０１１９】
（４）ＣＰＵ２等は第２のアドレス範囲ＡＡ２に対してデータリード用等価ＩＯレジスタアクセスを要求することにより、制御回路２４がＳＲＡＭ２３から出力している情報を前記論理機能によって得られた結果としてリードすることができる。これにより、ＣＰＵ２等は論理機能が設定された機能再構成セル２０による論理動作の結果を第２のアドレス範囲ＡＡ２のアドレスを指定したリードアクセスによって任意に取得することができる。【０１２０】
（５）ランダムアクセス用のＡＡ１，ＡＡ３のアドレスマッピングに対し、機能設定された機能再構成セル２０による論理動作結果を取得したりするために機能再構成セル２０に割り当てたメモリマップドＩＯアドレスのようなＡＡ２のアドレスマッピングを個別化することにより、機能再構成セル２０及び接続選択回路３５に対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレス等に変更を生ぜず、機能再構成セル２０に対する論理機能をダイナミックに再構成することが容易になる。【０１２１】
（６）ＣＰＵ２からバスインタフェース回路４０に対する機能再構成セル２０への機能設定用アクセス経路にシステムバスＳＢＵＳを用い、機能設定された機能再構成セル２０への等価的メモリマップドレジスタアクセスのための経路に周辺バスを用い、双方の経路が分離されるから、機能再構成セル２０に周辺機能を設定して利用する場合には、ＣＰＵ２等によるメモリアクセス経路と、周辺回路に対するアクセス経路を分離しているアーキテクチャとの整合を容易に図ることができる。【０１２２】
３．第２の実施の形態の詳細
第２の実施の形態では、複数の機能再構成セルを非同期でロジック動作させるようにし構成した点で第１の実施の形態と相違する半導体装置について説明する。【０１２３】
図１５には第２の実施の形態に係る機能再構成セル２０Ａが例示される。機能再構成セル２０Ａはその動作クロック信号ＣＫを自らのクロック発生回路で生成する点が図１とは相違される。図１の場合にはＣＰＧ１４で生成されたクロック信号ＣＬＫが各機能差構成セル２に供給され、各機能差構成セル２はそれに同期して常時動作可能に構成された。図１５において夫々の機能再構成セル２０Ａは自らのクロック制御回路（ＣＫＧＥＮ）１００から出力されるクロック信号ＣＫに同期して動作する。クロック制御回路１００は、特に制限されないが、クロック信号ＩＴＣＫの生成及び停止が可能にされるクロック発生回路（ＣＰＧ）１０１と、クロック切換えスイッチ回路１０２とを有する。前記クロック切換えスイッチ回路１０２は、前記クロック発生回路１０１で発生したクロック信号ＩＮＣＬＫ又は外部から供給されるクロック信号ＥＸＣＬＫを選択する。前記クロック切換えスイッチ回路１０２のスイッチ制御情報ＳＷＣＮＴは接続用記憶回路（第４接続用記憶回路）１０３が保持する。クロック信号ＥＸＣＬＫは別の機能再構成セル２０Ａから供給されるクロック信号ＣＫを意味する。クロック切換えスイッチ回路１０２から出力されたクロック信号ＣＫは第３接続用記憶回路３７Ｂでスイッチ状態が決定された第３スイッチ回路３６Ｂを介して他の機能再構成セル２Ａにも供給可能になっている。クロック生成停止信号ＳＴＰは第２接続用記憶回路３７Ａでスイッチ状態が決定された第２スイッチ回路３６Ａを介して他の機能再構成セル２Ａにも供給可能になっている。【０１２４】
前記クロック発生回路１０１は、自らの機能再構成セル２０Ａの外部から入力される第１情報、例えば内部又は外部からのイベント信号ＥＸＥＶＴに基づいて形成されるクロック生成開始信号ＳＴＲＴにより自らの機能再構成セルのクロック信号の生成を開始し、自らの制御フィールド２７＿Ｃからアドレスデコーダ３２に読み出されるエンドオブシーケンス情報（第２情報）に基づいてアドレスデコーダ３２から出力されるクロック生成停止信号ＳＴＰによって前記クロック信号ＩＴＣＬＫの生成を停止する。イベント信号ＥＸＥＶＴのうちの所定の信号が論理輪ゲート（ＯＲ）１０６に供給され、その出力がクロック生成開始信号ＳＴＲＴとされる。【０１２５】
それぞれの機能再構成セル２０Ａは必要に応じてクロック信号ＣＫを発生して動作し、休止状態において自らクロック信号ＣＫを停止するから、半導体装置の低消費電力に寄与する。【０１２６】
個々の機能再構成セル２０Ａは記憶回路２３の読み出しを制御回路２４で自律的に制御することができる点については第1の実施の形態と同様であり、それぞれの機能再構成セル２０Ａを論理回路と等価な回路として扱うことにより、融通性のある可変論理機能を、比較的小さなチップ占有面積によって実現することができることは言うまでもない。【０１２７】
図１６には機能再構成セル２０Ａをダウンカウンタに用いた例が示される。図８のリロード型ダウンカウンタの例に対してＣＦＬＡＧをエンドオブシーケンス（ＥＳ）情報として利用するようにしたものである。要するに、ダウンカウント値が“００００”になってメモリ部２３の次の読み出しアドレスが“００００”とされるときにＥＳ＝１が制御部に読み出されることによって制御部２４がクロック生成停止信号ＳＴＰを活性化し前記クロック発生回路１０１によるクロック発生動作を停止させ、これによって当該機能再構成セル２０Ａの動作が停止され休止状態にされる。停止された機能再構成セルの動作を再開させるには所要の開始アドレスＡＤＲ＿ＥＸＴが供給され、且つ所定のイベント信号ＥＸＥＶＴが活性化されればよい。【０１２８】
図１７には複数の機能再構成セル２０Ａを直列的に動作させてカウンタを実現する構成が例示される。４ビットの初段カウンタを構成する機能再構成セル２０Ａは図１６の機能再構成セル２０Ａと同様に４ビットのカウント動作を一巡するごとにＥＳを“１”とするＣＦＬＡＧを有する。次段以降の各段の４ビットカウンタを構成する機能再構成セル２０Ａは１回のカウント動作毎にＥＳを“１”とするＣＦＬＡＧ（すなわち全てのエンドオブシーケンス（ＥＳ）情報は“１”）を有する。下位カウンタのクロック生成停止信号ＳＴＰは上位カウンタのクロック発生動作とメモリ部の読み出し動作との開始を指示するイベント信号ＥＸＥＶＴとして機能される。これにより、初段カウンタの４ビットカウント動作毎に第２段目カウンタは１回カウント動作を行ってクロックを停止し、第２段目カウンタの４ビットカウント動作毎に第３段目カウンタは１回カウント動作を行ってクロックを停止する。すなわち、初段に対して第２段目、第２段目に対して第３段目というように、前段と後段の間ではカウンタの活性化率（稼働率）が１／１６になり、低消費」電力化を図る事ができる。尚、初段の機能再構成セル２０Ａの制御フィールドには複数の機能再構成セル２０Ａによるカウント動作を終了するまで、４ビットカウント動作を自律的に繰り返すための内部起動イベント情報を有する。【０１２９】
図１８には前段と後段の機能再構成セルの動作タイミングが例示される。夫々の機能再構成セル２０Ａは自らクロック信号ＣＫを生成しているとき動作し、前段の機能再構成セル２０Ａと後段の機能再構成セル２０Ａは非同期で動作される。図１８では非同期動作する前段の機能再構成セル２０Ａから後段の機能再構成セル２０Ａへ必要な情報を受け渡すことを可能にする動作タイミングの例が示す。【０１３０】
図１８において、１）E-CLK遅延は、イベント信号ＥＸＥＶＴの入力信号の立上りからクロック生成回路１００がアクティブになりクロック信号ＣＫが立上るまでの遅延である。２）CLK-SQ遅延はクロック信号ＣＫの立上りから制御回路２４によるシーケンス起動までの遅延である。３）SQ-SE遅延は、制御回路２４がシーケンス終了情報（ＥＳ）を読込んでクロック生成停止信号ＳＴＰが活性化（立ち上がる）までの遅延である。４）SE-CLK遅延はクロック生成停止信号ＳＴＰの活性化からクロック信号ＣＫが停止されるまでの遅延である。機能再構成セル２０Ａが動作（アクティブになって）する期間は、Act（クロック生成時間）＝（CLK-SQ遅延）＋（シーケンス動作期間：SQ）+ （CLK-SQ遅延）+（SE-CLK遅延）の関係となる。したがって、高速に動作する場合には限界があるが、非同期動作で上記時間関係が維持される場合、論理演算動作が可能になる。特に、SE-CLK遅延は、前段の機能再構成セル２０Aが動作停止するとき、当該前段の機能再構成セル２０Aが出力する情報を後段の機能再構成セル２０Aが受け取るための余裕時間になる。【０１３１】
図１９には複数個の機能再構成セル２０Aの接続形態が例示される。第１の実施の形態の機能再構成セル２０と同様に機能再構成セル２０Aの前記制御回路２４は、次の読出しアドレスとして、前記インタフェース制御回路（４０，４１，４２）から供給されるアドレス情報、先に自らの記憶回路２３のデータフィールド２７＿Dから読み出された情報、アドレスラッチ回路２６にラッチされていて先に記憶回路２３に出力したアドレス情報、又は先に前記記憶回路に出力したアドレスラッチ回路２６のアドレス情報をインクリメンタ３１で演算することによって得られるアドレス情報を出力する。機能再構成セル２０Aのアレイ構成は図３及び図４で説明したのと同様である。複数個の機能再構成セル２０Aには第１のアドレス範囲のアドレス(図５のAA１)がマッピングされ、前記インタフェース制御回路（４０，４１，４２）は、第１のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セルにその記憶回路２３をランダムアクセスさせる。このランダムアクセスによって所要の論理機能の設定が容易になる。【０１３２】
機能再構成セルには第２のアドレス範囲のアドレス(図５のAA２)がマッピングされ、前記インタフェース制御回路（４０，４１，４２）は、第２のアドレス範囲に対する第１のアクセス要求（前記スタートアドレス設定用等価ＩＯレジスタアクセス）に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セル２０Aに、当該機能再構成セル２０Aのクロック発生回路１００でクロック信号CKを発生させて、記憶回路２３の読出し開始アドレスを設定する。機能再構成セル２０Aに設定した論理機能による動作イネーブルの設定をレジスタアクセスと同様な手順で行うことが可能になる。前記インタフェース制御回路（４０，４１，４２）は、第２のアドレス範囲に対する第２のアクセス要求（ロジックイネーブル用等価ＩＯレジスタアクセス）に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セル２０Aに、当該機能再構成セル２０Aのクロック発生回路１００でクロック信号CKを発生させて、前記読出し開始アドレスから記憶回路２３の記憶情報の読出しを開始させる。機能再構成セル２０Aに設定した論理機能の動作開始イベントの発生をレジスタアクセスと同様な手順で行うことができる。前記読出し開始アドレスから記憶回路２３の記憶情報の読出しを開始した機能再構成セル２０Aの制御回路２４は、その記憶回路２３から読み出された特定の情報であるエンドオブシーケンス情報（ES）に基づいて生成された特定の信号としてのクロック生成停止信号ＳＴＰを後段の他の機能再構成セル２０Aに出力し、当該他の機能再構成セル２０Aは、前記信号ＳＴＰに応答して、自らのクロック発生回路１００でクロック信号ＣＫを発生して、前記読出し開始アドレスから記憶回路２３の記憶情報の読出しを開始する。複数の機能再構成セルを直列的に動作させることができる。さらに、前記インタフェース制御回路（４０，４１，４２）は、第２のアドレス範囲（ＡＡ２）に対する第３のアクセス要求（データリード用等価ＩＯレジスタアクセス）に応答して、当該アクセス要求に係るアドレスに対応する機能再構成セル２０Ａに、当該機能再構成セル２０Ａのクロック発生回路１００でクロック信号ＣＫを発生させ、記憶回路２３のデータフィールド２７＿Ｄの記憶情報を前記論理動作の結果として出力させる。このように、前記記憶回路２３に対するランダムアクセス用のアドレスマッピング(第１のアドレス範囲)に対し、機能設定された機能再構成セル２０Ａによる論理動作結果を取得するために機能再構成セル２０Ａに割り当てたメモリマップドＩ／Ｏアドレスのようなリードアドレス（第２のアドレス範囲のアドレス）を個別化することにより、機能再構成セルに対する論理機能をダイナミックに再構成してもそれによる論理動作結果を取得するためのリードアドレスに変更を生ぜず、機能再構成セルに対する論理機能をダイナミックに再構成することができる。【０１３３】
前記複数の機能再構成セル２０Ａの間を可変可能に接続するために第１の実施の形態と同様に接続経路選択回路３５を有する。前記接続経路選択回路は、一の機能再構成セル２０Ａにおけるデータフィールド２７＿Ｄからの出力と制御フィールド２７＿Ｃからの出力とを他の機能再構成セル２０Ａの制御回路２４に選択的に接続する第１スイッチ回路３６と、前記第１スイッチ回路３６のスイッチ制御情報を保持するための第１接続用記憶回路３７とを有する。前記第１接続用記憶回路には第３のアドレス範囲のアドレス（ＡＡ３）がマッピングされる。前記インタフェース制御回路（４０，４１，４２）は、第３のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第１接続用記憶回路３６をランダムアクセスする。データ伝播に関し複数の機能再構成セル２０Ａの間の接続をプログラマブルに行うことが容易になり、可変論理機能に対して更に高い融通性を得ることができる。また、前記接続経路選択回路３５は、前記複数の機能再構成セル２０Ａの間において一の機能再構成セル２０Ａが出力するクロック生成停止信号ＳＴＰをクロック生成開始のためのイベント信号ＥＸＥＶＴとして他の機能再構成セル２０Ａに選択的に伝達する第２スイッチ回路３６Ａと、前記第２スイッチ回路３６Ａのスイッチ制御情報を保持するための第２接続用記憶回路３７Ａとを更に有する。前記第２接続用記憶回路３７Ａには第４のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路(４０，４１，４２)は、第４のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第２接続用記憶回路３７Ａをランダムアクセスする。複数の機能再構成セル２０Ａの直列的な動作順をプログラマブルに決定することが容易になり、この点においても可変論理機能に対して更に高い融通性を得ることができる。【０１３４】
図１９においてクロック発生開始のためのイベント信号ＥＸＥＶＴとクロック生成停止信号ＳＴＰとの直列的伝播は、Ｓ１〜Ｓ７の順に行われる。Ｓ１では外部/内部のイベント信号ＥＸＥＶＴによりクロック発生回路１００が起動して当該機能再構成セル２０Ａで論理演算動作が開始される。Ｓ２では論理演算が終了し、クロック生成停止信号ＳＴＰが次段に伝達される。Ｓ３では、前段からのクロック生成停止信号ＳＴＰをクロック生成イベントとして受け取ってクロック発生回路１００を起動し、次段の論理演算動作を開始する。この後、初段のクロック発生回路１００が停止する。Ｓ４ではＳ２と同様に論理演算を終了したときクロック生成停止信号ＳＴＰを次段に伝達する。Ｓ５はＳ３と同様とされ、Ｓ６はＳ２と同様とされ、Ｓ７はＳ３と同様にされ、これによって複数の機能再構成セル２０Ａが直列的に非同期で動作される。図２０にはこの非同期動作タイミングが例示される。図２０においてＡの部分では前段と後段の双方の機能再構成セル２０Ａのクロック発生回路１００がアクティブになっている。これによって前段から後段へのクロック更には情報の受け渡しが可能にされ、これによって、非同期回路間で順次クロック・リレーが行われる。【０１３５】
図２１には一の機能再構成セル２０Aで発生されたクロック信号ＣＫを後段の機能再構成セル２０Ａに供給する構成を採用した例が示される。前記接続経路選択回路３５は、前記複数の機能再構成セルの間において一の機能再構成セル２０Ａのクロック信号ＣＫを他の機能再構成セル２０Ａに選択的に伝達する第３スイッチ回路３６Ｂと、前記第３スイッチ回路３６Ｂのスイッチ制御情報を保持するための第３接続用記憶回路３７Ｂとを更に有する。前記第３接続用記憶回路３７Ｂには第５のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路は、第５のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第３接続用記憶回路３７Ｂをランダムアクセスする。一の機能再構成セル２０Ａで生成したクロック信号ＣＫを他の機能再構成セル２０Ａに供給して複数の機能再構成セル２０Ａを同期的に並列動作させることも容易に選択できるようになる。前述の通りそれぞれのクロック切換えスイッチ回路１０２のスイッチ制御情報を保持するための第４接続用記憶回路１０３が設けられ、この第４接続用記憶回路には第６のアドレス範囲のアドレスがマッピングされる。インタフェース制御回路（４０，４１，４２）は、第６のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記第４接続用記憶回路１０３をランダムアクセスする。機能再構成セルに、自ら発生したクロック信号又は外部から供給されたクロック信号の何れを利用させるかに関しプログラマブルな設定が可能になり、この点においても可変論理機能に対して更に高い融通性を得ることができる。【０１３６】
クロック信号ＣＫの供給に関し図２１に例示されるように機能設定されたとき、外部/内部のイベント信号ＥＸＥＶＴにより（Ｓ１０）、機能再構成セル２０Ａのクロック発生回路１００が起動されて論理演算動作を開始する。このとき、経路接続選択回路３５の第３スイッチ回路３６Ｂは前段の機能再構成セル２０Ａで生成されるクロック信号ＣＫを後段の機能再構成セル２０Ａに供給する（Ｓ１１）。当該後段の機能再構成セル２０Ａのクロック切換えスイッチ回路１０２は外部クロックの入力を選択するようにプログラムされ、これにより、後段の機能再構成セル２０Ａは前段の機能再構成セル２０Ａから出力されたクロック信号ＣＫを受けて論理動作を行う(Ｓ１２)。前段のクロック発生回路１００は後段の機能再構成セル２０Ａから出力されるクロック発生停止信号ＳＴＰをスイッチ回路３６Ａ経由で受けてのそのクロック発生動作が停止される。これにより、同一のクロック信号ＣＫを受ける機能再構成セル２０Ａは連動して並列的に同期動作可能にされる。【０１３７】
図２２には第２の実施の形態に係る別の機能再構成セル２０Ｂが例示される。図１６とはクロック発生回路の構成が相違される。即ち、クロック発生回路１００Ａはクロック信号ＩＴＣＬＫの生成及び停止が可能にされるクロック発生回路１０１と、クロック分周器１１０と、クロック切換えスイッチ回路１０２Ａと、前記クロック切換えスイッチ回路のスイッチ制御情報を保持するための接続用記憶回路１０３Ａとを有する。前記クロック分周器１１０は、外部から供給されるクロック信号ＥＸＣＬＫを分周する。特に制限されないが、クロック分周器１１０はクロック発生回路１０１と同様にＯＲゲート１０６の出力によって動作の開始が指示され、信号ＳＴＰによって動作の停止が指示される。前記クロック切換えスイッチ回路１０２Ａは、前記クロック発生回路１０１で発生したクロック信号ＩＴＣＬＫ、外部から供給されるクロック信号ＥＸＣＬＫ、又は前記クロック分周器１１０から出力されるクロック信号ＤＶＣＬＫを選択する。接続用記憶回路１０３Ａには第７のアドレス範囲のアドレスがマッピングされる。前記インタフェース制御回路（４０，４１，４２）は、第７のアドレス範囲に対するアクセス要求に応答して、当該アクセス要求に係るアドレスの前記接続用記憶回路１０３Ａをランダムアクセスする。機能再構成セル２０Ｂに自ら発生したクロック信号ＩＴＣＬＫ、外部から供給されたクロック信号ＥＸＣＬＫ、又は外部から供給されたクロック信号の分周クロック信号ＤＶＣＬＫの何れを利用させるかに関しプログラマブルな設定が可能になり、この点においても可変論理機能に対して更に高い融通性を得ることができる。【０１３８】
４．第３の実施の形態の詳細
第３の実施の形態では、複数の機能再構成セルに対する直列的なクロックイネーブル制御によって低消費電力を図るように構成した半導体装置について説明する。【０１３９】
図２３には第３の実施の形態に係る機能再構成セル２０Ｃが例示される。機能再構成セル２０Ｃは、個別にクロックイネーブル制御されるクロックゲート回路（ＣＬＫＤＲＶ）１２０を有する点が図１と相違する。機能再構成セル２０は自らのクロックゲート回路１２０から出力されるクロック信号に同期して動作する。それぞれのクロックゲート回路１２０にはクロックパルスジェネレータ１４から出力されるクロック信号ＣＬＫが共通に供給される。クロックゲート回路１２０は、自らの機能再構成セル２０Ｃの外部からクロックイネーブル端子に与えられる信号ＥＸＥＶＴ（ＣＫＥ）の活性化タイミングに同期してクロック信号ＣＫの出力を開始し、自らの前記記憶回路２３から読出されるエンドオブシーケンス情報(ＥＳ)のような特定の情報をアドレスデコーダ３２が受けて出力されるクロック停止信号ＳＴＰのクロックパルスに基づいてクロック信号の出力を停止する。接続経路選択回路３５は第２の実施の形態と同様に切換えスイッチ回路３６、３６Ａ及び記憶回路３７，３７Ａを有する。その他の構成は図１と同様である。以下においては図１の機能再構成セル２０との相違点を中心に説明する。【０１４０】
図２４にはクロックゲート回路（ＣＬＫＤＲＶ）１２０の具体例が示される。クロックゲート回路（ＣＬＫＤＲＶ）１２０は、Ｄ型ラッチ回路１２１、インバータ１２２、２入力ナンド（ＮＡＮＤ）ゲート回路１２３、Ｄ型ラッチ回路１２４、及び２入力アンド（ＡＮＤ）ゲート回路１２５を有する。信号ＥＸＥＶＴ（ＣＫＥ）はハイレベルのパルス変化によってクロックイネーブルを指示し、信号ＳＴＰはハイレベルのパルス変化によってクロック停止を指示する。クロック停止が指示されている状態ではＤ型ラッチ回路１２１はハイレベルをラッチする。この状態で信号ＥＸＥＶＴがハイレベルパルス変化されるとナンドゲート回路１２３からハイレベルパルスが出力され、これをＤ型ラッチ回路１２４がクロック信号ＣＬＫに同期してラッチすることにより、アンドゲート１２５はそれ以降、クロック信号ＣＬＫの変化に同期するクロック信号ＣＫを出力する。この後、Ｄ型ラッチ回路１２１は信号ＳＴＰのローレベルをラッチする。クロック停止信号ＳＴＰがハイレベルにパルス変化されるとラッチ回路１２１がクロック信号ＣＫに同期してハイレベルをラッチし、また、信号ＥＸＥＶＴ（ＣＫＥ）もすでにローレベルにされているので、ナンドゲート１２３はローレベルを出力し、これをラッチ回路１２４がラッチすることにより、クロック信号ＣＫの変化が停止され、ラッチ回路１２１及び１２４はラッチデータを維持して、次に信号ＥＸＥＶＴ（ＣＫＥ）がハイレベルパルス変化されるまで、クロックＣＫの出力停止状態が維持される。【０１４１】
特に図示はしないが、機能再構成セル２０Ｃの場合にも図１６及び図１７においてクロック発生回路１００をクロックゲート回路１２０に代えることによってそれと同様の機能を実現することができる。【０１４２】
この実施の形態３によれば、それぞれの機能再構成セル２０Ｃには必要に応じてクロックイネーブル制御によって各機能再構成セル２０Ｃに共通のクロック信号ＣＫが供給されて動作し、休止状態において自らクロックディスエーブルにするから、半導体装置の低消費電力に寄与する。クロックイネーブル状態で機能再構成セル２０Ｃに供給されるクロック信号はそれぞれの機能再構成セルで共通化されるから、機能再構成セル２０間でのデータの受け渡しには時間を要せず簡単に行うことができる。第２の実施の形態における機能再構成セル２０Ａ毎にクロック信号ＣＫを発生させる場合には機能再構成セル２０Ａ間は基本的に非同期となるので、機能再構成セル２０Ａ間でのデータの受け渡しには上記よりも時間を要する。機能再構成セル２０Ｂを用いる場合には図１８のＳＥ−ＣＬＫ遅延のような遅延時間を必要としない。【０１４３】
図２５には複数の機能再構成セル２０Ｃを直列的に動作させて８ビットＰＷＭ（パルス・ワイズ・モジュレータ）を実現する構成が例示される。Ａｄｄは論理動作のスタートアドレス情報、Ｃｏｎｄは制御部２４へ入力される制御情報、Ｆｌａｇは制御フィールド若しくは制御部２４から出力される制御情報、ＳＴＰはクロック停止信号、Ｄｏｕｔはデータフィールドからの出力、Ｄｉｎは外部からのデータ入力を意味する。機能再構成セル２０Ｃ＿１はクロック信号ＣＫを５分周する分周器、機能再構成セル２０Ｃ＿２は１０クロックの１カウント動作を行うカウンタ、能再構成セル２０Ｃ＿３はコンパレータとして機能設定される。機能再構成セル２０Ｃ＿１はクロック信号ＣＫを５分周する毎に信号ＳＴＰを出力し、帰還制御情報Ｆｌａｇによって次の５分周動作を開始するというシーケンスを繰り返す。機能再構成セル２０Ｃ＿２，２０Ｃ＿３は機能再構成セル２０Ｃ＿１からの帰還制御情報Ｆｌａｇをクロックイネーブルのためのイベント信号ＥＸＥＶＴ（ＣＫＥ）として受取ってクロックゲート回路１２０からクロック信号ＣＫを出力させ、機能再構成セル２０Ｃ＿２は１カウント動作を行ってストップ信号ＳＴＰを出力して自らのクロックゲート回路１２０によるクロック信号ＣＫの出力動作を停止し、機能再構成セル２０Ｃ＿３はそのときの入力データＤｉｎとＸ＝５との比較動作を１回行ってストップ信号ＳＴＰを出力して自らのクロックゲート回路１２０によるクロック信号ＣＫの出力動作を停止する。上記動作が繰り返されることによって、ＪＫフリップフロップから、周期がクロック信号ＣＬＫの５０サイクル分のデューティ５０％のパルスを生成することができる。Ｃ−Ｒｅｇ，Ｔ−Ｒｅｇ，Ｘ−Ｒeｇはそれぞれのメモリ部２３を意味し、機能設定によって５，１０，５が初期設定される。このＰＷＭ動作の動作タイミングは同図に示される通りである。【０１４４】
図２６には複数の機能再構成セル２０Ｃを直列的に動作させて２４ビットカウンタを実現する構成が例示される。Ａｄｄは論理動作のスタートアドレス情報、Ｃｏｎｄは制御部２４へ入力される制御情報、Ｆｌａｇは制御フィールド若しくは制御部２４から出力される制御情報、ＳＴＰはクロック停止信号、Ｄｏｕｔはデータフィールドからの出力を意味する。機能再構成セル２０Ｃ＿４は下位側、機能再構成セル２０Ｃ＿５は中位側、機能再構成セル２０Ｃ＿６は上位側のそれぞれ８ビットのカウンタとして機能設定される。機能再構成セル２０Ｃ＿４は８ビットのカウント値が全ビット１に達すると停止信号ＳＴＰを活性化して動作を休止すると共に、Ｆｌａｇから次段にイベント信号ＥＸＥＶＴ（ＣＫＥ）を発生して次段機能再構成セル２０Ｃ＿５を動作開始させ、機能再構成セル２０Ｃ＿５は８ビットのカウント値が全ビット１に達すると停止信号ＳＴＰを活性化して動作を休止すると共に、Ｆｌａｇからイベント信号ＥＸＥＶＴ（ＣＫＥ）を発生して次段機能再構成セル２０Ｃ＿６を動作開始させ、機能再構成セル２０Ｃ＿６は８ビットのカウント値が全ビット１に達すると停止信号ＳＴＰを活性化して動作を休止すると共に、Ｆｌａｇからイベント信号ＥＸＥＶＴ（ＣＫＥ）を初段に帰還させて初段の機能再構成セル２０Ｃ＿４を動作開始させ、これによって２４ビットのフリーランニングカウンタが実現される。ＣＯＵＮＴは２４ビットの計数値データである。【０１４５】
図２７には８ビットカウンタに機能が定義された４個の機能再構成セル２０Ｃを４個用いて３２ビットカウンタを実現した時の構成が例示される。この例では前段から出力されるクロック停止信号ＳＴＰは次段においてクロックイネーブルのためのイベント信号として用いられる。【０１４６】
５．第４の実施の形態
上記第２及び第３の実施に形態では前記のクロックゲート回路又はクロック制御回路を使ったクロックゲーティング手法によって低消費電力化性能を得ることができる。このクロックゲーティング手法（クロック供給制御またはクロック発生器のオン／オフ制御）をそのままパワーゲーティング手法（各機能再構成セル自体の電源のオン／オフ制御）に切り替えれば、更に高い低消費電力性能を得ることができる。例えば、特に図示はしないが、第３の実施の形態を説明する各図において、クロック信号ＣＬＫの供給経路を電源供給経路に置き換え、クロックゲート回路をパワースイッチ回路（電源ゲート回路）に置き換えて、自らの機能再構成セルの外部から与えられる信号の活性化に同期して自らの機能再構成セルの後段へ電源供給を開始し、自らの前記記憶回路から読出される情報(ＥＳ)に基づいて前記電源供給を停止すればよい。パワーゲーティングを採用する場合、クロック信号ＣＬＫはクロックゲート無しでそれぞれの機能再構成セルに直接供給されればよい。更にまた、機能再構成セルには上述のクロックゲーティングとパワーゲーティングの双方を採用することも可能である。【０１４７】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。【０１４８】
例えば、等価的メモリマップドＩＯレジスタアクセスは一例であり、そのためのＬＯＧＥ＿ｊ等のイネーブル信号や、等価的メモリマップドＩＯレジスタの種類は適宜変更可能である。また、システムバスと周辺バスを分けるアーキテクチャを採用しない場合には機能再構成セルに対するランダムアクセス経路と等価的メモリマップドＩＯレジスタアクセスの経路を分離しなくてもよい。マトリクス配置された機能再構成セルとバスの接続形態として、Ｘ，Ｙ方向にバスを配置し、Ｘ，Ｙのそれぞれの方向からアドレシングしてバスに接続する接続形態を採用してもよい。機能再構成セルによって実現される周辺機能は上記に限定されず適宜変更可能である。また、ＣＰＵに対する所謂周辺機能に限定されない。アクセラレータのようにＣＰＵの負担を軽減する演算機能等を割り当てることも可能である。機能再構成メモリと一緒に半導体装置に搭載される回路は図２に限定されず、半導体集積回路の機能や用途に応じて適宜変更可能である。半導体装置はシングルチップに限定されず、マルチチップをモジュール基板に搭載して封止したシステム・イン・パッケージのような半導体装置にも適用することができる。クロック発生制御、クロックイネーブル制御が付加された機能再構成セルはＰＷＭやカウンタ以外の種々の回路機能の実現に広く適用することができる。
【産業上の利用可能性】
【０１４９】
本発明は可変論理モジュールを備えた半導体データ処理装置等の半導体装置に広く適用することができる。
【図１】
2008143285.tif 000003
【図２】
2008143285.tif 000004
【図３】
2008143285.tif 000005
【図４】
2008143285.tif 000006
【図５】
2008143285.tif 000007
【図６】
2008143285.tif 000008
【図７】
2008143285.tif 000009
【図８】
2008143285.tif 000010
【図９】
2008143285.tif 000011
【図１０】
2008143285.tif 000012
【図１１】
2008143285.tif 000013
【図１２】
2008143285.tif 000014
【図１３】
2008143285.tif 000015
【図１４】
2008143285.tif 000016
【図１５】
2008143285.tif 000017
【図１６】
2008143285.tif 000018
【図１７】
2008143285.tif 000019
【図１８】
2008143285.tif 000020
【図１９】
2008143285.tif 000021
【図２０】
2008143285.tif 000022
【図２１】
2008143285.tif 000023
【図２２】
2008143285.tif 000024
【図２３】
2008143285.tif 000025
【図２４】
2008143285.tif 000026
【図２５】
2008143285.tif 000027
【図２６】
2008143285.tif 000028
【図２７】
2008143285.tif 000029
【国際調査報告】
2008143285.tif 000030
2008143285.tif 000031