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

ស្តីពីការកែសម្រួលការឌិកូដនិមិត្តសញ្ញាវ៉ិចទ័រសម្រាប់កូដ Convolutional មិនមែនគោលពីរផ្សេងៗគ្នាជាច្រើន

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

អ្នកនិពន្ធ៖ Usana Tuntoolavest, Kasetsart University, Chanothai Chaiwan, Kasetsart University

ឆ្នាំបោះពុម្ព៖ 2012, Agriculture and Natural Resources

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

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

បញ្ហា (The Problem)៖ ឯកសារនេះដោះស្រាយបញ្ហាកំហុសទិន្នន័យ (burst errors) ដែលមានរយៈពេលយូរនៅក្នុងបណ្តាញឥតខ្សែល្បឿនលឿន ដោយប្រើកូដ convolutional មិនមែនគោលពីរជាមួយនឹងការឌិកូដនិមិត្តសញ្ញាវ៉ិចទ័រ (VSD) ។

វិធីសាស្ត្រ (The Methodology)៖ ការស្រាវជ្រាវនេះបានកែសម្រួលក្បួនដោះស្រាយ VSD ដើម្បីដំណើរការជាមួយទម្រង់កូដដែលមានអត្រា 2/3 និង 3/4 រួចធ្វើតេស្តដំណើរការឌិកូដនៅក្នុងស្ថានភាពបណ្តាញផ្សេងៗគ្នា។

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

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

វិធីសាស្ត្រ (Method) គុណសម្បត្តិ (Pros) គុណវិបត្តិ (Cons) លទ្ធផលគន្លឹះ (Key Result)
VSD with List Inner Decoder (LVA)
ការឌិកូដនិមិត្តសញ្ញាវ៉ិចទ័រ (VSD) ដោយប្រើ List Inner Decoder (LVA)
ឌិកូដបានលឿន មានភាពស្មុគស្មាញទាបក្នុងការគណនាស៊ីនដ្រូម (syndromes) និងងាយស្រួលក្នុងការអនុវត្តលើផ្នែករឹង។ ឧបករណ៍ឌិកូដខាងក្នុង (Inner decoder) ត្រូវតែរចនាឡើងពិសេស ដែលធ្វើឱ្យវាមិនសូវមានភាពបត់បែន និងមានភាពស្មុគស្មាញខ្ពស់ជាងមុនបន្តិច។ កាត់បន្ថយចំនួនស៊ីនដ្រូមដែលត្រូវការសម្រាប់ការឌិកូដ ដោយទទួលបានជម្រើសកែតម្រូវទីពីរ (second choice) ពី inner decoder ដែលជួយសន្សំសំចៃអង្គចងចាំ។
VSD with Non-List Inner Decoder (Large Syndromes)
ការឌិកូដនិមិត្តសញ្ញាវ៉ិចទ័រ (VSD) ដោយប្រើ Inner Decoder ធម្មតា (មិនប្រើ List)
មានភាពបត់បែនខ្ពស់ ដោយអាចប្រើប្រាស់ឧបករណ៍ឌិកូដ (decoders) ធម្មតាដែលមានស្រាប់នៅលើទីផ្សារដោយមិនចាំបាច់បង្កើតថ្មី។ ទាមទារឱ្យការឌិកូដ VSD ប្រើប្រាស់ចំនួនស៊ីនដ្រូមកាន់តែច្រើន ដែលធ្វើឱ្យការគណនាមានភាពស្មុគស្មាញកើនឡើងជាអិចស្ប៉ូណង់ស្យែល (exponentially)។ ផ្តល់ដំណើរការល្អសម្រាប់កូដដែលមានប្រវែងកម្រិត (constraint length) ៥ នៅពេលអនុញ្ញាតឱ្យប្រើស៊ីនដ្រូមរហូតដល់ចំនួន ១៦។
Interleaved Reed-Solomon (IRS) Codes
កូដ Interleaved Reed-Solomon (IRS)
ជាកូដដែលត្រូវបានប្រើប្រាស់យ៉ាងទូលំទូលាយ មានភាពចាស់ទុំ និងមានប្រសិទ្ធភាពសម្រាប់ប្រព័ន្ធទំនាក់ទំនងធម្មតា។ មានភាពយឺតយ៉ាវខ្ពស់ (high delay) ដោយសារឧបករណ៍ត្រូវរង់ចាំទទួលទិន្នន័យពេញលេញទើបអាចឌិកូដបាន ដែលមិនសូវស័ក្តិសមសម្រាប់បណ្តាញល្បឿនលឿន (Gbps)។ អាចកែតម្រូវកំហុសទិន្នន័យប្រភេទ burst បាន ប៉ុន្តែមិនអាចចាប់ផ្តើមឌិកូដភ្លាមៗដូចបច្ចេកទេស VSD បែប convolutional នោះទេ។

