Original Title: On Adjusting Vector Symbol Decoding for Many Different Nonbinary Convolutional Codes
Disclaimer: Summary generated by AI based on the provided document. Please refer to the original paper for full scientific accuracy.

ការកែសម្រួលការបកប្រែកូដ Vector Symbol សម្រាប់កូដ Nonbinary Convolutional ផ្សេងៗគ្នាជាច្រើន

ចំណងជើងដើម៖ On Adjusting Vector Symbol Decoding for Many Different Nonbinary Convolutional Codes

អ្នកនិពន្ធ៖ Usana Tuntoolavest (Department of Electrical Engineering, Faculty of Engineering, Kasetsart University), Chanothai Chaiwan (Department of Electrical Engineering, Faculty of Engineering, Kasetsart University)

ឆ្នាំបោះពុម្ព៖ 2012 Kasetsart J. (Nat. Sci.)

វិស័យសិក្សា៖ Telecommunications

១. សេចក្តីសង្ខេបប្រតិបត្តិ (Executive Summary)

បញ្ហា (The Problem)៖ ការសិក្សានេះដោះស្រាយបញ្ហាកំហុសទិន្នន័យតគ្នាយ៉ាងវែង (Long burst errors) នៅក្នុងបណ្តាញទំនាក់ទំនងឥតខ្សែល្បឿនលឿន ដែលកូដកែតម្រូវកំហុសធម្មតាមិនអាចដោះស្រាយបានប្រកបដោយប្រសិទ្ធភាព។

វិធីសាស្ត្រ (The Methodology)៖ ក្រុមអ្នកស្រាវជ្រាវបានធ្វើការកែសម្រួលក្បួនដោះស្រាយ Vector Symbol Decoding (VSD) ដើម្បីគាំទ្ររចនាសម្ព័ន្ធកូដផ្សេងៗ និងបានធ្វើត្រាប់តាម (Simulate) ដើម្បីវាយតម្លៃប្រសិទ្ធភាពរបស់វាក្នុងលក្ខខណ្ឌផ្សេងៗគ្នា។

លទ្ធផលសំខាន់ៗ (The Verdict)៖

២. ការវិភាគលើប្រសិទ្ធភាព និងដែនកំណត់ (Performance & Constraints)

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
Option 1: List inner decoder and small number of syndromes for VSD
ជម្រើសទី១៖ ប្រើប្រាស់ឧបករណ៍បកប្រែកូដខាងក្នុងប្រភេទ List រួមជាមួយចំនួន syndromes តិចតួចសម្រាប់ VSD
VSD អាចបកប្រែកូដបានយ៉ាងរហ័ស មានភាពស្មុគស្មាញទាបក្នុងការគណនា និងងាយស្រួលក្នុងការអនុវត្ត (implement) ទៅលើផ្នែករឹង។ ឧបករណ៍បកប្រែកូដខាងក្នុងមិនសូវមានភាពបត់បែន មានភាពស្មុគស្មាញខ្ពស់ និងពិបាកក្នុងការទាញយកមកប្រើជាមួយ block codes។ ត្រូវការចំនួន syndromes ត្រឹមតែ១២ ប៉ុណ្ណោះ ក៏អាចជួយកាត់បន្ថយអត្រាបរាជ័យក្នុងការបកប្រែកូដបានយ៉ាងមានប្រសិទ្ធភាពក្នុងឆានែល AWGN និង Rayleigh។
Option 2: Non-list inner decoder and larger number of syndromes for VSD
ជម្រើសទី២៖ ប្រើប្រាស់ឧបករណ៍បកប្រែកូដខាងក្នុងធម្មតា (មិនមែន List) រួមជាមួយចំនួន syndromes ច្រើនសម្រាប់ VSD
ឧបករណ៍បកប្រែកូដខាងក្នុងមានភាពបត់បែនខ្ពស់ ដែលអនុញ្ញាតឱ្យប្រើប្រាស់ឧបករណ៍ដែលមានស្រាប់បានដោយមិនចាំបាច់បង្កើតថ្មី។ ក្បួនដោះស្រាយ VSD នឹងមានភាពស្មុគស្មាញខ្លាំង (Complexity) ហើយពិបាកក្នុងការរៀបចំអនុវត្តដោយសារទាមទារអង្គចងចាំធំ។ ការគណនាកើនឡើងជាលំដាប់អិចស្ប៉ូណង់ស្យែល (exponential) ទៅតាមការកើនឡើងនៃចំនួន syndromes ដោយតម្រូវឱ្យប្រើរហូតដល់១៦ syndromes សម្រាប់លទ្ធផលល្អបំផុត។
Option 3: Non-list inner decoder and small number of syndromes with low rate code
ជម្រើសទី៣៖ ប្រើប្រាស់ឧបករណ៍បកប្រែកូដខាងក្នុងធម្មតា + VSD syndromes តិចតួច + កូដអត្រាទាប (Low rate code)
ឧបករណ៍ខាងក្នុងនៅតែមានភាពបត់បែន ចំណែកឯ VSD អាចដំណើរការលឿនដោយមិនសូវស្មុគស្មាញ និងងាយស្រួលអនុវត្តជាងជម្រើសទី២។ មានអត្រាកូដទាប (Low code rate) ដែលបង្កើតឱ្យមានទិន្នន័យលើស (Redundancy) ច្រើននៅក្នុងប្រព័ន្ធ។ ផ្តល់លទ្ធភាពបកប្រែកូដបានលឿន ប៉ុន្តែត្រូវលះបង់នូវកម្រិតបញ្ជូន (Bandwidth) មួយចំនួនដោយសារតែ redundancy ខ្ពស់។

