SU1309317A1 - Device for decoding reed-solomon codes - Google Patents
Device for decoding reed-solomon codes Download PDFInfo
- Publication number
- SU1309317A1 SU1309317A1 SU853989198A SU3989198A SU1309317A1 SU 1309317 A1 SU1309317 A1 SU 1309317A1 SU 853989198 A SU853989198 A SU 853989198A SU 3989198 A SU3989198 A SU 3989198A SU 1309317 A1 SU1309317 A1 SU 1309317A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- inputs
- outputs
- multiplier
- unit
- block
- Prior art date
Links
Landscapes
- Error Detection And Correction (AREA)
Abstract
Изобретение относитс к вычислительной технике. Его использование в аппаратуре обработки и передачи го цифровой информации позвол ет повысить быстродействие устройства. Устройство дл декодировани кодов Рида- Соломона содержит входной блок 1, буферный накопитель 2, блок 3 вычислени многочлена обобщенных проверок, блок 6 вычислени многочле.на локаторов ошибок, блок 7 решени ключевого уравнени , блок 8 коррекции и блок 9 сумматоров. Введение входного генератора 4 элементов пол Галуа и входного перемножител 5, а также соответствующее выполнение блока 3 обеспечивает параллельную обработку всех символов кодового слова, котора заканчиваетс в такте приема последнего символа. 2 ил. (Л Т 21 СО О СО СО Фиг.1The invention relates to computing. Its use in the equipment for processing and transmitting digital information allows to increase the speed of the device. A device for decoding Reed-Solomon codes contains an input unit 1, a buffer storage device 2, a polynomial calculating unit 3 of the generalized checks, a polynomial calculating unit 6 for error locators, a key equation solving unit 7, a correction unit 8, and adders unit 9. Introducing the input generator 4 of the Galois field elements and the input multiplier 5, as well as the corresponding execution of block 3, provides parallel processing of all the characters of the code word, which ends in the reception cycle of the last character. 2 Il. (L T 21 CO O CO CO Figure 1
Description
113093113093
Изобретение относитс к вычислительной технике и может быть исполь- зовано в аппаратуре обработки и пере- дачи цифровой информации.The invention relates to computing and can be used in processing equipment and the transfer of digital information.
Целью изобретени вл етс повышение быстродействи устройства.The aim of the invention is to improve the speed of the device.
На фиг. 1 представлена блок-схема устройства дл декодировани кодов Рида-Соломона-, на фиг. 2 - функциональна схема одной секции блока вы- jg числени многочлена обобщенных проверок .FIG. 1 is a block diagram of an apparatus for decoding Reed-Solomon codes; FIG. 2 - a functional diagram of one section of a block for the computation of a generalized checks polynomial
Устройство дл декодировани кодов Рида-Соломона содержит входной блок 1, буферный накопитель 2, блок J5 3 вычислени многочлена обобщенных проверок (ВМОП), генератор 4 элеентов пол Галуа GF(2), перемноитель 5, блок 6 вычислени многочлена локаторов стираний (ВМЛС), блок 20 7 решени ключевого уравнени (РКУ), блок 8 коррекции и блок 9 сумматоров.A device for decoding Reed-Solomon codes contains an input unit 1, a buffer storage device 2, a generalized checks polynomial calculation unit J5 3, a generalized testing polynomial generator (WMOS), a Galois field element generator 4 GF (2), an erasure locator polynomial calculator 6 (VMLS), block 20 7 key equation solution (CGS), correction block 8 and block 9 adders.
Блок 3 вычислени многочлена обобенных проверок выполнен на n-k одиаковых секци х, где п - общее число 25 имволов слова в коде Рида-Соломона, - число его информационных симвоов . Кажда секци имеет (фиг. 2) первый перемножитель 10, первый суммаор 11, регистр 12, умножитель 13 на зо константу, второй сумматор 14, втоой перемножитель 15, третий и четвертый сумматоры 16 и 17, третий перемножитель 18, генератор 19 элементов пол Галуа GF(2).Block 3 for calculating the generalized checks polynomial was performed on n – k odiac sections, where n is the total number of 25 characters of the word in the Reed-Solomon code, is the number of its information symbols. Each section has (FIG. 2) a first multiplier 10, a first summer 11, a register 12, a multiplier 13 by a constant, a second adder 14, a second multiplier 15, a third and fourth adders 16 and 17, a third multiplier 18, a Galois generator 19 elements GF (2).
Константой, на которую осуществл ет умножение умножитель 13, вл етс дл S-й секции S-й элемент В пол Галуа.The constant by which the multiplication of the multiplier 13 is multiplied is for the S-th section the S-th element B of the Galois field.
Блоки 1,2,6-9 выполнены так же, 0 как и известные. Кроме того, устройство имеет входы 20 и выходы 21.Blocks 1,2,6-9 are made the same, 0 as well as known. In addition, the device has inputs 20 and outputs 21.
Все перемножители и сумматоры вл ютс схемами комбинационного типа и не синхронизируютс :45All multipliers and adders are combination type circuits and are not synchronized: 45
Регистр 12 выполнен на D-триггерах и синхронизируетс тактовой частотой сопровождающей входные символы. Генераторы 4 и 19 элементов пол Галуа представл ют собой сдвиговые регист- JQ ры с обратной св зью. Разр дность сдвиговых регистров, как и разр днсЗсть перемножителей, сумматоров и регистров равна а, причем а и п св заны соотношением п 2 - 1.55Register 12 is executed on D-flip-flops and is synchronized with the clock frequency accompanying the input symbols. The generators 4 and 19 of the Galois field elements are feedback shift registers JQ ry. The width of the shift registers, as well as the gap of the multipliers, adders and registers is equal to a, and a and n are related by the ratio n 2 - 1.55
Генератор тактируетс той же частотой , что и регистр 12 секции блока 3 вычислени многочлена обобщенных проверок.The generator is clocked with the same frequency as the register 12 of the section 3 of the block 3 for calculating the polynomial of generalized checks.
3535
g g
5 0 50
5 о 5 o
0 0
5five
Q 5Q 5
5five
172172
Устройство дл декодировани кодов Рида-Соломона работает следующим образом.A device for decoding Reed-Solomon codes operates as follows.
а-разр дные символы (п 2 - 1) с входов 20 поступают на входной блок 1, который передает символы, принадлежащие алфавиту GF(2) , на вход накопител 2, а символы стирани замен ютс нулем и также передаютс на вход буферного накопител 2. Кроме этого, блок 1 генерирует локаторы стираний, которые вл ютс элементами пол Галуа CF(2) и номерами поступивших символов стираний. Отсчет ведетс от максимального элемента к единичному элементу, так как кодовый многочлен поступает на входы 20 старшими коэффициентами вперед.a-bit characters (n 2 - 1) from inputs 20 are fed to input block 1, which transmits characters belonging to the alphabet GF (2), to input of accumulator 2, and erase characters are replaced by zero and are also transmitted to input of buffer storage 2 In addition, block 1 generates erase locators, which are elements of the Galois field CF (2) and the numbers of incoming erase characters. The counting is conducted from the maximum element to the unit element, since the code polynomial is fed to the inputs 20 by the leading coefficients forward.
Локаторы стираний поступают в блок 6 вычислени локаторов стираний и на перемножитель 5.The erase locators are fed to the erase locator calculation unit 6 and to the multiplier 5.
Блок 6 на основе поступающих на него локаторов стираний х, е Ij-O, где л) - число стираний, вычисл ет многочлен стираний и (z) по формулеBlock 6, based on the erasure locators x, e Ij-O, where l) is the number of erasures, calculates the erasure polynomial and (z) using the formula
6(z) П ()1+ 21 zS,6 (z) P () 1+ 21 zS,
fr-1 5 1 5fr-1 5 1 5
гдейд - S-й коэффициент многочлена (S 1,d),gdeyd - Sth coefficient of a polynomial (S 1, d),
Коэффициенты многочлена локаторов стираний, формирующиес в блоке 6, поступают в блок 3 вычислени многочлена обобщенных проверок и в блок 8 коррекции, причем в блоке 3 используютс все промежуточные значени коэффициентов 5 f( ), получаемые в каждом i-м такте, а в блоке 8 используютс только последние значени , т.е, (sn(S 1 ,d) .The coefficients of the erase locator polynomial, formed in block 6, are received in block 3 of the generalized checks polynomial calculation and in block 8 of correction, and block 3 uses all intermediate values of the coefficients 5 f () obtained in each i-th cycle, and in block 8 only the last values are used, i.e., (sn (S 1, d).
Перемножитель 5 перемножает элементы пол GF(2), вырабатываемые генератором 4 и локаторы стираний блока 1. Произведение подаетс в блок 3.The multiplier 5 multiplies the elements of the GF (2) field generated by the generator 4 and the erase locators of block 1. The work is fed into block 3.
Блок 3 на основе входных символов из блока 1 произведени с перемножител 5 и промежуточных значений коэффициентов многочлена локаторов стираний из.блока 6 вычисл ет значени коэффициентов многочлена обобщенных проверок. На каждую S-ю секцию блока 3 (фиг. 2) поступают следующие сигналы: di - входной символ из блока 1; X Е - произведение из перемножител 5; Е - S-й элемент пол Галуа, кон- стзгнта дл каткдой секции (в умножителе 13), Чд,, g; значени , получаемые из предыдущей S-1 секции блокаBlock 3, based on the input symbols from product 1 from multiplier 5 and intermediate values of the erase locator polynomial coefficients from block 6, calculates the values of the coefficients of the polynomial for generalized checks. The following signals are sent to each S-th section of block 3 (Fig. 2): di is the input symbol from block 1; X Е - product from multiplier 5; E is the Sth element of a Galois field, a cone element for a cathd section (in multiplier 13), chd ,, g; values derived from the previous S-1 block section
313093313093
3)( промежуточные значени S-1- го коэффициента многочлена локаторов стираний, поступающие из блока 6.3) (intermediate values of the S-1-th coefficient of the erase locator polynomial, coming from block 6.
Кажда секци блока 3 вычислени многочлена обобщенных проверок вычис- л ет значени коэффициента многочлена обобщенных проверок по формулеEach section of block 3 of the generalized checks polynomial calculates the values of the coefficient of the generalized checks polynomial using the formula
5--15--1
, jj
,,Ч. Т5;-В -ь а; + а,. 6,-,jB +,, Ch. T5; -B-a; + a, 6, -, jB +
5-1г - 0 а, Z:6,-,)5-1g - 0 a, Z: 6, -,)
i-1 i-1
..
В +а.B + a.
На третий умножитель 18 подаетс промежуточное значение коэффициента многочлена локаторов стираний e. The third multiplier 18 is supplied with an intermediate coefficient value of the erase locator polynomial e.
/(Ч t / (T
и элемент пол Галуа 1 с генератора 19. Результат умножени складываетс со значением Igj предьщущей секции и подаетс на вход сумматора 16, где складываетс с единичной константой , и на вход I j. J следующей секции Результат сложени умножаетс на втором перемножителе 15 на входной символ d и подаетс на вход второго сумматора 14. Предьщущее значение Tjj коэффициента многочлена обобщенных проверок, хранимое в регистре 12, умножаетс на константу и на умножителе 13 и подаетс на другой вход второго сумматора 14. Полученное на вы- ходе второго сумматора 14 значение q д передаетс на первьй сумматор 11 Значение q - из предьщущей секции умножаетс на первом умножителе 10 на значение , одинаковое дл всех секций, и подаетс на другой вход первого сумматора 11, выход которого подаетс на вход регистра 12, запоминающего значение Tj j в следующем такте. В самой первой секции на вход первого перемножител 10 вместо отсутствующего сигнала q 5 ( подаетс 1, а вместо отсутствуюп5ихand the Galois field element 1 is from generator 19. The result of the multiplication is added to the Igj value of the previous section and is fed to the input of the adder 16, where it is added to the unit constant, and to the input Ij. J of the next section The result of the addition is multiplied by the second multiplier 15 to the input symbol d and fed to the input of the second adder 14. The previous value Tjj of the coefficient of the generalized checks polynomial stored in register 12 is multiplied by a constant and multiplier 13 and fed to another input of the second adder 14 The q q output obtained at the output of the second adder 14 is transmitted to the first adder 11 The value of q — from the previous section is multiplied at the first multiplier 10 by the value that is the same for all sections, and is fed to another input of the first an adder 11 whose output is fed to the input of the register 12, the memory value Tj j in the next cycle. In the very first section, to the input of the first multiplier 10 instead of the missing signal q 5 (1 is fed, and instead of
fsi - О.fsi - O.
сигналов 6. .„ - .signals 6.. „-.
Таким образом, блоки 1-6 заканчивают обработку одновременно с приемом последнего символа кодового слова . Дл работы блоков 7, 8 нужны дополнительные такты работы декодера. Число дополнительных тактов зависит от корректирующей способности конкретного кода.Thus, blocks 1-6 finish processing simultaneously with the reception of the last character of the code word. For the operation of blocks 7, 8, additional decoder clock cycles are needed. The number of extra clocks depends on the correcting ability of a particular code.
Блок 7 на основе поступающих на него коэффициентов многочлена TgjS }+ P,d обобщенных проверок, рещает ключевое уравнение о1- Block 7, on the basis of the coefficients of the polynomial TgjS} + P, d generalized checks, arrives at it, decides the key equation
. d+HlgZ . ) (z) и (z)mod ,. d + HlgZ. ) (z) and (z) mod,
9393
0 0
5 five
20 . 30 .. 35 20 . 30 .. 35
17 . 4 . где d - число корректируюп1их символов кода.17 four . where d is the number of corrected code symbols.
Результатом решени вл етс многочлен локаторов ошибок d(z) и многочлен l(z) .The result of the solution is a polynomial of error locators d (z) and a polynomial l (z).
Блок 8 на основе коэффициентов многочленов T(z) , d (z) , d.(z), 1,(z) , поступающих с блоков 3, 6, 7, вычисл ет значени поправок У , суммируемых в блоке 9 с задержанными в накопителе 2 символами. Исправленные символы подаютс , с блока 9 на выходы 21.Block 8, based on the coefficients of the polynomials T (z), d (z), d. (Z), 1, (z), coming from blocks 3, 6, 7, calculates the values of the corrections Y, summed up in block 9 with the delayed drive with 2 characters. The corrected symbols are supplied from block 9 to outputs 21.
Таким образом, в устройстве декодировани кода Рида-Соломона достигаетс увеличение быстродействи благодар тому, что значени коэффициентов многочлена обобщенных проверок на основе промежуточных значений коэффициентов многочлена локаторов стираний и символов кодового слова вычисл ютс параллельно с вычислением многочлена локаторов стираний, формируемого в процессе приема кодового слова.Thus, the Reed-Solomon code decoding device achieves an increase in speed due to the fact that the coefficients of the polynomial coefficients of the generalized checks based on the intermediate values of the coefficients of the erase locator polynomial and codeword symbols are computed in parallel with the calculation of the erase locator polynomial generated during the reception of the codeword.
Кроме того, при перемножении многочленов дополнительно экономитс n-k тактов работы.In addition, when multiplying polynomials, n-k cycles are further saved.
Сложность блока 3 вычислени многочлена обобщенных проверок растет пропорционально первой степени n-k, а не квадрату, как в известном устройстве , так что дл больших величин n-k предлагаема структура блока 3 экономичнее , чем известна . Еще одним преимуществом можно считать отсутствие специальной схемы синхронизации, примен емой в известном устройстве дл перемножени многочленов, так как синхронизаци обеспечиваетс тактовой частотой приема входных символов.The complexity of block 3 of calculating the polynomial of generalized checks grows in proportion to the first degree nk, and not to the square, as in the known device, so for large nk values the proposed block 3 structure is more economical than known. Another advantage can be considered the absence of a special synchronization scheme used in the known device for multiplying polynomials, since the synchronization is provided by the clock frequency of receiving the input symbols.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU853989198A SU1309317A1 (en) | 1985-12-12 | 1985-12-12 | Device for decoding reed-solomon codes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU853989198A SU1309317A1 (en) | 1985-12-12 | 1985-12-12 | Device for decoding reed-solomon codes |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1309317A1 true SU1309317A1 (en) | 1987-05-07 |
Family
ID=21209733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU853989198A SU1309317A1 (en) | 1985-12-12 | 1985-12-12 | Device for decoding reed-solomon codes |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1309317A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447234B (en) * | 2007-11-27 | 2012-03-28 | 旺宏电子股份有限公司 | Memory module and writing and reading method thereof |
RU2504901C2 (en) * | 2012-04-11 | 2014-01-20 | Открытое акционерное общество "Российская корпорация ракетно-космического приборостроения и информационных систем" (ОАО "Российские космические системы") | Apparatus for iterative decoding of block turbo codes and siso decoder for realising said method |
RU2541869C1 (en) * | 2013-10-10 | 2015-02-20 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) | Reed-solomon code decoder |
-
1985
- 1985-12-12 SU SU853989198A patent/SU1309317A1/en active
Non-Patent Citations (1)
Title |
---|
IEEE Spectrum, 1979, v. 16, № 2, p. 35, fig 5. Блох Э.Л., З блов В.В. Обобщенные каскадные коды. М.: Св зь, 1976, с. 98, 109-121, рис. 3.28, 3.41, 3-4 3-3 ..4 5. * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101447234B (en) * | 2007-11-27 | 2012-03-28 | 旺宏电子股份有限公司 | Memory module and writing and reading method thereof |
RU2504901C2 (en) * | 2012-04-11 | 2014-01-20 | Открытое акционерное общество "Российская корпорация ракетно-космического приборостроения и информационных систем" (ОАО "Российские космические системы") | Apparatus for iterative decoding of block turbo codes and siso decoder for realising said method |
RU2541869C1 (en) * | 2013-10-10 | 2015-02-20 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Юго-Западный государственный университет" (ЮЗ ГУ) | Reed-solomon code decoder |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0431629A2 (en) | Mutual division circuit | |
US4567594A (en) | Reed-Solomon error detecting and correcting system employing pipelined processors | |
US5805617A (en) | Apparatus for computing error correction syndromes | |
CN101277119B (en) | Method for complexing hardware of Reed Solomon code decoder as well as low hardware complex degree decoding device | |
EP0600380A2 (en) | Method and device for detection and correction of errors in ATM cell headers | |
EP0204576A2 (en) | Apparatus for and methods of decoding a BCH code | |
US4592054A (en) | Decoder with code error correcting function | |
GB1092916A (en) | Decoding apparatus | |
CN104218957B (en) | A kind of RS decoders of low hardware complexity | |
CN101692612B (en) | Multi-specification Reed-Solomon encoding and decoding method, device and system | |
CA1213673A (en) | Burst error correction using cyclic block codes | |
SU1309317A1 (en) | Device for decoding reed-solomon codes | |
US5890800A (en) | Method and device for the division of elements of a Galois field | |
CN101834616A (en) | Implementation method of Reed-Solomon decoder | |
JPH05227041A (en) | One-bit error correcting circuit based upon crc operation | |
SU1168946A1 (en) | Device for decoding bouse-choudhurie-vhockwingam codes | |
KR930011573B1 (en) | Bch codec capable of double error correct | |
JP2681037B2 (en) | Error correction code decoding device | |
JP2678093B2 (en) | Decoding circuit | |
JP2797569B2 (en) | Euclidean circuit | |
RU2054224C1 (en) | Error-correcting decoder | |
JP2797570B2 (en) | Euclidean circuit | |
JP3230888B2 (en) | Euclidean circuit | |
SU1656689A1 (en) | Device for coding and computing parity-check sequences of noise-combatting codes for correcting error in external storage of computer | |
KR0137354B1 (en) | Error detection and correction in radio data communications |