(57)【要約】【課題】適応的サービス制御器、システムオンチップ及びシステムオンチップの制御方法を提供すること。【解決手段】システムオンチップは少なくとも一つのスレーブ知能素子、複数のマスタ知能素子、相互接続装置及び複数のサービス制御器を含む。マスタ知能素子は、スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する。相互接続装置は、それぞれのチャネルを通じてスレーブ知能素子及びマスタ知能素子に接続され、リクエストの仲裁動作を実行する。サービス制御器はシステムオンチップの動作環境の変化により適応的にマスタ知能素子のリクエストフローを制御する。【選択図】      図１
2014142912.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一つのスレーブ知能素子と、
前記スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する複数のマスタ知能素子と、
それぞれのチャネルを通じて前記スレーブ知能素子及び前記マスタ知能素子に接続され、前記リクエストの仲裁動作を実行する相互接続装置と、
システムオンチップの動作環境の変化により適応的に前記マスタ知能素子のリクエストフローを制御する複数のサービス制御器と、を含むことを特徴とするシステムオンチップ。
【請求項２】
少なくとも一つの状態信号に基づいて前記動作環境の変化を表わすグローバル制御信号を発生するグローバル制御器をさらに含み、
前記サービス制御器は前記グローバル制御信号に基づいてそれぞれのリクエストフローを制御することを特徴とする請求項１に記載のシステムオンチップ。
【請求項３】
前記スレーブ知能素子はメモリコントローラを含み、
前記マスタ知能素子はモデム及びディスプレイコントローラを含み、
前記状態信号は、
前記メモリコントローラの動作温度が基準温度より大きい時に活性化される第１状態信号と、
前記モデムが基準時間以上前記スレーブ知能素子からサービスの提供を受けなかった時に活性化される第２状態信号と、
前記ディスプレイコントローラのデータバッファに保存されたデータの保存率が基準率より小さい時活性化される第３状態信号のうちから少なくとも一つを含むことを特徴とする請求項２に記載のシステムオンチップ。
【請求項４】
前記サービス制御器のそれぞれは、
前記相応するマスタ知能素子のサービス要求レベルをリアルタイムで検出して前記サービス要求レベルを現わすクレジット値を出力するモニタと、
前記動作環境の変化に基づいて前記モニタを制御するためのローカル制御信号を発生し、前記クレジット値に基づいて前記相応するマスタ知能素子からのリクエストに対する優先順位情報を発生する制御ブロックと、を含むことを特徴とする請求項１に記載のシステムオンチップ。
【請求項５】
前記ローカル制御信号は、前記動作環境の変化にしたがって決定されるオーバーフロー値、単位増加値及び単位減少値を含み、
前記モニタは、
前記オーバーフロー値に相応する周期で活性化される第１イベント信号を発生する第１カウンタと、
前記相応するマスタ知能素子と前記相互接続装置との間のチャネル信号に基づいて前記相応するマスタ知能素子でサービスが提供されるたびに活性化される第２イベント信号を発生するサービス検出器と、
前記第１イベント信号が活性化されるたびに前記単位増加値だけ前記クレジット値を増加し、前記第２イベント信号が活性化されるたびに前記単位減少値だけ前記クレジット値を減少する第２カウンタを含むことを特徴とする請求項４に記載のシステムオンチップ。
【請求項６】
前記制御ブロックは、
前記動作環境の変化に基づいて前記オーバーフロー値、前記単位増加値及び前記単位減少値のうち少なくとも一つを変化させることによって前記相応するマスタ知能素子のリクエストフローを制御することを特徴とする請求項５に記載のシステムオンチップ。
【請求項７】
前記制御ブロックは、
前記オーバーフロー値を減少または前記単位増加値を増加または前記単位減少値を減少することによって、前記相応するマスタ知能素子のリクエストフローを促進し、
前記オーバーフロー値を増加または前記単位増加値を減少または前記単位減少値を増加することによって、前記相応するマスタ知能素子のリクエストフローを抑制することを特徴とする請求項６に記載のシステムオンチップ。
【請求項８】
前記ローカル制御信号は、前記動作環境が変化する場合に提供されるスチール値をさらに含み、
前記第２カウンタは、前記スチール値ほど前記クレジット値を減少することを特徴とする請求項５に記載のシステムオンチップ。
【請求項９】
前記サービス制御器の少なくとも一つは、
前記制御ブロックからの制限信号に応答して前記相応するマスタ知能素子と前記相互接続装置との間のリクエストフローを遮断する制限器をさらに含むことを特徴とする請求項４に記載のシステムオンチップ。
【請求項１０】
前記制御ブロックは、
前記クレジット値が承認値より小さい時に前記制限信号を活性化し、前記動作環境の変化に基づいて前記承認値を変化させることによって前記相応するマスタ知能素子のリクエストフローを制御することを特徴とする請求項９に記載のシステムオンチップ。
【請求項１１】
前記制限器は、前記制限信号に応答して同期制限信号を発生する同期化器と、
前記同期制限信号及び前記相応するマスタ知能素子からのバリッド信号を論理演算してマスクバリッド信号を出力する第１論理ゲートと、
前記同期制限信号及び前記相互接続装置からのレディ信号を論理演算してマスクレディ信号を出力する第２論理ゲートを含むことを特徴とする請求項９に記載のシステムオンチップ。
【請求項１２】
前記制御ブロックは、
前記クレジット値の範囲を分割して複数の動作モードを設定し、前記動作モードに応じて前記ローカル制御信号の値を互いに異なるように設定して前記相応するマスタ知能素子のリクエストフローを制御することを特徴とする請求項４に記載のシステムオンチップ。
【請求項１３】
前記動作モードは、
前記クレジット値が上位境界値より大きなプロモーションモードと、
前記クレジット値が前記上位境界値より小さく、下位境界値より大きなデフォルトモードと、
前記クレジット値が前記下位境界値より小さなディモーションモードを含むことを特徴とする請求項１２に記載のシステムオンチップ。
【請求項１４】
前記制御ブロックは、
前記相応するマスタ知能素子に対して前記デフォルトモードより前記プロモーションモードにおいてより大きな帯域幅が許容され、前記ディモーションモードより前記デフォルトモードにおいてより大きな帯域幅が許容されるように前記動作モードに基づいて前記ローカル制御信号の値を設定することを特徴とする請求項１３に記載のシステムオンチップ。
【請求項１５】
前記スレーブ知能素子は、
前記相互接続装置を経由して前記マスタ知能素子から伝達された複数のリクエストを保存するリクエストキューと、
前記保存されたリクエストのそれぞれの優先順位に基づいて前記保存されたリクエストに対するサービス順序を決定するスケジューラと、を含むことを特徴とする請求項１に記載のシステムオンチップ。
【請求項１６】
前記マスタ知能素子は少なくとも一つのリアルタイム知能素子を含み、
前記リアルタイム知能素子に相応する前記サービス制御器は緊急なサービスが要求されることを表わす緊急信号を発生することを特徴とする請求項１５に記載のシステムオンチップ。
【請求項１７】
前記スレーブ知能素子のスケジューラは前記緊急信号応答して前記リクエストキューに保存されたリクエストのうちから前記リアルタイム知能素子から発生されたリクエストの優先順位を増加させることを特徴とする請求項１６に記載のシステムオンチップ。
【請求項１８】
前記リアルタイム知能素子に相応する前記サービス制御器と前記スレーブ知能素子との間にポイントツーポイント（ｐｏｉｎｔ−ｔｏ−ｐｏｉｎｔ）で接続された転送ラインをさらに含み、
前記緊急信号は、前記転送ラインを通じて前記リアルタイム知能素子に相応する前記サービス制御器から前記スレーブ知能素子で直接転送されることを特徴とする請求項１６に記載のシステムオンチップ。
【請求項１９】
前記マスタ知能素子は少なくとも一つのベストエフォート知能素子を含み、
前記スレーブ知能素子は前記動作環境の変化に基づいて外部制限信号を発生し、
前記ベストエフォート知能素子に相応する前記サービス制御器は前記外部制限信号に応答して前記ベストエフォート知能素子と前記相互接続装置との間のリクエストフローを遮断することを特徴とする請求項１５に記載のシステムオンチップ。
【請求項２０】
前記スレーブ知能素子は、基準個数より多いリクエストが前記リクエストキューに保存されてサービス待機中の場合、前記外部制限信号を活性化することを特徴とする請求項１９に記載のシステムオンチップ。
【請求項２１】
前記マスタ知能素子は、少なくとも一つのリアルタイム知能素子をさらに含み、
前記スレーブ知能素子は、前記リアルタイム知能素子に対して緊急なサービスが要求されることを表わす緊急信号に応答して前記外部制限信号を活性化することを特徴とする請求項１９に記載のシステムオンチップ。
【請求項２２】
前記リアルタイム知能素子はディスプレイコントローラを含み、
前記ベストエフォート知能素子は、プロセッサを含むことを特徴とする請求項２１に記載のシステムオンチップ。
【請求項２３】
前記ベストエフォート知能素子に相応する前記サービス制御器と前記スレーブ知能素子との間にポイントツーポイントに接続された転送ラインをさらに含み、
前記外部制限信号は前記転送ラインを通じて前記スレーブ知能素子から前記ベストエフォート知能素子に相応する前記サービス制御器で直接転送されることを特徴とする請求項１９に記載のシステムオンチップ。
【請求項２４】
少なくとも一つのスレーブ知能素子及び前記スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する複数のマスタ知能素子が相互接続装置に接続されたシステムオンチップの制御方法であって、
前記スレーブ知能素子及び前記マスタ知能素子のうち、少なくとも一つの状態を表わす少なくとも一つの状態信号を発生する段階と、
前記状態信号に基づいて前記システムオンチップの動作環境の変化を表わすグローバル制御信号を発生する段階と、
前記グローバル制御信号に基づいて適応的に前記マスタ知能素子のリクエストフローを制御する段階と、を含むことを特徴とするシステムオンチップの制御方法。
【請求項２５】
スレーブ知能素子にサービスを要求するためのリクエストを発生するマスタ知能素子のリクエストフローを制御するためのサービス制御器であって、
前記マスタ知能素子のサービス要求レベルをリアルタイムで検出して前記サービス要求レベルを現わすクレジット値を出力するモニタと、
動作環境の変化に基づいて前記モニタを制御するためのローカル制御信号を発生し、前記クレジット値に基づいて前記マスタ知能素子からのリクエストに対する優先順位情報を発生する制御ブロックと、を含むことを特徴とするサービス制御器。
【請求項２６】
スレーブ装置と、
前記スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する第１マスタ装置及び第２マスタ装置と、
システムオンチップの動作条件が非正常状態にあるのかどうかを検出するためのセンサと、
前記非正常状態が検出される場合、前記第１及び第２マスタ装置のうち一つからのリクエストの優先順位を増加し、他の一つからのリクエストの優先順位を減少させるサービス制御器と、
それぞれのチャネルを通じて前記スレーブ装置及び前記マスタ装置に接続され、前記相応する優先順位に基づいてリクエストの仲裁動作を実行する相互接続装置と、を含むことを特徴とするシステムオンチップ。
【請求項２７】
前記動作条件は、前記スレーブ装置の温度であり、前記非正常状態は前記スレーブ装置の温度が基準温度を超過する状態であることを特徴とする請求項２６に記載のシステムオンチップ。
【請求項２８】
前記動作条件は、前記スレーブ装置と前記マスタ装置のうちの一つとの間のデータ交換のレイテンシであり、前記非正常状態は、前記レイテンシが基準時間より大きい状態であることを特徴とする請求項２６に記載のシステムオンチップ。
【請求項２９】
前記動作条件は、前記マスタ装置のうちの一つに含まれたデータバッファのデータバッファ率であり、前記非正常状態は、前記データバッファ率が基準率より小さい状態であることを特徴とする請求項２６に記載のシステムオンチップ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は半導体集積回路に係り、より詳細には複数のマスタ知能素子のサービス品質向上のための適応的サービス制御器、システムオンチップ及びシステムオンチップの制御方法に関する。
【背景技術】
【０００２】
システムオンチップ（ＳＯＣ：ｓｙｓｔｅｍ  ｏｎ  ｃｈｉｐ）とは、様々な半導体部品が一つに集積された一つのチップまたはそのチップに集積されたシステムをいう。  最近の市場動向は、既存の注文型半導体（ＡＳＩＣ：ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）と特定用途標準製品（ＡＳＳＰ：ａｐｐｌｉｃａｔｉｏｎ  ｓｐｅｃｉｆｉｃ  ｓｔａｎｄａｒｄ  ｐｒｏｄｕｃｔ）の需要が次第にシステムオンチップに転換していく傾向である。また、電子機器の軽薄短小化及び高機能化傾向もシステムオンチップ産業を促進させる要因となっている。
【０００３】
システムオンチップの集積度向上につれ、より多くの部品が一つのチップに集積されているが、システムオンチップの動作速度は十分に高速化されていない。制限された動作速度によって多様なマスタ知能素子のサービス要求水準を満たすのには困難がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−３５５４３５号公報
【特許文献２】米国特許出願公開第２００７／００３８７９２号明細書
【特許文献３】米国特許７，１９４，５６１号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記のような問題点を解決するための本発明の目的は、動作環境の変化に応じて適応的にリクエストフローを制御できるサービス制御器及びそれを含むシステムオンチップを提供することにある。
【０００６】
本発明の他の目的は、動作環境の変化に応じて適応的にリクエストフローを制御できるシステムオンチップの制御方法を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の実施形態に係るシステムオンチップは、少なくとも一つのスレーブ知能素子と、前記スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する複数のマスタ知能素子と、それぞれのチャネルを通じて前記スレーブ知能素子及び前記マスタ知能素子に接続され、前記リクエストの仲裁動作を実行する相互接続装置と、システムオンチップの動作環境の変化により適応的に前記マスタ知能素子のリクエストフローを制御する複数のサービス制御器とを含む。
【０００８】
前記システムオンチップは、少なくとも一つの状態信号に基づいて前記動作環境の変化を表わすグローバル制御信号を発生するグローバル制御器をさらに含むことができる。前記サービス制御器は前記グローバル制御信号に基づいてそれぞれのリクエストフローを制御することができる。
【０００９】
前記スレーブ知能素子は、メモリコントローラを含み、前記マスタ知能素子はモデム及びディスプレイコントローラを含むことができる。前記状態信号は、前記メモリコントローラの動作温度が基準温度より大きい時に活性化される第１状態信号と、前記モデムが基準時間以上前記スレーブ知能素子からサービスの提供を受けなかった時に活性化される第２状態信号、及び前記ディスプレイコントローラのデータバッファに保存されたデータの保存率が基準率より小さい時に活性化される第３状態信号のうち、少なくとも一つを含むことができる。
【００１０】
前記サービス制御器のそれぞれは、前記相応するマスタ知能素子のサービス要求レベルをリアルタイムで検出して前記サービス要求レベルを表わすクレジット値を出力するモニタと、前記動作環境の変化に基づいて前記モニタを制御するためのローカル制御信号を発生し、前記クレジット値に基づいて前記相応するマスタ知能素子からのリクエストに対する優先順位情報を発生する制御ブロックとを含むことができる。
【００１１】
前記ローカル制御信号は、前記動作環境の変化に応じて決定されるオーバーフロー値、単位増加値及び単位減少値を含むことができる。前記モニタは、前記オーバーフロー値に相応する周期で活性化される第１イベント信号を発生する第１カウンタと、前記相応するマスタ知能素子と前記相互接続装置との間のチャネル信号に基づいて前記相応するマスタ知能素子でサービスが提供されるたびに活性化される第２イベント信号を発生するサービス検出器と、前記第１イベント信号が活性化されるたびに前記単位増加値だけ前記クレジット値を増加し、前記第２イベント信号が活性化されるたびに前記単位減少値だけ前記クレジット値を減少する第２カウンタとを含むことができる。
【００１２】
前記制御ブロックは、前記動作環境の変化に基づいて前記オーバーフロー値、前記単位増加値及び前記単位減少値のうち、少なくとも一つを変化させることによって前記相応するマスタ知能素子のリクエストフローを制御することができる。
前記制御ブロックは、前記オーバーフロー値を減少または前記単位増加値を増加または前記単位減少値を減少することによって前記相応するマスタ知能素子のリクエストフローを促進し、前記オーバーフロー値を増加または前記単位増加値を減少または前記単位減少値を増加することによって前記相応するマスタ知能素子のリクエストフローを抑制することができる。
【００１３】
前記ローカル制御信号は前記動作環境が変化する場合に提供されるスチール値をさらに含むことができる。前記第２カウンタは前記スチール値だけ前記クレジット値を減少することができる。
前記サービス制御器の少なくとも一つは、前記制御ブロックからの制限信号に応答して前記相応するマスタ知能素子と前記相互接続装置との間のリクエストフローを遮断する制限器をさらに含むことができる。
【００１４】
前記制御ブロックは、前記クレジット値が承認値より小さい時に前記制限信号を活性化し、前記動作環境の変化に基づいて前記承認値を変化させることによって前記相応するマスタ知能素子のリクエストフローを制御することができる。
前記制限器は、前記制限信号に応答して同期制限信号を発生する同期化器と、前記同期制限信号及び前記相応するマスタ知能素子からのバリッド信号を論理演算してマスクバリッド信号を出力する第１論理ゲートと、前記同期制限信号及び前記相互接続装置からのレディ信号を論理演算してマスクレディ信号を出力する第２論理ゲートと、を含むことができる。
【００１５】
前記制御ブロックは、前記クレジット値の範囲を分割して複数の動作モードを設定し、前記動作モードに応じて前記ローカル制御信号の値を互いに異なるように設定して前記相応するマスタ知能素子のリクエストフローを制御することができる。
前記動作モードは、前記クレジット値が上位境界値より大きなプロモーションモードと、前記クレジット値が前記上位境界値より小さくて下位境界値より大きなデフォルトモードと、前記クレジット値が前記下位境界値より小さなディモーションモードとを含むことができる。
【００１６】
前記制御ブロックは、前記相応するマスタ知能素子に対して前記デフォルトモードより前記プロモーションモードでより大きな帯域幅が許容され、前記ディモーションモードより前記デフォルトモードでより大きな帯域幅が許容されるように前記動作モードに基づいて前記ローカル制御信号の値を設定することができる。
前記スレーブ知能素子は、前記相互接続装置を経由して前記マスタ知能素子から伝達された複数のリクエストを保存するリクエストキューと、前記保存されたリクエストのそれぞれの優先順位に基づいて前記保存されたリクエストに対するサービス順を決定するスケジューラとを含むことができる。
【００１７】
前記マスタ知能素子は少なくとも一つのリアルタイム知能素子を含み、前記リアルタイム知能素子に相応する前記サービス制御器は緊急サービスが要求されることを現わす緊急信号を発生することができる。
前記スレーブ知能素子のスケジューラは、前記緊急信号に応答して前記リクエストキューに保存されたリクエストのうちで前記リアルタイム知能素子から発生したリクエストの優先順位を増加させることができる。
【００１８】
前記システムオンチップは、前記リアルタイム知能素子に相応する前記サービス制御器と前記スレーブ知能素子との間にポイント・ツー・ポイント（ｐｏｉｎｔ−ｔｏ−ｐｏｉｎｔ）に接続された転送ラインをさらに含むことができる。前記緊急信号は、前記転送ラインを通じて前記リアルタイム知能素子に相応する前記サービス制御器から前記スレーブ知能素子に直接転送されることができる。
【００１９】
前記マスタ知能素子は少なくとも一つのベストエフォート知能素子を含み、前記スレーブ知能素子は前記動作環境の変化に基づいて外部制限信号を発生し、前記ベストエフォート知能素子に相応する前記サービス制御器は、前記外部制限信号に応答して前記ベストエフォート知能素子と前記相互接続装置との間のリクエストフローを遮断することができる。
前記スレーブ知能素子は基準個数より多いリクエストが前記リクエストキューに保存されてサービス待機中の場合、前記外部制限信号を活性化できる。
【００２０】
前記マスタ知能素子は少なくとも一つのリアルタイム知能素子をさらに含み、前記スレーブ知能素子は前記リアルタイム知能素子に対して緊急サービスが要求されることを現わす緊急信号に応答して前記外部制限信号を活性化できる。
前記リアルタイム知能素子は、ディスプレイコントローラを含み、前記ベストエフォート知能素子はプロセッサを含むことができる。
前記システムオンチップは前記ベストエフォート知能素子に相応する前記サービス制御器と前記スレーブ知能素子との間にポイントツーポイントに接続された転送ラインをさらに含むことができる。前記外部制限信号は前記転送ラインを通じて前記スレーブ知能素子から前記ベストエフォート知能素子に相応する前記サービス制御器で直接転送できる。
【００２１】
前記目的を達成するために本発明の実施形態によって少なくとも一つのスレーブ知能素子及び前記スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する複数のマスタ知能素子が相互接続装置に接続されたシステムオンチップの制御方法が提供される。前記方法は前記スレーブ知能素子及び前記マスタ知能素子のうち、少なくとも一つの状態を表わす少なくとも一つの状態信号を発生する段階と、前記状態信号に基づいて前記システムオンチップの動作環境の変化を表わすグローバル制御信号を発生する段階と、前記グローバル制御信号に基づいて適応的に前記マスタ知能素子のリクエストフローを制御する段階とを含む。
【００２２】
前記目的を達成するために本発明の実施形態によってスレーブ知能素子にサービスを要求するためのリクエストを発生するマスタ知能素子のリクエストフローを制御するためのサービス制御器が提供される。
前記サービス制御器は、前記マスタ知能素子のサービス要求レベルをリアルタイムで検出して前記サービス要求レベルを現わすクレジット値を出力するモニタと、動作環境の変化に基づいて前記モニタを制御するためのローカル制御信号を発生し、前記クレジット値に基づいて前記マスタ知能素子からのリクエストに対する優先順位情報を発生する制御ブロックとを含む。
【００２３】
前記目的を達成するために本発明の実施形態に係るシステムオンチップは、スレーブ装置と、前記スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する第１マスタ装置及び第２マスタ装置と、システムオンチップの動作条件が非正常状態にあるかどうかを検出するためのセンサと、前記非正常状態が検出される場合、前記第１及び第２マスタ装置のうち、一方からのリクエストの優先順位を増加し、他方からのリクエストの優先順位を減少させるサービス制御器と、それぞれのチャネルを通じて前記スレーブ装置及び前記マスタ装置に接続され、前記相応する優先順位に基づいてリクエストの仲裁動作を実行する相互接続装置とを含む。
【００２４】
一実施形態において、前記動作条件は前記スレーブ装置の温度であり、前記非正常状態は前記スレーブ装置の温度が基準温度を超過する状態であってもよい。
一実施形態において、前記動作条件は前記スレーブ装置と前記マスタ装置のうちの一つの間のデータ交換のレイテンシであり、前記非正常状態は前記レイテンシが基準時間より大きい状態であってもよい。
一実施形態において、前記動作条件は前記マスタ装置のうちの一つに含まれたデータバッファのデータバッファ率であり、前記非正常状態は前記データバッファ率が基準率より小さい状態であってもよい。
【発明の効果】
【００２５】
本発明の実施形態に係るシステムオンチップ及びシステムオンチップの制御方法は、動作環境の変化に応じて適応的にマスタ知能素子のリクエストフローを制御することで、サービス品質（ＱＯＳ：ｑｕａｌｉｔｙ  ｏｆ  ｓｅｒｖｉｃｅ）を向上させることができる。
【００２６】
本発明の実施形態に係るシステムオンチップ及びシステムオンチップの制御方法は、それぞれのマスタ知能素子に割り当てられた複数のサービス制御器を利用してリクエストフローの制御条件をマスタ知能素子ごとに独立的に設定することができるので動作環境の変化による複雑なシナリオを容易に具現することができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施形態に係るシステムを示すブロック図。
【図２】本発明の実施形態に係るシステムの制御方法を示すフローチャート。
【図３】本発明の実施形態に係るサービス制御器を示すブロック図。
【図４】マスタ知能素子のサービス要求レベルの検出方法の一例を説明するための図。
【図５】図３のサービス制御器に含まれるモニタの一実施形態を示すブロック図。
【図６】本発明の一実施形態に係るクレジット値に基づいたリクエストフローの制御方法を説明するための図。
【図７】図５のモニタの動作の一例を説明するための図。
【図８】本発明の実施形態に係るシステムによって遂行されるトランザクションの一例を示す図。
【図９】図３のサービスコントローラに含まれる制限器を示すブロック図。
【図１０】図３のサービスコントローラに含まれる制限器の一例を示す回路図。
【図１１】図１０の制限器の動作を示すタイミング図。
【図１２】図３のサービスコントローラに含まれる制限器の他の例を示す回路図。
【図１３】図１２の制限器の動作を示すタイミング図。
【図１４】本発明の一実施形態に係るシステムオンチップの制御方法を示す図。
【図１５】本発明の一実施形態に係るクレジット値に基づいたリクエストフローの制御方法を説明するための図。
【図１６】図１５の方法による図５のモニタの動作の一例を説明するための図。
【図１７】本発明の実施形態に係るシステムを示すブロック図。
【図１８】図１７のシステムに含まれたサービス制御器の一例を示すブロック図。
【図１９】本発明の一実施形態に係るクレジット値に基づいたリクエストフローの制御方法を説明するための図。
【図２０】本発明の一実施形態に係る緊急信号の発生方法を示す図。
【図２１】図１７のシステムに含まれたサービス制御器の一例を示すブロック図。
【図２２】図１７のシステムに含まれたスレーブ知能素子の一例を示す図。
【図２３】図２２のスレーブ知能素子内に保存されるリクエストの構造及び緊急信号の一例を示す図。
【図２４】本発明の実施形態に係るシステムオンチップを電子機器に応用した例を示すブロック図。
【図２５】図２４の電子機器で使われるインターフェースの一例を示すブロック図。
【発明を実施するための形態】
【００２８】
本明細書に開示されている本発明の実施形態に対して、特定の構造的、機能的説明は、単に本発明の実施形態を説明するための目的で例示されたものであり、本発明の実施形態は多様な形態で実施することができ、本発明は、本明細書に説明された実施形態に限定されるものではない。
本発明は多様な変更を加えることができ、種々の形態を有することができるが、特定の実施形態を図面に例示して本明細書に詳細に説明する。しかし、これは本発明を特定の開示形態に限定しようとするものではなく、本発明の思想、及び技術範囲に含まれるすべての変更、均等物、代替物を含むと理解すべきである。
【００２９】
本明細書において、第１、第２等の用語は多様な構成要素を説明するのに使用されているが、これらの構成要素がこのような用語によって限定されるものではない。これらの用語は１つの構成要素を他の構成要素から区別する目的で使われ、例えば、本発明の権利範囲から逸脱しなければ第１構成要素は第２構成要素と命名することができ、同様に第２構成要素も第１構成要素と命名することができる。
【００３０】
ある構成要素が他の構成要素に「接続されて」いる、または「接続されて」いると言及されている場合には、その他の構成要素に直接的に接続されていたり、接続されていることも意味するが、中間に他の構成要素が存在する場合も含む。一方、ある構成要素が他の構成要素に「直接接続されて」いる、または「直接接続されて」いると言及されている場合には、中間に他の構成要素は存在しない。構成要素の間の関係を説明する他の表現、すなわち「〜間に」と「直接〜間に」または「〜に隣接する」と「〜に直接隣接する」等も同様である。
【００３１】
本明細書で使用した用語は、単に特定の実施形態を説明するために使用したものであり、本発明を限定するものではない。単数の表現は文脈上明白に異なるように意味しない限り、複数の表現を含む。また、本明細書で、「含む」又は「有する」等の用語は、明細書上に記載された特徴、数字、段階、動作、構成要素、部品又は、これを組み合わせたものが存在するということを示すものであって、１つ又はそれ以上の他の特徴や数字、段階、動作、構成要素、部品又は、これを組み合わせたものなどの存在又は、付加の可能性を、予め排除するものではない。
【００３２】
また、別に定義しない限り、技術的あるいは科学的用語を含み、本明細書中において使用される全ての用語は、本発明が属する技術分野で通常の知識を有する者が、一般的に理解するのと同一の意味を有する。一般的に使用される辞書において定義される用語と同じ用語は、関連技術の文脈上で有する意味と一致する意味を有すると理解するべきで、本明細書において明白に定義しない限り、理想的あるいは形式的な意味として解釈してはならない。
【００３３】
以下、図面を参照して、本発明の望ましい実施の形態の具体例を詳細に説明する。図面中の同一構成要素については同一参照符号を使用し、同一構成要素についての重複した説明は省略する。
図１は本発明の実施形態に係るシステムを示すブロック図である。以下言及するシステムは、色々な半導体部品が一つのチップに集積されたシステムオンチップ（ＳＯＣ）を含むことができる。
【００３４】
図１を参照すると、システム１０００はスレーブ（ｓｌａｖｅ)知能素子（ＩＰ：ｉｎｔｅｌｌｅｃｔｕａｌ  ｐｒｏｐｅｒｔｙ）（ＳＬＶ１、ＳＬＶ２）３０１、３０２、マスタ（ｍａｓｔｅｒ)知能素子（ＭＳＴ１、ＭＳＴ２、ＭＳＴ３）１０１、１０２、１０３、サービス制御器（ｓｅｒｖｉｃｅ  ｃｏｎｔｒｏｌｌｅｒ）（ＱＣ１、ＱＣ２、ＱＣ３)５０１、５０２、５０３及び相互接続装置（ｉｎｔｅｒｃｏｎｎｅｃｔ  ｄｅｖｉｃｅ）１０を含む。実施形態に従って、システム１０００は、グローバル制御器（ｇｌｏｂａｌ  ｃｏｎｔｒｏｌｌｅｒ）３０をさらに含むことができる。
【００３５】
マスタ知能素子１０１、１０２、１０３及びスレーブ知能素子３０１、３０２は、それぞれ装置（ｄｅｖｉｃｅ)と称することもでき、ＩＰコアまたはＩＰブロックと称することができる。実施形態によって、マスタ知能素子１０１、１０２、１０３及びスレーブ知能素子３０１、３０２のそれぞれはロジック単位、セルまたはチップの一部とすることができる。
複数のマスタ知能素子１０１、１０２、１０３は、少なくとも一つのスレーブ知能素子３０１、３０２にサービスを要求するためのリクエストをそれぞれ発生する。少なくとも一つの知能素子３０１、３０２は、複数のマスタ知能素子１０１、１０２、１０３の共有資源（ｃｏｍｍｏｎ  ｒｅｓｏｕｒｃｅ）として利用できる。
【００３６】
相互接続装置１０はそれぞれのチャネルを通じてスレーブ知能素子３０１、３０２及びマスタ知能素子１０１、１０２、１０３に接続される。一つの知能素子と相互接続装置１０との間には一つのチャネルを具現することもでき、複数のチャネルを具現することもできる。例えば、スレーブ知能素子３０１、３０２がメモリコントローラを含む場合には、一つの知能素子と相互接続装置１０との間にはリードチャネルとライトチャネルとがそれぞれ具現できる。相互接続装置１０はマスタ知能素子１０１、１０２、１０３からのリクエストの仲裁動作を実行する。仲裁動作の一例として、相互接続装置１０が同じスレーブ素子によるサービスに対して二つのマスタ知能素子から二つのリクエストを受信した時、相互接続装置１０は前記スレーブ知能素子によって二つのうち、いずれのリクエストが先に実行されるべきであるかを決定できる。相互接続装置１０は前記仲裁動作のために少なくとも一つの仲裁器（ａｒｂｉｔｅｒ)を含むことができる。
【００３７】
複数のサービス制御器５０１、５０２、５０３は、システム１０００の動作環境の変化により適応的にマスタ知能素子１０１、１０２、１０３のリクエストフローを制御する。前記動作環境の変化は動作条件変化または動作状態変化と称することもできる。システム１０００は、システム１０００またはその構成要素（例えば、一つのスレーブ知能素子）が異常な状態（例えば、動作温度、データバッファ率レイテンシなどが予め決定されたしきい範囲を抜け出した状態）にあるかどうかを決めるための一つ以上のセンサを含むことができる。
【００３８】
前記動作環境の変化は、一つ以上の状態信号ＳＴ１、ＳＴ２、ＳＴ３を利用して提供できる。例えば、第２スレーブ知能素子３０２は、メモリコントローラであることができ、第２マスタ知能素子１０２はモデムであり、第３マスタ知能素子１０３はディスプレイコントローラであることができる。
【００３９】
メモリコントローラ３０２は動作温度が基準温度より大きい時に活性化される第１状態信号ＳＴ１を発生する可能性がある。メモリコントローラ３０２は、動作温度の検出のための温度センサを含むことができる。一般的に、メモリコントローラ３０２は動作温度が一定水準以上上昇する場合には動作の信頼性を保障するために動作速度を減少させるように設計される。メモリコントローラ３０２の動作速度が減少する場合にはメモリコントローラ３０２を共有資源として利用するマスタ知能素子のリクエストフローを全体的に抑制（ｄｅｍｏｔｅ)又は遮断しながらリアルタイム知能素子の帯域幅が保障できるシナリオが要求される。一実施形態において、メモリコントローラ３０２の速度が正常速度での復元以後に実行されるように抑制されたリクエストは、減少された優先順位を有することができる。例えば、一部のリクエストは減少した優先順位を有し、一定のしきい値を越える優先順位を有するリクエストのみがメモリコントローラ３０２により実行できる。
【００４０】
モデム１０２は基準時間以上のスレーブ知能素子３０２からサービスの提供を受けなかった時、活性化される第２状態信号ＳＴ２を発生する可能性がある。一般的に、モデム１０２は外部装置との通信規約の制限によって一定時間以内にサービスを提供することができなければ、既に発行されたリクエストが無効化される。例えば、スレーブ知能素子３０２によるサービスはモデム１０２から受信されたリクエストに応答してスレーブ知能素子３０２からモデム１０２にデータを転送することを含むことができる。動作環境が変化してモデム１０２に対するサービスが深刻に遅延する場合、モデム１０２が一定のレイテンシを保障できるように他のマスタ知能素子のリクエストフローを抑制または遮断するシナリオが要求される。
【００４１】
ディスプレイコントローラ１０３は、内部のデータバッファに保存されたデータの保存率が基準率より小さい時に活性化される第３状態信号ＳＴ３を発生できる。ディスプレイコントローラ１０３は、ディスプレイデータを規則的に要求するリアルタイム知能素子に該当する。ディスプレイデータが適切に（ｉｎ  ｔｉｍｅ）サービスできなければ使用者はそれを製品の性能不良として直接認識することになる。この場合、ディスプレイコントローラ１０３が一定の帯域幅の保障を受けるように他のマスタ知能素子のリクエストフローを抑制するシナリオが要求される。
上述したシナリオは、システム１０００の動作特性、使用者の選択などによって多様に決定できる。本発明の実施形態に係る動作環境の変換に基づいたシナリオの例は図１４を参照して後述する。
【００４２】
一実施形態において、図１に示したように、システム１０００は一つ以上の状態信号ＳＴ１、ＳＴ２、ＳＴ３に基づいて前記動作環境の変化を現わすグローバル制御信号ＧＣＯＮを発生するグローバル制御器３０をさらに含むことができる。この場合、サービス制御器５０１、５０２、５０３は、グローバル制御信号ＧＣＯＮに基づいてそれぞれのリクエストフローを制御することができる。
【００４３】
他の実施形態において、グローバル制御器３０は省略でき、状態信号ＳＴ１、ＳＴ２、ＳＴ３はサービス制御器５０１、５０２、５０３に直接提供できる。この場合、サービス制御器５０１、５０２、５０３は、それぞれの状態信号ＳＴ１、ＳＴ２、ＳＴ３またはその組合せに基づいてそれぞれのリクエストフローを制御することができる。
図１に示したマスタ知能素子及びスレーブ知能素子の個数は、多様に変更することができる。マスタ知能素子の動作特性に応じて、サービス制御器は互いに異なる構成を有することができ、一部のサービス制御器は省略することもできる。
【００４４】
図２は本発明の実施形態に係るシステム制御方法を示すフローチャートである。
図２には少なくとも一つのスレーブ知能素子及び前記スレーブ知能素子にサービスを要求するためのリクエストをそれぞれ発生する複数のマスタ知能素子が相互接続装置に接続されたシステムの制御方法が示されている。
【００４５】
図１及び図２を参照すると、スレーブ知能素子３０１、３０２及びマスタ知能素子１０１、１０２、１０３のうち、少なくとも一つは自身の状態を示す一つ以上の状態信号ＳＴ１、ＳＴ２、ＳＴ３を発生する（ステップＳ１００）。グローバル制御器３０は、状態信号ＳＴ１、ＳＴ２、ＳＴ３に基づいてシステム１０００の動作環境の変化を表わすグローバル制御信号ＧＣＯＮを発生する（ステップＳ３００）。サービス制御器５０１、５０２、５０３は、グローバル制御信号ＧＣＯＮに基づいて適応的にマスタ知能素子１０１、１０２、１０３のリクエストフローを制御する（ステップＳ５００）。
【００４６】
以下、図３〜図２３を参照して図１のシステム及び図２のシステムの制御方法の多様な実施形態を説明する。図３〜図２３には実施形態の説明に必要な構成要素のみが図示され、重複する説明は省略される。
【００４７】
図３は本発明の実施形態に係るサービス制御器を示すブロック図である。
図３には一つのマスタ知能素子１００に相応する一つのサービス制御器５００ａが示されている。図１の複数のサービス制御器５０１、５０２、５０３はそれぞれ図３と同じ構成とすることができる。図３に示したように、サービス制御器５００ａは相応するマスタ知能素子１００と相互接続装置１０との間のチャネルに結合することができる。他の実施形態において、サービス制御器５００ａはマスタ知能素子１００の一部としてマスタ知能素子１００の内部に含ませることもできる。
【００４８】
図３を参照すると、サービス制御器５００ａは制限器５１０、モニタ５２０及び制御ブロック５３０を含んで具現できる。
モニタ５２０は、相応するマスタ知能素子１００のサービス要求レベル（ｓｅｒｖｉｃｅ  ｒｅｑｕｉｒｅｍｅｎｔ  ｌｅｖｅｌ）をリアルタイムで検出して前記サービス要求レベルを現わすクレジット値ＣＲＤを出力する。
【００４９】
前記サービス要求レベルは、帯域幅、アウトスタンディングカウント値、及び／または、平均レイテンシとして検出することができる。帯域幅は一定の時間に（例えば、マスタ知能素子に）転送されるかまたはサービスされるデータの量を表わす。後述の通り、クレジット値ＣＲＤは帯域幅に相応する。アウトスタンディングカウント値はマスタ知能素子から既に発行されたが（ｉｓｓｕｅｄ)、未だ完了していないリクエストの個数である。レイテンシはマスタ知能素子がスレーブ知能素子に対してサービスを要請した時点から前記要請したサービスが完了する時点までの時間間隔を示す。図３のモニタ５２０はクレジット値ＣＲＤのみならず、帯域幅、アウトスタンディングカウント値及び平均レイテンシのうち、少なくとも一つをさらに提供するように具現できる。
【００５０】
制御ブロック５３０はシステムの動作環境の変化に基づいてモニタ５２０を制御するためのローカル制御信号ＬＣＯＮを発生する。前記動作環境の変化は図１を参照して説明した通りグローバル制御信号ＧＣＯＮとして提供することもでき、状態信号ＳＴ１、ＳＴ２、ＳＴ３として提供することもできる。また、制御ブロック５３０はクレジット値ＣＲＤに基づいて相応するマスタ知能素子１００からのリクエストに対する優先順位情報ＰＲＴを発生することができる。優先順位情報ＰＲＴは、相互接続装置１０に提供されて仲裁動作の基礎として利用できる。制御ブロック５３０の少なくとも一部は、保存された値及び入力される値に応答して予め決まったプロセスシークエンスを実行する構成を有する特殊技能レジスタ（ｓｐｅｃｉａｌ  ｆｕｎｃｔｉｏｎ  ｒｅｇｉｓｔｅｒ）として具現できる。
【００５１】
制限器５１０は制御ブロック５３０からの制限信号ＬＭＴに応答して相応するマスタ知能素子１００と相互接続装置１０との間のリクエストフローを遮断する。制限器５１０は相応するマスタ知能素子１００の動作特性によって省略できる。
図４はマスタ知能素子のサービス要求レベルの検出方法の一例を説明するための図である。
【００５２】
マスタ知能素子の動作特性によってマスタ知能素子のサービス要求レベル（ｒｅｑｕｉｒｅｍｅｎｔ  ｌｅｖｅｌ）は、帯域幅（ｂａｎｄ  ｗｉｄｔｈ)と表現できる。帯域幅は一定の時間に転送されたりサービスされるデータの量を表わす。例えば、ディスプレイコントローラのようなマスタ知能素子は、相互接続装置を通じて接続されたメモリコントローラのようなスレーブ知能素子からデータサービスを受けてデータバッファ（ｄａｔａ  ｂｕｆｆｅｒ）に保存し、保存したデータを消費しながら固有機能を実行することができる。
【００５３】
図４には前記マスタ知能素子に含まれるラインバッファのデータ占有状態を斜線で示す。データの占有状態はラインバッファポインタＬＢＰで表現できる。スレーブ知能素子からデータがサービスされると（ＤＡＴＡ  ＩＮ）、ラインバッファポインタＬＢＰ（ｌｉｎｅ  ｂｕｆｆｅｒ  ｐｏｉｎｔｅｒ）が、フル（ＦＵＬＬ）方向に増加し、マスタ知能素子がデータを消費すると（ＤＡＴＡ  ＯＵＴ）ラインバッファポインタＬＢＰが、エンプティ（ＥＭＰＴＹ）方向に減少する。
【００５４】
ラインバッファポインタＬＢＰが増加するほど低い優先順位（ｌｏｗ  ｐｒｉｏｒｉｔｙ）を付与し、ラインバッファポインタＬＢＰが減少するほど高い優先順位（ｈｉｇｈ  ｐｒｉｏｒｉｔｙ）を付与することができる。即ち、高い優先順位であるほど高い帯域幅が要求されることを示す。システムの全体的なシナリオ（ｓｃｅｎａｒｉｏ)に従がってラインバッファポインタＬＢＰと優先順位の関係が設定できる。例えば、ラインバッファポインタＬＢＰの範囲であるフル（ＦＵＬＬ）とエンプティ（ＥＭＰＴＹ）との間の領域を複数の領域に分割して各領域ごとに順次に優先順位を指定することができる。
【００５５】
図５は図３のサービス制御器に含まれるモニタの一実施形態を示すブロック図である。
図５を参照すると、モニタ５２０ａは、第１カウンタ（ＣＮＴ１）５２１、第２カウンタ（ＣＮＴ２）５２３及びサービス検出器（ＳＤＥＴ）５２５を含んで具現できる。
第１カウンタ５２１はオーバーフロー値ＯＶに相応する周期で活性化される第１イベント信号ＣＥＶを発生する。例えば、第１カウンタ５２１は、クロック信号ＣＬＫのサイクルをカウントし、第１イベント信号ＣＥＶはカウントされた値がオーバーフロー値ＯＶに到達するたびに活性化されるパルス信号とすることができる。クロック信号ＣＬＫは相応するマスタ知能素子１００の動作クロック信号とすることができる。
【００５６】
サービス検出器５２５は相応するマスタ知能素子１００と相互接続装置１０との間のチャネル信号ＣＨＮに基づいて相応するマスタ知能素子１００にサービスが提供される時（例えば、スレーブ知能素子からデータが受信される時）ごとに活性化される第２イベント信号ＳＥＶを発生する。
【００５７】
第２カウンタ５２３は第１イベント信号ＣＥＶが活性化されるたびに単位増加値ＩＮＣだけクレジット値ＣＲＤを増加させ、第２イベント信号ＳＥＶが活性化されるたびに単位減少値ＤＥＣだけクレジット値ＣＲＤを減少させる。また、第２カウンタ５２３は、制御ブロック５３０から提供されるスチール値ＳＴＬだけクレジット値ＣＲＤを減少させることができる。制御ブロック５３０は動作環境の変化が発生する場合にのみ、スチール値ＳＴＬを提供してクレジット値ＣＲＤを一度に減少させることができる。
このように、相応するマスタ知能素子１００の現在の帯域幅要求レベルをクレジット値ＣＲＤと表現できる。クレジット値ＣＲＤが増加するほど相対的に大きな帯域幅が要求され、クレジット値ＣＲＤが減少するほど相対的に小さい帯域幅が要求されるように構成することができる。
【００５８】
オーバーフロー値ＯＶ、単位増加値ＩＮＣ、単位減少値ＤＥＣ及びスチール値ＳＴＬを、制御ブロック５３０からのローカル制御信号ＬＣＯＮに含ませることができる。システムの全体的なシナリオに応じてオーバーフロー値ＯＶ、単位増加値ＩＮＣ、単位減少値ＤＥＣ及びスチール値ＳＴＬが決定できる。制御ブロック５３０は動作環境の変化に応じてオーバーフロー値ＯＶ、単位増加値ＩＮＣ、単位減少値ＤＥＣ及びスチール値ＳＴＬを変化させることができる。例えば、動作環境の変化にともなうオーバーフロー値ＯＶ、単位増加値ＩＮＣ、単位減少値ＤＥＣ及びスチール値ＳＴＬは、システム１０００の初期化過程で提供されて制御ブロック５３０に保存できる。マスタ知能素子１０１、１０２、１０３の動作特性を考慮して使用者が値をそれぞれのマスタ知能素子に対して決定できる。このようなマスタ知能素子別で分散した制御方式を通じてシステム１０００の複雑なシナリオを容易かつ効率的に実現することができる。
【００５９】
図６は本発明の一実施形態に係るクレジット値に基づいたリクエストフローの制御方法を説明するための図であり、図７は図５のモニタの動作の一例を説明するための図である。
図６及び図７を参照すると、第１イベント信号ＣＥＶが活性化されるたびにクレジット値ＣＲＤが最大値ＭＡＸ方向に増加し、第２イベント信号ＳＥＶが活性化されるたびにクレジット値ＣＲＤが最小値ＭＩＮ方向に減少する。第１イベント信号ＣＥＶの活性化周期は、目標帯域幅に相応し、第２イベント信号ＳＥＶの平均活性化周期は現在サービスされるリアルタイム帯域幅に相応する。図７に示したように、リアルタイム帯域幅が目標帯域幅より小さければクレジット値ＣＲＤが次第に増加し、リアルタイム帯域幅が目標帯域幅より大きければクレジット値ＣＲＤが次第に減少する。
【００６０】
図３に示した制御ブロック５３０は、クレジット値ＣＲＤが大きいほど高い優先順位を付与し、クレジット値ＣＲＤが小さいほど低い優先順位を付与することができる。一般的に相互接続装置１０は、高い優先順位を有するマスタ知能素子であるほどリクエストフローを促進し（ｐｒｏｍｏｔｅ）、低い優先順位を有するマスタ知能素子であるほどリクエストフローを抑制するように（ｄｅｍｏｔｅ）設計される。
【００６１】
制御ブロック５３０はシステム１０００の動作環境の変化に基づいてオーバーフロー値ＯＶ、単位増加値ＩＮＣ及び単位減少値ＤＥＣのうち、少なくとも一つを変化させることによって相応するマスタ知能素子１００のリクエストフローを制御することができる。例えば、制御ブロック５３０は、オーバーフロー値ＯＶを減少または単位増加値ＩＮＣを増加または単位減少値ＤＥＣを減少することによって相応するマスタ知能素子１００のリクエストフローを促進（ｐｒｏｍｏｔｅ）できる。また、制御ブロック５３０はオーバーフロー値ＯＶを増加または単位増加値ＩＮＣを減少または単位減少値ＤＥＣを増加することによって相応するマスタ知能素子１００のリクエストフローを抑制（ｄｅｍｏｔｅ）できる。
【００６２】
図３を参照して上述した通り、少なくとも一つのサービス制御器５００ａは制御ブロック５３０からの制限信号ＬＭＴに応答して相応するマスタ知能素子１００と相互接続装置１０との間のリクエストフローを遮断する制限器５１０をさらに含むことができる。制限器５１０の実施形態は図９〜図１３を参照して後述する。
サービス制御器５００ａが制限器５１０を含む場合、制御ブロック５３０はクレジット値ＣＲＤが承認値ＧＲＮより小さい時に活性化される制限信号ＬＭＴを発生する可能性がある。制御ブロック５３０はシステムの動作環境の変化に基づいて承認値ＧＲＮを変化させることによって相応するマスタ知能素子１００のリクエストフローを制御することができる。即ち、承認値ＧＲＮを大きく設定するほど相応するマスタ知能素子１００のリクエストフローをさらに抑制し、承認値ＧＲＮを小さく設定するほど相応するマスタ知能素子１００のリクエストフローをさらに促進できる。
【００６３】
図８は本発明の実施形態に係るシステムによって実行されるトランザクションの一例を示す図である。
図８には説明の便宜のためにＡＸＩ（ａｄｖａｎｃｅｄ  ｅｘｔｅｎｓｉｂｌｅ  ｉｎｔｅｒｆａｃｅ）プロトコルによる読み出しトランザクションの例が示されている。ＡＸＩプロトコルはバリッド信号ＡＲＶＡＬＩＤ、ＲＶＡＬＩＤ及びレディ信号ＡＲＲＥＡＤＹ、ＲＲＥＡＤＹを利用するハンドシェイク方式（ｈａｎｄｓｈａｋｅ  ｍｅｃｈａｎｉｓｍ）を採用している。
【００６４】
ハンドシェイク方式によると、マスタインターフェース及びスレーブインターフェースの一方側では信号転送時にバリッド信号を活性化し、他方側では受信準備ができた時にレディ信号を活性化する。マスタインターフェース及びスレーブインターフェースの両方ともにおいてグローバルクロック信号ＡＣＬＫの上昇エッジに同期して転送信号のサンプリングが実行される。従って、バリッド信号及び相応するレディ信号がグローバルクロック信号ＡＣＬＫの上昇エッジで全部活性化される時だけ有効な信号転送が成される。
【００６５】
図８に示したように、マスタインターフェースに相応するマスタ知能素子１００は信号転送時にリクエストバリッド信号ＡＲＶＡＬＩＤを活性化し、スレーブインターフェースに相応する相互接続装置１０は受信準備ができた時リクエストレディ信号ＡＲＲＥＡＤＹを活性化する。同様に相互接続装置１０は信号転送時サービスバリッド信号ＲＶＡＬＩＤを活性化し、マスタ知能素子１００は受信準備ができた時にサービスレディ信号ＲＲＥＡＤＹを活性化する。
【００６６】
図８にはグローバルクロック信号ＡＣＬＫの上昇エッジを表わす時点がＴ０〜Ｔ１３と表示されている。マスタインターフェース、例えば、マスタ知能素子１００は読み出しリクエスト信号ＡＲＡＤＤＲをスレーブインターフェース、例えば、相互接続装置１０に転送すると共にリクエスト要請信号に相応する読み出しバリッド信号ＡＲＶＡＬＩＤを活性化する。時間Ｔ２でバリッド信号ＡＲＶＡＬＩＤ及びレディ信号ＲＲＥＡＤＹが全部活性化して読み出しリクエスト信号ＡＲＡＤＤＲの転送が実際に実行される。しかし、マスタインターフェースの観点ではスレーブインターフェースのレディ信号ＲＲＥＡＤＹの活性化の有無に関係なく、即ち、実際の信号転送の成功可否と関係なく時間Ｔ１をサービス要請時点と決定できる。
【００６７】
前記読み出しリクエストに対する応答としてデータＤ（Ａ０）、Ｄ（Ａ１）、Ｄ（Ａ２）、Ｄ（Ａ３）がバースト転送方式によって相互接続装置１０からマスタ知能素子１００に転送される。相互接続装置１０は最後のデータＤ（Ａ３）の転送とともにサービス完了信号に相応するＲＬＡＳＴ信号を活性化し、時間Ｔ１３がサービス完了時点と決定される。
このように、図３のサービス制御器５００ａはマスタ知能素子１００と相互接続装置１０との間のチャネル信号ＣＨＮのうちからマスタ知能素子１００と相互接続装置１０との間のリクエスト信号ＡＲＶＡＬＩＤ、ＡＲＲＥＡＤＹに基づいてサービス要請時点、即ち、リクエストの発行時点及びサービス信号ＲＶＡＬＩＤ、ＲＲＥＡＤＹ、ＲＬＡＳＴに基づいてサービス完了時点を決定できる。
【００６８】
レイテンシＬＡＴはマスタ知能素子がスレーブ知能素子に対してサービスを要請した時点から前記要請したサービスが完了する時点までの時間間隔を表わし、例えば、レイテンシＬＡＴはクロック信号のサイクル回数などと表現できる。
【００６９】
図９は図３のサービスコントローラに含まれる制限器を示すブロック図である。
図９を参照すると、制限器（ｌｉｍｉｔｅｒ）５１０は同期化器（ｓｙｎｃｈｒｏｎｉｚｅｒ：ＳＹＮＣ）５１２及びマスク部（ｍａｓｋ  ｕｎｉｔ：ＭＡＳＫ）５１５を含むことができる。
【００７０】
同期化器５１２は制御ブロック５３０からの制限信号ＬＭＴに基づいて同期制限信号ＳＭＳＫ（ｓｙｎｃｈｒｏｎｉｚｅｄ  ｌｉｍｉｔ  ｓｉｇｎａｌ）を発生する。マスク部５１５は同期制限信号ＳＭＳＫに応答して相応するマスタ知能素子１００からのリクエストを遮断する。
同期化器５１２は、マスタ知能素子１００と相互接続装置１０との間のハンドシェイク方式の信号転送のエラーを防止するために制限信号ＬＭＴの遷移時点を制御する役割を実行する。
【００７１】
図１０は図３のサービスコントローラに含まれる制限器の一例を示す回路図である。
図１０を参照すると、制限器５１０ａは同期化器に該当するフリップフロップ（ＦＦ）５１２ａ及びマスク部５１５ａを含むことができる。
フリップフロップ５１２ａは制御ブロック５３０からの制限信号ＬＭＴ及び反転グローバルクロック信号ＡＣＬＫｂに基づいて同期制限信号ＳＭＳＫを発生する。フリップフロップ５１２ａは反転グローバルクロック信号ＡＣＬＫｂの上昇エッジに応答し制限信号ＬＭＴをサンプリングして同期制限信号ＳＭＳＫを発生する。反転グローバルクロック信号ＡＣＬＫｂの上昇エッジはグローバルクロック信号ＡＣＬＫの下降エッジに該当し、結果的に同期制限信号ＳＭＳＫの遷移時点はグローバルクロック信号ＡＣＬＫの下降エッジに同期化される。
【００７２】
マスク部５１５ａは同期制限信号ＳＭＳＫに応答して相応するマスタ知能素子１０からのリクエストを遮断する。マスク部５１５ａは第１論理ゲート５１６及び第２論理ゲート５１７を含むことができる。第１論理ゲート５１６は同期制限信号ＳＭＳＫ及び相応するマスタ知能素子１００からのバリッド信号ＶＡＬＩＤを論理演算してマスクバリッド信号（ｍａｓｋｅｄ  ｖａｌｉｄ）ＭＶＡＬＩＤを出力する。第２論理ゲート５１７は同期制限信号ＳＭＳＫ及び相互接続装置１０からのレディ信号ＲＥＡＤＹを論理演算してマスクレディ信号（ｍａｓｋｅｄ  ｒｅａｄｙ  ｓｉｇｎａｌ）ＭＲＥＡＤＹを出力する。
【００７３】
例えば、同期制限信号ＳＭＳＫが論理ローレベルで非活性化された場合にはマスク部５１５ａは、バリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹとそれぞれ同じ論理レベルのマスクバリッド信号ＭＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹを出力する。同期制限信号ＳＭＳＫが論理ハイレベルで活性化した場合にはマスク部５１５ａはバリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹの論理レベルに関係なく論理ローレベルで非活性化されたマスクバリッド信号ＭＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹを出力する。
【００７４】
図１１は図１０の制限器の動作を示すタイミング図である。
図８を参照して説明した通り、マスタ知能素子１００はリクエスト信号の転送時バリッド信号ＶＡＬＩＤを活性化してスレーブに相応する相互接続装置１０は受信準備ができた時、レディ信号ＲＥＡＤを活性化する。図１０のマスク部５１５ａによって相互接続装置１０はマスクバリッド信号ＭＶＡＬＩＤを受信してマスタ知能素子１００はマスクレディ信号ＭＲＥＡＤＹを受信する。つまり、マスタ知能素子１００はバリッド信号ＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹがグローバルクロック信号ＡＣＬＫの上昇エッジで全部活性化された時に有効な信号転送が成り立ったと判断し、相互接続装置１０はマスクバリッド信号ＭＶＡＬＩＤ及びレディ信号ＲＥＡＤＹがグローバルクロック信号ＡＣＬＫの上昇エッジで全部活性化された時に有効な信号転送が成り立ったと判断する。
【００７５】
このような判断基準の不一致によって実際に有効な信号転送が成り立っていないにもかかわらず、マスタ知能素子１００及び相互接続装置１０のうちの一つだけが有効な信号転送が成り立ったと判断してインターフェーシングエラーが発生することがある。
このようなエラーを防止するために図１０の制限器５１０ａは、マスク区間（ｍａｓｋｅｄ  ｉｎｔｅｒｖａｌ）ｔＭＳＫの開始時点と終了時点をグローバルクロック信号ＡＣＬＫの下降エッジに同期化させる機能を実行する。即ち、制限信号ＬＭＴの遷移時点に関係なく同期制限信号ＳＭＳＫの遷移時点をグローバルクロック信号ＡＣＬＫの下降エッジに同期化させる。従って、マスキングの開始及び終了時点がマスタ知能素子１００と相互接続装置１０のサンプリング時点、即ち、グローバルクロック信号ＡＣＬＫの上昇エッジと明確に分離することができる。
【００７６】
マスク区間に属しないサンプリング時点ＳＰ１、ＳＰ３では、マスクバリッド信号ＭＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹはそれぞれバリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹと同じ論理レベルを有するので一般的なハンドシェイクが実行され、サンプリング時点ＳＰ１、ＳＰ３で有効な信号転送が成り立つ。これに対し、マスク区間に属するサンプリング時点ＳＰ２ではバリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹが全部活性化されたにもかかわらず、マスタ知能素子１００と相互接続装置１０はそれぞれ非活性化されたマスクレディ信号ＭＲＥＡＤＹ及びマスクバリッド信号ＭＶＡＬＩＤに基づいて有効な信号転送が成り立たなかったと判断する。
【００７７】
図１２は図３のサービスコントローラに含まれる制限器の他の例を示す回路図である。
図１２を参照すると、制限器５１０ｂは同期化器５１２ｂ及びマスク部５１５ｂを含むことができる。
同期化器５１２ｂは制御ブロック５３０からの制限信号ＬＭＴ、グローバルクロック信号ＡＣＬＫ、バリッド信号ＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹに基づいて同期制限信号ＳＭＳＫｂを発生する。図１０の実施形態とは反対に同期制限信号ＳＭＳＫｂは論理ローレベルが活性化レベルに該当するようにすることができる。同期化器５１２ｂの動作は図１３を参照して後述する。
【００７８】
マスク部５１５ｂは同期制限信号ＳＭＳＫｂに応答して相応するマスタ知能素子１００からのリクエストを遮断する。マスク部５１５ｂは第１論理ゲート５１８及び第２論理ゲート５１９を含むことができる。第１論理ゲート５１８は同期制限信号ＳＭＳＫｂ及び相応するマスタ知能素子１００からのバリッド信号ＶＡＬＩＤを論理演算してマスクバリッド信号（ｍａｓｋｅｄ  ｖａｌｉｄ）ＭＶＡＬＩＤを出力する。第２論理ゲート５１９は同期制限信号ＳＭＳＫｂ及び相互接続装置１０からのレディ信号ＲＥＡＤＹを論理演算してマスクレディ信号（ｍａｓｋｅｄ  ｒｅａｄｙ  ｓｉｇｎａｌ）ＭＲＥＡＤＹを出力する。
【００７９】
例えば、同期制限信号ＳＭＳＫｂが論理ハイレベルで非活性化された場合にはマスク部５１５ｂはバリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹとそれぞれ同じ論理レベルのマスクバリッド信号ＭＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹを出力する。同期制限信号ＳＭＳＫｂが論理ローレベルで活性化した場合には、マスク部５１５ｂはバリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹの論理レベルに関係なく論理ローレベルで非活性化されたマスクバリッド信号ＭＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹを出力する。
【００８０】
図１３は図１２の制限器の動作を示すタイミング図である。
図８を参照して説明したように、マスタ知能素子１００はリクエスト信号の転送時バリッド信号ＶＡＬＩＤを活性化してスレーブに相応する相互接続装置１０は受信準備ができた時、レディ信号ＲＥＡＤを活性化する。図１２のマスク部５１５ｂにより相互接続装置１０は、マスクバリッド信号ＭＶＡＬＩＤを受信してマスタ知能素子１００はマスクレディ信号ＭＲＥＡＤＹを受信する。つまり、マスタ知能素子１００はバリッド信号ＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹがグローバルクロック信号ＡＣＬＫの上昇エッジで全部活性化した時有効な信号転送が成り立ったと判断し、相互接続装置１０はマスクバリッド信号ＭＶＡＬＩＤ及びレディ信号ＲＥＡＤＹがグローバルクロック信号ＡＣＬＫの上昇エッジで全部活性化された時に有効な信号転送が成り立ったと判断する。
【００８１】
このような判断基準の不一致によって実際に有効な信号転送が成り立っていない場合にも、マスタ知能素子１００及び相互接続装置１０のうちの一つだけが有効な信号転送が成り立ったと判断してインターフェーシングエラーが発生する可能性がある。
このようなエラーを防止するために図１２の同期化器５１２ｂは、マスク区間（ｍａｓｋｅｄ  ｉｎｔｅｒｖａｌ）ｔＭＳＫの開始時点を一つの有効な転送が成り立った直後に同期化させる機能を実行する。即ち、制限信号ＬＭＴが活性化され、有効な転送が成り立ったサンプリング時点ＳＰ１の直後に同期制限信号ＳＭＳＫｂを論理ローレベルで活性化する。一方、同期化器５１２ｂはマスク区間ｔＭＳＫの終了時点を制限信号ＬＭＴの非活性化タイミングに同期化させる。
【００８２】
マスク区間に属しなかったサンプリング時点ＳＰ１、ＳＰ５ではマスクバリッド信号ＭＶＡＬＩＤ及びマスクレディ信号ＭＲＥＡＤＹはそれぞれバリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹと同じ論理レベルを有するので一般的なハンドシェイクが実行され、サンプリング時点ＳＰ１、ＳＰ５で有効な信号転送が成り立つ。これに対し、マスク区間に属するサンプリング時点ＳＰ２、ＳＰ３、ＳＰ４ではバリッド信号ＶＡＬＩＤ及びレディ信号ＲＥＡＤＹが全部活性化されたにもかかわらずマスタ知能素子１００と相互接続装置１０はそれぞれ非活性化されたマスクレディ信号ＭＲＥＡＤＹ及びマスクバリッド信号ＭＶＡＬＩＤに基づいて有効な信号転送が成り立たなかったと判断する。
【００８３】
図１４は本発明の一実施形態に係るシステムオンチップの制御方法を示す図である。
図１４には例示的な場合に対して、システムのリクエストフローを制御するためのシナリオが例示されている。前記システムは少なくともプロセッサ、モデム及びディスプレイコントローラをマスタ知能素子として含み、このマスタ知能素子は共有資源（ｃｏｍｍｏｎ  ｒｅｓｏｕｒｃｅ）のスレーブ知能素子に該当するメモリコントローラにそれぞれサービスを要求するリクエストを発行することができる。
【００８４】
マスタ知能素子は、その類型（ｔｙｐｅ）によってハードリアルタイム知能素子（ｈａｒｄ  ｒｅａｌｔｉｍｅ  ＩＰ）、ソフトリアルタイム知能素子（ｓｏｆｔ  ｒｅａｌｔｉｍｅ  ＩＰ）、ベストエフォート知能素子（ｂｅｓｔ  ｅｆｆｏｒｔ  ＩＰ）などに区分できる。
ハードリアルタイム知能素子はディスプレイ知能素子とともに一定の帯域幅のデータを着実に使い、必要な帯域幅の保障を受けなければ、データバッファのアンダーラン（ｕｎｄｅｒｒｕｎ）が発生する知能素子である。このような知能素子は一定の帯域幅の保障を受ければデータバッファが十分に満たされ、データを消費する分だけリクエストを発生させながらリクエストフローを自体的に制御できる。
【００８５】
一方、システムの製造費用を減らすために、外部モデムチップ（ｅｘｔｅｒｎａｌ  ｍｏｄｅｍ  ｃｈｉｐ）がシステムオンチップのメモリを共有する方式で使用することができる。このような外部モデムチップは平均レイテンシ要求レベル（ａｖｅｒａｇｅ  ｌａｔｅｎｃｙ  ｒｅｑｕｉｒｅｍｅｎｔ）を満足できなければエラーが生じるという特性を有している。モデムチップの場合には通信が起きる時だけにリクエストがシステムオンチップに入り込み、モデムチップの種類も多様であるのでモデムチップの帯域幅要求レベルを把握することは困難である。
【００８６】
ソフトリアルタイム知能素子はビデオコーデック（ＣＯＤＥＣ）のようにフレーム率（ｆｒａｍｅ  ｒａｔｅ、例えば、３０、６０  ｐｅｒ  ｓｅｃ）が決まっていて、フレームの特性にしたがって帯域幅要求量が少しずつ違いながらいくつかのフレームバッファを有していて平均デコード／エンコード時間の保障を受けるべき知能素子である。例えば、ビデオコーデックはデジタルビデオの圧縮または圧縮解除を実行するソフトウェアである。このような知能素子はリクエストフローを制御しなければ可能な限り速い時間にデコード／エンコードを次のフレームに移動しようとする特性を有しているが、データ間に依存性（ｄｅｐｅｎｄｅｎｃｙ）があって一度に多くのリクエストを出せない特性を有している。それで、一定の帯域幅及び／またはレイテンシの保障を受ける間には動作速度がフレーム率を満足するが、レイテンシが臨界値を超えると急激にデコード／エンコード時間が増加して動作速度が減少するという特性を有する。
【００８７】
ベストエフォート知能素子は、２Ｄ、３Ｄグラフィックエンジン（ｔｗｏ−ｄｉｍｅｎｓｉｏｎａｌ  ａｎｄ／ｏｒ  ｔｈｒｅｅ−ｄｉｍｅｎｓｉｏｎａｌ  ｇｒａｐｈｉｃｓ  ｅｎｇｉｎｅ）またはＤＭＡＣ（ｄｉｒｅｃｔ  ｍｅｍｏｒｙ  ａｃｃｅｓｓ  ｃｏｎｔｒｏｌｌｅｒ）とともにリクエストフローを制御しなければ絶えずリクエストを発生する知能素子である。このような知能素子は、フロー制御を必ずしなければならない。高優先順位（ｈｉｇｈ  ｐｒｉｏｒｉｔｙ）の知能素子が緊急な状況ではなければ、可能な限りリクエストフローを制限しないでメモリコントローラのようなスレーブ知能素子が負えるだけの最大限のサービスをすることが望ましい。しかし、高優先順位の知能素子で緊急な状況が発生すれば、スレーブ知能素子に余裕を作るレベルまでベストエフォート知能素子のリクエストを制限してはじめて高い優先順位の知能素子が緊急状況から抜け出ることができる。
【００８８】
一方、ＣＰＵのようなレイテンシ指向知能素子（ｌａｔｅｎｃｙ  ｏｒｉｅｎｔｅｄ  ＩＰ）は要求する帯域幅があるのではなく、状況によって帯域幅の要求量は種々に変わるが、平均レイテンシにしたがって性能に直接的な影響を受ける。このような知能素子は帯域幅の要求量を規定するのが難しいので平均レイテンシにしたがってシステムのサービスの優先権を受けなければならない。
【００８９】
図１４の第１の場合（ＣＡＳＥ１）は、システムがノーマル状態で動作するデフォルトの場合を示す。プロセッサは典型的なベストエフォート知能素子に該当し、ディスプレイコントローラは典型的なリアルタイム知能素子に該当する。マスタ知能素子の動作特性にしたがって上述したオーバーフロー値ＯＶ、承認値ＧＲＮ、単位減少値ＤＥＣを適切に設定することができる。上述した単位増加値ＩＮＣは全ての場合と全てのマスタ知能素子に対して「１」の値に設定できる。実施形態にしたがって単位増加値ＩＮＣもシナリオとマスタ知能素子の動作特性にしたがって互いに異なる値に設定することができる。オーバーフロー値ＯＶは、動作クロックのサイクル回数に該当させることができ、例えば、動作クロックのサイクル周期は、１ｎｓ（ｎａｎｏ  ｓｅｃｏｎｄ）とすることができる。図１の第１の場合（ＣＡＳＥ１）は、ディスプレイコントローラが６４０ＭＢ／ｓｅｃで動作し、プロセッサが２５６０ＭＢ／ｓｅｃで動作するケースに該当させることができる。
【００９０】
第２の場合（ＣＡＳＥ２）は、図１を参照して説明した第３状態信号ＳＴ３が活性化した場合に該当させることができる。即ち、第２の場合（ＣＡＳＥ２）はディスプレイコントローラのデータバッファに保存されたデータの保存率が基準率より小さくなってディスプレイコントローラに対する緊急なサービスが要求される場合でありうる。この場合、プロセッサのオーバーフロー値をデフォルトの場合より大きく設定してプロセッサのリクエストフローを抑制してディスプレイコントローラのオーバーフロー値をデフォルトの場合より小さく設定してディスプレイコントローラのリクエストフローを促進することができる。また、第１の場合（ＣＡＳＥ１）から第２の場合（ＣＡＳＥ２）に動作環境が変化する場合に、一度にプロセッサのクレジット値を減少させることによって（ＳＴＥＡＬ）、プロセッサのリクエストフローを速かに抑制することができる。第２の場合（ＣＡＳＥ２）はディスプレイコントローラが１２８０ＭＢ／ｓｅｃで動作し、プロセッサが１９２０ＭＢ／ｓｅｃで動作するケースに該当させることができる。
【００９１】
第３の場合（ＣＡＳＥ３）は、図１を参照して説明した第１状態信号ＳＴ１が活性化したケースに該当させることができる。即ち、第３の場合（ＣＡＳＥ３）は、メモリコントローラの動作温度が基準温度より高くなってメモリコントローラの動作速度が減少する場合でありうる。この場合、ベストエフォート知能素子に該当するプロセッサのオーバーフロー値をデフォルトの場合より大きく設定してプロセッサのリクエストフローを抑制し、リアルタイム知能素子に該当するディスプレイコントローラのオーバーフロー値をデフォルトの場合より小さく設定してディスプレイコントローラの帯域幅を維持することができる。一方、全てのマスタ知能素子に対し単位減少値ＤＥＣをデフォルトの場合より大きく設定してリクエストフローを全体的に抑制することができる。また、第１の場合（ＣＡＳＥ１）から第３の場合（ＣＡＳＥ３）に動作環境が変化する場合に、一度にプロセッサのクレジット値を減少させることによってプロセッサのリクエストフローを速かに抑制することができる。第３の場合（ＣＡＳＥ３）はディスプレイコントローラが６４０ＭＢ／ｓｅｃで動作し、プロセッサが９６０ＭＢ／ｓｅｃで動作するケースに該当させることができる。
【００９２】
第４の場合（ＣＡＳＥ４）は、図１を参照して説明した第１状態信号ＳＴ１及び第３状態信号ＳＴ３が共に活性化したケースに該当させることができる。即ち、第４の場合（ＣＡＳＥ４）は、ディスプレイコントローラのデータバッファに保存されたデータの保存率が基準率より小さくなって、ディスプレイコントローラに対する緊急なサービスが要求されるだけでなく、メモリコントローラの動作温度が基準温度より大きくなって、メモリコントローラの動作速度が減少する場合でありうる。この場合、ベストエフォート知能素子に該当するプロセッサのオーバーフロー値をデフォルトの場合より大きく設定してプロセッサのリクエストフローを抑制し、リアルタイム知能素子に該当するディスプレイコントローラのオーバーフロー値をデフォルトの場合より小さく設定してディスプレイコントローラの帯域幅を維持することができる。一方、プロセッサ及びモデムに対して単位減少値ＤＥＣをデフォルトの場合より大きく設定してリクエストフローを抑制し、ディスプレイコントローラの帯域幅を保障することができる。また、第１の場合（ＣＡＳＥ１）、第２の場合（ＣＡＳＥ２）または第３の場合（ＣＡＳＥ３）から第４の場合（ＣＡＳＥ４）へ動作環境が変化する場合に、一度にプロセッサのクレジット値を減少させることによってプロセッサのリクエストフローを速かに抑制することができる。第４の場合（ＣＡＳＥ４）はディスプレイコントローラが１２８０ＭＢ／ｓｅｃで動作し、プロセッサが３２０ＭＢ／ｓｅｃで動作するケースに該当させることができる。
【００９３】
第５の場合（ＣＡＳＥ５）は、図１を参照して説明した第２状態信号ＳＴ２が活性化したケースに該当させることができる。即ち、第５の場合（ＣＡＳＥ５）はモデムが基準時間以上メモリコントローラからサービスの提供を受けることができない場合でありうる。この場合、ベストエフォート知能素子に該当するプロセッサのオーバーフロー値を無限大（ＩＮＦ）に設定してプロセッサのリクエストフローを遮断することができる。プロセッサのオーバーフロー値を無限大に設定するには、上述したクレジット値ＣＲＤに関係なく制限信号ＬＭＴを活性化することもできる。前記無限大の値は、可能な任意の値より大きい値またはプロセッサの現在の値より大きい値とすることができる。第５の場合（ＣＡＳＥ５）を表わすグローバル制御信号ＧＣＯＮに応答して制限信号ＬＭＴを活性化することによってプロセッサと相互接続装置との間のリクエストフローを遮断することができる。また、第１の場合（ＣＡＳＥ１）から第５の場合（ＣＡＳＥ５）に動作環境が変化する場合に、一度にプロセッサのクレジット値を減少させることができる。
【００９４】
このように、本発明の実施形態に係るシステムオンチップ及びシステムオンチップの制御方法は、動作環境の変化に応じて適応的にマスタ知能素子のリクエストフローを制御することによってサービス品質を向上させることができる。また、それぞれのマスタ知能素子に割り当てられた複数のサービス制御器を利用してリクエストフローの制御条件をマスタ知能素子ごとに独立的に設定することができるので動作環境の変化にともなう複雑なシナリオを容易に実現することができる。
【００９５】
図１５は本発明の一実施形態に係るクレジット値に基づいたリクエストフローの制御方法を説明するための図であり、図１６は図１５の方法にともなう図５のモニタの動作の一例を説明するための図である。
上述した通り、第１イベント信号ＣＥＶが活性化されるたびにクレジット値ＣＲＤが最大値ＭＡＸ方向に増加し、第２イベント信号ＳＥＶが活性化されるたびにクレジット値ＣＲＤが最小値ＭＩＮ方向に減少する。制御ブロック５３０はクレジット値ＣＲＤが大きいほど高い優先順位を付与してクレジット値ＣＲＤが小さいほど低い優先順位を付与することができる。
【００９６】
図１５及び図１６を参照すると、制御ブロック５３０はクレジット値ＣＲＤの範囲を分割して複数の動作モードを設定し、この動作モードに応じてローカル制御信号ＬＣＯＮの値ＯＶ、ＩＮＣ、ＤＥＣを互いに異なるように設定して相応するマスタ知能素子のリクエストフローを制御することができる。
例えば、動作モードは、プロモーションモード、デフォルトモード及びディモーションモードを含むことができる。プロモーションモードは、クレジット値ＣＲＤが上位境界値ＵＰＢＮより大きいケースに該当し、デフォルトモードはクレジット値ＣＲＤが上位境界値ＵＰＢＮより小さくて下位境界値ＬＷＢＮより大きいケースに該当し、ディモーションモードはクレジット値ＣＲＤが下位境界値ＬＷＢＮより小さいケースに該当する。
【００９７】
制御ブロック５３０は、相応するマスタ知能素子に対してデフォルトモードよりプロモーションモードでより大きな帯域幅が許容され、ディモーションモードよりデフォルトモードでより大きな帯域幅が許容されるようにローカル制御信号ＬＣＯＮの値ＯＶ、ＩＮＣ、ＤＥＣを設定することができる。例えば、制御ブロック５３０はデフォルトモードでのオーバーフロー値ＯＶ２をディモーションモードでのオーバーフロー値ＯＶ１より小さく設定し、プロモーションモードでのオーバーフロー値ＯＶ３をデフォルトモードでのオーバーフロー値ＯＶ２より小さく設定することができる。また、制御ブロック５３０はデフォルトモードでの単位増加値ＩＮＣをディモーションモードでの単位増加値ＩＮＣより大きく設定し、プロモーションモードでの単位増加値ＩＮＣをデフォルトモードでの単位増加値ＩＮＣより大きく設定することができる。図１６には動作モードに関係なく単位減少値ＤＥＣが一定である場合が示されているが、動作モードに応じて単位減少値ＤＥＣを異なるように設定することができる。即ち、単位減少値ＤＥＣを減少することによってリクエストフローを促進でき、単位減少値ＤＥＣを増加することによってリクエストフローを抑制することができる。
【００９８】
図１７は本発明の実施形態に係るシステムを示すブロック図である。図１７に図示されたシステム１０００ａは図１に示したシステム１０００と類似しているので、重複する説明は省略する。
図１７を参照すると、システム１０００ａは、スレーブ（ｓｌａｖｅ）知能素子（ＩＰ：ｉｎｔｅｌｌｅｃｔｕａｌ  ｐｒｏｐｅｒｔｙ）（ＳＬＶ１、ＳＬＶ２）３０１、３０２、マスタ（ｍａｓｔｅｒ）知能素子（ＭＳＴ１、ＭＳＴ２、ＭＳＴ３）１０１、１０２、１０３、サービス制御器（ｓｅｒｖｉｃｅ  ｃｏｎｔｒｏｌｌｅｒ）（ＱＣ１、ＱＣ２、ＱＣ３）５０１、５０２、５０３及び相互接続装置（ｉｎｔｅｒｃｏｎｎｅｃｔ  ｄｅｖｉｃｅ）１０を含む。実施形態によって、システム１０００ａはグローバル制御器（ｇｌｏｂａｌ  ｃｏｎｔｒｏｌｌｅｒ）３０をさらに含むことができる。
【００９９】
複数のマスタ知能素子１０１、１０２、１０３は少なくとも一つのスレーブ知能素子３０１、３０２にサービスを要求するためのリクエストをそれぞれ発生する。相互接続装置１０はそれぞれのチャネルを通じてスレーブ知能素子３０１、３０２及びマスタ知能素子１０１、１０２、１０３に接続される。相互接続装置１０はマスタ知能素子１０１、１０２、１０３からのリクエストの仲裁動作を実行する。相互接続装置１０は前記仲裁動作のために少なくとも一つの仲裁器（ａｒｂｉｔｅｒ）を含むことができる。複数のサービス制御器５０１、５０２、５０３はシステム１０００の動作環境の変化により適応的にマスタ知能素子１０１、１０２、１０３のリクエストフローを制御する。
【０１００】
マスタ知能素子１０１、１０２、１０３は、少なくとも一つのリアルタイム知能素子を含むことができる。例えば、第３マスタ知能素子１０３はディスプレイコントローラのようなリアルタイム知能素子であることができる。また、第２スレーブ知能素子１０２は、マスタ知能素子１０１、１０２、１０３に共通でサービスを提供するメモリコントローラであることができる。この場合、リアルタイム知能素子１０３に相応するサービス制御器５０３は緊急なサービスが要求されることを表わす緊急信号ＵＧＮＴを発生する可能性がある。
【０１０１】
システム１０００ａはリアルタイム知能素子１０３に相応するサービス制御器５０３とスレーブ知能素子３０２との間にポイントツーポイント（ｐｏｉｎｔ−ｔｏ−ｐｏｉｎｔ）に接続された転送ラインＴＬ２をさらに含むことができる。緊急信号ＵＧＮＴは転送ラインＴＬ２を通じてリアルタイム知能素子１０３に相応するサービス制御器５０３からスレーブ知能素子３０２に直接転送することができる。緊急信号ＵＧＮＴは相互接続装置１０にも提供することができ、相互接続装置１０は緊急信号ＵＧＮＴに基づいて仲裁動作での優先順位を調整することができる。
【０１０２】
マスタ知能素子１０１、１０２、１０３は少なくとも一つのベストエフォート知能素子を含むことができる。例えば、第１マスタ知能素子１０１は、プロセッサのようなベストエフォート知能素子であることができる。この場合、スレーブ知能素子３０２はシステムの動作環境の変化に基づいて外部制限信号ＥＬＭＴを発生し、ベストエフォート知能素子１０１に相応するサービス制御器５０１は、外部制限信号ＥＬＭＴに答えてベストエフォート知能素子１０１と相互接続装置１０との間のリクエストフローを遮断することができる。
【０１０３】
システム１０００ａはベストエフォート知能素子１０１に相応するサービス制御器５０１とスレーブ知能素子３０２との間にポイントツーポイントに接続された転送ラインＴＬ１をさらに含むことができる。外部制限信号ＥＬＭＴは転送ラインＴＬ１を通じてスレーブ知能素子３０２からベストエフォート知能素子１０１に相応するサービス制御器５０１で直接転送できる。
【０１０４】
図１８は図１７のシステムに含まれたサービス制御器の一例を示すブロック図である。
図１８に示したサービス制御器５０３は、ディスプレイコントローラのようなリアルタイム知能素子１０３のリクエストフローを制御するためのサービス制御器であることができる。図１８のサービス制御器５０３は制御ブロックの動作を除いては図３のサービス制御器５００ａと類似しているので重複する説明は省略する。
【０１０５】
制御ブロック５４０はシステムの動作環境の変化に基づいてモニタ５２０を制御するためのローカル制御信号ＬＣＯＮを発生する。前記動作環境の変化は図１を参照して説明した通りグローバル制御信号ＧＣＯＮとして提供されることもでき、状態信号ＳＴ１、ＳＴ２、ＳＴ３として提供されることもできる。また、制御ブロック５４０はクレジット値ＣＲＤに基づいて相応するマスタ知能素子１０３からのリクエストに対する優先順位情報ＰＲＴを発生する可能性がある。優先順位情報ＰＲＴは相互接続装置１０に提供されて仲裁動作の基礎として利用できる。
【０１０６】
制御ブロック５４０は優先順位情報ＰＲＴとともにリアルタイム知能素子１０３に対して緊急なサービスが要求されることを現わす緊急信号ＵＧＮＴを発生することができる。上述した通り、緊急信号ＵＧＮＴはスレーブ知能素子３０２にリアルタイムで提供されて、リアルタイム知能素子１０３のリクエストに対するサービスを促進するかまたは他のマスタ知能素子のリクエストフローを抑制することに利用することができる。
制御ブロック５４０の少なくとも一部は、保存された値及び入力される値に応答して予め決まったプロセスシークエンスを実行する構成を有する特殊技能レジスタ（ｓｐｅｃｉａｌ  ｆｕｎｃｔｉｏｎ  ｒｅｇｉｓｔｅｒ）で具現することができる。
【０１０７】
図１９は本発明の一実施形態に係るクレジット値に基づいたリクエストフローの制御方法を説明するための図である。
図１９を参照すると、図１８に示した制御ブロック５４０はクレジット値ＣＲＤの範囲を分割して複数の動作モードを設定し、この動作モードに応じてローカル制御信号ＬＣＯＮの値ＯＶ、ＩＮＣ、ＤＥＣを互いに異なるように設定して相応するマスタ知能素子のリクエストフローを制御することができる。
【０１０８】
例えば、動作モードは、緊急モード、プロモーションモード、デフォルトモード及びディモーションモードを含むことができる。緊急モードはクレジット値ＣＲＤが緊急レベルＵＧＬより大きいケースに該当し、プロモーションモードはクレジット値ＣＲＤが上位境界値ＵＰＢＮより大きいケースに該当する。緊急レベルＵＧＬは上位境界値ＵＰＢＮと同じくなるように設定することもでき、上位境界値ＵＰＢＮより大きくなるように設定することもできる。デフォルトモードはクレジット値ＣＲＤが上位境界値ＵＰＢＮより小さく、下位境界値ＬＷＢＮより大きいケースに該当し、ディモーションモードはクレジット値ＣＲＤが下位境界値ＬＷＢＮより小さいケースに該当する。
【０１０９】
制御ブロック５４０は、相応するマスタ知能素子に対してデフォルトモードよりプロモーションモードでより大きな帯域幅が許容され、ディモーションモードよりデフォルトモードでより大きな帯域幅が許容されるようにローカル制御信号ＬＣＯＮの値ＯＶ、ＩＮＣ、ＤＥＣを設定することができる。
また、制御ブロック５４０は、クレジット値ＣＲＤが緊急レベルＵＧＬより大きい場合、緊急信号ＵＧＮＴを活性化することができる。このようにリアルタイム知能素子１０３に対して非常に緊急なサービスが要求される場合、緊急信号ＵＧＮＴを活性化し、緊急信号ＵＧＮＴを利用してリアルタイム知能素子１０３のリクエストに対するサービスを促進するかまたは他のマスタ知能素子のリクエストフローを抑制することができる。
【０１１０】
図２０は本発明の一実施形態に係る緊急信号の発生方法を示す図である。
図２０を参照すると、緊急信号ＵＧＮＴの活性化条件と非活性化条件を互いに異なるように設定し、ヒステレシス（ｈｙｓｔｅｒｅｓｉｓ）方式で緊急信号ＵＧＮＴを発生することができる。図１８の制御ブロック５４０はクレジット値ＣＲＤが上昇緊急レベルＵＧＬＲより大きくなる時点ｔ１で緊急信号ＵＧＮＴを活性化してクレジット値ＣＲＤが下降緊急レベルＵＧＬＦより小さくなる時点ｔ３で緊急信号ＵＧＮＴを非活性化することができる。下降緊急レベルＵＧＬＦは上昇緊急レベルＵＧＬＲより小さく設定することができる。
【０１１１】
この場合、クレジット値ＣＲＤが上昇緊急レベルＵＧＬＲより小さくなる時点ｔ２では緊急信号ＵＧＮＴの活性化状態をそのまま維持し、クレジット値ＣＲＤがさらに低い下降緊急レベルＵＧＬＦまで減少する時点ｔ３で緊急信号ＵＧＮＴを非活性化する。このようなヒステレシス方式で緊急信号ＵＧＮＴを発生することによって、頻繁な動作モードの変更を防止してリアルタイム知能素子が緊急状態を安定的に解消するように制御できる。
【０１１２】
図２１は図１７のシステムに含まれたサービス制御器の一例を示すブロック図である。
図２１に示したサービス制御器５０１はプロセッサのようなベストエフォート知能素子１０１のリクエストフローを制御するためのサービス制御器であることができる。図２１のサービス制御器５０３は制限器５１０の動作条件を除いては図３のサービス制御器５００ａと類似しているので重複する説明は省略する。
【０１１３】
図２１の制限器５１０は制御ブロック５３０からの制限信号ＬＭＴだけでなく外部制限信号ＥＬＭＴに応答してイネーブルされることができる。このためにサービス制御器５０１は論理和ゲート５５０をさらに含むことができる。論理和ゲート５５０は制限信号ＬＭＴ及び外部制限信号ＥＬＭＴを論理和演算して出力し、制限器５１０は論理和ゲート５５０の出力信号に応答してイネーブルされることができる。
【０１１４】
制限信号ＬＭＴは相応するベストエフォート知能素子１０１が十分にサービスを受けている場合に活性化され、外部制限信号ＥＬＭＴは他のマスタ知能素子及び／またはスレーブ知能素子が緊急状態である場合に活性化されることができる。結果的に、ベストエフォート知能素子１０１に相応するサービス制御器５０１は内部状態及び外部状態の変化にしたがってベストエフォート知能素子１０１のリクエストフローを遮断することができる。
【０１１５】
図２２は図１７のシステムに含まれたスレーブ知能素子の一例を示す図である。
図２２を参照すると、スレーブ知能素子３０２は図１７のシステム１０００ａのリクエストフローを制御するためにリクエストキュー３１０及びスケジューラ３２０を含むことができる。
【０１１６】
リクエストキュー３１０は相互接続装置１０を経由してマスタ装置１０１、１０２、１０３から伝達された複数のリクエストを保存する。多重アウトスタンディングトランザクション（ｍｕｌｔｉｐｌｅ  ｏｕｔｓｔａｎｄｉｎｇ  ｔｒａｎｓａｃｔｉｏｎｓ）または多重アウトスタンディングリクエスト（ｍｕｌｔｉｐｌｅ  ｏｕｔｓｔａｎｄｉｎｇ  ｒｅｑｕｅｓｔｓ）を支援するプロトコルが採用される場合、スレーブ知能素子は少なくとも一つのリクエストキュー３１０を含むことができる。リクエストキュー３１０はマスタ知能素子から既に発行されたが（ｉｓｓｕｅｄ）、まだ完了されていない複数のリクエストを保存する。
【０１１７】
スケジューラ３２０はリクエストキュー３１０に保存されたリクエストのそれぞれの優先順位に基づいて前記保存されたリクエストに対するサービス順序を決定することができる。決定されたサービス順序にしたがってリクエストが次々と内部回路３４０に伝達される。
スケジューラ３２０はリアルタイム知能素子１０３に相応するサービス制御器５０３から提供される緊急信号ＵＧＮＴに応答してリクエストキュー３１０に保存されたリクエストのうちからリアルタイム知能素子１０３から発生したリクエストの優先順位を増加させることができる。優先順位を増加させることによってリアルタイム知能素子１０３に対するサービスを促進してリアルタイム知能素子１０３の緊急状態を解消することができる。
【０１１８】
スケジューラ３２０は基準個数より多いリクエストがリクエストキュー３１０に保存されてサービス待機中の場合、キューフル信号ＱＦを活性化することができる。論理和ゲート３３０は緊急信号ＵＧＮＴ及びキューフル信号ＱＦを論理和演算して外部制限信号ＥＬＭＴを発生することができる。上述した通り、緊急信号ＵＧＮＴはリアルタイム知能素子に対して緊急なサービスが要求されることを表わすことができ、外部制限信号ＥＬＭＴはベストエフォート知能素子のリクエストフローを遮断することに利用することができる。
このように、緊急信号ＵＧＮＴ及び外部制限信号ＥＬＭＴを利用して動作環境の変化にしたがってリアルタイム知能素子のリクエストフローを促進してベストエフォート知能素子のリクエストフローを抑制することができる。
【０１１９】
図２３は図２２のスレーブ知能素子内に保存されるリクエストの構造及び緊急信号の一例を示す図である。
図２３を参照すると、リクエストキュー３１０に保存されるリクエストＲＥＱはリクエストＲＥＱを発生したマスタ知能素子を表わすマスタ識別子ＭＩＤ、複数のリクエストを区別するためのリクエスト識別子ＡｘＩＤ、リクエストＲＥＱの内容を表わすアドレスコマンドＡＤＤ−ＣＯＭ及びリクエストＲＥＱの優先順位ＡｘＱを含むことができる。
【０１２０】
緊急信号ＵＧＮＴはマスタ知能素子の緊急状態を現わすフラッグ値ＦＬＧ及び緊急信号ＵＧＮＴを発生したマスタ知能素子を表わすマスタ識別子ＭＩＤを含むことができる。実施形態によって、緊急信号ＵＧＮＴはフラッグ値ＦＬＧだけを含み、緊急信号ＵＧＮＴを発生したマスタ知能素子を表わすマスタ識別子ＭＩＤは別個の信号として提供することもできる。
【０１２１】
図２２のスケジューラ３２０はフラッグＦＬＧ値が緊急状態を表わす場合、緊急信号ＵＧＮＴとリクエストキュー３１０に保存されたリクエストのマスタ識別子ＭＩＤを比較して緊急状態にあるマスタ知能素子から発行されたリクエストの優先順位を増加させることができる。優先順位が増加したリクエストに対するサービスが促進され、マスタ知能素子の緊急状態が解消されることができる。
【０１２２】
図２４は本発明の実施形態に係るシステムオンチップを電子機器に応用した例を示すブロック図である。
図２４を参照すると、電子機器２０００はシステムオンチップ１０１０、メモリ装置１０２０、保存装置１０３０、入出力装置１０４０、パワーサプライ１０５０及びイメージセンサ１０６０を含むことができる。一方、図２４には示していないが、電子機器２０００はビデオカード、サウンドカード、メモリカード、ＵＳＢ装置などと通信するかまたは他の電子機器と通信できるポート（ｐｏｒｔ）をさらに含むことができる。
【０１２３】
システムオンチップ１０１０は、図１〜図２３を参照して説明した本発明の実施形態に係るアプリケーションプロセッサシステムオンチップＡＰ  ＳＯＣとして相互接続装置ＩＮＴと、これに接続された複数の知能素子（または、機能ブロック）を含むことができる。例えば、知能素子はメモリコントローラ（ｍｅｍｏｒｙ  ｃｏｎｔｒｏｌｌｅｒ）ＭＣ、中央処理部（ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）、ディスプレイコントローラ（ｄｉｓｐｌａｙ  ｃｏｎｔｒｏｌｌｅｒ）ＤＩＳ、ファイルシステムブロック（ｆｉｌｅ  ｓｙｓｔｅｍ  ｂｌｏｃｋ）ＦＳＹＳ、グラフィック処理部（ｇｒａｐｈｉｃ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）ＧＰＵ、イメージ信号プロセッサ（ｉｍａｇｅ  ｓｉｇｎａｌ  ｐｒｏｃｅｓｓｏｒ）ＩＳＰ、マルチフォーマットコーデックブロック（ｍｕｌｔｉ−ｆｏｒｍａｔ  ｃｏｄｅｃ  ｂｌｏｃｋ）ＭＦＣなどを含むことができる。メモリコントローラＭＣは上述したスレーブ知能素子のうち一つに該当して他の知能素子のうち、複数の知能素子はメモリコントローラＭＣを共通資源として利用するマスタ知能素子に該当する。図２３に示していないが、上述した通りシステムオンチップ１０１０はシステムオンチップの動作環境の変化により適応的にマスタ知能素子のリクエストフローを制御するサービス制御器を含む。
【０１２４】
システムオンチップ１０１０は、アドレスバス（ａｄｄｒｅｓｓ  ｂｕｓ）、制御バス（ｃｏｎｔｒｏｌ  ｂｕｓ）及びデータバス（ｄａｔａ  ｂｕｓ）を介してメモリ装置１０２０、保存装置１０３０、入出力装置１０４０及びイメージセンサ２０６０と通信を実行することができる。実施形態によって、システムオンチップ１０１０は、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスのような拡張バスにも接続することができる。
【０１２５】
メモリ装置１０２０は、電子機器２０００の動作に必要なデータ及びプログラム  コードを保存することができる。例えば、メモリ装置１０２０は、ＤＲＡＭ、モバイル ＤＲＡＭ、ＳＲＡＭ、ＰＲＡＭ、ＦＲＡＭ（登録商標）、ＲＲＡＭ（登録商標）及び／またはＭＲＡＭで具現できる。保存装置１０３０は、ＳＳＤ（ｓｏｌｉｄ  ｓｔａｔｅ  ｄｒｉｖｅ）、ＨＤＤ（ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）、ＣＤ−ＲＯＭなどを含むことができる。入出力装置１０４０は、キーボード、キーパッド、マウスなどのような入力手段及びプリンタ、ディスプレイなどのような出力手段を含むことができる。パワーサプライ１０５０は電子機器２０００の動作に必要な動作電圧を供給することができる。
【０１２６】
イメージセンサ１０６０は、バスまたは他の通信リンクを介してシステムオンチップ１０１０と接続されて通信を実行できる。イメージセンサ１０６０は、システムオンチップ１０１０と共に一つのチップに集積化することもでき、互いに異なるチップにそれぞれ集積化することもできる。
【０１２７】
図２４に示した電子機器２０００の構成要素の少なくとも一部は、多様な形態のパッケージで具現できる。例えば、少なくとも一部の構成は、ＰｏＰ（Ｐａｃｋａｇｅ  ｏｎ  Ｐａｃｋａｇｅ）、ＢＧＡｓ（Ｂａｌｌ  ｇｒｉｄ  ａｒｒａｙｓ）、ＣＳＰｓ（Ｃｈｉｐ  ｓｃａｌｅ  ｐａｃｋａｇｅｓ）、ＰＬＣＣ（Ｐｌａｓｔｉｃ  Ｌｅａｄｅｄ  Ｃｈｉｐ  Ｃａｒｒｉｅｒ）、 ＰＤＩＰ（Ｐｌａｓｔｉｃ  Ｄｕａｌ  Ｉｎ−Ｌｉｎｅ  Ｐａｃｋａｇｅ）、Ｄｉｅ  ｉｎ  Ｗａｆｆｌｅ  Ｐａｃｋ、Ｄｉｅ  ｉｎ  Ｗａｆｅｒ  Ｆｏｒｍ、ＣＯＢ（Ｃｈｉｐ  Ｏｎ  Ｂｏａｒｄ）、ＣＥＲＤＩＰ（Ｃｅｒａｍｉｃ  Ｄｕａｌ  Ｉｎ−Ｌｉｎｅ  Ｐａｃｋａｇｅ）、ＭＱＦＰ（Ｐｌａｓｔｉｃ  Ｍｅｔｒｉｃ  Ｑｕａｄ  Ｆｌａｔ  Ｐａｃｋ）、ＴＱＦＰ（Ｔｈｉｎ  Ｑｕａｄ  Ｆｌａｔｐａｃｋ）、ＳＯＩＣ（Ｓｍａｌｌ  Ｏｕｔｌｉｎｅ）、ＳＳＯＰ（Ｓｈｒｉｎｋ  Ｓｍａｌｌ  Ｏｕｔｌｉｎｅ  Ｐａｃｋａｇｅ）、ＴＳＯＰ（Ｔｈｉｎ  Ｓｍａｌｌ  Ｏｕｔｌｉｎｅ）、ＴＱＦＰ（Ｔｈｉｎ  Ｑｕａｄ  Ｆｌａｔｐａｃｋ）、ＳＩＰ（Ｓｙｓｔｅｍ  Ｉｎ  Ｐａｃｋａｇｅ）、ＭＣＰ（Ｍｕｌｔｉ  Ｃｈｉｐ  Ｐａｃｋａｇｅ）、ＷＦＰ（Ｗａｆｅｒ−ｌｅｖｅｌ  Ｆａｂｒｉｃａｔｅｄ  Ｐａｃｋａｇｅ）、ＷＦＰ（Ｗａｆｅｒ−Ｌｅｖｅｌ  Ｐｒｏｃｅｓｓｅｄ  Ｓｔａｃｋ  Ｐａｃｋａｇｅ）などのようなパッケージを利用して実装することができる。
【０１２８】
一方、電子機器２０００は少なくとも一つのシステムオンチップを含む全ての装置及びシステムと解釈するべきである。例えば、電子機器２０００は、デジタルカメラ、移動電話器、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、スマートフォンなどを含むことができる。
【０１２９】
図２５は図２４の電子機器で使われるインターフェースの一例を示すブロック図である。
図２５を参照すると、電子機器１１００は、ＭＩＰＩインターフェースを使用または支援できるデータ処理装置で具現することができ、アプリケーションプロセッサチップ形態のシステムオンチップ（ＡＰ  ＳＯＣ）１１１０、イメージセンサ１１４０及びディスプレイ１１５０などを含むことができる。
【０１３０】
システムオンチップ１１１０のＣＳＩホスト１１１２は、ＣＳＩ（Ｃａｍｅｒａ  Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ）を通じてイメージセンサ１１４０のＣＳＩ装置１１４１とシリアル通信を実行できる。一実施形態において、ＣＳＩホスト１１１２はＤＥＳ（ｄｅｓｅｒｉａｌｉｚｅｒ）を含むことができ、ＣＳＩ装置（１１４１）はＳＥＲ（ｓｅｒｉａｌｉｚｅｒ）を含むことができる。システムオンチップ１１１０のＤＳＩホスト１１１１は、ＤＳＩ（Ｄｉｓｐｌａｙ  Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ）を通じてディスプレイ１１５０のＤＳＩ装置１１５１とシリアル通信を実行できる。
【０１３１】
一実施形態において、ＤＳＩホスト１１１１はＳＥＲを含むことができ、ＤＳＩ装置１１５１はＤＥＳを含むことができる。さらに、電子機器１１００はシステムオンチップ１１１０と通信を実行できるＲＦ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ）チップ１１６０をさらに含むことができる。電子機器１１００のＰＨＹ１１１３とＲＦチップ１１６０のＰＨＹ１１６１は、ＭＩＰＩ（Ｍｏｂｉｌｅ  Ｉｎｄｕｓｔｒｙ  Ｐｒｏｃｅｓｓｏｒ  Ｉｎｔｅｒｆａｃｅ）  ＤｉｇＲＦにしたがってデータ送受信を実行できる。また、システムオンチップ１１１０はＰＨＹ１１６１のＭＩＰＩ  ＤｉｇＲＦにしたがったデータ送受信を制御するＤｉｇＲＦ  ＭＡＳＴＥＲ１１１４をさらに含むことができる。
【０１３２】
一方、電子機器１１００はＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）１１２０、ストレージ１１７０、マイク１１８０、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１８５及びスピーカ１１９０を含むことができる。また、電子機器１１００は超広帯域（Ｕｌｔｒａ  ＷｉｄｅＢａｎｄ：ＵＷＢ）１２１０、ＷＬＡＮ（Ｗｉｒｅｌｅｓｓ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１２２０及びＷＩＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）１２３０などを利用して通信を実行できる。図２５に示した電子機器１１００の構造及びインターフェースは一つの例示であって、これに限定されるのではない。
【０１３３】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【産業上の利用可能性】
【０１３４】
本発明の実施形態に係るシステム及びシステム制御方法は複数のマスタ知能素子と前記マスタ知能素子によって共通でアクセスされる少なくとも一つのスレーブ素子を含む任意の装置及びシステムに有用に利用することができる。特に、本発明は色々な半導体部品が一つのチップに集積されるシステムオンチップに有用に利用することができ、小型化、高性能及び高速の動作が要求されるデジタルカメラ、移動電話器、ＰＤＡ、ＰＭＰ、スマートフォンなどの携帯機器により有用に利用することができる。
【符号の説明】
【０１３５】
１００，１０１，１０２，１０３    マスタ知能素子
１０    相互接続装置
３０１，３０２    スレーブ知能素子
５００，５０１，５０２    サービス制御器
ＰＲＴ    優先順位情報
ＵＧＮＴ    緊急信号
ＬＭＴ    制限信号
ＥＬＭＴ    外部制限信号
【図１】
2014142912.tif 000003
【図２】
2014142912.tif 000004
【図３】
2014142912.tif 000005
【図４】
2014142912.tif 000006
【図５】
2014142912.tif 000007
【図６】
2014142912.tif 000008
【図７】
2014142912.tif 000009
【図８】
2014142912.tif 000010
【図９】
2014142912.tif 000011
【図１０】
2014142912.tif 000012
【図１１】
2014142912.tif 000013
【図１２】
2014142912.tif 000014
【図１３】
2014142912.tif 000015
【図１４】
2014142912.tif 000016
【図１５】
2014142912.tif 000017
【図１６】
2014142912.tif 000018
【図１７】
2014142912.tif 000019
【図１８】
2014142912.tif 000020
【図１９】
2014142912.tif 000021
【図２０】
2014142912.tif 000022
【図２１】
2014142912.tif 000023
【図２２】
2014142912.tif 000024
【図２３】
2014142912.tif 000025
【図２４】
2014142912.tif 000026
【図２５】
2014142912.tif 000027