JP2016092833A - Decoding technique, decoder and receiver - Google Patents
Decoding technique, decoder and receiver Download PDFInfo
- Publication number
- JP2016092833A JP2016092833A JP2015213419A JP2015213419A JP2016092833A JP 2016092833 A JP2016092833 A JP 2016092833A JP 2015213419 A JP2015213419 A JP 2015213419A JP 2015213419 A JP2015213419 A JP 2015213419A JP 2016092833 A JP2016092833 A JP 2016092833A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- matrix
- decoding
- decoding matrix
- generated
- 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
Landscapes
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
本発明は、通信技術分野に関し、特に、復号手法、復号器及び受信機に関する。 The present invention relates to the field of communication technology, and in particular, to a decoding method, a decoder, and a receiver.
マルチホップ(Multihop)ネットワークでは、ソースノードからターゲットノードまでの路径上の中間ノードがデータをフォーワード(転送)することができ、これによって、ソースノードと、ターゲットノードとの間の通信を実現することができる。 In a multihop network, an intermediate node on the path from the source node to the target node can forward (transfer) data, thereby realizing communication between the source node and the target node. be able to.
図1はマルチホップネットワークにおける従来の通信方式を示す図である。図1に示すように、ノードA、Bが中間ノードSを経由してデータパケット(packet)を伝送する時に、少なくとも4つの伝送ステップ、即ち、ノードAがデータパケットaを中間ノードSに送信し、中間ノードSがデータパケットaをノードBに送信し、ノードBがデータパケットbを中間ノードSに送信し、そして、中間ノードSがデータパケットbをノードAに送信するというステップを要する。 FIG. 1 is a diagram illustrating a conventional communication method in a multi-hop network. As shown in FIG. 1, when nodes A and B transmit a data packet via the intermediate node S, at least four transmission steps, that is, the node A transmits the data packet a to the intermediate node S. The intermediate node S transmits the data packet a to the node B, the node B transmits the data packet b to the intermediate node S, and the intermediate node S transmits the data packet b to the node A.
図2はマルチホップネットワークにおいてネットワーク符号化による通信方式を示す図である。図2に示すように、中間ノードSで受信したデータパケットa、bに対してネットワーク符号化を行っても良く、例えば、データパケットa、bに対して排他的ORなどの代数組み合わせ演算を行い、その後、1回のブロードキャスト送信の方式でネットワーク符号化の結果
(外1)
をノードA及びBに送信し、これによって、ノードA、Bは、受信した符号化結果に対して復号を行うことで、データパケットb、aをそれぞれ得ることができる。これによって分かるように、ネットワーク符号化による通信方式では、A、B間のデータの伝送は、3つのみの伝送ステップ、即ち、ノードAがデータパケットaを中間ノードSに送信し、ノードBがデータパケットbを中間ノードSに送信し、そして、中間ノードSがネットワーク符号化の結果を1回のブロードキャストの形式でノードA及びBに送信するというステップを要する。よって、データ伝送のステップ及びそれに対応するタイムスロット(time slot)を節約することができる。
FIG. 2 is a diagram illustrating a communication method using network coding in a multi-hop network. As shown in FIG. 2, network encoding may be performed on the data packets a and b received by the intermediate node S. For example, an algebraic combination operation such as exclusive OR is performed on the data packets a and b. After that, the result of network coding by one broadcast transmission method (External 1)
Are transmitted to the nodes A and B, whereby the nodes A and B can obtain the data packets b and a by decoding the received encoding results, respectively. As can be seen, in the communication system using network coding, the transmission of data between A and B involves only three transmission steps: node A sends data packet a to intermediate node S, and node B A step is required in which the data packet b is transmitted to the intermediate node S, and the intermediate node S transmits the result of the network coding to the nodes A and B in the form of one broadcast. Therefore, a data transmission step and a corresponding time slot can be saved.
図2に示すようなネットワークよりも複雑なマルチホップネットワークでは、各ノードがソースノード、中間ノード、又はターゲットノードであっても良いので、各ソースノードは、生成マトリックスを採用して、受信したデータパケット又は該ノード自身が生成したデータパケットに対してネットワーク符号化を行い、そして、該ネットワーク符号化後に生成された符号化データパケットを複数のターゲットノードに送信することができ、また、各ターゲットノードは、受信した符号化データパケットに対して復号を行うことで、ソースノードからのオリジナルデータパケットを得ることができる。 In a multi-hop network that is more complex than the network shown in FIG. 2, each node may be a source node, an intermediate node, or a target node, so each source node employs a generation matrix to receive received data. The network or the data packet generated by the node itself may be subjected to network encoding, and the encoded data packet generated after the network encoding may be transmitted to a plurality of target nodes. Can decode the received encoded data packet to obtain the original data packet from the source node.
ネットワーク符号化による通信方式では、データの伝送過程が簡略化されているが、符号化データパケットの復号プロセスは、通信時間遅延に影響を与える重要な要因となっている。 In the communication system using network coding, the data transmission process is simplified, but the decoding process of the coded data packet is an important factor affecting the communication time delay.
従来技術では、複数種類の復号手法が提案されており、例えば、文献1では、ターゲットノードは、同じ生成マトリックスにより符号化された全ての符号化データパケットを受信した後に、復号を行う。文献1及び文献2では、ED(Earliest Decoding、ED)という方法が開示されており、即ち、ターゲットノードが、受信した線形独立な符号化データパケットが所定数量に達した後に、復号を行うことが開示されているが、該復号プロセスは、複雑なマトリックス逆演算を要する。また、文献2では、MED(Modified Earliest Decoding、MED)という方法も開示されており、該方法は、マトリックス逆演算の複雑度を低減することができる。 In the prior art, a plurality of types of decoding methods have been proposed. For example, in Reference 1, the target node performs decoding after receiving all encoded data packets encoded by the same generation matrix. Reference 1 and Reference 2 disclose a method called ED (Earliest Decoding, ED), that is, the target node can perform decoding after the received linearly independent encoded data packets reach a predetermined number. Although disclosed, the decoding process requires complex matrix inverse operations. Further, Document 2 discloses a method called MED (Modified Earliest Decoding (MED)), which can reduce the complexity of matrix inverse operation.
文献1:P. A. Chou、 Y. Wu、and K. Jain、“Practical Network Coding”、the 51st Allerton Conference on Communication、Control and Computing、2003;
文献2:S. von Solms and A. S. J. Helberg、“Modified Earliest Decoding in networks that implement Random Linear Network Coding”、Africa Research Journal、vol. 103、no. 4、pp. 165~171、Dec 2012。
Reference 1: PA Chou, Y. Wu, and K. Jain, “Practical Network Coding”, the 51 st Allerton Conference on Communication, Control and Computing, 2003;
Reference 2: S. von Solms and ASJ Helberg, “Modified Earliest Decoding in networks that implement Random Linear Network Coding”, Africa Research Journal, vol. 103, no. 4, pp. 165-171, Dec 2012.
上述の文献1の復号手法では、全ての符号化データパケットの受信時間が、生成マトリックスの規模に正比例するため、比較的長い通信時間遅延を引き起こすことがあり、また、上述のED及びMED方法では、一定数量の符号化データパケットを受信した後のみで、マトリックス逆演算及び復号演算を行うことを要するため、通信時間遅延を増加させることがある。 In the decoding method of the above-mentioned document 1, since the reception time of all encoded data packets is directly proportional to the scale of the generation matrix, it may cause a relatively long communication time delay. In the above ED and MED methods, Since it is necessary to perform matrix inverse operation and decoding operation only after receiving a certain amount of encoded data packets, communication time delay may be increased.
本発明の実施例は、復号に必要な時間を短縮し、通信時間遅延を減少させることができる復号手法、復号器及び受信機を提供することを課題とする。 It is an object of an embodiment of the present invention to provide a decoding method, a decoder, and a receiver that can reduce a time required for decoding and reduce a communication time delay.
本発明の実施例の第一側面によれば、復号器が提供され、そのうち、前記復号器は、
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化するための初期化ユニット;
符号化ベクトル及び対応する生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素のすべてを1とするための処理ユニット;及び
更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得るための復号ユニットを含む。
According to a first aspect of an embodiment of the present invention, a decoder is provided, wherein the decoder comprises:
An initialization unit for initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Receiving the encoded vector and the corresponding generated vector information, and updating the first decoded matrix and the second decoded matrix based on the encoded vector and the generated vector information, so that the pair of the first decoded matrix A processing unit for setting all of the corner elements to 1; and a decoding unit for obtaining original data based on the updated first decoding matrix and the second decoding matrix.
本発明の実施例の第二側面によれば、受信機が提供され、それは、上述の実施例の第一側面による上述の復号器を含む。 According to a second aspect of an embodiment of the present invention, a receiver is provided, which includes the above-described decoder according to the first aspect of the above-described embodiment.
本発明の実施例の第三側面によれば、復号手法が提供され、そのうち、前記復号手法は、
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化し;
符号化ベクトル及び対応する生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素のすべてを1とし;及び
更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得ることを含む。
According to a third aspect of an embodiment of the present invention, a decoding technique is provided, of which the decoding technique is
Initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Receiving the encoded vector and the corresponding generated vector information, and updating the first decoded matrix and the second decoded matrix based on the encoded vector and the generated vector information, so that the pair of the first decoded matrix Including all of the corner elements as 1; and obtaining original data based on the updated first and second decoding matrices.
本発明の有益な効果は、符号化ベクトルを毎回受信した時に現在の第一復号マトリックス及び第二復号マトリックスに対して処理を行うことができ、一定数量の符号化ベクトルを受信した後で復号を行う必要がないため、復号に必要な時間を節約することができる。 The beneficial effect of the present invention is that processing can be performed on the current first decoding matrix and the second decoding matrix each time an encoded vector is received, and decoding is performed after a certain number of encoded vectors are received. Since there is no need to do this, the time required for decoding can be saved.
以下、添付した図面を参照しながら、本発明を実施するための形態を詳細に説明する。 Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the accompanying drawings.
本発明のシナリオでは、無線ネットワークにおける各ノードが、送信データパケットのソースノード及び受信データパケットのターゲットノードとされ得る。 In the scenario of the present invention, each node in the wireless network may be a source node for transmitted data packets and a target node for received data packets.
前記ノードがソースノードとされる場合は、該ソースノードが受信した、及び/又は、それ自身が生成したK個のデータパケットに対して符号化を行い、また、このK個のデータパケットのうちの、長さが最長であるデータパケットがN桁を有し、他のオリジナルデータパケットが0で補充されてN桁になることで、K個のオリジナルデータパケットを形成するとする。これにより、生成マトリックスGを用いてこのK個のオリジナルデータパケットに対して線形組み合わせを行うことで、送信待ちの一つ又は複数の符号化データパケットを生成する。 When the node is a source node, encoding is performed on K data packets received by the source node and / or generated by itself, and among the K data packets, The longest data packet has N digits, and other original data packets are supplemented with 0 to become N digits, thereby forming K original data packets. Accordingly, one or a plurality of encoded data packets waiting for transmission are generated by performing a linear combination on the K original data packets using the generation matrix G.
前記ソースノードでは、このK個のオリジナルデータパケットがx1,x2,..,xkと表され、そのうち、xj(1≦j≦K)が0及び1からなる1×Nのベクトルであるとする。これにより、このK個のオリジナルデータパケットは、K×NのオリジナルデータマトリックスXを下式(1)に示すように形成する。
また、生成マトリックスGを用いて、オリジナルデータマトリックスXに対して行う符号化処理は、下式(2)と表することができる。
そのうち、該生成マトリックスGはN×Kのマトリックスであり、gij∈{0,1}であり、且つ、giを以て該生成マトリックスGの第i行要素からなる1×Kのベクトルを表し、即ち、生成ベクトルgi={gi1,gi2,…,gi(k-1),gk}であり、符号化マトリックスYは、符号化データパケットyiからなるマトリックスであり、各符号化データパケットyi(1≦i≦N)は、1×Nのベクトルであり、即ち、符号化ベクトルyiであり、且つ、
(外2)
であり、xjは、オリジナルデータマトリックスX中の第j行のベクトルを表し、そのうち、符号化ベクトルyiは、生成ベクトルgiに対応する。
Among them, the generator matrix G is an N × K matrix, g ij ∈ {0,1}, and represents a 1 × K vector composed of the i-th element of the generator matrix G with g i , That is, the generation vector g i = {g i1 , g i2 ,..., G i (k−1) , g k }, and the encoding matrix Y is a matrix composed of encoded data packets y i , and each code The encoded data packet y i (1 ≦ i ≦ N) is a 1 × N vector, ie, an encoded vector y i , and
(Outside 2)
And x j represents the vector of the j-th row in the original data matrix X, of which the encoded vector y i corresponds to the generated vector g i .
上式(2)では、乗法演算及び加法演算はすべてGF2上の演算であり、そのうち、GF2は2次有限体を表す。 In the above equation (2), the multiplication operation and the addition operation are all operations on GF 2 , and GF 2 represents a quadratic finite field.
前記ソースノードでは、他のノードと互いに独立してランダムに該生成マトリックスGを形成することができ、これにより、異なるノードの符号化処理は互いに独立したものになり、例えば、該ソースノードは、乱数生成器を用いて、生成マトリックスGを形成することができる。 In the source node, the generation matrix G can be randomly formed independently of other nodes, whereby the encoding process of different nodes becomes independent of each other, for example, the source node A generator matrix G can be formed using a random number generator.
ソースノードが符号化ベクトルyiを送信する時に、それに対応する生成ベクトルgiを一緒に送信しても良く、例えば、生成ベクトルgiを符号化ベクトルyiのデータヘッダー(header)として送信しても良い。或いは、予めソースノード及びターゲットノードに生成マトリックスを記憶し、そして、該ソースノードが符号化ベクトルyiを送信する時に、生成ベクトルgiの索引(Index)を一緒に送信しても良く、これにより、ターゲットノードは、該索引及び予め記憶された生成マトリックスに基づいて、該生成ベクトルgiを確定することができる。よって、送信するデータ量を減らすことができる。 When the source node transmits the encoded vector y i , the corresponding generated vector g i may be transmitted together, for example, the generated vector g i is transmitted as a data header of the encoded vector y i. May be. Alternatively, the generation matrix may be stored in advance in the source node and the target node, and when the source node transmits the encoded vector y i , the index (Index) of the generation vector g i may be transmitted together. Thus, the target node can determine the generation vector g i based on the index and the pre-stored generation matrix. Therefore, the amount of data to be transmitted can be reduced.
以下、各実施例をもとに、ターゲットノードが復号を行う具体的な方式を詳しく説明する。 Hereinafter, a specific method in which the target node performs decoding will be described in detail based on each embodiment.
本発明の実施例1は復号手法を提供する。図3は実施例1の復号手法のフローチャートであり、図3に示すように、該復号手法は次のステップを含む。 Embodiment 1 of the present invention provides a decoding technique. FIG. 3 is a flowchart of the decoding method according to the first embodiment. As shown in FIG. 3, the decoding method includes the following steps.
S301:第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化し;
S302:符号化ベクトル及び生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素のすべてを1とし;
S303:更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得る。
S301: initializing a first decoding matrix and a second decoding matrix to an all-zero matrix;
S302: receiving an encoded vector and generated vector information, and updating the first decoded matrix and the second decoded matrix based on the encoded vector and the generated vector information, thereby Set all corner elements to 1;
S303: Original data is obtained based on the updated first decoding matrix and second decoding matrix.
ステップS301では、第一復号マトリックスG0がK×Kのマトリックスに初期化されても良く、その要素はすべて0であり;第二復号マトリックスY0がK×Nのマトリックスに初期化されても良く、その要素はすべて0である。 In step S301, the first decoding matrix G 0 may be initialized to a K × K matrix whose elements are all 0; even if the second decoding matrix Y 0 is initialized to a K × N matrix. Well, all its elements are zero.
ステップS302では、ソースノードが送信した符号化ベクトルyi及び生成ベクトル情報Igを受信し、そして、符号化ベクトルyi及び生成ベクトル情報Igに基づいて、第一復号マトリックスG0及び第二復号マトリックスY0に対して更新処理を行い、第一復号マトリックスG0が、対角要素のすべてが1である第一復号マトリックスG′に更新され、第二復号マトリックスY0が第二復号マトリックスY′に更新されるようになると、受信を停止する。 In step S302, receives the encoded vectors y i and generates vector information I g source node transmits, and, based on the coding vectors y i and generates vector information I g, the first decoding matrix G 0 and the second An update process is performed on the decoding matrix Y 0 , the first decoding matrix G 0 is updated to the first decoding matrix G ′ whose diagonal elements are all 1, and the second decoding matrix Y 0 is the second decoding matrix. When it is updated to Y ′, reception is stopped.
ステップS302では、生成ベクトル情報Igに基づいて、第一復号マトリックスG0を更新することができ、また、符号化ベクトルyiに基づいて、第二復号マトリックスY0を更新することができ、ここで、第一復号マトリックスG0及び第二復号マトリックスY0の更新方式は同じである。 In step S302, the first decoding matrix G 0 can be updated based on the generated vector information I g , and the second decoding matrix Y 0 can be updated based on the encoded vector y i , Here, the update method of the first decoding matrix G 0 and the second decoding matrix Y 0 is the same.
本発明の実施例では、第一復号マトリックスG′は、下式(3)に示すような上三角マトリックス又は下式(4)に示すような下三角マトリックスであっても良く、また、下式(3)及び(4)では、g′i,j=1であり、ここで、1≦i≦k、1≦j≦kである。
ステップS303では、更新後に得た第一復号マトリックスG′及び第二復号マトリックスY′に基づいて、オリジナルデータマトリックスXを得る。例えば、第一復号マトリックスG′が式(3)に示すような上三角マトリックスである場合、下式(5)に示すように、オリジナルデータマトリックスX中の第j行のベクトルxjを計算することができ、そのうち、gj′は、第一復号マトリックスG′の第j行のベクトルを表し、yj′は、第二復号マトリックスY′の第j行のベクトルを表し、ここで、1≦j≦Kである。
また、第一復号マトリックスG′が式(4)に示すような下三角マトリックスである場合、式(5)と類似する計算方式でオリジナルデータマトリックスXを得ることができる。 When the first decoding matrix G ′ is a lower triangular matrix as shown in the equation (4), the original data matrix X can be obtained by a calculation method similar to the equation (5).
本発明の実施例における復号手法では、符号化ベクトル及び対応する生成ベクトル情報を受信した後に、直ぐに第一復号マトリックス及び第二復号マトリックスに対して更新処理を行うことができ、また、第一復号マトリックスを、対角要素が1である第一復号マトリックスG′に更新したら、直ぐに受信を停止することができ、そして、簡単な代数演算でオリジナルデータマトリックスXを取得することで、復号を完成させることができる。よって、復号に必要な時間を短縮し、復号の演算量を低減することができる。 In the decoding method according to the embodiment of the present invention, the first decoding matrix and the second decoding matrix can be updated immediately after receiving the encoded vector and the corresponding generated vector information. As soon as the matrix is updated to the first decoding matrix G ′ whose diagonal element is 1, the reception can be stopped immediately, and the decoding is completed by obtaining the original data matrix X by a simple algebraic operation. be able to. Therefore, the time required for decoding can be shortened, and the amount of calculation for decoding can be reduced.
以下、ステップS302について詳細に説明する。なお、以下の説明は例示だけであり、本発明の実施例はこれに限定されず、言い換えると、他の方式でステップS302を実施することもできる。 Hereinafter, step S302 will be described in detail. Note that the following description is merely an example, and the embodiment of the present invention is not limited to this. In other words, step S302 can be performed by other methods.
図4はステップS302の一つのフローチャートであり、図4に示すように、ステップS302は次のステップを含む。 FIG. 4 is a flowchart of step S302. As shown in FIG. 4, step S302 includes the following steps.
S401:符号化ベクトル及び生成ベクトル情報を受信し;
S402:前記生成ベクトル情報に基づいて、前記符号化ベクトルに対応する生成ベクトルを確定し;
S403:前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行い;
S404:変換後の第一復号マトリックスの対角要素のすべてが1であるかどうかを判断し、「はい」の場合、処理を終了し、「いいえ」の場合、ステップ401に戻り、次の一つの符号化ベクトル及び生成ベクトル情報を継続して受信する。
S401: Receive encoded vector and generated vector information;
S402: determining a generation vector corresponding to the encoded vector based on the generation vector information;
S403: transforming the current first decoding matrix and the current second decoding matrix based on the encoding vector and the generation vector;
S404: It is determined whether or not all the diagonal elements of the converted first decoding matrix are 1. If “Yes”, the process is terminated, and if “No”, the process returns to Step 401 to return to the next one. One encoded vector and generated vector information are continuously received.
本発明の実施例では、上述のように、上述の生成ベクトル情報は、生成ベクトルそのものであっても良く、生成ベクトルの索引であっても良い。ステップS401で受信した生成ベクトル情報Igが生成ベクトルgiである時に、ステップS402では、直接的に、受信した該生成ベクトル情報に基づいて、符号化ベクトルyiに対応する生成ベクトルgiを確定しても良く;ステップS401で受信した生成ベクトル情報Igが生成ベクトルに対応する索引である時に、上述のように、ステップS402では、受信した該索引及び予め記憶された生成マトリックスに基づいて、符号化ベクトルyiに対応する生成ベクトルgiを確定しても良い。もちろん、本発明の実施例はこれに限定されず、言い換えると、他の方式で該生成ベクトルgiを確定しても良い。 In the embodiment of the present invention, as described above, the generation vector information described above may be the generation vector itself or an index of the generation vector. When the generated vector information I g received in step S401 is the generated vector g i , in step S402, the generated vector g i corresponding to the encoded vector y i is directly determined based on the received generated vector information. it is determined well; when generated vector information I g received in step S401 is an index corresponding to the generated vector, as described above, in step S402, based on the index and pre-stored product matrix received The generated vector g i corresponding to the encoded vector y i may be determined. Of course, embodiments of the present invention is not limited thereto, in other words, it may be determined The product vector g i in other ways.
ステップS403では、符号化ベクトルyi及び対応する生成ベクトルgiに基づいて、現在の第一復号マトリックスG0及び第二復号マトリックスY0に対して変換処理を行う。本発明の実施例では、生成ベクトルgiのうちの一番目又は最後の一つの1の、該生成ベクトルにおける列番号に基づいて、現在の第一復号マトリックスG0及び第二復号マトリックスY0のうちのどの行に対して取り替えを行うかを確定し、そして、該生成ベクトルgi及び該符号化ベクトルyiを用いて第一復号マトリックスG0及び第二復号マトリックスY0のうちの対応する行のベクトルを取り替える。言い換えると、該生成ベクトルgi及び該符号化ベクトルyiをそれぞれ用いて、第一復号マトリックスG0及び第二復号マトリックスY0に対して同じ変換処理を行うことができる。 In step S403, based on the coding vectors y i and the corresponding products vector g i, performs conversion processing for the current first decoding matrix G 0 and the second decoding matrix Y 0. In an embodiment of the present invention, based on the column number in the first or last one of the generation vectors g i in the generation vector, the current first decoding matrix G 0 and the second decoding matrix Y 0 Determine which row of them to replace, and use the generated vector g i and the encoded vector y i to correspond to the corresponding one of the first decoding matrix G 0 and the second decoding matrix Y 0 Replace the row vector. In other words, the same conversion process can be performed on the first decoding matrix G 0 and the second decoding matrix Y 0 using the generated vector g i and the encoded vector y i , respectively.
本実施例では、該変換処理が行われていない場合、ステップS403中の現在の第一復号マトリックスG0及び第二復号マトリックスY0は、初期化された第一復号マトリックスG0及び第二復号マトリックスY0であっても良く、該変換処理が行われている場合、ステップS403中の現在の第一復号マトリックスG0及び第二復号マトリックスY0は、前回変換処理後に得られた第一復号マトリックスG0及び第二復号マトリックスY0であっても良い。 In this embodiment, when the conversion process is not performed, the current first decoding matrix G 0 and second decoding matrix Y 0 in step S403 are initialized to the first decoding matrix G 0 and the second decoding matrix initialized. may be a matrix Y 0, if the conversion process is performed, the first decoding matrix G 0 and the second decoding matrix Y 0 current in step S403, the first decoding obtained after the previous conversion process It may be a matrix G 0 and a second decoding matrix Y 0 .
ステップS404では、第一復号マトリックスが、対角要素の全てが1である第一復号マトリックスG′に更新されているかどうかを判断し、「はい」の場合、新しい符号化ベクトルyi及び生成ベクトル情報Igの受信を停止し、「いいえ」の場合、ステップS401に戻り、次の一つの符号化ベクトル及び生成ベクトル情報を受信する。 In step S404, it is determined whether or not the first decoding matrix has been updated to the first decoding matrix G ′ whose diagonal elements are all 1. If “Yes”, the new encoding vector y i and the generation vector are determined. The reception of the information Ig is stopped. If “No”, the process returns to step S401 to receive the next one encoded vector and generated vector information.
以下、図面をもとに、ステップS403の更新処理について詳しく説明する。なお、以下の説明は例示だけであり、本発明の実施例はこれに限定されず、言い換えると、他の方式でステップS403を実施することもできる。 Hereinafter, the update process in step S403 will be described in detail with reference to the drawings. Note that the following description is merely an example, and the embodiment of the present invention is not limited to this. In other words, step S403 can be performed by other methods.
図5に示すように、一つの実施方式では、ステップS403は次のステップを含んでも良い。 As shown in FIG. 5, in one implementation, step S403 may include the following steps.
S501:前記生成ベクトルのうちの一番目又は最後の一つの1の、前記生成ベクトルにおける列番号を抽出し;
S502:現在の第一復号マトリックスの対角要素のうちの、行番号が前記列番号と同じである要素が0であるかどうかを判断し;
S503:前記要素が0である時に、現在の第一復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルを前記生成ベクトルに取り替え、また、現在の第二復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルを前記符号化ベクトルに取り替える。
S501: Extract a column number in the generation vector of the first or last one of the generation vectors;
S502: It is determined whether or not an element whose row number is the same as the column number among diagonal elements of the current first decoding matrix is 0;
S503: When the element is 0, replace the row vector whose row number is the same as the column number in the current first decoding matrix with the generated vector, and also in the current second decoding matrix. The vector of the row whose row number is the same as the column number is replaced with the encoded vector.
ステップS501では、抽出したのが生成ベクトルgiのうちの一番目の列番号aであれば、最終的に得た第一復号マトリックスG′は上式(3)に示すような上三角マトリックスであり、抽出したのが生成ベクトルgi中の最後の一つ1の列番号aである場合、最終的に得た第一復号マトリックスG′は上式(4)に示すような下三角マトリックスである。 In step S501, if it is the first column number a that is extracted from the generation vector g i , the finally obtained first decoding matrix G ′ is an upper triangular matrix as shown in the above equation (3). If the extracted column number a is the last one in the generation vector g i , the first decoding matrix G ′ finally obtained is a lower triangular matrix as shown in the above equation (4). is there.
ステップS502では、現在の第一復号マトリックスG0の対角要素のうちの、行番号が該列番号aと同じである要素G0(a,a)が0であるかどうかを判断し、0である場合、現在の第一復号マトリックスG0の第a行のベクトルに対して取り替え処理を行う必要があることを意味する。 In step S502, it is determined whether or not the element G 0 (a, a) whose row number is the same as the column number a among the diagonal elements of the current first decoding matrix G 0 is 0. Means that it is necessary to perform replacement processing for the vector in the a-th row of the current first decoding matrix G 0 .
ステップS503では、ステップS502で要素G0(a,a)が0であると判断した場合、現在の第一復号マトリックスG0のうちの第a行のベクトルg0aを該生成ベクトルgiに取り替え、また、現在の第二復号マトリックスY0のうちの第a行のベクトルy0aを該符号化ベクトルyiに取り替え、即ち、該生成ベクトルgi及び該符号化ベクトルyiをそれぞれ使用して、現在の第一復号マトリックスG0及び第二復号マトリックスY0に対して同じ変換操作を行うことができる。 In step S503, when it is determined in step S502 that the element G 0 (a, a) is 0, the vector g 0a of the a-th row in the current first decoding matrix G 0 is replaced with the generated vector g i . Also, the vector y 0a in the a-th row of the current second decoding matrix Y 0 is replaced with the encoded vector y i , that is, using the generated vector g i and the encoded vector y i , respectively. The same conversion operation can be performed on the current first decoding matrix G 0 and the second decoding matrix Y 0 .
本実施例では、図5に示すように、ステップS403は更に次のステップを含んでも良い。 In the present embodiment, as shown in FIG. 5, step S403 may further include the following steps.
S504:前記要素が0でない時に、生成ベクトルと、現在の第一復号マトリックスのうちの行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい生成ベクトルを生成し、そして、前記新しい生成ベクトルを前記生成ベクトルとし、また、前記符号化ベクトルと、現在の第二復号マトリックスのうちの行番号が前記列番号と同じである行のベクトルとに対して前記線形演算を行うことで、一つの新しい符号化ベクトルを生成し、そして、前記新しい符号化ベクトルを前記符号化ベクトルとし;
S505:前記新しい生成ベクトルの要素のすべてがゼロでない時に、戻って再び前記抽出処理を行う。
S504: When the element is not 0, one new generation is performed by performing a linear operation on the generation vector and a vector of a row whose row number is the same as the column number in the current first decoding matrix. A vector is generated, and the new generation vector is set as the generation vector, and the encoding vector and a vector of a row in the current second decoding matrix whose row number is the same as the column number are generated. Performing the linear operation to generate one new encoded vector, and setting the new encoded vector as the encoded vector;
S505: When all the elements of the new generation vector are not zero, return and perform the extraction process again.
ステップS504では、ステップS502で要素G0(a,a)が0でないと判断した場合、現在の第一復号マトリックスG0の第a行のベクトルが既に前の更新過程で取り替えられたことを意味するので、生成ベクトルgiと、現在の第一復号マトリックスG0のうちの第a行のベクトルg0aとに対して線形演算を行うことで、一つの新しい生成ベクトルg0aiを取得し、そして、該新しい生成ベクトルを要処理の生成ベクトルgiとし、同様に、符号化ベクトルyiと、現在の第二復号マトリックスのうちの第a行のベクトルy0aとに対して線形演算を行うことで、一つの新しい符号化ベクトルy0aiを取得し、そして、該新しい符号化ベクトルを要処理の符号化ベクトルyiとする。 In step S504, if it is determined in step S502 that the element G 0 (a, a) is not 0, it means that the vector in the a-th row of the current first decoding matrix G 0 has already been replaced in the previous update process. Therefore, by performing a linear operation on the generation vector g i and the vector g 0a in the a-th row of the current first decoding matrix G 0 , one new generation vector g 0ai is obtained, and The new generation vector is set as a generation vector g i to be processed, and similarly, a linear operation is performed on the encoding vector y i and the vector y 0a in the a-th row of the current second decoding matrix. Thus, one new encoded vector y 0ai is obtained, and this new encoded vector is set as an encoded vector y i requiring processing.
本発明の実施例では、ステップS504での線形演算は例えば、排他的OR演算であっても良く、これにより、新しい生成ベクトルgi及び新しい符号化ベクトルyiは、それぞれ、下式(6)、(7)で表すことができる。
ステップS505では、該新しい生成ベクトルgiの要素のすべてがゼロでない時に、ステップS501に戻って再び生成ベクトルgiに対しての列番号の抽出及び後続の処理を行う。 In step S505, when all the elements of the new generation vector g i are not zero, the process returns to step S501 to extract the column number for the generation vector g i and perform the subsequent processing again.
また、更新後の生成ベクトルgiの要素のすべてがゼロである場合、ステップS401に戻って再び受信ステップ及び後続の更新ステップを行う。 Also, if all elements of the product vector g i after updating is zero, performing a receiving step and a subsequent update step again returns to step S401.
本実施例では、ステップS504の前に、ステップS403は更に、次のステップS506(図示せず)を有しても良い。 In this embodiment, step S403 may further include the next step S506 (not shown) before step S504.
S506:前記要素が0でない時に、前記生成ベクトルのハミング重みが、現在の第一復号マトリックスのうちの行番号が前記列番号と同じである行のベクトルのハミング重みよりも小さい場合、前記第一復号マトリックスのうちの前記行のベクトルと、前記生成ベクトルとを互いに交換し(互換し)、また、前記第二復号マトリックスのうちの前記行のベクトルと、前記符号化ベクトルとを互いに交換し、そして、互いに交換された結果に対して上述の線形演算を行う。 S506: If the hamming weight of the generated vector is smaller than the hamming weight of a vector of a row whose row number is the same as the column number of the current first decoding matrix when the element is not 0, the first The row vector of the decoding matrix and the generation vector are exchanged (compatible) with each other, and the row vector of the second decoding matrix and the encoding vector are exchanged with each other, Then, the above-described linear calculation is performed on the exchanged results.
ステップS506では、要素G0(a,a)が0でない場合、更に生成ベクトルgiのハミング重み(hamming weight)w(gi)と、ベクトルg0aのハミング重みw(g0a)とを比較しても良く、w(gi)<w(g0a)の場合、生成ベクトルgiのうちの1の数量がベクトルg0aのうちの1の数量よりも少ないことを意味するので、計算量を低減するために、生成ベクトルgiと、ベクトルg0aとを互換し、また、符号化ベクトルyiと、ベクトルy0aとを互換しても良い。その後、ステップS504により、互換後の結果に対して線形演算を行う。 In step S506, when the element G 0 (a, a) is not 0, the hamming weight w (g i ) of the generated vector g i is further compared with the hamming weight w (g 0a ) of the vector g 0a. If w (g i ) <w (g 0a ), this means that the quantity of 1 in the generated vector g i is less than the quantity of 1 in the vector g 0a , In order to reduce the generation vector g i and the vector g 0a, and the encoded vector y i and the vector y 0a may be compatible. Thereafter, in step S504, a linear operation is performed on the result after the compatibility.
また、w(gi)≧w(g0a)の場合、生成ベクトルgiのうちの1の数量がベクトルg0aのうちの1の数量以上であることを意味するので、互換処理を行う必要がなく、直接ステップS504に入る。 Also, if w (g i ) ≧ w (g 0a ), it means that the quantity of 1 in the generated vector g i is greater than or equal to the quantity of 1 in the vector g 0a , so it is necessary to perform compatibility processing There is no, and directly enters step S504.
本実施例では、上述のステップS506により、第一復号マトリックスG′中の1の数量を減少させることができ、これにより、上述の式(5)を採用してオリジナルデータマトリックスXを計算する時の計算量は比較的に小さい。 In the present embodiment, the number of 1s in the first decoding matrix G ′ can be reduced by the above-described step S506, and accordingly, when the original data matrix X is calculated by using the above equation (5). The amount of computation is relatively small.
以下、図面及び実例を参照して、本発明の完全な復号フローについて詳しく説明する。なお、以下の説明は例示にすぎず、本発明の実施例はこれに限定されず、言い換えると、該復号フローは他の変形例を有しても良い。 Hereinafter, the complete decoding flow of the present invention will be described in detail with reference to the drawings and examples. The following description is merely an example, and the embodiment of the present invention is not limited to this. In other words, the decoding flow may have other modifications.
図6は、本発明の実施例1における復号フローチャートの一例である。図6に示すように、該復号フローは以下のステップを含む。 FIG. 6 is an example of a decoding flowchart in Embodiment 1 of the present invention. As shown in FIG. 6, the decoding flow includes the following steps.
S601:第一復号マトリックス及び第二復号マトリックスを初期化し、例えば、初期化後の第一復号マトリックスG0は7×7のマトリックスであっても良く、その要素はすべて0であり;初期化後の第二復号マトリックスY0は7×Nのマトリックスであっても良く、その要素はすべて0である。
S601: a first decoding matrix and the second decoding matrix initialized, for example, a first decoding matrix G 0 after the initialization may be a matrix of 7 × 7, be all the
S602:符号化ベクトルyi及び該符号化ベクトルyiと一緒に伝送されている生成ベクトルgiを受信し、例えば、第m回受信において得た生成ベクトルはgi={0,0,0,1,0,1,1}であり、mは自然数である。 S602: receiving a generated vector g i, which is transmitted together with the encoded vectors y i and the encoded vectors y i, for example, generated vector obtained in the m-th received g i = {0,0,0 , 1,0,1,1} and m is a natural number.
S603:該生成ベクトルの一番目又は最後の一つの1の列番号aを抽出し、例えば、今回受信した生成ベクトルgi={0,0,0,1,0,1,1}について言えば、その一番目の1の列番号が4であるため、a=4である。 S603: Extracting the first or last one column number a of the generation vector, for example, the generation vector g i = {0,0,0,1,0,1,1} received this time Since the column number of the first 1 is 4, a = 4.
S604:現在の第一復号マトリックスG0中の要素G0(a,a)が0であるかどうかを判断し、例えば、G0(4,4)が0であるかどうかを判断することができ、ここで、現在の第一復号マトリックスが初期化後に未だ更新されていないマトリックスであり、即ち、G0の各要素が0であるとしても良く、この場合、ステップS604の判断結果がG0(a,a)=0であり、そして、ステップS605に進む。 S604: Determining whether element G 0 (a, a) in the current first decoding matrix G 0 is 0, for example, determining whether G 0 (4, 4) is 0 Here, the current first decoding matrix is a matrix that has not yet been updated after initialization, that is, each element of G 0 may be 0. In this case, the determination result of step S604 is G 0. (a, a) = 0, and the process proceeds to step S605.
S605:現在の第一復号マトリックスG0の第a行上のベクトルg0aをgiに取り替え、また、現在の第二復号マトリックスY0の第a行上のベクトルy0aをyiに取り替え、例えば、現在の第一復号マトリックスG0の第4行上のベクトルをgi={0,0,0,1,0,1,1}に取り替え、また、現在の第二復号マトリックスY0の第4行上のベクトルをyiに取り替えることができ、そのうち、今回の取り替え後のG0は、下式(8)に示すようなマトリックスであっても良い。
上式(8)に示すような今回の取り替え後の第一復号マトリックスG0のうち、g0a={0,0,0,1,0,1,1}である。 Of the first decoded matrix G 0 after the replacement as shown in the above equation (8), g 0a = {0,0,0,1,0,1,1}.
S606:今回の取り替え後の第一復号マトリックスG0の対角要素が全て1であるかどうかを判断し、「はい」の場合、ステップS607に進み、オリジナルデータを計算し、例えば、上述の式(5)を採用して計算を行っても良く、判断結果が「いいえ」の場合、ステップS602に戻り、再び受信及後続のステップを行い、例えば、上式(8)の第一復号マトリックスG0について言えば、その対角要素の全てが0でないため、ステップS606の判断結果が「いいえ」であり、そして、ステップS602に戻り、第m+1回の受信を行う。 S606: It is determined whether or not the diagonal elements of the first decoding matrix G 0 after this replacement are all 1. If “Yes”, the process proceeds to step S607 to calculate the original data, for example, the above formula (5) may be adopted to perform the calculation. If the determination result is “No”, the process returns to step S602, and the reception and subsequent steps are performed again. For example, the first decoding matrix G of the above equation (8) is performed. As for 0, for all of its diagonal elements is not zero, a determination result of step S606 is "no", then returns to step S602, performs the (m + 1) times of reception.
第m+1回の受信ステップS602で得た生成ベクトルがgi={0,0,0,1,1,1,0}であるとし、ステップS603で抽出にて得た該生成ベクトルの一番目の1の列番号も4であり、ステップS604において現在の第一復号マトリックスG0が式(8)に示すようなマトリックスであり、そのうち、G0(a,a)=1であるので、ステップS604の判断結果が「いいえ」であり、そして、ステップS608に進む。 Assume that the generated vector obtained in the (m + 1) th reception step S602 is g i = {0,0,0,1,1,1,0}, and one of the generated vectors obtained by extraction in step S603. The column number of the first 1 is 4, and the current first decoding matrix G 0 is a matrix as shown in Expression (8) in step S604, and among them, G 0 (a, a) = 1, The determination result of step S604 is “No”, and the process proceeds to step S608.
S608:生成ベクトルgiと、現在の第一復号マトリックスG0中の第a行上のベクトルg0aとに対して線形演算を行い、一つの新しい生成ベクトルg0aiを取得し、そして、該新しい生成ベクトルを生成ベクトルgiとし、また、符号化ベクトルyiと、現在の第二復号マトリックス中の第a行上のベクトルy0aとに対して線形演算を行い、一つの新しい符号化ベクトルy0aiを取得し、そして、該新しい符号化ベクトルを符号化ベクトルyiとする。例えば、gi={0,0,0,1,1,1,0}であり、且つ、g0a={0,0,0,1,0,1,1}であれば、
(外3)
である。
S608: Perform a linear operation on the generation vector g i and the vector g 0a on the a-th row in the current first decoding matrix G 0 to obtain one new generation vector g 0ai and the new A generation vector is set as a generation vector g i , and a linear operation is performed on the encoding vector y i and the vector y 0a on the a-th row in the current second decoding matrix to obtain one new encoding vector y 0ai is obtained, and the new encoded vector is set as an encoded vector y i . For example, if g i = {0,0,0,1,1,1,0} and g 0a = {0,0,0,1,0,1,1},
(Outside 3)
It is.
S609:この時の生成ベクトルgiの要素が全て0であるかどうかを判断し、「はい」の場合、ステップS602に戻り、第m+2回の受信を行い、「いいえ」の場合、ステップS603に戻り、この時の生成ベクトルgiに対して抽出処理を行う。例えば、gi={0,0,0,0,1,0,1}の場合、S609の判断結果が「いいえ」であるため、ステップS603に戻る。 S609: It is determined whether or not all elements of the generated vector g i at this time are 0. If “Yes”, the process returns to step S602 to receive m + 2 times, and if “No”, step returning to S603, the extraction processing for the generated vector g i at this time. For example, if g i = {0,0,0,0,1,0,1}, the determination result in S609 is “No”, so the process returns to step S603.
続いて、ステップS603で、更新後のgiの一番目の1の列番号として5を抽出する。 Subsequently, at step S603, it extracts a 5 as one th 1 column number of the updated g i.
ステップS604で、式(8)に示すような現在の第一復号マトリックス中のG0(5,5)が0であると判断し、そして、ステップS605に進む。 In step S604, it is determined that G 0 (5, 5) in the current first decoding matrix as shown in equation (8) is 0, and the process proceeds to step S605.
ステップS605で、現在の第一復号マトリックスG0の第5行上のベクトルを更新後のgiに取り替え、また、現在の第二復号マトリックスY0の第5行上のベクトルを更新後のyiに取り替えることができ、そのうち、今回の取り替え後のG0は、下式(9)に示すようなマトリックスであっても良い。
上式(9)に示すような今回の変換後の第一復号マトリックスG0のうち、g0a={0,0,0,0,1,0,1}である。 Of the first decoded matrix G 0 after this conversion as shown in the above equation (9), g 0a = {0,0,0,0,1,0,1}.
図7は本発明の実施例1の復号フローチャートの他の例である。本実施例では、図7の図6と同じステップについて説明せず、両者の異なる部分のみについて説明する。 FIG. 7 is another example of the decoding flowchart according to the first embodiment of the present invention. In the present embodiment, the same steps as those in FIG. 6 in FIG. 7 will not be described, and only different portions will be described.
図7に示すように、ステップS601〜S609の他に、更にステップS701及びS702を含む。ステップS604の判断が「いいえ」である時に、ステップS701を実行する。 As shown in FIG. 7, steps S701 and S702 are further included in addition to steps S601 to S609. When the determination in step S604 is “No”, step S701 is executed.
ステップS701では、生成ベクトルgiのハミング重み(hamming weight)w(gi)が、現在の第一復号マトリックスG0中のベクトルg0aのハミング重みw(g0a)よりも小さいかどうかを判断し、「はい」の場合、ステップS702に進み、「いいえ」の場合、ステップS608に進む。例えば、gi={0,0,0,1,1,0,0}であり、且つ、g0a={0,0,0,1,0,1,1}であれば、w(gi)<w(g0a)であり、この時に、ステップS702に進む。 In step S701, it is determined whether the hamming weight w (g i ) of the generated vector g i is smaller than the hamming weight w (g 0a ) of the vector g 0a in the current first decoding matrix G 0. If “yes”, the process proceeds to step S702. If “no”, the process proceeds to step S608. For example, if g i = {0,0,0,1,1,0,0} and g 0a = {0,0,0,1,0,1,1}, then w (g i ) <w (g 0a ), and at this time, the process proceeds to step S702.
ステップS702では、生成ベクトルgiとベクトルg0aとを互換し、また、符号化ベクトルyiとベクトルy0aとを互換し、その後、互換後の結果に対してステップS608及びその後続の処理を行う。例えば、互換後に得た生成ベクトルgiとベクトルg0aは、それぞれ、gi={0,0,0,1,0,1,1}とg0a={0,0,0,1,1,0,0}である。 In step S702, the generated vector g i and the vector g 0a are made compatible, and the encoded vector y i and the vector y 0a are made compatible. Thereafter, step S608 and the subsequent processing are performed on the result after the compatibility. Do. For example, the generated vector g i and vector g 0a obtained after the compatibility are respectively g i = {0,0,0,1,0,1,1} and g 0a = {0,0,0,1,1 , 0,0}.
本発明の実施例における復号手法では、符号化ベクトル及び対応する生成ベクトル情報を受信した後に、直ぐに第一復号マトリックス及び第二復号マトリックスに対して更新処理を行うことができ、また、第一復号マトリックスを、対角要素が1である第一復号マトリックスG′に更新したら、直ぐに受信を停止することができ、そして、簡単な代数演算でオリジナルデータマトリックスXを得ることで、復号を完成させることができる。よって、復号に必要な時間を短縮し、復号の演算量を低減することができる。また、ハミング重みが比較的小さい符号化ベクトルを以て、第一復号マトリックス中の対応するベクトルを取り替えることにより、復号の演算量をより一層低減することができる。 In the decoding method according to the embodiment of the present invention, the first decoding matrix and the second decoding matrix can be updated immediately after receiving the encoded vector and the corresponding generated vector information. As soon as the matrix is updated to the first decoding matrix G ′ whose diagonal element is 1, the reception can be stopped immediately, and the decoding is completed by obtaining the original data matrix X by simple algebraic operation. Can do. Therefore, the time required for decoding can be shortened, and the amount of calculation for decoding can be reduced. Also, the amount of decoding can be further reduced by replacing the corresponding vector in the first decoding matrix with an encoded vector having a relatively small Hamming weight.
本発明の実施例2は復号器を提供し、それは実施例1の復号手法に対応するものである。図8は実施例2における復号器の構成図である。図8に示すように、該復号器800は、初期化ユニット801、処理ユニット802、及び復号ユニット803を含む。
The second embodiment of the present invention provides a decoder, which corresponds to the decoding method of the first embodiment. FIG. 8 is a configuration diagram of a decoder in the second embodiment. As shown in FIG. 8, the
そのうち、初期化ユニット801は、第一復号マトリックスG0及び第二復号マトリックスY0を全零マトリックスに初期化し;処理ユニット802は、符号化ベクトルyi及び生成ベクトル情報Igを受信し、該符号化ベクトル及び該生成ベクトル情報に基づいて、第一復号マトリックス及び第二復号マトリックスを更新することで、該第一復号マトリックスの対角要素が全て1であるようにさせ;復号ユニット803は、更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得る。
Among them, the
図9は実施例2の処理ユニット802の構成図である。図9に示すように、該処理ユニット802は、受信ユニット901、確定ユニット902、変換ユニット903、及び判断ユニット904を含む。
FIG. 9 is a configuration diagram of the
そのうち、受信ユニット901は、符号化ベクトル及び生成ベクトル情報を受信し;確定ユニット902は、前記生成ベクトル情報に基づいて、前記符号化ベクトルに対応する生成ベクトルを確定し;変換ユニット903は、前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行い;判断ユニット904は、変換後の前記第一復号マトリックスの対角要素が全て1であるかどうかを判断し、「はい」の場合、処理を終了し、「いいえ」の場合、前記受信ユニットに、次に一つの符号化ベクトル及び生成ベクトル情報を続けて受信させる。
Among them, the receiving
図10は実施例2の変換ユニット903の構成図である。図10に示すように、該変換ユニットは、抽出ユニット1001、第一判断サブユニット1002、及び第一更新ユニット1003を含む。
FIG. 10 is a configuration diagram of the
そのうち、抽出ユニット1001は、前記生成ベクトル中の一番目又は最後の一つの1の前記生成ベクトルにおける列番号を抽出し;第一判断サブユニット1002は、現在の第一復号マトリックスの対角要素のうちの、行番号が前記列番号と同じである要素が0であるかどうかを判断し;第一更新ユニット1003は、第一判断サブユニット1002の判断結果が「前記要素が0である」の時に、現在の第一復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルを前記生成ベクトルに取り替え、また、現在の第二復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルを前記符号化ベクトルに取り替える。
Among them, the
図10に示すように、該変換ユニット903は更に、計算ユニット1004及び第二判断サブユニット1005を含む。
As shown in FIG. 10, the
そのうち、計算ユニット1004は、第一判断サブユニット1002の判断結果が「前記要素が0でない」の時に、前記生成ベクトルと、現在の第一復号マトリックスのうちの行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい生成ベクトルを取得し、そして、前記新しい生成ベクトルを前記生成ベクトルとし、また、前記符号化ベクトルと、現在の第二復号マトリックスのうちの行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい符号化ベクトルを取得し、そして、前記新しい符号化ベクトルを前記符号化ベクトルとする。
Among them, when the determination result of the
第二判断サブユニット1005は、前記新しい生成ベクトルの要素が全てゼロであるかどうかを判断し、「いいえ」の場合、前記抽出ユニットが再び前記新しい生成ベクトルに対して抽出処理を行う。
The
図10に示すように、該変換ユニット903は更に第二更新ユニット1006を含んでも良い。第一判断サブユニット1002の判断結果が「前記要素が0でない」の時に、前記生成ベクトルのハミング重みが、第一復号マトリックス中の行番号が前記列番号と同じである行のベクトルのハミング重みよりも小さい場合、該第二更新ユニット1006は、前記第一復号マトリックス中の前記行のベクトルと、前記生成ベクトルとを互換し、また、前記第二復号マトリックス中の前記行のベクトルと、前記符号化ベクトルとを互換し、そして、前記計算ユニットは上述の線形演算を行う。
As shown in FIG. 10, the
本発明の実施例2では、復号器800の各ユニットの作動原理は、実施例1中の各ステップに対応するため、ここでは詳しい説明を省略する。
In the second embodiment of the present invention, the operation principle of each unit of the
本発明の実施例2における復号器によれば、符号化ベクトル及び対応する生成ベクトル情報を受信した後に、直ぐに第一復号マトリックス及び第二復号マトリックスに対して更新処理を行うことができ、また、第一復号マトリックスを、対角要素が1である第一復号マトリックスG′に更新したら、直ぐに受信を停止することができ、そして、簡単な代数演算によりオリジナルデータマトリックスXを得ることで、復号を完成させることができる。よって、復号に必要な時間を短縮し、復号の演算量を低減することができる。また、ハミング重みが比較的小さい符号化ベクトルにより第一復号マトリックス中の対応するベクトルを取り替えることで、復号の演算量をより一層低減することができる。 According to the decoder in Embodiment 2 of the present invention, the update process can be performed immediately on the first decoding matrix and the second decoding matrix after receiving the encoded vector and the corresponding generated vector information. As soon as the first decoding matrix is updated to the first decoding matrix G ′ whose diagonal element is 1, the reception can be stopped immediately, and the decoding can be performed by obtaining the original data matrix X by a simple algebra operation. Can be completed. Therefore, the time required for decoding can be shortened, and the amount of calculation for decoding can be reduced. Also, the amount of decoding can be further reduced by replacing the corresponding vector in the first decoding matrix with an encoded vector having a relatively small Hamming weight.
本発明の実施例3は受信機を提供し、該受信機は実施例2に記載の復号器を含む。 Embodiment 3 of the present invention provides a receiver, which includes the decoder described in Embodiment 2.
図11は本発明の実施例における受信機の構成図である。図11に示すように、受信機1100は、中央処理装置(CPU)1101及び記憶装置1102を含んでも良く、記憶装置1102は、中央処理装置1101にカップリングされる。そのうち、該記憶装置1102は、各種データを記憶することができ、また、情報処理用プログラムを記憶しても良い。また、中央処理装置1101の制御により該プログラムを実行することにより、ソースノードが送信した各種情報を受信し、且つ、他のノードに情報を送信することもできる。
FIG. 11 is a block diagram of a receiver in the embodiment of the present invention. As shown in FIG. 11, the
一実施方式では、復号器の機能が中央処理装置200に集約され得る。そのうち、中央処理装置1101は、第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化し;符号化ベクトル及び対応する生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素が全て1であるようにさせてから、受信を停止し;そして、更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得るよう構成されても良い。
In one implementation, the decoder functionality may be centralized in the central processing unit 200. Among them, the
他の実施方式では、復号器が中央処理装置と独立して配置されても良く、例えば、復号器を中央処理装置1101と接続されるチップとして構成し、そして、中央処理装置の制御により復号器の機能を実現しても良い。
In other embodiments, the decoder may be arranged independently of the central processing unit, for example, the decoder is configured as a chip connected to the
また、図11に示すように、受信器1100は更にアンテナ1103などを含んでも良く、そのうち、このような部品の機能は従来技術と類似するため、ここでは詳しい説明が省略される。なお、受信機1100は、図11に示すような全ての部品を含む必要がない。また、受信機1100は更に図11に無い部品を含んでも良く、これについては従来技術を参照することができる。
Further, as shown in FIG. 11, the
本発明の実施例は更にコンピュータ可読プログラムを提供し、そのうち、受信機中で前記プログラムを実行する時に、前記プログラムは、コンピュータに、受信機中で実施例1に記載の復号手法を実行させる。 Embodiments of the present invention further provide a computer readable program, of which when executing the program in a receiver, the program causes the computer to execute the decoding technique described in Embodiment 1 in the receiver.
本発明の実施例は更に、コンピュータ可読プログラムを記憶した記憶媒体を提供し、そのうち、前記コンピュータ可読プログラムは、コンピュータに、受信機中で実施例1に記載の復号手法を実行させる。 The embodiment of the present invention further provides a storage medium storing a computer readable program, wherein the computer readable program causes a computer to execute the decoding method described in the first embodiment in a receiver.
本発明の以上の装置及び方法は、ハードウェアにより実現することができ、また、ハードウェアとソフトウェアとの組み合わせにより実現することもできる。本発明は、このようなコンピュータ可読プログラムにも関し、即ち、該プログラムは、ロジック部品により実行される時に、該ロジック部品に、上述の装置又は構成部品を実現させることができ、或いは、該ロジック部品に、上述の各種の方法又はステップを実現させることができる。本発明は更に、上述のプログラムの記憶媒体、例えば、ハードディスク、磁気ディスク、光ディスク、DVD、flashメモリなどにも関する。 The above apparatus and method of the present invention can be realized by hardware, and can also be realized by a combination of hardware and software. The present invention also relates to such a computer-readable program, that is, when the program is executed by a logic component, the logic component can cause the above-described apparatus or component to be realized, or the logic The component can implement the various methods or steps described above. The present invention further relates to a storage medium for the above-described program, such as a hard disk, a magnetic disk, an optical disk, a DVD, and a flash memory.
また、上述の各実施例を含む実施形態に関し、更に以下の付記を開示する。 Moreover, the following additional remarks are disclosed regarding the embodiment including each of the above-described examples.
(付記1)
復号器であって、
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化するための初期化ユニット;
符号化ベクトル及び生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素が全て1であるようにさせるための処理ユニット;及び
更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得るための復号ユニットを含む、復号器。
(Appendix 1)
A decoder comprising:
An initialization unit for initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Diagonal elements of the first decoding matrix by receiving encoded vector and generated vector information and updating the first decoding matrix and the second decoding matrix based on the encoded vector and the generated vector information A decoder comprising: a processing unit for causing all to be 1; and a decoding unit for obtaining original data based on the updated first decoding matrix and the second decoding matrix.
(付記2)
付記1に記載の復号器であって、
前記処理ユニットは、
符号化ベクトル及び生成ベクトル情報を受信するための受信ユニット;
前記生成ベクトル情報に基づいて、前記符号化ベクトルに対応する生成ベクトルを確定するための確定ユニット;
前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行うための変換ユニット;及び
変換後の前記第一復号マトリックスの対角要素が全で1であるかどうかを判断し、はいの場合、処理を終了し、いいえの場合、前記受信ユニットが継続して次の一つの符号化ベクトル及び生成ベクトル情報を受信するようにさせるための判断ユニットを含む、復号器。
(Appendix 2)
The decoder according to appendix 1, wherein
The processing unit is
A receiving unit for receiving encoded vector and generated vector information;
A determination unit for determining a generation vector corresponding to the encoded vector based on the generation vector information;
A transform unit for transforming the current first decoding matrix and the current second decoding matrix based on the encoded vector and the generated vector; and diagonal elements of the transformed first decoding matrix; In order to determine whether or not all are 1, and to end the process if yes, and to make the receiving unit continuously receive the next one encoded vector and generated vector information if no A decoder including a decision unit.
(付記3)
付記2に記載の復号器であって、
前記生成ベクトル情報は、生成ベクトルであり、前記確定ユニットは、直接的に、前記受信ユニットが受信した生成ベクトル情報に基づいて、前記生成ベクトルを確定する、復号器。
(Appendix 3)
The decoder according to appendix 2, wherein
The decoder, wherein the generation vector information is a generation vector, and the determination unit determines the generation vector directly based on the generation vector information received by the receiving unit.
(付記4)
付記2に記載の復号器であって、
前記生成ベクトル情報は、前記生成ベクトルに対応する索引であり、前記確定ユニットは、前記受信ユニットが受信した前記索引及び予め記憶された生成マトリックスに基づいて、前記生成ベクトルを確定する、復号器。
(Appendix 4)
The decoder according to appendix 2, wherein
The decoder, wherein the generation vector information is an index corresponding to the generation vector, and the determination unit determines the generation vector based on the index received by the receiving unit and a generation matrix stored in advance.
(付記5)
付記2に記載の復号器であって、
前記変換ユニットは、
前記生成ベクトル中の一番目又は最後の一つの1の、前記生成ベクトルにおける列番号を抽出するための抽出ユニット;
現在の第一復号マトリックスの対角要素中の、行番号が前記列番号と同じである要素が0であるかどうかを判断するための第一判断サブユニット;及び
前記要素が0である時に、現在の第一復号マトリックス中の行番号が前記列番号と同じである行のベクトルを前記生成ベクトルに取り替え、また、現在の第二復号マトリックス中の行番号が前記列番号と同じである行のベクトルを前記符号化ベクトルに取り替えるための第一更新ユニットを含む、復号器。
(Appendix 5)
The decoder according to appendix 2, wherein
The conversion unit is
An extraction unit for extracting a column number in the generation vector of the first or last one in the generation vector;
A first determining subunit for determining whether an element having a row number equal to the column number in a diagonal element of the current first decoding matrix is 0; and when the element is 0, Replace the vector of the row whose row number in the current first decoding matrix is the same as the column number with the generated vector, and the row number whose row number in the current second decoding matrix is the same as the column number. A decoder comprising a first update unit for replacing a vector with the encoded vector.
(付記6)
付記5に記載の復号器であって、
前記変換ユニットは、更に、
前記要素が0でない時に、前記生成ベクトルと、現在の第一復号マトリックス中の行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい生成ベクトルを取得し、そして、前記新しい生成ベクトルを前記生成ベクトルとし、また、前記符号化ベクトルと、現在の第二復号マトリックス中の行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい符号化ベクトルを取得し、そして、前記新しい符号化ベクトルを前記符号化ベクトルとするための計算ユニット;及び
前記新しい生成ベクトルの要素が全てゼロであるかどうかを判断し、いいえの場合、前記抽出ユニットが前記新しい生成ベクトルに対して抽出処理を行うようにさせるための第二判断サブユニットを含む、復号器。
(Appendix 6)
The decoder according to appendix 5, wherein
The conversion unit further comprises:
When the element is not 0, a linear operation is performed on the generated vector and a vector of the row whose row number in the current first decoding matrix is the same as the column number, thereby obtaining one new generated vector. And taking the new generation vector as the generation vector, and linearly operating on the encoding vector and a vector of rows whose row number in the current second decoding matrix is the same as the column number A calculation unit for obtaining one new encoded vector and making the new encoded vector the encoded vector; and determining whether all elements of the new generated vector are zero If no, a second decision subunit is included for causing the extraction unit to perform an extraction process on the new generated vector. Decoder.
(付記7)
付記6に記載の復号器であって、
前記変換ユニットは、更に、
前記要素が0でない時に、前記生成ベクトルのハミング重みが、現在の第一復号マトリックス中の行番号が前記列番号と同じである行のベクトルのハミング重みよりも小さい場合、前記第一復号マトリックス中の前記行のベクトルと、前記生成ベクトルとを互換し、また、前記第二復号マトリックス中の前記行のベクトルと、前記符号化ベクトルとを互換し、そして、前記計算ユニットが上述の演算を行うようにさせるための第二更新ユニットを含む、復号器。
(Appendix 7)
The decoder according to appendix 6, wherein
The conversion unit further comprises:
If the hamming weight of the generated vector is less than the hamming weight of the row vector whose row number in the current first decoding matrix is the same as the column number when the element is not 0, in the first decoding matrix The vector of the row and the generated vector are compatible, the vector of the row in the second decoding matrix is compatible with the encoding vector, and the calculation unit performs the above-described operation. A decoder comprising a second update unit for causing
(付記8)
受信機であって、
復号器を含み、そのうち、前記復号器は、
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化し;
符号化ベクトル及び生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素が全て1であるようにさせ;及び
更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得るように構成される、受信機。
(Appendix 8)
A receiver,
Including a decoder, wherein the decoder comprises:
Initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Diagonal elements of the first decoding matrix by receiving encoded vector and generated vector information and updating the first decoding matrix and the second decoding matrix based on the encoded vector and the generated vector information Are configured to obtain original data based on the updated first decoding matrix and the second decoding matrix.
(付記9)
復号手法であって、
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化し;
符号化ベクトル及び生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素が全て1であるようにさせ;及び
更新後の第一復号マトリックス及び第二復号マトリックスに基づいてオリジナルデータを得ることを含む、復号手法。
(Appendix 9)
A decryption technique,
Initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Diagonal elements of the first decoding matrix by receiving encoded vector and generated vector information and updating the first decoding matrix and the second decoding matrix based on the encoded vector and the generated vector information A decoding technique comprising obtaining original data based on the updated first decoding matrix and the second decoding matrix.
(付記10)
付記9に記載の復号手法であって、
前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することは、
符号化ベクトル及び生成ベクトル情報を受信し;
前記生成ベクトル情報に基づいて、前記符号化ベクトルに対応する生成ベクトルを確定し;
前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行い;及び
変換後の前記第一復号マトリックスの対角要素が全て1であるかどうかを判断し、はいの場合、処理を終了し、いいえの場合、継続して次の一つの符号化ベクトル及び生成ベクトル情報を受信することを含む、復号手法。
(Appendix 10)
The decoding method according to attachment 9, wherein
Updating the first decoding matrix and the second decoding matrix based on the encoded vector and the generated vector information,
Receiving encoded vector and generated vector information;
Determining a generated vector corresponding to the encoded vector based on the generated vector information;
Transforms the current first decoding matrix and the current second decoding matrix based on the encoded vector and the generated vector; and the diagonal elements of the first decoded matrix after the conversion are all 1 A decoding technique comprising: determining whether or not, if yes, terminating the process, and if no, continuing to receive the next one encoded vector and generated vector information.
(付記11)
付記10に記載の復号手法であって、
前記生成ベクトル情報が生成ベクトルである時に、直接的に、受信した生成ベクトル情報に基づいて、前記生成ベクトルを確定する、復号手法。
(Appendix 11)
The decoding method according to attachment 10, wherein
A decoding method for determining the generation vector directly based on the received generation vector information when the generation vector information is a generation vector.
(付記12)
付記10に記載の復号手法であって、
前記生成ベクトル情報が生成ベクトルに対応する索引である時に、受信した前記索引及び予め記憶された生成マトリックスに基づいて、前記生成ベクトルを確定する、復号手法。
(Appendix 12)
The decoding method according to attachment 10, wherein
A decoding method for determining the generation vector based on the received index and a previously stored generation matrix when the generation vector information is an index corresponding to the generation vector.
(付記13)
付記10に記載の復号手法であって、
前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行うことは、
前記生成ベクトル中の一番目又は最後の一つの1の、前記生成ベクトルにおける列番号を抽出し;
現在の第一復号マトリックスの対角要素中の行番号が前記列番号と同じである要素が0であるかどうかを判断し;
前記要素が0である時に、現在の第一復号マトリックス中の行番号が前記列番号と同じである行のベクトルを前記生成ベクトルに取り替え、また、現在の第二復号マトリックス中の行番号が前記列番号と同じである行のベクトルを前記符号化ベクトルに取り替えることを含む、復号手法。
(Appendix 13)
The decoding method according to attachment 10, wherein
Based on the encoded vector and the generated vector, transforming the current first decoding matrix and the current second decoding matrix comprises
Extracting the column number in the generation vector of the first or last one in the generation vector;
Determining whether the element whose row number in the diagonal element of the current first decoding matrix is the same as the column number is 0;
When the element is 0, the vector of the row whose row number in the current first decoding matrix is the same as the column number is replaced with the generation vector, and the row number in the current second decoding matrix is A decoding technique comprising replacing a vector of a row that is the same as a column number with the encoded vector.
(付記14)
付記13に記載の復号手法であって、
前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行うことは、更に、
前記要素が0でない時に、前記生成ベクトルと、現在の第一復号マトリックス中の行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい生成ベクトルを取得し、そして、前記新しい生成ベクトルを前記生成ベクトルとし、また、前記符号化ベクトルと、現在の第二復号マトリックス中の行番号が前記列番号と同じである行のベクトルとに対して前記線形演算を行うことで、一つの新しい符号化ベクトルを取得し、そして、前記新しい符号化ベクトルを前記符号化ベクトルとし;及び
前記新しい生成ベクトルの要素が全てゼロでない時に、再び前記抽出処理を行うことを含む、復号手法。
(Appendix 14)
The decoding method according to attachment 13, wherein
Performing a transform on the current first decoding matrix and the current second decoding matrix based on the encoding vector and the generation vector further comprises:
When the element is not 0, a linear operation is performed on the generated vector and a vector of the row whose row number in the current first decoding matrix is the same as the column number, thereby obtaining one new generated vector. And obtaining the new generated vector as the generated vector, and the linear vector with respect to the encoded vector and a vector of rows in which the row number in the current second decoding matrix is the same as the column number. Obtaining a new encoded vector by performing an operation, and setting the new encoded vector as the encoded vector; and performing the extraction process again when all elements of the new generated vector are not zero. Including decryption techniques.
(付記15)
付記14に記載の復号手法であって、
前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行うことは、更に、
前記要素が0でない時に、前記生成ベクトルのハミング重みが、現在の第一復号マトリックス中の行番号が前記列番号と同じである行のベクトルのハミング重みよりも小さい場合、前記第一復号マトリックス中の前記行のベクトルと、前記生成ベクトルとを互換し、また、前記第二復号マトリックス中の前記行のベクトルと、前記符号化ベクトルとを互換し、そして、互換後の結果に基づいて上述の線形演算を行うことを含む、復号手法。
(Appendix 15)
The decoding method according to attachment 14, wherein
Performing a transform on the current first decoding matrix and the current second decoding matrix based on the encoding vector and the generation vector further comprises:
If the hamming weight of the generated vector is less than the hamming weight of the row vector whose row number in the current first decoding matrix is the same as the column number when the element is not 0, in the first decoding matrix The row vector and the generated vector, and the row vector in the second decoding matrix and the encoded vector are compatible, and the above-mentioned based on the result after the compatibility A decoding technique that includes performing a linear operation.
以上、本発明の好ましい実施形態を説明したが、本発明はこの実施形態に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は本発明の技術的範囲に属する。 The preferred embodiment of the present invention has been described above, but the present invention is not limited to this embodiment, and all modifications to the present invention belong to the technical scope of the present invention unless departing from the spirit of the present invention.
Claims (10)
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化する初期化ユニット;
符号化ベクトル及び生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素が全て1であるようにさせる処理ユニット;及び
更新後の前記第一復号マトリックス及び前記第二復号マトリックスに基づいてオリジナルデータを得る復号ユニットを含む、復号器。 A decoder comprising:
An initialization unit for initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Diagonal elements of the first decoding matrix by receiving encoded vector and generated vector information and updating the first decoding matrix and the second decoding matrix based on the encoded vector and the generated vector information A decoding unit comprising: a processing unit that causes all to be 1; and a decoding unit that obtains original data based on the updated first decoding matrix and the second decoding matrix.
前記処理ユニットは、
前記符号化ベクトル及び前記生成ベクトル情報を受信する受信ユニット;
前記生成ベクトル情報に基づいて、前記符号化ベクトルに対応する生成ベクトルを確定する確定ユニット;
前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行う変換ユニット;及び
変換後の前記第一復号マトリックスの対角要素が全て1であるかどうかを判断し、「はい」の場合、処理を終了し、「いいえ」の場合、前記受信ユニットが次の一つの符号化ベクトル及び生成ベクトル情報を継続して受信するようにさせる判断ユニットを含む、復号器。 The decoder according to claim 1, wherein
The processing unit is
A receiving unit for receiving the encoded vector and the generated vector information;
A determination unit for determining a generated vector corresponding to the encoded vector based on the generated vector information;
A transform unit that transforms the current first decoding matrix and the current second decoding matrix based on the encoded vector and the generated vector; and all the diagonal elements of the converted first decoding matrix are 1 If “Yes”, the process is terminated. If “No”, the receiving unit continuously receives the next one encoded vector and generated vector information. A decoder containing units.
前記生成ベクトル情報は生成ベクトルであり、
前記確定ユニットは、直接的に、前記受信ユニットが受信した前記生成ベクトル情報に基づいて、前記生成ベクトルを確定する、復号器。 The decoder according to claim 2,
The generation vector information is a generation vector;
The decoding unit, wherein the determination unit determines the generation vector directly based on the generation vector information received by the reception unit.
前記生成ベクトル情報は前記生成ベクトルに対応する索引であり、
前記確定ユニットは、前記受信ユニットが受信した前記索引及び予め記憶された生成マトリックスに基づいて、前記生成ベクトルを確定する、復号器。 The decoder according to claim 2,
The generated vector information is an index corresponding to the generated vector;
The decoder, wherein the determination unit determines the generation vector based on the index received by the reception unit and a pre-stored generation matrix.
前記変換ユニットは、
前記生成ベクトルのうちの一番目又は最後の一つの1の、前記生成ベクトルにおける列番号を抽出する抽出ユニット;
現在の第一復号マトリックスの対角要素のうちの、行番号が前記列番号と同じである要素が0であるかどうかを判断する第一判断サブユニット;及び
前記要素が0である時に、現在の第一復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルを前記生成ベクトルに取り替え、また、現在の第二復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルを前記符号化ベクトルに取り替える第一更新ユニットを含む、復号器。 The decoder according to claim 2,
The conversion unit is
An extraction unit for extracting a column number in the generation vector of the first or last one of the generation vectors;
A first determining subunit that determines whether an element of the diagonal element of the current first decoding matrix whose row number is the same as the column number is 0; and when the element is 0, Of the first decoding matrix of the first decoding matrix is replaced with the generated vector, and the row number of the current second decoding matrix is the same as the column number. A decoder comprising a first update unit that replaces a vector of a row with the encoded vector.
前記変換ユニットは、更に、
前記要素が0でない時に、前記生成ベクトルと、現在の第一復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい生成ベクトルを取得し、そして、前記新しい生成ベクトルを前記生成ベクトルとし、また、前記符号化ベクトルと、現在の第二復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルとに対して線形演算を行うことで、一つの新しい符号化ベクトルを取得し、そして、前記新しい符号化ベクトルを前記符号化ベクトルとする計算ユニット;及び
前記新しい生成ベクトルの要素が全て0であるかどうかを判断し、「いいえ」の場合、前記抽出ユニットが前記新しい生成ベクトルに対して抽出処理を行うようにさせる第二判断サブユニットを含む、復号器。 The decoder according to claim 5, wherein
The conversion unit further comprises:
When the element is not 0, a new operation is performed by performing a linear operation on the generation vector and a vector of a row of the current first decoding matrix whose row number is the same as the column number. A vector is obtained, and the new generation vector is set as the generation vector, and the encoding vector and a vector of a row in the current second decoding matrix whose row number is the same as the column number are obtained. A calculation unit that obtains one new encoded vector by performing a linear operation on the encoded vector, and uses the new encoded vector as the encoded vector; and whether the elements of the new generated vector are all zero If the result is “No”, a second determination subunit that causes the extraction unit to perform extraction processing on the new generated vector is determined. No, the decoder.
前記変換ユニットは、更に、
前記要素が0でない時に、前記生成ベクトルのハミング重みが、現在の第一復号マトリックスのうちの、行番号が前記列番号と同じである行のベクトルのハミング重みよりも小さい場合、前記第一復号マトリックスのうちの前記行のベクトルと、前記生成ベクトルとを交換し、また、前記第二復号マトリックスのうちの前記行のベクトルと、前記符号化ベクトルとを交換し、そして、前記計算ユニットが前記線形演算を行うようにさせる第二更新ユニットを含む、復号器。 The decoder according to claim 6, wherein
The conversion unit further comprises:
When the element is non-zero and the hamming weight of the generated vector is smaller than the hamming weight of the vector of the row whose row number is the same as the column number of the current first decoding matrix, the first decoding Exchanging the vector of the row of the matrix with the generated vector, and exchanging the vector of the row of the second decoding matrix with the encoding vector, and the computing unit A decoder comprising a second update unit for causing a linear operation to be performed.
前記復号器は、
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化し;
符号化ベクトル及び対応する生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素が全て1であるようにさせ;及び
更新後の前記第一復号マトリックス及び前記第二復号マトリックスに基づいてオリジナルデータを得るように構成される、受信機。 A receiver including a decoder,
The decoder is
Initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Receiving the encoded vector and the corresponding generated vector information, and updating the first decoded matrix and the second decoded matrix based on the encoded vector and the generated vector information, so that the pair of the first decoded matrix A receiver configured to cause all corner elements to be 1; and to obtain original data based on the updated first decoding matrix and the second decoding matrix.
第一復号マトリックス及び第二復号マトリックスを全零マトリックスに初期化し;
符号化ベクトル及び生成ベクトル情報を受信し、前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することで、前記第一復号マトリックスの対角要素が全て1であるようにさせ;及び
更新後の前記第一復号マトリックス及び前記第二復号マトリックスに基づいてオリジナルデータを得ることを含む、復号手法。 A decryption technique,
Initializing the first decoding matrix and the second decoding matrix to an all-zero matrix;
Diagonal elements of the first decoding matrix by receiving encoded vector and generated vector information and updating the first decoding matrix and the second decoding matrix based on the encoded vector and the generated vector information And obtaining all the original data based on the updated first decoding matrix and the second decoding matrix.
前記符号化ベクトル及び前記生成ベクトル情報に基づいて、前記第一復号マトリックス及び前記第二復号マトリックスを更新することは、
前記符号化ベクトル及び前記生成ベクトル情報を受信し;
前記生成ベクトル情報に基づいて、前記符号化ベクトルに対応する生成ベクトルを確定し;
前記符号化ベクトル及び前記生成ベクトルに基づいて、現在の第一復号マトリックス及び現在の第二復号マトリックスに対して変換を行い;及び
変換後の前記第一復号マトリックスの対角要素が全て1であるかどうかを判断し、「はい」の場合、処理を終了し、「いいえ」の場合、次の一つの符号化ベクトル及び生成ベクトル情報を継続して受信することを含む、復号手法。 The decoding method according to claim 9, wherein
Updating the first decoding matrix and the second decoding matrix based on the encoded vector and the generated vector information,
Receiving the encoded vector and the generated vector information;
Determining a generated vector corresponding to the encoded vector based on the generated vector information;
Transforms the current first decoding matrix and the current second decoding matrix based on the encoded vector and the generated vector; and the diagonal elements of the first decoded matrix after the conversion are all 1 A decoding method including: determining whether or not, and if “yes”, ending the process, and if “no”, continuously receiving the next one encoded vector and generated vector information.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201410602488.5 | 2014-10-31 | ||
| CN201410602488.5A CN105634657A (en) | 2014-10-31 | 2014-10-31 | Decoding method, decoder and receiving machine |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2016092833A true JP2016092833A (en) | 2016-05-23 |
Family
ID=56016420
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015213419A Pending JP2016092833A (en) | 2014-10-31 | 2015-10-29 | Decoding technique, decoder and receiver |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2016092833A (en) |
| CN (1) | CN105634657A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020522922A (en) * | 2017-06-09 | 2020-07-30 | エヌチェーン ホールディングス リミテッドNchain Holdings Limited | Method and system for selectively using network coding to propagate transactions in a blockchain network |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN117914330B (en) * | 2024-01-26 | 2024-11-26 | 泉城省实验室 | Method, device and apparatus for decoding information set based on weight distribution change |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101771418B (en) * | 2009-01-07 | 2014-11-05 | 华为技术有限公司 | Encoding method and device thereof |
| CN101986589B (en) * | 2010-11-12 | 2013-03-20 | 武汉理工大学 | Method and device for decoding LTE (long term evolution) downlink precoding |
| CN102916763B (en) * | 2011-08-02 | 2016-03-30 | 华为技术有限公司 | Coding method, coding/decoding method, encoder and decoder |
| CN103546166A (en) * | 2013-10-31 | 2014-01-29 | 中国科学院微电子研究所 | Check matrix construction method, encoding and decoding method and device for fountain codes |
-
2014
- 2014-10-31 CN CN201410602488.5A patent/CN105634657A/en active Pending
-
2015
- 2015-10-29 JP JP2015213419A patent/JP2016092833A/en active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2020522922A (en) * | 2017-06-09 | 2020-07-30 | エヌチェーン ホールディングス リミテッドNchain Holdings Limited | Method and system for selectively using network coding to propagate transactions in a blockchain network |
| JP7237016B2 (en) | 2017-06-09 | 2023-03-10 | エヌチェーン ライセンシング アーゲー | Method and system for selectively using network coding to propagate transactions in a blockchain network |
| JP7627295B2 (en) | 2017-06-09 | 2025-02-05 | エヌチェーン ライセンシング アーゲー | Method and system for selectively using network coding to propagate transactions in a blockchain network |
Also Published As
| Publication number | Publication date |
|---|---|
| CN105634657A (en) | 2016-06-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9569731B2 (en) | Quantum communication device, quantum communication method, and computer program product | |
| US10846611B2 (en) | Data processing | |
| KR102033661B1 (en) | Channel encoding and decoding method and apparatus | |
| TW202147188A (en) | Method of training neural network model and related product | |
| CN108605305B (en) | Method and apparatus for predicting network distance | |
| CN113128679B (en) | Training in a communication system | |
| CN116530023A (en) | Serial concatenated codes with outer block codes and inner polarization-adjusted convolutional codes | |
| US20150193306A1 (en) | Quantum communication device, quantum communication method, and computer program product | |
| JP2018509087A (en) | Video image encoding method, video image decoding method, encoding device, and decoding device | |
| CN112751644B (en) | Data transmission method, device and system and electronic equipment | |
| CN109525368B (en) | Hybrid transmission method based on linear network coding, electronic device and storage medium | |
| CN113722739B (en) | Gradient lifting tree model generation method and device, electronic equipment and storage medium | |
| CN114691167A (en) | Method and apparatus for updating machine learning model | |
| CN111656692B (en) | Method and system for error correction in data transmission using low complexity system encoder | |
| WO2021245072A1 (en) | A method for a distributed learning | |
| CN112308233B (en) | Method, apparatus and computer program product for processing data | |
| GB2572537A (en) | Generating or obtaining an updated neural network | |
| JP7024687B2 (en) | Data analysis systems, learning devices, methods, and programs | |
| JP2016092833A (en) | Decoding technique, decoder and receiver | |
| US20150067451A1 (en) | System and Method for Optimizing Luby Transform (Lt) Codes To Facilitate Data Transmission Over Communication Network | |
| CN111723932A (en) | Training methods and related products of neural network models | |
| US20240362343A1 (en) | Homomorphic operation system and operating method thereof | |
| WO2016138836A1 (en) | Similarity measurement method and equipment | |
| JP5378165B2 (en) | Network coding system and method | |
| KR101502972B1 (en) | Polar Quantum Channel Coding Method and Device for Symmetric Capacity Achieving |