(57)【要約】【課題】システム・オン・チップ（ＳＯＣ）内のデータ要求の経路指定をストリーム化し且つハードウェア要件を最小化することにより、システム性能を改良すること。【解決手段】  システム・オン・チップのクロスバー内で、クロスバー・セグメント経路指定機能及びアクセス・テーブル・アドレス再マッピング機能が組み合わされる。このようにすると、セグメント経路指定に先行して、アドレス再マッピングを行うことができる。マスタ・ポートごとに、１つ以上のアクセス・テーブル用キャッシング・レジスタが設けられる。これらのキャッシング・レジスタは、各マスタに関連する１つ以上のアクセス・テーブル・エントリの迅速な検索を可能にするとともに、アクセス・テーブルにポートを追加することなく、複数のマスタによる同時的な検索を可能にする。セグメント識別子をこれらのキャッシング・レジスタ内に格納すると、一致する要求を適切なスレーブ・セグメントへ経路指定する方法を指示することができる。【選択図】  図４
2010015560.tif 000002
【特許請求の範囲】
【請求項１】
システム・オン・チップ内でデータ要求を経路指定する方法であって、
経路指定情報を含むキャッシング・レジスタを有するブリッジにおいて、データ要求を受け取るステップと、
前記データ要求を前記キャッシング・レジスタ内の前記経路指定情報と突き合わせるステップと、
前記キャッシング・レジスタ内の前記経路指定情報を使用して、前記データ要求を経路指定するステップとを含む、方法。
【請求項２】
アクセス・テーブル・ヒットを反映するように、前記キャッシング・レジスタを更新するステップをさらに含む、請求項１記載の方法。
【請求項３】
前記データ要求を経路指定する前に、前記キャッシング・レジスタを使用して、前記データ要求アドレスを置換アドレスに置き換えるステップをさらに含む、請求項１記載の方法。
【請求項４】
前記ブリッジの他のキャッシング・レジスタを使用して、他のデータ要求を他の経路指定情報と同時に突き合わせるステップをさらに含む、請求項１記載の方法。
【請求項５】
前記キャッシング・レジスタを前記ブリッジのクロスバー・スイッチ内に配置するステップをさらに含む、請求項１記載の方法。
【請求項６】
アクセス・テーブルを前記ブリッジのクロスバー・スイッチ内に配置するステップをさらに含む、請求項１記載の方法。
【請求項７】
前記ブリッジのポートごとに少なくとも１つのキャッシング・レジスタを含むように、前記ブリッジを構成するステップをさらに含む、請求項１記載の方法。
【請求項８】
前記経路指定を促進するために、前記キャッシング・レジスタ内にセグメント識別子を格納するステップをさらに含む、請求項１記載の方法。
【請求項９】
前記キャッシング・レジスタ内のマスタによって最近に使用されたアクセス・テーブルのデータを格納するステップをさらに含む、請求項１記載の方法。
【請求項１０】
前記キャッシング・レジスタ内に一致が存在しない場合は、アクセス・テーブル検索を使用して、他のデータ要求を突き合わせるステップをさらに含む、請求項１記載の方法。
【請求項１１】
前記経路指定するステップが、データ要求中に１度だけクロスバーを経路指定するステップをさらに含む、請求項１記載の方法。
【請求項１２】
前記データ要求に関連するセキュリティ権限を決定するステップをさらに含む、請求項１記載の方法。
【請求項１３】
前記キャッシング・レジスタ内のタグを使用して、前記データ要求を突き合わせるステップをさらに含む、請求項１記載の方法。
【請求項１４】
機能的なマスタ・コンポーネントと、
機能的なスレーブ・セグメント・コンポーネントと、
キャッシング・レジスタを有し且つ前記機能的なマスタ・コンポーネント及びスレーブ・セグメント・コンポーネントの両方と通信関係にあるブリッジとを備え、
前記ブリッジが、前記機能的なマスタ・コンポーネントからデータ要求を受け取り、前記キャッシング・レジスタを使用して前記データ要求を前記機能的なスレーブ・セグメント・コンポーネントに関連する経路指定情報と突き合わせ、前記キャッシング・レジスタ内の経路指定情報を使用して前記データ要求を前記機能的なスレーブ・セグメント・コンポーネントへ経路指定するように構成される、装置。
【請求項１５】
前記キャッシング・レジスタが、アクセス・テーブル・ヒットを反映するように更新される、請求項１４記載の装置。
【請求項１６】
前記データ要求を経路指定する前に、前記データ要求アドレスが、置換アドレスに置き換えられる、請求項１４記載の装置。
【請求項１７】
前記キャッシング・レジスタを含むクロスバー・スイッチをさらに備える、請求項１４記載の装置。
【請求項１８】
前記ブリッジが、アクセス・テーブル及びクロスバー・ルータの少なくとも１つをさらに含む、請求項１４記載の装置。
【請求項１９】
前記ブリッジが、前記キャッシング・レジスタにおけるミスに応答して、前記アクセス・テーブルを使用する、請求項１８記載の装置。
【請求項２０】
請求項１ないし請求項１３の何れか１項に記載の方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システム・オン・チップ（ＳＯＣ）内のデータ要求の処理及び転送に係る。
【背景技術】
【０００２】
一般に、複数の個別的な機能が、ＳＯＣに統合される。マイクロチップ上の種々のコンポーネントについて外部装置へのアクセスを保証することは、恒常的な設計課題である。例えば、比較的多数のＳＯＣプロセスは、外部メモリ（例えば、ＤＲＡＭ）への同時アクセスを必要とする。従って、設計者は、資源への有効なアクセスを保証するために、種々の経路指定方式及び構成を使用しなければならない。
【０００３】
資源アクセスを可能にするための従来の１つのアプローチは、オンチップの各機能コンポーネントに対しバスを専用化するというものである。このアプローチは、通信チャンネルを保証するのに有効であるが、データの効率的な共有を可能にせず、そのためデータ転送のコストが高くなる。より一般的なアプローチは、ＳＯＣの１つ以上のコンポーネントが単一のポートを通して外部装置と通信することができるように、共通バスを使用するというものである。
【０００４】
後者のアプローチは、この共通バスによる資源の共有を可能にするという点で価値があるが、ＳＯＣ内のコンテンツ又は他の機密データへのアクセスの制御に関してセキュリティ上の問題を生じる。例えば、ＳＯＣ内で大きな共通メモリ・プールを使用する場合には、保護されたメモリ空間への無許可のアクセスを防止することが困難である。かかるメモリの例は、トランスポート・デマルチプレクサによってセット・トップ・ボックスのデコーダに供給される圧縮データを含む。この理由で、セキュア・ブリッジが、ＳＯＣ内にしばしば組み入れられる。一般に、ブリッジは、種々のバス・アーキテクチャ間の接続を提供し且つサポートされるバス接続ＩＰコアの数を拡張することにより、拡張されたシステム機能を提供する。また、ブリッジは、データ・バスをセグメント化することにより、競合トラフィックの量を減少させる。
【０００５】
また、ブリッジは、オペレーションが当該ブリッジを通して流れる際に、アドレスの再マッピング（再配置）を実行するという追加の機能を提供するとともに、オペレーション完了を許可又は拒否するという検査機能を提供する。かかるブリッジの１例は、セキュア・ブート・コードによって付与されたアクセス権限に基づきメモリ内の領域へのアクセスを制限する、１セットのセキュリティ機能を提供する。
【０００６】
ブリッジを使用する共通バス・アーキテクチャでは、各バス・マスタは、システム・バス上に要求を発行する。バス・コントローラ機能内のアービタは、諸マスタによってシステム・バス上に置かれた諸要求を選択し、それらの要求を全てのスレーブに経路指定する。もし、要求とともに供給されたアドレスが、スレーブが存在するメモリ領域の範囲内に含まれるならば、当該スレーブは、当該要求を肯定応答する。
【０００７】
このプロトコルに従ったバス・アーキテクチャは、複数のスレーブ・セグメントがバス上に存在する場合は、クロスバー実装を可能にする。クロス・ポイント又はマトリックス・スイッチとも呼ばれるクロスバーは、複数の入力を複数の出力にマトリックス式に接続するスイッチから成る。かかるシステムでは、諸マスタ要求は、クロスバーによって復号されるアドレス・ビットのサブセットに基づいて、諸スレーブ・セグメントに経路指定されるのが普通である。各セグメントは、当該セグメントに経路指定される諸要求を処理するための、それ自体のアービタ及びバス・コントローラ機能を有する。
【０００８】
ブリッジは、かかるバス上でクロスバーのバス・コントローラと諸スレーブとの間に挿入され、その場合、当該ブリッジは、クロスバーにとってはスレーブとして見え、諸スレーブにとってはバス・コントローラとして見える。このブリッジは、各要求アドレスを検査するためのアクセス・テーブルを含む。このブリッジに入来する各要求は、このアクセス・テーブルの全てのエントリに対して検査される。このアクセス・テーブルの各エントリは、入来する要求アドレスと突き合わせるために使用されるアドレスに加えて、アクセス権限、再マップ・アドレス及び他のパラメータへのポインタを有する。もし、アドレス一致が検出され且つアクセス権限が付与されるならば、当該要求は、一致するアクセス・テーブル・エントリからの新しい再マップ・アドレスとともに当該ブリッジを継続的に通過する。
【０００９】
かかるブリッジ実装の利点にも拘わらず、このブリッジの組み込みは、性能ペナルティ（例えば、遅延）を伴う。また、かかる実装は、追加のクロスバー兼調停機能を必要とし、その結果、ブリッジの設計がより複雑になり、コストも高くなる。さらに、かかるブリッジは、アクセス・テーブルに関連する諸スレーブ・セグメントを収容するために多数のポートを必要とし、その結果、コストがさらに高くなる。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
従って、当分野では、経路指定をストリーム化し且つハードウェア要件を最小化することにより、システム性能を改良するための方法が必要とされている。
【課題を解決するための手段】
【００１１】
本発明の諸実施形態は、キャッシング・レジスタを有するブリッジにおいてデータ要求を受け取り且つ当該キャッシング・レジスタを使用して前記データ要求を経路指定情報と突き合わせることにより、ＳＯＣ内でデータ要求を経路指定するための改良された方法、装置及びコンピュータ・プログラムを提供する。前記経路指定情報は、タグに関連する。前記データ要求は、前記経路指定情報を使用して経路指定される。
【００１２】
本発明の諸側面に従って、前記キャッシング・レジスタは、アクセス・テーブル・ヒットに応答して更新される。前記データ要求アドレスは、前記データ要求を経路指定する前に、前記キャッシング・レジスタを使用して、置換アドレスに置き換えられる。そのように構成される場合、前記ブリッジの他のキャッシング・レジスタを使用して、他のデータ要求を他の経路指定情報と同時に突き合わせることができる。
【００１３】
本発明の諸実施形態は、前記ブリッジ内のクロスバー・スイッチを含む。例えば、前記キャッシング・レジスタは、前記ブリッジのクロスバー・スイッチ内に配置される。諸実施形態は、前記ブリッジのクロスバー・スイッチ内に配置されたアクセス・テーブルを含む。１つの実施形態は、前記アクセス・テーブル及びクロスバー・ルータの代わりに、前記キャッシング・レジスタを使用して、前記データ要求を機能的なスレーブ・コンポーネントに関連する経路指定情報と突き合わせる。
【００１４】
本発明の他の側面に従って、前記ブリッジは、当該ブリッジのポートごとに少なくとも１つのキャッシング・レジスタを含む。前記経路指定を促進するために、前記キャッシング・レジスタ内にセグメント識別子が格納される。前記キャッシング・レジスタは、機能的なマスタ・コンポーネントによって最近に使用されたアクセス・テーブルのデータを格納する。前記キャッシング・レジスタ内に一致が存在しない場合は、データ要求を突き合わせるために、前記アクセス・テーブルが検索される。
【００１５】
本発明の諸実施形態は、データ要求の転送中に、クロスバー経路指定を１度だけ行う。必要に応じて、前記データ要求に関連するセキュリティ権限が決定される。他の決定は、前記データ要求に適切な経路指定セグメントを決定することに関係する。
【発明の効果】
【００１６】
本発明は、クロスバー内で、クロスバー・セグメント経路指定機能及びアクセス・テーブル・アドレス再マッピング機能を組み合わせることにより、セグメント経路指定に先行して、アドレス再マッピングを行うことができるという効果を奏する。また、本発明は、マスタ・ポートごとに、１つ以上のアクセス・テーブル用キャッシング・レジスタを追加することにより、各マスタに関連する１つ以上のアクセス・テーブル・エントリの迅速な検索を可能にするとともに、アクセス・テーブルにポートを追加することなく、複数のマスタによる同時的な検索を可能にするという効果を奏する。セグメント識別子をこれらのキャッシング・レジスタ内に格納すると、一致する要求を適切なスレーブ・セグメントへ経路指定する方法を指示することができる。
【図面の簡単な説明】
【００１７】
【図１】アクセス・テーブルを有するセキュア・ブリッジを含む、ＳＯＣ実装のブロック図である。
【図２】ＳＯＣ内のブリッジ実装のブロック図である。
【図３】ＳＯＣ実装のタイミング図である。
【図４】本発明の基本原理に従った、組み合わせ式クロスバー兼アクセス・テーブル・ユニット兼キャッシング・レジスタを有する、ブリッジ実装のブロック図である。
【図５】キャッシングレジスタ・ヒットが生じる場合の、図４のブリッジ実装のタイミング図である。
【図６】キャッシングレジスタ・ミスが生じる場合の、図４のブリッジ実装のタイミング図である。
【図７】本発明の基本原理に従った、組み合わせ式クロスバー兼アクセス・テーブル・ユニット兼キャッシング・レジスタを有するブリッジ実装を含む、ＳＯＣのブロック図である。
【図８】本発明の基本原理に従った、キャッシング・レジスタを使用して、アクセス権限、再マップ・アドレス及びスレーブ・セグメントを決定するためのフローチャートである。
【発明を実施するための形態】
【００１８】
本発明の諸実施形態は、クロスバー内で、クロスバー・セグメント経路指定機能及びアクセス・テーブル・アドレス再マッピング機能を組み合わせる。このようにすると、セグメント経路指定に先行して、アドレス再マッピングを行うことができる。本発明の諸側面は、マスタ・ポートごとに、１つ以上のアクセス・テーブル用キャッシング・レジスタを追加する。これらのキャッシング・レジスタは、各マスタに関連する１つ以上のアクセス・テーブル・エントリの迅速な検索を可能にするとともに、前記アクセス・テーブルにポートを追加することなく、複数のマスタによる同時的な検索を可能にする。セグメント識別子をこれらのキャッシング・レジスタ内に格納すると、一致する要求を適切なスレーブ・セグメントへ経路指定する方法を指示することができる。
【００１９】
このように、アクセス・テーブルを検索する必要性を最小化することができる。というのは、アクセス・テーブルの完全な検索を行うのではなく、アクセス・テーブル用キャッシング・レジスタを使用すれば、必要とされる情報が高い確率で検出されるからである。これらのキャッシング・レジスタは、マスタによって最近に使用されたアクセス・テーブル・エントリを格納する。これらのキャッシング・レジスタには、エントリごとにスレーブ・セグメント情報を記憶するための複数のビットが追加される。
【００２０】
諸実施形態は、ブリッジ内の第２のクロスバー要求経路指定機能の必要性を排除する。本発明の諸側面は、クロスバー・アドレス経路指定を１度だけ実行することにより、システム性能を改良する。諸機構は、アクセス・テーブル内に複数のポートを設ける必要性を減少又は排除する。
【００２１】
図１に例示するシステムは、バス・コントローラのスレーブ・セグメントと複数のバス・スレーブとの間に挿入されたブリッジを有する。具体的には、図１のＳＯＣ １００は、バス制御ユニット１３０と通信関係にある複数のマスタ１１０を有する。バス制御ユニット１３０は、ブリッジ１４０を構成するアクセス制御ユニットと通信関係にある。ブリッジ１４０は、入来するマスタ要求と諸スレーブ１２０に引き渡される要求との間の調停を行う。ブリッジ１４０は、アクセス・テーブル１５０、アクセス・パラメータ１６０及び暗号化／暗号化解除ユニット１７０を有する。ブリッジ１４０は、複数のスレーブ１２０と通信する。さらに、図１は、簡略化したデータの説明及びパスを示す。
【００２２】
図２に例示するブリッジ実装２００は、図１のＳＯＣ １００内で適用可能である。通常の設計の制限に焦点を当てるために、図１のデータフロー・パスに類似するものは、図２には示されていない。具体的には、図２に示すＳＯＣの主要なコンポーネントのうち、クロスバー２０２は、図１のバス制御ユニット１３０に対応する。図１に示されていないのは、図２のクロスバー２０２に関連する、バス制御ユニット１３０とブリッジ１４０との間のインタフェースの複製である。クロスバー２０２は、マスタ２０４、２０６に接続する。セキュア・ブリッジ２０８は、スレーブ・セグメント要求インタフェースを介してクロスバー２０２に接続し、スレーブ２１０、２１２は、第１のスレーブ・セグメント・インタフェースを介してセキュア・ブリッジ２０８に結合する。スレーブ２１４、２１６は、第２のスレーブ・セグメント・インタフェースを介してセキュア・ブリッジ２０８に結合する。簡潔のために、これらのセグメントに接続される追加のスレーブは、図示されていない。図１に示されていないのは、図２のクロスバー２０８に関連する、ブリッジ１４０と諸スレーブ１２０との間のインタフェースの複製である。
【００２３】
クロスバー２０２は、クロスバー・アドレス経路指定ユニット２１８を含む。このクロスバー・アドレス経路指定ユニット２１８は、セグメント・アービタ２２０、２２２に選択的に接続する。ブリッジ２０８は、アクセス・テーブル２２４及びクロスバー・アドレス経路指定ユニット２２６を含む。このクロスバー・アドレス経路指定ユニット２２６は、セグメント・アービタ２２８、２３０に選択的に接続する。
【００２４】
前述のように、ブリッジ２０８内のアクセス・テーブル２２４は、入来するマスタ要求のための再マップ・アドレス（置換アドレス）を生成する。この新しい再マップ・アドレスは、当該要求が目標とするスレーブ・セグメントに影響することがある。クロスバー２０２が、要求を１つのスレーブ・セグメントへ経路指定するのに対し、ブリッジ２０８内のアクセス・テーブルが、他のスレーブ・セグメントを目標とする再マップ・アドレスを選択することがあり得る。その結果、ブリッジ２０８は、ブロック２２６、２２８及び２３０において第２のクロスバー兼調停機能を実装する必要がある。しかし、これらのプロセス及び関連するユニットは、ブリッジの設計をより複雑にするばかりか、コストを高くする。
【００２５】
さらに、ブリッジ２０８をＳＯＣ内に組み込むことに関連する性能ペナルティが存在する。具体的には、図２のシステム設計は、マスタ要求をスレーブ装置２１０〜２１６へ経路指定する場合に、特定のシーケンスに従うことを必要とする。第１に、バス・マスタ２０４、２０６が発行する要求は、アドレス・ビットのサブセットを使用して、クロスバー２０２を通して経路指定される。この要求はアドレスを含み、その一部は、諸スレーブ・セグメントへの経路指定を決定するために使用される。セキュア・ブリッジ２０８は、その入力ポートのうちの１つにおいてクロスバー２０２からの要求を受け取り、アクセス権限の検査及びアドレス再マッピングのために、当該要求をアクセス・テーブル２２４に送る。クロスバー経路指定機能２２６は、この新しい再マップ・アドレスを使用して、宛先のスレーブ・セグメントを決定する。
【００２６】
好ましい実施形態では、要求がマスタによって発行される時点と当該要求がスレーブによって肯定応答される時点との間には、理想的には、３サイクルの要求−肯定応答最小待ち時間が存在する。すなわち、このシーケンスのタイミングは、第１サイクル中に、バス・マスタがその要求を発行し、第２サイクル中に、ＰＬＢバス・アービタが選択された要求をスレーブに、そして第３サイクル中に、該当するスレーブが応答することを含む。しかし、セキュア・ブリッジ２０８をＳＯＣ内に組み込むと、この最小の待ち時間に少なくとも１サイクルが加わる。というのは、第２サイクル中には、アドレスをスレーブ２１０〜２１６に引き渡す準備ができていないからである。その代わりに、第２サイクル中には、このアドレスをアクセス・テーブル２２４内で検索しなければならない。また、第２サイクル中には、スレーブ・セグメントの決定も実行しなければならない。この実装に依存して、アクセス・テーブルの検索及びスレーブ・セグメントの決定を実行するためには、ＰＬＢクロック・サイクルの大部分を必要とする。第３サイクルまでは、その要求は、目標スレーブ２１０〜２１６に引き渡されない。従って、その後の第４サイクル中にだけ、スレーブ２１０〜２１６は、この要求に応答することができる。
【００２７】
図３は、前述のタイミング・シーケンスをグラフ式に示す。具体的には、図３は、ブリッジ実装２００の諸コンポーネントによるデータ要求の転送に関するタイミング・シーケンス２５０を示す。図３は、クロスバー２０２及びスレーブ２１０〜２１６のそれぞれから見たタイミング・シーケンスを示す。
【００２８】
クロスバー２０２は、サイクル１中に発行される要求２５２を検知する。要求２５２は、クロスバー経路指定及びクロスバー調停と一致することがある。（クロスバー２０２から見た）サイクル２中のデータ要求の転送２５４は、サイクル１のクロスバー調停を獲得したことを仮定する。この転送２５４は、アクセス・テーブル２２４の検索及び適切な経路指定を含む。
【００２９】
サイクル３は、（クロスバー２０２から見た）肯定応答２５６及び（スレーブ２１０〜２１６から見た）データ要求の転送２５８を含む。サイクル４は、要求を受け取ったという肯定応答２６０を含む。タイミング・シーケンス２５０に示すように、セキュア・ブリッジ２０８は、少なくとも１サイクルだけ処理を遅延させる。
【００３０】
幾つかのＳＯＣに関する他の問題は、セキュア・ブリッジ２０８内のアクセス・テーブル２２４に設けることが必要なポートの数に関係する。スレーブ・セグメントの数が増加するにつれて、アクセス・テーブル２２４を同時に検索するために必要とされるポートの数も増加する。同時的な検索は、２つの要求を異なるスレーブ・セグメントに同時に進行させることを可能にする。しかし、追加のポートを設けると、アクセス・テーブル２２４のサイズ及び読み取り時間が著しく増加する。
【００３１】
図４は、セキュア・ブリッジ３０１を含む、ＳＯＣ ３００の選択されたコンポーネントを示す。ブリッジ３０１は、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２及びセグメント・アービタ３１６、３１８を有する。ブリッジ３０１は、マスタ３０８、３１０及びスレーブ装置３２０〜３２６と通信関係にあるように、配置することができる。
【００３２】
組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２は、クロスバー・アドレス経路指定ユニット３０４、アクセス・テーブル３０６及びアービタ３０７を含む。アービタ３０７は、共用資源へのアクセスを割り振るための電子装置から構成される。アービタは、同時的な複数の要求から共用資源へのアクセスの順序を選択する。このように、アービタ３０７は、２つのオペレーションが１度に生じるのを防止することができる。
【００３３】
さらに、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２は、キャッシング・レジスタ３１２、３１４を含む。キャッシング・レジスタ３１２、３１４の一方又は両方は、ブリッジ３０１のマスタ・ポートを通して、マスタ３０８、３１０とそれぞれ通信する。
【００３４】
キャッシング・レジスタ３１２、３１４は、迅速にアクセス可能なメモリを含み、アクセス・テーブル３０６のオペレーションに取って代わるか又はこれを増強することができる。キャッシング・レジスタ３１２、３１４は、頻繁にアクセスされるデータを高速アクセスのために格納する一時記憶域を含む。一旦データがキャッシング・レジスタ３１２、３１４内に格納されると、オリジナル・データを再フェッチ又は再計算するのではなく、キャッシュされたコピーにアクセスして将来の使用を行うことができ、その結果、平均アクセス時間がより短くなる。従って、キャッシングは、データ・アクセスを促進するのを支援する。かかるデータは、アドレスを含む。
【００３５】
１つの実施形態では、各要求用の実アドレスの上位アドレス・ビットは、それぞれがタグを保持する、１つ以上のキャッシング・レジスタと比較される。タグは、キャッシング・レジスタの内容をデータ要求と突き合わせるための情報に加えて、アドレスを含む。キャッシング・レジスタごとに、追加の情報又は属性がリストされる。かかる追加の情報は、可能な置換アドレス、当該置換アドレスへの再マッピングが許可されるか否かを指示する情報、当該タグに関連するメモリ領域のサイズ及び当該エントリが全体として有効であるか否かを指示する情報を含む。さらに、各レジスタ・エントリは、マスタ識別子番号に基づく読み取り又は書き込み権限を含む。さらに、各レジスタ・エントリは、暗号化兼暗号化解除機構のようなセキュリティ機能に関係する情報を含む、別個のパラメータ・テーブル・エントリ（パラメータ・テーブルは図示されていない）を指定する。パラメータ・テーブル及び他の関連するセキュリティ機能は、本発明の要旨には直接的に関係しないので、これらについては説明を省略する。また、キャッシング・レジスタ内には、セグメント識別子が含まれる。このセグメント識別子は、要求をスレーブ・セグメントに経路指定するために使用される。この機構を使用すると、所与の要求を、メモリ領域サイズに基づく上位アドレス、マスタ識別子及びマスタ識別子番号に基づく読み取り又は書き込み権限指標と比較することにより、当該要求のためのアクセス・レベルを得ることができる。さらに、当該比較の結果に依存して、当該要求を、１セットのアクセス・パラメータに関連付けることができる。
【００３６】
キャッシング・レジスタ３１２、３１４を通して経路指定される要求は、アクセス・テーブル３０６を通しての経路指定又はクロスバー・アドレス経路指定ユニット３０４を必要とすることなく、セグメント・アービタ３１６、３１８に直接的に接続することができる。その意味で、キャッシング・レジスタ３１２、３１４は、セグメント・アービタ３１６、３１８への直接パスを提供し、最終的にはスレーブ装置３２０〜３２６への直接パスを提供する。
【００３７】
図４の拡張された組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２は、図２のクロスバー・アドレス経路指定機能２１８に置き換わるものである。この機構は、従来技術の反復的なクロスバー経路指定の要件を排除することができる。
【００３８】
クロスバーに対する任意のサイクル時間の影響を最小化するためには、アクセス・テーブルの検索機能は、それが置き換わるクロスバー・アドレス経路指定機能３０４のタイミング遅延を超過すべきでない。アクセス・テーブル３０６の完全な検索を行うと、恐らくクロスバー・アドレス経路指定機能３０４の検索時間を超過するであろう。キャッシング・レジスタ３１２、３１４は、この影響を減少させるか又は排除する。キャッシング・レジスタ３１２、３１４は、静的に又は動的に特定のマスタ３０８、３１０に関連付けることができる。
【００３９】
キャッシング・レジスタ３１２、３１４は、特定のマスタ３０８、３１０によって最近に使用されたアクセス・テーブル情報を捕捉する。キャッシング・レジスタ３１２、３１４の内容は、アクセス・テーブル３０６の一部である、新しい制御論理によって管理される。また、これらの内容は、ソフトウェアによって部分的に又は完全に管理することができる。この制御論理が置換のためにその内容を選択する場合、キャッシング・レジスタ３１２、３１４は、新しい値をロードされる。この選択が行われるのは、マスタ要求に対して一致するキャッシング・レジスタが検出されない場合である。一致するキャッシング・レジスタが検出されない場合、アクセス・テーブルの完全な検索が行われる。もし、一致するアクセス・テーブル・エントリが検出されるならば、当該エントリは、選択されたキャッシング・レジスタ３１２、３１４にロードされる。
【００４０】
マスタ・ポートは、特定の時間間隔にわたって、アクセス・テーブル・エントリによって定義された同じ領域に繰り返しアクセスすることが多い。このように、高いヒット率が生じ、キャッシング・レジスタ３１２、３１４が完全なアドレスと一致することが多くなる。しかし、複数チャネル直接メモリ・アクセス（ＤＭＡ）コントローラのような特定のマスタが、異なる領域に対するマスタ要求活動の複数の同時ストリームを有することがあり得る。もし、かかるマスタがシステム内に存在すれば、このタイプのマスタのために複数のキャッシング・レジスタ３１２、３１４を割り振ることが望ましい。
【００４１】
各マスタ・ポートに割り振られるキャッシング・レジスタの数は、多くの方法で決定することができる。例えば、この数をレジスタ転送レベル（ＲＴＬ）で静的に構成し、これを特定のＳＯＣ実装のために調整することができる。諸実施形態は、所与のマイクロチップ設計における１マスタ・ポート当たりのキャッシング・レジスタの特定の数をコミットする。代替的に、この数は、キャッシング・レジスタの集合から動的に構成することができる。ソフトウェアは、ハードウェア初期化時間において、１マスタ・ポート当たりのキャッシング・レジスタの特定の数を構成する。代替的に、ハードウェアは、通常のオペレーション中に、選択された割り振りポリシに基づいて１マスタ・ポート当たりのキャッシング・レジスタ３１２、３１４の数を動的に構成することができる。
【００４２】
所与の設計目標のために前述の割り振りスキームのどれを実装するかを決定することは、設計の柔軟性、複雑さ、エリア及びタイミングの間の適用可能なトレードオフを評価することを含む。例えば、最も簡単な構成は、各マスタに単一のキャッシング・レジスタを静的に割り振るというものである。
【００４３】
動的な割り振りスキームについては、追加的なマスタＩＤフィールドを各キャッシング・レジスタに設けることにより、１つ以上のキャッシング・レジスタを特定のマスタに割り振ることができる。このフィールドは、入来するマスタ要求を諸キャッシング・レジスタと突き合わせる機能の一部として使用することができる。
【００４４】
マスタ要求をセグメント・アービタに経路指定するために使用される突き合わせ機能は、当該アクセスを検証するために使用される突き合わせ機能と同じである必要はない。経路指定するための突き合わせ機能は、より簡単な機構（例えば、アドレス・ビットのサブセット）を使用する。完全なアドレスの突き合わせ及びアクセス権限の検証を並行に行い、その結果を、調停済みの要求をスレーブ装置に送ることを阻止するために使用することができる。この場合、ハードウェア又はソフトウェアは、適正なオペレーションを保証するためにキャッシング・レジスタ・エントリを管理しなければならない。例えば、各エントリは、経路指定のための一意的な一致を生成する。
【００４５】
また、キャッシングレジスタ・ミス（すなわち、入来する要求と完全に一致するキャッシング・レジスタが存在しない）の後に、キャッシング・レジスタをアクセス・テーブルの内容で更新する場合、当該キャッシング・レジスタにセグメント識別情報が追加される。マスタ要求が特定のポートに入来する場合、適切なキャッシング・レジスタからのセグメントＩＤを使用して、この要求を適切なセグメント・アービタに経路指定する。もし、このマスタ・ポート上に、単一の静的に構成されたキャッシング・レジスタだけが存在すれば、そのキャッシング・レジスタからのセグメントＩＤを経路指定のために使用する。もし、このマスタ・ポート上に、動的に割り振られた複数のキャッシング・レジスタが存在すれば、経路指定用の突き合わせ機能を使用して、複数のセグメントＩＤのうちの１つを選択する。
【００４６】
キャッシングレジスタ・ヒット（すなわち、入来する要求と完全に一致するキャッシング・レジスタが存在する）を仮定すると、再マップ・アドレスは、一致するキャッシング・レジスタから直接的に得ることができる。このアドレスは、もはやクロスバー経路指定のためには使用されないが、当該要求がセグメント・アービタによって選択される場合、諸スレーブに直接的に転送することができる。
【００４７】
図５は、キャッシングレジスタ・ヒットが生じる場合の、図４のＳＯＣ ３００の諸コンポーネントのタイミング図３５０を示す。具体的には、タイミング・シーケンス３５０は、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２、スレーブ装置３２０〜３２６から見た、複数サイクルの期間にわたるデータ要求通信を示す。
【００４８】
サイクル１中、要求３５２と同時に、キャッシング・レジスタ３１２は、検索を遂行し、キャッシング・レジスタ３１２からのセグメント識別子を使用して、要求３５２を経路指定する。また、サイクル１中、この要求は、経路指定に依存して、セグメント・アービタ３１６又は３１８によるクロスバー調停を獲得する。
【００４９】
サイクル２中に、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２及び該当するスレーブ装置３２０の両方は、要求の転送３５４及び３５６をそれぞれ検知する。サイクル３中に、肯定応答３５８、３６０が発行される。留意すべきは、このオペレーションがサイクル３中に達成され、サイクル４中には如何なるプロセスも必要とされないということである。
【００５０】
図５は、マスタ要求が関連するキャッシング・レジスタ・エントリに一致し且つスレーブ・セグメント３２８のための調停を獲得することを示す。図３と対比すると、図５のタイミング図３５０は、キャッシングレジスタ・ヒットが生じる場合に、マスタ要求をスレーブに引き渡すことに関連する１サイクルが除去されることを示す。
【００５１】
もし、キャッシング・レジスタ３１２、３１４で一致が生じなければ、セグメント調停の結果が、スレーブ装置３２０〜３２６に伝播することを阻止しなければならない。同様に、アービタの状態情報の更新も阻止しなければならない。
【００５２】
キャッシングレジスタ・ミスが生じる場合は、アクセス・テーブルの完全な検索を行うことにより、要求中マスタ３０８のための有効なエントリがアクセス・テーブル３０６内にあるか否かを決定する。もし、この要求がアクセス・テーブル３０６の検索を必要とする唯一の要求であれば、アクセス・テーブルの完全な検索を、キャッシング・レジスタの突き合わせと並行に行うことができる。もし、２つ以上の要求がアクセス・テーブル３０６に同時に入ろうとしているならば、アービタ３０７を使用して、アクセス・テーブル３０６への入力を制御するための調停が行われる。アービタ３０７は、例えば、クロック・サイクルごとにアクセス・テーブル３０６への新しい要求を受け入れるように設計することができる。
【００５３】
そのように構成される場合、アクセス・テーブル３０６は、ｎ個（但し、ｎは１より大きい正の整数）の要求ポートを実装し、アービタ３０７は、ｎ個の未処理要求を選択することができる。アクセス・テーブル３０６上のポートの数は、複数の未処理マスタ要求の頻度、追加のポートを加えることによる結果的な性能効果、及びそれらを実装するのに必要とされる追加論理の関数として最適化することができる。アクセス・テーブルへのポートの数は、マスタ要求ポートの数と直接的な関係がない。
【００５４】
一旦、キャッシングレジスタ・ミスを伴う要求がアクセス・テーブル３０６への入力を獲得し、そしてアクセス・テーブル・ヒットを仮定すると、有効な再マップ・アドレスがこの要求に割り当てられる。その後、その要求は、クロスバー・アドレス経路指定及び適切なセグメント調停を経ることができる。キャッシング・レジスタは、選択されたアクセス・テーブル・エントリ及びセグメントＩＤを反映するように更新される。セグメントＩＤは、クロスバー・アドレス経路指定機能ユニット３０４の出力とすることができる。もし、要求中マスタ３０８に関連する複数のキャッシング・レジスタが存在し且つその何れも一致しなかったならば、最低使用頻度（ＬＲＵ）選択プロセスのような標準的な選択スキームを使用して、キャッシング・レジスタ３１２が更新のために選択される。
【００５５】
図６は、キャッシングレジスタ・ミスが生じる場合の、図４のＳＯＣ ３００の諸コンポーネントのタイミング図４００を示す。図５のキャッシングレジスタ・ヒットのシナリオのように、図６のタイミング図４００は、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２及びスレーブ装置３２０〜３２６の１つの両方から見たものである。
【００５６】
タイミング図４００のプロセスは、アクセス・テーブル３０６のポートが使用可能であり且つマスタ３０８からの要求が調停を獲得するも、キャッシングレジスタ・ミスを伴うことを仮定する。要求サイクルの終わりに、再マップ・アドレスが使用可能になり、次のサイクルで、この再マップ・アドレスを使用して当該要求を経路指定すべき適切なセグメントを決定する。この場合、１サイクルのペナルティを被る。もし、アクセス・テーブル３０６上のポートが直ちに使用可能でなければ、追加のペナルティ・サイクルが生じることがある。
【００５７】
タイミング図４００を参照して具体的に説明する。サイクル１中に、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２は、要求４０２を検知し、それと同時にキャッシング・レジスタ３１２におけるミスが生じる。組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２は、アービタ３０７及びアクセス・テーブル３０６を使用して、検索を遂行する。
【００５８】
サイクル２は、要求の転送４０４を含み、そこではアクセス・テーブル３０６からの再マップ・アドレスに基づいて、クロスバー・アドレス経路指定が遂行される。
【００５９】
サイクル３は、該当するスレーブ装置３２０から見た、肯定応答４０６及び要求の転送４０８を含む。サイクル４は、肯定応答４１０を含む。
【００６０】
図７は、本発明の基本原理に従った、クロスバー兼アクセス・テーブル・ユニット５５０を含む、ＳＯＣ ５００を示す。ＳＯＣ ５００は、 図１のＳＯＣ １００内に示されるのと同じ又は同様のコンポーネントの多くを含む。具体的には、図７は、複数の内部機能的マスタ５１０を有するＳＯＣ ５００を示す。これらのマスタ５１０は、プロセッサから成り、プロセッサ・コア及びメモリ管理ユニット（図示せず）を含む。この例では、マスタ５１０は、共用バスのバス兼アクセス制御ユニット５４０に接続する。図７には、１つのスレーブ・セグメントだけが示されているが、クロスバー機能は、複数のスレーブ・セグメントの存在を暗示する。
【００６１】
クロスバー兼アクセス・テーブル・ユニット５５０は、バス兼アクセス制御ユニット５４０及び多数のスレーブ５２０の間のデータ要求パス内で調停を行う。データ要求のために使用される前述の経路指定は、当該要求に関連するデータについても使用される。また、図７は、バス制御アーキテクチャの諸信号を簡略的に示す。
【００６２】
１つの実装では、マスタ５１０からの要求は、その要求アドレス及び関連する制御信号（読み取り又は書き込み等）とともに、バス兼アクセス制御／ブリッジ５４０に送られる。クロスバー兼アクセス・テーブル・ユニット５５０は、要求アドレス、マスタＩＤ及び読み取り又は書き込み指標を、そのマスタ５１０に対する許可されたアクセス可能性の定義と比較する。所与の要求は、阻止（終了）されるか、平文で許可されるか、暗号化／暗号化解除ユニット５７０で許可されることがある。
【００６３】
もし、要求された転送を許可可能であれば、バス信号が、スレーブ５２０に伝播される。クロスバー兼アクセス・テーブル・ユニット５５０に基づく、当該要求に関連するアクセス・パラメータ５６０は、暗号化／暗号化解除が適用可能であれば、暗号化／暗号化解除ユニット５７０に送られる。暗号化／暗号化解除ユニット５７０は、関連するアクセス・パラメータ５６０を使用して、データが所与のスレーブ５２０に転送されるときに当該データを暗号化／書き込むか、又はデータが所与のスレーブ５２０から戻されるときに当該データを暗号化解除／読み取る。
【００６４】
バス兼アクセス制御ユニット５４０は、ＳＯＣ ５００内のスレーブ５２０への諸要求を調整し且つ統合することを促進する。例えば、第１のスレーブ５２０は、フラッシュ・メモリのような外部の不揮発性メモリ（図示せず）に接続される、外部バス・コントローラを含む。他のスレーブ５２０は、ＤＲＡＭのような外部の揮発性メモリ（図示せず）に接続するメモリ・コントローラを含む。
【００６５】
一般に、諸機能は、メモリ・コストを最小化し且つ諸機能間のデータ転送を促進するために、ＳＯＣ内の共通メモリ・プールを共有する。このように、全ての内部マスタ５１０は、不揮発性及び揮発性メモリの両方に対して同等のアクセスを有することができ、また、両者の記憶空間は、データ・アクセスに関する制限が存在しないことを意味するように、オープンであるとラベル付けされる。典型的には、不揮発性メモリは、電力が除去される場合でもデータを保持するための、永続的ストレージとして使用される。このメモリは、ブート・コード、オペレーティング・システム及びドライバのようなオペレーティング・コード及び任意の永続的データ構造を保持する。揮発性メモリは、セッション指向のストレージとして使用され、一般に、アプリケーション・データ及び他のマスタのデータ構造を保持する。揮発性メモリは、不揮発性メモリより速いので、揮発性メモリにオペレーティング・コードを移動させ、統合化された装置が動作可能である場合に、そこから命令を実行するのが一般的である。
【００６６】
ＳＯＣ ５００内の各マスタ５１０は、バス兼アクセス制御ユニット５４０に経路指定される要求信号の一部から成る、一意的なマスタ識別子を有する。複数の要求が提示される場合、バス兼アクセス制御ユニット５４０は、（バス優先順位に基づき）適切なマスタ５１０を選択し、そのマスタ５１０に肯定応答を返送する。
【００６７】
ブート・コード（初期化コード）は、マスタＩＤ及びアドレス範囲、並びにアクセス・パラメータに基づき、クロスバー兼アクセス・テーブル・ユニット５５０を含む、ブリッジ５４０及び許可されるトランザクションを指定する任意の関連するアクセス・レベルを構成することにより、要求をどのように処理すべきかを定義する。ブート・コードは、ソフトウェアの次のレベルに制御を引き渡す前に、アクセス・テーブルをロックすることにより、そこに識別されたアクセス・セキュリティ・レベルをその後に修正できないようにする。
【００６８】
図８は、本発明の基本原理に従った、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２を使用して、マスタ要求を処理することに関係する諸ステップを含むフローチャート６００を示す。具体的には、フローチャート６００の諸ステップは、キャッシング・レジスタ３１２、３１４及びアクセス・テーブル３０６を使用して、マスタ要求を処理する方法を示す。
【００６９】
フローチャート６００を参照して具体的に説明する。先ず、マスタ３０８からの要求が、ブリッジ３０１のポート上でアクティブとなる（ブロック６０２）。次に、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２は、キャッシング・レジスタ３１２内にアドレス一致が存在するか否かを決定する（ブロック６０４）。アドレス一致が存在すれば、ＳＯＣ ３００は、アクセス権限を付与すべきか否かを決定する（ブロック６０６）。そうでなければ、ＳＯＣ ３００は、スレーブ・セグメント３２８又は３２９へのオペレーションの伝播を阻止する（ブロック６０８）。
【００７０】
代替的に、アクセス権限が付与される場合（ブロック６０６）、ＳＯＣ ３００は、キャッシング・レジスタ３１２からのセグメント識別子を使用して、当該データ要求を適切なセグメント・アービタ３１６、３１８に送る（ブロック６１０）。調停が獲得される場合（ブロック６１２）、セグメント・アービタ３１６又は３１８は、当該要求をスレーブ・セグメント３２８又は３２９に、そして当該セグメントには、再マップ・アドレスが送られる（ブロック６１４）。
【００７１】
該当するキャッシング・レジスタ３１２内でアドレス一致を検出することができない場合、アービタ３０７を使用して、アクセス・テーブル３０６へのアクセスを調停する（ブロック６１６）。調停が獲得される場合（ブロック６１８）、アクセス・テーブル３０６内でアドレス一致を検出することができるか否かを決定する（ブロック６２０）。アドレス一致が検出されない場合、オペレーションの伝播が変更される（ブロック６０８）。
【００７２】
代替的に、アドレス一致が検出される場合（ブロック６２０）、ＳＯＣ ３００は、アクセス権限を付与すべきか否かを決定する（ブロック６２２）。アクセス権限が付与されない場合、スレーブ・セグメント３２８又は３２９へのオペレーションの伝播が阻止される（ブロック６０８）。代替的に、アクセス権限が付与される場合（ブロック６２２）、再マップ・アドレスがクロスバー・アドレス経路指定ユニット３０４に送られる（ブロック６２４）。
【００７３】
当該要求は、セグメント・アービタ３１６又は３１８に送られる（ブロック６２６）。適切なキャッシング・レジスタ３１２が、更新される（ブロック６２８）。調停が獲得される場合（ブロック６１２）、セグメント・アービタ３１６又は３１８は、当該要求を再マップ・アドレスとともにスレーブ・セグメント３２８又は３２９に引き渡す（ブロック６１４）。
【００７４】
このように、図８は、組み合わせ式クロスバー兼アクセス・テーブル・ユニット３０２のキャッシング・レジスタ３１２、３１４及びアクセス・テーブル３０６を使用して、マスタ要求を処理する方法のフローチャート６００を示す。論理的に順次に行われるものとして示されたフローチャート６００の特定のプロセスは、前述のように、並行に実施することができる。例えば、完全なアドレス突き合わせ及びアクセス権限の検証に先行して、マスタ要求をセグメント・アービタに送ることができる。
【００７５】
本発明の諸実施形態は、コンピュータ使用可能な媒体を有する、製品（例えば、１つ以上のコンピュータ・プログラム）に含めることができる。かかる媒体は、その内部に、例えば、本発明の諸機能を提供し且つ促進するためのコンピュータ可読プログラム・コード手段を具体化する。かかる製品は、コンピュータ・システムの一部として含まれるか、又は別個に販売することができる。
【００７６】
本発明の諸側面は、デスクトップ・コンピュータ、ラップトップ・コンピュータ、ハンドヘルド・コンピュータ、携帯電話、セット・トップ・ボックス、非ネットワーク式のスタンド・アロンの構成のような、単一のコンピュータ又は他のプログラム可能な電子装置内で実装することができる。
【００７７】
一般に、本発明の諸実施形態を実装するために実行されるルーチンは、オペレーティング・システム又は特定のアプリケーションの一部、コンポーネント、プログラム、モジュール、オブジェクト、モジュール又は命令のシーケンス、或いはそのサブセットとして実装されるか否かに拘わらず、本明細書では、これを「アルゴリズム」、「プログラム・コード」又は単に「プログラム」と称する。プログラム・コードは、典型的には、種々の時点においてコンピュータ内の種々のメモリ及びストレージに存在する１つ以上の命令から成り、そしてこれらの命令は、コンピュータ内の１つ以上のプロセッサによって読み取られ且つ実行されるとき、コンピュータに対し、本発明の種々の側面を具体化した諸ステップ又は諸要素を実行するのに必要な諸ステップを実行させるように作用する。
【００７８】
さらに、本発明は、ＳＯＣ及びコンピュータ・システムの文脈で説明されたが、本発明の種々の実施形態は、種々の形式を有するプログラムとして配布することができ、そして本発明は、かかる配布を実際に行うために使用されるコンピュータ可読媒体の特定のタイプに拘わらず、同等に適用することができる。コンピュータ可読媒体の例は、有形的で、記録可能な媒体及び伝送媒体を含む。有形的で、記録可能な媒体の例は、揮発性及び不揮発性メモリ装置、フレキシブル及び他の取り外し可能なディスク、ハード・ディスク・ドライブ、磁気テープ及び光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）を含む。伝送媒体の例は、デジタル及びアナログ通信リンクを含む。
【００７９】
また、本明細書中で説明された種々のプログラム・コードは、本発明の特定の実施形態で実装される、アプリケーションに基づいて識別することができる。しかし、本明細書中で使用される特定のプログラム名は、説明の便宜上のものであるに過ぎない。従って、本発明は、かかるプログラム名によって識別され又は暗示される特定のアプリケーションでのみ使用されるものと制限的に解すべきでない。
【００８０】
さらに、コンピュータ・プログラムをルーチン、手順、方法、モジュール、オブジェクト等として編成するための多数の態様が周知であり、しかもプログラム機能性をコンピュータ内に存在する種々のソフトウェア層（例えば、オペレーティング・システム、ライブラリ、ＡＰＩ、アプリケーション、アプレット等）の間で割り振るための多数の態様が周知であることを考慮すると、本発明は、本明細書で説明された特定の編成及びプログラム機能性の割り振りに限定されないことが明らかである。
【００８１】
図８のフローチャートは、１例であるに過ぎない。本発明の精神から逸脱することなく、図８又はその諸ステップ（オペレーション）に対し多くの変形を施すことができる。例えば、諸ステップを異なる順序で実施したり、諸ステップを追加、除去又は修正することができる。これらの変形の全ては、本発明の範囲に属するものと考えられる。
【００８２】
本発明は、種々の実施形態の詳細な説明によって開示されているが、そのことは、如何なる意味においても本発明の範囲をかかる詳細事項に限定することを意図するものではない。例えば、１つの実施形態は、アクセス・テーブルをクロスバーに移動することなく、アクセス・テーブルのポートの数を減少させ且つタイミング制約を減少させるために、ブリッジ内にキャッシング・レジスタを含んでいる。従って、本発明は、そのより広い側面において、添付図面に示し且つ以上で説明した特定の詳細事項、代表的な装置及び方法、並びに説明上の具体例に限定されない。従って、本発明の一般的な発明概念の精神から逸脱することなく、かかる詳細事項から逸脱することができる。
【符号の説明】
【００８３】
３００・・・・・・・システム・オン・チップ（ＳＯＣ）
３０１・・・・・・・セキュア・ブリッジ
３０２・・・・・・・組み合わせ式クロスバー兼アクセス・テーブル・ユニット
３０４・・・・・・・クロスバー・アドレス経路指定ユニット
３０６・・・・・・・アクセス・テーブル
３０７・・・・・・・アービタ
３０８、３１０・・・マスタ
３１２、３１４・・・キャッシング・レジスタ
３１６、３１８・・・セグメント・アービタ
３２０〜３２６・・・スレーブ
５００・・・・・・・システム・オン・チップ（ＳＯＣ）
５１０・・・・・・・マスタ
５２０・・・・・・・スレーブ
５４０・・・・・・・バス兼アクセス制御ユニット
５５０・・・・・・・クロスバー兼アクセス・テーブル・ユニット
５６０・・・・・・・アクセス・パラメータ
５７０・・・・・・・暗号化／暗号化解除ユニット
【図１】
2010015560.tif 000003
【図２】
2010015560.tif 000004
【図３】
2010015560.tif 000005
【図４】
2010015560.tif 000006
【図５】
2010015560.tif 000007
【図６】
2010015560.tif 000008
【図７】
2010015560.tif 000009
【図８】
2010015560.tif 000010