ការចំណាយលើធនធាន (Resource Cost)៖ ទោះបីជាឯកសារមិនបានបញ្ជាក់ពីការចំណាយជាសាច់ប្រាក់ដោយផ្ទាល់ ប៉ុន្តែបានសង្កត់ធ្ងន់យ៉ាងខ្លាំងទៅលើទំហំនៃធនធានផ្នែករឹង (Hardware memory) និងសមត្ថភាពគណនាដែលចាំបាច់។

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

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

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

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

បច្ចេកទេសនេះមានសក្តានុពលខ្ពស់ក្នុងការយកមកអភិវឌ្ឍប្រព័ន្ធហេដ្ឋារចនាសម្ព័ន្ធទូរគមនាគមន៍ និងអ៊ីនធឺណិតល្បឿនលឿននៅក្នុងប្រទេសកម្ពុជា។

ជារួម ការសិក្សានិងអនុវត្តបច្ចេកវិទ្យាការកែតម្រូវកំហុសទិន្នន័យនេះ នឹងជួយពង្រឹងគុណភាពនៃសេវាអ៊ីនធឺណិត និងប្រព័ន្ធបញ្ជូនទិន្នន័យផ្សេងៗនៅកម្ពុជាឱ្យកាន់តែមានលំនឹង និងគួរឱ្យទុកចិត្ត។

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

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

  1. សិក្សាមូលដ្ឋានគ្រឹះនៃម៉ាទ្រីស និងកូដកែតម្រូវកំហុស (Error Control Coding): និស្សិតត្រូវស្វែងយល់ពីទ្រឹស្តីមូលដ្ឋាននៃ Convolutional Codes, Viterbi Algorithm និងលក្ខណៈនៃកំហុសប្រភេទ Burst ។ គួរចាប់ផ្តើមដោយការអានសៀវភៅជំនាញ Error Control Coding (by Lin and Costello) ដើម្បីយល់ពីការបង្កើតម៉ាទ្រីស។
  2. រៀនប្រើប្រាស់កម្មវិធីក្លែងធ្វើបណ្តាញ (Channel Simulation): ត្រូវប្រើប្រាស់កម្មវិធី MATLABPython (ជាមួយបណ្ណាល័យ NumPy/SciPy) ដើម្បីបង្កើតបរិស្ថានក្លែងធ្វើសម្រាប់ AWGN និង Rayleigh fading channels ដូចដែលបានរៀបរាប់ក្នុងឯកសារ។
  3. សរសេរកូដសម្រាប់ក្បួនដោះស្រាយ VSD ខាងក្រៅ (Outer Decoder Implementation): ចាប់ផ្តើមសរសេរកូដសម្រាប់អនុវត្តក្បួនដោះស្រាយ Vector Symbol Decoding (VSD) ដោយផ្តោតលើការទាញយកស៊ីនដ្រូម (Syndromes) ។ ការប្រើប្រាស់ភាសា C++ ត្រូវបានណែនាំសម្រាប់ការសាកល្បងល្បឿនប្រតិបត្តិការក្បួនដោះស្រាយ (Algorithm efficiency)។
  4. អនុវត្តក្បួនដោះស្រាយលើប្រព័ន្ធរឹងពិតប្រាកដ (Hardware Prototyping): បន្ទាប់ពីទទួលបានជោគជ័យលើការក្លែងធ្វើ (Simulation) និស្សិតឬអ្នកស្រាវជ្រាវគួរតែសាកល្បងបញ្ចូលក្បួនដោះស្រាយនេះទៅក្នុងបន្ទះសៀគ្វី FPGA (Field-Programmable Gate Array) តាមរយៈភាសា Verilog ដើម្បីវាស់វែងពីភាពស្មុគស្មាញ និងទំហំអង្គចងចាំជាក់ស្តែង។

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

