UA63024C2 - Turbo coder; method and device for interleaving data elements - Google Patents
Turbo coder; method and device for interleaving data elements Download PDFInfo
- Publication number
- UA63024C2 UA63024C2 UA2001063745A UA2001063745A UA63024C2 UA 63024 C2 UA63024 C2 UA 63024C2 UA 2001063745 A UA2001063745 A UA 2001063745A UA 2001063745 A UA2001063745 A UA 2001063745A UA 63024 C2 UA63024 C2 UA 63024C2
- Authority
- UA
- Ukraine
- Prior art keywords
- interleaver
- index
- sequence
- differs
- bits
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 239000011159 matrix material Substances 0.000 claims description 24
- 239000000470 constituent Substances 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 12
- 229920000106 Liquid crystal polymer Polymers 0.000 description 10
- 238000012545 processing Methods 0.000 description 7
- 238000012790 confirmation Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000009897 systematic effect Effects 0.000 description 5
- 239000002131 composite material Substances 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 125000006850 spacer group Chemical group 0.000 description 2
- 241000435574 Popa Species 0.000 description 1
- 241000159610 Roya <green alga> Species 0.000 description 1
- 241000750042 Vini Species 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 235000011389 fruit/vegetable juice Nutrition 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2789—Interleaver providing variable interleaving, e.g. variable block sizes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2703—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
- H03M13/271—Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/275—Interleaver wherein the permutation pattern is obtained using a congruential operation of the type y=ax+b modulo c
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/276—Interleaving address generation
- H03M13/2764—Circuits therefore
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
- H03M13/2771—Internal interleaver for turbo codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Detection And Correction Of Errors (AREA)
Description
Винахід взагалі стосується кодування у системах зв'язку, зокрема, переміжування для турбокодерів.
Передача цифрових даних за її природою є чутливою до перешкод, які можуть вносити помилку у передані дані. Були запропоновані схеми виявлення помилок для виявлення з максимально можливою імовірністю, чи були внесені помилки у передані дані. Наприклад, дані звичайно передають пакетами і до кожного пакету додають поле перевірки за циклічною надлишковістю (ПЦН), довжиною, наприклад, 16біт, у яке заносять контрольну суму для даних пакету. При прийомі приймач обчислює цю суму для прийнятих даних і перевіряє ідентичність результату обчислення і значення у полі ПЦН.
Якщо передані дані не використовують у реальному часі, при виявленні помилок можна вимагати повторної передачі даних, що набули цих помилок. Однак, якщо сеанс зв'язку проходить у реальному часі, як, наприклад, у телефонній мережі, у стільниковому телефоні, у віддалених відеосистемах тощо, вимагати повторної передачі неможливо.
Щоб уможливити безпомилковий прийом приймачем переданих цифрових даних навіть при виникненні помилок у процесі передачі, використовують згортаючі коди. Такі коди вносять надлишковість у дані, що передаються, і пакетують ці дані, створюючи пакети, у яких значення кожного біту залежить від попередніх біт послідовності. Отже, якщо виникає помилка, приймач може відновити втрачені дані, звертаючись до попередніх біт прийнятої послідовності даних.
Для подальшого поліпшення роботи каналу передачі використовують схеми, що включають переміжування, тобто змінюють порядок біт пакету у процесі кодування. У цьому випадку, коли при передачі перешкоди знищують якісь суміжні біти, така дія перешкод розповсюджується по усьому пакету і більш легко може бути знешкоджена у процесі декодування. Іншими удосконаленнями можуть бути багатокомпонентні коди, які передбачають більш, як одноразове паралельне або послідовне кодування пакету. Використовують, наприклад, спосіб виправлення помилок з використанням щонайменше двох паралельно працюючих згортаючих кодерів. Таке паралельне кодування називають турбокодуванням.
Оптимальне декодування багатокомпонентних кодів часто є дуже складною задачею і може вимагати багату часу, якого звичайно недостатньо при роботі у реальному часі. Для розв'язання цієї проблеми було запропоноване ітеративне декодування. Замість безпосереднього визначення нульового або одиничного значення біту, приймач призначає кожному біту значення за багаторівневою шкалою, що визначає імовірність того, що значення біту є одиниця. Звичайно така шкала, яку називають логарифмічним відношенням імовірностей (ЛВІ), надає кожному біту значення у певному діапазоні, наприклад, (-32, 31). Значення 31 означає, що біт має значення 0 з дуже високою імовірністю, а -32 - що біт з дуже високою імовірністю має значення 1. Значенню 0 відповідає невизначеність значення біту.
Дані, репрезентовані за багаторівневою шкалою, називають "м'якими даними", і ітеративне декодування є декодуванням типу "м'які дані/м'які дані", тобто таким, коли декодер одержує послідовність вхідних даних, які відповідають імовірностям значень біт, і надсилає з виходу імовірності, кориговані з урахуванням обмежень коду. Взагалі декодер, що виконує ітеративне кодування, використовує м'які дані від попередніх ітерацій для декодування даних, одержаних приймачем. При ітеративному декодуванні багатокомпонентних кодів декодер використовує результати декодування одного коду для поліпшення декодування другого коду. Якщо використовуються паралельні декодери, як при турбодекодуванні, для цього можна використати два відповідні декодери, що працюють паралельно. Таке ітеративне декодування використовують у багатьох ітераціях, доки не буде досягнута впевненість у досить точному репрезентуванні переданих даних м'якими. Біти з імовірністю, що вказує на значення 1 (наприклад, від 0 до 31 за згаданою вище шкалою) одержують значення 0, решті біт призначається 1.
Турбокодування є важливим удосконаленням прямої корекції помилок (ПКП). Існують багато варіантів турбокодування, але більшість його типів використовує операції багаторазового кодування, розділені операціями переміжування у комбінації з ітеративним декодуванням. Таке сполучення забезпечує раніше недосяжну ефективність стосовно стійкості до шумів у системі зв'язку. Зокрема, турбокодування дозволяє підтримувати зв'язок при відношенні енергії на біт до спектральній щільності енергії шумів (Еб/Мо), яке було б неприйнятним при використанні звичайних методів ПКП.
Використання турбокодування дає переваги багатьом системам зв'язку, у яких використовується ПКП, наприклад, у системах з використанням супутникових каналів, де внаслідок низької потужності передачі до землі приймальні системи мають працювати при низьких рівнях Еб/Мо.
Такі цифрові безпровідні системи зв'язку, як цифрові стільникові або персоналізовані системи, також використовують ПКП. Наприклад, стандарт 15-95 Асоціації Зв'язку (ТІА/ЕІА) для ефірного інтерфейсу і його похідні, наприклад, І5-958 у безпровідних системах зв'язку передбачає використання згортаючого кодування для підвищення підсилення при кодуванні і, отже, підвищення інформаційної ємкості системи. Систему і спосіб обробки радіочастотних сигналів згідно з 15-95 описано у патенті США 5103459, включеному сюди посиланням.
У галузі зв'язку існує потреба у постійному підвищенні підсилення при кодуванні. Було виявлено, що у послідовному переміжувачі для турбокодування у цифрових безпровідних системах дає переваги використання конгруентної випадкової послідовності. Відомо, що однорідну випадкову послідовність можна генерувати за допомогою алгоритму лінійної конгруентної рекурсії (див., наприклад, Ю. Кипшй, Те Ай ої
Сотриїєг Ргодгаттіпд (Мистецтво комп'ютерного програмування, 1969, де описано генерування псевдовипадкових чисел лінійною конгруентною рекурсією). Було встановлено також, що паралельний турбокодер з двомірним переміжувачем (тобто таким, що використовує прямокутний масив даних з рядками і колонками), дає взагалі краще підсилення, ніж паралельний турбокодер з одномірним переміжувачем (тобто таким, що працює з лінійним одномірним масивом).
Бажано ще підвищити ефективність турбокодера, причому, оскільки турбокодери є суттєво складнішими за згортаючі кодери, бажано створити менш складний турбокодер. Отже, існує потреба у нескладному двомірному переміжувачі з використанням багатьох лінійних конгруентних послідовностей.
Об'єктом винаходу є нескладний двомірний переміжувач, у якому використовуються множинні лінійні конгруентні послідовності. Згідно з одним з втілень винаходу такий турбокодер включає перший кодер, призначений приймати послідовність вхідних біт і формувати з них першу послідовність вихідних символів; переміжувач, призначений приймати послідовність вхідних біт, який має місця зберігання біт у вигляді матриці з рядками і колонками, і генератор лінійної конгруентної послідовності, призначений псевдорандо-мізовано генерувати послідовність, що визначає перемішування біт у кожному рядку пе-реміжувача; і другий кодер, призначений приймати послідовність переміжених біт від пе-реміжувача і формувати з них другу послідовність вихідних символів.
Задачею винаходу є також створення способу переміжування елементів даних, який включає операції послідовного запису елементів даних рядками у матрицю місць зберігання біт; псевдорандомізоване переупорядковування цих елементів даних у кожному рядку цієї матриці згідно з лінійною конгруентною рекурсією послідовності; і послідовне зчитування елементів даних колонками з матриці місць зберігання біт. "Згідно з іншим втіленням винаходу, переміжувач включає засоби запису елементів даних рядками у матрицю місць зберігання біт; засоби псевдорандомізованого переупорядковування цих елементів даних у кожному рядку цієї матриці згідно з лінійною конгруентною рекурсією послідовності, і засоби послідовного зчитування елементів даних колонками з матриці місць зберігання біт.
У кресленнях:
Фіг.1 - блок схема паралельно конкатенованого турбокодера,
Фіг.2 - блок-схема переміжувача, який може бути використаний у кодер фіг.1, і
Фіг.3 - блок-схема кодера безпосередніх складових, який може бути використаний з переміжувачем фіг.2.
У одному з втілень (фіг.1) паралельно конкатенований турбокодер 10 включає перший 12 і другий 14 кодери, переміжувач 16 і мультиплексор 18. Перший кодер 12 і переміжувач 16 приймають вхідні дані 20, які є звичайно інформаційними або службовими даними З виходу кодера 12 надходять систематичні символи 22, які звичайно є копіями первісних вхідних біт 20 і символів 24 парності Другий кодер 14 приймає з виходу переміжувача 16 переміжені дані 26 і з свого виходу надсилає другий набір 28 символів парності.
Систематичні символи (не показані), генеровані другим кодером 14, придушуються і відповідні виходи 22, 24, 26 першого і другого кодерів 12, 14 мультиплексуються мултьтиплексором 18, утворюючи потік 30 вихідних даних.
Для зниження швидкості кодування можна додати паралельну пару кодер-переміжувач, що поліпшить
ПКП. У іншому віріанті для підвищення швидкості швидкості кодування і поліпшення ефективності використання спектру можуть бути додані систематичні символи 22 і/або символи 23 парності
Перший і другий кодери 12, 14 можуть бути будь-якого відомого типу, включаючи блочні і згортаючі кодери (див , наприклад, роботу Вегпага 5Кіаг, Оідйа! Соттипісайопе (Цифровий зв'язок), 245-380, 1988, включену сюди посиланням). Бажано, щоб перший і другий кодери 12, 14 були згортаючими з порівняно невеликою довжиною К обмеження, наприклад, 4, оскільки зниження довжини обмеження зменшує складність відповідних декодерів (не показаних). Бажано також, щоб кодери 12, 14 були рекурсивними згортаючими кодерами (РЗК), відомими фахівцям Бажано, щоб переміжувач 16 був двомірним.
Звичайно перший і другий кодери 12, 14 формують на виході два символи парності 24 26 на кожний прийнятий біт 20 що дає швидкість кодування Н-1/2 для кожного кодера 12, 14. Однак, повна швидкість кодування для турбокодера 10 становить 1/3, оскільки систематичний біт від 14 пунктуровано.
Згідно з одним з втілень, двомірний (20) переміжувач 100 на лінійний конгруенцій-ний послідовності (ЛКП) включає чотири довідникові таблиці (ДТ) 102, 104, 106, 108, сім двовходових мультиплексорів 110, 112, 114, 116, 118, 120, 122, мультиплексор 124 з В-входом, лічильник 126 рядків перший 128 і другий 130 логічні блоки обернення біт, модуль 132 підтвердження адрес, сукупність А індексів колонок або рядків, чотири регістри 134 136, 138, 140, регістр 142 флапв початкового встановлення індексу колонок, перший 144 і другий 164 К-бітові множувачі і чотири к-бітові суматори 148, 150 152, 154. Рекурсивний генератор 156 ЛКП показаний штрихових прямокутником. Переміжувач 100 може бути використаний у паралельно конкатенованому турбокодері фіг.1, або у послідовно конкатенованому турбокодері, у яких переміжувач позицюнує коди зовнішніх і внутрішніх компонентів, як це відомо фахівцям.
Розмір М переміжувача 100 не перевищує 2" і є більшим за 2771. Добуток кількості В рядків і кількості С колонок становить 2", кількість колонок дорівнює 2кК (тобто К-ІодгС), кількість рядків АВ дорівнює 2" (тобто І-І0д2
В).
Модуль 132 підтвердження адрес може бути виконаний на дискретній ключовій логіці у вигляді зсувного регістру з суматором. Цей модуль перевіряє, чи є вхід Х меншим за добуток кількості С колонок і індексу рядка (входу У), складений з індексом колонки (входом 7), виконуючи, наприклад, операції зсуву і складання. Модуль 132 формує флаг, що вказує на недійсність адреси, тобто на те, що він містить біти, надлишкові відносно степіня 2, які мають бути відкинуті (перевіряє, чи лежить розмір переміжувача між послідовними степінями 2).
Рекурсивний генератор 156 ЛКП псевдорандомізовано переупорядковує бітові значення у кожному рядку переміжувача 100 (див нижче), приймаючи значення рядків на входах ДТ 102, 104, 106, 108 і формуючи індекс колонки (вхід 7 модуля 132 підтвердження адрес) Зрозуміло, що у паралельно конкатенованому турбокодері, подібному зображеному на фіг.1, фізичного переупорядковування елементів даних можна уникнути, використовуючи ЛКП при зчитуванні за адресами другим кодером. Перший і другий логічні блоки 128, 130 обернення біт переупорядковують рядки у переміжувачі 100 згідно з зумовленим алгоритмом обернення біт.
ДТ 102, 104, 106, 108 можуть бути будь-якими засобами зберігання, відомими фахівцям. Перша ДТ 102 містить значення коефіцієнта с, друга ДТ - значення коефіцієнта а, третя ДТ - значення а: і четверта ДТ - значення х(-1). Розмір кожної з ДТ становить г х К біт, повна потреба у пам'яті для переміжувача 100 -4/х Кк біт плюс біти регістрів 134, 136, 138, 140.
Регістр 142 приймає бітові значення, що визначають значення рядка, і спочатку у ньому встановлюють значення 2-1. З кожним циклом обробки регістр 142 дає на виході бітове значення колонки, який спочатку встановлюють не рівним 0. Отже, регістр 142 слугує для перевстановлення індексу колонки кожного разу після виконання циклів значень рядка для усіх рядків.
З кожним циклом обробки вхідний мультиплексор 110 формує значення 1 або -1 залежно від значення флагу БипВаскулагаз. Це значення надходить до суматора 146, який додає це значення до бітового значення позначеного МехіВом. Одержана сума надсилається до входу лічильника 126 рядків який формує номер рядка (початкове значення В -1 зберігається у регістрі 142) і надсилає його до другого логічного блоку 130 і до кожної з ДТ 102, 104, 106, 108. Номер рядка також надходить до сумітора 150, який додає це значення до 1 і надсилає суму до першого логічного блоку 128 і на перший вхід мультиплексора 112.
З кожним циклом обробки перший логічний блок 128 обернення біт надсилає значення на перший вхід мультиплексора 114, а другий такий блок 130 надсилає значення індексу рядка на другий вхід мультиплексора 114 і на вхід М модуля 132 підтвердження адрес. Модуль 132 приймає на вхід Х значення М. Значення, яке приймає модуль 132, залежить від збережених коефіцієнтів на вході 7. Цей модуль обчислює добуток значень
С і Ж, додає цей добуток до значення на вході 7 і перевіряє, чи є результат меншим за значення М на вході Х.
Якщо це так, модуль 132 підтвердження адрес формує на виході 1, у іншому разі - 0 Це вихідне значення є флагом, позначеним Адаг ст М, одиничне значення якого вказує, що розмір переміжувача лежить між послідовними значеннями степіня 2, і тому біти, що лежать за межами нижчого степіня 2, мають бути відкинуті.
Значення Адаг ст М надходять на селекторні входи мультиплексорів 112, 114, 120, 122. Мультиплексор 112 вибирає його першій вхід, якщо Адаг (ТТ М-1. Значення на обраному вході є виходом мультиплексора 112 і є переміженим значенням Мехійом. Мультиплексор 114 вибирає його першій вхід, якщо Адаг (т М-1.
Значення на обраному вході є виходом мультиплексора 114 і репрезентує кінцеве значення індексу рядка.
Рекурсивне генерування ЛКП відбувається таким чином З кожним циклом обробки К-бітове значення, що репрезентує коефіцієнт с, надсилається від першої ДТ 102 до к-бітового суматора 152, а від другої ДТ 104 на перший вхід мультиплексора 116 - значення а. Значення а? надсилається від третього ДТ 106 на другий вхід мультиплексора 116, який приймає на селекторний вхід флаг НипВаскжагазх. Якщо РипВасКмагав-1, мультиплексор 116 вибирає другий вхід і надсилає обране К-бітове значення до перемножувача 144. Від четвертої ДТ 108 значення х(-ї-) надходить на перший вхід мультиплексора 118, на другий вхід якого надходить К-бітове вихідне значення від мультиплексора 124. Селекторним індексом для мультиплексора 118 слугує індекс колонки, початкове значення якого встановлюють ненульовим. Якщо індекс колонки 1, мультиплексор 118 вибирає другий вхід, у іншому разі - перший вхід. Обране вхідне К-бітове значення надходить до мультиплексора 144, а вихід мультиплексора 144 - до К-бітового суматора 152. Суматор 152 є програмованим складаючим/віднімаючим пристроєм, відомим фахівцям. Коли переміжувач 100 працює у зворотному напрямку, суматор 152 віднімає значення с.
З кожним циклом обробки вихідне значення суматора 152 надходить на 2-вхід модуля 152 підтвердження адрес, а також на перший вхід мультиплексора 120 і до кожного з перших А -1-них регістрів 136 138, 140 рядка. Вихід суматора 152 надсилається також як К-бітове вхідне значення на перший вхід мультиплексора 122.
Мультиплексор 120 приймає на другий вхід значення від К-бітового суматора 154. Якщо на селекторному вході мультиплексора 120 встановлено 1, він вибирає свій перший вхід, у іншому разі вибирає другий вхід.
Селекторний вхід надходить до нульового регістру 134 рядка. Кожний з регістрів 134, 136, 138, 140 надсилає вихідне значення на відповідні входи мультиплексора 124, а нульовий регістр 134, крім того, до перемножувача 146. Мультиплексор 124 одержує значення рядка (вихід лічильника 126 рядків) на селекторний вхід. Вхід регістру рядка, обраний мультиплексором 124, залежить від значення рядка на селекторному вході. Отже, кожний з регістрів 134, 136, 138, 140 рядків відновлюється, коли значення рядка дорівнює відповідному номеру регістру рядка, а нульовий регістр 134 активується нульовим значенням флагу
Адаг Ст М.
Початкове К-бітове вхідне значення для Н-0 надходить до перемножувача 146, який також одержує вихідне значення нульового регістру 134 і, перемноживши одержані значення, надсилає результат до К- бітового суматора 154. Суматор 154 приймає також початкове К-бітове вхідне значення для Н-0. Бажано, щоб цей суматор був програмованим складаючим/віднімаючим пристроєм і виконував віднімання початкового с при роботі переміжувача 100 у зворотному напрямку. Суматор 154 складає (або віднімає) два одержаних значення і надсилає результат на другий вхід мультиплексора 122.
Мультиплексор 122 вибирає перший вхід при наявності 1 на селекторному вході, у іншому разі він вибирає свій другий вхід і надсилає дані обраного входу як кінцеве значення індексу колонки. Адреса наступного бітового значення є добутком В і цього кінцевого значення індексу рядка, одержаного від мультиплексора 122, складеним з кінцевим значенням індексу колонки, одержаним від мультиплексора 114.
У одному з втілень ЛКП з періодом М рекурсивно формується згідно з співвідношенням х(п--1)-(ах(п)--С) тоам, де а, с і М задовольняють трьом умовам (1) с і М мають бути взаємно простими, (2) а - 1 має бути кратним р, яке є будь-яким простим подільником М, причому, якщо М є кратним 4, а - 1 також має бути кратним 4, (3) х(0) є будь-яким цілим стартовим числом. Для спрощення М можна обрати рівним степіню 2. Отже, а має дорівнювати 4р я 1, а с може бути будь-яким непарним числом. Якщо вважати, що х(0) визначає початкові умови, то х(-1) визначає початкові умови для втілення ілюстрованого фіг.2. Використання інших значень не є суттєвим.
Двомірний ЛКП-переміжувач згідно з одним втілень винаходу працює за такою процедурою. Якщо розмір К переміжувача становить 2", він є прямокутною матрицею з В рядками і С колонками, причому В іс є степінями 2. Дані, що підлягають переміжуванню, записують матрицю рядок за рядком. Рядки даних спочатку піддають звичайному переміжуванню згідно з зумовленим алгоритмом, бажано, згідно з правилом обернання біт, прикладеним до індексу рядка. У кожному рядку колонки (тобто елементи даних, оскільки кожна колонка має один елемент даних на рядок) переміжують згідно з відповідною ЛКП. Бажано, щоб ЛКП для різних рядків були різними, але вони можуть бути і однаковими. Після переміжування усіх рядків, дані зчитують колонка за колонкою, одержуючи пе-реміжену послідовність Зрозуміло, що переміжувач довжиною менше 2", але більше 271, можна генерувати, видаляючи непридатні адреси з перемішувача довжини 2".
ФДМ з втілень вомірний ЛКП-переміжувач має такі параметри розмір - 32 (тобто М-5), а масив даних має ХВ ву ФВ Керемькува є масивом з чотирма рядками по вісім елементів у рядку.
ЕлежкВт и анаквповнююкве» драдекса Фидкфо) таким чином: (16), 4(17), 4(18), 4(19), Яа(20), а(21), а(22), (23) а(24), а(25), (26), а(27), 4(28), (29), а(30), а(31 еться руде жовч Я у перетворюють з оберненням біт, одержуючи (00, 10, 01, 11), і перефіженик рядк(в дає(19), (20), (21), а(22), (23) (8), ст (93 4(10), а(11), ст(12),4(13), 4(143, Я(15) а(24), а(25), (26), а(27), Я(28), 4(29), 4(30), а(31)
Оберненням біт рядки переміжувача переупорядковуються згідно з зумовленим алгоритмом обернення.
Застосування такого алгоритму забезпечує належне розділення у часі між рядками. Проте застосування обернення біт не є необхідним.
У одному з втілень перестановки ЛКП генеруються згідно з рівняннями:
Ху(па-1)-(Бх1(п)--7 ) подав; Х1(0)-3,
Ха(п--1)-(х2(п) 4-5) подав; Х2(0)-0, ху(пя1)-(5х3(п)--3) тоав; Хх3(0)-4, ха(п1)5(Ха(п) 3) подав; ХА(0)-3
Для чотирьох рядків ці перестановки матимуть вигляд (3,65,0,72,1,4),10,5,2,7,4,1,6, 3), 4, 7,6,1,0, 3,2, 553157,2,5, 0, 3, 6, 1, 43. Після перестановки колонок перший рядок стане: (3), 4(6), а(5), 4(0), а(7), а(2), аг), 4(4), другий рядок стане а(16), а(21), а(18), а(23), а(20), а(17), а(22), 4(19), третій а(12), а(15), а(14), а(9), а(8), а(11), 4(10), а(13), і четвертий
ПЕВ Деу Фея (25), а(28
Ся перестановка (делошаюу, всіх від(евідкиЯ рядках матриця переміжених даних матиме вигляд (12), 4(15), 4(14), (9), 4(8), (11), (10), 4(13), (31), а(26), а(29), (24), а(27), 4(30), а(25), (28)
Дані з переміженої матриці зчитують колонками і одержують переміжену послідовність (4(3), 4(16), 4(12), а(31), а(6), а(21), 4(15), а(26), а(5), а(18), а(14), а(29), а(0), а(23), а(9), а(24), а(7), а(20), а(в), а(27), а(2), 4(17), а(11), а(30), а(г1), а(22), а(10), а(25), 4а(4), а(19), а(13), 4(28)). Якщо переміжувач має мати довжину З0, послідовність скорочують, видаляючи 4(30), 4(31) і одержуючи (4(3), 4(16), 4(12), а(6), 4(21), а(15), а(26), 4(5), а(18), 4(14), а(29), а(0), а(23), а(9), а(24), а(7), а(20), а(8), а(27), а(2), а(17), 4(171), (11), а(22), 4(10), а(25), 4(4), а(19), а(13), Я(28)).
При використанні у переміжувачі ЛКП їх можна генерувати у прямому або зворотному напрямках для оптимізації роботи декодерів типу МАР у турбодекодерах У одному з втілень генерування зворотної послідовності визначається рівнянням
Х(п)-авх(п--1)-с)тоа м де ДВ - (М/2) -1
Слід відзначити, що р репрезентує коефіцієнт р втілення (фіг.2).
Отже, генерування ЛКП вимагає що кожний переміжувач унікально визначався ЗА параметрами (А - кількість рядків. Для цього необхідно мати перемножувач Іодг(С)хіод2(С) Завдяки операціям за модулем не виникає необхідності генерувати біти, розташовані над місцем /одг(С). Для зберігання А проміжних конгруентних послідовностей достатньо мати один набір А регістрів.
Змінюючи параметри х(0) а р для кожного рядка можна одержати багато різних послідовностей перестановок. Бажано шукати оптимуму параметрів переміжувача для конкретних турбоходів.
Фіг.З ілюструє кодер 200 безпосередніх складових згідно з одним з втілень, оп-тимізований для використання певного турбокоду для цифрових безпровідних систем зв'язку з ПДКУ. Кодер 200 включає сім суматорів (той 2) 202 204, 206, 208, 210, 212, 214 / три вузли 216, 218, 220 виділення біту (далі - ВВБ) ВВБ 216, 218, 220 можуть бути виконані як трибітовий регістр або як три однобітові регістри. Суматори 202, 204, 206, 208, 210, 212, 214 за той 2 з'єднані з ВВБ 216 218, 220 таким чином, щоб створити бажаний набір каналів зворотного зв'язку. Суматор 202 приймає вхідний біт і з'єднаний з ВВБ 216 і суматорами 204, 206, ВВБ 216 з'єднаний з ВВБ 218 і з суматорами 208, 210, суматор 210 - з суматором 202, суматор 204 - з суматором 212, суматор 206 - з суматором 208 і суматор 208 - з суматором 214 ВВБ 220 має з'єднання з суматорами 210, 214 і 212. Суматори 212, 214 виводять, відповідно, перший і другий символи.
Відомо, що виправлення помилок у декодері безпосередніх складових можна характеризувати вхідною і вихідною вагами помилок (див. наприклад, 5 Вепедейно, с Мопіогвзі, Опмеїйпд Титбо Содев: оте Незиїйв оп
Рагаїе! Сопсаїепайпду Содіпд 5спетезв, 42 ІЕЕЕ Тгапз Іпо Тнеогу, 409-28, Маг 1996). Вхідною вагою помилки є кількість хибних біт, а вихідною вагою помилки є кількість хибних кодових символів. Помилка з вхідною вагою 1, що починається з стану з усіма нулями, ніколи не повернеться (1 буде проходити нескінченним циклом у зсувному регістрі, накопичуючи при цьому вхідну вагу) Це зумовлюється наявністю рекурсивної частини декодера, тобто зворотного зв'язку. Було показано, що у такій схемі при обробці турбокодів з високим відношенням сигнал/шум переважають помилки з вхідною вагою 2. Рівень помилок турбокоду можна точно прогнозувати за допомогою так званої асимптоти ефективної вільної відстані. Ефективною вільною відстанню є мінімальна вихідна вага усіх помилок з вхідною вагою 2. Помилки з вхідною вагою 2, які мають малу довжину, звичайно спричиняють мінімум дистанційних помилок. Для кодера фіг.3 поліном зворотного зв'язку має вигляд 1402-03, а можливі помилки з вхідною вагою 2 мають форму ОК1-07), де |(-1,2, 3, ...Аа Кк - довільний зсув у межах 0, ..., К-7| (К - довжина переміжувача) Це можна легко перевірити, аналізуючи ко- дувальну матрицю кодера 200.
У втіленні фіг.3 розмір переміжувача позначено К, а у втіленні фіг.З - М, хоча це взагалі не має значення.
Якщо форма помилок 01-07) після першого декодера спричиняє мінімальні дистанційні помилки, турбопереміжувач відобразить дві помилки (ОК, ОК-7) у дві позиції (О", ОО") Якщо |т-п|:7 або |т-п)| є кратним 7, імовірною є низькодистанційна помилка після другого декодера. Головною функцією турбопереміжувача є запобігання такому відображенню. Бажано щоб переміжувач відображав у першому вимірі сукупності біт, вразливі до низькодистанційний помилок у сукупності біт які дають велику вихідну вагу у другому вимірі. Отже, при проектуванні переміжувача бажано намагатись відвертати відображення бітових пар розташованих з індексами (К, Ка-7|) у бітові пари з індексами (5--7І), особливо для малих значень | і Її. Такі помилки наведено у табл.1. Для кожної помилки наведено вихідну вагу парності для коду з безпосередніми складовими, з використанням пунктуацій для швидкостей 1/2/1/3 11/4 турбокодування у прямому каналі згідно з 15-95.
Таблиця 1
Помилки з вхідною вагою 2 вході вході складової для нин ни Ес 1/3 1/4 Ооч-о) | 8 |з |6|в8 очі-оУ | 15 | 6 | то | 16
Якщо переміжувач включає відображення 2-»2 вхідних ваг у формі 0(1-07)-и5О(1-- 07), то композитна вихідна вага результуючої помилки буде 2143-3-8 для тур-бокоду швидкості 1/2 У цьому обчисленні вага систематичних біт (2) складалась з вагою відповідної парності від двох кодерів (З і 3) Подібним чином, якщо переміжувач включає відображення 2-52 вхідних ваг у формі 0К(1--07)-50к2(1-0143, то композитна вихідна вага результуючої помилки буде 213-68-11 для турбокоду швидкості 1/2 або 2--6-4-10-18 для турбокоду швидкості 1/3.
Крім того, помилка з вхідною вагою 4 у складовій з низькою вихідною вагою може відображатись у дві помилки з вхідною вагою 2 і низькою вихідною вагою у другому вимірі. Такі відображення позначають 4-542,21
Хоча не існує завершеного рішення для помилок з вхідною вагою 4 у безпосередній складовій, наведена далі таблиця містить деякі помилки для кодера 200 при його використанні як першого кодера безпосередніх складових для турбокодів прямого каналу цифрової безпровідної системи зв'язку з ПДКУ згідно з 15-95.
Якщо, наприклад, переміжувач містить відображення вхідної ваги типу 4-22) у формі р(т1-05-0и405)- ре(1407ре(1-07)) то композитна вихідна вага результуючої помилки буде 4233-12 для турбокоду швидкості 7». Композитна помилка тут не набагато гірша, ніж для відображення рц(1-07)-и502(1-015У, яке дає композитну вихідну вігу 11. Головною задачею схеми є така оптимізація параметрів переміжувача, яка усуває такі відображення або, принаймні мінімізує їх кількість. У ідеальному випадку найбільш важливо усувати або мінімізувати такі відображення, які дають найнижчу вихідну вагу. При проектування переміжувача певної довжини (наприклад, 1530) можна оптимізувати його параметри з мінімізацією відображень обох типів (тобто 2-52 і 4-» (2,23). Це дозволяє оптимізувати перемішувач даного розміру. Слід відзначити можливість ефективної пунктуації переміжувача розміру 2" до будь-якого розміру вище 2" але це ускладнює оптимізацію відносно вагових відображень типу 4-5(2,2).
Таблиця 2
Помилки з вхідною вагою 4 п - І|Довжина складової омилка на вході на вході 1/2| 1/3 | 1/4 оо-очочо) | 5 | 2 | 4 | б ооф-00р0) | 6 |г2|4|8 ооф-очзочо) | 8 |2|4|8 ооф-0-рреї | 9 |2 | 4 | в8 ооо | ті | 2 | 8 | 12 оочЧ1-0ч00) | 4 | з | 4 | в оочі-0-009 | 6 |З | «а4|8 о0оч1-0-05.01 | 70 | з | 4 | 8 ооЧ1-0ч0505) | 9 |з | 8 01-05 0505) | їз | з | 8 | 12 ооо ряо5 | їз | з | 8 | 12 ооч1-050и.05) | 15 | з | 8 | 12 ооЧ1-0ч0502) | 15 | з | 8 | 12 ооо ооре | їз | з | 8 | 14 ооч1-0-07-03). | 15 | з | 8 оо(-0ч002) | 8 |4|а4|8 ооЧ-0ч00") | 9 | 4 | 6 ооо 0оу | 11 | 4 | 8 ооч1-007403). | 11 | 4 | 8 | 10 ооЧ1-0500 | "1 | 4 | 8 | 10 ооЧ-0500 | 9 | 4 | 8 | 12 ооо 030) | 10 | 4 | 8 | 12 ооч1-0-05.05) | 70 | 4 | 8 | 12 оос130507303) | їз | 4 | 8 | 12 ооЧІ-0ч0ч0) | їз | 4 | 8 | 12 ооо р2рв | їз | 4 | 8 | 12 ооч1-0-0502) | їз | 4 | 8 | 12 ооЧ1-0505.03 | 17 | 4 | 8 | 12 ооч1-050502) | 17 | 4 | 8 | 12 ооч1-03-07505) | 712 | 4 | 8 | 14 ооч1-00702) | 712 | 4 | 8 | 14 ооо оов | 15 | 4 | 8
Собазотоляов) | 15 | 416 14)
Солзоеоляох) | 716 141 814.
Таблиця З
Коефіцієнти двомірного переміжувача з використанням ЛКП хо) | А | є | («03 | а | с | х0О | а | с | х0) | а | с 714 | 9 | 11 | 30 | 29 | 9 | 24 | 45 | 63 | 95 | 61 | 63 6 | 1 | 13 | 17 | 29 | 5 | 41 | 53 | 53 | 7 | 7121 | 119 6 | 1 | 11 | 19 | 9 | 1 | 46 | 53 | 41 | 29 | ліз | 105 6 | 5 | 13 | 719 | 17 | зі | 9 | 29 | їз | 16 | 25 | 97 7 | 9 | 11 | 11 | 13 | 719 | 15 | 37 | 39 | 69 | з3 | з3 1 9 | 5 | 18 | 13 | 21 | 13 | 53 | 19 | лі | 93 | 81 4 9 | 5 | го | 9 | 27 | 28 | 1 | 57 | 34 | 1 | "7 714 | 5 | 9 | 31 | 21 | 11 | 20 | 29 | 5 | 100 | 695 | 75 711 | 13 | 9 | 29 | 21 | 17 | т | 49 | 39 | 695 | ліз | 39 12 | 9 | 5 | 26 | 25 | 21 | 15 | з3 | зі | 40 | 23 | 15 ло | 9 | 1 | 19 | 29 | 715 | 9 | з3 | 19 | 13 | з3з3 | 19 1 | 5 | 5 | 1 | 1 | 27 | 61 | 37 | 45 | 84 | 9 | 127 2 | 5 | 11 | то | 5 | 29 | 9 | 37 | 19 | 16 | 17 | 81 4 | 9 | 71 | 23 | 29 | 29 | 12 | 37 | 53 | 85 | 117 | 69 715 | 9 | 5 | 26 | 1 | 15 | 5 | 13 | 28 | 103 | м | 73 9 | 1 ЇЇ 9 | 11 | 21 | 11 | 9 | 49 | зі | 91 | уз | з5 6 | 13 | 9 | ло | 21 | т1з | 26 | 2і | м | 47 | 125 | з
7 | 1 | 7 | 24 | 9 | 5 | 712 | 25 | 37 | 120 | 37 | оз | 5 | 9 | 10 | 21 | 25 | ло | 29 | 59 | 19 | їз | 7 0 | 9 | 1 | 28 | 21 | 27 | 16 | 13 | 15 | 49 | 121 | т" 710 | 5 | 1 | їз | 25 | 9 | 29 | 27 | 4 | 4 | 97 | 97 9 | 9 | 13 | 21 | 13 | з | зз3 | 5 | з3 | їз | 01 | 7 3 | 9 | 1 | 4 | 17 | 27 | зо | 49 | 5 | 73 | 9 | 77 711 | 9 | з | 28 | 29 | 29 | о | 21 | 47 | 102 | 1 | т
Був проведений пошук двомірних переміжувачів з ЛКП, добре придатних для пунктуації, розміру 2 - для втілення фіг.3. Табл.3 містить початкові результати цього пошуку. Для кожного розміру переміжувача наведено кількість рядків і колонок разом з коефіцієнтами х(0), а і с. Для спрощення для усіх переміжувачів кількість рядків була обраною рівною 32.
Таблиця 4
Коефіцієнти двомірного переміжувача з використанням ЛКП (продовження) хо) | А | є: | а | с | хх) | а | с | хо 73 | 53 | 59 | 75 | 217 | 223 | 9 | 85 | 969 46 | 29 | 91 | 89 | 41 | 457 | 363 | 981 | 59 246 | 81 | 89 | 178 | з2і | 1 | 444 | 673 | 5 6 | 129 | 73 | 465 | 85 | 261 | 505 | 981 | 259 118 | 69 | 119 | 24 | 185 | 109 | 728 | 845 | 447 181 | 189 | 235 | 158 | 45 | 211 | 453 | 9 | 885 89 | 13 | 159 | з5 | 85 | 289 | 201 | їз | 175 75 | 253 | 183 | 79 | 365 | 221 | 592 | 69 | 829 7195 | 149 | 71 | 257 | 449 | 337 | 803 | 909 | з85 0 | 161 | 151 | 479 | 9 | 23 | 627 | 289 | 97 162 | 165 | 35 | 442 | 481 | 7 | 01 | 69 | 537
У іншому втіленні коефіцієнт а може не дорівнювати 1. Відповідно, був проведений пошук двомірних переміжувачів з ЛКП розміром 2", добре придатних для пунктуації.
Рівняння для прямої і зворотної рекурсп ЛКП, відповідно, мають вигляд х(п'-1)-(х(п)--С) том І Х(п)-(х(п--1)-
С)тоам
Таблиця 4 містить початкові результати цього пошуку
Таблиця 4
Коефіцієнти двомірного переміжувача з ЛКП 1 | 71111310 5/|-1-|-|- 1-1 -1-1 9 | 714 | 1 | 1 | 1-11 -/|-|-1- 1 -1-1
11 | 15 | 5 | їз | л4 | 1 |- | - | - | - ! -! - 1 - 1 | 5 | їз | 27 | з | 23 | - | - | -| - |! -! - 1 - 1 | 5 | 3 | 17 | 9 | 25 | -| - |! - | -/Ї - | - | - 1 - 6 | 7 | з | їз | 8 | з | - | - | - | - | -! - 1 - 6 | 15 | 25 | 5 | 4 | 1 |- | - |- | - ! -! - 1 - 12 | м. | з | 23 | 57 | бі | - | - | -| - | - ! - 1 - 14 | 13 | 2 | 19. | 0 | 5 | - | - | - | - ЇЇ - | - | - | - | 7 | 1 | їз | 60 | 49 | - | - | - | - | - | - 1 - | - 13 | 15 | 8 | 5 | 1 | 9 | - | - | - | - | - ! - 1 - | - 4 | 5 | 25 | 9 | 47 | 5 | - | - | - | - | - ! - 1 - | - 15 | 5 | 14 | 9 | го. | 25 | - | - | - | - | - | - | -| - 14 | 5 | "| 23 | 34 | 19 | - | - | - | - | - | - 1 - | - 12 | з | 17 | їз | 46 | 1 | - | - | - | - ! -! - 1 -
З | 15 | 19 | 13 | 52 | 13 | - | - | - | - | - | - 1 - | - 14 | 13 | 4 | 39 | 6 | 75 | - | - | - | - /Ї - | - | -| - 8 | 19 | 717 | 35 | 35 | 67 | - | - | - | - | - | - 1 - | - 12 | 15 | 24 | 27 | 48 | м | - | - | -| - |! - ! - 1 - 14 | чпо| 28 | 23 | 57 | 47 | - | - | -| - |! -! - 1 - 14 | "| 29 | 19 | 59 | 35 | - | - | - | - | - | - | - | - 6 | 27 | 712 | 51 | 24 | лоз | - | - | - | - | - | - 1 - | - 7 | 31 | 714 | 59 | 29 | "5 | - | - | - | - | - | - 1 - | - 2 | 23 | 4 | 47 | 9 | вч | - | - | -| - |! - ! - 1 - 1 | 27 | 2 | 51 4 | юю | -| - | - | -/Ї - | - | - | - 2 | 15 | 6 | 27 | п. | 5 | - | - | -| - |! - ! - 1 - 13 | 7 | 26 | 1 | 52 | 19 | - | - | - | - | - ! - 1 - | - 9 | з | 19 | з | 38 | 7 | - | - | - | - | - ! - 1 - | - 12 | м | 24 | 23 | 49 | 47 | -| - | - | - | - | -| -ц,| - 14 | 15 | 28 | з! | 56 | 63 | - | - | - | - | - | - 1 - | - 11 | 719 | 22 | з5 | 45 | 67 | - | - | -| - | - ! - 1 - | - 12 | 15 | 25 | 27 | бо | м | - | - | - | - | - | - | - 1 -
Зрозуміло, що випадки, коли у табл.4 а-1 не погіршують якості роботи переміжувача, а спрощення, які дає а-1 є суттєвими, наприклад, стають не потрібними друга і третя ДТ (фіг.2) для збереження а і а? а також зникає потреба у к-бітових перемножувачах. Як можна бачити з табл..4 для визначення рядків перемножувача достатньо визначити початкове х(-1) і адитивну константу с. Оскільки табл..4 містить лише початкові результати, коефіцієнти для переміжувачів більших розмірів не були визначені.
Отже, був описаний новий удосконалений переміжувач з використанням ЛКП. Хоча описані втілення призначені для застосування у стільникових системах зв'язку, зрозуміло, що винахід може знайти застосування у будь-яких інших системах зв'язку, включаючи супутникові системи. Описані втілення можуть бути використані для кодування при передачі як інформаційних, так і голосових даних Усі дані, команди, інструкції, інформація, сигнали, біти, символи і елементи коду можуть бути фізично втілені напругами, струмами, електромагнітними хвилями, магнітними полями або частинками, оптичними полями або частинками або будь-якими їх комбінаціями.
Описані вище логічні блоки і операції алгоритмів можуть бути реалізовані або виконані цифровим процесором сигналів, спеціалізованими інтегральними схемами (АБІС), на діскретній ключовій або транзисторній логіці, іншими компонентами обладнання, наприклад, регістрами і схемами ПУПО, процесором, програмованим у ПЗП або іншим програмованим модулем і процесором. Бажано використовувати мікропроцесор, але можна застосувати також звичайний процесор, контролер, мікроконтролер або скінченний автомат. Програмний модуль можна зберігати у пам'яті з довільним доступом, у флеш-пам'яті, регістрах або у інших відомих пристроях пам'яті.
Наведений опис дозволяє, використовуючи концепції винаходу, вносити різні зміни у описані втілення, які не обмежують винаходу, визначеного Формулою
Й 10 15. ваше чи - кодЕР. я ш - і о і» т печує, т- ос, ж виш, ІД 18 пЕРЕМІЖУВАч МВ кодев | Сай
ФІГ. 1
7 нн в ЛК т Є це р оінутнюкня
ПОМ ім, З сш. нік їх Яд с; вини Тр, нки ШИ АНА піп Хічиля кети. Рі
Неож ОН ої ля г сли в ниток КП юю пвожескюьй Пеяк РОКУ, рих,
Бейси рт М КО їх соки і іх як ї-е а пан и ча попа а оо о я : Ши кА М ль а
Я гу Те т Її сеї он НАС ТО . у , вина ж и и пи НИ вто Ек рулеюм | МІ мо :
Н сок р, вино ке ни и : ами Бод ння ОІВ ДН :
Н пан Я пен ДЕН | .
НИ сен ет : яма і ренні НЕ ! й і ще : 7 пен нн и НН : ! ше ни нн й ; З айх : ооо но шя шт поміг ходоття
ФГ. за ша мух оту і
Н коси ши і
Те ! нн пен ок вн Дню! шк ши шк іа МЕ М ПН БІ Ї нний --АА---4 мини я й - се ; ре 2 са роя ! | де Я "жа і нення ння нення няття т Ян і по и
ФГ, З
Claims (31)
1. турбокодер, який включає: - перший кодер, призначений приймати послідовність вхідних бітів і формувати з них першу сукупність вихідних символів, - перемежувач, призначений приймати послідовність вхідних бітів, який включає місця розміщення бітів, побудовані у вигляді матриці з рядками і колонками, і генератор лінійної конгруентної послідовності, призначений псевдорандомізовано формувати послідовність для перемежування бітів у кожному рядку матриці, і - другий кодер, призначений приймати послідовність перемежованих бітів і формувати з них другу сукупність вихідних символів.
2. Турбокодер за п.1, який відрізняється тим, що послідовність для перемежування бітів включає рекурсію лінійної конгруентної послідовності, генеровану згідно з рівнянням: х(п 1): (ах(п) ж сС)тос м, де п - індекс часу, х(п) - індекс колонки у час, визначений індексом п, а, с і М - цілі, причому М - період послідовності, і мають бути витримані умови: (Ї) с і М є взаємно простими; (ії) а -1 є кратним р, яке є будь-яким простим дільником М; (ії) якщо М є кратним 4, а -1 також має бути кратним 4; (їм) х(0) є будь-яким цілим початковим індексом колонки.
3. Турбокодер за п. 2, який відрізняється тим, що а - 1.
4. турбокодер за п. 2, який відрізняється тим, що період М є степенем 2.
5. Турбокодер за п. 2, який відрізняється тим, що х(0) дорівнює 0 для кожного рядка перемежувача.
6. Турбокодер за п. 1, який відрізняється тим, що додатково включає мультиплексор, з'єднаний з першим і другим кодерами і призначений приймати від них, відповідно, першу і другу сукупності вихідних символів.
7. турбокодер за п. 1, який відрізняється тим, що перемежувач додатково включає щонайменше один модуль для перемежування рядків перемежувача згідно з зумовленим алгоритмом обернення бітів.
8. Турбокодер за п. 1, який відрізняється тим, що послідовність для перемежування бітів включає рекурсію лінійної конгруентної послідовності, генеровану згідно з рівнянням: х(п) - (асменх(п -- 1) - С)тоа м, де п - індекс часу, х(п) - індекс колонки у час, визначений індексом п, а, с і М - цілі, причому М - період послідовності, і мають бути витримані умови: (Ї) с і М є взаємно простими; (ії) а -1 є кратним р, яке є будь-яким простим дільником М; (ії) якщо М є кратним 4, а -1 також має бути кратним 4; (їм) х(0) є будь-яким цілим початковим індексом колонки.
9. Турбокодер за п. 8, який відрізняється тим, що а - 1.
10. Ттурбокодер за п. 8, який відрізняється тим, що період М є степенем 2.
11. турбокодер за п. 8, який відрізняється тим, що х(0) дорівнює 0 для кожного рядка перемежувача.
12. Спосіб перемежування елементів даних, який включає операції: - записування елементів даних рядками у матрицю місць розміщення бітів, - псевдорандомізоване переупорядкування елементів даних у кожному рядку матриці місць розташування бітів згідно з рекурсією лінійної конгруентної послідовності, і - зчитування елементів даних колонками з матриці місць розміщення бітів.
13. Спосіб за п. 12, який відрізняється тим, що додатково включає операцію генерування рекурсії лінійної конгруентної послідовності згідно з рівнянням: х(п 1): (ах(п) ж с) тоам, де п - індекс часу, х(п) - індекс колонки у час, визначений індексом п, а, с і М - цілі, причому М - період послідовності, і мають бути витримані умови: (Ї) с і М є взаємно простими; (ії) а -1 є кратним р, яке є будь-яким простим дільником М; (ії) якщо М є кратним 4, а -1 також має бути кратним 4; (їм) х(0) є будь-яким цілим початковим індексом колонки.
14. Спосіб за п. 13, який відрізняється тим, що а - 1.
15. Спосіб за п. 13, який відрізняється тим, що період М є степенем 2.
16. Спосіб за п. 13, який відрізняється тим, що х(0) дорівнює 0 для кожного рядка.
17. Спосіб за п. 12, який відрізняється тим, що додатково включає операцію перемежування рядків матриці місць розміщення бітів згідно з зумовленим алгоритмом обернення бітів.
18. Спосіб за п. 12, який відрізняється тим, що додатково включає операцію генерування рекурсії лінійної конгруентної послідовності згідно з рівнянням: х(п) - (асмех(п я 1) - С)тоа м, де п - індекс часу, х(п) - індекс колонки у час, визначений індексом п, а, с і М - цілі, причому М - період послідовності, і мають бути витримані умови: (Ї) с і М є взаємно простими; (ії) а -1 є кратним р, яке є будь-яким простим дільником М; (ії) якщо М є кратним 4, а -1 також має бути кратним 4; (їм) х(0) є будь-яким цілим початковим індексом колонки.
19. Спосіб за п. 18, який відрізняється тим, що а - 1.
20. Спосіб за п. 18, який відрізняється тим, що період М є степенем 2.
21. Спосіб за п. 18, який відрізняється тим, що х(0) дорівнює 0 для кожного рядка.
22. Перемежувач, який включає: - засоби записування елементів даних рядками у матрицю місць розміщення бітів, - засоби псевдорандомізованого переупорядкування елементів даних у кожному рядку матриці місць розташування бітів згідно з рекурсією лінійної конгруентної послідовності, і - засоби зчитування елементів даних колонками з матриці місць розміщення бітів.
23. Перемежувач за п. 22, який відрізняється тим, що генерування рекурсії лінійної конгруентної послідовності здійснюється згідно з рівнянням: Х(п -1)- (ах(п) - С)тпоам, де п - індекс часу, х(п) - індекс колонки у час, визначений індексом п, а, с і М - цілі, причому М - період послідовності, і мають бути витримані умови: (Ї) с і М є взаємно простими; (ії) а -1 є кратним р, яке є будь-яким простим дільником М; (ії) якщо М є кратним 4, а -1 також має бути кратним 4; (м) х(0) є будь-яким цілим початковим індексом колонки.
24. Перемежувач за п. 23, який відрізняється тим, щоа - 1.
25. Перемежувач за п. 23, який відрізняється тим, що період М є степенем 2.
26. Перемежувач за п. 23, який відрізняється тим, що х(0) дорівнює 0 для кожного рядка матриці місць розміщення бітів.
27. Перемежувач за п. 22, який відрізняється тим, що додатково включає засоби перемежування рядків матриці місць розміщення бітів згідно з зумовленим алгоритмом обернення бітів.
28. Перемежувач за п. 22, який відрізняється тим, що генерування рекурсії лінійної конгруентної послідовності здійснюється згідно з рівнянням: х(п) - (ахмех(п я 1) - С)той м, де п - індекс часу, х(п) - індекс колонки у час, визначений індексом п, а, с і М - цілі, причому М - період послідовності, і мають бути витримані умови: (Ї) с і М є взаємно простими; (ії) а -1 є кратним р, яке є будь-яким простим дільником М; (ії) якщо М є кратним 4, а -1 також має бути кратним 4; (їм) х(0) є будь-яким цілим початковим індексом колонки.
29. Перемежувач за п. 28, який відрізняється тим, щоа - 1.
30. Перемежувач за п. 28, який відрізняється тим, що період М є степенем 2.
31. Перемежувач за п. 28, який відрізняється тим, що х(0) дорівнює 0 для кожного рядка матриці місць розміщення бітів.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/205,511 US6304991B1 (en) | 1998-12-04 | 1998-12-04 | Turbo code interleaver using linear congruential sequence |
PCT/US1999/028580 WO2000035103A1 (en) | 1998-12-04 | 1999-12-03 | Turbo code interleaver using linear congruential sequences |
Publications (1)
Publication Number | Publication Date |
---|---|
UA63024C2 true UA63024C2 (en) | 2004-01-15 |
Family
ID=22762490
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
UA2001063745A UA63024C2 (en) | 1998-12-04 | 1999-03-12 | Turbo coder; method and device for interleaving data elements |
Country Status (15)
Country | Link |
---|---|
US (2) | US6304991B1 (uk) |
EP (2) | EP2267903A3 (uk) |
JP (2) | JP4723089B2 (uk) |
KR (1) | KR100711326B1 (uk) |
CN (1) | CN1202625C (uk) |
AU (1) | AU763873B2 (uk) |
BR (1) | BR9915926A (uk) |
CA (1) | CA2353455C (uk) |
HK (1) | HK1045030B (uk) |
ID (1) | ID30087A (uk) |
MX (1) | MXPA01005573A (uk) |
NO (1) | NO20012708L (uk) |
RU (3) | RU2235424C2 (uk) |
UA (1) | UA63024C2 (uk) |
WO (1) | WO2000035103A1 (uk) |
Families Citing this family (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19736626C1 (de) * | 1997-08-22 | 1998-12-10 | Siemens Ag | Verfahren zur Datenübertragung in einem digitalen Übertragungssystem bei paketvermitteltem Dienst |
EP0998087A1 (en) * | 1998-10-30 | 2000-05-03 | Lucent Technologies Inc. | Multilevel transmission system and method with adaptive mapping |
EP0998045A1 (en) * | 1998-10-30 | 2000-05-03 | Lucent Technologies Inc. | Digital transmission system and method |
US6871303B2 (en) * | 1998-12-04 | 2005-03-22 | Qualcomm Incorporated | Random-access multi-directional CDMA2000 turbo code interleaver |
US6304991B1 (en) * | 1998-12-04 | 2001-10-16 | Qualcomm Incorporated | Turbo code interleaver using linear congruential sequence |
KR100306282B1 (ko) | 1998-12-10 | 2001-11-02 | 윤종용 | 통신시스템의인터리빙/디인터리빙장치및방법 |
US6625234B1 (en) * | 1998-12-10 | 2003-09-23 | Nortel Networks Limited | Efficient implementations of proposed turbo code interleavers for third generation code division multiple access |
US6463556B1 (en) * | 1999-01-04 | 2002-10-08 | Motorola, Inc. | Method and apparatus for interleaving in a communication system |
EP1650873B1 (en) * | 1999-02-26 | 2011-05-11 | Fujitsu Ltd. | Turbo decoding apparatus and interleave-deinterleave apparatus |
CA2266283C (en) * | 1999-03-19 | 2006-07-11 | Wen Tong | Data interleaver and method of interleaving data |
JP3574405B2 (ja) * | 1999-04-06 | 2004-10-06 | サムスン エレクトロニクス カンパニー リミテッド | 2次元インタリービング装置及び方法 |
FR2792476B1 (fr) * | 1999-04-13 | 2001-06-08 | Canon Kk | Procede de type arq pour procede de transmission utilisant des turbo-codes, et dispositif associe |
CA2268853C (en) * | 1999-04-13 | 2011-08-02 | Wen Tong | Rate matching and channel interleaving for a communications system |
US6543013B1 (en) * | 1999-04-14 | 2003-04-01 | Nortel Networks Limited | Intra-row permutation for turbo code |
US6377607B1 (en) * | 1999-05-13 | 2002-04-23 | Qualcomm Incorporated | System and method for performing accurate demodulation of turbo-encoded signals via pilot assisted coherent demodulation |
AU752231B2 (en) | 1999-05-19 | 2002-09-12 | Samsung Electronics Co., Ltd. | Turbo interleaving apparatus and method |
DE20023165U1 (de) * | 1999-07-08 | 2003-03-06 | Samsung Electronics Co., Ltd., Suwon, Kyonggi | Vorrichtung zum Steuern eines Demultiplexers und eines Multiplexers für die Ratenabstimmung in einem Mobilkommunikationssystem |
EP1085660A1 (en) * | 1999-09-15 | 2001-03-21 | TELEFONAKTIEBOLAGET L M ERICSSON (publ) | Parallel turbo coder implementation |
US6687870B1 (en) * | 1999-09-23 | 2004-02-03 | Qualcomm, Incorporated | Method and apparatus for interleaving for information transmission or storage applications |
US6628723B1 (en) | 1999-10-15 | 2003-09-30 | Cisco Technology | Coding rate reduction for turbo codes |
JP3399904B2 (ja) * | 2000-03-17 | 2003-04-28 | 松下電器産業株式会社 | インタリーブアドレス生成装置 |
US6952454B1 (en) | 2000-03-22 | 2005-10-04 | Qualcomm, Incorporated | Multiplexing of real time services and non-real time services for OFDM systems |
KR100360251B1 (ko) * | 2000-03-29 | 2002-11-08 | 엘지전자 주식회사 | 통신시스템의 핸드오프 처리장치 및 이동체 수신기 |
US6854077B2 (en) * | 2000-08-05 | 2005-02-08 | Motorola, Inc. | Apparatus and method for providing turbo code interleaving in a communications system |
US7242726B2 (en) | 2000-09-12 | 2007-07-10 | Broadcom Corporation | Parallel concatenated code with soft-in soft-out interactive turbo decoder |
US6961388B2 (en) * | 2001-02-01 | 2005-11-01 | Qualcomm, Incorporated | Coding scheme for a wireless communication system |
US9979580B2 (en) | 2001-02-01 | 2018-05-22 | Qualcomm Incorporated | Coding scheme for a wireless communication system |
US6938224B2 (en) * | 2001-02-21 | 2005-08-30 | Lucent Technologies Inc. | Method for modeling noise emitted by digital circuits |
CA2390096C (en) * | 2001-06-11 | 2007-12-18 | Stewart N. Crozier | High-performance low-memory interleaver banks for turbo-codes |
US6871270B2 (en) * | 2001-12-03 | 2005-03-22 | Samsung Electronics Co., Ltd. | Device and method for minimizing puncturing-caused output delay |
US6954885B2 (en) * | 2001-12-14 | 2005-10-11 | Qualcomm Incorporated | Method and apparatus for coding bits of data in parallel |
KR100860660B1 (ko) * | 2002-01-09 | 2008-09-26 | 삼성전자주식회사 | 통신시스템의 인터리빙 장치 및 방법 |
AU2003208028B2 (en) * | 2002-02-06 | 2005-07-07 | Samsung Electronics Co., Ltd. | Interleaver and interleaving method in a communication system |
AU2003268814B2 (en) * | 2002-02-06 | 2005-07-28 | Samsung Electronics Co., Ltd. | Interleaver and interleaving method in a communication system |
KR20050059208A (ko) * | 2002-09-27 | 2005-06-17 | 아이비큐티 디지털 코포레이션 | 디지털 신호의 비트를 인터리빙하는 장치 및 방법, 디지털정보를 방송하는 장치 및 방법, 디지털 신호의 비트를디인터리빙하는 장치 및 방법, 및 디지털 정보를 수신하는장치 및 방법 |
KR20040037624A (ko) * | 2002-10-29 | 2004-05-07 | 삼성전자주식회사 | 인터리빙된 데이터 열의 디인터리빙 방법 및 장치 |
JP2004266586A (ja) * | 2003-03-03 | 2004-09-24 | Hitachi Ltd | 移動通信システムのデータ送受信方法 |
US7430241B2 (en) * | 2003-03-14 | 2008-09-30 | Lucent Technologies Inc. | Method for early decoding of control channel information |
KR100809619B1 (ko) | 2003-08-26 | 2008-03-05 | 삼성전자주식회사 | 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법 |
US7346832B2 (en) | 2004-07-21 | 2008-03-18 | Qualcomm Incorporated | LDPC encoding methods and apparatus |
EP1626505B1 (en) | 2004-08-10 | 2011-03-09 | Samsung Electronics Co., Ltd. | Apparatus and method for encoding and decoding a block low density parity check code |
US7519896B2 (en) | 2004-09-22 | 2009-04-14 | Stmicroelectronics Pvt. Ltd. | Turbo encoder and related methods |
US7551697B1 (en) | 2004-10-01 | 2009-06-23 | Rockwell Collins, Inc. | Reduced complexity soft-output noncoherent continuous phase demodulator systems |
US7281174B1 (en) | 2004-10-01 | 2007-10-09 | Rockwell Collins, Inc. | Diversity code combining scheme for turbo coded systems |
KR101131323B1 (ko) * | 2004-11-30 | 2012-04-04 | 삼성전자주식회사 | 이동통신 시스템에서 채널 인터리빙 장치 및 방법 |
US7542410B2 (en) * | 2004-12-06 | 2009-06-02 | Intel Corporation | Interleaver and associated methods |
US7543197B2 (en) * | 2004-12-22 | 2009-06-02 | Qualcomm Incorporated | Pruned bit-reversal interleaver |
US7340669B2 (en) * | 2005-03-11 | 2008-03-04 | Via Telecom Co., Ltd. | Memory efficient streamlined transmitter with a multiple instance hybrid ARQ |
CA2609794C (en) * | 2005-05-12 | 2013-12-03 | Qualcomm Incorporated | Apparatus and method for channel interleaving in communications system |
US7395461B2 (en) * | 2005-05-18 | 2008-07-01 | Seagate Technology Llc | Low complexity pseudo-random interleaver |
US7630350B2 (en) * | 2005-06-06 | 2009-12-08 | Broadcom Corporation | Method and system for parsing bits in an interleaver for adaptive modulations in a multiple input multiple output (MIMO) wireless local area network (WLAN) system |
KR100708474B1 (ko) * | 2005-09-15 | 2007-04-18 | 삼성전자주식회사 | 선형 합동 인터리버의 매개변수 결정 방법 및 그를 이용한 선형 합동 인터리버 |
US7925956B2 (en) * | 2006-10-03 | 2011-04-12 | Motorola Mobility, Inc. | Method and apparatus for encoding and decoding data |
US8356232B2 (en) * | 2006-10-06 | 2013-01-15 | Motorola Mobility Llc | Method and apparatus for encoding and decoding data |
WO2008057906A2 (en) | 2006-11-01 | 2008-05-15 | Qualcomm Incorporated | Turbo interleaver for high data rates |
US7949926B2 (en) * | 2006-11-30 | 2011-05-24 | Motorola Mobility, Inc. | Method and apparatus for encoding and decoding data |
US8751769B2 (en) | 2007-12-21 | 2014-06-10 | Qualcomm Incorporated | Efficient address generation for pruned interleavers and de-interleavers |
KR101502623B1 (ko) | 2008-02-11 | 2015-03-16 | 삼성전자주식회사 | 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널부호/복호 방법 및 장치 |
KR100943908B1 (ko) | 2008-02-19 | 2010-02-24 | 엘지전자 주식회사 | Pdcch를 통한 제어 정보 송수신 방법 |
US8200733B1 (en) | 2008-04-15 | 2012-06-12 | Freescale Semiconductor, Inc. | Device having interleaving capabilities and a method for applying an interleaving function |
DE102008029623A1 (de) | 2008-06-23 | 2009-12-24 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Interleaver |
US7667628B2 (en) * | 2008-06-23 | 2010-02-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Interleaver for scrambling and information word |
EP2139120B1 (de) | 2008-06-23 | 2019-01-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Interleaver |
US8516352B2 (en) * | 2009-07-21 | 2013-08-20 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured block codes |
US9397699B2 (en) * | 2009-07-21 | 2016-07-19 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured codes |
US8516351B2 (en) * | 2009-07-21 | 2013-08-20 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured block codes |
US8375278B2 (en) * | 2009-07-21 | 2013-02-12 | Ramot At Tel Aviv University Ltd. | Compact decoding of punctured block codes |
US8638244B2 (en) | 2009-08-31 | 2014-01-28 | Freescale Semiconductor, Inc. | Encoding module, apparatus and method for determining a position of a data bit within an interleaved data stream |
US8374098B2 (en) * | 2009-11-03 | 2013-02-12 | Arm Limited | Check data encoding using parallel lane encoders |
WO2011058760A1 (ja) * | 2009-11-13 | 2011-05-19 | パナソニック株式会社 | 符号化方法、復号方法、符号化器、及び、復号器 |
JP2011199414A (ja) * | 2010-03-17 | 2011-10-06 | Toshiba Corp | 素材収録装置及び素材収録方法 |
JP5521722B2 (ja) * | 2010-04-14 | 2014-06-18 | 沖電気工業株式会社 | 符号化装置、復号化装置、符号化・復号化システム、及び、プログラム |
CN103189837B (zh) * | 2011-10-18 | 2016-12-28 | 松下知识产权经营株式会社 | 混洗模式生成电路、处理器、混洗模式生成方法、命令 |
AU2014383811B2 (en) * | 2014-02-21 | 2017-09-28 | Huawei Technologies Co., Ltd. | Rate matching method and apparatus for polar code |
RU2685034C2 (ru) | 2014-12-22 | 2019-04-16 | Хуавэй Текнолоджиз Ко., Лтд. | Устройство кодирования и способ кодирования полярным кодом |
FR3037746B1 (fr) | 2015-06-19 | 2020-10-02 | Inst Mines Telecom | Procede de construction d'un entrelaceur pour turbo-encodeur |
FR3064138B1 (fr) | 2017-03-20 | 2021-05-07 | Orange | Procedes et dispositifs de codage a rendement compatible |
CN109885384B (zh) * | 2018-12-13 | 2023-02-07 | 平安壹钱包电子商务有限公司 | 任务并行度优化方法、装置、计算机设备及存储介质 |
RU2718579C1 (ru) * | 2019-05-20 | 2020-04-08 | Антон Юрьевич Баринов | Быстрый псевдослучайный перемежитель |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62200974A (ja) * | 1986-02-28 | 1987-09-04 | Matsushita Graphic Commun Syst Inc | インタ−リ−ブ装置 |
US5103459B1 (en) | 1990-06-25 | 1999-07-06 | Qualcomm Inc | System and method for generating signal waveforms in a cdma cellular telephone system |
JP3077944B2 (ja) * | 1990-11-28 | 2000-08-21 | シャープ株式会社 | 信号再生装置 |
US5392299A (en) * | 1992-01-15 | 1995-02-21 | E-Systems, Inc. | Triple orthogonally interleaed error correction system |
US5241563A (en) | 1992-08-10 | 1993-08-31 | General Instrument Corporation | Method and apparatus for communicating interleaved data |
JPH06216882A (ja) * | 1993-01-19 | 1994-08-05 | Matsushita Electric Ind Co Ltd | 誤り訂正送信装置及び受信装置 |
US5633881A (en) | 1993-02-22 | 1997-05-27 | Qualcomm Incorporated | Trellis encoder and decoder based upon punctured rate 1/2 convolutional codes |
US5668820A (en) * | 1995-01-23 | 1997-09-16 | Ericsson Inc. | Digital communication system having a punctured convolutional coding system and method |
JP3623966B2 (ja) * | 1995-02-01 | 2005-02-23 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | データの誤り保護送信方法、誤り保護受信方法及びデータ伝送システム |
AU6846796A (en) * | 1995-08-16 | 1997-03-12 | Microunity Systems Engineering, Inc. | Method and system for implementing data manipulation operations |
KR0183171B1 (ko) * | 1995-08-18 | 1999-04-15 | 김광호 | 인터리버 및 디인터리버와 그 방법 |
JPH09101878A (ja) * | 1995-10-03 | 1997-04-15 | Mitsubishi Electric Corp | 乱数発生回路 |
US6205190B1 (en) * | 1996-04-29 | 2001-03-20 | Qualcomm Inc. | System and method for reducing interference generated by a CDMA communications device |
JPH1065654A (ja) * | 1996-08-19 | 1998-03-06 | Oki Electric Ind Co Ltd | データ伝送誤り低減方法及びその装置 |
KR100215566B1 (ko) * | 1996-09-30 | 1999-08-16 | 전주범 | 정적 램을 이용한 길쌈 인터리버/디인터리버 및정적 램의 주소 생성 방법 |
JPH10163887A (ja) * | 1996-11-28 | 1998-06-19 | Matsushita Electric Ind Co Ltd | インターリーブ装置およびデインターリーブ装置 |
US5983384A (en) * | 1997-04-21 | 1999-11-09 | General Electric Company | Turbo-coding with staged data transmission and processing |
US5907582A (en) * | 1997-08-11 | 1999-05-25 | Orbital Sciences Corporation | System for turbo-coded satellite digital audio broadcasting |
US6430722B1 (en) * | 1998-01-23 | 2002-08-06 | Hughes Electronics Corporation | Forward error correction scheme for data channels using universal turbo codes |
US5978365A (en) * | 1998-07-07 | 1999-11-02 | Orbital Sciences Corporation | Communications system handoff operation combining turbo coding and soft handoff techniques |
US6014411A (en) * | 1998-10-29 | 2000-01-11 | The Aerospace Corporation | Repetitive turbo coding communication method |
US6304991B1 (en) * | 1998-12-04 | 2001-10-16 | Qualcomm Incorporated | Turbo code interleaver using linear congruential sequence |
-
1998
- 1998-12-04 US US09/205,511 patent/US6304991B1/en not_active Expired - Lifetime
-
1999
- 1999-03-12 UA UA2001063745A patent/UA63024C2/uk unknown
- 1999-12-03 RU RU2001118276/09A patent/RU2235424C2/ru active
- 1999-12-03 WO PCT/US1999/028580 patent/WO2000035103A1/en active IP Right Grant
- 1999-12-03 EP EP10009796A patent/EP2267903A3/en not_active Withdrawn
- 1999-12-03 BR BR9915926-0A patent/BR9915926A/pt not_active IP Right Cessation
- 1999-12-03 CN CNB998140392A patent/CN1202625C/zh not_active Expired - Lifetime
- 1999-12-03 RU RU2003107665/09A patent/RU2313177C2/ru active
- 1999-12-03 CA CA002353455A patent/CA2353455C/en not_active Expired - Lifetime
- 1999-12-03 MX MXPA01005573A patent/MXPA01005573A/es active IP Right Grant
- 1999-12-03 ID IDW00200101459A patent/ID30087A/id unknown
- 1999-12-03 AU AU19315/00A patent/AU763873B2/en not_active Ceased
- 1999-12-03 JP JP2000587455A patent/JP4723089B2/ja not_active Expired - Lifetime
- 1999-12-03 KR KR1020017006971A patent/KR100711326B1/ko active IP Right Grant
- 1999-12-03 EP EP99962985A patent/EP1147614A1/en not_active Ceased
-
2001
- 2001-06-01 NO NO20012708A patent/NO20012708L/no not_active Application Discontinuation
- 2001-08-20 US US09/933,979 patent/US6637000B2/en not_active Expired - Lifetime
-
2002
- 2002-08-29 HK HK02106398.3A patent/HK1045030B/zh not_active IP Right Cessation
-
2007
- 2007-07-05 RU RU2007125429/09A patent/RU2376702C2/ru active
-
2011
- 2011-01-04 JP JP2011000262A patent/JP5394410B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
NO20012708L (no) | 2001-07-20 |
RU2007125429A (ru) | 2009-01-10 |
US6637000B2 (en) | 2003-10-21 |
HK1045030B (zh) | 2005-10-07 |
KR100711326B1 (ko) | 2007-04-27 |
WO2000035103A1 (en) | 2000-06-15 |
BR9915926A (pt) | 2002-01-15 |
KR20010080679A (ko) | 2001-08-22 |
EP1147614A1 (en) | 2001-10-24 |
JP4723089B2 (ja) | 2011-07-13 |
JP5394410B2 (ja) | 2014-01-22 |
HK1045030A1 (en) | 2002-11-08 |
EP2267903A3 (en) | 2012-04-04 |
US20020032890A1 (en) | 2002-03-14 |
MXPA01005573A (es) | 2002-06-04 |
WO2000035103A9 (en) | 2001-12-13 |
CA2353455A1 (en) | 2000-06-15 |
AU1931500A (en) | 2000-06-26 |
EP2267903A2 (en) | 2010-12-29 |
US6304991B1 (en) | 2001-10-16 |
RU2313177C2 (ru) | 2007-12-20 |
CA2353455C (en) | 2009-05-19 |
CN1357172A (zh) | 2002-07-03 |
CN1202625C (zh) | 2005-05-18 |
JP2002532941A (ja) | 2002-10-02 |
RU2376702C2 (ru) | 2009-12-20 |
JP2011087329A (ja) | 2011-04-28 |
NO20012708D0 (no) | 2001-06-01 |
RU2235424C2 (ru) | 2004-08-27 |
ID30087A (id) | 2001-11-01 |
AU763873B2 (en) | 2003-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
UA63024C2 (en) | Turbo coder; method and device for interleaving data elements | |
US7580485B1 (en) | Address generator for LDPC encoder and decoder and method thereof | |
US5446747A (en) | Error-correction coding method with at least two systematic convolutional codings in parallel, corresponding iterative decoding method, decoding module and decoder | |
US7127664B2 (en) | Reconfigurable architecture for decoding telecommunications signals | |
EP0981218A2 (en) | Error-correcting encoding apparatus | |
KR101297060B1 (ko) | 서브 블록 인터리버 및 디-인터리버를 가진 다차원 블록인코더 | |
US20020035709A1 (en) | Apparatus and method for providing turbo code interleaving in a communications system | |
US6865710B2 (en) | Butterfly processor for telecommunications | |
KR20000074862A (ko) | 이동 통신시스템의 직렬 쇄상 컨볼루션 부호화를 위한 인터리빙장치 및 방법 | |
KR20080067987A (ko) | 큐피피 인터리브를 갖는 병렬 터보 디코딩을 위한 공식적플렉서블 충돌 방지 메모리 억세싱 | |
US7020214B2 (en) | Method and apparatus for path metric processing in telecommunications systems | |
US20060174184A1 (en) | Method and apparatus for encoding and decoding data using a pseudo-random interleaver | |
EP1300954A1 (en) | Encoding device and method, decoding device and method, providing medium, and method for generating data substitution position information | |
KR20010080130A (ko) | 터보코드 하이브리드 인터리버 | |
KR100297739B1 (ko) | 다중테일을갖는터보코드및그의부호화/복호화방법및그를이용한부호기/복호기 | |
JP2003188737A (ja) | インターリーブ処理方法及びインターリーブ処理装置 | |
KR100362557B1 (ko) | 이차원 인터리빙 장치 및 방법 |