(57)【要約】  データ通信のためのシステム、方法、および装置が提供される。装置は、インターフェースを介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成することであって、マスクフィールドが第1の数のビットを有する、生成することと、パケット内に制御ビットフィールドを設けることであって、制御ビットフィールドが第2の数のビットを有し、第2の数のビットが第1の数のビット未満である、設けることと、インターフェースを介してパケットを送信することとを行うように構成され得る。パケットは、スレーブデバイスの制御レジスタにアドレス指定され得る。制御レジスタは、第1の数のビットを有し得る。制御ビットフィールド内の各ビットは、マスクフィールドによって識別された制御レジスタ内のビットロケーションに対応し得る。
2018538617.tif 000002
【特許請求の範囲】
【請求項１】
バスマスタとして動作するデバイスにおいて実行される方法であって、
インターフェースを介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成するステップであって、前記マスクフィールドが第1の数のビットを有する、ステップと、
前記パケット内に制御ビットフィールドを設けるステップであって、前記制御ビットフィールドが第2の数のビットを有し、前記第2の数のビットが前記第1の数のビット未満であり、
前記マスクフィールドが、前記スレーブデバイスの制御レジスタ内の少なくとも1つのビットロケーションを識別するために生成され、前記制御ビットフィールドのビットが書き込まれることになる、前記制御レジスタ内のビットロケーションに対応する前記マスクフィールドの各ビットロケーションに、第1のビット値を与えることによって、前記制御ビットフィールドの少なくとも1つのビットが書き込まれることになる、ステップと、
前記インターフェースを介して前記パケットを送信するステップであって、前記パケットが、前記スレーブデバイスの前記制御レジスタにアドレス指定され、前記制御レジスタが、前記第1の数のビットを有する、ステップと
を備え、
前記制御ビットフィールド内の各ビットが、前記マスクフィールドによって識別された前記制御レジスタ内のビットロケーションに対応する、
方法。
【請求項２】
前記マスクフィールドがさらに、前記制御ビットフィールドのビットが書き込まれることになる、前記制御レジスタ内のビットロケーションに対応しない前記マスクフィールドの各ビットロケーションに、第2のビット値を与えることによって生成される、請求項1に記載の方法。
【請求項３】
前記マスクフィールド内のビットロケーションの位置が、前記制御ビットフィールド内のビットロケーションの位置とは無関係であり、
前記制御レジスタ内のビットロケーションの位置が、前記制御ビットフィールド内の前記ビットロケーションの位置とは無関係である、
請求項1に記載の方法。
【請求項４】
前記マスクフィールド内のビットロケーションの位置が、前記制御レジスタ内のビットロケーションの位置に直接対応する、請求項1に記載の方法。
【請求項５】
前記インターフェースが無線周波数フロントエンド(RFFE)インターフェースである、請求項1に記載の方法。
【請求項６】
前記スレーブデバイスが無線周波数(RF)フロントエンドの1つまたは複数の機能を実行するように構成される、請求項1に記載の方法。
【請求項７】
前記インターフェースがI3Cインターフェースである、請求項1に記載の方法。
【請求項８】
バスマスタ装置であって、
前記バスマスタ装置をシリアルバスに結合するように構成されたインターフェース回路と、
処理回路と
を備え、前記処理回路が、
前記インターフェース回路を介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成することであって、前記マスクフィールドが第1の数のビットを有する、生成することと、
前記パケット内に制御ビットフィールドを設けることであって、前記制御ビットフィールドが第2の数のビットを有し、前記第2の数のビットが前記第1の数のビット未満であり、
前記マスクフィールドが、前記スレーブデバイスの制御レジスタ内の少なくとも1つのビットロケーションを識別するために生成され、前記制御ビットフィールドのビットが書き込まれることになる、前記制御レジスタ内のビットロケーションに対応する前記マスクフィールドの各ビットロケーションに、第1のビット値を与えることによって、前記制御ビットフィールドの少なくとも1つのビットが書き込まれることになる、設けることと、
前記インターフェース回路を介して前記パケットを送信することであって、前記パケットが、前記スレーブデバイスの前記制御レジスタにアドレス指定され、前記制御レジスタが、前記第1の数のビットを有する、送信することと
を行うように構成され、
前記制御ビットフィールド内の各ビットが、前記マスクフィールドによって識別された前記制御レジスタ内のビットロケーションに対応する、
バスマスタ装置。
【請求項９】
前記マスクフィールドを生成するように構成された前記処理回路が、
前記制御ビットフィールドのビットが書き込まれることになる、前記制御レジスタ内のビットロケーションに対応しない前記マスクフィールドの各ビットロケーションに、第2のビット値を与える
ようにさらに構成される、請求項8に記載の装置。
【請求項１０】
前記マスクフィールド内のビットロケーションの位置が、前記制御ビットフィールド内のビットロケーションの位置とは無関係であり、
前記制御レジスタ内のビットロケーションの位置が、前記制御ビットフィールド内の前記ビットロケーションの位置とは無関係である、
請求項8に記載の装置。
【請求項１１】
前記マスクフィールド内のビットロケーションの位置が、前記制御レジスタ内のビットロケーションの位置に直接対応する、請求項8に記載の装置。
【請求項１２】
前記インターフェース回路が無線周波数フロントエンド(RFFE)インターフェースとして動作するように構成され、前記スレーブデバイスが無線周波数(RF)フロントエンドの1つまたは複数の機能を実行するように構成される、請求項8に記載の装置。
【請求項１３】
前記インターフェース回路が、I3Cインターフェースとして動作するように構成される、請求項8に記載の装置。
【請求項１４】
バスに結合されたスレーブデバイスにおいて実行される方法であって、
前記バスからパケットを受信するステップであって、前記パケットが、前記スレーブデバイスの制御レジスタにアドレス指定され、マスクフィールドと制御ビットフィールドとを含み、前記マスクフィールドが、前記制御ビットフィールドよりも多いビット数を有する、ステップと、
第1の値を有する前記マスクフィールド内の少なくとも1つのビットを識別するステップと、
前記第1の値を有する前記マスクフィールド内の前記少なくとも1つのビットに対応する前記制御ビットフィールド内の少なくとも1つのビットを検出するステップと、
前記制御ビットフィールド内の前記少なくとも1つのビットに基づいて前記制御レジスタに書き込むためのロード値を取得するステップと、
前記ロード値を前記制御レジスタに書き込むステップであって、前記制御ビットフィールド内の関連するビットに対応するものとして前記マスクフィールドによって識別された前記制御レジスタ内の各ビットロケーションが、前記制御ビットフィールド内の前記関連するビットに基づくビット値を含んでいる、ステップと
を備える方法。
【請求項１５】
前記ロード値を取得するステップが、
前記制御レジスタを読み取って前記制御レジスタの初期値を取得するステップと、
前記制御ビットフィールド内の前記少なくとも1つのビットを前記制御レジスタの前記初期値とマージしてマージ値を取得するステップと
を含み、
前記ロード値を前記制御レジスタに書き込むステップが、
前記制御ビットフィールド内の前記関連するビットに対応するものとして前記マスクフィールドによって識別された前記制御レジスタ内の各ビットロケーションが前記制御ビットフィールド内の前記関連するビットとマージされるように、前記マージ値を前記制御レジスタに書き込むステップ
を含む、請求項14に記載の方法。
【請求項１６】
前記制御ビットフィールド内のビットに対応するものとして前記マスクフィールドによって識別された前記制御レジスタ内のビットのみが、前記マージ値を前記制御レジスタに書き込むことによる影響を受ける、請求項15に記載の方法。
【請求項１７】
前記ロード値を取得するステップが、
前記制御ビットフィールド内の各ビットを、前記マスクフィールドの対応するビットロケーション内の前記第1の値によって識別されたビットロケーションにおけるマスキングワードに書き込むステップと、
定義済みマスキングビット値を、前記マスクフィールドの対応するビットロケーション内の第2の値によって識別された前記マスキングワード内の各ビットロケーションに書き込むステップと、
前記マスキングワードを使用して、前記制御ビットフィールド内の前記少なくとも1つのビットを前記制御レジスタの前記初期値とマージするステップと
をさらに含む、請求項15に記載の方法。
【請求項１８】
前記制御ビットフィールド内の前記少なくとも1つのビットを前記制御レジスタの前記初期値とマージするステップが、
前記制御レジスタの前記初期値と前記マスキングワードとの間の論理AND演算を実行して前記マージ値を生成するステップ
を含む、請求項17に記載の方法。
【請求項１９】
前記制御ビットフィールド内の前記少なくとも1つのビットを前記制御レジスタの前記初期値とマージするステップが、
前記制御レジスタの前記初期値と前記マスキングワードとの間の論理OR演算を実行して前記マージ値を生成するステップ
を含む、請求項17に記載の方法。
【請求項２０】
前記マスクフィールド内のビットロケーションの位置が、前記制御ビットフィールド内のビットロケーションの位置とは無関係であり、
前記制御レジスタ内のビットロケーションの位置が、前記制御ビットフィールド内の前記ビットロケーションの位置とは無関係である、
請求項14に記載の方法。
【請求項２１】
前記マスクフィールド内のビットロケーションの位置が、前記制御レジスタ内のビットロケーションの位置に直接対応する、請求項14に記載の方法。
【請求項２２】
前記バスが無線周波数フロントエンド(RFFE)バスであり、前記スレーブデバイスが無線周波数(RF)フロントエンドの1つまたは複数の機能を実行するように構成される、請求項14に記載の方法。
【請求項２３】
前記バスがI3Cバスである、請求項14に記載の方法。
【請求項２４】
スレーブデバイスであって、
前記スレーブデバイスをシリアルバスに結合するように構成されたインターフェース回路と、
処理回路と
を備え、前記処理回路が、
前記インターフェース回路を介して前記シリアルバスからパケットを受信することであって、前記パケットが、前記スレーブデバイスの制御レジスタにアドレス指定され、マスクフィールドと制御ビットフィールドとを含み、前記マスクフィールドが、前記制御ビットフィールドよりも多いビット数を有する、受信することと、
第1の値を有する前記マスクフィールド内の少なくとも1つのビットを識別することと、
前記第1の値を有する前記マスクフィールド内の前記少なくとも1つのビットに対応する前記制御ビットフィールド内の少なくとも1つのビットを検出することと、
前記制御ビットフィールド内の前記少なくとも1つのビットに基づいて前記制御レジスタに書き込むためのロード値を取得することと、
前記ロード値を前記制御レジスタに書き込むことであって、前記制御ビットフィールド内の関連するビットに対応するものとして前記マスクフィールドによって識別された前記制御レジスタ内の各ビットロケーションが、前記制御ビットフィールド内の前記関連するビットに基づくビット値を含んでいる、書き込むことと
を行うように構成される、スレーブデバイス。
【請求項２５】
前記ロード値を取得するように構成された前記処理回路が、
前記制御レジスタを読み取って前記制御レジスタの初期値を取得し、
前記制御ビットフィールド内の前記少なくとも1つのビットを前記制御レジスタの前記初期値とマージしてマージ値を取得する
ように構成され、
前記ロード値を前記制御レジスタに書き込むように構成された前記処理回路が、
前記制御ビットフィールド内の前記関連するビットに対応するものとして前記マスクフィールドによって識別された前記制御レジスタ内の各ビットロケーションが前記制御ビットフィールド内の前記関連するビットとマージされるように、前記マージ値を前記制御レジスタに書き込む
ように構成される、請求項24に記載のスレーブデバイス。
【請求項２６】
前記制御ビットフィールド内のビットに対応するものとして前記マスクフィールドによって識別された前記制御レジスタ内のビットのみが、前記マージ値を前記制御レジスタに書き込むことによる影響を受ける、請求項25に記載のスレーブデバイス。
【請求項２７】
前記ロード値を取得するように構成された前記処理回路が、
前記制御ビットフィールド内の各ビットを、前記マスクフィールドの対応するビットロケーション内の前記第1の値によって識別されたビットロケーションにおけるマスキングワードに書き込み、
定義済みマスキングビット値を、前記マスクフィールドの対応するビットロケーション内の第2の値によって識別された前記マスキングワード内の各ビットロケーションに書き込み、
前記制御レジスタの前記初期値と前記マスキングワードとの間の論理AND演算または論理OR演算を実行して前記マージ値を生成する
ようにさらに構成される、請求項25に記載のスレーブデバイス。
【請求項２８】
前記マスクフィールド内のビットロケーションの位置が、前記制御ビットフィールド内のビットロケーションの位置とは無関係であり、
前記制御レジスタ内のビットロケーションの位置が、前記制御ビットフィールド内の前記ビットロケーションの位置とは無関係であり、
前記マスクフィールド内の前記ビットロケーションの位置が、前記制御レジスタ内の前記ビットロケーションの位置に直接対応する、
請求項24に記載のスレーブデバイス。
【請求項２９】
前記シリアルバスが無線周波数フロントエンド(RFFE)バスであり、前記スレーブデバイスが無線周波数(RF)フロントエンドの1つまたは複数の機能を実行するように適合される、請求項24に記載のスレーブデバイス。
【請求項３０】
前記シリアルバスがI3Cバスである、請求項24に記載のスレーブデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、2015年11月24日に米国特許商標庁に出願された仮出願第62/259,543号、および2016年11月8日に米国特許商標庁に出願された非仮出願第15/346,602号の優先権および利益を主張し、それらの内容全体が参照により本明細書に組み込まれる。
【０００２】
本開示は、一般に通信デバイスに関し、より詳細には、装置内の集積回路デバイスを接続する通信リンクに関する。
【背景技術】
【０００３】
シリアルインターフェースは、様々な装置内の集積回路(IC)デバイス間のデジタル通信のための好ましい方法になっている。たとえば、モバイル通信機器は、無線周波数トランシーバ、カメラ、ディスプレイシステム、ユーザインターフェース、コントローラ、ストレージなどを含むICデバイスを使用して、いくつかの機能を実行し、能力を提供し得る。当業界において知られている汎用シリアルインターフェースは、I3Cおよび無線周波数フロントエンド(RFFE:Radio Frequency Front End)インターフェースなど、モバイル業界プロセッサインターフェース(MIPI:Mobile Industry Processor Interface)アライアンスによって定義されるインターフェースを含む、インター集積回路(I2CまたはI2C)シリアルバスならびにその派生物および代替物を含む。
【０００４】
一例では、I2Cシリアルバスは、低速周辺機器をプロセッサに接続する際に使用することを意図されたシリアルシングルエンドコンピュータバスである。いくつかのインターフェースは、2つ以上のデバイスがシリアルバス上で送信された異なるメッセージのためのバスマスタとして働くことができる、マルチマスタバスを提供する。別の例では、RFFEインターフェースは、電力増幅器(PA)、低雑音増幅器(LNA)、アンテナチューナー、フィルタ、センサー、電力管理デバイス、スイッチなどを含む様々な無線周波数(RF)フロントエンドデバイスを制御するための通信インターフェースを規定する。これらのデバイスは、単一の集積回路(IC)内にコロケートされるか、または複数のICデバイス内に設けられ得る。モバイル通信デバイスでは、複数のアンテナおよび無線トランシーバは、複数の同時RFリンクをサポートし得る。いくつかの機能はフロントエンドデバイス間で共有され得、RFFEインターフェースは、マルチマスタ-マルチスレーブ構成を使用してトランシーバの同時および/または並列動作を可能にする。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
デバイス間の改善された通信に対する需要が増大し続けているので、RFフロントエンドデバイス間のインターフェースを管理するためのプロトコルおよび方法の改善の必要が存在する。
【課題を解決するための手段】
【０００６】
本開示のいくつかの態様は、様々な装置内のICデバイス間で使用され得るデジタル通信インターフェースを実装および管理するためのシステム、装置、方法および技法に関する。
【０００７】
本開示の様々な態様では、バスマスタとして動作するデバイスによって実行される方法は、インターフェースを介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成するステップであって、マスクフィールドが第1の数のビットを有する、ステップと、パケット内に制御ビットフィールドを設けるステップであって、制御ビットフィールドが第2の数のビットを有し、第2の数のビットが第1の数のビット未満であり、マスクフィールドが、スレーブデバイスの制御レジスタ内の少なくとも1つのビットロケーションを識別するために生成され、制御ビットフィールドのビットが書き込まれることになる、制御レジスタ内のビットロケーションに対応するマスクフィールドの各ビットロケーションに、第1のビット値を与えることによって、制御ビットフィールドの少なくとも1つのビットが書き込まれることになる、ステップと、インターフェースを介してパケットを送信するステップとを含み得る。パケットは、スレーブデバイスの制御レジスタにアドレス指定され得る。制御レジスタは、第1の数のビットを有し得る。制御ビットフィールド内の各ビットは、マスクフィールドによって識別された制御レジスタ内のビットロケーションに対応し得る。
【０００８】
本開示の様々な態様では、装置は、インターフェースを介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成することであって、マスクフィールドが第1の数のビットを有する、生成することと、パケット内に制御ビットフィールドを設けることであって、制御ビットフィールドが第2の数のビットを有し、第2の数のビットが第1の数のビット未満であり、マスクフィールドが、スレーブデバイスの制御レジスタ内の少なくとも1つのビットロケーションを識別するために生成され、制御ビットフィールドのビットが書き込まれることになる、制御レジスタ内のビットロケーションに対応するマスクフィールドの各ビットロケーションに、第1のビット値を与えることによって、制御ビットフィールドの少なくとも1つのビットが書き込まれることになる、設けることと、インターフェースを介してパケットを送信することとを行うように適合され得る。パケットは、スレーブデバイスの制御レジスタにアドレス指定され得る。制御レジスタは、第1の数のビットを有し得る。制御ビットフィールド内の各ビットは、マスクフィールドによって識別された制御レジスタ内のビットロケーションに対応し得る。
【０００９】
本開示の様々な態様では、装置は、インターフェースを介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成するための手段であって、マスクフィールドが第1の数のビットを有する、手段と、パケット内に制御ビットフィールドを設けるための手段であって、制御ビットフィールドが第2の数のビットを有し、第2の数のビットが第1の数のビット未満であり、マスクフィールドが、スレーブデバイスの制御レジスタ内の少なくとも1つのビットロケーションを識別するために生成され、制御ビットフィールドのビットが書き込まれることになる、制御レジスタ内のビットロケーションに対応するマスクフィールドの各ビットロケーションに、第1のビット値を与えることによって、制御ビットフィールドの少なくとも1つのビットが書き込まれることになる、手段と、インターフェースを介してパケットを送信するための手段とを有し得る。パケットは、スレーブデバイスの制御レジスタにアドレス指定され得る。制御レジスタは、第1の数のビットを有し得る。制御ビットフィールド内の各ビットは、マスクフィールドによって識別された制御レジスタ内のビットロケーションに対応し得る。
【００１０】
本開示の様々な態様では、プロセッサ可読記憶媒体が開示される。記憶媒体は、非一時的記憶媒体であり得、1つまたは複数のプロセッサによって実行されると、インターフェースを介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成することであって、マスクフィールドが第1の数のビットを有する、生成することと、パケット内に制御ビットフィールドを設けることであって、制御ビットフィールドが第2の数のビットを有し、第2の数のビットが第1の数のビット未満であり、マスクフィールドが、スレーブデバイスの制御レジスタ内の少なくとも1つのビットロケーションを識別するために生成され、制御ビットフィールドのビットが書き込まれることになる、制御レジスタ内のビットロケーションに対応するマスクフィールドの各ビットロケーションに、第1のビット値を与えることによって、制御ビットフィールドの少なくとも1つのビットが書き込まれることになる、設けることと、インターフェースを介してパケットを送信することとを、1つまたは複数のプロセッサに行わせるコードを記憶し得る。パケットは、スレーブデバイスの制御レジスタにアドレス指定され得る。制御レジスタは、第1の数のビットを有し得る。制御ビットフィールド内の各ビットは、マスクフィールドによって識別された制御レジスタ内のビットロケーションに対応し得る。
【００１１】
本開示の様々な態様では、バスに結合されたスレーブデバイスによって実行される方法は、バスからパケットを受信するステップであって、パケットが、スレーブデバイスの制御レジスタにアドレス指定され、マスクフィールドと制御ビットフィールドとを含み、マスクフィールドが、制御ビットフィールドよりも多いビット数を有する、ステップと、第1の値を有するマスクフィールド内の少なくとも1つのビットを識別するステップと、第1の値を有するマスクフィールド内の少なくとも1つのビットに対応する制御ビットフィールド内の少なくとも1つのビットを検出するステップと、制御ビットフィールド内の少なくとも1つのビットに基づいて制御レジスタに書き込むためのロード値を取得するステップと、ロード値を制御レジスタに書き込むステップであって、制御ビットフィールド内の関連するビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内の各ビットロケーションが、制御ビットフィールド内の関連するビットに基づくビット値を含んでいる、ステップとを含み得る。
【００１２】
本開示の様々な態様では、装置は、バスからパケットを受信することであって、パケットが、スレーブデバイスの制御レジスタにアドレス指定され、マスクフィールドと制御ビットフィールドとを含み、マスクフィールドが、制御ビットフィールドよりも多いビット数を有する、受信することと、第1の値を有するマスクフィールド内の少なくとも1つのビットを識別することと、第1の値を有するマスクフィールド内の少なくとも1つのビットに対応する制御ビットフィールド内の少なくとも1つのビットを検出することと、制御ビットフィールド内の少なくとも1つのビットに基づいて制御レジスタに書き込むためのロード値を取得することと、ロード値を制御レジスタに書き込むことであって、制御ビットフィールド内の関連するビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内の各ビットロケーションが、制御ビットフィールド内の関連するビットに基づくビット値を含んでいる、書き込むこととを行うように適合され得る。
【００１３】
本開示の様々な態様では、装置は、バスからパケットを受信するための手段であって、パケットが、スレーブデバイスの制御レジスタにアドレス指定され、マスクフィールドと制御ビットフィールドとを含み、マスクフィールドが、制御ビットフィールドよりも多いビット数を有する、手段と、第1の値を有するマスクフィールド内の少なくとも1つのビットを識別するための手段と、第1の値を有するマスクフィールド内の少なくとも1つのビットに対応する制御ビットフィールド内の少なくとも1つのビットを検出するための手段と、制御ビットフィールド内の少なくとも1つのビットに基づいて制御レジスタに書き込むためのロード値を取得するための手段と、ロード値を制御レジスタに書き込むための手段であって、制御ビットフィールド内の関連するビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内の各ビットロケーションが、制御ビットフィールド内の関連するビットに基づくビット値を含んでいる、手段とを有し得る。
【００１４】
本開示の一態様では、プロセッサ可読記憶媒体が開示される。記憶媒体は、非一時的記憶媒体であり得、1つまたは複数のプロセッサによって実行されると、バスからパケットを受信することであって、パケットが、スレーブデバイスの制御レジスタにアドレス指定され、マスクフィールドと制御ビットフィールドとを含み、マスクフィールドが、制御ビットフィールドよりも多いビット数を有する、受信することと、第1の値を有するマスクフィールド内の少なくとも1つのビットを識別することと、第1の値を有するマスクフィールド内の少なくとも1つのビットに対応する制御ビットフィールド内の少なくとも1つのビットを検出することと、制御ビットフィールド内の少なくとも1つのビットに基づいて制御レジスタに書き込むためのロード値を取得することと、ロード値を制御レジスタに書き込むことであって、制御ビットフィールド内の関連するビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内の各ビットロケーションが、制御ビットフィールド内の関連するビットに基づくビット値を含んでいる、書き込むこととを、1つまたは複数のプロセッサに行わせるコードを記憶し得る。
【図面の簡単な説明】
【００１５】
【図１】RFフロントエンドを含み、本明細書で開示するいくつかの態様に従って適合され得る装置を示す図である。
【図２】様々なフロントエンドデバイスを結合するためにRFFEバスを用いるデバイスを示すブロック図である。
【図３】本明細書で開示するいくつかの態様による、ICデバイス間のデータリンクを用いる装置のためのシステムアーキテクチャの一例を示す図である。
【図４】マスク書込み動作が使用され得る装置の一例を示す図である。
【図５】制御ビットを図4のスレーブデバイス内のレジスタに書き込むために送信され得るパケットを示す図である。
【図６】本明細書で開示するいくつかの態様による、完全マスク部分ビットフィールド(FM-PBF:full-mask partial-bit-field)パケットの例を示す図である。
【図７】本明細書で開示するいくつかの態様による、単一のビットを制御レジスタに書き込ませるFM-PBF書込みパケットを示す図である。
【図８】本明細書で開示するいくつかの態様による、複数のビットを制御レジスタに書き込ませるFM-PBF書込みパケットを示す図である。
【図９】本明細書で開示するいくつかの態様によるFM-PBF書込みパケット処理の一例を示す図である。
【図１０】本明細書で開示するいくつかの態様に従って実行されるFM-PBF書込みから得られるレイテンシの低減を示す図である。
【図１１】本明細書で開示するいくつかの態様に従って適合され得る処理回路を用いる装置の一例を示すブロック図である。
【図１２】本明細書で開示するいくつかの態様に従って適合されたバスマスタデバイスにおいて実行されるデータ通信の方法のフローチャートである。
【図１３】本明細書で開示するいくつかの態様に従って適合された処理回路を用いる送信装置のためのハードウェア実装形態の一例を示す図である。
【図１４】本明細書で開示するいくつかの態様に従って適合されたスレーブデバイスにおいて実行されるデータ通信の方法のフローチャートである。
【図１５】本明細書で開示するいくつかの態様に従って適合された処理回路を用いる受信装置のためのハードウェア実装形態の一例を示す図である。
【発明を実施するための形態】
【００１６】
添付の図面に関して以下に記載する詳細な説明は、様々な構成について説明するものであり、本明細書で説明する概念が実践され得る唯一の構成を表すものではない。詳細な説明は、様々な概念の完全な理解を与えるための具体的な詳細を含む。しかしながら、これらの概念がこれらの具体的な詳細なしに実践され得ることは当業者に明らかであろう。場合によっては、そのような概念を不明瞭にすることを避けるために、よく知られている構造および構成要素がブロック図の形態で示される。
【００１７】
次に、様々な装置および方法を参照しながら、電気通信システムのいくつかの態様が提示される。これらの装置および方法について、以下の詳細な説明において説明し、様々なブロック、モジュール、構成要素、回路、ステップ、プロセス、アルゴリズムなど(「要素」と総称される)によって添付の図面に示す。これらの要素は、電子ハードウェア、コンピュータソフトウェア、またはそれらの任意の組合せを使用して実装され得る。そのような要素がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定の適用例および全体的なシステムに課される設計制約に依存する。
【００１８】
複数のICデバイス下位構成要素を有する装置の例
本発明のいくつかの態様は、電話、モバイルコンピューティングデバイス、アプライアンス、自動車用電子機器、アビオニクスシステムなどの、装置の下位構成要素を含む電子デバイス間に配備される通信リンクに適用可能であり得る。図1は、ICデバイス間の通信リンクを用い得る装置100を示す。一例では、装置100は通信デバイスであり得る。装置100は、第1の通信リンクを使用して結合され得る2つ以上のICデバイス104、106を有する処理回路を含み得る。1つのICデバイスは、装置が1つまたは複数のアンテナ108を介して無線アクセスネットワーク、コアアクセスネットワーク、インターネットおよび/または別のネットワークと通信することを可能にするように操作され得る無線周波数(RF)フロントエンド106を含み得る。RFフロントエンド106は、無線周波数フロントエンド(RFFE)バスを含み得る、第2の通信リンクによって結合された複数のデバイスを含み得る。
【００１９】
処理回路102は、1つまたは複数の特定用途向けIC(ASIC)デバイスを含み得る。ICデバイス104は、1つまたは複数の処理デバイス112と、論理回路と、1つまたは複数のモデム110と、処理回路102上でプロセッサによって実行され得る命令およびデータを維持し得るメモリデバイス114などのプロセッサ可読ストレージとを含み得るかつ/またはそれらに結合され得る。処理回路102は、オペレーティングシステム、および記憶媒体に存在するソフトウェアモジュールの実行をサポートし可能にするアプリケーションプログラミングインターフェース(API)レイヤのうちの1つまたは複数によって制御され得る。メモリデバイス114は、読取り専用メモリ(ROM)もしくはランダムアクセスメモリ(RAM)、電気的消去可能プログラマブルROM(EEPROM)、フラッシュカード、または処理システムおよびコンピューティングプラットフォームにおいて使用され得る任意のメモリデバイスを含み得る。処理回路102は、装置100を構成し動作させるために使用される動作パラメータおよび他の情報を維持することができるローカルデータベースまたはパラメータストレージを含んでもよく、またはそれにアクセスしてもよい。ローカルデータベースは、データベースモジュール、フラッシュメモリ、磁気媒体、EEPROM、光媒体、テープ、ソフトディスクまたはハードディスクなどのうちの1つまたは複数を使用して実装され得る。処理回路は、構成要素の中でも、アンテナ108、ディスプレイ120などの外部デバイス、ボタン124および/または一体型キーパッドもしくは外部キーパッド122などのオペレータ制御に動作可能に結合される場合もある。
【００２０】
RFFEバスの概要
図2は、様々なフロントエンドデバイス212〜217を結合するためにRFFEバス208を用いるデバイス202の一例を示すブロック図200である。モデム204も、RFFEバス208に結合され得る。モデムは、ベースバンドプロセッサ206と通信し得る。図示したデバイス202は、モバイルデバイス、モバイル電話、モバイルコンピューティングシステム、電話、ノートブックコンピュータ、タブレットコンピューティングデバイス、メディアプレーヤ、ゲームデバイス、ウェアラブルコンピューティングおよび/または通信デバイス、アプライアンスなどのうちの1つまたは複数において具現化され得る。様々な例では、デバイス202は、1つまたは複数のベースバンドプロセッサ206、モデム204、複数の通信リンク208、220、および様々な他のバス、デバイスならびに/または異なる機能を用いて実装され得る。
【００２１】
図2に示す例では、RFFEバス208は、RF集積回路(RFIC)212に結合され得、RF集積回路(RFIC)212は、RFフロントエンドのいくつかの態様を構成および制御する、1つまたは複数のコントローラおよび/またはプロセッサを含み得る。RFFEバス208は、RFIC212をスイッチ213、RFチューナー214、電力増幅器(PA)215、低雑音増幅器(LNA)216、および電力管理モジュール217に結合し得る。
【００２２】
図3は、バスマスタデバイス3201〜320Nとスレーブデバイス302および3221〜322Nとを接続するためにRFFEバス330を用い得るデバイス300のためのアーキテクチャの一例を示すブロック概略図である。RFFEバス330は適用ニーズに従って構成され得、複数のバス330へのアクセスがデバイス3201〜320N、302、および3221〜322Nのうちのいくつかに与えられ得る。動作時、バスマスタデバイス3201〜320Nのうちの1つは、バスの制御を獲得し、スレーブデバイス302および3221〜322Nのうちの1つを識別するスレーブ識別子(スレーブアドレス)を送信して通信トランザクションに参加することができる。バスマスタデバイス3201〜320Nは、スレーブデバイス302および3221〜322Nからデータおよび/またはステータスを読み取ってもよく、データをメモリに書き込んでもよく、またはスレーブデバイス302および3221〜322Nを構成してもよい。構成は、スレーブデバイス302および3221〜322N上の1つまたは複数のレジスタまたは他のストレージに書き込むことを伴い得る。
【００２３】
図3に示す例では、RFFEバス330に結合された第1のスレーブデバイス302は、1つまたは複数のバスマスタデバイス3201〜320Nに応答し得、1つまたは複数のバスマスタデバイス3201〜320Nは、第1のスレーブデバイス302からデータを読み取り得るか、または第1のスレーブデバイス302にデータを書き込み得る。一例では、第1のスレーブデバイス302は、電力増幅器(図2のPA215を参照)を含み得るか、またはそれを制御し得、1つまたは複数のバスマスタデバイス3201〜320Nは、時々、第1のスレーブデバイス302における利得設定を構成し得る。
【００２４】
第1のスレーブデバイス302は、構成レジスタ306および/または他のストレージデバイス324と、処理回路および/または制御論理312と、トランシーバ310と、必要に応じて、第1のスレーブデバイス302を(たとえば、シリアルクロックライン316およびシリアルデータライン318を介して)RFFEバス330に結合するためのいくつかのラインドライバ/受信機回路314a、314bとを含み得る。処理回路および/または制御論理312は、状態機械、シーケンサ、信号プロセッサまたは汎用プロセッサなどのプロセッサを含み得る。トランシーバ310は、1つまたは複数の受信機310aと、1つまたは複数の送信機310cと、タイミング、論理、およびストレージの回路および/またはデバイスを含むいくつかの共通回路310bとを含み得る。場合によっては、トランシーバ310は、エンコーダおよびデコーダ、クロックおよびデータ復元回路などを含み得る。送信クロック(TXCLK)信号328は送信機310cに供給されることがあり、TXCLK信号328はデータ送信レートを決定するために使用され得る。
【００２５】
RFFEバス330は、通常、符号化データをシリアルビットストリームとして送信する送信機によってデータがパラレル形式からシリアル形式に変換される、シリアルバスとして実装される。受信機は、受信されたシリアルビットストリームを直並列変換器を使用して処理して、データを非直列化する。
【００２６】
共有バス上でのマスク書込み
本明細書で開示するいくつかの態様は、低レイテンシ応答が望まれる、および/または、単一のリソースが複数のバスマスタによって書き込まれるか、変更されるか、または場合によってはアドレス指定されることがある、いくつかの適用例において使用され得るマスク書込み動作に関する。図4は、マスク書込み動作が使用され得る装置400の一例を示す。装置400は、モバイル通信デバイス内に設けられ得、たとえば、シリアルバス408に通信可能に結合された、2つ以上のバスマスタデバイス402、404および少なくとも1つのスレーブデバイス406を含み得る。シリアルバスは、I2Cバス、カメラ制御インターフェース(CCI)バス、I3Cバス、もしくはRFFEバス、または装置400の用途および機能に適した任意の他のバスであり得る。
【００２７】
一例では、シリアルバス408は、RFFEバスのMIPIアライアンス仕様に準拠または適合する。バスマスタデバイス402、404は、モデム、アプリケーションプロセッサまたはコントローラを含み得る。本例では、スレーブデバイス406は電力増幅器であり得るが、本明細書で開示する原理は他のタイプのスレーブデバイスに適用される。スレーブデバイス406は、プロセッサ416と、メモリデバイス414と、1つまたは複数の機能回路またはモジュール412とを含み得る。電力増幅器の例では、機能回路またはモジュール412は、利得制御回路を含み得る。スレーブデバイス406は、機能回路またはモジュール412を使用して構成可能であり得、機能回路またはモジュール412は、シリアルバス408を介してバスマスタデバイス402、404によって書込み可能および/または読取り可能な制御レジスタ420を含むパラメータストレージを含み得る。場合によっては、制御レジスタ420は8ビットレジスタ(b0〜b7)であり得、第1のグループのビット422は、第1のバスマスタデバイス402のみによって構成され、第2のグループのビット424は、第2のバスマスタデバイス404のみによって構成されるいくつかのビットであり、第3のグループのビット426は、未使用ビットまたは第1のバスマスタデバイス402および第2のバスマスタデバイス404によって構成されるビットを含む。マスク書込み動作は、第1のバスマスタデバイス402が制御レジスタ420内の他のビット424、426に影響を及ぼすことなしに第1のグループのビット422を書き込むことを可能にし、第2のバスマスタデバイス404が制御レジスタ420内の他のビット422、426に影響を及ぼすことなしに第2のグループのビット424を書き込むことを可能にするために使用され得る。
【００２８】
図5は、たとえば、制御ビットをスレーブデバイス406内の制御レジスタ420に書き込むために送信され得るパケット500を示す。パケット500は、2つの8ビットフィールド502、504を含む。マスクフィールド502は、制御レジスタ420と同じ幅を有し、パケット500に応答して書き込まれるかまたは変更されるべきビットを示す。一例では、値「1」を有するマスクフィールド502内のビットは、パケット500に応答して書き込まれるかまたは変更されることになる制御レジスタ420内のビットロケーションを示し、値「0」を有するマスクフィールド502内のビットは、パケット500への応答に影響されないことになる制御レジスタ420内のビットロケーションを示す。制御ビットフィールド504は、制御レジスタ420と同じ幅を有し、制御レジスタ420内の対応するビットロケーションに書き込まれるべき値を搬送する。
【００２９】
図5のデータフロー図510を参照すると、マスクフィールド502内のビットの各々はゲーティング関数512によって使用され、ゲーティング関数512は、制御ビットフィールド504内の対応するビットに対して作用して、制御レジスタ420内の対応するビットを選択的に変更するビット更新値514を生成する。一例では、マスクフィールド502のビットによって制御されるゲーティング関数512は、影響を受けるビットに対する書込み動作を制御レジスタ420に無視させる、制御レジスタ420の対応する入力のラッチングを防止し得る。別の例では、マスクフィールド502のビットによって制御されるゲーティング関数512は、制御レジスタ420に記憶された現在のビット値およびマスク書込み動作中の制御ビットフィールド504上の対応するビット値から選択し得る。本例では、8ビットマスクフィールド502および8ビット制御ビットフィールド504は、8ビット制御レジスタ420上でマスク書込み動作を実行するために使用される。すなわち、1ビットが変更されるか8ビットが変更されるかにかかわらず、16ビット送信が必要とされる。
【００３０】
完全マスク部分ビットフィールド書込み
本明細書で開示するいくつかの態様による装置は、レイテンシ低下を実現することができる、修正済みマスク書込み動作を用い得る。一例では、完全マスク部分ビットフィールド(FM-PBF)マスク書込み動作は、スレーブデバイス406の動作を構成または制御するために使用される書込み動作において送信されるビット数を減らすことができる。
【００３１】
図6を参照すると、FM-PBF書込みパケット600は、制御レジスタ420に影響を及ぼすビット(第2の数のビット)のみを含む制御ビットフィールド604を提供する一方で、第1の数のビットを有する固定の全長マスクフィールド602を使用する。したがって、制御ビットフィールド604の長さは、実行されるべきマスク書込みの性質に基づいて変化する。図6は、バスを介して送信され得るFM-PBF書込みパケット600の異なる構成606〜613を示す。FM-PBF書込みパケット600を使用して得られるレイテンシ低減は、変更されるべきビット数に応じたものである。第1の構成606は、制御レジスタ420のすべての8ビットを書き込むために使用され得、その他の構成607〜613は、制御レジスタ420の8ビット未満を書き込むために使用される。第1の構成606は、制御レジスタ420のすべての8ビットを書き込むために16ビット送信を使用し得るが、第8の構成613は、制御レジスタ420の1ビットを書き込むために16ビット送信を使用する。
【００３２】
FM-PBF書込みパケット600では、所与のマスクビットロケーションにおけるマスクフィールド602内のビットの値は、制御ビットフィールド604内の対応する制御ビットの有無を暗示する。マスクフィールド602内のビットの意味は、次のように表され得る。
MF-Dx=1=>CF-Dxは、マスク書込みパケット600において利用可能であり、
MF-Dx=0=>CF-Dxは、マスク書込みパケット600において利用可能ではない。
CF-Dxビットがマスク書込みパケット600において利用可能ではないとき、制御レジスタ420内の対応するビットは、マスク書込み動作の実行による影響を受けない。CF-Dxビットが利用可能であるとき、値(「0」または「1」)が制御レジスタ420の対応するビットロケーションに書き込まれ得る。
【００３３】
FM-PBF書込み技法のいくつかの態様は、RFフロントエンドを含む低レイテンシ環境において適用され得る。
【００３４】
完全マスク部分ビットフィールド書込みの例
図7および図8は、FM-PBF書込み動作の例を示す。図7は、単一のビットを制御レジスタ710に書き込ませるFM-PBF書込みパケット700、720を示す。第1のFM-PBF書込みパケット700では、「1」がマスクフィールド702のMF-D3ビットロケーション712に存在し、制御ビットフィールド704内の制御ビット714の利用可能性を示す。この例では、「1」値に設定された単一のビットが制御ビットフィールド704に与えられる。マスクフィールド702の残りのビットは、他のどのビットも制御レジスタ710に書き込むために制御ビットフィールド704内で利用可能ではないことを示す「0」に設定される。第1のFM-PBF書込みパケット700に応答して実行されるFM-PBF書込みは、「1」716を制御レジスタ710のR3ビットに書き込ませる。
【００３５】
第2のFM-PBF書込みパケット720では、「1」がマスクフィールド722のMF-D3ビットロケーション730に存在し、制御ビットフィールド724内の制御ビット732の利用可能性を示す。この例では、「0」値に設定された単一のビットが制御ビットフィールド724に与えられる。マスクフィールド722の残りのビットは、他のどのビットも制御レジスタ710に書き込むために制御ビットフィールド724内で利用可能ではないことを示す「0」に設定される。第2のFM-PBF書込みパケット720に応答して実行されるFM-PBF書込みは、「0」734を制御レジスタ716のR3ビットに書き込ませる。
【００３６】
図8は、複数のビットを制御レジスタ810、830に書き込ませるFM-PBF書込みパケット800、820を示す。第1のFM-PBF書込みパケット800では、「1」がマスクフィールド802のMF-D6ビットロケーション812aおよびMF-D3ビットロケーション812bに存在し、制御ビットフィールド804内の2つの制御ビット814a、814bの利用可能性を示す。この例では、第1の制御ビット814aは「1」値に設定され、第2の制御ビット814bは「0」値に設定される。マスクフィールド802の残りのビットは、他のどのビットも制御レジスタ810に書き込むために制御ビットフィールド804内で利用可能ではないことを示す「0」に設定される。第1のFM-PBF書込みパケット800に応答して実行されるFM-PBF書込みは、「1」816aを制御レジスタ810のR6ビットに書き込ませ、「0」816bを制御レジスタ810のR3ビットに書き込ませる。
【００３７】
第2のFM-PBF書込みパケット820では、「1」がマスクフィールド822のMF-D7ビットロケーション832a、MF-D2ビットロケーション832b、およびMF-D0ビットロケーション812cに存在し、制御ビットフィールド824内の3つの制御ビット834a、834b、834cの利用可能性を示す。この例では、第1の制御ビット834aは「1」値に設定され、第2の制御ビット834bは「1」値に設定され、第3の制御ビット834cは「0」値に設定される。マスクフィールド822の残りのビットは、他のどのビットも制御レジスタ830に書き込むために制御ビットフィールド824内で利用可能ではないことを示す「0」に設定される。第2のFM-PBF書込みパケット820に応答して実行されるFM-PBF書込みは、「1」836aを制御レジスタ830のR7ビットに書き込ませ、「1」836bを制御レジスタ830のR2ビットに書き込ませ、「0」836cを制御レジスタ830のR0ビットに書き込ませる。
【００３８】
再び図4に示す例を参照すると、バスマスタ402または404は、増幅器として動作するスレーブデバイス406を構成することを望む場合がある。バスマスタ402または404は、増幅器の動作を構成するために、一連のFM-PBF書込みパケット700、720、および/または820をスレーブデバイス406の制御レジスタに送り得る。第1のFM-PBF書込みパケット720は、「0」値を制御レジスタの有効化フィールドに書き込ませ、それによって、構成中に増幅器を無効化することができる。第2のFM-PBF書込みパケット820は、増幅器の利得を調整させることができ、第3のFM-PBF書込みパケット700は、遅延の後に送られて、「1」値を制御レジスタの有効化フィールドに書き込ませ、それによって、増幅器を有効化することができる。第2のFM-PBF書込みパケット820と第3のFM-PBF書込みパケット700との間の遅延は、利得が変更された後に増幅器が安定化することを可能にするために与えられ得る。
【００３９】
完全マスク部分ビットフィールド書込みパケット処理の例
図9は、プロセス920の一例を使用する、本明細書で開示するいくつかの態様によるFM-PBF書込みパケット処理900の一例を示す。本例では、FM-PBF書込みパケットは、「00100010」値に設定されたマスクフィールド902と、「01」に設定された2ビット制御ビットフィールド904とを有する。ロード値レジスタ906は、FM-PBF書込みパケットがアドレス指定されるターゲット制御レジスタに書き込まれるべき値を作るために使用され得る。ブロック922に示すように、FM-PBF書込みパケットのマスクフィールド902は、最上位ビット(MSB)から最下位ビット(LSB)への方向908に構文解析される。構文解析は、現在のビットを調査して、対応するビットが制御ビットフィールド904内に与えられるかどうかを決定することを含み得る。本例では、マスクフィールド902の2つのビット912、914は、制御ビットフィールド904内の対応するビットの存在を示す「1」に設定される。マスクフィールド902の現在のビットが設定される(「1」に設定される)と、制御ビットフィールド内の次の値がシフトアウトされ、(マスクフィールド902内の現在のビットロケーションに対応する)ロード値レジスタ906の現在のビットロケーションに記憶され得る。マスクフィールド902の現在のビットがクリアされる(「0」に設定される)と、「1」値はロード値レジスタ906の現在のビットロケーションに記憶され得る。次いで、マスクフィールド902の現在のビットおよびロード値レジスタ906が進められ得る。
【００４０】
ブロック924に示すように、マスクフィールド902の構文解析が完了すると、現在のターゲット制御レジスタコンテンツ(TCRC:target control register content)が読み取られ得る。ブロック926において、次いで、TCRCとロード値レジスタ906内のマスク制御フィールドデータ(MCFD:masked control field data)との論理ANDを実行することによって最終ロード値が取得され得、その結果、ロード値レジスタ906はMCFD && TCRCという値をとる。ブロック928において、ロード値レジスタのコンテンツがターゲット制御レジスタに書き込まれ得る。
【００４１】
図10は、本明細書で開示するいくつかの態様に従って実行されるFM-PBF書込みから得られるレイテンシの低減を示す表1000、1020を含む。第1の表1000では、レイテンシ低減は、8ビットマスク、8ビット制御レジスタの従来のマスク書込み動作との比較として示されており、変更の対象にされる異なるビット数についての差が示されている。第2の表1020では、レイテンシ低減は、16ビットマスク、16ビット制御レジスタの従来のマスク書込み動作との比較として示されており、変更の対象にされる異なるビット数についての差が示されている。
【００４２】
処理回路および方法の例
図11は、本明細書で開示する1つまたは複数の機能を実行するように構成され得る処理回路1102を用いる装置1100のためのハードウェア実装形態の簡略化された例を示す概念図である。本開示の様々な態様によれば、本明細書で開示する要素、または要素の任意の部分、または要素の任意の組合せは、処理回路1102を使用して実装され得る。処理回路1102は、ハードウェアモジュールとソフトウェアモジュールの何らかの組合せによって制御される1つまたは複数のプロセッサ1104を含み得る。プロセッサ1104の例は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、ASIC、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理デバイス(PLD)、状態機械、シーケンサ、ゲート論理、個別ハードウェア回路、および本開示全体にわたって説明する様々な機能を実行するように構成された他の適切なハードウェアを含む。1つまたは複数のプロセッサ1104は、特定の機能を実行し、ソフトウェアモジュール1116のうちの1つによって構成され、増強され、または制御されてもよい専用プロセッサを含み得る。1つまたは複数のプロセッサ1104は、初期化中にロードされたソフトウェアモジュール1116の組合せを介して構成されてもよく、動作中に1つまたは複数のソフトウェアモジュール1116をロードまたはアンロードすることによってさらに構成されてもよい。
【００４３】
図示の例では、処理回路1102は、バス1110によって概略的に表されるバスアーキテクチャを用いて実装され得る。バス1110は、処理回路1102の特定の適用例および全体的な設計制約に応じて、任意の数の相互接続バスおよびブリッジを含み得る。バス1110は、1つまたは複数のプロセッサ1104およびストレージ1106を含む様々な回路を互いにリンクさせる。ストレージ1106は、メモリデバイスおよび大容量ストレージデバイスを含み得、本明細書ではコンピュータ可読媒体および/またはプロセッサ可読媒体と呼ばれることがある。バス1110は、タイミングソース、タイマー、周辺機器、電圧調節器、および電力管理回路などの様々な他の回路をリンクさせることもできる。バスインターフェース1108は、バス1110と1つまたは複数のトランシーバ1112との間のインターフェースを提供し得る。トランシーバ1112は、処理回路によってサポートされるネットワーキング技術ごとに設けられてもよい。場合によっては、複数のネットワーキング技術は、トランシーバ1112内に見られる回路または処理モジュールの一部または全部を共有してもよい。各トランシーバ1112は、送信媒体を介して様々な他の装置と通信するための手段を提供する。装置1100の性質に応じて、ユーザインターフェース1118(たとえば、キーパッド、ディスプレイ、スピーカー、マイクロフォン、ジョイスティック)が設けられる場合もあり、直接またはバスインターフェース1108を介してバス1110に通信可能に結合される場合がある。
【００４４】
プロセッサ1104は、バス1110を管理することと、ストレージ1106を含み得るコンピュータ可読媒体に記憶されたソフトウェアの実行を含み得る一般的な処理とを担い得る。この点において、プロセッサ1104を含む処理回路1102は、本明細書で開示する方法、機能および技法のうちのいずれかを実装するために使用され得る。ストレージ1106は、ソフトウェアを実行するときにプロセッサ1104によって操作されるデータを記憶するために使用され得、ソフトウェアは、本明細書で開示する方法のうちのいずれか1つを実装するように構成され得る。
【００４５】
処理回路1102内の1つまたは複数のプロセッサ1104は、ソフトウェアを実行し得る。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、または他の名称で呼ばれるかどうかにかかわらず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行ファイル、実行スレッド、プロシージャ、関数、アルゴリズムなどを意味するように広く解釈されるべきである。ソフトウェアは、コンピュータ可読の形でストレージ1106または外部コンピュータ可読媒体に存在することができる。外部コンピュータ可読媒体および/またはストレージ1106は、非一時的コンピュータ可読媒体を含み得る。非一時的コンピュータ可読媒体は、例として、磁気ストレージデバイス(たとえば、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ)、光ディスク(たとえば、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD))、スマートカード、フラッシュメモリデバイス(たとえば、「フラッシュドライブ」、カード、スティック、またはキードライブ)、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、レジスタ、リムーバブルディスク、ならびに、コンピュータによってアクセスされ読み取られ得るソフトウェアおよび/または命令を記憶するための任意の他の適切な媒体を含む。コンピュータ可読媒体および/またはストレージ1106は、例として、搬送波、伝送線路、ならびに、コンピュータによってアクセスされ読み取られ得るソフトウェアおよび/または命令を送信するための任意の他の適切な媒体も含み得る。コンピュータ可読媒体および/またはストレージ1106は、処理回路1102に存在するか、プロセッサ1104に存在するか、処理回路1102の外部に存在するか、または処理回路1102を含む複数のエンティティにわたって分散され得る。コンピュータ可読媒体および/またはストレージ1106は、コンピュータプログラム製品において具現化され得る。例として、コンピュータプログラム製品は、パッケージング材料の中のコンピュータ可読媒体を含み得る。当業者は、特定の適用例および全体的なシステムに課される全体的な設計制約に応じて、本開示全体にわたって提示される説明した機能を実装する最良の方法を認識されよう。
【００４６】
ストレージ1106は、本明細書ではソフトウェアモジュール1116と呼ばれることがある、ロード可能なコードセグメント、モジュール、アプリケーション、プログラムなどにおいて維持および/または編成されるソフトウェアを維持し得る。ソフトウェアモジュール1116の各々は、処理回路1102上にインストールまたはロードされ、1つまたは複数のプロセッサ1104によって実行されると、1つまたは複数のプロセッサ1104の動作を制御するランタイムイメージ1114に寄与する命令およびデータを含み得る。実行されると、いくつかの命令は、処理回路1102に、本明細書で説明するいくつかの方法、アルゴリズムおよびプロセスに従って機能を実行させることができる。
【００４７】
ソフトウェアモジュール1116のうちのいくつかは、処理回路1102の初期化中にロードされてもよく、これらのソフトウェアモジュール1116は、本明細書で開示する様々な機能の実行を可能にするように処理回路1102を構成してもよい。たとえば、いくつかのソフトウェアモジュール1116は、プロセッサ1104の内部デバイスおよび/または論理回路1122を構成してもよく、トランシーバ1112、バスインターフェース1108、ユーザインターフェース1118、タイマー、数学的コプロセッサなどの外部デバイスへのアクセスを管理してもよい。ソフトウェアモジュール1116は、割込みハンドラおよびデバイスドライバと対話し、処理回路1102によって提供される様々なリソースへのアクセスを制御する、制御プログラムおよび/またはオペレーティングシステムを含み得る。リソースは、メモリ、処理時間、トランシーバ1112へのアクセス、ユーザインターフェース1118などを含み得る。
【００４８】
処理回路1102の1つまたは複数のプロセッサ1104は、多機能であってもよく、それにより、ソフトウェアモジュール1116のうちのいくつかがロードされ、異なる機能または同じ機能の異なるインスタンスを実行するように構成される。1つまたは複数のプロセッサ1104は、加えて、たとえば、ユーザインターフェース1118、トランシーバ1112、およびデバイスドライバからの入力に応答して開始されるバックグラウンドタスクを管理するように適合され得る。複数の機能の実行をサポートするために、1つまたは複数のプロセッサ1104は、マルチタスキング環境を提供するように構成されてもよく、それにより、複数の機能の各々は、必要または要望に応じて、1つまたは複数のプロセッサ1104によってサービスされるタスクのセットとして実装される。一例では、マルチタスキング環境は、異なるタスク間でプロセッサ1104の制御を渡す時分割プログラム1120を使用して実装されてもよく、それにより、各タスクは、任意の未処理動作の完了後および/または割込みなどの入力に応答して、時分割プログラム1120に1つまたは複数のプロセッサ1104の制御を戻す。タスクが1つまたは複数のプロセッサ1104の制御を有するとき、処理回路は、事実上、制御しているタスクに関連付けられた機能によって対処される目的に特化される。時分割プログラム1120は、オペレーティングシステム、ラウンドロビンベースで制御を移すメインループ、機能の優先順位付けに従って1つもしくは複数のプロセッサ1104の制御を割り振る機能、および/または1つもしくは複数のプロセッサ1104の制御を処理機能に提供することによって外部イベントに応答する割込み駆動型メインループを含み得る。
【００４９】
図12は、シリアル通信リンクを使用する通信の方法のフローチャート1200である。方法は、バスマスタとして動作するデバイス(たとえば、図11の装置1100または図13の装置1300)において実行され得る。
【００５０】
デバイスは、インターフェースを介してスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成し得、マスクフィールドは、第1の数のビット(たとえば、8ビットまたは16ビット)を有する(1202)。デバイスは、制御ビットフィールドの少なくとも1つのビットが書き込まれることになる、スレーブデバイスの制御レジスタ内の少なくとも1つのビットロケーションを識別するために、マスクフィールドを生成し得る。たとえば、デバイスは、制御ビットフィールドのビットが書き込まれることになる、制御レジスタ内のビットロケーションに対応するマスクフィールドの各ビットロケーションに、第1のビット値(たとえば、「1」のビット値)を与え得る。デバイスはさらに、制御ビットフィールドのビットが書き込まれることになる、制御レジスタ内のビットロケーションに対応しないマスクフィールドの各ビットロケーションに、第2のビット値(たとえば、「0」のビット値)を与えることによって、マスクフィールドを生成し得る。
【００５１】
デバイスは、パケット内に制御ビットフィールドを設け得る(1204)。制御ビットフィールドは第2の数のビットを有し、第2の数のビットは第1の数のビット未満である。
【００５２】
デバイスは、インターフェースを介してパケットを送信し得、パケットは、スレーブデバイスの制御レジスタにアドレス指定される(1206)。制御レジスタは、第1の数のビット(たとえば、8ビットまたは16ビット)を有し、制御ビットフィールド内の各ビットは、マスクフィールドによって識別された制御レジスタ内のビットロケーションに対応する。
【００５３】
マスクフィールド内のビットロケーションの位置は、制御ビットフィールド内のビットロケーションの位置とは無関係であってもよい。すなわち、マスクフィールド内のビットロケーションは、制御ビットフィールド内のビットロケーションとの位置対応をもたなくてもよい。さらに、制御レジスタ内のビットロケーションの位置は、制御ビットフィールド内のビットロケーションの位置とは無関係であってもよい。すなわち、制御レジスタ内のビットロケーションは、制御ビットフィールド内のビットロケーションとの位置対応をもたなくてもよい。しかしながら、一態様では、マスクフィールド内のビットロケーションの位置は、制御レジスタ内のビットロケーションの位置に直接対応する。
【００５４】
一例では、インターフェースはRFFEインターフェースであり、スレーブデバイスはRFFEデバイスの1つまたは複数の機能を実行するように適合され得る。別の例では、インターフェースはI3Cインターフェースである。
【００５５】
図13は、本開示の1つまたは複数の態様(たとえば、上記で説明した図12の方法に関する態様)に関する動作をサポートするために処理回路1302を用いる装置1300のためのハードウェア実装形態の簡略化された例を示す図である。処理回路は、通常、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、シーケンサ、および状態機械のうちの1つまたは複数を含み得るプロセッサ1316を有する。処理回路1302は、バス1320によって概略的に表されるバスアーキテクチャを用いて実装され得る。バス1320は、処理回路1302の特定の適用例および全体的な設計制約に応じて、任意の数の相互接続バスおよびブリッジを含み得る。バス1320は、プロセッサ1316、モジュールまたは回路1304、1306、1308、コネクタまたはワイヤ1314を介して通信するように構成可能なライン/バスインターフェース回路1312、ならびにコンピュータ可読記憶媒体1318によって表される、1つまたは複数のプロセッサおよび/またはハードウェアモジュールを含む様々な回路を互いにリンクさせる。バス1320は、タイミングソース、周辺機器、電圧調整器、および電力管理回路などの様々な他の回路をリンクさせることもできるが、これらの回路は当技術分野でよく知られており、したがって、これ以上は説明しない。
【００５６】
プロセッサ1316は、コンピュータ可読記憶媒体1318上に記憶されたコード/命令の実行を含む一般的な処理を担う。コード/命令は、プロセッサ1316によって実行されると、処理回路1302に、任意の特定の装置のための上記で説明した様々な機能を実行させる。コンピュータ可読記憶媒体はまた、データレーンおよびクロックレーンとして構成され得るコネクタまたはワイヤ1314を介して送信されたシンボルから復号されるデータを含む、ソフトウェアを実行するときにプロセッサ1316によって操作されるデータを記憶するために使用され得る。処理回路1302は、モジュール/回路1304、1306、および1308のうちの少なくとも1つをさらに含む。モジュール/回路1304、1306、および1308は、コンピュータ可読記憶媒体1318に常駐する/記憶された、プロセッサ1316内で動作しているソフトウェアモジュール、プロセッサ1316に結合された1つもしくは複数のハードウェアモジュール、またはそれらの何らかの組合せであってもよい。モジュール/回路1304、1306、および/または1308は、マイクロコントローラ命令、状態機械構成パラメータ、またはそれらの何らかの組合せを含み得る。
【００５７】
一構成では、装置1300は、インターフェース回路1312を介して通信リンクのスレーブデバイスに送信されるべきパケット内にマスクフィールドを生成するように構成されたマスクフィールド生成モジュールおよび/または回路1304と、パケット内に制御ビットフィールドを設けるように構成された制御ビットフィールド生成モジュールおよび/または回路1306と、インターフェース回路1312を介してパケットを送信するように構成されたパケット送信モジュールおよび/または回路1308とを含む。
【００５８】
図14は、シリアル通信リンクを使用する通信の方法のフローチャート1400である。方法は、バスに結合されたスレーブデバイス(たとえば、図11の装置1100または図15の装置1500)において実行され得る。
【００５９】
スレーブデバイスは、バスからパケットを受信し得る(1402)。パケットは、スレーブデバイスの制御レジスタにアドレス指定され得る。パケットは、マスクフィールドと制御ビットフィールドとを含み得る。マスクフィールドは、制御ビットフィールドよりも多いビット数を有してもよい。たとえば、マスクフィールドは8ビットを含み得るが、制御ビットフィールドは8ビット未満を含み得る。代替的に、マスクフィールドは16ビットを含み得るが、制御ビットフィールドは16ビット未満を含み得る。
【００６０】
スレーブデバイスは、第1の値を有するマスクフィールド内の少なくとも1つのビット(たとえば、「1」に設定されたビット値を有する、いくつかのマスクフィールドビット)を識別し得る(1404)。スレーブデバイスはさらに、第1の値を有するマスクフィールド内の少なくとも1つのビットに対応する制御ビットフィールド内の少なくとも1つのビットを検出し得る(1406)。
【００６１】
スレーブデバイスは、制御ビットフィールド内の少なくとも1つのビットに基づいて制御レジスタに書き込むためのロード値を取得し得る(1408)。その後、スレーブデバイスは、ロード値を制御レジスタに書き込み得、制御ビットフィールド内の関連するビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内の各ビットロケーションは、制御ビットフィールド内の関連するビットに基づくビット値を含んでいる(1410)。
【００６２】
本開示の一態様では、スレーブデバイスは、制御レジスタを読み取って制御レジスタの初期値を取得し、制御ビットフィールド内の少なくとも1つのビットを制御レジスタの初期値とマージしてマージ値を取得することによって、ロード値を取得する。さらに、スレーブデバイスは、制御ビットフィールド内の関連するビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内の各ビットロケーションが制御ビットフィールド内の関連するビットとマージされるように、マージ値を制御レジスタに書き込むことによって、ロード値を制御レジスタに書き込む。いくつかの例では、制御ビットフィールド内のビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内のビットのみが、マージ値を制御レジスタに書き込むことによる影響を受ける。
【００６３】
一例では、スレーブデバイスはさらに、制御ビットフィールド内の各ビットを、マスクフィールドの対応するビットロケーション内の第1の値によって識別されたビットロケーション(たとえば、マスクフィールドの対応するビットロケーション内の「1」の値によって識別されたビットロケーション)におけるマスキングワードに書き込み、定義済みマスキングビット値(たとえば、「0」または「1」のマスキングビット値)を、マスクフィールドの対応するビットロケーション内の第2の値によって識別されたマスキングワード内の各ビットロケーション(たとえば、マスクフィールドの対応するビットロケーション内の「0」の値によって識別されたビットロケーション)に書き込むことによって、ロード値を取得する。スレーブデバイスは、次いで、マスキングワードを使用して、制御ビットフィールド内の少なくとも1つのビットを制御レジスタの初期値とマージする。スレーブデバイスは、制御レジスタの初期値とマスキングワードとの間の論理AND演算を実行してマージ値を生成することによって、制御ビットフィールド内の少なくとも1つのビットを制御レジスタの初期値とマージし得る。代替的に、スレーブデバイスは、制御レジスタの初期値とマスキングワードとの間の論理OR演算を実行してマージ値を生成することによって、制御ビットフィールド内の少なくとも1つのビットを制御レジスタの初期値とマージし得る。
【００６４】
いくつかの例では、マスクフィールド内のビットロケーションの位置は、制御ビットフィールド内のビットロケーションの位置とは無関係である。すなわち、マスクフィールド内のビットロケーションは、制御ビットフィールド内のビットロケーションとの位置対応をもたない。さらに、制御レジスタ内のビットロケーションの位置は、制御ビットフィールド内のビットロケーションの位置とは無関係である。すなわち、制御レジスタ内のビットロケーションは、制御ビットフィールド内のビットロケーションとの位置対応をもたない。しかしながら、一態様では、マスクフィールド内のビットロケーションの位置は、制御レジスタ内のビットロケーションの位置に直接対応する。
【００６５】
一例では、バスはRFFEバスであり、スレーブデバイスはRFフロントエンドの1つまたは複数の機能を実行するように適合され得る。別の例では、バスはI3Cバスである。
【００６６】
図15は、本開示の1つまたは複数の態様(たとえば、上記で説明した図14の方法に関する態様)に関する動作をサポートするために処理回路1502を用いる装置1500のためのハードウェア実装形態の簡略化された例を示す図である。処理回路は、通常、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、シーケンサ、および状態機械のうちの1つまたは複数を含み得るプロセッサ1516を有する。処理回路1502は、バス1520によって概略的に表されるバスアーキテクチャを用いて実装され得る。バス1520は、処理回路1502の特定の適用例および全体的な設計制約に応じて、任意の数の相互接続バスおよびブリッジを含み得る。バス1520は、プロセッサ1516、モジュールまたは回路1504、1506、1508、コネクタまたはワイヤ1514を介して通信するように構成可能なライン/バスインターフェース回路1512、ならびにコンピュータ可読記憶媒体1518によって表される、1つまたは複数のプロセッサおよび/またはハードウェアモジュールを含む様々な回路を互いにリンクさせる。バス1520は、タイミングソース、周辺機器、電圧調整器、および電力管理回路などの様々な他の回路をリンクさせることもできるが、これらの回路は当技術分野でよく知られており、したがって、これ以上は説明しない。
【００６７】
プロセッサ1516は、コンピュータ可読記憶媒体1518上に記憶されたコード/命令の実行を含む一般的な処理を担う。コード/命令は、プロセッサ1516によって実行されると、処理回路1502に、任意の特定の装置のための上記で説明した様々な機能を実行させる。コンピュータ可読記憶媒体はまた、データレーンおよびクロックレーンとして構成され得るコネクタまたはワイヤ1514を介して送信されたシンボルから復号されるデータを含む、ソフトウェアを実行するときにプロセッサ1516によって操作されるデータを記憶するために使用され得る。処理回路1502は、モジュール/回路1504、1506、および1508のうちの少なくとも1つをさらに含む。モジュール/回路1504、1506、および1508は、コンピュータ可読記憶媒体1518に常駐する/記憶された、プロセッサ1516内で動作しているソフトウェアモジュール、プロセッサ1516に結合された1つもしくは複数のハードウェアモジュール、またはそれらの何らかの組合せであってもよい。モジュール/回路1504、1506、および/または1508は、マイクロコントローラ命令、状態機械構成パラメータ、またはそれらの何らかの組合せを含み得る。
【００６８】
一構成では、装置1500は、バス1520のコネクタまたはワイヤ1514からパケットを受信するように構成されたパケット受信モジュールおよび/または回路1504を含み、パケットは、装置1500の制御レジスタにアドレス指定され、マスクフィールドと制御ビットフィールドとを含み、マスクフィールドは、制御ビットフィールドよりも多いビット数を有する。装置1500は、第1の値を有するマスクフィールド内の少なくとも1つのビットを識別し、第1の値を有するマスクフィールド内の少なくとも1つのビットに対応する制御ビットフィールド内の少なくとも1つのビットを検出し、制御ビットフィールド内の少なくとも1つのビットに基づいて制御レジスタに書き込むためのロード値を取得するように構成されたロード値取得モジュールおよび/または回路1506をさらに含む。装置1500は、ロード値を制御レジスタに書き込むように構成された制御レジスタ管理モジュールおよび/または回路1508も含み、制御ビットフィールド内の関連するビットに対応するものとしてマスクフィールドによって識別された制御レジスタ内の各ビットロケーションは、制御ビットフィールド内の関連するビットに基づくビット値を含んでいる。
【００６９】
開示したプロセスにおけるステップの特定の順序または階層は、例示的な手法の例示であることを理解されたい。設計上の選好に基づいて、プロセスにおけるステップの特定の順序または階層は再構成される場合があることを理解されたい。さらに、いくつかのステップは、組み合わされるか、または省略される場合がある。添付の方法クレームは、様々なステップの要素を例示的な順序で提示したものであり、提示された特定の順序または階層に限定されるものではない。
【００７０】
上述の説明は、いかなる当業者も本明細書で説明する様々な態様を実践できるようにするために提供される。これらの態様への様々な変更は当業者に容易に明らかになり、本明細書で定義する一般原理は他の態様に適用され得る。したがって、特許請求の範囲は、本明細書に示す態様に限定されるものではなく、クレーム文言と一致するすべての範囲を与えられるべきであり、単数形での要素への言及は、そのように明記されていない限り、「唯一無二の」ではなく、「1つまたは複数の」を意味するものとする。別段に明記されていない限り、「いくつかの」という用語は、1つまたは複数を指す。当業者に知られているか、または後で知られることになる、本開示全体にわたって説明する様々な態様の要素のすべての構造的および機能的等価物は、参照により本明細書に明確に組み込まれ、特許請求の範囲によって包含されるものとする。さらに、本明細書で開示するものは、そのような開示が特許請求の範囲において明示的に列挙されているかどうかにかかわらず、公に供されるものではない。いかなるクレーム要素も、要素が「ための手段」という句を使用して明確に列挙されていない限り、ミーンズプラスファンクションとして解釈されるべきではない。
【符号の説明】
【００７１】
100  装置
102  処理回路
104  ICデバイス
106  ICデバイス、無線周波数(RF)フロントエンド、RFフロントエンド
108  アンテナ
110  モデム
112  処理デバイス
114  メモリデバイス
120  ディスプレイ
122  キーパッド
124  ボタン
200  ブロック図
202  デバイス
204  モデム
206  ベースバンドプロセッサ
208  RFFEバス、通信リンク
212〜217  フロントエンドデバイス
212  RF集積回路(RFIC)、RFIC
213  スイッチ
214  RFチューナー
215  電力増幅器(PA)、PA
216  低雑音増幅器(LNA)
217  電力管理モジュール
220  通信リンク
300  デバイス
3201〜320N  バスマスタデバイス、デバイス
302  スレーブデバイス、第1のスレーブデバイス、デバイス
3221〜322N  スレーブデバイス、デバイス
306  構成レジスタ
310  トランシーバ
310a  受信機
310b  共通回路
310c  送信機
312  処理回路および/または制御論理
314a、314b  ラインドライバ/受信機回路
316  シリアルクロックライン
318  シリアルデータライン
324  ストレージデバイス
328  送信クロック(TXCLK)信号、TXCLK信号
330  RFFEバス
400  装置
402  バスマスタデバイス、第1のバスマスタデバイス
404  バスマスタデバイス、第2のバスマスタデバイス
406  スレーブデバイス
408  シリアルバス
412  機能回路またはモジュール
414  メモリデバイス
416  プロセッサ
420  制御レジスタ、8ビット制御レジスタ
422  第1のグループのビット
424  第2のグループのビット
426  第3のグループのビット
500  パケット
502  8ビットフィールド、マスクフィールド、8ビットマスクフィールド
504  8ビットフィールド、制御ビットフィールド、8ビット制御ビットフィールド
510  データフロー図
512  ゲーティング関数
514  ビット更新値
600  FM-PBF書込みパケット
602  マスクフィールド
604  制御ビットフィールド
606〜613  構成
606  第1の構成
613  第8の構成
700  FM-PBF書込みパケット、第1のFM-PBF書込みパケット、第3のFM-PBF書込みパケット
702  マスクフィールド
704  制御ビットフィールド
710  制御レジスタ
712  MF-D3ビットロケーション
714  制御ビット
720  FM-PBF書込みパケット、第2のFM-PBF書込みパケット、第1のFM-PBF書込みパケット
722  マスクフィールド
724  制御ビットフィールド
730  MF-D3ビットロケーション
732  制御ビット
800  FM-PBF書込みパケット、第1のFM-PBF書込みパケット、第2のFM-PBF書込みパケット
802  マスクフィールド
804  制御ビットフィールド
810  制御レジスタ
812a  MF-D6ビットロケーション
812b  MF-D3ビットロケーション
814a  制御ビット、第1の制御ビット
814b  制御ビット、第2の制御ビット
820  FM-PBF書込みパケット、第2のFM-PBF書込みパケット
822  マスクフィールド
824  制御ビットフィールド
830  制御レジスタ
832a  MF-D7ビットロケーション
832b  MF-D2ビットロケーション
832c  MF-D0ビットロケーション
834a  制御ビット、第1の制御ビット
834b  制御ビット、第2の制御ビット
834c  制御ビット、第3の制御ビット
900  FM-PBF書込みパケット処理
902  マスクフィールド
904  2ビット制御ビットフィールド、制御ビットフィールド
906  ロード値レジスタ
908  方向
912、914  ビット
920  プロセス
1000  表、第1の表
1020  表、第2の表
1100  装置
1102  処理回路
1104  プロセッサ
1106  ストレージ、コンピュータ可読媒体および/またはストレージ
1108  バスインターフェース
1110  バス
1112  トランシーバ
1114  ランタイムイメージ
1116  ソフトウェアモジュール
1118  ユーザインターフェース
1120  時分割プログラム
1122  内部デバイスおよび/または論理回路
1200  フローチャート
1300  装置
1302  処理回路
1304  モジュールまたは回路、モジュール/回路、マスクフィールド生成モジュールおよび/または回路
1306  モジュールまたは回路、モジュール/回路、制御ビットフィールド生成モジュールおよび/または回路
1308  モジュールまたは回路、モジュール/回路、パケット送信モジュールおよび/または回路
1312  ライン/バスインターフェース回路、インターフェース回路
1314  コネクタまたはワイヤ
1316  プロセッサ
1318  コンピュータ可読記憶媒体
1320  バス
1400  フローチャート
1500  装置
1502  処理回路
1504  モジュールまたは回路、モジュール/回路、パケット受信モジュールおよび/または回路
1506  モジュールまたは回路、モジュール/回路、ロード値取得モジュールおよび/または回路
1508  モジュールまたは回路、モジュール/回路、制御レジスタ管理モジュールおよび/または回路
1512  ライン/バスインターフェース回路
1514  コネクタまたはワイヤ
1516  プロセッサ
1518  コンピュータ可読記憶媒体
1520  バス
【図１】
2018538617.tif 000003
【図２】
2018538617.tif 000004
【図３】
2018538617.tif 000005
【図４】
2018538617.tif 000006
【図５】
2018538617.tif 000007
【図６】
2018538617.tif 000008
【図７】
2018538617.tif 000009
【図８】
2018538617.tif 000010
【図９】
2018538617.tif 000011
【図１０】
2018538617.tif 000012
【図１１】
2018538617.tif 000013
【図１２】
2018538617.tif 000014
【図１３】
2018538617.tif 000015
【図１４】
2018538617.tif 000016
【図１５】
2018538617.tif 000017
【国際調査報告】
2018538617.tif 000018
2018538617.tif 000019
2018538617.tif 000020