(57)【要約】【課題】システムオンチップに採用するのに適する非同期統合アップサイジング回路を提供する。【解決手段】非同期統合アップサイジング回路は非同期パッカーと非同期アンパッカーを具備する。非同期パッカーは、非同期ブリッジ及びアップサイジングに共通で用いられ、ライトチャンネルデータをバッファリングするライトバッファと、バーストライト時に前記ライトバッファに入出力される前記ライトチャンネルデータに対するチャンネル圧縮を第１及び第２クロックによって各々制御する第１及び第２非同期パッキング制御器を含む。また、非同期アンパッカーは、前記非同期ブリッジ及びアップサイジングに共通で用いられ、リードチャンネルデータをバッファリングするリードバッファと、バーストリード時に前記リードバッファに入出力される前記リードチャンネルデータに対するチャンネル圧縮を前記第１及び第２クロックによって各々制御する第１及び２非同期アンパッキング制御器を含む。【選択図】図４
2011118893.tif 000002
【特許請求の範囲】
【請求項１】
非同期ブリッジ及びアップサイジングに共通に用いられ、ライトチャンネルデータをバッファリングするライトバッファと、バーストライト時に前記ライトバッファに入出力される前記ライトチャンネルデータに対するチャンネル圧縮を第１及び第２クロックによって各々制御する第１及び第２非同期パッキング制御器を含む非同期パッカーと、
前記非同期ブリッジ及びアップサイジングに共通に用いられ、リードチャンネルデータをバッファリングするリードバッファと、バーストリード時に前記リードバッファに入出力される前記リードチャンネルデータに対するチャンネル圧縮を前記第１及び第２クロックによって各々制御する第１及び第２非同期アンパッキング制御器を含む非同期アンパッカーとを具備することを特徴とする非同期統合アップサイジング回路。
【請求項２】
前記ライトバッファはライトアドレスチャンネル、ライトデータチャンネル、及びライト応答チャンネルに各々割り当てられたメモリで構成されることを特徴とする請求項１に記載の非同期統合アップサイジング回路。
【請求項３】
前記リードバッファはリードアドレスチャンネル、及びリードデータチャンネルに各々割り当てられたメモリで構成されることを特徴とする請求項１または２に記載の非同期統合アップサイジング回路。
【請求項４】
前記第１クロックはマスタクロックであり、前記第２クロックはスレーブクロックであることを特徴とする請求項１から３のいずれかに記載の非同期統合アップサイジング回路。
【請求項５】
前記第１クロックはマスタクロックであり、前記第２クロックはＡＸＩバスクロックであることを特徴とする請求項２または３に記載の非同期統合アップサイジング回路。
【請求項６】
前記第１クロックが前記第２クロックより周波数が高い場合には周波数が同じ場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ先行して、レイテンシーが最適化されたアップサイジングが実行されるようにすることを特徴とする請求項２から５のいずれかに記載の非同期統合アップサイジング回路。
【請求項７】
前記第１クロックが前記第２クロックより周波数が低い場合には周波数が同じ場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ後行して、バス活用性が最適化されたアップサイジングが実行されるようにすることを特徴とする請求項２から５のいずれかに記載の非同期統合アップサイジング回路。
【請求項８】
前記メモリは各々ＦＩＦＯメモリであることを特徴とする請求項２に記載の非同期統合アップサイジング回路。
【請求項９】
前記メモリは各々ＦＩＦＯメモリであることを特徴とする請求項３に記載の非同期統合アップサイジング回路。
【請求項１０】
前記マスタクロックはメモリコントローラから提供されるクロックであることを特徴とする請求項５から７のいずれかに記載のデータプロセッシングシステムでの非同期統合アップサイジング回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データプロセッシングシステムに関し、より詳細には、スマートフォンやナビゲーションデバイスなどのようなモバイルシステムで非同期ブリッジ（Ａｓｙｎｃ  Ｂｒｉｄｇｅ）機能を共に有する非同期統合アップサイジング回路に関する。
【背景技術】
【０００２】
スマートフォン、個人用ナビゲーションデバイス、携帯インターネット器機、携帯放送器機、またはマルチメディア器機などのようなモバイルシステムでは多様なアプリケーション（ａｐｐｌｉｃａｔｉｏｎ）を支援するためにシステムオンチップ（ＳｏＣ：Ｓｙｓｔｅｍ  ｏｎ  Ｃｈｉｐ、以下“ＳｏＣ”という）上に高周波数で動作する高性能のモバイル応用プロセッサを採用している。
【０００３】
このようなモバイル応用プロセッサは、演算とプログラム命令語の実行を担当するので、モバイルＳｏＣの性能を決める核心素子である。モバイル応用プロセッサは、無線通信、個人用ナビゲーション、カメラ、ポータブルゲーミング、ポータブル音楽／ビデオプレーヤ、一体化したモバイルＴＶ及びＰＤＡなどのような多様な機能の集積をイネーブル（ｅｎａｂｌｅ）するために、Ｌ２（レベル２）キャッシュとしても呼ばれるオンチップ２次キャッシュを含むことができる。前記Ｌ２キャッシュの付加は、深刻なメモリトラフィックがプロセッサによって発生された時、モバイルシステムの性能を増加させるための認知された方法である。
【０００４】
前記ＳｏＣの効果的な設計のためには、１つのチップ上に集積した複数のＩＰ（Ｉｎｔｅｌｌｅｃｔｕｒｅ  Ｐｒｏｐｅｒｔｙ）間の相互通信のためのバスシステムの選択が何より重要である。現在知られている代表的なバスシステムとしては、ＡＲＭ（Ａｄｖａｎｃｅｄ  ＲＩＳＣ  Ｍａｃｈｉｎｅ）社のＡＭＢＡ（Ａｄｖａｎｃｅｄ  Ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ  Ｂｕｓ  Ａｒｃｈｉｔｅｃｔｕｒｅ）プロトコルに基づくＡＭＢＡ３．０ＡＸＩ（Ａｄｖａｎｃｅｄ  ｅＸｅｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ）バスシステムがある。
【０００５】
ＳｏＣの一部を構成するＤＭＡＣ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌｌｅｒ）、ＵＳＢ、ＰＣＩ、ＳＭＣ（Ｓｔａｔｉｃ  Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌｌｅｒ）、ＳＣＩ（Ｓｍａｒｔ  ｃａｒｄ  Ｉｎｔｅｒｆａｃｅ）などのような周辺機能ブロックはメーカーの開発時間と開発人力などのような制約によって外部からＩＰとして購入することができる。購入した周辺機能ブロックＩＰはＣＰＵとデータ処理用機能ブロックと共にチップ上に集積（Ｉｎｔｅｇｒａｔｉｏｎ）してＳｏＣをなすようになる。
【０００６】
モバイル応用プロセッサのハイパフォーマンス（Ｈｉｇｈ  ｐｅｒｆｏｒｍａｎｃｅ）要求の増加によって、ＳｏＣ内のＣＰＵ及びキャッシュコントローラ（ｃａｃｈｅ  ｃｏｎｔｒｏｌｌｅｒ）の動作周波数（ｆｒｅｑｕｅｎｃｙ）は数ＧＨｚに増加する趨勢である。一方、バス（Ｂｕｓ）システムの場合、周波数を数ＧＨｚに高め難い制約があるので、伝送帯域幅を合わせるため、代りにＣＰＵのデータバス幅より広いデータバス幅が採用される。例えば、１ＧＨｚの動作周波数を有するＣＰＵのデータバス幅が６４ビットとすれば、バスシステムの動作周波数は２００ＭＨｚ、データバス幅は１２８ビットに設計することができる。
【０００７】
したがって、データ伝送速度を合わせるため、キャッシュコントローラ（ｃａｃｈｅ  ｃｏｎｔｒｏｌｌｅｒ）と接続可能であり、６４ビットデータバス幅と１ＧＨｚ動作周波数とを有するＣＰＵと、１２８ビットデータバス幅と２００ＭＨｚ動作周波数とを有するバスシステムとの間で６４ビットｔｏ１２８ビットアップサイザー（ｕｐｓｉｚｅｒ）回路を採用することができる。
【０００８】
一方、最近では、ＳｏＣデザインのサイズ増加によって非同期ブリッジ（Ａｓｙｎｃｂｒｉｄｇｅ）の使用要求がさらに増え、帯域幅（Ｂａｎｄｗｉｄｔｈ）要求量の増加によって１２８ビットＡＸＩバス（ｂｕｓ）が導入されることによって、アップサイザー（Ｕｐｓｉｚｅｒ）と非同期ブリッジ（Ａｓｙｎｃ  Ｂｒｉｄｇｅ）のパフォーマンス（ｐｅｒｆｏｒｍａｎｃｅ）が重要な要素として台頭している。特に、ディスプレイ（Ｄｉｓｐｌａｙ）ＩＰパス（ｐａｔｈ）に対しては非同期ブリッジ及びアップサイザーが全て用いられなければならない。このようなディスプレイＩＰのトラフィックパターン（ｔｒａｆｆｉｃ  ｐａｔｔｅｒｎ）を分析する場合に、バーストリードリクエスト（Ｂｕｒｓｔ  ｒｅａｄ  ｒｅｑｕｅｓｔ）が連続して出る場合が多い。
【０００９】
ディスプレイＩＰが集まっているディスプレイザブシステム（Ｄｉｓｐｌａｙ  ｓｕｂｓｙｓｔｅｍ）でリードリクエスト（ｒｅａｄ  ｒｅｑｕｅｓｔ）が連続して出る場合、非同期ブリッジ及びアップサイザーによる帯域幅差に起因してリードレディー信号（ｒｅａｄ  ｒｅａｄｙ  ｓｉｇｎａｌ）がハイ（ｈｉｇｈ）で維持されないことがある。そのような場合に、メモリコントローラ（ｍｅｍｏｒｙ  ｃｏｎｔｒｏｌｌｅｒ）の動作がストップ（ｓｔｏｐ）されるので、システム全体のパフォーマンスに影響が及ぶ。したがって、パフォーマンス（ｐｅｒｆｏｒｍａｎｃｅ）の低下を最小化するためには、メモリコントローラに提供されるリードレディー信号がハイで維持されるようにすることが必要である。この場合に、非同期ブリッジ及びアップサイザーは全部バッファ（ｂｕｆｆｅｒ）を要するようになるので、ゲートカウントオーバーヘッド（ｇａｔｅ  ｃｏｕｎｔｏｖｅｒ  ｈｅａｄ）が招来される。
【００１０】
またバーストライト（ｂｕｒｓｔ  ｗｒｉｔｅ）の場合に、バス活用（ｂｕｓ  ｕｔｉｌｉｚｅ）を高めるために、ライトアドレスチャンネルとライトデータチャンネルに対してコンパクション（ｃｏｍｐａｃｔｉｏｎ）を実行する場合により効率的なコンパクション技法が必要になる。例えば、非同期ブリッジ及びアップサイザーが互いに別個で分離している場合にチャンネルコンパクションを行えば、コンパクション効率が低下してレイテンシーやバス活用性が悪くなる。
【００１１】
したがって、モバイルシステムで採用することができる非同期ブリッジ及びアップサイザーでゲートカウントオーバーヘッドを減らし、かつチャンネルコンパクションをより効率的に行うことができる技術が要望される。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】韓国公開特許２００７−００００９４１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
本発明の第１の課題は、データプロセッシングシステムのパフォーマンスを改善することができる非同期統合アップサイジング回路を提供することにある。
【００１４】
本発明の第２の課題は、ゲートカウントオーバーヘッドを減らすことができる非同期統合アップサイジング回路を提供することにある。
【００１５】
本発明の第３の課題は、非同期ブリッジ機能を有するアップサイジング回路を提供することにある。
【００１６】
本発明の第４の課題は、チャンネルコンパクションをより効率的に行うことができる非同期統合アップサイジング回路及び方法を提供することにある。
【００１７】
本発明の第５の課題は、回路占有面積を減らし、バーストライト動作時にレイテンシーとバス活用性を改善することができるアップサイジング回路及びそれを採用したデータプロセッシングシステムを提供することにある。
【課題を解決するための手段】
【００１８】
前記の課題を解決するために、本発明の実施形態の一態様による非同期統合アップサイジング回路は、非同期ブリッジ及びアップサイジングに共通で用いられ、ライトチャンネルデータをバッファリングするライトバッファと、バーストライト時に前記ライトバッファに入出力される前記ライトチャンネルデータに対するチャンネル圧縮を第１及び第２クロックによって各々制御する第１及び第２非同期パッキング制御器を含む非同期パッカーと、前記非同期ブリッジ及びアップサイジングに共通で用いられ、リードチャンネルデータをバッファリングするリードバッファと、バーストリード時に前記リードバッファに入出力される前記リードチャンネルデータに対するチャンネル圧縮を前記第１及び第２クロックによって各々制御する第１及び第２非同期アンパッキング制御器を含む非同期アンパッカーとを具備する。
【００１９】
本発明の実施形態において、前記ライトバッファはライトアドレスチャンネル、ライトデータチャンネル、及びライト応答チャンネルに各々割り当てられたメモリで構成することができ、また前記リードバッファはリードアドレスチャンネル、及びリードデータチャンネルに各々割り当てられたメモリで構成することができる。
【００２０】
本発明の実施形態において、前記第１クロックはマスタクロックであり、前記第２クロックはスレーブクロックであり得る。ここで、前記第２クロックはＡＸＩバスクロックであり得る。
【００２１】
本発明の実施形態において、前記第１クロックが前記第２クロックより周波数が高い場合には周波数が同一の場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ先行して、レイテンシーが最適化されたアップサイジングが実行されるようにできる。また、前記第１クロックが前記第２クロックより周波数が低い場合には周波数が同一の場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ後行して、バス活用性が最適化されたアップサイジングが実行されるようにできる。
【００２２】
本発明の実施形態において、前記メモリは各々ＦＩＦＯメモリであり、前記マスタクロックはメモリコントローラから提供されるクロックであり得る。
【００２３】
本発明の実施形態において、前記非同期パッカーは前記ライトチャンネルデータに対する非同期パッキングを実行し、前記非同期アンパッカーは前記リードチャンネルデータに対する非同期アンパッキングを実行することができる。
【００２４】
本発明の実施形態の他の態様による非同期統合アップサイジング回路は、非同期ブリッジ及びアップサイジングに共通で用いられ、ライトチャンネルデータをバッファリングする第１、第２、及び第３非同期メモリと、バーストライト時に前記第１、第２、及び第３非同期メモリに入出力される前記ライトチャンネルデータに対するチャンネル圧縮をマスタクロック及びスレーブクロックによって各々制御する第１及び第２非同期パッキング制御器を含む非同期パッカーと、前記非同期ブリッジ及びアップサイジングに共通で用いられ、リードチャンネルデータをバッファリングする第４及び第５非同期メモリと、バーストリード時に前記第４及び第５非同期メモリに入出力される前記リードチャンネルデータに対するチャンネル圧縮を前記マスタクロック及びスレーブクロックによって各々制御する第１及び第２非同期アンパッキング制御器を含む非同期アンパッカーとを具備する。
【００２５】
本発明の実施形態において、前記マスタクロックはＣＰＵのクロックであり、前記第２クロックはＡＸＩバスクロックであり得る。
【００２６】
本発明の実施形態において、前記第１非同期メモリはライトアドレスチャンネルに、前記第２非同期メモリはライトデータチャンネルに、前記第３非同期メモリはライト応答チャンネルに、前記第４非同期メモリはリードアドレスチャンネルに、前記第５非同期メモリはリードデータチャンネルに対応的に割り当てられ得る。
【００２７】
本発明の実施形態において、前記マスタクロックが前記スレーブクロックより周波数が高い場合には周波数が同一の場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ先行して、レイテンシーが最適化されたアップサイジングが実行されるようにできる。
【００２８】
本発明の実施形態において、前記マスタクロックが前記スレーブクロックより周波数が低い場合には周波数が同一の場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ後行して、バス活用性が最適化されたアップサイジングが実行されるようにできる。
【００２９】
本発明の実施形態のまた他の態様によるデータプロセッシングシステムは、Ｌ２キャッシュコントローラと接続されるＣＰＵと、非同期ブリッジ及びアップサイジングに共通で用いられ、ライトチャンネルデータをバッファリングするライトバッファとバーストライト時に前記ライトバッファに入出力される前記ライトチャンネルデータに対するチャンネル圧縮を第１及び第２クロックによって各々制御する第１及び第２非同期パッキング制御器を含む非同期パッカーと、前記非同期ブリッジ及びアップサイジングに共通で用いられ、リードチャンネルデータをバッファリングするリードバッファとバーストリード時に前記リードバッファに入出力される前記リードチャンネルデータに対するチャンネル圧縮を前記第１及び第２クロックによって各々制御する第１及び第２非同期アンパッキング制御器を含む非同期アンパッカーとを具備し、前記Ｌ２キャッシュコントローラを通じて前記ＣＰＵとインターフェースバスとの間に接続される非同期統合アップサイジング回路と、前記インターフェースバスに接続されたディスプレイＩＰとを具備する。
【００３０】
本発明の実施形態において、前記ディスプレイＩＰは、モバイルシステムのためのＩＰであり得る。
【００３１】
本発明の実施形態のまた他の態様によって、非同期ブリッジ及びアップサイジングに共通で用いられ、ライトチャンネルデータをバッファリングするライトバッファと、バーストライト時に前記ライトバッファに入出力される前記ライトチャンネルデータに対するチャンネル圧縮をマスタクロック及びスレーブクロックによって各々制御する第１及び第２非同期パッキング制御器とを具備するデータプロセッシングシステムでの非同期パッキング方法は、前記マスタクロックが前記スレーブクロックより周波数が高い場合には周波数が同一の場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ先行する制御段階と、前記マスタクロックが前記スレーブクロックより周波数が低い場合には周波数が同一の場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ後行する制御段階とを有することができる。
【発明の効果】
【００３２】
本発明の実施形態の非同期統合アップサイジング回路の構成によると、バッファの共有的使用によって回路の占有面積が減少し、回路実現費用が低くなる。
【００３３】
また、非同期パッカーでのチャンネル圧縮時にレイテンシーが最適化されるか、またはバス活用性が最適化されることによって動作パフォーマンスが高くなる。
【００３４】
したがって、そのような非同期統合アップサイジング回路をＳｏＣに採用する場合に、データ処理システムの製造原価が低くなり、かつＳｏＣの動作性能も高くなる。
【図面の簡単な説明】
【００３５】
【図１】本発明が適用可能なハイパフォーマンスマトリックスを用いるシステムオンチップの内部構成ブロック図である。
【図２】図１のうち、アップサイザーと接続されたバス構造の例を示すデータプロセッシングシステムの一部ブロック構成図である。
【図３】コンベンショナル技術によるアップサイザーの詳細ブロック構成図である。
【図４】本発明の実施形態による非同期統合アップサイジング回路の詳細ブロック構成図である。
【図５】図４によるゲートカウント減少を示すテーブル図である。
【図６】図４によるレイテンシー及びバスユーティリティー最適化を示す動作タイミング図である。
【図７】図４によるマスタクロック及びスレーブクロック間の周波数比を各々示すテーブル図である。
【図８】図７の周波数比とバースト長さとの間のクロック増減度を各々示すテーブル図である。
【図９】図８のテーブルをクロック増減の分布によって再構成したマップ図である。
【図１０】本発明の実施形態による非同期統合アップサイジング回路を採用したモバイルシステムのブロック構成図である。
【発明を実施するための形態】
【００３６】
以上の本発明の目的、他の目的、特徴及び利点は添付の図面と係わる以下の望ましい実施形態を通じて容易に理解することができる。しかし、本発明はここで説明する実施形態に限定されず、他の形態に具体化することもできる。さらに、ここで紹介する実施形態は開示された内容が徹底してかつ完全になされるように、そして当業者に本発明の思想を十分に伝達するように提供されるものである。
【００３７】
本明細書において、ある素子またはラインが対象素子ブロックに接続されると記載された場合、それは直接的に接続されるか、または他の素子を通じて対象素子ブロックに間接的に接続され得ることを意味する。
【００３８】
また、明細書の全体に亘り同じ参照番号は同じ構成要素を示す。図面において、素子及びラインのサイズは技術的内容の効果的な説明のために誇張されたものである。
【００３９】
ここに説明及び例示される実施形態はそれの相補的な実施形態も含む。
【００４０】
まず、図１は、本発明が適用可能なＡＲＭ（Ａｄｖａｎｃｅｄ  ＲＩＳＣ  Ｍａｃｈｉｎｅ）社のプライムセル（ＰｒｉｍｅＣｅｌｌ）ハイパフォーマンスマトリックス（ＨＰＭ）を用いるシステムオンチップの内部構成ブロック図である。
【００４１】
図１に示すように、ブリッジ部２、アップサイザー２００、レジスタスライス４、及びバスマトリックス３００からなるスレーブインターフェース（ＳＩ）上のインターフェースサポートコンポーネントの接続例を示す。前記ブリッジ部２は周波数変換のための素子として、２つの非同期クロックドメインの間をクロッシングする。前記アップサイザー２００は大きいデータ幅でスレーブ側に接続するためにマスタ側をイネーブルするデータバス幅変換素子である。前記レジスタスライス４はＡＭＢＡ  ＡＸＩ信号を格納するためのバッファリング素子である。
【００４２】
図１において、前記アップサイザー２００は伝送速度を合わせるために、例えば６４ビットのデータを１２８ビットのデータに拡張するデータエキスパンダ（ｅｘｐａｎｄｅｒ）の機能を基本的に実行する。図１において、前記ブリッジ部２に接続されたスレーブインターフェースＳＩは６４ビットデータバス幅と１ＧＨｚ動作周波数とを有するＣＰＵ側（ｓｉｄｅ）に接続することができ、前記バスマトリックス３００は１２８ビットデータバス幅と２００ＭＨｚ動作周波数とを有するバスシステムになることができる。前記バスマトリックス３００はマルチレイヤーバスマトリックス（Ｍｕｌｔｉ  Ｌａｙｅｒ  Ｂｕｓ  Ｍａｔｒｉｘ）構造を有することができる。
【００４３】
図２は、図１のうち、アップサイザー（またはエキスパンダ）と接続されたバス構造の例を示すデータプロセッシングシステムの一部ブロック構成図である。
【００４４】
図２に示すように、データプロセッシングシステム５００内のアップサイザー２００を基準として上部は狭（ｎａｒｒｏｗ）ＡＸＩバス、下部は広ＡＸＩバスからなることが分かる。前記アップサイザー２００は狭バスラインＢＮに印加される３２ビット、３２ビット、６４ビットのデータを６４ビット、１２８ビット、１２８ビットに各々拡張して広バスラインＢＷに提供する役割を果たすことができる。図２において、Ｌｏは下位ビットを、Ｈｉは上位ビットを意味する。例えば、データが総１２８ビットで構成された場合に、０〜６３ビットはＬｏに対応し、６４〜１２７ビットはＨｉに対応する。
【００４５】
図３は、コンベンショナル技術によるアップサイザーの詳細ブロック構成図である。
【００４６】
図３において、同期モードで動作するアップサイザー２００はプロセッサクロックＣＬＫ１によって動作するシンクパッカー２２０とシンクアンパッカー２４０で構成される。前記シンクパッカー（ｓｙｎｃ  ｐａｃｋｅｒ）２２０は第１及び第２シンクメモリ２１、２３とシンクパッキング制御器２５で構成され、前記シンクアンパッカー２４０はＣＡＭ４１、第３シンクメモリ４３、及びシンクアンパッキング制御器４５で構成される。前記シンクパッカー２２０はライトアドレスチャンネル、ライトデータチャンネル、及びライト応答チャンネルにシンクパッキングを実行し、前記シンクアンパッカー２４０はリードアドレスチャンネルとリードデータチャンネルに対するシンクアンパッキングを実行することができる。
【００４７】
第１シンクメモリ２１は前記シンクパッキング制御器２５の制御に応答してライトアドレスチャンネルのアドレスを格納し、該格納されたアドレスをアップサイジングしてバスマトリックス３００に出力する。
【００４８】
第２シンクメモリ２３は前記シンクパッキング制御器２５の制御に応答してライトデータチャンネルのデータを格納し、該格納されたデータをアップサイジングしてバスマトリックス３００に出力する。ここで、６４ビットとして格納されたデータはバスマトリックス３００に提供する時、前記アップサイジングによって１２８ビットとして印加され得る。
【００４９】
ＣＡＭ４１はＡＲＣＡＭ（Ａｄｄｒｅｓｓ  Ｒｅａｄ  Ｃｏｎｔｅｎｔｓ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）の機能を実行するメモリである。
【００５０】
第３シンクメモリ４３は前記シンクアンパッキング制御器４５の制御に応答してリードデータチャンネルのデータを格納し、該格納されたデータをビット変換して前記スレーブインターフェース１００に出力する。
【００５１】
前記第１、第２、及び第３シンクメモリ２１、２３、４３は全部先入先出機能を有するＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）メモリを用いて実現することができる。
【００５２】
図３において、前記プロセッサクロックが約１ＧＨｚの周波数を有するとすれば、前記アップサイザー２００に印加されるクロックＣＬＫ１もプロセッサのクロックドメイン（ｄｏｍａｉｎ）下で動作されるので、約１ＧＨｚの周波数を有することができる。一方、前記バスマトリックス３００に用いられるバスクロックは約２００ＭＨｚの周波数を有することができる。
【００５３】
前記プロセッサ（またはＣＰＵ）クロックはＳｏＣの電流消耗を最小化するために採用されたＤＶＦＳＣ（Ｄｙｎａｍｉｃ  Ｖｏｌｔａｇｅ  Ｆｒｅｑｕｅｎｃｙ  Ｓｃａｌｉｎｇ  Ｃｏｎｔｒｏｌｌｅｒ）によって制御されるＤＶＦＳ（Ｄｙｎａｍｉｃ  Ｖｏｌｔａｇｅ  Ｆｒｅｑｕｅｎｃｙ  Ｓｃａｌｉｎｇ）クロックであり得る。前記ＤＶＦＳＣの採用によってクロック周波数はダイナミックに制御することができる。
【００５４】
図３において、ＡＷはライトアドレスチャンネル信号、Ｗはライトデータチャンネル信号、Ｂはライト応答チャンネル信号、ＡＲはリードアドレスチャンネル信号、Ｒはリードデータチャンネル信号を各々示す。また、ＳＩはスレーブインターフェースを、ＭＩはマスタインターフェースを各々示す。
【００５５】
図３のように構成されたアップサイザー２００は同期モードで動作するので、ＳｏＣデザインのサイズ増加によって非同期ブリッジ（ＡｓｙｎｃＢｒｉｄｇｅ）との適応性が低下する。特に、ディスプレイ（Ｄｉｓｐｌａｙ）ＩＰパス（ｐａｔｈ）では非同期アップサイザー（Ｕｐｓｉｚｅｒ）と非同期ブリッジ（Ａｓｙｎｃ  Ｂｒｉｄｇｅ）の使用が多く、この場合に動作パフォーマンス（ｐｅｒｆｏｒｍａｎｃｅ）が重要である。
【００５６】
ディスプレイザブシステムで非同期ブリッジ及びアップサイザーによる帯域幅差に起因してリードレディー信号（ｒｅａｄ  ｒｅａｄｙ  ｓｉｇｎａｌ）がハイ（ｈｉｇｈ）で維持されなければ、メモリコントローラ（ｍｅｍｏｒｙ  ｃｏｎｔｒｏｌｌｅｒ）の動作がストップ（ｓｔｏｐ）されてシステム全体パフォーマンスに影響が及ぶ。したがって、パフォーマンス（ｐｅｒｆｏｒｍａｎｃｅ）の低下を最小化するためには、メモリコントローラに提供されるリードレディー信号をハイで保持させなければならない。この場合に非同期ブリッジ及びアップサイザーは全部バッファ（ｂｕｆｆｅｒ）を要するようになるので、ゲートカウントオーバーヘッド（ｇａｔｅ  ｃｏｕｎｔ  ｏｖｅｒ  ｈｅａｄ）が招来される。本発明の実施形態では、図４に示すように、非同期ブリッジ（Ａｓｙｎｃ  Ｂｒｉｄｇｅ）機能を共に有する非同期統合アップサイザー２１０を実現し、ライトバッファ及びリードバッファを共有的に用いることによってゲートカウントオーバーヘッドを減らす。
【００５７】
またバーストライト（ｂｕｒｓｔ  ｗｒｉｔｅ）動作でチャンネルコンパクションを行う場合に、図９のように、マスタとスレーブとの間のクロック比とバーストの長さによる動作クロック調整テーブルに合わせて制御すれば、レイテンシーやバス活用性が改善されるので、チャンネルコンパクション効率が高くなる。
【００５８】
図４〜図１０を参照して本発明の実施形態を説明するが、本発明の実施形態は本発明に限定されない。
【００５９】
図４は、本発明の実施形態による非同期統合アップサイジング回路の詳細ブロック構成図である。
【００６０】
図４において、非同期統合アップサイザー２１０は、第１及び第２非同期パッカー２２２、２２４、第１及び第２非同期アンパッカー２４２、２４４を含む。
【００６１】
前記第１及び第２非同期パッカー２２２、２２４は、非同期ブリッジ及びアップサイジングに共通で用いられ、ライトチャンネルデータＡＷ、Ｗ、Ｂをバッファリングする第１、第２、第３非同期メモリ２１、２３、２５を共有する。第１非同期パッカー２２２は、バーストライト時に前記第１、第２、第３非同期メモリ２１、２３、２５に入出力される前記ライトチャンネルデータに対するチャンネル圧縮をマスタクロックＣＬＫ１によって制御する第１非同期パッキング制御器２６を具備する。第２非同期パッカー２２４は、バーストライト時に前記第１、第２、第３非同期メモリに入出力される前記ライトチャンネルデータに対するチャンネル圧縮をスレーブクロックＣＬＫ２によって制御する第２非同期パッキング制御器２７を具備する。
【００６２】
前記第１及び第２非同期アンパッカー２４２、２４４は、前記非同期ブリッジ及びアップサイジングに共通で用いられ、リードチャンネルデータＡＲ、Ｒをバッファリングする第４及び第５非同期メモリ４１、４３を共有する。第１非同期アンパッカー２４２は、バーストリード時に前記第４及び第５非同期メモリ４１、４３に入出力される前記リードチャンネルデータに対するチャンネル圧縮を前記マスタクロックＣＬＫ１によって制御する第１非同期アンパッキング制御器４６を具備する。第２非同期アンパッカー２４４は、バーストリード時に前記第４及び第５非同期メモリ４１、４３に入出力される前記リードチャンネルデータに対するチャンネル圧縮を前記スレーブクロックＣＬＫ２によって制御する第２非同期アンパッキング制御器４７を具備する。
【００６３】
ＦＩＦＯメモリとして各々構成され得る前記第１、第２、第３非同期メモリ２１、２３、２５はライトバッファ２８に含まれ、ＦＩＦＯメモリとして各々構成され得る前記第４及び第５非同期メモリ４１、４３はリードバッファ４４に含まれる。
【００６４】
前記マスタクロックＣＬＫ１はメモリコントローラから提供されるクロックであるか、またはＣＰＵのクロックであり得る。前記スレーブクロックＣＬＫ２はＡＸＩバスクロックであり得る。
【００６５】
第１非同期メモリ２１は前記第１非同期パッキング制御器２６の制御に応答してライトアドレスチャンネルＡＷのアドレスを格納する。前記第１非同期メモリ２１は前記第２非同期パッキング制御器２７の制御に応答して格納されたライトアドレスチャンネルＡＷのアドレスを非同期ブリッジング及びアップサイジングしてバスマトリックス３００に出力する。
【００６６】
第２非同期メモリ２３は前記第１非同期パッキング制御器２６の制御に応答してライトデータチャンネルＷのデータを格納する。前記第２非同期メモリ２３は前記第２非同期パッキング制御器２７の制御に応答して格納されたライトデータチャンネルＷのデータを非同期ブリッジング及びアップサイジングしてバスマトリックス３００に出力する。
【００６７】
第３非同期メモリ２５は前記第２非同期パッキング制御器２７の制御に応答してライト応答チャンネルＢのデータを格納する。前記第３非同期メモリ２５は前記第１非同期パッキング制御器２６の制御に応答して格納されたライト応答チャンネルＢのデータを非同期ブリッジング及びビット幅変換してスレーブインターフェース１００に出力する。
【００６８】
第４非同期メモリ４１は前記第１非同期アンパッキング制御器４６の制御に応答してリードアドレスチャンネルＡＲのアドレスを格納する。前記第４非同期メモリ４１は前記第２非同期アンパッキング制御器４７の制御に応答して格納されたリードアドレスチャンネルＡＲのアドレスを非同期ブリッジング及びアップサイジングしてバスマトリックス３００に出力する。
【００６９】
第５非同期メモリ４３は前記第２非同期アンパッキング制御器４７の制御に応答してリード応答チャンネルＲのデータを格納する。前記第５非同期メモリ４３は前記第１非同期アンパッキング制御器４６の制御に応答して格納されたリード応答チャンネルＲのデータを非同期ブリッジング及びビット幅変換してスレーブインターフェース１００に出力する。
【００７０】
図４のような非同期統合アップサイザー２１０は、ライトバッファ２８及びリードバッファ４４を共有的に用いるので、ゲートカウントオーバーヘッドが減少する。
【００７１】
図５は、図４によるゲートカウント減少を示すテーブルである。図面で１（ライトデプス）と２（リードデプス）に示した水平方向の一番目セルの５２１４（６３Ｋ）は図４によるゲートカウントである。これは図３のゲートカウント９７７３９（１１７Ｋ）に比較して４７％セービングされたカウントであることが分かる。また、２番目セルでは１０８３８から５７１５にゲートカウントが減少する。このように、ライトバッファ２８及びリードバッファ４４の共有的使用によってゲートカウントがセービングされる。
【００７２】
また、バーストライト（ｂｕｒｓｔ  ｗｒｉｔｅ）動作でチャンネルコンパクションを行う場合に、図９のように、マスタとスレーブとの間のクロック比とバーストの長さによる動作クロック調整テーブルに合わせて制御すれば、図６のＰ１、Ｐ２タイミングで見られるように、レイテンシーがＧ１、Ｇ２に比較して改善されるか、図６のＰ３、Ｐ４タイミングで見られるようにバス活用性がＧ３、Ｇ４より改善される。
【００７３】
図６は、図４によるレイテンシー及びバスユーティリティー最適化を示す動作タイミング図であり、図７は、図４によるマスタクロック及びスレーブクロック間の周波数比を各々示すテーブル図である。また、図８は、図７の周波数比とバースト長さとの間のクロック増減度を各々示すテーブル図であり、図９は、図８のテーブルをクロック増減の分布によって再構成したマップ図である。
【００７４】
まず、図６に示すように、タイミング波形Ａ１はＡＷリクエストを示し、Ａ２は６４ビット幅のライトデータである。Ａ３は１２８ビット幅のライトデータである。例えば、マスタクロックとスレーブクロックの周波数が同一周波数の２００ＭＨｚである場合には、バーストライト動作のために、Ａ４のようにＡ１に比較してＡＷリクエストが一定クロック数だけ遅延される。また、これによってアップサイザーから出力される１２８ビット幅のライトデータはＡ５のようになる。
【００７５】
一方、マスタクロックが３００ＭＨｚであり、スレーブクロックが２００ＭＨｚの場合には、バーストライト動作でのレイテンシーを良くするために、図３のようなアップサイザーの場合にはＧ１のようにＡＷリクエストが発生され、Ｇ２のように１２８ビット幅のライトデータが出力される。
【００７６】
反対に、マスタクロックが２００ＭＨｚであり、スレーブクロックが３００ＭＨｚの場合には、バーストライト動作でのバスユーティリティーを良くするために、図３のようなアップサイザーの場合にはＧ３のようにＡＷリクエストが発生され、Ｇ４のように１２８ビット幅のライトデータが出力される。
【００７７】
本発明の実施形態である図４のアップサイザーの場合にはレイテンシーが最適化されたアップサイジングのために、Ｐ１、Ｐ２のようなタイミングで示されるように、バーストライト動作時に、ライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ先行する。具体的には、マスタクロックが３００ＭＨｚであり、スレーブクロックが２００ＭＨｚの場合には、バーストライト動作でのレイテンシー（ｌａｔｅｎｃｙ）を良くするために、図４のようなアップサイザーの場合にはＰ１のようにＡＷリクエストが発生され、Ｐ２のように１２８ビット幅のライトデータが出力される。タイミング波形Ｐ２はＧ２に比較して矢印ＡＲ１だけ先に出力されるデータであるので、レイテンシーがより改善されることが分かる。
【００７８】
また、バス活用性が最適化されたアップサイジングが実行されるように、Ｐ３、Ｐ４のようなタイミングで示されるように、マスタクロックがスレーブクロックより周波数が低い場合には、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ後行する。具体的には、マスタクロックが２００ＭＨｚであり、スレーブクロックが３００ＭＨｚの場合にはバーストライト動作でのバスユーティリティーを最適化するため、図４のようなアップサイザーの場合には、Ｐ３のようにＡＷリクエストが発生され、Ｐ４のようなタイミングで１２８ビット幅のライトデータが出力される。タイミング波形Ｐ４はＧ４に比較して２クロックだけ遅く出力されるが、タイム区間Ｔ１で出力されるので、バスユーティリティーが改善されることが分かる。
【００７９】
ライトチャンネルでのコンパクションを説明すれば、タイム区間Ｔ３に出力されたライトデータが、レイテンシーのためのチャンネルコンパクションの場合にはタイム区間Ｔ２に出力され、バスユーティリティーのためのチャンネルコンパクションの場合にはタイム区間Ｔ３に出力されるので、各々減少した区間だけのコンパクションが行われる。
【００８０】
ライトチャンネルに対するチャンネルコンパクションの場合に、レイテンシーのためにリクエストを繰り上げるか、またはバスユーティリティーのためのリクエストのディレーの程度は図９に示すテーブルマップに依存する。
【００８１】
図９に対する理解のためには、図７及び図８に対する理解が先行されなければならない。
【００８２】
図７に示すように、横軸はマスタクロックを周波数の大きさの順序に示し、縦軸はスレーブクロックを周波数の大きさの順序に示す。ｎＳからなる文字符号はナノ秒を意味し、対応する周波数の周期を示す。したがって、例えば３００ＭＨｚは３．３ｎＳの周期を有する。
【００８３】
図７において、マスタクロック２００ＭＨｚとスレーブクロック２００ＭＨｚが互いにクロッシングする地点の数字１は周波数比を示す。したがって、マスタクロック３００ＭＨｚとスレーブクロック２００ＭＨｚが互いにクロッシングする地点には０．６７が、マスタクロック２００ＭＨｚとスレーブクロック３００ＭＨｚが互いにクロッシングする地点には１．５が表示されている。したがって、頻繁に示す周波数比に対しては図８のように、バーストの長さによってテーブルを構成すれば、図８の通りである。
【００８４】
前記周波数比（またはクロック比）は図８で縦軸に沿って大きさの順序で表記している。図８の横軸に表記したＡＷＬＥＮｓはＡＷの長さを示し、ＡＷＬＥＮｍ−１はバーストの長さを示す。
【００８５】
図８に示すように、縦軸の１．００を基準として水平に行けば、１、２、１、２、３、２、３、４．．．．８が見られる。前記数字はＡＷLＥＮｓからＡＷの長さを引いた値である。すなわち、１−０＝１であり、２−０＝２であり、２−１＝１であり、最後の８は１６−８によって得られた値である。
【００８６】
図８の数値テーブルにおいて、縦軸の１．００を基準として垂直上下で同じ数字同士分類すれば、図９のようなクロック増減の分布によって再構成したマップ（ｍａｐ）を得ることができる。図９において、例えば、“０”として表示された部分に対応する周波数比とバーストの長さに対してはリクエストを繰り上げるか、またはディレーする必要がない。また、“＋１”として表示された部分に対応する場合にはバスユーティリティーのために１クロックだけディレーした後にリクエストを発生する。また、“−１”として表示された部分に対応する場合にはレイテンシーを良くするために１クロックだけ繰り上げた後にリクエストを発生する。また、例えば、“＋４”として表示された部分に対応する場合にはバスユーティリティーのために４クロックだけディレーした後にリクエストを発生する。また、“−３”として表示された部分に対応する場合にはレイテンシーを良くするために３クロックだけ繰り上げた後にリクエストを発生する。
【００８７】
このようにレイテンシー及びバスユーティリティーを最適化するチャンネルコンパクション動作は図４の第１及び第２非同期パッキング制御器２６、２７によって実行される。
【００８８】
上述のように、本発明の実施形態によると、モバイルシステムで採用できる非同期ブリッジ及びアップサイザーでゲートカウントオーバーヘッドが減少し、かつチャンネルコンパクションがより効率的に実行される。
【００８９】
図１０は、本発明の実施形態による非同期統合アップサイジング回路を採用したモバイルシステムのブロック構成図である。
【００９０】
図１０に示すように、モバイルシステムは、Ｌ２キャッシュを有するＣＰＵ５００と、ＡＸＩバスＢＵＳ１を通じて接続されたメディアシステム５１０と、モデム５２０と、メモリコントローラ４１０と、ブートＲＯＭ４３０と、ディスプレイコントローラ４４０とを含む。前記メモリコントローラ４１０にはＤＲＡＭまたはフラッシュメモリなどのようなメモリ４２０が接続し、前記ディスプレイコントローラ４４０にはＬＣＤなどのようなディスプレイ４５０が接続される。
【００９１】
図１０において、ＢＵＳ１はＣＰＵバスであり、ＢＵＳ２はメモリバスである。前記ＣＰＵ５００はレベル２（Ｌ２）キャッシュの以外にレベル１（Ｌ１）キャッシュを内部的に含むことができる。前記Ｌ１キャッシュは頻繁にアクセスされるデータ及び／または命令を格納するために用いられる。前記Ｌ２キャッシュメモリもＬ１キャッシュのように、頻繁にアクセスされるデータ及び／または命令を格納することができる。
【００９２】
図１０のモバイルシステムはスマートフォン、個人用ナビゲーションデバイス、携帯インターネット器機、携帯放送器機、またはマルチメディア機器として機能することができる。
【００９３】
図１０のようなモバイルシステムにおいて、図４のような統合アップサイザー回路は前記ＣＰＵ５００のブロックと前記ＡＸＩバスＢＵＳ１との間に搭載される。
【００９４】
この場合に、図４の第１クロックＣＬＫ１としてはＣＰＵクロックを用いることができ、前記第２クロックＣＬＫ２としては前記ＡＸＩバスのクロックを用いることができる。
【００９５】
図４の回路はライトチャンネルのコンパクション動作時に、前記第１クロックが前記第２クロックより周波数が高い場合には、周波数が同じ場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ先行し、前記第１クロックが前記第２クロックより周波数が低い場合には、周波数が同じ場合に比較して、バーストライト動作時にライトアドレスチャンネルのリクエストを予め設定されたクロックサイクル数だけ後行する動作を実行する。
【００９６】
上述のように、非同期統合アップサイジング回路構成によると、バッファの共有的使用によって回路の占有面積が減少し、回路実現費用が低減される。また、非同期パッカーでのチャンネル圧縮時にレイテンシーが最適化されか、またはバス活用性が最適化されることによって動作パフォーマンスが高くなる。
【００９７】
したがって、そのような非同期統合アップサイジング回路を図１０のようなＳｏＣに採用する場合に、データ処理システムの製造原価が低くなり、ＳｏＣの動作性能も高くなる。
【００９８】
本発明の実施形態においては、バッファの共有とチャンネルコンパクションを中心として説明したが、これに限定されず、ゲートカウントのオーバーヘッドやチャンネルコンパクションの非効率が発生するデータ処理システムの場合に、本発明の実施形態を拡張して適用することができることは勿論である。
【００９９】
本発明の実施形態が適用されるモバイルシステムで、プロセッサの個数は２個以上に拡張することができる。そのようなプロセッサはマイクロプロセッサ、ＣＰＵ、デジタル信号プロセッサ、マイクロコントローラ、縮小命令セットコンピュータ、複合命令セットコンピュータ、またはそれらと類似なものになることができる。
【０１００】
前記の説明では本発明の実施形態を中心として図に沿って例をあげて説明したが、本発明の技術的思想の範囲内で本発明を多様に変形または変更することができることは本発明が属する分野の当業者には明白である。例えば、事案が異なる場合に本発明の技術的思想を逸脱することなしに、バースト長さの変更やチャンネルコンパクションの細部動作を多様に変形または変更することができることは勿論である。
【符号の説明】
【０１０１】
１００  スレーブインターフェース、
２１０  アップサイザー、
３００  バスマトリックス、
２８  ライトバッファ。
【図１】
2011118893.tif 000003
【図２】
2011118893.tif 000004
【図３】
2011118893.tif 000005
【図４】
2011118893.tif 000006
【図５】
2011118893.tif 000007
【図６】
2011118893.tif 000008
【図７】
2011118893.tif 000009
【図８】
2011118893.tif 000010
【図９】
2011118893.tif 000011
【図１０】
2011118893.tif 000012