ការចំណាយលើធនធាន (Resource Cost)៖ ឯកសារនេះមិនបានបញ្ជាក់ពីតម្លៃជាសាច់ប្រាក់ជាក់លាក់ទេ ប៉ុន្តែបានសង្កត់ធ្ងន់យ៉ាងខ្លាំងទៅលើតម្រូវការសមត្ថភាពគណនា និងទំហំអង្គចងចាំ (Memory size) ដែលកើនឡើងនៅពេលអនុវត្តលើបន្ទះសៀគ្វីអេឡិចត្រូនិច។

៣. ការពិនិត្យសម្រាប់បរិបទកម្ពុជា/អាស៊ីអាគ្នេយ៍

ភាពលំអៀងនៃទិន្នន័យ (Data Bias)៖

ការសិក្សានេះពឹងផ្អែកទាំងស្រុងលើការធ្វើត្រាប់តាមកុំព្យូទ័រ (Computer simulations) នៅក្នុងលក្ខខណ្ឌឆានែលតាមរលកសញ្ញា AWGN និង Rayleigh fading ជាជាងការវាស់ស្ទង់ទិន្នន័យជាក់ស្តែងពីប្រព័ន្ធទូរគមនាគមន៍ពិតប្រាកដ។ សម្រាប់ប្រទេសកម្ពុជា ការធ្វើតេស្តបន្ថែមនៅក្នុងតំបន់ដែលមានការរំខានសេវា (Interference) ច្រើន គឺជារឿងចាំបាច់ដើម្បីធានាប្រសិទ្ធភាពពិតប្រាកដក្នុងការប្រើប្រាស់។

លទ្ធភាពនៃការអនុវត្ត (Applicability)៖

បច្ចេកទេសបកប្រែកូដ VSD នេះមានសក្តានុពលខ្ពស់សម្រាប់ប្រើប្រាស់ដើម្បីពង្រឹងគុណភាព និងស្ថិរភាពនៃបណ្តាញទំនាក់ទំនងឥតខ្សែល្បឿនលឿននៅក្នុងប្រទេសកម្ពុជា។

ការអនុវត្តក្បួនដោះស្រាយការកែតម្រូវកំហុសកម្រិតខ្ពស់នេះនឹងជួយក្រុមហ៊ុនទូរគមនាគមន៍កម្ពុជាផ្តល់នូវសេវាអ៊ីនធឺណិតកាន់តែទុកចិត្តបាន ដែលជាកត្តាជំរុញដល់ការអភិវឌ្ឍសេដ្ឋកិច្ចឌីជីថលប្រកបដោយចីរភាព។

