(57)【要約】【課題】メタステーブルの振動成分やグリッチが出力信号に含まれることを防止できる出力制御回路、信号選択回路とその方法を提供する。【解決手段】選択信号ＳＥＬにおいて出力中のクロック信号とは異なる新たなクロック信号が選択された場合、出力中のクロック信号の立ち下りに同期して、出力信号ＥＣＫがローレベルに保持される。このレベル保持の後、全クロック信号の無選択を示す状態信号ＳＴが出力され、これに応じて、全クロック信号の選択を有効化するイネーブル信号ＥＮが生成されて、選択信号ＳＥＬによる新たな入力信号の選択が有効化される。有効化された新たな入力信号は、その立ち下りに同期して出力される。次いで、この新たな入力信号が選択中であることを示す状態信号ＳＴが出力されると、状態信号ＳＴで選択中とされた入力信号の選択を有効化し、他の入力信号の選択を無効化するイネーブル信号が生成される。【選択図】      図１
2004166194.tif 000002
【特許請求の範囲】
【請求項１】
与えられる出力制御信号に応じて、入力信号の出力を有効化または無効化する出力制御回路であって、
上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する制御信号を、上記入力信号の第２のレベルから第１のレベルへのレベル変化に同期して出力する制御信号出力回路と、
上記制御信号出力回路から上記入力信号の出力を有効化する制御信号が出力された場合、上記入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して上記入力信号を出力し、上記制御信号出力回路から上記入力信号の出力を無効化する制御信号が出力された場合、上記入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して出力信号レベルを上記第２のレベルに保持する入力信号出力回路と
を有する出力制御回路。
【請求項２】
上記制御信号出力回路は、１段または直列接続された複数段の信号保持回路を含み、上記入力信号の上記第２のレベルから上記第１のレベルへのレベル変化に同期して、初段の信号保持回路に入力された上記出力制御信号を次段の信号保持回路へ順にシフトさせ、終段の信号保持回路に保持された信号を上記制御信号として出力するシフト回路を有する、
請求項１に記載の出力制御回路。
【請求項３】
与えられる出力制御信号に応じて、入力信号の出力を有効化または無効化する出力制御回路であって、
上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する第１の制御信号を、入力される基準クロック信号に同期して出力する第１の制御信号出力回路と、
上記第１の制御信号に応じて上記入力信号の出力を有効化または無効化する第２の制御信号を、上記基準クロック信号に同期して出力する第２の制御信号出力回路と、
上記入力信号の出力が有効化された状態において上記第１の制御信号出力回路から上記入力信号の出力を無効化する第１の制御信号が出力される場合、出力信号レベルを第１のレベルに保持し、上記第２の制御信号出力回路から上記入力信号の出力を無効化する第２の制御信号が出力される場合、出力信号レベルを第２のレベルに保持する入力信号出力回路と、
を有する出力制御回路。
【請求項４】
上記入力信号が上記第１のレベルを持つ場合、上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する第３の制御信号を出力し、上記入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して、上記第３の制御信号の状態を保持する第３の制御信号出力回路を有し、
上記入力信号出力回路は、上記入力信号の出力が有効化された状態において上記第３の制御信号出力回路から上記入力信号の出力を無効化する第３の制御信号が出力される場合、出力信号レベルを上記第１のレベルに保持する、
請求項３に記載の出力制御回路。
【請求項５】
上記入力信号が上記第２のレベルを持つ場合、上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する第４の制御信号を出力し、上記入力信号の上記第２のレベルから上記第１のレベルへのレベル変化に同期して、上記第４の制御信号の状態を保持する第４の制御信号出力回路を有し、
上記第１の制御信号出力回路は、上記第４の制御信号に応じて上記入力信号の出力を有効化または無効化する上記第１の制御信号を出力し、
上記第３の制御信号出力回路は、上記第４の制御信号に応じて上記入力信号の出力を有効化または無効化する上記第３の制御信号を出力する、
請求項４に記載の出力制御回路。
【請求項６】
上記第１の制御信号出力回路は、上記出力制御信号が上記入力信号の出力を有効化する信号の場合、上記入力信号の出力を有効化する上記第１の制御信号を出力し、
上記第４の制御信号出力回路は、上記第２の制御信号が上記入力信号の出力を無効化する信号の場合、上記入力信号の出力の無効化する上記第４の制御信号を出力し、上記第２の制御信号が上記入力信号の出力を有効化する信号の場合、上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する上記第４の制御信号を出力する、
請求項５に記載の出力制御回路。
【請求項７】
上記入力信号が上記第１のレベルを持つ場合、上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する第５の制御信号を出力し、上記入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して、上記第５の制御信号の状態を保持する第５の制御信号出力回路と、
上記入力信号が上記第２のレベルを持つ場合、上記第５の制御信号に応じて上記入力信号の出力を有効化または無効化する第６の制御信号を出力し、上記入力信号の上記第２のレベルから上記第１のレベルへのレベル変化に同期して、上記第６の制御信号の状態を保持する第６の制御信号出力回路と、
上記第５の制御信号に応じて上記入力信号の出力を有効化または無効化する第７の制御信号を、上記基準クロック信号に同期して出力する第７の制御信号出力回路とを有し、
上記入力信号出力回路は、上記第６の制御信号または上記第７の制御信号が上記入力信号の出力を無効化する信号の場合、出力信号レベルを上記第２のレベルに保持する、
請求項５に記載の出力制御回路。
【請求項８】
上記第７の制御信号出力回路は、上記出力制御信号が上記入力信号の出力を有効化する信号であり、かつ、上記第６の制御信号が上記入力信号の出力を無効化する信号の場合、上記入力信号の出力を有効化する上記第７の制御信号を出力し、
上記第４の制御信号出力回路は、上記第２の制御信号または上記第７の制御信号が上記入力信号の出力を無効化する信号の場合、上記入力信号の出力の無効化する上記第４の制御信号を出力し、上記第２の制御信号および上記第７の制御信号が上記入力信号の出力を有効化する信号の場合、上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する上記第４の制御信号を出力し、
上記第５の制御信号出力回路は、上記第２の制御信号または上記第７の制御信号が上記入力信号の出力を無効化する信号の場合、上記入力信号の出力の無効化する上記第５の制御信号を出力し、上記第２の制御信号および上記第７の制御信号が上記入力信号の出力を有効化する信号の場合、上記出力制御信号に応じて上記入力信号の出力を有効化または無効化する上記第５の制御信号を出力する、
請求項７に記載の出力制御回路。
【請求項９】
複数の入力信号、当該複数の入力信号の中から一の入力信号を選択するための選択信号、およびそれぞれの入力信号の選択を有効化または無効化するためのイネーブル信号を入力し、上記選択信号において選択され、かつ上記イネーブル信号において選択が有効化された入力信号を選択して出力するとともに、信号の選択状態を示す状態信号を出力する信号出力回路であって、出力中の入力信号とは異なる新たな入力信号が上記選択信号において選択された場合、当該出力中の入力信号を所定のレベルに保持した後に、全ての入力信号が選択されていないことを示す上記状態信号を出力し、当該出力した状態信号に応じて当該新たな入力信号の選択を有効化するイネーブル信号が入力された場合、当該イネーブル信号が入力された時点から所定期間が経過した後に、当該新たな入力信号を選択して出力し、当該新たな入力信号が選択中であることを示す上記状態信号を出力する信号出力回路と、
全ての入力信号が選択されていないことを示す上記状態信号に応じて、全ての入力信号の選択を有効化する上記イネーブル信号を生成し、１つまたは複数の入力信号が選択中であることを示す上記状態信号に応じて、当該状態信号で選択中とされた入力信号の選択を有効化するとともに、当該状態信号で選択中とされていない入力信号の選択を無効化する上記イネーブル信号を生成するイネーブル信号生成回路と
を有する信号選択回路。
【請求項１０】
上記信号出力回路は、
上記複数の入力信号に対応した複数の出力制御回路であって、
対応する入力信号が上記選択信号において選択され、かつ当該入力信号の選択が上記イネーブル信号において有効化された場合に当該入力信号の出力を有効化し、当該入力信号が上記選択信号において選択されず、または当該入力信号の選択が上記イネーブル信号において無効化された場合に当該入力信号の出力を無効化する出力制御信号を生成する出力制御信号生成回路と、
上記出力制御信号に応じて当該入力信号を有効化又は無効化する制御信号を、当該入力信号の第２のレベルから第１のレベルへのレベル変化に同期して出力する制御信号出力回路と、
上記制御信号出力回路から当該入力信号の出力を有効化する制御信号が出力された場合、当該入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して当該入力信号を出力し、上記制御信号出力回路から当該入力信号の出力を無効化する制御信号が出力された場合、当該入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して出力信号レベルを上記第２のレベルに保持する入力信号出力回路と、
上記入力信号出力回路から当該入力信号が出力された場合に当該入力信号が選択されたことを示す上記状態信号を出力し、上記入力信号出力回路の出力信号レベルが上記第２のレベルに保持された場合に当該入力信号が選択されていないことを示す上記状態信号を出力する状態信号出力回路と
をそれぞれ含んだ複数の出力制御回路と、
上記複数の出力制御回路の入力信号出力回路から出力される複数の信号の信号レベルが全て上記第２のレベルの場合、上記第２のレベルの信号を出力し、当該複数の信号に上記第１のレベルの信号が含まれる場合、上記第１のレベルの信号を出力する論理和回路とを有する、
請求項９に記載の信号選択回路。
【請求項１１】
上記制御信号出力回路は、
対応する入力信号の選択または非選択に応じた論理値を有する選択信号と、当該入力信号の選択の有効または無効に応じた論理値を有するイネーブル信号との論理積を演算する論理積回路と、
１段または直列接続された複数段の信号保持回路を含み、当該入力信号の上記第２のレベルから上記第１のレベルへのレベル変化に同期して、初段の信号保持回路に入力された上記論理積回路の演算結果を次段の信号保持回路へ順にシフトさせ、終段の信号保持回路に保持された演算結果を上記制御信号として出力するシフト回路とを有する、
請求項１０に記載の信号選択回路。
【請求項１２】
上記状態信号出力回路は、対応する入力信号の上記第２のレベルから上記第１のレベルへのレベル変化に同期して上記制御信号を保持し、当該保持した信号を上記状態信号として出力する、
請求項１０に記載の信号選択回路。
【請求項１３】
上記状態信号出力回路は、対応する入力信号が上記第２のレベルの期間において、上記制御信号を上記状態信号として出力する、
請求項１２に記載の信号選択回路。
【請求項１４】
特定の動作モードを有効化する信号が入力された場合に、
上記信号出力回路に含まれる上記複数の出力制御回路のうちの何れか１つの出力制御回路の入力信号出力回路は、上記制御信号の論理値に関わらず、当該出力制御回路に対応した入力信号を出力し、
上記信号出力回路に含まれる残りの出力制御回路の入力信号出力回路は、上記制御信号の論理値に関わらず、上記第２のレベルの信号を出力する、
請求項１０に記載の信号選択回路。
【請求項１５】
複数の入力信号の中から一の入力信号を選択して出力する信号選択方法であって、
出力中の入力信号とは異なる新たな入力信号が選択された場合、上記出力中の入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、出力信号レベルを上記第２のレベルに保持する第１のステップと、
上記出力信号レベルの保持後に、上記新たな入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して、上記新たな入力信号を出力する第２のステップと
を有する信号選択方法。
【請求項１６】
上記第１のステップにおいて、上記新たな入力信号が選択された場合、上記出力中の入力信号の上記第２のレベルから上記第１のレベルへのレベル変化が所定回数だけ反復されるのを待ってから、上記出力中の入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して、出力信号レベルを上記第２のレベルに保持し、
上記第２のステップにおいて、上記出力信号レベルの保持後に、上記新たな入力信号の上記第２のレベルから上記第１のレベルへのレベル変化が所定回数だけ反復されるのを待ってから、上記新たな入力信号の上記第１のレベルから上記第２のレベルへのレベル変化に同期して、上記新たな入力信号を出力する、
請求項１５の記載の信号選択方法。
【請求項１７】
複数の入力信号の中から一の入力信号を選択して出力する信号選択方法であって、
出力中の入力信号とは異なる新たな入力信号が選択されたときに上記出力中の入力信号が第２のレベルを持つ場合、上記出力中の入力信号の上記第２のレベルから第１のレベルへのレベル変化、または、入力される基準クロック信号に同期して、出力信号レベルを上記第１のレベルに保持する第１のステップと、
出力信号レベルを上記第１のレベルに保持した後、上記基準クロック信号に同期して、出力信号レベルを上記第２のレベルに保持する第２のステップと、
出力信号レベルを上記第２のレベルに保持した後、上記新たな入力信号のレベル変化に同期して、上記新たな入力信号を出力する第３のステップと
を有する信号選択方法。
【請求項１８】
上記新たな入力信号が選択されたときに上記出力中の入力信号が上記第１のレベルを持つ場合、上記出力中の入力信号の上記第１のレベルから上記第２のレベルへのレベル変化、または、上記基準クロック信号に同期して、出力信号レベルを上記第２のレベルに保持する第４のステップを有する、
請求項１７に記載の信号選択方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の入力信号の中から一の入力信号を選択して出力する信号選択回路とその方法に係り、たとえば、供給される複数のクロック信号の中から一のクロック信号を選択して出力する信号選択回路に関するものである。
【０００２】
【従来の技術】
複数のクロック信号の中から一のクロック信号を選択して出力するクロック信号選択回路として、たとえば図４０に示す回路が知られている（特許文献１を参照）。
このクロック信号選択回路は、フリップフロップＦＦ１〜フリップフロップＦＦ４、ＮＡＮＤ回路ＮＡ１〜ＮＡＮＤ回路ＮＡ３、およびインバータ回路ＩＶ１を有している。
【０００３】
フリップフロップＦＦ１は、クロック信号ＣＫ１の立ち上がりに同期して選択信号ＳＥＬを保持し、保持した信号をＮＡＮＤ回路ＮＡ１に出力する。フリップフロップＦＦ２は、クロック信号ＣＫ１の立ち下がりに同期して選択信号ＳＥＬを保持し、保持した信号をＮＡＮＤ回路ＮＡ１に出力する。ＮＡＮＤ回路ＮＡ１は、フリップフロップＦＦ１およびフリップフロップＦＦ２に保持された信号と、クロック信号ＣＫ１との反転論理積を演算し、演算結果をＮＡＮＤ回路ＮＡ２に出力する。
インバータ回路ＩＶ１は、選択信号ＳＥＬを論理反転させた反転選択信号ＸＳＥＬを出力する。
フリップフロップＦＦ３は、クロック信号ＣＫ２の立ち上がりに同期して反転選択信号ＸＳＥＬを保持し、保持した信号をＮＡＮＤ回路ＮＡ３に出力する。フリップフロップＦＦ４は、クロック信号ＣＫ２の立ち下がりに同期して反転選択信号ＸＳＥＬを保持し、保持した信号をＮＡＮＤ回路ＮＡ３に出力する。ＮＡＮＤ回路ＮＡ３は、フリップフロップＦＦ３およびフリップフロップＦＦ４に保持された信号と、クロック信号ＣＫ２との反転論理積を演算し、演算結果をＮＡＮＤ回路ＮＡ２に出力する。
ＮＡＮＤ回路ＮＡ２は、ＮＡＮＤ回路ＮＡ１およびＮＡＮＤ回路ＮＡ２の出力信号の反転論理積を演算し、演算結果を選択クロック信号ＥＣＫとして出力する。
【０００４】
選択信号ＳＥＬがハイレベルの場合、反転選択信号ＸＳＥＬはローレベルであり、フリップフロップＦＦ３およびフリップフロップＦＦ４にはローレベルの信号が保持されるので、ＮＡＮＤ回路ＮＡ３の出力信号ＸＣＫ２は常にハイレベルになる。また、フリップフロップＦＦ１およびフリップフロップＦＦ２にはハイレベルの信号が保持されるので、クロック信号ＣＫ１はＮＡＮＤ回路ＮＡ１によるゲート回路を通過する。さらにクロック信号ＣＫ１は、出力信号ＸＣＫ２がハイレベルであることからＮＡＮＤ回路ＮＡ３によるゲート回路も通過する。したがってこの場合、選択クロック信号ＥＣＫとしてクロック信号ＣＫ１が出力される。選択信号ＳＥＬがローレベルの場合は、上述とは逆に、選択クロック信号ＥＣＫとしてクロック信号ＣＫ２が出力される。
【０００５】
選択信号ＳＥＬがハイレベルからローレベルへ変化する場合、この変化後に生じるクロック信号ＣＫ１の立ち上がりまたは立ち下がりに同期してフリップフロップＦＦ１またはフリップフロップＦＦ２の何れかにローレベルの信号が保持された時点で、ＮＡＮＤ回路ＮＡ１の出力信号ＸＣＫ１がハイレベルに固定され、クロック信号ＣＫ１の出力が停止される。
また、この選択信号ＳＥＬの変化後に生じるクロック信号ＣＫ２の立ち上がりおよび立ち下がりに同期してフリップフロップＦＦ３およびフリップフロップＦＦ４の両方にハイレベルの信号が保持された時点で、クロック信号ＣＫ２はＮＡＮＤ回路ＮＡ３を通過し、選択クロック信号ＥＣＫとして出力される。
【０００６】
選択信号ＳＥＬがローレベルからハイレベルへ変化する場合、この変化後に生じるクロック信号ＣＫ２の立ち上がりまたは立ち下がりに同期してフリップフロップＦＦ３またはフリップフロップＦＦ４の何れかにローレベルの信号が保持された時点で、ＮＡＮＤ回路ＮＡ３の出力信号ＸＣＫ２がハイレベルに固定され、クロック信号ＣＫ２の出力が停止される。
また、この選択信号ＳＥＬの変化後に生じるクロック信号ＣＫ１の立ち上がりおよび立ち下がりに同期してフリップフロップＦＦ１およびフリップフロップＦＦ２の両方にハイレベルの信号が保持された時点で、クロック信号ＣＫ１はＮＡＮＤ回路ＮＡ１を通過し、選択クロック信号ＥＣＫとして出力される。
【０００７】
このように、選択信号ＳＥＬの変化によってクロック信号の選択が変更されても、選択中のクロック信号から次のクロック信号への切り換えが直ちに行われるのではなく、選択中のクロック信号の立ち上がりまたは立ち下がりを待ってからクロック信号の切り換えが行われるので、クロック信号の波形に欠けが生じることを防止できる。
【０００８】
【特許文献１】
特開平８−３３０９１５号公報（第１図）
【０００９】
【発明が解決しようとする課題】
ところで、通常のフリップフロップでは、入力信号の保持が行われるクロック信号のエッジ（立ち上がりまたは立ち下がり）の前後において、入力信号のレベル変化を禁止する時間（セットアップ時間およびホールド時間）が規定されており、入力信号は一定のレベルに保持されることが要求されている。この規定された時間において入力信号にレベル変化が生じると、フリップフロップに保持された信号が発振してしまうメタステーブルと呼ばれる現象が引き起こされる場合がある。
【００１０】
図４１は、メタステーブルが発生する場合におけるフリップフロップの各信号の波形を示す図である。
図４１（Ａ）〜（Ｃ）は、クロック信号ＣＬＫ、フリップフロップへの入力信号Ｄｉｎ、フリップフロップに保持される信号Ｑｏｕｔの波形をそれぞれ示す。このフリップフロップには、クロック信号ＣＬＫの立ち上がりに同期して入力信号Ｄｉｎが保持され、保持された信号が信号Ｑｏｕｔとして出力される。
図４１（Ａ）および（Ｂ）に示すように、クロック信号ＣＬＫがローレベルからハイレベルに変化する時刻Ｔａと非常に近接した時刻において入力信号Ｄｉｎがローレベルからハイレベルへ変化すると、図４１（ｃ）に示すように、フリップフロップの出力信号Ｑｏｕｔには、時間ＭＴに渡って続く短い周期の振動が発生する。
【００１１】
図４０のクロック信号選択回路では、選択信号ＳＥＬがクロック信号ＣＫ１やクロック信号ＣＫ２に対して非同期に変化するので、選択信号ＳＥＬがこれらのクロック信号のエッジと非常に近接した時点で変化する可能性があり、この場合、フリップフロップＦＦ１〜フリップフロップＦＦ４にはメタステーブルが発生する可能性がある。
たとえば、クロック信号ＣＫ１が選択クロック信号ＥＣＫとして出力されている状態で、選択信号ＳＥＬがハイレベルからローレベルへ変化し、次いでクロック信号ＣＫ１がローレベルからハイレベルへ立ち上がるものとする。この立ち上がりに同期して選択信号ＳＥＬを保持するフリップフロップＦＦ１に上述のメタステーブルが生じると、フリップフロップＦＦ２の出力信号およびクロック信号ＣＫ１はともにハイレベルなので、フリップフロップＦＦ１の出力信号に生じた振動がそのまま選択クロック信号ＥＣＫとして出力されてしまう。たとえば図４１（Ｃ）のような振動が出力されてしまうと、この選択クロック信号ＥＣＫの供給を受ける回路の動作が不安定になってしまうなどの不利益がある。
【００１２】
また、図４０のクロック信号選択回路では、選択中のクロック信号の出力が停止される時点と、新たに選択されたクロック信号がゲート回路を通過してＮＡＮＤ回路ＮＡ２に入力される時点とが互いに独立であるため、選択中のクロック信号の出力が停止される前に、新たに選択されたクロック信号がＮＡＮＤ回路ＮＡ２に入力される場合が起こり得る。この場合、選択クロック信号ＥＣＫは２つのクロック信号（ＣＫ１，ＣＫ２）が論理的に加算された信号になる。加算の結果として、たとえば非常に持続時間の短いローレベルのパルスが生成されてしまうと、これが回路動作に不具合をもたらす原因となる。
【００１３】
さらに、図４０のクロック信号選択回路では、選択中のクロック信号がローレベルからハイレベルへ立ち上がる時点において停止される場合、この立ち上がり時点から僅かに遅れてフリップフロップ（ＦＦ１またはＦＦ３）の出力信号がローレベルへ変化し、ＮＡＮＤ回路（ＮＡ１またはＮＡ２）の出力信号がハイレベルへ変化するので、選択クロック信号ＥＣＫには、持続時間の短いハイレベルのパルスが含まれる。こうしたパルス成分も、回路動作に不具合をもたらす原因となる。
【００１４】
本発明はかかる事情に鑑みてなされたものであり、その目的は、与えられる出力制御信号に応じて、入力信号の出力を有効化または無効化する際に、周期の短い振動成分や持続時間の短いパルス成分が出力信号に含まれることを防止できる出力制御回路を提供することにある。
また、本発明の他の目的は、周期の短い振動成分や持続時間の短いパルス成分が選択後の信号に含まれることを防止できる信号選択回路とその方法を提供することにある。
【００１５】
【課題を解決するための手段】
上記の目的を達成するため、本発明の第１の観点の出力制御回路は、与えられる出力制御信号に応じて、入力信号の出力を有効化または無効化する出力制御回路であって、出力制御信号に応じて入力信号の出力を有効化または無効化する制御信号を、入力信号の第２のレベルから第１のレベルへのレベル変化に同期して出力する制御信号出力回路と、制御信号出力回路から入力信号の出力を有効化する制御信号が出力された場合、入力信号の第１のレベルから第２のレベルへのレベル変化に同期して入力信号を出力し、制御信号出力回路から入力信号の出力を無効化する制御信号が出力された場合、入力信号の第１のレベルから第２のレベルへのレベル変化に同期して出力信号レベルを第２のレベルに保持する入力信号出力回路とを有する。
【００１６】
本発明の第１の観点によれば、出力制御信号に応じて入力信号の出力を有効化または無効化する制御信号が、入力信号の第２のレベルから第１のレベルへのレベル変化に同期して、制御信号出力回路より出力される。入力信号出力回路では、制御信号出力回路から入力信号の出力を有効化する制御信号が出力された場合に、入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、入力信号が出力される。制御信号出力回路から入力信号の出力を無効化する制御信号が出力された場合は、入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、出力信号レベルが第２のレベルに保持される。
【００１７】
また、本発明の第１の観点において、制御信号出力回路は、１段または直列接続された複数段の信号保持回路を含むシフト回路を有しても良い。
上記シフト回路においては、入力信号の第２のレベルから上記第１のレベルへのレベル変化に同期して、初段の信号保持回路に入力された出力制御信号は次段の信号保持回路へ順にシフトされ、終段の信号保持回路に保持された信号が制御信号として出力される。
【００１８】
本発明の第２の観点の出力制御回路は、与えられる出力制御信号に応じて、入力信号の出力を有効化または無効化する出力制御回路であって、出力制御信号に応じて入力信号の出力を有効化または無効化する第１の制御信号を、入力される基準クロック信号に同期して出力する第１の制御信号出力回路と、第１の制御信号に応じて入力信号の出力を有効化または無効化する第２の制御信号を、基準クロック信号に同期して出力する第２の制御信号出力回路と、入力信号の出力が有効化された状態において第１の制御信号出力回路から入力信号の出力を無効化する第１の制御信号が出力される場合、出力信号レベルを第１のレベルに保持し、第２の制御信号出力回路から入力信号の出力を無効化する第２の制御信号が出力される場合、出力信号レベルを第２のレベルに保持する入力信号出力回路とを有する。
【００１９】
本発明の第２の観点によれば、出力制御信号に応じて入力信号の出力を有効化または無効化する第１の制御信号が、基準クロック信号に同期して第１の制御信号出力回路より出力される。この第１の制御信号に応じて入力信号の出力を有効化または無効化する第２の制御信号が、基準クロック信号に同期して、第２の制御信号出力回路より出力される。入力信号出力回路では、入力信号の出力が有効化された状態において第１の制御信号出力回路から入力信号の出力を無効化する第１の制御信号が出力される場合、出力信号レベルが第１のレベルに保持される。また、第２の制御信号出力回路から入力信号の出力を無効化する第２の制御信号が出力される場合に、出力信号レベルが第２のレベルに保持される。
【００２０】
また、本発明の第２の観点の出力制御回路は、第３の制御信号出力回路を有しても良い。
上記第３の制御信号生成回路においては、入力信号が第１のレベルを持つ場合、出力制御信号に応じて入力信号の出力を有効化または無効化する第３の制御信号が出力され、入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、この第３の制御信号の状態が保持される。
この場合、入力信号出力回路において、入力信号の出力が有効化された状態において第３の制御信号出力回路から入力信号の出力を無効化する第３の制御信号が出力される場合に、出力信号レベルが第１のレベルに保持される。
【００２１】
また、本発明の第２の観点の出力制御回路は、第４の制御信号出力回路を有しても良い。
上記第４の制御信号出力回路においては、入力信号が第２のレベルを持つ場合、出力制御信号に応じて入力信号の出力を有効化または無効化する第４の制御信号が出力され、入力信号の第２のレベルから第１のレベルへのレベル変化に同期して、この第４の制御信号の状態が保持される。
この場合、第１の制御信号出力回路においては、第４の制御信号に応じて入力信号の出力を有効化または無効化する第１の制御信号が出力される。また第３の制御信号出力回路においては、第４の制御信号に応じて入力信号の出力を有効化または無効化する第３の制御信号が出力される。
【００２２】
また、本発明の第２の観点の出力制御回路は、第５の制御信号出力回路と、第６の制御信号出力回路と、第７の制御信号出力回路とを有しても良い。
上記第５の制御信号出力回路においては、入力信号が第１のレベルを持つ場合、出力制御信号に応じて入力信号の出力を有効化または無効化する第５の制御信号が出力され、入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、この第５の制御信号の状態が保持される。
上記第６の制御信号出力回路においては、入力信号が第２のレベルを持つ場合、第５の制御信号に応じて入力信号の出力を有効化または無効化する第６の制御信号が出力され、入力信号の第２のレベルから第１のレベルへのレベル変化に同期して、この第６の制御信号の状態が保持される。
上記第７の制御信号出力回路においては、第５の制御信号に応じて入力信号の出力を有効化または無効化する第７の制御信号が、基準クロック信号に同期して出力される。
この場合、入力信号出力回路においては、第６の制御信号または第７の制御信号が入力信号の出力を無効化する信号の場合、出力信号レベルが第２のレベルに保持される。
【００２３】
本発明の第３の観点の信号選択回路は、信号出力回路と、イネーブル信号生成回路とを有する。
上記信号出力回路は、複数の入力信号、当該複数の入力信号の中から一の入力信号を選択するための選択信号、およびそれぞれの入力信号の選択を有効化または無効化するためのイネーブル信号を入力し、選択信号において選択され、かつイネーブル信号において選択が有効化された入力信号を選択して出力するとともに、信号の選択状態を示す状態信号を出力する信号出力回路であって、出力中の入力信号とは異なる新たな入力信号が選択信号において選択された場合、当該出力中の入力信号を所定のレベルに保持した後に、全ての入力信号が選択されていないことを示す上記状態信号を出力し、当該出力した状態信号に応じて当該新たな入力信号の選択を有効化するイネーブル信号が入力された場合、当該イネーブル信号が入力された時点から所定期間が経過した後に、当該新たな入力信号を選択して出力し、当該新たな入力信号が選択中であることを示す状態信号を出力する。
上記イネーブル信号生成回路は、全ての入力信号が選択されていないことを示す状態信号に応じて、全ての入力信号の選択を有効化するイネーブル信号を生成し、１つまたは複数の入力信号が選択中であることを示す状態信号に応じて、当該状態信号で選択中とされた入力信号の選択を有効化するとともに、当該状態信号で選択中とされていない入力信号の選択を無効化するイネーブル信号を生成する。
【００２４】
本発明の第３の観点によれば、出力中の入力信号とは異なる新たな入力信号が選択信号において選択された場合、信号出力回路において、当該出力中の入力信号が所定のレベルに保持され、当該保持後に、全ての入力信号が選択されていないことを示す状態信号が信号出力回路から出力される。この状態信号に応じて、イネーブル信号生成回路では、全ての入力信号の選択を有効化するイネーブル信号が生成される。このイネーブル信号により、当該新たな入力信号の選択が有効化されると、このイネーブル信号が信号出力回路に入力された時点から所定期間が経過した後に、信号出力回路において当該新たな入力信号が選択されて出力され、当該新たな入力信号が選択中であることを示す状態信号が出力される。この状態信号に応じて、イネーブル信号生成回路では、当該新たな入力信号の選択を有効化するとともに、当該状態信号で選択中とされていない入力信号の選択を無効化するイネーブル信号が生成される。
【００２５】
また、本発明の第３の観点の信号選択回路において、信号出力回路は、複数の入力信号に対応した複数の出力制御回路と、論理和回路とを有しても良い。
上記出力制御回路は、出力制御信号生成回路と、制御信号出力回路と、入力信号出力回路と、状態信号出力回路とををそれぞれ含む。
上記出力制御信号生成回路においては、対応する入力信号が選択信号において選択され、かつ当該入力信号の選択がイネーブル信号において有効化された場合に当該入力信号の出力を有効化し、当該入力信号が選択信号において選択されず、または当該入力信号の選択がイネーブル信号において無効化された場合に当該入力信号の出力を無効化する出力制御信号が生成される。
上記制御信号出力回路においては、この生成された出力制御信号に応じて当該入力信号を有効化又は無効化する制御信号が、当該入力信号の第２のレベルから第１のレベルへのレベル変化に同期して出力される。
上記入力信号出力回路においては、制御信号出力回路から当該入力信号の出力を有効化する制御信号が出力された場合、当該入力信号の第１のレベルから第２のレベルへのレベル変化に同期して当該入力信号が出力される。制御信号出力回路から当該入力信号の出力を無効化する制御信号が出力された場合は、当該入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、出力信号レベルが第２のレベルに保持される。
上記状態信号出力回路においては、入力信号出力回路から当該入力信号が出力された場合に当該入力信号が選択されたことを示す状態信号が出力され、入力信号出力回路の出力信号レベルが第２のレベルに保持された場合に当該入力信号が選択されていないことを示す状態信号が出力される。この状態信号は、たとえば、当該入力信号の第１のレベルから第２のレベルへのレベル変化、または第２のレベルから第１のレベルへのレベル変化に同期して出力される。
この複数の出力制御回路の入力信号出力回路から出力される複数の信号の信号レベルが全て第２のレベルの場合、論理和回路からは第２のレベルの信号が出力され、当該複数の信号に第１のレベルの信号が含まれる場合、論理和回路からは第１のレベルの信号が出力される。
【００２６】
本発明の第４の観点の信号選択方法は、複数の入力信号の中から一の入力信号を選択して出力する信号選択方法であって、出力中の入力信号とは異なる新たな入力信号が選択された場合、上記出力中の入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、出力信号レベルを上記第２のレベルに保持する第１のステップと、上記出力信号レベルの保持後に、上記新たな入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、上記新たな入力信号を出力する第２のステップとを有する。
【００２７】
本発明の第４の観点によれば、第１のステップにおいて、出力中の入力信号とは異なる新たな入力信号が選択された場合、出力中の入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、出力信号レベルが第２のレベルに保持される。上記出力信号レベルの保持後、第２のステップにおいて、上記新たな入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、上記新たな入力信号が出力される。
【００２８】
また、本発明の第４の観点は、第１のステップにおいて、上記新たな入力信号が選択された場合、出力中の入力信号の第２のレベルから第１のレベルへのレベル変化が所定回数だけ反復されるのを待ってから、出力中の入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、出力信号レベルを第２のレベルに保持しても良い。また、第２のステップにおいて、上記出力信号レベルの保持後に、上記新たな入力信号の第２のレベルから第１のレベルへのレベル変化が所定回数だけ反復されるのを待ってから、上記新たな入力信号の第１のレベルから第２のレベルへのレベル変化に同期して、上記新たな入力信号を出力しても良い。
【００２９】
本発明の第５の観点の信号選択方法は、複数の入力信号の中から一の入力信号を選択して出力する信号選択方法であって、出力中の入力信号とは異なる新たな入力信号が選択されたときに出力中の入力信号が第２のレベルを持つ場合、出力中の入力信号の第２のレベルから第１のレベルへのレベル変化、または、入力される基準クロック信号に同期して、出力信号レベルを第１のレベルに保持する第１のステップと、出力信号レベルを第１のレベルに保持した後、基準クロック信号に同期して、出力信号レベルを第２のレベルに保持する第２のステップと、出力信号レベルを第２のレベルに保持した後、上記新たな入力信号のレベル変化に同期して、上記新たな入力信号を出力する第３のステップとを有する。
【００３０】
本発明の第５の観点によれば、第１のステップにおいて、出力中の入力信号とは異なる新たな入力信号が選択されたときに出力中の入力信号が第２のレベルを持つ場合、出力中の入力信号の第２のレベルから第１のレベルへのレベル変化、または、入力される基準クロック信号に同期して、出力信号レベルが第１のレベルに保持される。出力信号レベルが第１のレベルに保持された後、第２のステップにおいて、基準クロック信号に同期して、出力信号レベルが第２のレベルに保持される。出力信号レベルが第２のレベルに保持された後、第３のステップにおいて、上記新たな入力信号のレベル変化に同期して、上記新たな入力信号が出力される。
【００３１】
また、本発明の第５の観点は、上記新たな入力信号が選択されたときに出力中の入力信号が第１のレベルを持つ場合、出力中の入力信号の第１のレベルから第２のレベルへのレベル変化、または、基準クロック信号に同期して、出力信号レベルを第２のレベルに保持する第４のステップを有しても良い。
【００３２】
【発明の実施の形態】
本発明の１３の実施形態について、図面を参照して説明する。
＜第１の実施形態＞
図１は、本発明の第１の実施形態に係るクロック信号選択回路の構成の一例を示すブロック図である。
図１に示すクロック信号選択回路は、クロック信号出力回路１とイネーブル信号生成回路２とを有する。
クロック信号出力回路１は、本発明の信号出力回路の一実施形態である。
イネーブル信号生成回路２は、本発明のイネーブル信号生成回路の一実施形態である。
【００３３】
クロック信号出力回路１は、ｎ（ｎは１より大きい任意の整数を示す）本のクロック信号（ＣＫ１〜ＣＫｎ）と、これらのクロック信号の中から一のクロック信号を選択するための選択信号ＳＥＬと、それぞれのクロック信号の選択を有効化または無効化するためのイネーブル信号ＥＮとを入力する。そして、選択信号ＳＥＬにおいて選択され、かつ、イネーブル信号ＥＮにおいてその選択が有効化されたクロック信号を、選択クロック信号ＥＣＫとして出力する。また、クロック信号の選択状態に関する情報、すなわち選択クロック信号ＥＣＫとして現在どのクロック信号（ＣＫ１〜ＣＫｎ）が出力されているのかを示す情報を、状態信号ＳＴとして出力する。
【００３４】
出力中のクロック信号とは異なる新たなクロック信号が選択信号ＳＥＬにおいて選択された場合、出力中のクロック信号のレベルを所定のレベルに保持する。たとえば、選択クロック信号ＥＣＫがハイレベルからローレベルへ立ち下がる時点に同期して、この選択クロック信号ＥＣＫをローレベルに保持する。そして、このレベル保持の後に、全てのクロック信号が選択されていないことを示す状態信号ＳＴを出力する。
次いで、選択信号ＳＥＬによる新たなクロック信号の選択を有効化するイネーブル信号がイネーブル信号生成回路２において生成された場合、このイネーブル信号が入力された時点から所定期間が経過した後に、新たに選択されたクロック信号を選択クロック信号ＥＣＫとして出力する。たとえば、新たに選択されたクロック信号のハイレベルからローレベルへの立ち下がりに同期して、このクロック信号を選択クロック信号ＥＣＫとして出力する。そして、このクロック信号が選択中であることを示す状態信号ＳＴを出力する。
【００３５】
イネーブル信号生成回路２は、全てのクロック信号が選択されていないことを示す状態信号ＳＴに応じて、全てのクロック信号の選択を有効化するイネーブル信号ＥＮを生成する。また、１つまたは複数のクロック信号が選択中であることを示す状態信号ＳＴに応じて、この状態信号ＳＴで選択中とされたクロック信号の選択を有効化するとともに、この状態信号ＳＴで選択中とされていないクロック信号の選択を無効化するイネーブル信号ＥＮを生成する。
【００３６】
図１のクロック信号選択回路の動作について、図２のタイミングチャートを参照しながら説明する。図２のタイミングチャートには、クロック信号ＣＫ１からクロック信号ＣＫ２へのクロック信号の切り換えが起こる場合の各信号のタイミングの一例が図解されている。
図２（Ａ）〜図２（Ｆ）は、クロック信号ＣＫ１、クロック信号ＣＫ２、選択信号ＳＥＬ、イネーブル信号ＥＮ、状態信号ＳＴ、選択クロック信号ＥＣＫの信号変化をそれぞれ示す。
【００３７】
図２の初期状態において、選択信号ＳＥＬはクロック信号ＣＫ１を選択しており、イネーブル信号ＥＮはクロック信号ＣＫ１の選択を有効化している。またこの状態において、クロック信号出力回路１からは、選択クロック信号ＥＣＫとしてクロック信号ＣＫ１が出力され、状態信号ＳＴとしてクロック信号ＣＫ１が選択中であることを示す信号が出力されている。
【００３８】
時刻Ｔ１：
選択信号ＳＥＬによるクロック信号の選択が、クロック信号ＣＫ１からクロック信号ＣＫ２へ変更される。
【００３９】
時刻Ｔ２：
選択信号ＳＥＬにおいてクロック信号ＣＫ１が非選択に変更されると、クロック信号ＣＫ１がハイレベルからローレベルへ立ち下がる時刻Ｔ２において、選択クロック信号ＥＣＫはローレベルに保持される。
【００４０】
時刻Ｔ３：
選択クロック信号ＥＣＫがローレベルに保持された後、たとえばクロックＣＫ１が立ち上がる時刻Ｔ３において、全てのクロック信号が選択されていないことを示す状態信号ＳＴがクロック信号出力回路１より出力される。この状態信号ＳＴを受けて、イネーブル信号生成回路２では、全てのクロック信号の選択を有効化するイネーブル信号ＥＮが生成される。
【００４１】
時刻Ｔ４：
イネーブル信号ＥＮによって全てのクロック信号の選択が有効化されることから、選択信号ＳＥＬによるクロック信号ＣＫ２の選択も有効化される。このため、クロック信号ＣＫ２がハイレベルからローレベルへの立ち下がる時刻Ｔ４において、クロック信号ＣＫ２が選択クロック信号ＥＣＫとして出力される。
【００４２】
時刻Ｔ５：
クロック信号ＣＫ２が選択クロック信号ＥＣＫとして出力された後、たとえばクロック信号ＣＫ２がローレベルからハイレベルへ立ち上がる時刻Ｔ５において、クロック信号ＣＫ２が選択中であることを示す状態信号ＳＴがクロック信号出力回路１より出力される。この状態信号ＳＴを受けて、イネーブル信号生成回路２では、クロック信号ＣＫ１の選択を有効化するとともに他のクロック信号の選択を無効化するイネーブル信号ＥＮが生成される。
【００４３】
以上説明したように、図１のクロック信号選択回路によれば、選択信号ＳＥＬによるクロック信号の選択が変更された場合、出力中のクロック信号の第１のレベル（たとえばハイレベル）から第２のレベル（たとえばローレベル）へのレベル変化に同期して、選択クロック信号ＥＣＫが第２のレベルに保持され、クロック信号の出力が停止される。したがって、たとえば図４０のクロック信号選択回路のように、クロック信号の出力停止時において持続時間の短いパルスがクロック信号の出力に発生することを防止できる。
【００４４】
また、クロック信号の出力が停止された後、全てのクロック信号が選択されていないことを示す状態信号ＳＴが出力されるのを待ってから、新たに選択されたクロック信号の出力が有効化されるので、たとえば図４０のクロック信号選択回路のように、複数のクロック信号が同時に出力されてしまう事態を防止できる。
【００４５】
通常の動作において、クロック信号出力回路１から出力される状態信号ＳＴは、一のクロック信号が選択中である状態か、あるいは全てのクロック信号が選択されていない状態の何れかを示している。したがって、この状態信号ＳＴに応じて生成されるイネーブル信号ＥＮは、一のクロック信号の選択を有効化するか、または全てのクロック信号の選択を有効化する。
【００４６】
一方、状態信号ＳＴが、たとえばノイズなどの影響を受けて、本来は１つであるにもかかわらず、複数のクロック信号を選択中であるかのような状態信号ＳＴに変化してしまうと、この状態信号ＳＴに応じて生成されるイネーブル信号ＥＮは、状態信号ＳＴにおいて選択中とされたクロック信号の選択を全て有効化してしまう。しかしながら、選択信号ＳＥＬでは一のクロック信号のみが選択されているので、仮に複数のクロック信号の選択が有効化されたとしても、選択信号ＳＥＬにおいて選択されていないクロック信号が誤って出力されてしまうことはない。
また、一のクロック信号の選択を示す状態信号ＳＴが、ノイズなどの影響によって、全クロック信号の無選択状態を示す状態信号ＳＴに変化してしまったとしても、この状態信号ＳＴに応じて生成されるイネーブル信号ＥＮは全てのクロック信号の選択を有効化するので、選択信号ＳＥＬで選択されたクロック信号は通常どおり出力される。
このように、図１のクロック信号選択回路によれば、ノイズなどの影響により状態信号ＳＴが変化した場合でも、回路の誤動作を効果的に防止することができる。
【００４７】
複数のクロック信号から一のクロック信号を安定して選択することができ、また、選択されたクロック信号に持続時間の短いパルスが発生することを防止できるので、たとえば、処理の負荷に応じて複数ステップのクロック周波数を切り換えて低消費電力化を図る処理装置などにこのクロック信号選択回路を適用することで、動作の安定性を向上することができる。
また、たとえば、複数の異なるクロック周波数で動作する回路の間のインターフェースを行う回路にこのクロック信号選択回路を適用することで、安定した信号の受け渡しが可能になる。
【００４８】
＜第２の実施形態＞
次に、本発明の第２の実施形態について述べる。第２の実施形態では、第１の実施形態の構成がより具体化される。
【００４９】
図３は、本発明の第２の実施形態に係るクロック信号選択回路の構成の一例を示すブロック図である。
図３に示すクロック信号選択回路は、出力制御回路１１〜出力制御回路１ｎ、イネーブル信号生成回路２Ａ、デコード回路３、およびＯＲ回路４を有する。
出力制御回路１１〜出力制御回路１ｎは、本発明の出力制御回路の一実施形態である。
イネーブル信号生成回路２Ａは、本発明のイネーブル信号生成回路の一実施形態である。
ＯＲ回路は、本発明の論理和回路の一実施形態である。
【００５０】
（出力制御回路１ｍ）
出力制御回路１ｍ（ｍは、１≦ｍ≦ｎを満たす任意の整数を示す）は、クロック信号ＣＫｍと、このクロック信号ＣＫｍを選択するための選択信号ＳＥＬｍと、クロック信号ＣＫｍの選択を有効化または無効化するためのイネーブル信号ＥＮｍとを入力する。選択信号ＳＥＬｍにおいて選択され、かつイネーブル信号ＥＮｍにおいてこの選択が有効化された場合には、出力信号ＥＣＫｍとしてクロック信号ＣＫｍを出力するとともに、クロック信号ＣＫｍが出力中であることを示す状態信号ＳＴｍを出力する。その逆に、選択信号ＳＥＬｍにおいて選択されない場合、またはイネーブル信号ＥＮｍにおいてこの選択が無効化された場合には、出力信号ＥＣＫｍを特定のレベル、たとえばローレベルに保持するとともに、クロック信号ＣＫｍが出力されていないことを示す状態信号ＳＴｍを出力する。
【００５１】
クロック信号ＣＫｍを出力信号ＥＣＫｍとして出力していない場合、すなわ出力信号ＥＣＫｍをローレベルに保持している場合において、選択信号ＳＥＬｍが非選択状態から選択状態に変化するとともにイネーブル信号ＥＮｍが無効状態から有効状態に変化すると、クロック信号ＣＫｍのハイレベルからローレベルへの立ち下がりに同期して、クロック信号ＣＫｍを出力する。クロック信号ＣＫｍが出力された後、たとえばクロック信号のローレベルからハイレベルへの立ち上がりに同期して、クロック信号ＣＫｍが出力中であることを示す状態信号ＳＴｍを出力する。
【００５２】
クロック信号ＣＫｍが出力信号ＥＣＫｍとして出力されている場合において、選択信号ＳＥＬｍが選択状態から非選択状態に変化すると、クロック信号Ｃｋｍのハイレベルからローレベルへの立ち下がりに同期して、出力信号ＥＣＫｍをローレベルに保持し、クロック信号ＣＫｍの出力を停止する。クロック信号ＣＫｍの出力が停止された後、たとえばクロック信号のローレベルからハイレベルへの立ち上がりに同期して、クロック信号ＣＫｍが出力されていないことを示す状態信号ＳＴｍを出力する。
【００５３】
図４は、図３のクロック信号選択回路における出力制御回路１ｍの構成の一例を示す回路図である。
図４に示す出力制御回路１ｍは、ＡＮＤ回路１１ｍ、フリップフロップ１２ｍ、フリップフロップ１３ｍ、およびクロックイネーブラ１４ｍを有する。
ＡＮＤ回路１１ｍおよびフリップフロップ１２ｍを含むユニットは、本発明の制御信号出力回路の一実施形態である。
フリップフロップ１３ｍは、本発明の状態信号出力回路の一実施形態である。
クロックイネーブラ１４ｍは、本発明の入力信号出力回路の一実施形態である。
【００５４】
イネーブル信号ＥＮｍおよび選択信号ＳＥＬｍの論理積がＡＮＤ回路１１ｍにおいて演算され、その演算結果の信号ＡＮＤｍがフリップフロップ１２ｍへ出力される。フリップフロップ１２ｍでは、信号ＡＮＤｍがクロック信号ＣＫｍの立ち上がりに同期して保持され、保持された信号ＣＥｍがフリップフロップ１３ｍおよびクロックイネーブラ１４ｍへ出力される。フリップフロップ１３ｍでは、信号ＣＥｍがクロック信号ＣＫｍの立ち上がりに同期して保持され、保持された信号が状態信号ＳＴｍとして出力される。
なお、図４の例では、初期化信号ＣＬＲとしてハイレベルの信号が入力された場合、各フリップフロップ（１２ｍ、１３ｍ）の保持信号は何れもローレベルに初期化される。
【００５５】
図５は、クロックイネーブラ１４ｍの構成の一例を示す回路図である。
図５の例に示すクロックイネーブラ１４ｍは、ラッチ回路１４１ｍおよびＡＮＤ回路１４２ｍを有する。
ラッチ回路１４１ｍには信号ＣＥｍが入力される。クロック信号ＣＫｍがローレベルの場合、ラッチ回路１４１ｍの出力信号は信号ＣＥｍと等しくなる。クロック信号ＣＫｍがローレベルからハイレベルへ変化すると、このクロック信号ＣＫｍの立ち上がりに同期して信号ＣＥｍがラッチ回路１４１ｍに保持され、クロック信号ＣＫｍがハイレベルの期間において、この保持された信号がラッチ回路１４１ｍから出力される。ＡＮＤ回路１４２ｍには、ラッチ回路１４１ｍの出力信号とクロック信号ＣＫｍとが入力され、その論理積が出力信号ＥＣＫｍとして出力される。
【００５６】
信号ＣＥｍがハイレベルの場合、ラッチ回路１４１ｍの出力信号はハイレベルになり、出力信号ＥＣＫｍとしてクロック信号ＣＫｍが出力される。信号ＣＥｍがハイレベルからローレベルへ変化すると、クロック信号ＣＫｍの立ち下がりに同期してラッチ回路１４１ｍの出力信号がローレベルになり、出力信号ＥＣＫｍがローレベルに変化する。
信号ＣＥｍがローレベルの場合、ラッチ回路１４の出力信号はローレベルになり、出力信号ＥＣＫｍはローレベルに保持される。信号ＣＥｍがローレベルからハイレベルへ変化すると、クロック信号ＣＫｍの立ち下がりに同期してラッチ回路１４１ｍの出力信号がハイレベルになり、クロック信号ＣＫｍの出力が開始される。
【００５７】
図４および図５の構成を有する出力制御回路１ｍの動作を説明する。
この例においては、選択信号ＳＥＬｍのハイレベル、ローレベルがそれぞれクロック信号ＣＫｍの選択、非選択を示しており、また、イネーブル信号ＥＮｍのハイレベル、ローレベルがそれぞれ選択の有効化、無効化を示している。
選択信号ＳＥＬｍがハイレベルで、かつイネーブル信号ＥＮｍがハイレベルの場合、出力信号ＥＣＫｍとしてクロック信号ＣＫｍが出力されるとともに、クロック信号ＣＫｍが出力中であることを示すハイレベルの状態信号ＳＴｍが出力される。その逆に、選択信号ＳＥＬｍがローレベルの場合、またはイネーブル信号ＥＮｍがローレベルの場合には、出力信号ＥＣＫｍがローレベルに保持されるとともに、クロック信号ＣＫｍが出力されていないことを示すローレベルの状態信号ＳＴｍが出力される。
【００５８】
出力信号ＥＣＫｍがローレベルに保持されている場合において、選択信号ＳＥＬｍがローレベルからハイレベルに変化するとともにイネーブル信号ＥＮｍがローレベルからハイレベルに変化すると、ＡＮＤ回路１１ｍの出力信号ＡＮＤｍがハイレベルになり、これがクロック信号ＣＫｍの立ち上がりに同期してフリップフロップ１２ｍに保持され、信号ＣＥｍがハイレベルになる。信号ＣＥｍがハイレベルになると、クロック信号ＣＫｍの立ち下がりに同期して、クロックイネーブラ１４ｍからクロック信号ＣＫｍが選択クロック信号ＥＣＫｍとして出力される。クロック信号ＣＫｍが出力された後、クロック信号ＣＫｍの立ち上がりに同期して、ハイレベルの信号ＣＥｍがフリップフロップ１３ｍに保持され、クロック信号ＣＫｍが出力中であることを示すハイレベルの状態信号ＳＴｍとして出力される。
【００５９】
クロック信号ＣＫｍが出力信号ＥＣＫｍとして出力されている場合において、選択信号ＳＥＬｍがハイレベルからローレベルに変化すると、ＡＮＤ回路１１ｍの出力信号ＡＮＤｍがローレベルになり、これがクロック信号の立ち上がりに同期してフリップフロップ１２ｍに保持され、信号ＣＥｍがローレベルになる。信号ＣＥｍがローレベルになると、クロック信号Ｃｋｍの立ち下がりに同期して、クロックイネーブラ１４ｍの出力信号すなわち選択クロック信号ＥＣＫｍがローレベルに保持され、クロック信号ＣＫｍの出力が停止される。クロック信号ＣＫｍの出力が停止された後、クロック信号ＣＫｍの立ち上がりに同期して、ローレベルの信号ＣＥｍがフリップフロップ１３ｍに保持され、クロック信号ＣＫｍが出力されていないことを示すローレベルの状態信号ＳＴｍとして出力される。
【００６０】
（イネーブル信号生成回路２Ａ）
イネーブル信号生成回路２Ａは、図１における状態信号ＳＴに対応したｎ本の状態信号（ＳＴ１〜ＳＴｎ）を入力し、これに応じて、図１におけるイネーブル信号ＥＮに対応したｎ本のイネーブル信号（ＥＮ１〜ＥＮｎ）を出力する。全てのクロック信号が選択されていない状態として、たとえば状態信号ＳＴ１〜状態信号ＳＴｎが全てローレベルになった場合、全てのクロック信号の選択が有効化されるように、たとえばイネーブル信号ＥＮ１〜イネーブル信号ＥＮｎを全てハイレベルに設定する。また、状態信号ＳＴ１〜状態信号ＳＴｎのうちの幾つかがクロック信号の選択中を示すハイレベルになった場合には、選択中とされたクロック信号に対応するイネーブル信号をハイレベルに設定し、選択中とされていないクロック信号に対応するイネーブル信号をローレベルに設定する。
【００６１】
状態信号ＳＴ１〜状態信号ＳＴｎがそれぞれ論理値Ｓ１〜論理値Ｓｎを有し、イネーブル信号ＥＮｍがそれぞれ論理値Ｅｍを有するものとした場合、次の論理式が成立する。
【００６２】
【数１】
2004166194.tif 000003
【００６３】
図６は、３つの状態信号に対応した３つのイネーブル信号を生成するイネーブル信号生成回路の一具体例を示す回路図である。
図６に示すイネーブル信号生成回路２Ｂは、ＯＲ回路２１〜ＯＲ回路２３およびＮＯＲ回路２４〜ＮＯＲ回路２６を有する。
【００６４】
状態信号ＳＴ２および状態信号ＳＴ３の反転論理和がＮＯＲ回路２４において演算され、この演算結果と状態信号ＳＴ１との論理和がＯＲ回路２１において演算されて、イネーブル信号ＥＮ１が生成される。
状態信号ＳＴ１および状態信号ＳＴ３の反転論理和がＮＯＲ回路２５において演算され、この演算結果と状態信号ＳＴ２との論理和がＯＲ回路２２において演算されて、イネーブル信号ＥＮ２が生成される。
状態信号ＳＴ１および状態信号ＳＴ２の反転論理和がＮＯＲ回路２６において演算され、この演算結果と状態信号ＳＴ３との論理和がＯＲ回路２３において演算されて、イネーブル信号ＥＮ３が生成される。
【００６５】
（デコード回路３）
デコード回路３は、入力される選択信号ＳＥＬに応じて、各クロック信号の選択または非選択を示す１ビットの選択信号（ＳＥＬ１〜ＳＥＬｎ）を生成する。
【００６６】
（ＯＲ回路４）
ＯＲ回路４は、出力制御回路１１〜出力制御回路１ｎから出力される出力信号ＥＣＫ１〜出力信号ＥＣＫｎの論理和を演算し、演算結果を選択クロック信号ＥＣＫとして出力する。すなわち、出力信号ＥＣＫ１〜出力信号ＥＣＫｎが全てローレベルの場合にローレベルの選択クロック信号ＥＣＫを出力し、出力信号ＥＣＫ１〜出力信号ＥＣＫｎの何れかがハイレベルの場合にハイレベルの選択クロック信号ＥＣＫを出力する。
【００６７】
ここで、上述した構成を有する図３のクロック信号選択回路の動作について、入力されるクロック信号の数が２つの場合を例として、図７および図８を参照しながら説明する。
図７は、入力されるクロック信号の数が２つの場合における、図３のクロック信号選択回路の一具体例を示す回路図である。
図７に示すクロック信号選択回路は、出力制御回路１１、出力制御回路１２、イネーブル信号生成回路２Ｃ、デコード回路３Ａ、およびＯＲ回路４Ａを有する。ただし、図３と図７の同一符号は同一の構成要素を示す。
【００６８】
イネーブル信号生成回路２Ｃは、２つの状態信号（ＳＴ１，ＳＴ２）に対応した２つのイネーブル信号（ＥＮ１，ＥＮ２）を生成する。図７に示すように、２つのＯＲ回路（２１，２２）と２つのインバータ回路（２７，２８）を有している。状態信号ＳＴ２をインバータ回路２７において論理反転させた信号と状態信号ＳＴ１とがＯＲ回路２１において論理和演算されて、イネーブル信号ＥＮ１が生成される。また、状態信号ＳＴ１をインバータ回路２８において論理反転させた信号と状態信号ＳＴ２とがＯＲ回路２２において論理和演算されて、イネーブル信号ＥＮ１が生成される。
【００６９】
デコード回路３Ａは、インバータ回路３１を有しており、１ビットの選択信号ＳＥＬを入力して、これに応じた１ビットの選択信号ＳＥＬ１および選択信号ＳＥＬ２を出力する。選択信号ＳＥＬ１は選択信号ＳＥＬと同一の信号であり、選択信号ＳＥＬ２は選択信号ＳＥＬをインバータ回路３１において論理反転させた信号である。
【００７０】
ＯＲ回路４Ａは、出力制御回路１１および出力制御回路１２から出力される出力信号ＥＣＫ１および出力信号ＥＣＫ２の論理和を演算し、演算結果を選択信号ＥＣＫとして出力する。
【００７１】
図８は、図７に示す２入力のクロック信号選択回路においてクロック信号の切り換えが起こる場合の各信号のタイミングの一例を示すタイミングチャートである。
図８（Ａ）〜図８（Ｎ）は、クロック信号ＣＫ１、クロック信号ＣＫ２、選択信号ＳＥＬ、選択信号ＳＥＬ１、選択信号ＳＥＬ２、ＡＮＤ回路１１１の出力信号ＡＮＤ１、ＡＮＤ回路１１２の出力信号ＡＮＤ２、フリップフロップ１２１の出力信号ＣＥ１、フリップフロップ１２２の出力信号ＣＥ２、状態信号ＳＴ１、状態信号ＳＴ２、出力制御回路１１の出力信号ＥＣＫ１、出力制御回路１２の出力信号ＥＣＫ２、選択クロック信号ＳＣＫの信号変化をそれぞれ示す。
【００７２】
図８の初期状態において、選択信号ＳＥＬがハイレベルになっていることから、選択信号ＳＥＬ１がハイレベル、選択信号ＳＥＬ２がローレベルになっており、選択クロック信号ＥＣＫとしてクロック信号ＣＫ１が出力されている。また、状態信号ＳＴ１がハイレベル、状態信号ＳＴ２がローレベルになっており、これに応じてイネーブル信号ＥＮ１がハイレベル、イネーブル信号ＥＮ２がローレベルになっている。
【００７３】
時刻Ｔ５：
時刻Ｔ５において選択信号ＳＥＬがローレベルに変化し、これに応じて選択信号ＳＥＬ１がローレベルに変化すると、ＡＮＤ回路１１１の出力信号ＡＮＤ１はローレベルに変化する。
【００７４】
時刻Ｔ６：
ローレベルに変化した信号ＡＮＤ１は、クロック信号ＣＫ１の立ち上がり（時刻Ｔ６）においてフリップフロップ１２１に保持され、フリップフロップ１２１の出力信号ＣＥ１はローレベルに変化する。
【００７５】
時刻Ｔ７：
信号ＣＥ１がローレベルに変化すると、クロック信号ＣＫ１の立ち下がり（時刻Ｔ７）において、クロックイネーブラ１４１の出力信号ＥＣＫ１はローレベルに保持される。
【００７６】
時刻Ｔ８：
またローレベルの信号ＣＥ１は、時刻Ｔ７の後におけるクロック信号ＣＫ１の立ち上がり（時刻Ｔ８）においてフリップフロップ１３１に保持され、状態信号ＳＴ１はローレベルに変化する。これにより、状態信号ＳＴ１および状態信号ＳＴ２が何れもローレベルになるので、イネーブル信号ＥＮ１およびイネーブル信号ＥＮ２は何れもハイレベルになる。イネーブル信号ＥＮ２がハイレベルになると、選択信号ＳＥＬ２がハイレベルなので、ＡＮＤ回路１１２の出力信号ＡＮＤ２はハイレベルに変化する。
【００７７】
時刻Ｔ９：
ハイレベルに変化した信号ＡＮＤ２は、クロック信号ＣＫ２の立ち上がり（時刻Ｔ９）においてフリップフロップ１２２に保持され、フリップフロップ１２２の出力信号ＣＥ２はハイレベルに変化する。
【００７８】
時刻Ｔ１０：
信号ＣＥ２がハイレベルに変化すると、クロックＣＫ２の立ち下がり（時刻Ｔ１０）において、クロックイネーブラ１４２からクロック信号ＣＫ２が出力される。
【００７９】
時刻Ｔ１１：
また、ハイレベルの信号ＣＥ２は、時刻Ｔ１０の後におけるクロック信号ＣＫ２の立ち上がり（時刻Ｔ１１）においてフリップフロップ１３２に保持され、状態信号ＳＴ２はハイレベルに変化する。これにより、イネーブル信号ＥＮ１はハイレベルからローレベルに変化するが、既に選択信号ＳＥＬ１がローレベルであるため、ＡＮＤ回路１１１の出力信号ＡＮＤ１はローレベルのまま変化しない。また、状態信号ＳＴ２がハイレベルになることからイネーブル信号ＥＮ２はハイレベルのまま保持されるので、ＡＮＤ回路１１２の出力信号ＡＮＤ２もハイレベルのまま変化しない。この状態は、選択信号ＳＥＬにレベル変化が生じるまで持続される。
【００８０】
以上説明したように、図３のクロック信号選択回路によれば、出力中のクロック信号の選択信号がハイレベルからローレベルへ変化し、新たに選択されるクロック信号の選択信号がローレベルからハイレベルへ変化した場合、出力中のクロック信号の立ち下がりに同期して、このクロック信号の出力制御回路から出力される信号がローレベルに保持される。これにより、選択クロック信号ＥＣＫがローレベルに保持されて、クロック信号の出力が停止される。したがって、たとえば図４０のクロック信号選択回路のように、クロック信号の出力停止時において持続時間の短いパルスがクロック信号の出力に発生することを防止できる。
【００８１】
また、クロック信号の出力が停止された後、状態信号ＳＴ１〜状態信号ＳＴｎが全てローレベルになり、これに応じてイネーブル信号ＥＮ１〜イネーブル信号ＥＮｎが全てハイレベルになることによって、新たに選択されたクロック信号の出力が有効化されるので、たとえば図４０のクロック信号選択回路のように、複数のクロック信号が同時に出力されてしまう事態を防止できる。
【００８２】
また、通常動作ではｎ本の状態信号（ＳＴ１〜ＳＴｎ）のうちの多くとも１つがハイレベルになるところを、ノイズなどの影響を受けて、複数のクロック信号が選択中であるかのように複数本の状態信号がハイレベルになってしまい、これに応じてｎ本のイネーブル信号（ＥＮ１〜ＥＮｎ）のうちの複数のイネーブル信号がハイレベルになったとしても、ｎ本の選択信号（ＳＥＬ１〜ＳＥＬｎ）では１つの選択信号だけがハイレベルになっているので、選択されていないクロック信号が誤って出力されてしまうことはない。
１つのクロック信号が選択されて出力されている状態、すなわち１本の状態信号のみがハイレベルで他の状態信号がローレベルになっている状態で、ノイズなどの影響により、ｎ本の状態信号（ＳＴ１〜ＳＴｎ）が全てローレベルに変化してしまったとしても、イネーブル信号生成回路２Ａにおいて生成されるイネーブル信号ＥＮは全てハイレベルになるので、選択されたクロック信号は通常どおり出力される。
このように、図３のクロック信号選択回路によれば、図１のクロック信号回路と同様に、ノイズなどの影響により状態信号ＳＴが変化した場合でも、回路の誤動作を効果的に防止することができる。
【００８３】
また、図３のクロック信号選択回路においてクロック信号ＣＫｍの信号経路上に挿入されるゲート回路は、クロックイネーブラ１４ｍのＡＮＤ回路１４２ｍおよびＯＲ回路４の２段だけであり、選択されるクロック信号の数が多くなってもこの段数は変化しない。したがって、クロック信号の遅延を非常に小さく抑えながら、多数のクロック信号の選択を行うことができる。
【００８４】
ところで、選択信号ＳＥＬはクロック信号（ＣＫ１〜ＣＫｎ）に対して非同期に変化するので、ＡＮＤ回路１１ｍの出力信号ＡＮＤｍはクロック信号ＣＫｍに対して非同期に変化する。したがって、信号ＡＮＤｍのレベル変化とクロック信号ＣＫｍの立ち上がりとが近接して起こる可能性があるので、フリップフロップ１２ｍの出力信号ＣＥｍにはメタステーブルによる振動が発生する可能性がある。たとえば、信号ＣＥｍとクロック信号ＣＫｍとの直接的な論理積から信号ＥＣＫｍを得るような回路では、信号ＣＥｍに振動が生じていると、これがそのまま信号ＥＣＫｍとして出力されてしまい、結果として選択クロック信号ＥＣＫに振動が含まれてしまう不具合が生じる。
【００８５】
しかしながら、図４の出力制御回路１ｍでは、クロックイネーブラ１４ｍを用いて、信号ＣＥｍによるクロック信号ＣＫｍの出力制御が行われているので、信号ＣＥｍに生じるメタステーブルの影響を効果的に除去することができる。
すなわち、クロック信号ＣＫｍの立ち上がりにおいて信号ＣＥｍにメタステーブルの振動が生じても、この信号ＣＥｍがクロックイネーブラ１４ｍのラッチ回路１４１ｍに保持されるのはクロック信号ＣＫｍの立ち下がりなので、クロック信号ＣＫｍの立ち上がりから立ち下がりまでの間にこの振動が収束していれば、振動した信号ＣＥｍがラッチ回路１４１ｍに保持されることはない。仮に、この振動がラッチ回路１４１ｍの保持信号に残ったとしても、クロック信号ＣＫｍの立ち下がりから次の立ち上がりまでの間はクロック信号ＣＫｍがローレベルになっているので、出力制御回路１ｍの出力信号ＥＣＫｍにこの振動が現れることはない。このように、メタステーブルの振動が収束するまでの期間がクロック信号ＣＫｍの１周期よりも短ければ、メタステーブルの影響による選択クロック信号ＥＣＫの振動を効果的に防止することができる。
【００８６】
＜第３の実施形態＞
次に、本発明の第３の実施形態について述べる。
第３の実施形態に係るクロック信号選択回路では、第２の実施形態に係るクロック信号選択回路における出力制御部の構成が変更される。たとえば、図３のクロック信号選択回路における出力制御回路１１〜出力制御回路１ｎが、次に述べる出力制御回路１Ａ１〜出力制御回路１Ａｎに置き換えられる。
【００８７】
図９は、本発明の第３の実施形態に係るクロック信号選択回路における、出力制御回路１Ａｍの構成の一例を示すブロック図であり、図９と図４の同一符号は同一の構成要素を示す。
出力制御回路１Ａｍは、出力制御回路１ｍの各構成要素とともに、フリップフロップ１５ｍを有している。
ＡＮＤ回路１１ｍは、本発明の論理積回路の一実施形態である。
フリップフロップ１２ｍならびにフリップフロップ１５ｍは、本発明の信号保持回路の一実施形態である。
フリップフロップ１２ｍおよびフリップフロップ１５ｍを含むユニットは、本発明のシフト回路の一実施形態である。
ＡＮＤ回路１１ｍ、フリップフロップ１２ｍ、およびフリップフロップ１５ｍを含むユニットは、本発明の制御信号出力回路の一実施形態である。
【００８８】
出力制御回路１Ａｍは、出力制御回路１ｍにおけるフリップフロップ１２ｍとフリップフロップ１３ｍとの間にフリップフロップ１５ｍを直列に挿入した回路と等価である。すなわち、フリップフロップ１２ｍの出力信号がフリップフロップ１５ｍに入力されており、フリップフロップ１５ｍにおいて、この信号がクロックＣＫｍの立ち上がりに同期して保持される。フリップフロップ１５ｍに保持された信号ＣＥｍは、フリップフロップ１３ｍおよびクロックイネーブラ１４ｍに入力される。
【００８９】
出力制御回路１ｍの場合、ＡＮＤ回路１１ｍの出力信号ＡＮＤｍにレベル変化が起こったあと、クロック信号ＣＫｍのローレベルからハイレベルへの立ち上がりが１回発生したところで、レベル変化した信号ＡＮＤｍがフリップフロップ１２ｍに保持され、クロックイネーブラ１４ｍに供給される。このため、フリップフロップ１２ｍの出力信号に生じるメタステーブルの振動期間がクロック信号ＣＫｍの１周期より長い場合、その振動成分が出力信号ＥＣＫｍに含まれてしまう。
これに対し、出力制御回路１Ａｍにおいては、信号ＡＮＤｍのレベル変化後に、クロック信号ＣＫｍのローレベルからハイレベルへの立ち上がりが２回反復されたところで、信号ＡＮＤｍがフリップフロップ１５ｍに保持され、クロックイネーブラ１４ｍに供給される。すなわち、メタステーブルの振動の開始時点からクロックイネーブラ１４ｍによるクロック信号ＣＫｍの出力開始時点までの時間が、出力制御回路１ｍと比べてクロック信号ＣＫｍの１周期分長くなる。したがって、この１周期の間にメタステーブルの振動が収束すれば、この振動成分が出力信号ＥＣＫｍへ出力されてしまうことを防止できる。
【００９０】
図１０は、クロック周期より存続期間の短いメタステーブルが発生する場合におけるフリップフロップの出力波形の一例を示す図である。
図１０（Ａ）に示すフリップフロップは、クロック信号（図１０（Ｃ））の立ち上がりに同期して入力信号Ｓｉｎ（図１０（Ｂ））を保持するフリップフロップである。クロック信号ＣＬＫの立ち上がり前後に規定されているタイミング条件（セットアップ時間、ホールド時間など）に違反して入力信号Ｓｉｎが変化すると、たとえば図１０（Ｄ）や図１０（Ｅ）に示すように、メタステーブルが発生する。図１０（Ｄ）に示すメタステーブルは、短い振動期間の後にローレベルへ収束し、図１０（Ｅ）に示すメタステーブルは、振動期間の後にハイレベルへ収束している。何れの例においても、メタステーブルの振動期間はクロック周期より短い期間に収束する。
このように、フリップフロップ１２ｍで発生するメタステーブルの振動期間がクロック周期より短い場合は、出力制御回路１ｍにおいても、出力信号ＥＣＫｍに振動成分を生じさせることはない。
【００９１】
一方、図１１は、クロック周期より存続期間の長いメタステーブルが発生する場合におけるフリップフロップの出力波形の一例を示す図である。
図１１（Ｄ）に示すように、フリップフロップ１２ｍで発生するメタステーブルの振動期間がクロック周期より長い場合、出力制御回路１ｍにおいては、クロック信号ＣＫｍの立ち上がり時点において信号ＣＥｍに振動が起こるため、ラッチ回路１４１ｍの保持信号にメタステーブルの振動が発生する。このため、出力信号ＥＣＫｍに振動成分が生じてしまう。
【００９２】
そこで、図１１（Ａ）に示すようにフリップフロップを２段直列に接続すると、１段目の出力信号ＳｏｕｔＡに生じるメタステーブルの振動成分は、図１１（Ｅ）に示すように２段目の出力信号ＳｏｕｔＢにも若干現れるが、その振動周期は、１段目の出力信号ＳｏｕｔＡに比べて短くなる。すなわち、直列に接続された複数段のフリップフロップを信号が伝播する過程で、メタステーブルの振動成分は減衰する傾向を持つ。
したがって、フリップフロップ１２ｍで発生するメタステーブルの振動期間がクロック周期より長い場合でも、後段のフリップフロップ１３ｍで発生するメタステーブルの振動期間はこれより短くなるため、この振動期間がクロック周期より短ければ、出力制御回路１Ａｍにおいて、出力信号ＥＣＫｍの振動を抑えることができる。
【００９３】
すなわち、本発明の信号選択回路に含まれる制御信号出力回路（図９の例では、ＡＮＤ回路１１ｍ、フリップフロップ１２ｍ、およびフリップフロップ１５ｍを含むユニット）は、対応する入力信号（図９の例では、クロック信号ＣＫｍ）の第２のレベルから第１のレベルへのレベル変化（図９の例では、ローレベルからハイレベルへのレベル変化）が所定回数だけ反復された際の最後の当該レベル変化に同期して、制御信号（図９の例では信号ＣＥｍ）を出力しても良い。これにより、出力信号の振動を抑えることができる。
【００９４】
ただし、フリップフロップ１５ｍで発生するメタステーブルの振動期間がクロック周期よりも長い場合には、出力制御回路１Ａｍにおいても振動成分を出力してしまう可能性がある。その場合は、直列に挿入するフリップフロップを更に増やすことによって、出力信号ＥＣＫｍの振動を容易に抑えることができる。
【００９５】
＜第４の実施形態＞
次に、本発明の第４の実施形態について述べる。
第４の実施形態に係るクロック信号選択回路では、第２の実施形態に係るクロック信号選択回路における出力制御部の構成が変更される。たとえば、図３のクロック信号選択回路における出力制御回路１１〜出力制御回路１ｎが、次に述べる出力制御回路１Ｂ１〜出力制御回路１Ｂｎに置き換えられる。
【００９６】
図１２は、本発明の第４の実施形態に係るクロック信号選択回路における、出力制御回路の構成の一例を示す回路図である。
図１２に示す出力制御回路１Ｂｍは、図４に示す出力制御回路１ｍにおけるフリップフロップ１３ｍがラッチ回路１６ｍに置き換えられたものである。
ラッチ回路１６ｍは、本発明の状態信号出力回路の一実施形態である。
【００９７】
クロック信号ＣＫｍがローレベルの場合、ラッチ回路１６ｍに入力される信号ＣＥｍはそのまま状態信号ＳＴｍとして出力される。クロック信号ＣＫｍがハイレベルの場合には、クロック信号ＣＫｍの立ち上がりに同期してラッチ回路１６ｍに保持された信号ＣＥｍが、状態信号ＳＴｍとして出力される。
【００９８】
第４の実施形態に係るクロック信号選択回路の動作について、入力されるクロック信号の数が２つの場合を例として、図１３を参照しながら説明する。
図１３は、図７のクロック信号選択回路における出力制御回路（１１、１２）を、図１２に示した出力制御回路（１Ｂ１、１Ｂ２）に置き換えた回路における、各信号のタイミングの一例を示すタイミングチャートである。
【００９９】
図１３の初期状態は図８と同様である。すなわち、選択信号ＳＥＬ１がハイレベル、選択信号ＳＥＬ２がローレベルになっており、選択クロック信号ＥＣＫとしてクロック信号ＣＫ１が出力されている。また、状態信号ＳＴ１がハイレベル、状態信号ＳＴ２がローレベルになっており、これに応じてイネーブル信号ＥＮ１がハイレベル、イネーブル信号ＥＮ２がローレベルになっている。
【０１００】
時刻Ｔ１２：
時刻Ｔ１２において選択信号ＳＥＬがローレベルに変化し、これに応じて選択信号ＳＥＬ１がローレベルに変化すると、ＡＮＤ回路１１１の出力信号ＡＮＤ１はローレベルに変化する。
【０１０１】
時刻Ｔ１３：
ローレベルに変化した信号ＡＮＤ１は、クロック信号ＣＫ１の立ち上がり（時刻Ｔ１３）においてフリップフロップ１２１に保持され、フリップフロップ１２１の出力信号ＣＥ１はローレベルに変化する。
【０１０２】
時刻Ｔ１４：
信号ＣＥ１がローレベルに変化すると、クロック信号ＣＫ１の立ち下がり（時刻Ｔ１４）において、クロックイネーブラ１４１の出力信号ＥＣＫ１はローレベルに保持される。またこの時、ローレベルの信号ＣＥ１はラッチ回路１６１に保持され、状態信号ＳＴ１はローレベルに変化する。これにより、状態信号ＳＴ１および状態信号ＳＴ２が何れもローレベルになるので、イネーブル信号ＥＮ１およびイネーブル信号ＥＮ２は何れもハイレベルになる。イネーブル信号ＥＮ２がハイレベルになると、選択信号ＳＥＬ２がハイレベルなので、ＡＮＤ回路１１２の出力信号ＡＮＤ２はハイレベルに変化する。
【０１０３】
時刻Ｔ１５：
ハイレベルに変化した信号ＡＮＤ２は、クロック信号ＣＫ２の立ち上がり（時刻Ｔ１５）においてフリップフロップ１２２に保持され、フリップフロップ１２２の出力信号ＣＥ２はハイレベルに変化する。
【０１０４】
時刻Ｔ１６：
信号ＣＥ２がハイレベルに変化すると、クロックＣＫ２の立ち下がり（時刻Ｔ１６）において、クロックイネーブラ１４２からクロック信号ＣＫ２が出力される。またこの時、ハイレベルの信号ＣＥ２はラッチ回路１６２に保持され、状態信号ＳＴ２はハイレベルに変化する。これにより、イネーブル信号ＥＮ１はハイレベルからローレベルに変化するが、選択信号ＳＥＬ１がローレベルであるため、ＡＮＤ回路１１１の出力信号ＡＮＤ１はローレベルのまま変化しない。また、状態信号ＳＴ２がハイレベルになることからイネーブル信号ＥＮ２はハイレベルのまま保持されるので、ＡＮＤ回路１１２の出力信号ＡＮＤ２はハイレベルのまま変化しない。この状態は、選択信号ＳＥＬにレベル変化が生じるまで持続される。
【０１０５】
このように、図１２の出力制御回路１Ｂｍを有するクロック信号選択回路では、クロックイネーブラ１４ｍにおいてクロック信号ＣＫｍの出力が制御されるタイミング（時刻Ｔ１４、時刻Ｔ１６）と、出力制御回路１Ｂｍにおいて状態信号ＳＴｍの変化が生じるタイミングとがほぼ等しくなり、図３のクロック信号選択回路よりも状態信号ＳＴｍの変化のタイミングが早くなるので、クロック信号の切り換えに要する時間を短縮することができる。
【０１０６】
＜第５の実施形態＞
次に、本発明の第５の実施形態について述べる。
第５の実施形態に係るクロック信号選択回路では、第２の実施形態に係るクロック信号選択回路における出力制御部の構成が変更される。たとえば、図３のクロック信号選択回路における出力制御回路１１〜出力制御回路１ｎが、次に述べる出力制御回路１Ｃ１〜出力制御回路１Ｃｎに置き換えられる。
【０１０７】
図１４は、本発明の第５の実施形態に係るクロック信号選択回路における、出力制御回路の構成の一例を示す回路図である。
図１４に示す出力制御回路１Ｃｍは、図１２に示す出力制御回路１ｍにおけるクロックイネーブラ１４ｍがＡＮＤ回路１７ｍに置き換えられたものである。
【０１０８】
ＡＮＤ回路１７ｍには、ラッチ回路１６ｍの出力信号ＳＴｍとクロック信号ＣＫｍとが入力され、これらの論理積の結果として信号ＥＣＫｍが出力される。
【０１０９】
図１２の出力制御回路１Ｂｍにおけるラッチ回路１６ｍと、クロックイネーブラ１４ｍ内部のラッチ回路１４１ｍには、互いに同一の信号ＣＥｍが入力され、同一のクロック信号ＣＫｍの立ち下がりに同期してこの入力信号が保持されるので、これらのラッチ回路の出力信号はほぼ等価になる。このため、ラッチ回路１６ｍの出力信号ＳＴｍとクロック信号ＣＫｍとの論理積としてＡＮＤ回路１７ｍから出力される信号は、クロックイネーブラ１４ｍから出力される信号とほぼ等価になり、出力制御回路１Ｃｍの回路動作は出力制御回路１Ｂｍとほぼ等価になる。以上のことから、第５の実施形態に係るクロック信号選択回路においても、上述した第４の実施形態に係るクロック信号選択回路と同様な動作が可能であり、同様な効果を奏することできる。
【０１１０】
＜第６の実施形態＞
次に、本発明の第６の実施形態について述べる。
第５の実施形態に係るクロック信号選択回路では、第２の実施形態に係るクロック信号選択回路における出力制御部の構成が変更される。たとえば、図３のクロック信号選択回路における出力制御回路１１〜出力制御回路１ｎの何れか１つが、次に述べる出力制御回路１Ｄｊ（ｊは１≦ｊ≦ｎを満たす任意の整数を示す）に置き換えられ、残りの（ｎ−１）個の出力制御回路が、出力制御回路１Ｅｋ（ｋは１≦ｋ≦ｎかつｋ≠ｊを満たす任意の整数を示す）に置き換えられる。
【０１１１】
図１５は、本発明の第６の実施形態に係るクロック信号選択回路における、出力制御回路１Ｄｊの構成の一例を示す回路図である。
図１５に示す出力制御回路１Ｄｊは、図４に示す出力制御回路１ｊにおいて、フリップフロップ１２ｊの出力とクロックイネーブラ１４ｊの入力との間の信号経路に、２入力のＯＲ回路１８ｊが挿入されたものである。ＯＲ回路１８ｊには、信号ＣＥｊとともに、特定の動作モード、たとえば回路の検査モードを有効化する信号ＴＳＣＡＮが入力される。
【０１１２】
通常の動作モードにおいて、信号ＴＳＣＡＮはローレベルに設定されており、出力制御回路１Ｄｊは図４に示す出力制御回路１ｊと同様に動作する。回路の検査モードが有効化されて、信号ＴＳＣＡＮがハイレベルに設定されると、クロックイネーブラ１４ｊのラッチ回路１４１ｊには常にハイレベルの信号が保持される。このため、クロックイネーブラ１４ｊからは常にクロック信号ＣＫｊが信号ＥＣＫｊとして出力される。
【０１１３】
図１６は、本発明の第６の実施形態に係るクロック信号選択回路における、出力制御回路１Ｅｋの構成の一例を示す回路図である。
図１５に示す出力制御回路１Ｅｋは、図４に示す出力制御回路１ｋにおいて、フリップフロップ１２ｋの出力とクロックイネーブラ１４ｋの入力との間の信号経路に、２入力のＡＮＤ回路１１０ｋが挿入され、このＡＮＤ回路１１０ｋに、インバータ回路１９ｋで論理反転された信号ＴＳＣＡＮが入力されたものである。
【０１１４】
通常の動作モードにおいて、信号ＴＳＣＡＮはローレベルに設定されており、出力制御回路１Ｅｋは図４に示す出力制御回路１ｋと同様に動作する。回路の検査モードが有効化されて、信号ＴＳＣＡＮがハイレベルに設定されると、クロックイネーブラ１４ｋのラッチ回路１４１ｋには常にローレベルの信号が保持される。このため、クロックイネーブラ１４ｋの出力信号ＥＣＫｋは常にローレベルになる。
【０１１５】
このように、第６の実施形態に係るクロック信号選択回路によれば、通常の動作モードにおいて、図３のクロック信号選択回路と同様なクロック信号の選択動作が行われる。一方、特定の動作モードが有効化された場合には、常に特定のクロック信号を選択クロック信号ＥＣＫとして出力させることができる。
【０１１６】
たとえば回路のスキャン・テストが行われる場合、通常はクロック信号の選択動作を停止させた状態でテストが行われる。図３のクロック信号選択回路では、フリップフロップ１２ｍやフリップフロップ１３ｍに保持されたデータ値がスキャン・テストの過程で変化してしまうことによりクロック信号の切り換えが起こってしまい、正常なスキャン・テストを行うことができなくなる。一方、第６の実施形態に係るクロック信号選択回路によれば、回路の検査モードが有効化された場合において、常に特定のクロック信号を選択クロック信号ＥＣＫとして出力させることができるので、不要なクロック信号選択動作の発生を防止でき、正常なスキャン・テストの実行が可能になる。また、クロック信号の選択動作を停止させるための回路がクロック信号の配線経路上に挿入されていないので、このような検査用の回路を設けることにより通常動作時のクロック信号に遅延が生じてしまうことを防止できる。
【０１１７】
＜第７の実施形態＞
次に、本発明の第７の実施形態について述べる。
第７の実施形態は、与えられる出力制御信号に応じて、入力信号の出力を有効化または無効化する出力制御回路に関する実施形態である。
上述した各実施形態において説明した出力制御回路（１ｍ、１Ａｍ、１Ｂｍ、１Ｃｍ、１Ｄｍ）では、出力中のクロック信号を停止するために、出力中のクロック信号の立ち上がりエッジを数回入力する必要がある。したがって、選択されているにも関わらずクロック信号が供給されていない場合には、このクロック信号が供給されるまで、このクロック信号の出力を停止することができなくなる。
第７の実施形態に係る出力制御回路では、このような信号出力の停止に関して改善が図られる。
【０１１８】
図１７は、本発明の第７の実施形態に係る出力制御回路４の構成の一例を示す回路図である。
図１７に示す出力制御回路４は、フリップフロップ４０２、４０３と、ラッチ回路４０４と、ＯＲ回路４０５と、ＡＮＤ回路４０６とを有する。
フリップフロップ４０２は、本発明の第１の制御信号出力回路の一実施形態である。
フリップフロップ４０３は、本発明の第２の制御信号出力回路の一実施形態である。
ラッチ回路４０４は、本発明の第３の制御信号出力回路の一実施形態である。
ＯＲ回路４０５およびＡＮＤ回路４０６を含むユニットは、本発明の入力信号出力回路の一実施形態である。
【０１１９】
出力制御信号Ｓｃｏｎｔは、入力信号ＣＫの出力を有効化または無効化するための信号である。すなわち、ハイレベルの出力制御信号Ｓｃｏｎｔは信号出力の停止を指示し、ローレベルの出力制御信号Ｓｃｏｎｔは信号出力の開始を指示する。
この出力制御信号Ｓｃｏｎｔは、フリップフロップ４０２およびラッチ回路４０４に入力される。
【０１２０】
フリップフロップ４０２は、出力制御信号Ｓｃｏｎｔを基準クロック信号ＳＣＫに同期して保持し、保持した信号を第１の制御信号Ｓ１として出力する。
ラッチ回路４０４は、入力信号ＣＫがハイレベルの場合に、出力制御信号Ｓｃｏｎｔをそのまま第３の制御信号Ｓ３として出力し、入力信号ＣＫのハイレベルからローレベルへの立ち下がりに同期して、この第３の制御信号Ｓ３の状態を保持する。
【０１２１】
フリップフロップ４０３は、第１の制御信号Ｓ１を基準クロック信号ＳＣＫに同期して保持し、保持した信号を第２の制御信号Ｓ２として出力する。
ＯＲ回路４０５は、第１の制御信号Ｓ１、第３の制御信号Ｓ３および入力信号ＣＫの３信号を入力し、その論理和を演算する。
ＡＮＤ回路４０６は、第２の制御信号Ｓ２を論理反転した信号とＯＲ回路４０５の出力信号との論理積を演算し、その演算結果を出力信号ＥＣＫとして出力する。
【０１２２】
図１８は、図１７に示す出力制御回路４において信号出力が停止される場合の各信号のタイミングの一例を示すタイミングチャートである。
図１８に示す例では、図１８（Ｆ）および（Ｉ）に示す２種類の入力信号ＣＫに対する各信号のタイミングが示されている。すなわち、図１８（Ｅ）および（Ｇ）は、図１８（Ｆ）に示す入力信号ＣＫに対応した第３の制御信号Ｓ３および出力信号ＥＣＫを示し、図１８（Ｈ）および（Ｊ）は、図１８（Ｉ）に示す入力信号ＣＫに対応した第３の制御信号Ｓ３および出力信号ＥＣＫを示す。
なお、図１８（Ａ）、（Ｂ）、（Ｃ）および（Ｄ）に示す基準クロック信号ＳＣＫ、出力制御信号Ｓｃｏｎｔ、第１の制御信号Ｓ１および第２の制御信号Ｓ２は、２種類の入力信号ＣＫに対して共通である。
また、初期状態において、出力制御信号Ｓｃｏｎｔ（図１８（Ｂ））はローレベルであり、入力信号ＣＫ（図１８（Ｆ）、図１８（Ｉ））が出力信号ＥＣＫ（図１８（Ｇ）、図１８（Ｊ））として出力されている。
【０１２３】
まず、図１８（Ｆ）に示す入力信号ＣＫが入力される場合の動作を説明する。
【０１２４】
時刻Ｔ２０：
時刻Ｔ２０において、出力制御信号Ｓｃｏｎｔがローレベルからハイレベルに変化すると、このとき図１８（Ｆ）に示す入力信号ＣＫはハイレベルであるため、ラッチ回路４０４から出力される第３の制御信号Ｓ３は出力制御信号Ｓｃｏｎｔと同様にハイレベルへ変化する（図１８（Ｅ））。
【０１２５】
時刻Ｔ２１：
時刻Ｔ２１において、入力信号ＣＫがローレベルに変化すると（図１８（Ｆ））、第３の制御信号Ｓ３はハイレベルのまま保持され、出力信号ＥＣＫもハイレベルのまま保持される（図１８（Ｇ））。
【０１２６】
時刻Ｔ２２：
時刻Ｔ２２において、ハイレベルの出力制御信号Ｓｃｏｎｔがフリップフロップ４０２に保持され、第１の制御信号Ｓ１はハイレベルになる。
【０１２７】
時刻Ｔ２４：
時刻Ｔ２４において、ハイレベルの第１の制御信号Ｓ１がフリップフロップ４０３に保持され、第２の制御信号Ｓ２はハイレベルになる。第２の制御信号Ｓ２がハイレベルになるため、ＡＮＤ回路４０６の出力である出力信号ＥＣＫはローレベルになる。
【０１２８】
次に、図１８（Ｉ）に示す入力信号ＣＫが入力される場合の動作を説明する。
【０１２９】
時刻Ｔ２０：
時刻Ｔ２０において、出力制御信号Ｓｃｏｎｔがローレベルからハイレベルに変化すると、このとき図１８（Ｉ）に示す入力信号ＣＫはローレベルであるため、ラッチ回路４０４から出力される第３の制御信号Ｓ３はローレベルのまま変化せず（図１８（Ｈ））、出力信号ＥＣＫもローレベルのまま変化しない（図１８（Ｊ））。
【０１３０】
時刻Ｔ２２：
時刻Ｔ２２において、ハイレベルの出力制御信号Ｓｃｏｎｔがフリップフロップ４０２に保持され、第１の制御信号Ｓ１はハイレベルになる。第１の制御信号Ｓ１がハイレベルになると、ＯＲ回路４０５の出力信号はローレベルからハイレベルへ変化し、出力信号ＥＣＫは一旦ハイレベルになる（図１８（Ｊ））。
【０１３１】
時刻Ｔ２４：
基準クロック信号ＳＣＫの立ち上がり時刻Ｔ２４において第２の制御信号Ｓ２がハイレベルになると、時刻Ｔ２２において一旦ハイレベルになっていた出力信号ＥＣＫはローレベルになる。
【０１３２】
このように、図１７に示す出力制御回路４によれば、入力信号ＣＫの出力を無効化するハイレベルの出力制御信号Ｓｃｏｎｔが与えられると、第１の制御信号Ｓ１または第３の制御信号Ｓ３がローレベルからハイレベルに変化し、これに応じて、出力信号ＥＣＫは一旦ハイレベルに保持される。第１の制御信号Ｓ１は、基準クロック信号ＳＣＫに同期してハイレベルに変化し、第３の制御信号Ｓ３は、入力信号ＣＫがハイレベルの場合にハイレベルになる。出力信号ＥＣＫが一旦ハイレベルに保持された後、基準クロック信号ＳＣＫに同期して、第２の制御信号Ｓ２がローレベルからハイレベルに変化し、これに応じて、出力信号ＥＣＫがローレベルに保持される。
すなわち、出力制御信号Ｓｃｏｎｔがハイレベルになると、たとえ入力信号ＣＫがローレベルのまま変化しない場合であっても、基準クロック信号ＳＣＫに同期して第１の制御信号Ｓ１、第２の制御信号Ｓ２が順にハイレベルに変化し、図１８（Ｊ）に示すように、出力信号ＥＣＫは一旦ハイレベルに保持された後でローレベルに保持される。したがって、信号出力の停止を示す出力制御信号Ｓｃｏｎｔが与えられた後、入力信号ＣＫがローレベルのまま変化しない場合であっても、既に述べた出力制御回路（１ｍ、１Ａｍ、１Ｂｍ、１Ｃｍ、１Ｄｍ）のように信号出力の停止が保留された状態になることはなく、基準クロック信号ＳＣＫに同期して、出力信号ＥＣＫを確実にローレベルに保持させることができる。
【０１３３】
また、ラッチ回路４０４において、入力信号ＣＫがハイレベルの場合に、出力制御信号Ｓｃｏｎｔがそのまま第３の制御信号Ｓ３として出力され、入力信号ＣＫのハイレベルからローレベルへの立ち下がりに同期して、第３の制御信号Ｓ３の状態が保持されることから、次に述べるような出力信号ＥＣＫのグリッチを防止することができる。
【０１３４】
図１９は、図１７に示す出力制御回路４からラッチ回路４０４を削除した回路図を示し、図２０はそのタイミングチャートを示す。
時刻Ｔ２５において、入力信号ＣＫがハイレベルの期間に出力制御信号Ｓｃｏｎｔがハイレベルへ変化し（図２０（Ｂ））、次いで時刻Ｔ２６において、入力信号ＣＫがハイレベルからローレベルへ変化すると（図２０（Ｅ））、このとき第１の制御信号Ｓ１がまだハイレベルになっていなければ、図２０（Ｆ）に示すように、出力信号ＥＣＫがローレベルへ変化する。この直後、基準クロック信号ＳＣＫの立ち上がり時刻Ｔ２７において第１の制御信号Ｓ１がハイレベルに変化すると、ローレベルになっていた出力信号ＥＣＫはすぐさまハイレベルに戻る。時刻Ｔ２６〜Ｔ２７の短い期間に生じる出力信号ＥＣＫのローレベルのパルス（グリッチ）は、この信号ＥＣＫを受けて動作する機器に誤動作などの悪影響を及ぼす。
一方、図１７に示す出力制御回路４では、時刻Ｔ２１において第３の制御信号Ｓ３がハイレベルに保持されるため（図１８（Ｅ））、時刻Ｔ２１〜Ｔ２２の期間において、出力信号ＥＣＫにグリッチを生じていない（図１８（Ｇ））。
【０１３５】
なお、本発明の出力制御回路に含まれる第１の制御信号出力回路は、直列接続された複数段の信号保持回路を含み、基準クロック信号に同期して、初段の信号保持回路に入力された出力制御信号を次段の信号保持回路へ順にシフトさせ、終段の信号保持回路に保持された出力制御信号を第１の制御信号として出力するシフト回路を有しても良い。たとえば、図１７に示す出力制御回路４のフリップフロップ４０２の後段に、１つまたは複数のフリップフロップを更に直列に挿入しても良い。
これにより、初段の信号保持回路において生じるメタステーブルの振動成分が出力信号に伝播することを防止できる。
【０１３６】
また、本発明の出力制御回路に含まれる第１の制御信号出力回路は、上述したシフト回路に加えて、このシフト回路の複数段の信号保持回路に保持された制御信号が何れも入力信号の出力を無効化する信号の場合、基準クロック信号に同期して、入力信号の出力を無効化する第１の制御信号を出力する出力回路とを有しても良い。
これにより、基準クロック信号の複数サイクルの期間に渡って出力制御信号が入力信号の出力を無効化する信号でない限り、入力信号の出力を無効化する第１の制御信号は出力されなくなる。シフト回路に含まれる信号保持回路の直列段数を適切に設定することにより、第３の制御信号に生じるメタステーブル等の振動成分が出力信号に伝播することを防止できる。
【０１３７】
＜第８の実施形態＞
次に、本発明の第８の実施形態について述べる。
上述した図１７に示す出力制御回路４では、基準クロック信号ＳＣＫおよび入力信号ＣＫに対して出力制御信号Ｓｃｏｎｔが任意のタイミングを持っていると、フリップフロップ４０２およびラッチ回路４０４においてメタステーブルを生じる可能性がある。これらの回路でメタステーブルが生じると、その振動成分は直接出力信号ＥＣＫに混入してしまう。
第７の実施形態に係る出力制御回路では、このようなメタステーブルによる振動の改善が図られる。
【０１３８】
図２１は、本発明の第８の実施形態に係る出力制御回路４Ａの構成の一例を示す回路図である。
図２１に示す出力制御回路４Ａは、フリップフロップ４０３、４０８、４０９および４１１と、ラッチ回路４０４および４１２と、ＯＲ回路４０５と、ＡＮＤ回路４１０および４０６を有する。
フリップフロップ４０８、４０９、４１１、およびＡＮＤ回路４１０を含むユニットは、本発明の第１の制御信号出力回路の一実施形態である。
フリップフロップ４０３は、本発明の第２の制御信号出力回路の一実施形態である。
ラッチ回路４０４は、本発明の第３の制御信号出力回路の一実施形態である。
ラッチ回路４１２は、本発明の第４の制御信号出力回路の一実施形態である。
ＯＲ回路４０５およびＡＮＤ回路４０６を含むユニットは、本発明の入力信号出力回路の一実施形態である。
【０１３９】
ラッチ回路４１２は、入力信号ＣＫがローレベルの場合に、出力制御信号Ｓｃｏｎｔをそのまま第４の制御信号Ｓ４として出力し、入力信号ＣＫのローレベルからハイレベルへの立ち上がりに同期して、この第４の制御信号Ｓ４の状態を保持する。
【０１４０】
フリップフロップ４０８は、第４の制御信号Ｓ４を基準クロック信号ＳＣＫに同期して保持する。
フリップフロップ４０９は、フリップフロップ４０８に保持された信号Ｓ４０８を基準クロック信号ＳＣＫに同期して保持する。
ＡＮＤ回路４１０は、フリップフロップ４０８に保持された信号Ｓ４０８と、フリップフロップ４０９に保持された信号Ｓ４０９との論理積を演算する。
フリップフロップ４１１は、ＡＮＤ回路４１０の出力信号を基準クロック信号ＳＣＫに同期して保持し、第１の制御信号Ｓ１として出力する。
【０１４１】
フリップフロップ４０３は、第１の制御信号Ｓ１を基準クロック信号ＳＣＫに同期して保持し、第２の制御信号Ｓ２として出力する。
【０１４２】
ラッチ回路４０４は、入力信号ＣＫがハイレベルの場合に、第４の制御信号Ｓ４をそのまま第３の制御信号Ｓ３として出力し、入力信号ＣＫのハイレベルからローレベルへの立ち下がりに同期して、この第３の制御信号Ｓ３の状態を保持する。
【０１４３】
ＯＲ回路４０５は、第１の制御信号Ｓ１、第３の制御信号Ｓ３および入力信号ＣＫの３信号を入力し、その論理和を演算する。
ＡＮＤ回路４０６は、第２の制御信号Ｓ２を論理反転した信号とＯＲ回路４０５の出力信号との論理積を演算し、その演算結果を出力信号ＥＣＫとして出力する。
【０１４４】
ここで、上述した構成を有する出力制御回路１Ａの動作について、タイミングチャートを参照しながら説明する。
図２２は、図２１に示す出力制御回路１Ａにおいて信号出力が停止される場合の各信号のタイミングの一例を示す第１のタイミングチャートである。
初期状態において、出力制御信号Ｓｃｏｎｔ（図２１（Ｂ））はローレベルであり、入力信号ＣＫ（図２１（Ｇ））が出力信号ＥＣＫ（図２１（Ｊ））として出力されている。
【０１４５】
時刻Ｔ２９：
時刻Ｔ２９において出力制御信号Ｓｃｏｎｔがハイレベルに変化すると、このとき入力信号ＣＫはハイレベルであるため、第４の制御信号Ｓ４はローレベルのまま変化しない。したがって、フリップフロップ４０８やラッチ回路４０４の出力信号もローレベルのまま変化しない。
【０１４６】
時刻Ｔ３０：
入力信号ＣＫがハイレベルからローレベルに変化すると、ラッチ回路４１２が透過状態になり、第４の制御信号Ｓ４はハイレベルに変化する（図２２（Ｈ））。
【０１４７】
時刻Ｔ３１：
第４の制御信号Ｓ４がハイレベルになると、基準クロック信号ＳＣＫの立ち上がり時刻Ｔ３１において、フリップフロップ４０８の保持信号Ｓ４０８はハイレベルに変化する（図２２（Ｃ））。
【０１４８】
時刻Ｔ３２：
時刻Ｔ３２において、入力信号ＣＫがローレベルからハイレベルに変化すると、第４の制御信号Ｓ４はハイレベルのまま保持される。また、ラッチ回路４０４が透過状態になるため、第３の制御信号Ｓ３はローレベルからハイレベルに変化する（図２２（Ｉ））。第３の制御信号Ｓ３がハイレベルになることから、出力信号ＥＣＫはハイレベルに保持される（図２２（Ｊ））。
【０１４９】
時刻Ｔ３３：
フリップフロップ４０８の保持信号Ｓ４０８が時刻Ｔ３３においてフリップフロップ４０９に保持され、その保持信号Ｓ４０９がハイレベルになる（図２２（Ｄ））。
【０１５０】
時刻Ｔ３４：
信号Ｓ４０８およびＳ４０９がともにハイレベルであることから、ＡＮＤ回路４１０の出力信号もハイレベルになる。この出力信号が時刻Ｔ３４においてフリップフロップ４１１に保持されると、第１の制御信号Ｓ１がハイレベルになる（図２２（Ｅ））。
【０１５１】
時刻Ｔ３６：
ハイレベルの第１の制御信号Ｓ１が時刻Ｔ３６においてフリップフロップ４０３に保持され、第２の制御信号Ｓ２がハイレベルになる（図２２（Ｆ））。第２の制御信号Ｓ２がハイレベルになることから、出力信号ＥＣＫはローレベルに保持される（図２２（Ｊ））。
【０１５２】
図２３は、図２１に示す出力制御回路１Ａにおいて信号出力が停止される場合の各信号のタイミングの一例を示す第２のタイミングチャートであり、クロック信号ＣＫがローレベル一定のままでも信号出力が停止される例を示す。
図２３のタイミングチャートにおいても、図２２と同様に、初期状態において出力制御信号Ｓｃｏｎｔ（図２３（Ｂ））はローレベルであり、入力信号ＣＫ（図２３（Ｇ））が出力信号ＥＣＫ（図２３（Ｊ））として出力されている。
【０１５３】
時刻Ｔ３７：
時刻Ｔ３７において出力制御信号Ｓｃｏｎｔがハイレベルに変化すると、このとき入力信号ＣＫはローレベルであるため、第４の制御信号Ｓ４はハイレベルに変化する（図２３（Ｈ））。
【０１５４】
時刻Ｔ３８：
第４の制御信号Ｓ４がハイレベルになると、基準クロック信号ＳＣＫの立ち上がり時刻Ｔ３８において、フリップフロップ４０８の保持信号Ｓ４０８はハイレベルに変化する（図２３（Ｃ））。
【０１５５】
時刻Ｔ３９：
フリップフロップ４０８の保持信号Ｓ４０８がハイレベルになると、さらに次の基準クロック信号ＳＣＫの立ち上がり時刻Ｔ３９において、フリップフロップ４０９の保持信号Ｓ４０９がハイレベルになる（図２３（Ｄ））。
【０１５６】
時刻Ｔ４０：
信号Ｓ４０８およびＳ４０９がハイレベルであることから、ＡＮＤ回路４１０の出力信号はハイレベルになる。この出力信号が時刻Ｔ４０においてフリップフロップ４１１に保持され、第１の制御信号Ｓ１がハイレベルになる（図２３（Ｅ））。第１の制御信号Ｓ１がハイレベルになると、ＯＲ回路４０５の出力信号がハイレベルになり、出力信号ＥＣＫがハイレベルになる（図２３（Ｊ））。
【０１５７】
時刻Ｔ４１：
ハイレベルの第１の制御信号Ｓ１が時刻Ｔ４１においてフリップフロップ４０３に保持され、第２の制御信号Ｓ２がハイレベルになる（図２３（Ｆ））。第２の制御信号Ｓ２がハイレベルになることから、出力信号ＥＣＫはローレベルに保持される（図２３（Ｊ））。
以降、時刻Ｔ４２において入力信号ＣＫがハイレベルに変化すると、これに応じて、第３の制御信号Ｓ３はハイレベルになるが（図２３（Ｉ））、既に第２の制御信号Ｓ２がハイレベルになっているため、出力信号ＥＣＫはローレベルのまま変化しない（図２３（Ｊ））。
【０１５８】
一方、図２３（Ｋ）〜（Ｎ）は、図２３（Ｂ）および（Ｇ）と同様なタイミングの信号ＡＮＤｍおよびクロック信号ＣＫｍが、図４に示す出力制御回路１ｍ与えられる場合のタイミングチャートである。なお、出力制御信号Ｓｃｏｎｔは、図４におけるＡＮＤ回路１１ｍの出力信号ＡＮＤｍを論理反転させた信号と等価である。
【０１５９】
出力制御回路１ｍでは、時刻Ｔ３７において信号ＡＮＤｍがローレベルに変化しても、クロック信号ＣＫｍがハイレベルに立ち上がる時刻Ｔ４２まで、フリップフロップ１２ｍの保持信号ＣＥｍはハイレベルのまま変化しない（図２３（Ｌ））。
時刻Ｔ４２においてクロック信号ＣＫｍがハイレベルに立ち上がった後、さらに時刻Ｔ４３においてクロック信号ＣＫｍがローレベルに立ち下がったところで、クロックイネーブラ１４ｍにおけるラッチ回路１４１ｍの出力信号がローレベルになり、出力信号ＥＣＫがローレベルに保持される（図２３（Ｎ））。
出力信号ＥＣＫがローレベルに保持された後、さらに次のクロック信号ＣＫｍの立ち上がり時刻Ｔ４４において、状態信号ＳＴｍがハイレベルからローレベルに変化する（図２３（Ｍ））。この時点において、信号出力の停止がイネーブル信号生成回路２に通知される。
このように、図４に示す出力制御回路１ｍでは、ＡＮＤ回路１１ｍの信号ＡＮＤｍが信号出力の停止を示すローレベルに変化した場合でも、クロック信号ＣＫｍがローレベルのまま変化しなければ、いつまでも信号出力の停止を完了させることができない。
【０１６０】
以上説明したように、図２１に示す出力制御回路４Ａによれば、信号出力の停止を示すハイレベルの出力制御信号Ｓｃｏｎｔが入力されたときに出力中の入力信号ＣＫがローレベルの場合、入力信号ＣＫのローレベルからハイレベルの変化、または、基準クロック信号ＳＣＫに同期して、第１の制御信号Ｓ１または第３の制御信号Ｓ３がハイレベルになり、これに応じて、出力信号ＥＣＫがハイレベルに保持される。出力信号ＥＣＫがハイレベルに保持された後、基準クロック信号ＳＣＫに同期して、出力信号ＥＣＫがローレベルに保持される。
したがって、図２１に示す出力制御回路４Ａでは、入力信号ＣＫがローレベル一定のままでも、基準クロック信号ＳＣＫに同期して、出力信号ＥＣＫを確実にローレベルに保持させることができる。
【０１６１】
また、図２１に示す出力制御回路４Ａにおいては、基準クロック信号ＳＣＫ、入力信号ＣＫ、および出力制御信号Ｓｃｏｎｔが互いに任意のタイミングを持つ場合、ラッチ回路４１２およびフリップフロップ４０８においてメタステーブルを生じる可能性がある。
しかしながら、ラッチ回路４１２において生じるメタステーブルが入力信号ＣＫの半周期（もしくは、入力信号ＣＫの立ち上がりから立ち下がりまでの期間）より短いものとすると、その振動は次段のラッチ回路４０４において信号の保持動作が行われる前に消滅することになる。この消滅までの間、第３の制御信号Ｓ３には振動成分が生じるが、このとき入力信号ＣＫはハイレベルであるため、ＯＲ回路４０５の出力信号に振動成分は生じない。
また、フリップフロップ４０８において生じるメタステーブルが基準クロック信号ＳＣＫの１周期より短いものとすると、その振動は次段のフリップフロップ４０９、４１１において信号の保持動作が行われる前に消滅することになるため、これらの出力信号にも振動成分を生じない。
【０１６２】
すなわち、入力信号ＣＫがローレベルを持つ場合、出力制御信号Ｓｃｏｎｔをそのまま第４の制御信号Ｓ４として出力し、入力信号ＣＫのローレベルからハイレベルへのレベル変化に同期して、第４の制御信号Ｓ４の状態を保持するラッチ回路４１２が、ラッチ回路４０４の前段に設けられているため、ＯＲ回路４０５の出力信号に振動成分が生じることを防止できる。
【０１６３】
また、直列接続された複数段のフリップフロップ（４０８、４１０）において、初段のフリップフロップ４０８に保持された第４の制御信号Ｓ４が、基準クロック信号ＳＣＫに同期して次段のフリップフロップに順次シフトされ、第１の制御信号Ｓ１として出力されるため、フリップフロップ４０８において発生したメタステーブルの振動成分が第１の制御信号Ｓ１に含まれることを防止できる。
すなわち、本発明の出力制御回路に含まれる第１の制御信号出力回路は、直列接続された複数段の信号保持回路を含み、基準クロック信号に同期して、初段の信号保持回路に入力された第４の制御信号を次段の信号保持回路へ順にシフトさせるシフト回路（図２１の例では、フリップフロップ４０８およびフリップフロップ４０９を含むユニット）を有しても良い。これにより、初段の信号保持回路において発生したメタステーブル等の振動成分が第１の制御信号に含まれることを防止できる。
【０１６４】
なお、ＯＲ回路４０５の出力信号に振動成分が生じるほどラッチ回路４１２のメタステーブル期間が長い場合には、ラッチ回路の直列段数を更に増やすことにより、この振動成分を容易に除去することができる。この場合におけるラッチ回路の直列回路では、ローレベルの入力信号ＣＫで信号保持を行うラッチ回路と、ハイレベルの入力信号ＣＫで信号保持を行うラッチ回路４０４とが、交互に接続される。
第１の制御信号Ｓ１に振動成分を生じるほどフリップフロップ４０８のメタステーブル期間が長い場合には、フリップフロップの直列段数を更に増やすことにより、この振動成分を容易に除去することができる。
【０１６５】
また、図２１に示す出力制御回路４Ａによれば、ラッチ回路４１２において、入力信号ＣＫのローレベルのタイミングで第４の制御信号Ｓ４が保持され、この保持信号がフリップフロップ４０８、４０９、４１１を経て第１の制御信号Ｓ１として出力されるため、次に述べるような出力信号ＥＣＫのグリッチを防止することができる。
【０１６６】
図２４は、図２１に示す出力制御回路４Ａに対して、フリップフロップ４０８に出力制御信号Ｓｃｏｎｔが直接与えられるように変更が施された場合の回路図を示す。なお、図２４に示す出力制御回路においては、図２１におけるＡＮＤ回路４１０およびフリップフロップ４１１が削除されており、フリップフロップ４０９の保持信号が第１の制御信号Ｓ１として出力されている。
【０１６７】
図２５は、図２４に示す出力制御回路において、出力信号ＥＣＫにローレベルのグリッチが生じる場合のタイミングチャートを示す。
入力信号ＣＫ（図２５（Ｅ））がハイレベルを有する時刻Ｔ４５において出力制御信号Ｓｃｏｎｔがローレベルからハイレベルに変化し（図２５（Ａ））、入力信号ＣＫがハイレベルのまま、基準クロック信号ＳＣＫ（図２５（Ｂ））の立ち上がり時刻Ｔ４６においてフリップフロップ４０８にハイレベルが保持されると（図２５（Ｃ））、第１の制御信号Ｓ１、第３の制御信号Ｓ３および第４の制御信号Ｓ４がローレベルのまま、フリップフロップ４０８の保持信号Ｓ４０８がハイレベルになる。こうした状態において、入力信号ＣＫがローレベルに変化すると（時刻Ｔ４７）、第１の制御信号Ｓ１および第３の制御信号Ｓ３がローレベルであることから、出力信号ＥＣＫはローレベルになる（図２５（Ｆ））。その直後に基準クロック信号ＳＣＫが立ち上がると（時刻Ｔ４８）、これに同期して第１の制御信号Ｓ１がハイレベルになり（図２５（Ｄ））、出力信号ＥＣＫはハイレベルになる。
【０１６８】
このように、図２４に示す出力制御回路では、入力信号ＣＫがハイレベルの状態のまま第１の制御信号Ｓ１がハイレベルに変化可能であるため、第１の制御信号Ｓ１がハイレベルに変化する直前で入力信号ＣＫがローレベルに変化すると、出力信号ＥＣＫにローレベルのグリッチを生じてしまう。
一方、図２１に示す出力制御回路４Ａにおいて、第１の制御信号Ｓ１がハイレベルに変化するためには、ハイレベルの出力制御信号Ｓｃｏｎｔが与えられた場合において、入力信号ＣＫが一旦ローレベルになって第４の制御信号Ｓ４がハイレベルになる必要がある。このため、第１の制御信号Ｓ１がハイレベルになる直前において入力信号ＣＫがハイレベルの場合、既に第４の制御信号Ｓ４がハイレベルであることから、第３の制御信号Ｓ３もハイレベルになっている。この状態で、第１の制御信号Ｓ１がハイレベルに変化する直前に入力信号ＣＫがローレベルに変化しても、ラッチ回路４０４において第３の制御信号Ｓ３がハイレベルに保持されるため、出力信号ＥＣＫはハイレベルのまま保持され、図２５（Ｆ）に示すようなローレベルのグリッチを生じることはない。
【０１６９】
また、図２１に示す出力制御回路４Ａによれば、直列接続された２段のフリップフロップ４０８、４０９において、何れもハイレベルの信号が保持されている場合、基準クロック信号ＳＣＫに同期して、ハイレベルを有する第１の制御信号Ｓ１がフリップフロップ４１１から出力されるので、次に述べるような出力信号ＥＣＫのグリッチを防止することができる。
【０１７０】
図２６は、図２１に示す出力制御回路４Ａにおいて、フリップフロップ４０９とＡＮＤ回路４１０を削除し、フリップフロップ４０８の保持信号Ｓ４０８をフリップフロップ４１１へ直接入力する場合の回路図であり、図２７はそのタイミングチャートを示す。
【０１７１】
図２７の例では、初期状態において、出力制御信号Ｓｃｏｎｔ（図２７（Ａ））、第４の制御信号Ｓ４（図２７（Ｃ））、第３の制御信号Ｓ３（図２７（Ｄ））および第１の制御信号Ｓ１（図２７（Ｇ））が何れもローレベルになっている。
この状態で、出力制御信号Ｓｃｏｎｔと入力信号ＣＫが近いタイミングで共に立ち上がると（時刻Ｔ４９）、ラッチ回路４１２の出力信号である第４の制御信号Ｓ４にメタステーブルの振動が起こる（図２７（Ｃ））。この振動期間において基準クロック信号ＳＣＫが立ち上がると（時刻Ｔ５０）、フリップフロップ４０８の保持信号Ｓ４０８にもメタステーブルの振動が起こる（図２７（Ｆ））。
【０１７２】
つまり、第４の制御信号Ｓ４に生じたメタステーブルの振動成分が二手に分岐し、一方はラッチ回路４０４へ、他方はフリップフロップ４１１へ入力される。ところが、図２７（Ｃ）および（Ｆ）を比較して分かるように、第４の制御信号Ｓ４に生じたメタステーブルの振動成分はローレベルへ収束するのに対し、信号Ｓ４０８に生じたメタステーブルの振動成分はハイレベルに収束する。この状態で入力信号ＣＫがローレベルに変化すると（時刻Ｔ５１）、第１の制御信号Ｓ１および第３の制御信号Ｓ３がローレベルであるため、出力信号ＥＣＫはローレベルになる（図２７（Ｈ））。その直後に基準クロック信号ＳＣＫが立ち上がると（時刻Ｔ５２）、第１の制御信号Ｓ１がハイレベルに変化して、出力信号ＥＣＫはハイレベルになる。
このように、図２６に示す出力制御回路では、ラッチ回路４１２の出力から二手に分岐するメタステーブルの振動成分が互いに異なるレベルに収束する可能性がある。たとえば、ラッチ回路４１２においてローレベルの第４の制御信号Ｓ４が保持されるにも関わらず、フリップフロップ４１１においてハイレベルの信号Ｓ４０８が保持される場合、図２７（Ｈ）に示すようなグリッチを生じる可能性がある。
【０１７３】
これに対し、図２１に示す出力制御回路１Ａでは、直列接続された２段のフリップフロップ４０８、４０９において、何れもハイレベルの信号が保持されている場合に、基準クロック信号ＳＣＫに同期して、ハイレベルを有する第１の制御信号Ｓ１がフリップフロップ４１１から出力される。このため、少なくとも基準クロック信号ＳＣＫの２サイクルの間、第４の制御信号Ｓ４がハイレベルに保持されていなければ、第１の制御信号Ｓ１としてハイレベルの信号が出力されることはない。
図２７に示すように、第４の制御信号Ｓ４と信号Ｓ４０８とが異なるレベルに収束する場合、信号Ｓ４０８は基準クロック信号ＳＣＫの１サイクルごとにハイレベルとローレベルとを繰り返すため、信号Ｓ４０８およびＳ４０９は異なるレベルを持つ。このような場合、図２１に示す出力制御回路１Ａにおいては第１の制御信号Ｓ１がローレベルに保持されるため、図２７（Ｈ）に示すようなグリッチの発生を防止することができる。
すなわち、本発明の出力制御回路に含まれる第１の制御信号出力回路は、上述したシフト回路に加えて、このシフト回路の複数段の信号保持回路に保持された制御信号が何れも入力信号の出力を無効化する信号の場合、基準クロック信号に同期して、入力信号の出力を無効化する第１の制御信号を出力する出力回路（図２１の例では、ＡＮＤ回路４１０およびフリップフロップ４１１を含むユニット）を有しても良い。これにより、出力信号のグリッチを防止することができる。
【０１７４】
なお、ラッチ回路４１２の第４の制御信号Ｓ４に生じるメタステーブルの振動成分が基準クロック信号ＳＣＫの複数サイクルにわたって持続する場合は、フリップフロップの直列段数を更に増やし、各段の保持信号がハイレベルになることを条件としてフリップフロップ４１１にハイレベルの信号を入力するＡＮＤ回路を設けることにより、上述したグリッチを容易に防止することができる。
【０１７５】
また、図２１に示す出力制御回路４Ａによれば、ＡＮＤ回路４１０の後段にフリップフロップ４１１を設けており、このフリップフロップ４１１の保持信号を第１の制御信号Ｓ１として出力しているため、次に述べるように、フリップフロップ４０８の保持信号Ｓ４０８に生じる振動成分が出力信号ＥＣＫに混入することを防止できる。
【０１７６】
図２８は、図２１に示す出力制御回路４Ａにおいてフリップフロップ４１１を削除し、ＡＮＤ回路４１０の出力を直接第１の制御信号Ｓ１として出力する場合の回路図であり、図２９はそのタイミングチャートを示す。
出力制御信号Ｓｃｏｎｔ（図２９（Ａ））および入力信号ＣＫ（図２９（Ｂ））の立ち上がりが近接して起こると（時刻Ｔ５４）、ラッチ回路４１２においてメタステーブルが発生し、第４の制御信号Ｓ４に振動成分が生じる（図２９（Ｃ））。さらに、第４の制御信号Ｓ４が振動した状態で基準クロック信号ＳＣＫが立ち上がると（時刻Ｔ５５）、フリップフロップ４０８の保持信号Ｓ４０８にもメタステーブルの振動が生じる（図２９（Ｅ））。第４の制御信号Ｓ４の振動がローレベルへ収束し、信号Ｓ４０８の振動がハイレベルへ収束した状態で、入力信号ＣＫの立ち下がりと基準クロック信号ＳＣＫの立ち上がりとが近接して起こると（時刻Ｔ５６）、第４の制御信号Ｓ４および基準クロック信号ＳＣＫの立ち上がりが近接するため、信号Ｓ４０８には再びメタステーブルの振動が生じる（図２９（Ｅ））。また、基準クロック信号ＳＣＫの立ち上がり時において信号Ｓ４０８はハイレベルであるため、フリップフロップ４０９の保持信号Ｓ４０９はハイレベルに変化する。
【０１７７】
信号Ｓ４０９がハイレベルになり、信号Ｓ４０８に振動成分が生じると、ＡＮＤ回路４１０の出力信号には信号Ｓ４０８の振動成分が生じる。また、時刻Ｔ５６において入力信号ＣＫはローレベルに立ち下がり、第３の制御信号Ｓ３はローレベルのまま保持されるため、ＯＲ回路４０５の出力信号はＡＮＤ回路４１０の出力信号と等しくなる。結果として、出力信号ＥＣＫには、信号Ｓ４０８の振動成分が混入してしまう。
一方、図２１に示す出力制御回路では、ＡＮＤ回路４１０の出力信号を基準クロック信号ＳＣＫに同期して保持した信号が、第１の制御信号Ｓ１としてラッチ回路４１１より出力されるため、信号Ｓ４０８の振動成分が出力信号ＥＣＫに直接混入することを防止できる。
【０１７８】
＜第９の実施形態＞
次に、本発明の第９の実施形態について述べる。
上述した出力制御回路４および４Ａは、信号出力の停止を示すハイレベルの出力制御信号Ｓｃｏｎｔが与えられた場合に、入力信号ＣＫがローレベル一定であっても、出力信号ＥＣＫをローレベルに保持して信号出力を停止させることが可能である。しかしながら、入力信号ＣＫがハイレベル一定の場合は、信号出力を停止させることができない問題がある。
第９の実施形態では、信号出力の停止に関する上述した問題の改善が図られる。
【０１７９】
図３０は、本発明の第９の実施形態に係る出力制御回路１Ｂの構成の一例を示す回路図である。
図２１と図３０の同一符号は同一の構成要素を示す。図３０に示す出力制御回路４Ｂは、図２１に示す出力制御回路４Ａと同等な構成を有するとともに、ラッチ回路４１３および４１４と、フリップフロップ４１５、４１６および４１８と、ＡＮＤ回路４１７と、ＯＲ回路４１９とを有する。
ラッチ回路４１３は、本発明の第５の制御信号出力回路の一実施形態である。
ラッチ回路４１４は、本発明の第６の制御信号出力回路の一実施形態である。
フリップフロップ４１５、４１６、４１８、およびＡＮＤ回路４１７を含むユニットは、本発明の第７の制御信号出力回路の一実施形態である。
ＯＲ回路４０５、４１９、およびＡＮＤ回路４０６を含むユニットは、本発明の入力信号出力回路の一実施形態である。
【０１８０】
ラッチ回路４１３は、入力信号ＣＫがハイレベルの場合に、出力制御信号Ｓｃｏｎｔをそのまま第５の制御信号Ｓ５として出力し、入力信号ＣＫのハイレベルからローレベルへの立ち下がりに同期して、この第５の制御信号Ｓ５の状態を保持する。
【０１８１】
ラッチ回路４１４は、入力信号ＣＫがローレベルの場合に、第５の制御信号Ｓ５をそのまま第６の制御信号Ｓ６として出力し、入力信号ＣＫのローレベルからハイレベルへの立ち上がりに同期して、この第６の制御信号Ｓ６の状態を保持する。
【０１８２】
フリップフロップ４１５は、第５の制御信号Ｓ５を基準クロック信号ＳＣＫに同期して保持する。
フリップフロップ４１６は、フリップフロップ４１５に保持された信号Ｓ４１５を基準クロック信号ＳＣＫに同期して保持する。
ＡＮＤ回路４１７は、フリップフロップ４１５に保持された信号Ｓ４１５と、フリップフロップ４１６に保持された信号Ｓ４１６との論理積を演算する。
フリップフロップ４１８は、ＡＮＤ回路４１７の出力信号を基準クロック信号ＳＣＫに同期して保持し、第７の制御信号Ｓ７として出力する。
【０１８３】
ＯＲ回路４１９は、第２の制御信号Ｓ２、第６の制御信号Ｓ６および第７の制御信号Ｓ７を入力し、その論理和を演算する。
ＡＮＤ回路４０６は、ＯＲ回路４１９の出力信号を論理反転した信号とＯＲ回路４０５の出力信号との論理積を演算し、その演算結果を出力信号ＥＣＫとして出力する。
【０１８４】
ここで、上述した構成を有する出力制御回路４Ｂの動作について説明する。
出力制御回路４Ｂにおいては、出力信号ＥＣＫをローレベルに保持する信号として、既に述べた第２の制御信号Ｓ２の他に、第６の制御信号Ｓ６および第７の制御信号Ｓ７が生成される。第２の制御信号Ｓ２がローレベルのままでも、この第６の制御信号Ｓ６または第７の制御信号Ｓ７がハイレベルになることにより出力信号ＥＣＫがローレベルに保持される点が、図２１に示す出力制御回路１Ａと異なる。
【０１８５】
第６の制御信号Ｓ６は、ハイレベルの出力制御信号Ｓｃｏｎｔが与えられた状態で入力信号ＣＫがハイレベルからローレベルに変化するときに、ローレベルからハイレベルへ変化する。
また、第７の制御信号Ｓ７は、ハイレベルの出力制御信号Ｓｃｏｎｔが与えられた状態で入力信号ＣＫがハイレベルになった後、さらに基準クロック信号ＳＣＫの立ち上がりパルスが３回入力された時点で、ローレベルからハイレベルに変化する。ただしこの場合、前半の２回の立ち上がりパルスが入力された時点で、フリップフロップ４１５および４１６に何れもハイレベルの信号が保持される必要がある。
【０１８６】
したがって、図３０に示す出力制御回路４Ｂによれば、入力信号ＣＫがハイレベル一定の状態で信号出力の停止を示す出力制御信号Ｓｃｏｎｔが与えられた場合でも、基準クロック信号ＳＣＫに同期して第７の制御信号Ｓ７がハイレベルになり、出力信号ＥＣＫを確実にローレベルに保持させることができる。
【０１８７】
図３１は、図３０に示す出力制御回路４Ｂにおいて信号出力が停止される場合おける各信号のタイミングの一例を示すタイミングチャートである。
出力制御信号Ｓｃｏｎｔ（図３１（Ｂ））がハイレベルへ変化する時刻Ｔ５７から、出力信号ＥＣＫ（図３１（Ｏ））がローレベルに保持される時刻Ｔ６０において、入力信号ＣＫ（図３１（Ｊ））はハイレベル一定である。このため、この期間において第４の制御信号Ｓ４（図３１（Ｋ））、第３の制御信号Ｓ３（図３１（Ｌ））、第１の制御信号Ｓ１（図３１（Ｅ））および第２の制御信号Ｓ２（図３１（Ｆ））は何れもローレベルのままであり、これらの制御信号は信号出力の停止に関与しない。
【０１８８】
時刻Ｔ５７において出力制御信号Ｓｃｏｎｔがハイレベルに変化すると、入力信号ＣＫがハイレベルであることから、第５の制御信号Ｓ５がハイレベルに変化する（図３１（Ｍ））。第５の制御信号Ｓ５がハイレベルに変化すると、基準クロック信号ＳＣＫの立ち上がり時刻Ｔ５８に同期して、フリップフロップ４１５にハイレベルの信号Ｓ４１５が保持される（図３１（Ｇ））。以降、基準クロック信号ＳＣＫに同期して、フリップフロップ４１６の保持信号Ｓ４１６（図３１（Ｈ））、フリップフロップ４１８の保持信号である第７の制御信号Ｓ７（図３１（Ｉ））が、順にハイレベルになる。第７の制御信号Ｓ７がハイレベルになると（時刻Ｔ６０）、出力信号ＥＣＫはローレベルに保持される（図３１（Ｏ））。
【０１８９】
このように、入力信号ＣＫがハイレベル一定の状態でも、基準クロック信号ＳＣＫに同期して、出力信号ＥＣＫをローレベルに保持させることができる。
【０１９０】
ところで、図３０に示す出力制御回路４Ｂにおいては、基準クロック信号ＳＣＫ、入力信号ＣＫ、および出力制御信号Ｓｃｏｎｔが互いに任意のタイミングを持つ場合、ラッチ回路４１３およびフリップフロップ４１５においてメタステーブルを生じる可能性がある。
【０１９１】
しかしながら、フリップフロップ４１５において生じるメタステーブルが基準クロック信号ＳＣＫの１周期より短いものとすると、その振動成分は、次段のフリップフロップ４１６において信号の保持動作が行われる前に消滅するため、振動成分が第７の制御信号Ｓ７に含まれることはない。
すなわち、本発明の出力制御回路に含まれる第７の制御信号出力回路は、直列接続された複数段の信号保持回路を含み、上記基準クロック信号に同期して、初段の信号保持回路に入力された第５の制御信号を次段の信号保持回路へ順にシフトさせるシフト回路（図３０の例では、フリップフロップ４１５および４１６を含むユニット）を有しても良い。これにより、初段の信号保持回路において発生したメタステーブル等の振動成分が第７の制御信号に含まれることを防止できる。
【０１９２】
また、図３０に示す出力制御回路４Ｂでは、ラッチ回路４１３において発生するメタステーブルの振動成分がフリップフロップ４１５に分岐する場合、ラッチ回路４１３およびフリップフロップ４１５に保持される信号が互いに異なるレベルに収束する可能性がある。
仮に、フリップフロップ４１５がＡＮＤ回路４１７を介さず直接フリップフロップ４１８に入力されているものとする。この場合、メタステーブルの振動状態を経て第５の制御信号Ｓ５がローレベル、信号Ｓ４１５がハイレベルに収束すると、クロック信号ＣＫがローレベルからハイレベルに立ち上がった直後に、第６の制御信号Ｓ６がローレベルのままの状態で、第７の制御信号Ｓ７がローレベルからハイレベルに立ち上がる可能性がある。このとき第２の制御信号Ｓ２がローレベルであるとすると、出力信号ＥＣＫにはハイレベルのグリッチが生じてしまう。
【０１９３】
これに対し、図３０に示す出力制御回路１Ｂでは、直列接続された２段のフリップフロップ４１５、４１６において、何れもハイレベルの信号が保持されている場合に、基準クロック信号ＳＣＫに同期して、ハイレベルを有する第７の制御信号Ｓ７がフリップフロップ４１８から出力される。このため、少なくとも基準クロック信号ＳＣＫの２サイクルの間、第５の制御信号Ｓ５がハイレベルに保持されていなければ、第７の制御信号Ｓ７としてハイレベルの信号が出力されることはない。
上述したメタステーブルの振動成分の分岐によって第５の制御信号Ｓ５と信号Ｓ４１５とが異なるレベルに収束する場合、信号Ｓ４１５は基準クロック信号ＳＣＫの１サイクルごとにハイレベルとローレベルとを繰り返すため、信号Ｓ４１５およびＳ４１６は異なるレベルを持つ。このような場合、図３０に示す出力制御回路１Ｂにおいては第７の制御信号Ｓ７がローレベルに保持されるため、出力信号の上述したグリッチを防止することができる。
すなわち、本発明の出力制御回路に含まれる第７の制御信号出力回路は、上述したシフト回路に加えて、このシフト回路の複数段の信号保持回路に保持された制御信号が何れも入力信号の出力を無効化する信号の場合、基準クロック信号に同期して、入力信号の出力を無効化する第７の制御信号を出力する出力回路（図３０の例では、ＡＮＤ回路４１７およびフリップフロップ４１８を含むユニット）を有しても良い。これにより、出力信号のグリッチを防止することができる。
【０１９４】
なお、第７の制御信号Ｓ７に振動成分が生じるほどフリップフロップ４１５のメタステーブル期間が長い場合には、フリップフロップの直列段数を更に増やすことにより、この振動成分を容易に除去することができる。
【０１９５】
一方、ラッチ回路４１３のメタステーブルは、入力信号ＣＫの立ち下がりにおいて発生する。入力信号ＣＫがローレベルになると、ラッチ回路４１４は透過状態になるため、メタステーブルの振動を含む第５の制御信号Ｓ５がそのまま第６の制御信号Ｓ６として出力される。すなわち、出力制御信号Ｓｃｏｎｔがハイレベルの状態で入力信号ＣＫがハイレベルからローレベルへ立ち下がる場合、第６の制御信号Ｓ６は、メタステーブルの振動を生じながらハイレベルまたはローレベルの何れかに収束するか、あるいは、メタステーブルの振動を生じずにハイレベルに保持される。
【０１９６】
第６の制御信号Ｓ６のこうした振動が出力信号ＥＣＫに混入しないことを保証するためには、第６の制御信号Ｓ６にメタステーブルの振動が生じる期間においてＯＲ回路４０５の出力信号Ｓ４０５がローレベルであることを保証すれば良い。すなわち、第６の制御信号Ｓ６は出力信号ＥＣＫをローレベルに保持させるための信号であることから、出力信号Ｓ４０５がローレベルであれば、第６の制御信号Ｓ６に振動が生じていても、この振動が出力信号ＥＣＫに混入することはない。
【０１９７】
第６の制御信号Ｓ６にメタステーブルの振動が生じる期間は、出力制御信号Ｓｃｏｎｔがハイレベルへ立ち上がるとともに、入力信号ＣＫがローレベルへ立ち下がるメタステーブルの発生時点から、メタステーブルの持続期間が終了する時点までである。
メタステーブルの持続期間が入力信号ＣＫの半周期（もしくは、入力信号ＣＫの立ち下がりから立ち上がりまでの期間）より短いものとすると、第３の制御信号Ｓ３および入力信号ＣＫがハイレベルへ変化する前にメタステーブルが収束する。このため、第６の制御信号Ｓ６のメタステーブル期間にこれらの信号がハイレベルへ変化することはない。
また、第１の制御信号Ｓ１がハイレベルになるためには、入力信号ＣＫの立ち下がり時点から少なくとも基準クロック信号ＳＣＫの３サイクル分の期間が必要である。このため、基準クロック信号ＳＣＫの１周期がラッチ回路のメタステーブル期間より長いものとすると、第６の制御信号Ｓ６のメタステーブル期間に第１の制御信号Ｓ１がハイレベルへ変化することもない。
したがって、以上のような条件の元では、第６の制御信号Ｓ６にメタステーブルの振動が生じたとしてもＯＲ回路４０５の出力信号Ｓ４０５がローレベルのままであるため、こうした振動が出力信号ＥＣＫに混入することを防止できる。
【０１９８】
また、図３０に示す出力制御回路においては、第６の制御信号Ｓ６および第７の制御信号Ｓ７がローレベルからハイレベルに変化するタイミングと、ＯＲ回路４０５の出力信号Ｓ４０５がローレベルからハイレベルに変化するタイミングとが近接すると、出力信号ＥＣＫにグリッチを生じる可能性がある。
【０１９９】
第６の制御信号Ｓ６がハイレベルになるタイミングは、入力信号ＣＫがハイレベルからローレベルへ変化した直後である。したがって、このタイミングに近接して入力信号ＣＫがハイレベルに変化することはない。
【０２００】
また、入力信号ＣＫがローレベルへ変化する前の期間、すなわち入力信号ＣＫがハイレベルの期間において、ラッチ回路４１２により第４の制御信号Ｓ４および第３の制御信号Ｓ３がローレベルに保持されるものとすると、入力信号ＣＫがローレベルへ変化した後も、ラッチ回路４０４により第３の制御信号Ｓ３はローレベルのまま保持され、次に入力信号ＣＫがハイレベルになるまでこの状態が保持される。したがって、第６の制御信号Ｓ６がハイレベルになるタイミングに近接して、第３の制御信号Ｓ３がハイレベルに変化することもない。
【０２０１】
また、入力信号ＣＫがローレベルへ変化する前のハイレベル期間において、第４の制御信号Ｓ４および第３の制御信号Ｓ３がローレベルに保持されるものとすると、入力信号ＣＫがローレベルへ変化した直後において、第４の制御信号Ｓ４はハイレベルに変化する。このハイレベルの信号がフリップフロップ４１１から第１の制御信号Ｓ１として出力されるまでには、少なくとも基準クロック信号ＳＣＫの３サイクル分の期間が必要である。
仮に、入力信号ＣＫがローレベルへ変化する前のハイレベル期間において、第４の制御信号Ｓ４が既にハイレベルであるとすると、この場合、第３の制御信号Ｓ３、信号Ｓ４０５もハイレベルになるため、出力信号ＥＣＫにグリッチを生じることはない。
したがって、第６の制御信号Ｓ６がハイレベルになるタイミングに近接して、第１の制御信号Ｓ１がハイレベルに変化することもない。
【０２０２】
以上のことから、第６の制御信号Ｓ６がローレベルからハイレベルに変化するタイミングに起因して、出力信号ＥＣＫにグリッチを生じることはない。
【０２０３】
一方、第７の制御信号Ｓ７がローレベルからハイレベルに変化するタイミングは、第５の制御信号Ｓ５がハイレベルに変化してから、少なくとも基準クロック信号ＳＣＫの３サイクル分の期間を経た後である。
第５の制御信号Ｓ５がハイレベルに変化するためには、出力制御信号Ｓｃｏｎｔがハイレベルの状態で入力信号ＣＫがハイレベルになる必要があるが、入力信号ＣＫがハイレベルからローレベルに変化してしまうと、この変化直後に第６の制御信号Ｓ６がハイレベルへ変化してしまうため、第７の制御信号Ｓ７に起因したグリッチは生じ得ない。
そこで、第７の制御信号Ｓ７に起因したグリッチの発生を検討するにあたっては、出力制御信号Ｓｃｏｎｔがハイレベルの状態で入力信号ＣＫがハイレベルになり、少なくとも第７の制御信号Ｓ７がハイレベルに変化する直前まで、入力信号ＣＫのハイレベルが保持されている場合を想定する必要がある。
したがって、第７の制御信号Ｓ７がハイレベルになるタイミングに近接して、入力信号ＣＫがハイレベルに変化することはない。
【０２０４】
また、既に述べたように、入力信号ＣＫがローレベルへ変化する前のハイレベル期間において、第４の制御信号Ｓ４が既にハイレベルであるとすると、出力信号ＥＣＫにグリッチを生じ得ないため、グリッチの発生を検討するにあたっては、入力信号ＣＫのハイレベル期間において第４の制御信号Ｓ４がローレベルである場合を想定する必要がある。すなわち、第７の制御信号Ｓ７がハイレベルに変化する直前まで、第４の制御信号Ｓ４はローレベルに保持される。
この場合を想定すると、仮に第７の制御信号Ｓ７がハイレベルに変化した直後に入力信号ＣＫがローレベルへ変化したとしても、ラッチ回路４０４によって第３の制御信号Ｓ３はローレベルのまま保持される。
したがって、第７の制御信号Ｓ７がハイレベルになるタイミングに近接して、第３の制御信号Ｓ３がハイレベルに変化することもない。
【０２０５】
また、第７の制御信号Ｓ７がハイレベルに変化する直前まで第４の制御信号Ｓ４はローレベルに保持されるため、仮に第７の制御信号Ｓ７がハイレベルに変化した直後に入力信号ＣＫがローレベルへ変化したとしても、その時点から第１の制御信号Ｓ１がハイレベルに変化するまでは、少なくとも基準クロック信号ＳＣＫの３サイクル分の期間を要する。
したがって、第７の制御信号Ｓ７がハイレベルになるタイミングに近接して、第１の制御信号Ｓ１がハイレベルに変化することもない。
【０２０６】
以上のことから、第７の制御信号Ｓ７がローレベルからハイレベルに変化するタイミングに起因して、出力信号ＥＣＫにグリッチを生じることはない。
【０２０７】
＜第１０の実施形態＞
次に、本発明の第１０の実施形態について述べる。
上述した出力制御回路４、４Ａにおいては、出力制御信号Ｓｃｏｎｔがハイレベルの期間に入力信号ＣＫが一度もハイレベルにならない場合、出力制御信号Ｓｃｏｎｔがローレベルに変化する時点において第３の制御信号Ｓ３はローレベルのままである。この状態で出力制御信号Ｓｃｏｎｔがローレベルになると、第２の制御信号Ｓ２がローレベルに変化した時点で、入力信号ＣＫが直ちに出力されてしまう。したがって、第２の制御信号Ｓ２がローレベルに変化した直後に入力信号ＣＫがハイレベルからローレベルへ立ち下がると、出力信号ＥＣＫにハイレベルのグリッチを生じてしまう。
第１０の実施形態に係る出力制御回路においては、このような信号出力の開始時に生じるグリッチの改善が図られる。
【０２０８】
図３２は、本発明の第１０の実施形態に係る出力制御回路４Ｃの構成の一例を示す回路図である。
図２１と図３２の同一符号は同一の構成要素を示す。図３２に示す出力制御回路４Ｃは、図２１に示す出力制御回路４Ａの同等な構成を有するとともに、フリップフロップ４２２と、ＯＲ回路４２３とを有する。また、図２１における２入力のＡＮＤ回路４１０は、３入力の回路に変更される。
【０２０９】
フリップフロップ４２２は、基準クロック信号ＳＣＫに同期して出力制御信号Ｓｃｏｎｔを保持し、この保持信号をクリア信号ＣＬＲ１として出力する。
３入力のＡＮＤ回路４１０は、フリップフロップ４０８および４０９の保持信号Ｓ４０８およびＳ４０９と、クリア信号ＣＬＲ１とを入力し、これらの３信号の論理積をフリップフロップ４１１へ出力する。
２入力のＯＲ回路４２３は、第２の制御信号Ｓ２と出力制御信号Ｓｃｏｎｔとを入力し、その論理和をラッチ回路４１２に出力する。
【０２１０】
図３２に示す出力制御回路４Ｃにおいは、第２の制御信号Ｓ２がＯＲ回路４２３を介してラッチ回路４１２に帰還されるため、出力制御信号Ｓｃｏｎｔがローレベルに変化しても、第２の制御信号Ｓ２がハイレベルである場合は、ラッチ回路４１２にハイレベルの信号が入力される。
一方、出力制御信号Ｓｃｏｎｔがローレベルになると、基準クロック信号ＳＣＫに同期して、クリア信号ＣＬＲ１、第１の制御信号Ｓ１、第２の制御信号Ｓ２の順にローレベルへ変化する。
【０２１１】
出力制御信号Ｓｃｏｎｔがハイレベルに変化してから第２の制御信号Ｓ２がローレベルへ変化するまでの間に、入力信号ＣＫが一度でもローレベルからハイレベルに変化すると、第３の制御信号Ｓ３はハイレベルになる。このため、第２の制御信号Ｓ２がハイレベルからローレベルへ変化すると、出力信号ＥＣＫは一旦ハイレベルになる。
この第３の制御信号Ｓ３がローレベルへ変化するのは、第２の制御信号Ｓ２がローレベルの状態で、入力信号ＣＫがローレベルからハイレベルへ立ち上がる時点である。
仮に、第２の制御信号Ｓ２がハイレベルからローレベルへ変化した直後に、入力信号ＣＫがローレベルからハイレベルへ立ち上がったとしても、このとき第３の制御信号Ｓ３がローレベルに変化する一方で入力信号ＣＫがハイレベルに変化するため、ＯＲ回路４０５の出力信号Ｓ４０５はハイレベルのまま変化せず、出力信号ＥＣＫにグリッチは生じない。
【０２１２】
また、出力制御信号Ｓｃｏｎｔがハイレベルに変化してから第２の制御信号Ｓ２がローレベルへ変化するまでの間に、入力信号ＣＫが一度もローレベルからハイレベルへ変化しないと、第３の制御信号Ｓ３はローレベルのままになる。このため、第２の制御信号Ｓ２がハイレベルからローレベルへ変化した直後も、出力信号ＥＣＫはローレベルのまま変化しない。
したがって、第２の制御信号Ｓ２がローレベルに変化した後に入力信号ＣＫがハイレベルに変化しても、出力信号ＥＣＫは入力信号ＣＫに応じてハイレベルに変化するだけであり、出力信号ＥＣＫにグリッチは生じない。
【０２１３】
図３３は、図３２に示す出力制御回路４Ｃにおいて信号出力が停止および開始される場合の各信号のタイミングの一例を示すタイミングチャートである。
【０２１４】
時刻Ｔ６１：
入力信号ＣＫ（図３３（Ｆ））がローレベルの状態で出力制御信号Ｓｃｏｎｔ（図３３（Ｂ））がローレベルからハイレベルに変化すると、第４の制御信号Ｓ４はローレベルからハイレベルに変化する（図３３（Ｇ））。
【０２１５】
時刻Ｔ６２〜Ｔ６４：
第４の制御信号Ｓ４がハイレベルになるため、基準クロック信号ＳＣＫ（図３３（Ａ））の立ち上がり時刻Ｔ６２に同期して、クリア信号ＣＬＲ１（図３３（Ｃ））がローレベルからハイレベルに変化する。また、このとき、フリップフロップ４０８の保持信号Ｓ４０８もハイレベルになる。
さらに、次の基準クロック信号ＳＣＫの立ち上がりにおいてフリップフロップ４０９の保持信号Ｓ４０９もハイレベルになると、ＡＮＤ回路４１０の出力信号はハイレベルになり、その次の基準クロック信号ＳＣＫの立ち上がり時刻Ｔ６３において、第１の制御信号Ｓ１がローレベルからハイレベルに変化する（図３３（Ｄ））。第１の制御信号Ｓ１がハイレベルになると、ＯＲ回路４０５の出力信号Ｓ４０５がハイレベルになり、出力信号ＥＣＫがハイレベルになる（図３３（Ｉ））。
出力信号ＥＣＫが一旦ハイレベルになった後、次の基準クロック信号ＳＣＫの立ち上がり時刻Ｔ６４において第２の制御信号Ｓ２がハイレベルになり（図３３（Ｅ））、出力信号ＥＣＫはローレベルに保持される。
この状態において、入力信号ＣＫの出力が停止される。
【０２１６】
時刻Ｔ６５：
出力制御信号Ｓｃｏｎｔがハイレベルからローレベルに変化すると、ＯＲ回路４２３の一方の入力信号はローレベルになるが、他方の入力信号（第２の制御信号Ｓ２）はハイレベルのままなので、ラッチ回路４１２の入力信号はハイレベルのままとなり、第４の制御信号Ｓ４もハイレベルのまま変化しない。
【０２１７】
時刻Ｔ６６：
基準クロック信号ＳＣＫの立ち上がり時刻Ｔ６６において、ローレベルの出力制御信号Ｓｃｏｎｔがフリップフロップ４２２に保持されると、クリア信号ＣＬＲ１がハイレベルからローレベルへ変化する（図３３（Ｃ））。これにより、ＡＮＤ回路４１０の出力信号もローレベルに変化する。
【０２１８】
時刻Ｔ６７：
基準クロック信号ＳＣＫの立ち上がり時刻Ｔ６７において、ローレベルとなったＡＮＤ回路４１０の出力信号がフリップフロップ４１１に保持されると、第１の制御信号Ｓ１がハイレベルからローレベルへ変化する（図３３（Ｄ））。
【０２１９】
時刻Ｔ６８：
この状態で、入力信号ＣＫがローレベルからハイレベルに変化すると、ハイレベルの第４の制御信号Ｓ４がラッチ回路４０４を透過し、第３の制御信号Ｓ３がローレベルからハイレベルに変化する（図３３（Ｈ））。
【０２２０】
時刻Ｔ６９：
基準クロック信号ＳＣＫの立ち上がり時刻Ｔ６９において、ローレベルの第１の制御信号Ｓ１がフリップフロップ４０３に保持されると、第２の制御信号Ｓ２がハイレベルからローレベルへ変化する（図３３（Ｅ））。これにより、ＡＮＤ回路４０６が透過状態になり、ハイレベルの信号Ｓ４０５が出力信号ＥＣＫとして出力される（図３３（Ｉ））。また、第２の制御信号Ｓ２がローレベルになることから、ＯＲ回路４２３の出力信号もローレベルになる。
【０２２１】
時刻Ｔ７０：
この状態で、入力信号ＣＫがハイレベルからローレベルへ変化すると、ラッチ回路４１２が透過状態になり、第４の制御信号Ｓ４がローレベルに変化する（図３３（Ｇ））。
【０２２２】
時刻Ｔ７１：
さらに、入力信号ＣＫがローレベルからハイレベルに変化すると、ラッチ回路４０４が透過状態になり、第３の制御信号Ｓ３がローレベルに変化する（図３３（Ｈ））。
この状態において、入力信号ＣＫの出力が再開される。
【０２２３】
一方、図３３（Ｊ）〜（Ｌ）は、図３２に示す出力制御回路４Ｃにおいて、第２の制御信号Ｓ２をラッチ回路４１２に帰還するループが存在しない場合のタイミングチャートである。
この場合、時刻Ｔ６５において出力制御信号Ｓｃｏｎｔがハイレベルからローレベルへ変化すると、ラッチ回路４１２の入力信号がローレベルになり、第４の制御信号Ｓ４がローレベルになる（図３３（Ｊ））。この状態で、入力信号ＣＫがローレベルからハイレベルに変化すると（時刻Ｔ６８）、第４の制御信号Ｓ４がローレベルであるため、第３の制御信号Ｓ３もローレベルのまま変化しない（図３３（Ｋ））。第３の制御信号Ｓ３がローレベルであることから、第２の制御信号Ｓ２がローレベルに変化してＡＮＤ回路４０６が透過状態になった後（時刻Ｔ６９）、入力信号ＣＫがローレベルに変化すると（時刻Ｔ７０）、出力信号ＥＣＫもこれに応じてローレベルに変化してしまう（図３３（Ｌ））。したがって、時刻Ｔ６９から時刻Ｔ７０までの短い期間に、出力信号ＥＣＫにはハイレベルのグリッチが生じてしまう。
【０２２４】
以上説明したように、図３２に示す出力制御回路４Ｃによれば、第２の制御信号Ｓ２がハイレベルの場合、ラッチ回路４１２に対してハイレベルの信号が入力され、第２の制御信号Ｓ２がローレベルの場合、ラッチ回路４１２に対して出力制御信号Ｓｃｏｎｔに応じた信号が入力される。このため、出力制御信号Ｓｃｏｎｔがハイレベルに変化してからローレベルに変化するまでの間に入力信号ＣＫが一度もハイレベルにならない状態で、第２の制御信号Ｓ２のハイレベルからローレベルへの変化直後に入力信号ＣＫがハイレベルからローレベルへ変化する場合でも、第３の制御信号Ｓ３がハイレベルになって、出力信号ＥＣＫのグリッチを防止することができる。
【０２２５】
また、出力制御信号Ｓｃｏｎｔをフリップフロップ４２２によって保持したクリア信号ＣＬＲ１がＡＮＤ回路４１０を介してフリップフロップ４１１に入力されるため、入力信号ＣＫがハイレベル一定のまま出力制御信号Ｓｃｏｎｔがローレベルに変化しても、基準クロック信号ＳＣＫに同期して、フリップフロップ４１１に保持されたハイレベルの第１の制御信号Ｓ１を確実にローレベルに初期化することができる。
【０２２６】
また、フリップフロップ４１１の前段にクリア信号ＣＬＲ１を出力するフリップフロップ４２２が設けられているため、フリップフロップ４２２に発生するメタステーブルの周期が基準クロック信号ＳＣＫの１周期より短いものとすると、このメタステーブルによる振動成分が第１の制御信号Ｓ１に混入することを防止できる。
【０２２７】
＜第１１の実施形態＞
次に、本発明の第１１の実施形態について述べる。
上述した出力制御回路４Ｂにおいては、出力制御信号Ｓｃｏｎｔがハイレベルの期間に入力信号ＣＫが一度もハイレベルにならない場合、出力制御信号Ｓｃｏｎｔがローレベルに変化する時点で、第３の制御信号Ｓ３、第６の制御信号Ｓ６、第７の制御信号Ｓ７はローレベルになる。このため、出力制御信号Ｓｃｏｎｔのローレベルへの変化に応じて第２の制御信号Ｓ２がローレベルに変化した直後に、クロック信号ＣＫがハイレベルからローレベルへ立ち下がると、出力信号ＥＣＫにハイレベルのグリッチを生じてしまう。
また、出力制御信号Ｓｃｏｎｔがハイレベルの期間に入力信号ＣＫが一度もローレベルにならない場合、出力制御信号Ｓｃｏｎｔがローレベルへ変化する時点で第１の制御信号Ｓ１、第２の制御信号Ｓ２、第３の制御信号Ｓ３、第６の制御信号Ｓ６はローレベルになる。この状態で、出力制御信号Ｓｃｏｎｔのローレベルへの変化に応じて第７の制御信号Ｓ７がローレベルに変化した直後に、入力信号ＣＫがハイレベルからローレベルへ立ち下がると、出力信号ＥＣＫにハイレベルのグリッチを生じてしまう。
第１１の実施形態に係る出力制御回路においては、このような信号出力の開始時に生じるグリッチの改善が図られる。
【０２２８】
図３４は、本発明の第１１の実施形態に係る出力制御回路４Ｄの構成の一例を示す回路図である。
図３０と図３４の同一符号は同一の構成要素を示す。図３４に示す出力制御回路４Ｄは、図３０に示す出力制御回路４ＢにおいてＯＲ回路４１９を除いた残りの構成を有するとともに、フリップフロップ４２２と、ＯＲ回路４２０、４２１、４２３、４２４と、ＡＮＤ回路４２５とを有する。また、図３０における２入力のＡＮＤ回路４１０、４１７は、それぞれ３入力の回路に変更される。
【０２２９】
フリップフロップ４２２は、基準クロック信号ＳＣＫに同期して出力制御信号Ｓｃｏｎｔを保持し、この保持信号をクリア信号ＣＬＲ１として出力する。
３入力のＡＮＤ回路４１０は、フリップフロップ４０８および４０９の保持信号Ｓ４０８およびＳ４０９と、クリア信号ＣＬＲ１とを入力し、その論理積をフリップフロップ４１１へ出力する。
【０２３０】
２入力のＯＲ回路４２４は、第６の制御信号Ｓ６を論理反転した信号とクリア信号ＣＬＲ１とを入力し、その論理和を出力する。
３入力のＡＮＤ回路４１７は、フリップフロップ４１５および４１６の保持信号Ｓ４１５およびＳ４１６と、ＯＲ回路４２４の出力信号Ｓ４２４とを入力し、その論理積をフリップフロップ４１８へ出力する。
２入力のＡＮＤ回路４２５は、ＯＲ回路４２４の出力信号Ｓ４２４と第５の制御信号Ｓ５とを入力し、その論理積をフリップフロップ４１５へ出力する。
【０２３１】
２入力のＯＲ回路４２０は、第２の制御信号Ｓ２と第７の制御信号Ｓ７とを入力し、その論理和を出力する。
２入力のＯＲ回路４２１は、ＯＲ回路４２０の出力信号Ｓ４２０と第６の制御信号Ｓ６とを入力し、その論理和を出力する。
２入力のＡＮＤ回路４０６は、ＯＲ回路４２１の出力信号Ｓ４２１を論理反転した信号と、ＯＲ回路４０５の出力信号Ｓ４０５とを入力し、その論理積を出力信号ＥＣＫとして出力する。
２入力のＯＲ回路４２３は、ＯＲ回路４２０の出力信号Ｓ４２０と出力制御信号Ｓｃｏｎｔとを入力し、その論理和をラッチ回路４１２に出力する。
【０２３２】
図３４に示す出力制御回路４Ｄでは、第２の制御信号Ｓ２または第７の制御信号Ｓ７がＯＲ回路４２０、ＯＲ回路４２３を介してラッチ回路４１２、４１３に帰還されるため、出力制御信号Ｓｃｏｎｔがローレベルに変化しても、第２の制御信号Ｓ２または第７の制御信号Ｓ７がハイレベルである場合は、ラッチ回路４１２、４１３にハイレベルの信号が入力される。
一方、出力制御信号Ｓｃｏｎｔがローレベルになると、基準クロック信号ＳＣＫに同期して、クリア信号ＣＬＲ１、第１の制御信号Ｓ１、第２の制御信号Ｓ２の順にローレベルへ変化する。
【０２３３】
出力制御信号Ｓｃｏｎｔがハイレベルに変化してからＯＲ回路４２０の出力信号Ｓ４２０がローレベルへ変化するまでの間に、入力信号ＣＫがローレベルからハイレベルへの変化およびハイレベルからローレベルの変化をそれぞれ１回以上生じるものとすると、ハイレベルの信号がラッチ回路４１２および４１３を介してラッチ回路４０４および４１４に伝播するため、第４の制御信号Ｓ４、第３の制御信号Ｓ３、第５の制御信号Ｓ５、第６の制御信号Ｓ６は何れもハイレベルになる。
次いで、出力制御信号Ｓｃｏｎｔがハイレベルからローレベルへ変化すると、基準クロック信号ＳＣＫの数サイクル後に、第２の制御信号Ｓ２および第７の制御信号Ｓ７が何れもローレベルになり、ＯＲ回路４２０の出力信号Ｓ４２０がローレベルに変化する。
信号Ｓ４２０がローレベルに変化する時点において、入力信号ＣＫがローレベルであるとすると、その後、入力信号ＣＫがローレベルからハイレベルに立ち上がるときに、第３の制御信号Ｓ３および第５の制御信号Ｓ５はローレベルに変化する。このとき、第１の制御信号Ｓ１は既にローレベルであるため、ＯＲ回路４０５の出力信号Ｓ４０５はローレベルになる。さらにこの後、入力信号ＣＫがハイレベルからローレベルに立ち下がると、第６の制御信号Ｓ６はローレベルになり、ＡＮＤ回路４０６が透過状態となって、ローレベルの出力信号ＥＣＫが出力される。
信号Ｓ４２０がローレベルに変化する時点において、入力信号ＣＫがハイレベルのであるとすると、その後、入力信号ＣＫがハイレベルからローレベルに立ち下がるときに、第６の制御信号Ｓ６および第４の制御信号Ｓ４がローレベルに変化する。このとき、第３の制御信号Ｓ３がハイレベルであり、ＡＮＤ回路４０６が透過状態になるため、出力信号ＥＣＫはハイレベルに立ち上がる。さらにこの後、入力信号がローレベルからハイレベルに立ち上がると、第３の制御信号Ｓ３がローレベルになり、出力信号ＥＣＫはローレベルに立ち下がる。
何れの場合においても、出力信号ＥＣＫは入力信号ＣＫに同期して変化するため、出力信号ＥＣＫにグリッチは発生しない。
【０２３４】
また、出力制御信号Ｓｃｏｎｔがハイレベルに変化してからＯＲ回路４２０の出力信号Ｓ４２０がローレベルへ変化するまでの間に、入力信号ＣＫのローレベルからハイレベルへの変化が１回だけ生じたあと、そのまま入力信号ＣＫがハイレベルに保持されるものとすると、第４の制御信号Ｓ４、第３の制御信号Ｓ３、第５の制御信号Ｓ５はハイレベルになり、第６の制御信号Ｓ６はローレベルのまま保持される。第２の制御信号Ｓ２および第７の制御信号Ｓ７は、ハイレベルに変化する。
出力制御信号Ｓｃｏｎｔがハイレベルからローレベルへ変化すると、基準クロック信号ＳＣＫの数サイクル後に、第２の制御信号Ｓ２はローレベルになる。
一方、第７の制御信号Ｓ７がハイレベルの場合は、クリア信号ＣＬＲ１がローレベルに変化しても、第６の制御信号Ｓ６がローレベルである限り、ＡＮＤ回路４２５およびＯＲ回路４２４の出力信号がハイレベルであるため、第７の制御信号Ｓ７はハイレベルのままとなる。したがって、出力信号ＥＣＫはローレベルのまま保持される。
その後、入力信号ＣＫのハイレベルからローレベルの変化が生じると、第６の制御信号Ｓ６がハイレベルとなり、ＡＮＤ回路４２５およびＯＲ回路４２４の出力信号がローレベルとなって、第７の制御信号Ｓ７がローレベルにクリアされる。
第７の制御信号Ｓ７がローレベルになると、ＯＲ回路４２０の出力信号Ｓ４２０がローレベルに変化する。この場合、信号Ｓ４２０がローレベルに変化する時点において、入力信号ＣＫがハイレベルまたはローレベルの何れであっても、出力信号ＥＣＫは入力信号ＣＫに同期して変化するため、出力信号ＥＣＫにグリッチは発生しない。
なお、第６の制御信号Ｓ６がハイレベルになったとき、第７の制御信号Ｓ７はメタステーブルの振動成分を含む可能性があるが、第６の制御信号Ｓ６がハイレベルである以上、後段のＯＲ回路４２１の出力はハイレベルに保たれるため、この振動成分がクロック信号ＥＣＫに混入することはない。
【０２３５】
また、出力制御信号Ｓｃｏｎｔがハイレベルに変化してからＯＲ回路４２０の出力信号Ｓ４２０がローレベルへ変化するまでの間に、入力信号ＣＫのハイレベルからローレベルへの変化が１回だけ生じたあと、そのまま入力信号ＣＫがローレベルに保持されるものとすると、第４の制御信号Ｓ４、第５の制御信号Ｓ５、第６の制御信号Ｓ６はハイレベルになり、第３の制御信号Ｓ３はローレベルのまま保持される。第２の制御信号Ｓ２および第７の制御信号Ｓ７は、ハイレベルに変化する。
次いで、出力制御信号Ｓｃｏｎｔがハイレベルからローレベルへ変化すると、基準クロック信号ＳＣＫの数サイクル後に、第２の制御信号Ｓ２および第７の制御信号Ｓ７がローレベルになり、ＯＲ回路４２０の出力信号Ｓ４２０がローレベルに変化する。
信号Ｓ４２０がローレベルに変化する時点において、入力信号ＣＫがハイレベルまたはローレベルの何れであっても、出力信号ＥＣＫは入力信号ＣＫに同期して変化するため、出力信号ＥＣＫにグリッチは発生しない。
【０２３６】
また、出力制御信号Ｓｃｏｎｔがハイレベルに変化してからＯＲ回路４２０の出力信号Ｓ４２０がローレベルへ変化するまでの間、入力信号ＣＫがローレベル一定であるとすると、第４の制御信号Ｓ４はハイレベルになり、第３の制御信号Ｓ３、第６の制御信号Ｓ６、第７の制御信号Ｓ７はローレベルのまま保持される。
次いで、出力制御信号Ｓｃｏｎｔがハイレベルからローレベルへ変化すると、基準クロック信号ＳＣＫの数サイクル後に、第２の制御信号Ｓ２がローレベルになり、ＯＲ回路４２０の出力信号Ｓ４２０がローレベルに変化する。
信号Ｓ４２０がローレベルに変化する時点において、入力信号ＣＫがハイレベルまたはローレベルの何れであっても、出力信号ＥＣＫは入力信号ＣＫに同期して変化するため、出力信号ＥＣＫにグリッチは発生しない。
【０２３７】
また、出力制御信号Ｓｃｏｎｔがハイレベルに変化してからＯＲ回路４２０の出力信号Ｓ４２０がローレベルへ変化するまでの間、入力信号ＣＫがハイレベル一定であるとすると、第５の制御信号Ｓ５はハイレベルになり、第４の制御信号Ｓ４、第３の制御信号Ｓ３、第６の制御信号Ｓ６はローレベルのまま保持される。
次いで、出力制御信号Ｓｃｏｎｔがハイレベルからローレベルへ変化すると、基準クロック信号ＳＣＫに同期して、クリア信号ＣＬＲ１がローレベルになる。しかしながら、第６の制御信号Ｓ６がローレベルである限り、ＡＮＤ回路４２５およびＯＲ回路４２４の出力信号がハイレベルであるため、第７の制御信号Ｓ７はハイレベルのままとなる。したがって、出力信号ＥＣＫはローレベルのまま保持される。
その後、入力信号ＣＫのハイレベルからローレベルへの変化が生じると、第６の制御信号Ｓ６がハイレベルとなり、第７の制御信号Ｓ７がローレベルにクリアされる。
第７の制御信号Ｓ７がローレベルになると、ＯＲ回路４２０の出力信号Ｓ４２０がローレベルに変化する。この場合、信号Ｓ４２０がローレベルに変化する時点において、入力信号ＣＫがハイレベルまたはローレベルの何れであっても、出力信号ＥＣＫは入力信号ＣＫに同期して変化するため、出力信号ＥＣＫにグリッチは発生しない。
【０２３８】
また、ＯＲ回路４２４から出力されるローレベルの信号Ｓ４２４によって第７の制御信号Ｓ７がローレベルにクリアされ、これにより、ＯＲ回路４２０の出力信号Ｓ４２０がローレベルに変化する場合、その直後に入力信号ＣＫがハイレベルからローレベルへ変化すると、第６の制御信号Ｓ６はローレベルになる。
仮に、第５の制御信号Ｓ５がＡＮＤ回路４２５を介さずに直接フリップフロップ４１５へ入力されるものとすると、第６の制御信号Ｓ６がローレベルになるこの時点において、フリップフロップ４１５および４１６の保持信号Ｓ４１５およびＳ４１６が何れもハイレベルのままである可能性がある。その場合、ＯＲ回路４２４から出力されるハイレベルの信号Ｓ４２４によってＡＮＤ回路４１７の出力信号がハイレベルになるため、第７の制御信号Ｓ７およびＯＲ回路４２０の出力信号Ｓ４２０が再びハイレベルに戻ってしまう可能性がある。
一方、図４Ｄに示すように、第５の制御信号Ｓ５がＡＮＤ回路４２５を介してフリップフロップ４１５へ入力される場合、ＯＲ回路４２４から出力されるローレベルの信号Ｓ４２４によって第７の制御信号Ｓ７がローレベルにクリアされる時点において、フリップフロップ４１５の保持信号Ｓ４１５もローレベルにクリアされるため、その後、上述したように第６の制御信号Ｓ６がローレベルになってＯＲ回路４２４の出力信号Ｓ４２４がハイレベルに変化しても、ＡＮＤ回路４１７の出力信号はローレベルのままになる。したがって、第７の制御信号Ｓ７およびＯＲ回路４２０の出力信号Ｓ４２０が再びハイレベルに戻ってしまうことを防止できる。
【０２３９】
ここで、上述した出力制御回路４Ｄにおいて信号出力が停止および開始される場合の動作の一例を、図３５に示すタイミングチャートを参照しながら説明する。
【０２４０】
時刻Ｔ７２：
入力信号ＣＫ（図３５（Ｅ））がハイレベルの状態で出力制御信号Ｓｃｏｎｔ（図３５（Ｂ））がローレベルからハイレベルに変化すると、第５の制御信号Ｓ５はローレベルからハイレベルに変化する（図３５（Ｆ））。
【０２４１】
時刻Ｔ７３、Ｔ７４：
第５の制御信号Ｓ５がハイレベルになるため、基準クロック信号ＳＣＫ（図３５（Ａ））の立ち上がり時刻Ｔ７３に同期して、クリア信号ＣＬＲ１（図３５（Ｃ））がローレベルからハイレベルに変化する。また、このとき、フリップフロップ４１５の保持信号Ｓ４１５、ＯＲ回路４２４の出力信号もハイレベルになる。
さらに、次の基準クロック信号ＳＣＫの立ち上がりにおいてフリップフロップ４１６の保持信号Ｓ４１６もハイレベルになると、ＡＮＤ回路４１７の出力信号はハイレベルになり、その次の基準クロック信号ＳＣＫの立ち上がり時刻Ｔ７４において、第７の制御信号Ｓ７がローレベルからハイレベルに変化する（図３５（Ｄ））。第７の制御信号Ｓ７がハイレベルになると、ＯＲ回路４２０、４２１の出力信号がハイレベルになり、出力信号ＥＣＫがローレベルになる（図３５（Ｈ））。
この状態において、入力信号ＣＫの出力が停止される。
【０２４２】
時刻Ｔ７５：
出力制御信号Ｓｃｏｎｔがハイレベルからローレベルに変化すると、ＯＲ回路４２３の一方の入力信号はローレベルになるが、他方の入力信号すなわちＯＲ回路４２０の出力信号Ｓ４２０は第７の制御信号Ｓ７によってハイレベルのままなので、ラッチ回路４１２の入力信号はハイレベルのままとなり、第５の制御信号Ｓ５もハイレベルのまま変化しない。
【０２４３】
時刻Ｔ７６：
基準クロック信号ＳＣＫの立ち上がり時刻Ｔ７６において、ローレベルの出力制御信号Ｓｃｏｎｔがフリップフロップ４２２に保持されると、クリア信号ＣＬＲ１がハイレベルからローレベルへ変化する（図３５（Ｃ））。しかしながら、第６の制御信号Ｓ６がローレベルのままであることから、ＯＲ回路４２４の出力信号はハイレベルのままとなり、ＡＮＤ回路４１７の出力信号もハイレベルのままとなる。
【０２４４】
時刻Ｔ７８：
この状態で、入力信号ＣＫがローレベルに変化すると、ラッチ回路４１４にハイレベルの第５の制御信号Ｓ５が保持され、第６の制御信号Ｓ６がハイレベルに変化する（図３５（Ｇ））。これにより、ＡＮＤ回路４１７の出力信号がローレベルに変化する。
【０２４５】
時刻Ｔ７９：
基準クロック信号ＳＣＫの立ち上がり時刻Ｔ７９において、ローレベルとなったＡＮＤ回路４１７の出力信号がフリップフロップ４１８に保持されると、第７の制御信号Ｓ７がハイレベルからローレベルへ変化する（図３５（Ｄ））。これにより、ＯＲ回路４２０の出力信号Ｓ４２０もローレベルに変化する。
信号Ｓ４２０がローレベルになるものの、第６の制御信号Ｓ６が未だハイレベルであるため、ＡＮＤ回路４０６は遮断状態のままとなる。
また、信号Ｓ４２０がローレベルになるため、ラッチ回路４１２の入力信号がローレベルになり、第４の制御信号Ｓ４がローレベルになる。
【０２４６】
時刻Ｔ８０：
次いで、入力信号ＣＫがローレベルからハイレベルに変化すると、ＯＲ回路４２０から出力されるローレベルの信号がラッチ回路４１３を透過し、第５の制御信号Ｓ５がハイレベルからローレベルに変化する（図３５（Ｆ））。
また、時刻Ｔ８０の直前において第４の制御信号Ｓ４および第３の制御信号Ｓ３はローレベルであるため、時刻Ｔ８０の後も第４の制御信号Ｓ４および第３の制御信号Ｓ３はローレベルのまま保持される。
【０２４７】
時刻Ｔ８１：
さらに、入力信号ＣＫがハイレベルからローレベルに変化すると、ラッチ回路４１４が透過状態になり、第６の制御信号Ｓ６がローレベルに変化する（図３５（Ｇ））。
この状態において、ＡＮＤ回路４０６が透過状態になり、入力信号ＣＫの出力が再開される。
【０２４８】
一方、図３５（Ｉ）〜（Ｌ）は、図３４に示す出力制御回路４Ｄにおいて、第６の制御信号Ｓ６をＡＮＤ回路４１７に帰還するループが存在しない場合のタイミングチャートである。
この場合、時刻Ｔ７６においてクリア信号ＣＬＲ１がローレベルに変化すると、ＡＮＤ回路４１７の出力信号もローレベルになるため、基準クロック信号ＳＣＫの立ち上がり時刻Ｔ７７において、第７の制御信号Ｓ７がローレベルになる（図３５（Ｉ））。このとき、第２の制御信号Ｓ２、第６の制御信号Ｓ６はローレベルであるため、ＯＲ回路４２１の出力信号Ｓ４２１はローレベルになり、ＡＮＤ回路４０６が透過状態になる。すなわち、この時刻Ｔ７７から、入力信号ＣＫの出力が再開される。したがって、時刻Ｔ７７においてハイレベルを有していた入力信号ＣＫが、その直後の時刻Ｔ７８においてローレベルに変化すると、出力信号ＥＣＫにはハイレベルのグリッチが生じてしまう（図３５（Ｌ））。
【０２４９】
以上説明したように、図３４に示す出力制御回路４Ｄによれば、第２の制御信号Ｓ２または第７の制御信号Ｓ７の一方がハイレベルの場合、ラッチ回路４１２および４１３に対してハイレベルの信号が入力され、第２の制御信号Ｓ２および第７の制御信号Ｓ７の両方がローレベルの場合、ラッチ回路４１２および４１３に対して出力制御信号Ｓｃｏｎｔに応じた信号が入力される。
このため、出力制御信号Ｓｃｏｎｔがハイレベルに変化してからローレベルに変化するまでの間に入力信号ＣＫが一度もハイレベルにならない状態で、第２の制御信号Ｓ２がハイレベルからローレベルへ変化した直後に、入力信号ＣＫがハイレベルからローレベルへ変化する場合でも、第３の制御信号Ｓ３がハイレベルになって、出力信号ＥＣＫのグリッチを防止することができる。
さらに、出力制御信号Ｓｃｏｎｔがハイレベルに変化してからローレベルに変化するまでの間に入力信号ＣＫが一度もローレベルにならない状態で、第７の制御信号Ｓ７がハイレベルからローレベルへ変化した直後に、入力信号ＣＫがハイレベルからローレベルへ変化する場合でも、第６の制御信号Ｓ６がハイレベルになって、出力信号ＥＣＫのグリッチを防止することができる。
【０２５０】
また、一旦ハイレベルになった第７の制御信号Ｓ７は、ローレベルの出力制御信号Ｓｃｏｎｔに応じてクリア信号ＣＬＲ１がローレベルになり、かつ、第６の制御信号Ｓ６がハイレベルになる場合において、基準クロック信号ＳＣＫに同期して、ハイレベルからローレベルに変化する。
出力制御信号Ｓｃｏｎｔがハイレベルに変化してからローレベルに変化するまでの間に入力信号ＣＫが一度もローレベルにならない状態で、クリア信号ＣＬＲ１がローレベルに変化する場合に、第６の制御信号Ｓ６がローレベルのままで第７の制御信号Ｓ７がハイレベルからローレベルに変化してしまうと、この変化直後に入力信号ＣＫがハイレベルからローレベルへ変化するとき、出力信号ＥＣＫにグリッチが発生する。したがって、第６の制御信号Ｓ６がハイレベルになるまで第７の制御信号Ｓ７をローレベルに変化させないことにより、このようなグリッチの発生を防止することができる。
【０２５１】
また、出力制御信号Ｓｃｏｎｔをフリップフロップ４２２によって保持したクリア信号ＣＬＲ１がＡＮＤ回路４１０を介してフリップフロップ４１１に入力されるため、入力信号ＣＫがハイレベル一定のまま出力制御信号Ｓｃｏｎｔがローレベルに変化しても、基準クロック信号ＳＣＫに同期して、フリップフロップ４１１に保持されたハイレベルの第１の制御信号Ｓ１を確実にローレベルに初期化することができる。
このクリア信号ＣＬＲ１信号がＡＮＤ回路４１７を介してフリップフロップ４１８に入力されるため、入力信号ＣＫがローレベル一定のまま出力制御信号Ｓｃｏｎｔがローレベルに変化しても、基準クロック信号ＳＣＫに同期して、フリップフロップ４１８に保持されたハイレベルの第７の制御信号Ｓ７を確実にローレベルに初期化することができる。
フリップフロップ４１１およびフリップフロップ４１８の前段にクリア信号ＣＬＲ１を出力するフリップフロップ４２２が設けられているため、フリップフロップ４２２に発生するメタステーブルの周期が基準クロック信号ＳＣＫの１周期より短いものとすると、このメタステーブルによる振動成分が第１の制御信号Ｓ１および第７の制御信号Ｓ７に混入することを防止できる。
【０２５２】
＜第１２の実施形態＞
次に、本発明の第１２の実施形態について述べる。
第１２の実施形態は、既に述べた第１０の実施形態に係る出力制御回路を用いた信号選択回路に関する実施形態である。たとえば、図３に示すクロック信号選択回路における出力制御回路１１〜１ｎが、次に述べる出力制御回路４Ｃ１〜４Ｃｎに置き換えられる。
【０２５３】
図３６は、本発明の第１２の実施形態に係るクロック信号選択回路における、出力制御回路４Ｃｍの構成の一例を示す回路図である。
図３６において、符号４０３ｍ〜４０６ｍ、４０８ｍ〜４１２ｍ、４２２ｍおよび４２３ｍで示される構成要素は、図３２において、符号４０３〜４０６、４０８〜４１２、４２２および４２３で示される構成要素とそれぞれ対応する。また図３６に示す出力制御回路４Ｃｍは、ＮＡＮＤ回路４０１ｍと、インバータ回路４０７ｍとを有する。
【０２５４】
ＮＡＮＤ回路４０１ｍは、イネーブル信号生成回路２Ａから出力されるイネーブル信号ＥＮｍと、デコード回路３から出力される選択信号ＳＥＬｍとを入力し、その反転論理積を出力制御信号Ｓｃｏｎｔとして出力する。
インバータ回路４０７ｍは、フリップフロップ４０３から出力される第２の制御信号Ｓ２を入力し、その論理反転を状態信号ＳＴｍとして出力する。
【０２５５】
図３７は、図３６に示す出力制御回路４Ｃ１、４Ｃ２を有した２入力のクロック信号選択回路においてクロック信号の切り換えが起こる場合の各信号のタイミングの一例を示すタイミングチャートである。
【０２５６】
時刻Ｔ８２：
時刻Ｔ８２において、選択信号ＳＥＬ１（図３７（Ｄ））がハイレベルからローレベル、選択信号ＳＥＬ２（図３７（Ｅ））がローレベルからハイレベルへ変化し、クロック信号ＣＫ１からクロック信号ＣＫ２へ選択の切り換えが行われる。これにより、出力制御回路４Ｃ１の出力制御信号Ｓｃｏｎｔ１（図３７（Ｆ））は、ローレベルからハイレベルに変化し、信号出力の停止を示す状態になる。一方、出力制御回路４Ｃ２の出力制御信号Ｓｃｏｎｔ２（図３７（Ｇ））は、イネーブル信号ＥＮ２がローレベルのままであるため、ハイレベルに保たれる。
【０２５７】
時刻Ｔ８３〜Ｔ８６：
出力制御信号Ｓｃｏｎｔ１がハイレベルに変化した後、クロック信号ＣＫ１はローレベルに保たれているため、基準クロック信号ＳＣＫの３サイクル（時刻Ｔ８３〜Ｔ８５）を経た後で、出力制御回路４Ｃ１の第１の制御信号Ｓ１がハイレベルになる。これにより、出力信号ＥＣＫ１がハイレベルに変化する（図３７（Ｊ））。
次いで、基準クロック信号ＳＣＫの立ち上がり時刻Ｔ８６に同期して、出力制御回路４Ｃ１の第２の制御信号Ｓ２がハイレベルになると、その出力信号ＥＣＫ１はローレベルに変化する（図３７（Ｊ））。また、この第２の制御信号Ｓ２を論理反転した信号である状態信号ＳＴ１がローレベルに変化する（図３７（Ｈ））。
【０２５８】
時刻Ｔ８７：
状態信号ＳＴ１がローレベルに変化すると、イネーブル信号生成回路ではハイレベルのイネーブル信号ＥＮ２が生成されるため、出力制御回路４Ｃ２の出力制御信号Ｓｃｏｎｔ２がローレベルに変化する。
【０２５９】
時刻Ｔ８８〜Ｔ９０：
出力制御信号Ｓｃｏｎｔ２がローレベルに変化すると、出力制御回路４Ｃ２において、第２の制御信号Ｓ２は基準クロック信号ＳＣＫの３サイクルでローレベルに変化する。したがって、時刻Ｔ８７から基準クロック信号ＳＣＫの３サイクルを経た後の立ち上がり時刻Ｔ９０において、第２の制御信号Ｓ２がローレベルになると、出力制御回路４Ｃ２のＡＮＤ回路４０６２は、透過状態に変化する。このとき、出力制御回路４Ｃ２において第３の制御信号Ｓ３はハイレベルであるため、出力信号ＥＣＫ２はハイレベルに変化する（図３７（Ｋ））。
また、状態信号ＳＴ２は第２の制御信号Ｓ２を論理反転した信号であるため、この時刻Ｔ９０においてハイレベルに変化する（図３７（Ｉ））。
さらに、時刻Ｔ９０においてクロック信号ＣＫ２はローレベルであり、出力制御回路４Ｃ２のラッチ回路４１２２は透過状態であるため、その第４の制御信号Ｓ４はローレベルになる。
【０２６０】
時刻Ｔ９１：
この状態で、クロック信号ＣＫ２がハイレベルに変化すると、出力制御回路４Ｃ２の第３の制御信号Ｓ３はローレベルに変化する。しかしながら、クロック信号ＣＫ２がハイレベルに変化するため、出力信号ＥＣＫ２はハイレベルのまま変化しない。
以降、クロック信号ＣＫ２に応じた信号が選択クロック信号ＥＣＫとして出力される。
【０２６１】
以上説明したように、図３６に示した出力制御回路４Ｃｍを有するクロック信号選択回路によれば、クロック信号の選択が変更される場合に、選択中のクロック信号がローレベル一定であっても、基準クロック信号ＳＣＫの常時供給が保証されていれば、この基準クロック信号ＳＣＫに同期して、選択中のクロック信号を確実にローレベルに保持させ、新たに選択したクロック信号の出力を開始させることができる。
また、出力制御回路４Ｃｍは、既に述べた出力制御回路４Ｃと同様に、信号出力の停止時や開始時において、メタステーブルによる振動成分やグリッチが出力信号に生じることを防止できるので、このような出力制御回路４Ｃｍを用いたクロック信号選択回路においても、信号選択の変更時において、こうした振動成分やグリッチが選択クロック信号ＥＣＫに生じることを防止できる。
【０２６２】
携帯機器の普及に伴って、低消費電力化への要求が近年ますます高まっている。そのため、未使用のクロック信号は、その発生源から停止させてしまう場合がある。また、データ転送用に外部から供給されるクロック信号であれば、そのデータ転送に必要なときだけクロック信号が供給される場合もある。このように、選択対象のクロック信号が常時供給されることを保証できない場合でも、上述した出力制御回路４Ｃｍを有するクロック信号選択回路によれば、要求に応じて確実にクロック信号の選択を変更することができる。
【０２６３】
以下に、第１２の実施形態に係るクロック信号選択回路に含まれる構成要素の概要を付記する。
【０２６４】
本実施形態に係るクロック信号選択回路は、信号出力回路とイネーブル信号生成回路とを有する。
図３および図３６を参照した上述の例において、上記信号出力回路は、出力制御回路４Ｃ１〜４ＣｎおよびＯＲ回路４を含むユニットに相当する。イネーブル信号生成回路は、イネーブル信号生成回路２Ａを含むユニットに相当する。
上記信号出力回路は、複数の入力信号（ＣＫ１〜ＣＫｎ）、当該複数の入力信号の中から一の入力信号を選択するための選択信号（ＳＥＬ１〜ＳＥＬｎ）、およびそれぞれの入力信号の選択を有効化または無効化するためのイネーブル信号（ＥＮ１〜ＥＮｎ）を入力し、上記選択信号（ＳＥＬ１〜ＳＥＬｎ）において選択され、かつ上記イネーブル信号（ＥＮ１〜ＥＮｎ）において選択が有効化された入力信号を選択して出力するとともに、信号の選択状態を示す状態信号（ＳＴ１〜ＳＴｎ）を出力する。出力中の入力信号とは異なる新たな入力信号が上記選択信号（ＳＥＬ１〜ＳＥＬｎ）において選択されたときに上記出力中の入力信号が第２のレベルを持つ場合、上記出力中の入力信号の上記第２のレベルから第１のレベルへのレベル変化、または、入力される基準クロック信号（ＳＣＫ）に同期して、出力信号レベルを上記第１のレベルに保持し、当該第１のレベルの保持後に、上記基準クロック信号（ＳＣＫ）に同期して、出力信号レベルを第２のレベルに保持し、全ての入力信号が選択されていないことを示す上記状態信号（ＳＴ１〜ＳＴｎ）を出力し、当該出力した状態信号（ＳＴ１〜ＳＴｎ）に応じて当該新たな入力信号の選択を有効化するイネーブル信号（ＥＮ１〜ＥＮｎ）が入力された場合、当該新たな入力信号のレベル変化に同期して当該新たな入力信号を選択して出力し、当該新たな入力信号が選択中であることを示す上記状態信号（ＳＴ１〜ＳＴｎ）を出力する。
上記イネーブル信号生成回路は、全ての入力信号（ＳＥＬ１〜ＳＥＬｎ）が選択されていないことを示す上記状態信号（ＳＴ１〜ＳＴｎ）に応じて、全ての入力信号の選択を有効化する上記イネーブル信号（ＥＮ１〜ＥＮｎ）を生成し、１つまたは複数の入力信号が選択中であることを示す上記状態信号（ＳＴ１〜ＳＴｎ）に応じて、当該状態信号（ＳＴ１〜ＳＴｎ）で選択中とされた入力信号の選択を有効化するとともに、当該状態信号（ＳＴ１〜ＳＴｎ）で選択中とされていない入力信号の選択を無効化する上記イネーブル信号（ＥＮ１〜ＥＮｎ）を生成する。
【０２６５】
また、上記信号出力回路は、上記新たな入力信号が選択されたときに上記出力中の入力信号が上記第１のレベルを持つ場合、上記出力中の入力信号の上記第１のレベルから上記第２のレベルへのレベル変化、または、上記基準クロック信号（ＳＣＫ）に同期して、出力信号レベルを上記第２のレベルに保持し、全ての入力信号が選択されていないことを示す上記状態信号を出力しても良い。
【０２６６】
また、上記信号出力回路は、上記複数の入力信号に対応した複数の出力制御回路と、上記複数の出力制御回路の入力信号出力回路から出力される複数の信号の信号レベルが全て上記第２のレベルの場合、上記第２のレベルの信号を出力し、当該複数の信号に上記第１のレベルの信号が含まれる場合、上記第１のレベルの信号を出力する論理和回路とを有しても良い。
この場合、それぞれの上記出力制御回路は、出力制御信号生成回路と、第１の制御信号出力回路と、第２の制御信号出力回路と、第３の制御信号出力回路と、入力信号出力回路とを含む。
図３および図３６を参照した上述の例において、上記出力制御回路は、出力制御回路４Ｃｍを含むユニットに相当する。上記論理和回路は、ＯＲ回路４を含むユニットに相当する。上記出力制御信号生成回路は、ＡＮＤ回路４０１ｍを含むユニットに相当する。上記第１の制御信号出力回路は、フリップフロップ４０８ｍ、４０９ｍ、４１１ｍ、およびＡＮＤ回路４１０を含むユニットに相当する。上記第２の制御信号出力回路は、フリップフロップ４０３ｍを含むユニットに相当する。上記第３の制御信号出力回路は、ラッチ回路４０４ｍを含むユニットに相当する。入力信号出力回路は、ＯＲ回路４０５ｍおよびＡＮＤ回路４０６ｍを含むユニットに相当する。
上記出力制御信号生成回路は、対応する入力信号（ＣＫｍ）が上記選択信号（ＳＥＬｍ）において選択され、かつ当該入力信号（ＣＫｍ）の選択が上記イネーブル信号（ＥＮｍ）において有効化された場合に当該入力信号（ＣＫｍ）の出力を有効化し、当該入力信号（ＣＫｍ）が上記選択信号（ＳＥＬｍ）において選択されず、または当該入力信号（ＣＫｍ）の選択が上記イネーブル信号（ＥＮｍ）において無効化された場合に当該入力信号（ＣＫｍ）の出力を無効化する出力制御信号（Ｓｃｏｎｔ）を生成する。
上記第１の制御信号出力回路は、上記出力制御信号（Ｓｃｏｎｔ）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する第１の制御信号（Ｓ１）を、上記基準クロック信号（ＳＣＫ）に同期して出力する。
上記第２の制御信号出力回路は、上記第１の制御信号（Ｓ１）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する第２の制御信号（Ｓ２）を、上記基準クロック信号（ＳＣＫ）に同期して出力する。
上記第３の制御信号出力回路は、当該入力信号（ＣＫｍ）が上記第１のレベルを持つ場合、上記出力制御信号（Ｓｃｏｎｔ）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する第３の制御信号（Ｓ３）を出力し、当該入力信号（ＣＫｍ）の上記第１のレベルから上記第２のレベルへのレベル変化に同期して、上記第３の制御信号（Ｓ３）の状態を保持する。
上記入力信号出力回路は、当該入力信号（ＣＫｍ）の出力が有効化された状態において当該入力信号（ＣＫｍ）の出力を無効化する上記第１の制御信号（Ｓ１）または上記第３の制御信号（Ｓ３）が出力される場合、出力信号レベルを上記第１のレベルに保持し、当該入力信号（ＣＫｍ）の出力を無効化する上記第２の制御信号（Ｓ２）が出力される場合、出力信号レベルを上記第２のレベルに保持する。
【０２６７】
また、上記出力制御信号生成回路は、対応する入力信号（ＣＫｍ）が上記第２のレベルを持つ場合、上記出力制御信号（Ｓｃｏｎｔ）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する第４の制御信号（Ｓ４）を出力し、当該入力信号（ＣＫｍ）の上記第２のレベルから上記第１のレベルへのレベル変化に同期して、上記第４の制御信号（Ｓ４）の状態を保持する第４の制御信号出力回路を有しても良い。
図３および図３６を参照した上述の例において、上記第４の制御信号出力回路は、ラッチ回路４１２ｍおよびＯＲ回路４２３ｍを含むユニットに相当する。
この場合、上記第１の制御信号出力回路は、上記第４の制御信号（Ｓ４）に応じて当該入力信号の出力を有効化または無効化する上記第１の制御信号（Ｓ１）を出力する。
また、上記第３の制御信号出力回路は、上記第４の制御信号（Ｓ４）に応じて当該入力信号の出力を有効化または無効化する上記第３の制御信号（Ｓ３）を出力する。
【０２６８】
また、上記第１の制御信号出力回路は、シフト回路と出力回路とを有しても良い。
図３および図３６を参照した上述の例において、シフト回路は、フリップフロップ４０８ｍおよびフリップフロップ４０９ｍを含むユニットに相当する。出力回路は、ＡＮＤ回路４１０ｍおよびフリップフロップ４１１ｍを含むユニットに相当する。
上記シフト回路は、直列接続された複数段の信号保持回路を含み、上記基準クロック信号（ＳＣＫ）に同期して、初段の信号保持回路に入力された上記第４の制御信号（Ｓ４）を次段の信号保持回路へ順にシフトさせる。
上記出力回路は、上記複数段の信号保持回路に保持された制御信号が、何れも、対応する入力信号（ＣＫｍ）の出力を無効化する信号の場合、上記基準クロック信号（ＳＣＫ）に同期して、当該入力信号（ＣＫｍ）の出力を無効化する上記第１の制御信号（Ｓ１）を出力する。
【０２６９】
また、上記第１の制御信号出力回路および上記第４の制御信号出力回路は、次のよう動作しても良い。
すなわち、上記第１の制御信号出力回路は、上記出力制御信号（Ｓｃｏｎｔ）が上記対応する入力信号（ＣＫｍ）の出力を有効化する信号の場合、当該入力信号（ＣＫｍ）の出力を有効化する上記第１の制御信号（Ｓ１）を出力する。
上記第４の制御信号出力回路は、上記第２の制御信号（Ｓ２）が当該入力信号（ＣＫｍ）の出力を無効化する信号の場合、当該入力信号（ＣＫｍ）の出力を無効化する上記第４の制御信号（Ｓ４）を出力し、上記第２の制御信号（Ｓ２）が当該入力信号（ＣＫｍ）の出力を有効化する信号の場合、上記出力制御信号（Ｓｃｏｎｔ）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する上記第４の制御信号（Ｓ４）を出力する。
【０２７０】
＜第１３の実施形態＞
次に、本発明の第１３の実施形態について述べる。
第１３の実施形態は、既に述べた第１１の実施形態に係る出力制御回路を用いた信号選択回路に関する実施形態である。たとえば、図３に示すクロック信号選択回路における出力制御回路１１〜１ｎが、次に述べる出力制御回路４Ｄ１〜４Ｄｎに置き換えられる。
【０２７１】
図３８は、本発明の第１３の実施形態に係るクロック信号選択回路における、出力制御回路４Ｄｍの構成の一例を示す回路図である。
図３８において、符号４０３ｍ〜４０６ｍ、４０８ｍ〜４１８ｍ、４２０ｍ〜４２５ｍで示される構成要素は、図３４において、符号４０３〜４０６、４０８〜４１８、４２０〜４２５で示される構成要素とそれぞれ対応する。また図３８に示す出力制御回路４Ｄｍは、ＮＡＮＤ回路４０１ｍと、インバータ回路４０７ｍとを有する。
【０２７２】
ＮＡＮＤ回路４０１ｍは、イネーブル信号生成回路２Ａから出力されるイネーブル信号ＥＮｍと、デコード回路３から出力される選択信号ＳＥＬｍとを入力し、その反転論理積を出力制御信号Ｓｃｏｎｔとして出力する。
インバータ回路４０７ｍは、ＯＲ回路４２１から出力される信号Ｓ４２１を入力し、その論理反転を状態信号ＳＴｍとして出力する。
【０２７３】
図３９は、図３８に示す出力制御回路４Ｄ１、４Ｄ２を有した２入力のクロック信号選択回路においてクロック信号の切り換えが起こる場合の各信号のタイミングの一例を示すタイミングチャートである。
【０２７４】
時刻Ｔ９２：
時刻Ｔ９２において、選択信号ＳＥＬ１（図３９（Ｄ））がハイレベルからローレベル、選択信号ＳＥＬ２（図３９（Ｅ））がローレベルからハイレベルへ変化し、クロック信号ＣＫ１からクロック信号ＣＫ２へ選択の切り換えが行われる。これにより、出力制御回路４Ｄ１の出力制御信号Ｓｃｏｎｔ１（図３９（Ｆ））は、ローレベルからハイレベルに変化し、信号出力の停止を示す状態になる。一方、出力制御回路４Ｄ２の出力制御信号Ｓｃｏｎｔ２（図３９（Ｇ））は、イネーブル信号ＥＮ２がローレベルのままであるため、ハイレベルに保たれる。
【０２７５】
時刻Ｔ９３：
出力制御信号Ｓｃｏｎｔ１がハイレベルに変化する時刻Ｔ９２においてクロック信号ＣＫ１はハイレベルであるため、続いてクロック信号ＣＫ１がローレベルへ変化すると、出力制御回路４Ｄ１の第６の制御信号Ｓ６はハイレベルに変化する。これにより、ＯＲ回路４２１１の出力信号がハイレベルになり、出力信号ＥＣＫ１がローレベルに保持される（図３９（Ｊ））。また、出力制御回路４Ｄ１の状態信号ＳＴ１がローレベルに変化する（図３９（Ｉ））。
【０２７６】
時刻Ｔ９４：
状態信号ＳＴ１がローレベルに変化すると、イネーブル信号生成回路ではハイレベルのイネーブル信号ＥＮ２が生成されるため、出力制御回路４Ｄ２の出力制御信号Ｓｃｏｎｔ２がローレベルに変化する（図３９（Ｇ））。
【０２７７】
時刻Ｔ９５〜Ｔ９７：
出力制御信号Ｓｃｏｎｔ２がローレベルに変化すると、出力制御回路４Ｄ２において、第２の制御信号Ｓ２は基準クロック信号ＳＣＫの３サイクル、第７の制御信号Ｓ７は基準クロック信号ＳＣＫの２サイクルでローレベルに変化する。したがって、出力制御回路４Ｄ２におけるＯＲ回路４２０２の出力信号は、時刻Ｔ９４から基準クロック信号ＳＣＫの３サイクルを経た後の立ち上がり時刻Ｔ９７においてローレベルに変化し、これに応じて、その論理反転である状態信号ＳＴ２がハイレベルに変化する（図３９（Ｉ））。
一方、この時刻Ｔ９７において、出力制御回路４Ｄ２の第６の制御信号Ｓ６はまだハイレベルであるため、その出力信号ＥＣＫ２はローレベルのまま保持される（図３９（Ｋ））。
また、時刻Ｔ９７においてクロック信号ＣＫ２はハイレベルであるため、出力制御回路４Ｃ２の第４の制御信号Ｓ４および第３の制御信号Ｓ３はハイレベルに保持される。
【０２７８】
時刻Ｔ９８：
この状態で、クロック信号ＣＫ２がローレベルに変化すると、出力制御回路４Ｄ２の第６の制御信号Ｓ６がローレベルに変化し、そのＡＮＤ回路４０６２が透過状態になる。しかしながら、このとき第３の制御信号Ｓ３はまだハイレベルであるため、出力信号ＥＣＫ２はハイレベルになる。
【０２７９】
時刻Ｔ９９：
次いで、クロック信号ＣＫ２がハイレベルに変化すると、出力制御回路４Ｄ２の第３の制御信号Ｓ３はローレベルに変化する。クロック信号ＣＫ２がハイレベルに変化するため、出力信号ＥＣＫ２はハイレベルのまま変化しない。
以降、クロック信号ＣＫ２に応じた信号が選択クロック信号ＥＣＫとして出力される。
【０２８０】
以上説明したように、図３８に示した出力制御回路４Ｄｍを有するクロック信号選択回路によれば、クロック信号の選択が変更される場合に、選択中のクロック信号がローレベル一定またはハイレベル一定であっても、基準クロック信号ＳＣＫの常時供給が保証されていれば、この基準クロック信号ＳＣＫに同期して、選択中のクロック信号を確実にローレベルに保持させ、新たに選択したクロック信号の出力を開始させることができる。
また、出力制御回路４Ｄｍは、既に述べた出力制御回路４Ｄと同様に、信号出力の停止時や開始時において、メタステーブルによる振動成分やグリッチが出力信号に生じることを防止できるので、このような出力制御回路４Ｄｍを用いたクロック信号選択回路においても、信号選択の変更時において、こうした振動成分やグリッチが選択クロック信号ＥＣＫに生じることを防止できる。
【０２８１】
以下に、第１３の実施形態に係るクロック信号選択回路に含まれる構成要素の概要を付記する。
【０２８２】
本実施形態に係るクロック信号選択回路に含まれる出力制御回路は、第５の制御信号出力回路と、第６の制御信号出力回路と、第７の制御信号出力回路とを有する。
図３および図３８を参照した上述の例において、上記第５の制御信号出力回路は、ラッチ回路４１３ｍおよびＯＲ回路４２３ｍを含むユニットに相当する。上記第６の制御信号出力回路は、ラッチ回路４１４ｍを含むユニットに相当する。上記第７の制御信号出力回路は、フリップフロップ４１５ｍ、４１６ｍ、４１８ｍ、およびＡＮＤ回路４１７ｍを含むユニットに相当する。
上記第５の制御信号出力回路は、対応する入力信号（ＣＫｍ）が上記第１のレベルを持つ場合、上記出力制御信号（Ｓｃｏｎｔ）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する第５の制御信号（Ｓ５）を出力し、当該入力信号（ＣＫｍ）の上記第１のレベルから上記第２のレベルへのレベル変化に同期して、上記第５の制御信号（Ｓ５）の状態を保持する。
上記第６の制御信号出力回路は、当該入力信号が上記第２のレベルを持つ場合、上記第５の制御信号（Ｓ５）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する第６の制御信号（Ｓ６）を出力し、当該入力信号（ＣＫｍ）の上記第２のレベルから上記第１のレベルへのレベル変化に同期して、上記第６の制御信号（Ｓ６）の状態を保持する。
上記第７の制御信号出力回路は、上記第５の制御信号（Ｓ５）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する第７の制御信号（Ｓ７）を、上記基準クロック信号（ＳＣＫ）に同期して出力する。
この場合、入力信号出力回路（図３８において、ＯＲ回路４２０ｍ、４２１ｍ、およびＡＮＤ回路４０６ｍを含むユニットに相当する）は、上記第６の制御信号（Ｓ６）または上記第７の制御信号（Ｓ７）が当該入力信号（ＣＫｍ）の出力を無効化する信号の場合、出力信号レベルを上記第２のレベルに保持する。
【０２８３】
また、上記第７の制御信号出力回路は、シフト回路と出力回路とを有しても良い。
図３および図３８を参照した上述の例において、上記シフト回路は、フリップフロップ４１５ｍおよび４１６ｍを含むユニットに相当する。上記出力回路は、ＡＮＤ回路４１７ｍおよびフリップフロップ４１８ｍを含むユニットに相当する。
上記シフト回路は、直列接続された複数段の信号保持回路を含み、上記基準クロック信号（ＳＣＫ）に同期して、初段の信号保持回路に入力された上記第５の制御信号（Ｓ５）を次段の信号保持回路へ順にシフトさせる。
上記出力回路は、上記複数段の信号保持回路に保持された制御信号が、何れも、対応する入力信号（ＣＫｍ）の出力を無効化する信号の場合、上記基準クロック信号（ＳＣＫ）に同期して、当該入力信号（ＣＫｍ）の出力を無効化する上記第７の制御信号（Ｓ７）を出力する。
【０２８４】
また、上記第７の制御信号出力回路、上記第４の制御信号出力回路、および上記第５の制御信号出力回路は、次のように動作しても良い。
すなわち、上記第７の制御信号出力回路は、上記出力制御信号（Ｓｃｏｎｔ）が上記対応する入力信号（ＣＫｍ）の出力を有効化する信号であり、かつ、上記第６の制御信号（Ｓ６）が当該入力信号（ＣＫｍ）の出力を無効化する信号の場合、当該入力信号（ＣＫｍ）の出力を有効化する上記第７の制御信号（Ｓ７）を出力する。
上記第４の制御信号出力回路は、上記第２の制御信号（Ｓ２）または上記第７の制御信号（Ｓ７）が当該入力信号（ＣＫｍ）の出力を無効化する信号の場合、当該入力信号（ＣＫｍ）の出力の無効化する上記第４の制御信号（Ｓ４）を出力し、上記第２の制御信号（Ｓ２）および上記第７の制御信号（Ｓ７）が当該入力信号の出力を有効化する信号の場合、上記出力制御信号（Ｓｃｏｎｔ）に応じて当該入力信号（ＣＫｍ）の出力を有効化または無効化する上記第４の制御信号（Ｓ４）を出力する。
上記第５の制御信号出力回路は、上記第２の制御信号（Ｓ２）または上記第７の制御信号（Ｓ７）が当該入力信号（ＣＫｍ）の出力を無効化する信号の場合、当該入力信号（ＣＫｍ）の出力の無効化する上記第５の制御信号（Ｓ５）を出力し、上記第２の制御信号（Ｓ２）および上記第７の制御信号（Ｓ７）が当該入力信号（ＣＫｍ）の出力を有効化する信号の場合、上記出力制御信号（Ｓｃｏｎｔ）に応じて当該入力信号の出力を有効化または無効化する上記第５の制御信号（Ｓ５）を出力する。
【０２８５】
なお、本発明は上述した第１ないし第１３の実施形態に限定されない。
本発明の実施形態の一例として示した回路構成は、同様な機能を有する別の回路構成へ任意に改変することができる。また、実施形態の説明における各信号のレベル（ハイレベル、ローレベル）、信号の保持動作が行われるレベル変化（立ち上がり、立ち下がり）などは何れも説明上で与えた一例に過ぎず、実施形態に応じて適宜変更することができる。
【０２８６】
上述した本発明の実施形態ではクロック信号の選択が行われる例を示したが、本発明において選択される信号はクロック信号に限定されておらず、他の種類の信号についても選択を行うことが可能である。
【０２８７】
【発明の効果】
本発明によれば、入力される複数の信号の中から一の信号が選択されて出力される場合において、この選択された信号に、周期の短い振動成分や持続時間の短いパルス成分が含まれることを防止できる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係るクロック信号選択回路の構成の一例を示すブロック図である。
【図２】図１のクロック信号選択回路においてクロック信号の切り換えが起こる場合の各信号のタイミングの一例を示すタイミングチャートである。
【図３】本発明の第２の実施形態に係るクロック信号選択回路の構成の一例を示すブロック図である。
【図４】図３のクロック信号選択回路における出力制御回路の構成の一例を示す回路図である。
【図５】クロックイネーブラの構成の一例を示す回路図である。
【図６】３つの状態信号に対応した３つのイネーブル信号を生成するイネーブル信号生成回路の一具体例を示す回路図である。
【図７】入力されるクロック信号の数が２つの場合における、図３のクロック信号選択回路の一具体例を示す回路図である。
【図８】図７に示す２入力のクロック信号選択回路においてクロック信号の切り換えが起こる場合の各信号のタイミングの一例を示すタイミングチャートである。
【図９】本発明の第３の実施形態に係るクロック信号選択回路における出力制御回路の構成の一例を示す回路図である。
【図１０】クロック周期より存続期間の短いメタステーブルが発生する場合におけるフリップフロップの出力波形の一例を示す図である。
【図１１】クロック周期より存続期間の長いメタステーブルが発生する場合におけるフリップフロップの出力波形の一例を示す図である。
【図１２】本発明の第４の実施形態に係るクロック信号選択回路における出力制御回路の構成の一例を示す回路図である。
【図１３】図７のクロック信号選択回路における出力制御回路を図１２に示した出力制御回路に置き換えた回路における、各信号のタイミングの一例を示すタイミングチャートである。
【図１４】本発明の第５の実施形態に係るクロック信号選択回路における出力制御回路の構成の一例を示す回路図である。
【図１５】本発明の第６の実施形態に係るクロック信号選択回路における第１の出力制御回路の構成の一例を示す回路図である。
【図１６】本発明の第６の実施形態に係るクロック信号選択回路における第２の出力制御回路の構成の一例を示す回路図である。
【図１７】本発明の第７の実施形態に係る出力制御回路の構成の一例を示す回路図である。
【図１８】図１７に示す出力制御回路において信号出力が停止される場合の各信号のタイミングの一例を示すタイミングチャートである。
【図１９】図１７に示す出力制御回路４からラッチ回路を削除した回路の回路図である。
【図２０】図１９に示す出力制御回路４において、出力信号にグリッチが生じる場合における各信号のタイミングの一例を示すタイミングチャートである。
【図２１】本発明の第８の実施形態に係る出力制御回路の構成の一例を示す回路図である。
【図２２】図２１に示す出力制御回路において信号出力が停止される場合の各信号のタイミングの一例を示す第１のタイミングチャートである。
【図２３】図２１に示す出力制御回路において信号出力が停止される場合の各信号のタイミングの一例を示す第２のタイミングチャートである。
【図２４】図２１に示す出力制御回路に対して、第１の制御信号を生成する初段のフリップフロップに出力制御信号が直接与えられるように変更が施された回路の回路図である。
【図２５】図２４に示す出力制御回路において、出力信号にグリッチが生じる場合における各信号のタイミングの一例を示すタイミングチャートである。
【図２６】図２１に示す出力制御回路において、第１の制御信号を生成する初段のフリップフロップの保持信号が終段のフリップフロップへ直接入力されるように変更が施された回路の回路図である。
【図２７】図２６に示す出力制御回路において、出力信号にグリッチが生じる場合における各信号のタイミングの一例を示すタイミングチャートである。
【図２８】図２１に示す出力制御回路において、第１の制御信号を生成する終段のフリップフロップを削除し、ＡＮＤ回路の出力信号が直接第１の制御信号として出力されるように変更が施された回路の回路図である。
【図２９】図２８に示す出力制御回路において、第１の制御信号にメタステーブルの振動成分が生じる場合における各信号のタイミングの一例を示すタイミングチャートである。
【図３０】本発明の第９の実施形態に係る出力制御回路の構成の一例を示す回路図である。
【図３１】図３０に示す出力制御回路において信号出力が停止される場合おける各信号のタイミングの一例を示すタイミングチャートである。
【図３２】本発明の第１０の実施形態に係る出力制御回路の構成の一例を示す回路図である。
【図３３】図３２に示す出力制御回路において信号出力が停止および開始される場合の各信号のタイミングの一例を示すタイミングチャートである。
【図３４】本発明の第１１の実施形態に係る出力制御回路の構成の一例を示す回路図である。
【図３５】図３４に示す出力制御回路において信号出力が停止および開始される場合の各信号のタイミングの一例を示すタイミングチャートである。
【図３６】本発明の第１２の実施形態に係るクロック信号選択回路における、出力制御回路の構成の一例を示す回路図である。
【図３７】図３６に示す出力制御回路を２つ有した２入力のクロック信号選択回路においてクロック信号の切り換えが起こる場合の各信号のタイミングの一例を示すタイミングチャートである。
【図３８】本発明の第１３の実施形態に係るクロック信号選択回路における、出力制御回路の構成の一例を示す回路図である。
【図３９】図３８に示す出力制御回路を２つ有した２入力のクロック信号選択回路においてクロック信号の切り換えが起こる場合の各信号のタイミングの一例を示すタイミングチャートである。
【図４０】公知の文献に記載されたクロック信号選択回路の構成を示す回路図である。
【図４１】メタステーブルが発生する場合におけるフリップフロップの各信号の波形を示す図である。
【符号の説明】
１…クロック信号出力回路、    ２，２Ａ，２Ｂ，２Ｃ…イネーブル信号生成回路、    ３，３Ａ…デコード回路、    １１ｍ（ｍは１より大きい任意の整数を示す），１Ａｍ，１Ｂｍ，１Ｃｍ，１Ｄｍ，１Ｅｍ，４，４Ａ〜４Ｄ，４Ｃｍ，４Ｄｍ…出力制御回路、    ４，４Ａ，２１〜２３，１８ｍ，４０５，４１９、４２０〜４２４，４０５ｍ，４２０ｍ〜４２４ｍ…ＯＲ回路、    ２４〜２６…ＮＯＲ回路、    １１ｍ，１４２ｍ，１７ｍ，１１０ｍ，４０６，４１０，４１７，４２５，４０６ｍ，４１０ｍ，４１７ｍ，４２５ｍ…ＡＮＤ回路、    ２７，２８，３１，４０７ｍ…インバータ回路、    １２ｍ，１３ｍ，１５ｍ，４０３，４０８，４０９，４１１，４１５，４１６，４１８，４０３ｍ，４０８ｍ，４０９ｍ，４１１ｍ，４１５ｍ，４１６ｍ，４１８ｍ…フリップフロップ、  １４ｍ…クロックイネーブラ、    １６ｍ，１４１ｍ，４０４，４１２〜４１４，４０４ｍ，４１２ｍ〜４１４ｍ…ラッチ回路
【図１】
2004166194.tif 000004
【図２】
2004166194.tif 000005
【図３】
2004166194.tif 000006
【図４】
2004166194.tif 000007
【図５】
2004166194.tif 000008
【図６】
2004166194.tif 000009
【図７】
2004166194.tif 000010
【図８】
2004166194.tif 000011
【図９】
2004166194.tif 000012
【図１０】
2004166194.tif 000013
【図１１】
2004166194.tif 000014
【図１２】
2004166194.tif 000015
【図１３】
2004166194.tif 000016
【図１４】
2004166194.tif 000017
【図１５】
2004166194.tif 000018
【図１６】
2004166194.tif 000019
【図１７】
2004166194.tif 000020
【図１８】
2004166194.tif 000021
【図１９】
2004166194.tif 000022
【図２０】
2004166194.tif 000023
【図２１】
2004166194.tif 000024
【図２２】
2004166194.tif 000025
【図２３】
2004166194.tif 000026
【図２４】
2004166194.tif 000027
【図２５】
2004166194.tif 000028
【図２６】
2004166194.tif 000029
【図２７】
2004166194.tif 000030
【図２８】
2004166194.tif 000031
【図２９】
2004166194.tif 000032
【図３０】
2004166194.tif 000033
【図３１】
2004166194.tif 000034
【図３２】
2004166194.tif 000035
【図３３】
2004166194.tif 000036
【図３４】
2004166194.tif 000037
【図３５】
2004166194.tif 000038
【図３６】
2004166194.tif 000039
【図３７】
2004166194.tif 000040
【図３８】
2004166194.tif 000041
【図３９】
2004166194.tif 000042
【図４０】
2004166194.tif 000043
【図４１】
2004166194.tif 000044