JP2023021015A - エンコーディング方法およびエンコーダ - Google Patents
エンコーディング方法およびエンコーダ Download PDFInfo
- Publication number
- JP2023021015A JP2023021015A JP2022118587A JP2022118587A JP2023021015A JP 2023021015 A JP2023021015 A JP 2023021015A JP 2022118587 A JP2022118587 A JP 2022118587A JP 2022118587 A JP2022118587 A JP 2022118587A JP 2023021015 A JP2023021015 A JP 2023021015A
- Authority
- JP
- Japan
- Prior art keywords
- key
- encoded
- data
- encoder
- bits
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M5/00—Conversion of the form of the representation of individual digits
- H03M5/02—Conversion to or from representation by pulses
- H03M5/04—Conversion to or from representation by pulses the pulses having two levels
- H03M5/14—Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code
- H03M5/145—Conversion to or from block codes or representations thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/35—Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
- H03M13/356—Unequal error protection [UEP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
- H04L1/0058—Block-coded modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
- H04L1/0063—Single parity check
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/007—Unequal error protection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0086—Unequal error protection
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/19—Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Security & Cryptography (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【課題】キーの信頼性と完全性を高めることができるエンコーディング方法およびエンコーダを提示すること。【解決手段】本発明の一実施形態によるエンコーディング方法は、エンコーダで、データビット列を受信する段階と、前記エンコーダで、キーに基づいて前記データビット列に第1遷移エンコーディングを行ってエンコーディングされたデータビット列を生成する段階と、前記エンコーダで、前記キーに保護エンコーディングを行ってキー保護データを生成する段階と、前記エンコーダで、前記キー保護データに第2遷移エンコーディングを行ってエンコーディングされたキー保護データを生成する段階と、前記エンコーディングされたデータビット列および前記エンコーディングされたキー保護データを含むエンコーディングされた伝送ビット列を受信機に伝送する段階とを含む。【選択図】図3
Description
本発明は、エンコーディング方法およびエンコーダに関し、より詳しくは、キーが保護される遷移エンコーディング方法およびエンコーダに関する。
本出願は、米国特許庁に2021年7月29日付で出願した米国特許出願番号第63/227,278号を優先権主張し、米国特許出願番号第63/227,278号の出願の全体内容は本出願に参照として引用される。
本出願は、米国特許庁に2021年7月29日付で出願した米国特許出願番号第63/227,278号を優先権主張し、米国特許出願番号第63/227,278号の出願の全体内容は本出願に参照として引用される。
シリアルデータ通信を用いる電子機器は、送信機が受信機に提供するエラーのない情報(error-free information)に依存する。また、一部のシリアルデータ通信技術は、シリアルデータをエンコーディングし、再びデコーディングするキー(key)に依存する。エンコーディングおよびデコーディング過程がキーに依存するため、エンコーディングおよびデコーディング過程が不正確であったり、エラーのあるキーを受信機が受信すると、キーからのエラーがデータに伝播し、これによってシリアルデータが適切にデコーディングできない。したがって、キーの信頼性と完全性(integrity)が必要である。
本発明が解決しようとする課題は、キーの信頼性と完全性を高めることができるエンコーディング方法およびエンコーダを提示することである。
本発明の一実施形態によるエンコーディング方法は、エンコーダで、データビット列を受信する段階と、前記エンコーダで、キーに基づいて前記データビット列に第1遷移エンコーディングを行ってエンコーディングされたデータビット列を生成する段階と、前記エンコーダで、前記キーに保護エンコーディングを行ってキー保護データを生成する段階と、前記エンコーダで、前記キー保護データに第2遷移エンコーディングを行ってエンコーディングされたキー保護データを生成する段階と、前記エンコーディングされたデータビット列および前記エンコーディングされたキー保護データを含むエンコーディングされた伝送ビット列を受信機に伝送する段階とを含む。
前記キー保護データは、パリティビットを含んでよい。
前記エンコーディングされたキー保護データを生成する段階は、前記パリティビットの逆を求める段階を含んでよい。
前記エンコーダで、MSB(most significant bit)が定数の値になる前記キーを選択する段階と、前記キーから前記MSBを除去して修正キーを生成する段階とをさらに含み、前記エンコーディングされた伝送ビット列は、前記修正キーを含んでよい。
前記定数は、0であってもよい。
前記キー保護データは、複数のパリティビットを含んでよい。
前記複数のパリティビットは、ハミングコード(Hamming code)により計算されてよい。
前記エンコーディングされたキー保護データを生成する段階は、前記複数のパリティビットの少なくとも1つの逆を求める段階を含んでよい。
前記エンコーダで、MSBが定数の値になる前記キーを選択する段階と、前記キーから前記MSBを除去して修正キーを生成する段階とをさらに含み、前記エンコーディングされた伝送ビット列は、前記修正キーを含んでよい。
前記エンコーディングされたキー保護データを生成する段階は、前記パリティビットの逆の1つ以上のビットを前記修正キーの前端に挿入し、前記パリティビットの逆の1つ以上のビットを前記修正キーの後端に挿入する段階をさらに含んでよい。
本発明の一実施形態によるエンコーダは、データビット列を受信する入力と、プロセッサと、エンコーディングされた伝送ビット列を伝送する出力とを含み、前記プロセッサは、キーに基づいて前記データビット列に第1遷移エンコーディングを行ってエンコーディングされたデータビット列を生成し、前記キーに保護エンコーディングを行ってキー保護データを生成し、前記キー保護データに第2遷移エンコーディングを行ってエンコーディングされたキー保護データを生成し、前記エンコーディングされた伝送ビット列は、前記エンコーディングされたデータビット列および前記エンコーディングされたキー保護データを含む。
前記キー保護データは、パリティビットを含んでよい。
前記エンコーディングされたキー保護データを生成する動作は、前記パリティビットの逆を求める動作を含んでよい。
前記プロセッサはさらに、前記エンコーダで、MSB(most significant bit)が定数の値になる前記キーを選択し、前記キーから前記MSBを除去して修正キーを生成し、前記エンコーディングされた伝送ビット列は、前記修正キーを含んでよい。
前記定数は、0であってもよい。
前記キー保護データは、複数のパリティビットを含んでよい。
前記複数のパリティビットは、ハミングコード(Hamming code)により計算されてよい。
前記エンコーディングされたキー保護データを生成する動作は、前記複数のパリティビットの少なくとも1つの逆を求める動作を含んでよい。
前記プロセッサはさらに、MSBが定数の値になる前記キーを選択し、前記キーから前記MSBを除去して修正キーを生成し、前記エンコーディングされた伝送ビット列は、前記修正キーを含んでよい。
前記エンコーディングされたキー保護データを生成する動作は、前記パリティビットの逆の1つ以上のビットを前記修正キーの前端(front)に挿入し、前記パリティビットの逆の1つ以上のビットを前記修正キーの後端(end)に挿入する動作をさらに含んでよい。
本発明の範囲は、ここに引用することによってこの部分に含まれる請求範囲の範囲およびその等価物で定義される。本発明の各実施形態についての以下の詳細な説明を考慮することによって、当業者は実施形態をさらに理解し、さらなる利点を得ることができるであろう。はじめに、図面を説明し、後にこれらを引用する。
本発明の一実施形態によるエンコーディング方法およびエンコーダを用いることによって、キーの信頼性と完全性を高めることができる。
本発明の各実施形態と利点は後述される詳細な説明を引用することによって理解することができる。本発明の各実施形態の図面と明細書全体において、特に言及しない限り、同一の符号は同一の構成要素を示し、重複する説明は省略される場合がある。図面において、明瞭な理解のために、構成要素、層、領域の大きさは、誇張されることがある。
本発明の各実施形態に関する詳細な説明と図面を引用することによって、各実施形態の特徴とこれを実現する方法をさらに理解することができる。以下において、図面を参照して、本発明の各実施形態について詳細に説明する。しかし、説明する各実施形態は多様な他の形態でも実現可能であり、図示で示された各実施形態に限定されない。本発明をより明確にし、当業者に本発明の特徴を十分に示すために、各実施形態が例示される。したがって、当業者が本発明の特徴を明確に理解するために、省略可能な過程、元素、技術などについては説明を省略する。
デジタル通信において、エンコーダ(encoder)は、データビット(例:データパケット)をエンコーディングし、エンコーディングされたデータビットをデコーダ(decoder)に伝送する。デコーダは、エンコーディングされたデータビットをデコーディングする。その結果、システム、例えば、テレビ、表示装置、コンピュータなどがデータビットを使用可能となる。例えば、ある技術によれば、エンコーディングされたデータビットをシリアル化し、シリアルデジタルデータリンクを介してエンコーダからデコーダに伝送することができる。このようなシリアルデジタルデータは、別途のクロック信号とともに伝送されてよく、(別途のクロック信号なしに)シリアルデジタルデータ信号に内在されたクロック信号とともに伝送されてもよい。
遷移エンコーディング(transition encoding)は、別途のクロック信号なしにシリアルデジタルデータ信号を伝送する方法である。遷移エンコーディングは、データビットが0から1に、または1から0に遷移または変化するデータビット列内のデータ遷移の存在に依存する。言い換えると、デコーダが受信データを適切に使用するためには、データビット列内に特定の回数だけ遷移が発生しなければならない。しかし、データ列内のラン長(run-length)が特定の限度を超えると、デコーダがそのデータを正確にデコーディングすることができなくなる。その結果、システムは、元々受信される予定であったデータを確保することが困難になる。ラン長は、データビット列において1または0の連続回数を示す。例えば、図1に示したデータビット列の例である10100111001において、各遷移間のラン長を1、2または3で表した。例えば、1が連続して3回表されるシナリオは、3のラン長を有する。
一部の遷移エンコーディング技術は、データがシリアルデータリンクを介して伝送されることによって、データビットをエンコーディングする時、エンコーディング(された)データビット列の完全性を維持するために使用するキー[例:スクランブリング(scrambling)キー]を含む。この場合には、エンコーダはキーを生成し、そのキーに基づいてデータビットに遷移エンコーディングを適用し、エンコーディングされたデータビット列にキーを加えて伝送ビット列を生成し、受信機に伝送する。デコーダは、エンコーディングされた伝送ビットを受信すると、キーを用いて受信した伝送ビットをデコーディングする。伝送途中にキーが損傷すると、デコーダは、伝送データビットをデコーディングすることが困難になり、エラー伝播が発生しうる。つまり、キーにあるエラーが全体データにあるエラーへ移って全体データ列を使用できなくする。したがって、本発明の実施形態では、キーの伝送信頼性を向上する方法を提示する。また、エンコーディングされたシーケンスの遷移特性を変化させずに(例えば、エンコーディングのラン長の制限を超えずに)キーを保護することが好ましい。
遷移エンコーディング方法の一例では、31個の6ビットデータワード集合をエンコーディングし、キーも6ビットである。したがって、この例によれば、伝送ビット列は192ビットを含むが、このうち、186ビットはデータであり、6ビットはキーである。6ビットのキーはDで表すことが可能であり、Dは、31個のオリジナルデータワードと異なるだけでなく、31個のオリジナルデータワードの補数(complement)とも異なるワードである。このようにDの値を選択することができ、Dとそれぞれの31ワードに排他的論理和[exclusive OR(「XOR」)]演算を適用することができる。したがって、例えば、186データビットの各ワードをx1,x2,...,x31で表し、XOR演算を各ワードx1,x2,...,x31とキーDに適用した結果は、x1^D,x2^D,...,x31^Dで表してもよい。したがって、データワード列{x1,x2,...,x31}に遷移エンコーディングを行うと、エンコーディング(された)データワードは{D,x1^D,x2^D,...,x31^D}になる。ここで、1番目のデータワードはキーDであり、その後にはキーDとXOR演算された31個のデータワードが続く。そのため、伝送データストリーム列は32ワード長になり、192ビットがシリアル化され、シリアルデータリンクを介して伝送される。このような遷移エンコーディング方法の例によれば、ラン長は10に限定される。なお、このような遷移エンコーディング方法のラン長の決定に関する詳細な内容の説明は、本発明の各実施形態の説明では、省略される。
デコーダは、伝送データ列を受信すると、キーDを取り、エンコーディング(された)ワードそれぞれ(つまり、31個のワードそれぞれ)にXOR演算を適用する。したがって、1番目のエンコーディングされたワードx1^DにDをXOR演算することによって、Dを除去し、1番目のワードであるx1だけを残す。同一のXOR演算を31個のエンコーディングされたワードにすべて適用して31個のワードをデコーディングする。この時、キーDにエラーが流入すると、そのエラーが31個のワードすべてに伝播するが、これは、デコーダがエラーのある(つまり、不正確な)キーDを用いてXOR演算を行うからである。
本発明の様々な実施形態を用いて、キーDの完全性を保護する方法について説明する。言い換えると、(例えば、伝送する間に)キーDにエラーが発生すると、デコーダがキーDのエラーを検知できるようにし、また、この不良キーDをデータストリームのデコーディングに適用しないようにするエラー検知および/またはエラー訂正方法および技術が施行され、エンコーダによってキーDに適用される。その代わりに、デコーダは、例えば、エラーを含まない他のキーDが到着することを待つことができる。本発明の他の実施形態では、デコーダがエラーの存在を検知するだけでなく、エラーを訂正することができる。その結果、デコーダがキーDを捨てる必要もなく、次のキーを待つ必要もなく、不良キーを訂正し、訂正されたキーを直ちに使用することができる。本明細書で説明したキーの完全性保護技術は、当業者に知られた様々なエンコーディングおよび/またはデコーディング技術に適用可能である。このようなエンコーディングおよび/またはデコーディング技術は、互いに異なる論理演算、互いに異なるワードサイズ、互いに異なるワード数などを用いることを含むことができる。
一般に、エンコーディングされたデータには、エラーの存在を検知することを補助するパリティビット(parity bit)が含まれる。一例として、偶数パリティビットを生成し、これをエンコーディング(された)データに含ませることが挙げられる。例えば、n個のビットd1~dnがあれば、与えられたワード(例:6-ビットのキー)またはブロックにおいて、ビットd1~dnにXOR演算を行うことによって、偶数パリティビットpを生成または計算することができる。したがって、d1~dnの偶数パリティビットpは
で表してよく、偶数パリティビットpを含むエンコーディング(された)ブロックは{d1,d2,d3,...,dn,p}で表してもよい。したがって、データビットとパリティビットとの間の従属性(dependency)は
で表現してもよい。言い換えると、偶数パリティビットの場合には、従属性表現が0であれば、データビットd1~dnはエラーを含まないことが予想される。これとは異なり、従属性表現が1であれば、データビットd1~dnのうちの1つがエラーを含んでいる可能性がある。
で表してよく、偶数パリティビットpを含むエンコーディング(された)ブロックは{d1,d2,d3,...,dn,p}で表してもよい。したがって、データビットとパリティビットとの間の従属性(dependency)は
で表現してもよい。言い換えると、偶数パリティビットの場合には、従属性表現が0であれば、データビットd1~dnはエラーを含まないことが予想される。これとは異なり、従属性表現が1であれば、データビットd1~dnのうちの1つがエラーを含んでいる可能性がある。
複数のパリティビットを含ませることでより複雑なブロックコードを作ることができる。例えば、(7,4)ハミングコード(Hamming code)のようなハミングコードを用いることができる。(7,4)ハミングコードでは、3個のパリティビットを1つのエンコーディング(された)データビットブロックで実現する。この場合、パリティビットp1、p2、p3は次のように生成される。
パリティビットとデータビットとの間の従属性は次のように表してもよい。
パリティビットとデータビットとの間の従属性は次のように表してもよい。
パリティビットの他の例は、奇数パリティビットである。奇数パリティビットpbに対して、データビットと奇数パリティビットにXOR演算を適用すれば1になり、これは
で表現してもよい。したがって、奇数パリティビットpbは
として生成される。つまり、奇数パリティビットは、すべてのデータビットにXOR演算して適用した結果の逆(inverse)である。
で表現してもよい。したがって、奇数パリティビットpbは
として生成される。つまり、奇数パリティビットは、すべてのデータビットにXOR演算して適用した結果の逆(inverse)である。
遷移エンコーディングにおいて、奇数パリティビットは、いくつかの有用な特徴を含む。例えば、ブロックが奇数個のビットからなると、つまり、nが奇数であれば、そのデータブロックで遷移が保障される。つまり、d1=0、d2=0、d3=0、d4=0、d5=0であれば、
したがって、奇数パリティビットをコードの端に挿入すれば、ブロックコードは000001であり、これは遷移を含む。これと同様に、d1=1、d2=1、d3=1、d4=1、d5=1であれば、
したがって、ブロックコードは111110であり、これは遷移を含む。そのため、ビットd1~dn(nは奇数)がすべて0であるか、すべて1である最悪のシナリオの場合、ラン長はnに限定され、奇数パリティビットを含むことによって遷移が保障される。
したがって、奇数パリティビットをコードの端に挿入すれば、ブロックコードは000001であり、これは遷移を含む。これと同様に、d1=1、d2=1、d3=1、d4=1、d5=1であれば、
したがって、ブロックコードは111110であり、これは遷移を含む。そのため、ビットd1~dn(nは奇数)がすべて0であるか、すべて1である最悪のシナリオの場合、ラン長はnに限定され、奇数パリティビットを含むことによって遷移が保障される。
31個の6ビットデータワード集合と1つの6ビットのキーを用いる遷移エンコーディング方式に戻り、奇数パリティビットを用いるという概念をキーDに適用してエラーを検知することができ、また、一部の実施形態では、エラーを検知および訂正することができる。この例によれば、キーDは6ビットを含み、キーD値のMSB(most significant bit)(つまり、6番目のビット)は常に0である。したがって、本発明の一実施形態によれば、キーDの6番目のビットを除去し、0を奇数パリティビットに代替してもよい。例えば、デコーダは、キーD値のMSBが常に0であることを知っている。したがって、デコーダがエンコーディングされたキーDを受信すると、MSBの実際値(つまり、0)が奇数パリティビットに代替されたとしても、デコーダは、デコーディング過程でMSBからパリティビットを除去し、これを0に代替する。
このように、キーDのMSBからパリティビットを除去し、これを奇数パリティビットに代替することによって、エンコーディングされたキーDは、現時点では、キーデータに対応する5ビットと奇数パリティビット用1ビット(つまり、6番目のビット)を含む。例えば、キーDはD=d1、d2、d3、d4、d5、pbのように表してよく、ここで、pbは奇数パリティビットに対応し、
である。そのため、奇数パリティビットと5データビットとの間の関係は、
である。したがって、キーDのデータビットのいずれか1つにエラーがあれば、奇数パリティの従属性はそれ以上維持されなくなり、データビットd1、d2、d3、d4、d5のうちの1つにエラーがあることが明らかになる。
である。そのため、奇数パリティビットと5データビットとの間の関係は、
である。したがって、キーDのデータビットのいずれか1つにエラーがあれば、奇数パリティの従属性はそれ以上維持されなくなり、データビットd1、d2、d3、d4、d5のうちの1つにエラーがあることが明らかになる。
また、ラン長は5に限定されるが、これは先に説明したように、すべてのデータビットd1~d5が1である最悪のシナリオの場合に、奇数パリティビットが0になるか、それとも、すべてのデータビットd1~d5が0であれば、奇数パリティビットが1になるからである。これによってラン長が5を超えないが、これは、本実施形態の遷移エンコーディング方法において先に指摘したように10のラン長の限度内にある。しかし、この実施形態では、1つの奇数パリティビットの実行によってエラーが存在することを検知することができるのに対し、エラーの特定の位置は決定することができない。先に説明した実施形態は、実施形態の一例に過ぎず、その例に限定されない。したがって、同一または類似の技術をワードが異なるビット数、異なるラン長制限などを有する他の方式に適用することができる。例えば、他の実施形態によれば、ワードは8ビットであり、ラン長制限は9であってもよい。
本発明の他の実施形態によれば、複数のパリティビットがキーDとともに含まれてキーの完全性をさらに向上することができる。例えば、キーDが6ビットを含み、MSBが常に0である先の例と比較して、6番目のビットが脱落し、4個の奇数パリティビットが含まれる場合には、新しいキーDは9ビットになる。ここで、5ビットはデータビットであり、4ビットはパリティビットである。一部の実施形態では、4個の奇数データビットを生成してブロックに挿入される。例えば、4個の奇数データビットは、次のように生成される。
このように4個のパリティビットを生成して含むことによって、データビットのうちの1つにエラーがあれば、パリティビットの従属性がそれ以上維持されず、これによってエラーがあることが明らかになる。また、従属性方程式がそれ以上維持されるか否かに従属する4個のパリティビットがあるため、システムは、5個のデータビットのうち、エラーがあるビットを判断し、不良ビットを訂正することができる。例えば、d1にエラーがあると、pb1およびpb2を含む従属性方程式が無効になる。d2にエラーがあると、pb1およびpb3を含む従属性方程式が無効になる。d3にエラーがあると、pb1、pb2、pb3およびpb4を含む従属性方程式が無効になる。d4にエラーがあると、pb2およびpb4を含む従属性方程式が無効になる。D5にエラーがあると、pb3およびpb4を含む従属性方程式が無効になる。このように、ビットが二進ビットであり、不良ビットが0であれば1になり、1であれば再び0になるため、システムは、不良ビットを正確に探して訂正することができる。ある実施形態では、データビットに2つのエラーがある場合、システムはエラーを検知できるが、不良ビットを正確に決定し訂正することはできない。単にエラーを検知するだけである。
本発明の一実施形態によれば、9ビットのキーを配列し、最初の2ビットおよび最後の2ビットはパリティビットであり、中間の5ビットがデータビットとなるようにする。したがって、奇数パリティビットを含むキーはpb1、pb2、d1、d2、d3、d4、d5、pb3、pb4で表現されてよい。このような方式でデータビットとパリティビットを配列することによって、ラン長を5に限定することができ、キーD内の遷移を保障することができる。図2は、キーDのデータビットのすべての組み合わせを示す表である。5個のデータビットがあるので、32個の組み合わせが可能である。図2の陰影のあるボックスのうち、すべてのデータビットが0の時と、すべてのデータビットが1の時、ラン長制限は5である。したがって、ラン長制限は、本明細書で説明した遷移エンコーディング技術の例のラン長制限10を満たし、これによってエラーの可能性とシリアルデータリンクにおけるエラー伝播を低減することができる。
図3は、本発明の一実施形態によりデータビット列をエンコーディングする段階を示すフローチャートである。本発明の一実施形態によれば、エンコーダは、エンコーディングされて受信機に伝送されるデータビット列を受信する(302)。ある実施形態では、データがデータパケットであってもよく、他の実施形態では、データが埋め込まれたクロック信号があるシリアルデータであってもよい。エンコーダが受信したデータビット列は、データビットに対する第1遷移エンコーディングを行うことによってエンコーディングされるが、第1遷移エンコーディングは、キーに基づいてエンコーディング(された)データビット列を生成する(304)。一実施形態によれば、キーの値をデータビットとともにXOR演算を行うのに用いて、エンコーディングされたデータビット列を生成する。そのため、データビットをデコーディングする時、デコーダは、キーに依存してデコーディング動作を行う。したがって、キーは重要であり、例えば、伝送途中にキーにエラーが導入されないようにキーの完全性を保護しなければならない。また、キーがエラーをもたらすと、エラーの存在を検知することが好ましく、時によっては、そのエラーを訂正することが好ましい。このように、エンコーダは、キーに保護エンコーディングを行ってキー保護データを生成することができる(306)。
本発明の一実施形態によれば、キー保護データは、パリティビットである。例えば、キーの各ビットにXOR演算を行い、その結果の逆(inverse)をとることによって奇数パリティビットを生成することができる。したがって、キーがビットd1,d2,...dnを含むならば、奇数パリティビット(pb)は
で表してもよい。
で表してもよい。
奇数パリティビットを生成した後、エンコーダは、キー保護データ(例:奇数パリティビット)に第2遷移エンコーディングを行ってエンコーディング(された)キー保護データを生成することができる(308)。本発明の一実施形態によれば、エンコーディングされたキー保護データは、キー保護データが追加されたキービットで表してもよい。言い換えると、キー保護データが奇数パリティデータpbであれば、キーは奇数個のビットd1,d2,...dn(nは奇数)を含み、エンコーディングされたキー保護データはd1,d2,...dn,pbで表現してもよい。ハミングコードによりパリティビットを計算する本発明の他の実施形態によれば、エンコーディングされたキー保護データは、例えば、d1,d2,...dn,p1,p2,p3で表現してもよい。エンコーディング(された)キー保護データを生成した後、エンコーディング(された)データビット列とエンコーディング(された)キー保護データをエンコーディング(された)伝送ビット列で結合して受信機に伝送する(310)。送信機と受信機とはシリアルデータリンクで連結可能であり、エンコーディングされた伝送ビット列は、シリアルデータリンクを介して送信機から受信機に伝送される。本発明の一実施形態によれば、受信機は、エンコーディングされた伝送ビット列を受信し、キーを用いてデコーディングするデコーダを含むことができる。エラー伝播を低減するために、内在されたキー保護データ(例:奇数パリティビット)を用いてキーの値を奇数パリティビットに符合させることによってキーの完全性を確保することができる。
図4は、本発明の一実施形態によりキー保護データをエンコーディングする段階を示すフローチャートである。本発明の一実施形態によれば、キー保護データがキー内にエンコーディングされるようにキーを選択することができる。例えば、キー値のMSBが定数(例:常に1または常に0)となるようにエンコーダがキーを選択することができる(402)。したがって、MSBが常に同じ値のキーを選択することによって、受信機がキーの値のMSBが常に同じ値であることを知ることができるため、MSBを受信機に伝送する必要がなくなる。例えば、選択されたキーが6ビットであり、6ビットのMSB(つまり、6番目のビット)が常に0であれば、6番目のビットを除去することができる。MSBをキー保護データ(例:奇数パリティビット)に代替してよく、これによって、ビットの占める帯域幅(bandwidth)をより良く使用することができる。続いて、変更されたキーを生成して伝送ビットに含ませる(404)。
本発明の一実施形態によれば、キー保護データは、複数のパリティビットを含むことができる。その結果、複数のエラーを検知できるだけでなく、エラーを訂正することもできるため、キーの完全性が向上する。例えば、本実施形態では、キー保護データがハミングコードを含むことができる。これによって、ラン長の制限に合わせながら、シリアルデータ伝送を適正化することによって、受信機における破局的なエラー伝播を低減することができる。
図5は、電子システム500のブロック図である。一例として、システム500は、テレビまたは表示装置であってよく、例えば、高速デジタルシリアルリンク506を介して互いに交信する送信機502および受信機504を含むことができる。本実施形態では、送信機502は、エンコーダ508を含むことができ、エンコーダ508は、システム500内で生成されるか、他のソース(例:外部ソース)から受信可能なデータ(例:デジタルデータ)を取得し、そのデータをエンコーディングした後、エンコーディングされたデータを受信機504に伝送する。受信機504は、例えば、受信したデータに応じて発光する表示装置の画素を制御する表示駆動部(driver)と交信することができる。受信機504は、デコーダ510を含むことができ、デコーダ510は、エンコーディング(された)データをリンク506を介して送信機502から受信し、エンコーディングされたデータをデコーディングしてそのデータをシステム500が使用できるようにする。本実施形態では、エンコーダ508が本発明の様々な実施形態を用いて説明された技術等の遷移エンコーディングを行う遷移エンコーダ(transition encoder)であってよい。他の実施形態では、エンコーダ508は、当業者に知られた他のデジタルエンコーディング方式を行うことができる。図示された電子システム500は、伝送されたデータの正確度に依存する高速シリアルデータ伝送を用いる電子システムの一例に過ぎず、他のシステムであってもよいことは、当業者が認識可能であるという点に留意しなければならない。
特別な説明がない限り、図面と明細書全体を通して同一の符号は同一の構成要素を示し、重複する説明は省略される場合がある。また、発明の詳細な説明をより明確にするため、各実施形態に関して、省略可能な説明は省略される場合がある。
図面において、部分、層、領域の大きさは明瞭な理解のために誇張されることがある。また、図面において、クロスハッチングおよび/または陰影を用いて隣接した要素間の境界を明確にすることができる。このように、クロスハッチングや陰影の存在の有無は、特別な説明がない限り、特定の物質、物性、次元、部分、図示した部分の間の共通性および/または要素のある他の特性、属性、性質などを、選好するものではなく、また、要求するものでもない。
発明の詳細な説明において、説明を目的として、様々な特定の実施形態を示して、多様な実施形態を理解するようにした。しかし、多様な実施形態は、ここで示された具体的な形態なしに、または、1つ以上の同等な形態を用いて実現可能である。また、発明の詳細な説明において、公知の構造および装置をブロック図の形態で示して、多様な実施形態が不必要にあいまいになることを回避する。
部分、層、領域、成分などが他の部分、層、領域、成分の「上に」配置される(形成される)、または、「連結されて」いる、と記載する場合、「直に」上にあるか、または「直接」連結されている場合のみならず、他の部分、層、領域、成分と離れて、上に配置される(形成される)場合、及び、間接的に連結された他の部分、層、領域、成分などが間に挟まれている場合も含む。また、これは、直接または間接連結および統合または非統合結合を集合的に含む。例えば、層、領域または成分が他の部分、層、領域、成分と「電気的に連結」されたもの、または「電気的に結合」されたもの、と説明されると、他の部分、層、領域、成分と直接電気的に連結または結合されてよく、間にさらに他の部分、層、領域、成分などが挟まれていてもよい。「真上に」存在するもの、または、「直接連結」されているもの、と記載されると、間に他の部分がないことを意味する。一方、成分間の関係を示す他の表現、例えば、「間」、「間に直に」、「隣接」、「直に隣接」なども同様に解釈できる。また、ある部分または層が異なる2部分または層の「間」にあると表現した時、2層の間に当該層のみが配置されてよく、1つ以上の他の層がさらに配置されてもよい。
本明細書において、「少なくとも1つの(at least one of)」などの表現が構成要素等に記載される場合には、構成要素等の全体を示すものであり、構成要素等を個別に示すものではない。例えば、「X、YおよびZの少なくとも1つ」、「X、YまたはZの少なくとも1つ」、そして「X、YおよびZからなるグループから選択された少なくとも1つ」は、X単独、Y単独、Z単独、X、Y、Zのうちの2以上の任意の組み合わせ(例えば、XYZ、XYY、YZ、ZZなど)、またはその変形と解釈することができる。これと同様に、「AとBの少なくとも1つ」などの表現は、A、B、またはAとBを含むことができる。ここで、「および/または」という用語は、並ぶ関連項目のうちの1つ以上のいずれ(any)またはすべて(all)の組み合わせを含む。例えば、「Aおよび/またはB」などの表現は、A、B、またはAとBを含むことができる。
本明細書では、「第1」、「第2」、「第3」などの用語を様々な元素、成分、領域、層、部分などに使用される場合があるが、様々な元素、成分、領域、層、部分は「第1」、「第2」、「第3」などの用語よって限定されない。このような用語は、ある元素、成分、領域、層、部分を他の元素、成分、領域、層、部分と区別するために使用するものである。したがって、第1元素、成分、領域、層、部分は、本発明の趣旨と範囲を逸脱することなく、第2元素、成分、領域、層、部分ということもできる。ある元素を「第1」元素と記載しても、第2元素または他の元素が存在する必要もなく、存在することを意味するのでもない。「第1」、「第2」、「第3」などの用語は、互いに異なる範疇または元素集合を区別するために使用してもよい。簡潔な表現のために、「第1」、「第2」などは、それぞれ「第1範疇(または第1集合)」、「第2範疇(または第2集合)」などを示すこともできる。
本明細書で使用された用語は、特定の実施形態を説明する目的で使用されるものであり、本発明を制限しようとするものではない。ここで、数値において、特別な言及がない限り、数値は単数または複数の場合をすべて含む。ある特徴、段階、動作、部分、成分などを「含む」という表現は、当該部分以外に他の特徴、段階、動作、部分、成分なども包含できることを意味する。「および/または」という表現は、並べられたもののうちの1つまたはそれ以上のすべての組み合わせを含む。
本発明の実施形態の説明において、「実質的に」、「約」、「概ね」およびこれに類似する表現が使用される場合には、実質的に」、「約」、「概ね」およびこれに類似する表現は近似を示す表現に過ぎず、「程度」を示すのではなく、当業者が知ることが可能な測定値または計算値の固有の誤差を含むものとする。また、本発明の実施形態の説明において、「約」および「概ね」という表現が使用される場合には、言及した数値とその数値の許容可能な誤差範囲内の平均を含み、当該測定値と特定量の測定に関連する誤差(例:測定システムの限界)を考慮して当業者が決定可能である。例えば、「約」は、1つ以上の標準偏差または当該値の±30%、20%、10%、5%前後を意味することができる。本発明の実施形態の説明において、「できる」という表現が使用される場合には、「本発明の1つ以上の実施形態」に適用可能であることを意味し、「使用」、「利用」などは、これと類似の他の表現とともに類似する意味で使用できる。
本発明の実施形態の説明において、特定の1つ以上の実施形態を異なって実現する場合、特定のプロセス順序が説明した順序と異なっていてもよい。例えば、連続して実行すると説明した2つのプロセスを同時にまたは説明した順序と反対に実行してもよい。
本発明の実施形態の説明において、実施形態の模式的な構造および/または中間構造を示す断面図を参照して、様々な実施形態について説明される場合がある。図示された形状は、例えば、製造技術および/または許容誤差によって多様に変更または変化可能である。また、ここに記載された特定の構造または機能に関する説明は、本発明の概念による実施形態について説明するための一例に過ぎない。したがって、ここに記載した実施形態は、例示した領域の特定の形状に限定されるものではなく、例えば、製造方法による形状の変化も含むと解釈しなければならない。例えば、注入領域を長方形で例示する説明がある場合には、注入領域は丸であってよく、曲がっていてもよく、注入濃度は注入領域と非注入領域との境界で二進的に急激に変化するのではなく、濃度傾斜をなして徐々に変化してよい。同様に、注入で埋没領域を形成する説明がある場合には、注入が起こる表面と埋没領域との間の領域にも粒子またはイオンが注入される。そのため、図面に示した領域の形状は概略的なものであって、装置において領域の実際の形状を示すものではなく、その形状に限定するものでもない。
本発明の実施形態により説明した電子、電気装置および/または他の関連装置または部分は、データまたはデジタル信号を処理するための適切なハードウェア、ファームウェア(例:応用注文型集積回路)、ソフトウェア、またはこれらの組み合わせを用いて実現することができる。例えば、これら装置の多様な構成要素を1つの集積回路チップに形成してよく、互いに異なる集積回路チップに実現してもよい。また、これら装置の多様な構成要素は、可撓性印刷回路フィルム、テープキャリアパッケージ(TCP:tape carrier package)、印刷回路基板などに実現されてよく、1つの基板上に形成されてもよい。回路ハードウェアは、非一時的(non-transitory)記憶媒体、デジタル信号処理器(DSP)、グラフィック処理装置(GPU)およびFPGAなどのプログラム可能論理装置に記憶された命令を実行する特定用途向け集積回路(ASIC)、汎用または専用中央処理装置(CPU)などを含むことができる。
また、これら装置の多様な構成要素は、ここで説明した多様な機能を行うためにコンピュータプログラム命令を実行し、他のシステム要素と相互作用する1つ以上のコンピュータ装置内にある1つ以上のプロセッサで実行可能なプロセスまたはスレッド(thread)であってもよい。コンピュータプログラム命令は、RAM(random access memory)などの標準メモリ装置を用いるコンピュータ装置に実現されたメモリに記憶される。当業者は本発明の実施形態の概念と範囲を逸脱することなく多様なコンピュータ装置の機能を1つのコンピュータ装置に結合または統合するか、特定のコンピュータ装置の機能を1つ以上の他のコンピュータ装置に分散することもできる。
特別な言及がない限り、ここで使用する(技術的、科学的用語を含む)すべての用語はこの発明の属する技術分野における当業者が一般に知っている用語と同じ意味を含む用語である。一般に使用される辞書に定義された用語などの用語は、関連技術分野および/または本明細書における意味と一致する意味を有すると解釈し、特別な明示がない限り、理想的または過度に厳格な意味で解釈してはならない。
以上ように説明された実施形態は一例であり、これに限定されない。本明細書では、いくつかの実施形態について説明したが、当業者であれば、各実施形態で提示した新たな内容と効果で逸脱せず実施形態を変化させることができる。したがって、このようなすべての変形または変化は、特許請求の範囲で定義される実施形態の範囲に含まれる。特許請求の範囲の機能的な表現はここで言及した機能を行う構造とその構造的等価物および等価構造物を含むための表現である。そのため、以上の説明は実施形態に関するものであり、特定の実施形態にのみ限定されるものではなく、各実施形態の変形および他の実施形態も特許請求の範囲の権利範囲に属する。本発明は以下の特許請求の範囲及びその等価物によって定義される。
500:電子システム
502:送信機
504:受信機
508:エンコーダ
510:デコーダ
502:送信機
504:受信機
508:エンコーダ
510:デコーダ
Claims (20)
- エンコーダで、データビット列を受信する段階と、
前記エンコーダで、キーに基づいて前記データビット列に第1遷移エンコーディングを行ってエンコーディングされたデータビット列を生成する段階と、
前記エンコーダで、前記キーに保護エンコーディングを行ってキー保護データを生成する段階と、
前記エンコーダで、前記キー保護データに第2遷移エンコーディングを行ってエンコーディングされたキー保護データを生成する段階と、
前記エンコーディングされたデータビット列および前記エンコーディングされたキー保護データを含むエンコーディングされた伝送ビット列を受信機に伝送する段階と
を含むエンコーディング方法。 - 前記キー保護データは、パリティビットを含む、請求項1に記載のエンコーディング方法。
- 前記エンコーディングされたキー保護データを生成する段階は、前記パリティビットの逆を求める段階を含む、請求項2に記載のエンコーディング方法。
- 前記エンコーダで、MSB(most significant bit)が定数の値になる前記キーを選択する段階と、
前記キーから前記MSBを除去して修正キーを生成する段階と
をさらに含み、
前記エンコーディングされた伝送ビット列は、前記修正キーを含む、
請求項3に記載のエンコーディング方法。 - 前記定数は、0である、請求項4に記載のエンコーディング方法。
- 前記キー保護データは、複数のパリティビットを含む、請求項1に記載のエンコーディング方法。
- 前記複数のパリティビットは、ハミングコード(Hamming code)により計算される、請求項6に記載のエンコーディング方法。
- 前記エンコーディングされたキー保護データを生成する段階は、前記複数のパリティビットの少なくとも1つの逆を求める段階を含む、請求項6に記載のエンコーディング方法。
- 前記エンコーダで、MSBが定数の値になる前記キーを選択する段階と、
前記キーから前記MSBを除去して修正キーを生成する段階と
をさらに含み、
前記エンコーディングされた伝送ビット列は、前記修正キーを含む、
請求項8に記載のエンコーディング方法。 - 前記エンコーディングされたキー保護データを生成する段階は、前記パリティビットの逆の1つ以上のビットを前記修正キーの前端に挿入し、前記パリティビットの逆の1つ以上のビットを前記修正キーの後端に挿入する段階をさらに含む、請求項9に記載のエンコーディング方法。
- データビット列を受信する入力と、
プロセッサと、
エンコーディングされた伝送ビット列を伝送する出力と
を含み、
前記プロセッサは、
キーに基づいて前記データビット列に第1遷移エンコーディングを行ってエンコーディングされたデータビット列を生成し、
前記キーに保護エンコーディングを行ってキー保護データを生成し、
前記キー保護データに第2遷移エンコーディングを行ってエンコーディングされたキー保護データを生成し、
前記エンコーディングされた伝送ビット列は、前記エンコーディングされたデータビット列および前記エンコーディングされたキー保護データを含む
エンコーダ。 - 前記キー保護データは、パリティビットを含む、請求項11に記載のエンコーダ。
- 前記エンコーディングされたキー保護データを生成する動作は、前記パリティビットの逆を求める動作を含む、請求項12に記載のエンコーダ。
- 前記プロセッサはさらに、
前記エンコーダで、MSB(most significant bit)が定数の値になる前記キーを選択し、
前記キーから前記MSBを除去して修正キーを生成し、
前記エンコーディングされた伝送ビット列は、前記修正キーを含む、
請求項13に記載のエンコーダ。 - 前記定数は、0である、請求項14に記載のエンコーダ。
- 前記キー保護データは、複数のパリティビットを含む、請求項11に記載のエンコーダ。
- 前記複数のパリティビットは、ハミングコード(Hamming code)により計算される、請求項16に記載のエンコーダ。
- 前記エンコーディングされたキー保護データを生成する動作は、前記複数のパリティビットの少なくとも1つの逆を求める動作を含む、請求項16に記載のエンコーダ。
- 前記プロセッサはさらに、
MSBが定数の値になる前記キーを選択し、
前記キーから前記MSBを除去して修正キーを生成し、
前記エンコーディングされた伝送ビット列は、前記修正キーを含む、
請求項18に記載のエンコーダ。 - 前記エンコーディングされたキー保護データを生成する動作は、前記パリティビットの逆の1つ以上のビットを前記修正キーの前端(front)に挿入し、前記パリティビットの逆の1つ以上のビットを前記修正キーの後端(end)に挿入する動作をさらに含む、請求項19に記載のエンコーダ。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163227278P | 2021-07-29 | 2021-07-29 | |
US63/227,278 | 2021-07-29 | ||
US17/516,604 US11695429B2 (en) | 2021-07-29 | 2021-11-01 | Systems and methods for transition encoding with protected key |
US17/516,604 | 2021-11-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023021015A true JP2023021015A (ja) | 2023-02-09 |
Family
ID=82742593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022118587A Pending JP2023021015A (ja) | 2021-07-29 | 2022-07-26 | エンコーディング方法およびエンコーダ |
Country Status (6)
Country | Link |
---|---|
US (2) | US11695429B2 (ja) |
EP (1) | EP4125222A1 (ja) |
JP (1) | JP2023021015A (ja) |
KR (1) | KR20230019389A (ja) |
CN (1) | CN115694870A (ja) |
TW (1) | TW202315341A (ja) |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3582878A (en) * | 1969-01-08 | 1971-06-01 | Ibm | Multiple random error correcting system |
US5349589A (en) | 1991-07-01 | 1994-09-20 | Ericsson Ge Mobile Communications Inc. | Generalized viterbi algorithm with tail-biting |
US5878061A (en) | 1996-03-14 | 1999-03-02 | Intel Corporation | Providing serial data clock signal transitions with parity bits |
US7149955B1 (en) | 2001-03-07 | 2006-12-12 | Marvell International Ltd. | Encoding and decoding apparatus and method with hamming weight enhancement |
US7392464B1 (en) | 2004-04-30 | 2008-06-24 | Marvell International Ltd. | Universal parity encoder |
JP5011116B2 (ja) | 2004-10-26 | 2012-08-29 | エージェンシー フォー サイエンス,テクノロジー アンド リサーチ | 変調の制約及び誤り制御を用いて情報の符号化及び復号化を実行する方法及びシステム |
TW200718147A (en) * | 2005-10-31 | 2007-05-01 | Telepaq Technology Inc | Data protection method and the corresponding decryption module |
US9459955B2 (en) * | 2012-05-24 | 2016-10-04 | Sandisk Technologies Llc | System and method to scramble data based on a scramble key |
KR101235696B1 (ko) | 2012-09-28 | 2013-02-21 | 주식회사 아나패스 | 데이터 전송 방법 및 데이터 복원 방법 |
US9729681B2 (en) | 2012-09-28 | 2017-08-08 | Anapass Inc. | Data transmission method and data restoration method |
US9319179B1 (en) | 2013-04-09 | 2016-04-19 | Marvell International Ltd. | Methods and apparatus for generating expanded code words to support error correction in a data communication system |
US9658921B2 (en) | 2013-10-31 | 2017-05-23 | Samsung Display Co., Ltd. | Maximal transition hamming codes |
US9864654B2 (en) * | 2015-09-21 | 2018-01-09 | Sandisk Technologies Llc | Detecting data indicated as being uncorrectable at a data storage device |
US10372948B2 (en) * | 2015-12-15 | 2019-08-06 | Taiwan Semiconductor Manufacturing Company Ltd. | Scrambling apparatus and method thereof |
CN108075879B (zh) * | 2016-11-10 | 2021-03-09 | 中国移动通信集团安徽有限公司 | 一种数据加密和解密的方法、装置及系统 |
FR3058813A1 (fr) * | 2016-11-16 | 2018-05-18 | Stmicroelectronics (Rousset) Sas | Stockage dans une memoire non volatile |
US11074198B2 (en) * | 2018-09-18 | 2021-07-27 | Micron Technology, Inc. | Key management in computer processors |
US11165444B2 (en) * | 2019-11-14 | 2021-11-02 | Micron Technology, Inc. | Apparatus with a data security mechanism and methods for operating the same |
CN112202553B (zh) * | 2020-09-27 | 2023-04-25 | 北京奇艺世纪科技有限公司 | 数据传输方法、系统、电子设备和存储介质 |
-
2021
- 2021-11-01 US US17/516,604 patent/US11695429B2/en active Active
-
2022
- 2022-07-21 KR KR1020220090393A patent/KR20230019389A/ko unknown
- 2022-07-25 CN CN202210876581.XA patent/CN115694870A/zh active Pending
- 2022-07-26 JP JP2022118587A patent/JP2023021015A/ja active Pending
- 2022-07-26 EP EP22186857.3A patent/EP4125222A1/en active Pending
- 2022-07-28 TW TW111128436A patent/TW202315341A/zh unknown
-
2023
- 2023-06-05 US US18/329,429 patent/US12015423B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
EP4125222A1 (en) | 2023-02-01 |
US20230036390A1 (en) | 2023-02-02 |
US20230318623A1 (en) | 2023-10-05 |
US12015423B2 (en) | 2024-06-18 |
US11695429B2 (en) | 2023-07-04 |
CN115694870A (zh) | 2023-02-03 |
KR20230019389A (ko) | 2023-02-08 |
TW202315341A (zh) | 2023-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4036338B2 (ja) | 誤りバイト数を制限したバイト内複数スポッティバイト誤り訂正・検出方法及び装置 | |
KR100210583B1 (ko) | 에러정정 부호화 복호화 방법 및 이 방법을 사용하는 회로 | |
US10187085B2 (en) | Decoding method, decoding apparatus and decoder | |
US8239740B2 (en) | Circuit and technique for reducing parity bit-widths for check bit and syndrome generation for data blocks through the use of additional check bits to increase the number of minimum weighted codes in the hamming code H-matrix | |
CN111628780B (zh) | 数据编码、解码方法及数据处理系统 | |
CN101814922A (zh) | 基于bch码的多位错纠错方法和装置以及存储系统 | |
US4476458A (en) | Dual threshold decoder for convolutional self-orthogonal codes | |
US5446745A (en) | Apparatus for correcting errors in optical disks | |
US5878061A (en) | Providing serial data clock signal transitions with parity bits | |
EP1150435A1 (en) | Apparatus for performing Euclid's algorithm depending on the coefficients of the syndrome polynomial | |
JP2023021015A (ja) | エンコーディング方法およびエンコーダ | |
US20100174970A1 (en) | Efficient implementation of a key-equation solver for bch codes | |
US9941903B1 (en) | Distributed burst error protection | |
Faraj | ’Design Error Detection and Correction System based on Reed_Muller Matrix for Memory Protection’ | |
CN115567164A (zh) | 向量信令码信道的流水线式前向纠错方法和装置 | |
JP3743915B2 (ja) | スポッティバイト誤り訂正・検出方法及び装置 | |
JP2005057741A (ja) | インラインワイヤ誤り訂正 | |
Kim | FPGA implementation of overhead reduction algorithm for interspersed redundancy bits using EEDC | |
Rohtagi | Efficient Codes for Correction and/or Detection of Moderate-Density Repeated Burst Errors. | |
JP4074252B2 (ja) | 復号および誤り訂正方法 | |
US8412762B2 (en) | Error-correcting method used in data transmission and decoding | |
JP2006060465A (ja) | スポッティバイト誤り訂正・検出方法及び装置 | |
Xie et al. | Parallel error-trapping decoding cyclic burst error correcting codes | |
JPS60192423A (ja) | 巡回多数決符号復号器 | |
JP2002261625A (ja) | 誤り訂正復号方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220825 |