UA63024C2 - Turbo coder; method and device for interleaving data elements - Google Patents

Turbo coder; method and device for interleaving data elements Download PDF

Info

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
Application number
UA2001063745A
Other languages
English (en)
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of UA63024C2 publication Critical patent/UA63024C2/uk

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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/2789Interleaver providing variable interleaving, e.g. variable block sizes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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/2703Coding, 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/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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/275Interleaver wherein the permutation pattern is obtained using a congruential operation of the type y=ax+b modulo c
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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/276Interleaving address generation
    • H03M13/2764Circuits therefore
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/27Coding, 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/2771Internal interleaver for turbo codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/29Coding, 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/2957Turbo 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 для кожного рядка матриці місць розміщення бітів.
UA2001063745A 1998-12-04 1999-03-12 Turbo coder; method and device for interleaving data elements UA63024C2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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) 이차원 인터리빙 장치 및 방법