(57)【要約】  シリアルバスインターフェースにわたる送信機と受信機との間のデータの通信を円滑にするシステム、方法、および装置について説明する。一構成では、送信機は、16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成することであって、16ビットアドレスが、最上位バイト(MSB)および最下位バイト(LSB)を含む、生成することと、MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較することと、マスク・データ対バースト長をシャドーレジスタ内に保持された受信機マスク書込みバースト長と比較することと、MSBがスレーブレジスタ内に保持された受信機ベースアドレスに等しく、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいとき、バスインターフェースを介してデータグラムを受信機に送ることとを行う。
2018536925.tif 000002
【特許請求の範囲】
【請求項１】
バスインターフェースを介してデータを受信機に送るための送信機において実行される方法であって、
16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成するステップであって、前記16ビットアドレスが、最上位バイト(MSB)および最下位バイト(LSB)を含む、生成するステップと、
前記MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較するステップと、
前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された受信機マスク書込みバースト長と比較するステップと、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しく、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しい
とき、
前記バスインターフェースを介して前記データグラムを前記受信機に送るステップと
を含む、方法。
【請求項２】
前記受信機に送られる前記データグラムが前記MSBおよび前記マスク・データ対バースト長を含まない、請求項1に記載の方法。
【請求項３】
前記MSBを前記シャドーレジスタ内に保持された前記受信機ベースアドレスと前記比較するステップが、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しいかどうかを検出するステップと、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しくないとき、
前記MSBに等しくなるようにベースアドレスを前記受信機において設定するステップと、
前記シャドーレジスタ内に保持された前記受信機ベースアドレスを前記MSBに更新するステップと
を含む、請求項1に記載の方法。
【請求項４】
受信機における前記ベースアドレスが、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって設定される、請求項3に記載の方法。
【請求項５】
前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長と前記比較するステップが、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しいかどうかを検出するステップと、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しくないとき、
前記マスク・データ対バースト長に等しくなるようにマスク書込みバースト長を前記受信機において設定するステップと、
前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長を前記マスク・データ対バースト長に更新するステップと
を含む、請求項1に記載の方法。
【請求項６】
前記受信機における前記マスク書込みバースト長が、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって設定される、請求項5に記載の方法。
【請求項７】
データを受信機に送るための送信機であって、
バスインターフェースと、
処理回路であって、
16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成することであって、前記16ビットアドレスが、最上位バイト(MSB)および最下位バイト(LSB)を含む、生成することと、
前記MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較することと、
前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された受信機マスク書込みバースト長と比較することと、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しく、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しい
とき、
前記バスインターフェースを介して前記データグラムを前記受信機に送ることと
を行うように構成された、処理回路と
含む、送信機。
【請求項８】
前記受信機に送られる前記データグラムが前記MSBおよび前記マスク・データ対バースト長を含まない、請求項7に記載の送信機。
【請求項９】
前記処理回路が、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しいかどうかを検出し、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しくないとき、
前記MSBに等しくなるようにベースアドレスを前記受信機において設定し、
前記シャドーレジスタ内に保持された前記受信機ベースアドレスを前記MSBに更新する
ことによって、前記MSBを前記シャドーレジスタ内に保持された前記受信機ベースアドレスと比較するように構成される、請求項7に記載の送信機。
【請求項１０】
前記処理回路が、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって前記ベースアドレスを前記受信機において設定するように構成される、請求項9に記載の送信機。
【請求項１１】
前記処理回路が、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しいかどうかを検出し、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しくないとき、
前記マスク・データ対バースト長に等しくなるようにマスク書込みバースト長を前記受信機において設定し、
前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長を前記マスク・データ対バースト長に更新する
ことによって、前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長と比較するように構成される、請求項7に記載の送信機。
【請求項１２】
前記処理回路が、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって前記マスク書込みバースト長を前記受信機において設定するように構成される、請求項11に記載の送信機。
【請求項１３】
データを受信機に送るための送信機において実行される方法であって、
インターフェースを通して前記受信機に送信されるべきデータグラム内にマスクフィールドを生成するステップであって、前記マスクフィールドが無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する、生成するステップと、
前記データグラム内にデータフィールドを生成するステップであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、生成するステップと、
前記インターフェースを通して前記データグラムを送信するステップであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信するステップと
を含む、方法。
【請求項１４】
前記マスクフィールドが、前記RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットをさらに示す、請求項13に記載の方法。
【請求項１５】
前記データグラム内にコマンドフィールドを生成するステップであって、前記コマンドフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するステップをさらに含む、請求項13に記載の方法。
【請求項１６】
前記データグラム内にコマンドフィールドを生成するステップであって、前記コマンドフィールドが、前記データグラムがマスク書込みコマンドであることを示す、生成するステップと、
前記データグラム内にモードフィールドを生成するステップであって、前記モードフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するステップと
をさらに含む、請求項13に記載の方法。
【請求項１７】
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するビットインデックスフィールドであり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
請求項13に記載の方法。
【請求項１８】
データを受信機に送るための送信機であって、
バスインターフェースと、
処理回路であって、
前記バスインターフェースを通して前記受信機に送信されるべきデータグラム内にマスクフィールドを生成することであって、前記マスクフィールドが無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する、生成することと、
前記データグラム内にデータフィールドを生成することであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、生成することと、
前記バスインターフェースを通して前記データグラムを送信することであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信することと
を行うように構成された処理回路と
を含む、送信機。
【請求項１９】
データを送信機から受信するための受信機において実行される方法であって、
インターフェースを通してデータグラムを前記送信機から受信するステップであって、前記データグラムが前記受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信するステップと、
前記データグラム内のマスクフィールドを読み取るステップであって、前記マスクフィールドが前記RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する、読み取るステップと、
前記データグラム内のデータフィールドを読み取るステップであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、読み取るステップと、
前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更するステップと
を含む、方法。
【請求項２０】
前記マスクフィールドが、前記RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットをさらに示す、請求項19に記載の方法。
【請求項２１】
前記データグラム内のコマンドフィールドを読み取るステップであって、前記コマンドフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るステップをさらに含む、請求項19に記載の方法。
【請求項２２】
前記データグラム内のコマンドフィールドを読み取るステップであって、前記コマンドフィールドが、前記データグラムがマスク書込みコマンドであることを示す、読み取るステップと、
前記データグラム内のモードフィールドを読み取るステップであって、前記モードフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るステップと
をさらに含む、請求項19に記載の方法。
【請求項２３】
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するビットインデックスフィールドであり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
請求項19に記載の方法。
【請求項２４】
データを送信機から受信するための受信機であって、
バスインターフェースと、
処理回路であって、
前記バスインターフェースを通してデータグラムを前記送信機から受信することであって、前記データグラムが前記受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信することと、
前記データグラム内のマスクフィールドを読み取ることであって、前記マスクフィールドが前記RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する、読み取ることと、
前記データグラム内のデータフィールドを読み取ることであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、読み取ることと、
前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更することと
を行うように構成された、処理回路と
を含む、受信機。
【請求項２５】
バスインターフェースを通してデータを受信機に送るための送信機において実行される方法であって、
前記受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化するステップと、
前記バスインターフェースを介して前記受信機に送信されるべきデータグラムを生成するステップであって、前記データグラムがアドレス値を提供する、生成するステップと、
前記データグラム内にペイロードフィールドを生成するステップであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、生成するステップと、
前記バスインターフェースを通して前記データグラムを送信するステップであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信するステップと
を含む、方法。
【請求項２６】
前記受信機における前記構成レジスタ内の前記単一ビットを第2の値に設定することによって、前記マスク書込み動作を無効化するステップ
をさらに含む、請求項25に記載の方法。
【請求項２７】
前記受信機における前記構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化するステップであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記データグラムによって提供される前記アドレス値の組合せである、有効化するステップと、
前記受信機における前記構成レジスタ内の他の単一ビットを第2の値に設定することによって、前記ページセグメント化アクセス動作を無効化するステップであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記データグラムによって提供される前記アドレス値である、無効化するステップと
をさらに含む、請求項25に記載の方法。
【請求項２８】
データを受信機に送るための送信機であって、
バスインターフェースと、
処理回路であって、
前記受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化することと、
前記バスインターフェースを介して前記受信機に送信されるべきデータグラムを生成することであって、前記データグラムがアドレス値を提供する、生成することと、
前記データグラム内にペイロードフィールドを生成することであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、生成することと、
前記バスインターフェースを通して前記データグラムを送信することであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信することと
を行うように構成された、処理回路と
を含む、送信機。
【請求項２９】
前記処理回路が、
前記受信機における前記構成レジスタ内の前記単一ビットを第2の値に設定することによって、前記マスク書込み動作を無効化する
ようにさらに構成される、請求項28に記載の送信機。
【請求項３０】
前記処理回路が、
前記受信機における前記構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化することであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記データグラムによって提供される前記アドレス値の組合せである、有効化することと、
前記受信機における前記構成レジスタ内の他の単一ビットを第2の値に設定することによって、前記ページセグメント化アクセス動作を無効化することであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記データグラムによって提供される前記アドレス値である、無効化することと
を行うようにさらに構成される、請求項28に記載の送信機。
【請求項３１】
バスインターフェースを通してデータを送信機から受信するための受信機において実行される方法であって、
前記受信機における構成レジスタ内に単一ビットを設定するための第1のデータグラムを前記送信機から受信するステップと、
前記構成レジスタ内の前記単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出するステップと、
第2のデータグラムを前記送信機から受信するステップであって、前記第2のデータグラムがアドレス値を提供する、受信するステップと、
前記第2のデータグラム内のペイロードフィールドを読み取るステップであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、前記受信機の無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取るステップと、
各マスク・データ対に関して前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更するステップと
を含む、方法。
【請求項３２】
前記受信機における前記構成レジスタ内の前記単一ビットが第2の値に設定されているとき、前記マスク書込み動作が無効化されていることを検出するステップ
をさらに含む、請求項31に記載の方法。
【請求項３３】
前記受信機における前記構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを前記送信機から受信するステップと、
前記受信機における前記構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出するステップであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記第2のデータグラムによって提供される前記アドレス値の組合せである、検出するステップと、
前記受信機における前記構成レジスタ内の前記他の単一ビットが第2の値に設定されているとき、前記ページセグメント化アクセス動作が無効化されていることを検出するステップであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記第2のデータグラムによって提供される前記アドレス値である、検出するステップと
をさらに含む、請求項31に記載の方法。
【請求項３４】
データを送信機から受信するための受信機であって、
バスインターフェースと、
処理回路であって、
前記受信機における構成レジスタ内に単一ビットを設定するための第1のデータグラムを前記送信機から受信することと、
前記構成レジスタ内の前記単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出することと、
第2のデータグラムを前記送信機から受信するステップであって、前記第2のデータグラムがアドレス値を提供する、受信することと、
前記第2のデータグラム内のペイロードフィールドを読み取ることであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、前記受信機の無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取ることと、
各マスク・データ対に関して前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更することと
を行うように構成された、処理回路と
を含む、受信機。
【請求項３５】
前記処理回路が、
前記受信機における前記構成レジスタ内の前記単一ビットが第2の値に設定されているとき、前記マスク書込み動作が無効化されていることを検出する
ようにさらに構成される、請求項34に記載の受信機。
【請求項３６】
前記処理回路が、
前記受信機における前記構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを前記送信機から受信することと、
前記受信機における前記構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出することであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記第2のデータグラムによって提供される前記アドレス値の組合せである、検出することと、
前記受信機における前記構成レジスタ内の前記他の単一ビットが第2の値に設定されているとき、前記ページセグメント化アクセス動作が無効化されていることを検出することであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記第2のデータグラムによって提供される前記アドレス値である、検出することと
を行うようにさらに構成される、請求項34に記載の受信機。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、2015年10月23日に米国特許商標庁に出願した仮出願第62/245,731号、2016年6月10日に米国特許商標庁に出願した仮出願第62/348,619号、および2016年10月19日に米国特許商標庁に出願した非仮出願第15/298,071号の優先権および利益を主張し、それらの内容全体が参照により本明細書に組み込まれる。
【０００２】
本開示は、一般に、データ転送に関し、より詳細には、マスク書込み動作を有する無線周波数フロントエンド(RFFE:radio frequency front end)デバイスに関する。
【背景技術】
【０００３】
モバイルデバイス市場が多機能スマートフォンで急成長するにつれて、セルラー通信の複雑さはそれに応じて増大した。モバイルデバイスの無線フロントエンドが10以上もの周波数帯域をカバーすることは現在普通である。無線フロントエンドは、したがって、無線シグナリングの複雑性に適応するために、複数の電力増幅器、ダイプレクサ、低雑音増幅器、アンテナスイッチ、フィルタ、および他の無線周波数(RF)フロントエンドデバイスを必要とする。これらの様々なRFフロントエンドデバイスは、無線周波数集積回路(RFIC)などのホストデバイスまたはマスタデバイスによって制御される。RFフロントエンドの複雑性が増大するので、標準化プロトコルが多くの異なるデバイスを制御する必要性は、モバイルインダストリプロセッサインターフェース(MIPI:Mobile Industry Processor Interface)RFフロントエンド制御インターフェース(RFFE:RF Front End Control Interface)規格の開発につながる。
【０００４】
RFFE規格は、クロックラインおよび双方向データラインを含むシリアルバスを指定する。RFFEバスを通して、RFFEマスタデバイスは、RFフロントエンドデバイスを制御するために、複数のRFFEスレーブデバイス内のレジスタから読み取り、それに書き込むことができる。読取りコマンドおよび書込みコマンドは、RFFE規格において、プロトコルメッセージに編成され、プロトコルメッセージは、各々、初期シーケンス開始条件(SSC:sequence start condition)と、コマンドフレームと、データペイロードと、最終的なバスパークサイクル(BPC:bus park cycle)とを含み得る。プロトコルメッセージは、レジスタコマンドと、拡張レジスタコマンドと、拡張レジスタロングコマンドとを含む。プロトコルメッセージは、ブロードキャストコマンドをさらに含み得る。レジスタコマンド、拡張レジスタコマンド、および拡張レジスタロングコマンド(3つのタイプのコマンド)はすべて、読取りコマンドまたは書込みコマンドのいずれかであり得る。3つのタイプのコマンドに関して、RFFEスレーブデバイスの各々の中のレジスタは、16ビット幅のアドレス空間(16進法で0x0000〜0xFFFF)に編成される。3つのタイプのコマンドは各々、特定のRFFEスレーブデバイスならびにレジスタアドレスをアドレス指定するコマンドフレームを含む。5つのレジスタアドレスビットだけが必要とされるように、レジスタコマンド内のコマンドフレーム(レジスタコマンドフレーム)は、最初の5ビットのアドレス空間(0x00〜0x1F)内のレジスタを対象とする。レジスタコマンドフレームの後に、8ビットデータペイロードフレームが続く。対照的に、拡張レジスタコマンドフレームは、8個のレジスタアドレスビットを含み、その後に、最高で16バイトのデータが続き得る。最終的に、拡張レジスタロングコマンドフレームは、拡張レジスタロングコマンドフレームがアドレス指定されたRFFEスレーブデバイス内のいずれかのレジスタを一意に識別することができるように、完全な16ビットレジスタアドレスを含む。拡張レジスタロングコマンドフレームの後に、最高で8バイトのデータが続き得る。
【０００５】
コマンドの各々は一意のシーケンス開始条件(SSC)で開始し、次いで、その後に、対応するコマンドフレーム、いくつかのデータフレームが続き、最終的に、そのコマンドの終了をシグナリングするバスパークサイクル(BPC)が続く。これらのコマンドのいずれかの送信に関連するレイテンシは、したがって、その様々なフレーム内のビット数、ならびにRFFEクロックラインに関するクロッキング速度に左右される。RFFEプロトコルの下で、送信されるフレームの各ビットはクロックの期間に対応するが、これは送信がクロックサイクル当たり1ビットに対応するシングルデータレートであるためである。たとえば、SDRは、クロックの各立上りエッジに(または、立下りエッジのみに)応じてビットを送信することから生じる。最大クロッキング速度はRFFEv2仕様において52MHzである。このクロッキングレートは、RFFEプロトコルの前のバージョンに対して増大し、増大した電力消費に関連する。
【０００６】
3つのタイプのRFFEコマンド、すなわち、拡張レジスタ、拡張レジスタロング、およびレジスタの各々は、読取りコマンドまたは書込みコマンドのいずれかであり得る。概して、各書込みコマンドはフルバイトを各指定されたレジスタに書き込む。しかしながら、これは、RFFEマスタデバイスがRFFEスレーブデバイスレジスタ内のすべての8個のビットを変更する必要がない場合に該当し得る。さらに、多くのデバイス内で、2個以上のマスタまたは無線アクセス技術(RAT)構成要素が同じRFFEスレーブデバイスレジスタ内の制御ビットを共有することができる。同じレジスタに書き込む「他の」ソースに対応するビットの汚染を避けるために、「部分書込み」動作が望まれる場合がある。そのような部分書込み動作では、RFFEマスタデバイスは、最初に、3つのコマンドタイプのうちの適切な1つを使用して、選択されたスレーブデバイスレジスタ上で読取り動作を実行しなければならない。RFFEマスタデバイスは、次いで、対応するRFFEスレーブデバイスレジスタ内のすべてのビットの現状を知る。RFFEマスタデバイスは、次いで、対応するスレーブデバイスレジスタに関するデータペイロードが、すべての残りのビットが前の読取り動作によって決定された現状にとどまる一方でそのデバイスが変更しているビットを有する、3つのコマンドタイプのうち適切な1つのコマンドタイプを使用して、RFFE書込みコマンドを発行することができる。部分書込み動作に先立つ読取り動作の必要性はレイテンシを増大させ、これは、対応するRFフロントエンド内で実装されているいくつかの無線アクセス技術(RAT)のレイテンシ要件に違反し得る。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
したがって、部分書込み動作に関するレイテンシを低減させたRFFEメッセージングの必要が当技術分野に存在する。
【課題を解決するための手段】
【０００８】
本明細書で開示する実施形態は、シリアルバスインターフェースにわたる送信機と受信機との間のデータの通信を円滑にするシステム、方法、および装置を提供する。マスタデバイスが、アドレス指定されたスレーブデバイスレジスタ内で変更されていないビットの値を決定するために何の読取り動作も必要としないマスク書込みコマンドをそのスレーブデバイスに発行することができる無線周波数フロントエンド(RFFE)ネットワークが提供される。各マスク書込みコマンドは、アドレス指定されたスレーブデバイスレジスタ内で変更されるべきビットのビット部分を識別するマスクフィールドまたはビットインデックスフィールドを含み得る。
【０００９】
本開示の一態様では、バスインターフェースを介してデータを受信機に送るための送信機において実行される方法は、16ビットアドレスおよびマスク・データ対バースト長(mask-and-data pair burst length)に基づいてデータグラムを生成するステップであって、16ビットアドレスが最上位バイト(MSB)および最下位バイト(LSB)を含む、生成するステップと、MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較するステップと、マスク・データ対バースト長をシャドーレジスタ内に保持された受信機マスク書込みバースト長と比較するステップと、MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しく、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいとき、バスインターフェースを介してデータグラムを受信機に送るステップとを含む。受信機に送られるデータグラムは、MSBおよびマスク・データ対バースト長を含まない。
【００１０】
一態様では、MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較するステップは、MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しいかどうかを検出するステップを含む。MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しくないとき、この方法は、MSBに等しくなるようにベースアドレスを受信機において設定するステップと、シャドーレジスタ内に保持された受信機ベースアドレスをMSBに更新するステップとを含む。受信機におけるベースアドレスは、データグラムを送るのに先立って書込みアクセスコマンドを受信機に送ることによって設定される。
【００１１】
一態様では、マスク・データ対バースト長をシャドーレジスタ内に保持された受信機マスク書込みバースト長と比較するステップは、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいかどうかを検出するステップを含む。マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しくないとき、この方法は、マスク・データ対バースト長に等しくなるようにマスク書込みバースト長を受信機において設定するステップと、シャドーレジスタ内に保持された受信機マスク書込みバースト長をマスク・データ対バースト長に更新するステップとを含む。受信機におけるマスク書込みバースト長は、データグラムを送るのに先立って書込みアクセスコマンドを受信機に送ることによって設定される。
【００１２】
本開示の別の態様では、データを受信機に送るための送信機は、バスインターフェースと処理回路とを含む。この処理回路は、16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成することであって、16ビットアドレスが最上位バイト(MSB)および最下位バイト(LSB)を含む、生成することと、MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較することと、マスク・データ対バースト長をシャドーレジスタ内に保持された受信機マスク書込みバースト長と比較することと、MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しく、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいとき、バスインターフェースを介してデータグラムを受信機に送ることとを行うように構成される。受信機に送られるデータグラムは、MSBおよびマスク・データ対バースト長を含まない。
【００１３】
本開示のさらなる態様では、データを受信機に送るための送信機は、16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成するための手段であって、16ビットアドレスが最上位バイト(MSB)最下位バイト(LSB)を含む、生成するための手段と、MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較するための手段と、マスク・データ対バースト長をシャドーレジスタ内に保持された受信機マスク書込みバースト長と比較するための手段と、MSBがスレーブレジスタ内に保持された受信機ベースアドレスに等しく、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいとき、バスインターフェースを介してデータグラムを受信機に送るための手段とを含む。受信機に送られるデータグラムは、MSBおよびマスク・データ対バースト長を含まない。
【００１４】
本開示の一態様では、データを受信機に送るための送信機によって実行される方法は、インターフェースを通して受信機に送信されるべきデータグラム内にマスクフィールドを生成するステップであって、マスクフィールドが無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する、生成するステップと、データグラム内にデータフィールドを生成するステップであって、データフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する、生成するステップと、インターフェースを通してデータグラムを送信するステップであって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信するステップとを含む。
【００１５】
一態様では、マスクフィールドは、RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットをさらに示す。一態様では、マスクフィールドは、受信機のRFFEレジスタ内で変更されるべきビットの位置を識別するビットインデックスフィールドであり、データフィールドは、ビットインデックスフィールド内で識別されるビット位置に関するビット値を提供するビット値フィールドである。
【００１６】
一態様では、この方法は、データグラム内にコマンドフィールドを生成するステップであって、コマンドフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するステップをさらに含む。
【００１７】
一態様では、この方法は、データグラム内にコマンドフィールドを生成するステップであって、コマンドフィールドが、データグラムがマスク書込みコマンドであることを示す、生成するステップと、データグラム内にモードフィールドを生成するステップであって、モードフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するステップとをさらに含む。
【００１８】
本開示の別の態様では、データを受信機に送るための送信機は、バスインターフェースと処理回路とを含む。この処理回路は、バスインターフェースを通して受信機に送信されるべきデータグラム内にマスクフィールドを生成することであって、マスクフィールドが無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する、生成することと、データグラム内にデータフィールドを生成することであって、データフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する、生成することと、バスインターフェースを通してデータグラムを送信することであって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信することとを行うように構成される。
【００１９】
一態様では、この処理回路は、データグラム内にコマンドフィールドを生成することであって、コマンドフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成することを行うようにさらに構成される。
【００２０】
一態様では、この処理回路は、データグラム内にコマンドフィールドを生成することであって、コマンドフィールドが、データグラムがマスク書込みコマンドであることを示す、生成することと、データグラム内にモードフィールドを生成することであって、モードフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成することとを行うようにさらに構成される。
【００２１】
本開示のさらなる態様では、データを受信機に送るための送信機は、インターフェースを通して受信機に送信されるべきデータグラム内にマスクフィールドを生成するための手段であって、マスクフィールドが無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する、生成するための手段と、データグラム内にデータフィールドを生成するための手段であって、データフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する、生成するための手段と、インターフェースを通してデータグラムを送信するための手段であって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信するための手段とを含む。
【００２２】
一態様では、この送信機は、データグラム内にコマンドフィールドを生成するための手段であって、コマンドフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するための手段をさらに含む。
【００２３】
一態様では、この送信機は、データグラム内にコマンドフィールドを生成するための手段であって、コマンドフィールドが、データグラムがマスク書込みコマンドであることを示す、生成するための手段と、データグラム内にモードフィールドを生成するための手段であって、モードフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するための手段とをさらに含む。
【００２４】
本開示の一態様では、データを送信機から受信するための受信機において実行される方法は、インターフェースを通してデータグラムを送信機から受信するステップであって、データグラムが受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信するステップと、データグラム内のマスクフィールドを読み取るステップであって、マスクフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する、読み取るステップと、データグラム内のデータフィールドを読み取るステップであって、データフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する、読み取るステップと、データフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更させるステップとを含む。
【００２５】
一態様では、マスクフィールドは、RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットをさらに示す。一態様では、マスクフィールドは、受信機のRFFEレジスタ内で変更されるべきビット位置を識別するビットインデックスフィールドであり、データフィールドは、ビットインデックスフィールド内で識別されるビット位置に関するビット値を提供するビット値フィールドある。
【００２６】
一態様では、この方法は、データグラム内のコマンドフィールドを読み取るステップであって、コマンドフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るステップをさらに含む。
【００２７】
一態様では、この方法は、データグラム内のコマンドフィールドを読み取るステップであって、コマンドフィールドが、データグラムがマスク書込みコマンドであることを示す、読み取るステップと、データグラム内のモードフィールドを読み取るステップであって、モードフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るステップとをさらに含む。
【００２８】
本開示の別の態様では、データを送信機から受信するための受信機は、バスインターフェースと処理回路とを含む。この処理回路は、バスインターフェースを通してデータグラムを送信機から受信することであって、データグラムが受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信することと、データグラム内のマスクフィールドを読み取ることであって、マスクフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する、読み取ることと、データグラム内のデータフィールドを読み取ることであって、データフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する、読み取ることと、データフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更させることとを行うように構成される。
【００２９】
一態様では、この処理回路は、データグラム内のコマンドフィールドを読み取ることであって、コマンドフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取ることを行うようにさらに構成される。
【００３０】
一態様では、この処理回路は、データグラム内のコマンドフィールドを読み取ることであって、コマンドフィールドが、データグラムがマスク書込みコマンドであることを示す、読み取ることと、データグラム内のモードフィールドを読み取ることであって、モードフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取ることとを行うようにさらに構成される。
【００３１】
本開示のさらなる態様では、データを送信機から受信するための受信機は、インターフェースを通してデータグラムを送信機から受信するための手段であって、データグラムが受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信するための手段と、データグラム内のマスクフィールドを読み取るための手段であって、マスクフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する、読み取るための手段と、データグラム内のデータフィールドを読み取るための手段であって、データフィールドがRFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する、読み取るための手段と、データフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更させるための手段とを含む。
【００３２】
一態様では、この受信機は、データグラム内のコマンドフィールドを読み取るための手段であって、コマンドフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るための手段をさらに含む。
【００３３】
一態様では、この受信機は、データグラム内のコマンドフィールドを読み取るための手段であって、コマンドフィールドが、データグラムがマスク書込みコマンドであることを示す、読み取るための手段と、データグラム内のモードフィールドを読み取るための手段であって、モードフィールドが、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るための手段とをさらに含む。
【００３４】
本開示の一態様では、バスインターフェースを通してデータを受信機に送るための送信機において実行される方法は、受信機に送信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを示すように構成レジスタを設定するステップと、データグラム内にコマンドフィールドを生成するステップであって、コマンドフィールドが、データグラムが拡張レジスタ書込みコマンドであるかまたは拡張レジスタロング書込みコマンドであるかを示す、生成するステップと、データグラム内にペイロードフィールドを生成するステップであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、生成するステップと、バスインターフェースを通してデータグラムを送信するステップであって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信するステップとを含む。
【００３５】
一態様では、構成レジスタは8個のレジスタビットを含み、構成レジスタを設定するステップは、8個のレジスタビットの第3のレジスタビットを、マスク書込み動作が有効化されていることを示すために1の値に設定し、マスク書込み動作が無効化されていることを示すために0の値に設定するステップと、マスク書込み動作が有効化されているとき、8個のレジスタビットの第4のレジスタビットを、拡張レジスタロング書込みコマンドに関してマスク書込み動作が有効化されていることを示すために1の値に設定し、拡張レジスタ書込みコマンドに関してマスク書込み動作が有効化されていることを示すために0の値に設定するステップとを含む。
【００３６】
本開示の別の態様では、データを受信機に送るための送信機は、バスインターフェースと処理回路とを含む。この処理回路は、受信機に送信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを示すように構成レジスタを設定することと、データグラム内にコマンドフィールドを生成することであって、コマンドフィールドが、データグラムが拡張レジスタ書込みコマンドであるかまたは拡張レジスタロング書込みコマンドであるかを示す、生成することと、データグラム内にペイロードフィールドを生成することであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、生成することと、バスインターフェースを通してデータグラムを送信することであって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信することとを行うように構成される。
【００３７】
本開示のさらなる態様では、バスインターフェースを通してデータを受信機に送るための送信機は、受信機に送信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを示すように構成レジスタを設定するための手段と、データグラム内にコマンドフィールドを生成するための手段であって、コマンドフィールドが、データグラムが拡張レジスタ書込みコマンドであるかまたは拡張レジスタロング書込みコマンドであるかを示す、生成するための手段と、データグラム内でペイロードフィールドを生成するための手段であって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、生成するための手段と、バスインターフェースを通してデータグラムを送信するための手段であって、データグラムが受信機のRFFEレジスタにアドレス指定される、生成するための手段とを含む。
【００３８】
本開示の一態様では、バスインターフェースを通してデータを送信機から受信するための受信機において実行される方法は、送信機から受信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを検出するために構成レジスタを読み取るステップと、バスインターフェースを通してデータグラムを送信機から受信するステップであって、データグラムが受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信するステップと、データグラム内のコマンドフィールドを読み取るステップであって、コマンドフィールドが、データグラムが拡張レジスタ書込みコマンドであるかまたは拡張レジスタロング書込みコマンドであるかを示す、読み取るステップと、データグラム内のペイロードフィールドを読み取るステップであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取るステップと、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更するステップとを含む。
【００３９】
一態様では、構成レジスタは8個のレジスタビットを含み、構成レジスタを読み取るステップは、8個のレジスタビットのうちの第3のレジスタビットが1の値に設定されているとき、マスク書込み動作が有効化されていることを検出し、第3のレジスタビットが0の値に設定されているとき、マスク書込み動作が無効化されていることを検出するステップを含む。マスク書込み動作が有効化されているとき、構成レジスタを読み取るステップは、8個のレジスタビットの第4のレジスタビットが1の値に設定されているとき、拡張レジスタロング書込みコマンドに関してマスク書込み動作が有効化されていることを検出し、第4のレジスタビットが0の値に設定されているとき、拡張レジスタ書込みコマンドに関してマスク書込み動作が有効化されていることを検出するステップを含む。
【００４０】
本開示の別の態様では、データを送信機から受信するための受信機は、バスインターフェースと処理回路とを含む。この処理回路は、送信機から受信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを検出するために構成レジスタを読み取ることと、バスインターフェースを通してデータグラムを送信機から受信することであって、データグラムが受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信することと、データグラム内のコマンドフィールドを読み取ることであって、コマンドフィールドが、データグラムが拡張レジスタ書込みコマンドであるかまたは拡張レジスタロング書込みコマンドであるかを示す、読み取ることと、データグラム内のペイロードフィールドを読み取ることであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取ることと、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更することとを行うように構成される。
【００４１】
本開示のさらなる態様では、バスインターフェースを通してデータを送信機から受信するための受信機は、送信機から受信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを検出するために構成レジスタを読み取るための手段と、バスインターフェースを通してデータグラムを送信機から受信ための手段であって、データグラムが受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信するための手段と、データグラム内のコマンドフィールドを読み取るための手段であって、コマンドフィールドが、データグラムが拡張レジスタ書込みコマンドであるかまたは拡張レジスタロング書込みコマンドであるかを示す、読み取るための手段と、データグラム内のペイロードフィールドを読み取るための手段であって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取るための手段と、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更するための手段とを含む。
【００４２】
本開示の一態様では、バスインターフェースを通してデータを受信機に送るための送信機において実行される方法は、受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化するステップと、受信機における構成レジスタ内の単一ビットを第2の値に設定することによって、マスク書込み動作を無効化するステップと、バスインターフェースを介して受信機に送信されるべきデータグラムを生成するステップであって、データグラムがアドレス値を提供する、生成するステップと、データグラム内にペイロードフィールドを生成するステップであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更さるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、生成するステップと、受信機における構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化するステップであって、RFFEレジスタのアドレスが、受信機におけるページアドレスレジスタに位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである、有効化するステップと、受信機における構成レジスタ内の他の単一ビットを第2の値に設定することによって、ページセグメント化アクセス動作を無効化するステップであって、RFFEレジスタのアドレスが、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である、無効化するステップと、バスインターフェースを通してデータグラムを送信するステップであって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信するステップとを含む。データグラムは、拡張レジスタ書込みデータグラムまたは拡張レジスタ書込みロングデータグラムであり得る。
【００４３】
本開示の別の態様では、データを受信機に送るための送信機は、バスインターフェースと処理回路とを含む。この処理回路は、受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化することと、受信機における構成レジスタ内の単一ビットを第2の値に設定することによって、マスク書込み動作を無効化することと、バスインターフェースを介して受信機に送信されるべきデータグラムを生成することであって、データグラムがアドレス値を提供する、生成することと、データグラム内にペイロードフィールドを生成することであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更さるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、生成することと、受信機における構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化することであって、RFFEレジスタのアドレスが、受信機におけるページアドレスレジスタに位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである、有効化することと、受信機における構成レジスタ内の他の単一ビットを第2の値に設定することによって、ページセグメント化アクセス動作を無効化することであって、RFFEレジスタのアドレスが、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である、無効化することと、バスインターフェースを通してデータグラムを送信することであって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信することとを行うように構成される。データグラムは、拡張レジスタ書込みデータグラムまたは拡張レジスタ書込みロングデータグラムであり得る。
【００４４】
本開示の一態様では、バスインターフェースを通してデータを送信機から受信するための受信機において実行される方法は、受信機における構成レジスタ内で単一ビットを設定するための第1のデータグラムを送信機から受信するステップと、構成レジスタ内の単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出するステップと、受信機における構成レジスタ内の単一ビットが第2の値に設定されているとき、マスク書込み動作が無効化されていることを検出するステップと、第2のデータグラムを送信機から受信するステップであって、第2のデータグラムがアドレス値を提供する、受信するステップと、第2のデータグラム内のペイロードフィールドを読み取るステップであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、受信機における無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取るステップと、受信機における構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを送信機から受信するステップと、受信機における構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出するステップであって、RFFEレジスタのアドレスが、受信機におけるページアドレスレジスタに位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである、検出するステップと、受信機における構成レジスタ内の他の単一ビットが第2の値に設定されているとき、ページセグメント化アクセス動作が無効化されていることを検出するステップであって、RFFEレジスタのアドレスが、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である、検出するステップと、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更するステップとを含む。
【００４５】
本開示の別の態様では、データを送信機から受信するための受信機は、バスインターフェースと処理回路とを含む。この処理回路は、受信機における構成レジスタ内で単一ビットを設定するための第1のデータグラムを送信機から受信することと、構成レジスタ内の単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出することと、受信機における構成レジスタ内の単一ビットが第2の値に設定されているとき、マスク書込み動作が無効化されていることを検出することと、第2のデータグラムを送信機から受信することであって、第2のデータグラムがアドレス値を提供する、受信することと、第2のデータグラム内のペイロードフィールドを読み取ることであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、受信機における無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取ることと、受信機における構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを送信機から受信することと、受信機における構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出することであって、RFFEレジスタのアドレスが、受信機におけるページアドレスレジスタに位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである、検出することと、受信機における構成レジスタ内の他の単一ビットが第2の値に設定されているとき、ページセグメント化アクセス動作が無効化されていることを検出することであって、RFFEレジスタのアドレスが、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である、検出することと、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更することとを行うように構成される。
【図面の簡単な説明】
【００４６】
【図１】本明細書で開示するいくつかの態様に従って適応され得るRFフロントエンド(RFFE)を含む装置を示す図である。
【図２】RFFEバスを採用して様々なフロントエンドデバイスを結合するデバイスを示すブロック図である。
【図３】本明細書で開示する特定の態様による、ICデバイス同士の間のデータリンクを採用する装置のためのシステムアーキテクチャの一例を示す図である。
【図４】RFFEプロトコル内の予約コマンドフィールドを示す図である。
【図５】本開示の一態様による、Nビットマスクフィールドを含む4個のマスク書込みコマンドを示す図である。
【図６】本開示の一態様による、単一の予約コマンドフィールドが採用される、図5のマスク書込みコマンドの修正を示す図である。
【図７】本開示の一態様による、変更されるべきビットのビット位置を識別するビットインデックスを含む4個のマスク書込みコマンドを示す図である。
【図８】本開示の一態様による、単一の予約コマンドフィールドが採用される、図7のマスク書込みコマンドの修正を示す図である。
【図９】16ビットアドレス空間およびマスク・データバイトのN個の対をサポートする例示的なパケット構造を示す図である。
【図１０】送信バッファ内の例示的なデータグラムを示す図である。
【図１１】送信バッファ内のデータグラムに関する例示的な動作を示す図である。
【図１２】マスク書込み動作をサポートする拡張レジスタ書込みコマンドの例示的なパケット構造を示す図である。
【図１３】マスク書込み動作をサポートする拡張レジスタ書込みロングコマンドの例示的なパケット構造を示す図である。
【図１４】構成レジスタのビット構造を示す図である。
【図１５】RFFEレジスタ空間の図である。
【図１６】構成レジスタとページアドレスレジスタとを有するRFFEレジスタ空間の図である。
【図１７】構成レジスタの別の例示的なビット構造を定義する表および構成レジスタビットの機能を示す図である。
【図１８】ページセグメント化アクセスを示す図である。
【図１９】本明細書で開示するいくつかの態様に従って適合され得る処理回路を採用する装置の一例を示すブロック図である。
【図２０】本明細書で開示するいくつかの態様による、データを受信機に送るための方法のフローチャートである。
【図２１】本明細書で開示するいくつかの態様による、データを受信機に送るための別の方法のフローチャートである。
【図２２】本明細書で開示するいくつかの態様による、データを受信機に送るためのさらなる方法のフローチャートである。
【図２３】本明細書で開示するいくつかの態様による、データを受信機に送るための別の方法のフローチャートである。
【図２４】本明細書で開示するいくつかの態様に従って適応された、送信装置、および処理回路を採用するためのハードウェア実装形態の一例を示す図である。
【図２５】本明細書で開示するいくつかの態様による、データを送信機から受信するための方法のフローチャートである。
【図２６】本明細書で開示するいくつかの態様による、データを送信機から受信するための別の方法のフローチャートである。
【図２７】本明細書で開示するいくつかの態様による、データを送信機から受信するためのさらなる方法のフローチャートである。
【図２８】本明細書で開示するいくつかの態様に従って適応された、受信装置、および処理回路を採用するためのハードウェア実装形態の一例を示す図である。
【発明を実施するための形態】
【００４７】
次に、図面を参照しながら様々な態様について説明する。以下の説明では、説明の目的で、1つまたは複数の態様の完全な理解を与えるために、多数の具体的な詳細が記載されている。しかしながら、そのような態様がこれらの具体的な詳細なしに実践される場合があることは明らかであろう。
【００４８】
本出願で使用する「構成要素」、「モジュール」、「システム」などの用語は、限定はしないが、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアなど、コンピュータ関連エンティティを含むものとする。たとえば、構成要素は、限定はしないが、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行ファイル、実行のスレッド、プログラム、および/またはコンピュータであってもよい。例として、コンピューティングデバイス上で動作するアプリケーションとコンピューティングデバイスの両方が構成要素であり得る。1つまたは複数の構成要素は、プロセスおよび/または実行スレッド内に存在することができ、構成要素は、1つのコンピューティングデバイス上に局在化される、および/または、2つ以上のコンピューティングデバイス間で分散される場合がある。加えて、これらの構成要素は、様々なデータ構造を記憶した様々なコンピュータ可読媒体から実行することができる。構成要素は、ローカルシステムの中の、分散システムの中の、かつ/またはインターネットなどのネットワークを越えた、別の構成要素と対話する1つの構成要素からのデータなどの、1つまたは複数のデータパケットを有する信号などに従って、ローカルプロセスおよび/またはリモートプロセスにより信号を介して他のシステムと通信し得る。
【００４９】
その上、「または」という用語は、排他的な「または」ではなく包括的な「または」を意味するものとする。すなわち、別段に規定されていない限り、または文脈から明らかでない限り、「XはAまたはBを採用する」という句は、自然包括的並べ替えのいずれかを意味するものとする。すなわち、「XはAまたはBを使用する」という句は、以下の場合のいずれかによって満たされる。XはAを使用する。XはBを使用する。XはAとBの両方を使用する。加えて、本出願および添付の特許請求の範囲で使用する冠詞「a」および「an」は、別段に規定されていない限り、または単数形を対象とすることが文脈から明らかでない限り、概して「1つまたは複数の」を意味するものと解釈されるべきである。
【００５０】
複数の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)デバイス104を含み得る。一例では、ASICデバイス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は、RFFEバス208を採用して様々なフロントエンドデバイス212〜217を結合するデバイス202の一例を示すブロック図200である。RFFEインターフェース210を含むモデム204はやはりRFFEバス208に結合され得る。様々な例では、デバイス202は、1つまたは複数のベースバンドプロセッサ206、1つまたは複数の他の通信リンク220、ならびに様々な他のバス、デバイス、および/または様々な機能で実装され得る。この例では、モデム204は、ベースバンドプロセッサ206と通信することができ、デバイス202は、モバイルコンピューティングデバイス、セルラーフォン、スマートフォン、セッション開始プロトコル(SIP)電話、ラップトップ、ノートブック、ネットブック、スマートブック、携帯情報端末(PDA)、衛星ラジオ、全地球測位システム(GPS)デバイス、スマートホームデバイス、インテリジェント照明、マルチメディアデバイス、ビデオデバイス、デジタルオーディオプレーヤ(たとえば、MP3プレーヤ)、カメラ、ゲームコンソール、エンターテインメントデバイス、車両構成要素、アビオニクスシステム、ウェアラブルコンピューティングデバイス(たとえば、スマートウォッチ、ヘルストラッカまたはフィットネストラッカ、アイウェアなど)、アプライアンス、センサー、セキュリティデバイス、自動販売機、スマートメータ、ドローン、マルチコプター、または任意の他の同様の機能デバイスのうちの1つまたは複数内で実施され得る。
【００５３】
RFFEバス208は、1つまたは複数のコントローラ、および/またはRFフロントエンドのいくつかの態様を構成および制御するプロセッサを含み得るRF集積回路(RFIC)212に結合され得る。RFFEバス208は、RFIC212をスイッチ213、RFチューナー214、電力増幅器(PA)215、低雑音増幅器(LNA)216、および電力管理モジュール217に結合し得る。
【００５４】
一例では、ベースバンドプロセッサ206はマスタデバイスであり得る。マスタデバイス/ベースバンドプロセッサ206は、RFFEバス208を駆動させて、様々なフロントエンドデバイス212〜217を制御することができる。送信の間、ベースバンドプロセッサ206は、RFFEインターフェース210を制御して、対応する送信帯域に関する電力増幅器215を選択することができる。さらに、ベースバンドプロセッサ206は、結果として生じる送信が適切なアンテナから伝搬し得るように、スイッチ213を制御することができる。受信の間、ベースバンドプロセッサ206は、RFFEインターフェース210を制御して、対応する送信帯域に応じて、低雑音増幅器216から受信することができる。このようにしてRFFEバス208を通して多数の他の構成要素を制御することができ、それにより、デバイス202は単なる代表であり、限定的でないことを諒解されよう。その上、代替実施形態では、RFIC212などの他のデバイスがRFFEマスタデバイスにサービスし得る。
【００５５】
図3は、RFFEバス330を採用してバスマスタデバイス3201〜320Nおよびスレーブデバイス302および3221〜322Nを接続することができるデバイス300に関するアーキテクチャの一例を示すブロック概略図である。RFFEバス330は、アプリケーションニーズに従って構成されてよく、デバイス3201〜320N、302、および3221〜322Nのうちのいくつかに複数のバス330に対するアクセスが提供され得る。動作中、バスマスタデバイス3201〜320Nのうちの1つは、バスの制御を得て、スレーブデバイス302および3221〜322Nのうちの1つを識別して通信トランザクションに参加するために、スレーブ識別子(スレーブアドレス)を送信することができる。バスマスタデバイス3201〜320Nは、スレーブデバイス302および3221〜322N,からデータおよび/またはステータスを読み取ることができ、データをメモリに書き込むことができるか、またはスレーブデバイス302および3221〜322Nを構成することができる。構成は、1つまたは複数のレジスタまたはスレーブデバイス302および3221〜322N上の他の記憶装置に書き込むことを必要とし得る。
【００５６】
図3に示す例では、RFFEバス330に結合された第1のスレーブデバイス302は、第1のスレーブデバイス302からデータを読み取り、そこにデータを書き込むことができる、1つまたは複数のバスマスタデバイス3201〜320Nに応答することができる。一例では、第1のスレーブデバイス302は、電力増幅器を含んでよいか、またはそれを制御してよく(図2のPA215を参照)、1つまたは複数のバスマスタデバイス3201〜320Nは、時々、第1のスレーブデバイス302における利得設定を構成し得る。
【００５７】
第1のスレーブデバイス302は、RFFEレジスタ306および/または他の記憶デバイス324と、処理回路および/または制御論理312と、トランシーバ310と、必要に応じて、たとえば、シリアルクロックライン(SCLK)316およびシリアルデータライン(SDATA)318を経由して第1のスレーブデバイス302をRFFEバス330に結合するための、いくつかのラインドライバ/受信機回路314a、314bを含むインターフェースとを含み得る。処理回路および/または制御論理312は、状態機械、シーケンサ、信号プロセッサ、または汎用プロセッサなどのプロセッサを含み得る。インターフェースは状態機械を使用して実装され得る。代替として、インターフェースは、第1のスレーブデバイス302内に含まれる場合、適切なプロセッサ上のソフトウェア内で実装され得る。トランシーバ310は、1つまたは複数の受信機310aと、1つまたは複数の送信機310cと、タイミング、論理、および記憶回路および/またはデバイスを含むいくつかの共通回路310bとを含み得る。場合によっては、トランシーバ310は、エンコーダおよびデコーダ、クロック復元回路およびデータ復元回路などを含むことがある。送信クロック(TXCLK)信号328が送信機310cに提供される場合があり、送信機において、TXCLK信号328はデータ送信レートを決定するために使用することができる。
【００５８】
RFFEバス330は、概して、シリアスバスとして実装され、シリアルバス内でデータは送信機によって並列形式から直列形式に変換され、送信機は符号化データをシリアルビットストリームとして送信する。受信機は、データを非直列化するための直並列変換機を使用して、受信シリアルビットストリームを処理する。シリアルバスは2本以上のワイヤを含んでよく、クロック信号は、直列化データが1本または複数のワイヤ上で送信される形で1本のワイヤ上で送信され得る。場合によっては、データはシンボルの形で符号化されてよく、シンボルの各ビットはRFFEバス330のワイヤのシグナリング状態を制御する。
【００５９】
スレーブデバイス302および3221〜322Nを制御するために、マスタデバイス(たとえば、マスタデバイス3201〜320Nのうちの1つ)は、スレーブデバイス内のRFFEレジスタ、たとえば、第1のスレーブデバイス302内のRFFEレジスタ306に書き込むか、またはそこから読み取る。RFFEレジスタ306は、0番目(0)のアドレスから65535アドレスに及ぶRFFEレジスタアドレス空間に従って配置され得る。言い換えれば、各スレーブデバイスは、最高で65,536個のレジスタを含み得る。そのような数のレジスタをアドレス指定するために、スレーブデバイス302および3221〜322Nの各々に対して16個のレジスタアドレスビットが必要とされる。マスタデバイスは、上記で論じた3つのタイプのコマンド(レジスタコマンド、拡張レジスタコマンド、または拡張レジスタロングコマンド)のうちの1つを使用して、各スレーブデバイス内のレジスタ306から読み取ること、またはそこに書き込むことができる。たとえば、レジスタコマンドは、スレーブデバイス302および3221〜322Nの各々に関するアドレス空間内の第1の32個のレジスタ306のみをアドレス指定する。このようにして、レジスタコマンドは5個のレジスタアドレスビットのみを必要とする。対照的に、拡張レジスタコマンドは、最初に、スレーブデバイス302および3221〜322Nの各々の中の最高で第1の256個のレジスタにアクセスすることができる。拡張レジスタコマンドに関するデータペイロードが最高で16バイトを含み得るという点で、拡張レジスタコマンドに関する対応する8ビットレジスタアドレスはポイントとして機能する。拡張レジスタコマンドに関する対応する読取り動作または書込み動作は、したがって、8ビットレジスタアドレスによって識別されるレジスタから開始して16個のレジスタ全体に及び得る。拡張レジスタロングコマンドは、各スレーブデバイス内の考えられる65,536個のレジスタのうちのいずれかに対するポインタとして機能し得る16ビットレジスタアドレスを含む。拡張レジスタロングコマンドに関するデータペイロードは、最高で8バイトを含むことができ、その結果、拡張レジスタロングコマンドに関する対応する読取り動作または書込み動作は、16ビットのアドレスによって識別されるレジスタから開始して8個のレジスタ全体に及び得る。本開示の一態様では、最高で15個のスレーブデバイスを1個のRFFEバスに結合することができる。フロントエンドが15個を超えるスレーブデバイスを含む場合、追加のRFFEバスを提供することができる。
【００６０】
無線周波数フロントエンド(RFFE)デバイス用の例示的なマスク書込み動作環境
本開示の一態様では、レジスタが2個のスレーブデバイスまたは構成要素によって共有されることは珍しくない。たとえば、LNAの対は、各々、共有スレーブレジスタ内の8ビットのうちの4ビットによって構成され得る。2個の制約されたスレーブデバイスによるレジスタの共有は、「高集積」レジスタマッピングと呼ばれる場合がある。スレーブデバイスのうち単に1つを構成することは、8ビットすべてではなく、8ビットのスレーブレジスタのうち4ビットのみが書き込まれるという点で、部分書込み動作を必要とする。レジスタを共有する他のスレーブデバイスに関する残りのビットは、変更されない状態に残されなければならない。マスタデバイスは、読取り動作を通して対応するスレーブデバイスのコンテンツでロードされ得る「シャドーレジスタ」を含み得る。マスタデバイスは、シャドーレジスタのコンテンツを使用して、特定のスレーブデバイスに関する対応するビットを単に変更し、共有レジスタに関する残りのビットが影響を受けない状態に残すことによって、スレーブデバイスに書き込むことができる。そのような部分書込み動作は、スレーブデバイスレジスタの読取り、単に選択されたビットの修正、および対応するシャドーレジスタからの修正ビットおよび未修正ビットを使用した、スレーブレジスタ内の8ビット全体に対する書込み動作を必要とするという点で、そのような部分書込みは「読取り・修正・書込み(read-modify-write)」動作と呼ばれる場合がある。シャドーレジスタの使用は、マルチマスタ構成の場合に事前読取りを必要とするだけでなく、追加のレジスタ空間要件によるシリコンエリアをやはり追加する。
【００６１】
図4は、RFFEプロトコル内の予約コマンドフィールドを示す図である。部分書込み動作(読取り・修正・書込み動作)のためにRFFEバス208上で従来のRFFEコマンドのレイテンシを低減させるために、送信のマスク書込みモードを必要とする新しいコマンドフレームが提供される。これらの新しいコマンドフレームを提供するために、RFFEプロトコルによって確立される予約コマンドフレームが活用される。この点で、図4に示すように、少なくとも12個のコマンドフレーム400において予約されたRFFEプロトコルは、16進値10における予約コマンドフレームから16進値1Bにおける予約コマンドフレームに及ぶ。各予約コマンドフレームは、シーケンス開始条件(SSC)で開始し、その後に、図4に示すように、4ビットのスレーブデバイスアドレス(SA(4))が続く。各予約コマンドは8ビット長である。たとえば、16進値10における予約コマンドは、8ビット00010000を備える。予約コマンドすべての後に、パリティビットPが続き、その後に、予約のためのアドレス(Reg-Adrs)およびデータフレームが続く。
【００６２】
図5は、本開示の一態様による、Nビットマスクフィールドを含む4個のマスク書込みコマンドを示す図である。図5に示すように、マスク書込み動作の使用をシグナリングするために、予約コマンドフレームのうちの4つ(コマンドフレームCF1からCF4と指定される)を使用して、マスク書込みRFFEコマンド500を識別することができる。これらのマスク書込みコマンド500では、マスクNビットフィールド510は、マスク書込み動作によって変更されない状態に残されることになるマスクビット、およびマスク書込み動作によって変更されることになるマスクなしビットを識別する。Nは、対応するレジスタ内のビットの数である。以下の議論は、N=8を仮定するが、代替実装形態では、他のレジスタ幅が使用され得ることを諒解されよう。データNビットフィールド512は、マスクなしビットの2進値を提供する。たとえば、拡張レジスタマスク書込みコマンド(拡張レジスタWR)502は、SSCで開始し、その後に、4ビットスレーブデバイスアドレス(スレーブアドレス(4ビット))が続く。図4に関して論じた予約コマンドフレーム400のうちの1つから利用される8ビットコマンドフレームCF1は、受信スレーブデバイスインターフェースに対するコマンド502を識別する。8ビットアドレス(Reg-Adrs(8ビット))は、拡張レジスタマスク書込み動作のための対応するスレーブデバイス内のレジスタのアドレスを識別する。アイドルシンボル(バスパークサイクル)がコマンド502を完成する。
【００６３】
拡張レジスタロングマスク書込みコマンド(拡張レジスタWRロング)504はまた、SSCおよび4ビットスレーブアドレス(スレーブアドレス(4ビット))で開始するが、その後に、一意の予約コマンドフレームCF2が続く。コマンドフレームCF2の後に、16ビットレジスタアドレス(Reg-Adrs(16-bit))、マスクNビットフィールド510、データNビットフィールド512、およびアイドルシンボルが続く。レジスタマスク書込みコマンド(レジスタWR)506はまた、SSCおよびスレーブアドレスフィールド(スレーブアドレス(4ビット))で開始し、その後に、一意の予約コマンドフレームCF3が続く。予約コマンドフレームCF3の後に、5ビットレジスタアドレス(Reg-Adrs(5bit))、マスクNビットフィールド510、データNビットフィールド512、およびアイドルシンボルが続く。最終的に、拡張レジスタショートマスク書込みコマンド(拡張レジスタWRショート)508は、一意の予約コマンドコードCF4、および、6ビット、7ビット、または9〜15ビットのレジスタアドレス(Reg-Adrs(9〜15ビット))を使用する点を除いて、拡張レジスタロングマスク書込みコマンド502と同様である。レジスタビットの数は、デバイス初期化段階の間に確立され得る。
【００６４】
図6は、本開示の一態様による、単一の予約コマンドフィールドが採用される、図5のマスク書込みコマンドの修正を示す図である。図5にあるように予約コマンドフレームのうちの4つを使用するのではなく、図6は、一般的なマスク書込みコマンド600に対する単一の予約コマンドフレームの使用を示す。コマンド600のすべては、SSCおよびスレーブアドレス(スレーブアドレス(4ビット))で開始し、アイドルシンボルで終了する。一般的拡張レジスタマスク書込みコマンド(拡張レジスタWR)602は、予約コマンドフレームCF1を使用し、予約コマンドフレームCF1の後に、たとえば、拡張レジスタマスク書込み動作が対象とされることを示すための(0,0)の値を有する、2ビットモードフィールド614が続く。コマンド502と同様に、コマンド602は、8ビットレジスタアドレスと、マスクNビットフィールド610と、データNビットフィールド612と、アイドルシンボルとを含む。一般的拡張レジスタロングマスク書込みコマンド(拡張レジスタWRロング)604は、同じ予約コマンドフィールドCF1を使用する。コマンド604はまた、たとえば、拡張レジスタロングマスク書込み動作が対象とされることを示すための(0,1)の値を有する、2ビットのモードフィールド614を含む。コマンド504と同様に、コマンド604は、16ビットレジスタアドレスと、マスクNビットフィールド610と、データNビットフィールド612と、アイドルシンボルとを含む。一般的なレジスタマスク書込みコマンド(レジスタWR)606はまた、予約コマンドフィールドCF1と、たとえば、マスクNビットフィールド610およびデータNビットフィールド612を使用して、続く5ビットレジスタアドレスにおいて、登録マスク書込み動作が対象とされることを示すための(1,0)の値を有する、2ビットのモードフィールド614とを含む。最終的に、一般的なレジスタショートマスク書込みコマンド(拡張レジスタWRショート)608は、9〜15ビットレジスタアドレス(Reg-Adrs(9〜15ビット))を使用する点を除いて、一般的拡張レジスタロングマスクコマンド508と同様である。
【００６５】
図7は、本開示の一態様による、変更されるべきビットのビット位置を識別するビットインデックスを含む4個のマスク書込みコマンドを示す図である。アドレス指定されたレジスタ内で1ビットのみ変更する必要がある場合、図7に示すように、対応するNビット幅のスレーブデバイスレジスタ内に書き込まれることになるビット位置を一意に識別する、log2(N)ビットインデックス710でマスクNビットフィールド510を置換することができる。ビット値フィールド712は、ビットインデックス710によって識別されるビット位置に対するビット値が何であるべきかを識別する。各マスクコマンドが、図5に関して論じたのと同様の一意の予約コマンドフィールドを含む実施形態では、ビットインデックス710およびビット値フィールド712が使用され得ることを諒解されよう。したがって、拡張レジスタインデックスマスク書込みコマンド(拡張レジスタWR)702は、フィールド510および512がフィールド710および712によってそれぞれ置換される点を除いて、コマンド502と同様である。同様に、それぞれ、フィールド510および512がフィールド710および712で置換されることを除いて、拡張レジスタロングインデックスマスタ書込みコマンド(拡張レジスタWRロング)704はコマンド504と同様であり、レジスタインデックスマスク書込みコマンド(レジスタWR)706はコマンド506と同様であり、拡張レジスタショートインデックスマスク書込みコマンド(拡張レジスタWRショート)708はコマンド508と同様である。
【００６６】
図8は、本開示の一態様による、単一の予約コマンドフィールドが採用される、図7のマスク書込みコマンドの修正を示す図である。共通予約コマンドフィールドCF1を使用する一般的インデックスマスク書込みコマンド800に関して、図8に示すように、予約コマンドの数をなおさらに低減させることができる。インデックスマスク書込み動作のタイプを識別するために、コマンド800は各々、図6に関して論じたように、2ビットモードフィールド814を含む。したがって、一般的拡張レジスタインデックスマスク書込みコマンド(拡張レジスタWR)802は、それぞれ、フィールド610および612がフィールド810および812によって置換される点を除いて、コマンド602と同様である。同様に、それぞれ、フィールド610および612がフィールド810および812で置換されることを除いて、一般的拡張レジスタロングインデックスマスタ書込みコマンド(拡張レジスタWRロング)804はコマンド604と同様であり、一般的レジスタインデックスマスク書込みコマンド(レジスタWR)806はコマンド606と同様であり、一般的拡張レジスタショートインデックスマスク書込みコマンド(拡張レジスタWRショート)808はコマンド608と同様である。本開示の一態様では、マスタデバイスインターフェースおよびスレーブデバイスインターフェースは、本明細書で論じるマスク書込み動作を実装するように構成される。RFFE上での読取り・修正・書込みシーケンス(すなわち、部分書込み動作に先立つレジスタコンテンツの読取り)に対する従来のニーズがなくなるため、これは非常に有利である。このようにして、開示するマスク書込み動作はバス通信レイテンシを有利に低減させる。
【００６７】
上記で論じた技法は、モードビットとともに、複数のコマンドフレーム(別名、コマンドコード)または単一のコマンドフレームのいずれかを使用する。いくつかの実装形態では上記の技法が好ましいが、アドレスページングおよびバースト書込みの追加の利点を有する追加の技法について下記で説明する。この技法はRFFE拡張に根ざすが、その用途は特にRFFEバスに限定されず、他のバスアーキテクチャにも同様に適用可能であり得る。
【００６８】
上記で説明したように、RFFEマスク書込みコマンドは、データグラムごとに1個のNビットマスクフィールドと1個のNビット制御データフィールドとを提供し得る。各データグラムは、15クロックサイクル(SCC:1サイクル、USID:4サイクル、コマンドコード:8サイクル、パリティ:1サイクル、BPC:1サイクル)の固定オーバヘッドを有する。しかしながら、複数のマスク・データビットが送られることになる適用例では、複数のデータグラムの使用は、関連するオーバヘッドにより、データを転送するための最適な方法でない場合がある。その上、未使用の予約RFFEコマンドコードの数は限定される。したがって、バースト転送を示すための複数の予約コマンドコードの使用は適切でない場合があるが、これは、たとえば、マスク書込みコマンドの8個のバーストに対処するためにすら、十分なコマンドコードが利用可能でない可能性があるためである。
【００６９】
したがって、1個のコマンドコードを使用しながら、バーストモードに対するサポートを提供するRFFE UDR空間全体において書込みアクセスを可能にするための新しい技法に対する必要性が存在する。したがって、本開示の態様は、ページアドレス指定方式、およびマスク・データバイト対を備えたバースト書込み方式を提供する。
【００７０】
ページアドレス指定方式では、スレーブデバイスは1バイトベースアドレスレジスタを有する。たとえば、ベースアドレスレジスタは、16進法で0x00の値を含み得る。マスタデバイスは、シャドーレジスタ内のマスタデバイスにおいてスレーブデバイスのベースアドレスレジスタのコピーを保持する。マスタデバイスは、16ビットアドレス、すなわち、1バイトの最上位バイト(MSB)および1バイトの最下位バイト(LSB)に基づいてデータグラムを準備するが、マスク書込みデータグラム内では1バイトのLSBのみを送ることになる。マスク書込みデータグラムを送るのに先立って、マスタデバイスは、16ビットアドレスの1バイトのMSBをシャドーレジスタ内のスレーブデバイスのベースアドレスレジスタの現在コピーと比較することになる。スレーブデバイスのベースアドレスレジスタの値が16ビットアドレスの1バイトのMSBにマッチしない場合、マスタデバイスは、16ビットアドレスの1バイトのMSBにマッチさせるために、(ページを変更するために)スレーブデバイス上のベースアドレスを最初に設定する(または、更新する)ことになる。マスタデバイスは、マスク書込みデータグラムを送る前に、レジスタ書込みアクセスコマンドまたはいずれかの他のタイプのアクセスコマンドを(優先に応じて)使用して、スレーブデバイスベースアドレス変更を実行することができる。ページは、データグラム送信に先立ってページミスマッチが検出されるときのみ変更される。マスタデバイスは、更新されたスレーブデバイスベースアドレスでシャドーレジスタをさらに更新することができる。
【００７１】
マスク・データバイト対を備えたバースト書込み方式では、スレーブデバイスは1バイトのマスク書込みバースト長レジスタを有する。たとえば、バースト長レジスタは、16進法で0x01の値を有し得る。マスタデバイスは、シャドーレジスタ内のマスタデバイスにおいてスレーブデバイスのマスク書込みバースト長レジスタのコピーを保持する。マスタデバイスは、指定されたマスク・データ対バースト長(たとえば、マスク・データバイト対の数)に基づいてデータグラムを準備するが、マスク書込みデータグラム内でそのバースト長を送らないことになる。マスク書込みデータグラムを送るのに先立って、マスタデバイスは、指定されたバースト長をシャドーレジスタ内のスレーブデバイスのマスク書込みバースト長の現在コピーと比較することになる。スレーブデバイスのマスク書込みバースト長の値が指定されたバースト長にマッチしない場合、マスタデバイスは、指定されたバースト長にマッチさせるために、スレーブデバイス上のマスク書込みバースト長を最初に設定する(または、更新する)ことになる。マスタデバイスは、マスク書込みデータグラムを送る前に、レジスタ書込みアクセスコマンドまたはいずれかの他のタイプのアクセスコマンドを(優先に応じて)使用して、スレーブデバイスマスク書込みバースト長変更を実行することができる。マスク書込みバースト長は、データグラム送信に先立ってバースト長ミスマッチが検出されるときのみ変更される。マスタデバイスは、更新されたマスク書込みバースト長でシャドーレジスタをさらに更新することができる。それに応じて、16ビットアドレスの1バイトのMSBがスレーブデバイスのベースアドレスにマッチし、指定されたバースト長がスレーブデバイスのマスク書込みバースト長にマッチするとき、マスタデバイスは、マスク書込みデータグラムをスレーブデバイスに送ることができる。
【００７２】
図9は、16ビットアドレス空間およびマスク・データバイトのN個の対をサポートする例示的なパケット構造900を示す図である。図9を参照すると、データグラムヘッダ902は、4ビットを有するスレーブアドレス(SA(4))と、8ビットを有するコマンドフレーム(CMD(8))と、パリティビットPとを含み得る。マスタデバイスは、1バイトの最上位バイト(MSB)906と1バイトの最下位バイト(LSB)908とを有する、16ビットアドレス904に基づいてデータグラムを準備することができる。マスタデバイスは、マスク書込みデータグラム内で1バイトのLSB908のみを送ることになる。したがって、1バイトのMSB906はマスク書込みデータグラムの一部として送信されないことになる。その上、マスタデバイスは、指定されたマスク・データ対バースト長910に基づいてデータグラムを準備することができる。マスク・データ対バースト長910は、ペイロード内のマスク・データバイト対(たとえば、マスク+データ対#0、マスク+データ対#1、…、マスク+データ対#N)の数を示す。マスク・データ対バースト長910は、マスク書込みデータグラムの一部として送信されないことになる。
【００７３】
図10は、送信バッファ内の例示的なデータグラム1000を示す図である。ページアドレス指定方式では、スレーブデバイス1022は1バイトのベースアドレスレジスタ1024を有する。マスタデバイス1012は、シャドーレジスタ1014内のマスタデバイスにおいてスレーブデバイスのベースアドレスレジスタ1024のコピーを保持する。マスタデバイス1012は、1バイトの最上位バイト(MSB)1006および1バイトの最下位バイト(LSB)1008を有する16ビットアドレス1004に基づいてデータグラム1000を準備するが、マスク書込みデータグラム1000内では1バイトのLSB1008のみを送ることになる。マスク書込みデータグラム1000を送るのに先立って、マスタデバイス1012は、1バイトのMSB1006をシャドーレジスタ1014内のスレーブデバイスのベースアドレスレジスタ1024の現在コピーと比較することになる。スレーブデバイスのベースアドレスレジスタ1024が1バイトのMSB1006にマッチしない場合、マスタデバイス1012は、1バイトのMSB1006にマッチさせるために、(ページを変更するために)スレーブデバイス1022上にベースアドレス1024を最初に設定する(または、更新する)ことになる。マスタデバイス1012は、更新されたスレーブデバイスベースアドレス1024でシャドーレジスタ1014をさらに更新することができる。
【００７４】
マスク・データバイト対を備えたバースト書込み方式では、スレーブデバイス1022は1バイトのマスク書込みバースト長レジスタ1026を有する。マスタデバイス1012は、シャドーレジスタ1016内のマスタデバイス1012においてスレーブデバイスのマスク書込みバースト長レジスタ1026のコピーを保持する。マスタデバイス1012は、指定されたマスク・データ対バースト長1010(たとえば、マスク・データバイト対の数)に基づいてデータグラム1000を準備するが、マスク書込みデータグラム1000内でそのバースト長1010を送らないことになる。マスク書込みデータグラム1000を送るのに先立って、マスタデバイスは、指定されたバースト長1010をシャドーレジスタ1016内のスレーブデバイスのマスク書込みバースト長1026の現在コピーと比較することになる。スレーブデバイスのマスク書込みバースト長1026が指定されたバースト長1010にマッチしない場合、マスタデバイス1012は、指定されたバースト長1010にマッチさせるために、スレーブデバイス1022上にマスク書込みバースト長1026を最初に設定する(または、更新する)ことになる。マスタデバイス1012は、更新されたマスク書込みバースト長1026でシャドーレジスタ1016をさらに更新することができる。それに応じて、1バイトのMSB1006がスレーブデバイス1022のベースアドレス1024にマッチし、指定されたバースト長1010がスレーブデバイス1022のマスク書込みバースト長1026にマッチするとき、マスタデバイス1012は、マスク書込みデータグラム1000をスレーブデバイス1022に送ることができる。
【００７５】
図11は、送信バッファ内のデータグラム1100に関する例示的な動作を示す図である。ページアドレス指定方式では、スレーブデバイス1122は1バイトのベースアドレスレジスタ1124を有する。マスタデバイス1112は、シャドーレジスタ1114内のマスタデバイスにおいてスレーブデバイスのベースアドレスレジスタ1124のコピーを保持する。マスタデバイス1112は、1バイトの最上位バイト(MSB)1106および1バイトの最下位バイト(LSB)1108を有する16ビットアドレス1104に基づいてデータグラム1100を準備するが、マスク書込みデータグラム1100内では1バイトのLSB1108のみを送ることになる。マスク書込みデータグラム1100を送るのに先立って、マスタデバイス1112は、1バイトのMSB1106をシャドーレジスタ1114内のスレーブデバイスのベースアドレスレジスタ1124の現在コピーと比較する1130ことになる。シャドーレジスタ1114内のスレーブデバイスのベースアドレスレジスタ1124が1バイトのMSB1006に等しい場合(1132参照)、スレーブデバイス1122上にベースアドレス1124を設定する(または、更新する)必要はない。スレーブデバイスのベースアドレスレジスタ1124が1バイトのMSB1106に等しくない場合(1134参照)、マスタデバイス1112は、1バイトのMSB1106にマッチさせるために、(ページを変更するために)スレーブデバイス1122上にベースアドレス1124を最初に設定する(または、更新する)ことになる。マスタデバイス1112は、マスク書込みデータグラムを送る前に、レジスタ書込みアクセスコマンド1136またはいずれかの他のタイプのアクセスコマンドを(優先に応じて)使用して、スレーブデバイスベースアドレス変更を実行することができる。ページは、データグラム送信に先立ってページミスマッチが検出されるときのみ変更される。マスタデバイス1112は、更新されたスレーブデバイスベースアドレス1124でシャドーレジスタ1114をさらに更新することができる。
【００７６】
マスク・データバイト対を備えたバースト書込み方式では、スレーブデバイス1122は1バイトのマスク書込みバースト長レジスタ1126を有する。マスタデバイス1112は、シャドーレジスタ1116内のマスタデバイス1112においてスレーブデバイスのマスク書込みバースト長レジスタ1126のコピーを保持する。マスタデバイス1112は、指定されたマスク・データ対バースト長1110(たとえば、マスク・データバイト対の数)に基づいてデータグラム1100を準備するが、マスク書込みデータグラム1100内でそのバースト長1110を送らないことになる。マスク書込みデータグラム1100を送るのに先立って、マスタデバイスは、指定されたバースト長1110をシャドーレジスタ1116内のスレーブデバイスのマスク書込みバースト長1126の現在コピーと比較することになる1140。シャドーレジスタ1116内のスレーブデバイスのマスク書込みバースト長1126が指定されたバースト長1110に等しい場合(1142参照)、スレーブデバイス1122上にマスク書込みバースト長1126を設定する(または、更新する)必要はない。スレーブデバイスのマスク書込みバースト長1126が指定されたバースト長1110に等しくない場合(1144参照)、マスタデバイス1112は、指定されたバースト長1110にマッチさせるために、スレーブデバイス1122上にマスク書込みバースト長1126を最初に設定する(または、更新する)ことになる。マスタデバイスは、マスク書込みデータグラムを送る前に、レジスタ書込みアクセスコマンド1146またはいずれかの他のタイプのアクセスコマンドを(優先に応じて)使用して、スレーブデバイスマスク書込みバースト長変更を実行することができる。マスク書込みバースト長は、データグラム送信に先立ってバースト長ミスマッチが検出されるときのみ変更される。マスタデバイス1112は、更新されたマスク書込みバースト長1126でシャドーレジスタ1116をさらに更新することができる。それに応じて、1バイトのMSB1106がスレーブデバイス1122のベースアドレス1124にマッチし、指定されたバースト長1110がスレーブデバイス1122のマスク書込みバースト長1126にマッチするとき、マスタデバイス1112は、マスク書込みデータグラム1100をスレーブデバイス1122に送ることができる。
【００７７】
本開示の一態様では、マスク書込み動作は、拡張レジスタ書込みデータグラムおよび/または拡張レジスタロング書込みデータグラムを使用して実行され得る。データグラムのペイロードは、いくつかのマスク・データ対を送信するために使用され得る。そのような動作は、以下で、カスタムマスク書込み動作と呼ばれる場合がある。一態様では、下記で説明するように、構成レジスタ内に2ビットを定義することによって、通常の書込みデータグラムをカスタムマスク書込みデータグラムと区別することができる。マスク書込みのための書込みデータグラムペイロードの利用について、図12および図13に示す。
【００７８】
図12は、マスク書込み動作をサポートする拡張レジスタ書込みコマンド1202の例示的なパケット構造1200を示す図である。図13は、マスク書込み動作をサポートする拡張レジスタロング書込みコマンド1302の例示的なパケット構造1300を示す図である。
【００７９】
図12および図13を参照すると、カスタムマスク書込み動作は、ペイロードセクション内のバイト数が整数のマスク・データバイト対の送信を可能にするために偶数として指定されることを条件に、拡張レジスタ書込みコマンド1202および拡張レジスタロング書込みコマンド1302を使用する。第1のマスクバイト(すなわち、マスク0)は、ペイロード内のアドレスバイトに続く第1の偶数ロケーション(0番目のバイト)に位置する。第1のマスクバイトの後に対応する第1のデータバイト(すなわち、データ0)が続き、第1のデータバイトは、アドレスバイトの後の第1の奇数ロケーションに位置する。したがって、ペイロード内で、アドレスバイトに続いて、マスクバイト(たとえば、マスク0、マスク1、マスク2など)は偶数ロケーションを占有し得、データバイト(たとえば、データ0、データ1、データ2など)は奇数ロケーションを占有し得る。
【００８０】
書込みコマンド内で送信され得る最大数のマスク・データバイト対は、ペイロード内で可能にされるバイトの最大数に左右される。たとえば、拡張レジスタ書込みコマンド1202内で、ペイロード1204内で可能にされる最大バイトカウントは16バイト(128ビット)である。したがって、拡張レジスタ書込みコマンド1202は、1個のデータグラム内で最大で8個のマスク・データバイト対の送信をサポートし得る。図12に示すように、ペイロード1204は、1から8のマスク・データバイト対(たとえば、マスク+データ対#0、マスク+データ対#1、…、マスク+データ対#7)を含み得る。別の例では、拡張レジスタロング書込みコマンド1302内で、ペイロード1304内で可能にされる最大バイトカウントは8バイト(64ビット)である。したがって、拡張レジスタロング書込みコマンド1302は、1個のデータグラム内で最大で4個のマスク・データバイト対の送信をサポートし得る。図13に示すように、ペイロード1304は、1から4のマスク・データバイト対(たとえば、マスク+データ対#0、マスク+データ対#1、…、マスク+データ対#3)を含み得る。
【００８１】
本開示の一態様では、8ビット構成レジスタを利用して、拡張レジスタ書込みコマンドおよび/または拡張レジスタロング書込みコマンドを使用したマスク書込み動作の有効化および無効化を円滑にするための制御機能インターフェースを提供することができる。構成レジスタは、ユーザ定義されたレジスタ空間、すなわち、16進法で0x01から0x1C内に位置し得る。たとえば、レジスタロケーション0x18を構成レジスタとして使用することができる。しかしながら、代替態様では、構成レジスタはレジスタ空間全体内のいずれかのロケーションにあってよいと考慮される。
【００８２】
図14は、構成レジスタ1402の例示的なビット構造1400を示す図である。示すように、構成レジスタ1402は、8個の構成レジスタビットD7、D6、D5、D4、D3、D2、D1、およびD0を含む。本開示の一態様では、第3のレジスタビットD5 1404および第4のレジスタビットD4 1406を使用して、拡張レジスタ書込みコマンドおよび拡張レジスタロング書込みコマンドが通常の方法で使用されるときと、拡張レジスタ書込みコマンドおよび拡張レジスタロング書込みコマンドがカスタムマスク書込み動作のために使用されるときとを区別することができる。
【００８３】
たとえば、第3のレジスタビットD5 1404が1の値に設定されているとき、カスタムマスク書込み動作は有効化され、拡張レジスタ書込みコマンドまたは拡張レジスタロング書込みコマンドがマスク書込み動作のために使用される。しかしながら、第3のレジスタビットD5 1404が0の値に設定されているとき、カスタムマスク書込み動作は無効化され、拡張レジスタ書込みコマンドと拡張レジスタロング書込みコマンドの両方が通常の方法で使用される。その上、第4のレジスタビットD4 1406が1の値に設定されているとき、第3のレジスタビットD5 1404が1の値に設定される場合、拡張レジスタロング書込みコマンド(たとえば、拡張レジスタロング書込みコマンド1302)は特にカスタムマスク書込み動作に使用される。第4のレジスタビットD4 1406が0値に設定されているとき、第3のレジスタビットD5 1404が1の値に設定される場合、拡張レジスタ書込みコマンド(たとえば、拡張レジスタ書込みコマンド1202)は特にカスタムマスク書込み動作に使用される。
【００８４】
図15は、RFFEレジスタ空間1500の図である。RFFEレジスタ空間1500は、16進法でレジスタ0x0000からレジスタ0xFFFFに及び得る。
【００８５】
レジスタ空間アクセス性の点でコマンドの関連性を図15に示す。拡張レジスタ動作のリーチは、0x00レジスタと0xFFレジスタの間の空間に限定され得る。しかしながら、複雑なRFFEスレーブは64Kレジスタ空間内に複数のページ(各々が0x00から0xFFの1バイトロケーションを有する)を含むことができ、したがって、拡張レジスタ動作が64Kレジスタ空間全体にアクセスして、バスレイテンシを低減させることを可能にする。これを達成するために、64Kレジスタ空間は、各々が256個のレジスタロケーションを含む256ページ(ページ0x00から0xFF)にセグメント化され得る。ページアドレスと組み合わされたデータグラム内の8ビットレジスタアドレスは、64K空間内のいずれのレジスタアクセスも可能にする。ページアドレスは、知られているレジスタロケーションにおいて記憶されてよく、データグラムが供給する8ビットレジスタアドレス(アドレスLSB)を備えたアドレスMSBとして組み合わされ得る。これは、拡張レジスタ動作のためのページセグメント化アクセスに関する基礎であり得る。
【００８６】
図16は、構成レジスタとページアドレスレジスタとを有するRFFEレジスタ空間1600の図である。様々な特徴の有効化および無効化を円滑にするために、8ビット構成レジスタを使用することができる。構成レジスタおよびページアドレスレジスタは、レジスタモードアクセス可能なレジスタ空間内の2つの特定のレジスタを使用することができる。たとえば、図16に示すように、レジスタ空間内で、構成レジスタはロケーション0x18において定義され得、ページアドレスレジスタはロケーション0x19において定義され得る。0x18ロケーションと0x19ロケーションは両方ともユーザ定義された空間内にある。
【００８７】
図17は、構成レジスタの別の例示的なビット構造を定義する表1700および構成レジスタビットの機能を示す図1750を示す。ビットロケーションD7からD0を含む構成レジスタは、レジスタロケーション0x18において定義され得る。表1700および図1750を参照すると、ビットロケーションD2において構成ビットを有効化する(たとえば、「1」に設定する)かまたは無効化する(たとえば、「0」に設定する)ことによって、ページセグメント化アクセス(PSA)を有効化または無効化することができる。ビットロケーションD1において構成ビットを有効化または無効化することによって、ダブルデータレート(DDR)モードを有効化または無効化することができる。さらに、ビットロケーションD0において構成ビットを有効化または無効化することによって、カスタムマスク書込み(CMW)を有効化または無効化することができる。D0、D1、およびD2に関して、「1」の構成ビット値は、対応する機能が有効化されていることを暗示し、「0」の構成ビット値は対応する機能が無効化されていることを暗示する。
【００８８】
図18は、ページセグメント化アクセスを示す図1800である。標準拡張レジスタ動作は8ビットレジスタアドレスに基づく。これは、レジスタアクセスのこれらのモードの適用可能性をレジスタ空間の第1の256個のロケーション(0x00から0xFF)に限定し得る。したがって、拡張レジスタ動作のためのページセグメント化アクセス(PSA)は、データグラム内の8ビットレジスタアドレスのみを使用しながら、64Kレジスタ空間全体にアクセスするという点で、標準拡張レジスタロング動作の代替形態であり得る。8ビットレジスタアドレスのみが使用されるため、ページセグメント化アクセスは、データグラム当たり16バイトの最大ペイロードも可能にし、これは、16ビットアドレスを使用し、データグラム当たり8バイトの最大ペイロードを有する、標準拡張レジスタロング動作よりも効率的である。
【００８９】
レジスタアドレスMSBロケーションとして機能するためにページセグメント化アドレスレジスタを使用することによって、拡張レジスタモードに関して64Kレジスタ空間アクセスを有効化することができる。チップレベル設計点の観点から、PSA動作は、マスク書込み動作およびダブルデータレート(DDR)モード動作に対して直交であり得る。拡張レジスタモードに関するページセグメント化アクセス(PSA)は、レジスタアドレスMSBを保持する1バイトレジスタおよび構成レジスタ内に含まれた単一構成ビットを使用して有効化され得る。
【００９０】
拡張レジスタ動作に関するPSAは、読取り動作と書込み動作の両方に適用可能であり得る。PSAは、レジスタアドレスMSBとしてレジスタロケーション0x19に位置する値を使用して、レジスタアドレスMSBを拡張レジスタ動作データグラム内で供給される8ビットアドレス(レジスタアドレスLSB)と連結することができる。構成レジスタ内の単一ビットがPSAを有効化/無効化し得る。
【００９１】
レジスタロケーション0x19のコンテンツと拡張レジスタ動作データグラムから取り出されたアドレスLSBとを使用したページセグメント化アクセスが図18に示されている。レジスタロケーション0x19におけるページアドレスレジスタ1802は、0x0000から0xFFFFのレジスタ空間内のレジスタアドレスに関する8ビットMSB値を含み得る。レジスタロケーション0x19からの値をアドレスMSBとして使用して、拡張レジスタ動作データグラムから受信された8ビットアドレス1804(アドレスLSB)と組み合わせることができる。したがって、拡張レジスタ動作データグラム内の8ビットレジスタアドレス1804のみを使用して、64Kレジスタ空間全体にアクセスすることができる。ページセグメント化アクセス(PSA)モードが無効化されている場合、レジスタロケーション0x19における値は拡張レジスタ動作に対して何の影響も有さない。
【００９２】
本開示の一態様では、拡張レジスタ動作に関するページセグメント化アクセス(PSA)は、いずれのRFFEデバイスの16ビットアドレス空間全体に対するフルアクセスも可能にする。この特徴を有効化することは、拡張レジスタロングベース動作に勝るいくつかの利点を提供する。たとえば、データグラム内の8ビットアドレスのみで、64Kレジスタ空間全体が利用可能になる。また、最高で8バイトのペイロードのみを有し得る拡張レジスタロングコマンドとは対照的に、拡張レジスタコマンドは最高で16バイトのペイロードを有し得るため、PSAは改善されたスループットを提供し、レイテンシを低減させる。
【００９３】
レジスタロケーション0x18に位置する構成レジスタ内の単一の構成ビット(たとえば、ビットロケーションD2における構成ビット)を有効化すること(たとえば、「1」に設定すること)または無効化すること(たとえば、「0」に設定すること)によってPSAを有効化または無効化することができる。有効化されると、レジスタロケーション0x19に記憶された8ビットページアドレスは、レジスタアドレスMSBとして機能することができ、拡張レジスタデータグラム内に供給される8ビットアドレス(レジスタアドレスLSBとして機能する)に添付され得る。
【００９４】
図12を再び参照すると、ページセグメント化アクセス(PSA)が有効化されていない場合、マスク書込み動作をサポートする拡張レジスタ書込みコマンド1202は、レジスタ空間の第1の256個のロケーション(レジスタロケーション0x00から0xFF)に限定され得る。しかしながら、PSAが有効化されているとき、マスク書込み動作をサポートする拡張レジスタ書込みコマンド1202は、64Kレジスタ空間全体に対するフルアクセスを有し得る。上記で説明したように、64Kレジスタ空間全体に対するフルアクセスは、レジスタロケーション0x19に記憶された8ビットページアドレスをレジスタアドレスMSBとして使用し、レジスタアドレスMSBを拡張レジスタ書込みコマンド1202内で供給される(レジスタアドレスLSBとして使用される)8ビットアドレスに添付することによって、円滑にされる。
【００９５】
ハードウェア実装形態の例
図19は、本明細書で開示する1つまたは複数の機能を実行するように構成され得る処理回路1902を採用する装置1900のためのハードウェア実装形態の簡略化された例を示す概念図である。本開示の様々な態様によれば、本明細書で開示するような要素、もしくは要素の任意の部分、または要素の任意の組合せは、処理回路1902を使用して実装されてもよい。処理回路1902は、ハードウェアモジュールとソフトウェアモジュールの何らかの組合せによって制御される1つまたは複数のプロセッサ1904を含んでもよい。プロセッサ1904の例は、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、ASIC、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理デバイス(PLD)、状態機械、シーケンサ、ゲート論理、個別ハードウェア回路、および本開示全体にわたって説明する様々な機能を実行するように構成された他の適切なハードウェアを含む。1つまたは複数のプロセッサ1904は、特定の機能を実装し、ソフトウェアモジュール1916のうちの1つによって構成され、増強され、または制御されてもよい専用プロセッサを含み得る。1つまたは複数のプロセッサ1904は、初期化中にロードされたソフトウェアモジュール1916の組合せを通じて構成されてもよく、動作中に1つまたは複数のソフトウェアモジュール1916をロードまたはアンロードすることによってさらに構成されてもよい。
【００９６】
図示する例では、処理回路1902は、バス1910によって一般的に表されるバスアーキテクチャを用いて実装され得る。バス1910は、処理回路1902の特定の用途および全体的な設計制約に応じて、任意の数の相互接続するバスおよびブリッジを含んでもよい。バス1910は、1つまたは複数のプロセッサ1904および記憶装置1906を含む様々な回路を互いにリンクさせる。記憶装置1906は、メモリデバイスおよび大容量記憶デバイスを含んでもよく、本明細書ではコンピュータ可読媒体および/またはプロセッサ可読媒体と呼ばれる場合がある。バス1910はまた、タイミングソース、タイマー、周辺装置、電圧調整器、および電力管理回路などの様々な他の回路をリンクさせることもできる。バスインターフェース1908は、バス1910と1つまたは複数のラインインターフェース回路1912との間のインターフェースを提供し得る。ラインインターフェース回路1912は、処理回路によってサポートされるネットワーキング技術ごとに設けられ得る。いくつかの事例では、複数のネットワーキング技術は、ラインインターフェース回路1912内に見出される回路または処理モジュールの一部または全部を共有し得る。各ラインインターフェース回路1912は、送信媒体を介して様々な他の装置と通信するための手段を提供する。装置1900の性質に応じて、ユーザインターフェース1918(たとえば、キーパッド、ディスプレイ、スピーカ、マイクロフォン、ジョイスティック)が設けられる場合もあり、直接またはバスインターフェース1908を介してバス1910に通信可能に結合される場合がある。
【００９７】
プロセッサ1904は、バス1910を管理すること、および記憶装置1906を含む場合があるコンピュータ可読媒体内に記憶されたソフトウェアの実行を含む場合がある一般的な処理を担ってもよい。この点で、プロセッサ1904を含む処理回路1902は、本明細書で開示する方法、機能および技法のうちのいずれかを実装するために使用されてもよい。記憶装置1906は、ソフトウェアを実行するとき、プロセッサ1904によって操作されるデータを記憶するために使用されてもよく、ソフトウェアは、本明細書で開示する方法のうちの任意の1つを実装するように構成されてもよい。
【００９８】
処理回路1902内の1つまたは複数のプロセッサ1904は、ソフトウェアを実行することができる。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、または他の名称で呼ばれるかどうかにかかわらず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行ファイル、実行スレッド、プロシージャ、関数、アルゴリズムなどを意味するものと広く解釈されるべきである。ソフトウェアは、コンピュータ可読の形で記憶装置1906内または外部コンピュータ可読媒体内に存在してもよい。外部コンピュータ可読媒体および/または記憶装置1906は、非一時的コンピュータ可読媒体を含み得る。非一時的コンピュータ可読媒体は、例として、磁気記憶デバイス(たとえば、ハードディスク、フロッピーディスク、磁気ストリップ)、光ディスク(たとえば、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD))、スマートカード、フラッシュメモリデバイス(たとえば、「フラッシュドライブ」、カード、スティック、またはキードライブ)、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、レジスタ、リムーバブルディスク、ならびに、コンピュータによってアクセスおよび読取り可能なソフトウェアおよび/または命令を記憶するための任意の他の好適な媒体を含む。コンピュータ可読媒体および/または記憶装置1906はまた、例として、搬送波、伝送線路、および、コンピュータがアクセスし読み取ってもよいソフトウェアおよび/または命令を送信するための任意の他の適切な媒体を含み得る。コンピュータ可読媒体および/または記憶装置1906は、処理回路1902内に存在するか、プロセッサ1904内に存在するか、処理回路1902の外部に存在するか、または処理回路1902を含む複数のエンティティにわたって分散されてもよい。コンピュータ可読媒体および/または記憶装置1906は、コンピュータプログラム製品で実施されてもよい。例として、コンピュータプログラム製品は、パッケージング材料の中のコンピュータ可読媒体を含んでもよい。当業者であれば、特定の用途およびシステム全体に課せられた全体的な設計制約に応じて、本開示を通じて提示される、説明する機能をどのように実施するのが最良であるかを認識するであろう。
【００９９】
記憶装置1906は、本明細書でソフトウェアモジュール1916と呼ばれる場合がある、ロード可能なコードセグメント、モジュール、アプリケーション、プログラムなどにおいて保持および/または編成されるソフトウェアを保持し得る。ソフトウェアモジュール1916の各々は、処理回路1902上にインストールまたはロードされ、1つまたは複数のプロセッサ1904によって実行されるとき、1つまたは複数のプロセッサ1904の動作を制御するランタイムイメージ1914に寄与する命令およびデータを含み得る。実行されるとき、いくつかの命令は、処理回路1902に、本明細書で説明するいくつかの方法、アルゴリズム、およびプロセスに従って機能を実行させることができる。
【０１００】
ソフトウェアモジュール1916の一部は、処理回路1902の初期化中にロードされてもよく、これらのソフトウェアモジュール1916は、本明細書に開示する様々な機能の実行を可能にするように処理回路1902を構成し得る。たとえば、いくつかのソフトウェアモジュール1916は、プロセッサ1904の内部デバイスおよび/または論理回路1922を構成してよく、ラインインターフェース回路1912、バスインターフェース1908、ユーザインターフェース1918、タイマー、数学コプロセッサなどの外部デバイスへのアクセスを管理することができる。ソフトウェアモジュール1916は、割込みハンドラおよびデバイスドライバと対話し、処理回路1902によって提供される様々なリソースへのアクセスを制御する制御プログラムおよび/またはオペレーティングシステムを含み得る。リソースは、メモリ、処理時間、ラインインターフェース回路1912へのアクセス、ユーザインターフェース1918などを含み得る。
【０１０１】
処理回路1902の1つまたは複数のプロセッサ1904は、多機能であってもよく、それによって、ソフトウェアモジュール1916の一部は、異なる機能または同じ機能の異なるインスタンスを実行するようにロードおよび構成される。1つまたは複数のプロセッサ1904はさらに、たとえば、ユーザインターフェース1918、ラインインターフェース回路1912、およびデバイスドライバからの入力に応答して開始されたバックグラウンドタスクを管理するように適合されてよい。複数の機能の実行をサポートするために、1つまたは複数のプロセッサ1904は、マルチタスク環境を実現するように構成されてもよく、それにより、複数の機能の各々が、必要または要望に応じて、1つまたは複数のプロセッサ1904によってサービスされるタスクのセットとして実装される。一例では、マルチタスク環境は、異なるタスク間でプロセッサ1904の制御を渡す時分割プログラム1920を使用して実装されてもよく、それにより、各タスクは、任意の未処理動作が完了すると、および/または割込みなどの入力に応答して、時分割プログラム1920に1つまたは複数のプロセッサ1904の制御を戻す。タスクが1つまたは複数のプロセッサ1904の制御を有するとき、処理回路は、制御しているタスクに関連した機能によって対処される目的に事実上特化される。時分割プログラム1920は、オペレーティングシステム、ラウンドロビンベースで制御を移すメインループ、機能の優先順位付けに従って1つもしくは複数のプロセッサ1904の制御を割り振る機能、および/または、1つもしくは複数のプロセッサ1904の制御を処理機能に対して施すことによって外部イベントに応答する割込み駆動のメインループを含んでもよい。
【０１０２】
送信機から受信機にデータグラムを送るための例示的な方法およびデバイス
図20は、バスインターフェースを介してデータを受信機に送るための方法のフローチャート2000である。この方法は、送信機(たとえば、バスマスタ)として動作するデバイスにおいて実行され得る。
【０１０３】
デバイスは、16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成することができる2002。16ビットアドレスは、最上位バイト(MSB)および最下位バイト(LSB)を含む。
【０１０４】
デバイスは、次いで、MSBをシャドーレジスタ内に保持された受信機ベースアドレス(セグメントまたは値)と比較する2004。この比較は、MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しいかどうかを検出することを含む。MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しくない場合、デバイスはMSBに等しくなるようにベースアドレスを受信機において設定する。デバイスは、データグラムを送るのに先立って書込みアクセスコマンドを受信機に送ることによってベースアドレスを受信機において設定することができる。デバイスは、シャドーレジスタ内に保持された受信機ベースアドレスをMSBにさらに更新することができる。
【０１０５】
デバイスは、マスク・データ対バースト長をシャドーレジスタ内に保持された受信機マスク書込みバースト長(セグメントまたは値)とさらに比較することができる2006。この比較は、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいかどうかを検出することを含む。マスク・データ対バースト長がシャドーレジスタにおいて保持された受信機マスク書込みバースト長に等しくない場合、デバイスはマスク・データ対バースト長に等しくなるようにマスク書込みバースト長を受信機において設定する。デバイスは、データグラムを送るのに先立って書込みアクセスコマンドを受信機に送ることによってマスク書込みバースト長を受信機において設定することができる。デバイスは、シャドーレジスタ内に保持された受信機マスク書込みバースト長をマスク・データ対バースト長にさらに更新する。
【０１０６】
最終的に、MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しく、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいとき、デバイスは、バスインターフェースを介してデータグラムを受信機に送る2008。受信機に送られるデータグラムは、MSBおよびマスク・データ対バースト長を含まない。
【０１０７】
図21は、バスインターフェースを介してデータを受信機に送るための別の方法のフローチャート2100である。この方法は、送信機(たとえば、バスマスタ)として動作するデバイスにおいて実行され得る。
【０１０８】
デバイスは、バスインターフェースを通して受信機に送信されるべきデータグラム内にコマンドフィールドを生成することができる2102。コマンドフィールドは、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかなど、データグラムのマスク書込みコマンドのタイプを示すことができる。
【０１０９】
代替として、デバイスは、データグラム内にコマンドフィールドおよびモードフィールドを生成することができる2104。したがって、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかなど、コマンドフィールドはデータグラムがマスク書込みコマンドであることを示すことができ、モードフィールドはマスク書込みコマンドタイプを示すことができる。
【０１１０】
デバイスは、データグラム内にマスクフィールドを生成することができる2106。マスクフィールドは、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する。マスクフィールドはまた、RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットを示す。デバイスはまた、データグラム内にデータフィールドを生成することができる2108。データフィールドは、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する。本開示の一態様では、マスクフィールドは、RFFEレジスタ内で変更されるべきビット位置を識別するビットインデックスフィールドであり、データフィールドは、ビットインデックスフィールド内で識別されるビット位置に関するビット値を提供するビット値フィールドである。
【０１１１】
最終的に、デバイスは、インターフェースを通してデータグラムを送信することができ、データグラムは受信機のRFFEレジスタにアドレス指定される2110。
【０１１２】
図22は、バスインターフェースを介してデータを受信機に送るためのさらなる方法のフローチャート2200である。この方法は、送信機(たとえば、バスマスタ)として動作するデバイスにおいて実行され得る。
【０１１３】
デバイスは、受信機に送信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを示すように構成レジスタを設定することができる2202。構成レジスタは8個のレジスタビットを含み得る。したがって、デバイスは、マスク書込み動作が有効化されていることを示すために、8個のレジスタビットの第3のレジスタビット(たとえば、レジスタビットD5 1404)を1の値に設定することができる。代替として、デバイスは、マスク書込み動作が無効化されていることを示すために、第3のレジスタビット(たとえば、レジスタビットD5 1404)を0の値に設定することができる。
【０１１４】
一態様では、データグラムは、拡張レジスタ書込みコマンドまたは拡張レジスタロング書込みコマンドのいずれかであり得る。したがって、マスク書込み動作が有効化されているとき、デバイスは、拡張レジスタロング書込みコマンドに関してマスク書込み動作が有効化されていることを示すために、構成レジスタ内の第4のレジスタビット(たとえば、レジスタビットD4 1406)を1の値に設定することができる。マスク書込み動作が有効化されているとき、デバイスは、拡張レジスタ書込みコマンドに関してマスク書込み動作が有効化されていることを示すために、第4のレジスタビット(たとえば、レジスタビットD4 1406)を0の値に設定することもできる。
【０１１５】
デバイスは、データグラム内にコマンドフィールドを生成することができる2204。コマンドフィールドは、データグラムが拡張レジスタ書込みコマンドであるかまたは拡張レジスタロング書込みコマンドであるかを示すことができる。
【０１１６】
デバイスはまた、データグラム内にペイロードフィールドを生成することができる2206。ペイロードフィールドは、マスク書込み動作が有効化されているときのマスク・データ対の数を含み得る。各マスク・データ対は、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含み得る。
【０１１７】
デバイスは、インターフェースを通してデータグラムを送信し、データグラムは受信機のRFFEレジスタにアドレス指定される2208。
【０１１８】
図23は、バスインターフェースを介してデータを受信機に送るための別の方法のフローチャート2300である。この方法は、送信機(たとえば、バスマスタ)として動作するデバイスにおいて実行され得る。
【０１１９】
デバイスは、受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化することができる2302。追加でかつ/または代替として、デバイスは、受信機における構成レジスタ内の単一ビットを第2の値に設定することによって、マスク書込み動作を無効化することができる。たとえば、ビットD0を「1」の値に設定するために、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)に対して書込み動作を実行することによって、マスク書込み動作を有効化することができる。別の例では、ビットD0を「0」の値に設定するために、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)に対して書込み動作を実行することによって、マスク書込み動作を無効化することができる。
【０１２０】
デバイスは、バスインターフェースを介して受信機に送信されるべきデータグラムを生成することができる2304。データグラムは、アドレス値(たとえば、図18のレジスタアドレス1804)を含むかまたはそれを提供する。データグラムは、拡張レジスタ書込みデータグラムまたは拡張レジスタ書込みロングデータグラムであり得る。
【０１２１】
デバイスはまた、データグラム内にペイロードフィールドを生成することができる2306。ペイロードフィールドは、マスク書込み動作が有効化されているときのマスク・データ対の数を含む。各マスク・データ対は、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む。
【０１２２】
デバイスは、受信機における構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化することができる2308。たとえば、ビットD2を「1」の値に設定するために、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)に対して書込み動作を実行することによって、ページセグメント化アクセス動作を有効化することができる。RFFEレジスタのアドレスは、受信機におけるページアドレスレジスタ(たとえば、レジスタロケーション0x19)に位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである。
【０１２３】
デバイスは、受信機における構成レジスタ内の他の単一ビットを第2の値に設定することによって、ページセグメント化アクセス動作を無効化することができる2310。たとえば、ビットD2を「0」の値に設定するために、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)に対して書込み動作を実行することによって、ページセグメント化アクセス動作を無効化することができる。RFFEレジスタのアドレスは、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である。
【０１２４】
デバイスは、バスインターフェースを通してデータグラムを送信することができ、データグラムは受信機のRFFEレジスタにアドレス指定される2312。
【０１２５】
図24は、処理回路2402を採用する送信装置2400のためのハードウェア実装形態の簡略化された例を示す図である。送信装置2400によって実行される動作の例は、図20から図23のフローチャートに関して上記で説明した動作を含む。処理回路は、通常、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、シーケンサ、および状態機械のうちの1つまたは複数を含み得るプロセッサ2416を有する。処理回路2402は、バス2420によって概略的に表されるバスアーキテクチャを用いて実装され得る。バス2420は、処理回路2402の特定の用途および全体的な設計制約に応じて、任意の数の相互接続バスおよびブリッジを含んでもよい。バス2420は、プロセッサ2416、モジュールまたは回路2404、2406、2408、2410、コネクタまたはワイヤ2414を介した通信をサポートするように構成可能なバスインターフェース回路2412、およびコンピュータ可読記憶媒体2418によって表される、1つまたは複数のプロセッサおよび/またはハードウェアモジュールを含む様々な回路を互いにリンクさせる。バス2420は、タイミングソース、周辺機器、電圧調整器、および電力管理回路などの様々な他の回路をリンクさせることもできるが、これらの回路は当技術分野でよく知られており、したがって、これ以上は説明しない。
【０１２６】
プロセッサ2416は、コンピュータ可読記憶媒2418上に記憶されたソフトウェア/命令の実行を含む一般的な処理を担う。ソフトウェア/命令は、プロセッサ2416によって実行されたとき、任意の特定の装置について上記で説明した様々な機能を処理回路2402に実行させる。コンピュータ可読記憶媒体はまた、ソフトウェアを実行するとき、データレーンおよびクロックレーンとして構成され得るコネクタまたはワイヤ2414を介して送信されたシンボルから復号されるデータを含む、プロセッサ2416によって操作されるデータを記憶するために使用され得る。処理回路2402は、モジュール/回路2404、2406、2408、および2410のうちの少なくとも1つをさらに含む。モジュール/回路2404、2406、2408、および2410は、プロセッサ2416内で実行している、コンピュータ可読記憶媒体2418内に存在する/記憶されるソフトウェアモジュール、プロセッサ2416に結合された1つまたは複数のハードウェアモジュール、またはそれらの何らかの組合せであり得る。モジュール/回路2404、2406、2408および/または2410は、マイクロコントローラ命令、状態機械構成パラメータ、それらの何らかの組合せを含み得る。
【０１２７】
一構成では、通信のための装置2400は、16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成することであって、16ビットアドレスが最上位バイト(MSB)および最下位バイト(LSB)を含む、生成することと、MSBがシャドーレジスタ内に保持された受信機ベースアドレスに等しく、マスク・データ対バースト長がシャドーレジスタ内に保持された受信機マスク書込みバースト長に等しいとき、バスインターフェースモジュール/回路2412を介してデータグラムを受信機に送信することとを行うように構成されたデータグラム生成/送信モジュール/回路2404を含む。装置2400は、MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較するように構成されたアドレス比較モジュール/回路2406をさらに含む。装置2400は、マスク・データ対バースト長をシャドーレジスタ内に保持された受信機マスク書込みバースト長と比較するように構成されたバースト長比較モジュール/回路2408をさらに含む。装置2400は、バスインターフェースモジュール/回路2412を通して受信機に送信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを示すように構成レジスタを設定するように構成されたレジスタ設定モジュール/回路2410をさらに含む。
【０１２８】
別の構成では、データグラム生成/送信モジュール/回路2404は、バスインターフェースモジュール/回路2412を通して受信機に送信されるべきデータグラム内にコマンドフィールドを生成することと、データグラム内にモードフィールドを生成することと、データグラム内にペイロードフィールドを生成することと、データグラム内にマスクフィールドを生成することと、データグラム内にデータフィールドを生成することと、バスインターフェースモジュール/回路2412を通してデータグラムを送信することであって、データグラムが受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、送信することとを行うように構成される。
【０１２９】
さらなる構成では、データグラム生成/送信モジュール/回路2404は、受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化することと、受信機における構成レジスタ内の単一ビットを第2の値に設定することによって、マスク書込み動作を無効化することと、バスインターフェースを介して受信機に送信されるべきデータグラムを生成することであって、データグラムがアドレス値を提供する、生成することと、データグラム内にペイロードフィールドを生成することであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更さるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、生成することと、受信機における構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化することであって、RFFEレジスタのアドレスが、受信機におけるページアドレスレジスタに位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである、有効化することと、受信機における構成レジスタ内の他の単一ビットを第2の値に設定することによって、ページセグメント化アクセス動作を無効化することであって、RFFEレジスタのアドレスが、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である、無効化することと、バスインターフェースを通してデータグラムを送信することであって、データグラムが受信機のRFFEレジスタにアドレス指定される、送信することとを行うように構成される。
【０１３０】
受信機においてデータグラムを送信機から受信するための例示的な方法およびデバイス
図25は、バスインターフェースを介してデータを送信機から受信するための方法のフローチャート2500である。この方法は、受信機(たとえば、バススレーブ)として動作するデバイスにおいて実行され得る。
【０１３１】
デバイスは、バスインターフェースを通してデータグラムを送信機から受信することができる2502。データグラムは、受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される。
【０１３２】
デバイスは、データグラム内のコマンドフィールドを読み取ることができる2504。コマンドフィールドは、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかなど、データグラムのマスク書込みコマンドのタイプを示すことができる。
【０１３３】
代替として、デバイスは、データグラム内のコマンドフィールドおよびモードフィールドを読み取ることができる2506。したがって、データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかなど、コマンドフィールドはデータグラムがマスク書込みコマンドであることを示すことができ、モードフィールドはマスク書込みコマンドタイプを示すことができる。
【０１３４】
デバイスは、データグラム内のマスクフィールドを読み取ることができる2508。マスクフィールドは、RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する。マスクフィールドはまた、RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットを示す。デバイスはまた、データグラム内のデータフィールドを読み取ることができる2510。データフィールドは、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供する。本開示の一態様では、マスクフィールドは、RFFEレジスタ内で変更されるべきビット位置を識別するビットインデックスフィールドであり、データフィールドは、ビットインデックスフィールド内で識別されるビット位置に関するビット値を提供するビット値フィールドである。
【０１３５】
最終的に、デバイスは、データフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更することができる2512。
【０１３６】
図26は、バスインターフェースを介してデータを送信機から受信するための別の方法のフローチャート2600である。この方法は、受信機(たとえば、バススレーブ)として動作するデバイスにおいて実行され得る。
【０１３７】
デバイスは、送信機から受信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを検出するために構成レジスタを読み取ることができる2602。構成レジスタは8個のレジスタビットを含む。したがって、デバイスは、8個のレジスタビットのうちの第3のレジスタビット(たとえば、レジスタビットD5 1404)が1の値に設定されているとき、マスク書込み動作が有効化されているかどうかを検出することができる。デバイスはまた、第3のレジスタビット(たとえば、レジスタビットD5 1404)が0の値に設定されているとき、マスク書込み動作が無効化されているかどうかを検出することができる。
【０１３８】
一態様では、データグラムは、拡張レジスタ書込みコマンドまたは拡張レジスタロング書込みコマンドのいずれかであり得る。したがって、マスク書込み動作が有効化されているとき、デバイスは、構成レジスタ内の第4のレジスタビット(たとえば、レジスタビットD4 1406)が1の値に設定されているとき、拡張レジスタロング書込みコマンドに関してマスク書込み動作が有効化されていることを検出することができる。マスク書込み動作が有効化されているとき、デバイスはまた、第4のレジスタビット(たとえば、レジスタビットD4 1406)が0の値に設定されているとき、拡張レジスタロング書込みコマンドに関してマスク書込み動作が有効化されていることを検出することができる。
【０１３９】
デバイスは、バスインターフェースを通してデータグラムを送信機から受信することができ2604、データグラムは受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される。
【０１４０】
デバイスは、データグラム内のコマンドフィールドを読み取ることができる2606。コマンドフィールドは、データグラムが、拡張レジスタ書込みコマンドであるか、または拡張レジスタロング書込みコマンドであるかを示す。
【０１４１】
デバイスはまた、データグラム内のペイロードフィールドを読み取ることができる2608。ペイロードフィールドは、マスク書込み動作が有効化されているときのマスク・データ対の数を含む。各マスク・データ対は、RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む。最終的に、デバイスは、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更することができる2610。
【０１４２】
図27は、バスインターフェースを介してデータを送信機から受信するためのさらなる方法のフローチャート2700である。この方法は、受信機(たとえば、バススレーブ)として動作するデバイスにおいて実行され得る。
【０１４３】
デバイスは、受信機における構成レジスタ内に単一ビットを設定するための第1のデータグラムを送信機から受信することができる2702。デバイスは、構成レジスタ内の単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出することができる。代替として、デバイスは、受信機における構成レジスタ内の単一ビットが第2の値に設定されているとき、マスク書込み動作が無効化されていることを検出することができる2704。たとえば、デバイスは、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)内のビットD0が書込み動作によって送信機によって設定された「1」の値を有するとき、マスク書込み動作が有効化されていることを検出することができる。別の例では、デバイスは、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)内のビットD0が書込み動作によって送信機によって設定された「0」の値を有するとき、マスク書込み動作が無効化されていることを検出することができる。
【０１４４】
デバイスは、第2のデータグラムを送信機から受信することができる2706。第2のデータグラムは、アドレス値(たとえば、図18のレジスタアドレス1804)を含むかまたはそれを提供する。第2のデータグラムは、拡張レジスタ書込みデータグラムまたは拡張レジスタ書込みロングデータグラムであり得る。
【０１４５】
デバイスは、第2のデータグラム内のペイロードフィールドを読み取ることができる2708。ペイロードフィールドは、マスク書込み動作が有効化されているときのマスク・データ対の数を含む。各マスク・データ対は、受信機の無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む。
【０１４６】
デバイスは、受信機における構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを送信機から受信することができる2710。デバイスは、受信機における構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出することができる2712。たとえば、デバイスは、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)内のビットD2が書込み動作によって送信機によって設定された「1」の値を有するとき、ページセグメント化アクセス動作が有効化されていることを検出することができる。RFFEレジスタのアドレスは、受信機におけるページアドレスレジスタ(たとえば、レジスタロケーション0x19)に位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである。
【０１４７】
デバイスは、受信機における構成レジスタ内の他の単一ビットが第2の値に設定されているとき、ページセグメント化アクセス動作が無効化されていることを検出することができる2714。たとえば、デバイスは、受信機の構成レジスタ(たとえば、ロケーション0x18におけるレジスタ)内のビットD2が書込み動作によって送信機によって設定された「0」の値を有するとき、ページセグメント化アクセス動作が無効化されていることを検出することができる。RFFEレジスタのアドレスは、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である。
【０１４８】
デバイスは、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更することができる2716。
【０１４９】
図28は、処理回路2802を採用する受信装置2800のためのハードウェア実装形態の簡略化された例を示す図である。受信装置2800によって実行される動作の例は、図25から図27のフローチャートに関して上記で説明した動作を含む。処理回路は、通常、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ、シーケンサ、および状態機械のうちの1つまたは複数を含み得るプロセッサ2816を有する。処理回路2802は、バス2820によって概略的に表されるバスアーキテクチャを用いて実装され得る。バス2820は、処理回路2802の特定の用途および全体的な設計制約に応じて、任意の数の相互接続バスおよびブリッジを含んでもよい。バス2820は、プロセッサ2816、モジュールまたは回路2804、2806、2808、2810、コネクタまたはワイヤ2814を介した通信をサポートするように構成可能なバスインターフェース回路2812、およびコンピュータ可読記憶媒体2818によって表される、1つまたは複数のプロセッサおよび/またはハードウェアモジュールを含む様々な回路を互いにリンクさせる。バス2820は、タイミングソース、周辺機器、電圧調整器、および電力管理回路などの様々な他の回路をリンクさせることもできるが、これらの回路は当技術分野でよく知られており、したがって、これ以上は説明しない。
【０１５０】
プロセッサ2816は、コンピュータ可読記憶媒体2818上に記憶されたソフトウェア/命令の実行を含む一般的な処理を担う。ソフトウェア/命令は、プロセッサ2816によって実行されるとき、任意の特定の装置について上記で説明した様々な機能を処理回路2802に実行させる。コンピュータ可読記憶媒体はまた、ソフトウェアを実行するとき、データレーンおよびクロックレーンとして構成され得るコネクタまたはワイヤ2814を介して送信されたシンボルから復号されるデータを含む、プロセッサ2816によって操作されるデータを記憶するために使用され得る。処理回路2802は、モジュール/回路2804、2806、2808、および2810のうちの少なくとも1つをさらに含む。モジュール/回路2804、2806、2808、および2810は、プロセッサ2816内で実行している、コンピュータ可読記憶媒体2818内に存在する/記憶されるソフトウェアモジュール、プロセッサ2816に結合された1つまたは複数のハードウェアモジュール、またはそれらの何らかの組合せであり得る。モジュール/回路2804、2806、2808および/または2810は、マイクロコントローラ命令、状態機械構成パラメータ、それらの何らかの組合せを含み得る。
【０１５１】
一構成では、通信のための装置2800は、バスインターフェースモジュール/回路2812を通してデータグラムを送信機から受信するように構成されたデータグラム受信モジュール/回路2804を含み、データグラムは、装置2800の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される。装置2800は、データグラム内のコマンドフィールドを読み取り、データグラム内のペイロードフィールドを読み取り、データグラム内のモードフィールドを読み取り、データグラム内のマスクフィールドを読み取り、データグラム内のデータフィールドを読み取るように構成されたフィールド読取りモジュール/回路2806をさらに含む。装置2800は、データフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更するように構成されたビット変更モジュール/回路2808をさらに含む。装置2800はまた、送信機から受信されるべきデータグラムに関してマスク書込み動作が有効化されているかどうかを検出するために構成レジスタを読み取るように構成されたレジスタ読取りモジュール/回路2810を含む。
【０１５２】
別の構成では、データグラム受信モジュール/回路2804は、受信機における構成レジスタ内で単一ビットを設定するための第1のデータグラムを送信機から受信することと、構成レジスタ内の単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出することと、受信機における構成レジスタ内の単一ビットが第2の値に設定されているとき、マスク書込み動作が無効化されていることを検出することと、第2のデータグラムを送信機から受信することであって、第2のデータグラムがアドレス値を提供する、受信することと、受信機における構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを送信機から受信することと、受信機における構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出することであって、RFFEレジスタのアドレスが、受信機におけるページアドレスレジスタに位置するアドレス値とページセグメント化アクセス動作が有効化されているときにデータグラムによって提供されるアドレス値の組合せである、検出することと、受信機における構成レジスタ内の他の単一ビットが第2の値に設定されているとき、ページセグメント化アクセス動作が無効化されていることを検出することであって、RFFEレジスタのアドレスが、ページセグメント化アクセス動作が無効化されているときにデータグラムによって提供されるアドレス値である、検出することとを行うように構成される。
【０１５３】
別の構成では、フィールド読取りモジュール/回路2806は、第2のデータグラム内のペイロードフィールドを読み取ることであって、ペイロードフィールドが、マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、受信機の無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、RFFEレジスタ内で変更されるべき少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取ることを行うように構成される。
【０１５４】
別の構成では、フィールド読取りモジュール/回路2806は、各マスク・データ対に関してデータフィールド内で提供される値に従ってマスクフィールド内で識別されるRFFEレジスタ内の少なくとも1つのビットを変更するように構成される。
【０１５５】
開示したプロセスにおけるステップの特定の順序または階層は、例示的な手法の例示であることが理解される。プロセスにおけるステップの特定の順序または階層は、設計上の選好に基づいて並べ替えられてもよい。添付の方法クレームは、様々なステップの要素を例示的な順序で提示したものであり、提示された特定の順序または階層に限定されるものではない。
【０１５６】
上述の説明は、本明細書で説明した様々な態様を当業者が実施できるようにするために提供される。これらの態様への様々な変更が当業者には容易に明らかになり、本明細書において規定された一般原理は他の態様に適用され得る。したがって、特許請求の範囲は、本明細書で示した態様に限定されることは意図されず、クレーム文言と一致するすべての範囲を与えられるべきであり、単数形の要素への言及は、そのように明記されていない限り、「唯一無二の」ではなく、「1つまたは複数の」を意味することが意図される。別段に明記されていない限り、「いくつか」という用語は、1つまたは複数を指す。当業者に知られているか、後で知られることになる、本開示全体にわたって説明した様々な態様の要素のすべての構造的および機能的均等物は、参照により本明細書に明確に組み込まれ、特許請求の範囲によって包含されることが意図される。その上、本明細書で開示するものは、そのような開示が特許請求の範囲において明示的に列挙されているかどうかにかかわらず、公に供されるものではない。クレーム要素は、要素が「ための手段」という句を使用して明確に列挙されていない限り、ミーンズプラスファンクションとして解釈されるべきではない。
【符号の説明】
【０１５７】
100  装置
102  処理回路
104  ICデバイス、特定用途向けIC(ASIC)デバイス
106  ICデバイス、RFフロントエンドデバイス
108  アンテナ
110  モデム
112  処理デバイス
114  メモリデバイス
120  ディスプレイ
122  キーパッド
124  ボタン
200  ブロック図
202  デバイス
204  モデム
206  ベースバンドプロセッサ、マスタデバイス/ベースバンドプロセッサ
208  RFFEバス
210  RFFEインターフェース
212  RF集積回路(RFIC)
212〜217  フロントエンドデバイス
213  スイッチ
214  RFチューナー
215  電力増幅器(PA)
216  低雑音増幅器(LNA)
217  電力管理モジュール
220  通信リンク
300  デバイス
302  スレーブデバイス、デバイス、第1のスレーブデバイス
306  RFFEレジスタ、レジスタ
310  トランシーバ
310a  受信機
310b  共通回路
310c  送信機
312  処理回路および/または制御論理
314a  ドライバ/受信機回路
314b  ドライバ/受信機回路
316  シリアルクロックライン(SCLK)
318  シリアルデータライン(SDATA)
3201〜320N  バスマスタデバイス、デバイス
324  記憶デバイス
3221〜322N  スレーブデバイス、デバイス
328  送信クロック(TXCLK)信号
330  RFFEバス、バス
400  予約コマンドフレーム
500  マスク書込みRFFEコマンド、マスク書込みコマンド
502  拡張レジスタマスク書込みコマンド(拡張レジスタWR)、コマンド
504  拡張レジスタロングマスク書込みコマンド(拡張レジスタWRロング)、コマンド
506  レジスタマスク書込みコマンド(レジスタWR)、コマンド
508  一般的な拡張レジスタロングマスクコマンド、コマンド
510  マスクNビットフィールド、コマンド
512  データNビットフィールド、コマンド
600  一般的なマスク書込みコマンド
602  一般的な拡張レジスタマスク書込みコマンド(拡張レジスタWR)、コマンド
604  一般的な拡張レジスタロングマスク書込みコマンド(拡張レジスタWRロング)、コマンド
606  一般的なレジスタマスク書込みコマンド(レジスタWR)
608  一般的なレジスタショートマスク書込みコマンド(拡張レジスタWRショート)
610  マスクNビットフィールド
612  データNビットフィールド
614  モードフィールド
702  拡張レジスタインデックスマスク書込みコマンド(拡張レジスタWR)
704  拡張レジスタロングインデックスマスタ書込みコマンド(拡張レジスタWRロング)
706  レジスタインデックスマスク書込みコマンド(レジスタWR)
708  拡張レジスタショートインデックスマスク書込みコマンド(拡張レジスタWRショート)
710  log2(N)ビットインデックス、ビットインデックス、フィールド
712  ビット値フィールド、フィールド
800  インデックスマスク書込みコマンド、コマンド
802  一般的拡張レジスタインデックスマスク書込みコマンド(拡張レジスタWR)
804  一般的拡張レジスタロングインデックスマスタ書込みコマンド(拡張レジスタWRロング)
806  一般的レジスタインデックスマスク書込みコマンド(レジスタWR)
808  一般的拡張レジスタショートインデックスマスク書込みコマンド(拡張レジスタWRショート)
810  フィールド
812  フィールド
814  2ビットモードフィールド
900  パケット構造
902  データグラムヘッダ
904  1ビットアドレス
906  最上位バイト(MSB)
908  最下位バイト(LSB)
910  マスク・データ対バースト長
1000  データグラム
1004  16ビットアドレス
1006  最上位バイト(MSB)
1008  最下位バイト(LSB)
1010  データ対バースト長、指定されたバースト長
1012  マスタデバイス
1014  シャドーレジスタ
1022  スレーブデバイス
1024  ベースアドレスレジスタ
1026  マスク書込みバースト長レジスタ
1100  データグラム、マスク書込みデータグラム
1104  16ビットアドレス
1105  16ビットアドレス
1106  最上位バイト(MSB)
1108  最下位バイト(LSB)
1110  指定されたマスク・データ対バースト長、指定されたバースト長
1112  マスタデバイス
1114  シャドーレジスタ
1116  シャドーレジスタ
1122  スレーブデバイス
1124  ベースアドレスレジスタ
1126  マスク書込みバースト長レジスタ
1136  レジスタ書込みアクセスコマンド
1140  比較する
1146  レジスタ書込みアクセスコマンド
1200  パケット構造
1202  拡張レジスタ書込みコマンド
1204  ペイロード
1300  パケット構造
1302  拡張レジスタロング書込みコマンド
1304  ペイロード
1400  ビット構造
1402  構成レジスタ
1404  第3のレジスタビットD5
1406  第4のレジスタビットD4
1500  RFFEレジスタ空間
1600  RFFEレジスタ空間
1700  表
1750  構成レジスタビットの機能を示す図、図
1800  ページセグメント化アクセスを示す図
1802  ページアドレスレジスタ
1804  8ビットアドレス、レジスタアドレス
1900  装置
1902  処理回路
1904  プロセッサ
1906  記憶装置、コンピュータ可読媒体および/または記憶装置
1908  バスインターフェース
1910  バス
1912  ラインインターフェース回路
1914  ランタイムイメージ
1916  ソフトウェアモジュール
1918  ユーザインターフェース
1920  時分割プログラム
1922  内部デバイスおよび/または論理回路
2000  フローチャート
2100  フローチャート
2200  フローチャート
2300  フローチャート
2400  送信装置
2402  処理回路
2404  モジュールまたは回路、モジュール/回路、データグラム生成/送信モジュール/回路
2406  モジュールまたは回路、モジュール/回路、アドレス比較モジュール/回路
2408  モジュールまたは回路、モジュール/回路、バースト長比較モジュール/回路
2410  モジュールまたは回路、モジュール/回路、レジスタ設置モジュール/回路
2412  バスインターフェース回路、バスインターフェースモジュール/回路
2414  コネクタまたはワイヤ
2416  プロセッサ
2418  コンピュータ可読記憶媒体
2420  バス
2500  フローチャート
2600  フローチャート
2700  フローチャート
2800  受信装置
2802  処理回路
2804  モジュールまたは回路、データグラム受信モジュール/回路
2806  モジュールまたは回路、フィールド読取りモジュール/回路
2808  モジュールまたは回路、ビット変更モジュール/回路
2810  モジュールまたは回路、レジスタ読取りモジュール/回路
2812  バスインターフェース回路
2814  コネクタまたはワイヤ
2816  プロセッサ
2818  コンピュータ可読記憶媒体
2820  バス
【図１】
2018536925.tif 000003
【図２】
2018536925.tif 000004
【図３】
2018536925.tif 000005
【図４】
2018536925.tif 000006
【図５】
2018536925.tif 000007
【図６】
2018536925.tif 000008
【図７】
2018536925.tif 000009
【図８】
2018536925.tif 000010
【図９】
2018536925.tif 000011
【図１０】
2018536925.tif 000012
【図１１】
2018536925.tif 000013
【図１２】
2018536925.tif 000014
【図１３】
2018536925.tif 000015
【図１４】
2018536925.tif 000016
【図１５】
2018536925.tif 000017
【図１６】
2018536925.tif 000018
【図１７】
2018536925.tif 000019
【図１８】
2018536925.tif 000020
【図１９】
2018536925.tif 000021
【図２０】
2018536925.tif 000022
【図２１】
2018536925.tif 000023
【図２２】
2018536925.tif 000024
【図２３】
2018536925.tif 000025
【図２４】
2018536925.tif 000026
【図２５】
2018536925.tif 000027
【図２６】
2018536925.tif 000028
【図２７】
2018536925.tif 000029
【図２８】
2018536925.tif 000030
【手続補正書】
【提出日】平成30年4月24日(2018.4.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
バスインターフェースを介してデータを受信機に送るための送信機において実行される方法であって、
16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成するステップであって、前記16ビットアドレスが、最上位バイト(MSB)および最下位バイト(LSB)を含む、生成するステップと、
前記MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較するステップと、
前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された受信機マスク書込みバースト長と比較するステップと、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しく、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しい
とき、
前記バスインターフェースを介して前記データグラムを前記受信機に送るステップと
を含む、方法。
【請求項２】
前記受信機に送られる前記データグラムが前記MSBおよび前記マスク・データ対バースト長を含まない、請求項1に記載の方法。
【請求項３】
前記MSBを前記シャドーレジスタ内に保持された前記受信機ベースアドレスと前記比較するステップが、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しいかどうかを検出するステップと、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しくないとき、
前記MSBに等しくなるようにベースアドレスを前記受信機において設定するステップと、
前記シャドーレジスタ内に保持された前記受信機ベースアドレスを前記MSBに更新するステップと
を含む、請求項1に記載の方法。
【請求項４】
受信機における前記ベースアドレスが、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって設定される、請求項3に記載の方法。
【請求項５】
前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長と前記比較するステップが、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しいかどうかを検出するステップと、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しくないとき、
前記マスク・データ対バースト長に等しくなるようにマスク書込みバースト長を前記受信機において設定するステップと、
前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長を前記マスク・データ対バースト長に更新するステップと
を含む、請求項1に記載の方法。
【請求項６】
前記受信機における前記マスク書込みバースト長が、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって設定される、請求項5に記載の方法。
【請求項７】
データを受信機に送るための送信機であって、
バスインターフェースと、
処理回路であって、
16ビットアドレスおよびマスク・データ対バースト長に基づいてデータグラムを生成することであって、前記16ビットアドレスが、最上位バイト(MSB)および最下位バイト(LSB)を含む、生成することと、
前記MSBをシャドーレジスタ内に保持された受信機ベースアドレスと比較することと、
前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された受信機マスク書込みバースト長と比較することと、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しく、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しい
とき、
前記バスインターフェースを介して前記データグラムを前記受信機に送ることと
を行うように構成された、処理回路と
含む、送信機。
【請求項８】
前記受信機に送られる前記データグラムが前記MSBおよび前記マスク・データ対バースト長を含まない、請求項7に記載の送信機。
【請求項９】
前記処理回路が、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しいかどうかを検出し、
前記MSBが前記シャドーレジスタ内に保持された前記受信機ベースアドレスに等しくないとき、
前記MSBに等しくなるようにベースアドレスを前記受信機において設定し、
前記シャドーレジスタ内に保持された前記受信機ベースアドレスを前記MSBに更新する
ことによって、前記MSBを前記シャドーレジスタ内に保持された前記受信機ベースアドレスと比較するように構成される、請求項7に記載の送信機。
【請求項１０】
前記処理回路が、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって前記ベースアドレスを前記受信機において設定するように構成される、請求項9に記載の送信機。
【請求項１１】
前記処理回路が、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しいかどうかを検出し、
前記マスク・データ対バースト長が前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長に等しくないとき、
前記マスク・データ対バースト長に等しくなるようにマスク書込みバースト長を前記受信機において設定し、
前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長を前記マスク・データ対バースト長に更新する
ことによって、前記マスク・データ対バースト長を前記シャドーレジスタ内に保持された前記受信機マスク書込みバースト長と比較するように構成される、請求項7に記載の送信機。
【請求項１２】
前記処理回路が、前記データグラムを送るのに先立って書込みアクセスコマンドを前記受信機に送ることによって前記マスク書込みバースト長を前記受信機において設定するように構成される、請求項11に記載の送信機。
【請求項１３】
データを受信機に送るための送信機において実行される方法であって、
インターフェースを通して前記受信機に送信されるべきデータグラム内にマスクフィールドを生成するステップであって、前記マスクフィールドが無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する、生成するステップと、
前記データグラム内にデータフィールドを生成するステップであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、生成するステップと、
前記インターフェースを通して前記データグラムを送信するステップであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信するステップと
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
方法。
【請求項１４】
前記マスクフィールドが、前記RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットをさらに示す、請求項13に記載の方法。
【請求項１５】
前記データグラム内にコマンドフィールドを生成するステップであって、前記コマンドフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するステップをさらに含む、請求項13に記載の方法。
【請求項１６】
前記データグラム内にコマンドフィールドを生成するステップであって、前記コマンドフィールドが、前記データグラムがマスク書込みコマンドであることを示す、生成するステップと、
前記データグラム内にモードフィールドを生成するステップであって、前記モードフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、生成するステップと
をさらに含む、請求項13に記載の方法。
【請求項１７】
データを受信機に送るための送信機であって、
バスインターフェースと、
処理回路であって、
前記バスインターフェースを通して前記受信機に送信されるべきデータグラム内にマスクフィールドを生成することであって、前記マスクフィールドが無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別する、生成することと、
前記データグラム内にデータフィールドを生成することであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、生成することと、
前記バスインターフェースを通して前記データグラムを送信することであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信することと
を行うように構成された処理回路と
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
送信機。
【請求項１８】
データを送信機から受信するための受信機において実行される方法であって、
インターフェースを通してデータグラムを前記送信機から受信するステップであって、前記データグラムが前記受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信するステップと、
前記データグラム内のマスクフィールドを読み取るステップであって、前記マスクフィールドが前記RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する、読み取るステップと、
前記データグラム内のデータフィールドを読み取るステップであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、読み取るステップと、
前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更するステップと
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
方法。
【請求項１９】
前記マスクフィールドが、前記RFFEレジスタ内で変更されない状態に残されるべきビットの残りのセットをさらに示す、請求項18に記載の方法。
【請求項２０】
前記データグラム内のコマンドフィールドを読み取るステップであって、前記コマンドフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るステップをさらに含む、請求項18に記載の方法。
【請求項２１】
前記データグラム内のコマンドフィールドを読み取るステップであって、前記コマンドフィールドが、前記データグラムがマスク書込みコマンドであることを示す、読み取るステップと、
前記データグラム内のモードフィールドを読み取るステップであって、前記モードフィールドが、前記データグラムが、拡張レジスタマスク書込みコマンドであるか、拡張レジスタロングマスク書込みコマンドであるか、レジスタマスク書込みコマンドであるか、または拡張レジスタショートマスク書込みコマンドであるかを示す、読み取るステップと
をさらに含む、請求項18に記載の方法。
【請求項２２】
データを送信機から受信するための受信機であって、
バスインターフェースと、
処理回路であって、
前記バスインターフェースを通してデータグラムを前記送信機から受信することであって、前記データグラムが前記受信機の無線周波数フロントエンド(RFFE)レジスタにアドレス指定される、受信することと、
前記データグラム内のマスクフィールドを読み取ることであって、前記マスクフィールドが前記RFFEレジスタ内で変更されるべき少なくとも1つのビットを識別する、読み取ることと、
前記データグラム内のデータフィールドを読み取ることであって、前記データフィールドが前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供する、読み取ることと、
前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更することと
を行うように構成された、処理回路と
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
受信機。
【請求項２３】
バスインターフェースを通してデータを受信機に送るための送信機において実行される方法であって、
前記受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化するステップと、
前記バスインターフェースを介して前記受信機に送信されるべきデータグラムを生成するステップであって、前記データグラムがアドレス値を提供する、生成するステップと、
前記データグラム内にペイロードフィールドを生成するステップであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、生成するステップと、
前記バスインターフェースを通して前記データグラムを送信するステップであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信するステップと
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
方法。
【請求項２４】
前記受信機における前記構成レジスタ内の前記単一ビットを第2の値に設定することによって、前記マスク書込み動作を無効化するステップ
をさらに含む、請求項23に記載の方法。
【請求項２５】
前記受信機における前記構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化するステップであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記データグラムによって提供される前記アドレス値の組合せである、有効化するステップと、
前記受信機における前記構成レジスタ内の他の単一ビットを第2の値に設定することによって、前記ページセグメント化アクセス動作を無効化するステップであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記データグラムによって提供される前記アドレス値である、無効化するステップと
をさらに含む、請求項23に記載の方法。
【請求項２６】
データを受信機に送るための送信機であって、
バスインターフェースと、
処理回路であって、
前記受信機における構成レジスタ内の単一ビットを第1の値に設定することによって、マスク書込み動作を有効化することと、
前記バスインターフェースを介して前記受信機に送信されるべきデータグラムを生成することであって、前記データグラムがアドレス値を提供する、生成することと、
前記データグラム内にペイロードフィールドを生成することであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、生成することと、
前記バスインターフェースを通して前記データグラムを送信することであって、前記データグラムが前記受信機の前記RFFEレジスタにアドレス指定される、送信することと
を行うように構成された、処理回路と
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
送信機。
【請求項２７】
前記処理回路が、
前記受信機における前記構成レジスタ内の前記単一ビットを第2の値に設定することによって、前記マスク書込み動作を無効化する
ようにさらに構成される、請求項26に記載の送信機。
【請求項２８】
前記処理回路が、
前記受信機における前記構成レジスタ内の別の単一ビットを第1の値に設定することによって、ページセグメント化アクセス動作を有効化することであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記データグラムによって提供される前記アドレス値の組合せである、有効化することと、
前記受信機における前記構成レジスタ内の他の単一ビットを第2の値に設定することによって、前記ページセグメント化アクセス動作を無効化することであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記データグラムによって提供される前記アドレス値である、無効化することと
を行うようにさらに構成される、請求項26に記載の送信機。
【請求項２９】
バスインターフェースを通してデータを送信機から受信するための受信機において実行される方法であって、
前記受信機における構成レジスタ内に単一ビットを設定するための第1のデータグラムを前記送信機から受信するステップと、
前記構成レジスタ内の前記単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出するステップと、
第2のデータグラムを前記送信機から受信するステップであって、前記第2のデータグラムがアドレス値を提供する、受信するステップと、
前記第2のデータグラム内のペイロードフィールドを読み取るステップであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、前記受信機の無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取るステップと、
各マスク・データ対に関して前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更するステップと
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
方法。
【請求項３０】
前記受信機における前記構成レジスタ内の前記単一ビットが第2の値に設定されているとき、前記マスク書込み動作が無効化されていることを検出するステップ
をさらに含む、請求項29に記載の方法。
【請求項３１】
前記受信機における前記構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを前記送信機から受信するステップと、
前記受信機における前記構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出するステップであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記第2のデータグラムによって提供される前記アドレス値の組合せである、検出するステップと、
前記受信機における前記構成レジスタ内の前記他の単一ビットが第2の値に設定されているとき、前記ページセグメント化アクセス動作が無効化されていることを検出するステップであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記第2のデータグラムによって提供される前記アドレス値である、検出するステップと
をさらに含む、請求項29に記載の方法。
【請求項３２】
データを送信機から受信するための受信機であって、
バスインターフェースと、
処理回路であって、
前記受信機における構成レジスタ内に単一ビットを設定するための第1のデータグラムを前記送信機から受信することと、
前記構成レジスタ内の前記単一ビットが第1の値に設定されているとき、マスク書込み動作が有効化されていることを検出することと、
第2のデータグラムを前記送信機から受信するステップであって、前記第2のデータグラムがアドレス値を提供する、受信することと、
前記第2のデータグラム内のペイロードフィールドを読み取ることであって、前記ペイロードフィールドが、前記マスク書込み動作が有効化されているときのマスク・データ対の数を含み、各マスク・データ対が、前記受信機の無線周波数フロントエンド(RFFE)レジスタ内で変更されるべき少なくとも1つのビットを識別するマスクフィールドと、前記RFFEレジスタ内で変更されるべき前記少なくとも1つのビットの値を提供するデータフィールドとを含む、読み取ることと、
各マスク・データ対に関して前記データフィールド内で提供される前記値に従って前記マスクフィールド内で識別される前記RFFEレジスタ内の前記少なくとも1つのビットを変更することと
を行うように構成された、処理回路と
を含み、
前記マスクフィールドが、前記受信機の前記RFFEレジスタ内で変更されるべきビット位置を識別するlog2(N)ビットインデックスフィールドであり、Nが前記レジスタ内のビットの数であり、
前記データフィールドが、前記ビットインデックスフィールド内で識別される前記ビット位置に関するビット値を提供するビット値フィールドである
受信機。
【請求項３３】
前記処理回路が、
前記受信機における前記構成レジスタ内の前記単一ビットが第2の値に設定されているとき、前記マスク書込み動作が無効化されていることを検出する
ようにさらに構成される、請求項32に記載の受信機。
【請求項３４】
前記処理回路が、
前記受信機における前記構成レジスタ内に別の単一ビットを設定するための第3のデータグラムを前記送信機から受信することと、
前記受信機における前記構成レジスタ内の他の単一ビットが第1の値に設定されているとき、ページセグメント化アクセス動作が有効化されていることを検出することであって、前記RFFEレジスタのアドレスが、前記受信機におけるページアドレスレジスタに位置するアドレス値と前記ページセグメント化アクセス動作が有効化されているときに前記第2のデータグラムによって提供される前記アドレス値の組合せである、検出することと、
前記受信機における前記構成レジスタ内の前記他の単一ビットが第2の値に設定されているとき、前記ページセグメント化アクセス動作が無効化されていることを検出することであって、前記RFFEレジスタの前記アドレスが、前記ページセグメント化アクセス動作が無効化されているときに前記第2のデータグラムによって提供される前記アドレス値である、検出することと
を行うようにさらに構成される、請求項32に記載の受信機。
【国際調査報告】
2018536925.tif 000031
2018536925.tif 000032
2018536925.tif 000033
2018536925.tif 000034
2018536925.tif 000035