៤. ផែនការសកម្មភាពសម្រាប់និស្សិត (Actionable Roadmap)

ដើម្បីអនុវត្តតាមការសិក្សានេះ និស្សិតគួរអនុវត្តតាមជំហានខាងក្រោម៖

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃ Error-Correcting Codes: ចាប់ផ្តើមដោយការសិក្សាពីទ្រឹស្តីកូដកែតម្រូវកំហុស ផ្តោតជាពិសេសលើ Convolutional codes, រចនាសម្ព័ន្ធ Concatenated coding និងក្បួនដោះស្រាយ Viterbi Algorithm។
  2. រៀបចំប្រព័ន្ធកុំព្យូទ័រសម្រាប់ការធ្វើត្រាប់តាម (Simulation): ប្រើប្រាស់កម្មវិធី MATLABPython រួមជាមួយបណ្ណាល័យ NumPy/SciPy ដើម្បីសរសេរកូដបង្កើតគំរូឆានែល AWGN និង Rayleigh fading សម្រាប់វាស់ស្ទង់អត្រាកំហុស។
  3. សរសេរកូដក្បួនដោះស្រាយ VSD និង List-of-2 Viterbi: អភិវឌ្ឍន៍កម្មវិធីកុំព្យូទ័រ (Software implementation) ដើម្បីសាកល្បងដំណើរការក្បួនដោះស្រាយ Vector Symbol Decoding និងសង្កេតមើលពីការប្រែប្រួលនៃមុខងារពេលកំណត់ចំនួន Syndromes ខុសៗគ្នា (៨, ១២, ១៦)។
  4. អនុវត្តក្បួនដោះស្រាយទៅលើផ្នែករឹង (Hardware Implementation): សិក្សាប្រើប្រាស់ភាសា VerilogVHDL ដើម្បីរចនាសៀគ្វី និងដំឡើងក្បួនដោះស្រាយខាងលើទៅលើបន្ទះ FPGA Board ដោយផ្តោតលើការគ្រប់គ្រង Memory ឱ្យបានល្អបំផុត។
  5. ធ្វើតេស្តសាកល្បងបញ្ជូនទិន្នន័យក្នុងបរិស្ថានជាក់ស្តែង: ប្រើប្រាស់ឧបករណ៍ Software Defined Radio (SDR) ដើម្បីសាកល្បងបញ្ជូនទិន្នន័យឥតខ្សែពិតប្រាកដក្នុងទីតាំងខុសៗគ្នា (ឧទាហរណ៍ ក្នុងអគារ ឬកន្លែងដែលមានសេវាខ្សោយ) ដើម្បីវាយតម្លៃប្រសិទ្ធភាពទប់ទល់នឹង Burst errors។

