(57)【特許請求の範囲】
【請求項１】
第１のクロック信号及び前記第１のクロック信号とは別のクロック信号である第２のクロック信号が入力され、前記第１及び第２のクロック信号の内の一のクロック信号を入力される制御信号に基づいて選択的に出力すると共に、入力されるリセット信号がアクティブとなることに応答して、前記第１及び第２のクロック信号のいずれの出力も停止するクロック切り換え回路と、
前記第１及び第２のクロック信号のそれぞれとは別のクロック信号である第３のクロック信号及び前記リセット信号が入力され、前記リセット信号がアクティブとなることに応答して、前記第３のクロック信号及びマスク信号を出力する制御回路と、
前記クロック切り換え回路及び前記制御回路と接続され、前記クロック切り換え回路から出力される前記一のクロック信号を出力する一方で前記第１及び第２のクロック信号のいずれの出力も停止している場合に前記第３のクロック信号を出力する第１のゲート回路と、
前記マスク信号に基づいて、前記リセット信号がアクティブである期間中に前記制御信号の値が変化する場合において、前記制御信号の値の変化が前記クロック切り換え回路に伝達されないようにマスクする第２のゲート回路と、
を有するクロック選択回路。
【請求項２】
前記第２のゲート回路は、前記リセット信号がアクティブからインアクティブに変化した後においても、一定の期間は前記制御信号の値の変化が前記クロック切り換え回路に伝達されないようにマスクすることを特徴とする請求項１に記載のクロック選択回路。
【請求項３】
前記第２のゲート回路は、前記制御信号及び前記マスク信号の論理反転がそれぞれ入力されるＡＮＤ回路を含むことを特徴とする請求項１に記載のクロック選択回路。
【請求項４】
前記第３のクロック信号は、前記制御回路に常時入力されているクロック信号であり、
前記制御回路は前記リセット信号がアクティブになることに応答して別のリセット信号を出力し、
前記第１のゲート回路は前記一のクロック信号及び前記第３のクロック信号のそれぞれが入力されるＯＲ回路であることを特徴とする請求項１に記載のクロック選択回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数のクロックを切り換えるクロック切り換え回路に関するものである。
【背景技術】
【０００２】
情報処理装置を構成するデジタル回路は、周期的に発生されるタイミングパルスに合わせてすべての処理を行なうようになっている。このタイミングを合わせるための信号がクロック信号である。情報処理装置であるＬＳＩ内部の機能ブロックにおいて、モードや動作する機能によって必要とする動作クロックが異なる場合、機能ブロックの外部にクロックの切り換え回路を設け、複数の入力クロックからモードや機能に応じたクロックを１つ選択し、機能ブロックの動作クロックとして入力することが一般的である。このとき、モードや機能は選択信号などによってクロック切り換え回路に通知され、選択される出力クロックは動的に変更される。
【０００３】
また、クロック切り換え回路に入力される複数の入力クロックは互いに非同期であり、選択信号が変更されるタイミングも複数の入力クロックに対して非同期である。そのため、クロック切り換え回路は切り換え直後の出力クロックの波形に、動作クロックとして供給を受ける機能ブロックにノイズとみなされ、その結果機能ブロックが誤動作するようなパルス信号が出現しないように工夫する必要がある。
また、機能ブロックが同期回路である場合、機能ブロックのリセットを行うためには入力される動作クロックに同期したリセット信号を必要とする場合がある。この場合、クロック切り換え回路によって選択された出力クロックに同期したリセット信号を機能ブロックに入力するために、このリセット信号を出力クロック信号と同期化する同期化回路が必要となる。
【０００４】
一方、近年特にＬＳＩの開発効率を向上させるため、機能ブロックのモジュール化およびその流用化が進んでおり、一般的には汎用的に共通モジュールとして簡易的に流用できるマクロ回路が必要とされている。
【０００５】
【特許文献１】特開平１１−９７９８８号公報特許文献１には、出力にノイズが発生しないクロック切り換え回路が開示されている。図３は特許文献１の図１及び図２に示されるクロック切り換え回路である。説明のため、本願の図３では特許文献１の図１および図２をひとつの図面として示しているが、実質的には同一である。クロック選択制御信号SELの分岐後の信号であるａ０、ａ１の値により、入力クロックｂ０、ｂ１のいずれかがクロック切り換え回路の出力クロックＳ１として出力される。分岐後のａ１にはインバータ７が挿入されているため、クロック選択制御信号ａ０およびａ１は同時に“1”にはならない。
【０００６】
たとえばクロック選択制御信号ＳＥＬが“１”のとき、ａ０が“1”、であり、もう一方のａ１は“0”となることにより、リセット同期回路１０の出力ｄ０が“１”、リセット同期回路１１の出力ｄ１は“0”となる。２つのクロック同期化回路２０、２１のうち、クロック同期化回路２０内のＦＦ２００、ＦＦ２０１のリセット端子には“１”が入力されているのでクロック同期化回路２０に入力されるクロックｂ０がANDゲート４０にマスクされずにｆ０から出力される。
【０００７】
一方、クロック同期化回路２１内のＦＦ２１０、ＦＦ２１１はリセットがかかり、クロックｂ１はANDゲート４１にマスクされ、“０”がｆ１から出力される。したがい、ｆ０とｆ１が入力されているＯＲゲート３０からは、ｆ０がクロック切り換え回路の出力Ｓ１として出力される。
【０００８】
また、初期化の際はリセット信号RSTを“0”にすることでｄ０、ｄ１も“０”となり、クロック切り換え回路内のすべてのフリップフロップがリセットされ、初期化状態となる。
【０００９】
図４は、ＬＳＩ内部のある機能ブロックがクロック切り換え回路によって選択された出力クロックを動作クロックとし、内部のリセットを行うためには動作クロックに同期したリセット信号が必要となるような場合を示したものである。図4（Ａ）のクロック切り換え回路１は図3で説明したクロック切り換え回路と同様のものを使用した場合を例としている。同期リセットは図4に示すように、外部から供給されるリセット信号を、リセット信号同期化回路３においてクロック切り換え回路１にて選択された出力クロックと同期化する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、このときクロック切り換え回路に供給されているリセット信号RST0が“０”(リセット中)のときはクロック切り換え回路内の同期化回路２０、２１内のフリップフロップ２００、２０１、２１０、２１１はリセットされているため、クロック切り換え回路１からの出力Ｓ１からはクロック選択制御信号SELの値に関係なく“０”を出力し、機能ブロック４へ供給されるクロックであるCLKOUTは“０”となる。つまり、クロック切り換え回路のリセット信号RST0が“０”(リセット中)のときは機能ブロック４に動作クロックとして供給される出力クロックCLKOUTが“０”となり、機能ブロック４がリセット動作することができない。したがって図４（Ｂ）のように、リセット信号を２種類用意し、クロック切り換え回路用のリセット信号RST0と異なる期間にアクティブとなるリセット信号RST1を機能ブロックへ供給し、機能ブロックにリセットをかける際はクロック切り換え回路とは別のタイミングでRST1をアクティブにしなければならない。
【００１１】
すなわち、機能ブロックのリセットとクロック切り換えのために２本の独立したリセット信号が必要となり、その２本のリセット信号は排他的に制御しなければならない。
【課題を解決するための手段】
【００１２】
上記課題を解決するために本発明の同期リセット付きクロック選択回路は、ＬＳＩがどのモードにあるときにも常に入力されている常時入力クロックを入力し、リセット信号がアクティブ中には、制御信号によって出力クロックを選択するクロック切り換え回路の出力クロックに代えて、入力された常時入力クロックを出力クロックとして出力することにより、リセット入力時はクロック選択回路の動作に依存することなく常時入力クロックを機能ブロックへ供給する。
【発明の効果】
【００１３】
上記手段により、従来クロック切り換え回路ではリセット中やあるいは電源投入直後には操作クロックを機能ブロックに供給するために、リセット供給のタイミングや、リセット手順などをＬＳＩ設計のたびに考慮する必要があったが、リセット中やあるいは電源投入直後においても動作クロックを機能ブロックに確実に送出することができる汎用的なクロック切り換え回路を提供することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明を適用した具体的な実施の形態について図面を参照しながら詳細に説明する。
【００１５】
図１は本発明の同期リセット制御付きクロック選択回路の第１の実施形態例を示すものである。本発明の同期リセット制御付きクロック選択回路は、図４に示した構成にリセット制御回路２を追加している。クロック切り換え回路１は、図３に示したクロック切り換え回路であり、リセット制御回路２はリセット信号RESETとシステムクロックＣＬＫ２とを入力とし、マスク信号ｇ、リセット中に出力されるクロックｈ、同期化用のリセット信号ｉとを出力する。システムクロックＣＬＫ２は、ＬＳＩの状態に依存せずに常に供給されるクロックである。
【００１６】
また、クロック切り換え回路１の前段にはクロック選択用制御信号の入力端子ａ０、ａ１のそれぞれ前段にマスク用のゲート回路５を設け、マスク信号ｇがアクティブレベル“０”のときはクロック選択用の制御信号SELがどのような値をとってもクロック切り換え回路１に入力されるクロック選択用制御端子ａ０、ａ１にすべてがインアクティブである“0”が入力されるようになっている。さらに、機能ブロック４へ供給されるクロック信号CLKOUTはORゲート６により、クロック切り換え回路１からの出力クロックＳ１あるいはリセット制御回路２から出力されるリセット時出力クロックｈが出力される。
【００１７】
次に、図2のタイミングチャートを用い、図１に示すリセット制御付きクロック切り換え回路の動作を詳細に説明する。
【００１８】
機能ブロック４はモードによってクロック信号CLK0あるいはCLK1によって動作し、２つのクロックは機能ブロックの動作するモードによってブロック外で切り替わって入力される。動作するモードとはたとえば画像符号化の圧縮モード、あるいは伸張モードなどであり、圧縮モード時には高速処理させるために高速クロックを入力し、伸張モード時には伸張した画像データを表示させるために表示機器の処理速度にあわせたクロックを入力する場合などが想定される。CLK2はＬＳＩの他の機能を動作させるために常に入力されているシステムクロックなどである。以下、図２のタイミングチャートの時刻Ｔ０〜Ｔ９におけるそれぞれの信号の動作について説明する。
【００１９】
Ｔ０：  クロック切り換え回路１はクロック選択用の制御信号SELに応じたクロックを出力Ｓ１している。このときリセット制御回路２からの出力は、マスク信号ｇが“0”（インアクティブ）、リセット時出力クロックｈが“0”、機能ブロックリセット信号ｉが“1”(インアクティブ)となっている。したがってORゲート６からはクロック切り換え回路１の出力Ｓ１がそのまま機能ブロック４へのクロックCLKOUTとして出力される。同期リセット信号RSTOUTは同期化用のリセット信号ｉの“1”(インアクティブ)がリセット信号同期化回路３でCLKOUTで同期化されて機能ブロック４へ入力される。
【００２０】
Ｔ１：リセット信号RESETが“0”(リセット状態)になるとクロック切り換え回路１のリセット信号RSTが“0”となるためクロック切り換え回路１内のFF(図3における100、101、110、111、200、201、210、211)はすべて初期化され、“0”の値を保持すると同時に出力し、ｄ０、ｆ０、ｄ１、ｆ１すべてが“0”、したがってクロック切り換え回路１の出力Ｓ１の値も“0”となる。このときリセット制御回路２の出力値(ｇ、ｈ、ｉ)は変化しないため機能ブロックへのクロック（CLKOUT）は“0”となる。
【００２１】
Ｔ２： リセット信号RESETが“０”である最中にリセット制御回路２はマスク信号ｇを“1”(アクティブ)にする。ここでは、RESETが“0”になってからCLK2で２クロック後にマスク信号をアクティブにしているが、マスク信号ｇは必ずRESET信号が“0”である間にアクティブになるようにする。マスク信号ｇが“１”になることでゲート回路５の出力はマスクされ、クロック切り換え回路１のクロック選択用制御端子(ａ０、ａ１)すべてに“0”が入力される。これによりリセット信号RESETが“1”(リセット状態ではない)に戻っても、マスク信号ｇが“0”（インアクティブ）になるまでクロック切り換え回路１のFF(図3における100、101、110、111、200、201、210、211)は初期値“０”を保持し、ｄ０、ｄ１、ｆ０、ｆ１も“0”のままであるため、出力Ｓ１も“０”を維持する。
【００２２】
また、機能ブロックへのクロックCLKOUTの立下りでリセット制御回路２から機能ブロックリセット信号ｉに“0”(アクティブ)を出力する。
【００２３】
Ｔ３：機能ブロックリセット信号ｉが“0”(アクティブ)になった後に、リセット制御回路２はシステムクロックであるＣＬＫ２をリセット時用クロックｈとして出力し始める。ここではＴ２から数クロック後に出力開始しているが、直後でもよい。このときクロック切り換え回路１からの出力Ｓ１は“0”であるため、ORゲート６の結果から機能ブロック４へのクロックCLKOUTは常時動作クロックＣＬＫ２となる。ここではＣＬＫ２にシステムクロックを入力しているが、どのようなモード、機能であっても常に入力されており、かつ機能ブロック４が動作できる周波数のクロックであればよい。
【００２４】
Ｔ４：リセット信号同期回路３は機能ブロックリセット信号ｉの“0”（アクティブ）の値を機能ブロック４に供給されている動作クロックCLKOUTで再同期して同期リセット信号RSTOUTとして出力する。RSTOUTは機能ブロック４に入力される。
【００２５】
Ｔ５：クロック選択用の制御信号SELが変化しても、マスク信号ｇが“1”(アクティブ)であるうちはクロック切り換え回路１のクロック選択用の制御端子(ａ０、ａ１)はすべて“0”であるため同期リセット信号RSTOUTには影響はない。
【００２６】
Ｔ６：リセット信号RESETが“1”（インアクティブ）になっても、やはり同期リセット信号RSTOUTには影響はない。これ以降、機能ブロック４へのリセットを解除するまでの後処理を開始する。
【００２７】
Ｔ７：リセット信号RESETを“1” （インアクティブ）になってから２ＣＬＫ２より後、かつ機能ブロック４がリセットされるに充分なクロックを入力されたら  リセット制御回路２は機能ブロックリセット信号ｉが“1” （インアクティブ）にする。機能ブロック４がリセットされるに充分なクロックを入力されたかどうかは、機能ブロック４が自身のリセットが完了されたことを示す信号（図示せず）をリセット制御回路２に通知するか、あるいは設計段階であらかじめ試算した値を用いてもよい。
【００２８】
Ｔ８：リセット信号同期回路３は、機能ブロックリセット信号ｉの“1” （インアクティブ）をCLKOUTで同期することによりRSTOUTを“1” （インアクティブ）にする。
【００２９】
Ｔ９：リセット制御回路２はリセット時用クロックｈを “0”固定出力に変更し、マスク信号ｇを“0”(インアクティブ)にする。これにより、クロック切り換え回路１のクロック選択用の制御信号(ａ０、ａ１)はクロック選択用の制御信号SELの値に対応した値となり、クロック切り換え回路１はクロック切り換え動作を開始する。
【００３０】
Ｔ１０：クロック切り換え回路１のクロック出力Ｓ１からはクロック選択用の制御信号SELに対応したクロックが出力し始める。リセット動作はこれにて完了である。
以上に示すように本願発明では、機能ブロックに同期リセットを供給するために独立したリセット信号を２本用意して排他的に制御する必要がなくなる。
【００３１】
また、クロック選択用の制御信号SELが外部端子でなくＬＳＩ内部のレジスタで制御される場合、クロック選択用の制御信号SELは電源投入時やリセット時に不定あるいはある決まった初期値が保持され、ＬＳＩのモードや機能などにより切り換え回路に入力されるクロックは通常一般的に使用するクロック周波数のクロックのみが入力されている場合にも、確実にリセット信号およびリセット信号に同期している動作クロックを供給することができる。したがい、クロック切り換え回路のリセットのタイミング、同期化したいリセットのタイミング、クロック選択用の制御信号の変更値やタイミング等をＬＳＩ設計のたびに考慮する必要がなくなり、汎用的に使用できるマクロ回路を提供することが可能となる。
【００３２】
図５は、本発明の第２の実施例を表すものである。クロック切り換え回路１に入力されるクロックは図５に示すように3本以上でも図1の場合と同様に実現可能である。ただし、当然制御信号SEL０〜SELｎは対応する本数必要となる。
【００３３】
図６は、第２の実施例の変形例である。ＬＳＩの仕様によりどのようなモード、機能であっても常に入力されるクロックが切り換えの対象となるクロック内に存在するとき、リセット制御回路２の入力となる常時動作クロックとして兼用できる。これにより適切な常時動作クロックを設計の際に探さなくとも設計可能であるという設計簡易化の利点がある。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態を示す同期リセット制御付きクロック選択回路の構成図である。
【図２】本実施形態の動作を示すタイミングチャートである。
【図３】従来技術であるクロック切り換え回路の構成図である。
【図４】クロック切り換え回路を使用したクロックの同期リセットを生成するための従来の構成図である。
【図５】本発明の二実施形態同期リセット制御付きクロック選択回路の構成図である。
【図６】本発明の二実施形態同期リセット制御付きクロック選択回路の変形例構成図である。
【符号の説明】
【００３５】
１  クロック切り換え回路
２  制御回路
３  リセット同期化回路
４  機能ブロック
５  クロック選択用制御信号マスクゲート
６  ORゲート
７  NOTゲート
１０  リセット制御回路
１１  リセット制御回路
２０  同期化回路
２１  同期化回路
３０  ORゲート
４０  ANDゲート
４１  ANDゲート
【図１】
0004750505.tif 000002
【図２】
0004750505.tif 000003
【図３】
0004750505.tif 000004
【図４】
0004750505.tif 000005
【図５】
0004750505.tif 000006
【図６】
0004750505.tif 000007