(57)【特許請求の範囲】
【請求項１】
動作周波数の異なる周辺装置と外部バスを介して情報のやり取りを行なう情報処理装置において、該情報処理装置に周辺装置と共通の参照クロックを供給し、該参照クロックから周辺装置と同期を取るための参照同期信号を生成するための第１の信号発生回路と、前記参照クロックから当該情報処理装置の内部クロックを生成するための第２の信号発生回路と、前記第1の信号発生回路で生成された参照同期信号から周辺装置の動作周波数で動作する前記外部バスへのアクセスタイミングを示すタイミング信号を周辺装置の動作周波数と当該情報処理装置の内部クロックの周波数との周波数比に応じて生成する外部バスアクセスタイミング信号発生回路と、該外部バスアクセスタイミング信号発生回路により生成されたタイミング信号に従いバスアクセスを行なうバス入出力信号変換回路を備えたことを特徴とする情報処理装置。
【請求項２】
前記第２の信号発生回路は、前記参照クロックからＰＬＬにより当該情報処理装置の内部クロックを生成することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記バス入出力信号変換回路は、デューティ５０％の内部クロックを用い、その立ち上がりエッジで動作するラッチおよび立ち下がりエッジで動作するラッチを使用して内部クロックとの周波数比がＮ：２で動作する周辺装置と情報のやり取りを行なうことを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記バス入出力信号変換回路は、前記外部バスアクセスタイミング信号発生回路により生成されたタイミング信号に従い、前記外部バスより入力した信号と該入力信号を内部クロックで０．５サイクル遅延した信号を切り換えることにより、内部クロックで１サイクル以上有効な内部信号に変換することを特徴とする請求項３記載の情報処理装置。
【請求項５】
前記バス入出力信号変換回路は、前記外部バスアクセスタイミング信号発生回路により生成されたタイミング信号からＮ／２サイクル毎に切り換わるセレクト信号を生成し、該セレクト信号を使用して当該情報処理装置から前記外部バスへ出力する信号を切り換えることを特徴とする請求項３記載の情報処理装置。
【請求項６】
前記バス入出力信号変換回路は、位相が１／Ｍ［Ｍ：整数］サイクルずつずれたＭ相のクロックを使用して、内部クロックとの周波数比がＮ：Ｍ［Ｎ≧Ｍ≧２］で動作する周辺装置と情報のやり取りを行なうことを特徴とする請求項１記載の情報処理装置。
【請求項７】
前記バス入出力信号変換回路は、前記外部バスアクセスタイミング信号発生回路により生成されたタイミング信号から１サイクル以上毎に切り換わるセレクト信号を生成する回路と、前記外部バスより入力した信号を位相が１／ＭサイクルずつずれたＭ相のクロックで保持するＭ−１個のラッチと、前記外部バスより入力した信号と前記Ｍ−１個のラッチ出力信号から前記セレクト信号で選択した信号を内部信号として内部クロックで保持するラッチとを備えることを特徴とする請求項６記載の情報処理装置。
【請求項８】
位相が１／ＭサイクルずつずれたＭ相のクロックから前記外部バスへのアクセスタイミングを示す信号を周辺装置との周波数比に応じて生成する外部バスアクセスタイミング信号発生回路と、該Ｍ相のクロックからＮ／Ｍサイクル毎に切り換わるセレクト信号を生成し当該情報処理装置の内部信号を各々前記アクセスタイミング信号の１つをイネーブルとして内部クロックでラッチしたＭ本の信号のうち前記セレクト信号で選択した信号を該外部バスへの出力信号に変換するバス入出力信号変換回路を備えることを特徴とする請求項６記載の情報処理装置。
【請求項９】
前記バス入出力信号変換回路は、デューティ５０％の内部クロックを用い、その立ち上がりエッジで動作するラッチおよび立ち下がりエッジで動作するラッチを使用して内部クロックとの周波数比がＮ：２で動作する周辺装置と情報のやり取りを行なうことを特徴とする請求項２記載の情報処理装置。
【請求項１０】
前記バス入出力信号変換回路は、前記外部バスアクセスタイミング信号発生回路により生成されたタイミング信号に従い、前記外部バスより入力した信号と該入力信号を内部クロックで０．５サイクル遅延した信号を切り換えることにより、内部クロックで１サイクル以上有効な内部信号に変換することを特徴とする請求項９記載の情報処理装置。
【請求項１１】
前記バス入出力信号変換回路は、前記外部バスアクセスタイミング信号発生回路により生成されたタイミング信号からＮ／２サイクル毎に切り換わるセレクト信号を生成し、該セレクト信号を使用して当該情報処理装置から前記外部バスへ出力する信号を切り換えることを特徴とする請求項９記載の情報処理装置。
【請求項１２】
前記バス入出力信号変換回路は、位相が１／Ｍ［Ｍ：整数］サイクルずつずれたＭ相のクロックを使用して、内部クロックとの周波数比がＮ：Ｍ［Ｎ≧Ｍ≧２］で動作する周辺装置と情報のやり取りを行なうことを特徴とする請求項２記載の情報処理装置。
【請求項１３】
前記バス入出力信号変換回路は、前記外部バスアクセスタイミング信号発生回路により生成されたタイミング信号から１サイクル以上毎に切り換わるセレクト信号を生成する回路と、前記外部バスより入力した信号を位相が１／ＭサイクルずつずれたＭ相のクロックで保持するＭ−１個のラッチと、前記外部バスより入力した信号と前記Ｍ−１個のラッチ出力信号から前記セレクト信号で選択した信号を内部信号として内部クロックで保持するラッチとを備えることを特徴とする請求項１２記載の情報処理装置。
【請求項１４】
位相が１／ＭサイクルずつずれたＭ相のクロックから前記外部バスへのアクセスタイミングを示す信号を周辺装置との周波数比に応じて生成する外部バスアクセスタイミング信号発生回路と、該Ｍ相のクロックからＮ／Ｍサイクル毎に切り換わるセレクト信号を生成し当該情報処理装置の内部信号を各々前記アクセスタイミング信号の１つをイネーブルとして内部クロックでラッチしたＭ本の信号のうち前記セレクト信号で選択した信号を該外部バスへの出力信号に変換するバス入出力信号変換回路を備えることを特徴とする請求項１２記載の情報処理装置。
【請求項１５】
所定の動作周波数を有する情報処理装置と、前記所定の動作周波数とは異なる動作周波数を有する周辺装置と、該周辺装置の動作周波数で動作し前記情報処理装置と前記周辺装置を接続する外部バスとから成る情報処理システムであって、前記情報処理装置と前記周辺装置には共通の参照クロックが供給され、前記情報処理装置は前記参照クロックから周辺装置と同期を取るための参照同期信号を生成するための第１の信号発生回路と、前記参照クロックから当該情報処理装置の内部クロックを生成するための第２の信号発生回路と、前記第1の信号発生回路で生成された参照同期信号から前記外部バスへのアクセスタイミングを示すタイミング信号を周辺装置の動作周波数と当該情報処理装置の内部クロックの周波数との周波数比に応じて生成する外部バスアクセスタイミング信号発生回路と、該外部バスアクセスタイミング信号発生回路により生成されたタイミング信号に従いバスアクセスを行なうバス入出力信号変換回路を備えたことを特徴とする情報処理システム。
【請求項１６】
前記第２の信号発生回路は、前記参照クロックからＰＬＬにより当該情報処理装置の内部クロックを生成することを特徴とする請求項１５記載の情報処理システム。
【請求項１７】
前記バス入出力信号変換回路は、デューティ５０％の内部クロックを用い、その立ち上がりエッジで動作するラッチおよび立ち下がりエッジで動作するラッチを使用して内部クロックとの周波数比がＮ：２で動作する周辺装置と情報のやり取りを行なうことを特徴とする請求項１５記載の情報処理システム。
【請求項１８】
所定の動作周波数を有する複数のプロセッサと、前記所定の動作周波数とは異なる動作周波数で動作し前記複数のプロセッサを接続する外部バスとから成るマルチプロセッサシステムであって、前記複数のプロセッサには共通の参照クロックが供給され、各プロセッサは前記参照クロックから前記外部バスと同期を取るための参照同期信号を生成するための第１の信号発生回路と、前記参照クロックから当該プロセッサの内部クロックを生成するための第２の信号発生回路と、前記第1の信号発生回路で生成された参照同期信号から前記外部バスへのアクセスタイミングを示すタイミング信号を前記外部バスの動作周波数と当該プロセッサの内部クロックの周波数との周波数比に応じて生成する外部バスアクセスタイミング信号発生回路と、該外部バスアクセスタイミング信号発生回路により生成されたタイミング信号に従いバスアクセスを行なうバス入出力信号変換回路を備えたことを特徴とするマルチプロセッサシステム。
【請求項１９】
前記第２の信号発生回路は、前記参照クロックからＰＬＬにより当該プロセッサの内部クロックを生成することを特徴とする請求項１８記載のマルチプロセッサシステム。
【請求項２０】
前記バス入出力信号変換回路は、デューティ５０％の内部クロックを用い、その立ち上がりエッジで動作するラッチおよび立ち下がりエッジで動作するラッチを使用して内部クロックとの周波数比がＮ：２で動作する前記外部バスと情報のやり取りを行なうことを特徴とする請求項１８記載のマルチプロセッサシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、マイクロプロセッサシステムの入出力に係わり、特に動作周波数の異なるプロセッサとＬ２キャッシュや外部バスとの間の周波数変換制御技術に関する。
【０００２】
【従来の技術】
情報処理システムや制御機器の分野ではプロセッサの高性能化・高速化が求められ、その結果プロセッサの動作クロック周波数が高くなってきている。一方、低コストや省電力のため、通常Ｌ２キャッシュやメモリコントローラや外部バスやネットワークアダプタ等周辺装置は低い周波数で動作させる。またマルチプロセッサシステムにおいてはプロセッサ間の通信速度は通信用配線のディレイによりバス周波数に限界がある。そのため、プロセッサの周波数より低速のバス周波数をサポートすることは重要である。
【０００３】
例えば、特開平７−２１０２６７には、１系統のクロックを外部から入力して内部クロックとする方式が開示されている。しかし、この方式ではマルチプロセッサシステム等多数の装置が接続されたシステムでは、各装置間の同期を取る場合にクロックスキューが問題となる。
【０００４】
また、特開平５−２３３２７５のように、固定した周波数および固定した位相関係を有するクロックを必要なクロック系統の数だけ発生する方式がある。これはＰＬＬ回路によって達成され、より高い周波数のクロックがプロセッサのクロックのために使用され、かつ他のより低い周波数のクロックが外部バスとインタフェースするバス入出力信号変換回路において使用される。ＰＬＬを用いて各々の周波数が異なる複数系統のクロックをもつ処理装置同士を同期させるには、異なったクロックを分配する方式があり、次のような例があげられる。
【０００５】
第１の方式として、図２に示されるようにクロック分配系の数だけ独立したＰＬＬを用意する複数ＰＬＬ方式では、それぞれの系統にフィードバックを持っているので、それぞれのクロックに異なった分配系を使用しても位相を合わせることができる。
【０００６】
第２の方式として、図３に示されるようにＰＬＬは１個のみとし、その電圧制御発振器（ＶＣＯ）の出力にクロック分配系の数だけ分周器（ｄｉｖｉｄｅｒ）を用意して分配する複数ｄｉｖｉｄｅｒ方式では、複数ＰＬＬ方式で問題となるＰＬＬの干渉を回避することができる。
【０００７】
【発明が解決しようとする課題】
上述した方式で、内部クロック・Ｌ２キャッシュインターフェイス・外部バスインターフェイス等の複数のクロック系統を実装する場合に、それぞれのクロック系統の位相を合わせるには次のような問題があげられる。
【０００８】
複数ＰＬＬ方式では、図２に示すようにそれぞれの系統にフィードバックを持っているので、クロックの間のずれ（ｓｋｅｗ）を全て内部クロックと同じにできるが、  Ｌ２キャッシュインターフェイス用クロックや外部バスインターフェイス用クロックは、内部クロックと比較してドライブするＦＦは少ないが、Ｉ／Ｏ関連回路のためチップ全体にクロック分配系が広がるため、  内部クロックと同等の分配方式を取る必要があるので、実装面積が（内部クロックの実装面積）×（クロック系統数）となり、消費電力も比例して多くなる。また複数ＰＬＬ間の干渉問題があり、実装を困難にする。
【０００９】
複数ｄｉｖｉｄｅｒ方式では、図３のようにＰＬＬは１個のため干渉問題は解決するが、ＰＬＬのフィードバック制御が全系統のうち１系統しかできないため、残りのクロック系統はフィードバック無しで位相を合わせる必要がある。そのため、すべてのクロック分配系を等しく設計する必要があり、第１の方式と同じく内部回路と同様のクロック分配系にする必要があり、実装面積および消費電力が大きくなる。
【００１０】
本発明は、上述の問題を解決するため各々の装置には参照クロックのみを分配することで同期を容易に取り、該参照クロックから生成したクロックを用いて論理回路のみで複数のクロック系の周波数変換制御を行なうことを目的とする。特に内外周波数比がＮ：１またはＮ：２の場合に、複数のクロック系の実装に内部クロック分配系のみを使用し、論理回路のみで各々の周波数変換制御を行なうことで、同期問題を容易に取ることができかつ低実装面積・低消費電力で実装可能とするバスインターフェイス制御装置および該バスインターフェイス制御装置を実装する処理装置を提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明のバスインターフェイス制御装置は、処理装置間で同期を取るために参照クロックのみを必要とし、該参照クロックから該装置で同期を取るための参照同期信号および装置内部動作クロックを生成する手段を有する。さらに、本発明のバスインターフェイス制御装置は、該参照同期信号をリセット信号とし、あらかじめ設定された周波数比によりカウント数を決定する同期カウンタを有し、該設定周波数比と該同期カウンタとの比較により周辺装置とのアクセスタイミング信号を生成する手段を有する。さらに、本発明のバスインターフェイス制御装置は、該アクセスタイミング信号を外部インターフェースのイネーブル付きラッチのイネーブル信号とすることにより、該装置の動作クロックとしては内部動作クロック１系統のみを用いて他の処理装置との入出力信号の周波数変換制御を論理回路のみで行なう手段を有する。また、内部クロックとしてデューティ５０％のクロックを用い、内部動作周波数の２／Ｎ［Ｎ≧２］（１，１／１．５，１／２，１／２．５，１／３，．．．）の速度の他の処理装置とアクセスする機能を有する。また、位相が１／ＭサイクルずつずれたＭ相のクロックまたは内部クロックのＭ／２倍の周波数かつデューティ５０％のクロックを用い、内部動作周波数のＭ／Ｎ［Ｎ≧Ｍ≧２］の速度の他の処理装置とアクセスする機能を有する。
【００１２】
【発明の実施の形態】
以下、本発明の実施例を図に基づいて説明する。簡単のため、内部クロックＣＬＫと外部バスクロックＢＵＳＣＬＫの２系統のクロックを用いた例を示す。
【００１３】
図１は本発明の１実施例によるプロセッサシステムの構成図である。同期信号発生回路２５は、プロセッサ２１の外部より入力される参照クロックＲＥＦＣＬＫから、内部クロックＣＬＫと参照同期信号ＲＥＦＳＹＮＣを生成する。該参照同期信号ＲＥＦＳＹＮＣから外部バスアクセスタイミング信号発生回路２４はバスアクセスタイミング信号を生成する。バス入出力信号変換回路２３は該バスアクセスタイミング信号に従い、ＣＬＫでクロックされるプロセッサコア２２のアドレス／データ／制御信号（出力方向をＯＤ、入力方向をＩＤとする）とＢＵＳＣＬＫでクロックされるアドレス／データ／制御信号（まとめてＢＵＳＤとし、また出力方向をＢＵＳＤＯ、入力方向をＢＵＳＤＩとする）の変換を行なう。同期信号発生回路２５の構成を図４に、外部バスアクセスタイミング信号発生回路２４の構成を図５に、バス入出力信号変換回路２３の構成の出力側の回路を図６に入力側の回路を図７に示す。
【００１４】
図４は同期信号発生回路２５の構成図である。ＲＥＦＣＬＫを入力としてＰＬＬ４６でＣＬＫを生成する。ＣＬＫはプロセッサ２１全体に分配される。ＣＬＫの位相を固定するため、該ＰＬＬにＣＬＫをフィードバックする。またＲＥＦＣＬＫを遅延素子４０で遅延してからラッチ４１で１サイクル遅延した後、ラッチ４２でさらに１サイクル遅延した信号の反転と論理積を取ることによりＲＥＦＣＬＫの立ち上がり微分をしてＲＥＦＳＹＮＣを生成する。ＲＥＦＳＹＮＣはＲＥＦＣＬＫの１周期に１サイクルアサートされる信号であり、外部バスアクセスタイミング信号発生回路２４の同期カウンタを周期的にリセットするために用いる。尚、ＰＬＬを用いないで外部パルスジェネレータから直接ＣＬＫを供給するモードを実装するため、該モードを示す信号ＰＬＬ１：１ＭＯＤＥと論理和４５を用いＲＥＦＳＹＮＣを常にアサートにする。
【００１５】
図５は外部バスアクセスタイミング信号発生回路２４の構成を示したものである。ＣＬＫＲＡＴＩＯデコーダ６０は、ＣＬＫＲＡＴＩＯから、同期カウンタ６１の最大値を示す信号ＭＡＸ（内外周波数比＝Ｎ：２におけるＮ）および内外周波数が３：２や５：２等分数比の場合を示す信号ＨＡＬＦを生成する。同期カウンタ６１は、ＲＥＦＳＹＮＣをリセットとして０からＭＡＸ−１までカウントする値をＣＬＫＣＮＴとして出力する。カウント比較器６２は、前述のＣＬＫＣＮＴとＭＡＸおよびＨＡＬＦの関係を比較して、バスアクセスタイミング信号ＳＥＴ０，ＳＥＴ１を生成する。ラッチ６３でＳＥＴ１を１サイクル遅延させＳＥＴＨを生成する。
【００１６】
ＳＥＴ０，ＳＥＴ１は、バス入出力信号変換回路２３からバス２６への出力イネーブル信号であり、ＳＥＴ０，ＳＥＴＨは、バス２６からの入力イネーブル信号である。ただし、ＨＡＬＦがアサートされていない場合（内外周波数が整数比の場合）は、ＳＥＴ１，ＳＥＴＨ信号はアサートされることはない。ＳＥＴ０，ＳＥＴ１は、周波数比ＣＬＫＲＡＩＯによって決まる所定のＣＬＫＣＮＴの値の時にアサートされる。この所定値は可能性のあるケースをあらかじめ該カウント比較器６２に論理回路として実装する。
【００１７】
図６はバス入出力信号変換回路２３を１本の出力信号について具体化したものである。出力信号ＯＤは、ＳＥＴ０をイネーブルとしたラッチ１００の出力信号ＯＤ０およびＳＥＴ１をイネーブルとしたラッチ１０１の出力信号ＯＤ１となる。ＳＥＬ０Ｋ０はＳＥＴ０をセット信号、ＳＥＴ１をリセット信号とした、ＳＲラッチ１０３の出力信号である。ＳＥＬ０Ｋ１はＳＥＬ０Ｋ０を入力とした立ち下がりトリガラッチ（デューティ５０％を保証する内部クロックのＮＯＴをクロック入力とするラッチ）１０４の出力である。ＳＥＬ０はＳＥＬ０Ｋ０とＳＥＬ０Ｋ１の論理和１０５の出力であり、２入力セレクタ１０２のセレクト信号である。２入力セレクタ１０２はＳＥＬ０が０／１の時ＯＤ０／ＯＤ１をセレクトしてＢＵＳＤＯを出力する。
【００１８】
図７はバス入出力信号変換回路２３を１本の入力信号について具体化したものである。２入力セレクタ１１１はＳＥＴＨが０の時バスからの入力信号をセレクトし、１の時バスからの入力信号ＢＵＳＤＩの立ち下がりトリガラッチ１１２の出力ＢＵＳＤＬＹＨをセレクトしてＢＳＥＬＤを出力する。
【００１９】
ＳＥＴ０とＳＥＴＨを入力とした論理和１１３の出力がイネーブル信号ＢＵＳＩＥＮとなる。ＢＳＥＬＤはＢＵＳＩＥＮをイネーブルとしたラッチ１１０の出力信号ＩＤとなる。ここでＩＤと、ＢＵＳＩＥＮをラッチ１１４で１サイクル遅延した信号ＢＵＳＩＳＨＡＰＥの論理積を取ることで１サイクル長の信号に切り出して制御系の入力信号ＩＣＭＤとして内部回路で使用する。ここで、立ち下がりトリガラッチとデューティ５０％を保証する内部クロックの代わりに、通常のラッチと内部クロックから０．５サイクル遅れた別クロック系統のクロックを用いることもできる。
【００２０】
図８は、図６および図７に示された回路において、内部クロックＣＬＫとバスクロックＢＵＳＣＬＫと参照クロックＲＥＦＣＬＫの周波数比が３：１：１の場合の、プロセッサ内部からの入出力におけるタイムチャートである。
【００２１】
図６と図８を用いてバス出力信号変換回路の動作を説明する。この周波数比の場合、バス出力部では、ＳＥＴ０はＣＬＫＣＮＴが０の時にアサートされ１となり、ＳＥＴ１は常に０であるのでＳＥＬ０Ｋ０およびＳＥＬ０Ｋ１は常に０でありＳＥＬ０も０となるので、バス出力信号ＢＵＳＤＯは常にＯＤを１バスサイクル遅延したＯＤ０がセレクトされバスに出力される。
【００２２】
図７と図８を用いてバス入力信号変換回路の動作を説明する。バス入力部では、ＳＥＴ１が常にネゲートされ０なのでＳＥＴＨは常に０となりＢＳＥＬＤはＢＵＳＤＩがセレクトされる。またＢＵＳＩＥＮはＳＥＴ０と等しくなるので、ＩＤは常にＢＵＳＤＩを１バスサイクル遅らせたものとなる。ＩＤが制御系の入力信号の場合は、ＩＤとＢＵＳＩＳＨＡＰＥ（ＢＵＳＩＥＮを１サイクル遅延した信号）の論理積を取ることで１サイクル長の信号ＩＣＭＤとして内部回路で使用する。
【００２３】
以上の様にして、内部クロックＣＬＫで駆動されるデータＯＤは、ＢＵＳＯＥＮ（ＳＥＴ０）がアサートされている時の値が、３サイクルの信号に整形されＢＵＳＤＯとしてバスに出力され、ＢＵＳＣＬＫで駆動されるデータＢＵＳＤＩは、ＢＵＳＩＥＮがアサートされている時に有効な内部信号ＩＤとなる。
【００２４】
図９は、図６および図７に示された回路において、内部クロックＣＬＫとバスクロックＢＵＳＣＬＫと参照クロックＲＥＦＣＬＫの周波数比が５：２：１の場合の、プロセッサ内部からの入出力におけるタイムチャートである。
【００２５】
図６と図９を用いてバス出力信号変換回路の動作を説明する。この周波数比の場合、バス出力部では、ＳＥＴ０はＣＬＫＣＮＴが２の時にアサートされ１となり、ＳＥＴ０をイネーブルとしたラッチ１００の出力ＯＤ０はＣＬＫＣＮＴが３の時に、ＣＬＫＣＮＴが２の時のＯＤと切り換わる。またＳＥＴ１はＣＬＫＣＮＴが４の時にアサートされ１となり、ＳＥＴ１をイネーブルとしたラッチ１０１の出力ＯＤ１はＣＬＫＣＮＴが０の時に、ＣＬＫＣＮＴが４の時のＯＤと切り換わる。ＳＲラッチ１０３の出力ＳＥＬ０Ｋ０はＣＬＫＣＮＴが３，４の時１となり、立ち下がりトリガラッチ１０４の出力ＳＥＬ０Ｋ１はＳＥＬ０Ｋ０を０．５サイクル遅らせたものなので、ＳＥＬ０はＣＬＫＣＮＴ３，４，０〜０．５の時に１となる。（ここでＣＬＫＣＮＴの値０．５をＣＬＫＣＮＴが０の０．５サイクル後とする。他も同様とする。）従って、ＣＬＫＣＮＴが０．５〜１，１，２の時にＯＤ０が、ＣＬＫＣＮＴが３，４，０〜０．５の時にＯＤ１がＢＵＳＤＯとしてバスに出力される。
【００２６】
図７と図９を用いてバス入力信号変換回路の動作を説明する。バス入力部では、ＣＬＫＣＮＴが０．５の時のバス入力信号ＢＵＳＤＩは、立ち下がりトリガラッチ１１２の出力ＢＵＳＤＬＹＨとして、ＣＬＫＣＮＴの０．５〜１．５に遅延される。ここで、ＳＥＴＨはＳＥＴ１の１サイクル遅れたＣＬＫＣＮＴが０の時にアサートされ１となるので、このとき２入力セレクタ１１１の出力ＢＳＥＬＤが同期カウンタが０．５の時のＢＵＳＤＩの値となる。またＣＬＫＣＮＴが２の時はＢＳＥＬＤの値はその時のＢＵＳＤＩの値となる。ＢＵＳＩＥＮをイネーブルとしたラッチ１１０の出力は、ＣＬＫＣＮＴが１，２の時にはＣＬＫＣＮＴが０．５の時のＢＵＳＤＩの値が、ＣＬＫＣＮＴが３，４，０の時にはＣＬＫＣＮＴが２の時のＢＵＳＤＩの値が変換された内部信号ＩＤとなる。ＩＤが制御系の入力信号の場合は、ＩＤとＢＵＳＩＳＨＡＰＥ（ＢＵＳＩＥＮを１サイクル遅延した信号）の論理積を取ることで１サイクル長の信号ＩＣＭＤとして内部回路で使用する。
【００２７】
以上の様にして内部クロックＣＬＫで駆動されるデータＯＤは、ＢＵＳＯＥＮ（ＳＥＴ０，ＳＥＴ１）がアサートされている時の値が、２．５サイクル長の信号に整形されバスに出力され、ＢＵＳＣＬＫで駆動される２．５サイクル長データＢＵＳＤＩは、ＢＵＳＩＥＮがアサートされている時に有効な内部信号ＩＤとなる。
【００２８】
以上実施例として、内外周波数がＮ：１およびＮ：２の場合のデューティ５０％のクロックを使用した実施例を示した。
【００２９】
動作周波数比がＮ：Ｍ［Ｍ：整数］の場合の、位相が１／ＭサイクルずつずれたＭ相のクロックを使用する場合も
基本構成は変わらないので概略のみ説明する。
【００３０】
位相が１／ＭサイクルずつずれたＭ相のクロックＣＬＫｉ［ｉ：０〜Ｍ−１］は、同期信号発生回路２５を修正するか外部より入力する等して得る。またＣＬＫ０を内部動作クロックＣＬＫとする。外部バスアクセスタイミング信号発生回路２４の変更は、図５においてＳＥＴ０・ＳＥＴ１だった信号が２本からＭ本必要となった事であり、これをＳＥＴｉとする。
【００３１】
図１０および図１１は位相が１／ＭサイクルずつずれたＭ相のクロックを使用する場合のバス入出力信号変換回路２３を１本の入出力信号について具体化したものである。
【００３２】
図６から図１０への変更点は、ＳＥＴ０・ＳＥＴ１信号等が２本からＭ本になった事であり、それぞれＯＤｊ［ｊ：０〜Ｍ−１］・ＳＥＴｊ・ＣＬＫｊとなる。内部クロックＣＬＫで駆動されるデータＯＤをＳＥＴｊをイネーブルとするラッチ３００〜３０９で受け、その出力ＯＤｊの１つをＳＥＬＯに従いセレクタ３１０で切り換えて、その出力をＢＵＳＤＯとしてバスに出力する。ＳＥＬＯはＮ／Ｍサイクル毎に切り換わる信号、つまりバスサイクルと同期したセレクト信号で、ＳＥＴｊとＣＬＫｊ等から出力セレクト信号発生回路３１１で生成する。出力セレクト信号発生回路３１１の詳細は当分野に関連する技術者が容易に考えられる範囲の技術であるので省略する。
【００３３】
図７から図１１への変更点は、ＢＵＳＤＬＹＨがＢＵＳＤＬＹｋ［ｋ：１〜Ｍ−１］となった事であり、ＢＵＳＤＩおよびＢＵＳＤＩをそれぞれＣＬＫｋをクロックとするラッチ３２１〜３２９で遅延したＢＵＳＤＬＹｋの中から１つをセレクト信号ＳＥＬＩに従いセレクタ３３０で切り換えてＢＳＥＬＤを得る。ＢＳＥＬＤからＩＤとＩＣＭＤを得る部分は図７と変わらないので省略する。ＳＥＬＩは、ＳＥＴ０およびＳＥＴｋを１サイクル遅延して得られるＳＥＴＤｋから入力セレクト信号発生回路３３１で生成する。ＢＵＳＩＥＮは図７と同様にＳＥＴ０とＳＥＴＤｋの論理和である。入力セレクト信号発生回路３３１の詳細は当分野に関連する技術者が容易に考えられる範囲の技術であるので省略する。
【００３４】
また、動作周波数比がＮ：Ｍの場合として、Ｍ／２倍の周波数かつデューティ５０％のクロックを使用する事も可能だが、この場合も外部バスアクセスタイミング信号発生回路２４とバス入出力信号変換回路２３の修正で実現でき、これは当分野に関連する技術者が容易に考えられる範囲の技術であるので省略する。
【００３５】
【発明の効果】
本発明では、内部クロック・Ｌ２キャッシュインターフェイス・外部バスインターフェイス等の複数のクロック系統を実装する時でも周波数比がＮ：１またはＮ：２の場合は、分配系が１系統で済むため、実装面積・消費電力を抑えることができ、低コストでの複数のクロック系の実装を可能にする。また、接続する他の処理装置には参照クロックだけを分配すればよいため、同期を容易に取ることができる。また、位相が１／ＭサイクルずつずれたＭ相のクロックまたは内部クロックのＭ／２倍クロックを用いることで内外周波数比がＮ：Ｍの周波数変換制御を行なうことができる。
【図面の簡単な説明】
【図１】本発明の一実地例によるバスインターフェイス制御装置を備えたプロセッサを示す構成図である。
【図２】複数ＰＬＬ方式を示す回路の構成図である。
【図３】複数ｄｉｖｉｄｅｒ方式を示す回路の構成図である。
【図４】図１のプロセッサの同期信号発生回路の構成図である。
【図５】図１のプロセッサの外部バスアクセスタイミング信号発生回路の構成図である。
【図６】図１のバス入出力信号変換回路の一実地例として、プロセッサ内部と外部バスをＮ：１およびＮ：２の速度比で出力動作させるための回路の構成図である。
【図７】図１のバス入出力信号変換回路の一実地例として、プロセッサ内部と外部バスをＮ：１およびＮ：２の速度比で入力動作させるための回路の構成図である。
【図８】図６および図７に示された回路において、プロセッサ内部クロックと外部バス速度の比が３：１の場合のプロセッサ内部からの入出力におけるタイムチャートである。（参照クロック：バスクロック：内部クロック＝１：１：３の場合）
【図９】図６および図に示された回路において、プロセッサ内部クロックと外部バス速度の比が５：２の場合のプロセッサ内部への入出力におけるタイムチャートである。（参照クロック：バスクロック：内部クロック＝１：２：５の場合）
【図１０】図１のバス入出力信号変換回路の一実地例として、位相が１／ＭサイクルずつずれたＭ相のクロックを使用する場合のプロセッサ内部と外部バスをＮ：Ｍの速度比で出力動作させるための回路の構成図である。
【図１１】図１のバス入出力信号変換回路の一実地例として、位相が１／ＭサイクルずつずれたＭ相のクロックを使用する場合のプロセッサ内部と外部バスをＮ：Ｍの速度比で入力動作させるための回路の構成図である。
【符号の説明】
２１：プロセッサ
２２：プロセッサコア
２３：バス入出力信号変換回路
２４：外部バスアクセスタイミング信号発生回路
２５：同期信号発生回路
２６：バス
４０：遅延用バッファ
４１，４２，６３，１１４，３２１，３２９，３３２：ラッチ
４３：ＮＯＴゲート
４４，１１５，３３３：２入力ＡＮＤ
４５，６３，６５，１０５，１１３：２入力ＯＲ
４６，２００，２１０，２４０：ＰＬＬ
４７，４８，４９，２０５，２０６，２０７，２１５，２１６，２１７，２４５，２４６，２４７，２５５，２５６，２５７：バッファ
６０：ＣＬＫＲＡＴＩＯデコーダ
６１：同期カウンタ
６２：カウント比較器
１００，１０１，１１０，３００，３０１，３０９，３３１：イネーブル付きラッチ
１０２，１１１：２入力セレクタ
１０３：ＳＲラッチ
１０４，１１２：立ち下がりトリガラッチ
２０１，２０４，２１１，２１４，２４１，２４４，２５４：分周器
２０２，２１２，２４２：位相比較器
２０３，２１３，２４３：ＶＣＯ
３１０，３３０：Ｍ入力セレクタ
３１１：出力セレクト信号生成回路
３３１：入力セレクト信号生成回路
３３３：Ｍ入力ＯＲ
【図１】
0003610854.tif 000002
【図２】
0003610854.tif 000003
【図３】
0003610854.tif 000004
【図４】
0003610854.tif 000005
【図５】
0003610854.tif 000006
【図６】
0003610854.tif 000007
【図７】
0003610854.tif 000008
【図８】
0003610854.tif 000009
【図９】
0003610854.tif 000010
【図１０】
0003610854.tif 000011
【図１１】
0003610854.tif 000012