៥. វាក្យសព្ទបច្ចេកទេស (Technical Glossary)

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Vector Symbol Decoding (ការបកប្រែកូដនិមិត្តសញ្ញាវ៉ិចទ័រ) ជាបច្ចេកទេសកែតម្រូវកំហុសទិន្នន័យ ដែលដំណើរការលើបណ្តុំប៊ីត (និមិត្តសញ្ញាធំៗ) ជំនួសឱ្យការកែតម្រូវម្តងមួយប៊ីតៗ ធ្វើឱ្យវាមានប្រសិទ្ធភាពខ្ពស់ក្នុងការដោះស្រាយកំហុសដែលកើតឡើងតគ្នាយ៉ាងវែង (burst errors) នៅក្នុងបណ្តាញឥតខ្សែល្បឿនលឿន។ ដូចជាការអាននិងកែតម្រូវពាក្យខុសទាំងមូលនៅក្នុងប្រយោគ ជំនួសឱ្យការពិនិត្យអក្ខរាវិរុទ្ធម្តងមួយតួអក្សរ។
Nonbinary convolutional codes (កូដខនវ៉ុលយូសិនមិនមែនគោលពីរ) ជាប្រភេទកូដសម្រាប់ការពារទិន្នន័យពីការខូចខាត ដែលប្រមូលផ្តុំទិន្នន័យជាក្រុម (symbols) ធំជាង ១ ប៊ីត (ឧ. ៨ប៊ីត ឬ ៣២ប៊ីត) ហើយប្រើប្រាស់ប្រតិបត្តិការគណិតវិទ្យាដើម្បីបង្កើតទិន្នន័យបន្ថែម (redundancy) សម្រាប់ជួយផ្ទៀងផ្ទាត់និងកែតម្រូវ។ ដូចជាការវេចខ្ចប់ទំនិញជាប្រអប់ធំៗ រួចបិទស្លាកសញ្ញាសម្គាល់ប្រអប់នីមួយៗ ដើម្បីងាយស្រួលរកឃើញនិងជួសជុលពេលមានការបាត់បង់តាមផ្លូវ។
Burst errors (កំហុសទិន្នន័យតគ្នាយ៉ាងវែង) ជាបាតុភូតដែលប៊ីតទិន្នន័យជាច្រើនជាប់ៗគ្នាត្រូវបានខូចខាត ឬបាត់បង់ក្នុងពេលតែមួយកំឡុងពេលបញ្ជូន ជារឿយៗបណ្តាលមកពីរលកសញ្ញាមានការរំខានខ្លាំងភ្លាមៗនៅក្នុងបណ្តាញឥតខ្សែ។ ដូចជាការធ្លាក់ទឹកថ្នាំប្រឡាក់លើក្រដាសសៀវភៅ ដែលធ្វើឱ្យអក្សរជាច្រើនពាក្យនៅជាប់ៗគ្នាមើលលែងយល់ មិនមែនខុសត្រឹមតែមួយតួអក្សរនោះទេ។
List Viterbi algorithm (ក្បួនដោះស្រាយ វីធើប៊ី ជាបញ្ជី) ជាក្បួនដោះស្រាយសម្រាប់បកប្រែកូដ ដែលមិនត្រឹមតែផ្តល់នូវចម្លើយដែលត្រឹមត្រូវបំផុតមួយនោះទេ ប៉ុន្តែវាបង្កើតជាបញ្ជីនៃចម្លើយដែលទំនងជាត្រឹមត្រូវបំផុតចំនួន២ ឬច្រើន (ឧ. List-of-2) ដើម្បីទុកជាជម្រើសបន្ទាប់បន្សំ ប្រសិនបើជម្រើសទីមួយបរាជ័យ។ ដូចជាកម្មវិធីស្វែងរក (Search Engine) ដែលបង្ហាញលទ្ធផលដែលពាក់ព័ន្ធបំផុតលំដាប់ទី១ និងទី២ ដើម្បីឱ្យអ្នករើស ក្រែងលោអ្នកចុចលីងទី១ទៅមិនត្រូវចិត្ត។
Syndrome (រោគសញ្ញា ឬ តម្លៃបញ្ជាក់កំហុស) នៅក្នុងទ្រឹស្តីកូដ វាគឺជាវ៉ិចទ័រដែលទទួលបានពីការគណនាទិន្នន័យដែលទទួលយកមកជាមួយម៉ាទ្រីសត្រួតពិនិត្យ (parity check matrix)។ បើតម្លៃ syndrome ស្មើរសូន្យ មានន័យថាគ្មានកំហុសទេ តែបើមិនស្មើសូន្យ វាជួយចង្អុលបង្ហាញពីទីតាំងនិងប្រភេទនៃកំហុស។ ដូចជាលទ្ធផលនៃការធ្វើតេស្តឈាមរបស់អ្នកជំងឺ បើឃើញមានរោគសញ្ញា (syndrome) ខុសប្រក្រតី គ្រូពេទ្យអាចដឹងថាតើអ្នកជំងឺមានបញ្ហានៅត្រង់ណា។
Constraint length (ប្រវែងរឹតត្បិត) ជាចំនួននៃប្លុកទិន្នន័យចាស់ៗដែលប្រព័ន្ធចងចាំយកមកប្រើប្រាស់ដើម្បីជួយក្នុងការបំប្លែងទិន្នន័យថ្មីមួយ (encoding)។ ប្រវែងកាន់តែវែង កូដកាន់តែមានសមត្ថភាពការពារកំហុសបានល្អ តែការគណនាក៏កាន់តែស្មុគស្មាញ។ ដូចជាមនុស្សដែលមានការចងចាំល្អ អាចយកបទពិសោធន៍រឿងរ៉ាវអតីតកាលច្រើន (ប្រវែងវែង) មកជួយសម្រេចចិត្តដោះស្រាយបញ្ហាថ្មីៗបានកាន់តែត្រឹមត្រូវ។
AWGN (សម្លេងរំខានហ្គូសៀនពណ៌សបូកបញ្ចូល) Additive white Gaussian noise គឺជាទម្រង់គំរូនៃសម្លេងរំខានមូលដ្ឋាន (background noise) នៅក្នុងធម្មជាតិដែលតែងតែរំខានដល់រលកសញ្ញាបញ្ជូនទិន្នន័យ ដែលមានកម្រិតរំខានរាយប៉ាយស្មើៗគ្នានៅលើគ្រប់ប្រេកង់។ ដូចជាសម្លេង 'ស៊ឺ...' នៃកង្ហារដែលកំពុងវិលនៅក្នុងបន្ទប់ ដែលរំខានដល់ការស្តាប់គ្នាពេលនិយាយគ្នាតិចៗ។
Code rate (អត្រាកូដ) ជាសមាមាត្ររវាងទិន្នន័យដើមដែលមានប្រយោជន៍ ធៀបទៅនឹងទិន្នន័យសរុប (បូកបញ្ចូលទាំងទិន្នន័យការពារកំហុស) ដែលត្រូវបានបញ្ជូន។ ឧទាហរណ៍ អត្រា 2/3 មានន័យថា ក្នុងចំណោមទិន្នន័យ៣ប៊ីត មាន២ប៊ីតជាទិន្នន័យដើម និង១ប៊ីតជាទិន្នន័យបន្ថែមសម្រាប់ការពារកំហុស។ ដូចជាការវេចខ្ចប់ទំនិញដាក់កេស បើអត្រាខ្ពស់មានន័យថាកេសនោះមានផ្ទុកទំនិញច្រើននិងអេប៉ុងការពារតិច តែបើអត្រាទាបគឺដាក់អេប៉ុងការពារច្រើនដើម្បីសុវត្ថិភាព តែដាក់ទំនិញបានតិច។
Concatenated coding system (ប្រព័ន្ធកូដតភ្ជាប់គ្នា) ជាការប្រើប្រាស់បច្ចេកទេសកែតម្រូវកំហុសពីរ ឬច្រើនតម្រួតគ្នា (ឧទាហរណ៍ ឧបករណ៍បកប្រែកូដខាងក្នុង និងខាងក្រៅ) ដើម្បីបង្កើនប្រសិទ្ធភាពការពារទិន្នន័យ ជាជាងការប្រើប្រាស់កូដតែមួយប្រភេទ។ ដូចជាការពាក់អាវក្រោះពីរជាន់ ដោយអាវជាន់ក្នុងការពារគ្រាប់កាំភ្លើងតូចៗ ចំណែកអាវជាន់ក្រៅការពារពីការផ្ទុះ ដើម្បីសុវត្ថិភាពខ្ពស់បំផុត។

៦. ប្រធានបទពាក់ព័ន្ធ (Further Reading)

អត្ថបទដែលបានបោះពុម្ពនៅលើ KhmerResearch ដែលទាក់ទងនឹងប្រធានបទនេះ៖

ប្រធានបទ និងសំណួរស្រាវជ្រាវដែលទាក់ទងនឹងឯកសារនេះ ដែលអ្នកអាចស្វែងរកបន្ថែម៖