ពាក្យបច្ចេកទេស ការពន្យល់ជាខេមរភាសា (Khmer Explanation) និយមន័យសាមញ្ញ (Simple Definition)
Vector Symbol Decoding (ការឌិកូដនិមិត្តសញ្ញាវ៉ិចទ័រ) ជាវិធីសាស្ត្រមួយក្នុងការស្វែងរកនិងកែតម្រូវកំហុសទិន្នន័យ (error correction) ដោយចាត់ទុកទិន្នន័យជាក្រុមៗ (និមិត្តសញ្ញាធំៗ) ជំនួសឱ្យការកែតម្រូវកំហុសម្តងមួយប៊ីត (bit) ដែលស័ក្តិសមបំផុតសម្រាប់ដោះស្រាយបញ្ហាកំហុសទិន្នន័យដែលកើតឡើងជាប់ៗគ្នាជាបន្តបន្ទាប់ (burst errors) ក្នុងបណ្តាញល្បឿនលឿន។ ដូចជាការពិនិត្យអក្ខរាវិរុទ្ធនិងកែតម្រូវពាក្យទាំងមូល ជំនួសឱ្យការអង្គុយពិនិត្យនិងកែតួអក្សរម្តងមួយៗ។
Nonbinary Convolutional Codes (កូដ Convolutional មិនមែនគោលពីរ) ជាប្រភេទនៃកូដកែតម្រូវកំហុសដែលដំណើរការលើនិមិត្តសញ្ញា (symbols) ដែលមានតម្លៃធំជាងសូន្យនិងមួយ (nonbinary) ដោយប្រើរចនាសម្ព័ន្ធបន្តបន្ទាប់គ្នា (convolutional) ដើម្បីបង្កើតទំនាក់ទំនងរវាងទិន្នន័យចាស់និងថ្មី ដែលជួយឱ្យប្រព័ន្ធដឹងពីលំហូរនៃទិន្នន័យ។ ដូចជាការវេចខ្ចប់ទំនិញជាប្រអប់ធំៗដែលមានលេខកូដសម្គាល់តពាក់ព័ន្ធគ្នា ងាយស្រួលរកកំហុសពេលបាត់បង់ប្រអប់ណាមួយ ជាជាងការរាប់ទំនិញម្តងមួយដុំ។
Burst Errors (កំហុសទិន្នន័យបែបប្រមូលផ្តុំ / កំហុសបន្តបន្ទាប់) ជាប្រភេទកំហុសនៅក្នុងការបញ្ជូនទិន្នន័យ ដែលប៊ីត (bits) ជាច្រើនត្រូវបានខូចខាតជាប់ៗគ្នាក្នុងរយៈពេលខ្លីមួយ ជាទូទៅបង្កឡើងដោយការរំខាននៃរលកសញ្ញា (interference) ឬការធ្លាក់ចុះគុណភាពសញ្ញាភ្លាមៗនៅក្នុងបណ្តាញឥតខ្សែ។ ដូចជាការកំពប់ទឹកលើសៀវភៅដែលធ្វើឱ្យអក្សររលុបមួយដុំធំ មិនមែនរលុបតួអក្សរដាច់ៗពីគ្នានោះទេ។
syndromes (ស៊ីនដ្រូម) ជាលទ្ធផលនៃការគណនាម៉ាទ្រីសក្នុងប្រព័ន្ធកែតម្រូវកំហុស (Error Control Coding) ដែលប្រើដើម្បីកំណត់ថាតើមានកំហុសកើតឡើងក្នុងទិន្នន័យដែលទទួលបានឬអត់។ បើស៊ីនដ្រូមស្មើរសូន្យ មានន័យថាគ្មានកំហុស ហើយចំនួនស៊ីនដ្រូមកាន់តែច្រើន ការកែតម្រូវកំហុសកាន់តែមានប្រសិទ្ធភាពតែការគណនាក៏ស្មុគស្មាញដែរ។ ដូចជាវិក្កយបត្រផ្ទៀងផ្ទាត់ការទិញទំនិញ។ បើផលបូកទំនិញនិងទឹកប្រាក់សរុបមិនត្រូវគ្នា (មានន័យថាស៊ីនដ្រូមមិនស្មើសូន្យ) នោះបញ្ជាក់ថាមានការគិតលុយខុសហើយ។
Viterbi algorithm (ក្បួនដោះស្រាយ Viterbi) ជាក្បួនដោះស្រាយគណិតវិទ្យាដ៏ពេញនិយមមួយក្នុងការឌិកូដ (decode) ទិន្នន័យដែលបានចូលកូដបែប convolutional ដោយវាស្វែងរកផ្លូវឬលទ្ធភាពដែលទំនងបំផុត (most likely sequence) នៃទិន្នន័យដើមចេញពីសញ្ញាដែលទទួលរងការរំខានក្នុងប្រព័ន្ធទូរគមនាគមន៍។ ដូចជាកម្មវិធី Google Maps ដែលគណនារកផ្លូវដែលទំនងជាលឿនបំផុតនិងត្រឹមត្រូវបំផុត ដើម្បីទៅដល់គោលដៅទោះបីជាមានផ្លូវវង្វេងវង្វាន់ច្រើនក៏ដោយ។
constraint length (ប្រវែងកម្រិត) ជាប៉ារ៉ាម៉ែត្រមួយនៅក្នុងកូដ convolutional ដែលបង្ហាញពីចំនួននៃទិន្នន័យមុនៗ (memory) ដែលមានឥទ្ធិពលទៅលើការបង្កើតទិន្នន័យកូដបច្ចុប្បន្ន។ ប្រវែងកម្រិតកាន់តែធំ កូដកាន់តែមានសមត្ថភាពខ្ពស់ក្នុងការកែតម្រូវកំហុស តែការគណនាក៏ទាមទារអង្គចងចាំធំជាងមុនដែរ។ ដូចជាការចងចាំរឿងរ៉ាវអតីតកាល។ បើអ្នកអាចចងចាំរឿងរ៉ាវបានច្រើនថ្ងៃមុន (ប្រវែងកម្រិតធំ) អ្នកអាចធ្វើការសម្រេចចិត្តថ្ងៃនេះបានកាន់តែត្រឹមត្រូវ ប៉ុន្តែខួរក្បាលអ្នកក៏ត្រូវធ្វើការធ្ងន់ដែរ។
AWGN (សម្លេងរំខានពណ៌ស Gaussian បន្ថែម) ជាគំរូគណិតវិទ្យាជាមូលដ្ឋានដែលគេប្រើដើម្បីក្លែងធ្វើបរិស្ថាននៃបណ្តាញទំនាក់ទំនង ដោយបូកបញ្ចូលរលកសញ្ញារំខាន (noise) ដែលមានកម្រិតស្មើៗគ្នាលើគ្រប់ប្រេកង់រលកសញ្ញា (White Gaussian) ទៅលើសញ្ញាដើមដើម្បីធ្វើតេស្តគុណភាពនៃកូដកែតម្រូវកំហុស។ ដូចជាសំឡេងរ៉ែៗ (Static noise) នៃវិទ្យុដែលមិនចំស្តេហ្សិន ដែលធ្វើឱ្យយើងពិបាកស្តាប់សំឡេងពិតប្រាកដ។
Rayleigh fading channel (បណ្តាញប្រែប្រួល Rayleigh) ជាបាតុភូតនៃការថយចុះឬប្រែប្រួលកម្លាំងរលកសញ្ញាឥតខ្សែយ៉ាងគំហុក ដោយសារតែរលកសញ្ញាផ្លាតនឹងឧបសគ្គផ្សេងៗ (អគារ ដើមឈើ) ហើយធ្វើដំណើរក្នុងផ្លូវច្រើន (multipath) មកដល់ឧបករណ៍ទទួលក្នុងពេលខុសៗគ្នាក្នុងទម្រង់មិនច្បាស់លាស់។ ដូចជាការស្រែកហៅគ្នានៅក្នុងជ្រលងភ្នំ ដែលសម្លេងរបស់អ្នកបុកនឹងជញ្ជាំងភ្នំហើយត្រលប់មកវិញជាសម្លេងខ្ទ័រជាន់គ្នា (Echo) ធ្វើឱ្យអ្នកស្តាប់នៅខាងចុងម្ខាងទៀតពិបាកស្តាប់បានច្បាស់។

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

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

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