|
![](/i/favi32.png) Ldpc kodini tekshirish matritsasi (9, 2, 3) minimal uzunlik aylanishi bilan 8
|
tarix | 22.03.2024 | ölçüsü | 13,71 Kb. | | #182710 |
| LDPC kodlari asosan nol va nisbatan kam sonli birliklarni o
LDPC kodlari asosan nol va nisbatan kam sonli birliklarni o'z ichiga olgan past zichlikdagi tekshirish matritsasi bilan tavsiflanadi. Ta'rifga ko'ra, agar matritsaning har bir satrida aniq bo'lsa
k < n va har bir ustun aniq
birliklar, keyin kod chaqiriladi muntazam (aks holda — tartibsiz). Umuman olganda, matritsadagi birliklar soni tartibga ega
ya'ni kod blokining uzunligi (tekshirish matritsasi ustunlari soni) ko'payishi bilan chiziqli ravishda o'sadi.
Odatda katta matritsalar ko'rib chiqiladi. Masalan, Gallager ishida eksperimental natijalar bo'limida n \ u003d 124, 252, 504 va 1008 qatorlarning" kichik " soni ishlatiladi (tasdiqlash matritsasi ustunlari soni biroz ko'proq). Amalda, ko'p sonli elementlarga ega matritsalar qo'llaniladi-10 dan 100 ming qatorgacha. Biroq, satr yoki ustundagi birliklar soni etarlicha kichik bo'lib qoladi, odatda 10 dan kam. Har bir satr yoki ustun uchun bir xil miqdordagi elementlarga ega, ammo kattaroq o'lchamdagi kodlar yaxshiroq xususiyatlarga ega ekanligi aniqlandi.
LDPC kodini tekshirish matritsasi (9, 2, 3) minimal uzunlik aylanishi bilan 8
LDPC kod matritsasining muhim xususiyati ma'lum o'lchamdagi tsikllarning yo'qligi. 4 uzunlikdagi tsikl deganda tekshirish matritsasida to'rtburchaklar hosil bo'lishi tushuniladi, uning burchaklarida birliklar mavjud. Uzunlik tsiklining yo'qligi 4 matritsaning ustunlari (yoki qatorlari) ning skalyar mahsuloti orqali ham aniqlanishi mumkin. Agar matritsaning barcha ustunlari (yoki satrlari) ning har bir juft skalyar mahsuloti 1 dan oshmasa, bu 4 uzunlikdagi tsiklning yo'qligini ko'rsatadi. Uzunroq tsikllar (6, 8, 10 va boshqalar). D.) agar tekshirish matritsasida uchlari birliklar bo'lgan grafik va qirralari matritsaning yon tomonlariga parallel bo'lgan barcha mumkin bo'lgan vertikal birikmalar (ya'ni vertikal yoki gorizontal chiziqlar) chizilgan bo'lsa, aniqlanishi mumkin. Ushbu ustundagi minimal tsikl LDPC kodining tekshirish matritsasida minimal tsikl bo'ladi. Shubhasiz, tsikl 3 emas, balki kamida 4 uzunlikda bo'ladi, chunki grafaning qirralari matritsaning yon tomonlariga parallel bo'lishi kerak. Umuman olganda, ushbu grafadagi har qanday tsikl hatto uzunlikka ega bo'ladi, minimal o'lcham 4 ga teng va maksimal o'lcham odatda rol o'ynamaydi (garchi bu grafadagi tugunlar sonidan ko'p bo'lmasa ham, ya'ni n×k).
LDPC kodini tavsiflash bir necha usul bilan mumkin:
tekshirish matritsasi
ikki tomonlama graf
boshqa grafik usulda
maxsus usullar
Oxirgi usul-bu berilgan qoidalar-algoritmlarga muvofiq tuzilgan kodlarni taqdim etish guruhining shartli belgisi, shunda kodni takrorlash uchun faqat algoritmning boshlang'ich parametrlarini va, albatta, qurilish algoritmining o'zini bilish kifoya. Biroq, bu usul universal emas va barcha mumkin bo'lgan LDPC kodlarini tavsiflay olmaydi.
Kodni tekshirish matritsasi bilan belgilash usuli chiziqli kodlar uchun keng tarqalgan bo'lib, matritsaning har bir qatori ba'zi kod so'zlarining elementi hisoblanadi. Agar barcha satrlar chiziqli mustaqil bo'lsa, matritsa satrlari barcha kod vektorlari to'plamining asosi sifatida ko'rib chiqilishi mumkin. Biroq, ushbu usuldan foydalanish matritsani kodlovchi xotirasida ifodalash uchun qiyinchiliklarni keltirib chiqaradi-matritsaning barcha satrlarini yoki ustunlarini ikkilik vektorlar to'plami sifatida saqlash kerak, shuning uchun matritsa hajmi teng bo'ladi
LDPC kodini ikki tomonlama grafik sifatida ko'rsatish
Umumiy grafik usul-bu kodni ikki tomonlama grafik sifatida ko'rsatish. Biz hamma narsani taqqoslaymiz
matritsaning k qatorlari
k grafaning pastki cho'qqilari, a
n ustunlar yuqori va agar tegishli qatorlar va ustunlar kesishmasida birliklar bo'lsa, biz grafikning yuqori va pastki uchlarini bog'laymiz.
Boshqa grafik usullar kodning o'zini o'zgartirmasdan sodir bo'ladigan ikki tomonlama grafaning o'zgarishini o'z ichiga oladi. Masalan, grafaning barcha yuqori cho'qqilari uchburchaklar shaklida, pastki uchlari esa kvadrat shaklida ifodalanishi mumkin, so'ngra grafaning qirralari va tepalarini ikki o'lchovli yuzaga kod tuzilishini vizual tushunish uchun qulay tartibda joylashtirish mumkin. Masalan, bunday vakillik Devid Makkayning kitoblarida illyustratsiya sifatida ishlatiladi.
LDPC kodini (9, 2, 3) maxsus turdagi grafik sifatida ko'rsatish. Kod matritsasi yuqorida keltirilgan.
LDPC kodini grafik ko'rsatish va qurish uchun qo'shimcha qoidalarni kiritish orqali siz qurilish jarayonida kod ma'lum xususiyatlarga ega bo'lishiga erishishingiz mumkin. Masalan, agar biz grafikdan foydalansak, uning tepalari faqat tekshirish matritsasining ustunlari bo'lib, satrlar grafning tepalarida qurilgan ko'pburchaklar bilan tasvirlangan bo'lsa, unda "ikkita ko'pburchak bitta qirrani ajratmaydi" qoidasiga rioya qilish 4 uzunlikdagi tsikllardan xalos bo'lishga imkon beradi.
Kodni yaratish uchun maxsus protseduralardan foydalanganda taqdim etish, saqlash va qayta ishlash (kodlash va dekodlash) usullaridan foydalanish mumkin.
Hozirgi vaqtda kodni tekshirish matritsasini yaratishning ikkita printsipi qo'llaniladi. Birinchisi, soxta tasodifiy generator yordamida dastlabki tekshirish matritsasini yaratishga asoslangan. Shu tarzda olingan kodlar tasodifiy (ingl. random-like codes). Ikkinchisi, masalan, guruhlar va cheklangan maydonlarga asoslangan maxsus usullardan foydalanish. Ushbu usullar bilan olingan kodlar tuzilgan deb nomlanadi. Xatolarni tuzatishning eng yaxshi natijalari aniq tasodifiy kodlarni ko'rsatadi, ammo tuzilgan kodlar saqlash, kodlash va dekodlash protseduralarini optimallashtirish usullaridan foydalanishga, shuningdek, bashorat qilinadigan xususiyatlarga ega kodlarni olishga imkon beradi.
Gallager o'z ishida psevdo-tasodifiy sonlar generatori yordamida berilgan xususiyatlarga ega bo'lgan kichik o'lchamdagi dastlabki tekshirish matritsasini yaratishni, so'ngra matritsani takrorlash orqali uning hajmini oshirishni afzal ko'rdi[6] va ma'lum uzunlikdagi tsikllardan xalos bo'lish uchun qatorlar va ustunlarni aralashtirish usulidan foydalanish.
2003 yilda Jeyms Makgovan va Robert Uilyamson LDPC-kod matritsasidan tsikllarni olib tashlash usulini taklif qilishdi, shuning uchun dastlab berilgan xususiyatlarga ega matritsani (n, j, k) yaratish va undan tsikllarni olib tashlash mumkin bo'ldi. Bu Ozarov-Vayner sxemasida sodir bo'ladi [7].
2007 yilda "IEEE Transactions on Information Threory" jurnalida qo'shimcha oq Gauss shovqinli kanallar va o'chiriladigan ikkilik kanallar uchun kvazi-tsiklli LDPC kodlarini yaratish uchun cheklangan maydonlardan foydalanish to'g'risida maqola chop etilgan.
Kod o'lchamini oshirish uchun generativ matritsalarning ko'p sonli so'nggi mahsuloti ishlatilishi mumkin Turbokod-raqamli ma'lumotlarni shovqin bilan aloqa kanali orqali uzatishda yuzaga keladigan xatolarni tuzatishga qodir bo'lgan parallel kaskadli blokli tizimli kod. Turbo kodning sinonimi kodlash nazariyasida ma'lum bo'lgan atama kaskad kodi (ingl. concatenated code) (D. Forney tomonidan 1966 yilda taklif etilgan).
Turbokod parallel ulangan tizimli kodlar kaskadidan iborat. Ushbu komponentlar komponent kodlari deb ataladi. Komponent kodlari sifatida konvolyutsion kodlar, Hamming kodi, Rid — Sulaymon kodi, Bouz — Chodhuri — Xokvingem kodi va boshqalar ishlatilishi mumkin. Komponent kodini tanlashga qarab turbokodlar konvolyutsion turbokodlarga bo'linadi (ingl. Turbo Convolutional Codes, TSS) va blok kodlari mahsulot (ingl. Turbo Product Codes, TPC)
Turbokodlar 1993 yilda ishlab chiqilgan bo'lib, yuqori samarali, xatolarga chidamli, xatolarni tuzatuvchi kodlar sinfidir, elektrotexnika va raqamli aloqa sohasida qo'llaniladi va sun'iy yo'ldosh aloqalarida va cheklangan chastota diapazonidagi shovqin bilan aloqa kanali orqali ma'lumotlarni uzatishning maksimal tezligiga erishish zarur bo'lgan boshqa sohalarda qo'llaniladi.
Shannonning so'zlariga ko'ra, eng yaxshi kod-bu xabarni cheksiz vaqt ichida uzatadigan, har bir vaqtda tasodifiy kod elementlarini hosil qiladigan kod[manba 1437 kun ko'rsatilmagan]. Qabul qiluvchida tasodifiy buzilgan xabarning cheksiz versiyalari mavjud. Ushbu nusxalardan dekoder uzatilgan xabarga eng yaqin nusxasini tanlashi kerak. Bu signaldagi barcha xatolarni tuzatishi mumkin bo'lgan nazariy jihatdan mukammal kodni anglatadi. Turbo kod bu yo'nalishdagi qadamdir. Shubhasiz, biz cheksiz vaqt davomida axborot xabarini yubormasligimiz kerak. Qabul qilinadigan ish uchun uzatish vaqtini ikki yoki uch baravar oshirish kifoya, bu aloqa kanallari uchun juda yaxshi natijalarni beradi.
Turbo kodlarning o'ziga xos xususiyati parallel ravishda ishlaydigan va xabarning tasodifiy versiyasini yaratishda foydalanadigan rekursiv tizimli konvolyutsion (RSC) kodlardan tashkil topgan parallel tuzilishdir. Parallel struktura har biri turli xil intervalgacha bo'lgan ikki yoki undan ortiq RSC kodlaridan foydalanadi. Intermederning maqsadi har bir kodlovchiga ma'lumotlarning o'zaro bog'liq bo'lmagan yoki tasodifiy versiyasini taklif qilishdir, bu esa har bir RSC ning paritet bitlarini mustaqil bo'lishiga olib keladi.
Turbokodlarda bloklar bir necha Kbit uzunlikka ega. Ushbu uzunlikning maqsadi ikkinchi kodlash qurilmasiga o'tadigan ketma-ketlikni samarali ravishda tasodifiylashtirishdir. Blokning o'lchami qanchalik uzun bo'lsa, uning birinchi kodlovchi xabari bilan korrelyatsiyasi shunchalik yaxshi bo'ladi, ya'ni korrelyatsiya kichikdir.
Bir nechta turbokod sxemalari mavjud:
PCCC-parallel konvolyutsion kodlar birlashtirilgan taqdirda
Konvolyutsion kodlarning ketma - ket ulanishi bilan SCCC sxemasi, sccc kodlari katta signal-shovqin munosabatlarida yuqori ko'rsatkichlarga ega
TPC-Turbo kod-mahsulot, konvolyutsion kodlar o'rniga blok kodlaridan foydalanadi; ikki xil blok kodlari (odatda Hemming kodlari) oraliq intervalgacha bo'lmagan holda ketma-ket ulanadi. Ikki kod mustaqil bo'lib, qatorlar va ustunlarda ishlaydi, bu o'z-o'zidan juda yaxshi randomizatsiyani ta'minlaydi, shuning uchun intervalgacha foydalanish talab qilinmaydi.
Dostları ilə paylaş: |
|
|