IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ペッパール・アンド・フックス・エスエーの特許一覧 ▶ アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニーの特許一覧

<>
  • 特表-固定ストリームデリミタの低減効果 図1
  • 特表-固定ストリームデリミタの低減効果 図2
  • 特表-固定ストリームデリミタの低減効果 図3
  • 特表-固定ストリームデリミタの低減効果 図4
  • 特表-固定ストリームデリミタの低減効果 図5A
  • 特表-固定ストリームデリミタの低減効果 図5B
  • 特表-固定ストリームデリミタの低減効果 図6
  • 特表-固定ストリームデリミタの低減効果 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-08-22
(54)【発明の名称】固定ストリームデリミタの低減効果
(51)【国際特許分類】
   H04B 1/7073 20110101AFI20220815BHJP
   H04K 1/00 20060101ALI20220815BHJP
【FI】
H04B1/7073
H04K1/00 Z
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021568733
(86)(22)【出願日】2020-05-18
(85)【翻訳文提出日】2021-12-16
(86)【国際出願番号】 EP2020063822
(87)【国際公開番号】W WO2020229700
(87)【国際公開日】2020-11-19
(31)【優先権主張番号】1906915.2
(32)【優先日】2019-05-16
(33)【優先権主張国・地域又は機関】GB
(81)【指定国・地域】
(71)【出願人】
【識別番号】521502469
【氏名又は名称】ペッパール・アンド・フックス・エスエー
(71)【出願人】
【識別番号】519383544
【氏名又は名称】アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニー
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】フィリップ・カラン
(72)【発明者】
【氏名】シュテファン・グラバー
(57)【要約】
送信機物理層(PHY)コントローラによって、ネットワーク接続を介した、受信機PHYコントローラへの送信のためのデータにアクセスすることと、データのランダム化とは独立して、デリミタをランダム化することと、初期ランニング・ディスパリティを生成するように、ランダム化されたデリミタに基づいて、ディスパリティリセット値を選択することと、初期ランニング・ディスパリティに基づいて、ランダム化されたデータを符号化することと、符号化されたランダム化されたデータおよびランダム化されたデリミタを含むフレームを生成することと、フレームを、送信機PHYコントローラから受信機PHYコントローラに送信することと、を含む動作を実行するためのシステムおよび方法が提供される。
【特許請求の範囲】
【請求項1】
方法であって、
送信機物理層(PHY)コントローラによって、ネットワーク接続を介した、受信機PHYコントローラへの送信のためのデータにアクセスすることと、
前記データのランダム化とは独立して、デリミタをランダム化することと、
初期ランニング・ディスパリティを生成するように、前記ランダム化されたデリミタに基づいて、ディスパリティリセット値を選択することと、
前記初期ランニング・ディスパリティに基づいて、前記ランダム化されたデータを符号化することと、
前記符号化されたランダム化されたデータおよび前記ランダム化されたデリミタを含むフレームを生成することと、
前記フレームを、前記送信機PHYコントローラから前記受信機PHYコントローラに送信することと、を含む、方法。
【請求項2】
前記ネットワークは、イーサネット有線接続を含み、前記データは、10BASE-T1L実装に従って、前記ネットワークを介して送信される、請求項1に記載の方法。
【請求項3】
前記送信機PHYコントローラ内のスクランブラからビットのセットを取得することをさらに含む、請求項1または2に記載の方法。
【請求項4】
前記ビットのセットのうちの2つ以上のビットの関数として、デリミタランダム化ビットを生成することをさらに含む、請求項3に記載の方法。
【請求項5】
前記関数は、XOR演算を含み、前記2つ以上のビットは、13番目の位置のビットおよび33番目の位置のビットを含む、請求項4に記載の方法。
【請求項6】
デリミタ値の第1のセットおよびデリミタ値の第2のセットを記憶することと、
前記ランダム化ビットの値を判定することと、
前記ランダム化ビットの前記値の判定に応答して、前記デリミタ値の第1のセットまたは前記デリミタ値の第2のセットのいずれかから前記デリミタを選択することと、をさらに含む、請求項4または5に記載の方法。
【請求項7】
前記ランダム化ビットが第1の値に対応するという判定に応答して、前記デリミタ値の第1のセットから前記デリミタを選択することと、
前記値が第2の値に対応するという判定に応答して、前記デリミタ値の第2のセットから前記デリミタを選択することと、をさらに含む、請求項6に記載の方法。
【請求項8】
前記デリミタ値の第1のセットは、フレームの開始、フレームの終了、およびエラーを有するフレームの終了を表す、3進トリプレットを含み、前記デリミタ値の第2のセットは、前記フレームの開始、前記フレームの終了、および前記エラーを有するフレームの終了を表す、3進トリプレットを含む、請求項6または7に記載の方法。
【請求項9】
前記デリミタ値の第2のセットの前記3進トリプレットと、前記デリミタ値の第1のセットの前記3進トリプレットとは、極性が逆である、請求項8に記載の方法。
【請求項10】
前記デリミタランダム化ビットは、前記デリミタの前に送信される記号に対して生成され、
ディスパリティリセット値の第1のセットおよびディスパリティリセット値の第2のセットを記憶することと、
前記ランダム化ビットの前記値の判定に応答して、前記ディスパリティリセット値の第1のセットまたは前記ディスパリティリセット値の第2のセットのいずれかから前記ディスパリティリセット値を選択することと、をさらに含む、請求項6~9のいずれか一項に記載の方法。
【請求項11】
前記選択されたディスパリティリセット値は、以前に送信された記号のランニング・ディスパリティに基づいて、送信された記号のストリーム内のDCコンテンツを低減させるように、前記選択されたデリミタに対応する3進トリプレットの極性を均衡化させるように構成される、請求項10に記載の方法。
【請求項12】
フレームの開始またはフレームの終了もしくはエラーを有するフレームの終了を含むデリミタ記号シーケンスを送信した後に、前記ランニング・ディスパリティに対する開始値をランダム化することをさらに含む、請求項1~11のいずれか一項に記載の方法。
【請求項13】
前記開始値は、2の値または3の値のいずれかにランダム化される、請求項12に記載の方法。
【請求項14】
前記デリミタは、線形フィードバックシフトレジスタを使用してランダム化される、請求項1~13のいずれか一項に記載の方法。
【請求項15】
システムであって、
動作を実行するように構成された1つ以上のプロセッサを備え、前記動作は、
送信機物理層(PHY)コントローラによって、ネットワーク接続を介した、受信機PHYコントローラへの送信のためのデータにアクセスすることと、
前記データのランダム化とは独立して、デリミタをランダム化することと、
初期ランニング・ディスパリティを生成するように、前記ランダム化されたデリミタに基づいてディスパリティリセット値を選択することと、
前記初期ランニング・ディスパリティに基づいて、前記ランダム化されたデータを符号化することと、
前記符号化されたランダム化されたデータおよび前記ランダム化デリミタを含むフレームを生成することと、
前記フレームを、前記送信機PHYコントローラから前記受信機PHYコントローラに送信することと、を含む、システム。
【請求項16】
前記ネットワークは、イーサネット有線接続を含み、前記データは、10BASE-T1Lの実装に従って前記ネットワークを介して送信される、請求項15に記載のシステム。
【請求項17】
前記送信機PHYコントローラ内のスクランブラからビットのセットを取得するための動作をさらに含む、請求項15または16に記載のシステム。
【請求項18】
前記ビットのセットのうちの2つ以上のビットの関数として、デリミタランダム化ビットを生成するための動作をさらに含む、請求項17に記載のシステム。
【請求項19】
前記関数はXOR動作を含み、前記2つ以上のビットは13番目の位置のビットおよび33番目の位置のビットを含む、請求項18に記載のシステム。
【請求項20】
デリミタ値の第1のセットおよびデリミタ値の第2のセットを記憶することと、
前記デリミタランダム化ビットの値を判定することと、
前記ランダム化ビットの前記値の判定に応答して、前記デリミタ値の第1のセットまたは前記デリミタ値の第2のセットのいずれかから、前記デリミタを選択することと、を行うための動作をさらに含む、請求項18または19に記載のシステム。
【請求項21】
1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサを、以下の動作を実行するように構成するコンピュータ可読インストラクションを含むコンピュータ可読媒体であって、前記動作は、
送信機物理層(PHY)コントローラによって、ネットワーク接続を介した、受信機PHYコントローラへの送信のためのデータにアクセスすることと、
前記データのランダム化とは独立して、デリミタをランダム化することと、
初期ランニング・ディスパリティを生成するように、前記ランダム化されたデリミタに基づいて、ディスパリティリセット値を選択することと、
前記初期ランニング・ディスパリティに基づいて、前記ランダム化されたデータを符号化することと、
前記符号化されたランダム化されたデータおよび前記ランダム化されたデリミタを含むフレームを生成することと、
前記フレームを、前記送信機PHYコントローラから前記受信機PHYコントローラに送信することと、を含む、コンピュータ可読媒体。
【請求項22】
前記ネットワークは、イーサネット有線接続を含み、前記データは、10BASE-T1Lの実装に従って前記ネットワークを介して送信される、請求項21に記載のコンピュータ可読媒体。
【請求項23】
前記送信機PHYコントローラ内のスクランブラからビットのセットを取得するための動作をさらに備える、請求項21に記載のコンピュータ可読媒体。
【請求項24】
前記ビットのセットのうちの2つ以上のビットの関数として、デリミタランダム化ビットを生成するための動作をさらに含む、請求項23に記載のコンピュータ可読媒体。
【請求項25】
前記関数は、XOR演算を含み、前記2つ以上のビットは、13番目の位置のビットおよび33番目の位置のビットを含む、請求項24に記載のコンピュータ可読媒体。
【請求項26】
デリミタ値の第1のセットおよびデリミタ値の第2のセットを記憶することと、
前記デリミタランダム化ビットの値を判定することと、
前記ランダム化ビットの前記値の判定に応答して、前記デリミタ値の第1のセットまたは前記デリミタ値の第2のセットのいずれかから、前記デリミタを選択することと、を行うための動作をさらに含む、請求項24に記載のコンピュータ可読媒体。
【請求項27】
前記コンピュータ可読媒体は、非一時的であり、前記コンピュータ可読命令は、非一時的である、請求項21~26のいずれか一項に記載のコンピュータ可読媒体。
【請求項28】
コンピュータプログラム、または一揃いのコンピュータプログラムであって、コンピュータ上で実行されると、前記コンピュータに請求項1~14のいずれか一項に記載の工程を実行させる命令を含む、コンピュータプログラムまたは一揃いのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本文書は、「A method to reduce the effect of fixed stream delimiters on emissions and receive filter training」と題された、2019年5月16日に提出された英国出願第GB1906915.2号の優先権の利益を主張する非仮出願であり、参照によりその全体が本明細書に組み込まれる。
【0002】
本文書は、これに限定するものではないが、概して通信システムの物理層(PHY)内でのデータ送信に関連する。
【背景技術】
【0003】
イーサネット通信は、物理層(PHY)デバイスを使用してデータを交換する。デリミタは、しばしば交換されるデータのフレームの開始および終了を特定するために使用される。これらのデリミタは、しばしば一定の比率で、順次および連続的に繰り返される固定コードを含む。
【発明の概要】
【課題を解決するための手段】
【0004】
本開示は、デリミタによって生じる相関およびスペクトルスパイクを補償するためのシステムおよび方法を説明する。特に、システムおよび方法は、送信機物理層(PHY)コントローラによって、ネットワーク接続を介した、受信機PHYコントローラへの送信のためのデータにアクセスすることと、データのランダム化とは独立して、デリミタをランダム化することと、初期ランニング・ディスパリティを生成するように、ランダム化されたデリミタに基づいて、ディスパリティリセット値を選択することと、初期ランニング・ディスパリティに基づいて、ランダム化されたデータを符号化することと、符号化されたランダム化されたデータおよびランダム化されたデリミタを含むフレームを生成することと、フレームを、送信機PHYコントローラから受信機PHYコントローラに送信することと、を含む動作を実行する。
【0005】
いくつかの実装形態において、ネットワークは、イーサネット有線接続を含み、データは、10BASE-T1L実装に従って、ネットワークを介して送信される。
【0006】
いくつかの実装形態において、動作は、送信機PHYコントローラ内のスクランブラからビットのセットを取得することを含む。いくつかの実装形態において、動作は、ビットのセットのうちの2つ以上のビットの関数として、デリミタランダム化ビットを生成することを含む。いくつかの実装形態において、関数は、XOR演算を含み、2つ以上のビットは、13番目の位置のビットおよび33番目の位置のビットを含む。
【0007】
いくつかの実装形態において、動作は、デリミタ値の第1のセットおよびデリミタ値の第2のセットを記憶することと、ランダム化ビットの値を判定することと、ランダム化ビットの値の判定に応答して、デリミタ値の第1のセットまたはデリミタ値の第2のセットのいずれかからデリミタを選択することと、を含む。
【0008】
いくつかの実装形態において、動作は、ランダム化ビットが第1の値に対応するという判定に応答して、デリミタ値の第1のセットからデリミタを選択することと、値が第2の値に対応するという判定に応答して、デリミタ値の第2のセットからデリミタを選択することと、を含む。いくつかの実装形態において、デリミタ値の第1のセットは、フレームの開始、フレームの終了、およびエラーを有するフレームの終了を表す、3進トリプレットを含み、デリミタ値の第2のセットは、フレームの開始、フレームの終了、およびエラーを有するフレームの終了を表す、3進トリプレットを含む。いくつかの実装形態において、デリミタ値の第2のセットの3進トリプレットと、デリミタ値の第1のセットの3進トリプレットとは、極性が逆である。
【0009】
いくつかの実装形態において、デリミタランダム化ビットは、デリミタの前に送信される記号に対して生成され、動作は、ディスパリティリセット値の第1のセットおよびディスパリティリセット値の第2のセットを記憶することと、ランダム化ビットの値の判定に応答して、ディスパリティリセット値の第1のセットまたはディスパリティリセット値の第2のセットのいずれかからディスパリティリセット値を選択することと、をさらに含む。いくつかの実装形態において、選択されたディスパリティリセット値は、以前に送信された記号のランニング・ディスパリティに基づいて、送信された記号のストリーム内のDCコンテンツを低減させるように、選択されたデリミタに対応する3進トリプレットの極性を均衡化させるように構成される。
【0010】
いくつかの実装形態において、フレームの開始またはフレームの終了もしくはエラーを有するフレームの終了を含むデリミタ記号シーケンスを送信した後に、ランニング・ディスパリティに対する開始値をランダム化することをさらに含む。いくつかの実装形態において、開始値は、2の値または3の値のいずれかにランダム化される。
【0011】
いくつかの実装形態において、デリミタは、線形フィードバックシフトレジスタを使用してランダム化される。
この概説は、本特許出願の主題の概説を提供することを意図している。本発明の主題の排他的または網羅的な説明を提供することを意図するものではない。詳細な説明は、本特許出願に関するさらなる情報を提供するために含まれている。
【図面の簡単な説明】
【0012】
図面において、必ずしも縮尺通りに描かれていないが、同様の数字は、異なる図面において同様の構成要素を記述する場合がある。異なる文字の添字を有する同様の数字は、同様の構成要素の異なる例を表す場合がある。図面は、限定ではなく例として、本明細書において考察される様々な実施形態を一般的に例示する。
【0013】
図1図1は、様々な実施形態にかかる例示的なシステムのブロック図である。
図2図2は、開示された実施形態にかかる例示的なフレームジェネレータを示す。
図3図3は、開示された実施形態にかかるフレームの例示的なセットを示す。
図4図4は、開示された実施形態にかかる例示的なデリミタを示す。
図5A図5Aは、開示された実施形態にかかるデリミタの例示的セットを示す。
図5B図5Bは、開示された実施形態にかかるディスパリティリセット値の例示的セットを示す。
図6図6は、開示された実施形態にかかるデリミタによって生じる相関およびスペクトルスパイクを補償するための例示的なプロセスを示すフローチャートである。
図7図7は、1つ以上の実施形態が実装され得るマシンの例を示すブロック図である。
【発明を実施するための形態】
【0014】
典型的な通信システムは、データフレームの始まり(SSDまたはストリームデリミタの開始)およびデータフレームの終わり(ESDまたはストリームデリミタの終了)を信号で知らせるためのデリミタコードを挿入する。これらのデリミタは、アイドルデータおよびユーザデータからなる連続データストリーム内に埋め込まれ得、データストリーム間の境界をマークするために使用される。典型的に、デリミタは固定コードを含む。デリミタを使用する場合、ユーザデータおよびアイドルデータの長さが経時的に一定であれば、これらのコードは、順次および連続的に一定の比率で繰り返され得る。例えば、イーサネット通信システムでは、最小フレーム長は64バイトであるが、アイドルデータが送信される間のフレーム間ギャップの長さは、12バイトまたは96ビットの最小長を有する。
【0015】
制御システム内のデバイスは通常、フレームあたりわずかな量のデータしか送信せず、それは合理的な測定分解能のために、2バイトまたは4バイトまで低くすることができる。例えば、イーサネットを使用して同じデータを送信するには、データパケットサイズを64バイトの最小フレーム長に増加させる必要がある。したがって、そのようなシステムでは、ほとんどのパケットは、64バイトのフレーム長を有する。これらのフレームは、長期間にわたってビット同期方式で送信される。これらのデータパケットのそのような連続的な一定の送信を仮定すると、デリミタは、同じ間隔または頻度で発生し得る。これは、送信信号の電力密度スペクトル内の離散的周波数における追加的な「スパイク」につながり、より高いレベルのエミッションにつながる可能性がある。この増加は、追加的ノイズ進入(またはクロストーク)のため隣接リンクの信号対ノイズ比(SNR)を潜在的または効果的に低減する。
【0016】
全二重通信システムでは、これらのデータストリームのうちの2つが組み合わされ、リンクセグメントの一方側のPHYは第1のデータストリームを送信し、リンクセグメントの他方側のPHYは同時に第2のデータストリームを送信する。典型的に、これらの2つのデータストリームのデータは、異なる多項式でスクランブル化されるので、その結果それらは、統計的に互いに対して/互いから独立しているが、一方デリミタはスクランブル化されないので、その結果それを容易に検出できる。ほとんどの場合、これらの通信システムは、デジタル適応フィルタを使用して、局所的に送信されたデータストリームのエコーキャンセル、および受信された遠端データストリームの均等化を実行するためにデジタル信号処理(DSP)を使用する。これらのデジタル適応フィルタは、エコーキャンセラ用の送信済み記号およびイコライザ用の受信済み記号についてトレーニングする必要がある。最高のトレーニング精度のために、データストリームは統計的に独立している必要がある。
【0017】
非スクランブル化デリミタの位置で任意のトレーニングが行われる場合、デリミタはスクランブル化されておらず、したがって同一であるため、デリミタシーケンスの期間中に統計的独立性はもはや提供されない。低減したトレーニング速度と組み合わせることで、PHYの通常動作中に低減したエネルギー消費およびより高いシステム全体の安定性が得られ、それにより、データストリーム(例えば、固定64バイトユーザおよび12バイトアイドルデータ)内のトレーニング記号の総数が比較的少なく、例えば、8から10個の記号のみであり、それは送信済みデータがこの量の間にフィルタトレーニング用に使用されるという状況をもたらし得る。この場合、トレーニングに使用される記号の1つが固定デリミタ内にある場合、これは、フィルタトレーニング中に重大なエラーにつながる可能性がある。
【0018】
あるシステムは、デリミタおよびランダム化データを含む完全な送信ストリームを生成する。デリミタおよびランダム化データを含む完全な送信ストリームは、その後ランダム化される。例えば、1000BASE-Tでは、開始および終了フレームデリミタがスクランブル化されたデータの周りでインターリーブされ、その後、最終的な符号ランダム化ステップが適用される。これらのシステムは、上記の欠点のいくつかを解決するが、ランダム化されたデリミタおよびデータがDCコンテンツに及ぼす影響を考慮していない。結果として、信号が絶縁回路を通過した後の信号レンジの増加のために有害な結果を与える可能性のある信号内に有意なDCコンテンツが存在し得る。
【0019】
開示された実施形態によれば、固定デリミタから生じる追加的ノイズエミッションおよびトレーニングエラーを含む、両方の問題に対する解決手段が提供される。開示されるアプローチは、デリミタをランダム化し、ランダム化されたデリミタに基づいて、ディスパリティリセット値を選択して、初期ランニング・ディスパリティを生成する。データはデリミタとは独立にランダム化され、初期ランニング・ディスパリティに従ってデリミタとともにパケット内で送信するために符号化される。これにより、デリミタが一定であり(固定され)かつ繰り返されるのを防ぎ、また、ランダム化されたデリミタによってランニング・ディスパリティが悪影響を受けないことが保証される。したがって、発光スペクトル内のスパイクまたはノイズ、および結果生じるトレーニングエラーを低減または除去することができる。いくつかの場合には、デリミタの極性を切り替えまたは変更するための擬似ランダムシーケンスが、例えば、線形フィードバックシフトレジスタ(LFSR)を使用することによって達成され得る。具体的な実装形態として、代替的に、これは、PHY内の任意の好適な一体化スクランブラまたはデスクランブラを使用することによって達成され得る。
【0020】
図1は、様々な実施形態による例示的なイーサネット通信システム100のブロック図である。具体的に、システム100は、例示的なIEEE 802.3イーサネット通信システムである。開示される実施形態は、有線IEEE 802.3イーサネットに関して考察されるが、この教示は、同様に、任意の他の有線または無線通信システムに適用可能である。
【0021】
図示のように、送信機102は、通信チャネル106を介して、受信機104のような1つ以上の受信機と通信する。送信機102および受信機104は、スイッチ、ルータ、エンドポイント(例えば、サーバ、クライアント、VOIP電話、無線アクセスポイント等のようなコンピューティングデバイス)などを含む複数のデバイスのうちのいずれか1つによって実施され得る。送信機102は、ホスト108、メディアアクセス制御(MAC)110、および物理層デバイス(PHY)112を含み、一方受信機104は、PHY114、MAC116、およびホスト118を含む。図1および説明は、送信機102および受信機104を参照するが、各デバイスは、送信機102および/または受信機104として(例えば、半二重または全二重構成で)作動することができる。
【0022】
一般に、ホスト108および118は、リンクを介して送信されるデータパケットに対して、OSIモデルの5つの最高機能層の操作性および/または機能性を可能にし得る好適な論理、回路、および/またはコードを含む。OSIモデルの各層は、直ちに高位インターフェース層にサービスを提供するため、MAC110および116は、パケットが好適にフォーマットされ、PHY112およびPHY114に通信されることを保証するために、ホスト108および118に必要なサービスを提供する。MAC110および116は、データリンク層(層2)の動作性および/または機能性の取り扱いを可能にし得る好適な論理、回路、および/またはコードを含む。MAC110および116は、例えば、IEEE 802.3(商標)標準に基づくもののようなイーサネットプロトコルを実装するように構成され得る。PHY112およびPHY114は、これらに限定しないが、IEEE 802.3cg標準の10BASE-T1L PHY標準に従う、パケット化、データ転送、およびシリアライゼーション/デシリアライゼーション(SERDES)を含む物理層要求を扱うように構成され得る。以下にさらに説明するように、データのランダム化とは独立して、デリミタおよび/またはディスパリティリセット値をランダム化するイーサネットPHYシステムのある実施形態が、PHY層に実装される。
【0023】
送信機102および受信機104は、複数のスキームのうちの1つに従って動作し得る。例えば、1つのスキームは、LPI技術の使用に関連する。一般に、LPIは、送信するものが何もないときにアクティブ通信チャネル106をサイレントにすることに依存する。それによって、通信チャネル106(例えば、リンク)がオフのときにエネルギーが節約される。リフレッシュ信号を周期的に送信して、スリープモードからの覚醒を可能にすることができる。
【0024】
本明細書で使用される場合、「イーサネットPHY」は、1つ以上のIEEE 802.3(商標)イーサネット通信プロトコルに準拠および/またはそれと互換性があるPHY回路に対応する。IEEE 802.3(商標)イーサネット通信プロトコルは、例えば、10GBASE-KX、10GBASE-KRなどのようなシングルレーンPHYプロトコル、および/または10GBASE-KX4、40GBASE-KR4、40GBASE-CR4、100GBASE-CR10、100GBASE-CR4、100GBASE-KR4、および/または100GBASE-KP4などのようなマルチレーンPHYプロトコル、および/または、IEEE 802.3(商標)イーサネット通信プロトコルに準拠し、かつ/または開発済み通信プロトコルおよび/もしくは25GBASE-CRおよび/もしくは25GBASE-KRなどのような開発中のPHY技術仕様に準拠する、10BASE-T1Lまたは他のPHY回路を含み得る。
【0025】
各PHY112回路は、それぞれの送信回路およびそれぞれの受信回路を含み、通信チャネル106を介して遠隔デバイスにデータパケットおよび/またはフレームを送信するように構成される。受信回路は、通信チャネル106内の別のデバイスからデータパケットおよび/またはフレームを受信するように構成される。各PHY112回路は、アナログ-デジタルおよびデジタル-アナログ変換、データの符号化および復号化、アナログ寄生キャンセル(例えば、クロストークキャンセル)、および受信データの復元を実行するように構成された符号化/復号化回路(図示せず)を含み得る。
【0026】
図2は、開示した実施形態による例示的なフレームジェネレータ200を示す。フレームジェネレータ200は、PHY112およびPHY114によって実装され得る。フレームジェネレータ200は、ストリームスクランブラ230、データスクランブラ220、ならびにディスパリティリセットおよびデリミタ生成器210を含む。ストリームスクランブラ230は、33ビットをランダムに生成する線形フィードバックシフトレジスタを実装し得る(Scr[32:0])。
【0027】
いくつかの実施形態において、送信機PHY112の線形フィードバックシフトレジスタまたはストリームスクランブラ230は、ランダムシーケンスによって初期化され得る。初期化後、ストリームスクランブラ230は、送信される各新しい記号に対してランダムに33ビットの新しいセットを生成する。送信機PHY112は、初期化記号ストリームを受信機PHY114に送信する。受信機PHY114は、初期化記号ストリームからストリームスクランブラ230の現在の状態を判定し、受信機PHY114におけるストリームスクランブラ230を送信機PHY112のストリームスクランブラ230と同期させる。送信機PHY112および受信機PHY114におけるストリームスクランブラ230が同期されると、ストリームスクランブラ230は、各記号に対して同じ33ビットを生成する。
【0028】
ストリームスクランブラ230の33ビットのビットの第1のサブセット231(例えば、Scr[32:0])は、データスクランブラ220に提供される。ビットの第1のサブセット231は、多項式関数を用いて生成した4つのビットを含み得る。具体的には、ビットの第1のセット231の各ビットは、ストリームスクランブラ230の33ビットのうち異なる組み合わせのビットにXOR関数を適用することによって生成され得る。例えば、ビットの第1のサブセット231は、以下のようにして生成したSy[3:0]を含む。
【0029】
Sy[0]=Scr[0];
Sy[1]=Scr[3]XOR Scr[8];
Sy[2]=Scr[6]XOR Scr[16];および
Sy[3]=Scr[9]XOR Scr[14]XOR Scr[19]XOR Scr[24]
【0030】
Scr[0]は、データスクランブラ220の最下位ビットを表し、Scr[32]は、データスクランブラ220の最上位ビットを表す。データスクランブラ220は、ユーザデータのセットを受信し、ビットの第1のサブセット231を使用して、ユーザデータをスクランブル化またはランダム化する。いくつかの場合には、データスクランブラ220は、ビットの第1のサブセット231を使用してユーザデータを符号化する。
【0031】
ディスパリティリセットおよびデリミタ生成器210は、ストリームスクランブラ230からデリミタランダム化ビット232を受信する。デリミタランダム化ビット232は、デリミタ値および/またはディスパリティリセット値の異なるサブセットを選択するために使用される。具体的には、ディスパリティリセットおよびデリミタ生成器210は、フレームの開始、フレームの終了、およびエラーを有するフレームの終了を表すための3進トリプレットを含むデリミタ値の第1のサブセットを記憶する。エラーを有するフレームの終了は、データ送信中に発生した誤った送信を表す。ディスパリティリセットおよびデリミタ生成器210は、フレームの開始、フレームの終了、およびエラーを有するフレームの終了を表すための3進トリプレットを含むデリミタ値の第2のサブセットを記憶する。いくつかの状況において、第2のサブセット内の3進トリプレットは、デリミタ値の第1のサブセット内の3進トリプレットとは逆の極性である。デリミタランダム化ビット232に基づいて、第1のサブセットまたは第2のサブセットのいずれかからデリミタ値を選択的に選ぶことによって、デリミタ値は、データから独立してランダム化またはスクランブル化される。
【0032】
ディスパリティリセットおよびデリミタ生成器210によって記憶される異なるデリミタ値の例示的なセットが、図5Aに示される。例えば、図5Aは、第1のサブセットのデリミタ値510および第2のサブセットのデリミタリセット値520を示す。デリミタ値の第1のサブセット510は、デリミタランダム化ビット232の第1の値(例えば、Sy[4]=0)に対応し、デリミタ値の第2のサブセット520は、デリミタランダム化ビット232の第2の値(例えば、Sy[4]=1)に対応する。第1のサブセットのデリミタ値510は、第1の3進トリプレット(例えば、+1、+1、-1)を有するフレームデリミタ(例えば、SSD4)の開始を含む。デリミタ値の第2のサブセット520は、デリミタ値の第1のサブセット510のフレームデリミタの開始の第1の3進トリプレットの逆極性である第2の3進トリプレット(例えば、-1、-1、+1)を有するフレームデリミタの開始(例えば、SSD4)を含む。別の例として、第1のサブセットのデリミタ値510は、第3の3進トリプレット(例えば、+1、-1、+1)を有するフレームデリミタの終了(例えば、ESD4)を含む。デリミタ値の第2のサブセット520は、デリミタ値の第1のサブセット510のフレームデリミタの終了の第3の3進トリプレットの逆極性である第4の3進トリプレット(例えば、-1、+1、-1)を有するフレームデリミタの終了(例えば、ESD4)を含む。デリミタランダム化ビット232の値に応じて、ディスパリティリセットおよびデリミタ生成器210は、フレームデリミタの開始を送信するとき、第1の3進トリプレットまたは第2の3進トリプレットのいずれかを送信するように選択する。
【0033】
デリミタランダム化ビット232は、ストリームスクランブラ230の33ビット(例えば、Scr[32:0])のうちの1つに対応し得る。デリミタランダム化ビット232は、ストリームスクランブラ230の33ビットに適用される多項式関数を使用して生成され得る。例えば、デリミタランダム化ビット232は、XOR関数をストリームスクランブラ230の33ビットのうちの異なる組み合わせのビットに適用することによって生成され得る。具体的には、デリミタランダム化ビット232は、Sy[4]=Scr[12]XOR Scr[32]によって生成されたSy[4]を含み得る(例えば、ランダム化ビットは、XOR関数をストリームスクランブラ230の33ビットのうち13番目のビット位置および33番目のビット位置に適用することによって生成される。
【0034】
いくつかの実施形態において、ディスパリティリセットおよびデリミタ生成器210は、デリミタランダム化ビット232に基づいて、ランダム化されたデリミタによって包含および送信するためのディスパリティリセット値を生成し、初期(既知)ランニング・ディスパリティを生成し得る。具体的には、ディスパリティリセットおよびデリミタ生成器210は、デリミタ値の第1のサブセットによって導入された極性を補償または相殺するための3進トリプレットを含む、ディスパリティリセット値の第1のサブセットを記憶する。ディスパリティリセットおよびデリミタ生成器210は、デリミタ値の第2のサブセットによって導入される極性を補償または相殺するための3進トリプレットを含む、ディスパリティリセット値の第2のサブセットを記憶する。デリミタランダム化ビット232(デリミタをランダム化するために使用される)に基づいて、第1のサブセットまたは第2のサブセットのいずれかからディスパリティリセット値を選択的に選ぶことによって、ディスパリティリセット値は、データから独立してランダム化またはスクランブルされ、かつ、デリミタ値のランダム化されたサブセットによって導入される極性を補償または相殺するように選択される。このようにして、ランダム化されたデリミタに基づいてディスパリティリセット値が選択され、初期ランニング・ディスパリティが生成される。
【0035】
ランニング・ディスパリティは、ネットワークを介して以前に送信されたビット極性または符号の蓄積を表す。ランニング・ディスパリティは、フレームデリミタの開始またはフレームデリミタの終了が送信された後のような、各フレームまたはフレームのシーケンスの開始および/または終了において、開始値または初期値にリセットまたは初期化され得る。この初期値または開始値は、ランダム化されたデリミタに基づいて選択し得、初期ランニング・ディスパリティを生成する。1つの実施形態において、ランニング・ディスパリティは、蓄積された符号がどの程度0からずれているかを判定するために使用される。例えば、ランニング・ディスパリティが閾値以上に0を超える場合、ランニング・ディスパリティは、後続の記号内のデータを表すために異なる3進トリプレットを選択することによって、相殺または低減される。これにより、ネットワークを介して負のビットよりも多くの正のビットを送信することが回避される。
【0036】
一例として、ランニング・ディスパリティは、デリミタランダム化ビット232に基づいて、2または3のいずれかの開始値にリセットされ得る。ランニング・ディスパリティは、開始値から開始して、ネットワークを介して送信されるビットの極性または符号を蓄積し得る。ランニング・ディスパリティの現在の値またはランニング・ディスパリティの初期ランダム化開始値(ランダム化されたデリミタに基づいて選択され得る)に基づいて、ビット極性の異なるサブセットが所与のセットのデータを表すように選択される。このようにして、送信される信号の全体的なDCオフセットを制限することができる。
【0037】
例えば、デリミタランダム化ビット232を使用して選択されたランダム化されたデリミタが、ランニング・ディスパリティを1だけ増加して終了すれば、ランダム化されたデリミタが選択される前に送信されたディスパリティリセット値は、ランニング・ディスパリティを2にリセットするように選択される。これにより、ディスパリティリセットおよびデリミタの送信によって導入された全ディスパリティが送信ディスパリティを既知の値にリセットすることが保証される。次に、データを後続の記号に表すために異なる3進トリプレットを選択することによって、ランダム化されたデータを3進トリプレットにどのように符号化するかを制御するために、この既知の値を使用することができる。
【0038】
一例において、ランニング・ディスパリティの初期値または開始値は、DISPRES関数を使用して計算される。DISPRES関数は、デリミタランダム化ビット232の値に基づいて、8つの可能なDISPRESET3のトリプル3進記号のうちの1つを返す。8つの可能なDISPRESET3のトリプル3進記号の例示的な出力を図5Bに示す。DISPRES関数が、デリミタランダム化ビット232の値に基づくため、ランニング・ディスパリティの開始値がランダム化され、これによりデータもまたランダムに選ばれかつ選択された初期ランニング・ディスパリティに従って、ランダム化および符号化される。
【0039】
一例では、RND_SSD4関数は、ディスパリティリセットおよびデリミタ生成器210によって実装される。RND_SSD4関数は、デリミタランダム化ビット232に基づいてフレームデリミタの開始を生成する。具体的には、RND_SSD4関数は、以前の記号間隔のデリミタランダム化ビット232(以前の記号で送信されたディスパリティリセット値を選択するために使用されるデリミタランダム化ビット232)を受信し、かつ、フレームデリミタの開始用の対応する3進トリプレット(例えば、デリミタ値のサブセット510またはデリミタ値のサブセット520から選択される、図5A)および関連付けられた送信ディスパリティリセット値を返す。返された送信ディスパリティリセット値は、以前の記号間隔のデリミタランダム化ビット232の値に依存し、かつ、以前の記号間隔のデリミタランダム化ビット232の値が0であった場合、2の値を表し得、以前の記号間隔のデリミタランダム化ビット232の値が1であった場合、3の値を表し得る。
【0040】
一例において、RND_ESD4関数は、ディスパリティリセットおよびデリミタ生成器210によって実装される。RND_ESD4関数は、デリミタランダム化ビット232に基づいてフレームデリミタの終了を生成する。具体的には、RND_ESD4関数は、以前の記号間隔のデリミタランダム化ビット232(以前の記号内で送信されたディスパリティリセット値を選択するために使用されたデリミタランダム化ビット232)を受信し、かつ、フレームデリミタの終了のための対応する3進トリプレット(例えば、デリミタ値のサブセット510またはデリミタ値のサブセット520から選択される、図5A)および関連付けられた送信ディスパリティリセット値を返す。返された送信ディスパリティリセット値は、以前の記号間隔のデリミタランダム化ビット232の値に依存し、以前の記号間隔のデリミタランダム化ビット232の値が0であった場合、2の値を表し得、以前の記号間隔のデリミタランダム化ビット232の値が1であった場合、3の値を表し得る。
【0041】
一例において、RND_ESD_ERR4の関数は、ディスパリティリセットおよびデリミタ生成器210によって実装される。RND_ESD_ERR4の関数は、デリミタランダム化ビット232に基づいて、フレームデリミタ内にエラーを生成する。具体的には、RND_ESD_ERR4の関数は、以前の記号間隔のデリミタランダム化ビット232(以前の記号内で送信されたディスパリティリセット値を選択するために使用されるデリミタランダム化ビット232)を受信し、かつ、フレームデリミタ内のエラーに対する対応する3進トリプレット(例えば、デリミタ値のサブセット510またはデリミタ値のサブセット520から選択される、図5A)および関連付けられた送信ディスパリティリセット値を返す。返された送信ディスパリティリセット値は、以前の記号間隔のデリミタランダム化ビット232の値に依存し、以前の記号間隔のデリミタランダム化ビット232の値が0であった場合、2の値を表し得、以前の記号間隔のデリミタランダム化ビット232の値が1であった場合、3の値を表し得る。
【0042】
ディスパリティリセットおよびデリミタ生成器210のランダム化された出力ディスパリティリセット値およびデリミタは、データスクランブラ220からのスクランブル化またはランダム化されたデータと(例えば、線形的に)組み合わされ、パケットまたはフレームを生成する。その後パケットまたはフレームは、ネットワークを介して別のPHYデバイスに送信される。例示的なフレームシーケンスを図3に示す。図3に示すように、フレームシーケンスは、デリミタ1 310(例えば、フレームデリミタの開始)、ユーザデータ320(例えば、スクランブル化またはランダム化されたユーザデータ)、およびデリミタ2 330(例えば、フレームデリミタの終了)を含む。
【0043】
デリミタの例を図4に示す。デリミタ1 310は、4つのセグメント、COMMA1(例えば、すべてゼロを有する)セグメント、COMMA2(例えば、すべてゼロを有する)セグメント、DISPRESET3 410セグメント(ディスパリティリセット値を含む)、および特定のデリミタ値412(例えば、フレームSSD4の開始、フレームESD4の終了、またはエラーESD_ERR4値を有するフレームの終了)を含み得る。DISPRESET3 410セグメントは、デリミタ値412の前に送信されているように示されているが、DISPRESET3 410は、デリミタ310内でデリミタ値412の後に送信され得る。
【0044】
いくつかの実施形態において、デリミタ1 310は、「0」の値を有する以前の記号間隔のデリミタランダム化ビット232に応答して、SSD4の値(例えば、3進トリプレット+1、+1、-1を有する)に対応し得る。この場合、デリミタ値のDISPRESET3 410セグメントは、SSD4の値のビット極性を相殺するために、以前の記号間隔のデリミタランダム化ビット232に基づいて選択され得る。例えば、DISPRESET3 410の値は、ディスパリティリセット値の第1のセット530から図5Bに従って選択される。この場合、DISPRESET3 410の値は、SSD4の値(+1、+1、-1)の極性を相殺または補償し、かつ、ランニング・ディスパリティを2の開始値にリセットする3進トリプレット(-1、0、1)、(-1、0、0)、(-1、0、-1)、または(-1、-1、-1)のうちの1つであり得る。次に、データは、ランニング・ディスパリティのこの開始値の2に従い符号化される。
【0045】
デリミタ2 330は、「1」の値を有する以前の記号間隔のデリミタランダム化ビット232に応答して、ESD4の値(例えば、3進トリプレット-1、+1、-1を有する)に対応し得る。このような場合、デリミタ値のDISPRESET3 410セグメントは、ESD4の値のビット極性を相殺するために、以前の記号間隔のデリミタランダム化ビット232に基づいて選択され得る。例えば、DISPRESET3 410は、ディスパリティリセット値の第2のセット540から図5Bに従って選択される。このような場合、DISPRESET3 410の値は、SSD4の値(-1、+1、-1)の極性を相殺または補償し、ランニング・ディスパリティを開始値の3にリセットする3進トリプレット(1、1、1)、(1、0、1)、(1、0、0)、または(1、0、-1)のうちの1つであり得る。このようにして、デリミタ310の一部として送信されるデリミタ値412がランニング・ディスパリティを1だけ増加させて終了した場合、DISPRESET3 410の値は、ランニング・ディスパリティを2にリセットするように選択される。デリミタ310の一部として送信されるデリミタ値412がランニング・ディスパリティを1だけ減少させて終了する場合、DISPRESET3 410の値は、ランニング・ディスパリティを3にリセットするように選択される。
【0046】
いくつかの実施形態において、デリミタ310の一部として送信されるデリミタ値412が、ランニング・ディスパリティを1だけ増加させて終了する場合、DISPRESET3 410の値は、ランニング・ディスパリティを3にリセットするように選択され、デリミタ310の一部として送信されるデリミタ値412が、ランニング・ディスパリティを1だけ減少させて終了する場合、DISPRESET3 410の値は、ランニング・ディスパリティを2にリセットするように選択される。
【0047】
図6は、開示された実施形態にかかるデリミタによって生じる相関およびスペクトルスパイクを補償するための例示的プロセス690を示す。プロセス690は、送信機および受信機のPHYデバイスにおいてPHYコントローラによって実行される様々な動作を含む。これらの動作は、PHYコントローラ上のそれぞれのプロセッサによって実行され得る非一時的コンピュータ可読媒体に非一時的命令として記憶され得る。
【0048】
動作691において、送信機PHYコントローラは、ネットワーク接続を介して受信機PHYコントローラに送信するためのデータにアクセスする。例えば、ディスパリティリセットおよびデリミタ生成器210は、データ(アイドルまたはユーザデータ)を受信し、データスクランブラ220によってデータを処理する。
【0049】
動作692において、送信機PHYコントローラは、データをランダム化することとは独立して、デリミタをランダム化する。例えば、ディスパリティリセットおよびデリミタ生成器210は、データをランダム化するデータスクランブラ220とは独立して、ディスパリティリセットおよびデリミタ生成器210を使用して、デリミタをランダム化する。具体的には、ディスパリティリセットおよびデリミタ生成器210は、デリミタランダム化ビット232(例えば、Sy[4]ビット位置5)をストリームスクランブラ230から受信し、データスクランブラ220は、ビットの第1のサブセット231をストリームスクランブラから受信する。ディスパリティリセットおよびデリミタ生成器210は、デリミタランダム化ビット232に基づいて、異なる3進トリプレットを使用して、デリミタの同じセットをそれぞれ表すデリミタ値の2つのサブセットを選択する。
【0050】
動作693において、PHYコントローラは、ランダム化されたデリミタに基づいて、ディスパリティリセット値を選択し、初期ランニング・ディスパリティを生成する。例えば、ディスパリティリセットおよびデリミタ生成器210は、デリミタ値の第1のサブセットによって導入される、極性を補償または相殺するための3進トリプレットを含むディスパリティリセット値の第1のサブセットを記憶する。ディスパリティリセットおよびデリミタ生成器210は、デリミタ値の第2のサブセットによって導入される、極性を補償または相殺するための3進トリプレットを含むディスパリティリセット値の第2のサブセットを記憶する。ディスパリティリセットおよびデリミタ生成器210は、デリミタランダム化ビット232(デリミタをランダム化するために使用される)に基づいて、第1のサブセットまたは第2のサブセットのいずれかからディスパリティリセット値を選択的に選ぶ。ランダム化されたデリミタとともに送信されるとき、このディスパリティリセット値は、初期既知値を有するランニング・ディスパリティをもたらす。このようにして、ランダム化されたデリミタに基づいて、ディスパリティリセット値が選択され、初期ランニング・ディスパリティが生成される。
【0051】
オペレーション694において、PHYコントローラは、初期ランニング・ディスパリティに基づいてランダム化されたデータを符号化する。例えば、ディスパリティリセットおよびデリミタ生成器210は、初期ランニング・ディスパリティに基づいて、後続の記号内のランダム化されたデータを符号化するために異なる3進トリプレットを選択する。
【0052】
動作695において、PHYコントローラは、符号化されたランダム化されたデータおよびランダム化されたデリミタを含むフレームを生成する。例えば、ディスパリティリセットおよびデリミタ生成器210は、符号化されたランダム化されたデータおよびランダム化されたデリミタを結合または多重化する。
【0053】
動作696において、送信機PHYコントローラは、フレームを受信機PHYコントローラに送信する。例えば、送信機PHY112のディスパリティリセットおよびデリミタ生成器210は、通信チャネル106を介してフレームを受信機PHY114に送信する。
【0054】
図7は、本明細書で考察される技術(例えば、方法論)のうちのいずれか1つ以上を実行可能な、例示的なマシン700のブロック図を示す。代替的な実施形態において、マシン700は、スタンドアロンデバイスとして動作し得、または他のマシンに接続され得る(例えば、ネットワーク化され得る)。ネットワーク化された展開において、マシン700は、サーバクライアントネットワーク環境において、サーバマシン、クライアントマシン、またはその両方の範囲内で動作し得る。一例において、マシン700は、ピアツーピア(P2P)(または他の分散型)ネットワーク環境において、ピアマシンとして作動し得る。マシン700は、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、パーソナルデジタルアシスタント(PDA)、携帯電話、ウェブアプライアンス、IoTデバイス、自動車システム、航空宇宙システム、またはそのマシンによって取られるべき作用を特定する命令(シーケンシャルまたはそれ以外)を実行することができる任意のマシンであり得る。また、単一のマシンのみが例示されるが、「マシン」という用語はまた、クラウドコンピューティング、サービスとしてのソフトウェア(SaaS)、他のコンピュータクラスタ構成のような、本明細書で考察される方法論のうちのいずれか1つ以上を実行するための命令のセット(または複数のセット)を個別にまたは一緒に実行するマシンの任意の集合を含むと解釈されるべきである。
【0055】
本明細書で説明されるように、例は、論理、構成要素、デバイス、パッケージ、またはメカニズムを含むか、またはそれによって動作し得る。回路構成は、ハードウェア(例えば、単純な回路、ゲート、論理など)を含む有形のエンティティに実装された回路の集合(例えば、セット)である。回路構成メンバーシップは、経時的に柔軟性があり、ハードウェアの変化の下にあり得る。回路構成は、動作時に、単独または組み合わせて特定のタスクを実行することができるメンバーを含む。一例において、回路構成のハードウェアは、特定の動作(例えば、ハード配線)を実行するように不変に設計され得る。一例において、回路構成のハードウェアは、特定の動作の命令を符号化するために、物理的に修正された(例えば、磁気的、電気的、不変質量粒子の可動配置など)コンピュータ可読媒体を含む、可変接続された物理的構成要素(例えば、実行ユニット、トランジスタ、単純回路など)を含み得る。物理的構成要素を接続する際、ハードウェア構成の根底の電気的特性は、例えば、絶縁体から導体、またはその逆に変更される。命令により、参加するハードウェア(例えば、実行ユニットまたはローディング機構)が、動作中に特定のタスクの一部を実行するために、可変接続を介してハードウェア内に回路構成のメンバーを作成することが可能となる。したがって、コンピュータ可読媒体は、デバイスが動作しているときに、回路構成の他の構成要素に通信可能に接続される。一例において、任意の物理的構成要素が、2つ以上の回路構成の2つ以上のメンバー内で使用され得る。例えば、動作を通じて、実行ユニットは、ある時点において第1の回路構成の第1の回路内で使用され、かつ、第1の回路構成内の第2の回路によって再使用されるか、または異なる時間において第2の回路構成内の第3の回路によって再使用され得る。
【0056】
マシン(例えば、コンピュータシステム)700は、ハードウェアプロセッサ702(例えば、中央処理装置(CPU)、グラフィック処理装置(GPU)、ハードウェアプロセッサコア、またはメモリコントローラのようなそれらの任意の組み合わせなど)、メインメモリ704、およびスタティックメモリ706を含んでよく、それらの一部またはすべては、インターリンク(例えば、バス)708を介して互いに通信し得る。マシン700は、ディスプレイデバイス710、英数字入力デバイス712(例えば、キーボード)、およびユーザインターフェース(UI)ナビゲーションデバイス714(例えば、マウス)をさらに含み得る。一例において、ディスプレイデバイス710、入力デバイス712、およびUIナビゲーションデバイス714は、タッチスクリーンディスプレイであり得る。マシン700は、追加的に、マシン可読媒体722(例えば、ドライブユニット)、信号生成デバイス718(例えば、スピーカ)、ネットワークインターフェースデバイス720、および、グローバルポジショニングシステム(GPS)センサ、ウイングセンサ、マシンデバイスセンサ、温度センサ、ICPセンサ、ブリッジセンサ、オーディオセンサ、産業用センサ、コンパス、加速度センサ、または他のセンサのような1つ以上のセンサ716を含み得る。マシン700は、1つ以上の周辺デバイス(例えば、プリンタ、カードリーダなど)と通信しまたはそれを制御するために、シリアル(例えば、ユニバーサルシリアルバス(USB)))、パラレル、または他の有線もしくは無線接続(例えば、赤外線(IR)、近距離無線通信(NFC)など)のような出力コントローラ728を含み得る。
【0057】
マシン可読媒体722は、本明細書に記載の技術または機能のうちのいずれか1つ以上を実施しまたはそれらによって利用される、データ構造または命令724の1つ以上のセット(例えば、ソフトウェア)が記憶されるストレージデバイス721を含み得る。命令724はまた、マシン700によるその実行中に、メインメモリ704内、スタティックメモリ706内、またはハードウェアプロセッサ702内に、完全にまたは少なくとも部分的に属し得る。一例において、ハードウェアプロセッサ702、メインメモリ704、スタティックメモリ706、またはストレージデバイス721の1つまたは任意の組み合わせが、マシン可読媒体722を構成し得る。
【0058】
マシン可読媒体722は、単一の媒体として示されているが、「マシン可読媒体」という用語は、1つ以上の命令724を記憶するように構成された単一の媒体または複数の媒体(例えば、集中型または分散型データベース、または関連付けられたキャッシュおよびサーバ)を含み得る。
【0059】
「マシン可読媒体」という用語は、マシン700による実行のための一時的または非一時的な命令を記憶、符号化、または担持することができ、マシン700に本開示の技術のうちのいずれか1つ以上を実行させ、または、この命令によって使用されもしくは関連付けられるデータ構造を記憶、符号化、または担持することができる、任意の一時的または非一時的な媒体を含み得る。非限定的なマシン可読媒体の例として、固体メモリ、光学および磁気媒体が挙げられる。一例において、大容量マシン可読媒体は、不変(例えば、静止)質量を有する複数の粒子を含むマシン可読媒体を含む。したがって、大容量マシン可読媒体は、一時的な伝播信号ではない。大容量マシン可読媒体の具体的な例として、半導体メモリデバイス(例えば、電気的プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM))およびフラッシュメモリデバイスのような不揮発性メモリデバイス、内部ハードディスクおよびリムーバブルディスクのような磁気ディスク、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクが挙げられる。
【0060】
ストレージデバイス721に記憶される命令724(例えば、ソフトウェア、プログラム、オペレーティングシステム(OS)など)または他のデータへ、プロセッサ702によって使用するためにメモリ704によってアクセスすることができる。メモリ704(例えば、DRAM)は、典型的に高速であるが、揮発性なので、「オフ」状態の間を含む長期記憶に好適であるストレージデバイス721(例えば、SSD)とは異なるタイプのストレージである。ユーザまたはマシン700によって使用される命令724またはデータは、プロセッサ702によって使用するためにメモリ704内に典型的に読み込まれる。メモリ704がフルであるとき、ストレージデバイス721から仮想空間が割り当てられ、メモリ704を補充することができるが、ストレージデバイス721は、典型的に、メモリ704よりも遅く、書き込み速度は、典型的に、読み取り速度の少なくとも2倍遅いので、仮想メモリの使用は(例えば、DRAMなどのメモリ704とは対照的に)、ストレージデバイスの待ち時間のためユーザエクスペリエンスを大幅に低減し得る。また、仮想メモリのためのストレージデバイス721の使用により、ストレージデバイス721の使用可能寿命は大幅に短縮し得る。
【0061】
命令724は、さらに、多くの転送プロトコル(例えば、フレームリレー、インターネットプロトコル(IP)、送信制御プロトコル(TCP)、ユーザデータグラムプロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)など)のいずれか1つを利用するネットワークインターフェースデバイス720を介して、送信媒体を使用する通信ネットワーク726上で送信または受信され得る。通信ネットワークの例として、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、パケットデータネットワーク(例えば、インターネット)、携帯電話ネットワーク(例えば、セルラーネットワーク)、従来型電話(POTS)ネットワーク、および無線データネットワーク(例えば、Wi-Fi(登録商標)として知られる標準の米国電気電子学会(IEEE)802.11ファミリー、WiMax(登録商標)として知られる標準のIEEE 802.16ファミリー、標準のIEEE 802.15.4ファミリー、ピアツーピア(P2P)ネットワークなど)を含み得る。一例では、ネットワークインターフェースデバイス720は、通信ネットワーク726に接続する1つ以上の物理ジャック(例えば、イーサネット、同軸、または電話ジャック)または1つ以上のアンテナを含み得る。一例において、ネットワークインターフェースデバイス720は、一入力多出力(SIMO)、多入力多出力(MIMO)、または多入力一出力(MISO)技術のうちの少なくとも1つを使用して無線通信するために複数のアンテナを含み得る。「送信媒体」という用語は、マシン700による実行のための命令を記憶、符号化、または担持することができる任意の有形または無形の媒体を含み、そのようなソフトウェアの通信を容易にするためのデジタルまたはアナログ通信信号または他の有形または無形の媒体を含むと解釈されるべきである。
【0062】
本明細書に記載されている非限定的な態様または例のそれぞれは、それ自体で成立し得、または様々な順列または組み合わせによって、1つ以上の他の例と組み合わされ得る。
【0063】
上述した詳細な説明は、詳細な説明の一部を形成する添付図面の参照を含む。図面は、本発明の主題を実施することができる具体的な実施形態を実例として示す。これらの実施形態は、本明細書では「例」とも称される。この例は、図示または説明されたものに加えて、要素を含むことができる。しかしながら、本発明者らは、図示または説明されたそれらの要素のみが提供される例も考慮している。さらに、本発明者らは、特定の例(もしくはその1つ以上の態様)に関して、または本明細書に図示されまたは説明された他の例(またはその1つ以上の態様)に関してのいずれかで、図示されまたは説明されたそれらの要素(またはその1つ以上の態様)の任意の組み合わせまたは順列を使用する例も考慮している。
【0064】
本明細書と参照により組み込まれる任意の文書との間に不整合な用法がある場合には、本明細書の用法が優先される。
【0065】
本明細書において、「a」または「an」という用語は、特許文書で一般的であるように、「少なくとも1つ」または「1つ以上」の他の例または用法とは無関係に、1または1を超える数を含むように使用される。本明細書において、「または」という用語は、特に指定のない限り、「AまたはB」が「AであるがBではない」、「BであるがAではない」、および「AおよびB」を含むように、非排他的な「または」を指すために使用される。本明細書において、「含む」および「そこで」という用語は、それぞれ用語「備える」および「ところの」と同等の平易な英語として使用される。また、以下の態様において、「含む」および「備える」という用語はオープンエンドであり、すなわち、ある態様においてこのような用語の後に列挙されたものに加えて、要素を含むシステム、デバイス、物品、組成物、製剤、またはプロセスは、依然としてその態様の範囲内にあるとみなされる。さらに、以下の態様において、「第1」、「第2」、および「第3」などの用語は単に標識として使用され、その対象に数値的な要求を課すことを意図するものではない。
【0066】
本明細書に記載される方法の例は、少なくとも部分的にマシンまたはコンピュータに実装することができる。いくつかの例は、上述した例で説明したような方法を実行するために電子デバイスを構成するように動作可能な一時的または非一時的命令によって符号化されたコンピュータ可読媒体またはマシン可読媒体を含むことができる。このような方法の実装形態は、マイクロコード、アセンブリ言語コード、高位レベル言語コードなどのようなコードを含み得る。このようなコードは、様々な方法を実行するための一時的または非一時的なコンピュータ可読命令を含むことができる。このコードは、コンピュータプログラム製品の一部を形成し得る。また、一例において、このコードは、実行中または他の時点において、1つ以上の揮発性、非一時的または不揮発性の有形のコンピュータ可読媒体上に有形に記憶され得る。これらの有形のコンピュータ可読媒体の例として、これらに限定しないが、ハードディスク、リムーバブル磁気ディスク、リムーバブル光ディスク(例えば、コンパクトディスクおよびデジタルビデオディスク)、磁気カセット、メモリカードまたはスティック、ランダムアクセスメモリ(RAM)、読出し専用メモリ(ROM)などが挙げられる。
【0067】
上記の説明は例示を意図しており、限定することを意図していない。例えば、上述の例(またはその1つ以上の態様)は、互いに組み合わせて使用し得る。上記の説明をレビューした当業者によって、他の実施形態が使用され得る。要約は、読者が技術的開示の性質を迅速に確認することを可能にするために、37C.F.R§1.72(b)に準拠して提供される。要約は、態様の範囲または意味を解釈または限定するために使用されないということを理解した上で提出される。また、上述した発明を実施するための形態において、開示を簡素化するために、様々な特徴が一緒にグループ化され得る。むしろ、発明の主題は、特定の開示された実施形態のすべての特徴を必ずしも含まなくてもよい。したがって、以下の態様は、例または実施形態として詳細な説明に組み込まれ、各態様は別個の実施形態としてそれ自体で成立し、かつそのような実施形態は、様々な組み合わせまたは順列で互いに組み合わされ得ることが考慮されている。本発明の主題の範囲は、添付の態様を参照し、その態様に与えられる権利範囲と均等の全範囲とともに、判定されるべきである。
【符号の説明】
【0068】
100 システム
102 送信機
104 受信機
106 通信チャネル
108 ホスト
110 メディアアクセス制御(MAC)
112 物理層デバイス(PHY)
114 物理層デバイス(PHY)
116 メディアアクセス制御(MAC)
118 ホスト
図1
図2
図3
図4
図5A
図5B
図6
図7
【手続補正書】
【提出日】2022-04-21
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
方法であって、
送信機物理層(PHY)コントローラによって、ネットワーク接続を介した、受信機PHYコントローラへの送信のためのデータにアクセスすることと、
前記データのランダム化とは独立して、デリミタをランダム化することと、
初期ランニング・ディスパリティを生成するように、前記ランダム化されたデリミタに基づいて、ディスパリティリセット値を選択することと、
前記初期ランニング・ディスパリティに基づいて、前記ランダム化されたデータを符号化することと、
前記符号化されたランダム化されたデータおよび前記ランダム化されたデリミタを含むフレームを生成することと、
前記フレームを、前記送信機PHYコントローラから前記受信機PHYコントローラに送信することと、を含む、方法。
【請求項2】
前記ネットワークは、イーサネット有線接続を含み、前記データは、10BASE-T1L実装に従って、前記ネットワークを介して送信される、請求項1に記載の方法。
【請求項3】
前記送信機PHYコントローラ内のスクランブラからビットのセットを取得することをさらに含む、請求項1または2に記載の方法。
【請求項4】
前記ビットのセットのうちの2つ以上のビットの関数として、デリミタランダム化ビットを生成することをさらに含む、請求項3に記載の方法。
【請求項5】
前記関数は、XOR演算を含み、前記2つ以上のビットは、13番目の位置のビットおよび33番目の位置のビットを含む、請求項4に記載の方法。
【請求項6】
デリミタ値の第1のセットおよびデリミタ値の第2のセットを記憶することと、
前記ランダム化ビットの値を判定することと、
前記ランダム化ビットの前記値の判定に応答して、前記デリミタ値の第1のセットまたは前記デリミタ値の第2のセットのいずれかから前記デリミタを選択することと、をさらに含む、請求項4または5に記載の方法。
【請求項7】
前記ランダム化ビットが第1の値に対応するという判定に応答して、前記デリミタ値の第1のセットから前記デリミタを選択することと、
前記値が第2の値に対応するという判定に応答して、前記デリミタ値の第2のセットから前記デリミタを選択することと、をさらに含む、請求項6に記載の方法。
【請求項8】
前記デリミタ値の第1のセットは、フレームの開始、フレームの終了、およびエラーを有するフレームの終了を表す、3進トリプレットを含み、前記デリミタ値の第2のセットは、前記フレームの開始、前記フレームの終了、および前記エラーを有するフレームの終了を表す、3進トリプレットを含む、請求項6または7に記載の方法。
【請求項9】
前記デリミタ値の第2のセットの前記3進トリプレットと、前記デリミタ値の第1のセットの前記3進トリプレットとは、極性が逆である、請求項8に記載の方法。
【請求項10】
前記デリミタランダム化ビットは、前記デリミタの前に送信される記号に対して生成され、
ディスパリティリセット値の第1のセットおよびディスパリティリセット値の第2のセットを記憶することと、
前記ランダム化ビットの前記値の判定に応答して、前記ディスパリティリセット値の第1のセットまたは前記ディスパリティリセット値の第2のセットのいずれかから前記ディスパリティリセット値を選択することと、をさらに含む、請求項6~9のいずれか一項に記載の方法。
【請求項11】
前記選択されたディスパリティリセット値は、以前に送信された記号のランニング・ディスパリティに基づいて、送信された記号のストリーム内のDCコンテンツを低減させるように、前記選択されたデリミタに対応する3進トリプレットの極性を均衡化させるように構成される、請求項10に記載の方法。
【請求項12】
フレームの開始またはフレームの終了もしくはエラーを有するフレームの終了を含むデリミタ記号シーケンスを送信した後に、前記ランニング・ディスパリティに対する開始値をランダム化することをさらに含む、請求項1~11のいずれか一項に記載の方法。
【請求項13】
前記デリミタは、線形フィードバックシフトレジスタを使用してランダム化される、請求項1~12のいずれか一項に記載の方法。
【請求項14】
システムであって、
信機物理層(PHY)コントローラによって、ネットワーク接続を介した、受信機PHYコントローラへの送信のためのデータにアクセスするための手段と、
前記データのランダム化とは独立して、デリミタをランダム化するための手段と、
初期ランニング・ディスパリティを生成するように、前記ランダム化されたデリミタに基づいてディスパリティリセット値を選択するための手段と、
前記初期ランニング・ディスパリティに基づいて、前記ランダム化されたデータを符号化するための手段と、
前記符号化されたランダム化されたデータおよび前記ランダム化デリミタを含むフレームを生成するための手段と、
前記フレームを、前記送信機PHYコントローラから前記受信機PHYコントローラに送信するための手段と、を含む、システム。
【請求項15】
前記ネットワークは、イーサネット有線接続を含み、前記データは、10BASE-T1Lの実装に従って前記ネットワークを介して送信される、請求項14に記載のシステム。
【国際調査報告】