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

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

▶ ホアウェイ・テクノロジーズ・カンパニー・リミテッドの特許一覧

特表2025-501011符号化方法、復号方法、装置、デバイス、システム、及び可読記憶媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-01-15
(54)【発明の名称】符号化方法、復号方法、装置、デバイス、システム、及び可読記憶媒体
(51)【国際特許分類】
   H04L 1/00 20060101AFI20250107BHJP
   H03M 13/37 20060101ALI20250107BHJP
【FI】
H04L1/00 F
H04L1/00 B
H03M13/37
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024540639
(86)(22)【出願日】2022-12-27
(85)【翻訳文提出日】2024-08-08
(86)【国際出願番号】 CN2022142359
(87)【国際公開番号】W WO2023131003
(87)【国際公開日】2023-07-13
(31)【優先権主張番号】202210007010.2
(32)【優先日】2022-01-05
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】202210114845.8
(32)【優先日】2022-01-30
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】504161984
【氏名又は名称】ホアウェイ・テクノロジーズ・カンパニー・リミテッド
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】ヘ、シアン
(72)【発明者】
【氏名】ワン、シンユアン
(72)【発明者】
【氏名】レン、ハオ
【テーマコード(参考)】
5K014
【Fターム(参考)】
5K014BA05
(57)【要約】
本願は、通信技術の分野に属し、符号化方法、復号方法、装置、デバイス、システム、及び可読記憶媒体を開示する。符号化方法は:制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループを取得す段階;及び符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける前記制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループ内に含まれる前記データブロックに対して前記第1の符号化を実行することによって取得される、を備える。復号方法は:ターゲット符号ブロックを取得する段階;及び前記ターゲット符号ブロックのタイプ及びデータユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、符号ストリームブロックの任意のグループ内に含まれる前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得される、を備える。
【特許請求の範囲】
【請求項1】
符号ストリームブロックの2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、
を備える、符号化方法。
【請求項2】
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
前記データユニットは、符号ストリームブロックの前記2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、請求項1に記載の方法。
【請求項3】
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;
前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す、請求項1に記載の方法。
【請求項4】
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す、請求項3に記載の方法。
【請求項5】
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、請求項3又は4に記載の方法。
【請求項6】
前記符号ブロックIDは、ハミング距離保護を有する、請求項3~5のいずれか1項に記載の方法。
【請求項7】
前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む、請求項3~6のいずれか1項に記載の方法。
【請求項8】
前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される、請求項1~7のいずれか1項に記載の方法。
【請求項9】
前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される、請求項8に記載の方法。
【請求項10】
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、請求項1~9のいずれか1項に記載の方法。
【請求項11】
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、請求項10に記載の方法。
【請求項12】
符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである、請求項1~11のいずれか1項に記載の方法。
【請求項13】
前記ターゲット符号ブロックを取得した後、前記方法は:
前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得する段階;及び
前記第1のデータを送信する段階
を更に備える、請求項1~12のいずれか1項に記載の方法。
【請求項14】
方法は:
ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの前記2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える、復号方法。
【請求項15】
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である、請求項14に記載の方法。
【請求項16】
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;
符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である、請求項14に記載の方法。
【請求項17】
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;
符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される、請求項16に記載の方法。
【請求項18】
符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される、請求項16又は17に記載の方法。
【請求項19】
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、請求項16~18のいずれか1項に記載の方法。
【請求項20】
前記符号ブロックIDは、ハミング距離保護を有する、請求項16~19のいずれか1項に記載の方法。
【請求項21】
前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;
符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す、請求項14に記載の方法。
【請求項22】
前記ターゲット符号ブロックを取得する前記段階は:
第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び
前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正処理である、
を有する、請求項14~21のいずれか1項に記載の方法。
【請求項23】
前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである、請求項22に記載の方法。
【請求項24】
ターゲット符号ブロックを取得する前記段階は:
第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び
前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、
を有する、請求項14~21のいずれか1項に記載の方法。
【請求項25】
前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである、請求項24に記載の方法。
【請求項26】
符号ストリームブロックの前記2個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される、請求項14~21のいずれか1項に記載の方法。
【請求項27】
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである、請求項26に記載の方法。
【請求項28】
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される、請求項26に記載の方法。
【請求項29】
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、請求項14~28のいずれか1項に記載の方法。
【請求項30】
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、請求項29に記載の方法。
【請求項31】
符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIフォーマットである、請求項14~30のいずれか1項に記載の方法。
【請求項32】
符号ストリームブロックの2個のグループを取得するように構成された取得モジュール、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得するように構成された第1の符号化モジュール、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける前記制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、
を備える、符号化装置。
【請求項33】
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
前記データユニットは、符号ストリームブロックの前記2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、請求項32に記載の装置。
【請求項34】
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す、請求項32に記載の装置。
【請求項35】
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す、請求項34に記載の装置。
【請求項36】
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、請求項34又は35に記載の装置。
【請求項37】
前記符号ブロックIDは、ハミング距離保護を有する、請求項34~36のいずれか1項に記載の装置。
【請求項38】
前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む、請求項34~37のいずれか1項に記載の装置。
【請求項39】
前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される、請求項32~38のいずれか1項に記載の装置。
【請求項40】
前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される、請求項39に記載の装置。
【請求項41】
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、請求項32~40のいずれか1項に記載の装置。
【請求項42】
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、請求項41に記載の装置。
【請求項43】
符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである、請求項32~42のいずれか1項に記載の装置。
【請求項44】
前記装置は:
前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得するように構成された第2の符号化モジュール;及び
前記第1のデータを送信するように構成された送信モジュール
を更に備える、請求項32~43のいずれか1項に記載の装置。
【請求項45】
ターゲット符号ブロックを取得するように構成された取得モジュール、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得するように構成された復号モジュール、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える、復号装置。
【請求項46】
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である、請求項45に記載の装置。
【請求項47】
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;
符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である、請求項45に記載の装置。
【請求項48】
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される、請求項47に記載の装置。
【請求項49】
符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される、請求項47又は48に記載の装置。
【請求項50】
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、請求項47~49のいずれか1項に記載の装置。
【請求項51】
前記符号ブロックIDは、ハミング距離保護を有する、請求項47~50のいずれか1項に記載の装置。
【請求項52】
前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す、請求項45に記載の装置。
【請求項53】
前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正処理である、を行うように構成されている、請求項45~52のいずれか1項に記載の装置。
【請求項54】
前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである、請求項53に記載の装置。
【請求項55】
前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、を行うように構成されている、請求項45~52のいずれか1項に記載の装置。
【請求項56】
前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである、請求項55に記載の装置。
【請求項57】
符号ストリームブロックの前記2個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される、請求項45~52のいずれか1項に記載の装置。
【請求項58】
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである、請求項57に記載の装置。
【請求項59】
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される、請求項57に記載の装置。
【請求項60】
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、請求項45~59のいずれか1項に記載の装置。
【請求項61】
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、請求項60に記載の装置。
【請求項62】
符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIフォーマットである、請求項45~61のいずれか1項に記載の装置。
【請求項63】
ネットワークデバイスであって、前記ネットワークデバイスは、プロセッサを備え、前記プロセッサは、メモリに結合されており、前記メモリは、少なくとも1つのプログラム命令又はコードを記憶し、前記少なくとも1つのプログラム命令又はコードは、前記プロセッサによって、前記ネットワークデバイスが請求項1~31のいずれか1項に記載の方法を実装することを可能にするようにロード及び実行される、ネットワークデバイス。
【請求項64】
通信システムであって、前記システムは、第1のネットワークデバイス及び第2のネットワークデバイスを備え、前記第1のネットワークデバイスは、請求項1~13のいずれか1項に記載の方法を実行するように構成されており、前記第2のネットワークデバイスは、請求項14~31のいずれか1項に記載の方法を実行するように構成されている、通信システム。
【請求項65】
コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体は、少なくとも1つのプログラム命令又はコードを記憶し;前記プログラム命令又は前記コードがプロセッサによってロード及び実行されると、コンピュータが、請求項1~31のいずれか1項に記載の方法を実装することを可能にされる、コンピュータ可読記憶媒体。
【請求項66】
コンピュータプログラム製品であって、前記コンピュータプログラム製品は、コンピュータプログラムコードを備え;前記コンピュータプログラムコードがコンピュータ上で実行されると、前記コンピュータが、請求項1~31のいずれか1項に記載の方法を実行することを可能にされる、コンピュータプログラム製品。
【請求項67】
チップであって、前記チップは、プロセッサを備え、前記プロセッサは:メモリから命令を呼び出すこと、及び前記チップが取り付けられている通信デバイスが請求項1~31のいずれか1項に記載の方法を実行することを可能にするための、前記メモリに記憶された前記命令を実行することを行うように構成されている、チップ。
【請求項68】
チップであって、前記チップは、入力インターフェース、出力インターフェース、プロセッサ、及びメモリを備え;前記入力インターフェース、前記出力インターフェース、前記プロセッサ、及び前記メモリは、内部接続パスを通じて接続されており;前記プロセッサは、前記メモリにおけるコードを実行するように構成されており;前記コードが実行されると、前記プロセッサは、請求項1~31のいずれか1項に記載の方法を実行するように構成されている、チップ。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、2022年1月5日に提出され、「DATA PROCESSING METHOD, FIRST NETWORK DEVICE, AND CHIP」と題する中国特許出願第202210007010.2号に対する優先権を主張し、同中国特許出願は、その全体が参照により本明細書に組み込まれる。本願は、2022年1月30日に提出され、「ENCODING METHOD, DECODING METHOD, APPARATUS, DEVICE, SYSTEM, AND READABLE STORAGE MEDIUM」と題する中国特許出願第202210114845.8号に対する優先権を更に主張し、同中国特許出願は、その全体が参照により本明細書に組み込まれる。
【0002】
本願は、通信技術の分野に関し、特に、符号化方法、復号方法、装置、デバイス、システム、及び可読記憶媒体に関する。
【背景技術】
【0003】
通信技術の発展とともに、データ送信プロセスにおけるデータ処理方式はますます多様化している。例えば、媒体アクセス制御(media access control、MAC)層のパケットは、媒体独立インターフェース(media independent interface、MII)を通じて物理コーディング副層(physical coding sublayer、PCS)に送達される。例えば、パケットは、800ギガビット(gigabit、G)MIIを通じてPCSに送達され、ここで、800G MIIは、800ギガビット毎秒(gigabits per second、Gb/s)のMACレートにおいて動作するMIIを表す。MIIのデータビット幅は、72ビットであり、これは、8ビット制御ブロック(送信制御、TXC)及び64ビットデータブロック(送信データ、TXD)を含む。TXC及びTXDは、リコンシリエーション副層(reconciliation sublayer、RS)を通じて、MAC層からのパケットフローコンテンツを処理することによって取得される。PCSは、TXC/TXDのコンテンツに基づいて符号化を実行して、オーバヘッドを削減し、必要な同期及び保護機能を提供する。
【0004】
関連した技術では、PCSは、送信端において、MIIからの制御ブロック及びデータブロックに対して64ビット(bit、B)/66B符号化を実行して、66ビット符号ブロックを取得する。データ送信が高速物理リンクを使用することによって実行される場合、4つの66ビット符号ブロックごとが、長さが257ビットである1つの256B/257B符号化ブロックにトランスコーディングされ、前方誤り訂正(forward error correction、FEC)符号化が、この275ビット符号ブロックに対して実行されて、FEC符号化を通じて取得されたFEC符号語が送信される。FEC符号語を受信した後、受信端は、FEC符号語に対してFEC復号を実行して、275ビット符号ブロックを取得する。FEC復号プロセスでは、誤り訂正が、FEC符号語に対して実行され、訂正不可能なFEC符号語については、FEC符号語における誤りビットが識別される。各275ビット符号ブロックは、4つの66ビット64B/66B符号化ブロックに逆トランスコーディングされ、これらの4つの66ビット符号ブロックは、復号されて、MIIフォーマットである制御ブロック及びデータブロックが取得される。
【0005】
FEC符号化はデータ保護機能を提供することができ、PCSにおけるほとんどの処理は275ビット符号ブロックに基づいて実行されるので、64B/66B符号化及び復号プロセスは必要ではない。64B/66B符号化及び復号プロセスが保持される場合、後続のトランスコーディング/逆トランスコーディングプロセスは、不要な遅延、電力消費、及びチップ面積占有を引き起こすことになる。
【発明の概要】
【0006】
本願は、符号化効率及び復号効率を改善するために、符号化方法、復号方法、装置、デバイス、システム、及び可読記憶媒体を提供する。
【0007】
第1の態様によれば、符号化方法が提供される。前記方法は:符号ストリームブロックの2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおけるデータブロックに対して前記第1の符号化を実行することによって取得される、を備える。
【0008】
本願のこの実施形態において提供される符号化方法によれば、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行して2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループに対して第1の符号化を実行することによって取得される。したがって、符号化効率が改善され、符号化プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0009】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;前記データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される。
【0010】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0011】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す。
【0012】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0013】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0014】
可能な実装では、前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む。
【0015】
本願において提供される符号化方法によれば、第1の符号化を符号ストリームブロックの異なるタイプに対して実行して、ターゲット符号ブロックを取得することができる。したがって、この方法は、広く適用される。
【0016】
可能な実装では、前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される。誤りが発生している符号ストリームブロックは、データの信頼性を保証するために、誤りが発生しているデータを後続のデータ送信における正しいデータから区別するように処理される。
【0017】
可能な実装では、前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。
【0018】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0019】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0020】
可能な実装では、符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである。
【0021】
可能な実装では、前記ターゲット符号ブロックを取得した後、前記方法は:FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得する段階;及び前記第1のデータを送信する段階を更に備える。第2の符号化は、FEC符号タイプに基づいてターゲット符号ブロックに対して実行されて、第1のデータが取得され、それにより、受信端が、受信された第1のデータに対して誤り訂正を実行して、データ送信精度を保証することができる。
【0022】
第2の態様によれば、復号方法が提供される。前記方法は:ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、を備える。
【0023】
本願において提供される復号方法によれば、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに、ターゲット符号ブロックに対して第1の復号を実行することによって取得される。したがって、復号効率が改善され、復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0024】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0025】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0026】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される。
【0027】
可能な実装では、符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される。
【0028】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0029】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0030】
可能な実装では、前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0031】
本願において提供される復号方法によれば、第1の復号を、ターゲット符号ブロックの異なるタイプに対して実行して、符号ストリームブロックの2個のグループを取得することができる。したがって、この方法は、広く適用される。
【0032】
可能な実装では、ターゲット符号ブロックを取得する前記段階は:第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正処理である、
を有する。
【0033】
可能な実装では、前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである。
【0034】
可能な実装では、ターゲット符号ブロックを取得する前記段階は:第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、を有する。
【0035】
可能な実装では、前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである。
【0036】
可能な実装では、符号ストリームブロックの前記2個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される。
【0037】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである。誤りが発生しているターゲット符号ブロックは、データの信頼性を保証するために、受信端が誤りデータ及び正しいデータの間で区別することができるように処理される。
【0038】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される。誤りが発生しているターゲット符号ブロックは、データの信頼性を保証するために、受信端が誤りデータ及び正しいデータの間で区別することができるように処理される。
【0039】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0040】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0041】
可能な実装では、符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIフォーマットである。
【0042】
第3の態様によれば、符号化装置が提供される。前記装置は:
符号ストリームブロックの2個のグループを取得するように構成された取得モジュール、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得するように構成された第1の符号化モジュール、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける前記制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおけるデータブロックに対して前記第1の符号化を実行することによって取得される、
を備える。
【0043】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;前記データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される。
【0044】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0045】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す。
【0046】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0047】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0048】
可能な実装では、前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む。
【0049】
可能な実装では、前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される。
【0050】
可能な実装では、前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。
【0051】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0052】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0053】
可能な実装では、符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである。
【0054】
可能な実装では、前記装置は:前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得するように構成された第2の符号化モジュール;及び前記第1のデータを送信するように構成された送信モジュールを更に備える。
【0055】
第4の態様によれば、復号装置が提供される。前記装置は:
ターゲット符号ブロックを取得するように構成された取得モジュール、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得するように構成された復号モジュール、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える。
【0056】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0057】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0058】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される。
【0059】
可能な実装では、符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される。
【0060】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0061】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0062】
可能な実装では、前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0063】
可能な実装では、前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正処理である、を行うように構成されている。
【0064】
可能な実装では、前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである。
【0065】
可能な実装では、前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、を行うように構成されている。
【0066】
可能な実装では、前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである。
【0067】
可能な実装では、符号ストリームブロックの前記2個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される。
【0068】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである。
【0069】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される。
【0070】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0071】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0072】
可能な実装では、符号ストリームブロックの2個のグループの全てが媒体独立インターフェースMIIフォーマットである。
【0073】
第5の態様によれば、ネットワークデバイスが提供される。前記ネットワークデバイスは、プロセッサを備え、ここで、前記プロセッサは、メモリに結合されており、前記メモリは、少なくとも1つのプログラム命令又はコードを記憶し、前記少なくとも1つのプログラム命令又はコードは、前記プロセッサによって、前記ネットワークデバイスが第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実装することを可能にするようにロード及び実行される。
【0074】
第6の態様によれば、コンピュータ可読記憶媒体が提供される。前記記憶媒体は、少なくとも1つのプログラム命令又はコードを記憶する。前記プログラム命令又は前記コードがプロセッサによってロード及び実行されると、コンピュータが、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実装することを可能にされる。
【0075】
第7の態様によれば、通信システムが提供される。前記システムは、第1のネットワークデバイス及び第2のネットワークデバイスを備え、前記第1のネットワークデバイスは、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装を実行するように構成されており、前記第2のネットワークデバイスは、前記第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行するように構成されている。
【0076】
第8の態様によれば、別の通信装置が提供される。前記装置は、送受信機、メモリ、及びプロセッサを備える。前記送受信機、前記メモリ、及び前記プロセッサは、内部接続パスを通じて互いに通信する。前記メモリは、命令を記憶するように構成されている。前記プロセッサは、前記送受信機が信号を受信するように制御するとともに、前記送受信機が信号を送信するように制御するための、前記メモリに記憶された前記命令を実行するように構成されている。加えて、前記プロセッサが前記メモリに記憶された前記命令を実行すると、前記プロセッサは、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行することを可能にされる。
【0077】
例えば、1つ又は複数のプロセッサが存在し、1つ又は複数のメモリが存在する。
【0078】
例えば、メモリは、プロセッサと統合されてもよいし、又はメモリ及びプロセッサは別々に配置されてもよい。
【0079】
特定の実装プロセスでは、メモリは、非一時的(non-transitory)メモリ、例えば、リードオンリメモリ(read-only memory、ROM)であってよい。メモリ及びプロセッサは、同じチップ上に統合されてもよいし、又は異なるチップ上に別個に配置されてもよい。メモリのタイプ及びメモリ及びプロセッサを配置する方式は、本願において限定されない。
【0080】
第9の態様によれば、コンピュータプログラム製品が提供される。前記コンピュータプログラム製品は、コンピュータプログラムコードを備える。前記コンピュータプログラムコードがコンピュータ上で実行されると、前記コンピュータが、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行することを可能にされる。
【0081】
第10の態様によれば、チップが提供される。前記チップは、プロセッサを備え、メモリから命令を呼び出すこと、及び前記チップが取り付けられている通信デバイスが第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行することを可能にするための、前記メモリに記憶された前記命令を実行することを行うように構成されている。
【0082】
第11の態様によれば、別のチップが提供される。前記チップは、入力インターフェース、出力インターフェース、プロセッサ、及びメモリを備える。前記入力インターフェース、前記出力インターフェース、前記プロセッサ、及び前記メモリは、内部接続パスを通じて接続されている。前記プロセッサは、前記メモリにおけるコードを実行するように構成されている。前記コードが実行されると、前記プロセッサは、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行するように構成されている。
【図面の簡単な説明】
【0083】
図1】本願の一実施形態に係る符号化方法及び復号方法のための実装環境の概略図である。
【0084】
図2】本願の一実施形態に係る符号化方法のフローチャートである。
【0085】
図3】本願の一実施形態に係る、ターゲット符号ブロックを取得するプロセスの概略図である。
【0086】
図4】本願の一実施形態に係る、ターゲット符号ブロックの構造の概略図である。
【0087】
図5】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0088】
図6】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0089】
図7】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0090】
図8】本願の一実施形態に係る、符号ストリームブロックの4つのグループにおけるデータブロックの概略図である。
【0091】
図9】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0092】
図10】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0093】
図11】本願の一実施形態に係る終端ブロックの概略図である。
【0094】
図12】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0095】
図13】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0096】
図14】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0097】
図15】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0098】
図16】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0099】
図17】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0100】
図18】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0101】
図19】本願の一実施形態に係る復号方法のフローチャートである。
【0102】
図20】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0103】
図21】本願の一実施形態に係る符号化装置の構造の概略図である。
【0104】
図22】本願の一実施形態に係る復号装置の構造の概略図である。
【0105】
図23】本願の一実施形態に係るネットワークデバイスの構造の概略図である。
【0106】
図24】本願の一実施形態に係る別のネットワークデバイスの構造の概略図である。
【0107】
図25】本願の一実施形態に係る別のネットワークデバイスの構造の概略図である。
【発明を実施するための形態】
【0108】
本願の実装において使用される用語は、単に本願の特定の実施形態を説明するのに使用されており、本願を限定するように意図されない。以下の記載は、添付図面を参照して本願の実施形態を説明する。
【0109】
通信技術の分野において、データ送信のための要件が継続的に増加するにつれて、送信レートのための要件も継続的に増加している。イーサネット(登録商標)は、ローカルエリアネットワーク技術である。イーサネット(登録商標)の急速な発展とともに、イーサネット(登録商標)を介したデータ送信のレートは増加し続けている。例えば、100ギガビットイーサネット(登録商標)(gigabit ethernet(登録商標)、GE)であるので、データ送信は、単一のレーンについて25Gb/sの送信レートにおいて実行される。高速なデータ送信を保証することに基づいて、データ送信の信頼性を保証するために、イーサネット(登録商標)がデータ送信のために使用される場合にはFEC符号化が物理層に導入され、それにより、受信されたデータにおける誤りビットは、符号化を通じて取得されたFEC符号語を送信することによって訂正される。FEC符号語においてチェック符号が存在するので、同じ継続時間内で同じペイロードの送信のために必要とされる送信レートに対して、FEC符号語送信のために必要とされる送信レートは、より高い。
【0110】
FEC符号語送信のために必要とされる送信レートを削減するために、トランスコーディングがイーサネット(登録商標)規格において使用されて、FEC符号化の前に符号ブロックのオーバヘッドが削減され、それにより、FEC符号語送信のために必要とされる送信レートが削減される。例えば、4つの64B/66B符号化ブロックごとが1つの256B/257B符号化ブロックにトランスコーディングされる。1つの275ビット符号ブロックのオーバヘッドは4つの66ビット符号ブロックのオーバヘッドよりも低いので、FEC符号語送信のために必要とされ、かつ275ビット符号ブロックに基づいて取得される送信レートは低い。データ送信が100Gレーンを通じて実行される場合、FEC符号語送信のために必要とされ、かつトランスコーディング符号ブロック送信に基づいて取得される送信レートは、103.125Gb/sであり、この送信レートは、FEC符号化が実行されない66ビット符号ブロックの送信のために必要とされる送信レートと同じである。
【0111】
FEC符号語を取得した後、受信端は、FEC符号語を復号して、275ビット符号ブロックを取得し、275ビット符号ブロックを4つの66ビット符号ブロックに逆トランスコーディングし、4つの66ビット符号ブロックを復号して、MIIフォーマットである制御ブロック及びデータブロックを取得する。FEC符号語における誤りビットは、FEC誤り識別に基づいて識別されてよく、PCSにおけるほとんどの処理は、275ビット符号ブロックに基づいて実行される。したがって、64B/66B符号化及び復号プロセス及び対応するトランスコーディング/逆トランスコーディングプロセスは、不要な遅延、電力消費、及びチップ面積占有を生成する。
【0112】
したがって、本願の実施形態は、符号化方法及び復号方法を提供する。本願の実施形態において、符号化プロセスでは、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに取得される。復号プロセスでは、符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに取得される。したがって、符号化効率及び復号効率の両方が改善され、また、符号化及び復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0113】
本願の実施形態において提供される符号化方法及び復号方法は、現在のイーサネット(登録商標)インターフェースシナリオ又はデータ送信が必要とされる別のシナリオに適用可能である。図1に示されている実装シナリオが一例として使用される。この実装シナリオは、複数のチップを含み、情報は、データ送信を実装するためにこれらのチップ間で交換することができる。例えば、チップ102及びチップ104の両方がFEC符号化及びFEC復号をサポートし、チップ102及びチップ104の間のチャネル105を、FEC符号化データの送信のために使用することができる。このケースでは、チップ102は、符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得し、第1のFEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得し、チャネル105を通じてチップ104に第1のデータを送信してよい。例えば、誤りビットは、チャネル105を通る第1のデータの送信中に発生し得、受信されたデータは、第2のデータと称される。第2のデータを受信した後、チップ104は、第1のFEC符号タイプを使用することによって第2のデータに対して第2の復号を実行して、ターゲット符号ブロックを取得し、ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得してよい。
【0114】
nは、1よりも大きい整数であり、第1のFEC符号タイプは、RS符号、ボーズ-チョドーリ-オッケンジェム(Bose-Chaudhuri-Hocquenghem、BCH)符号、ハミング符号(Hamming code)、拡張BCH符号(extended-BCH code)、拡張ハミング符号(extended-Hamming code)、ファイヤ(fire)符号、ターボ(turbo)符号、ターボ積符号(turbo product code、TPC)、階段(staircase)符号、及び低密度パリティチェック(low-density parity-check、LDPC)符号のうちの任意の1つ又は複数のこれらの直列の組み合わせを含むが、これらに限定されない。
【0115】
任意選択で、図1に示されている実装シナリオは、複数のネットワークデバイスを含んでよい。チップ102は、第1のネットワークデバイス101上に位置し、チップ104は、第2のネットワークデバイス103上に位置する。各ネットワークデバイスは、少なくとも1つのチップを含んでよい。図1では、2つのネットワークデバイスが存在し、かつ各ネットワークデバイスが1つのチップを含む一例のみが説明のために使用される。
【0116】
図1に示されている実装シナリオを参照して、本願の一実施形態において提供される符号化方法が図2に示されている。例えば、本願のこの実施形態において提供される符号化方法は、図1におけるチップ102によって実行され、この方法は、段階201及び段階202を含むが、これらに限定されない。
【0117】
段階201:符号ストリームブロックの2個のグループを取得する。ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である。
【0118】
符号ストリームブロックの数は、本願のこの実施形態において限定されず、nは、1よりも大きい整数である。可能な実装では、符号ストリームブロックの2個のグループの全てがMIIからのものである。MIIに基づいて符号ストリームブロックの2個のグループを取得する方式は、本願のこの実施形態において限定されない。例えば、MIIは、符号ストリームブロックの2個のグループを取得するために、米国電気電子学会(Institute of Electrical and Electronics Engineers、IEEE)802.3規格、例えば、IEEE802.3-2018及びIEEE802.3規格の別のバージョンにおいて定義されるMIIであってよい。例えば、nの値は2であり、これは、符号ストリームブロックの4つのグループが取得されることを示す。
【0119】
可能な実装では、符号ストリームブロックの2個のグループのうちの任意のグループについて、符号ストリームブロックの当該任意のグループにおける制御ブロックは、tビットを含み、符号ストリームブロックの当該任意のグループにおけるデータブロックは、8tビットを含み、ここで、tは、正の整数であり、8tは、tの8倍を表し、8tは、代替的には、8*tと表されてよい。例えば、tの値は8であり、具体的には、符号ストリームブロックの任意のグループについて、符号ストリームブロックの当該任意のグループにおける制御ブロックは、8ビットを含み、符号ストリームブロックの当該任意のグループにおけるデータブロックは、64ビットを含む。可能な実装では、制御ブロック内に含まれるtビットは、全て制御ビットであり、換言すれば、制御ブロックは、t個の制御ビットを含み、データブロック内に含まれる8tビットは、全てデータであり、換言すれば、データブロックは、8tビットデータを含む。
【0120】
例えば、8つの制御ビットを含む制御ブロックは、TXC<7:0>と表され、64ビットデータを含むデータブロックは、TXD<63:0>と表され、制御ブロック及びデータブロックの全てのビットのシーケンスは、最上位ビット(most significant bit、MSB)から最下位ビット(least significant bit、LSB)までである。
【0121】
可能な実装では、TXD<63:0>内に含まれるデータは、MACフレームデータ及び制御データを含むが、これらに限定されず、TXD<63:0>において、8ビットがデータセグメントとして使用される。TXC<7:0>は、受信側でMACフレームデータ及び制御データを正しく復元するように、MACフレームデータ及び制御データに対して異なる処理を実行するために、TXD<63:0>における各データセグメントを識別する。
【0122】
例えば、以下の説明を容易にするために、データセグメントの名称が定義される。TXD<63:0>において、8ビットMACフレームデータは、データ文字(data character)と称され、これは、/D/によって表され、TXC=0に対応し;8ビット制御データは、制御文字(control character)と称され、これは、/C/によって表され、TXC=1に対応する。例えば、異なる意味に基づいて、8ビット制御文字(/C/)は、以下の7つのタイプ:誤り制御文字(誤り文字、/E/)、開始制御文字(開始文字、/S/)、終端制御文字(終端文字、/T/)、順序付きセット制御文字(順序付きセット文字、/O/)、アイドル制御文字(アイドル文字、/I/)、低電力アイドル制御文字(低電力アイドル、/LI/)、及び別の有効8ビット制御文字を含むが、これらに限定されない。制御文字の特定の意味及び値については、IEEE802.3-2018を参照されたい。詳細は、本願のこの実施形態では再び説明されない。
【0123】
例えば、符号ストリームブロックの制御ブロックが第1の指定値である場合、符号ストリームブロックのデータブロックは、制御文字を含まず、ここで、符号ストリームブロックのデータブロックは、MACフレームデータブロック(data block、D)と称され、符号ストリームブロックのタイプは、データ符号ストリームブロックである。第1の指定値は、符号ストリームブロックのタイプがデータ符号ストリームブロックであることを示す。例えば、第1の指定値は、0x00であり、符号ストリームブロックのTXC<7:0>は、0x00であり、符号ストリームブロックのTXD<63:0>は、制御文字を含まず、符号ストリームブロックのデータブロックは、MACフレームデータブロックであり、符号ストリームブロックのタイプは、データ符号ストリームブロックである。符号ストリームブロックの制御ブロックが第1の指定値ではない場合、符号ストリームブロックのデータブロックは、少なくとも1つの制御文字を含み、符号ストリームブロックのデータブロックは、制御データブロック(制御ブロック、C)と称され、符号ストリームブロックのタイプは、制御符号ストリームブロックである。例えば、符号ストリームブロックのTXC<7:0>!=0x00について、符号ストリームブロックのTXD<63:0>は、少なくとも1つの制御文字を含み、符号ストリームブロックのデータブロックは、制御データブロックであり、符号ストリームブロックのタイプは、制御符号ストリームブロックである。例えば、異なる機能に基づいて、制御データブロック(C)は、以下の7つのタイプ:誤りブロック(error block、E)、開始ブロック(start block、S)、終端ブロック(terminate block、T)、順序付きセットブロック(ordered set block、O)、アイドルブロック(idle block、I)、低電力アイドルブロック(low power idle block、LPI)、及び別の制御データブロックを含むが、これらに限定されない。
【0124】
段階202:符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する。ここで、ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、データユニットは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定される符号化方式において、符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される。
【0125】
例えば、符号ストリームブロックの各グループにおいて、各制御ブロックは、8ビットであり、各データブロックは、64ビットである。第1の符号化は、符号ストリームブロックの4つのグループに対して実行されて、1つの257ビットターゲット符号ブロックが取得される。例えば、ターゲット符号ブロックは、257ビット符号化ブロック(257B encoded block)である。本願のこの実施形態では、n=2が説明のための一例として使用される。nが別の値である場合、第1の符号化は、符号ストリームブロックの4つのグループごとに実行されて、複数のターゲット符号ブロックが取得されてよい。例えば、n=3であり、これは、符号ストリームブロックの8つのグループが取得されることを示す。第1の符号化は、符号ストリームブロックの第1の4つのグループに対して実行されて、1つのターゲット符号ブロックが取得されてよく、第1の符号化は、符号ストリームブロックの最後の4つのグループに対して実行されて、1つのターゲット符号ブロックが取得されてよい。
【0126】
可能な実装では、符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得することは、以下の符号化方式1及び符号化方式2を含むが、これらに限定されない。
【0127】
符号化方式1では:ターゲット符号ブロックのタイプは、符号ストリームブロックの2個のグループにおける制御ブロックに基づいてデータ符号ブロックとして決定され;第1の符号化は、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、データユニットが取得され;ターゲット符号ブロックは、タイプ及びデータユニットに基づいて取得される。
【0128】
例えば、符号化方式1において取得されるターゲット符号ブロックについて、タイプは、ターゲット符号ブロックがデータ符号ブロックであることを示し;データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される。
【0129】
可能な実装では、符号ストリームブロックの2個のグループにおける制御ブロックの各々が第1の指定値である場合、ターゲット符号ブロックのタイプがデータ符号ブロックであると決定される。例えば、符号ストリームブロックの各グループにおける制御ブロックは、TXC<7:0>と表され、第1の指定値は、0x00である。符号ストリームブロックの各グループのTXC<7:0>が0x00である場合、符号ストリームブロックの各グループのタイプは、データ符号ストリームブロックである。
【0130】
可能な実装では、第1の符号化が符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、データユニットが取得されることは:符号ストリームブロックの2個のグループのシーケンスに基づいて、データユニットのビットとして符号ストリームブロックの2個のグループにおけるデータブロック内に含まれるビットを別々に使用して、データユニットを取得することを含む。
【0131】
例えば、jは、符号ストリームブロックの4つのグループのうちの1つのグループのシーケンス番号を表し、ここで、j=0,1,2,又は3である。TXD_j<63:0>は、符号ストリームブロックのグループjにおけるデータブロックを表し、tx_coded<256:0>は、ターゲット符号ブロックを表し、tx_coded<0>は、ターゲット符号ブロックのタイプを表し、tx_coded<(64j+64):(64j+1)>は、ターゲット符号ブロックのビット(64j+64)~ビット(64j+1)を表す。このケースでは、tx_coded<256:0>の各ビットは、以下の式1及び式2において示される:
tx_coded<0>=1(式1)
tx_coded<(64j+64):(64j+1)>=TXD_j<63:0>、ここで、j=0,1,2,又は3(式2)
【0132】
式1では、tx_coded<0>=1は、タイプがデータ符号ブロックであることを表す。式2では、tx_coded<(64j+64):(64j+1)>=TXD_j<63:0>は、符号ストリームブロックの各グループにおけるデータブロックの複数のビットがデータユニットの複数のビットとして別々に使用されることを表す。
【0133】
例えば、j=0である場合、tx_coded<64:1>=TXD_0<63:0>は、符号ストリームブロックのグループ0におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット64~ビット1として使用されることを表す。j=1である場合、tx_coded<128:65>=TXD_1<63:0>は、符号ストリームブロックのグループ1におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット128~ビット65として使用されることを表す。j=2である場合、tx_coded<192:129>=TXD_2<63:0>は、符号ストリームブロックのグループ2におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット192~ビット129として使用されることを表す。j=3である場合、tx_coded<256:193>=TXD_3<63:0>は、符号ストリームブロックのグループ3におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット256~ビット193として使用されることを表す。
【0134】
例えば、図3は、ターゲット符号ブロックを取得するプロセスの概略図である。図3に示されているように、符号ストリームブロックの取得された4つのグループについて、符号ストリームブロックの各グループにおいて、各制御ブロックは、TXC<7:0>と表され、各データブロックは、TXD<63:0>と表される。符号ストリームブロックの4つのグループの各々におけるTXC<7:0>が0x00である場合、ターゲット符号ブロックのタイプは、データ符号ブロックである。例えば、ターゲット符号ブロックのタイプは、ターゲット符号ブロックのビット0に対応し、ビット0は、1に設定され、これは、タイプがデータ符号ブロックであることを示す。本願のこの実施形態は、ビット0が、タイプがデータ符号ブロックであることを示すための値に設定される方式に対して制限を課さない。符号ストリームブロックの4つのグループのシーケンスに基づいて、符号ストリームブロックの4つのグループにおけるデータブロックの複数のビットが、データユニットの複数のビットとして別々に使用されて、データユニットが取得される。したがって、ターゲットビットは、タイプ及びデータユニットに基づいて取得することができる。
【0135】
例えば、取得されたターゲット符号ブロックの構造は、図4に示されている。ターゲット符号ブロックのビット0は、ターゲット符号ブロックのタイプを示し、ビット0は、タイプがデータ符号ブロックであることを示すために1に設定される。ターゲット符号ブロックのビット1~ビット256は、ターゲット符号ブロックのデータユニットを示し、ここで、D0は、符号ストリームブロックのグループ0におけるデータブロックの64ビットを表し、D1は、符号ストリームブロックのグループ1におけるデータブロックの64ビットを表し、D2は、符号ストリームブロックのグループ2におけるデータブロックの64ビットを表し、D3は、符号ストリームブロックのグループ3におけるデータブロックの64ビットを表す。
【0136】
符号化方式2では:ターゲット符号ブロックのタイプは、符号ストリームブロックの2個のグループにおける制御ブロックに基づいて制御符号ブロックとして決定され;符号ブロック識別子(Identifier、ID)は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得され、ここで、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;第1の符号化は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、符号ブロックコンテンツが取得され;ターゲット符号ブロックは、タイプ及びデータユニットに基づいて取得され、ここで、データユニットは、符号ブロックID及び符号ブロックコンテンツを含む。符号ブロックIDの値は、ターゲット符号ブロックに対応する符号ストリームブロックの2個のグループの組み合わせに1対1で対応する。符号ブロックIDの値及び符号ストリームブロックの2個のグループの組み合わせの間の対応関係は、必要に応じて設定されてよい。例えば、符号ブロックIDが0x01である場合、これは、ターゲット符号ブロックに対応する符号ストリームブロックの連続した2個のグループのうちの第1のグループがイーサネット(登録商標)フレームの開始(Start)であり、符号ストリームブロックの後続の2-1個のグループの全てがイーサネット(登録商標)フレームのデータ(Data)であることを示す。代替的には、符号ブロックIDが0xF0である場合、これは、ターゲット符号ブロックに対応する符号ストリームブロックの連続した2個のグループのうちのグループ2がイーサネット(登録商標)フレームの終端(Terminate)であり、符号ストリームブロックの先行する2-1個のグループの全てがイーサネット(登録商標)フレームのデータ(Data)であることを示す。代替的には、符号ブロックIDが0xD1である場合、これは、ターゲット符号ブロックに対応する符号ストリームブロックの連続した2個のグループの全ての符号ストリームブロックがアイドル(Idle)であることを示す。符号ブロックIDの値及び符号ストリームブロックの2個のグループの組み合わせの間の対応関係は、本願のこの実施形態において列挙される幾つかのケースに限定されない。これは、本願において限定されない。符号ブロックIDの値は例であり、符号ブロックIDの値及び符号ストリームブロックの2個のグループの組み合わせの間に1対1の対応関係が存在することを前提として、実際の応用において前述の例の値に限定されない。これは、本願のこの実施形態において限定されない。
【0137】
例えば、符号化方式2において取得されたターゲット符号ブロックについて、タイプは、ターゲット符号ブロックが制御符号ブロックであることを示し;データユニットは、符号ブロックID及び符号ブロックコンテンツを含み、ここで、符号ブロックコンテンツは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得され、符号ブロックIDは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得され、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。例えば、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスは、符号ストリームブロックの2個のグループの受信シーケンスである。
【0138】
可能な実装では、符号ストリームブロックの2個のグループのうちの少なくとも1つのグループにおける制御ブロックが第2の指定値である場合、ターゲット符号ブロックのタイプが制御符号ブロックであると決定され、ここで、第2の指定値は、符号ストリームブロックのタイプが制御符号ストリームブロックであることを示す。換言すれば、符号ストリームブロックの2個のグループのうちの少なくとも1つのグループのタイプが制御符号ストリームブロックである場合、ターゲット符号ブロックのタイプは、制御符号ブロックである。第2の指定値は、第1の指定値とは異なる。例えば、符号ストリームブロックの各グループにおける制御ブロックは、TXC<7:0>と表され、第1の指定値は、0x00である。符号ストリームブロックのグループのうちの少なくとも1つのグループのTXC<7:0>が第2の指定値である、すなわち、0x00ではない場合、ターゲット符号ブロックは、制御符号ブロックである。
【0139】
可能な実装では、符号ブロックIDが、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得されることは:符号ストリームブロックの2個のグループにおけるデータブロックのタイプが、符号ストリームブロックの2個のグループにおける制御ブロックに基づいて取得されること、及びターゲット符号ブロックの符号ブロックIDが、符号ストリームブロックのグループにおけるデータブロックのタイプ及び符号ストリームブロックのグループのシーケンスに基づいて取得されることを含む。例えば、符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい正の整数である。例えば、ターゲット符号ブロックの構造は、図5に示されている。タイプは、ビット0に対応し、符号ブロックIDは、ビット(m-1)~ビット1に対応し、符号ブロックコンテンツは、残りのビットに対応する。例えば、m=8又はm=12である。
【0140】
例えば、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。例えば、ターゲット符号ブロックの構造は、図6に示されている。タイプは、ビット0に対応し、符号ブロックIDは、ビット(m-1)~ビット1に対応し、符号ブロックコンテンツは、残りのビットに対応する。ビット(m-1)~ビット1は、2つの部分に分割され、ここで、最下位ビットを含む前半部分は、第1のIDであり、最上位ビットを含む後半部分は、第2のIDである。例えば、符号ブロックIDは、12ビットであり、前半4つの最下位ビットが第1のIDであり、後半8つの最上位ビットが第2のIDである。ターゲット符号ブロックの構造は、図7に示されている。タイプは、ビット0に対応し、第1のIDは、ビット4~ビット1に対応し、第2のIDは、ビット12~ビット5に対応し、符号ブロックコンテンツは、残りの244ビットに対応する。例えば、第1のID内に含まれる4ビットは、それぞれ符号ストリームブロックの4つのグループにおけるデータブロックのタイプを示す。例えば、符号ストリームブロックのデータブロックがMACフレームデータブロックである場合、符号ストリームブロックに対応するビットは1であり;又は符号ストリームブロックのデータブロックが制御データブロックである場合、符号ストリームブロックに対応するビットは0である。
【0141】
符号ブロックIDの前述のケースにかかわらず、符号ブロックIDは、ハミング距離保護を有してよいことに留意されたい。
【0142】
可能な実装では、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションの複数のケースについて、これらのケースに対応する符号ブロックIDは異なる。換言すれば、各一意の符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションの複数のケースを示す。例えば、符号ストリームブロックの4つのグループが、説明のための一例として使用される。符号ストリームブロックの4つのグループにおけるデータブロックのタイプは、以下のケースA1~ケースA8を含むが、これらに限定されない。
【0143】
ケースA1:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが誤りブロックであるデータブロックを含む。
【0144】
例えば、ケースA1の場合、タイプが誤りブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図8に示されており、ここで、C0は、誤りブロック以外のタイプの制御データブロックを表す。例えば、図8におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、誤りブロックであり、符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプは、MACフレームデータブロック、又は誤りブロック以外のタイプの制御データブロックであってよい。図8における別のケースの原理は、ケース1の原理と同じである。詳細は、本明細書において再び説明されない。
【0145】
ケースA2:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが開始ブロックである1つのみのデータブロックを含む。
【0146】
例えば、ケースA2の場合、タイプが開始ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図9に示されており、ここで、C1は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図9におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプは、全てMACフレームデータブロックである。図9におけるケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプはC1であり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図9におけるケース3について、符号ストリームブロックの第1のグループ及び符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、両方ともC1であり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図9におけるケース4について、符号ストリームブロックの第1のグループ~符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、全てC1であり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、開始ブロックである。
【0147】
ケースA3:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックである1つのみのデータブロックを含む。
【0148】
例えば、ケースA3の場合、タイプが終端ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図10に示されており、ここで、C2は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図10におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプは、全てC2である。図10におけるケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、MACフレームデータブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプはC2である。図10におけるケース3について、符号ストリームブロックの第1のグループ及び符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、両方ともMACフレームデータブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプはC2である。図10におけるケース4について、符号ストリームブロックの第1のグループ~符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、全てMACフレームデータブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、終端ブロックである。
【0149】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。例えば、終端制御文字の異なるロケーションに基づいて、終端ブロックの異なケースが図11に示されている。図11では、終端ブロックは64ビットであり、8ビットごとが1バイトであり;iは、終端制御文字が終端ブロックのバイトiであることを示し、i=0,1,2,3,4,5,6,又は7であり;/C3/は、終端制御文字以外の制御文字を表し;パディングビットは、0であってよい。この実装における/T/、/D/、/C3/、及びパディングビットのソートについては、図11に示されているソートを参照されたい。詳細は、本明細書において再び説明されない。図11では、i=0であるケースがケース1と称され得、i=1であるケースがケース2と称され得、類推によって、i=7であるケースがケース8と称され得る。
【0150】
符号ストリームブロックの4つのグループにおけるデータブロックが、タイプが終端ブロックである1つのみのデータブロックを含む場合、異なるロケーションにおける終端制御文字に対応する終端ブロックについて、符号ブロックIDは異なることに留意されたい。換言すれば、図10に示されているケース1~ケース4及び図11に示されているケース1~ケース8を参照すると、32個のケースに対応する符号ブロックIDは異なる。
【0151】
ケースA4:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが順序付きセットブロックであるデータブロックを含み、かつタイプが開始ブロック又は終端ブロックであるデータブロックを含まない。
【0152】
例えば、ケースA4の場合、タイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図12に示されており、ここで、C4は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図12におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループ~符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、全てC4である。図12におけるケース2について、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループ以外の符号ストリームブロックの3つのグループにおけるデータブロックのタイプはC4である。図12における他のケースについては、図12における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0153】
ケースA5:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが順序付きセットブロックであるデータブロック、及びタイプが開始ブロックであるデータブロックを含み、かつタイプが終端ブロックであるデータブロックを含まない。
【0154】
例えば、ケースA5の場合、タイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーション、及びタイプが開始ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図13に示されており、ここで、C5は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図13におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てMACフレームデータブロックである。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプはC5であり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図13における他のケースについては、図13における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0155】
ケースA6:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックであるデータブロック、及びタイプが順序付きセットブロックであるデータブロックを含み、かつタイプが開始ブロックであるデータブロックを含まない。
【0156】
例えば、ケースA6の場合、タイプが終端ブロックであるデータブロックの異なるロケーション及びタイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図14に示されており、ここで、C6は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図14におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てC6である。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てC6である。図14における他のケースについては、図14における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0157】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。終端ブロックのケースは、ケースA3における終端ブロックのケースと同じであり、すなわち、終端ブロックは、図11に示されている。詳細は、本明細書において再び説明されない。例えば、図14に示されているケース1~ケース11及び図11に示されているケース1~ケース8を参照すると、88個のケースに対応する符号ブロックIDは異なる。
【0158】
ケースA7:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックであるデータブロック、及びタイプが開始ブロックであるデータブロックを含む。
【0159】
例えば、ケースA7の場合、タイプが終端ブロックであるデータブロック及びタイプが開始ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図15に示されており、ここで、C7は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図15におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てMACフレームデータブロックである。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプはC7であり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図15における他のケースについては、図15における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0160】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。終端ブロックの原理は、ケースA3における終端ブロックの原理と同じであり、すなわち、終端ブロックは、図11に示されている。詳細は、本明細書において再び説明されない。例えば、タイプが終端ブロックであるデータブロックが、タイプが開始ブロックであるデータブロックの前である場合、図15に示されているケース1~ケース6及び図11に示されているケース1~ケース8を参照すると、48個のケースに対応する符号ブロックIDは異なる。タイプが開始ブロックであるデータブロックが、タイプが終端ブロックであるデータブロックの前である場合、これは、符号ストリームブロックの4つのグループが32バイトデータパケットに対応することを示し、終端制御文字は、終端ブロックの第7のバイトであり、すなわち、図11に示されているケース8である。
【0161】
ケースA8:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックであるデータブロック、タイプが順序付きセットブロックであるデータブロック、及びタイプが開始ブロックであるデータブロックを含む。
【0162】
例えば、ケースA8の場合、タイプが終端ブロックであるデータブロックの異なるロケーション、タイプが開始ブロックであるデータブロックの異なるロケーション、及びタイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図16に示されており、ここで、C8は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図16におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプはC8であり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、開始ブロックである。図16における他のケースについては、図16における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0163】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。終端ブロックの原理は、ケースA3における終端ブロックの原理と同じであり、すなわち、終端ブロックは、図11に示されている。詳細は、本明細書において再び説明されない。例えば、図16に示されているケース1~ケース5及び図11に示されているケース1~ケース8を参照すると、40個のケースに対応する符号ブロックIDは異なる。
【0164】
ケースA1~ケースA8内に含まれる様々なケースについて、これらのケースに対応する符号ブロックIDは異なることに留意されたい。様々なケースに対応する符号ブロックIDの値は、本願のこの実施形態において限定されない。
【0165】
例えば、ケースA1~ケースA8における符号ストリームブロックの4つのグループのうちの3つのグループにおけるデータブロックのタイプがMACフレームデータブロックであるケースについて、符号ブロックIDは、次の2つのケースを含むが、これらに限定されない:ケース1:符号ストリームブロックの第1のグループにおけるデータブロックのタイプが開始ブロックであり、かつ符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプが全てMACフレームデータブロックである場合、符号ブロックIDは、0x5Eであり、具体的には、ターゲット符号ブロックのビット1~ビット8は、01111010である。ケース2:符号ストリームブロックの最初の3つのグループにおけるデータブロックのタイプが全てMACフレームデータブロックであり、かつ符号ストリームブロックの第4のグループにおけるデータブロックのタイプが、図11におけるケース1~ケース8に対応する終端ブロックである場合、符号ブロックIDは、それぞれ、0x07、0x17、0x27、0x37、0x47、0x57、0x67、及び0x77である。ケース1又はケース2のいずれかでは、LSBは、第1の送信ビットである。
【0166】
例えば、ケースA1~ケースA8におけるケース1及びケース2以外のケースについて、符号ブロックIDは、12ビットであり、符号ブロックIDの最初の8ビットは、ケース1及びケース2における符号ブロックIDのものとは異なる。
【0167】
可能な実装では、第1の符号化が、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、符号ブロックコンテンツが取得されることは:符号ストリームブロックの2個のグループにおけるデータブロックが、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて圧縮されて、符号ブロックコンテンツが取得されることを含む。例えば、符号ストリームブロックの2個のグループにおけるデータブロックが圧縮されることは:符号ストリームブロックの2個のグループにおけるデータブロックにおいて値が0である各ビットが圧縮されることを含む。例えば、アイドルブロックの各ビットは0である。符号ストリームブロックの2個のグループにおけるデータブロックのタイプがアイドルブロックである場合、アイドルブロックの各ビットは、圧縮される。
【0168】
結論として、ターゲット符号ブロックは、様々なケースにおけるタイプ、符号ブロックID、及び符号ブロックコンテンツに基づいて取得することができる。
【0169】
可能な実装では、ターゲット符号ブロックは、誤り符号ブロックであり、誤り符号ブロックは、誤りインジケーションデータを含む。例えば、符号ストリームブロックの2個のグループの全てがデータ符号ストリームブロックであるというわけではなく、かつ符号ストリームブロックの2個のグループの全てが前述のケースA1~A8のうちのいずれの1つにも属さない場合、ターゲット符号ブロックが誤り符号ブロックであると決定され、ターゲット符号ブロックの符号ブロックID及び符号ブロックコンテンツが取得され、ここで、タイプ及び符号ブロックIDは、誤り符号ブロックにおける誤りインジケーションデータとして使用される。例えば、ターゲット符号ブロックのビット0は、タイプに対応し、ビット4~ビット1は、符号ブロックIDに対応し、ここで、ビット0は、0に設定され、ビット4~ビット1は、全て1に設定される。
【0170】
可能な実装では、符号ストリームブロックの4つのグループにおけるデータブロックは、図17に示されており、ここで、0、1、2、及び3は、符号ストリームブロックの4つのグループのシーケンスを示し、Cは、符号ストリームブロックのデータブロックのタイプが制御データブロックであることを示し、Dは、符号ストリームブロックのデータブロックのタイプがMACフレームデータブロックであることを示す。例えば、組み合わせ0について、符号ストリームブロックの4つのグループにおけるデータブロックのタイプは、全て制御データブロックである。例えば、図17における組み合わせごとに、符号ストリームブロックの4つのグループにおけるデータブロックのタイプの全てがMACフレームデータ符号ストリームブロックでなく、また前述のケースA1~A8のうちのいずれの1つにも属さない場合、ターゲット符号ブロックが誤り符号ブロックであると決定される。例えば、データブロックタイプが両方ともMACフレームデータブロックである符号ストリームブロックの2つのグループについて、符号ストリームブロックの2つのグループのうちの1つのグループにおけるデータブロックのタイプが開始ブロック、順序付きセットブロック、アイドルブロック、又は低電力アイドルブロックのいずれか1つである場合、ターゲット符号ブロックは、誤り符号ブロックである。
【0171】
可能な実装では、ターゲット符号ブロックが誤り符号ブロックである場合、ターゲット符号ブロックの構造は、図18に示されている。ターゲット符号ブロックのビット0は、タイプに対応し、ビット0は0である。ビット4~ビット1は、符号ブロックIDに対応し、ビット4~ビット1は、全て1である。ビット256~ビット5は、符号ブロックコンテンツに対応する。例えば、符号ブロックコンテンツの最初の4ビットは、0xEであり、その後の8ビットごとが0x1Eである。別の例として、符号ブロックコンテンツの各ビットは0である。
【0172】
別の可能な実装では、ターゲット符号ブロックが誤り符号ブロックである場合、ターゲット符号ブロックの符号ブロックIDの長さは、図18に示されている4ビットに限定されない。例えば、符号ブロックIDの長さは、8ビットである。ターゲット符号ブロックのビット0は、タイプに対応し、ビット0は0である。ビット8~ビット1は、符号ブロックIDに対応し、ビット8~ビット1は、全て1である。ビット256~ビット9は、符号ブロックコンテンツに対応する。例えば、符号ブロックコンテンツの8ビットごとが0x1Eである。別の例として、符号ブロックコンテンツの各ビットは0である。
【0173】
本願のこの実施形態において提供される符号化方法によれば、第1の符号化を符号ストリームブロックの異なるタイプに対して実行して、ターゲット符号ブロックを取得することができる。したがって、この方法は、広く適用される。
【0174】
可能な実装では、符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得することは:符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて誤り検出結果を取得すること;及び誤り検出結果に基づいて符号ストリームブロックの2個のグループを処理すること、及び符号ストリームブロックの処理された2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得することを含む。換言すれば、ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの2個のグループを処理することによって取得され、誤り検出結果は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得される。
【0175】
例えば、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて誤り検出結果を取得することは:符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて符号ストリームブロックの2個のグループのコンテンツ及びコンテンツシーケンスを取得すること、及び符号ストリームブロックの2個のグループのコンテンツ及びコンテンツシーケンスに基づいて誤り検出結果を取得することを含む。例えば、符号ストリームブロックの2個のグループのコンテンツシーケンスが第1の誤りケースセットにおける少なくとも1つのケースである場合、符号ストリームブロックの2個のグループのコンテンツシーケンスにおいて誤りが発生し;又は符号ストリームブロックの2個のグループのコンテンツシーケンスが第1の誤りケースセットにおけるいずれのケースでもない場合、符号ストリームブロックの2個のグループのコンテンツシーケンスは正しい。別の例として、符号ストリームブロックの2個のグループのコンテンツが第2の誤りケースセットにおける少なくとも1つのケースである場合、符号ストリームブロックの2個のグループのコンテンツにおいて誤りが発生し;又は符号ストリームブロックの2個のグループのコンテンツが第2の誤りケースセットにおけるいずれのケースでもない場合、符号ストリームブロックの2個のグループのコンテンツは正しい。
【0176】
可能な実装では、符号ストリームブロックの2つの隣接したグループが説明のための一例として使用され、第1の誤りケースセットは、以下の4つのケースを含むが、これらに限定されない。
【0177】
(1)符号ストリームブロックの前者のグループにおけるデータブロックのタイプが開始ブロックである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、MACフレームデータ以外のタイプである。
【0178】
(2)符号ストリームブロックの前者のグループにおけるデータブロックのタイプがMACフレームデータである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、MACフレームデータ又は終端ブロック以外のタイプである。
【0179】
(3)符号ストリームブロックの前者のグループにおけるデータブロックのタイプが終端ブロックである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、アイドルブロック又は順序付きセットブロック以外のタイプである。
【0180】
(4)符号ストリームブロックの前者のグループにおけるデータブロックのタイプがアイドルブロック又は順序付きセットブロックである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、MACフレームデータ又は終端ブロックである。
【0181】
可能な実装では、符号ストリームブロックの1つのグループが説明のための一例として使用され、第2の誤りケースセットは、以下の4つのケースを含むが、これらに限定されない。
【0182】
(1)データブロックが開始制御文字を含む符号ストリームブロックについて、開始制御文字には、データ文字ではない他のコンテンツが後続する。
【0183】
(2)データブロックがデータ文字を含む符号ストリームブロックについて、データ文字には、データ文字又は終端制御文字ではない他のコンテンツが後続する。
【0184】
(3)データブロックが終端制御文字を含む符号ストリームブロックについて、終端制御文字には、アイドル制御文字又は順序付きセット制御文字ではない他のコンテンツが後続する。
【0185】
(4)データブロックがアイドル制御文字又は順序付きセット制御文字を含む符号ストリームブロックについて、アイドル制御文字又は順序付きセット制御文字には、データ文字又は終端制御文字が後続する。
【0186】
例えば、誤り検出結果は、符号ストリームブロックの2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、誤りブロックは、符号ストリームブロックの2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得され、第1の符号化は、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに対して実行されて、ターゲット符号ブロックが取得される。換言すれば、誤り検出結果が符号ストリームブロックの2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含む場合、ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに基づいて第1の符号化を実行することによって取得され、ここで、誤りブロックは、符号ストリームブロックの2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。例えば、誤りブロックは、誤り制御文字(error control character)を含む。例えば、コンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックについて、符号ストリームブロックのコンテンツは、誤り制御文字に変換されて、誤りブロックが取得される。
【0187】
例えば、第1の符号化が、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに対して実行されて、ターゲット符号ブロックが取得されることは:ターゲット符号ブロックのタイプが制御符号ブロックとして決定されること;及び符号ブロックIDが、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに基づいて取得されること;及び第1の符号化が、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて、誤りブロック、及び符号ストリームブロックの2個のグループにおける正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロックにおけるデータブロックに対して実行されて、符号ブロックコンテンツが取得されることを含む。可能な実装では、誤りブロックは、前述のケースA1における誤りブロックであり、符号ブロックID及び符号ブロックコンテンツを取得する方式は、前述のケースA1における関連したコンテンツの原理と同じである。詳細は、本明細書において再び説明されない。
【0188】
例えば、符号ストリームブロックの2個のグループのうちの各グループがコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックである場合、2個の誤りブロックが、符号ストリームブロックの2個のグループに基づいて取得され、第1の符号化は、2個の誤りブロックに対して実行されて、ターゲット符号ブロックが取得され、ここで、ターゲット符号ブロックは、誤り符号ブロックである。
【0189】
誤りが発生している符号ストリームブロックは、データの信頼性を保証するために、誤りが発生しているデータを後続のデータ送信における正しいデータから区別するように処理される。
【0190】
例えば、ターゲット符号ブロックが取得された後、方法は:FEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得すること;及び第1のデータを送信することを更に含む。FEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行する方式は、本願のこの実施形態において限定されない。第2の符号化は、FEC符号タイプに基づいてターゲット符号ブロックに対して実行されて、第1のデータが取得され、それにより、受信端が、受信された第1のデータに対して誤り訂正を実行して、データ送信精度を保証することができる。
【0191】
本願のこの実施形態において提供される符号化方法によれば、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行して2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループに対して第1の符号化を実行することによって取得される。したがって、符号化効率が改善され、符号化プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0192】
前述の記載は、本願の実施形態において提供される符号化方法を説明している。以下の記載は、本願の実施形態において提供される復号方法を説明している。図1に示されている実装シナリオを参照して、本願の一実施形態において提供される復号方法が図19に示されている。例えば、本願のこの実施形態において提供される復号方法は、図1におけるチップ104によって実行され、この方法は、段階1901及び段階1902を含むが、これらに限定されない。
【0193】
段階1901:ターゲット符号ブロックを取得する。ここで、ターゲット符号ブロックは、タイプ及びデータユニットを含む。
【0194】
例えば、図1における実装シナリオを参照すると、チップ102は、チャネル105を通じてチップ104に、FEC符号タイプを使用することによって符号化された第1のデータを送信する。データ送信プロセスでは、誤りビットが第1のデータにおいて発生し得る。誤りビットが発生しているデータは、第2のデータと称され、チップ104は、チャネル105を通じて第2のデータを受信する。
【0195】
可能な実装では、ターゲット符号ブロックを取得することは、以下の方式A及び方式Bを含むが、これらに限定されない。
【0196】
方式A:第2のデータが受信され、ここで、第2のデータは、FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得され;第2の復号は、第2のデータに対して実行されて、ターゲット符号ブロックが取得され、ここで、第2の復号は、誤り訂正処理である。
【0197】
例えば、ターゲット符号ブロックは、誤り訂正が第2のデータに対して実行されたが誤り訂正が失敗した場合に取得される誤り符号ブロックである。例えば、第2の復号が第2のデータに対して実行されて、ターゲット符号ブロックが取得されることは:第2のデータが、FEC符号タイプに基づいて処理されて、第1の符号語が取得されること、誤り訂正処理が第1の符号語に対して実行されること、及びターゲット符号ブロックが、誤り訂正処理の結果に基づいて取得されることを含む。
【0198】
例えば、チップ104は、FECデコーダの機能を有する。FECデコーダが、誤りビットの数がFECデコーダの誤り訂正能力を超過したと決定した場合、換言すれば、第1の符号語に対して誤り訂正を実行することができないと決定する場合、FECデコーダは、第1の符号語における全ての符号ブロックを誤り符号ブロックとして識別する。したがって、誤り訂正処理の結果が、第1の符号語における全ての符号ブロックが誤り符号ブロックとして識別されたというものであった場合、取得されたターゲット符号ブロックは、誤り符号ブロックである。
【0199】
例えば、誤り訂正処理の結果が、第1の符号語に対する誤り訂正が成功したというものであった場合、訂正された第1の符号語に基づいて取得された符号ブロックは、取得されたターゲット符号ブロックとして使用され、訂正された第1の符号語に基づいて取得された符号ブロックは、訂正に成功した符号ブロックである。
【0200】
方式B:第2のデータが受信され、ここで、第2のデータは、FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得され;第2の復号は、第2のデータに対して実行されて、ターゲット符号ブロックが取得され、ここで、第2の復号は、誤り訂正が回避される誤り検出処理である。
【0201】
例えば、ターゲット符号ブロックは、第2のデータに対する、誤り訂正が回避される誤り検出処理を通じて取得される誤り符号ブロックである。例えば、第2の復号が第2のデータに対して実行されて、ターゲット符号ブロックが取得されることは:第2のデータが、FEC符号タイプに基づいて処理されて、第1の符号語が取得されること、誤り検出及び訂正回避(bypass correction)処理が第1の符号語に対して実行されること;及びターゲット符号ブロックが、誤り訂正が回避される誤り検出処理の結果に基づいて取得されることを含む。
【0202】
例えば、チップ104は、FECデコーダの機能を有する。第1の符号語において誤りが存在することを検出した場合、FECデコーダは、第1の符号語における全ての符号ブロックを誤り符号ブロックとして識別する。したがって、誤り訂正が回避される誤り検出処理の結果が、第1の符号語における全ての符号ブロックが誤り符号ブロックとして識別されたというものであった場合、取得されたターゲット符号ブロックは、誤り符号ブロックである。
【0203】
例えば、誤り訂正が回避される誤り検出処理の結果が、第1の符号語に誤りがないというものであった場合、第1の符号語に基づいて取得された符号ブロックは、取得されたターゲット符号ブロックとして使用され、第1の符号語に基づいて取得された符号ブロックは、誤りがない符号ブロックである。
【0204】
例えば、ターゲット符号ブロックに基づいて実行されたフレームチェックシーケンス(frame check sequence、FCS)フレームチェックが失敗する。例えば、ターゲット符号ブロックは257ビットであり、最初の5ビットは01111であり、残りの252ビットは、以下の4つのケースを含むが、これらに限定されない。
【0205】
(1)各ビットは、変化しないままである。
【0206】
(2)最初の4ビットは、0x1又は0xEであり、残りのビットにおける8ビットごとが0x1Eである。
【0207】
(3)最初の248ビットでは、8ビットごとが0x1Eであり、最後の4ビットは、0x1又は0xEである。
【0208】
(4)各ビットは0である。
【0209】
例えば、ターゲット符号ブロックは、図20に示されており、ここで、bは、ビットを表す。
【0210】
段階1902:ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得する。ここで、符号ストリームブロックの任意のグループは、データブロック、及びタイプ及びデータユニットに基づいて取得される制御ブロックを含み、データブロックは、タイプ及びデータユニットに基づいて決定された復号方式において、データユニットに対して第1の復号を実行することによって取得され、nは、1よりも大きい整数である。
【0211】
例えば、ターゲット符号ブロックは257ビットであり、符号ストリームブロックの各グループにおいて、制御ブロックは8ビットであり、データブロックは64ビットである。第1の復号が1つのターゲット符号ブロックに対して実行されて、符号ストリームブロックの4つのグループ(n=2)が取得される一例が、説明のために使用される。複数のターゲット符号ブロックが取得される場合、第1の復号は、各ターゲット符号ブロックに対して実行されて、符号ストリームブロックの2個のグループが取得されてよい。例えば、2つのターゲット符号ブロックが取得される場合、第1の復号は、2つの符号ブロックの各々に対して実行されて、符号ストリームブロックの4つのグループが取得されてよく、換言すれば、第1の復号は、2つのターゲット符号ブロックに対して実行されて、符号ストリームブロックの8つのグループが取得される。
【0212】
可能な実装では、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは、以下の復号方式1~復号方式3を含むが、これらに限定されない。
【0213】
復号方式1では、ターゲット符号ブロックのタイプは、ターゲット符号ブロックのタイプに基づいてデータ符号ブロックとして決定され、ここで、ターゲット符号ブロックのデータユニットは、各々が8tの長さを有する2個のコンテンツを含み、tは、正の整数であり;符号ストリームブロックの2個のグループにおける制御ブロックは、ターゲット符号ブロックのタイプに基づいて取得され、第1の復号は、データユニット内に含まれる、各々が8tの長さを有する2個のコンテンツに対して別々に実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得される。
【0214】
例えば、タイプが、ターゲット符号ブロックがデータ符号ブロックであることを示す場合、第1の復号は、復号方式1におけるターゲット符号ブロックに対して実行されて、符号ストリームブロックの2個のグループが取得される。符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0215】
可能な実装では、ターゲット符号ブロックのタイプは1であり、これは、ターゲット符号ブロックがデータ符号ブロックであり、ターゲット符号ブロックのデータユニットは、各々が8tの長さを有する4つのコンテンツを含み、8tの長さを有する1つのコンテンツは、符号ストリームブロックの1つのグループに対応することを示す。例えば、8tの長さは、64ビットである。符号ストリームブロックの4つのグループにおける制御ブロックは、全て0x00に設定され、4つの64ビットコンテンツは、それぞれ符号ストリームブロックの4つのグループにおけるデータブロックのコンテンツとして使用される。
【0216】
例えば、jは、符号ストリームブロックの4つのグループのうちの1つのグループのシーケンス番号を表し、ここで、j=0,1,2,又は3である。
RXC_j<7:0>は、符号ストリームブロックのグループjにおける制御ブロックを表し、RXD_j<63:0>は、符号ストリームブロックのグループjにおけるデータブロックを表し、rx_coded<256:0>は、ターゲット符号ブロックを表し、rx_coded<0>は、ターゲット符号ブロックのタイプを表し、rx_coded<(64j+64):(64j+1)>は、ターゲット符号ブロックのビット(64j+64)~ビット(64j+1)を表し、RXC_j<7:0>及びRXD_j<63:0>のコンテンツは、以下の式3及び式4において示される:
RXC_j<7:0>=0x00、ここで、j=0,1,2,又は3(式3)
RXD_j<63:0>=rx_coded<(64j+64):(64j+1)>、ここで、j=0,1,2,又は3(式4)
【0217】
式3では、RXC_j<7:0>=0x00は、符号ストリームブロックの各グループにおける制御ブロックが0x00であることを示す。式4では、RXD_j<63:0>=rx_coded<(64j+64):(64j+1)>は、データユニットの64ビットごとが符号ストリームブロックの1つのグループにおけるデータブロックの64ビットとして使用されることを示す。
【0218】
例えば、j=0である場合、RXD_0<63:0>=rx_coded<64:1>は、ターゲット符号ブロックのビット64~ビット1がそれぞれ符号ストリームブロックのグループ0におけるデータブロックのビット63~ビット0として使用されることを示す。j=1である場合、RXD_1<63:0>=rx_coded<128:65>は、ターゲット符号ブロックのビット128~ビット65がそれぞれ符号ストリームブロックのグループ1におけるデータブロックのビット63~ビット0として使用されることを示す。j=2である場合、RXD_2<63:0>=rx_coded<192:129>は、ターゲット符号ブロックのビット192~ビット129がそれぞれ符号ストリームブロックのグループ2におけるデータブロックのビット63~ビット0として使用されることを示す。j=3である場合、RXD_3<63:0>=rx_coded<256:193>は、ターゲット符号ブロックのビット256~ビット193がそれぞれ符号ストリームブロックのグループ3におけるデータブロックのビット63~ビット0として使用されることを示す。
【0219】
復号方式2では、ターゲット符号ブロックのタイプは、ターゲット符号ブロックのタイプに基づいて制御符号ブロックとして決定され、ここで、ターゲット符号ブロックのデータユニットは、符号ブロックID及び符号ブロックコンテンツを含み、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの2個のグループにおける制御ブロックは、タイプ及び符号ブロックIDに基づいて取得され、第1の復号は、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得される。
【0220】
例えば、タイプが、ターゲット符号ブロックが制御符号ブロックであることを示す場合、第1の復号は、復号方式2においてターゲット符号ブロックに対して実行されて、符号ストリームブロックの2個のグループが取得される。符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ及び符号ブロックIDに基づいて取得され、符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0221】
可能な実装では、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。符号ストリームブロックの2個のグループにおける制御ブロックがタイプ及び符号ブロックIDに基づいて取得されること、及び第1の復号がタイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得されることは:符号ストリームブロックの2個のグループ内に含まれる制御ブロックがタイプ、第1のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビットに基づいて取得されること、及び第1の復号が、タイプ、第1のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビットに基づいて決定された復号方式において、符号ブロックコンテンツに対して実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得されることを含む。
【0222】
換言すれば、符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得される。
【0223】
例えば、符号ストリームブロックのグループi内に含まれるデータブロックのタイプは、符号ストリームブロックのグループi内に含まれる制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれるデータブロックのコンテンツに基づいて決定される。
【0224】
符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションの複数のケースが、一意の符号ブロックIDを使用することによって示され、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションは、ターゲット符号ブロックの符号ブロックIDに基づいて取得することができ、それにより、ターゲット符号ブロックの復号方式は、タイプ及び符号ブロックIDに基づいて決定することができる。したがって、符号ストリームブロックの2個のグループにおける制御ブロックは、タイプ及び符号ブロックIDに基づいて取得することができ、第1の復号は、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックに対して実行されて、符号ブロックコンテンツが取得される。
【0225】
復号方式3では、ターゲット符号ブロックのタイプ及びデータユニットに基づいて、ターゲット符号ブロックのタイプは、誤り符号ブロックとして決定され;符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値に設定され、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値に設定され、第1の値及び第2の値は、符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0226】
例えば、データユニットは、符号ブロックIDを含み、タイプ及び符号ブロックIDは、ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、第1の値及び第2の値は、符号ストリームブロックが誤り符号ストリームブロックであることを示す。例えば、ターゲット符号ブロックのタイプは0であり、符号ブロックIDは1111であり、ターゲット符号ブロックは、誤り符号ブロックであり、第1の復号を通じて取得される符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは0xFFであり、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、0xFEFEFEFEである。
【0227】
本願のこの実施形態において提供される復号方法によれば、第1の復号を、ターゲット符号ブロックの異なるタイプに対して実行して、符号ストリームブロックの2個のグループを取得することができる。したがって、この方法は、広く適用される。
【0228】
可能な実装では、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは:ターゲット符号ブロックのタイプ及びデータユニットに基づいて誤り検出結果を取得すること;及び誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することを含む。換言すれば、符号ストリームブロックの2個のグループは、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得され、誤り検出結果は、ターゲット符号ブロックのタイプ及びデータユニットに基づいて取得される。
【0229】
例えば、ターゲット符号ブロックのタイプ及びデータユニットに基づいて誤り検出結果を取得することは:ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックのコンテンツ及びコンテンツシーケンスを取得すること、及びターゲット符号ブロックのコンテンツ及びコンテンツシーケンスに基づいて誤り検出結果を取得することを含む。例えば、ターゲット符号ブロックのコンテンツシーケンスが第3の誤りケースセットにおける少なくとも1つのケースである場合、ターゲット符号ブロックのコンテンツシーケンスにおいて誤りが発生し;又はターゲット符号ブロックのコンテンツシーケンスが第3の誤りケースセットにおけるいずれのケースでもない場合、ターゲット符号ブロックのコンテンツシーケンスは正しい。別の例として、ターゲット符号ブロックのコンテンツが第4の誤りケースセットにおける少なくとも1つのケースである場合、ターゲット符号ブロックのコンテンツにおいて誤りが発生し;又はターゲット符号ブロックのコンテンツが第4の誤りケースセットにおけるいずれのケースでもない場合、ターゲット符号ブロックのコンテンツは正しい。
【0230】
可能な実装では、ターゲット符号ブロックが制御符号ブロックであり、かつターゲット符号ブロックが4つのビットグループを含む一例が説明のために使用される。1つのビットグループは、第1の復号を通じて取得される符号ストリームブロックの1つのグループに対応する。2つの隣接したビットグループについて、第3の誤りケースセットは、以下の4つのケースを含むが、これらに限定されない。
【0231】
(1)前者のビットグループが開始制御文字(/S/)を含む場合、後者のビットグループは、データ文字(/D/)ではない他のコンテンツを含む。
【0232】
(2)前者のビットグループがデータ文字のみを含む場合、後者のビットグループは、データ文字又は終端制御文字(/T/)ではない他のコンテンツを含む。
【0233】
(3)前者のビットグループが終端制御文字を含む場合、後者のビットグループは、アイドル制御文字(/I/)又はシーケンス順序付きセット制御文字(/O/)ではない他のコンテンツを含む。
【0234】
(4)前者のビットグループがアイドル制御文字又はシーケンス順序付きセット制御文字を含む場合、後者のビットグループは、データ文字又は終端制御文字を含む。
【0235】
可能な実装では、1つのビットグループが説明のための一例として使用され、第4の誤りケースセットは、以下の4つのケースを含むがこれらに限定されない。
【0236】
(1)開始制御文字を含むビットグループについて、開始制御文字には、データ文字ではない他のコンテンツが後続する。
【0237】
(2)データ文字を含むビットグループについて、データ文字には、データ文字又は終端制御文字ではない他のコンテンツが後続する。
【0238】
(3)終端制御文字を含むビットグループについて、終端制御文字には、アイドル制御文字又はシーケンス順序付きセット制御文字ではない他のコンテンツが後続する。
【0239】
(4)アイドル制御文字又はシーケンス順序付きセット制御文字を含むビットグループについて、アイドル制御文字又はシーケンス順序付きセット制御文字には、データ文字又は終端制御文字が後続する。
【0240】
可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは:ターゲット符号ブロックを変換して、第2の符号ブロックを取得すること、及び第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することを含み、ここで、第2の符号ブロックは、ターゲット符号ブロックを変換することによって取得され、かつターゲット符号ブロックと同じ数のビットを有する符号ブロックである。換言すれば、符号ストリームブロックの2個のグループは、第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して第1の復号を実行することによって取得され、第2の符号ブロックは、ターゲット符号ブロックを変換することによって取得され、かつターゲット符号ブロックと同じ数のビットを有する符号ブロックである。
【0241】
例えば、ターゲット符号ブロックを変換して、第2の符号ブロックを取得することは:ターゲット符号ブロックにあり、かつコンテンツシーケンス誤り又はコンテンツ誤りを有するビットグループについて、コンテンツシーケンス誤り又はコンテンツ誤りを有するビットグループを、誤り制御文字に変換すること;及び誤り制御文字、及びターゲット符号ブロックにあり、かつ正しいコンテンツシーケンス及び正しいコンテンツを有するビットグループに基づいて第2の符号ブロックを取得することを含む。可能な実装では、変換を通じて取得された第2の符号ブロックは、制御符号ブロックであり、第1の復号は、復号方式2において第2の符号ブロックに対して実行されてよい。
【0242】
別の可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは:ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、第1の符号ストリームブロックの2個のグループを取得すること、及び第1の符号ストリームブロックの2個のグループを変換して、符号ストリームブロックの2個のグループを取得することを含む。換言すれば、符号ストリームブロックの2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの2個のグループは、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得される。
【0243】
例えば、第1の符号ストリームブロックの2個のグループを変換して、符号ストリームブロックの2個のグループを取得することは:符号ストリームブロックを誤り符号ストリームブロックに変換することを含み、ここで、符号ストリームブロックは、第1の符号ストリームブロックの2個のグループにあり、かつコンテンツシーケンス誤り又はコンテンツ誤りを有するビットグループに基づいて取得される。例えば、誤り符号ストリームブロックでは、制御ブロックは0xFFであり、データブロックは0xFEFEFEFEである。誤りが発生しているターゲット符号ブロックは、データの信頼性を保証するために、受信端が誤りデータ及び正しいデータの間で区別することができるように処理される。
【0244】
本願のこの実施形態において提供される復号方法によれば、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに、ターゲット符号ブロックに対して第1の復号を実行することによって取得される。したがって、復号効率が改善され、復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0245】
前述の記載は、本願の実施形態において提供される符号化方法を説明している。前述の方法に対応して、本願の実施形態は、符号化装置を更に提供する。図21は、本願の一実施形態に係る符号化装置の構造の概略図である。装置は、第1のネットワークデバイスにおいて使用され、第1のネットワークデバイスは、図1に示されている実施形態における第1のネットワークデバイスである。図21に示されている以下の複数のモジュールに基づいて、図21に示されている符号化装置は、第1のネットワークデバイスによって実行される全ての又は幾つかの動作を実行することができる。装置は、示されているモジュールではない更なる追加のモジュールを含んでよく、又は示されているモジュールの幾つかが省略されることが理解されるべきである。これは、本願のこの実施形態において限定されない。図21に示されているように、装置は:
符号ストリームブロックの2個のグループを取得するように構成された取得モジュール2201、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得するように構成された第1の符号化モジュール2202、ここで、ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、データユニットは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定された符号化方式において、符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される
を備える。
【0246】
可能な実装では、タイプは、ターゲット符号ブロックがデータ符号ブロックであることを示し;データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される。
【0247】
可能な実装では、タイプは、ターゲット符号ブロックが制御符号ブロックであることを示し;データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、符号ブロックコンテンツは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得され、符号ブロックIDは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得され、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0248】
可能な実装では、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0249】
可能な実装では、符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0250】
可能な実装では、符号ブロックIDは、ハミング距離保護を有する。
【0251】
可能な実装では、ターゲット符号ブロックは、誤り符号ブロックであり、誤り符号ブロックは、誤りインジケーションデータを含む。
【0252】
可能な実装では、ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの2個のグループを処理することによって取得され、誤り検出結果は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得される。
【0253】
可能な実装では、誤り検出結果は、符号ストリームブロックの2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに基づいて第1の符号化を実行することによって取得され、誤りブロックは、符号ストリームブロックの2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。
【0254】
可能な実装では、制御ブロックは、tビットを含み、データブロックは、8tビットを含み、tは、正の整数である。
【0255】
可能な実装では、nの値は2であり、tの値は8であり、ターゲット符号ブロックは257ビットである。
【0256】
可能な実装では、符号ストリームブロックの2個のグループの全てが、媒体独立インターフェースMIIからのものである。
【0257】
可能な実装では、装置は:前方誤り訂正FEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得するように構成された第2の符号化モジュール2203;及び第1のデータを送信するように構成された送信モジュール2204を更に備える。
【0258】
本願のこの実施形態において提供される符号化装置によれば、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行して2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループに対して第1の符号化を実行することによって取得される。したがって、符号化効率が改善され、符号化プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0259】
前述の記載は、本願の実施形態において提供される復号方法を説明している。前述の方法に対応して、本願の実施形態は、復号装置を更に提供する。図22は、本願の一実施形態に係る復号装置の構造の概略図である。装置は、第2のネットワークデバイスにおいて使用され、第2のネットワークデバイスは、図1に示されている実施形態における第2のネットワークデバイスである。図22に示されている以下の複数のモジュールに基づいて、図22に示されている復号装置は、第2のネットワークデバイスによって実行される全ての又は幾つかの動作を実行することができる。装置は、示されているモジュールではない更なる追加のモジュールを含んでよく、又は示されているモジュールの幾つかが省略されることが理解されるべきである。これは、本願のこの実施形態において限定されない。図22に示されているように、装置は:
ターゲット符号ブロックを取得するように構成された取得モジュール2301、ここで、ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得するように構成された復号モジュール2302、ここで、符号ストリームブロックの任意のグループは、データブロック、及びタイプ及びデータユニットに基づいて取得される制御ブロックを含み、データブロックは、タイプ及びデータユニットに基づいて決定された復号方式において、データユニットに対して第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える。
【0260】
可能な実装では、タイプは、ターゲット符号ブロックがデータ符号ブロックであることを示し;符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0261】
可能な実装では、タイプは、ターゲット符号ブロックが制御符号ブロックであることを示し、データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ及び符号ブロックIDに基づいて取得され、符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0262】
可能な実装では、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得される。
【0263】
可能な実装では、符号ストリームブロックのグループi内に含まれるデータブロックのタイプは、符号ストリームブロックのグループi内に含まれる制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれるデータブロックのコンテンツに基づいて決定される。
【0264】
可能な実装では、符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0265】
可能な実装では、符号ブロックIDは、ハミング距離保護を有する。
【0266】
可能な実装では、データユニットは、符号ブロック識別子IDを含み、タイプ及び符号ブロックIDは、ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、第1の値及び第2の値は、符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0267】
可能な実装では、取得モジュール2301は:第2のデータを受信すること、ここで、第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び第2のデータに対して第2の復号を実行して、ターゲット符号ブロックを取得すること、ここで、第2の復号は、誤り訂正処理である、を行うように構成されている。
【0268】
可能な実装では、ターゲット符号ブロックは、誤り訂正が第2のデータに対して実行されたが誤り訂正が失敗した場合に取得される誤り符号ブロックである。
【0269】
可能な実装では、取得モジュール2301は:第2のデータを受信すること、ここで、第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び第2のデータに対して第2の復号を実行して、ターゲット符号ブロックを取得すること、ここで、第2の復号は、誤り訂正が回避される誤り検出処理である、を行うように構成されている。
【0270】
可能な実装では、ターゲット符号ブロックは、第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである。
【0271】
可能な実装では、符号ストリームブロックの2個のグループは、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得され、誤り検出結果は、ターゲット符号ブロックのタイプ及びデータユニットに基づいて取得される。
【0272】
可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの2個のグループは、第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して第1の復号を実行することによって取得され、第2の符号ブロックは、ターゲット符号ブロックを変換することによって取得され、かつターゲット符号ブロックと同じ数のビットを有する符号ブロックである。
【0273】
可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの2個のグループは、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得される。
【0274】
可能な実装では、制御ブロックは、tビットを含み、データブロックは、8tビットを含み、tは、正の整数である。
【0275】
可能な実装では、nの値は2であり、tの値は8であり、ターゲット符号ブロックは257ビットである。
【0276】
可能な実装では、符号ストリームブロックの2個のグループの全てが媒体独立インターフェースMIIフォーマットである。
【0277】
本願のこの実施形態において提供される復号装置によれば、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに、ターゲット符号ブロックを復号することによって取得される。したがって、復号効率が改善され、復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0278】
図21及び図22において提供される装置が装置の機能を実装する場合、前述の機能モジュールへの分割は、説明のための一例として単に使用されることが理解されるべきである。実際の応用では、前述の機能は、必要に応じて実装のために異なる機能モジュールに割り当てられてよい。換言すれば、上記で説明された機能の全て又は幾つかを実装するように、デバイスの内部構造は異なる機能モジュールに分割される。加えて、前述の実施形態において提供された装置及び方法の実施形態は、同じ概念に属する。装置の特定の実装プロセスについては、方法の実施形態を参照されたい。詳細は、本明細書において再び説明されない。
【0279】
前述の実施形態におけるデバイスの特定のハードウェア構造については、図23に示されているネットワークデバイス1500を参照されたい。ネットワークデバイス1500は、送受信機1501、プロセッサ1502、及びメモリ1503を備える。送受信機1501、プロセッサ1502、及びメモリ1503は、バス1504を通じて互いに接続されている。送受信機1501は、パケットを受信するとともに、パケットを送信するように構成されている。メモリ1503は、命令又はプログラムコードを記憶するように構成されている。プロセッサ1502は、デバイスが前述の方法の実施形態における第1のネットワークデバイス又は第2のネットワークデバイスの関連した処理段階を実行することを可能するための、メモリ1503における命令又はプログラムコードを呼び出すように構成されている。特定の実施形態では、本願のこの実施形態におけるネットワークデバイス1500は、前述の方法の実施形態の各々における第1のネットワークデバイス又は第2のネットワークデバイスに対応してよい。ネットワークデバイス1500におけるプロセッサ1502は、図23に示されているネットワークデバイス1500が第1のネットワークデバイス又は第2のネットワークデバイスによって実行される動作の全て又は幾つかを実行することを可能にするための、メモリ1503における命令又はプログラムコードを読み取る。
【0280】
ネットワークデバイス1500は、図21及び図22に示されている装置に更に対応してよい。例えば、図21及び図22における取得モジュール2201及び取得モジュール2301は、送受信機1501と同等であり、第1の符号化モジュール2202及び復号モジュール2302は、プロセッサ1502と同等である。
【0281】
図24は、本願の例示の実施形態において提供されるネットワークデバイス2000の構造の概略図である。図24に示されているネットワークデバイス2000は、図2に示されている符号化方法に関連した動作及び図19に示されている復号方法に関連した動作を実行するように構成されている。ネットワークデバイス2000は、例えば、スイッチ又はルータである。
【0282】
図24に示されているように、ネットワークデバイス2000は、少なくとも1つのプロセッサ2001、メモリ2003、及び少なくとも1つの通信インターフェース2004を備える。
【0283】
プロセッサ2001は、例えば、汎用中央処理ユニット(central processing unit、CPU)、デジタル信号プロセッサ(digital signal processor、DSP)、ネットワークプロセッサ(network processor、NP)、グラフィックス処理ユニット(graphics processing unit、GPU)、ニューラルネットワーク処理ユニット(neural network processing unit、NPU)、データ処理ユニット(Data Processing Unit、DPU)、マイクロプロセッサ、又は本願の解決手段を実装するように構成された1つ又は複数の集積回路である。例えば、プロセッサ2001は、特定用途向け集積回路(application-specific integrated circuit、ASIC)、プログラマブルロジックデバイス(programmable logic device、PLD)又は別のプログラマブルロジックデバイス、トランジスタロジックデバイス、ハードウェアコンポーネント、又はこれらの任意の組み合わせを含む。PLDは、例えば、コンプレックスプログラマブルロジックデバイス(complex programmable logic device、CPLD)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)、ジェネリックアレイロジック(generic array logic、GAL)、又はこれらの任意の組み合わせである。プロセッサは、本発明の実施形態において開示されるコンテンツを参照して説明される様々な論理ブロック、モジュール、及び回路を実装又は実行してよい。プロセッサは、代替的には、コンピューティング機能を実装するプロセッサの組み合わせ、例えば、1つ又は複数のマイクロプロセッサの組み合わせ、又はDSP及びマイクロプロセッサの組み合わせであってよい。
【0284】
任意選択で、ネットワークデバイス2000は、バスを更に備える。バスは、ネットワークデバイス2000のコンポーネント間の情報を送信するように構成されている。バスは、ペリフェラルコンポーネントインターコネクト(peripheral component interconnect、略してPCI)バス、拡張業界標準アーキテクチャ(extended industry standard architecture、略してEISA)バス、又は同様のものであってよい。バスは、アドレスバス、データバス、制御バス、及び同様のものに分類されてよい。表現を容易にするために、図24においてバスを表すのに1つの太線のみが使用されているが、これは、1つのバスのみ又は1つのタイプのバスのみが存在することを意味しない。バスを通じて接続されることに加えて、図24におけるネットワークデバイス2000のコンポーネントは、別の方式において接続されてよい。コンポーネントが接続される方式は、本発明のこの実施形態において限定されない。
【0285】
メモリ2003は、例えば、リードオンリメモリ(read-only memory、ROM)又は静的情報及び命令を記憶することができる別のタイプの静的記憶デバイス、又はランダムアクセスメモリ(random access memory、RAM)又は情報及び命令を記憶することができる別のタイプの動的記憶デバイス、又は電気的消去可能プログラマブルリードオンリメモリ(electrically erasable programmable read-only Memory、EEPROM)、コンパクトディスクリードオンリメモリ(compact disc read-only memory、CD-ROM)又は別のコンパクトディスクストレージ、光ディスクストレージ(コンパクトディスク、レーザディスク、光ディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク、及び同様のものを含む)、磁気ディスク記憶媒体又は別の磁気記憶デバイス、又は命令又はデータ構造の形式における予期されるプログラムコードを搬送又は記憶するために使用することができ、かつコンピュータによってアクセスすることができる他の任意の媒体であるが、これらに限定されない。例えば、メモリ2003は、独立して存在し、バスを通じてプロセッサ2001に接続されている。代替的には、メモリ2003及びプロセッサ2001は、ともに統合されてよい。
【0286】
通信インターフェース2004は、送受信機等の任意の装置を使用し、別のデバイス又は通信ネットワークと通信するように構成されている。通信ネットワークは、イーサネット(登録商標)、無線アクセスネットワーク(RAN)、無線ローカルエリアネットワーク(wireless local area network、WLAN)、又は同様のものであってよい。通信インターフェース2004は、有線通信インターフェースを含んでよく、無線通信インターフェースを更に含んでよい。具体的には、通信インターフェース2004は、イーサネット(登録商標)(ethernet(登録商標))インターフェース、高速イーサネット(登録商標)(fast ethernet(登録商標)、FE)インターフェース、ギガビットイーサネット(登録商標)(gigabit ethernet(登録商標)、GE)インターフェース、非同期転送モード(asynchronous transfer mode、ATM)インターフェース、無線ローカルエリアネットワーク(wireless local area network、WLAN)インターフェース、セルラネットワーク通信インターフェース、又はこれらの組み合わせであってよい。イーサネット(登録商標)インターフェースは、光インターフェース、電気インターフェース、又はこれらの組み合わせであってよい。本願のこの実施形態では、通信インターフェース2004は、ネットワークデバイス2000によって、別のデバイスと通信するのに使用されてよい。
【0287】
特定の実装の間、一実施形態では、プロセッサ2001は、1つ又は複数のCPU、例えば、図24に示されているCPU0及びCPU1を含んでよい。これらのプロセッサの各々は、シングルコア(single-CPU)プロセッサであってもよいし、又はマルチコア(multi-CPU)プロセッサであってもよい。本明細書におけるプロセッサは、データ(例えば、コンピュータプログラム命令)を処理するように構成された1つ又は複数のデバイス、回路、及び/又は処理コアであってよい。
【0288】
特定の実装の間、一実施形態では、ネットワークデバイス2000は、図24におけるプロセッサ2001及びプロセッサ2005等の複数のプロセッサを含んでよい。これらのプロセッサの各々は、シングルコア(single-CPU)プロセッサであってもよいし、又はマルチコア(multi-CPU)プロセッサであってもよい。本明細書におけるプロセッサは、データ(例えば、コンピュータプログラム命令)を処理するように構成された1つ又は複数のデバイス、回路、及び/又は処理コアであってよい。
【0289】
特定の実装の間、一実施形態では、ネットワークデバイス2000は、出力デバイス及び入力デバイスを更に備えてよい。出力デバイスは、プロセッサ2001と通信し、情報を複数の方式において表示してよい。例えば、出力デバイスは、液晶ディスプレイ(liquid crystal display、LCD)、発光ダイオード(light emitting diode、LED)ディスプレイデバイス、ブラウン管(cathode ray tube、CRT)ディスプレイデバイス、又はプロジェクタ(projector)であってよい。入力デバイスは、プロセッサ2001と通信し、複数の方式においてユーザからの入力を受信してよい。例えば、入力デバイスは、マウス、キーボード、タッチスクリーンデバイス、又はセンシングデバイスであってよい。
【0290】
幾つかの実施形態では、メモリ2003は、本願の解決手段を実行するためのプログラムコード2010を記憶するように構成されており、プロセッサ2001は、メモリ2003に記憶されたプログラムコード2010を実行してよい。換言すれば、ネットワークデバイス2000は、プロセッサ2001、及びメモリ2003におけるプログラムコード2010を使用することによって方法の実施形態において提供される符号化方法又は復号方法を実装してよい。プログラムコード2010は、1つ又は複数のソフトウェアモジュールを含んでよい。任意選択で、プロセッサ2001は、代替的には、本願の解決手段を実行するためのプログラムコード又は命令を記憶してよい。
【0291】
特定の実施形態では、本願のこの実施形態におけるネットワークデバイス2000は、前述の方法の実施形態の各々における第1のネットワークデバイス又は第2のネットワークデバイスに対応してよい。ネットワークデバイス2000におけるプロセッサ2001は、図24に示されているネットワークデバイス2000が第1のネットワークデバイス又は第2のネットワークデバイスによって実行される動作の全て又は幾つかを実行することを可能にするための、メモリ2003におけるプログラムコード2010又はプロセッサ2001に記憶されたプログラムコード又は命令を読み取る。
【0292】
ネットワークデバイス2000は、図21及び図22に示されている装置に更に対応してよい。図21及び図22に示されている装置における各機能モジュールは、ネットワークデバイス2000のソフトウェアを使用することによって実装される。換言すれば、図21及び図22に示されている装置内に含まれる機能モジュールは、ネットワークデバイス2000におけるプロセッサ2001がメモリ2003に記憶されたプログラムコード2010を読み取った後に生成される。例えば、図21及び図22における取得モジュール2201及び取得モジュール2301は、通信インターフェース2004と同等であり、第1の符号化モジュール2202及び復号モジュール2302は、プロセッサ2001及び/又はプロセッサ2005と同等である。
【0293】
図2及び図19に示されている方法の段階は、ネットワークデバイス2000のプロセッサにおけるハードウェアの集積ロジック回路又はソフトウェアの形式における命令を使用することによって企図される。本願の実施形態を参照して開示される方法の段階は、ハードウェアプロセッサによって直接実行されてもよいし、又はプロセッサにおけるハードウェア及びソフトウェアモジュールの組み合わせによって実行されてもよい。ソフトウェアモジュールは、ランダムアクセスメモリ、フラッシュメモリ、リードオンリメモリ、プログラマブルリードオンリメモリ、電気的消去可能プログラマブルメモリ、又はレジスタ等の当該技術分野における成熟した記憶媒体に位置してよい。記憶媒体は、メモリに位置する。プロセッサは、メモリにおける情報を読み取り、プロセッサのハードウェアと組み合わせて前述の方法の段階を企図する。繰り返しを回避するために、詳細は、本明細書において再び説明されない。
【0294】
図25は、本願の別の例示の実施形態において提供されるネットワークデバイス2100の構造の概略図である。図25に示されているネットワークデバイス2100は、図2及び図19に示されている方法における動作の全て又は幾つかを実行するように構成されている。ネットワークデバイス2100は、例えば、スイッチ又はルータである。ネットワークデバイス2100は、ジェネリックバスアーキテクチャによって実装されてよい。
【0295】
図25に示されているように、ネットワークデバイス2100は、メイン制御ボード2110及びインターフェースボード2130を備える。
【0296】
メイン制御ボードは、メイン処理ユニット(main processing unit、MPU)又はルートプロセッサカード(route processor card)とも称される。メイン制御ボード2110は、ルート計算、デバイス管理、デバイスメンテナンス、及びプロトコル処理機能を含む、ネットワークデバイス2100におけるコンポーネントを制御及び管理するように構成されている。メイン制御ボード2110は、中央処理ユニット2111及びメモリ2112を備える。
【0297】
インターフェースボード2130は、ラインインターフェースユニットカード(line processing unit、LPU)、ラインカード(line card)、又はサービスボードとも称される。インターフェースボード2130は、様々なサービスインターフェースを提供し、データパケット転送を実装するように構成されている。サービスインターフェースは、イーサネット(登録商標)インターフェース、POS(packet over SONET/SDH)インターフェース、及び同様のものを含むが、これらに限定されない。イーサネット(登録商標)インターフェースは、例えば、フレキシブルイーサネット(登録商標)サービスインターフェース(flexible ethernet clients、FlexE Clients)である。インターフェースボード2130は:中央処理ユニット2131、ネットワークプロセッサ2132、転送エントリメモリ2134、及び物理インターフェースカード(physical interface card、PIC)2133を備える。
【0298】
インターフェースボード2130上の中央処理ユニット2131は:インターフェースボード2130を制御及び管理し、メイン制御ボード2110上の中央処理ユニット2111と通信するように構成されている。
【0299】
ネットワークプロセッサ2132は、パケット送信処理を実装するように構成されている。ネットワークプロセッサ2132の一形式は、転送チップであってよい。転送チップは、ネットワークプロセッサ(network processor、NP)であってよい。幾つかの実施形態では、転送チップは、特定用途向け集積回路(application-specific integrated circuit、ASIC)又はフィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)を使用することによって実装されてよい。具体的には、ネットワークプロセッサ2132は、転送エントリメモリ2134に記憶された転送テーブルに基づいて、受信されたパケットを転送するように構成されている。パケットの宛先アドレスがネットワークデバイス2100のアドレスである場合、ネットワークプロセッサ2132は、処理のためにパケットをCPU(例えば、中央処理ユニット2131)に送信する。パケットの宛先アドレスがネットワークデバイス2100のアドレスではない場合、ネットワークプロセッサ2132は、宛先アドレスに基づいた転送テーブルから、宛先アドレスに対応するネクストホップ及びエグレスインターフェースを発見し、パケットを、宛先アドレスに対応するエグレスインターフェースに転送する。アップリンクパケットを処理することは:パケットのインバウンドインターフェースを処理すること、及び転送テーブルを検索することを含んでよい。ダウンリンクパケットを処理することは:転送テーブルを検索すること、及び同様のものを含んでよい。幾つかの実施形態では、中央処理ユニットは、転送チップの機能を実行してもよく、例えば、インターフェースボードにおいて転送チップが必要とされないように、汎用CPUに基づいてソフトウェア転送を実装してもよい。
【0300】
物理インターフェースカード2133は、元のトラフィックがインターフェースボード2130に入り、処理されたパケットが物理インターフェースカード2133から送出されるように、物理層インターコネクション機能を実装するように構成されている。物理インターフェースカード2133は、サブカードとも称され、インターフェースボード2130上に取り付けられてよく、光/電気信号をパケットに変換すること、パケットに対して有効性チェックを実行すること、及びその後処理のためにパケットをネットワークプロセッサ2132に転送することを担当する。幾つかの実施形態では、中央処理ユニット2131は、ネットワークプロセッサ2132の機能を実行してもよく、例えば、汎用CPUに基づいてソフトウェア転送を実装してもよい。したがって、ネットワークプロセッサ2132は、物理インターフェースカード2133において必要とされない。
【0301】
任意選択で、ネットワークデバイス2100は、複数のインターフェースボードを備える。例えば、ネットワークデバイス2100は、インターフェースボード2140を更に備える。インターフェースボード2140は、中央処理ユニット2141、ネットワークプロセッサ2142、転送エントリメモリ2144、及び物理インターフェースカード2143を備える。インターフェースボード2140におけるコンポーネントの機能及び実装は、インターフェースボード2130のものと同じ又は同様であり、詳細は、本明細書において再び説明されない。
【0302】
任意選択で、ネットワークデバイス2100は、スイッチングボード2120を更に備える。スイッチングボード2120は、スイッチファブリックユニット(switch fabric unit、SFU)とも称され得る。ネットワークデバイスが複数のインターフェースボードを有する場合、スイッチングボード2120は、インターフェースボード間のデータ交換を実行するように構成されている。例えば、インターフェースボード2130及びインターフェースボード2140は、スイッチングボード2120を使用することによって互いに通信してよい。
【0303】
メイン制御ボード2110は、インターフェースボードに結合される。例えば、メイン制御ボード2110、インターフェースボード2130、インターフェースボード2140、及びスイッチングボード2120は、相互作用のためにシステムバスを使用することによってシステムバックボードに接続される。可能な実装では、プロセス間通信(inter-process communication、IPC)プロトコルチャネルが、メイン制御ボード2110、インターフェースボード2130、及びインターフェースボード2140の間で確立される。メイン制御ボード2110は、IPCチャネルを通じてインターフェースボード2130及びインターフェースボード2140と通信する。
【0304】
論理的に、ネットワークデバイス2100は、制御プレーン及び転送プレーンを含む。制御プレーンは、メイン制御ボード2110及び中央処理ユニット2111を含む。転送プレーンは、転送を実行するコンポーネント、例えば、転送エントリメモリ2134、物理インターフェースカード2133、及びネットワークプロセッサ2132を含む。制御プレーンは、ルータ、転送テーブルの生成、シグナリング及びプロトコルパケットの処理、及びネットワークデバイスの状態の構成及び維持等の機能を実行する。制御プレーンは、生成された転送テーブルを転送プレーンに送達する。転送プレーン上で、ネットワークプロセッサ2132は、制御プレーンによって送達された転送テーブルに基づいて、物理インターフェースカード2133によって受信されたパケットを転送するためのテーブルを検索する。制御プレーンによって送達された転送テーブルは、転送エントリメモリ2134に記憶されてよい。幾つかの実施形態では、制御プレーン及び転送プレーンは、完全に別個であってよく、同じネットワークデバイス上にはない。
【0305】
1つ又は複数のメイン制御ボードが存在してよく、複数のメイン制御ボードが存在する場合、一次メイン制御ボード及び二次メイン制御ボードが含まれてよいことに留意されたい。1つ又は複数のインターフェースボードが存在してよい。より強力なデータ処理能力を有するネットワークデバイスは、より大きい数のインターフェースボードを提供する。インターフェースボード上に1つ又は複数の物理インターフェースカードが存在してもよい。スイッチングボードは存在しなくてもよいし、又は1つ又は複数のスイッチングボードが存在してもよい。複数のスイッチングボードが存在する場合、負荷分散及び冗長性バックアップがともに実装されてよい。集中型転送アーキテクチャでは、ネットワークデバイスは、スイッチングボードを必要としなくてよく、インターフェースボードが、システム全体のサービスデータを処理する機能を実行する。分散転送アーキテクチャでは、ネットワークデバイスは、少なくとも1つのスイッチングボードを有してよく、スイッチングボードを使用することによって複数のインターフェースボード間のデータ交換を実装して、大容量データ交換及び処理能力を提供する。したがって、分散アーキテクチャにおけるネットワークデバイスのデータアクセス及び処理能力は、集中化アーキテクチャにおけるネットワークデバイスのものよりも高い。任意選択で、ネットワークデバイスの形式は、代替的には、単一のボードであってよい。すなわち、スイッチファブリックボードが存在せず、インターフェースボード及びメイン制御ボードの機能は、ボードに統合される。このケースでは、インターフェースボード上の中央処理ユニット及びメイン制御ボード上の中央処理ユニットは、ボード上の1つの中央処理ユニットに組み合わされてよい。ボード上の1つの中央処理ユニットは、2つの中央処理ユニットが組み合わされた後に存在する2つの中央処理ユニットの機能を実行する。この形式におけるネットワークデバイスは、低いデータ交換及び処理能力を有する(例えば、低級のスイッチ又はルータ等のネットワークデバイス)。使用される特定のアーキテクチャは、特定のネットワーキング展開シナリオに依存する。これは、本明細書において限定されない。
【0306】
特定の実施形態では、ネットワークデバイス2100は、図21及び図22に示されている装置に対応する。幾つかの実施形態では、図21及び図22に示されている装置における取得モジュール2201及び取得モジュール2301は、ネットワークデバイス2100における物理インターフェースカード2133又は物理インターフェースカード2143と同等である。図21及び図22に示されている装置における第1の符号化モジュール2202及び復号モジュール2302は、ネットワークデバイス2100における中央処理ユニット2111、ネットワークプロセッサ2132、及びネットワークプロセッサ2142の少なくとも1つと同等である。
【0307】
図23図24、及び図25に示されているネットワークデバイスに基づいて、本願の一実施形態は、通信システムを更に提供する。システムは、第1のネットワークデバイス及び第2のネットワークデバイスを備える。任意選択で、第1のネットワークデバイスは、図23に示されているネットワークデバイス1500、図24に示されているネットワークデバイス2000、又は図25に示されているネットワークデバイス2100であり、第2のネットワークデバイスは、図23に示されているネットワークデバイス1500、図24に示されているネットワークデバイス2000、又は図25に示されているネットワークデバイス2100である。
【0308】
第1のネットワークデバイス及び第2のネットワークデバイスによって実行される方法については、図1図2、及び図19に示されている実施形態の関連した説明を参照されたい。詳細は、本明細書において再び説明されない。
【0309】
プロセッサは、中央処理ユニット(central processing unit、CPU)であってもよいし、又は別の汎用プロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)又は別のプログラマブルロジックデバイス、ディスクリートゲート又はトランジスタロジックデバイス、ディスクリートハードウェアコンポーネント、又は同様のものであってもよいことが理解されるべきである。汎用プロセッサは、マイクロプロセッサ、任意の従来のプロセッサ、又は同様のものであってよい。プロセッサは、アドバンスト縮小命令セットコンピューティングマシン(advanced RISC machines、ARM)アーキテクチャをサポートするプロセッサであってよいことに留意されたい。
【0310】
さらに、任意選択の実施形態では、メモリは、リードオンリメモリ及びランダムアクセスメモリを含み、命令及びデータをプロセッサに提供してよい。メモリは、不揮発性ランダムアクセスメモリを更に含んでよい。例えば、メモリは、デバイスタイプの情報を更に記憶してよい。
【0311】
メモリは、揮発性メモリ又は不揮発性メモリであってもよいし、又は揮発性メモリ及び不揮発性メモリの両方を含んでもよい。不揮発性メモリは、リードオンリメモリ(read-only memory、ROM)、プログラマブルリードオンリメモリ(programmable ROM、PROM)、消去可能プログラマブルリードオンリメモリ(erasable PROM、EPROM)、電気的消去可能プログラマブルリードオンリメモリ(electrically EPROM、EEPROM)、又はフラッシュメモリであってよい。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(random access memory、RAM)であってよい。限定ではなく例示として、多くの形式のRAM、例えば、スタティックランダムアクセスメモリ(static RAM、SRAM)、ダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)、シンクロナスダイナミックランダムアクセスメモリ(synchronous DRAM、SDRAM)、ダブルデータレートシンクロナスダイナミックランダムアクセスメモリ(double data rate SDRAM、DDR SDRAM)、拡張シンクロナスダイナミックランダムアクセスメモリ(enhanced SDRAM、ESDRAM)、シンクリンクダイナミックランダムアクセスメモリ(synchlink DRAM、SLDRAM)、及びダイレクトラムバスランダムアクセスメモリ(direct rambus RAM、DR RAM)が利用可能である。
【0312】
コンピュータ可読記憶媒体が更に提供される。記憶媒体は、少なくとも1つのプログラム命令又はコードを記憶する。プログラム命令又はコードがプロセッサによってロード及び実行されると、コンピュータは、図2における符号化方法又は図19における復号方法を実装することを可能にされる。
【0313】
本願は、コンピュータプログラム(製品)を提供する。コンピュータプログラムがコンピュータによって実行されると、プロセッサ又はコンピュータは、前述の方法の実施形態における対応する段階及び/又は手順を実行することを可能にされる。
【0314】
チップが提供される。チップは、プロセッサを備える。チップは、メモリから、チップが取り付けられている通信デバイスが前述の態様における方法を実行することを可能にするための、メモリに記憶された命令を呼び出し、これらを実行するように構成されている。
【0315】
別のチップが提供される。チップは、入力インターフェース、出力インターフェース、プロセッサ、及びメモリを備える。入力インターフェース、出力インターフェース、プロセッサ、及びメモリは、内部接続パスを通じて接続されている。プロセッサは、メモリにおけるコードを実行するように構成されている。コードが実行されると、プロセッサは、前述の態様における方法を実行するように構成されている。
【0316】
デバイスが更に提供される。デバイスは、前述のチップを備える。任意選択で、デバイスは、ネットワークデバイスである。例えば、デバイスは、ルータ、スイッチ、又はサーバである。
【0317】
前述の実施形態の全て又は幾つかが、ソフトウェア、ハードウェア、ファームウェア、又はこれらの任意の組み合わせを使用することによって実装されてよい。ソフトウェアが実施形態を実装するのに使用される場合、実施形態の全て又は一部がコンピュータプログラム製品の形式において実装されてよい。コンピュータプログラム製品は、1つ又は複数のコンピュータ命令を備える。コンピュータプログラム命令がコンピュータ上でロード及び実行されると、本願に係る手順又は機能が全て又は部分的に生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又は別のプログラマブル装置であってよい。コンピュータ命令は、コンピュータ可読記憶媒体に記憶されてもよいし、又はコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に送信されてもよい。例えば、コンピュータ命令は、あるウェブサイト、コンピュータ、サーバ、又はデータセンタから、別のウェブサイト、コンピュータ、サーバ、又はデータセンタに、有線(例えば、同軸ケーブル、光ファイバ、又はデジタル加入者線)又は無線(例えば、赤外線、無線、又はマイクロ波)方式で送信されてよい。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の使用可能媒体、又は1つ又は複数の使用可能媒体を統合するサーバ又はデータセンタ等のデータ記憶デバイスであってよい。使用可能媒体は、磁気媒体(例えば、フロッピーディスク、ハードディスク、又は磁気テープ)、光媒体(例えば、DVD)、又は半導体媒体(例えば、ソリッドステートドライブ(solid-state drive、SSD))、又は同様のものであってよい。
【0318】
前述の特定の実装では、本願の目的、技術的解決手段、及び有益な効果が更に詳細に説明されている。前述の説明は、本願の特定の実装にすぎず、本願の保護範囲を限定するように意図されていないことが理解されるべきである。本願の技術的解決手段に基づいて加えられる任意の修正、均等な置換、改善、又は同様のものは、本願の保護範囲に入るものとする。
【0319】
当業者であれば、本明細書において開示される実施形態において説明される方法の段階及びモジュールを参照して、方法の段階及びモジュールを、ソフトウェア、ハードウェア、ファームウェア、又はこれらの任意の組み合わせを使用することによって実装することができることを認識し得る。ハードウェア及びソフトウェアの間の交換可能性を明確に説明するために、実施形態の段階及び構成は、前述の説明における機能に関して全体的に説明されている。機能がハードウェアによって実行されるのか、又はソフトウェアによって実行されるのかは、技術的解決手段の特定の応用及び設計上の制約に依存する。当業者であれば、異なる方法を使用して、特定の応用ごとに説明された機能を実装し得るが、実装が本願の範囲を越えるものとみなされるべきではない。
【0320】
当業者であれば、実施形態の段階の全て又は幾つかがハードウェア、又は関連ハードウェアに命令するプログラムによって実装され得ることを理解し得る。プログラムは、コンピュータ可読記憶媒体に記憶されてよい。記憶媒体は、リードオンリメモリ、磁気ディスク、又は光ディスクを含んでよい。
【0321】
ソフトウェアが実施形態を実装するのに使用される場合、実施形態の全て又は一部がコンピュータプログラム製品の形式において実装されてよい。コンピュータプログラム製品は、1つ又は複数のコンピュータプログラム命令を含む。一例では、本願の実施形態に係る方法は、機械実行可能命令の状況において説明され得る。例えば、機械実行可能命令は、ターゲットの実際の又は仮想プロセッサ上で実行するためのコンポーネントにあるプログラムモジュール内に含まれる。概して、プログラムモジュールは、ルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造、及び同様のものを含み、特定のタスクを実行するか、又は特定の抽象データ構造を実装する。様々な実施形態において、プログラムモジュールの機能は、説明されたプログラムモジュール間で組み合わされてもよいし又は分割されてもよい。プログラムモジュールのための機械実行可能命令は、ローカルで又は分散デバイス内で実行されてよい。分散デバイスでは、プログラムモジュールは、ローカル記憶媒体及びリモート記憶媒体の両方に位置してよい。
【0322】
本願の実施形態における方法を実装するためのコンピュータプログラムコードは、1つ又は複数のプログラム言語において記述されてよい。コンピュータプログラムコードは、汎用コンピュータ、専用コンピュータ、又は別のプログラマブルデータ処理装置のプロセッサのために提供されてよく、それにより、プログラムコードがコンピュータ又は別のプログラマブルデータ処理装置によって実行されると、フローチャート及び/又はブロック図において指定される機能/動作が実装される。プログラムコードは、完全にコンピュータ上で、スタンドアロンソフトウェアパッケージとして部分的にコンピュータ上で、部分的にコンピュータ上でかつ部分的にリモートコンピュータ上で、又は完全にリモートコンピュータ又はサーバ上で、実行されてよい。
【0323】
本願の実施形態の状況では、コンピュータプログラムコード又は関連したデータは、任意の適切な搬送波において搬送されてよく、それにより、デバイス、装置、又はプロセッサは、上記で説明された様々なタイプの処理及び動作を実行することができる。搬送波の例としては、信号、コンピュータ可読媒体、及び同様のものが挙げられる。
【0324】
信号の例としては、電気信号、光信号、無線信号、音声信号、又は他の形式の伝播信号、例えば搬送波及び赤外線信号が挙げられ得る。
【0325】
機械可読媒体は、命令実行システム、装置、又はデバイスのための、又はこれに関するプログラムを含むか又は記憶する任意の有形媒体であってよい。機械可読媒体は、機械可読信号媒体又は機械可読記憶媒体であってよい。機械可読媒体は、電子、磁気、光、電磁気、赤外線、又は半導体システム、装置、又はデバイス、又はこれらの適切な組み合わせを含んでよいが、これらに限定されない。機械可読記憶媒体の更に詳細な例としては、1つ又は複数のワイヤを伴う電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、光記憶デバイス、磁気記憶デバイス、又はこれらの任意の適切な組み合わせを含む。
【0326】
当業者によって、簡便かつ簡潔な説明の目的で、前述のシステム、デバイス、及びモジュールの詳細な機能プロセスについては、前述の方法の実施形態における対応するプロセスを参照することが明確に理解され得る。詳細は、本明細書において再び説明されない。
【0327】
本願において提供される複数の実施形態において、開示されるシステム、デバイス、及び方法は、他の方式で実装され得ることが理解されるべきである。例えば、説明されるデバイスの実施形態は、単に一例に過ぎない。例えば、複数のモジュールへの分割は、論理機能への分割にすぎず、実際の応用中に他の分割モードが存在してよい。例えば、複数のモジュール又はコンポーネントは、組み合わされてもよいし、又は別のシステムに統合されてもよいし、又は幾つかの特性が無視されてもよいし、又は実行されなくてもよい。加えて、表示された又は論述された相互結合又は直接結合又は通信接続は、幾つかのインターフェース、デバイス、又はモジュールを通じて実装される間接的結合又は通信接続であってもよいし、又は電気的、機械的、又は他の形式の接続であってもよい。
【0328】
別個のコンポーネントとして説明されるモジュールは、物理的に別個であってもよいし、又はそうではなくてもよく、モジュールとして表示されるコンポーネントは、物理的モジュールであってもよいし、又はそうではなくてもよく、具体的には、1つの位置に位置してもよいし、又は複数のネットワークモジュール上で分散してもよい。モジュールの幾つか又は全ては、本願の実施形態の解決手段の目的を実装するための実際の要件に基づいて選択されてよい。
【0329】
加えて、本願の実施形態における機能モジュールは、1つの処理モジュールに統合されてもよいし、又はモジュールの各々が、物理的に単独で存在してもよいし、又は2つ又はそれよりも多くのモジュールが1つのモジュールに統合されてもよい。統合モジュールは、ハードウェアの形式で実装されてもよく、又は、ソフトウェア機能モジュールの形式で実装されてもよい。
【0330】
統合モジュールがソフトウェア機能モジュールの形式において実装されるか又は独立した製品として販売又は使用される場合、統合モジュールは、コンピュータ可読記憶媒体に記憶されてよい。この理解に基づいて、本質的に本願の技術的解決手段、又は従来の技術に寄与する部分、又は技術的解決手段の全て又は幾つかは、ソフトウェア製品の形式において実装されてよい。コンピュータソフトウェア製品は、記憶媒体に記憶され、本願の実施形態において説明される方法の段階の全て又は幾つかを実行するようにコンピュータデバイス(パーソナルコンピュータ、サーバ、又はネットワークデバイスであってよい)に命令するための幾つかの命令を含む。前述の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリメモリ(read-only memory、ROM)、ランダムアクセスメモリ(random access memory、RAM)、磁気ディスク、又は光ディスク等のプログラムコードを記憶することができる任意の媒体を含む。
【0331】
本願において、「第1」及び「第2」等の用語は、基本的に同じ機能を有する同じ項目又は同様の項目間を区別するのに使用される。「第1」、「第2」、及び「第n」は、論理的又は時間的な順次の従属関係を有さず、数及び実行シーケンスを限定しないことが理解されるべきである。以下の説明が様々な要素を説明するために「第1」及び「第2」等の用語を使用しているが、これらの要素は、これらの用語によって限定されるべきではないことが更に理解されるべきである。これらの用語は、単にある要素を別の要素から区別するのに使用される。例えば、様々な例の範囲から逸脱することなく、第1のネットワークデバイスは、第2のネットワークデバイスと称され得、同様に、第2のネットワークデバイスは、第1のネットワークデバイスと称され得る。第1のネットワークデバイス及び第2のネットワークデバイスの両方が、任意のタイプのネットワークデバイスであってよく、幾つかのケースでは、別個のかつ異なるネットワークデバイスであってよい。
【0332】
本願の実施形態において、プロセスのシーケンス番号は、実行シーケンスを意味しないことが更に理解されるべきである。プロセスの実行シーケンスは、プロセスの機能及び内部論理に基づいて決定されるべきであり、本願の実施形態の実装プロセスに対するいかなる制限とも解釈されるべきではない。
【0333】
本願において、「少なくとも1つ」という用語は、1つ又は複数を意味し、本願における「複数の」という用語は、2つ又はそれよりも多くを意味する。例えば、複数の第2のパケットは、2つ又はそれよりも多くの第2のパケットを意味する。「システム」及び「ネットワーク」という用語は、多くの場合、本明細書において交換可能に使用される。
【0334】
本明細書における様々な例の説明において使用される用語は、特定の例を説明するように意図されているにすぎず、制限を課すようには意図されていないことが理解されるべきである。様々な例の説明及び添付の特許請求の範囲において使用される場合、文脈において別途明示的に示されない限り、単数形「1つ(「a」又は「an」)」及び「the」は、複数形も含むように意図されている。
【0335】
本明細書において使用される「備える/有する/含む(include)」(「includes」、「including」、「備える/有する/含む(comprises)」、及び/又は「comprising」とも称される)という用語は、述べられた特徴、整数、段階、動作、要素、及び/又はコンポーネントの存在を指定し、1つ又は複数の他の特徴、整数、段階、動作、要素、コンポーネント、及び/又はそれらのコンポーネントの存在又は追加が排除されないことが更に理解されるべきである。
【0336】
「場合(if)」という用語が「場合/とき」(「when」又は「upon」)、「~を決定することに応答して」、又は「~を検出することに応答して」の意味として解釈されてよいことが更に理解されるべきである。同様に、文脈に基づいて、「~と決定された場合」又は「(述べられた条件又は事象)が検出された場合」というフレーズは、「~と決定されたとき」又は「~を決定することに応答して」又は「(述べられた条件又は事象)が検出されたとき」又は「(述べられた条件又は事象)を検出することに応答して」の意味として解釈されてよい。
【0337】
Aに基づいてBを決定することは、Aのみに基づいてBが決定されることを意味せず、Bは、代替的には、A及び/又は他の情報に基づいて決定されてよいことが理解されるべきである。
【0338】
本明細書全体を通して言及された「1つの実施形態」、「一実施形態」、及び「可能な実装」は、実施形態又は実装に関連した特定の特徴、構造、又は特性が本願の少なくとも1つの実施形態内に含まれることを意味することが更に理解されるべきである。したがって、本明細書全体を通して登場する「1つの実施形態では」又は「一実施形態では」又は「可能な実装」は、必ずしも同じ実施形態を指すわけではなくてよい。加えて、これらの特定の特徴、構造、又は特性は、任意の適切な方式を使用することによって1つ又は複数の実施形態において組み合わされてよい。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
【手続補正書】
【提出日】2024-08-08
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
符号ストリームブロックの2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、
を備える、符号化方法。
【請求項2】
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
前記データユニットは、符号ストリームブロックの前記2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、請求項1に記載の符号化方法。
【請求項3】
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;
前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロック識別子IDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロック識別子IDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す、請求項1に記載の符号化方法。
【請求項4】
前記符号ブロック識別子IDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す、請求項3に記載の符号化方法。
【請求項5】
前記符号ブロック識別子IDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、請求項3又は4に記載の符号化方法。
【請求項6】
前記符号ブロック識別子IDは、ハミング距離保護を有する、請求項3又は4に記載の符号化方法。
【請求項7】
前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む、請求項3又は4に記載の符号化方法。
【請求項8】
前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される、請求項1~のいずれか1項に記載の符号化方法。
【請求項9】
前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される、請求項8に記載の符号化方法。
【請求項10】
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、請求項1~のいずれか1項に記載の符号化方法。
【請求項11】
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、請求項10に記載の符号化方法。
【請求項12】
符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである、請求項1~のいずれか1項に記載の符号化方法。
【請求項13】
前記ターゲット符号ブロックを取得した後、前記符号化方法は:
前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得する段階;及び
前記第1のデータを送信する段階
を更に備える、請求項1~のいずれか1項に記載の符号化方法。
【請求項14】
符号ストリームブロックの2個のグループを取得するように構成された取得モジュール、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得するように構成された第1の符号化モジュール、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける前記制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、
を備える、符号化装置。
【請求項15】
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
前記データユニットは、符号ストリームブロックの前記2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、請求項14に記載の符号化装置。
【請求項16】
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロック識別子IDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロック識別子IDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す、請求項14に記載の符号化装置。
【請求項17】
前記符号ブロック識別子IDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す、請求項16に記載の符号化装置。
【請求項18】
前記符号ブロック識別子IDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、請求項16又は17に記載の符号化装置。
【請求項19】
前記符号ブロック識別子IDは、ハミング距離保護を有する、請求項16又は17に記載の符号化装置。
【請求項20】
前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む、請求項16又は17に記載の符号化装置。
【請求項21】
前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される、請求項1417のいずれか1項に記載の符号化装置。
【請求項22】
前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される、請求項21に記載の符号化装置。
【請求項23】
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、請求項1417のいずれか1項に記載の符号化装置。
【請求項24】
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、請求項23に記載の符号化装置。
【請求項25】
符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである、請求項1417のいずれか1項に記載の符号化装置。
【請求項26】
前記符号化装置は:
前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得するように構成された第2の符号化モジュール;及び
前記第1のデータを送信するように構成された送信モジュール
を更に備える、請求項1417のいずれか1項に記載の符号化装置。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【0001】
【0002】
本願は、通信技術の分野に関し、特に、符号化方法、復号方法、装置、デバイス、システム、及び可読記憶媒体に関する。
【背景技術】
【0003】
通信技術の発展とともに、データ送信プロセスにおけるデータ処理方式はますます多様化している。例えば、媒体アクセス制御(media access control、MAC)層のパケットは、媒体独立インターフェース(media independent interface、MII)を通じて物理コーディング副層(physical coding sublayer、PCS)に送達される。例えば、パケットは、800ギガビット(gigabit、G)MIIを通じてPCSに送達され、ここで、800G MIIは、800ギガビット毎秒(gigabits per second、Gb/s)のMACレートにおいて動作するMIIを表す。MIIのデータビット幅は、72ビットであり、これは、8ビット制御ブロック(送信制御、TXC)及び64ビットデータブロック(送信データ、TXD)を含む。TXC及びTXDは、リコンシリエーション副層(reconciliation sublayer、RS)を通じて、MAC層からのパケットフローコンテンツを処理することによって取得される。PCSは、TXC/TXDのコンテンツに基づいて符号化を実行して、オーバヘッドを削減し、必要な同期及び保護機能を提供する。
【0004】
関連した技術では、PCSは、送信端において、MIIからの制御ブロック及びデータブロックに対して64ビット(bit、B)/66B符号化を実行して、66ビット符号ブロックを取得する。データ送信が高速物理リンクを使用することによって実行される場合、4つの66ビット符号ブロックごとが、長さが257ビットである1つの256B/257B符号化ブロックにトランスコーディングされ、前方誤り訂正(forward error correction、FEC)符号化が、この275ビット符号ブロックに対して実行されて、FEC符号化を通じて取得されたFEC符号語が送信される。FEC符号語を受信した後、受信端は、FEC符号語に対してFEC復号を実行して、275ビット符号ブロックを取得する。FEC復号プロセスでは、誤り訂正が、FEC符号語に対して実行され、訂正不可能なFEC符号語については、FEC符号語における誤りビットが識別される。各275ビット符号ブロックは、4つの66ビット64B/66B符号化ブロックに逆トランスコーディングされ、これらの4つの66ビット符号ブロックは、復号されて、MIIフォーマットである制御ブロック及びデータブロックが取得される。
【0005】
FEC符号化はデータ保護機能を提供することができ、PCSにおけるほとんどの処理は275ビット符号ブロックに基づいて実行されるので、64B/66B符号化及び復号プロセスは必要ではない。64B/66B符号化及び復号プロセスが保持される場合、後続のトランスコーディング/逆トランスコーディングプロセスは、不要な遅延、電力消費、及びチップ面積占有を引き起こすことになる。
【発明の概要】
【0006】
本願は、符号化効率及び復号効率を改善するために、符号化方法、復号方法、装置、デバイス、システム、及び可読記憶媒体を提供する。
【0007】
第1の態様によれば、符号化方法が提供される。前記方法は:符号ストリームブロックの2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおけるデータブロックに対して前記第1の符号化を実行することによって取得される、を備える。
【0008】
本願のこの実施形態において提供される符号化方法によれば、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行して2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループに対して第1の符号化を実行することによって取得される。したがって、符号化効率が改善され、符号化プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0009】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;前記データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される。
【0010】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0011】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す。
【0012】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0013】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0014】
可能な実装では、前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む。
【0015】
本願において提供される符号化方法によれば、第1の符号化を符号ストリームブロックの異なるタイプに対して実行して、ターゲット符号ブロックを取得することができる。したがって、この方法は、広く適用される。
【0016】
可能な実装では、前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される。誤りが発生している符号ストリームブロックは、データの信頼性を保証するために、誤りが発生しているデータを後続のデータ送信における正しいデータから区別するように処理される。
【0017】
可能な実装では、前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。
【0018】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0019】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0020】
可能な実装では、符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである。
【0021】
可能な実装では、前記ターゲット符号ブロックを取得した後、前記方法は:FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得する段階;及び前記第1のデータを送信する段階を更に備える。第2の符号化は、FEC符号タイプに基づいてターゲット符号ブロックに対して実行されて、第1のデータが取得され、それにより、受信端が、受信された第1のデータに対して誤り訂正を実行して、データ送信精度を保証することができる。
【0022】
第2の態様によれば、復号方法が提供される。前記方法は:ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、を備える。
【0023】
本願において提供される復号方法によれば、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに、ターゲット符号ブロックに対して第1の復号を実行することによって取得される。したがって、復号効率が改善され、復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0024】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0025】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0026】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される。
【0027】
可能な実装では、符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される。
【0028】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0029】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0030】
可能な実装では、前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0031】
本願において提供される復号方法によれば、第1の復号を、ターゲット符号ブロックの異なるタイプに対して実行して、符号ストリームブロックの2個のグループを取得することができる。したがって、この方法は、広く適用される。
【0032】
可能な実装では、ターゲット符号ブロックを取得する前記段階は:第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正処理である、
を有する。
【0033】
可能な実装では、前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである。
【0034】
可能な実装では、ターゲット符号ブロックを取得する前記段階は:第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、を有する。
【0035】
可能な実装では、前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである。
【0036】
可能な実装では、符号ストリームブロックの前記2個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される。
【0037】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである。誤りが発生しているターゲット符号ブロックは、データの信頼性を保証するために、受信端が誤りデータ及び正しいデータの間で区別することができるように処理される。
【0038】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される。誤りが発生しているターゲット符号ブロックは、データの信頼性を保証するために、受信端が誤りデータ及び正しいデータの間で区別することができるように処理される。
【0039】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0040】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0041】
可能な実装では、符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIフォーマットである。
【0042】
第3の態様によれば、符号化装置が提供される。前記装置は:
符号ストリームブロックの2個のグループを取得するように構成された取得モジュール、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得するように構成された第1の符号化モジュール、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2個のグループにおける前記制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2個のグループにおけるデータブロックに対して前記第1の符号化を実行することによって取得される、
を備える。
【0043】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;前記データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される。
【0044】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0045】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す。
【0046】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0047】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0048】
可能な実装では、前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む。
【0049】
可能な実装では、前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される。
【0050】
可能な実装では、前記誤り検出結果は、符号ストリームブロックの前記2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。
【0051】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0052】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0053】
可能な実装では、符号ストリームブロックの前記2個のグループの全てが媒体独立インターフェースMIIからのものである。
【0054】
可能な実装では、前記装置は:前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得するように構成された第2の符号化モジュール;及び前記第1のデータを送信するように構成された送信モジュールを更に備える。
【0055】
第4の態様によれば、復号装置が提供される。前記装置は:
ターゲット符号ブロックを取得するように構成された取得モジュール、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得するように構成された復号モジュール、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える。
【0056】
可能な実装では、前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0057】
可能な実装では、前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0058】
可能な実装では、前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される。
【0059】
可能な実装では、符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される。
【0060】
可能な実装では、前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0061】
可能な実装では、前記符号ブロックIDは、ハミング距離保護を有する。
【0062】
可能な実装では、前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0063】
可能な実装では、前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正処理である、を行うように構成されている。
【0064】
可能な実装では、前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである。
【0065】
可能な実装では、前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、を行うように構成されている。
【0066】
可能な実装では、前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである。
【0067】
可能な実装では、符号ストリームブロックの前記2個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される。
【0068】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである。
【0069】
可能な実装では、前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される。
【0070】
可能な実装では、前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である。
【0071】
可能な実装では、nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである。
【0072】
可能な実装では、符号ストリームブロックの2個のグループの全てが媒体独立インターフェースMIIフォーマットである。
【0073】
第5の態様によれば、ネットワークデバイスが提供される。前記ネットワークデバイスは、プロセッサを備え、ここで、前記プロセッサは、メモリに結合されており、前記メモリは、少なくとも1つのプログラム命令又はコードを記憶し、前記少なくとも1つのプログラム命令又はコードは、前記プロセッサによって、前記ネットワークデバイスが第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実装することを可能にするようにロード及び実行される。
【0074】
第6の態様によれば、コンピュータ可読記憶媒体が提供される。前記記憶媒体は、少なくとも1つのプログラム命令又はコードを記憶する。前記プログラム命令又は前記コードがプロセッサによってロード及び実行されると、コンピュータが、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実装することを可能にされる。
【0075】
第7の態様によれば、通信システムが提供される。前記システムは、第1のネットワークデバイス及び第2のネットワークデバイスを備え、前記第1のネットワークデバイスは、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装を実行するように構成されており、前記第2のネットワークデバイスは、前記第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行するように構成されている。
【0076】
第8の態様によれば、別の通信装置が提供される。前記装置は、送受信機、メモリ、及びプロセッサを備える。前記送受信機、前記メモリ、及び前記プロセッサは、内部接続パスを通じて互いに通信する。前記メモリは、命令を記憶するように構成されている。前記プロセッサは、前記送受信機が信号を受信するように制御するとともに、前記送受信機が信号を送信するように制御するための、前記メモリに記憶された前記命令を実行するように構成されている。加えて、前記プロセッサが前記メモリに記憶された前記命令を実行すると、前記プロセッサは、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行することを可能にされる。
【0077】
例えば、1つ又は複数のプロセッサが存在し、1つ又は複数のメモリが存在する。
【0078】
例えば、メモリは、プロセッサと統合されてもよいし、又はメモリ及びプロセッサは別々に配置されてもよい。
【0079】
特定の実装プロセスでは、メモリは、非一時的(non-transitory)メモリ、例えば、リードオンリメモリ(read-only memory、ROM)であってよい。メモリ及びプロセッサは、同じチップ上に統合されてもよいし、又は異なるチップ上に別個に配置されてもよい。メモリのタイプ及びメモリ及びプロセッサを配置する方式は、本願において限定されない。
【0080】
第9の態様によれば、コンピュータプログラム製品が提供される。前記コンピュータプログラム製品は、コンピュータプログラムコードを備える。前記コンピュータプログラムコードがコンピュータ上で実行されると、前記コンピュータが、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行することを可能にされる。
【0081】
第10の態様によれば、チップが提供される。前記チップは、プロセッサを備え、メモリから命令を呼び出すこと、及び前記チップが取り付けられている通信デバイスが第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行することを可能にするための、前記メモリに記憶された前記命令を実行することを行うように構成されている。
【0082】
第11の態様によれば、別のチップが提供される。前記チップは、入力インターフェース、出力インターフェース、プロセッサ、及びメモリを備える。前記入力インターフェース、前記出力インターフェース、前記プロセッサ、及び前記メモリは、内部接続パスを通じて接続されている。前記プロセッサは、前記メモリにおけるコードを実行するように構成されている。前記コードが実行されると、前記プロセッサは、第1の態様のいずれか1つに係る符号化方法又は第1の態様の可能な実装、又は第2の態様のいずれか1つに係る復号方法又は第2の態様の可能な実装を実行するように構成されている。
【図面の簡単な説明】
【0083】
図1】本願の一実施形態に係る符号化方法及び復号方法のための実装環境の概略図である。
【0084】
図2】本願の一実施形態に係る符号化方法のフローチャートである。
【0085】
図3】本願の一実施形態に係る、ターゲット符号ブロックを取得するプロセスの概略図である。
【0086】
図4】本願の一実施形態に係る、ターゲット符号ブロックの構造の概略図である。
【0087】
図5】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0088】
図6】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0089】
図7】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0090】
図8】本願の一実施形態に係る、符号ストリームブロックの4つのグループにおけるデータブロックの概略図である。
【0091】
図9】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0092】
図10】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0093】
図11】本願の一実施形態に係る終端ブロックの概略図である。
【0094】
図12】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0095】
図13】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0096】
図14】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0097】
図15】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0098】
図16】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0099】
図17】本願の一実施形態に係る、符号ストリームブロックの他の4つのグループにおけるデータブロックの概略図である。
【0100】
図18】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0101】
図19】本願の一実施形態に係る復号方法のフローチャートである。
【0102】
図20】本願の一実施形態に係る、別のターゲット符号ブロックの構造の概略図である。
【0103】
図21】本願の一実施形態に係る符号化装置の構造の概略図である。
【0104】
図22】本願の一実施形態に係る復号装置の構造の概略図である。
【0105】
図23】本願の一実施形態に係るネットワークデバイスの構造の概略図である。
【0106】
図24】本願の一実施形態に係る別のネットワークデバイスの構造の概略図である。
【0107】
図25】本願の一実施形態に係る別のネットワークデバイスの構造の概略図である。
【発明を実施するための形態】
【0108】
本願の実装において使用される用語は、単に本願の特定の実施形態を説明するのに使用されており、本願を限定するように意図されない。以下の記載は、添付図面を参照して本願の実施形態を説明する。
【0109】
通信技術の分野において、データ送信のための要件が継続的に増加するにつれて、送信レートのための要件も継続的に増加している。イーサネット(登録商標)は、ローカルエリアネットワーク技術である。イーサネット(登録商標)の急速な発展とともに、イーサネット(登録商標)を介したデータ送信のレートは増加し続けている。例えば、100ギガビットイーサネット(登録商標)(gigabit ethernet(登録商標)、GE)であるので、データ送信は、単一のレーンについて25Gb/sの送信レートにおいて実行される。高速なデータ送信を保証することに基づいて、データ送信の信頼性を保証するために、イーサネット(登録商標)がデータ送信のために使用される場合にはFEC符号化が物理層に導入され、それにより、受信されたデータにおける誤りビットは、符号化を通じて取得されたFEC符号語を送信することによって訂正される。FEC符号語においてチェック符号が存在するので、同じ継続時間内で同じペイロードの送信のために必要とされる送信レートに対して、FEC符号語送信のために必要とされる送信レートは、より高い。
【0110】
FEC符号語送信のために必要とされる送信レートを削減するために、トランスコーディングがイーサネット(登録商標)規格において使用されて、FEC符号化の前に符号ブロックのオーバヘッドが削減され、それにより、FEC符号語送信のために必要とされる送信レートが削減される。例えば、4つの64B/66B符号化ブロックごとが1つの256B/257B符号化ブロックにトランスコーディングされる。1つの275ビット符号ブロックのオーバヘッドは4つの66ビット符号ブロックのオーバヘッドよりも低いので、FEC符号語送信のために必要とされ、かつ275ビット符号ブロックに基づいて取得される送信レートは低い。データ送信が100Gレーンを通じて実行される場合、FEC符号語送信のために必要とされ、かつトランスコーディング符号ブロック送信に基づいて取得される送信レートは、103.125Gb/sであり、この送信レートは、FEC符号化が実行されない66ビット符号ブロックの送信のために必要とされる送信レートと同じである。
【0111】
FEC符号語を取得した後、受信端は、FEC符号語を復号して、275ビット符号ブロックを取得し、275ビット符号ブロックを4つの66ビット符号ブロックに逆トランスコーディングし、4つの66ビット符号ブロックを復号して、MIIフォーマットである制御ブロック及びデータブロックを取得する。FEC符号語における誤りビットは、FEC誤り識別に基づいて識別されてよく、PCSにおけるほとんどの処理は、275ビット符号ブロックに基づいて実行される。したがって、64B/66B符号化及び復号プロセス及び対応するトランスコーディング/逆トランスコーディングプロセスは、不要な遅延、電力消費、及びチップ面積占有を生成する。
【0112】
したがって、本願の実施形態は、符号化方法及び復号方法を提供する。本願の実施形態において、符号化プロセスでは、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに取得される。復号プロセスでは、符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに取得される。したがって、符号化効率及び復号効率の両方が改善され、また、符号化及び復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0113】
本願の実施形態において提供される符号化方法及び復号方法は、現在のイーサネット(登録商標)インターフェースシナリオ又はデータ送信が必要とされる別のシナリオに適用可能である。図1に示されている実装シナリオが一例として使用される。この実装シナリオは、複数のチップを含み、情報は、データ送信を実装するためにこれらのチップ間で交換することができる。例えば、チップ102及びチップ104の両方がFEC符号化及びFEC復号をサポートし、チップ102及びチップ104の間のチャネル105を、FEC符号化データの送信のために使用することができる。このケースでは、チップ102は、符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得し、第1のFEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得し、チャネル105を通じてチップ104に第1のデータを送信してよい。例えば、誤りビットは、チャネル105を通る第1のデータの送信中に発生し得、受信されたデータは、第2のデータと称される。第2のデータを受信した後、チップ104は、第1のFEC符号タイプを使用することによって第2のデータに対して第2の復号を実行して、ターゲット符号ブロックを取得し、ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得してよい。
【0114】
nは、1よりも大きい整数であり、第1のFEC符号タイプは、RS符号、ボーズ-チョドーリ-オッケンジェム(Bose-Chaudhuri-Hocquenghem、BCH)符号、ハミング符号(Hamming code)、拡張BCH符号(extended-BCH code)、拡張ハミング符号(extended-Hamming code)、ファイヤ(fire)符号、ターボ(turbo)符号、ターボ積符号(turbo product code、TPC)、階段(staircase)符号、及び低密度パリティチェック(low-density parity-check、LDPC)符号のうちの任意の1つ又は複数のこれらの直列の組み合わせを含むが、これらに限定されない。
【0115】
任意選択で、図1に示されている実装シナリオは、複数のネットワークデバイスを含んでよい。チップ102は、第1のネットワークデバイス101上に位置し、チップ104は、第2のネットワークデバイス103上に位置する。各ネットワークデバイスは、少なくとも1つのチップを含んでよい。図1では、2つのネットワークデバイスが存在し、かつ各ネットワークデバイスが1つのチップを含む一例のみが説明のために使用される。
【0116】
図1に示されている実装シナリオを参照して、本願の一実施形態において提供される符号化方法が図2に示されている。例えば、本願のこの実施形態において提供される符号化方法は、図1におけるチップ102によって実行され、この方法は、段階201及び段階202を含むが、これらに限定されない。
【0117】
段階201:符号ストリームブロックの2個のグループを取得する。ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である。
【0118】
符号ストリームブロックの数は、本願のこの実施形態において限定されず、nは、1よりも大きい整数である。可能な実装では、符号ストリームブロックの2個のグループの全てがMIIからのものである。MIIに基づいて符号ストリームブロックの2個のグループを取得する方式は、本願のこの実施形態において限定されない。例えば、MIIは、符号ストリームブロックの2個のグループを取得するために、米国電気電子学会(Institute of Electrical and Electronics Engineers、IEEE)802.3規格、例えば、IEEE802.3-2018及びIEEE802.3規格の別のバージョンにおいて定義されるMIIであってよい。例えば、nの値は2であり、これは、符号ストリームブロックの4つのグループが取得されることを示す。
【0119】
可能な実装では、符号ストリームブロックの2個のグループのうちの任意のグループについて、符号ストリームブロックの当該任意のグループにおける制御ブロックは、tビットを含み、符号ストリームブロックの当該任意のグループにおけるデータブロックは、8tビットを含み、ここで、tは、正の整数であり、8tは、tの8倍を表し、8tは、代替的には、8*tと表されてよい。例えば、tの値は8であり、具体的には、符号ストリームブロックの任意のグループについて、符号ストリームブロックの当該任意のグループにおける制御ブロックは、8ビットを含み、符号ストリームブロックの当該任意のグループにおけるデータブロックは、64ビットを含む。可能な実装では、制御ブロック内に含まれるtビットは、全て制御ビットであり、換言すれば、制御ブロックは、t個の制御ビットを含み、データブロック内に含まれる8tビットは、全てデータであり、換言すれば、データブロックは、8tビットデータを含む。
【0120】
例えば、8つの制御ビットを含む制御ブロックは、TXC<7:0>と表され、64ビットデータを含むデータブロックは、TXD<63:0>と表され、制御ブロック及びデータブロックの全てのビットのシーケンスは、最上位ビット(most significant bit、MSB)から最下位ビット(least significant bit、LSB)までである。
【0121】
可能な実装では、TXD<63:0>内に含まれるデータは、MACフレームデータ及び制御データを含むが、これらに限定されず、TXD<63:0>において、8ビットがデータセグメントとして使用される。TXC<7:0>は、受信側でMACフレームデータ及び制御データを正しく復元するように、MACフレームデータ及び制御データに対して異なる処理を実行するために、TXD<63:0>における各データセグメントを識別する。
【0122】
例えば、以下の説明を容易にするために、データセグメントの名称が定義される。TXD<63:0>において、8ビットMACフレームデータは、データ文字(data character)と称され、これは、/D/によって表され、TXC=0に対応し;8ビット制御データは、制御文字(control character)と称され、これは、/C/によって表され、TXC=1に対応する。例えば、異なる意味に基づいて、8ビット制御文字(/C/)は、以下の7つのタイプ:誤り制御文字(誤り文字、/E/)、開始制御文字(開始文字、/S/)、終端制御文字(終端文字、/T/)、順序付きセット制御文字(順序付きセット文字、/O/)、アイドル制御文字(アイドル文字、/I/)、低電力アイドル制御文字(低電力アイドル、/LI/)、及び別の有効8ビット制御文字を含むが、これらに限定されない。制御文字の特定の意味及び値については、IEEE802.3-2018を参照されたい。詳細は、本願のこの実施形態では再び説明されない。
【0123】
例えば、符号ストリームブロックの制御ブロックが第1の指定値である場合、符号ストリームブロックのデータブロックは、制御文字を含まず、ここで、符号ストリームブロックのデータブロックは、MACフレームデータブロック(data block、D)と称され、符号ストリームブロックのタイプは、データ符号ストリームブロックである。第1の指定値は、符号ストリームブロックのタイプがデータ符号ストリームブロックであることを示す。例えば、第1の指定値は、0x00であり、符号ストリームブロックのTXC<7:0>は、0x00であり、符号ストリームブロックのTXD<63:0>は、制御文字を含まず、符号ストリームブロックのデータブロックは、MACフレームデータブロックであり、符号ストリームブロックのタイプは、データ符号ストリームブロックである。符号ストリームブロックの制御ブロックが第1の指定値ではない場合、符号ストリームブロックのデータブロックは、少なくとも1つの制御文字を含み、符号ストリームブロックのデータブロックは、制御データブロック(制御ブロック、C)と称され、符号ストリームブロックのタイプは、制御符号ストリームブロックである。例えば、符号ストリームブロックのTXC<7:0>!=0x00について、符号ストリームブロックのTXD<63:0>は、少なくとも1つの制御文字を含み、符号ストリームブロックのデータブロックは、制御データブロックであり、符号ストリームブロックのタイプは、制御符号ストリームブロックである。例えば、異なる機能に基づいて、制御データブロック(C)は、以下の7つのタイプ:誤りブロック(error block、E)、開始ブロック(start block、S)、終端ブロック(terminate block、T)、順序付きセットブロック(ordered set block、O)、アイドルブロック(idle block、I)、低電力アイドルブロック(low power idle block、LPI)、及び別の制御データブロックを含むが、これらに限定されない。
【0124】
段階202:符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する。ここで、ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、データユニットは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定される符号化方式において、符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される。
【0125】
例えば、符号ストリームブロックの各グループにおいて、各制御ブロックは、8ビットであり、各データブロックは、64ビットである。第1の符号化は、符号ストリームブロックの4つのグループに対して実行されて、1つの257ビットターゲット符号ブロックが取得される。例えば、ターゲット符号ブロックは、257ビット符号化ブロック(257B encoded block)である。本願のこの実施形態では、n=2が説明のための一例として使用される。nが別の値である場合、第1の符号化は、符号ストリームブロックの4つのグループごとに実行されて、複数のターゲット符号ブロックが取得されてよい。例えば、n=3であり、これは、符号ストリームブロックの8つのグループが取得されることを示す。第1の符号化は、符号ストリームブロックの第1の4つのグループに対して実行されて、1つのターゲット符号ブロックが取得されてよく、第1の符号化は、符号ストリームブロックの最後の4つのグループに対して実行されて、1つのターゲット符号ブロックが取得されてよい。
【0126】
可能な実装では、符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得することは、以下の符号化方式1及び符号化方式2を含むが、これらに限定されない。
【0127】
符号化方式1では:ターゲット符号ブロックのタイプは、符号ストリームブロックの2個のグループにおける制御ブロックに基づいてデータ符号ブロックとして決定され;第1の符号化は、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、データユニットが取得され;ターゲット符号ブロックは、タイプ及びデータユニットに基づいて取得される。
【0128】
例えば、符号化方式1において取得されるターゲット符号ブロックについて、タイプは、ターゲット符号ブロックがデータ符号ブロックであることを示し;データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される。
【0129】
可能な実装では、符号ストリームブロックの2個のグループにおける制御ブロックの各々が第1の指定値である場合、ターゲット符号ブロックのタイプがデータ符号ブロックであると決定される。例えば、符号ストリームブロックの各グループにおける制御ブロックは、TXC<7:0>と表され、第1の指定値は、0x00である。符号ストリームブロックの各グループのTXC<7:0>が0x00である場合、符号ストリームブロックの各グループのタイプは、データ符号ストリームブロックである。
【0130】
可能な実装では、第1の符号化が符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、データユニットが取得されることは:符号ストリームブロックの2個のグループのシーケンスに基づいて、データユニットのビットとして符号ストリームブロックの2個のグループにおけるデータブロック内に含まれるビットを別々に使用して、データユニットを取得することを含む。
【0131】
例えば、jは、符号ストリームブロックの4つのグループのうちの1つのグループのシーケンス番号を表し、ここで、j=0,1,2,又は3である。TXD_j<63:0>は、符号ストリームブロックのグループjにおけるデータブロックを表し、tx_coded<256:0>は、ターゲット符号ブロックを表し、tx_coded<0>は、ターゲット符号ブロックのタイプを表し、tx_coded<(64j+64):(64j+1)>は、ターゲット符号ブロックのビット(64j+64)~ビット(64j+1)を表す。このケースでは、tx_coded<256:0>の各ビットは、以下の式1及び式2において示される:
tx_coded<0>=1(式1)
tx_coded<(64j+64):(64j+1)>=TXD_j<63:0>、ここで、j=0,1,2,又は3(式2)
【0132】
式1では、tx_coded<0>=1は、タイプがデータ符号ブロックであることを表す。式2では、tx_coded<(64j+64):(64j+1)>=TXD_j<63:0>は、符号ストリームブロックの各グループにおけるデータブロックの複数のビットがデータユニットの複数のビットとして別々に使用されることを表す。
【0133】
例えば、j=0である場合、tx_coded<64:1>=TXD_0<63:0>は、符号ストリームブロックのグループ0におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット64~ビット1として使用されることを表す。j=1である場合、tx_coded<128:65>=TXD_1<63:0>は、符号ストリームブロックのグループ1におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット128~ビット65として使用されることを表す。j=2である場合、tx_coded<192:129>=TXD_2<63:0>は、符号ストリームブロックのグループ2におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット192~ビット129として使用されることを表す。j=3である場合、tx_coded<256:193>=TXD_3<63:0>は、符号ストリームブロックのグループ3におけるデータブロックのビット63~ビット0がそれぞれターゲット符号ブロックのビット256~ビット193として使用されることを表す。
【0134】
例えば、図3は、ターゲット符号ブロックを取得するプロセスの概略図である。図3に示されているように、符号ストリームブロックの取得された4つのグループについて、符号ストリームブロックの各グループにおいて、各制御ブロックは、TXC<7:0>と表され、各データブロックは、TXD<63:0>と表される。符号ストリームブロックの4つのグループの各々におけるTXC<7:0>が0x00である場合、ターゲット符号ブロックのタイプは、データ符号ブロックである。例えば、ターゲット符号ブロックのタイプは、ターゲット符号ブロックのビット0に対応し、ビット0は、1に設定され、これは、タイプがデータ符号ブロックであることを示す。本願のこの実施形態は、ビット0が、タイプがデータ符号ブロックであることを示すための値に設定される方式に対して制限を課さない。符号ストリームブロックの4つのグループのシーケンスに基づいて、符号ストリームブロックの4つのグループにおけるデータブロックの複数のビットが、データユニットの複数のビットとして別々に使用されて、データユニットが取得される。したがって、ターゲットビットは、タイプ及びデータユニットに基づいて取得することができる。
【0135】
例えば、取得されたターゲット符号ブロックの構造は、図4に示されている。ターゲット符号ブロックのビット0は、ターゲット符号ブロックのタイプを示し、ビット0は、タイプがデータ符号ブロックであることを示すために1に設定される。ターゲット符号ブロックのビット1~ビット256は、ターゲット符号ブロックのデータユニットを示し、ここで、D0は、符号ストリームブロックのグループ0におけるデータブロックの64ビットを表し、D1は、符号ストリームブロックのグループ1におけるデータブロックの64ビットを表し、D2は、符号ストリームブロックのグループ2におけるデータブロックの64ビットを表し、D3は、符号ストリームブロックのグループ3におけるデータブロックの64ビットを表す。
【0136】
符号化方式2では:ターゲット符号ブロックのタイプは、符号ストリームブロックの2個のグループにおける制御ブロックに基づいて制御符号ブロックとして決定され;符号ブロック識別子(Identifier、ID)は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得され、ここで、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;第1の符号化は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、符号ブロックコンテンツが取得され;ターゲット符号ブロックは、タイプ及びデータユニットに基づいて取得され、ここで、データユニットは、符号ブロックID及び符号ブロックコンテンツを含む。符号ブロックIDの値は、ターゲット符号ブロックに対応する符号ストリームブロックの2個のグループの組み合わせに1対1で対応する。符号ブロックIDの値及び符号ストリームブロックの2個のグループの組み合わせの間の対応関係は、必要に応じて設定されてよい。例えば、符号ブロックIDが0x01である場合、これは、ターゲット符号ブロックに対応する符号ストリームブロックの連続した2個のグループのうちの第1のグループがイーサネット(登録商標)フレームの開始(Start)であり、符号ストリームブロックの後続の2-1個のグループの全てがイーサネット(登録商標)フレームのデータ(Data)であることを示す。代替的には、符号ブロックIDが0xF0である場合、これは、ターゲット符号ブロックに対応する符号ストリームブロックの連続した2個のグループのうちのグループ2がイーサネット(登録商標)フレームの終端(Terminate)であり、符号ストリームブロックの先行する2-1個のグループの全てがイーサネット(登録商標)フレームのデータ(Data)であることを示す。代替的には、符号ブロックIDが0xD1である場合、これは、ターゲット符号ブロックに対応する符号ストリームブロックの連続した2個のグループの全ての符号ストリームブロックがアイドル(Idle)であることを示す。符号ブロックIDの値及び符号ストリームブロックの2個のグループの組み合わせの間の対応関係は、本願のこの実施形態において列挙される幾つかのケースに限定されない。これは、本願において限定されない。符号ブロックIDの値は例であり、符号ブロックIDの値及び符号ストリームブロックの2個のグループの組み合わせの間に1対1の対応関係が存在することを前提として、実際の応用において前述の例の値に限定されない。これは、本願のこの実施形態において限定されない。
【0137】
例えば、符号化方式2において取得されたターゲット符号ブロックについて、タイプは、ターゲット符号ブロックが制御符号ブロックであることを示し;データユニットは、符号ブロックID及び符号ブロックコンテンツを含み、ここで、符号ブロックコンテンツは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得され、符号ブロックIDは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得され、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。例えば、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスは、符号ストリームブロックの2個のグループの受信シーケンスである。
【0138】
可能な実装では、符号ストリームブロックの2個のグループのうちの少なくとも1つのグループにおける制御ブロックが第2の指定値である場合、ターゲット符号ブロックのタイプが制御符号ブロックであると決定され、ここで、第2の指定値は、符号ストリームブロックのタイプが制御符号ストリームブロックであることを示す。換言すれば、符号ストリームブロックの2個のグループのうちの少なくとも1つのグループのタイプが制御符号ストリームブロックである場合、ターゲット符号ブロックのタイプは、制御符号ブロックである。第2の指定値は、第1の指定値とは異なる。例えば、符号ストリームブロックの各グループにおける制御ブロックは、TXC<7:0>と表され、第1の指定値は、0x00である。符号ストリームブロックのグループのうちの少なくとも1つのグループのTXC<7:0>が第2の指定値である、すなわち、0x00ではない場合、ターゲット符号ブロックは、制御符号ブロックである。
【0139】
可能な実装では、符号ブロックIDが、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得されることは:符号ストリームブロックの2個のグループにおけるデータブロックのタイプが、符号ストリームブロックの2個のグループにおける制御ブロックに基づいて取得されること、及びターゲット符号ブロックの符号ブロックIDが、符号ストリームブロックのグループにおけるデータブロックのタイプ及び符号ストリームブロックのグループのシーケンスに基づいて取得されることを含む。例えば、符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい正の整数である。例えば、ターゲット符号ブロックの構造は、図5に示されている。タイプは、ビット0に対応し、符号ブロックIDは、ビット(m-1)~ビット1に対応し、符号ブロックコンテンツは、残りのビットに対応する。例えば、m=8又はm=12である。
【0140】
例えば、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。例えば、ターゲット符号ブロックの構造は、図6に示されている。タイプは、ビット0に対応し、符号ブロックIDは、ビット(m-1)~ビット1に対応し、符号ブロックコンテンツは、残りのビットに対応する。ビット(m-1)~ビット1は、2つの部分に分割され、ここで、最下位ビットを含む前半部分は、第1のIDであり、最上位ビットを含む後半部分は、第2のIDである。例えば、符号ブロックIDは、12ビットであり、前半4つの最下位ビットが第1のIDであり、後半8つの最上位ビットが第2のIDである。ターゲット符号ブロックの構造は、図7に示されている。タイプは、ビット0に対応し、第1のIDは、ビット4~ビット1に対応し、第2のIDは、ビット12~ビット5に対応し、符号ブロックコンテンツは、残りの244ビットに対応する。例えば、第1のID内に含まれる4ビットは、それぞれ符号ストリームブロックの4つのグループにおけるデータブロックのタイプを示す。例えば、符号ストリームブロックのデータブロックがMACフレームデータブロックである場合、符号ストリームブロックに対応するビットは1であり;又は符号ストリームブロックのデータブロックが制御データブロックである場合、符号ストリームブロックに対応するビットは0である。
【0141】
符号ブロックIDの前述のケースにかかわらず、符号ブロックIDは、ハミング距離保護を有してよいことに留意されたい。
【0142】
可能な実装では、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションの複数のケースについて、これらのケースに対応する符号ブロックIDは異なる。換言すれば、各一意の符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションの複数のケースを示す。例えば、符号ストリームブロックの4つのグループが、説明のための一例として使用される。符号ストリームブロックの4つのグループにおけるデータブロックのタイプは、以下のケースA1~ケースA8を含むが、これらに限定されない。
【0143】
ケースA1:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが誤りブロックであるデータブロックを含む。
【0144】
例えば、ケースA1の場合、タイプが誤りブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図8に示されており、ここで、C0は、誤りブロック以外のタイプの制御データブロックを表す。例えば、図8におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、誤りブロックであり、符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプは、MACフレームデータブロック、又は誤りブロック以外のタイプの制御データブロックであってよい。図8における別のケースの原理は、ケース1の原理と同じである。詳細は、本明細書において再び説明されない。
【0145】
ケースA2:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが開始ブロックである1つのみのデータブロックを含む。
【0146】
例えば、ケースA2の場合、タイプが開始ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図9に示されており、ここで、C1は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図9におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプは、全てMACフレームデータブロックである。図9におけるケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプはC1であり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図9におけるケース3について、符号ストリームブロックの第1のグループ及び符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、両方ともC1であり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図9におけるケース4について、符号ストリームブロックの第1のグループ~符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、全てC1であり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、開始ブロックである。
【0147】
ケースA3:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックである1つのみのデータブロックを含む。
【0148】
例えば、ケースA3の場合、タイプが終端ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図10に示されており、ここで、C2は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図10におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプは、全てC2である。図10におけるケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、MACフレームデータブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプはC2である。図10におけるケース3について、符号ストリームブロックの第1のグループ及び符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、両方ともMACフレームデータブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプはC2である。図10におけるケース4について、符号ストリームブロックの第1のグループ~符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、全てMACフレームデータブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、終端ブロックである。
【0149】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。例えば、終端制御文字の異なるロケーションに基づいて、終端ブロックの異なケースが図11に示されている。図11では、終端ブロックは64ビットであり、8ビットごとが1バイトであり;iは、終端制御文字が終端ブロックのバイトiであることを示し、i=0,1,2,3,4,5,6,又は7であり;/C3/は、終端制御文字以外の制御文字を表し;パディングビットは、0であってよい。この実装における/T/、/D/、/C3/、及びパディングビットのソートについては、図11に示されているソートを参照されたい。詳細は、本明細書において再び説明されない。図11では、i=0であるケースがケース1と称され得、i=1であるケースがケース2と称され得、類推によって、i=7であるケースがケース8と称され得る。
【0150】
符号ストリームブロックの4つのグループにおけるデータブロックが、タイプが終端ブロックである1つのみのデータブロックを含む場合、異なるロケーションにおける終端制御文字に対応する終端ブロックについて、符号ブロックIDは異なることに留意されたい。換言すれば、図10に示されているケース1~ケース4及び図11に示されているケース1~ケース8を参照すると、32個のケースに対応する符号ブロックIDは異なる。
【0151】
ケースA4:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが順序付きセットブロックであるデータブロックを含み、かつタイプが開始ブロック又は終端ブロックであるデータブロックを含まない。
【0152】
例えば、ケースA4の場合、タイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図12に示されており、ここで、C4は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図12におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループ~符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、全てC4である。図12におけるケース2について、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループ以外の符号ストリームブロックの3つのグループにおけるデータブロックのタイプはC4である。図12における他のケースについては、図12における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0153】
ケースA5:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが順序付きセットブロックであるデータブロック、及びタイプが開始ブロックであるデータブロックを含み、かつタイプが終端ブロックであるデータブロックを含まない。
【0154】
例えば、ケースA5の場合、タイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーション、及びタイプが開始ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図13に示されており、ここで、C5は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図13におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てMACフレームデータブロックである。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプはC5であり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図13における他のケースについては、図13における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0155】
ケースA6:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックであるデータブロック、及びタイプが順序付きセットブロックであるデータブロックを含み、かつタイプが開始ブロックであるデータブロックを含まない。
【0156】
例えば、ケースA6の場合、タイプが終端ブロックであるデータブロックの異なるロケーション及びタイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図14に示されており、ここで、C6は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図14におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てC6である。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てC6である。図14における他のケースについては、図14における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0157】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。終端ブロックのケースは、ケースA3における終端ブロックのケースと同じであり、すなわち、終端ブロックは、図11に示されている。詳細は、本明細書において再び説明されない。例えば、図14に示されているケース1~ケース11及び図11に示されているケース1~ケース8を参照すると、88個のケースに対応する符号ブロックIDは異なる。
【0158】
ケースA7:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックであるデータブロック、及びタイプが開始ブロックであるデータブロックを含む。
【0159】
例えば、ケースA7の場合、タイプが終端ブロックであるデータブロック及びタイプが開始ブロックであるデータブロックの異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図15に示されており、ここで、C7は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図15におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの残りの2つのグループにおけるデータブロックのタイプは、全てMACフレームデータブロックである。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプはC7であり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。図15における他のケースについては、図15における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0160】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。終端ブロックの原理は、ケースA3における終端ブロックの原理と同じであり、すなわち、終端ブロックは、図11に示されている。詳細は、本明細書において再び説明されない。例えば、タイプが終端ブロックであるデータブロックが、タイプが開始ブロックであるデータブロックの前である場合、図15に示されているケース1~ケース6及び図11に示されているケース1~ケース8を参照すると、48個のケースに対応する符号ブロックIDは異なる。タイプが開始ブロックであるデータブロックが、タイプが終端ブロックであるデータブロックの前である場合、これは、符号ストリームブロックの4つのグループが32バイトデータパケットに対応することを示し、終端制御文字は、終端ブロックの第7のバイトであり、すなわち、図11に示されているケース8である。
【0161】
ケースA8:符号ストリームブロックの4つのグループにおけるデータブロックは、タイプが終端ブロックであるデータブロック、タイプが順序付きセットブロックであるデータブロック、及びタイプが開始ブロックであるデータブロックを含む。
【0162】
例えば、ケースA8の場合、タイプが終端ブロックであるデータブロックの異なるロケーション、タイプが開始ブロックであるデータブロックの異なるロケーション、及びタイプが順序付きセットブロックであるデータブロックの異なる数及び異なるロケーションについて、符号ストリームブロックの4つのグループにおけるデータブロックは、図16に示されており、ここで、C8は、開始ブロック、終端ブロック、誤りブロック、及び順序付きセットブロック以外のタイプの制御データブロックを表す。例えば、図16におけるケース1について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプは、開始ブロックであり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、MACフレームデータブロックである。ケース2について、符号ストリームブロックの第1のグループにおけるデータブロックのタイプは、終端ブロックであり、符号ストリームブロックの第2のグループにおけるデータブロックのタイプは、順序付きセットブロックであり、符号ストリームブロックの第3のグループにおけるデータブロックのタイプはC8であり、符号ストリームブロックの第4のグループにおけるデータブロックのタイプは、開始ブロックである。図16における他のケースについては、図16における符号ストリームブロックのグループにおけるデータブロックのタイプ及びシーケンスを参照されたい。詳細は、本明細書において再び説明されない。
【0163】
可能な実装では、データブロックが終端制御文字(/T/)を含む場合、データブロックのタイプは、終端ブロックである。終端ブロックの原理は、ケースA3における終端ブロックの原理と同じであり、すなわち、終端ブロックは、図11に示されている。詳細は、本明細書において再び説明されない。例えば、図16に示されているケース1~ケース5及び図11に示されているケース1~ケース8を参照すると、40個のケースに対応する符号ブロックIDは異なる。
【0164】
ケースA1~ケースA8内に含まれる様々なケースについて、これらのケースに対応する符号ブロックIDは異なることに留意されたい。様々なケースに対応する符号ブロックIDの値は、本願のこの実施形態において限定されない。
【0165】
例えば、ケースA1~ケースA8における符号ストリームブロックの4つのグループのうちの3つのグループにおけるデータブロックのタイプがMACフレームデータブロックであるケースについて、符号ブロックIDは、次の2つのケースを含むが、これらに限定されない:ケース1:符号ストリームブロックの第1のグループにおけるデータブロックのタイプが開始ブロックであり、かつ符号ストリームブロックの残りの3つのグループにおけるデータブロックのタイプが全てMACフレームデータブロックである場合、符号ブロックIDは、0x5Eであり、具体的には、ターゲット符号ブロックのビット1~ビット8は、01111010である。ケース2:符号ストリームブロックの最初の3つのグループにおけるデータブロックのタイプが全てMACフレームデータブロックであり、かつ符号ストリームブロックの第4のグループにおけるデータブロックのタイプが、図11におけるケース1~ケース8に対応する終端ブロックである場合、符号ブロックIDは、それぞれ、0x07、0x17、0x27、0x37、0x47、0x57、0x67、及び0x77である。ケース1又はケース2のいずれかでは、LSBは、第1の送信ビットである。
【0166】
例えば、ケースA1~ケースA8におけるケース1及びケース2以外のケースについて、符号ブロックIDは、12ビットであり、符号ブロックIDの最初の8ビットは、ケース1及びケース2における符号ブロックIDのものとは異なる。
【0167】
可能な実装では、第1の符号化が、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して実行されて、符号ブロックコンテンツが取得されることは:符号ストリームブロックの2個のグループにおけるデータブロックが、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて圧縮されて、符号ブロックコンテンツが取得されることを含む。例えば、符号ストリームブロックの2個のグループにおけるデータブロックが圧縮されることは:符号ストリームブロックの2個のグループにおけるデータブロックにおいて値が0である各ビットが圧縮されることを含む。例えば、アイドルブロックの各ビットは0である。符号ストリームブロックの2個のグループにおけるデータブロックのタイプがアイドルブロックである場合、アイドルブロックの各ビットは、圧縮される。
【0168】
結論として、ターゲット符号ブロックは、様々なケースにおけるタイプ、符号ブロックID、及び符号ブロックコンテンツに基づいて取得することができる。
【0169】
可能な実装では、ターゲット符号ブロックは、誤り符号ブロックであり、誤り符号ブロックは、誤りインジケーションデータを含む。例えば、符号ストリームブロックの2個のグループの全てがデータ符号ストリームブロックであるというわけではなく、かつ符号ストリームブロックの2個のグループの全てが前述のケースA1~A8のうちのいずれの1つにも属さない場合、ターゲット符号ブロックが誤り符号ブロックであると決定され、ターゲット符号ブロックの符号ブロックID及び符号ブロックコンテンツが取得され、ここで、タイプ及び符号ブロックIDは、誤り符号ブロックにおける誤りインジケーションデータとして使用される。例えば、ターゲット符号ブロックのビット0は、タイプに対応し、ビット4~ビット1は、符号ブロックIDに対応し、ここで、ビット0は、0に設定され、ビット4~ビット1は、全て1に設定される。
【0170】
可能な実装では、符号ストリームブロックの4つのグループにおけるデータブロックは、図17に示されており、ここで、0、1、2、及び3は、符号ストリームブロックの4つのグループのシーケンスを示し、Cは、符号ストリームブロックのデータブロックのタイプが制御データブロックであることを示し、Dは、符号ストリームブロックのデータブロックのタイプがMACフレームデータブロックであることを示す。例えば、組み合わせ0について、符号ストリームブロックの4つのグループにおけるデータブロックのタイプは、全て制御データブロックである。例えば、図17における組み合わせごとに、符号ストリームブロックの4つのグループにおけるデータブロックのタイプの全てがMACフレームデータ符号ストリームブロックでなく、また前述のケースA1~A8のうちのいずれの1つにも属さない場合、ターゲット符号ブロックが誤り符号ブロックであると決定される。例えば、データブロックタイプが両方ともMACフレームデータブロックである符号ストリームブロックの2つのグループについて、符号ストリームブロックの2つのグループのうちの1つのグループにおけるデータブロックのタイプが開始ブロック、順序付きセットブロック、アイドルブロック、又は低電力アイドルブロックのいずれか1つである場合、ターゲット符号ブロックは、誤り符号ブロックである。
【0171】
可能な実装では、ターゲット符号ブロックが誤り符号ブロックである場合、ターゲット符号ブロックの構造は、図18に示されている。ターゲット符号ブロックのビット0は、タイプに対応し、ビット0は0である。ビット4~ビット1は、符号ブロックIDに対応し、ビット4~ビット1は、全て1である。ビット256~ビット5は、符号ブロックコンテンツに対応する。例えば、符号ブロックコンテンツの最初の4ビットは、0xEであり、その後の8ビットごとが0x1Eである。別の例として、符号ブロックコンテンツの各ビットは0である。
【0172】
別の可能な実装では、ターゲット符号ブロックが誤り符号ブロックである場合、ターゲット符号ブロックの符号ブロックIDの長さは、図18に示されている4ビットに限定されない。例えば、符号ブロックIDの長さは、8ビットである。ターゲット符号ブロックのビット0は、タイプに対応し、ビット0は0である。ビット8~ビット1は、符号ブロックIDに対応し、ビット8~ビット1は、全て1である。ビット256~ビット9は、符号ブロックコンテンツに対応する。例えば、符号ブロックコンテンツの8ビットごとが0x1Eである。別の例として、符号ブロックコンテンツの各ビットは0である。
【0173】
本願のこの実施形態において提供される符号化方法によれば、第1の符号化を符号ストリームブロックの異なるタイプに対して実行して、ターゲット符号ブロックを取得することができる。したがって、この方法は、広く適用される。
【0174】
可能な実装では、符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得することは:符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて誤り検出結果を取得すること;及び誤り検出結果に基づいて符号ストリームブロックの2個のグループを処理すること、及び符号ストリームブロックの処理された2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得することを含む。換言すれば、ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの2個のグループを処理することによって取得され、誤り検出結果は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得される。
【0175】
例えば、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて誤り検出結果を取得することは:符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて符号ストリームブロックの2個のグループのコンテンツ及びコンテンツシーケンスを取得すること、及び符号ストリームブロックの2個のグループのコンテンツ及びコンテンツシーケンスに基づいて誤り検出結果を取得することを含む。例えば、符号ストリームブロックの2個のグループのコンテンツシーケンスが第1の誤りケースセットにおける少なくとも1つのケースである場合、符号ストリームブロックの2個のグループのコンテンツシーケンスにおいて誤りが発生し;又は符号ストリームブロックの2個のグループのコンテンツシーケンスが第1の誤りケースセットにおけるいずれのケースでもない場合、符号ストリームブロックの2個のグループのコンテンツシーケンスは正しい。別の例として、符号ストリームブロックの2個のグループのコンテンツが第2の誤りケースセットにおける少なくとも1つのケースである場合、符号ストリームブロックの2個のグループのコンテンツにおいて誤りが発生し;又は符号ストリームブロックの2個のグループのコンテンツが第2の誤りケースセットにおけるいずれのケースでもない場合、符号ストリームブロックの2個のグループのコンテンツは正しい。
【0176】
可能な実装では、符号ストリームブロックの2つの隣接したグループが説明のための一例として使用され、第1の誤りケースセットは、以下の4つのケースを含むが、これらに限定されない。
【0177】
(1)符号ストリームブロックの前者のグループにおけるデータブロックのタイプが開始ブロックである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、MACフレームデータ以外のタイプである。
【0178】
(2)符号ストリームブロックの前者のグループにおけるデータブロックのタイプがMACフレームデータである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、MACフレームデータ又は終端ブロック以外のタイプである。
【0179】
(3)符号ストリームブロックの前者のグループにおけるデータブロックのタイプが終端ブロックである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、アイドルブロック又は順序付きセットブロック以外のタイプである。
【0180】
(4)符号ストリームブロックの前者のグループにおけるデータブロックのタイプがアイドルブロック又は順序付きセットブロックである場合、符号ストリームブロックの後者のグループにおけるデータブロックのタイプは、MACフレームデータ又は終端ブロックである。
【0181】
可能な実装では、符号ストリームブロックの1つのグループが説明のための一例として使用され、第2の誤りケースセットは、以下の4つのケースを含むが、これらに限定されない。
【0182】
(1)データブロックが開始制御文字を含む符号ストリームブロックについて、開始制御文字には、データ文字ではない他のコンテンツが後続する。
【0183】
(2)データブロックがデータ文字を含む符号ストリームブロックについて、データ文字には、データ文字又は終端制御文字ではない他のコンテンツが後続する。
【0184】
(3)データブロックが終端制御文字を含む符号ストリームブロックについて、終端制御文字には、アイドル制御文字又は順序付きセット制御文字ではない他のコンテンツが後続する。
【0185】
(4)データブロックがアイドル制御文字又は順序付きセット制御文字を含む符号ストリームブロックについて、アイドル制御文字又は順序付きセット制御文字には、データ文字又は終端制御文字が後続する。
【0186】
例えば、誤り検出結果は、符号ストリームブロックの2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、誤りブロックは、符号ストリームブロックの2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得され、第1の符号化は、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに対して実行されて、ターゲット符号ブロックが取得される。換言すれば、誤り検出結果が符号ストリームブロックの2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含む場合、ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに基づいて第1の符号化を実行することによって取得され、ここで、誤りブロックは、符号ストリームブロックの2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。例えば、誤りブロックは、誤り制御文字(error control character)を含む。例えば、コンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックについて、符号ストリームブロックのコンテンツは、誤り制御文字に変換されて、誤りブロックが取得される。
【0187】
例えば、第1の符号化が、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに対して実行されて、ターゲット符号ブロックが取得されることは:ターゲット符号ブロックのタイプが制御符号ブロックとして決定されること;及び符号ブロックIDが、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに基づいて取得されること;及び第1の符号化が、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて、誤りブロック、及び符号ストリームブロックの2個のグループにおける正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロックにおけるデータブロックに対して実行されて、符号ブロックコンテンツが取得されることを含む。可能な実装では、誤りブロックは、前述のケースA1における誤りブロックであり、符号ブロックID及び符号ブロックコンテンツを取得する方式は、前述のケースA1における関連したコンテンツの原理と同じである。詳細は、本明細書において再び説明されない。
【0188】
例えば、符号ストリームブロックの2個のグループのうちの各グループがコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックである場合、2個の誤りブロックが、符号ストリームブロックの2個のグループに基づいて取得され、第1の符号化は、2個の誤りブロックに対して実行されて、ターゲット符号ブロックが取得され、ここで、ターゲット符号ブロックは、誤り符号ブロックである。
【0189】
誤りが発生している符号ストリームブロックは、データの信頼性を保証するために、誤りが発生しているデータを後続のデータ送信における正しいデータから区別するように処理される。
【0190】
例えば、ターゲット符号ブロックが取得された後、方法は:FEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得すること;及び第1のデータを送信することを更に含む。FEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行する方式は、本願のこの実施形態において限定されない。第2の符号化は、FEC符号タイプに基づいてターゲット符号ブロックに対して実行されて、第1のデータが取得され、それにより、受信端が、受信された第1のデータに対して誤り訂正を実行して、データ送信精度を保証することができる。
【0191】
本願のこの実施形態において提供される符号化方法によれば、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行して2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループに対して第1の符号化を実行することによって取得される。したがって、符号化効率が改善され、符号化プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0192】
前述の記載は、本願の実施形態において提供される符号化方法を説明している。以下の記載は、本願の実施形態において提供される復号方法を説明している。図1に示されている実装シナリオを参照して、本願の一実施形態において提供される復号方法が図19に示されている。例えば、本願のこの実施形態において提供される復号方法は、図1におけるチップ104によって実行され、この方法は、段階1901及び段階1902を含むが、これらに限定されない。
【0193】
段階1901:ターゲット符号ブロックを取得する。ここで、ターゲット符号ブロックは、タイプ及びデータユニットを含む。
【0194】
例えば、図1における実装シナリオを参照すると、チップ102は、チャネル105を通じてチップ104に、FEC符号タイプを使用することによって符号化された第1のデータを送信する。データ送信プロセスでは、誤りビットが第1のデータにおいて発生し得る。誤りビットが発生しているデータは、第2のデータと称され、チップ104は、チャネル105を通じて第2のデータを受信する。
【0195】
可能な実装では、ターゲット符号ブロックを取得することは、以下の方式A及び方式Bを含むが、これらに限定されない。
【0196】
方式A:第2のデータが受信され、ここで、第2のデータは、FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得され;第2の復号は、第2のデータに対して実行されて、ターゲット符号ブロックが取得され、ここで、第2の復号は、誤り訂正処理である。
【0197】
例えば、ターゲット符号ブロックは、誤り訂正が第2のデータに対して実行されたが誤り訂正が失敗した場合に取得される誤り符号ブロックである。例えば、第2の復号が第2のデータに対して実行されて、ターゲット符号ブロックが取得されることは:第2のデータが、FEC符号タイプに基づいて処理されて、第1の符号語が取得されること、誤り訂正処理が第1の符号語に対して実行されること、及びターゲット符号ブロックが、誤り訂正処理の結果に基づいて取得されることを含む。
【0198】
例えば、チップ104は、FECデコーダの機能を有する。FECデコーダが、誤りビットの数がFECデコーダの誤り訂正能力を超過したと決定した場合、換言すれば、第1の符号語に対して誤り訂正を実行することができないと決定する場合、FECデコーダは、第1の符号語における全ての符号ブロックを誤り符号ブロックとして識別する。したがって、誤り訂正処理の結果が、第1の符号語における全ての符号ブロックが誤り符号ブロックとして識別されたというものであった場合、取得されたターゲット符号ブロックは、誤り符号ブロックである。
【0199】
例えば、誤り訂正処理の結果が、第1の符号語に対する誤り訂正が成功したというものであった場合、訂正された第1の符号語に基づいて取得された符号ブロックは、取得されたターゲット符号ブロックとして使用され、訂正された第1の符号語に基づいて取得された符号ブロックは、訂正に成功した符号ブロックである。
【0200】
方式B:第2のデータが受信され、ここで、第2のデータは、FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得され;第2の復号は、第2のデータに対して実行されて、ターゲット符号ブロックが取得され、ここで、第2の復号は、誤り訂正が回避される誤り検出処理である。
【0201】
例えば、ターゲット符号ブロックは、第2のデータに対する、誤り訂正が回避される誤り検出処理を通じて取得される誤り符号ブロックである。例えば、第2の復号が第2のデータに対して実行されて、ターゲット符号ブロックが取得されることは:第2のデータが、FEC符号タイプに基づいて処理されて、第1の符号語が取得されること、誤り検出及び訂正回避(bypass correction)処理が第1の符号語に対して実行されること;及びターゲット符号ブロックが、誤り訂正が回避される誤り検出処理の結果に基づいて取得されることを含む。
【0202】
例えば、チップ104は、FECデコーダの機能を有する。第1の符号語において誤りが存在することを検出した場合、FECデコーダは、第1の符号語における全ての符号ブロックを誤り符号ブロックとして識別する。したがって、誤り訂正が回避される誤り検出処理の結果が、第1の符号語における全ての符号ブロックが誤り符号ブロックとして識別されたというものであった場合、取得されたターゲット符号ブロックは、誤り符号ブロックである。
【0203】
例えば、誤り訂正が回避される誤り検出処理の結果が、第1の符号語に誤りがないというものであった場合、第1の符号語に基づいて取得された符号ブロックは、取得されたターゲット符号ブロックとして使用され、第1の符号語に基づいて取得された符号ブロックは、誤りがない符号ブロックである。
【0204】
例えば、ターゲット符号ブロックに基づいて実行されたフレームチェックシーケンス(frame check sequence、FCS)フレームチェックが失敗する。例えば、ターゲット符号ブロックは257ビットであり、最初の5ビットは01111であり、残りの252ビットは、以下の4つのケースを含むが、これらに限定されない。
【0205】
(1)各ビットは、変化しないままである。
【0206】
(2)最初の4ビットは、0x1又は0xEであり、残りのビットにおける8ビットごとが0x1Eである。
【0207】
(3)最初の248ビットでは、8ビットごとが0x1Eであり、最後の4ビットは、0x1又は0xEである。
【0208】
(4)各ビットは0である。
【0209】
例えば、ターゲット符号ブロックは、図20に示されており、ここで、bは、ビットを表す。
【0210】
段階1902:ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得する。ここで、符号ストリームブロックの任意のグループは、データブロック、及びタイプ及びデータユニットに基づいて取得される制御ブロックを含み、データブロックは、タイプ及びデータユニットに基づいて決定された復号方式において、データユニットに対して第1の復号を実行することによって取得され、nは、1よりも大きい整数である。
【0211】
例えば、ターゲット符号ブロックは257ビットであり、符号ストリームブロックの各グループにおいて、制御ブロックは8ビットであり、データブロックは64ビットである。第1の復号が1つのターゲット符号ブロックに対して実行されて、符号ストリームブロックの4つのグループ(n=2)が取得される一例が、説明のために使用される。複数のターゲット符号ブロックが取得される場合、第1の復号は、各ターゲット符号ブロックに対して実行されて、符号ストリームブロックの2個のグループが取得されてよい。例えば、2つのターゲット符号ブロックが取得される場合、第1の復号は、2つの符号ブロックの各々に対して実行されて、符号ストリームブロックの4つのグループが取得されてよく、換言すれば、第1の復号は、2つのターゲット符号ブロックに対して実行されて、符号ストリームブロックの8つのグループが取得される。
【0212】
可能な実装では、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは、以下の復号方式1~復号方式3を含むが、これらに限定されない。
【0213】
復号方式1では、ターゲット符号ブロックのタイプは、ターゲット符号ブロックのタイプに基づいてデータ符号ブロックとして決定され、ここで、ターゲット符号ブロックのデータユニットは、各々が8tの長さを有する2個のコンテンツを含み、tは、正の整数であり;符号ストリームブロックの2個のグループにおける制御ブロックは、ターゲット符号ブロックのタイプに基づいて取得され、第1の復号は、データユニット内に含まれる、各々が8tの長さを有する2個のコンテンツに対して別々に実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得される。
【0214】
例えば、タイプが、ターゲット符号ブロックがデータ符号ブロックであることを示す場合、第1の復号は、復号方式1におけるターゲット符号ブロックに対して実行されて、符号ストリームブロックの2個のグループが取得される。符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0215】
可能な実装では、ターゲット符号ブロックのタイプは1であり、これは、ターゲット符号ブロックがデータ符号ブロックであり、ターゲット符号ブロックのデータユニットは、各々が8tの長さを有する4つのコンテンツを含み、8tの長さを有する1つのコンテンツは、符号ストリームブロックの1つのグループに対応することを示す。例えば、8tの長さは、64ビットである。符号ストリームブロックの4つのグループにおける制御ブロックは、全て0x00に設定され、4つの64ビットコンテンツは、それぞれ符号ストリームブロックの4つのグループにおけるデータブロックのコンテンツとして使用される。
【0216】
例えば、jは、符号ストリームブロックの4つのグループのうちの1つのグループのシーケンス番号を表し、ここで、j=0,1,2,又は3である。
RXC_j<7:0>は、符号ストリームブロックのグループjにおける制御ブロックを表し、RXD_j<63:0>は、符号ストリームブロックのグループjにおけるデータブロックを表し、rx_coded<256:0>は、ターゲット符号ブロックを表し、rx_coded<0>は、ターゲット符号ブロックのタイプを表し、rx_coded<(64j+64):(64j+1)>は、ターゲット符号ブロックのビット(64j+64)~ビット(64j+1)を表し、RXC_j<7:0>及びRXD_j<63:0>のコンテンツは、以下の式3及び式4において示される:
RXC_j<7:0>=0x00、ここで、j=0,1,2,又は3(式3)
RXD_j<63:0>=rx_coded<(64j+64):(64j+1)>、ここで、j=0,1,2,又は3(式4)
【0217】
式3では、RXC_j<7:0>=0x00は、符号ストリームブロックの各グループにおける制御ブロックが0x00であることを示す。式4では、RXD_j<63:0>=rx_coded<(64j+64):(64j+1)>は、データユニットの64ビットごとが符号ストリームブロックの1つのグループにおけるデータブロックの64ビットとして使用されることを示す。
【0218】
例えば、j=0である場合、RXD_0<63:0>=rx_coded<64:1>は、ターゲット符号ブロックのビット64~ビット1がそれぞれ符号ストリームブロックのグループ0におけるデータブロックのビット63~ビット0として使用されることを示す。j=1である場合、RXD_1<63:0>=rx_coded<128:65>は、ターゲット符号ブロックのビット128~ビット65がそれぞれ符号ストリームブロックのグループ1におけるデータブロックのビット63~ビット0として使用されることを示す。j=2である場合、RXD_2<63:0>=rx_coded<192:129>は、ターゲット符号ブロックのビット192~ビット129がそれぞれ符号ストリームブロックのグループ2におけるデータブロックのビット63~ビット0として使用されることを示す。j=3である場合、RXD_3<63:0>=rx_coded<256:193>は、ターゲット符号ブロックのビット256~ビット193がそれぞれ符号ストリームブロックのグループ3におけるデータブロックのビット63~ビット0として使用されることを示す。
【0219】
復号方式2では、ターゲット符号ブロックのタイプは、ターゲット符号ブロックのタイプに基づいて制御符号ブロックとして決定され、ここで、ターゲット符号ブロックのデータユニットは、符号ブロックID及び符号ブロックコンテンツを含み、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの2個のグループにおける制御ブロックは、タイプ及び符号ブロックIDに基づいて取得され、第1の復号は、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得される。
【0220】
例えば、タイプが、ターゲット符号ブロックが制御符号ブロックであることを示す場合、第1の復号は、復号方式2においてターゲット符号ブロックに対して実行されて、符号ストリームブロックの2個のグループが取得される。符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ及び符号ブロックIDに基づいて取得され、符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0221】
可能な実装では、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。符号ストリームブロックの2個のグループにおける制御ブロックがタイプ及び符号ブロックIDに基づいて取得されること、及び第1の復号がタイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得されることは:符号ストリームブロックの2個のグループ内に含まれる制御ブロックがタイプ、第1のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビットに基づいて取得されること、及び第1の復号が、タイプ、第1のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックの2個のグループに対応するビットに基づいて決定された復号方式において、符号ブロックコンテンツに対して実行されて、符号ストリームブロックの2個のグループにおけるデータブロックが取得されることを含む。
【0222】
換言すれば、符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得される。
【0223】
例えば、符号ストリームブロックのグループi内に含まれるデータブロックのタイプは、符号ストリームブロックのグループi内に含まれる制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれるデータブロックのコンテンツに基づいて決定される。
【0224】
符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションの複数のケースが、一意の符号ブロックIDを使用することによって示され、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションは、ターゲット符号ブロックの符号ブロックIDに基づいて取得することができ、それにより、ターゲット符号ブロックの復号方式は、タイプ及び符号ブロックIDに基づいて決定することができる。したがって、符号ストリームブロックの2個のグループにおける制御ブロックは、タイプ及び符号ブロックIDに基づいて取得することができ、第1の復号は、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックに対して実行されて、符号ブロックコンテンツが取得される。
【0225】
復号方式3では、ターゲット符号ブロックのタイプ及びデータユニットに基づいて、ターゲット符号ブロックのタイプは、誤り符号ブロックとして決定され;符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値に設定され、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値に設定され、第1の値及び第2の値は、符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0226】
例えば、データユニットは、符号ブロックIDを含み、タイプ及び符号ブロックIDは、ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、第1の値及び第2の値は、符号ストリームブロックが誤り符号ストリームブロックであることを示す。例えば、ターゲット符号ブロックのタイプは0であり、符号ブロックIDは1111であり、ターゲット符号ブロックは、誤り符号ブロックであり、第1の復号を通じて取得される符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは0xFFであり、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、0xFEFEFEFEである。
【0227】
本願のこの実施形態において提供される復号方法によれば、第1の復号を、ターゲット符号ブロックの異なるタイプに対して実行して、符号ストリームブロックの2個のグループを取得することができる。したがって、この方法は、広く適用される。
【0228】
可能な実装では、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは:ターゲット符号ブロックのタイプ及びデータユニットに基づいて誤り検出結果を取得すること;及び誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することを含む。換言すれば、符号ストリームブロックの2個のグループは、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得され、誤り検出結果は、ターゲット符号ブロックのタイプ及びデータユニットに基づいて取得される。
【0229】
例えば、ターゲット符号ブロックのタイプ及びデータユニットに基づいて誤り検出結果を取得することは:ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックのコンテンツ及びコンテンツシーケンスを取得すること、及びターゲット符号ブロックのコンテンツ及びコンテンツシーケンスに基づいて誤り検出結果を取得することを含む。例えば、ターゲット符号ブロックのコンテンツシーケンスが第3の誤りケースセットにおける少なくとも1つのケースである場合、ターゲット符号ブロックのコンテンツシーケンスにおいて誤りが発生し;又はターゲット符号ブロックのコンテンツシーケンスが第3の誤りケースセットにおけるいずれのケースでもない場合、ターゲット符号ブロックのコンテンツシーケンスは正しい。別の例として、ターゲット符号ブロックのコンテンツが第4の誤りケースセットにおける少なくとも1つのケースである場合、ターゲット符号ブロックのコンテンツにおいて誤りが発生し;又はターゲット符号ブロックのコンテンツが第4の誤りケースセットにおけるいずれのケースでもない場合、ターゲット符号ブロックのコンテンツは正しい。
【0230】
可能な実装では、ターゲット符号ブロックが制御符号ブロックであり、かつターゲット符号ブロックが4つのビットグループを含む一例が説明のために使用される。1つのビットグループは、第1の復号を通じて取得される符号ストリームブロックの1つのグループに対応する。2つの隣接したビットグループについて、第3の誤りケースセットは、以下の4つのケースを含むが、これらに限定されない。
【0231】
(1)前者のビットグループが開始制御文字(/S/)を含む場合、後者のビットグループは、データ文字(/D/)ではない他のコンテンツを含む。
【0232】
(2)前者のビットグループがデータ文字のみを含む場合、後者のビットグループは、データ文字又は終端制御文字(/T/)ではない他のコンテンツを含む。
【0233】
(3)前者のビットグループが終端制御文字を含む場合、後者のビットグループは、アイドル制御文字(/I/)又はシーケンス順序付きセット制御文字(/O/)ではない他のコンテンツを含む。
【0234】
(4)前者のビットグループがアイドル制御文字又はシーケンス順序付きセット制御文字を含む場合、後者のビットグループは、データ文字又は終端制御文字を含む。
【0235】
可能な実装では、1つのビットグループが説明のための一例として使用され、第4の誤りケースセットは、以下の4つのケースを含むがこれらに限定されない。
【0236】
(1)開始制御文字を含むビットグループについて、開始制御文字には、データ文字ではない他のコンテンツが後続する。
【0237】
(2)データ文字を含むビットグループについて、データ文字には、データ文字又は終端制御文字ではない他のコンテンツが後続する。
【0238】
(3)終端制御文字を含むビットグループについて、終端制御文字には、アイドル制御文字又はシーケンス順序付きセット制御文字ではない他のコンテンツが後続する。
【0239】
(4)アイドル制御文字又はシーケンス順序付きセット制御文字を含むビットグループについて、アイドル制御文字又はシーケンス順序付きセット制御文字には、データ文字又は終端制御文字が後続する。
【0240】
可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは:ターゲット符号ブロックを変換して、第2の符号ブロックを取得すること、及び第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することを含み、ここで、第2の符号ブロックは、ターゲット符号ブロックを変換することによって取得され、かつターゲット符号ブロックと同じ数のビットを有する符号ブロックである。換言すれば、符号ストリームブロックの2個のグループは、第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して第1の復号を実行することによって取得され、第2の符号ブロックは、ターゲット符号ブロックを変換することによって取得され、かつターゲット符号ブロックと同じ数のビットを有する符号ブロックである。
【0241】
例えば、ターゲット符号ブロックを変換して、第2の符号ブロックを取得することは:ターゲット符号ブロックにあり、かつコンテンツシーケンス誤り又はコンテンツ誤りを有するビットグループについて、コンテンツシーケンス誤り又はコンテンツ誤りを有するビットグループを、誤り制御文字に変換すること;及び誤り制御文字、及びターゲット符号ブロックにあり、かつ正しいコンテンツシーケンス及び正しいコンテンツを有するビットグループに基づいて第2の符号ブロックを取得することを含む。可能な実装では、変換を通じて取得された第2の符号ブロックは、制御符号ブロックであり、第1の復号は、復号方式2において第2の符号ブロックに対して実行されてよい。
【0242】
別の可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得することは:ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、第1の符号ストリームブロックの2個のグループを取得すること、及び第1の符号ストリームブロックの2個のグループを変換して、符号ストリームブロックの2個のグループを取得することを含む。換言すれば、符号ストリームブロックの2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの2個のグループは、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得される。
【0243】
例えば、第1の符号ストリームブロックの2個のグループを変換して、符号ストリームブロックの2個のグループを取得することは:符号ストリームブロックを誤り符号ストリームブロックに変換することを含み、ここで、符号ストリームブロックは、第1の符号ストリームブロックの2個のグループにあり、かつコンテンツシーケンス誤り又はコンテンツ誤りを有するビットグループに基づいて取得される。例えば、誤り符号ストリームブロックでは、制御ブロックは0xFFであり、データブロックは0xFEFEFEFEである。誤りが発生しているターゲット符号ブロックは、データの信頼性を保証するために、受信端が誤りデータ及び正しいデータの間で区別することができるように処理される。
【0244】
本願のこの実施形態において提供される復号方法によれば、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに、ターゲット符号ブロックに対して第1の復号を実行することによって取得される。したがって、復号効率が改善され、復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0245】
前述の記載は、本願の実施形態において提供される符号化方法を説明している。前述の方法に対応して、本願の実施形態は、符号化装置を更に提供する。図21は、本願の一実施形態に係る符号化装置の構造の概略図である。装置は、第1のネットワークデバイスにおいて使用され、第1のネットワークデバイスは、図1に示されている実施形態における第1のネットワークデバイスである。図21に示されている以下の複数のモジュールに基づいて、図21に示されている符号化装置は、第1のネットワークデバイスによって実行される全ての又は幾つかの動作を実行することができる。装置は、示されているモジュールではない更なる追加のモジュールを含んでよく、又は示されているモジュールの幾つかが省略されることが理解されるべきである。これは、本願のこの実施形態において限定されない。図21に示されているように、装置は:
符号ストリームブロックの2個のグループを取得するように構成された取得モジュール2201、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの2個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得するように構成された第1の符号化モジュール2202、ここで、ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの2個のグループにおける制御ブロックに基づいて決定されるタイプを含み、データユニットは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定された符号化方式において、符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される
を備える。
【0246】
可能な実装では、タイプは、ターゲット符号ブロックがデータ符号ブロックであることを示し;データユニットは、符号ストリームブロックの2個のグループのシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得される。
【0247】
可能な実装では、タイプは、ターゲット符号ブロックが制御符号ブロックであることを示し;データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、符号ブロックコンテンツは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの2個のグループにおけるデータブロックに対して第1の符号化を実行することによって取得され、符号ブロックIDは、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得され、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0248】
可能な実装では、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す。
【0249】
可能な実装では、符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0250】
可能な実装では、符号ブロックIDは、ハミング距離保護を有する。
【0251】
可能な実装では、ターゲット符号ブロックは、誤り符号ブロックであり、誤り符号ブロックは、誤りインジケーションデータを含む。
【0252】
可能な実装では、ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの2個のグループを処理することによって取得され、誤り検出結果は、符号ストリームブロックの2個のグループにおける制御ブロック及びデータブロックに基づいて取得される。
【0253】
可能な実装では、誤り検出結果は、符号ストリームブロックの2個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの2個のグループにおける誤りブロックに基づいて第1の符号化を実行することによって取得され、誤りブロックは、符号ストリームブロックの2個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される。
【0254】
可能な実装では、制御ブロックは、tビットを含み、データブロックは、8tビットを含み、tは、正の整数である。
【0255】
可能な実装では、nの値は2であり、tの値は8であり、ターゲット符号ブロックは257ビットである。
【0256】
可能な実装では、符号ストリームブロックの2個のグループの全てが、媒体独立インターフェースMIIからのものである。
【0257】
可能な実装では、装置は:前方誤り訂正FEC符号タイプに基づいてターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得するように構成された第2の符号化モジュール2203;及び第1のデータを送信するように構成された送信モジュール2204を更に備える。
【0258】
本願のこの実施形態において提供される符号化装置によれば、ターゲット符号ブロックは、符号ストリームブロックの2個のグループのうちの各グループに対して64B/66B符号化を実行して2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックをトランスコーディングすることを必要とせずに、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループに対して第1の符号化を実行することによって取得される。したがって、符号化効率が改善され、符号化プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0259】
前述の記載は、本願の実施形態において提供される復号方法を説明している。前述の方法に対応して、本願の実施形態は、復号装置を更に提供する。図22は、本願の一実施形態に係る復号装置の構造の概略図である。装置は、第2のネットワークデバイスにおいて使用され、第2のネットワークデバイスは、図1に示されている実施形態における第2のネットワークデバイスである。図22に示されている以下の複数のモジュールに基づいて、図22に示されている復号装置は、第2のネットワークデバイスによって実行される全ての又は幾つかの動作を実行することができる。装置は、示されているモジュールではない更なる追加のモジュールを含んでよく、又は示されているモジュールの幾つかが省略されることが理解されるべきである。これは、本願のこの実施形態において限定されない。図22に示されているように、装置は:
ターゲット符号ブロックを取得するように構成された取得モジュール2301、ここで、ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2個のグループを取得するように構成された復号モジュール2302、ここで、符号ストリームブロックの任意のグループは、データブロック、及びタイプ及びデータユニットに基づいて取得される制御ブロックを含み、データブロックは、タイプ及びデータユニットに基づいて決定された復号方式において、データユニットに対して第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える。
【0260】
可能な実装では、タイプは、ターゲット符号ブロックがデータ符号ブロックであることを示し;符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0261】
可能な実装では、タイプは、ターゲット符号ブロックが制御符号ブロックであることを示し、データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ及び符号ブロックIDに基づいて取得され、符号ストリームブロックの2個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ及び符号ブロックIDに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得され、ここで、iは、1よりも大きいか又はこれに等しく、かつ2よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2-1よりも小さいか又はこれに等しい整数である。
【0262】
可能な実装では、符号ブロックIDは、第1のID及び第2のIDを含み、第1のIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプを示し、第2のIDは、符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;符号ストリームブロックのグループi内に含まれる制御ブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれるデータブロックは、タイプ、第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて決定された復号方式において、符号ブロックコンテンツに対して第1の復号を実行することによって取得される。
【0263】
可能な実装では、符号ストリームブロックのグループi内に含まれるデータブロックのタイプは、符号ストリームブロックのグループi内に含まれる制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれるデータブロックのコンテンツに基づいて決定される。
【0264】
可能な実装では、符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である。
【0265】
可能な実装では、符号ブロックIDは、ハミング距離保護を有する。
【0266】
可能な実装では、データユニットは、符号ブロック識別子IDを含み、タイプ及び符号ブロックIDは、ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの2個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの2個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、第1の値及び第2の値は、符号ストリームブロックが誤り符号ストリームブロックであることを示す。
【0267】
可能な実装では、取得モジュール2301は:第2のデータを受信すること、ここで、第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び第2のデータに対して第2の復号を実行して、ターゲット符号ブロックを取得すること、ここで、第2の復号は、誤り訂正処理である、を行うように構成されている。
【0268】
可能な実装では、ターゲット符号ブロックは、誤り訂正が第2のデータに対して実行されたが誤り訂正が失敗した場合に取得される誤り符号ブロックである。
【0269】
可能な実装では、取得モジュール2301は:第2のデータを受信すること、ここで、第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び第2のデータに対して第2の復号を実行して、ターゲット符号ブロックを取得すること、ここで、第2の復号は、誤り訂正が回避される誤り検出処理である、を行うように構成されている。
【0270】
可能な実装では、ターゲット符号ブロックは、第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである。
【0271】
可能な実装では、符号ストリームブロックの2個のグループは、誤り検出結果、及びターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得され、誤り検出結果は、ターゲット符号ブロックのタイプ及びデータユニットに基づいて取得される。
【0272】
可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの2個のグループは、第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して第1の復号を実行することによって取得され、第2の符号ブロックは、ターゲット符号ブロックを変換することによって取得され、かつターゲット符号ブロックと同じ数のビットを有する符号ブロックである。
【0273】
可能な実装では、誤り検出結果は、ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの2個のグループは、第1の符号ストリームブロックの2個のグループを変換することによって取得され、第1の符号ストリームブロックの2個のグループは、ターゲット符号ブロックのタイプ及びデータユニットに基づいてターゲット符号ブロックに対して第1の復号を実行することによって取得される。
【0274】
可能な実装では、制御ブロックは、tビットを含み、データブロックは、8tビットを含み、tは、正の整数である。
【0275】
可能な実装では、nの値は2であり、tの値は8であり、ターゲット符号ブロックは257ビットである。
【0276】
可能な実装では、符号ストリームブロックの2個のグループの全てが媒体独立インターフェースMIIフォーマットである。
【0277】
本願のこの実施形態において提供される復号装置によれば、制御ブロック及びデータブロックを含む符号ストリームブロックの2個のグループは、ターゲット符号ブロックをトランスコーディングして2個の66ビット符号ブロックを取得すること、及び2個の66ビット符号ブロックを復号することを必要とせずに、ターゲット符号ブロックを復号することによって取得される。したがって、復号効率が改善され、復号プロセスによって引き起こされる遅延、電力消費、及びチップ面積占有が削減される。
【0278】
図21及び図22において提供される装置が装置の機能を実装する場合、前述の機能モジュールへの分割は、説明のための一例として単に使用されることが理解されるべきである。実際の応用では、前述の機能は、必要に応じて実装のために異なる機能モジュールに割り当てられてよい。換言すれば、上記で説明された機能の全て又は幾つかを実装するように、デバイスの内部構造は異なる機能モジュールに分割される。加えて、前述の実施形態において提供された装置及び方法の実施形態は、同じ概念に属する。装置の特定の実装プロセスについては、方法の実施形態を参照されたい。詳細は、本明細書において再び説明されない。
【0279】
前述の実施形態におけるデバイスの特定のハードウェア構造については、図23に示されているネットワークデバイス1500を参照されたい。ネットワークデバイス1500は、送受信機1501、プロセッサ1502、及びメモリ1503を備える。送受信機1501、プロセッサ1502、及びメモリ1503は、バス1504を通じて互いに接続されている。送受信機1501は、パケットを受信するとともに、パケットを送信するように構成されている。メモリ1503は、命令又はプログラムコードを記憶するように構成されている。プロセッサ1502は、デバイスが前述の方法の実施形態における第1のネットワークデバイス又は第2のネットワークデバイスの関連した処理段階を実行することを可能するための、メモリ1503における命令又はプログラムコードを呼び出すように構成されている。特定の実施形態では、本願のこの実施形態におけるネットワークデバイス1500は、前述の方法の実施形態の各々における第1のネットワークデバイス又は第2のネットワークデバイスに対応してよい。ネットワークデバイス1500におけるプロセッサ1502は、図23に示されているネットワークデバイス1500が第1のネットワークデバイス又は第2のネットワークデバイスによって実行される動作の全て又は幾つかを実行することを可能にするための、メモリ1503における命令又はプログラムコードを読み取る。
【0280】
ネットワークデバイス1500は、図21及び図22に示されている装置に更に対応してよい。例えば、図21及び図22における取得モジュール2201及び取得モジュール2301は、送受信機1501と同等であり、第1の符号化モジュール2202及び復号モジュール2302は、プロセッサ1502と同等である。
【0281】
図24は、本願の例示の実施形態において提供されるネットワークデバイス2000の構造の概略図である。図24に示されているネットワークデバイス2000は、図2に示されている符号化方法に関連した動作及び図19に示されている復号方法に関連した動作を実行するように構成されている。ネットワークデバイス2000は、例えば、スイッチ又はルータである。
【0282】
図24に示されているように、ネットワークデバイス2000は、少なくとも1つのプロセッサ2001、メモリ2003、及び少なくとも1つの通信インターフェース2004を備える。
【0283】
プロセッサ2001は、例えば、汎用中央処理ユニット(central processing unit、CPU)、デジタル信号プロセッサ(digital signal processor、DSP)、ネットワークプロセッサ(network processor、NP)、グラフィックス処理ユニット(graphics processing unit、GPU)、ニューラルネットワーク処理ユニット(neural network processing unit、NPU)、データ処理ユニット(Data Processing Unit、DPU)、マイクロプロセッサ、又は本願の解決手段を実装するように構成された1つ又は複数の集積回路である。例えば、プロセッサ2001は、特定用途向け集積回路(application-specific integrated circuit、ASIC)、プログラマブルロジックデバイス(programmable logic device、PLD)又は別のプログラマブルロジックデバイス、トランジスタロジックデバイス、ハードウェアコンポーネント、又はこれらの任意の組み合わせを含む。PLDは、例えば、コンプレックスプログラマブルロジックデバイス(complex programmable logic device、CPLD)、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)、ジェネリックアレイロジック(generic array logic、GAL)、又はこれらの任意の組み合わせである。プロセッサは、本発明の実施形態において開示されるコンテンツを参照して説明される様々な論理ブロック、モジュール、及び回路を実装又は実行してよい。プロセッサは、代替的には、コンピューティング機能を実装するプロセッサの組み合わせ、例えば、1つ又は複数のマイクロプロセッサの組み合わせ、又はDSP及びマイクロプロセッサの組み合わせであってよい。
【0284】
任意選択で、ネットワークデバイス2000は、バスを更に備える。バスは、ネットワークデバイス2000のコンポーネント間の情報を送信するように構成されている。バスは、ペリフェラルコンポーネントインターコネクト(peripheral component interconnect、略してPCI)バス、拡張業界標準アーキテクチャ(extended industry standard architecture、略してEISA)バス、又は同様のものであってよい。バスは、アドレスバス、データバス、制御バス、及び同様のものに分類されてよい。表現を容易にするために、図24においてバスを表すのに1つの太線のみが使用されているが、これは、1つのバスのみ又は1つのタイプのバスのみが存在することを意味しない。バスを通じて接続されることに加えて、図24におけるネットワークデバイス2000のコンポーネントは、別の方式において接続されてよい。コンポーネントが接続される方式は、本発明のこの実施形態において限定されない。
【0285】
メモリ2003は、例えば、リードオンリメモリ(read-only memory、ROM)又は静的情報及び命令を記憶することができる別のタイプの静的記憶デバイス、又はランダムアクセスメモリ(random access memory、RAM)又は情報及び命令を記憶することができる別のタイプの動的記憶デバイス、又は電気的消去可能プログラマブルリードオンリメモリ(electrically erasable programmable read-only Memory、EEPROM)、コンパクトディスクリードオンリメモリ(compact disc read-only memory、CD-ROM)又は別のコンパクトディスクストレージ、光ディスクストレージ(コンパクトディスク、レーザディスク、光ディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク、及び同様のものを含む)、磁気ディスク記憶媒体又は別の磁気記憶デバイス、又は命令又はデータ構造の形式における予期されるプログラムコードを搬送又は記憶するために使用することができ、かつコンピュータによってアクセスすることができる他の任意の媒体であるが、これらに限定されない。例えば、メモリ2003は、独立して存在し、バスを通じてプロセッサ2001に接続されている。代替的には、メモリ2003及びプロセッサ2001は、ともに統合されてよい。
【0286】
通信インターフェース2004は、送受信機等の任意の装置を使用し、別のデバイス又は通信ネットワークと通信するように構成されている。通信ネットワークは、イーサネット(登録商標)、無線アクセスネットワーク(RAN)、無線ローカルエリアネットワーク(wireless local area network、WLAN)、又は同様のものであってよい。通信インターフェース2004は、有線通信インターフェースを含んでよく、無線通信インターフェースを更に含んでよい。具体的には、通信インターフェース2004は、イーサネット(登録商標)(ethernet(登録商標))インターフェース、高速イーサネット(登録商標)(fast ethernet(登録商標)、FE)インターフェース、ギガビットイーサネット(登録商標)(gigabit ethernet(登録商標)、GE)インターフェース、非同期転送モード(asynchronous transfer mode、ATM)インターフェース、無線ローカルエリアネットワーク(wireless local area network、WLAN)インターフェース、セルラネットワーク通信インターフェース、又はこれらの組み合わせであってよい。イーサネット(登録商標)インターフェースは、光インターフェース、電気インターフェース、又はこれらの組み合わせであってよい。本願のこの実施形態では、通信インターフェース2004は、ネットワークデバイス2000によって、別のデバイスと通信するのに使用されてよい。
【0287】
特定の実装の間、一実施形態では、プロセッサ2001は、1つ又は複数のCPU、例えば、図24に示されているCPU0及びCPU1を含んでよい。これらのプロセッサの各々は、シングルコア(single-CPU)プロセッサであってもよいし、又はマルチコア(multi-CPU)プロセッサであってもよい。本明細書におけるプロセッサは、データ(例えば、コンピュータプログラム命令)を処理するように構成された1つ又は複数のデバイス、回路、及び/又は処理コアであってよい。
【0288】
特定の実装の間、一実施形態では、ネットワークデバイス2000は、図24におけるプロセッサ2001及びプロセッサ2005等の複数のプロセッサを含んでよい。これらのプロセッサの各々は、シングルコア(single-CPU)プロセッサであってもよいし、又はマルチコア(multi-CPU)プロセッサであってもよい。本明細書におけるプロセッサは、データ(例えば、コンピュータプログラム命令)を処理するように構成された1つ又は複数のデバイス、回路、及び/又は処理コアであってよい。
【0289】
特定の実装の間、一実施形態では、ネットワークデバイス2000は、出力デバイス及び入力デバイスを更に備えてよい。出力デバイスは、プロセッサ2001と通信し、情報を複数の方式において表示してよい。例えば、出力デバイスは、液晶ディスプレイ(liquid crystal display、LCD)、発光ダイオード(light emitting diode、LED)ディスプレイデバイス、ブラウン管(cathode ray tube、CRT)ディスプレイデバイス、又はプロジェクタ(projector)であってよい。入力デバイスは、プロセッサ2001と通信し、複数の方式においてユーザからの入力を受信してよい。例えば、入力デバイスは、マウス、キーボード、タッチスクリーンデバイス、又はセンシングデバイスであってよい。
【0290】
幾つかの実施形態では、メモリ2003は、本願の解決手段を実行するためのプログラムコード2010を記憶するように構成されており、プロセッサ2001は、メモリ2003に記憶されたプログラムコード2010を実行してよい。換言すれば、ネットワークデバイス2000は、プロセッサ2001、及びメモリ2003におけるプログラムコード2010を使用することによって方法の実施形態において提供される符号化方法又は復号方法を実装してよい。プログラムコード2010は、1つ又は複数のソフトウェアモジュールを含んでよい。任意選択で、プロセッサ2001は、代替的には、本願の解決手段を実行するためのプログラムコード又は命令を記憶してよい。
【0291】
特定の実施形態では、本願のこの実施形態におけるネットワークデバイス2000は、前述の方法の実施形態の各々における第1のネットワークデバイス又は第2のネットワークデバイスに対応してよい。ネットワークデバイス2000におけるプロセッサ2001は、図24に示されているネットワークデバイス2000が第1のネットワークデバイス又は第2のネットワークデバイスによって実行される動作の全て又は幾つかを実行することを可能にするための、メモリ2003におけるプログラムコード2010又はプロセッサ2001に記憶されたプログラムコード又は命令を読み取る。
【0292】
ネットワークデバイス2000は、図21及び図22に示されている装置に更に対応してよい。図21及び図22に示されている装置における各機能モジュールは、ネットワークデバイス2000のソフトウェアを使用することによって実装される。換言すれば、図21及び図22に示されている装置内に含まれる機能モジュールは、ネットワークデバイス2000におけるプロセッサ2001がメモリ2003に記憶されたプログラムコード2010を読み取った後に生成される。例えば、図21及び図22における取得モジュール2201及び取得モジュール2301は、通信インターフェース2004と同等であり、第1の符号化モジュール2202及び復号モジュール2302は、プロセッサ2001及び/又はプロセッサ2005と同等である。
【0293】
図2及び図19に示されている方法の段階は、ネットワークデバイス2000のプロセッサにおけるハードウェアの集積ロジック回路又はソフトウェアの形式における命令を使用することによって企図される。本願の実施形態を参照して開示される方法の段階は、ハードウェアプロセッサによって直接実行されてもよいし、又はプロセッサにおけるハードウェア及びソフトウェアモジュールの組み合わせによって実行されてもよい。ソフトウェアモジュールは、ランダムアクセスメモリ、フラッシュメモリ、リードオンリメモリ、プログラマブルリードオンリメモリ、電気的消去可能プログラマブルメモリ、又はレジスタ等の当該技術分野における成熟した記憶媒体に位置してよい。記憶媒体は、メモリに位置する。プロセッサは、メモリにおける情報を読み取り、プロセッサのハードウェアと組み合わせて前述の方法の段階を企図する。繰り返しを回避するために、詳細は、本明細書において再び説明されない。
【0294】
図25は、本願の別の例示の実施形態において提供されるネットワークデバイス2100の構造の概略図である。図25に示されているネットワークデバイス2100は、図2及び図19に示されている方法における動作の全て又は幾つかを実行するように構成されている。ネットワークデバイス2100は、例えば、スイッチ又はルータである。ネットワークデバイス2100は、ジェネリックバスアーキテクチャによって実装されてよい。
【0295】
図25に示されているように、ネットワークデバイス2100は、メイン制御ボード2110及びインターフェースボード2130を備える。
【0296】
メイン制御ボードは、メイン処理ユニット(main processing unit、MPU)又はルートプロセッサカード(route processor card)とも称される。メイン制御ボード2110は、ルート計算、デバイス管理、デバイスメンテナンス、及びプロトコル処理機能を含む、ネットワークデバイス2100におけるコンポーネントを制御及び管理するように構成されている。メイン制御ボード2110は、中央処理ユニット2111及びメモリ2112を備える。
【0297】
インターフェースボード2130は、ラインインターフェースユニットカード(line processing unit、LPU)、ラインカード(line card)、又はサービスボードとも称される。インターフェースボード2130は、様々なサービスインターフェースを提供し、データパケット転送を実装するように構成されている。サービスインターフェースは、イーサネット(登録商標)インターフェース、POS(packet over SONET/SDH)インターフェース、及び同様のものを含むが、これらに限定されない。イーサネット(登録商標)インターフェースは、例えば、フレキシブルイーサネット(登録商標)サービスインターフェース(flexible ethernet clients、FlexE Clients)である。インターフェースボード2130は:中央処理ユニット2131、ネットワークプロセッサ2132、転送エントリメモリ2134、及び物理インターフェースカード(physical interface card、PIC)2133を備える。
【0298】
インターフェースボード2130上の中央処理ユニット2131は:インターフェースボード2130を制御及び管理し、メイン制御ボード2110上の中央処理ユニット2111と通信するように構成されている。
【0299】
ネットワークプロセッサ2132は、パケット送信処理を実装するように構成されている。ネットワークプロセッサ2132の一形式は、転送チップであってよい。転送チップは、ネットワークプロセッサ(network processor、NP)であってよい。幾つかの実施形態では、転送チップは、特定用途向け集積回路(application-specific integrated circuit、ASIC)又はフィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)を使用することによって実装されてよい。具体的には、ネットワークプロセッサ2132は、転送エントリメモリ2134に記憶された転送テーブルに基づいて、受信されたパケットを転送するように構成されている。パケットの宛先アドレスがネットワークデバイス2100のアドレスである場合、ネットワークプロセッサ2132は、処理のためにパケットをCPU(例えば、中央処理ユニット2131)に送信する。パケットの宛先アドレスがネットワークデバイス2100のアドレスではない場合、ネットワークプロセッサ2132は、宛先アドレスに基づいた転送テーブルから、宛先アドレスに対応するネクストホップ及びエグレスインターフェースを発見し、パケットを、宛先アドレスに対応するエグレスインターフェースに転送する。アップリンクパケットを処理することは:パケットのインバウンドインターフェースを処理すること、及び転送テーブルを検索することを含んでよい。ダウンリンクパケットを処理することは:転送テーブルを検索すること、及び同様のものを含んでよい。幾つかの実施形態では、中央処理ユニットは、転送チップの機能を実行してもよく、例えば、インターフェースボードにおいて転送チップが必要とされないように、汎用CPUに基づいてソフトウェア転送を実装してもよい。
【0300】
物理インターフェースカード2133は、元のトラフィックがインターフェースボード2130に入り、処理されたパケットが物理インターフェースカード2133から送出されるように、物理層インターコネクション機能を実装するように構成されている。物理インターフェースカード2133は、サブカードとも称され、インターフェースボード2130上に取り付けられてよく、光/電気信号をパケットに変換すること、パケットに対して有効性チェックを実行すること、及びその後処理のためにパケットをネットワークプロセッサ2132に転送することを担当する。幾つかの実施形態では、中央処理ユニット2131は、ネットワークプロセッサ2132の機能を実行してもよく、例えば、汎用CPUに基づいてソフトウェア転送を実装してもよい。したがって、ネットワークプロセッサ2132は、物理インターフェースカード2133において必要とされない。
【0301】
任意選択で、ネットワークデバイス2100は、複数のインターフェースボードを備える。例えば、ネットワークデバイス2100は、インターフェースボード2140を更に備える。インターフェースボード2140は、中央処理ユニット2141、ネットワークプロセッサ2142、転送エントリメモリ2144、及び物理インターフェースカード2143を備える。インターフェースボード2140におけるコンポーネントの機能及び実装は、インターフェースボード2130のものと同じ又は同様であり、詳細は、本明細書において再び説明されない。
【0302】
任意選択で、ネットワークデバイス2100は、スイッチングボード2120を更に備える。スイッチングボード2120は、スイッチファブリックユニット(switch fabric unit、SFU)とも称され得る。ネットワークデバイスが複数のインターフェースボードを有する場合、スイッチングボード2120は、インターフェースボード間のデータ交換を実行するように構成されている。例えば、インターフェースボード2130及びインターフェースボード2140は、スイッチングボード2120を使用することによって互いに通信してよい。
【0303】
メイン制御ボード2110は、インターフェースボードに結合される。例えば、メイン制御ボード2110、インターフェースボード2130、インターフェースボード2140、及びスイッチングボード2120は、相互作用のためにシステムバスを使用することによってシステムバックボードに接続される。可能な実装では、プロセス間通信(inter-process communication、IPC)プロトコルチャネルが、メイン制御ボード2110、インターフェースボード2130、及びインターフェースボード2140の間で確立される。メイン制御ボード2110は、IPCチャネルを通じてインターフェースボード2130及びインターフェースボード2140と通信する。
【0304】
論理的に、ネットワークデバイス2100は、制御プレーン及び転送プレーンを含む。制御プレーンは、メイン制御ボード2110及び中央処理ユニット2111を含む。転送プレーンは、転送を実行するコンポーネント、例えば、転送エントリメモリ2134、物理インターフェースカード2133、及びネットワークプロセッサ2132を含む。制御プレーンは、ルータ、転送テーブルの生成、シグナリング及びプロトコルパケットの処理、及びネットワークデバイスの状態の構成及び維持等の機能を実行する。制御プレーンは、生成された転送テーブルを転送プレーンに送達する。転送プレーン上で、ネットワークプロセッサ2132は、制御プレーンによって送達された転送テーブルに基づいて、物理インターフェースカード2133によって受信されたパケットを転送するためのテーブルを検索する。制御プレーンによって送達された転送テーブルは、転送エントリメモリ2134に記憶されてよい。幾つかの実施形態では、制御プレーン及び転送プレーンは、完全に別個であってよく、同じネットワークデバイス上にはない。
【0305】
1つ又は複数のメイン制御ボードが存在してよく、複数のメイン制御ボードが存在する場合、一次メイン制御ボード及び二次メイン制御ボードが含まれてよいことに留意されたい。1つ又は複数のインターフェースボードが存在してよい。より強力なデータ処理能力を有するネットワークデバイスは、より大きい数のインターフェースボードを提供する。インターフェースボード上に1つ又は複数の物理インターフェースカードが存在してもよい。スイッチングボードは存在しなくてもよいし、又は1つ又は複数のスイッチングボードが存在してもよい。複数のスイッチングボードが存在する場合、負荷分散及び冗長性バックアップがともに実装されてよい。集中型転送アーキテクチャでは、ネットワークデバイスは、スイッチングボードを必要としなくてよく、インターフェースボードが、システム全体のサービスデータを処理する機能を実行する。分散転送アーキテクチャでは、ネットワークデバイスは、少なくとも1つのスイッチングボードを有してよく、スイッチングボードを使用することによって複数のインターフェースボード間のデータ交換を実装して、大容量データ交換及び処理能力を提供する。したがって、分散アーキテクチャにおけるネットワークデバイスのデータアクセス及び処理能力は、集中化アーキテクチャにおけるネットワークデバイスのものよりも高い。任意選択で、ネットワークデバイスの形式は、代替的には、単一のボードであってよい。すなわち、スイッチファブリックボードが存在せず、インターフェースボード及びメイン制御ボードの機能は、ボードに統合される。このケースでは、インターフェースボード上の中央処理ユニット及びメイン制御ボード上の中央処理ユニットは、ボード上の1つの中央処理ユニットに組み合わされてよい。ボード上の1つの中央処理ユニットは、2つの中央処理ユニットが組み合わされた後に存在する2つの中央処理ユニットの機能を実行する。この形式におけるネットワークデバイスは、低いデータ交換及び処理能力を有する(例えば、低級のスイッチ又はルータ等のネットワークデバイス)。使用される特定のアーキテクチャは、特定のネットワーキング展開シナリオに依存する。これは、本明細書において限定されない。
【0306】
特定の実施形態では、ネットワークデバイス2100は、図21及び図22に示されている装置に対応する。幾つかの実施形態では、図21及び図22に示されている装置における取得モジュール2201及び取得モジュール2301は、ネットワークデバイス2100における物理インターフェースカード2133又は物理インターフェースカード2143と同等である。図21及び図22に示されている装置における第1の符号化モジュール2202及び復号モジュール2302は、ネットワークデバイス2100における中央処理ユニット2111、ネットワークプロセッサ2132、及びネットワークプロセッサ2142の少なくとも1つと同等である。
【0307】
図23図24、及び図25に示されているネットワークデバイスに基づいて、本願の一実施形態は、通信システムを更に提供する。システムは、第1のネットワークデバイス及び第2のネットワークデバイスを備える。任意選択で、第1のネットワークデバイスは、図23に示されているネットワークデバイス1500、図24に示されているネットワークデバイス2000、又は図25に示されているネットワークデバイス2100であり、第2のネットワークデバイスは、図23に示されているネットワークデバイス1500、図24に示されているネットワークデバイス2000、又は図25に示されているネットワークデバイス2100である。
【0308】
第1のネットワークデバイス及び第2のネットワークデバイスによって実行される方法については、図1図2、及び図19に示されている実施形態の関連した説明を参照されたい。詳細は、本明細書において再び説明されない。
【0309】
プロセッサは、中央処理ユニット(central processing unit、CPU)であってもよいし、又は別の汎用プロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)又は別のプログラマブルロジックデバイス、ディスクリートゲート又はトランジスタロジックデバイス、ディスクリートハードウェアコンポーネント、又は同様のものであってもよいことが理解されるべきである。汎用プロセッサは、マイクロプロセッサ、任意の従来のプロセッサ、又は同様のものであってよい。プロセッサは、アドバンスト縮小命令セットコンピューティングマシン(advanced RISC machines、ARM)アーキテクチャをサポートするプロセッサであってよいことに留意されたい。
【0310】
さらに、任意選択の実施形態では、メモリは、リードオンリメモリ及びランダムアクセスメモリを含み、命令及びデータをプロセッサに提供してよい。メモリは、不揮発性ランダムアクセスメモリを更に含んでよい。例えば、メモリは、デバイスタイプの情報を更に記憶してよい。
【0311】
メモリは、揮発性メモリ又は不揮発性メモリであってもよいし、又は揮発性メモリ及び不揮発性メモリの両方を含んでもよい。不揮発性メモリは、リードオンリメモリ(read-only memory、ROM)、プログラマブルリードオンリメモリ(programmable ROM、PROM)、消去可能プログラマブルリードオンリメモリ(erasable PROM、EPROM)、電気的消去可能プログラマブルリードオンリメモリ(electrically EPROM、EEPROM)、又はフラッシュメモリであってよい。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(random access memory、RAM)であってよい。限定ではなく例示として、多くの形式のRAM、例えば、スタティックランダムアクセスメモリ(static RAM、SRAM)、ダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)、シンクロナスダイナミックランダムアクセスメモリ(synchronous DRAM、SDRAM)、ダブルデータレートシンクロナスダイナミックランダムアクセスメモリ(double data rate SDRAM、DDR SDRAM)、拡張シンクロナスダイナミックランダムアクセスメモリ(enhanced SDRAM、ESDRAM)、シンクリンクダイナミックランダムアクセスメモリ(synchlink DRAM、SLDRAM)、及びダイレクトラムバスランダムアクセスメモリ(direct rambus RAM、DR RAM)が利用可能である。
【0312】
コンピュータ可読記憶媒体が更に提供される。記憶媒体は、少なくとも1つのプログラム命令又はコードを記憶する。プログラム命令又はコードがプロセッサによってロード及び実行されると、コンピュータは、図2における符号化方法又は図19における復号方法を実装することを可能にされる。
【0313】
本願は、コンピュータプログラム(製品)を提供する。コンピュータプログラムがコンピュータによって実行されると、プロセッサ又はコンピュータは、前述の方法の実施形態における対応する段階及び/又は手順を実行することを可能にされる。
【0314】
チップが提供される。チップは、プロセッサを備える。チップは、メモリから、チップが取り付けられている通信デバイスが前述の態様における方法を実行することを可能にするための、メモリに記憶された命令を呼び出し、これらを実行するように構成されている。
【0315】
別のチップが提供される。チップは、入力インターフェース、出力インターフェース、プロセッサ、及びメモリを備える。入力インターフェース、出力インターフェース、プロセッサ、及びメモリは、内部接続パスを通じて接続されている。プロセッサは、メモリにおけるコードを実行するように構成されている。コードが実行されると、プロセッサは、前述の態様における方法を実行するように構成されている。
【0316】
デバイスが更に提供される。デバイスは、前述のチップを備える。任意選択で、デバイスは、ネットワークデバイスである。例えば、デバイスは、ルータ、スイッチ、又はサーバである。
【0317】
前述の実施形態の全て又は幾つかが、ソフトウェア、ハードウェア、ファームウェア、又はこれらの任意の組み合わせを使用することによって実装されてよい。ソフトウェアが実施形態を実装するのに使用される場合、実施形態の全て又は一部がコンピュータプログラム製品の形式において実装されてよい。コンピュータプログラム製品は、1つ又は複数のコンピュータ命令を備える。コンピュータプログラム命令がコンピュータ上でロード及び実行されると、本願に係る手順又は機能が全て又は部分的に生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又は別のプログラマブル装置であってよい。コンピュータ命令は、コンピュータ可読記憶媒体に記憶されてもよいし、又はコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に送信されてもよい。例えば、コンピュータ命令は、あるウェブサイト、コンピュータ、サーバ、又はデータセンタから、別のウェブサイト、コンピュータ、サーバ、又はデータセンタに、有線(例えば、同軸ケーブル、光ファイバ、又はデジタル加入者線)又は無線(例えば、赤外線、無線、又はマイクロ波)方式で送信されてよい。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の使用可能媒体、又は1つ又は複数の使用可能媒体を統合するサーバ又はデータセンタ等のデータ記憶デバイスであってよい。使用可能媒体は、磁気媒体(例えば、フロッピーディスク、ハードディスク、又は磁気テープ)、光媒体(例えば、DVD)、又は半導体媒体(例えば、ソリッドステートドライブ(solid-state drive、SSD))、又は同様のものであってよい。
【0318】
前述の特定の実装では、本願の目的、技術的解決手段、及び有益な効果が更に詳細に説明されている。前述の説明は、本願の特定の実装にすぎず、本願の保護範囲を限定するように意図されていないことが理解されるべきである。本願の技術的解決手段に基づいて加えられる任意の修正、均等な置換、改善、又は同様のものは、本願の保護範囲に入るものとする。
【0319】
当業者であれば、本明細書において開示される実施形態において説明される方法の段階及びモジュールを参照して、方法の段階及びモジュールを、ソフトウェア、ハードウェア、ファームウェア、又はこれらの任意の組み合わせを使用することによって実装することができることを認識し得る。ハードウェア及びソフトウェアの間の交換可能性を明確に説明するために、実施形態の段階及び構成は、前述の説明における機能に関して全体的に説明されている。機能がハードウェアによって実行されるのか、又はソフトウェアによって実行されるのかは、技術的解決手段の特定の応用及び設計上の制約に依存する。当業者であれば、異なる方法を使用して、特定の応用ごとに説明された機能を実装し得るが、実装が本願の範囲を越えるものとみなされるべきではない。
【0320】
当業者であれば、実施形態の段階の全て又は幾つかがハードウェア、又は関連ハードウェアに命令するプログラムによって実装され得ることを理解し得る。プログラムは、コンピュータ可読記憶媒体に記憶されてよい。記憶媒体は、リードオンリメモリ、磁気ディスク、又は光ディスクを含んでよい。
【0321】
ソフトウェアが実施形態を実装するのに使用される場合、実施形態の全て又は一部がコンピュータプログラム製品の形式において実装されてよい。コンピュータプログラム製品は、1つ又は複数のコンピュータプログラム命令を含む。一例では、本願の実施形態に係る方法は、機械実行可能命令の状況において説明され得る。例えば、機械実行可能命令は、ターゲットの実際の又は仮想プロセッサ上で実行するためのコンポーネントにあるプログラムモジュール内に含まれる。概して、プログラムモジュールは、ルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造、及び同様のものを含み、特定のタスクを実行するか、又は特定の抽象データ構造を実装する。様々な実施形態において、プログラムモジュールの機能は、説明されたプログラムモジュール間で組み合わされてもよいし又は分割されてもよい。プログラムモジュールのための機械実行可能命令は、ローカルで又は分散デバイス内で実行されてよい。分散デバイスでは、プログラムモジュールは、ローカル記憶媒体及びリモート記憶媒体の両方に位置してよい。
【0322】
本願の実施形態における方法を実装するためのコンピュータプログラムコードは、1つ又は複数のプログラム言語において記述されてよい。コンピュータプログラムコードは、汎用コンピュータ、専用コンピュータ、又は別のプログラマブルデータ処理装置のプロセッサのために提供されてよく、それにより、プログラムコードがコンピュータ又は別のプログラマブルデータ処理装置によって実行されると、フローチャート及び/又はブロック図において指定される機能/動作が実装される。プログラムコードは、完全にコンピュータ上で、スタンドアロンソフトウェアパッケージとして部分的にコンピュータ上で、部分的にコンピュータ上でかつ部分的にリモートコンピュータ上で、又は完全にリモートコンピュータ又はサーバ上で、実行されてよい。
【0323】
本願の実施形態の状況では、コンピュータプログラムコード又は関連したデータは、任意の適切な搬送波において搬送されてよく、それにより、デバイス、装置、又はプロセッサは、上記で説明された様々なタイプの処理及び動作を実行することができる。搬送波の例としては、信号、コンピュータ可読媒体、及び同様のものが挙げられる。
【0324】
信号の例としては、電気信号、光信号、無線信号、音声信号、又は他の形式の伝播信号、例えば搬送波及び赤外線信号が挙げられ得る。
【0325】
機械可読媒体は、命令実行システム、装置、又はデバイスのための、又はこれに関するプログラムを含むか又は記憶する任意の有形媒体であってよい。機械可読媒体は、機械可読信号媒体又は機械可読記憶媒体であってよい。機械可読媒体は、電子、磁気、光、電磁気、赤外線、又は半導体システム、装置、又はデバイス、又はこれらの適切な組み合わせを含んでよいが、これらに限定されない。機械可読記憶媒体の更に詳細な例としては、1つ又は複数のワイヤを伴う電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、光記憶デバイス、磁気記憶デバイス、又はこれらの任意の適切な組み合わせを含む。
【0326】
当業者によって、簡便かつ簡潔な説明の目的で、前述のシステム、デバイス、及びモジュールの詳細な機能プロセスについては、前述の方法の実施形態における対応するプロセスを参照することが明確に理解され得る。詳細は、本明細書において再び説明されない。
【0327】
本願において提供される複数の実施形態において、開示されるシステム、デバイス、及び方法は、他の方式で実装され得ることが理解されるべきである。例えば、説明されるデバイスの実施形態は、単に一例に過ぎない。例えば、複数のモジュールへの分割は、論理機能への分割にすぎず、実際の応用中に他の分割モードが存在してよい。例えば、複数のモジュール又はコンポーネントは、組み合わされてもよいし、又は別のシステムに統合されてもよいし、又は幾つかの特性が無視されてもよいし、又は実行されなくてもよい。加えて、表示された又は論述された相互結合又は直接結合又は通信接続は、幾つかのインターフェース、デバイス、又はモジュールを通じて実装される間接的結合又は通信接続であってもよいし、又は電気的、機械的、又は他の形式の接続であってもよい。
【0328】
別個のコンポーネントとして説明されるモジュールは、物理的に別個であってもよいし、又はそうではなくてもよく、モジュールとして表示されるコンポーネントは、物理的モジュールであってもよいし、又はそうではなくてもよく、具体的には、1つの位置に位置してもよいし、又は複数のネットワークモジュール上で分散してもよい。モジュールの幾つか又は全ては、本願の実施形態の解決手段の目的を実装するための実際の要件に基づいて選択されてよい。
【0329】
加えて、本願の実施形態における機能モジュールは、1つの処理モジュールに統合されてもよいし、又はモジュールの各々が、物理的に単独で存在してもよいし、又は2つ又はそれよりも多くのモジュールが1つのモジュールに統合されてもよい。統合モジュールは、ハードウェアの形式で実装されてもよく、又は、ソフトウェア機能モジュールの形式で実装されてもよい。
【0330】
統合モジュールがソフトウェア機能モジュールの形式において実装されるか又は独立した製品として販売又は使用される場合、統合モジュールは、コンピュータ可読記憶媒体に記憶されてよい。この理解に基づいて、本質的に本願の技術的解決手段、又は従来の技術に寄与する部分、又は技術的解決手段の全て又は幾つかは、ソフトウェア製品の形式において実装されてよい。コンピュータソフトウェア製品は、記憶媒体に記憶され、本願の実施形態において説明される方法の段階の全て又は幾つかを実行するようにコンピュータデバイス(パーソナルコンピュータ、サーバ、又はネットワークデバイスであってよい)に命令するための幾つかの命令を含む。前述の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリメモリ(read-only memory、ROM)、ランダムアクセスメモリ(random access memory、RAM)、磁気ディスク、又は光ディスク等のプログラムコードを記憶することができる任意の媒体を含む。
【0331】
本願において、「第1」及び「第2」等の用語は、基本的に同じ機能を有する同じ項目又は同様の項目間を区別するのに使用される。「第1」、「第2」、及び「第n」は、論理的又は時間的な順次の従属関係を有さず、数及び実行シーケンスを限定しないことが理解されるべきである。以下の説明が様々な要素を説明するために「第1」及び「第2」等の用語を使用しているが、これらの要素は、これらの用語によって限定されるべきではないことが更に理解されるべきである。これらの用語は、単にある要素を別の要素から区別するのに使用される。例えば、様々な例の範囲から逸脱することなく、第1のネットワークデバイスは、第2のネットワークデバイスと称され得、同様に、第2のネットワークデバイスは、第1のネットワークデバイスと称され得る。第1のネットワークデバイス及び第2のネットワークデバイスの両方が、任意のタイプのネットワークデバイスであってよく、幾つかのケースでは、別個のかつ異なるネットワークデバイスであってよい。
【0332】
本願の実施形態において、プロセスのシーケンス番号は、実行シーケンスを意味しないことが更に理解されるべきである。プロセスの実行シーケンスは、プロセスの機能及び内部論理に基づいて決定されるべきであり、本願の実施形態の実装プロセスに対するいかなる制限とも解釈されるべきではない。
【0333】
本願において、「少なくとも1つ」という用語は、1つ又は複数を意味し、本願における「複数の」という用語は、2つ又はそれよりも多くを意味する。例えば、複数の第2のパケットは、2つ又はそれよりも多くの第2のパケットを意味する。「システム」及び「ネットワーク」という用語は、多くの場合、本明細書において交換可能に使用される。
【0334】
本明細書における様々な例の説明において使用される用語は、特定の例を説明するように意図されているにすぎず、制限を課すようには意図されていないことが理解されるべきである。様々な例の説明及び添付の特許請求の範囲において使用される場合、文脈において別途明示的に示されない限り、単数形「1つ(「a」又は「an」)」及び「the」は、複数形も含むように意図されている。
【0335】
本明細書において使用される「備える/有する/含む(include)」(「includes」、「including」、「備える/有する/含む(comprises)」、及び/又は「comprising」とも称される)という用語は、述べられた特徴、整数、段階、動作、要素、及び/又はコンポーネントの存在を指定し、1つ又は複数の他の特徴、整数、段階、動作、要素、コンポーネント、及び/又はそれらのコンポーネントの存在又は追加が排除されないことが更に理解されるべきである。
【0336】
「場合(if)」という用語が「場合/とき」(「when」又は「upon」)、「~を決定することに応答して」、又は「~を検出することに応答して」の意味として解釈されてよいことが更に理解されるべきである。同様に、文脈に基づいて、「~と決定された場合」又は「(述べられた条件又は事象)が検出された場合」というフレーズは、「~と決定されたとき」又は「~を決定することに応答して」又は「(述べられた条件又は事象)が検出されたとき」又は「(述べられた条件又は事象)を検出することに応答して」の意味として解釈されてよい。
【0337】
Aに基づいてBを決定することは、Aのみに基づいてBが決定されることを意味せず、Bは、代替的には、A及び/又は他の情報に基づいて決定されてよいことが理解されるべきである。
【0338】
本明細書全体を通して言及された「1つの実施形態」、「一実施形態」、及び「可能な実装」は、実施形態又は実装に関連した特定の特徴、構造、又は特性が本願の少なくとも1つの実施形態内に含まれることを意味することが更に理解されるべきである。したがって、本明細書全体を通して登場する「1つの実施形態では」又は「一実施形態では」又は「可能な実装」は、必ずしも同じ実施形態を指すわけではなくてよい。加えて、これらの特定の特徴、構造、又は特性は、任意の適切な方式を使用することによって1つ又は複数の実施形態において組み合わされてよい。
(他の可能な項目)
(項目1)
符号ストリームブロックの2 個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2 個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2 個のグループにおける制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2 個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、
を備える、符号化方法。
(項目2)
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
前記データユニットは、符号ストリームブロックの前記2 個のグループのシーケンスに基づいて符号ストリームブロックの前記2 個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、項目1に記載の方法。
(項目3)
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;
前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2 個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す、項目1に記載の方法。
(項目4)
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す、項目3に記載の方法。
(項目5)
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、項目3又は4に記載の方法。
(項目6)
前記符号ブロックIDは、ハミング距離保護を有する、項目3~5のいずれか1項に記載の方法。
(項目7)
前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む、項目3~6のいずれか1項に記載の方法。
(項目8)
前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2 個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される、項目1~7のいずれか1項に記載の方法。
(項目9)
前記誤り検出結果は、符号ストリームブロックの前記2 個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2 個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2 個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される、項目8に記載の方法。
(項目10)
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、項目1~9のいずれか1項に記載の方法。
(項目11)
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、項目10に記載の方法。
(項目12)
符号ストリームブロックの前記2 個のグループの全てが媒体独立インターフェースMIIからのものである、項目1~11のいずれか1項に記載の方法。
(項目13)
前記ターゲット符号ブロックを取得した後、前記方法は:
前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得する段階;及び
前記第1のデータを送信する段階
を更に備える、項目1~12のいずれか1項に記載の方法。
(項目14)
方法は:
ターゲット符号ブロックを取得する段階、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの前記2 個のグループを取得する段階、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える、復号方法。
(項目15)
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
符号ストリームブロックの前記2 個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2 よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2 -1よりも小さいか又はこれに等しい整数である、項目14に記載の方法。
(項目16)
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;
符号ストリームブロックの前記2 個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2 個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、iは、1よりも大きいか又はこれに等しく、かつ2 よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2 -1よりも小さいか又はこれに等しい整数である、項目14に記載の方法。
(項目17)
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;
符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される、項目16に記載の方法。
(項目18)
符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される、項目16又は17に記載の方法。
(項目19)
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、項目16~18のいずれか1項に記載の方法。
(項目20)
前記符号ブロックIDは、ハミング距離保護を有する、項目16~19のいずれか1項に記載の方法。
(項目21)
前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;
符号ストリームブロックの前記2 個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2 個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す、項目14に記載の方法。
(項目22)
前記ターゲット符号ブロックを取得する前記段階は:
第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び
前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正処理である、
を有する、項目14~21のいずれか1項に記載の方法。
(項目23)
前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである、項目22に記載の方法。
(項目24)
ターゲット符号ブロックを取得する前記段階は:
第2のデータを受信する段階、ここで、前記第2のデータは、前方誤り訂正FEC符号化された第1のデータに基づいて取得される;及び
前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得する段階、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、
を有する、項目14~21のいずれか1項に記載の方法。
(項目25)
前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである、項目24に記載の方法。
(項目26)
符号ストリームブロックの前記2 個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される、項目14~21のいずれか1項に記載の方法。
(項目27)
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2 個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである、項目26に記載の方法。
(項目28)
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2 個のグループは、第1の符号ストリームブロックの2 個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2 個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される、項目26に記載の方法。
(項目29)
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、項目14~28のいずれか1項に記載の方法。
(項目30)
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、項目29に記載の方法。
(項目31)
符号ストリームブロックの前記2 個のグループの全てが媒体独立インターフェースMIIフォーマットである、項目14~30のいずれか1項に記載の方法。
(項目32)
符号ストリームブロックの2 個のグループを取得するように構成された取得モジュール、ここで、符号ストリームブロックの任意のグループは、制御ブロック及びデータブロックを含み、nは、1よりも大きい整数である;及び
符号ストリームブロックの前記2 個のグループに対して第1の符号化を実行して、ターゲット符号ブロックを取得するように構成された第1の符号化モジュール、ここで、前記ターゲット符号ブロックは、データユニット、及び符号ストリームブロックの前記2 個のグループにおける前記制御ブロックに基づいて決定されるタイプを含み、前記データユニットは、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定された符号化方式において、符号ストリームブロックの前記2 個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、
を備える、符号化装置。
(項目33)
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
前記データユニットは、符号ストリームブロックの前記2 個のグループのシーケンスに基づいて符号ストリームブロックの前記2 個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得される、項目32に記載の装置。
(項目34)
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し;前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、ここで、前記符号ブロックコンテンツは、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて決定されたシーケンスに基づいて符号ストリームブロックの前記2 個のグループにおける前記データブロックに対して前記第1の符号化を実行することによって取得され、前記符号ブロックIDは、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得され、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示す、項目32に記載の装置。
(項目35)
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示す、項目34に記載の装置。
(項目36)
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、項目34又は35に記載の装置。
(項目37)
前記符号ブロックIDは、ハミング距離保護を有する、項目34~36のいずれか1項に記載の装置。
(項目38)
前記ターゲット符号ブロックは、誤り符号ブロックであり、前記誤り符号ブロックは、誤りインジケーションデータを含む、項目34~37のいずれか1項に記載の装置。
(項目39)
前記ターゲット符号ブロックは、誤り検出結果に基づいて符号ストリームブロックの前記2 個のグループを処理することによって取得され、前記誤り検出結果は、符号ストリームブロックの前記2 個のグループにおける前記制御ブロック及び前記データブロックに基づいて取得される、項目32~38のいずれか1項に記載の装置。
(項目40)
前記誤り検出結果は、符号ストリームブロックの前記2 個のグループのコンテンツシーケンス誤り又はコンテンツ誤りを含み、前記ターゲット符号ブロックは、正しいコンテンツシーケンス及び正しいコンテンツを有する符号ストリームブロック、及び符号ストリームブロックの前記2 個のグループにおける誤りブロックに基づいて前記第1の符号化を実行することによって取得され、前記誤りブロックは、符号ストリームブロックの前記2 個のグループにおけるコンテンツシーケンス誤り又はコンテンツ誤りを有する符号ストリームブロックに基づいて取得される、項目39に記載の装置。
(項目41)
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、項目32~40のいずれか1項に記載の装置。
(項目42)
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、項目41に記載の装置。
(項目43)
符号ストリームブロックの前記2 個のグループの全てが媒体独立インターフェースMIIからのものである、項目32~42のいずれか1項に記載の装置。
(項目44)
前記装置は:
前方誤り訂正FEC符号タイプに基づいて前記ターゲット符号ブロックに対して第2の符号化を実行して、第1のデータを取得するように構成された第2の符号化モジュール;及び
前記第1のデータを送信するように構成された送信モジュール
を更に備える、項目32~43のいずれか1項に記載の装置。
(項目45)
ターゲット符号ブロックを取得するように構成された取得モジュール、ここで、前記ターゲット符号ブロックは、タイプ及びデータユニットを含む;及び
前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して第1の復号を実行して、符号ストリームブロックの2 個のグループを取得するように構成された復号モジュール、ここで、符号ストリームブロックの任意のグループは、データブロック、及び前記タイプ及び前記データユニットに基づいて取得される制御ブロックを含み、前記データブロックは、前記タイプ及び前記データユニットに基づいて決定された復号方式において、前記データユニットに対して前記第1の復号を実行することによって取得され、nは、1よりも大きい整数である、
を備える、復号装置。
(項目46)
前記タイプは、前記ターゲット符号ブロックがデータ符号ブロックであることを示し;
符号ストリームブロックの前記2 個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記データユニットにおける、符号ストリームブロックのグループiに対応し、かつ8tの長さを有するコンテンツに対して前記第1の復号を実行することによって取得され、ここで、tは、正の整数であり、iは、1よりも大きいか又はこれに等しく、かつ2 よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2 -1よりも小さいか又はこれに等しい整数である、項目45に記載の装置。
(項目47)
前記タイプは、前記ターゲット符号ブロックが制御符号ブロックであることを示し、前記データユニットは、符号ブロック識別子ID及び符号ブロックコンテンツを含み、前記符号ブロックIDは、符号ストリームブロックの各グループにおけるデータブロックのタイプ、及び前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの第1の符号化コンテンツのロケーションを示し;
符号ストリームブロックの前記2 個のグループにおける符号ストリームブロックのグループi内に含まれる制御ブロックは、前記タイプ及び前記符号ブロックIDに基づいて取得され、符号ストリームブロックの前記2 個のグループにおける符号ストリームブロックのグループi内に含まれるデータブロックは、前記タイプ及び前記符号ブロックIDに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得され、iは、1よりも大きいか又はこれに等しく、かつ2 よりも小さいか又はこれに等しい整数であり、又はiは、0よりも大きいか又はこれに等しく、かつ2 -1よりも小さいか又はこれに等しい整数である、項目45に記載の装置。
(項目48)
前記符号ブロックIDは、第1のID及び第2のIDを含み、前記第1のIDは、符号ストリームブロックの各グループにおける前記データブロックの前記タイプを示し、前記第2のIDは、前記符号ブロックコンテンツにおける、符号ストリームブロックの各グループの前記第1の符号化コンテンツの前記ロケーションを示し;符号ストリームブロックのグループi内に含まれる前記制御ブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応するビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応するビットに基づいて取得され;符号ストリームブロックのグループi内に含まれる前記データブロックは、前記タイプ、前記第1のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビット、及び前記第2のIDにあり、かつ符号ストリームブロックのグループiに対応する前記ビットに基づいて決定された復号方式において、前記符号ブロックコンテンツに対して前記第1の復号を実行することによって取得される、項目47に記載の装置。
(項目49)
符号ストリームブロックのグループi内に含まれる前記データブロックのタイプは、符号ストリームブロックのグループi内に含まれる前記制御ブロックのコンテンツ及び符号ストリームブロックのグループi内に含まれる前記データブロックのコンテンツに基づいて決定される、項目47又は48に記載の装置。
(項目50)
前記符号ブロックIDは、mビットを含み、mは、4よりも大きいか又はこれに等しい整数である、項目47~49のいずれか1項に記載の装置。
(項目51)
前記符号ブロックIDは、ハミング距離保護を有する、項目47~50のいずれか1項に記載の装置。
(項目52)
前記データユニットは、符号ブロック識別子IDを含み、前記タイプ及び前記符号ブロックIDは、前記ターゲット符号ブロックが誤り符号ブロックであることを示し;符号ストリームブロックの前記2 個のグループのうちの各グループ内に含まれる制御ブロックは、第1の値であり、符号ストリームブロックの前記2 個のグループのうちの各グループ内に含まれるデータブロックは、第2の値であり、前記第1の値及び前記第2の値は、前記符号ストリームブロックが誤り符号ストリームブロックであることを示す、項目45に記載の装置。
(項目53)
前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正処理である、を行うように構成されている、項目45~52のいずれか1項に記載の装置。
(項目54)
前記ターゲット符号ブロックは、誤り訂正が前記第2のデータに対して実行されたが前記誤り訂正が失敗した場合に取得される誤り符号ブロックである、項目53に記載の装置。
(項目55)
前記取得モジュールは:第2のデータを受信すること、ここで、前記第2のデータは、前方誤り訂正FEC符号タイプを使用することによって符号化された第1のデータに基づいて取得される;及び前記第2のデータに対して第2の復号を実行して、前記ターゲット符号ブロックを取得すること、ここで、前記第2の復号は、誤り訂正が回避される誤り検出処理である、を行うように構成されている、項目45~52のいずれか1項に記載の装置。
(項目56)
前記ターゲット符号ブロックは、前記第2のデータから誤りが検出されたが誤り訂正が回避された場合に取得される誤り符号ブロックである、項目55に記載の装置。
(項目57)
符号ストリームブロックの前記2 個のグループは、誤り検出結果、及び前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得され、前記誤り検出結果は、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて取得される、項目45~52のいずれか1項に記載の装置。
(項目58)
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2 個のグループは、前記第2の符号ブロックのタイプ及びデータユニットに基づいて第2の符号ブロックに対して前記第1の復号を実行することによって取得され、前記第2の符号ブロックは、前記ターゲット符号ブロックを変換することによって取得され、かつ前記ターゲット符号ブロックと同じ数のビットを有する符号ブロックである、項目57に記載の装置。
(項目59)
前記誤り検出結果は、前記ターゲット符号ブロックのコンテンツシーケンス誤り又はコンテンツ誤りを含み、符号ストリームブロックの前記2 個のグループは、第1の符号ストリームブロックの2 個のグループを変換することによって取得され、第1の符号ストリームブロックの前記2 個のグループは、前記ターゲット符号ブロックの前記タイプ及び前記データユニットに基づいて前記ターゲット符号ブロックに対して前記第1の復号を実行することによって取得される、項目57に記載の装置。
(項目60)
前記制御ブロックは、tビットを含み、前記データブロックは、8tビットを含み、tは、正の整数である、項目45~59のいずれか1項に記載の装置。
(項目61)
nの値は2であり、tの値は8であり、前記ターゲット符号ブロックは257ビットである、項目60に記載の装置。
(項目62)
符号ストリームブロックの前記2 個のグループの全てが媒体独立インターフェースMIIフォーマットである、項目45~61のいずれか1項に記載の装置。
(項目63)
ネットワークデバイスであって、前記ネットワークデバイスは、プロセッサを備え、前記プロセッサは、メモリに結合されており、前記メモリは、少なくとも1つのプログラム命令又はコードを記憶し、前記少なくとも1つのプログラム命令又はコードは、前記プロセッサによって、前記ネットワークデバイスが項目1~31のいずれか1項に記載の方法を実装することを可能にするようにロード及び実行される、ネットワークデバイス。
(項目64)
通信システムであって、前記システムは、第1のネットワークデバイス及び第2のネットワークデバイスを備え、前記第1のネットワークデバイスは、項目1~13のいずれか1項に記載の方法を実行するように構成されており、前記第2のネットワークデバイスは、項目14~31のいずれか1項に記載の方法を実行するように構成されている、通信システム。
(項目65)
コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体は、少なくとも1つのプログラム命令又はコードを記憶し;前記プログラム命令又は前記コードがプロセッサによってロード及び実行されると、コンピュータが、項目1~31のいずれか1項に記載の方法を実装することを可能にされる、コンピュータ可読記憶媒体。
(項目66)
コンピュータプログラム製品であって、前記コンピュータプログラム製品は、コンピュータプログラムコードを備え;前記コンピュータプログラムコードがコンピュータ上で実行されると、前記コンピュータが、項目1~31のいずれか1項に記載の方法を実行することを可能にされる、コンピュータプログラム製品。
(項目67)
チップであって、前記チップは、プロセッサを備え、前記プロセッサは:メモリから命令を呼び出すこと、及び前記チップが取り付けられている通信デバイスが項目1~31のいずれか1項に記載の方法を実行することを可能にするための、前記メモリに記憶された前記命令を実行することを行うように構成されている、チップ。
(項目68)
チップであって、前記チップは、入力インターフェース、出力インターフェース、プロセッサ、及びメモリを備え;前記入力インターフェース、前記出力インターフェース、前記プロセッサ、及び前記メモリは、内部接続パスを通じて接続されており;前記プロセッサは、前記メモリにおけるコードを実行するように構成されており;前記コードが実行されると、前記プロセッサは、項目1~31のいずれか1項に記載の方法を実行するように構成されている、チップ。
【国際調査報告】