(57)【要約】【課題】高周波数狭帯域ＣＰＵと低周波数広帯域バスとの間の帯域幅ボトルネックを解消することができる帯域幅同期化回路及び帯域幅同期化方法とこれを含むデータプロセッシングシステムを提供する。【解決手段】帯域幅同期化回路はアップサイザー及びシンクダウン部を含む。アップサイザーは第１クロックによって作動するシンクパッカー及びシンクアンパッカーを含む。シンクダウン部はアップサイザーと接続され、第１クロックの周波数より低い周波数の第２クロックに応答してアップサイザーのデータに対してシンクダウン動作を実行する。【選択図】図７
2011113568.tif 000002
【特許請求の範囲】
【請求項１】
第１クロックに基づいて作動する少なくとも１つのシンクパッカー及び少なくとも１つのシンクアンパッカーを含むアップサイザーと、
前記アップサイザーと接続され、前記第１クロックより低い周波数を有する第２クロックに応答して前記アップサイザーのデータにシンクダウン動作を実行するように構成されたシンクダウン部と、を備えることを特徴とする帯域幅同期化回路。
【請求項２】
前記第１クロックは約１ＧＨｚの周波数を有するプロセッサクロックであり、前記第２クロックは約２００ＭＨｚの周波数を有するバスクロックであることを特徴とする請求項１に記載の帯域幅同期化回路。
【請求項３】
前記少なくとも１つのシンクパッカーは、ライトアドレスチャンネル、ライトデータチャンネル、及びライト応答チャンネルにシンクパッキングを実行し、
前記少なくとも１つのシンクアンパッカーは、リードアドレスチャンネル及びリードデータチャンネルにシンクアンパッキングを実行することを特徴とする請求項２に記載の帯域幅同期化回路。
【請求項４】
前記少なくとも１つのシンクパッカーは、
第１シンクメモリ及び第２シンクメモリを含み、該第１シンクメモリ及び第２シンクメモリが、前記ライトアドレスチャンネル、前記ライトデータチャンネル、及び前記ライト応答チャンネルのうちの少なくとも１つを受信するように構成され、
前記少なくとも１つのシンクアンパッカーは、
第３シンクメモリ及び第４シンクメモリを含み、該第３シンクメモリ及び第４シンクメモリが、前記リードアドレスチャンネル及び前記リードデータチャンネルのうちの少なくとも１つを受信するように構成されることを特徴とする請求項３に記載の帯域幅同期化回路。
【請求項５】
前記第１シンクメモリは、シンクパッキング制御器の制御に応答して前記ライトアドレスチャンネルのアドレスを格納し、前記シンクダウン部にアップサイズされたアドレスを出力するために該格納されたアドレスをアップサイズすることを特徴とする請求項４に記載の帯域幅同期化回路。
【請求項６】
前記第２シンクメモリは、シンクパッキング制御器の制御に応答して前記ライトデータチャンネルのデータを格納し、前記シンクダウン部にアップサイズされたデータを出力するために該格納されたデータをアップサイズすることを特徴とする請求項４に記載の帯域幅同期化回路。
【請求項７】
前記第３シンクメモリは、シンクアンパッキング制御器の制御に応答して前記リードアドレスチャンネルのアドレスを格納し、選択器を通じて前記シンクダウン部にアップサイズされたアドレスを出力するために該格納されたアドレスをアップサイズすることを特徴とする請求項４に記載の帯域幅同期化回路。
【請求項８】
前記第４シンクメモリは、シンクアンパッキング制御器の制御に応答して前記リードデータチャンネルのデータを格納し、選択器を通じてスレーブインターフェースに該格納されたデータを出力することを特徴とする請求項４に記載の帯域幅同期化回路。
【請求項９】
前記第１、第２、第３、及び第４シンクメモリのうちの少なくとも１つはＦＩＦＯメモリであることを特徴とする請求項４に記載の帯域幅同期化回路。
【請求項１０】
前記シンクダウン部は、
データを格納するように構成されたシンクメモリと、
少なくとも１つのマッチバリューを格納するように構成されたマッチバリューと、
前記シンクメモリに格納された前記データが前記少なくとも１つのマッチバリューとマッチングされるか否かを判断するように構成されたマッチと、
前記マッチから生成された活性化信号に応答してデータをラッチするように構成された第１及び第２フリップフロップと、を含むことを特徴とする請求項１に記載の帯域幅同期化回路。
【請求項１１】
前記アップサイザーは、
前記第１クロック及び第２クロックに応答して各々作動する第１シンクパッカー及び第２シンクパッカーと、
前記第１クロック及び第２クロックに応答して各々作動する第１シンクアンパッカー及び第２シンクアンパッカーと、を含み、
前記第１及び第２クロックは互いに異なる周波数を有することを特徴とする請求項１に記載の帯域幅同期化回路。
【請求項１２】
前記第１クロックの周波数は約４００ＭＨｚであり、前記第２クロックの周波数は約２００ＭＨｚであることを特徴とする請求項１１に記載の帯域幅同期化回路。
【請求項１３】
前記第１クロックは前記回路のプロセッササイドから供給され、前記第２クロックは前記回路のバスサイドから供給されることを特徴とする請求項１１に記載の帯域幅同期化回路。
【請求項１４】
前記第１及び第２シンクパッカーは第１シンクメモリ及び第２シンクメモリを共有し、
前記第１及び第２シンクメモリは、ライトアドレスチャンネル、ライトデータチャンネル、及びライト応答チャンネルのうちの少なくとも１つを受信するように構成され、
前記第１及び第２シンクアンパッカーは第３シンクメモリ及び第４シンクメモリを共有し、
前記第３及び第４シンクメモリはリードアドレスチャンネル及びリードデータチャンネルのうちの少なくとも１つを受信するように構成されることを特徴とする請求項１１に記載の帯域幅同期化回路。
【請求項１５】
前記第１シンクメモリはシンクパッキング制御器の制御に応答して前記ライトアドレスチャンネルのアドレスを格納することを特徴とする請求項１４に記載の帯域幅同期化回路。
【請求項１６】
前記第２シンクメモリはシンクパッキング制御器の制御に応答して前記ライトデータチャンネルのデータを格納することを特徴とする請求項１４に記載の帯域幅同期化回路。
【請求項１７】
前記第３シンクメモリはシンクアンパッキング制御器の制御に応答して前記リードアドレスチャンネルのアドレスを格納することを特徴とする請求項１４に記載の帯域幅同期化回路。
【請求項１８】
前記第４シンクメモリはシンクアンパッキング制御器の制御に応答して前記リードデータチャンネルのデータを格納することを特徴とする請求項１４に記載の帯域幅同期化回路。
【請求項１９】
前記少なくとも１つのシンクアンパッカーは、所望するリクエスト及び前記第２クロックに応答して第２データ幅より広い第１データ幅を有するデータを出力し、
一般リクエストに応答して前記データの前記第２データ幅と同一の幅を有する少なくとも１つの部分をブロックするように構成されたリクエスト選択供給部を更に含み、
前記リクエスト選択供給部は、前記所望するリクエスト及び前記第２クロックの周波数より高い周波数の前記第１クロックに応答して前記第１データ幅を有するデータを供給するように構成されることを特徴とする請求項１に記載の帯域幅同期化回路。
【請求項２０】
前記リクエスト選択供給部は前記回路のＣＰＵサイドに位置することを特徴とする請求項１９に記載の帯域幅同期化回路。
【請求項２１】
前記所望するリクエストはラップ４バーストリードリクエストであることを特徴とする請求項１９に記載の帯域幅同期化回路。
【請求項２２】
前記第１データ幅は１２８ビットであり、前記第２データ幅は６４ビットであることを特徴とする請求項１９に記載の帯域幅同期化回路。
【請求項２３】
前記シンクアンパッカーによって出力されるデータは前記第２データ幅より広い幅を有するリードデータであることを特徴とする請求項１９に記載の帯域幅同期化回路。
【請求項２４】
キャッシュコントローラと接続されたプロセッサと、
第１クロックに基づいて作動する少なくとも１つのシンクパッカー及び少なくとも１つのシンクアンパッカーを含むアップサイザー、該アップサイザーと接続され、前記第１クロックより低い周波数を有する第２クロックに応答して該アップサイザーのデータにシンクダウン動作を実行するように構成されたシンクダウン部、及び一般リクエストに応答して前記データの前記第２データ幅と同一の幅を有する少なくとも１つの部分をブロックするように構成されたリクエスト選択供給部を含み、前記少なくとも１つのシンクアンパッカーは所望するリクエスト及び前記第２クロックに応答して第２データ幅より広い第１データ幅を有するデータを出力し、前記リクエスト選択供給部は前記所望するリクエスト及び前記第２クロックの周波数より高い周波数の前記第１クロックに応答して前記第１データ幅を有するデータを供給するように構成され、前記プロセッサとインターフェースバスとの間に接続された帯域幅同期化回路と、
前記インターフェースバスと接続される複数の周辺機能ブロックと、を備えることを特徴とするデータプロセッシングシステム。
【請求項２５】
前記周辺機能ブロックは、ＤＭＡＣ、ＵＳＢ、ＰＣＩ、ＳＭＣ、及びＳＣＩのうちの少なくとも２つを含むことを特徴とする請求項２４に記載のデータプロセッシングシステム。
【請求項２６】
前記インターフェースバスはＡＸＩバスであることを特徴とする請求項２４に記載のデータプロセッシングシステム。
【請求項２７】
前記アップサイザーは、６４ビットラップ４バーストリードの場合に、約２００ＭＨｚの周波数を有する第２クロックの全てのサイクルに１２８ビットリードデータを１つずつ供給することを特徴とする請求項２４に記載のデータプロセッシングシステム。
【請求項２８】
第１クロックの周波数でプロセッサを駆動し、第２クロックの周波数でインターフェースバスと接続されるアップサイザーを駆動する段階と、
前記アップサイザーに第１リード命令に従って第１データ幅のリードデータを前記第２クロックの周波数に同期して出力し、第２リード命令に従って第２データ幅のリードデータを前記第２クロックの周波数に同期して出力する段階と、
前記第１データ幅の前記リードデータが入力される場合に、前記アップサイザーで前記リードデータをブロックする段階と、
前記第２データ幅の前記リードデータが入力される場合に、前記第１クロックの２サイクルの間に前記第１クロックの周波数に同期して前記リードデータを供給する段階と、を有することを特徴とする帯域幅同期化方法。
【請求項２９】
前記第１データ幅は６４ビットであり、前記第２データ幅は１２８ビットであることを特徴とする請求項２８に記載の帯域幅同期化方法。
【請求項３０】
前記第１クロックの周波数は約１ＧＨｚであり、前記第２クロックの周波数は約２００ＭＨｚであることを特徴とする請求項２８に記載の帯域幅同期化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データプロセッシングシステムに関し、より詳細には、例えばスマートフォン又はナビゲーションデバイスなどのようなモバイルシステムにおける帯域幅同期化回路及び帯域幅同期化方法とこれを含むデータプロセッシングシステムに関する。
【背景技術】
【０００２】
スマートフォン、個人用ナビゲーションデバイス、ポータブルインターネットデバイス、ポータブル放送デバイス、及び／又はマルチメディアデバイスなどのようなモバイルシステムでは多様なアプリケーションを支援するためにシステムオンチップ（ＳＯＣ：Ｓｙｓｔｅｍ  ｏｎ  Ｃｈｉｐ、以下“ＳｏＣ”という）上に高周波数で作動する高性能のモバイル応用プロセッサを採択している。
【０００３】
モバイル応用プロセッサは、演算動作、論理動作、及び／又はプログラム命令語実行を行うので、リソース（例えば、メモリリソース）を多く用いる素子として、モバイルＳｏＣの性能を決めることになる。モバイル応用プロセッサは、無線通信、個人用ナビゲーション、カメラ、ポータブルゲーミング、ポータブル音楽／ビデオプレーヤ、一体化したモバイルＴＶ、及び／又はＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）などのような多様な機能の集積を可能に（Ｅｎａｂｌｅ）するために、Ｌ２（レベル２）として言及されるオンチップ２次キャッシュ（Ｃａｃｈｅ）を含むことができる。Ｌ２キャッシュは、プロセッサによって高いメモリが利用される例として、モバイルシステムの性能を増大させることができる。
【０００４】
ＳｏＣの効果的な設計のため、１つのチップ上に集積した複数のＩＰｓ（Ｉｎｔｅｌｌｅｃｔｕａｌ  Ｐｒｏｐｅｒｔｉｅｓ、例えば、メモリ、コントローラ、ドライバなど）の間の相互通信のためのバスシステム（ＢＵＳ  Ｓｙｓｔｅｍ）の選択が非常に重要である。バスシステムの典型的な例では、ＡＲＭ（Ａｄｖａｎｃｅｄ  ＲＩＳＣ  Ｍａｃｈｉｎｅ）社のＡＭＢＡ（Ａｄｖａｎｃｅｄ  Ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ  Ｂｕｓ  Ａｒｃｈｉｔｅｃｔｕｒｅ）プロトコルに基づくＡＭＢＡ３．０  ＡＸＩ（Ａｄｖａｎｃｅｄ  ｅＸｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ）バスシステムがある。
【０００５】
ＳｏＣの一部を構成するＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）、ＵＳＢ、ＰＣＩ、ＳＭＣ（Ｓｔａｔｉｃ  Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ）、及び／又はＳＣＩ（Ｓｍａｒｔ  Ｃａｒｄ  Ｉｎｔｅｒｆａｃｅ）などのような周辺機能ブロックは、例えば、開発時間及び開発人力のような制約のため、分離したＩＰｓとして購入することがある。ＳｏＣを成すため、購入した周辺機能ブロックＩＰｓは、１つのＣＰＵと、その他のデータプロセッシング用機能ブロックと共にチップ上に集積することができる。
【０００６】
ハイパフォーマンス（Ｈｉｇｈ  Ｐｅｒｆｏｒｍａｎｃｅ）モバイル応用プロセッサに対する要求の増加によって、ＳｏＣ内のＣＰＵ及びキャッシュコントローラ（Ｃａｃｈｅ  Ｃｏｎｔｒｏｌｌｅｒ）の動作周波数（Ｆｒｅｑｕｅｎｃｙ）は略数ＧＨｚである。一方、バスシステムの周波数は、数ＧＨｚの水準まで増加することができないので、帯域幅要件を満足させるためにＣＰＵのデータバス幅より広いデータバス幅が用いられる。例えば、略１ＧＨｚの動作周波数を有するＣＰＵのデータバス幅が６４ビットとすれば、バスシステムの動作周波数は略２００ＭＨｚとし、データバス幅は略１２８ビットに設計することができる。
【０００７】
シンクダウンロジック（Ｓｙｎｃｄｏｗｎ  Ｌｏｇｉｃ）と６４ビットｔｏ１２８ビットアップサイザー（Ｕｐｓｉｚｅｒ）回路は、キャッシュコントローラと接続することができ、６４ビットデータバス幅と１ＧＨｚ動作周波数を有するＣＰＵと、１２８ビットデータバス幅と２００ＭＨｚ動作周波数を有するバスシステムとの間で略１ＧＨｚｔｏ略２００ＭＨｚで同期化（Ｓｙｎｃｈｒｏｎｉｚｅ）することができる。
【０００８】
このような場合に、同期化（Ｓｙｎｃｈｒｏｎｉｚｅ）するシンクダウンポイント（Ｓｙｎｃｄｏｗｎ  Ｐｏｉｎｔ）で、６４ビット２００ＭＨｚで作動する部分は略１．６ＧＢｐｓの帯域幅を有し、この部分は、略８ＧＢｐｓ帯域幅のＣＰＵ又は略３．２ＧＢｐｓ帯域幅のアップサイザーに比較して、帯域幅ボトルネック（Ｂａｎｄｗｉｄｔｈ  Ｂｏｔｔｌｅｎｅｃｋ）として作用する。従って、ハイデータ幅（Ｈｉｇｈ  Ｄａｔａ  Ｗｉｄｔｈ）バスシステムだけではなく、高周波数（Ｈｉｇｈ  Ｆｒｅｑｕｅｎｃｙ）ＣＰＵの性能が低下する可能性がある。
【０００９】
このように、モバイルシステムでの帯域幅ボトルネックを解消し、且つシステムの性能を改善することができる帯域幅同期化技術が要望されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】韓国公開特許２００６−０１０３６８３号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１１】
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、システムパフォーマンスを改善することができる帯域幅同期化回路を提供することにある。
また、本発明の目的は、帯域幅ボトルネックを解消することができるデータプロセッシングシステムを提供することにある。
また、本発明の目的は、高周波数狭帯域ＣＰＵと低周波数広帯域バスとの間の帯域幅ボトルネックを解消することができる帯域幅同期化回路及び帯域幅同期化方法を提供することにある。
【課題を解決するための手段】
【００１２】
上記目的を達成するためになされた本発明の一特徴による帯域幅同期化回路は、第１クロックに基づいて作動する少なくとも１つのシンクパッカー及び少なくとも１つのシンクアンパッカーを含むアップサイザーと、前記アップサイザーと接続され、前記第１クロックより低い周波数を有する第２クロックに応答して前記アップサイザーのデータにシンクダウン動作を実行するように構成されたシンクダウン部と、を備える。
本発明の実施形態によると、前記第１クロックは約１ＧＨｚの周波数を有するプロセッサクロックであり、前記第２クロックは約２００ＭＨｚの周波数を有するバスクロックである。
本発明の実施形態によると、前記少なくとも１つのシンクパッカーは、ライトアドレスチャンネル、ライトデータチャンネル、及びライト応答チャンネルにシンクパッキングを実行し、前記少なくとも１つのシンクアンパッカーは、リードアドレスチャンネル及びリードデータチャンネルにシンクアンパッキングを実行する。
本発明の実施形態によると、前記少なくとも１つのシンクパッカーは、第１シンクメモリ及び第２シンクメモリを含み、該第１シンクメモリ及び第２シンクメモリが、前記ライトアドレスチャンネル、前記ライトデータチャンネル、及び前記ライト応答チャンネルのうちの少なくとも１つを受信するように構成され、前記少なくとも１つのシンクアンパッカーは、第３シンクメモリ及び第４シンクメモリを含み、該第３シンクメモリ及び第４メモリが、前記リードアドレスチャンネル及び前記リードデータチャンネルのうちの少なくとも１つを受信するように構成される。
本発明の実施形態によると、前記第１シンクメモリは、シンクパッキング制御器の制御に応答して前記ライトアドレスチャンネルのアドレスを格納し、前記シンクダウン部にアップサイズされたアドレスを出力するために該格納されたアドレスをアップサイズする。
本発明の実施形態によると、前記第２シンクメモリは、シンクパッキング制御器の制御に応答して前記ライトデータチャンネルのデータを格納し、前記シンクダウン部にアップサイズされたデータを出力するために該格納されたデータをアップサイズする。
本発明の実施形態によると、前記第３シンクメモリは、シンクアンパッキング制御器の制御に応答して前記リードアドレスチャンネルのアドレスを格納し、選択器を通じて前記シンクダウン部にアップサイズされたアドレスを出力するために該格納されたアドレスをアップサイズする。
本発明の実施形態によると、前記第４シンクメモリは、シンクアンパッキング制御器の  制御に応答して前記リードデータチャンネルのデータを格納し、選択器を通じてスレーブインターフェース（Ｓｌａｖｅ  Ｉｎｔｅｒｆａｃｅ）に該格納されたデータを出力する。
本発明の実施形態によると、前記第１、第２、第３、及び第４シンクメモリのうちの少なくとも１つは先入先出（ＦＩＦＯ）メモリである。
本発明の実施形態によると、前記シンクダウン部は、データを格納するように構成されたシンクメモリと、少なくとも１つのマッチバリューを格納するように構成されたマッチバリューと、前記シンクメモリに格納された前記データが前記少なくとも１つのマッチバリューとマッチングされるか否かを判断するように構成されたマッチと、前記マッチから生成された活性化信号に応答してデータをラッチするように構成された第１及び第２フリップフロップ（Ｆｌｉｐ−Ｆｌｏｐ）と、を含む。
本発明の実施形態によると、前記アップサイザーは、前記第１クロック及び第２クロックに応答して各々作動する第１シンクパッカー及び第２シンクパッカーと、前記第１クロック及び第２クロックに応答して各々作動する第１シンクアンパッカー及び第２シンクアンパッカーと、を含み、前記第１及び第２クロックは互いに異なる周波数を有する。
本発明の実施形態によると、前記第１クロックの周波数は約４００ＭＨｚであり、前記第２クロックの周波数は約２００ＭＨｚである。
本発明の実施形態によると、前記第１クロックは前記回路のプロセッササイドから供給され、前記第２クロックは前記回路のバスサイドから供給される。
本発明の実施形態によると、前記第１及び第２シンクパッカーは第１シンクメモリ及び第２シンクメモリを共有し、前記第１及び第２シンクメモリは、ライトアドレスチャンネル、ライトデータチャンネル、及びライト応答チャンネルのうちの少なくとも１つを受信するように構成され、前記第１及び第２シンクアンパッカーは第３シンクメモリ及び第４シンクメモリを共有し、前記第３及び第４シンクメモリはリードアドレスチャンネル及びリードデータチャンネルのうちの少なくとも１つを受信するように構成される。
本発明の実施形態によると、前記第１シンクメモリはシンクパッキング制御器の制御に応答して前記ライトアドレスチャンネルのアドレスを格納する。
本発明の実施形態によると、前記第２シンクメモリはシンクパッキング制御器の制御に応答して前記ライトデータチャンネルのデータを格納する。
本発明の実施形態によると、前記第３シンクメモリはシンクアンパッキング制御器の制御に応答して前記リードアドレスチャンネルのアドレスを格納する。
本発明の実施形態によると、前記第４シンクメモリはシンクアンパッキング制御器の制御に応答して前記リードデータチャンネルのデータを格納する。
本発明の実施形態によると、前記少なくとも１つのシンクアンパッカーは、所望するリクエスト（Ｒｅｑｕｅｓｔ）及び前記第２クロックに応答して第２データ幅より広い第１データ幅を有するデータを出力し、一般（Ｇｅｎｅｒａｌ）リクエストに応答して前記データの前記第２データ幅と同一の幅を有する少なくとも１つの部分をブロック（Ｂｌｏｃｋ）するように構成されたリクエスト選択供給部を更に含み、前記リクエスト選択供給部は、前記所望するリクエスト及び前記第２クロックの周波数より高い周波数の前記第１クロックに応答して前記第１データ幅を有するデータを供給するように構成される。
本発明の実施形態によると、前記リクエスト選択供給部は前記回路のＣＰＵサイドに位置する。
本発明の実施形態によると、前記所望するリクエストはラップ４バーストリードリクエストである。
本発明の実施形態によると、前記第１データ幅は１２８ビットであり、前記第２データ幅は６４ビットである。
本発明の実施形態によると、前記シンクアンパッカーによって出力されるデータは前記第２データ幅より広い幅を有するリードデータである。
【００１３】
上記目的を達成するためになされた本発明の一特徴によるデータプロセッシングシステムは、キャッシュコントローラ（Ｃａｃｈｅ  Ｃｏｎｔｒｏｌｌｅｒ）と接続されたプロセッサと、前記プロセッサとインターフェースバスとの間に接続された上述の帯域幅同期化回路と、前記インターフェースバスと接続される複数の周辺機能ブロックと、を備える。
本発明の実施形態によると、前記周辺機能ブロックは、ＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  ＢＵＳ）、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔｉｏｎ）、ＳＭＣ（Ｓｔａｔｉｃ  Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ）、及びＳＣＩ（Ｓｍａｒｔ  ＣａｒｄＩｎｔｅｒｆａｃｅ）のうちの少なくとも２つを含む。
本発明の実施形態によると、前記インターフェースバスはＡＸＩ（Ａｄｖａｎｃｅｄ  ｅＸｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ）バスである。
本発明の実施形態によると、前記アップサイザーは、６４ビットラップ４バーストリードの場合に、約２００ＭＨｚの周波数を有する第２クロックの全てのサイクルに１２８ビットリードデータを１つずつ供給する。
【００１４】
上記目的を達成するためになされた本発明の一特徴による帯域幅同期化方法は、第１クロックの周波数でプロセッサを駆動し、第２クロックの周波数でインターフェースバスと接続されるアップサイザーを駆動する段階と、前記アップサイザーに第１リード命令に従って第１データ幅のリードデータを前記第２クロックの周波数に同期して出力し、第２リード命令に従って第２データ幅のリードデータを前記第２クロックの周波数に同期して出力する段階と、前記第１データ幅の前記リードデータが入力される場合に、前記アップサイザーで前記リードデータをブロックする段階と、前記第２データ幅の前記リードデータが入力される場合に、前記第１クロックの２サイクルの間に前記第１クロックの周波数に同期して前記リードデータを供給する段階と、を有する。
本発明の実施形態によると、前記第１データ幅は６４ビットであり、前記第２データ幅は１２８ビットである。
本発明の実施形態によると、前記第１クロックの周波数は約１ＧＨｚであり、前記第２クロックの周波数は約２００ＭＨｚである。
【発明の効果】
【００１５】
本発明の帯域幅同期化回路構成によれば、ＣＰＵとバスとの間の同期化ボトルネックを最小化又は減少させることができる。
従って、このような帯域幅同期化回路をＳｏＣに採用する場合に、データプロセッシングシステムの製造原価を低くすることができ、ＳｏＣの動作性能も高くなる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態による帯域幅同期化回路を示すブロック図である。
【図２】図１のアップサイザーと接続されたバス構造を有するデータプロセッシングシステムを示すブロック図である。
【図３】本発明の一実施形態による帯域幅同期化回路のアップサイザーの詳細を示すブロック図である。
【図４】図３のシンクダウン部の詳細を示すブロック図である。
【図５】本発明の他の実施形態による帯域幅同期化回路を示すブロック図である。
【図６】図５のアップサイザーの詳細を示すブロック図である。
【図７】本発明の一実施形態による帯域幅同期化回路のスレーブインターフェースの詳細を示すブロック図である。
【図８】図７のアップサイザーのシンクアンパッカー部分を示すブロック図である。
【図９】図７の帯域幅同期化回路の動作タイミング図である。
【図１０】プロセッサの動作のうちのヘビーリクエストの発生頻度を示すテーブルである。
【図１１】プロセッサの動作のうちのヘビーリクエストの発生頻度を示すテーブルである。
【図１２】本発明の一実施形態による帯域幅同期化回路を採用したモバイルシステムを示すブロック図である。
【発明を実施するための形態】
【００１７】
以下、本発明の帯域幅同期化回路及び帯域幅同期化方法とこれを含むデータプロセッシングシステムを実施するための形態の具体例を、図面を参照しながら詳細に説明する。しかし、本発明の実施形態は、多様な形態に変形でき、本発明の範囲が後述する実施形態に限定されると解釈してはならない。
【００１８】
従って、実施形態は多様な変形物及び概略的な形態とすることができるが、その典型的な実施形態は図面に示す実施形態を通じて、ここに詳細に説明する。しかし、実施形態は公開した特定の形態に限定されず、実施形態の範囲に含まれる全ての変形物、均等物、及び代替物を含むものと理解しなければならない。図面上で、同じ符号は同じ要素を示す。
【００１９】
用語において第１、第２などが様々な構成要素を記述するために使用できるが、構成要素はこれらの用語に限定されるものと解釈してはならない。これらの用語は、１つの構成要素を他の構成要素と区別するために用いるだけである。例えば、第１構成要素は、本発明の開示を外れず、第２構成要素とも称し得る。
【００２０】
本明細書で使用する用語の「及び／又は」は、これと関連して記載した項目のうちの１つ又はそれ以上の任意の組み合わせ又はあらゆる組み合わせを含む。
【００２１】
ある構成要素が異なる構成要素に「連結」又は「結合」されていると記載した場合、ある構成要素は、他の構成要素に直接連結又は結合されるか、それらの間に第３の構成要素が介在し得る。一方、ある構成要素が異なる構成要素に「直接連結」又は「直接結合」されていると記載した場合、それらの間に介在する構成要素はない。構成要素の間の関係を記述するために使用する他の用語も類似の方式で解釈しなければならない（例えば、「間に」と「直接的に間に」、「隣接して」と「直接的に隣接して」など）。
【００２２】
本明細書で使用する用語は、特定の実施形成を記述するための目的として用いるものであり、本発明の範囲を制限するためのものではない。本明細書で、単数として使用する用語は、単数であることを示す明白な背景に関する言及がない限り、複数も含むものである。また、本明細書で使用する「構成される」、「包含する」という用語は、言及した特徴、定数、段階、動作、構成要素、及び／又は構成部品の存在を特定するものではあるが、１つ又はそれ以上の他の特徴、定数、段階、動作、構成要素、構成部品、及び／又はグループの存在又は付加を除外するものではない。
【００２３】
いくつかの概略的な実行では、言及した機能／作用が、図表で言及した順序から逸脱して発生することができる。例えば、このような機能／作用に依存し、連続して見られる２つの図表は同時に実行され得るか、又は逆の順に実行され得ることに注目しなければならない。
【００２４】
図１は、本発明の一実施形態による帯域幅同期化回路を示すブロック図である。
【００２５】
図１に示すように、アップサイザー２００はスレーブインターフェース（ＳＩ：Ｓｌａｖｅ  Ｉｎｔｅｒｆａｃｅ）１００とバスマトリックス（ＢＵＳ  Ｍａｔｒｉｘ）３００との間に設置される。アップサイザー２００は、帯域幅同期化を実行するために、例えば６４ビットのデータを１２８ビットのデータに拡張するデータエキスパンダ（Ｅｘｐａｎｄｅｒ）の機能を遂行する。図１において、スレーブインターフェース１００は幅が６４ビットであるデータバスと約１ＧＨｚ動作周波数を有するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に接続することができ、バスマトリックス３００は幅が１２８ビットであるデータバスと約２００ＭＨｚ動作周波数を有するバスシステムになることができる。バスマトリックス３００はマルチレイヤーバスマトリックス（Ｍｕｌｔｉ  Ｌａｙｅｒ  ＢＵＳ  Ｍａｔｒｉｘ）構造を有することができる。
【００２６】
図１において、ＡＷはライトアドレス（Ｗｒｉｔｅ  Ａｄｄｒｅｓｓ）チャンネル信号を示し、Ｗはライトデータチャンネル信号を示し、Ｂはライト応答チャンネル信号を示し、ＡＲはリード（Ｒｅａｄ）アドレスチャンネル信号を示し、Ｒはリードデータチャンネル信号を示す。また、ＳＩはスレーブインターフェースを、ＭＩはマスタインターフェースを各々示す。
【００２７】
図２は、図１のアップサイザー（又はエキスパンダ）と接続されたバス構造を有するデータプロセッシングシステムを示すブロック図である。
【００２８】
図２に示すように、データプロセッシングシステム４００はアップサイザー２００を基準として一面（例えば、上部）に狭（Ｎａｒｒｏｗ）ＡＸＩバスを含み、アップサイザー２００を基準として他の一面（例えば、下部）に広（Ｗｉｄｅ）ＡＸＩバスを含むことができる。アップサイザー２００は、狭バスラインＢＮに印加される３２ビット、３２ビット、６４ビットのデータを６４ビット、１２８ビット、１２８ビットに各々拡張し、拡張されたデータを広バスラインＢＷに提供する役割を果たす。
【００２９】
図３は、本発明の一実施形態による帯域幅同期化回路のアップサイザーの詳細を示すブロック図であり、図４は、図３のシンクダウン部の詳細を示すブロック図である。
【００３０】
以下では、図３及び図４を参照して本発明の一実施形態を説明する。
【００３１】
図３において、アップサイザー２００とシンクダウン部２５０は帯域幅同期化回路を構成する。
【００３２】
アップサイザー２００はプロセッサクロックＣＬＫ１に基づいて作動するシンクパッカー（Ｓｙｎｃ  Ｐａｃｋｅｒ）２２０とシンクアンパッカー（Ｓｙｎｃ  Ｕｎｐａｃｋｅｒ）２４０とを含む。シンクパッカー２２０は、第１及び第２シンクメモリ２１、２３及びシンクパッキング（Ｐａｃｋｉｎｇ）制御器２５を含む。シンクアンパッカー２４０は、第３及び第４シンクメモリ４１、４３、第１及び第２選択器４２、４４、及びシンクアンパッキング（Ｕｎｐａｃｋｉｎｇ）制御器４５を含む。シンクパッカー２２０は、ライトアドレスチャンネルＡＷ、ライトデータチャンネルＷ、及びライト応答チャンネルＢに対してシンクパッキングを実行する。シンクアンパッカー２４０は、リードアドレスチャンネルＡＲ及びリードデータチャンネルＲに対してシンクアンパッキングを実行する。
【００３３】
第１シンクメモリ２１はシンクパッキング制御器２５の制御に応答してライトアドレスチャンネルＡＷのアドレスを格納し、シンクパッカー２２０は、格納されたアドレスをアップサイジングされたアドレスとしてシンクダウン部２５０に出力するために、格納されたアドレスをアップサイジングする。
【００３４】
第２シンクメモリ２３はシンクパッキング制御器２５の制御に応答してライトデータチャンネルＷのデータを格納し、シンクパッカー２２０は、格納されたデータをアップサイジングされたデータとしてシンクダウン部２５０に出力するために、格納されたデータをアップサイジングする。例えば、６４ビットとして格納されたデータはアップサイジングによって１２８ビットデータとしてシンクダウン部２５０に印加される。
【００３５】
第３シンクメモリ４１はシンクアンパッキング制御器４５の制御に応答してリードアドレスチャンネルＡＲのアドレスを格納し、シンクアンパッカー２４０は、格納されたアドレスをアップサイジングされたアドレスとして第１選択器４２を通じてシンクダウン部２５０に出力するために、格納されたアドレスをアップサイジングする。
【００３６】
第４シンクメモリ４３はシンクアンパッキング制御器４５の制御に応答してリードデータチャンネルＲのデータを格納し、シンクアンパッカー２４０は、格納されたデータを、第２選択器４４を通じてスレーブインターフェース１００に出力する。例えば、１２８ビットとして格納されたデータは６４ビットデータとしてスレーブインターフェース１００に印加される。
【００３７】
例えば、第１〜第４シンクメモリ２１、２３、４１、４３は先入先出（Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ、ＦＩＦＯ）機能を有するＦＩＦＯメモリを用いて実現する。
【００３８】
シンクダウン部２５０は、アップサイザー２００と接続され、プロセッサクロックの周波数より低い周波数のバスクロックに応答し、アップサイザー２００の出力に対してシンクダウンを実行する。
【００３９】
図３において、アップサイザー２００に印加されるクロックＣＬＫ１もプロセッサのクロックドメイン（Ｄｏｍａｉｎ）下で作動する。従って、プロセッサクロックが約１ＧＨｚの周波数を有する場合、クロックＣＬＫ１も約１ＧＨｚの周波数を有する。一方、バスクロックは約２００ＭＨｚの周波数を有することができる。プロセッサ（又はＣＰＵ）クロックはＳｏＣの電流消耗を最小化することができるＤＶＦＳＣ（Ｄｙｎａｍｉｃ  Ｖｏｌｔａｇｅ  Ｆｒｅｑｕｅｎｃｙ  Ｓｃａｌｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ）によって制御されるＤＶＦＳ（Ｄｙｎａｍｉｃ  Ｖｏｌｔａｇｅ  Ｆｒｅｑｕｅｎｃｙ  Ｓｃａｌｉｎｇ）クロックであり得る。クロック周波数はＤＶＦＳＣによってダイナミックに（Ｄｙｎａｍｉｃａｌｌｙ）制御され得る。
【００４０】
図４は、図３のシンクダウン部２５０の詳細を示すブロック図である。図４に示すように、シンクダウン部２５０は、シンクメモリ２５２、マッチバリュー（Ｍａｔｃｈ  Ｖａｌｕｅ）２５４、マッチ２５６、第１及び第２フリップフロップ（Ｆｌｉｐ−Ｆｌｏｐ）２５８、２５９を含む。シンクメモリ２５２はデータを格納する。マッチバリュー２５４は所望するマッチバリューを格納する。マッチ２５６はシンクメモリ２５２に格納されたデータがマッチバリューとマッチングされるか否かを判断する。例えば、マッチ２５６は比較器を用いて実現する。第１及び第２フリップフロップ２５８、２５９はマッチ２５６の活性化信号ＣＬＫＥＮに応答してデータをラッチ（Ｌａｔｃｈ）する。図４において、出力ラインＬ１０は、図３におけるＡＷ、Ｗ、及びＡＲを一所に示し、入力ラインＬ２０は図３におけるＢ及びＲを一所に示す。
【００４１】
本実施形態によると、アップサイザー２００は、約１ＧＨｚの高い周波数で作動することができ、高い周波数のパイプライン（Ｐｉｐｅｌｉｎｅ）構造を用いることができる。
【００４２】
以下では、図５及び図６を参照して本発明の他の実施形態を説明する。
【００４３】
図５は、本発明の他の実施形態による帯域幅同期化回路を示すブロック図であり、図６は、図５のアップサイザーの詳細を示すブロック図である。
【００４４】
図５に示すように、帯域幅同期化回路４００ａは、破線Ｂａ１を境界として第１クロックＣＬＫ１及び第２クロックＣＬＫ２に応答してアップサイジング機能を遂行するアップサイザー２１０のブロック構成を含む。図示していないが、アップサイザー２１０は上述の実施形態によってシンクダウン部と接続することができる。
【００４５】
アップサイザー２１０はプロセッササイド（Ｓｉｄｅ）のスレーブインターフェース１００とバスマトリックス３００との間に設置することができる。図６において、アップサイザー２１０は、第１及び第２クロックＣＬＫ１、ＣＬＫ２に各々応答して作動する第１及び第２シンクパッカー（Ｓｙｎｃ  Ｐａｃｋｅｒ）２２２、２２４と、第１及び第２クロックＣＬＫ１、ＣＬＫ２に各々応答して作動する第１及び第２シンクアンパッカー（Ｓｙｎｃ  Ｕｎｐａｃｋｅｒ）２４２、２４４と、を含む。第１及び第２シンクパッカー２２２、２２４は、第１及び第２シンクメモリ２１、２３を共有する。第１シンクパッカー２２２は第１シンクパッキング制御器２６を含み、第２シンクパッカー２２４は第２シンクパッキング制御器２７を含む。第１及び第２シンクアンパッカー２４２、２４４は第３及び第４シンクメモリ４１、４３を共有する。第１シンクアンパッカー２４２は第２選択器（Ｍｕｌｔｉｐｌｅｘｅｒ）４４及び第１シンクアンパッキング制御器４６を含み、第２シンクアンパッカー２４４は第１選択器４２及び第２シンクアンパッキング制御器４７を含む。第１及び第２シンクパッキング制御器２６、２７と第１及び第２シンクアンパッキング制御器４６、４７で見られる参照文字ＦＳＭ＿ｓ及びＦＳＭ＿ｍは各々フィニッテステートマシン（Ｆｉｎｉｔｅ  Ｓｔａｔｅ  Ｍａｃｈｉｎｅ）スレーブ及びフィニッテステートマシンマスタを意味する。
【００４６】
第１クロックＣＬＫ１が約４００ＭＨｚの場合に、第２クロックＣＬＫ２は約２００ＭＨｚであり得る。従って、第１クロックＣＬＫ１はＣＰＵサイドから提供され、第２クロックＣＬＫ２はＢＵＳサイドから提供される。
【００４７】
図６のアップサイザー２１０は、互いに異なる周波数で作動する２つの部分に分けられることを除けば、図３のアップサイザー２００と類似である。
【００４８】
このように、ビット幅が６４ビット及び１２８ビットとして互いに異なる場合に、アップサイザー２１０内の第１シンクパッカー２２２及び第１シンクアンパッカー２４２が４００ＭＨｚで作動し、第２シンクパッカー２２４と第２シンクアンパッカー２４４が２００ＭＨｚで作動すれば、帯域幅バランス（Ｂａｎｄｗｉｄｈ  Ｂａｌａｎｃｅ）を合わすことができる。
【００４９】
しかし、図６の実施形態は２００ＭＨｚバスクロック及び１ＧＨｚ  ＤＶＦＳクロックと共に４００ＭＨｚクロックを用いることができる。従って、図６の実施形態は追加クロックの存在に起因する追加負担（Ｌｏａｄｉｎｇ）に関して特に有用である。
【００５０】
図７は、本発明の一実施形態による帯域幅同期化回路のスレーブインターフェースの詳細を示すブロック図であり、図８は、図７のアップサイザーのシンクアンパッカー部分を示すブロック図である。図９は、図７の帯域幅同期化回路の動作タイミング図である。
【００５１】
図７に示すように、帯域幅同期化回路は第２クロックＣＬＫ２で作動するアップサイザー２０２及びＣＰＵサイドのＳＩ（Ｓｌａｖｅ  Ｉｎｔｅｒｆａｃｅ）１０２を含む。ＳＩ１０２は、メモリ１０、選択器１４、及びレジスタ１９を含むリクエスト選択供給部（Ｒｅｑｕｅｓｔ  Ｓｅｌｅｃｔｉｏｎ  Ｓｕｐｐｌｙｉｎｇ  Ｕｎｉｔ）の構成を有する。従って、本実施形態によると、帯域幅同期化回路はアップサイザー２０２及びリクエスト選択供給部を含む。図示していないが、アップサイザー２０２は上述の実施形態によるシンクダウン部と接続することができる。
【００５２】
アップサイザー２０２は、第２クロックＣＬＫ２（例えば、２００ＭＨｚ）に応答して作動し、予め設定された所望するリクエスト（例えば、ラップ（Ｗｒａｐ）４バーストリード（Ｂｕｒｓｔ  Ｒｅａｄ）リクエスト、又はラップ８バーストリードリクエスト）に応答して第２データビット幅を有するリードデータＲを出力するシンクアンパッカー２４２（図８参照）を含む。一実施形態によると、アップサイザー２０２は上述の実施形態のうちのいずれかの実施形態によるシンクパッカー又は複数のシンクパッカーも含む。
【００５３】
リクエスト選択供給部は一般コマンド（Ｃｏｍｍａｎｄ）リクエスト（インクリメント（Ｉｎｃｒｅｍｅｎｔ）バースト或いはフィクスド（Ｆｉｘｅｄ）バースト）に応答して第１データビット幅に入力されるリードデータＲをバイパス（Ｂｙｐａｓｓ）又はブロック（Ｂｌｏｃｋ）する。例えば、ラップ４バーストリードリクエスト（Ｂｕｒｓｔ  Ｒｅａｄ  Ｒｅｑｕｅｓｔ）では、リクエスト選択供給部は第２データビット幅（例えば、１２８ビット）を有するリードデータＲの入力を第２クロックより高い周波数を有する第１クロック（例えば１ＧＨｚ）に応答して２クロックサイクルの間供給する。
【００５４】
メモリ１０はラップ４バーストリードリクエストがあるか否かを検出する回路構成要素である。メモリ１０はアドレスリードコンテンツアドレス可能メモリ（Ａｄｄｒｅｓｓ  Ｒｅａｄ  Ｃｏｎｔｅｎｔｓ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ：ＡＲＣＡＭ）を含むことができる。選択器１４は、選択信号ＳＥＬの活性化に応答してバスラインＢ２、Ｂ３を通じて１２８ビットのデータを受信し、第１クロック（例えば、１ＧＨｚ）に同期して、受信した総１２８ビットのデータをＲチャンネル１８に供給する。これにより、例えば、受信した１２８ビットのデータは各々６４ビットのデータを有する２つの部分に供給することができる。選択信号ＳＥＬが非活性化された場合（例えば、一般リクエストの場合）には、選択器１４はバスラインＢ２によって提供される６４ビットのデータをＲチャンネル１８に提供することができない。代りに、レジスタ１９は６４ビットのデータを格納することができ、リオーダ（Ｒｅｏｒｄｅｒ）のための格納構成要素として機能する。例えば、ラップ４バーストリードリクエスト（Ｂｕｒｓｔ  Ｒｅａｄ  Ｒｅｑｕｅｓｔ）の時にデータが順に入力されない場合に、レジスタ１９はデータを順に出力するために用いられる。
【００５５】
図８に示すように、シンクアンパッカー２４２は、第３及び第４シンクメモリ４１、４３、第１及び第２選択器４２、４４、メモリ（ＡＲＣＡＭ）４８、及びシンクアンパッキング制御器４５を含む。メモリ（ＡＲＣＡＭ）４８はラップ４バーストリードリクエスト（Ｂｕｒｓｔ  Ｒｅａｄ  Ｒｅｑｕｅｓｔ）があるか否かを検出する。リードアドレスチャンネルＡＲ及びリードデータチャンネルＲに対するシンクアンパッキングを実行する場合に、シンクアンパッカー２４２は、所望するリクエスト（例えば、ラップ４バーストリードリクエスト）では、バスラインＢ２、Ｂ３を通じて第２データビット幅（例えば、１２８ビット）を有するリードデータＲを出力する。また、ラップバーストリードリクエストではない他のリクエストの場合では、第４シンクメモリ４３から出力された６４ビットのデータを第２クロック（例えば、２００ＭＨｚ）に同期して出力する。ラップ４バーストリードリクエストの場合に、選択によって、第４シンクメモリ４３から１２８ビットのデータが出力されるか、又は第４シンクメモリ４３をバイパスした（Ｂｙｐａｓｓｉｎｇ）１２８ビットのデータが出力される。
【００５６】
図９のＲＤＡＴＡ２ａを参照すると、ラップ４バーストリードリクエストで第２データビット幅（例えば、６４ビット）を有するリードデータが出力されることを示す。ＲＤＡＴＡ２ａは図７の選択器１４から出力されるデータのタイミングを示す。図９のＣＬＫはＣＰＵのクロックを示す。ＣＰＵのクロックは約１ＧＨｚの周波数を有する第１クロックに対応する。また、ＡＣＬＫはＡＸＩバスクロックを示し、ＡＸＩバスクロックは約２００ＭＨｚの周波数を有する第２クロックに対応する。ＩＮＣＬＫＥＮは入力クロックイネーブル（Ｅｎａｂｌｅ）信号を示す。
【００５７】
図９において、タイムポイントｔ１及びｔ２の間の区間はＣＰＵの１つのクロックサイクルに対応する。
【００５８】
また、タイムポイントｔ３及びｔ４の間の区間もＣＰＵの１つのクロックサイクルに対応する。ＲＤＡＴＡ１ａを参照すると、ラップ４バーストリードリクエストに応答してバスクロック（２００ＭＨｚ）の１つのサイクルの間に１２８ビットのデータを受信する。受信した１２８ビットのＲＤＡＴＡ１ａは入力クロックイネーブル信号ＩＮＣＬＫＥＮから変更されたイネーブル信号ＩＮＣＬＫＥＮ＿ｍに応答してＣＰＵの２クロックサイクルの間に１２８ビットのデータ（ａ１、ａ２を合算して得られたデータ）として出力される。
【００５９】
一方、ＲＤＡＴＡ１はラップ４バーストリードリクエストがない場合に、６４ビットのデータが受信されることを示す。ＲＤＡＴＡ２は受信した６４ビットのデータがＣＰＵの１つのクロックサイクルの間に６４ビットのデータａ１として出力されることを示す。
【００６０】
従って、Ｒチャンネルのビット幅の大きさの２倍のビット幅を有するデータが特定のリクエスト（例えば、ラップ４バーストリードリクエスト）に応答して第２クロックの間に伝送される。この時、このデータは第１クロックの２サイクルの間に供給される。その結果、帯域幅のバランスを効率的に維持することができる。
【００６１】
上記実施形態において、ラップ４バーストリードリクエストの機能の１つを図１０及び図１１に提示する。
【００６２】
図１０及び図１１は、プロセッサの動作のうちのヘビーリクエストの発生頻度を示すテーブルである。
【００６３】
マルチプルロード（Ｍｕｌｔｉｐｌｅ  Ｌｏａｄｓ）又は命令実行のようなヘビーリクエスト（例えば、リソースを多く使用する）が発生する場合には、キャッシュミス（Ｍｉｓｓ）ケースを招来する可能性があり、これによって、システム動作パフォーマンスが低下する。本発明の実施形態によるキャッシュミスケースの頻度を把握するために２つの場合に対してＣＰＵトレース（Ｔｒａｃｅ）の分析を行った。
【００６４】
図１０は、ＡＲＭ（Ａｄｖａｎｃｅｄ  ＲＩＳＣ  Ｍａｃｈｉｎｅ）社のＡＸＩバスを利用したＡＲＭ１１７６ＰＢ＿Ｌ２ＷＡｌｌｏｃ＿ＡＸＩ．ｏｕｔの場合のヘビーリクエストの頻度を示すテーブルである。図１１は、ＡＲＭ１１７６ＰＢ＿Ｌ２ＡＷＣＡＣＨＥａｔｔｒ＿ＡＸＩ．ｏｕｔの場合のヘビーリクエストの頻度を示すテーブルである。ここで、Ｌ２ＷＡｌｌｏｃはＬ２キャッシュのアロケーション（Ａｌｌｏｃａｔｉｏｎ）を示し、Ｌ２ＡＷＣＡＣＨＥａｔｔｒはＬ２キャッシュのライトアドレスのアトリビューション（Ａｔｔｒｉｂｕｔｉｏｎ）を示す。
【００６５】
図１０において、ＡＲラップバースト４リクエストのうち、４クロックサイクル以内に発生するトラフィックカウント（Ｔｒａｆｆｉｃ  Ｃｏｕｎｔ）は１７４９１である。これは約９．１％のアキュムレーション（Ａｃｃｕｍｕｌａｔｉｏｎ）の割合を示す。図１１において、ＡＲラップバースト４リクエストのうち、４クロックサイクル以内に発生するトラフィックカウントは１４６２１である。これは約７．５％のアキュムレーションの割合を示す。結局、図１０の場合、全体でヘビーリクエストが発生する頻度は約５．８８％であり、図１１の場合、全体でヘビーリクエストが発生する頻度は約１．５１％である。
【００６６】
上述のように、帯域幅ボトルネックを解消するためにクリティカルな（Ｃｒｉｔｉｃａｌ）パフォーマンスのラップ４バーストリードリクエストの場合に、図９のＲＤＡＴＡ１ａのタイミングでデータが伝送され、ＲＤＡＴＡ２ａのタイミングでデータがＣＰＵサイドに供給される。これによって、帯域幅ボトルネックの解消がより効率的に達成される。
【００６７】
図１２は、本発明の一実施形態による帯域幅同期化回路を含むモバイルシステムを示すブロック図である。
【００６８】
図１２に示すように、モバイルシステムは、Ｌ２キャッシュを有するＣＰＵ５００と、ＡＸＩバスＢＵＳ１と接続されたメディアシステム５１０と、モデム５２０と、メモリコントローラ４２０と、ブートＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ  Ｂｏｏｔ）４３０と、ディスプレイコントローラ４４０と、を含む。例えば、ＤＲＡＭ又はフラッシュメモリなどのようなメモリ４１０はメモリコントローラ４２０と接続される。例えば、ＬＣＤなどのようなディスプレイ４５０はディスプレイコントローラ４４０と接続される。
【００６９】
ＢＵＳ１はＣＰＵバスであり、ＢＵＳ２はメモリバスであり得る。ＣＰＵ５００はＬ２キャッシュと共にＬ１キャッシュを含むことができる。Ｌ１キャッシュは頻繁にアクセス（Ａｃｃｅｓｓｅ）されるデータ及び／又は命令を格納するために用いられる。同様に、Ｌ２キャッシュメモリも頻繁にアクセスされるデータ及び／又は命令を格納するために用いられる。
【００７０】
図１２のモバイルシステムは、例えば、スマートフォン、個人用ナビゲーションデバイス、ポータブルインターネット器機、ポータブル送器機、及び／又はマルチメディア器機で実現される。
【００７１】
図１２のモバイルシステムにおいて、図７の実施形態による帯域幅同期化回路はＣＰＵ５００のブロックとＡＸＩバスとの間に搭載することができる。しかし、本発明の実施形態はそれに限定されず、上述の実施形態のいずれもモバイルシステムに用いることができる。
【００７２】
この場合に、図７のＳＩ１０２ブロックは、ＣＰＵサイドにあるので、ＳＩ１０２ブロックは約１ＧＨｚの第１クロックで駆動することができ、ＡＸＩバスと接続されたアップサイザー２０２は約２００ＭＨｚの第２クロックで駆動することができる。
【００７３】
ノーマルリード（Ｎｏｒｍａｌ  Ｒｅａｄ）の場合に、アップサイザー２０２サイドで２００ＭＨｚクロックに同期して６４ビットのリードデータを出力することができ、６４ビットラップ４バーストリードの場合には、２００ＭＨｚのクロックに同期して１２８ビットのリードデータを出力することができる。
【００７４】
ノーマルリードの場合に、ＣＰＵサイドのＳＩ１０２ブロックはＲチャンネル１８を通じてＣＰＵに６４ビットのリードデータをバイパスすることができ、６４ビットラップ４バーストリードの場合には、１ＧＨｚのクロックに同期して２サイクルの間にＣＰＵに１２８ビットのリードデータを供給することができる。
【００７５】
このように、ラップ４バーストリードリクエストの場合に帯域幅同期化が実行される時、アップサイザー回路の変更を最小化することができ、また帯域幅ボトルネックも効率的に解消することができる。これによって、ＳｏＣを採用するモバイルシステムの動作パフォーマンスが改善される。更に、モバイルシステムのようなデータプロセッシングシステムの製造原価も低くすることができる。
【００７６】
本発明の実施形態は、６４ビット高周波数ＣＰＵザブシステム（Ｓｕｂｓｙｓｔｅｍ）と１２８ビット低周波数バスインターフェースとの間で発生する帯域幅ボトルネックに関するものとして説明したが、本発明の実施形態は、これに限定されず、帯域幅ボトルネックが存在する全てのデータプロセッシングシステムにも適用することができる。
【００７７】
一実施形態によると、モバイルシステムにおいて、プロセッサの個数は２個以上に増加することができる。そのようなプロセッサの例として、マイクロプロセッサ、ＣＰＵ、デジタル信号プロセッサ、マイクロコントローラ、縮小命令（Ｒｅｄｕｃｅｄ  Ｃｏｍｍａｎｄ）セットコンピュータ、複合命令（Ｃｏｍｐｌｅｘ  Ｃｏｍｍａｎｄ）セットコンピュータ、又はそれらと類似なものを含むことができる。
【００７８】
本発明の実施形態によると、ＣＰＵとバスとの間の同期化ボトルネックを最小化又は減少させることができる。
【００７９】
従って、帯域幅同期化回路がＳｏＣに用いられる場合、データプロセッシングシステムの製造原価を低くすることができ、ＳｏＣの動作パフォーマンスを改善することができる。
【００８０】
以上、本発明の実施形態について図面を参照しながら説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。
【符号の説明】
【００８１】
１０、４８    メモリ（ＡＲＣＡＭ）
１４    選択器
１９    レジスタ
２１    第１シンクメモリ
２３    第２シンクメモリ
２５    シンクパッキング制御器
２６    第１シンクパッキング制御器
２７    第２シンクパッキング制御器
４１    第３シンクメモリ
４２    第１選択器
４３    第４シンクメモリ
４４    第２選択器
４５    シンクアンパッキング制御器
４６    第１シンクアンパッキング制御器
４７    第２シンクアンパッキング制御器
１００、１０２    スレーブインターフェース（ＳＩ）
２００、２０２、２１０    アップサイザー（エキスパンダ）
２２０    シンクパッカー
２２２    第１シンクパッカー
２２４    第２シンクパッカー
２４０    シンクアンパッカー
２４２    第１シンクアンパッカー
２４４    第２シンクアンパッカー
２５０    シンクダウン部
２５２    シンクメモリ
２５４    マッチバリュー
２５６    マッチ
２５８    第１フリップフロップ
２５９    第２フリップフロップ
３００    バスマトリックス
４００    データプロセッシングシステム、
４００ａ    帯域幅同期化回路
４１０    メモリ
４２０    メモリコントローラ
４３０    ブートＲＯＭ
４４０    ディスプレイコントローラ
４５０    ディスプレイ
５００    ＣＰＵ
５１０    メディアシステム
５２０    モデム
【図１】
2011113568.tif 000003
【図２】
2011113568.tif 000004
【図３】
2011113568.tif 000005
【図４】
2011113568.tif 000006
【図５】
2011113568.tif 000007
【図６】
2011113568.tif 000008
【図７】
2011113568.tif 000009
【図８】
2011113568.tif 000010
【図９】
2011113568.tif 000011
【図１０】
2011113568.tif 000012
【図１１】
2011113568.tif 000013
【図１２】
2011113568.tif 000014