Beruflich Dokumente
Kultur Dokumente
I. INTRODUCTION
Error correction codes are commonly used to protect
memories from so-called soft errors, which change the
logical value of memory cells without damaging the circuit.
As technology scales, memory devices become larger and
more powerful error correction codes are needed. To this
end, the use of more advanced codes has been recently
proposed. These codes can correct a larger number of errors,
but generally require complex decoders. To avoid a high
decoding complexity, the use of one step majority logic
decodable codes was first proposed in for memory
applications. Further work on this topic was then presented
in. One step majority logic decoding can be implemented
serially with very simple circuitry, but requires long
decoding times. In a memory, this would increase the access
time which is an important system parameter. Only a few
classes of codes can be decoded using one step majority
logic decoding. Among those is some Euclidean geometry
low density parity check (EG-LDPC) codes which were
used in, and difference set low density parity check (DSLDPC) codes.
A method was recently proposed to accelerate a serial
implementation of majority logic decoding of DS-LDPC
codes. The idea behind the method is to use the first
iterations of majority logic decoding to detect if the word
www.iaetsd.in
72
International Association of Engineering and Technology for Skill Development
Fig.1. One step Majority Logic Decoder for (15, 7) EGLDPC Codes
In one step majority logic decoding, initially the code
word is loaded into the cyclic shift register. Then the check
equations are computed. The resulting sums are then
forwarded to the majority gate for evaluating its correctness.
If the number of 1s received in is greater than the number
of 0s which means that the current bit under decoding is
wrong, and a signal to correct it would be triggered.
Otherwise the bit under decoding is correct and no extra
operations would be needed on it. In next, the content of the
registers are rotated and the above procedure is repeated
until codeword bits have been processed. Finally, the parity
check sums should be zero if the codeword has been
correctly decoded. In this process, each bit may be corrected
only once. As a result, the decoding circuitry is simple, but
it requires a long decoding time if the code word is large.
Thus, by one-step majority-logic decoding, the code is
capable of correcting any error pattern with two or fewer
errors. For example, for a code word of 15-bits, the
decoding would take 15 cycles, which would be excessive
for most applications.
www.iaetsd.in
73
International Association of Engineering and Technology for Skill Development
www.iaetsd.in
74
International Association of Engineering and Technology for Skill Development
www.iaetsd.in
75
International Association of Engineering and Technology for Skill Development
Timing summary
Minimum period: 3.516ns (Maximum Frequency:
284.414MHz)
Minimum input arrival time before clock: 4.711ns
Maximum output required time after clock: 55.255ns
Maximum combinational path delay: 55.733ns
4.2 RTL Schematic
www.iaetsd.in
76
International Association of Engineering and Technology for Skill Development
VI. REFERENCES
www.iaetsd.in
77
International Association of Engineering and Technology for Skill Development
www.iaetsd.in
78
International Association of Engineering and Technology for Skill Development