クロックに同期して動作する論理回路をリセットするリセット回路であって、前記論理回路の出力信号を受け、前記論理回路がリセットされたときの前記出力信号の初期値と前記論理回路から受けた前記出力信号とのいずれかを出力する出力選択部と、前記論理回路をリセットするためのリセット信号を受け、前記出力選択部から前記初期値が前記リセット信号に応答して出力されるように前記出力選択部を制御する制御部とを備えていることを特徴とするリセット回路。前記リセット回路はさらに、入力信号を受け、前記論理回路をリセットするための所定値と前記入力信号とのいずれかを前記論理回路に出力する入力選択部を備え、前記制御部は、前記リセットタイミングで前記出力信号が前記初期値にリセットされていないとき、前記出力信号が前記初期値にリセットされるまで、前記所定値が前記入力選択部から前記論理回路に出力されるように前記入力選択部を制御することを特徴とする請求項1記載のリセット回路。前記制御部は、前記出力信号が前記初期値にリセットされた後、前記入力信号が前記入力選択部から前記論理回路に出力されるように前記入力選択部を制御することを特徴とする請求項2記載のリセット回路。前記制御部は、前記論理回路が前記クロックに同期して動作しているとき、前記論理回路の前記出力信号が前記出力選択部から出力されるように前記出力選択部を制御することを特徴とする請求項1記載のリセット回路。前記制御部は、前記リセットタイミングで前記出力信号が前記初期値にリセットされているとき、前記論理回路の前記出力信号が前記出力選択部から出力されるように前記出力選択部を制御し、前記リセットタイミングで前記出力信号が前記初期値にリセットされていないとき、前記初期値が前記出力選択部から出力されるように前記出力選択部を制御することを特徴とする請求項1記載のリセット回路。クロックに同期して動作する論理回路と、前記論理回路をリセットするリセット回路とを備え、前記リセット回路は、前記論理回路の出力信号を受け、前記論理回路がリセットされたときの前記出力信号の初期値と前記論理回路から受けた前記出力信号とのいずれかを出力する出力選択部と、前記論理回路をリセットするためのリセット信号を受け、前記出力選択部から前記初期値が前記リセット信号に応答して出力されるように前記出力選択部を制御する制御部とを備えていることを特徴とする半導体装置。前記リセット回路はさらに、入力信号を受け、前記論理回路をリセットするための所定値と前記入力信号とのいずれかを前記論理回路に出力する入力選択部を備え、前記制御部は、前記リセットタイミングで前記出力信号が前記初期値にリセットされていないとき、前記出力信号が前記初期値にリセットされるまで、前記所定値が前記入力選択部から前記論理回路に出力されるように前記入力選択部を制御することを特徴とする請求項6記載の半導体装置。前記制御部は、前記出力信号が前記初期値にリセットされた後、前記入力信号が前記入力選択部から前記論理回路に出力されるように前記入力選択部を制御することを特徴とする請求項7記載の半導体装置。前記制御部は、前記論理回路が前記クロックに同期して動作しているとき、前記論理回路の前記出力信号が前記出力選択部から出力されるように前記出力選択部を制御することを特徴とする請求項6記載の半導体装置。前記制御部は、前記リセットタイミングで前記出力信号が前記初期値にリセットされているとき、前記論理回路の前記出力信号が前記出力選択部から出力されるように前記出力選択部を制御し、前記リセットタイミングで前記出力信号が前記初期値にリセットされていないとき、前記初期値が前記出力選択部から出力されるように前記出力選択部を制御することを特徴とする請求項6記載の半導体装置。クロックに同期してリセットが実施される論理回路では、リセットが実施されるタイミングより前に、初期化対象の論理回路へのクロック供給が停止したとき、リセットは、実施されない。この場合、論理回路の出力が初期値にリセットされないおそれがある。初期化対象の論理回路の出力が初期値にリセットされない場合、初期化対象の論理回路は、後段の論理回路に初期値を出力することができない。このため、後段の論理回路の動作に不具合が発生することがある。本発明の目的は、クロックゲーティング状態にあるときにも、初期化対象の論理回路の初期値を後段の論理回路に出力することである。本発明の一形態では、クロックに同期して動作する論理回路をリセットするリセット回路は、論理回路の出力信号を受け、論理回路がリセットされたときの出力信号の初期値と論理回路から受けた出力信号とのいずれかを出力する出力選択部と、論理回路をリセットするためのリセット信号を受け、出力選択部から初期値がリセット信号に応答して出力されるように出力選択部を制御する制御部とを有している。クロックゲーティング状態にあるときにも、初期化対象の論理回路の初期値を後段の論理回路に出力できる。以下、実施形態を図面を用いて説明する。図1は、一実施形態におけるリセット回路10の例を示している。リセット回路10は、例えば、クロックCLK1に同期して動作する論理回路20をリセットする。リセット回路10および論理回路20は、半導体装置の少なくとも一部を形成する。例えば、リセット回路10は、論理回路20を含むLSI等に搭載される。リセット回路10は、入力選択部ISEL、出力選択部OSELおよび制御部CNTを有している。例えば、リセット回路10は、ソフトリセット信号RSTおよび入力信号DINを受け、出力信号DOUTを論理回路20の後段の論理回路に出力する。ソフトリセット信号RSTは、例えば、論理回路20をリセットするためのリセット信号であり、半導体装置の動作を制御するCPU等から出力される。また、入力信号DINは、例えば、ソフトリセット信号RSTがアサートされていない通常動作時に論理回路20に入力される入力信号であり、論理回路20の前段の論理回路から出力される。なお、論理回路20が受けるクロックCLK1は、例えば、半導体装置のクロックの供給や停止を制御するクロック制御回路から出力される。入力選択部ISELは、入力信号DINを受け、論理回路20をリセットするための所定値と入力信号DINとのいずれかを論理回路20に出力する。例えば、入力選択部ISELは、制御部CNTの制御に応じて、所定値と入力信号DINとのいずれかを論理回路20に出力する。ここで、入力選択部ISELは、例えば、制御部CNTから受ける制御信号を使用して所定値を生成してもよいし、制御部CNTから所定値を受けてもよい。あるいは、入力選択部ISELは、所定値を予め保持していてもよい。出力選択部OSELは、論理回路20の出力信号を受け、論理回路20がリセットされたときの出力信号の初期値と論理回路20から受けた出力信号とのいずれかを出力する。例えば、出力選択部OSELは、制御部CNTの制御に応じて、論理回路20の出力信号の初期値以降、単に初期値とも称すると論理回路20から受けた出力信号とのいずれかを、後段の論理回路への出力信号DOUTとして出力する。すなわち、論理回路20の後段の論理回路は、論理回路20からの出力信号として、リセット回路10の出力信号DOUTを受ける。ここで、出力選択部OSELは、例えば、制御部CNTから受ける制御信号を使用して初期値を生成してもよいし、制御部CNTから初期値を受けてもよい。あるいは、出力選択部OSELは、初期値を予め保持していてもよい。制御部CNTは、ソフトリセット信号RSTおよび論理回路20の出力信号を受ける。そして、制御部CNTは、ソフトリセット信号RSTおよび論理回路20の出力信号に基づいて、入力選択部ISELおよび出力選択部OSELを制御する。例えば、制御部CNTは、ソフトリセット信号RSTに基づくリセットタイミングより前にクロックCLK1が停止したときにも、出力選択部OSELから初期値がソフトリセット信号RSTに応答して出力されるように出力選択部OSELを制御する。すなわち、出力選択部OSELは、ソフトリセット信号RSTに基づくリセットタイミングより前にクロックCLK1が停止したときにも、ソフトリセット信号RSTに応答して、初期値を示す出力信号DOUTを論理回路20の後段の論理回路に出力する。これにより、この実施形態では、クロックゲーティング状態で初期化対象の論理回路20の出力信号の値に拘わらず、初期化対象の論理回路20の初期値を後段の論理回路に出力できる。なお、例えば、制御部CNTは、ソフトリセット信号RSTがアサートされたときの論理回路20の出力信号を判定し、初期値と論理回路20の出力信号とが一致するとき、論理回路20の出力信号を出力選択部OSELから出力させてもよい。あるいは、制御部CNTは、ソフトリセット信号RSTがアサートされたとき、論理回路20の出力信号の値に拘わらず、初期値を出力選択部OSELから出力させてもよい。また、例えば、制御部CNTは、ソフトリセット信号RSTに基づくリセットタイミングで論理回路20の出力信号が初期値にリセットされていないとき、論理回路20の出力信号が初期値にリセットされるまで、所定値が論理回路20に出力されるように入力選択部ISELを制御する。すなわち、入力選択部ISELは、ソフトリセット信号RSTに基づくリセットタイミングで論理回路20の出力信号が初期値にリセットされていないとき、論理回路20の出力信号が初期値にリセットされるまで、所定値を論理回路20に出力する。したがって、論理回路20の入力は、論理回路20の出力信号が初期値にリセットされるまで、所定値に維持される。これにより、論理回路20は、例えば、クロックCLK1の供給が再開したときに、リセットされる。なお、リセット回路10の構成は、この例に限定されない。例えば、入力選択部ISELは、ソフトリセット信号RSTに基づいて、所定値と入力信号DINとのいずれかを論理回路20に出力してもよい。この場合、入力選択部ISELは、制御部CNTを介さずに、ソフトリセット信号RSTを受けてもよい。すなわち、制御部CNTは、入力選択部ISELを制御する機能を含まなくてもよい。以上、この実施形態では、リセット回路10は、制御部CNTの制御に応じて、論理回路20の初期値を出力する出力選択部OSELを有している。例えば、出力選択部OSELは、クロックCLK1が停止したときにも、論理回路20の初期値を示す出力信号DOUTを、論理回路20の後段の論理回路にソフトリセット信号RSTに応答して出力する。これにより、この実施形態では、クロックゲーティング状態で初期化対象の論理回路20の出力信号の値に拘わらず、初期化対象の論理回路20の初期値を後段の論理回路に出力できる。この結果、論理回路20の後段の論理回路等の動作が不安定になることを防止できる。すなわち、この実施形態では、クロックゲーティングにより消費電力を低減しつつ、論理回路20の後段の論理回路等の動作が不安定になることを防止できる。図2は、別の実施形態におけるリセット回路12の一例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。リセット回路12は、例えば、クロックCLK1に同期して動作する論理回路22をリセットする。リセット回路12および論理回路22は、半導体装置の少なくとも一部を形成する。例えば、リセット回路12は、論理回路22を含むLSI等に搭載される。論理回路22は、例えば、イネーブル端子ENで受けるイネーブル信号en1が1高レベルのときにアクティブになるフリップフロップ回路である。例えば、論理回路22は、イネーブル信号en1が1のとき、端子CKで受けるクロックCLK1に同期して、端子Dで受けたデータ信号d1を端子Qから出力する。また、論理回路22は、リセットされたとき、例えば、0低レベルを出力する。すなわち、図2の例では、論理回路22の出力信号q1の初期値は、0である。リセット回路12は、制御部CNT2、入力選択部ISEL2および出力選択部OSEL2を有している。例えば、制御部CNT2、入力選択部ISEL2および出力選択部OSEL2は、図1に示した制御部CNT、入力選択部ISELおよび出力選択部OSELにそれぞれ対応している。例えば、リセット回路12は、ソフトリセット信号RST、クロックCLK2、入力データDATA、イネーブル信号ENINおよび論理回路22の出力信号q1を受け、出力信号DOUTを論理回路22の後段の論理回路に出力する。入力データDATAおよびイネーブル信号ENINは、例えば、ソフトリセット信号RSTがアサートされていない通常動作時に論理回路22に入力される入力信号であり、図1に示した入力信号DINに対応している。また、クロックCLK1、CLK2は、例えば、半導体装置のクロックの供給や停止を制御するクロック制御回路から出力される。制御部CNT2は、クロックCLK2、ソフトリセット信号RSTおよび論理回路22の出力信号q1を受ける。そして、制御部CNT2は、ソフトリセット信号RSTおよび論理回路22の出力信号q1に基づいて、入力選択部ISEL2および出力選択部OSEL2を制御する。例えば、制御部CNT2は、ソフトリセット信号RSTに基づくリセットタイミングで論理回路22の出力信号q1が初期値にリセットされているとき、論理回路22の出力信号q1が出力選択部OSEL2から出力されるように出力選択部OSEL2を制御する。そして、制御部CNT2は、ソフトリセット信号RSTに基づくリセットタイミングで論理回路22の出力信号q1が初期値にリセットされていないとき、初期値が出力選択部OSEL2から出力されるように出力選択部OSEL2を制御する。なお、制御部CNT2は、ソフトリセット信号RSTがアサートされたとき、論理回路22の出力信号q1の値に拘わらず、初期値を出力選択部OSEL2から出力させてもよい。すなわち、制御部CNT2は、例えば、ソフトリセット信号RSTに基づくリセットタイミングより前にクロックCLK1が停止したときにも、出力選択部OSEL2から初期値がソフトリセット信号RSTに応答して出力されるように出力選択部OSEL2を制御する。また、制御部CNT2は、例えば、ソフトリセット信号RSTに基づくリセットタイミングで論理回路22の出力信号q1が初期値にリセットされていないとき、出力信号q1が初期値にリセットされるまで、所定値が論理回路22に出力されるように入力選択部ISEL2を制御する。制御部CNT2は、例えば、AND回路AND1、AND2、AND3、OR回路OR1、OR2、インバータINV1、INV2およびフリップフロップ回路FF1を有している。AND回路AND1は、ソフトリセット信号RSTと論理回路22の出力信号q1との論理積結果信号rstartを、OR回路OR1、OR2に出力する。インバータINV1は、出力信号q1の反転信号をAND回路AND2に出力する。AND回路AND2は、出力信号q1の反転信号とフリップフロップ回路FF1の出力信号sel_outとの論理積結果信号rendを、OR回路OR1およびインバータINV2に出力する。OR回路OR1は、AND回路AND1の出力信号rstartとAND回路AND2の出力信号rendとの論理和結果イネーブル信号en2を、フリップフロップ回路FF1のイネーブル端子ENに出力する。フリップフロップ回路FF1は、例えば、イネーブル信号en2が1のとき、端子CKで受けるクロックCLK2に同期して、端子Dで受けたソフトリセット信号RSTを端子Qから出力する。フリップフロップ回路FF1の出力信号sel_outは、AND回路AND2、OR回路OR2および出力選択部OSEL2に出力される。すなわち、ソフトリセット信号RSTは、イネーブル信号en2が1のとき、出力信号sel_outとしてAND回路AND2、OR回路OR2および出力選択部OSEL2に出力される。OR回路OR2は、AND回路AND1の出力信号rstartとフリップフロップ回路FF1の出力信号sel_outとの論理和結果を、AND回路AND3に出力する。インバータINV2は、AND回路AND2の出力信号rendの反転信号をAND回路AND3に出力する。AND回路AND3は、AND回路AND2の出力信号rendの反転信号とOR回路OR2の出力信号との論理積結果信号sel_inを、入力選択部ISEL2に出力する。入力選択部ISEL2は、入力データDATA、イネーブル信号ENINおよび制御部CNT2の出力信号sel_inを受け、論理回路22へ入力されるデータ信号d1およびイネーブル信号en1を論理回路22に出力する。例えば、入力選択部ISEL2は、制御部CNT2の出力信号sel_inに応じて、論理回路22をリセットするための所定値の入力データ0と入力データDATAとのいずれかを論理回路22の端子Dに出力する。さらに、入力選択部ISEL2は、制御部CNT2の出力信号sel_inに応じて、論理回路22をリセットするための所定値のイネーブル信号1とイネーブル信号ENINとのいずれかを論理回路22のイネーブル端子ENに出力する。例えば、入力選択部ISEL2は、インバータINV3、AND回路AND4およびOR回路OR3を有している。インバータINV3は、制御部CNT2の出力信号sel_inの反転信号をAND回路AND4に出力する。AND回路AND4は、出力信号sel_inの反転信号と入力データDATAとの論理積結果データ信号d1を、論理回路22の端子Dに出力する。OR回路OR3は、制御部CNT2の出力信号sel_inとイネーブル信号ENINとの論理和結果イネーブル信号en1を、論理回路22のイネーブル端子ENに出力する。出力選択部OSEL2は、論理回路22の出力信号q1および制御部CNT2の出力信号sel_outを受け、出力信号DOUTを論理回路22の後段の論理回路に出力する。例えば、出力選択部OSEL2は、制御部CNT2の出力信号sel_outに応じて、論理回路22の出力信号q1の初期値と論理回路22から受けた出力信号q1とのいずれかを、論理回路22の後段の論理回路への出力信号DOUTとして出力する。これにより、出力選択部OSEL2は、例えば、ソフトリセット信号RSTに基づくリセットタイミングより前にクロックCLK1が停止したときにも、論理回路22の出力信号q1の初期値をソフトリセット信号RSTに応答して出力できる。例えば、出力選択部OSEL2は、インバータINV4およびAND回路AND5を有している。インバータINV4は、制御部CNT2の出力信号sel_outの反転信号をAND回路AND5に出力する。AND回路AND5は、出力信号sel_outの反転信号と論理回路22の出力信号q1との論理積結果出力信号DOUTを、論理回路22の後段の論理回路に出力する。すなわち、論理回路22の後段の論理回路は、論理回路22からの出力信号として、リセット回路12の出力信号DOUTを受ける。なお、リセット回路12の構成は、この例に限定されない。例えば、リセット回路12は、初期化対象の論理回路22の初期値等の属性に合わせた論理で形成されていればよい。また、例えば、複数ビットの入力データDATAに対応した複数の論理回路22をリセットするためのリセット回路12では、制御部CNT2は、複数の論理回路22で共通に設けられてもよい。この場合、入力データDATAのビット数が増加したときにも、制御部CNT2の数が増加しないため、リセット回路12の消費電力が増加することを抑制できる。なお、入力選択部ISEL2および出力選択部OSEL2は、例えば、複数の論理回路22のそれぞれに対応して設けられる。また、制御部CNT2、入力選択部ISEL2および出力選択部OSEL2の区別は、この例に限定されない。例えば、入力選択部ISEL2は、制御部CNT2のAND回路AND3、OR回路OR2およびインバータINV2を含んで定義されてもよい。図3は、図2に示したリセット回路12の動作の一例を示している。なお、図3は、ソフトリセット信号RSTに基づくリセットタイミング時刻T1より前にクロックCLK1が停止したときのリセット回路12の動作を示している。図3の信号en1、d1、q1の破線は、比較例を示している。比較例では、図2に示した制御部CNT2および出力選択部OSEL2が省かれ、信号sel_inの代わりにソフトリセット信号RSTが入力選択部ISEL2に入力される。図3の例では、ソフトリセット信号RSTがアサートされる直前の論理回路22の出力信号q1は、1高レベルである。また、ソフトリセット信号RSTがアサートされる直前の制御部CNT2の出力信号sel_outは、0低レベルである。したがって、ソフトリセット信号RSTがアサートされる直前の出力信号DOUTは、1である。なお、出力信号q1の初期値は、0である。すなわち、論理回路22がリセットされたときには、出力信号q1は、0に初期化される。先ず、論理回路22をリセットするために、ソフトリセット信号RSTが0から1に変化する図3a。なお、クロックCLK1は、ソフトリセット信号RSTに基づくリセットタイミング時刻T1より前に停止する。すなわち、クロックCLK1は、論理回路22がリセットされる前に、停止する。ソフトリセット信号RSTが0から1に変化したことにより、信号rstartソフトリセット信号RSTと出力信号q1との論理積結果は、0から1に変化する図3b。この結果、フリップフロップ回路FF1のイネーブル信号en2信号rstartと信号rendの論理和結果は、0から1に変化する図3c。これにより、フリップフロップ回路FF1の出力信号sel_outは、クロックCLK2の立ち上がりに同期して、0から1に変化する図3d。出力信号sel_outが0から1に変化したことにより、出力信号DOUTは、1から0に変化する図3e。なお、論理回路22の出力信号q1は、リセットされる前にクロックCLK1が停止したため、1に維持されている。このように、この実施形態では、論理回路22がリセットされる前にクロックCLK1が停止したときにも、ソフトリセット信号RSTに応答して、論理回路22の初期値0を示す出力信号DOUTを論理回路22の後段の論理回路に出力できる。すなわち、この実施形態では、ソフトリセット信号RSTに基づくリセットタイミング時刻T1より前にクロックCLK1が停止したときにも、ソフトリセット信号RSTに応答して、論理回路22の初期値を論理回路22の後段の論理回路に出力できる。したがって、この実施形態では、クロックゲーティング状態で初期化対象の論理回路22の出力信号q1の値に拘わらず、初期化対象の論理回路22の初期値を後段の論理回路に出力できる。また、ソフトリセット信号RSTが0から1に変化したときにも、信号rendは、出力信号q1が1であるため、0に維持されている。このため、信号sel_inは、信号rstartが0から1に変化したことに伴い、0から1に変化する図3f。これにより、論理回路22のイネーブル信号en1は、0から1に変化する図3g。また、論理回路22へのデータ信号d1は、1から0に変化する図3h。このように、論理回路22が受ける信号en1、d1は、ソフトリセット信号RSTに応答して、論理回路22をリセットするための所定値に設定される。そして、ソフトリセット信号RSTが1から0に変化することにより図3i、信号rstartは、1から0に変化する図3j。この結果、フリップフロップ回路FF1のイネーブル信号en2は、1から0に変化する図3k。このため、0から1に変化したフリップフロップ回路FF1の出力信号sel_outは、ソフトリセット信号RSTが1から0に変化したときにも、1に維持される図3d、l。信号sel_outが1に維持されるため、1から0に変化した出力信号DOUTは、ソフトリセット信号RSTが1から0に変化したときにも、0に維持される図3e、m。また、信号sel_outおよび信号rendが1および0にそれぞれ維持されているため、信号sel_inは、ソフトリセット信号RSTが1から0に変化したときにも、1に維持される図3n。これにより、イネーブル信号en1およびデータ信号d1は、ソフトリセット信号RSTが1から0に変化したときにも、1および0にそれぞれ維持される図3o、p。なお、比較例では、イネーブル信号en1およびデータ信号d1は、ソフトリセット信号RSTが1から0に変化したとき、0および1にそれぞれ変化する図3の破線。また、比較例では、論理回路22の出力信号q11が後段の論理回路に出力されるため、論理回路22の初期値0は、後段の論理回路に出力されない。このため、比較例では、論理回路22の後段の論理回路等の動作が不安定になる。これに対し、この実施形態では、論理回路22の初期値0を示す出力信号DOUTが論理回路22の後段の論理回路に出力されるため、論理回路22の後段の論理回路等の動作が不安定になることを防止できる。次に、時刻T2に、クロックCLK1の供給が再開される。このとき、論理回路22のイネーブル信号en1および論理回路22へのデータ信号d1が1および0にそれぞれ維持されているため、論理回路22の出力信号q1は、1から0に変化する図3q。このように、論理回路22をリセットするための所定値に信号en1、d1が維持されているため、論理回路22は、クロックCLK1の供給が再開されたとき、リセットされる。すなわち、ソフトリセット信号RSTに基づくリセットタイミング時刻T1で論理回路22の出力信号q1が初期値0にリセットされていないとき、出力信号q1が初期値にリセットされるまで、信号en1、d1は、所定値に維持される。例えば、入力選択部ISEL2は、ソフトリセット信号RSTに基づくリセットタイミングで論理回路22の出力信号q1が初期値にリセットされていないとき、論理回路22の出力信号q1が初期値にリセットされるまで、所定値を論理回路22に出力する。なお、比較例では、イネーブル信号en1およびデータ信号d1が0および1にそれぞれ維持されているため、論理回路22の出力信号q1は、1に維持される図3の破線。すなわち、比較例では、論理回路22は、クロックCLK1の供給が再開されても、リセットされない。これに対し、この実施形態では、論理回路22をリセットするための所定値に信号en1、d1が維持されているため、クロックCLK1の供給が再開されたとき、論理回路22をリセットできる。また、信号rendは、信号sel_outが1であるため、出力信号q1が1から0に変化したことにより、0から1に変化する図3r。これにより、フリップフロップ回路FF1のイネーブル信号en2は、0から1に変化する図3s。信号rendが0から1に変化したことにより、信号sel_inは、1から0に変化する図3t。これにより、イネーブル信号ENINおよび入力データDATAは、イネーブル信号en1およびデータ信号d1として、論理回路22にそれぞれ入力される。例えば、イネーブル信号en1およびデータ信号d1は、0および1にそれぞれ変化する図3u。このように、制御部CNT2は、出力信号q1が初期値にリセットされた後、イネーブル信号ENINおよび入力データDATAが入力選択部ISEL2から論理回路22に出力されるように入力選択部ISEL2を制御する。これにより、論理回路22は、クロックCLK1の供給が再開されたとき、正常に動作できる。時刻T3では、ソフトリセット信号RSTおよびフリップフロップ回路FF1のイネーブル信号en2は、それぞれ0および1である。このため、フリップフロップ回路FF1の出力信号sel_outは、クロックCLK2の立ち上がりに同期して、1から0に変化する図3v。これにより、信号rendは、1から0に変化する図3w。この結果、フリップフロップ回路FF1のイネーブル信号en2は、1から0に変化する図3x。このため、1から0に変化したフリップフロップ回路FF1の出力信号sel_outは、0に維持される図3v、y。時刻T3以降では、信号sel_outが0に維持されているため、論理回路22の出力信号q1は、出力信号DOUTとして、論理回路22の後段の論理回路に出力される。すなわち、時刻T3以降では、論理回路22は、ソフトリセット信号RSTがアサートされていない通常動作に復帰する。例えば、イネーブル信号ENINが1に変化したとき、論理回路22の出力信号q1は、クロックCLK1の立ち上がりに同期して、0から1に変化する図3z。これにより、出力信号DOUTは、0から1に変化する。このように、制御部CNT2は、論理回路22がクロックCLK1に同期して動作しているとき、論理回路22の出力信号q1が出力選択部OSEL2から出力されるように出力選択部OSEL2を制御する。これにより、論理回路22の後段の論理回路は、クロックCLK1の供給が再開されたとき、正常に動作できる。なお、ソフトリセット信号RSTに基づくリセットタイミング時刻T1より後にクロックCLK1が停止したときには、論理回路22の出力信号q1が0にリセットされるため、出力信号DOUTは、クロックCLK1の停止前に、0に変化する。図4は、図2に示したリセット回路12が搭載される半導体装置100の一例を示している。半導体装置100は、例えば、リセット回路12、論理回路22、CPU110、クロック制御回路120および論理回路130、140を有している。なお、半導体装置100の最小構成は、リセット回路12および論理回路22である。CPU110は、例えば、半導体装置100の動作を制御する。例えば、CPU110は、クロック制御回路120を制御し、クロックCLK1の供給や停止を制御する。また、例えば、CPU110は、ソフトリセット信号RSTをリセット回路12に出力し、論理回路22をリセットするとき、ソフトリセット信号RSTをアサートする。クロック制御回路120は、例えば、CPU110の制御に応じて、クロックCLK1、CLK2、CLK3、CLK4の供給や停止を制御する。例えば、クロック制御回路120は、通常動作時に、クロックCLK1、CLK2、CLK3、CLK4を、論理回路22、リセット回路12、論理回路130および論理回路140にそれぞれ出力する。また、例えば、クロック制御回路120は、クロックゲーティングにより消費電力を低減するとき、CPU110の制御に応じて、論理回路22に供給するクロックCLK1を停止する。論理回路130は、論理回路22の前段の論理回路であり、クロックCLK3に同期して動作する。例えば、論理回路130は、イネーブル信号ENINおよび入力データDATAをリセット回路12に出力する。論理回路140は、論理回路22の後段の論理回路であり、クロックCLK4に同期して動作する。例えば、論理回路140は、出力信号DOUTをリセット回路12から受ける。以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。例えば、リセット回路12の出力選択部OSEL2は、クロックCLK1が停止したときにも、論理回路22の初期値を、論理回路22の後段の論理回路140にソフトリセット信号RSTに応答して出力する。これにより、この実施形態では、クロックゲーティング状態で初期化対象の論理回路22の出力信号q1の値に拘わらず、初期化対象の論理回路22の初期値を後段の論理回路140に出力できる。この結果、この実施形態では、クロックゲーティングにより消費電力を低減しつつ、論理回路140等の動作が不安定になることを防止できる。また、例えば、リセット回路12の入力選択部ISEL2は、ソフトリセット信号RSTに基づくリセットタイミングで論理回路22の出力信号q1が初期値にリセットされていないとき、論理回路22の出力信号q1が初期値にリセットされるまで、所定値を論理回路22に出力する。これにより、この実施形態では、クロックCLK1の供給が再開されたとき、論理回路22をリセットできる。図5は、別の実施形態におけるリセット回路14の一例を示している。上述した実施形態で説明した要素と同一の要素については、同一の符号を付し、これ等については、詳細な説明を省略する。この実施形態のリセット回路14は、図2に示した制御部CNT2の代わりに、制御部CNT4を有している。また、入力選択部ISEL2は、出力信号sel_inの代わりに、ソフトリセット信号RSTを受ける。リセット回路14のその他の構成は、図2-図4で説明した実施形態と同じである。例えば、リセット回路14は、論理回路22を含むLSI等に搭載される。また、この実施形態の半導体装置は、リセット回路12の代わりにリセット回路14が設けられることを除いて、図2-図4で説明した実施形態と同じである。リセット回路14は、例えば、ソフトリセット信号RST、クロックCLK2、入力データDATA、イネーブル信号ENINおよび論理回路22の出力信号q1を受け、出力信号DOUTを論理回路22の後段の論理回路に出力する。例えば、リセット回路14は、制御部CNT4、入力選択部ISEL2および出力選択部OSEL2を有している。リセット回路14の入力選択部ISEL2の構成および出力選択部OSEL2の構成は、図2に示したリセット回路12の入力選択部ISEL2および出力選択部OSEL2と同じである。入力選択部ISEL2は、入力データDATA、イネーブル信号ENINおよびソフトリセット信号RSTを受け、ソフトリセット信号RSTに応じて、データ信号d1およびイネーブル信号en1を出力する。例えば、入力選択部ISEL2は、ソフトリセット信号RSTが1のときに、論理回路22をリセットするための所定値0のデータ信号d1および1のイネーブル信号en1を論理回路22に出力する。さらに、入力選択部ISEL2は、例えば、ソフトリセット信号RSTが1のとき、1のイネーブル信号en1をフリップフロップ回路FF1のイネーブル端子ENに出力する。制御部CNT4は、例えば、クロックCLK2およびソフトリセット信号RSTを受け、出力選択部OSEL2をソフトリセット信号RSTに基づいて制御する。例えば、制御部CNT4は、図2に示した制御部CNT2からAND回路AND1、AND2、AND3、OR回路OR1、OR2、インバータINV1、INV2が省かれている。すなわち、制御部CNT4は、フリップフロップ回路FF1を有している。フリップフロップ回路FF1は、ソフトリセット信号RSTを端子Dで受け、ソフトリセット信号RSTとイネーブル信号ENINとの論理和結果イネーブル信号en1をイネーブル端子ENで受け、クロックCLK2を端子CKで受ける。そして、フリップフロップ回路FF1は、例えば、イネーブル信号en1が1のとき、クロックCLK2に同期して、ソフトリセット信号RSTを出力信号sel_outとして端子Qから出力選択部OSEL2に出力する。これにより、出力選択部OSEL2は、例えば、ソフトリセット信号RSTに基づくリセットタイミングより前にクロックCLK1が停止したときにも、論理回路22の出力信号q1の初期値をソフトリセット信号RSTに応答して出力できる。すなわち、論理回路22の後段の論理回路は、ソフトリセット信号RSTに基づくリセットタイミングより前にクロックCLK1が停止したときにも、論理回路22の初期値をリセット回路14から受けることができる。クロックCLK1の供給が再開したときには、フリップフロップ回路FF1の出力信号sel_outは、例えば、論理回路22を有効にするためのイネーブル信号ENINが1に変化することにより、0に変化する。これにより、論理回路22の出力信号q1は、出力信号DOUTとして、論理回路22の後段の論理回路に出力される。以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずであり、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。