(57)【要約】【課題】クロック信号の供給を停止することによりスタンバイ機能を実現する半導体装置において、通常動作状態からスタンバイ状態への移行を安定的に行い、スタンバイ状態から通常動作状態へと復帰した際に、スタンバイ状態移行時に実行していた処理を速やかに再開することができる半導体装置を提供することを目的とする。【解決手段】クロック供給制御回路３が、クロック生成回路２からプロセッサコア５へのクロック信号の供給の停止および再開を、クロック信号のエッジに同期して行う。これにより、クロック信号がエッジに非同期に停止され、クロックの信号幅が規定の幅を満たさなくなることで生じる処理の破綻を未然に防ぐことができる。【選択図】  図１
2004258949.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号が入力され、このクロック信号に同期して動作する内部回路と、
スタンバイ制御信号の切り替えに応答し、前記クロック信号に同期して、前記内部回路への前記クロック信号の供給の停止または再開を行うクロック供給制御回路とを具備することを特徴とする半導体装置。
【請求項２】
クロック信号が入力され、このクロック信号に同期して動作する内部回路と、
前記内部回路と前記内部回路に接続された周辺回路または外部装置とのアクセス状態を検出するアクセス検出回路と、
スタンバイ制御信号の切り替えに応答して、前記内部回路への前記クロック信号の供給の停止または再開を行い、かつ、前記クロック信号の供給の停止において、前記アクセス検出回路が前記アクセス状態を検出した場合、このアクセス状態が解除された後に前記クロック信号の供給を停止するクロック供給制御回路とを具備することを特徴とする半導体装置。
【請求項３】
前記クロック供給制御回路が、前記クロック信号に同期して、前記クロック信号の供給の停止または再開を行うことを特徴とする請求項２記載の半導体装置。
【請求項４】
前記クロック供給制御回路と前記内部回路との間に介在し、前記クロック供給制御回路が前記クロック信号の供給を再開する場合、前記クロック信号の発振が安定した後に、前記内部回路への前記クロック信号の供給を再開するクロック起動時間確保回路を具備することを特徴とする請求項１乃至３のいずれか１項記載の半導体装置。
【請求項５】
前記クロック供給制御回路が、前記スタンバイ制御信号が入力され、前記クロック信号に同期して動作するフリップフロップを有する回路であることを特徴とする請求項１、３または４のいずれか１項記載の半導体装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体装置に関し、特に、スタンバイ機能を有する半導体装置に関するものである。
【０００２】
【従来の技術】
携帯電話、携帯型オーディオプレーヤ、携帯型情報端末などの携帯用情報機器は、電池や充電パックなどで動作される機会が多く、できるだけ長時間使用できるように、未使用時（電源ＯＦＦ時）のスタンバイ電流の低減化が強く求められている。
【０００３】
このような背景から、これら携帯用情報機器に搭載されるプロセッサＬＳＩ（ＤＳＰ／ＣＩＳＣ／ＲＩＳＣ）などの半導体装置にも、スタンバイ電流を低減させるためのスタンバイ機能を備えることが求められる。
【０００４】
このスタンバイ機能実現によく採用される手法に、半導体装置へのクロック信号の供給を停止させるものがある（例えば、特許文献１参照）。従来のスタンバイ機能を有する半導体装置のスタンバイ機能に関する部分の構成を、図７を用いて説明する。
【０００５】
クロック生成回路１０１は、クロック信号を生成し、後段のカウンタ１０２およびＡＮＤゲート１０３にクロック信号ｃｌｏｃｋを供給する。
【０００６】
カウンタ１０２は、入力されたクロック信号ｃｌｏｃｋをカウントアップし、オーバーフローが生じた際に、オーバーフロー信号ＯＶＦを後段のフリップフロップ１０４に出力する。
【０００７】
フリップフロップ１０４は、カウンタ１０２からオーバーフロー信号ＯＶＦがセット信号として入力され、出力信号ｓｔａｎｄｂｙＡをＡＮＤゲート１０３へと出力する。
【０００８】
また、これらのカウンタ１０２およびフリップフロップ１０４には、スタンバイ制御端子１０５から、スタンバイ制御信号ｓｔａｎｄｂｙがリセット信号として各々に入力されるようになっている。
【０００９】
ＡＮＤゲート１０３は、クロック信号ｃｌｏｃｋおよび信号ｓｔａｎｄｂｙＡとのＡＮＤ演算を行い、その演算結果をプロセッサコア１０６へと出力する。
【００１０】
プロセッサコア１０６は、入力されたクロック信号ｃｌｏｃｋに同期して動作する。また、ＲＡＭ１０７がプロセッサコア１０６に接続されている。更に、第１および第２の外部装置１０８、１０９が外部端子１１０、１１１を介してプロセッサコア１０６に接続されている。
【００１１】
この従来の半導体装置の通常動作状態からスタンバイ状態への移行は、スタンバイ制御信号ｓｔａｎｄｂｙの論理値を０の状態から１の状態へと切り替えることにより行う。なお、以下では、説明の便宜上、論理値が０の状態を‘Ｌ’と、１の状態を‘Ｈ’と表現する。
【００１２】
スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’となると、フリップフロップ１０４はリセットされるため、出力信号ｓｔａｎｄｂｙＡが‘Ｌ’となり、ＡＮＤゲート１０３の出力信号が‘Ｌ’に固定される。すなわち、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’となることにより、プロセッサコア１０６へのクロック信号ｃｌｏｃｋの供給が停止される。なお、このとき、カウンタ１０２は、スタンバイ制御信号ｓｔａｎｄｂｙによりリセットされ続ける。
【００１３】
逆に、スタンバイ状態から通常動作状態への復帰には、スタンバイ制御信号ｓｔａｎｄｂｙを‘Ｈ’から‘Ｌ’へと切り替える。すると、カウンタ１０２のリセットが解除され、カウンタ１０２がクロック信号ｃｌｏｃｋのカウントアップを開始する。カウント動作によりオーバーフローが生じると、オーバーフロー信号ＯＶＦがフリップフロップ１０４へと出力され、フリップフロップ１０４がセットされる。これにより、出力信号ｓｔａｎｄｂｙＡが‘Ｈ’となり、ＡＮＤゲート１０３を介してクロック信号ｃｌｏｃｋがプロセッサコア１０６へと供給される。
【特許文献１】
特許第２７３０５３０号公報（第４頁、図４）
【００１４】
【発明が解決しようとする課題】
しかしながら、上記従来の半導体装置では、スタンバイ状態に移行する際、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｌ’から‘Ｈ’へと切り替わると、即座に、プロセッサコア１０６へのクロック信号ｃｌｏｃｋの供給が停止される。このとき、クロック信号ｃｌｏｃｋの停止されるタイミングによっては、当該半導体装置の実行中の処理が破綻してしまうことがある。
【００１５】
例えば、スタンバイ制御信号ｓｔａｎｄｂｙがクロック信号ｃｌｏｃｋのエッジに非同期に入力されると、クロック信号の幅が実行中の処理における規定の幅を満たさなくなり、その処理が破綻してしまう可能性がある。
【００１６】
プロセッサコア１０６がＲＡＭ１０７へのデータのリード／ライト処理を行っている最中にスタンバイ制御信号ｓｔａｎｄｂｙが入力された場合を考える。図８は、その際の従来の半導体装置における各信号のタイムチャートである。
【００１７】
スタンバイ制御信号ｓｔａｎｄｂｙが時刻ｔ１０１にクロック信号ｃｌｏｃｋのエッジに非同期に‘Ｌ’から‘Ｈ’へと切り替わると、クロック信号ｃｌｏｃｋの供給も時刻ｔ１０１にエッジに非同期に停止する。このクロック信号ｃｌｏｃｋの供給が停止されるタイミングによっては、図中にＮＧと示すように、クロック信号が実行中の処理における規定のクロック幅を満たさなくなる。この場合、ＲＡＭアクセス信号も、規定の幅を満たさなくなるため、ＲＡＭ１０７へのデータのリード／ライトが正常に行われなかったり、メモリアドレスの指定が正常に行われないことで他のアドレスのデータを誤って書き換えてしまったりする可能性がある。
【００１８】
また、プロセッサコア１０６が周辺回路（ＲＡＭ１０７）または外部装置（第１および第２の外部装置１０８、１０９）とデータの送受信（アクセス）を行っている最中に、スタンバイ制御信号ｓｔａｎｄｂｙが入力されると、その周辺回路または外部装置が誤動作を起こす可能性がある。
【００１９】
ここで、プロセッサコア１０６が、ＲＡＭ１０７、第１の外部装置１０８、および、第２の外部装置１０９とアクセス状態にあるときに、スタンバイ制御信号ｓｔａｎｄｂｙが入力された場合を考える。なお、ここで、第１の外部装置１０８とプロセッサコア１０６とのアクセス信号をアクセス信号Ａとして示し、第２の外部装置１０９とプロセッサコア１０６とのアクセス信号をアクセス信号Ｂとして示す。図９は、その際の従来の半導体装置における各信号のタイムチャートである。
【００２０】
ＲＡＭ１０７が時刻ｔ１０４にプロセッサコア１０６とのアクセス処理を開始する。このアクセス処理は完全に終了するまでに時刻ｔ１０７までの時間を必要としている。同様に、第１の外部装置１０８は時刻ｔ１０３にアクセス処理を開始し、終了するまでに時刻ｔ１０６までの時間を必要としている。また、第２の外部装置１０９は時刻ｔ１０２にアクセス処理を開始し、終了するまでに時刻ｔ１０８までの時間を必要としている。
【００２１】
これらのアクセスの実行途中である時刻ｔ１０５に、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｌ’から‘Ｈ’へと切り替わると、その切り替わりとともに、プロセッサコア１０６へのクロック信号ｃｌｏｃｋの供給が停止される。これにより、時刻ｔ１０５以降のアクセス処理（斜線で示した部分）が行われず、処理が不完全な状態で強制的にアクセスが中断される。
【００２２】
ここで、この中断されたアクセス処理が、例えば、プロセッサコア１０６からアクセス先のデバイスへの制御レジスタの設定である場合、急にプロセッサコア１０６がスタンバイ状態へと移行すると、設定が不完全な状態のデバイスが誤動作を起こす可能性がある。また、第１または第２の外部装置１０８、１０９が外部ＭＣＵであり、中断されたアクセス処理が、この外部ＭＣＵからプロセッサコア１０６へのアクセス処理である場合には、プロセッサコア１０６がスタンバイ状態に移行すると、プロセッサコア１０６からの応答が停止するため、外部ＭＣＵはエラー処理を行わざるを得なくなる。
【００２３】
以上に説明したように、従来のスタンバイ機能を有する半導体装置では、スタンバイ制御信号ｓｔａｎｄｂｙが入力されるタイミングによって、実行中の処理が破綻する可能性があった。このため、従来の半導体装置は、スタンバイ状態から通常動作状態への復帰の際に、スタンバイ状態移行時に実行していた処理を途中から再開することはせず、その都度、システムの再初期化処理を行っていた。
しかし、この再初期化処理は、復帰の際に余分な時間を必要とするため、その半導体装置を使い勝手の悪いものとし、システムの仕様上、問題となることがあった。
【００２４】
本発明は、以上の背景からなされたものであり、通常動作状態からスタンバイ状態への移行を安定的に行い、スタンバイ状態から通常動作状態へと復帰した際に、スタンバイ状態移行時に実行していた処理を速やかに再開することができる半導体装置を提供することを目的とする。
【００２５】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る半導体装置は、クロック信号が入力され、このクロック信号に同期して動作する内部回路と、スタンバイ制御信号の切り替えに応答し、前記クロック信号に同期して、前記内部回路への前記クロック信号の供給の停止または再開を行うクロック供給制御回路とを具備することを特徴としている。
【００２６】
また、本発明に係る半導体装置は、クロック信号が入力され、このクロック信号に同期して動作する内部回路と、前記内部回路と前記内部回路に接続された周辺回路または外部装置とのアクセス状態を検出するアクセス検出回路と、スタンバイ制御信号の切り替えに応答して、前記内部回路への前記クロック信号の供給の停止または再開を行い、かつ、前記クロック信号の供給の停止において、前記アクセス検出回路が前記アクセス状態を検出した場合、このアクセス状態が解除された後に前記クロック信号の供給を停止するクロック供給制御回路とを具備することを特徴としている。
【００２７】
【発明の実施の形態】
（第１の実施の形態）
以下に、本発明に係る半導体装置についての第１の実施の形態を図１および図２を参照して説明する。本実施の形態に係る半導体装置の構成を図１に示す。なお、図１では、スタンバイ機能によりクロック信号の供給が停止される内部回路の例として、プロセッサコア５を挙げている。また、以下では、説明の便宜上、論理値が０の状態を‘Ｌ’と、１の状態を‘Ｈ’と表現する。
【００２８】
図１に示すように、この半導体装置１は、クロック生成回路２、クロック供給制御回路３、クロック起動時間確保回路４、プロセッサコア５、および、ＲＡＭ６から構成される。
【００２９】
クロック生成回路２は、クロック信号を生成し、後段のクロック供給制御回路３へと出力する回路である。このクロック生成回路２の例としては、水晶発振回路やＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）などが挙げられる。
【００３０】
クロック供給制御回路３は、スタンバイ制御端子７から入力されるスタンバイ制御信号ｓｔａｎｄｂｙが‘Ｌ’から‘Ｈ’になったとき、クロック生成回路２から供給されるクロック信号をエッジに同期して遮断して、後段のクロック起動時間確保回路４へのクロック信号ｃｌｏｃｋＡの供給を停止し、逆に、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’から‘Ｌ’になったとき、クロック信号ｃｌｏｃｋＡの供給を再開する回路である。
【００３１】
クロック起動時間確保回路４は、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’から‘Ｌ’となり、クロック供給制御回路３がクロック信号の供給を再開した際、その再開から所定の時間経過した後に、クロック供給制御回路３から入力されたクロック信号を後段のプロセッサコア５へ供給する回路である。
【００３２】
プロセッサコア５は、入力されたクロック信号に同期して動作する。ＲＡＭ６は、プロセッサコア５と接続されており、プロセッサコア５がリード／ライト処理を行えるようになっている。
【００３３】
次に、クロック供給制御回路３およびクロック起動時間確保回路４の具体的な構成について説明する。
【００３４】
クロック供給制御回路３は、ＡＮＤゲート８、ディレイ回路９およびＮＯＲゲート１０により構成されている。
【００３５】
ＡＮＤゲート８は、スタンバイ制御端子７から入力されたスタンバイ制御信号ｓｔａｎｄｂｙとディレイ回路９からの出力信号ｇａｔｅとのＡＮＤ演算を行い、その演算結果を信号ｓｔａｎｄｂｙＡとしてＮＯＲゲート１０へ出力する。ＮＯＲゲート１０は、ＡＮＤゲート８からの出力信号ｓｔａｎｄｂｙＡとクロック生成回路２から発生されたクロック信号とのＮＯＲ演算を行い、クロック信号ｃｌｏｃｋＡを出力する。
【００３６】
ディレイ回路９は、クロック信号ｃｌｏｃｋＡに同期して動作し、入力されたスタンバイ制御信号ｓｔａｎｄｂｙを遅延させて信号ｇａｔｅとして出力する回路である。このディレイ回路９の構成としては、フリップフロップを、複数段、組み合わせたものなどが考えられる。以下の説明においては、例として、入力されたクロック信号の立ち下がりエッジに同期して動作するネガティブエッジ型のフリップフロップを３段組み合わせたものを挙げて説明する。
【００３７】
クロック起動時間確保回路４は、アップカウンタ１１、デコーダ１２、インバータ１３およびＮＯＲゲート１４により構成されている。
【００３８】
アップカウンタ１１は、クロック信号ｃｌｏｃｋＡの立ち下がりエッジに同期してカウントアップするリセット／イネーブル付のカウンタであり、カウント値がｎ（任意の値）となると、後段のデコーダ１２の出力信号ｓｔａｎｄｂｙＢを‘Ｌ’とする。また、カウント値がｎとなると、‘Ｌ’となった信号ｓｔａｎｄｂｙＢがアップカウンタ１１にフィードバックされるため、アップカウンタ１１はカウントアップを停止しカウント値ｎを維持する。更に、アップカウンタ１１にはリセット信号ｒｅｓｅｔとして信号ｓｔａｎｄｂｙＡが入力され、信号ｓｔａｎｄｂｙＡが‘Ｈ’になったときにカウント値がリセットされる。
【００３９】
デコーダ１２は、上述したように、アップカウンタ１１のカウント値がｎのときに信号ｓｔａｎｄｂｙＢを‘Ｌ’とし、カウント値がｎに満たないときに信号ｓｔａｎｄｂｙＢを‘Ｈ’とする回路である。
【００４０】
インバータ１３は、クロック信号ｃｌｏｃｋＡのＮＯＴ演算を行い、後段のＮＯＲゲート１４に出力する。ＮＯＲゲート１４は、クロック信号ｃｌｏｃｋＡの反転と信号ｓｔａｎｄｂｙＢとのＮＯＲ演算を行い、その演算結果をクロック信号ｃｌｏｃｋＢとしてプロセッサコア５へ出力する。
【００４１】
次に、本実施の形態に係る半導体装置の通常動作状態とスタンバイ状態との移行における動作について、図１および２を参照しながら説明する。なお、ここでは、プロセッサコア５がＲＡＭ６とアクセスしている際にスタンバイ状態に移行する場合を例に挙げて説明する。図２は、本実施の形態に係る半導体装置の通常動作状態とスタンバイ状態との移行における各信号のタイムチャートである。
【００４２】
まず、本実施の形態に係る半導体装置のスタンバイ状態移行時（クロック供給停止時）における動作について説明する。
【００４３】
スタンバイ状態への移行は、スタインバイ制御端子７から入力されるスタンバイ制御信号ｓｔａｎｄｂｙを‘Ｌ’から‘Ｈ’に切り替えることにより行う。スタンバイ制御信号ｓｔａｎｄｂｙを時刻ｔ１１に‘Ｈ’とすると、ディレイ回路９へと入力される信号が‘Ｈ’となる。ディレイ回路９は３段のフリップフロップで構成されていることから、ディレイ回路９の出力信号ｇａｔｅは、クロック信号ｃｌｏｃｋＡの３回目の立ち下がりエッジに同期して、時刻ｔ１２に‘Ｌ’から‘Ｈ’へと切り替わる。
【００４４】
信号ｇａｔｅが‘Ｈ’となると、その信号ｇａｔｅとスタンバイ制御信号ｓｔａｎｄｂｙとのＡＮＤゲート８での演算結果（信号ｓｔａｎｄｂｙＡ）も時刻ｔ１２に‘Ｈ’となり、‘Ｈ’となった信号ｓｔａｎｄｂｙＡがＮＯＲゲート１０に入力されることにより、クロック生成回路２からのクロック信号ｃｌｏｃｋＡの供給が停止される。
【００４５】
また、信号ｓｔａｎｄｂｙＡはアップカウンタ１１のリセット信号ｒｅｓｅｔでもあるから、信号ｓｔａｎｄｂｙＡが時刻ｔ１２に‘Ｈ’となることで、アップカウンタ１１のカウンタが時刻ｔ１２にリセットされる。そして、このカウンタのリセットに伴い、後段のデコーダ１２の出力信号ｓｔａｎｄｂｙＢが‘Ｈ’となってＮＯＲゲート１４へと出力される。これにより、プロセッサコア５に入力されるクロック信号ｃｌｏｃｋＢの供給が、クロック信号ｃｌｏｃｋＡの立ち下がりに同期して、時刻ｔ１２に停止される。
【００４６】
このように、クロック信号ｃｌｏｃｋＡのエッジに非同期なタイミングでスタンバイ制御信号ｓｔａｎｄｂｙが入力された場合も、クロック信号ｃｌｏｃｋＡの立ち下がりに同期してクロック信号の供給が停止される。このため、スタンバイ状態移行時のクロック幅が規定の幅を満たし、必然的に、ＲＡＭアクセス信号が規定の幅を満たした状態でプロセッサコア５とＲＡＭ６とのアクセスが中断される。
【００４７】
次に、本実施の形態に係る半導体装置のスタンバイ状態解除時（クロック供給再開時）における動作について説明する。
【００４８】
スタンバイ状態の解除は、スタンバイ制御信号ｓｔａｎｄｂｙを‘Ｈ’から‘Ｌ’に切り替えることにより行う。スタンバイ制御信号ｓｔａｎｄｂｙを時刻ｔ１３に‘Ｌ’とすると、ＡＮＤゲート８の出力信号ｓｔａｎｄｂｙＡが直ちに‘Ｌ’となり、まず、クロック信号ｃｌｏｃｋＡが時刻ｔ１４に発振を開始する。
【００４９】
信号ｓｔａｎｄｂｙＡが‘Ｌ’となると、アップカウンタ１１のリセットが解除されることから、クロック信号ｃｌｏｃｋＡがカウントアップできる程度に達した時刻ｔ１５に、アップカウンタ１１がクロック信号ｃｌｏｃｋＡのカウントアップを開始する。
【００５０】
このアップカウンタ１１のカウント値がｎとなると、後段のデコーダ１２の出力信号ｓｔａｎｄｂｙＢが‘Ｌ’となり、プロセッサコア５へのクロック信号ｃｌｏｃｋＢの供給が、クロック信号ｃｌｏｃｋＡの立ち下がりに同期して、時刻ｔ１６に再開される。そして、この時刻ｔ１６以降、プロセッサコア５とＲＡＭ６とのアクセスが、クロック信号が安定した状態で再開される。なお、ｓｔａｎｄｂｙＢが‘Ｌ’となったとき、アップカウンタ１１のｅｎａｂｌｅ信号も‘Ｌ’となるため、アップカウンタ１１のカウント値は、ｎとなった時点で保持される。
【００５１】
本実施の形態に係る半導体装置は、クロック信号ｃｌｏｃｋＡのエッジに非同期なタイミングでスタンバイ制御信号ｓｔａｎｄｂｙが入力された場合も、クロック信号ｃｌｏｃｋＡの立ち下がりに同期してクロック信号の供給が停止され、スタンバイ状態へと移行する。このため、スタンバイ状態へと移行することにより、クロック幅が規定の幅を満たさなくなり、プロセッサコア５の処理が破綻するということがない。
【００５２】
また、本実施の形態に係る半導体装置は、スタンバイ状態の解除時に、クロック信号ｃｌｏｃｋＡの立ち下がりエッジに同期してクロック信号の供給が再開される。また、クロック信号ｃｌｏｃｋＡが発振を開始し、アップカウンタ１１のカウント値がｎとなった以降に、クロック信号をプロセッサコア５に供給している。このため、アップカウンタ１１のｎの値を、クロック信号の立ち上がり時間（発振開始から振幅や周波数が規定のレベルに達するまでの時間（時刻ｔ１４から時刻ｔ１６までの時間））に合わせて設定しておけば、スタンバイ状態解除時に、充分に安定したクロック信号をプロセッサコア５に供給することができる。
【００５３】
以上のように、本実施の形態に係る半導体装置は、スタンバイ状態と通常動作状態との移行を安定的に行えることから、スタンバイ状態から通常動作モードに復帰した際に、システムの再初期化処理を行う必要がない。このため、通常動作モードへの復帰後、スタンバイ状態移行前に行った処理を再度行うことなく、速やかに、スタンバイ状態移行時の処理を再開することができる。
【００５４】
例えば、プロセッサコア５がＲＡＭ６へのリード／ライト処理の最中にスタンバイ状態に移行した場合、スタンバイ状態への移行によりリード／ライト処理が破綻することがないため、スタンバイ中も保持しておきたいデータが破壊されることがなく、スタンバイ状態から通常動作状態への復帰後、中断されたリード／ライト処理を速やかに再開することができる。
【００５５】
なお、本実施の形態においては、クロック信号が供給される内部回路にプロセッサコア５を示したが、これに限られず、クロック信号に同期して動作する回路であれば、この回路はプロセッサコア以外でも構わない。
【００５６】
また、本実施の形態においては、プロセッサコア５に接続された周辺回路としてＲＡＭ６を例示したが、これに限られず、ＲＡＭ以外の回路であっても構わない。例えば、ＲＡＭ６をＲＯＭに置き換えることにより、プロセッサコア５のＲＯＭからのリード処理がスタンバイ状態への移行により破綻することを防止することができる。
【００５７】
更に、本実施の形態においては、クロック供給制御回路３およびクロック起動時間確保回路４の構成を図１に例示したが、これは、あくまでも例であり、これらの回路の構成は図１に示したものに限られない。
【００５８】
更にまた、本実施の形態においては、立ち下がりエッジに同期してクロック信号の供給を停止する場合を示したが、ディレイ回路９を、例えば、クロック信号の立ち上がりに同期して動作するポジティブエッジ型のフリップフロップで構成することにより、立ち上がりエッジに同期してクロック信号の供給を停止させることができる。同様に、本実施の形態においては、立ち下がりエッジに同期してクロック信号の供給を再開する場合を示したが、アップカウンタ１１をクロック信号の立ち上がりに同期してカウントアップするカウンタとすることで、立ち上がりエッジに同期して、クロック信号の供給を再開することができる。
【００５９】
更に、本実施の形態においては、クロック生成回路２が半導体装置１内に設けられている場合を示したが、これに限られず、このクロック生成回路２が半導体装置１の外部に設けられ、半導体装置１の外部からクロック信号が供給される場合であっても構わない。
（第２の実施の形態）
以下に、本発明に係る半導体装置についての第２の実施の形態を図３および図４を参照して説明する。本実施の形態に係る半導体装置の構成を図３に示す。なお、第１の実施の形態において図１を用いて説明した半導体装置と共通する部分には、図１と同一符号を付し、その説明を省略する。
【００６０】
図３に示すように、本実施の形態に係る半導体装置１５は、クロック生成回路２、クロック供給制御回路１６、クロック起動時間確保回路４、アクセス検出回路１７、プロセッサコア５、周辺回路１８から構成されている。また、第１および第２の外部装置１９、２０が、外部端子２１、２２を介して半導体装置１５の内部へと接続されている。
【００６１】
クロック供給制御回路１６は、スタンバイ制御端子７から入力されるスタンバイ制御信号ｓｔａｎｄｂｙが‘Ｌ’から‘Ｈ’になったとき、クロック生成回路２から供給されるクロック信号を遮断して、後段のクロック起動時間確保回路４へのクロック信号ｃｌｏｃｋＡの供給を停止し、逆に、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’から‘Ｌ’になったとき、クロック信号ｃｌｏｃｋＡの供給を再開する回路である。また、このクロック供給制御回路１６には、アクセス検出回路１７からアクセス検出信号ＢＵＳＹが入力され、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’になったときでも、アクセス検出信号ＢＵＳＹが‘Ｈ’の場合は、クロック起動時間確保回路４へのクロック信号ｃｌｏｃｋＡの供給を継続するようになっている。
【００６２】
アクセス検出回路１７は、プロセッサコア５と他のデバイスの間に介在し、プロセッサコア５が他のデバイスとアクセス状態にあるとき、アクセス検出信号ＢＵＳＹをクロック供給制御回路１６へと出力する回路である。
【００６３】
周辺回路１８は、アクセス検出回路１７を介してプロセッサコア５へと接続されている。また、第１および第２の外部装置１９、２０も、同様に、アクセス検出回路１７を介してプロセッサコア５へと接続されている。
【００６４】
次に、クロック供給制御回路１６およびアクセス検出回路１７の具体的な構成について説明する。
【００６５】
クロック供給制御回路１６は、スタンバイ信号生成ゲート２３およびＮＯＲゲート２４から構成される。
【００６６】
スタンバイ信号生成ゲート２３は、スタンバイ制御信号ｓｔａｎｄｂｙとアクセス検出信号ＢＵＳＹとを入力され、アクセス検出信号ＢＵＳＹの反転とスタンバイ制御信号ｓｔａｎｄｂｙとの論理積をとり、その演算結果を出力信号ｓｔａｎｄｂｙＡとしてＮＯＲゲート２４へと出力する。
【００６７】
ＮＯＲゲート２４は、スタンバイ信号生成ゲート２３から入力される信号ｓｔａｎｄｂｙＡと、クロック生成回路２から入力されるクロック信号とのＮＯＲ演算を行う。
【００６８】
アクセス検出回路１７は、第１乃至第３のＩＦ制御回路２５、２６、２７、および、アクセス信号生成ゲート２８から構成される。
【００６９】
第１のＩＦ制御回路２５は、プロセッサコア５と周辺回路１８との間に介在して、プロセッサコア５と周辺回路１８とのアクセス状態を監視し、アクセス中の場合にアクセス検出信号ＢＵＳＹＡを‘Ｈ’とする。第２のＩＦ制御回路２６は、プロセッサコア５と第１の外部装置１９との間に介在し、これらがアクセス中の場合にアクセス検出信号ＢＵＳＹＢを‘Ｈ’とする。同様に、第３のＩＦ制御回路２７は、プロセッサコア５と第２の外部装置２０との間に介在し、これらがアクセス中の場合にアクセス検出信号ＢＵＳＹＣを‘Ｈ’とする。
【００７０】
アクセス信号生成ゲート２８は、各ＩＦ制御回路からアクセス検出信号ＢＵＳＹＡ、ＢＵＳＹＢ、ＢＵＳＹＣが入力され、これらの信号のＯＲ演算を行い、スタンバイ信号生成ゲート２３へとアクセス検出信号ＢＵＳＹを出力する。
【００７１】
次に、本実施の形態に係る半導体装置の通常動作状態とスタンバイ状態との移行時における動作について図３を参照しながら説明する。
【００７２】
まず、本実施の形態に係る半導体装置のスタンバイ状態移行時（クロック供給停止時）における動作について説明する。
【００７３】
スタンバイ状態への移行は、スタンバイ制御端子７から入力されるスタンバイ制御信号ｓｔａｎｄｂｙを‘Ｌ’から‘Ｈ’に切り替えることにより行う。プロセッサコア５が周辺回路１８、第１の外部装置１９、または、第２の外部装置２０のいずれともアクセス状態にない場合、このスタンバイ制御信号ｓｔａｎｄｂｙの切り替えにより、直ちにプロセッサコア５へのクロック信号ｃｌｏｃｋＢの供給は停止される。
【００７４】
一方、プロセッサコア５が周辺回路１８、第１の外部装置１９、または、第２の外部装置２０のいずれかとアクセス状態にある場合、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’となっても、直ちにクロック信号の供給は停止されない。このプロセッサコア５がアクセス状態にある場合のスタンバイ状態移行時の動作について、図４を参照しながら説明する。図４は、本実施の形態に係る半導体装置のスタンバイ状態移行時の各信号のタイムチャートである。
【００７５】
周辺回路１８が時刻ｔ２３にプロセッサコア５とのアクセス処理を開始する。
このアクセス処理は完全に終了するまでに時刻ｔ２６までの時間を必要としている。同様に、第１の外部装置１９が時刻ｔ２１にアクセス処理を開始し、終了するまでに時刻ｔ２５までの時間を必要としている。また、第２の外部装置２０は時刻ｔ２２にアクセス処理を開始し、終了するまでに時刻ｔ２７までの時間を必要としている。
【００７６】
スタンバイ制御信号ｓｔａｎｄｂｙが、これらのアクセス中の時刻ｔ２４に‘Ｈ’となっても、直ちにクロック信号ｃｌｏｃｋＢの供給は停止されない。時刻ｔ２４以降のすべてのアクセス（斜線で示した部分）が終了した後（時刻ｔ２７）に、クロック信号ｃｌｏｃｋＢの供給は停止される。
【００７７】
周辺回路１８、第１の外部装置１９、または、第２の外部装置２０とプロセッサコア５とがアクセス状態にあれば、これらのアクセス状態を監視する各ＩＦ制御回路が、‘Ｈ’のアクセス検出信号をアクセス信号生成ゲート２８へと出力する。アクセス信号生成ゲート２８は、各ＩＦ制御回路から供給されたアクセス検出信号のＯＲ演算を行うため、３つのアクセス検出信号ＢＵＳＹＡ，ＢＵＳＹＢ，ＢＵＳＹＣのうち１つでも‘Ｈ’であれば、アクセス検出信号ＢＵＳＹは、‘Ｈ’としてスタンバイ信号生成ゲート２３へ出力される。
【００７８】
スタンバイ信号生成ゲート２３では、アクセス検出信号ＢＵＳＹの反転とスタンバイ制御信号ｓｔａｎｄｂｙとのＡＮＤ演算が行われるため、アクセス検出信号ＢＵＳＹが‘Ｈ’である限り、つまり、プロセッサ５がアクセス状態にある限り、スタンバイ信号生成ゲート２３の出力信号ｓｔａｎｄｂｙＡは‘Ｌ’となる。そして、これにより、プロセッサ５のアクセス状態が解除されるまで、ＮＯＲゲート２４によりクロック信号の供給が継続される。
【００７９】
次に、本実施の形態に係る半導体装置のスタンバイ状態解除時（クロック供給再開時）における動作について説明する。
【００８０】
スタンバイ制御信号ｓｔａｎｄｂｙが時刻ｔ２８に‘Ｌ’となると、スタンバイ信号生成ゲート２３の出力信号ｓｔａｎｄｂｙＡが直ちに‘Ｌ’となり、クロック生成回路２が時刻ｔ２９に発振を開始する。
【００８１】
信号ｓｔａｎｄｂｙＡが‘Ｌ’となると、アップカウンタ１１のリセットが解除され、アップカウンタ１１がクロック信号ｃｌｏｃｋＡのカウントアップ動作を時刻ｔ２１０に開始する。このカウント値がｎとなると、後段のデコーダ１２の出力が‘Ｌ’となり、プロセッサコア５へのクロック信号ｃｌｏｃｋＢの供給が時刻ｔ２１１に再開される。
【００８２】
本実施の形態に係る半導体装置は、スタンバイ状態へと移行する際に、プロセッサコア５がアクセス状態にある場合は、このアクセス状態が終了した後に、プロセッサコア５へのクロック信号ｃｌｏｃｋの供給を停止する。これにより、本実施の形態に係る半導体装置は、プロセッサコア５のアクセス処理が途中で中断されることにより、アクセス先のデバイスが誤動作を起こす危険性がない。
【００８３】
また、本実施の形態に係る半導体装置は、第１の実施の形態同様、スタンバイ状態の解除時に、クロック信号ｃｌｏｃｋＡが発振を開始し、アップカウンタ１１のカウント値がｎとなった以降に、クロック信号のエッジに同期して、クロック信号ｃｌｏｃｋＢのプロセッサコア５への供給を再開している。このため、アップカウンタ１１のｎの値を、クロック信号の立ち上がり時間（発振開始から振幅や周波数が規定のレベルに達するまでの時間（時刻ｔ２９から時刻ｔ２１１までの時間））に合わせて設定しておけば、スタンバイ状態解除時に、充分に安定したクロック信号をプロセッサコア５に供給することができる。
【００８４】
以上のように、本実施の形態に係る半導体装置は、スタンバイ状態と通常動作状態との移行を安定的に行えることから、スタンバイ状態から通常動作モードに復帰した際に、システムの再初期化処理を行う必要がない。このため、通常動作モードへの復帰後、スタンバイ状態移行前に行った処理を再度行うことなく、速やかに、スタンバイ状態移行時の処理を再開することができる。
【００８５】
なお、本実施の形態においては、クロック信号が供給される内部回路としてプロセッサコア５を示したが、第１の実施の形態同様、これに限られず、クロック信号に同期して動作する回路であれば、この回路はプロセッサコア以外でも構わない。
【００８６】
また、本実施の形態においては、クロック供給制御回路１６、クロック起動時間確保回路４およびアクセス検出回路１７の構成を図３に例示したが、これは、あくまでも例であり、これらの回路の構成は図３に示したものに限られない。
【００８７】
更に、本実施の形態においては、立ち下がりエッジに同期してクロック信号の供給を再開する場合を示したが、第１の実施の形態同様、アップカウンタ１１をクロック信号の立ち上がりに同期してカウントアップするカウンタとすることで、立ち上がりエッジに同期して、クロック信号の供給を再開することができる。
【００８８】
更にまた、本実施の形態においては、クロック生成回路２が半導体装置１５内に設けられている場合を示したが、第１の実施の形態同様、これに限られず、このクロック生成回路２が半導体装置１５の外部に設けられ、半導体装置１５の外部からクロック信号が供給される場合であっても構わない。
（第３の実施の形態）
以下に、本発明に係る半導体装置についての第３の実施の形態を図５を参照して説明する。本実施の形態に係る半導体装置の構成を図５に示す。なお、本実施の形態に係る半導体装置の構成は、第２の実施の形態に係る半導体装置の構成において、クロック供給制御回路１６の構成に、第１の実施の形態におけるクロック供給制御回路３の構成を付加したものである。よって、第１および第２の実施の形態において説明した半導体装置と共通する部分には、図１および図３と同一符号を付し、その説明を省略することとする。
【００８９】
図５に示すように、半導体装置２９は、クロック生成回路２、クロック供給制御回路３０、クロック起動時間確保回路４、アクセス検出回路１７、プロセッサコア５、および、周辺回路１８により構成されている。
【００９０】
クロック供給制御回路３０は、ＡＮＤゲート８、ディレイ回路９、ＮＯＲゲート１０およびスタンバイ信号生成ゲート２３により構成されている。スタンバイ信号生成ゲート２３には、アクセス検出回路１７からアクセス検出信号ＢＵＳＹが入力され、このアクセス検出信号ＢＵＳＹの反転とスタンバイ制御信号ｓｔａｎｄｂｙとのＡＮＤ演算を行う。これにより、プロセッサコア５が、周辺回路１８、第１の外部装置１９および第２の外部装置２０のいずれかとアクセス状態にあるとき、ディレイ回路９に入力されるスタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’とならないようになっている。
【００９１】
次に、本実施の形態に係る半導体装置の通常動作状態とスタンバイ状態との移行時における動作について図５を参照しながら説明する。
【００９２】
まず、本実施の形態に係る半導体装置のスタンバイ状態移行時（クロック供給停止時）における動作について説明する。
【００９３】
スタンバイ状態への移行は、スタインバイ制御端子７から入力されるスタンバイ制御信号ｓｔａｎｄｂｙを‘Ｌ’から‘Ｈ’に切り替えることにより行う。プロセッサコア５が周辺回路１８、第１の外部装置１９、または、第２の外部装置２０のいずれともアクセス状態にない場合、このスタンバイ制御信号ｓｔａｎｄｂｙの切り替えにより、直ちにプロセッサコア５へのクロック信号ｃｌｏｃｋＢの供給は停止される。
【００９４】
一方、プロセッサコア５が周辺回路１８、第１の外部装置１９、または、第２の外部装置２０とアクセス状態にある場合、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’となっても、直ちにクロック信号の供給は停止されない。このプロセッサコア５がアクセス状態にある場合のスタンバイ状態移行時の動作について、図６を参照しながら説明する。図６は、本実施の形態に係る半導体装置のスタンバイ状態移行時の各信号のタイムチャートである。
【００９５】
スタンバイ制御信号ｓｔａｎｄｂｙが、プロセッサコア５がアクセス状態にある時刻ｔ３４に‘Ｈ’となっても、クロック信号ｃｌｏｃｋＢの供給は、直ちに停止されない。時刻ｔ３４以降のすべてのアクセス（斜線で示した部分）が終了した後（時刻ｔ３８）に、その立ち下がりエッジに同期して、クロック信号ｃｌｏｃｋＢの供給が停止される。
【００９６】
周辺回路１８、第１の外部装置１９、または、第２の外部装置２０のいずれかとプロセッサコア５とがアクセス状態にあれば、アクセス検出信号ＢＵＳＹは、‘Ｈ’としてスタンバイ信号生成ゲート２３へ出力される。
【００９７】
スタンバイ信号生成ゲート２３では、アクセス検出信号ＢＵＳＹの反転とスタンバイ制御信号ｓｔａｎｄｂｙとのＡＮＤ演算が行われるため、アクセス検出信号ＢＵＳＹが‘Ｈ’である限り、つまり、プロセッサコア５がアクセス状態にある限り、スタンバイ信号生成ゲート２３の出力信号ｓｔａｎｄｂｙＡは‘Ｌ’となり、クロック信号ｃｌｏｃｋＢの供給が継続される。
【００９８】
プロセッサコア５のアクセス状態が時刻ｔ３７に解除されると、スタンバイ信号生成ゲート２３の出力信号ｓｔａｎｄｂｙＡが‘Ｈ’となって、ディレイ回路９へと入力される。ディレイ回路９は、ネガティブエッジ型のフリップフロップを３段組み合わせたものであるから、クロック信号ｃｌｏｃｋＡの３回目の立ち下がりエッジに同期して、ＡＮＤゲート８の出力信号ｓｔａｎｄｂｙＢが時刻ｔ３８に‘Ｈ’となる。これにより、クロック信号ｃｌｏｃｋＢの供給が、時刻ｔ３８に、その立ち下がりエッジに同期して停止される。
【００９９】
本実施の形態に係る半導体装置のスタンバイ状態解除時（クロック供給再開時）における動作は、第１および第２の実施の形態において説明したものと、略同一である。よって、ここでは、その説明を省略する。
【０１００】
本実施の形態に係る半導体装置は、プロセッサコア５がアクセス状態にないときにおいても、クロック信号の供給の停止および再開をクロック信号のエッジに同期して行うため、クロック信号のエッジに非同期にスタンバイ状態へと移行することで処理が破綻するということがない。また、プロセッサコア５がアクセス状態にあるときは、スタンバイ制御信号ｓｔａｎｄｂｙが‘Ｈ’となってもスタンバイ状態に移行しないため、アクセス中のスタンバイ状態へ移行に起因して、アクセス先のデバイスに誤動作が生じるということがない。
【０１０１】
また、本実施の形態に係る半導体装置は、第１および第２の実施の形態同様、スタンバイ状態の解除時に、クロック信号ｃｌｏｃｋＡが発振を開始し、アップカウンタ１１のカウント値がｎとなった以降に、クロック信号のエッジに同期して、クロック信号ｃｌｏｃｋＢのプロセッサコア５への供給を再開している。このため、アップカウンタ１１のｎの値を、クロック信号の立ち上がり時間（発振開始から振幅や周波数が規定のレベルに達するまでの時間（時刻ｔ３１０から時刻ｔ３１２までの時間））に合わせて設定しておけば、スタンバイ状態解除時に、充分に安定したクロック信号をプロセッサコア５に供給することができる。
【０１０２】
以上のように、本実施の形態に係る半導体装置は、通常動作状態からスタンバイ状態への移行をより安定的に行うことができる。よって、スタンバイ状態から通常動作状態への復帰の際にシステムの再初期化処理を必要とせず、スタンバイ状態移行時に中断した処理を速やかに再開することができる。
【０１０３】
なお、本実施の形態においては、クロック信号が供給される内部回路としてプロセッサコア５を示したが、第１および第２の実施の形態同様、これに限られず、クロック信号に同期して動作する回路であれば、この回路はプロセッサコア以外でも構わない。
【０１０４】
また、本実施の形態においては、クロック供給制御回路３０、クロック起動時間確保回路４およびアクセス検出回路１７の構成を図５に例示したが、これは、あくまでも例であり、これらの回路の構成は図５に示したものに限られない。
【０１０５】
更に、本実施の形態においては、立ち下がりエッジに同期してクロック信号の供給を停止する場合を示したが、第１の実施の形態同様、ディレイ回路９を、例えば、クロック信号の立ち上がりに同期して動作するポジティブエッジ型のフリップフロップで構成することにより、立ち上がりエッジに同期してクロック信号の供給を停止させることができる。同様に、本実施の形態においては、立ち下がりエッジに同期してクロック信号の供給を再開する場合を示したが、第１および第２の実施の形態同様、アップカウンタ１１をクロック信号の立ち上がりに同期してカウントアップするカウンタとすることで、立ち上がりエッジに同期して、クロック信号の供給を再開することができる。
【０１０６】
更にまた、本実施の形態においては、クロック生成回路２が半導体装置２９内に設けられている場合を示したが、第１および第２の実施の形態同様、これに限られず、このクロック生成回路２が半導体装置２９の外部に設けられ、半導体装置２９の外部からクロック信号が供給される場合であっても構わない。
【０１０７】
本発明は、実施段階ではその要旨を変更しない範囲で種々に変形することが可能である。
【０１０８】
以上、詳述したように、本発明に係る半導体集積回路の特徴をまとめると以下の通りになる。
【０１０９】
本発明に係る半導体装置は、クロック信号が入力され、このクロック信号に同期して動作する内部回路と、スタンバイ制御信号の切り替えに応答し、前記クロック信号に同期して、前記内部回路への前記クロック信号の供給の停止または再開を行うクロック供給制御回路とを具備することを特徴としている。
【０１１０】
また、本発明に係る半導体装置は、クロック信号が入力され、このクロック信号に同期して動作する内部回路と、前記内部回路と前記内部回路に接続された周辺回路または外部装置とのアクセス状態を検出するアクセス検出回路と、スタンバイ制御信号の切り替えに応答して、前記内部回路への前記クロック信号の供給の停止または再開を行い、かつ、前記クロック信号の供給の停止において、前記アクセス検出回路が前記アクセス状態を検出した場合、このアクセス状態が解除された後に前記クロック信号の供給を停止するクロック供給制御回路とを具備することを特徴としている。
【０１１１】
更に、本発明に係る半導体装置は、前記クロック供給制御回路が、前記クロック信号に同期して、前記クロック信号の供給の停止または再開を行うことを特徴としている。
【０１１２】
更に、本発明に係る半導体装置は、前記クロック供給制御回路と前記内部回路との間に介在し、前記クロック供給制御回路が前記クロック信号の供給を再開する場合、前記クロック信号の発振が安定した後に、前記内部回路への前記クロック信号の供給を再開するクロック起動時間確保回路を具備することを特徴としている。
【０１１３】
更に、本発明に係る半導体装置は、前記クロック供給制御回路が、前記スタンバイ制御信号が入力され、前記クロック信号に同期して動作するフリップフロップを有する回路であることを特徴としている。
【０１１４】
【発明の効果】
本発明によれば、通常動作状態からスタンバイ状態への移行を安定的に行い、スタンバイ状態から通常動作状態へと復帰した際に、スタンバイ状態移行時に実行していた処理を速やかに再開することができる半導体装置を提供することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係る半導体装置の構成図。
【図２】本発明の第１の実施の形態に係る半導体装置における、スタンバイ状態移行時の各信号のタイムチャート。
【図３】本発明の第２の実施の形態に係る半導体装置の構成図。
【図４】本発明の第２の実施の形態に係る半導体装置における、スタンバイ状態移行時の各信号のタイムチャート。
【図５】本発明の第３の実施の形態に係る半導体装置の構成図。
【図６】本発明の第３の実施の形態に係る半導体装置における、スタンバイ状態移行時の各信号のタイムチャート。
【図７】従来の半導体装置の構成図。
【図８】従来の半導体装置における、ＲＡＭへのリード／ライト処理実行中にスタンバイ状態へ移行した際の各信号のタイムチャート。
【図９】従来の半導体装置における、プロセッサコアがアクセス処理実行中にスタンバイ状態へ移行した際の各信号のタイムチャート。
【符号の説明】
１、１５、２９…半導体装置
２…クロック生成回路
３、１６、３０…クロック供給制御回路
４…クロック起動時間確保回路
５…プロセッサコア
６…ＲＡＭ
７…スタンバイ制御信号端子
８…ＡＮＤゲート
９…ディレイ回路
１０、１４、２４…ＮＯＲゲート
１１…アップカウンタ
１２…デコーダ
１３…インバータ
１７…アクセス検出回路
１８…周辺回路
１９…第１の外部装置
２０…第２の外部装置
２１、２２…外部端子
２３…スタンバイ信号生成ゲート
２５…第１のＩＦ制御回路
２６…第２のＩＦ制御回路
２７…第３のＩＦ制御回路
２８…アクセス信号生成ゲート
【図１】
2004258949.tif 000003
【図２】
2004258949.tif 000004
【図３】
2004258949.tif 000005
【図４】
2004258949.tif 000006
【図５】
2004258949.tif 000007
【図６】
2004258949.tif 000008
【図７】
2004258949.tif 000009
【図８】
2004258949.tif 000010
【図９】
2004258949.tif 000011