A multidimensional parity-check code (MDPC) is a type of error-correcting code that generalizes two-dimensional parity checks to higher dimensions. It was developed as an extension of simple parity check methods used in magnetic recording systems and radiation-hardened memory designs.[1]

Overview

edit

In an MDPC code, information bits are organized into an -dimensional structure, where each bit is protected by parity bits. Each parity bit is calculated along a different dimensional axis. The code can be characterized by its dimension vector , where defines the size of the block or multi-block in the th dimension. The code length can be expressed as

while the number of information bits is given by

.[2]

Reduced generator matrices

edit

Reduced generator matrices eliminate redundant parity bits while maintaining error correction capabilities. This modification increases the code rate without significantly degrading performance. The code rate for a reduced MDPC is given by

.

The reduced generator matrix can be created using systematic construction methods, resulting in more efficient encoding processes compared to traditional parity check codes.

The following pseudocode shows how to generate a reduced generator matrix:[3]

function function_name is
   // Initialize G with identity matrix augmented with ones column
   G ← [I_{r1-1} | 1_{(r1-1)×1}]
   for n ← 2 to N do
      // Update G with Kronecker product
      G ← I_{r_n-1} ⊗ G
      // Calculate product of previous dimensions
      x ← Πi=1n-1(ri - 1)
      // Create temporary matrix with ones column and identity
      G_tmp ← 1_{(r_n-1)×1} ⊗ I_x
      // Augment G with temporary matrix
      G ← [G | G_tmp]
   return G
end function

Decoding algorithms

edit

Decoding in MDPC systems typically employs an iterative algorithm based on Failed Dimension Markers (FDM), which indicate the number of parity check failures associated with each information bit. The FDM-based decoding process works by identifying bits with the highest probability of error and iteratively attempting corrections until either all errors are resolved or a maximum iteration limit is reached.[3]

Applications

edit

MDPC codes have applications in scenarios where short block lengths are required, such as real-time communications systems and memory protection schemes. They offer several advantages over other error-correcting codes, including positive code gain at low signal-to-noise ratios and simpler implementation complexity compared to LDPC codes. The level of error protection can be adjusted by modifying the number of dimensions or the size of each dimension, allowing for flexibility in design trade-offs between code rate and error correction capability.[4]

References

edit
  1. ^ Q. L. Rao, C. He (2009). A new 2-D parity checking architecture for radiation-hardened by design SRAM. Asia Pacific Conference on Postgraduate Research in Microelectronics & Electronics. pp. 360–363.
  2. ^ J. M. Shea, T. F. Wong (2003). "Multidimensional Codes". Encyclopedia of Telecommunications. Wiley.
  3. ^ a b Ludek Dudácek, Ivo Vertat (2016). Multidimensional Parity Check codes with short block lengths. 24th Telecommunications Forum TELFOR. pp. 1–4.
  4. ^ A. Vadinala, G. K. Kumar (2013). Multi Dimensional Parity Based Hamming Codes For Correcting The SRAM Memory Faults Under High EMI Conditions. IACEECE International Conference. pp. 46–49.

See also

edit

📚 Artikel Terkait di Wikipedia

Error detection and correction

Block codes are processed on a block-by-block basis. Early examples of block codes are repetition codes, Hamming codes and multidimensional parity-check codes

Linear code

Low-density parity-check codes Expander code Multidimensional parity-check code Toric code Turbo code Locally recoverable code Hamming spaces over non-field alphabets

Error correction code

examples of classical block codes include Golay, BCH, Multidimensional parity, and Hamming codes. Hamming ECC is commonly used to correct ECC memory and

Convolutional code

In telecommunication, a convolutional code is a type of error-correcting code that generates parity symbols via the sliding application of a boolean polynomial

Olgica Milenkovic

Milenkovic is a coding theorist from the former Yugoslavia, known for her work in compressed sensing, low-density parity-check codes, and DNA digital

Automata theory

electronic lock, which accepts or rejects attempts to enter the correct code. Automaton An automaton can be represented formally by a quintuple M = ⟨

List of algorithms

test-set) Support Vector Machine (SVM): a set of methods which divide multidimensional data by finding a dividing hyperplane with the maximum margin between

Cuba

764 in 2021. The same United Nations agency estimated the country's Multidimensional Poverty Index of 0.003 in 2023. In 2005, Cuba had exports of US$2.4