त्रुटि सुधार कोड: Difference between revisions

From Vigyanwiki
(Created page with "{{short description|Scheme for controlling errors in data over noisy communication channels}} {{redirect|Interleaver|the fiber-optic device|optical interleaver}} {{Use dmy dat...")
 
No edit summary
Line 2: Line 2:
{{redirect|Interleaver|the fiber-optic device|optical interleaver}}
{{redirect|Interleaver|the fiber-optic device|optical interleaver}}
{{Use dmy dates|date=August 2022}}
{{Use dmy dates|date=August 2022}}
कंप्यूटिंग, दूरसंचार, सूचना सिद्धांत और कोडिंग सिद्धांत में, एक त्रुटि सुधार कोड, कभी-कभी त्रुटि सुधार कोड, (ईसीसी) का उपयोग अविश्वसनीय या शोर संचार चैनलों पर डेटा में त्रुटि नियंत्रण के लिए किया जाता है।<ref>{{cite book |author-last1=Glover |author-first1=Neal |author-last2=Dudley |author-first2=Trent |title=इंजीनियरों के लिए व्यावहारिक त्रुटि सुधार डिजाइन|edition=Revision 1.1, 2nd |publisher=[[Cirrus Logic]] |location=CO, USA |date=1990 |isbn=0-927239-00-0 }}</ref><ref name="Hamming">{{cite journal |author-last=Hamming |author-first=Richard Wesley |author-link=Richard Wesley Hamming  |title=त्रुटि का पता लगाने और कोड को ठीक करने में त्रुटि|journal=[[Bell System Technical Journal]] |volume=29 |issue=2 |pages=147–160 |publisher=[[AT&T]] |location=USA |date=April 1950 |doi=10.1002/j.1538-7305.1950.tb00463.x|s2cid=61141773 }}</ref> केंद्रीय विचार यह है कि प्रेषक ईसीसी के रूप में अतिरेक (सूचना सिद्धांत) के साथ संदेश को कूटबद्ध करता है। अतिरेक रिसीवर को सीमित संख्या में त्रुटियों का पता लगाने की अनुमति देता है जो संदेश में कहीं भी हो सकती हैं, और अक्सर इन त्रुटियों को बिना पुनर्प्रसारण के ठीक करने के लिए। अमेरिकी गणितज्ञ रिचर्ड हैमिंग ने 1940 के दशक में इस क्षेत्र का नेतृत्व किया और 1950 में पहला त्रुटि-सुधार कोड का आविष्कार किया: हैमिंग (7,4) कोड।<ref name="Hamming"/>
[[कम्प्यूटिंग]], [[दूरसंचार]], [[सूचना सिद्धांत]] और [[कोडिंग सिद्धांत]] में, एक त्रुटि सुधार कोड, कभी-कभी त्रुटि सुधार कोड, (ईसीसी) का उपयोग अविश्वसनीय या शोर संचार चैनलों पर डेटा में [[त्रुटि नियंत्रण]] के लिए किया जाता है।<ref>{{cite book |author-last1=Glover |author-first1=Neal |author-last2=Dudley |author-first2=Trent |title=इंजीनियरों के लिए व्यावहारिक त्रुटि सुधार डिजाइन|edition=Revision 1.1, 2nd |publisher=[[Cirrus Logic]] |location=CO, USA |date=1990 |isbn=0-927239-00-0 }}</ref><ref name="Hamming">{{cite journal |author-last=Hamming |author-first=Richard Wesley |author-link=Richard Wesley Hamming  |title=त्रुटि का पता लगाने और कोड को ठीक करने में त्रुटि|journal=[[Bell System Technical Journal]] |volume=29 |issue=2 |pages=147–160 |publisher=[[AT&T]] |location=USA |date=April 1950 |doi=10.1002/j.1538-7305.1950.tb00463.x|s2cid=61141773 }}</ref> केंद्रीय विचार यह है कि प्रेषक ईसीसी के रूप में [[अतिरेक (सूचना सिद्धांत)]] के साथ संदेश को कूटबद्ध करता है। अतिरेक रिसीवर को सीमित संख्या में त्रुटियों का पता लगाने की अनुमति देता है जो संदेश में कहीं भी हो सकती हैं, और अक्सर इन त्रुटियों को बिना पुनर्प्रसारण के ठीक करने के लिए। अमेरिकी गणितज्ञ [[रिचर्ड हैमिंग]] ने 1940 के दशक में इस क्षेत्र का नेतृत्व किया और 1950 में पहला त्रुटि-सुधार कोड का आविष्कार किया: हैमिंग (7,4) कोड।<ref name="Hamming"/>


ECC त्रुटि का पता लगाने के विपरीत है जिसमें सामने आने वाली त्रुटियों को ठीक किया जा सकता है, केवल पता नहीं लगाया जा सकता है। लाभ यह है कि ईसीसी का उपयोग करने वाली प्रणाली को त्रुटि होने पर डेटा के पुन: प्रसारण का अनुरोध करने के लिए रिवर्स चैनल की आवश्यकता नहीं होती है। नकारात्मक पक्ष यह है कि एक निश्चित ओवरहेड है जो संदेश में जोड़ा जाता है, जिससे उच्च अग्रेषण-चैनल बैंडविड्थ की आवश्यकता होती है। इसलिए ईसीसी उन स्थितियों में लागू किया जाता है जहां पुन: प्रसारण महंगा या असंभव होता है, जैसे कि एक तरफ़ा संचार लिंक और जब मल्टीकास्ट में कई रिसीवरों को प्रेषित किया जाता है। लंबे समय तक चलने वाले कनेक्शन से भी फ़ायदा होता है; यूरेनस के चारों ओर परिक्रमा करने वाले उपग्रह के मामले में, त्रुटियों के कारण पुन: प्रसारण में पांच घंटे की देरी हो सकती है। ECC जानकारी को आमतौर पर बड़े पैमाने पर भंडारण उपकरणों में जोड़ा जाता है ताकि दूषित डेटा की पुनर्प्राप्ति को सक्षम किया जा सके, मोडेम में व्यापक रूप से उपयोग किया जाता है, और इसका उपयोग उन प्रणालियों पर किया जाता है जहां प्राथमिक मेमोरी ECC मेमोरी होती है।
ECC त्रुटि का पता लगाने के विपरीत है जिसमें सामने आने वाली त्रुटियों को ठीक किया जा सकता है, केवल पता नहीं लगाया जा सकता है। लाभ यह है कि ईसीसी का उपयोग करने वाली प्रणाली को त्रुटि होने पर डेटा के पुन: प्रसारण का अनुरोध करने के लिए [[रिवर्स चैनल]] की आवश्यकता नहीं होती है। नकारात्मक पक्ष यह है कि एक निश्चित ओवरहेड है जो संदेश में जोड़ा जाता है, जिससे उच्च अग्रेषण-चैनल बैंडविड्थ की आवश्यकता होती है। इसलिए ईसीसी उन स्थितियों में लागू किया जाता है जहां पुन: प्रसारण महंगा या असंभव होता है, जैसे कि एक तरफ़ा संचार लिंक और जब [[बहुस्त्र्पीय]] में कई रिसीवरों को प्रेषित किया जाता है। लंबे समय तक चलने वाले कनेक्शन से भी फ़ायदा होता है; [[अरुण ग्रह]] के चारों ओर परिक्रमा करने वाले उपग्रह के मामले में, त्रुटियों के कारण पुन: प्रसारण में पांच घंटे की देरी हो सकती है। ECC जानकारी को आमतौर पर बड़े पैमाने पर भंडारण उपकरणों में जोड़ा जाता है ताकि दूषित डेटा की पुनर्प्राप्ति को सक्षम किया जा सके, [[मोडम]] में व्यापक रूप से उपयोग किया जाता है, और इसका उपयोग उन प्रणालियों पर किया जाता है जहां प्राथमिक मेमोरी ECC मेमोरी होती है।


एक रिसीवर में ईसीसी प्रसंस्करण एक डिजिटल बिटस्ट्रीम या डिजिटल रूप से संग्राहक वाहक के डिमॉड्यूलेशन में लागू किया जा सकता है। उत्तरार्द्ध के लिए, ईसीसी प्रारंभिक एनालॉग-टू-डिजिटल कनवर्टर | रिसीवर में एनालॉग-टू-डिजिटल रूपांतरण का एक अभिन्न अंग है। Viterbi डिकोडर एक त्रुटि सुधार कोड # ECC के प्रकार लागू करता है | शोर से दूषित एनालॉग सिग्नल से डिजिटल डेटा को डिमॉड्यूलेट करने के लिए सॉफ्ट-डिसीजन एल्गोरिदम। कई ECC एनकोडर/डिकोडर बिट-एरर रेट (BER) सिग्नल भी उत्पन्न कर सकते हैं, जिसका उपयोग एनालॉग रिसीविंग इलेक्ट्रॉनिक्स को फाइन-ट्यून करने के लिए फीडबैक के रूप में किया जा सकता है।
एक रिसीवर में ईसीसी प्रसंस्करण एक डिजिटल बिटस्ट्रीम या डिजिटल रूप से संग्राहक वाहक के डिमॉड्यूलेशन में लागू किया जा सकता है। उत्तरार्द्ध के लिए, ईसीसी प्रारंभिक [[एनॉलॉग से डिजिटल परिवर्तित करने वाला उपकरण]] | रिसीवर में एनालॉग-टू-डिजिटल रूपांतरण का एक अभिन्न अंग है। Viterbi डिकोडर एक त्रुटि सुधार कोड # ECC के प्रकार लागू करता है | शोर से दूषित एनालॉग सिग्नल से डिजिटल डेटा को डिमॉड्यूलेट करने के लिए सॉफ्ट-डिसीजन एल्गोरिदम। कई ECC एनकोडर/डिकोडर [[बिट त्रुटि दर]] (BER) सिग्नल भी उत्पन्न कर सकते हैं, जिसका उपयोग एनालॉग रिसीविंग इलेक्ट्रॉनिक्स को फाइन-ट्यून करने के लिए फीडबैक के रूप में किया जा सकता है।
   
   
त्रुटियों या लापता बिट्स के अधिकतम अंश जिन्हें ठीक किया जा सकता है, ECC कोड के डिज़ाइन द्वारा निर्धारित किए जाते हैं, इसलिए विभिन्न स्थितियों के लिए अलग-अलग त्रुटि सुधार कोड उपयुक्त होते हैं। सामान्य तौर पर, एक मजबूत कोड अधिक अतिरेक उत्पन्न करता है जिसे उपलब्ध बैंडविड्थ का उपयोग करके प्रसारित करने की आवश्यकता होती है, जो प्राप्त प्रभावी सिग्नल-टू-शोर अनुपात में सुधार करते हुए प्रभावी बिट-दर को कम करता है। क्लाउड शैनन के शोर-चैनल कोडिंग प्रमेय का उपयोग किसी अधिकतम स्वीकार्य त्रुटि संभावना के लिए अधिकतम प्राप्त करने योग्य संचार बैंडविड्थ की गणना के लिए किया जा सकता है। यह कुछ दिए गए आधार शोर स्तर के साथ एक चैनल की सैद्धांतिक अधिकतम सूचना अंतरण दर पर सीमा स्थापित करता है। हालांकि, सबूत रचनात्मक नहीं है, और इसलिए क्षमता प्राप्त करने वाले कोड को बनाने के तरीके की कोई अंतर्दृष्टि नहीं देता है। वर्षों के शोध के बाद, कुछ ध्रुवीय कोड (कोडिंग सिद्धांत)<ref name=":0" />सैद्धांतिक अधिकतम के बहुत करीब आओ।
त्रुटियों या लापता बिट्स के अधिकतम अंश जिन्हें ठीक किया जा सकता है, ECC कोड के डिज़ाइन द्वारा निर्धारित किए जाते हैं, इसलिए विभिन्न स्थितियों के लिए अलग-अलग त्रुटि सुधार कोड उपयुक्त होते हैं। सामान्य तौर पर, एक मजबूत कोड अधिक अतिरेक उत्पन्न करता है जिसे उपलब्ध बैंडविड्थ का उपयोग करके प्रसारित करने की आवश्यकता होती है, जो प्राप्त प्रभावी सिग्नल-टू-शोर अनुपात में सुधार करते हुए प्रभावी बिट-दर को कम करता है। [[क्लाउड शैनन]] के [[शोर-चैनल कोडिंग प्रमेय]] का उपयोग किसी अधिकतम स्वीकार्य त्रुटि संभावना के लिए अधिकतम प्राप्त करने योग्य संचार बैंडविड्थ की गणना के लिए किया जा सकता है। यह कुछ दिए गए आधार शोर स्तर के साथ एक चैनल की सैद्धांतिक अधिकतम सूचना अंतरण दर पर सीमा स्थापित करता है। हालांकि, सबूत रचनात्मक नहीं है, और इसलिए क्षमता प्राप्त करने वाले कोड को बनाने के तरीके की कोई अंतर्दृष्टि नहीं देता है। वर्षों के शोध के बाद, कुछ [[ध्रुवीय कोड (कोडिंग सिद्धांत)]]<ref name=":0" />सैद्धांतिक अधिकतम के बहुत करीब आओ।


== आगे त्रुटि सुधार ==
== आगे त्रुटि सुधार ==
दूरसंचार, सूचना सिद्धांत और कोडिंग सिद्धांत में, अग्रेषित त्रुटि सुधार (FEC) या चैनल कोडिंग<ref>{{cite journal |author1=Charles Wang |author2=Dean Sklar |author3=Diana Johnson |title=फॉरवर्ड एरर-करेक्शन कोडिंग|journal=Crosslink |publisher=The Aerospace Corporation |volume=3 |issue=1 |date=Winter 2001–2002 |url=http://www.aero.org/publications/crosslink/winter2002/04.html |quote=[http://www.aero.org/publications/crosslink/winter2002/04_sidebar1.html त्रुटि सुधार कोड कैसे काम करते हैं]|access-date=5 March 2006 |archive-url=https://web.archive.org/web/20120314085127/http://www.aero.org/publications/crosslink/winter2002/04.html |archive-date=14 March 2012 |url-status=dead }}</ref><ref name=":0">{{Cite web|url=https://www.accelercomm.com/overview-channel-coding|title=चैनल कोडिंग का अवलोकन|last=Maunder|first=Robert|date=2016}}</ref> अविश्वसनीय या शोर संचार चैनलों पर डेटा ट्रांसमिशन में त्रुटि नियंत्रण के लिए उपयोग की जाने वाली तकनीक है। केंद्रीय विचार यह है कि प्रेषक एक अतिरेक (सूचना सिद्धांत) तरीके से संदेश को एन्कोड करता है, अक्सर एक ईसीसी का उपयोग करके।
दूरसंचार, सूचना सिद्धांत और कोडिंग सिद्धांत में, अग्रेषित त्रुटि सुधार (FEC) या चैनल कोडिंग<ref>{{cite journal |author1=Charles Wang |author2=Dean Sklar |author3=Diana Johnson |title=फॉरवर्ड एरर-करेक्शन कोडिंग|journal=Crosslink |publisher=The Aerospace Corporation |volume=3 |issue=1 |date=Winter 2001–2002 |url=http://www.aero.org/publications/crosslink/winter2002/04.html |quote=[http://www.aero.org/publications/crosslink/winter2002/04_sidebar1.html त्रुटि सुधार कोड कैसे काम करते हैं]|access-date=5 March 2006 |archive-url=https://web.archive.org/web/20120314085127/http://www.aero.org/publications/crosslink/winter2002/04.html |archive-date=14 March 2012 |url-status=dead }}</ref><ref name=":0">{{Cite web|url=https://www.accelercomm.com/overview-channel-coding|title=चैनल कोडिंग का अवलोकन|last=Maunder|first=Robert|date=2016}}</ref> अविश्वसनीय या शोर संचार चैनलों पर [[डेटा ट्रांसमिशन]] में त्रुटि नियंत्रण के लिए उपयोग की जाने वाली तकनीक है। केंद्रीय विचार यह है कि प्रेषक एक अतिरेक (सूचना सिद्धांत) तरीके से संदेश को एन्कोड करता है, अक्सर एक ईसीसी का उपयोग करके।


अतिरेक रिसीवर को सीमित संख्या में त्रुटियों का पता लगाने की अनुमति देता है जो संदेश में कहीं भी हो सकती हैं, और अक्सर इन त्रुटियों को पुनः प्रसारण के बिना ठीक करने के लिए। एफईसी रिसीवर को डेटा के पुन: प्रसारण का अनुरोध करने के लिए एक रिवर्स चैनल की आवश्यकता के बिना त्रुटियों को ठीक करने की क्षमता देता है, लेकिन एक निश्चित, उच्च फॉरवर्ड चैनल बैंडविड्थ की कीमत पर। इसलिए एफईसी उन स्थितियों में लागू किया जाता है जहां पुन: प्रसारण महंगा या असंभव होता है, जैसे कि एकतरफा संचार लिंक और मल्टीकास्ट में कई रिसीवरों को प्रेषित करते समय। एफईसी जानकारी आमतौर पर बड़े पैमाने पर भंडारण (चुंबकीय, ऑप्टिकल और ठोस राज्य/फ्लैश आधारित) उपकरणों में जोड़ा जाता है ताकि दूषित डेटा की वसूली को सक्षम किया जा सके, मोडेम में व्यापक रूप से उपयोग किया जाता है, उन प्रणालियों पर उपयोग किया जाता है जहां प्राथमिक मेमोरी ईसीसी मेमोरी और प्रसारण स्थितियों में होती है, जहां रिसीवर के पास पुन: प्रसारण का अनुरोध करने की क्षमता नहीं है या ऐसा करने से महत्वपूर्ण विलंबता उत्पन्न होगी। उदाहरण के लिए, यूरेनस की परिक्रमा करने वाले उपग्रह के मामले में, डिकोडिंग त्रुटियों के कारण पुन: प्रसारण कम से कम 5 घंटे की देरी पैदा करेगा।
अतिरेक रिसीवर को सीमित संख्या में त्रुटियों का पता लगाने की अनुमति देता है जो संदेश में कहीं भी हो सकती हैं, और अक्सर इन त्रुटियों को पुनः प्रसारण के बिना ठीक करने के लिए। एफईसी रिसीवर को डेटा के पुन: प्रसारण का अनुरोध करने के लिए एक रिवर्स चैनल की आवश्यकता के बिना त्रुटियों को ठीक करने की क्षमता देता है, लेकिन एक निश्चित, उच्च फॉरवर्ड चैनल बैंडविड्थ की कीमत पर। इसलिए एफईसी उन स्थितियों में लागू किया जाता है जहां पुन: प्रसारण महंगा या असंभव होता है, जैसे कि एकतरफा संचार लिंक और मल्टीकास्ट में कई रिसीवरों को प्रेषित करते समय। एफईसी जानकारी आमतौर पर बड़े पैमाने पर भंडारण (चुंबकीय, ऑप्टिकल और ठोस राज्य/फ्लैश आधारित) उपकरणों में जोड़ा जाता है ताकि दूषित डेटा की वसूली को सक्षम किया जा सके, मोडेम में व्यापक रूप से उपयोग किया जाता है, उन प्रणालियों पर उपयोग किया जाता है जहां प्राथमिक मेमोरी ईसीसी मेमोरी और प्रसारण स्थितियों में होती है, जहां रिसीवर के पास पुन: प्रसारण का अनुरोध करने की क्षमता नहीं है या ऐसा करने से महत्वपूर्ण विलंबता उत्पन्न होगी। उदाहरण के लिए, यूरेनस की परिक्रमा करने वाले उपग्रह के मामले में, डिकोडिंग त्रुटियों के कारण पुन: प्रसारण कम से कम 5 घंटे की देरी पैदा करेगा।


एक रिसीवर में एफईसी प्रसंस्करण एक डिजिटल बिट स्ट्रीम या डिजिटल रूप से संग्राहक वाहक के डिमॉड्यूलेशन में लागू किया जा सकता है। बाद के लिए, एफईसी प्रारंभिक एनालॉग-टू-डिजिटल कनवर्टर | रिसीवर में एनालॉग-टू-डिजिटल रूपांतरण का एक अभिन्न अंग है। Viterbi डिकोडर एक सॉफ्ट-डिसीजन डिकोडर | सॉफ्ट-डिसीजन एल्गोरिथम को लागू करता है, जो शोर से दूषित एनालॉग सिग्नल से डिजिटल डेटा को डिमॉड्यूलेट करता है। कई FEC कोडर्स एक बिट-एरर रेट (BER) सिग्नल भी उत्पन्न कर सकते हैं, जिसका उपयोग एनालॉग प्राप्त इलेक्ट्रॉनिक्स को फाइन-ट्यून करने के लिए फीडबैक के रूप में किया जा सकता है।
एक रिसीवर में एफईसी प्रसंस्करण एक डिजिटल बिट स्ट्रीम या डिजिटल रूप से संग्राहक वाहक के डिमॉड्यूलेशन में लागू किया जा सकता है। बाद के लिए, एफईसी प्रारंभिक एनालॉग-टू-डिजिटल कनवर्टर | रिसीवर में एनालॉग-टू-डिजिटल रूपांतरण का एक अभिन्न अंग है। Viterbi डिकोडर एक [[शीतल-निर्णय डिकोडर]] | सॉफ्ट-डिसीजन एल्गोरिथम को लागू करता है, जो शोर से दूषित एनालॉग सिग्नल से डिजिटल डेटा को डिमॉड्यूलेट करता है। कई FEC कोडर्स एक बिट-एरर रेट (BER) सिग्नल भी उत्पन्न कर सकते हैं, जिसका उपयोग एनालॉग प्राप्त इलेक्ट्रॉनिक्स को फाइन-ट्यून करने के लिए फीडबैक के रूप में किया जा सकता है।
   
   
त्रुटियों या लापता बिट्स का अधिकतम अनुपात जिसे ठीक किया जा सकता है, ईसीसी के डिजाइन द्वारा निर्धारित किया जाता है, इसलिए विभिन्न स्थितियों के लिए अलग-अलग त्रुटि सुधार कोड उपयुक्त होते हैं। सामान्य तौर पर, एक मजबूत कोड अधिक अतिरेक उत्पन्न करता है जिसे उपलब्ध बैंडविड्थ का उपयोग करके प्रसारित करने की आवश्यकता होती है, जो प्राप्त प्रभावी सिग्नल-टू-शोर अनुपात में सुधार करते हुए प्रभावी बिट-दर को कम करता है। क्लाउड शैनन का शोर-चैनल कोडिंग प्रमेय इस सवाल का जवाब देता है कि डिकोडिंग त्रुटि संभावना को शून्य करने वाले सबसे कुशल कोड का उपयोग करते हुए डेटा संचार के लिए कितना बैंडविड्थ बचा है। यह कुछ दिए गए आधार शोर स्तर के साथ एक चैनल की सैद्धांतिक अधिकतम सूचना अंतरण दर पर सीमा स्थापित करता है। उनका प्रमाण रचनात्मक नहीं है, और इसलिए क्षमता प्राप्त करने वाले कोड को कैसे बनाया जाए, इसकी कोई जानकारी नहीं देता है। हालाँकि, वर्षों के शोध के बाद, कुछ उन्नत FEC प्रणालियाँ जैसे ध्रुवीय कोड (कोडिंग सिद्धांत)<ref name=":0" />अनंत लंबाई के फ्रेम की परिकल्पना के तहत शैनन चैनल क्षमता प्राप्त करें।
त्रुटियों या लापता बिट्स का अधिकतम अनुपात जिसे ठीक किया जा सकता है, ईसीसी के डिजाइन द्वारा निर्धारित किया जाता है, इसलिए विभिन्न स्थितियों के लिए अलग-अलग त्रुटि सुधार कोड उपयुक्त होते हैं। सामान्य तौर पर, एक मजबूत कोड अधिक अतिरेक उत्पन्न करता है जिसे उपलब्ध बैंडविड्थ का उपयोग करके प्रसारित करने की आवश्यकता होती है, जो प्राप्त प्रभावी सिग्नल-टू-शोर अनुपात में सुधार करते हुए प्रभावी बिट-दर को कम करता है। क्लाउड शैनन का शोर-चैनल कोडिंग प्रमेय इस सवाल का जवाब देता है कि डिकोडिंग त्रुटि संभावना को शून्य करने वाले सबसे कुशल कोड का उपयोग करते हुए डेटा संचार के लिए कितना बैंडविड्थ बचा है। यह कुछ दिए गए आधार शोर स्तर के साथ एक चैनल की सैद्धांतिक अधिकतम सूचना अंतरण दर पर सीमा स्थापित करता है। उनका प्रमाण रचनात्मक नहीं है, और इसलिए क्षमता प्राप्त करने वाले कोड को कैसे बनाया जाए, इसकी कोई जानकारी नहीं देता है। हालाँकि, वर्षों के शोध के बाद, कुछ उन्नत FEC प्रणालियाँ जैसे ध्रुवीय कोड (कोडिंग सिद्धांत)<ref name=":0" />अनंत लंबाई के फ्रेम की परिकल्पना के तहत शैनन चैनल क्षमता प्राप्त करें।


== यह कैसे काम करता है ==
== यह कैसे काम करता है ==
एल्गोरिथम का उपयोग करके प्रेषित सूचना में अतिरेक (सूचना सिद्धांत) जोड़कर ECC को पूरा किया जाता है। एक निरर्थक बिट कई मूल सूचना बिट्स का एक जटिल कार्य हो सकता है। मूल जानकारी एन्कोडेड आउटपुट में शाब्दिक रूप से प्रकट हो भी सकती है और नहीं भी; कोड जो आउटपुट में अपरिवर्तित इनपुट शामिल करते हैं, व्यवस्थित कोड होते हैं, जबकि जो गैर-व्यवस्थित नहीं होते हैं।
एल्गोरिथम का उपयोग करके प्रेषित सूचना में अतिरेक (सूचना सिद्धांत) जोड़कर ECC को पूरा किया जाता है। एक निरर्थक बिट कई मूल सूचना बिट्स का एक जटिल कार्य हो सकता है। मूल जानकारी एन्कोडेड आउटपुट में शाब्दिक रूप से प्रकट हो भी सकती है और नहीं भी; कोड जो आउटपुट में अपरिवर्तित इनपुट शामिल करते हैं, [[व्यवस्थित कोड]] होते हैं, जबकि जो गैर-व्यवस्थित नहीं होते हैं।


ईसीसी का एक सरल उदाहरण प्रत्येक डेटा बिट को 3 बार प्रसारित करना है, जिसे (3,1) पुनरावृत्ति कोड के रूप में जाना जाता है। एक शोर चैनल के माध्यम से, एक रिसीवर आउटपुट के 8 संस्करण देख सकता है, नीचे दी गई तालिका देखें।
ईसीसी का एक सरल उदाहरण प्रत्येक डेटा बिट को 3 बार प्रसारित करना है, जिसे (3,1) [[पुनरावृत्ति कोड]] के रूप में जाना जाता है। एक शोर चैनल के माध्यम से, एक रिसीवर आउटपुट के 8 संस्करण देख सकता है, नीचे दी गई तालिका देखें।


{| class=wikitable
{| class=wikitable
Line 55: Line 55:
* त्रुटि में 1 बिट ट्रिपलेट तक, या
* त्रुटि में 1 बिट ट्रिपलेट तक, या
* ट्रिपलेट के 2 बिट तक छोड़े गए (मामलों को तालिका में नहीं दिखाया गया है)।
* ट्रिपलेट के 2 बिट तक छोड़े गए (मामलों को तालिका में नहीं दिखाया गया है)।
हालांकि लागू करने में सरल और व्यापक रूप से उपयोग किया जाता है, यह ट्रिपल मॉड्यूलर रिडंडेंसी अपेक्षाकृत अक्षम ईसीसी है। बेहतर ईसीसी कोड आमतौर पर पिछले कई दसियों या यहां तक ​​कि पहले प्राप्त बिट्स के पिछले कई सैकड़ों की जांच करते हैं ताकि यह निर्धारित किया जा सके कि वर्तमान छोटे मुट्ठी भर बिट्स (आमतौर पर 2 से 8 बिट्स के समूह में) को कैसे डिकोड किया जाए।
हालांकि लागू करने में सरल और व्यापक रूप से उपयोग किया जाता है, यह [[ट्रिपल मॉड्यूलर अतिरेक]] अपेक्षाकृत अक्षम ईसीसी है। बेहतर ईसीसी कोड आमतौर पर पिछले कई दसियों या यहां तक ​​कि पहले प्राप्त बिट्स के पिछले कई सैकड़ों की जांच करते हैं ताकि यह निर्धारित किया जा सके कि वर्तमान छोटे मुट्ठी भर बिट्स (आमतौर पर 2 से 8 बिट्स के समूह में) को कैसे डिकोड किया जाए।


== त्रुटियों को कम करने के लिए औसत शोर ==
== त्रुटियों को कम करने के लिए औसत शोर ==
ईसीसी को शोर के औसत से काम करने के लिए कहा जा सकता है; चूंकि प्रत्येक डेटा बिट कई संचरित प्रतीकों को प्रभावित करता है, शोर द्वारा कुछ प्रतीकों का भ्रष्टाचार आम तौर पर मूल उपयोगकर्ता डेटा को दूसरे से निकालने की अनुमति देता है, अनियंत्रित प्राप्त प्रतीक जो समान उपयोगकर्ता डेटा पर भी निर्भर करते हैं।
ईसीसी को शोर के औसत से काम करने के लिए कहा जा सकता है; चूंकि प्रत्येक डेटा बिट कई संचरित प्रतीकों को प्रभावित करता है, शोर द्वारा कुछ प्रतीकों का भ्रष्टाचार आम तौर पर मूल उपयोगकर्ता डेटा को दूसरे से निकालने की अनुमति देता है, अनियंत्रित प्राप्त प्रतीक जो समान उपयोगकर्ता डेटा पर भी निर्भर करते हैं।
* इस जोखिम-पूलिंग प्रभाव के कारण, ईसीसी का उपयोग करने वाली डिजिटल संचार प्रणालियां एक निश्चित न्यूनतम सिग्नल-टू-शोर अनुपात से ऊपर अच्छी तरह से काम करती हैं और इसके नीचे बिल्कुल नहीं।
* इस जोखिम-पूलिंग प्रभाव के कारण, ईसीसी का उपयोग करने वाली डिजिटल संचार प्रणालियां एक निश्चित न्यूनतम सिग्नल-टू-शोर अनुपात से ऊपर अच्छी तरह से काम करती हैं और इसके नीचे बिल्कुल नहीं।
* यह ऑल-ऑर-नथिंग प्रवृत्ति - क्लिफ इफेक्ट - अधिक स्पष्ट हो जाता है क्योंकि मजबूत कोड का उपयोग किया जाता है जो सैद्धांतिक शैनन सीमा के अधिक निकट होते हैं।
* यह ऑल-ऑर-नथिंग प्रवृत्ति - [[चट्टान प्रभाव]] - अधिक स्पष्ट हो जाता है क्योंकि मजबूत कोड का उपयोग किया जाता है जो सैद्धांतिक [[शैनन सीमा]] के अधिक निकट होते हैं।
* इंटरलीविंग ईसीसी कोडेड डेटा प्रेषित ईसीसी कोड के सभी या कुछ भी गुणों को कम कर सकता है जब चैनल त्रुटियां फटने में होती हैं। हालाँकि, इस पद्धति की सीमाएँ हैं; यह नैरोबैंड डेटा पर सबसे अच्छा उपयोग किया जाता है।
* इंटरलीविंग ईसीसी कोडेड डेटा प्रेषित ईसीसी कोड के सभी या कुछ भी गुणों को कम कर सकता है जब चैनल त्रुटियां फटने में होती हैं। हालाँकि, इस पद्धति की सीमाएँ हैं; यह नैरोबैंड डेटा पर सबसे अच्छा उपयोग किया जाता है।


अधिकांश दूरसंचार प्रणालियां एक निश्चित चैनल कोड का उपयोग करती हैं जिसे अपेक्षित सबसे खराब स्थिति वाली बिट त्रुटि दर को सहन करने के लिए डिज़ाइन किया गया है, और यदि बिट त्रुटि दर कभी भी खराब हो तो बिल्कुल भी काम करने में विफल रहती है।
अधिकांश दूरसंचार प्रणालियां एक निश्चित [[चैनल कोड]] का उपयोग करती हैं जिसे अपेक्षित सबसे खराब स्थिति वाली [[बिट त्रुटि दर]] को सहन करने के लिए डिज़ाइन किया गया है, और यदि बिट त्रुटि दर कभी भी खराब हो तो बिल्कुल भी काम करने में विफल रहती है।
हालाँकि, कुछ सिस्टम दिए गए चैनल त्रुटि स्थितियों के अनुकूल होते हैं: हाइब्रिड स्वचालित रिपीट-रिक्वेस्ट के कुछ उदाहरण एक निश्चित ECC विधि का उपयोग करते हैं, जब तक कि ECC त्रुटि दर को संभाल सकता है, तब स्वचालित रिपीट अनुरोध पर स्विच करें जब त्रुटि दर बहुत अधिक हो जाती है;
हालाँकि, कुछ सिस्टम दिए गए चैनल त्रुटि स्थितियों के अनुकूल होते हैं: [[हाइब्रिड ऑटोमैटिक रिपीट-रिक्वेस्ट]] के कुछ उदाहरण एक निश्चित ECC विधि का उपयोग करते हैं, जब तक कि ECC त्रुटि दर को संभाल सकता है, तब स्वचालित रिपीट अनुरोध पर स्विच करें जब त्रुटि दर बहुत अधिक हो जाती है;
अनुकूली मॉडुलन और कोडिंग ईसीसी दरों की एक किस्म का उपयोग करता है, प्रति पैकेट अधिक त्रुटि-सुधार बिट्स जोड़ता है जब चैनल में उच्च त्रुटि दर होती है, या जब उनकी आवश्यकता नहीं होती है तो उन्हें बाहर निकाल दिया जाता है।
अनुकूली मॉडुलन और कोडिंग ईसीसी दरों की एक किस्म का उपयोग करता है, प्रति पैकेट अधिक त्रुटि-सुधार बिट्स जोड़ता है जब चैनल में उच्च त्रुटि दर होती है, या जब उनकी आवश्यकता नहीं होती है तो उन्हें बाहर निकाल दिया जाता है।


Line 70: Line 70:
{{Main|Block code|Convolutional code}}
{{Main|Block code|Convolutional code}}


[[File:BlockCont.png|right|upright=2.25|thumb|त्रुटि सुधार कोड का संक्षिप्त वर्गीकरण]]ईसीसी कोड की दो मुख्य श्रेणियां ब्लॉक कोड और दृढ़ कोड हैं।
[[File:BlockCont.png|right|upright=2.25|thumb|त्रुटि सुधार कोड का संक्षिप्त वर्गीकरण]]ईसीसी कोड की दो मुख्य श्रेणियां [[ब्लॉक कोड]] और दृढ़ कोड हैं।
* ब्लॉक कोड बिट्स या पूर्व निर्धारित आकार के प्रतीकों के निश्चित आकार के ब्लॉक (पैकेट) पर काम करते हैं। प्रैक्टिकल ब्लॉक कोड आमतौर पर बहुपद समय में उनकी ब्लॉक लंबाई में हार्ड-डीकोड किए जा सकते हैं।
* ब्लॉक कोड बिट्स या पूर्व निर्धारित आकार के प्रतीकों के निश्चित आकार के ब्लॉक (पैकेट) पर काम करते हैं। प्रैक्टिकल ब्लॉक कोड आमतौर पर बहुपद समय में उनकी ब्लॉक लंबाई में हार्ड-डीकोड किए जा सकते हैं।
* संवादात्मक कोड मनमाना लंबाई के बिट या प्रतीक धाराओं पर काम करते हैं। वे अक्सर विटरबी एल्गोरिथ्म के साथ सॉफ्ट डीकोडेड होते हैं, हालांकि अन्य एल्गोरिदम कभी-कभी उपयोग किए जाते हैं। विटरबी डिकोडिंग असम्बद्ध रूप से इष्टतम डिकोडिंग दक्षता की अनुमति देता है, जो कनवल्शनल कोड की बढ़ती बाधा लंबाई के साथ है, लेकिन घातीय समय बढ़ती जटिलता की कीमत पर। एक कनवल्शनल कोड जिसे टर्मिनेट किया जाता है, वह भी एक 'ब्लॉक कोड' होता है, जिसमें यह इनपुट डेटा के एक ब्लॉक को एनकोड करता है, लेकिन एक कन्वेन्शनल कोड का ब्लॉक आकार आम तौर पर मनमाना होता है, जबकि ब्लॉक कोड का एक निश्चित आकार होता है जो उनके बीजगणितीय विशेषताओं द्वारा निर्धारित होता है। कनवल्शनल कोड्स के टर्मिनेशन के प्रकारों में टेल-बाइटिंग और बिट-फ्लशिंग शामिल हैं।
* संवादात्मक कोड मनमाना लंबाई के बिट या प्रतीक धाराओं पर काम करते हैं। वे अक्सर [[विटरबी एल्गोरिथ्म]] के साथ सॉफ्ट डीकोडेड होते हैं, हालांकि अन्य एल्गोरिदम कभी-कभी उपयोग किए जाते हैं। विटरबी डिकोडिंग असम्बद्ध रूप से इष्टतम डिकोडिंग दक्षता की अनुमति देता है, जो [[दृढ़ संहिता]] की बढ़ती बाधा लंबाई के साथ है, लेकिन [[घातीय समय]] बढ़ती जटिलता की कीमत पर। एक कनवल्शनल कोड जिसे टर्मिनेट किया जाता है, वह भी एक 'ब्लॉक कोड' होता है, जिसमें यह इनपुट डेटा के एक ब्लॉक को एनकोड करता है, लेकिन एक कन्वेन्शनल कोड का ब्लॉक आकार आम तौर पर मनमाना होता है, जबकि ब्लॉक कोड का एक निश्चित आकार होता है जो उनके बीजगणितीय विशेषताओं द्वारा निर्धारित होता है। कनवल्शनल कोड्स के टर्मिनेशन के प्रकारों में टेल-बाइटिंग और बिट-फ्लशिंग शामिल हैं।
   
   
कई प्रकार के ब्लॉक कोड हैं; रीड-सोलोमन त्रुटि सुधार|रीड-सोलोमन कोडिंग कॉम्पैक्ट डिस्क, डीवीडी और हार्ड डिस्क ड्राइव#त्रुटि दर और हैंडलिंग में इसके व्यापक उपयोग के लिए उल्लेखनीय है। शास्त्रीय ब्लॉक कोड के अन्य उदाहरणों में गोले कोड (बहुविकल्पी), बीसीएच कोड, बहुआयामी समानता-जांच कोड और हैमिंग कोड शामिल हैं।
कई प्रकार के ब्लॉक कोड हैं; रीड-सोलोमन त्रुटि सुधार|रीड-सोलोमन कोडिंग [[कॉम्पैक्ट डिस्क]], [[डीवीडी]] और हार्ड डिस्क ड्राइव#त्रुटि दर और हैंडलिंग में इसके व्यापक उपयोग के लिए उल्लेखनीय है। शास्त्रीय ब्लॉक कोड के अन्य उदाहरणों में गोले कोड (बहुविकल्पी), [[बीसीएच कोड]], बहुआयामी समानता-जांच कोड और [[हैमिंग कोड]] शामिल हैं।


हैमिंग ईसीसी का उपयोग आमतौर पर एनएएनडी फ्लैश मेमोरी त्रुटियों को ठीक करने के लिए किया जाता है।<ref>[http://www.eetasia.com/ART_8800575062_499486_AN_7549c493.HTM "Hamming codes for NAND flash memory devices"] {{Webarchive|url=https://web.archive.org/web/20160821122453/http://www.eetasia.com/ART_8800575062_499486_AN_7549c493.HTM |date=21 August 2016 }}. EE Times-Asia. Apparently based on [http://www.micron.com/~/media/Documents/Products/Technical%20Note/NAND%20Flash/tn2908_NAND_hamming_ECC_code.pdf "Micron Technical Note TN-29-08: Hamming Codes for NAND Flash Memory Devices"]. 2005. Both say: "The Hamming algorithm is an industry-accepted method for error detection and correction in many SLC NAND flash-based applications."</ref>
हैमिंग ईसीसी का उपयोग आमतौर पर एनएएनडी फ्लैश मेमोरी त्रुटियों को ठीक करने के लिए किया जाता है।<ref>[http://www.eetasia.com/ART_8800575062_499486_AN_7549c493.HTM "Hamming codes for NAND flash memory devices"] {{Webarchive|url=https://web.archive.org/web/20160821122453/http://www.eetasia.com/ART_8800575062_499486_AN_7549c493.HTM |date=21 August 2016 }}. EE Times-Asia. Apparently based on [http://www.micron.com/~/media/Documents/Products/Technical%20Note/NAND%20Flash/tn2908_NAND_hamming_ECC_code.pdf "Micron Technical Note TN-29-08: Hamming Codes for NAND Flash Memory Devices"]. 2005. Both say: "The Hamming algorithm is an industry-accepted method for error detection and correction in many SLC NAND flash-based applications."</ref>
यह सिंगल-बिट एरर करेक्शन और 2-बिट एरर डिटेक्शन प्रदान करता है।
यह सिंगल-बिट एरर करेक्शन और 2-बिट एरर डिटेक्शन प्रदान करता है।
हैमिंग कोड केवल अधिक विश्वसनीय सिंगल-लेवल सेल (SLC) NAND के लिए उपयुक्त हैं।
हैमिंग कोड केवल अधिक विश्वसनीय [[एकल-स्तरीय सेल]] (SLC) NAND के लिए उपयुक्त हैं।
सघन बहु-स्तरीय सेल (एमएलसी) एनएएनडी बीसीएच या रीड-सोलोमन जैसे बहु-बिट सुधार ईसीसी का उपयोग कर सकता है।<ref name="spansion">{{cite web|url=http://www.spansion.com/Support/Application%20Notes/Types_of_ECC_Used_on_Flash_AN.pdf|title =फ्लैश मेमोरी पर किस प्रकार के ईसीसी का उपयोग किया जाना चाहिए?|publisher=Spansion|format=Application note|year=2011|quote=रीड-सोलोमन एल्गोरिदम और बीसीएच एल्गोरिदम दोनों एमएलसी नंद फ्लैश के लिए सामान्य ईसीसी विकल्प हैं। ... हैमिंग आधारित ब्लॉक कोड एसएलसी के लिए सबसे अधिक उपयोग किए जाने वाले ईसीसी हैं... रीड-सोलोमन और बीसीएच दोनों ही कई त्रुटियों को संभालने में सक्षम हैं और एमएलसी फ्लैश पर व्यापक रूप से उपयोग किए जाते हैं।}}</ref><ref>{{cite web|author=Jim Cooke|url=https://cushychicken.github.io/assets/cooke_inconvenient_truths.pdf |title=नंद फ्लैश मेमोरी के असुविधाजनक सत्य|date=August 2007|page=28|quote=एसएलसी के लिए, 1 की सुधार सीमा वाला कोड पर्याप्त है। t=4 आवश्यक ... MLC के लिए.}}</ref> NOR Flash आमतौर पर किसी त्रुटि सुधार का उपयोग नहीं करता है।<ref name="spansion"/>
सघन बहु-स्तरीय सेल (एमएलसी) एनएएनडी बीसीएच या रीड-सोलोमन जैसे बहु-बिट सुधार ईसीसी का उपयोग कर सकता है।<ref name="spansion">{{cite web|url=http://www.spansion.com/Support/Application%20Notes/Types_of_ECC_Used_on_Flash_AN.pdf|title =फ्लैश मेमोरी पर किस प्रकार के ईसीसी का उपयोग किया जाना चाहिए?|publisher=Spansion|format=Application note|year=2011|quote=रीड-सोलोमन एल्गोरिदम और बीसीएच एल्गोरिदम दोनों एमएलसी नंद फ्लैश के लिए सामान्य ईसीसी विकल्प हैं। ... हैमिंग आधारित ब्लॉक कोड एसएलसी के लिए सबसे अधिक उपयोग किए जाने वाले ईसीसी हैं... रीड-सोलोमन और बीसीएच दोनों ही कई त्रुटियों को संभालने में सक्षम हैं और एमएलसी फ्लैश पर व्यापक रूप से उपयोग किए जाते हैं।}}</ref><ref>{{cite web|author=Jim Cooke|url=https://cushychicken.github.io/assets/cooke_inconvenient_truths.pdf |title=नंद फ्लैश मेमोरी के असुविधाजनक सत्य|date=August 2007|page=28|quote=एसएलसी के लिए, 1 की सुधार सीमा वाला कोड पर्याप्त है। t=4 आवश्यक ... MLC के लिए.}}</ref> NOR Flash आमतौर पर किसी त्रुटि सुधार का उपयोग नहीं करता है।<ref name="spansion"/>


शास्त्रीय ब्लॉक कोड आमतौर पर हार्ड-डिसीजन एल्गोरिदम का उपयोग करके डिकोड किए जाते हैं,<ref>{{cite journal |author-last1=Baldi |author-first1=M. |author-last2=Chiaraluce |author-first2=F. |title=मल्टीमीडिया प्रसारण में बीसीएच और आरएस कोड के विश्वास प्रचार डिकोडिंग के लिए एक सरल योजना|journal=[[International Journal of Digital Multimedia Broadcasting]] |volume=2008 |pages=1–12 |date=2008 |doi=10.1155/2008/957846 |doi-access=free }}</ref> जिसका अर्थ है कि प्रत्येक इनपुट और आउटपुट सिग्नल के लिए एक कठिन निर्णय लिया जाता है चाहे वह एक या शून्य बिट के अनुरूप हो। इसके विपरीत, विटरबी, एमएपी या बीसीजेआर एल्गोरिथम जैसे सॉफ्ट-डिसीजन एल्गोरिदम का उपयोग करके कन्वेन्शनल कोड को आमतौर पर डिकोड किया जाता है, जो एनालॉग सिग्नल को प्रोसेस (विघटित) करता है, और जो हार्ड-डिसीजन डिकोडिंग की तुलना में बहुत अधिक त्रुटि-सुधार प्रदर्शन की अनुमति देता है।
शास्त्रीय ब्लॉक कोड आमतौर पर हार्ड-डिसीजन एल्गोरिदम का उपयोग करके डिकोड किए जाते हैं,<ref>{{cite journal |author-last1=Baldi |author-first1=M. |author-last2=Chiaraluce |author-first2=F. |title=मल्टीमीडिया प्रसारण में बीसीएच और आरएस कोड के विश्वास प्रचार डिकोडिंग के लिए एक सरल योजना|journal=[[International Journal of Digital Multimedia Broadcasting]] |volume=2008 |pages=1–12 |date=2008 |doi=10.1155/2008/957846 |doi-access=free }}</ref> जिसका अर्थ है कि प्रत्येक इनपुट और आउटपुट सिग्नल के लिए एक कठिन निर्णय लिया जाता है चाहे वह एक या शून्य बिट के अनुरूप हो। इसके विपरीत, विटरबी, एमएपी या [[बीसीजेआर एल्गोरिदम]] जैसे सॉफ्ट-डिसीजन एल्गोरिदम का उपयोग करके कन्वेन्शनल कोड को आमतौर पर डिकोड किया जाता है, जो एनालॉग सिग्नल को प्रोसेस (विघटित) करता है, और जो हार्ड-डिसीजन डिकोडिंग की तुलना में बहुत अधिक त्रुटि-सुधार प्रदर्शन की अनुमति देता है।


लगभग सभी शास्त्रीय ब्लॉक कोड परिमित क्षेत्रों के बीजगणितीय गुणों को लागू करते हैं। इसलिए शास्त्रीय ब्लॉक कोड को अक्सर बीजगणितीय कोड कहा जाता है।
लगभग सभी शास्त्रीय ब्लॉक कोड [[परिमित क्षेत्र]]ों के बीजगणितीय गुणों को लागू करते हैं। इसलिए शास्त्रीय ब्लॉक कोड को अक्सर बीजगणितीय कोड कहा जाता है।


शास्त्रीय ब्लॉक कोड के विपरीत जो अक्सर त्रुटि-पता लगाने या त्रुटि-सुधार करने की क्षमता निर्दिष्ट करते हैं, कई आधुनिक ब्लॉक कोड जैसे एलडीपीसी कोड में ऐसी गारंटी नहीं होती है। इसके बजाय, आधुनिक कोड का मूल्यांकन उनकी बिट त्रुटि दरों के संदर्भ में किया जाता है।
शास्त्रीय ब्लॉक कोड के विपरीत जो अक्सर त्रुटि-पता लगाने या त्रुटि-सुधार करने की क्षमता निर्दिष्ट करते हैं, कई आधुनिक ब्लॉक कोड जैसे [[एलडीपीसी कोड]] में ऐसी गारंटी नहीं होती है। इसके बजाय, आधुनिक कोड का मूल्यांकन उनकी बिट त्रुटि दरों के संदर्भ में किया जाता है।


अधिकांश फॉरवर्ड एरर करेक्शन कोड केवल बिट-फ्लिप को सही करते हैं, लेकिन बिट-इंसर्शन या बिट-डिलीशन को नहीं।
अधिकांश [[आगे त्रुटि सुधार]] कोड केवल बिट-फ्लिप को सही करते हैं, लेकिन बिट-इंसर्शन या बिट-डिलीशन को नहीं।
इस सेटिंग में, बिट त्रुटि दर को मापने के लिए हैमिंग दूरी उपयुक्त तरीका है।
इस सेटिंग में, बिट त्रुटि दर को मापने के लिए [[हैमिंग दूरी]] उपयुक्त तरीका है।
मार्कर कोड और वॉटरमार्क कोड जैसे बिट-प्रविष्टि और बिट-विलोपन को ठीक करने के लिए कुछ अग्रेषित त्रुटि सुधार कोड डिज़ाइन किए गए हैं।
मार्कर कोड और वॉटरमार्क कोड जैसे बिट-प्रविष्टि और बिट-विलोपन को ठीक करने के लिए कुछ अग्रेषित त्रुटि सुधार कोड डिज़ाइन किए गए हैं।
ऐसे कोड का उपयोग करते समय बिट त्रुटि दर को मापने के लिए लेवेनशेटिन दूरी एक अधिक उपयुक्त तरीका है।
ऐसे कोड का उपयोग करते समय बिट त्रुटि दर को मापने के लिए [[लेवेनशेटिन दूरी]] एक अधिक उपयुक्त तरीका है।
<ref>{{cite web |author-last1=Shah |author-first1=Gaurav |author-last2=Molina |author-first2=Andres |author-last3=Blaze |author-first3=Matt |title=कीबोर्ड और गुप्त चैनल|url=https://www.usenix.org/legacy/event/sec06/tech/full_papers/shah/shah_html/jbug-Usenix06.html |website=USENIX |access-date=20 December 2018 |date=2006}}</ref>
<ref>{{cite web |author-last1=Shah |author-first1=Gaurav |author-last2=Molina |author-first2=Andres |author-last3=Blaze |author-first3=Matt |title=कीबोर्ड और गुप्त चैनल|url=https://www.usenix.org/legacy/event/sec06/tech/full_papers/shah/shah_html/jbug-Usenix06.html |website=USENIX |access-date=20 December 2018 |date=2006}}</ref>


Line 109: Line 109:
क्लासिकल (बीजगणितीय) ब्लॉक कोड और कन्वेन्शनल कोड अक्सर समेकित कोडिंग योजनाओं में संयुक्त होते हैं जिसमें एक छोटी बाधा-लंबाई विटरबी-डीकोडेड कनवल्शनल कोड अधिकांश काम करता है और एक ब्लॉक कोड (आमतौर पर रीड-सोलोमन) बड़े प्रतीक आकार और ब्लॉक लंबाई के साथ कनवल्शनल डिकोडर द्वारा की गई किसी भी त्रुटि को मिटा देता है। त्रुटि सुधार कोड के इस परिवार के साथ एकल पास डिकोडिंग बहुत कम त्रुटि दर प्राप्त कर सकता है, लेकिन लंबी दूरी की संचरण स्थितियों (जैसे गहरे स्थान) के लिए पुनरावृत्त डिकोडिंग की सिफारिश की जाती है।
क्लासिकल (बीजगणितीय) ब्लॉक कोड और कन्वेन्शनल कोड अक्सर समेकित कोडिंग योजनाओं में संयुक्त होते हैं जिसमें एक छोटी बाधा-लंबाई विटरबी-डीकोडेड कनवल्शनल कोड अधिकांश काम करता है और एक ब्लॉक कोड (आमतौर पर रीड-सोलोमन) बड़े प्रतीक आकार और ब्लॉक लंबाई के साथ कनवल्शनल डिकोडर द्वारा की गई किसी भी त्रुटि को मिटा देता है। त्रुटि सुधार कोड के इस परिवार के साथ एकल पास डिकोडिंग बहुत कम त्रुटि दर प्राप्त कर सकता है, लेकिन लंबी दूरी की संचरण स्थितियों (जैसे गहरे स्थान) के लिए पुनरावृत्त डिकोडिंग की सिफारिश की जाती है।


कनेक्टेड कोड उपग्रह और गहरे अंतरिक्ष संचार में मानक अभ्यास रहे हैं क्योंकि वायेजर कार्यक्रम ने पहली बार यूरेनस के साथ 1986 की मुठभेड़ में तकनीक का उपयोग किया था। गैलीलियो (अंतरिक्ष यान) शिल्प ने असफल एंटीना होने के कारण बहुत उच्च त्रुटि दर स्थितियों की भरपाई के लिए पुनरावृत्त संघटित कोड का उपयोग किया।
कनेक्टेड कोड उपग्रह और गहरे अंतरिक्ष संचार में मानक अभ्यास रहे हैं क्योंकि वायेजर कार्यक्रम ने पहली बार यूरेनस के साथ 1986 की मुठभेड़ में तकनीक का उपयोग किया था। [[गैलीलियो (अंतरिक्ष यान)]] शिल्प ने असफल एंटीना होने के कारण बहुत उच्च त्रुटि दर स्थितियों की भरपाई के लिए पुनरावृत्त संघटित कोड का उपयोग किया।


== लो-डेंसिटी पैरिटी-चेक (LDPC)==
== लो-डेंसिटी पैरिटी-चेक (LDPC)==
{{Main|Low-density parity-check code}}
{{Main|Low-density parity-check code}}
लो-डेंसिटी पैरिटी-चेक कोड | लो-डेंसिटी पैरिटी-चेक (LDPC) कोड अत्यधिक कुशल रैखिक ब्लॉक का एक वर्ग है
[[कम-घनत्व समता-चेक कोड]] | लो-डेंसिटी पैरिटी-चेक (LDPC) कोड अत्यधिक कुशल रैखिक ब्लॉक का एक वर्ग है
कई एकल समानता जांच (एसपीसी) कोड से बने कोड। वे अपनी ब्लॉक लंबाई के संदर्भ में रैखिक समय जटिलता पर पुनरावृत्त नरम-निर्णय डिकोडिंग दृष्टिकोण का उपयोग करके शैनन सीमा (सैद्धांतिक अधिकतम) के बहुत करीब प्रदर्शन प्रदान कर सकते हैं। व्यावहारिक कार्यान्वयन समानांतर में घटक SPC कोड को डिकोड करने पर बहुत अधिक निर्भर करता है।
कई एकल समानता जांच (एसपीसी) कोड से बने कोड। वे अपनी ब्लॉक लंबाई के संदर्भ में रैखिक समय जटिलता पर पुनरावृत्त नरम-निर्णय डिकोडिंग दृष्टिकोण का उपयोग करके शैनन सीमा (सैद्धांतिक अधिकतम) के बहुत करीब प्रदर्शन प्रदान कर सकते हैं। व्यावहारिक कार्यान्वयन समानांतर में घटक SPC कोड को डिकोड करने पर बहुत अधिक निर्भर करता है।


Line 120: Line 120:
1990 के दशक तक उन्हें ज्यादातर नजरअंदाज किया गया था।
1990 के दशक तक उन्हें ज्यादातर नजरअंदाज किया गया था।


LDPC कोड अब हाल के कई हाई-स्पीड संचार मानकों में उपयोग किए जाते हैं, जैसे DVB-S2 (डिजिटल वीडियो ब्रॉडकास्टिंग - सैटेलाइट - सेकेंड जेनरेशन), WiMAX (माइक्रोवेव संचार के लिए IEEE 802.16e मानक), हाई-स्पीड वायरलेस LAN (IEEE 802.11n) ),<ref>IEEE Standard, section 20.3.11.6 [http://standards.ieee.org/getieee802/download/802.11n-2009.pdf "802.11n-2009"] {{Webarchive|url=https://web.archive.org/web/20130203104520/http://standards.ieee.org/getieee802/download/802.11n-2009.pdf |date=3 February 2013 }}, IEEE, 29 October 2009, accessed 21 March 2011.</ref> 802.3an#10GBASE-T|10GBase-T ईथरनेट (802.3an) और G.hn|G.hn/G.9960 (बिजली लाइनों, फोन लाइनों और समाक्षीय केबल पर नेटवर्किंग के लिए ITU-T मानक)। अन्य LDPC कोड 3GPP MBMS के भीतर वायरलेस संचार मानकों के लिए मानकीकृत हैं (मानकों में फाउंटेन कोड#फाउंटेन कोड देखें)।
LDPC कोड अब हाल के कई हाई-स्पीड संचार मानकों में उपयोग किए जाते हैं, जैसे [[DVB-S2]] (डिजिटल वीडियो ब्रॉडकास्टिंग - सैटेलाइट - सेकेंड जेनरेशन), [[WiMAX]] (माइक्रोवेव संचार के लिए IEEE 802.16e मानक), हाई-स्पीड वायरलेस LAN (IEEE 802.11n) ),<ref>IEEE Standard, section 20.3.11.6 [http://standards.ieee.org/getieee802/download/802.11n-2009.pdf "802.11n-2009"] {{Webarchive|url=https://web.archive.org/web/20130203104520/http://standards.ieee.org/getieee802/download/802.11n-2009.pdf |date=3 February 2013 }}, IEEE, 29 October 2009, accessed 21 March 2011.</ref> 802.3an#10GBASE-T|10GBase-T ईथरनेट (802.3an) और G.hn|G.hn/G.9960 (बिजली लाइनों, फोन लाइनों और समाक्षीय केबल पर नेटवर्किंग के लिए ITU-T मानक)। अन्य LDPC कोड [[3GPP]] [[MBMS]] के भीतर वायरलेस संचार मानकों के लिए मानकीकृत हैं (मानकों में फाउंटेन कोड#फाउंटेन कोड देखें)।


== टर्बो कोड ==
== टर्बो कोड ==
{{Main|Turbo code}}
{{Main|Turbo code}}
टर्बो कोड एक पुनरावर्तित सॉफ्ट-डिकोडिंग योजना है जो दो या दो से अधिक अपेक्षाकृत सरल कनवल्शनल कोड और एक इंटरलीवर को एक ब्लॉक कोड बनाने के लिए जोड़ती है जो शैनन सीमा के डेसिबल के एक अंश के भीतर प्रदर्शन कर सकता है। व्यावहारिक अनुप्रयोग के संदर्भ में एलडीपीसी कोड से पहले, वे अब समान प्रदर्शन प्रदान करते हैं।
[[टर्बो कोड]] एक पुनरावर्तित सॉफ्ट-डिकोडिंग योजना है जो दो या दो से अधिक अपेक्षाकृत सरल कनवल्शनल कोड और एक इंटरलीवर को एक ब्लॉक कोड बनाने के लिए जोड़ती है जो शैनन सीमा के डेसिबल के एक अंश के भीतर प्रदर्शन कर सकता है। व्यावहारिक अनुप्रयोग के संदर्भ में एलडीपीसी कोड से पहले, वे अब समान प्रदर्शन प्रदान करते हैं।


टर्बो कोडिंग के शुरुआती व्यावसायिक अनुप्रयोगों में से एक CDMA2000 (TIA IS-2000) डिजिटल सेलुलर तकनीक थी जिसे क्वालकॉम द्वारा विकसित किया गया था और वेरिज़ोन वायरलेस, स्प्रिंट नेक्सटल और अन्य वाहकों द्वारा बेचा गया था। इसका उपयोग CDMA2000 1x के विकास के लिए विशेष रूप से इंटरनेट एक्सेस, Evolution-Data Optimized|1xEV-DO (TIA IS-856) के लिए भी किया जाता है। 1x की तरह, EV-DO क्वालकॉम द्वारा विकसित किया गया था, और वेरिज़ोन वायरलेस, स्प्रिंट नेक्स्टल और अन्य वाहकों द्वारा बेचा जाता है (1xEV-DO के लिए वेरिज़ोन का मार्केटिंग नाम ब्रॉडबैंड एक्सेस है, स्प्रिंट के उपभोक्ता और 1xEV-DO के लिए व्यावसायिक मार्केटिंग नाम पावर विजन हैं और मोबाइल ब्रॉडबैंड, क्रमशः)।
टर्बो कोडिंग के शुरुआती व्यावसायिक अनुप्रयोगों में से एक [[CDMA2000]] (TIA IS-2000) डिजिटल सेलुलर तकनीक थी जिसे [[क्वालकॉम]] द्वारा विकसित किया गया था और [[वेरिज़ॉन वायरलेस]], [[स्प्रिंट नेक्सटल]] और अन्य वाहकों द्वारा बेचा गया था। इसका उपयोग CDMA2000 1x के विकास के लिए विशेष रूप से इंटरनेट एक्सेस, [[Evolution-Data Optimized]]|1xEV-DO (TIA IS-856) के लिए भी किया जाता है। 1x की तरह, EV-DO क्वालकॉम द्वारा विकसित किया गया था, और वेरिज़ोन वायरलेस, स्प्रिंट नेक्स्टल और अन्य वाहकों द्वारा बेचा जाता है (1xEV-DO के लिए वेरिज़ोन का मार्केटिंग नाम ब्रॉडबैंड एक्सेस है, स्प्रिंट के उपभोक्ता और 1xEV-DO के लिए व्यावसायिक मार्केटिंग नाम पावर विजन हैं और मोबाइल ब्रॉडबैंड, क्रमशः)।


== स्थानीय डिकोडिंग और कोड का परीक्षण ==
== स्थानीय डिकोडिंग और कोड का परीक्षण ==
{{Main|Locally decodable code|Locally testable code}}
{{Main|Locally decodable code|Locally testable code}}
कभी-कभी केवल संदेश के एक बिट को डिकोड करना आवश्यक होता है, या यह जांचने के लिए कि क्या दिया गया संकेत एक कोडवर्ड है, और पूरे सिग्नल को देखे बिना ऐसा करें। यह एक स्ट्रीमिंग सेटिंग में समझ में आ सकता है, जहां कोडवर्ड बहुत तेजी से पर्याप्त रूप से डिकोड किए जाने के लिए बहुत बड़े हैं और जहां संदेश के केवल कुछ बिट्स अभी के लिए रुचि के हैं। साथ ही ऐसे कोड कम्प्यूटेशनल जटिलता सिद्धांत में एक महत्वपूर्ण उपकरण बन गए हैं, उदाहरण के लिए, संभाव्य रूप से जांच योग्य प्रमाणों के डिजाइन के लिए।
कभी-कभी केवल संदेश के एक बिट को डिकोड करना आवश्यक होता है, या यह जांचने के लिए कि क्या दिया गया संकेत एक कोडवर्ड है, और पूरे सिग्नल को देखे बिना ऐसा करें। यह एक स्ट्रीमिंग सेटिंग में समझ में आ सकता है, जहां कोडवर्ड बहुत तेजी से पर्याप्त रूप से डिकोड किए जाने के लिए बहुत बड़े हैं और जहां संदेश के केवल कुछ बिट्स अभी के लिए रुचि के हैं। साथ ही ऐसे कोड [[कम्प्यूटेशनल जटिलता सिद्धांत]] में एक महत्वपूर्ण उपकरण बन गए हैं, उदाहरण के लिए, संभाव्य रूप से जांच योग्य प्रमाणों के डिजाइन के लिए।


स्थानीय रूप से डिकोड करने योग्य कोड त्रुटि-सुधार करने वाले कोड होते हैं, जिसके लिए कोडवर्ड के कुछ स्थिर अंशों पर कोडवर्ड के दूषित होने के बाद भी कोडवर्ड की स्थिति की एक छोटी (निरंतर) संख्या को देखते हुए संदेश के एकल बिट्स को संभाव्य रूप से पुनर्प्राप्त किया जा सकता है। स्थानीय रूप से परीक्षण योग्य कोड त्रुटि-सुधार करने वाले कोड होते हैं, जिसके लिए यह संभाव्य रूप से जांचा जा सकता है कि सिग्नल की स्थिति की एक छोटी संख्या को देखते हुए सिग्नल कोडवर्ड के करीब है या नहीं।
स्थानीय रूप से डिकोड करने योग्य कोड त्रुटि-सुधार करने वाले कोड होते हैं, जिसके लिए कोडवर्ड के कुछ स्थिर अंशों पर कोडवर्ड के दूषित होने के बाद भी कोडवर्ड की स्थिति की एक छोटी (निरंतर) संख्या को देखते हुए संदेश के एकल बिट्स को संभाव्य रूप से पुनर्प्राप्त किया जा सकता है। [[स्थानीय रूप से परीक्षण योग्य कोड]] त्रुटि-सुधार करने वाले कोड होते हैं, जिसके लिए यह संभाव्य रूप से जांचा जा सकता है कि सिग्नल की स्थिति की एक छोटी संख्या को देखते हुए सिग्नल कोडवर्ड के करीब है या नहीं।


== इंटरलीविंग ==
== इंटरलीविंग ==
{{redirect|Interleaver|the fiber-optic device|optical interleaver}}
{{redirect|Interleaver|the fiber-optic device|optical interleaver}}


[[File:Interleaving1.png|right|upright=2.25|thumb|इंटरलीविंग विचार का एक छोटा उदाहरण]]आगे त्रुटि सुधार कोड के प्रदर्शन को बेहतर बनाने के लिए इंटरलीविंग का उपयोग अक्सर डिजिटल संचार और भंडारण प्रणालियों में किया जाता है। कई संचार चैनल मेमोरीलेस नहीं होते हैं: आमतौर पर त्रुटियाँ स्वतंत्र रूप से होने के बजाय फटने वाली त्रुटियों में होती हैं। यदि किसी कोड शब्द में त्रुटियों की संख्या त्रुटि-सुधार कोड की क्षमता से अधिक है, तो यह मूल कोड शब्द को पुनर्प्राप्त करने में विफल रहता है। इंटरलीविंग कई कोड शब्दों में स्रोत प्रतीकों को फेरबदल करके इस समस्या को दूर करता है, जिससे त्रुटियों का अधिक समान वितरण (निरंतर) बनता है।<ref name="turbo-principles">{{cite book |author-first1=B. |author-last1=Vucetic |author-first2=J. |author-last2=Yuan |title=टर्बो कोड: सिद्धांत और अनुप्रयोग|publisher=[[Springer Verlag]] |isbn=978-0-7923-7868-6 |date=2000}}</ref> इसलिए, इंटरलीविंग का व्यापक रूप से बर्स्ट एरर-करेक्टिंग कोड | बर्स्ट एरर-करेक्शन के लिए उपयोग किया जाता है।
[[File:Interleaving1.png|right|upright=2.25|thumb|इंटरलीविंग विचार का एक छोटा उदाहरण]]आगे त्रुटि सुधार कोड के प्रदर्शन को बेहतर बनाने के लिए इंटरलीविंग का उपयोग अक्सर डिजिटल संचार और भंडारण प्रणालियों में किया जाता है। कई संचार चैनल मेमोरीलेस नहीं होते हैं: आमतौर पर त्रुटियाँ स्वतंत्र रूप से होने के बजाय फटने वाली त्रुटियों में होती हैं। यदि किसी [[कोड शब्द]] में त्रुटियों की संख्या त्रुटि-सुधार कोड की क्षमता से अधिक है, तो यह मूल कोड शब्द को पुनर्प्राप्त करने में विफल रहता है। इंटरलीविंग कई कोड शब्दों में स्रोत प्रतीकों को फेरबदल करके इस समस्या को दूर करता है, जिससे त्रुटियों का अधिक [[समान वितरण (निरंतर)]] बनता है।<ref name="turbo-principles">{{cite book |author-first1=B. |author-last1=Vucetic |author-first2=J. |author-last2=Yuan |title=टर्बो कोड: सिद्धांत और अनुप्रयोग|publisher=[[Springer Verlag]] |isbn=978-0-7923-7868-6 |date=2000}}</ref> इसलिए, इंटरलीविंग का व्यापक रूप से [[फट त्रुटि सुधार कोड]] | बर्स्ट एरर-करेक्शन के लिए उपयोग किया जाता है।


आधुनिक पुनरावृत्त कोड का विश्लेषण, जैसे टर्बो कोड और एलडीपीसी कोड, आमतौर पर त्रुटियों का एक स्वतंत्र वितरण मानते हैं।<ref>{{cite journal |author-first1=Michael |author-last1=Luby |author-link1=Michael Luby |author-first2=M. |author-last2=Mitzenmacher |author-first3=A. |author-last3=Shokrollahi |author-first4=D. |author-last4=Spielman |author-first5=V. |author-last5=Stemann |title=प्रैक्टिकल लॉस-रेसिलिएंट कोड|journal=Proc. 29th Annual Association for Computing Machinery (ACM) Symposium on Theory of Computation |date=1997}}</ref> एलडीपीसी कोड का उपयोग करने वाले सिस्टम आमतौर पर कोड वर्ड के भीतर प्रतीकों में अतिरिक्त इंटरलीविंग को नियोजित करते हैं।<ref>{{Cite journal |title=डिजिटल वीडियो प्रसारण (डीवीबी); ब्रॉडकास्टिंग, इंटरएक्टिव सर्विसेज, न्यूज गैदरिंग और अन्य सैटेलाइट ब्रॉडबैंड एप्लिकेशन (DVB-S2) के लिए दूसरी पीढ़ी की फ्रेमिंग संरचना, चैनल कोडिंग और मॉड्यूलेशन सिस्टम|journal=En 302 307 |issue=V1.2.1 |publisher=[[ETSI]] |date=April 2009}}</ref>
आधुनिक पुनरावृत्त कोड का विश्लेषण, जैसे टर्बो कोड और [[एलडीपीसी कोड]], आमतौर पर त्रुटियों का एक स्वतंत्र वितरण मानते हैं।<ref>{{cite journal |author-first1=Michael |author-last1=Luby |author-link1=Michael Luby |author-first2=M. |author-last2=Mitzenmacher |author-first3=A. |author-last3=Shokrollahi |author-first4=D. |author-last4=Spielman |author-first5=V. |author-last5=Stemann |title=प्रैक्टिकल लॉस-रेसिलिएंट कोड|journal=Proc. 29th Annual Association for Computing Machinery (ACM) Symposium on Theory of Computation |date=1997}}</ref> एलडीपीसी कोड का उपयोग करने वाले सिस्टम आमतौर पर कोड वर्ड के भीतर प्रतीकों में अतिरिक्त इंटरलीविंग को नियोजित करते हैं।<ref>{{Cite journal |title=डिजिटल वीडियो प्रसारण (डीवीबी); ब्रॉडकास्टिंग, इंटरएक्टिव सर्विसेज, न्यूज गैदरिंग और अन्य सैटेलाइट ब्रॉडबैंड एप्लिकेशन (DVB-S2) के लिए दूसरी पीढ़ी की फ्रेमिंग संरचना, चैनल कोडिंग और मॉड्यूलेशन सिस्टम|journal=En 302 307 |issue=V1.2.1 |publisher=[[ETSI]] |date=April 2009}}</ref>
टर्बो कोड के लिए, एक इंटरलीवर एक अभिन्न अंग है और अच्छे प्रदर्शन के लिए इसका उचित डिज़ाइन महत्वपूर्ण है।<ref name="turbo-principles"/><ref>{{cite journal|first1=K. S.|last1=Andrews|first2=D.|last2=Divsalar|first3=S.|last3=Dolinar|first4=J.|last4=Hamkins|first5=C. R.|last5=Jones|first6=F.|last6=Pollara|title=डीप-स्पेस एप्लिकेशन के लिए टर्बो और एलडीपीसी कोड का विकास|journal=[[Proceedings of the IEEE]]|volume=95|issue=11|pages=2142–2156|date=November 2007|doi=10.1109/JPROC.2007.905132|s2cid=9289140}}</ref> पुनरावृत्त डिकोडिंग एल्गोरिथ्म सबसे अच्छा काम करता है जब डिकोडर का प्रतिनिधित्व करने वाले कारक ग्राफ में छोटे चक्र नहीं होते हैं; छोटे चक्रों से बचने के लिए इंटरलीवर को चुना जाता है।
टर्बो कोड के लिए, एक इंटरलीवर एक अभिन्न अंग है और अच्छे प्रदर्शन के लिए इसका उचित डिज़ाइन महत्वपूर्ण है।<ref name="turbo-principles"/><ref>{{cite journal|first1=K. S.|last1=Andrews|first2=D.|last2=Divsalar|first3=S.|last3=Dolinar|first4=J.|last4=Hamkins|first5=C. R.|last5=Jones|first6=F.|last6=Pollara|title=डीप-स्पेस एप्लिकेशन के लिए टर्बो और एलडीपीसी कोड का विकास|journal=[[Proceedings of the IEEE]]|volume=95|issue=11|pages=2142–2156|date=November 2007|doi=10.1109/JPROC.2007.905132|s2cid=9289140}}</ref> पुनरावृत्त डिकोडिंग एल्गोरिथ्म सबसे अच्छा काम करता है जब डिकोडर का प्रतिनिधित्व करने वाले [[कारक ग्राफ]] में छोटे चक्र नहीं होते हैं; छोटे चक्रों से बचने के लिए इंटरलीवर को चुना जाता है।


इंटरलीवर डिज़ाइन में शामिल हैं:
इंटरलीवर डिज़ाइन में शामिल हैं:
Line 147: Line 147:
* यादृच्छिक इंटरलीवर (जहां इंटरलीवर एक ज्ञात यादृच्छिक क्रमपरिवर्तन है)
* यादृच्छिक इंटरलीवर (जहां इंटरलीवर एक ज्ञात यादृच्छिक क्रमपरिवर्तन है)
* एस-यादृच्छिक इंटरलीवर (जहां इंटरलीवर एक ज्ञात यादृच्छिक क्रमपरिवर्तन है जिसमें बाधा है कि दूरी एस के भीतर कोई इनपुट प्रतीक आउटपुट में एस की दूरी के भीतर दिखाई नहीं देता है)।<ref>{{cite journal|first1=S.|last1=Dolinar|first2=D.|last2=Divsalar|title=यादृच्छिक और गैर-यादृच्छिक क्रमपरिवर्तन का उपयोग करके टर्बो कोड के लिए भार वितरण|citeseerx=10.1.1.105.6640|date=15 August 1995|pages=42–122|journal=TDA Progress Report|volume=122|bibcode=1995TDAPR.122...56D}}</ref>
* एस-यादृच्छिक इंटरलीवर (जहां इंटरलीवर एक ज्ञात यादृच्छिक क्रमपरिवर्तन है जिसमें बाधा है कि दूरी एस के भीतर कोई इनपुट प्रतीक आउटपुट में एस की दूरी के भीतर दिखाई नहीं देता है)।<ref>{{cite journal|first1=S.|last1=Dolinar|first2=D.|last2=Divsalar|title=यादृच्छिक और गैर-यादृच्छिक क्रमपरिवर्तन का उपयोग करके टर्बो कोड के लिए भार वितरण|citeseerx=10.1.1.105.6640|date=15 August 1995|pages=42–122|journal=TDA Progress Report|volume=122|bibcode=1995TDAPR.122...56D}}</ref>
* एक विवाद-मुक्त द्विघात क्रमचय बहुपद (QPP)।<ref name="Takeshita1">{{cite journal |title=क्रमपरिवर्तन बहुपद इंटरलीवर्स: एक बीजगणितीय-ज्यामितीय परिप्रेक्ष्य|date=2006 |first1=Oscar |last1=Takeshita |arxiv=cs/0601048 |doi=10.1109/TIT.2007.896870 |volume=53 |issue=6 |journal=[[IEEE Transactions on Information Theory]] |pages=2116–2132|bibcode=2006cs........1048T |s2cid=660 }}</ref> उपयोग का एक उदाहरण 3GPP लॉन्ग टर्म इवोल्यूशन मोबाइल दूरसंचार मानक में है।<ref>[http://www.3gpp.org/ftp/Specs/html-info/36212.htm 3GPP TS 36.212], version 8.8.0, page 14</ref>
* एक विवाद-मुक्त द्विघात क्रमचय बहुपद (QPP)।<ref name="Takeshita1">{{cite journal |title=क्रमपरिवर्तन बहुपद इंटरलीवर्स: एक बीजगणितीय-ज्यामितीय परिप्रेक्ष्य|date=2006 |first1=Oscar |last1=Takeshita |arxiv=cs/0601048 |doi=10.1109/TIT.2007.896870 |volume=53 |issue=6 |journal=[[IEEE Transactions on Information Theory]] |pages=2116–2132|bibcode=2006cs........1048T |s2cid=660 }}</ref> उपयोग का एक उदाहरण [[3GPP लॉन्ग टर्म इवोल्यूशन]] मोबाइल दूरसंचार मानक में है।<ref>[http://www.3gpp.org/ftp/Specs/html-info/36212.htm 3GPP TS 36.212], version 8.8.0, page 14</ref>
मल्टी-कैरियर सिग्नल कम्युनिकेशन सिस्टम में, फ्रीक्वेंसी डायवर्सिटी स्कीम प्रदान करने के लिए कैरियर्स के बीच इंटरलीविंग को नियोजित किया जा सकता है, उदाहरण के लिए, फ्रीक्वेंसी-सेलेक्टिव फेडिंग या नैरोबैंड इंटरफेरेंस को कम करने के लिए।<ref>{{Cite journal |title=डिजिटल वीडियो प्रसारण (डीवीबी); दूसरी पीढ़ी के डिजिटल स्थलीय टेलीविजन प्रसारण प्रणाली (DVB-T2) के लिए फ़्रेम संरचना, चैनल कोडिंग और मॉड्यूलेशन|journal=En 302 755 |issue=V1.1.1 |publisher=[[ETSI]] |date=September 2009}}</ref>
मल्टी-[[वाहक संकेत]] कम्युनिकेशन सिस्टम में, फ्रीक्वेंसी [[विविधता योजना]] प्रदान करने के लिए कैरियर्स के बीच इंटरलीविंग को नियोजित किया जा सकता है, उदाहरण के लिए, [[आवृत्ति-चयनात्मक लुप्त होती]] या नैरोबैंड इंटरफेरेंस को कम करने के लिए।<ref>{{Cite journal |title=डिजिटल वीडियो प्रसारण (डीवीबी); दूसरी पीढ़ी के डिजिटल स्थलीय टेलीविजन प्रसारण प्रणाली (DVB-T2) के लिए फ़्रेम संरचना, चैनल कोडिंग और मॉड्यूलेशन|journal=En 302 755 |issue=V1.1.1 |publisher=[[ETSI]] |date=September 2009}}</ref>




Line 165: Line 165:
फट त्रुटि के साथ संचरण:                    {{not a typo|abcdefgabcd____bcdefgabcdefg}}
फट त्रुटि के साथ संचरण:                    {{not a typo|abcdefgabcd____bcdefgabcdefg}}
डीइंटरलीविंग के बाद प्राप्त कोड शब्द:          {{not a typo|aa_abbbbccccdddde_eef_ffg_gg}}
डीइंटरलीविंग के बाद प्राप्त कोड शब्द:          {{not a typo|aa_abbbbccccdddde_eef_ffg_gg}}
प्रत्येक कोडवर्ड में{{not a typo|aaaa}},{{not a typo|eeee}},{{not a typo|ffff}}, तथा{{not a typo|gggg}}, केवल एक बिट बदला गया है, इसलिए एक-बिट त्रुटि-सुधार कोड सब कुछ सही ढंग से डिकोड करेगा।
प्रत्येक कोडवर्ड में{{not a typo|aaaa}},{{not a typo|eeee}},{{not a typo|ffff}}, और{{not a typo|gggg}}, केवल एक बिट बदला गया है, इसलिए एक-बिट त्रुटि-सुधार कोड सब कुछ सही ढंग से डिकोड करेगा।


बिना इंटरलीविंग के ट्रांसमिशन:
बिना इंटरलीविंग के ट्रांसमिशन:
Line 171: Line 171:
  मूल प्रेषित वाक्य:                      {{not a typo|ThisIsAnExampleOfInterleaving}}
  मूल प्रेषित वाक्य:                      {{not a typo|ThisIsAnExampleOfInterleaving}}
बर्स्ट त्रुटि के साथ वाक्य प्राप्त हुआ:              {{not a typo|ThisIs______pleOfInterleaving}}
बर्स्ट त्रुटि के साथ वाक्य प्राप्त हुआ:              {{not a typo|ThisIs______pleOfInterleaving}}
शब्द{{not a typo|AnExample}}ज्यादातर समझ से बाहर और सही करने के लिए मुश्किल समाप्त होता है।
अवधि{{not a typo|AnExample}}ज्यादातर समझ से बाहर और सही करने के लिए मुश्किल समाप्त होता है।


इंटरलीविंग के साथ:
इंटरलीविंग के साथ:
Line 183: Line 183:
=== इंटरलीविंग के नुकसान ===
=== इंटरलीविंग के नुकसान ===


इंटरलीविंग तकनीकों का उपयोग कुल विलंब को बढ़ाता है। ऐसा इसलिए है क्योंकि पैकेट को डिकोड किए जाने से पहले पूरे इंटरलीव्ड ब्लॉक को प्राप्त किया जाना चाहिए।<ref>{{cite web |title=इंटरलीविंग की व्याख्या करना|author=Techie|date=3 June 2010|website=W3 Techie Blog|url=http://w3techie.com/2010/explaining-interleaving/|access-date=2010-06-03}}</ref> साथ ही इंटरलीवर त्रुटियों की संरचना को छिपाते हैं; इंटरलीवर के बिना, अधिक उन्नत डिकोडिंग एल्गोरिदम त्रुटि संरचना का लाभ उठा सकते हैं और इंटरलीवर के साथ संयुक्त सरल डिकोडर की तुलना में अधिक विश्वसनीय संचार प्राप्त कर सकते हैं।{{Citation needed|date=April 2017}}. ऐसे एल्गोरिदम का एक उदाहरण तंत्रिका नेटवर्क पर आधारित है<ref>{{cite journal |last1=Krastanov |first1=Stefan |last2=Jiang |first2=Liang |title=स्टेबलाइजर कोड्स के लिए डीप न्यूरल नेटवर्क प्रोबेबिलिस्टिक डिकोडर|journal=Scientific Reports |date=8 September 2017 |volume=7 |issue=1 |page=11003 |doi=10.1038/s41598-017-11266-1 |pmid=28887480 |pmc=5591216 |arxiv=1705.09334 |bibcode=2017NatSR...711003K |doi-access=free }}</ref> संरचनाएं।
इंटरलीविंग तकनीकों का उपयोग कुल विलंब को बढ़ाता है। ऐसा इसलिए है क्योंकि पैकेट को डिकोड किए जाने से पहले पूरे इंटरलीव्ड ब्लॉक को प्राप्त किया जाना चाहिए।<ref>{{cite web |title=इंटरलीविंग की व्याख्या करना|author=Techie|date=3 June 2010|website=W3 Techie Blog|url=http://w3techie.com/2010/explaining-interleaving/|access-date=2010-06-03}}</ref> साथ ही इंटरलीवर त्रुटियों की संरचना को छिपाते हैं; इंटरलीवर के बिना, अधिक उन्नत डिकोडिंग एल्गोरिदम त्रुटि संरचना का लाभ उठा सकते हैं और इंटरलीवर के साथ संयुक्त सरल डिकोडर की तुलना में अधिक विश्वसनीय संचार प्राप्त कर सकते हैं।{{Citation needed|date=April 2017}}. ऐसे एल्गोरिदम का एक उदाहरण [[तंत्रिका नेटवर्क]] पर आधारित है<ref>{{cite journal |last1=Krastanov |first1=Stefan |last2=Jiang |first2=Liang |title=स्टेबलाइजर कोड्स के लिए डीप न्यूरल नेटवर्क प्रोबेबिलिस्टिक डिकोडर|journal=Scientific Reports |date=8 September 2017 |volume=7 |issue=1 |page=11003 |doi=10.1038/s41598-017-11266-1 |pmid=28887480 |pmc=5591216 |arxiv=1705.09334 |bibcode=2017NatSR...711003K |doi-access=free }}</ref> संरचनाएं।


== त्रुटि-सुधार कोड के लिए सॉफ्टवेयर ==
== त्रुटि-सुधार कोड के लिए सॉफ्टवेयर ==
सॉफ़्टवेयर में त्रुटि-सुधार कोड (ECCs) के व्यवहार का अनुकरण करना ECCs को डिज़ाइन, मान्य और बेहतर बनाने के लिए एक सामान्य अभ्यास है। आगामी वायरलेस 5G मानक सॉफ्टवेयर ECC के लिए अनुप्रयोगों की एक नई श्रेणी को बढ़ाता है: C-RAN | क्लाउड रेडियो एक्सेस नेटवर्क (C-RAN) एक सॉफ्टवेयर-परिभाषित रेडियो | सॉफ्टवेयर-परिभाषित रेडियो (SDR) संदर्भ में। विचार सीधे संचार में सॉफ्टवेयर ईसीसी का उपयोग करना है। उदाहरण के लिए 5जी में, सॉफ्टवेयर ईसीसी क्लाउड में स्थित हो सकते हैं और एंटेना इस कंप्यूटिंग संसाधनों से जुड़े हुए हैं: इस तरह संचार नेटवर्क के लचीलेपन में सुधार और अंततः सिस्टम की ऊर्जा दक्षता में वृद्धि।
सॉफ़्टवेयर में त्रुटि-सुधार कोड (ECCs) के व्यवहार का अनुकरण करना ECCs को डिज़ाइन, मान्य और बेहतर बनाने के लिए एक सामान्य अभ्यास है। आगामी वायरलेस 5G मानक सॉफ्टवेयर ECC के लिए अनुप्रयोगों की एक नई श्रेणी को बढ़ाता है: [[C-RAN]] | क्लाउड रेडियो एक्सेस नेटवर्क (C-RAN) एक [[सॉफ्टवेयर-परिभाषित रेडियो]] | सॉफ्टवेयर-परिभाषित रेडियो (SDR) संदर्भ में। विचार सीधे संचार में सॉफ्टवेयर ईसीसी का उपयोग करना है। उदाहरण के लिए 5जी में, सॉफ्टवेयर ईसीसी क्लाउड में स्थित हो सकते हैं और एंटेना इस कंप्यूटिंग संसाधनों से जुड़े हुए हैं: इस तरह संचार नेटवर्क के लचीलेपन में सुधार और अंततः सिस्टम की ऊर्जा दक्षता में वृद्धि।


इस संदर्भ में, विभिन्न उपलब्ध ओपन-सोर्स सॉफ़्टवेयर नीचे सूचीबद्ध हैं (गैर संपूर्ण)।
इस संदर्भ में, विभिन्न उपलब्ध ओपन-सोर्स सॉफ़्टवेयर नीचे सूचीबद्ध हैं (गैर संपूर्ण)।
* [https://aff3ct.github.io/ AFF3CT](एक फास्ट फॉरवर्ड एरर करेक्शन टूलबॉक्स): C++ में एक पूर्ण संचार श्रृंखला (टर्बो, एलडीपीसी, पोलर कोड आदि जैसे कई समर्थित कोड), बहुत तेज और विशिष्ट चैनल कोडिंग (अनुकरण के लिए एक कार्यक्रम के रूप में या एसडीआर के लिए एक पुस्तकालय के रूप में इस्तेमाल किया जा सकता है)।
* [https://aff3ct.github.io/ AFF3CT](एक फास्ट फॉरवर्ड एरर करेक्शन टूलबॉक्स): C++ में एक पूर्ण संचार श्रृंखला (टर्बो, एलडीपीसी, पोलर कोड आदि जैसे कई समर्थित कोड), बहुत तेज और विशिष्ट चैनल कोडिंग (अनुकरण के लिए एक कार्यक्रम के रूप में या एसडीआर के लिए एक पुस्तकालय के रूप में इस्तेमाल किया जा सकता है)।
* IT++: रैखिक बीजगणित, संख्यात्मक अनुकूलन, सिग्नल प्रोसेसिंग, संचार और सांख्यिकी के लिए कक्षाओं और कार्यों की एक C++ लाइब्रेरी।
* [[IT++]]: रैखिक बीजगणित, संख्यात्मक अनुकूलन, सिग्नल प्रोसेसिंग, संचार और सांख्यिकी के लिए कक्षाओं और कार्यों की एक C++ लाइब्रेरी।
* [https://gitlab.eurecom.fr/oai/openair-cn OpenAir]: विकसित पैकेट कोर नेटवर्क से संबंधित 3GPP विनिर्देशों का कार्यान्वयन (C में)।
* [https://gitlab.eurecom.fr/oai/openair-cn OpenAir]: विकसित पैकेट कोर नेटवर्क से संबंधित 3GPP विनिर्देशों का कार्यान्वयन (C में)।


Line 215: Line 215:
| 8 (TECFED)    || extended [[binary Golay code]]
| 8 (TECFED)    || extended [[binary Golay code]]
|}
|}
* एएन कोड
* [[एएन कोड]]
* BCH कोड, जिसे प्रति कोड ब्लॉक में किसी भी मनमानी संख्या में त्रुटियों को ठीक करने के लिए डिज़ाइन किया जा सकता है।
* BCH कोड, जिसे प्रति कोड ब्लॉक में किसी भी मनमानी संख्या में त्रुटियों को ठीक करने के लिए डिज़ाइन किया जा सकता है।
* रडार, टेलीमेट्री, अल्ट्रा साउंड, वाईफाई, डीएसएसएस मोबाइल फोन नेटवर्क, जीपीएस आदि के लिए इस्तेमाल किया जाने वाला बार्कर कोड।
* रडार, टेलीमेट्री, अल्ट्रा साउंड, वाईफाई, डीएसएसएस मोबाइल फोन नेटवर्क, जीपीएस आदि के लिए इस्तेमाल किया जाने वाला [[बार्कर कोड]]।
* बर्जर कोड
* [[बर्जर कोड]]
* लगातार वजन कोड
* [[लगातार वजन कोड]]
* संवादात्मक कोड
* संवादात्मक कोड
* विस्तारक कोड
* [[विस्तारक कोड]]
* समूह कोड
* [[समूह कोड]]
* गोले कोड (बहुविकल्पी), जिनमें से बाइनरी गोले कोड व्यावहारिक रुचि का है
* गोले कोड (बहुविकल्पी), जिनमें से [[बाइनरी भाषा में कोड]] व्यावहारिक रुचि का है
* गोप्पा कोड, मैकएलीस क्रिप्टोसिस्टम में उपयोग किया जाता है
* [[महान कोड]], [[मैकएलिस क्रिप्टोसिस्टम]] में उपयोग किया जाता है
* हैडमार्ड कोड
* [[हैडमार्ड कोड]]
* हैगलबर्गर कोड
* [[हैलबर्गर कोड]]
* हैमिंग कोड
* हैमिंग कोड
* लैटिन वर्ग # गैर-श्वेत शोर के लिए त्रुटि सुधार कोड (पावरलाइन पर ब्रॉडबैंड में उदाहरण के लिए प्रचलित)
* लैटिन वर्ग # गैर-श्वेत शोर के लिए त्रुटि सुधार कोड (पावरलाइन पर ब्रॉडबैंड में उदाहरण के लिए प्रचलित)
* लेक्सिकोग्राफिक कोड
* [[लेक्सिकोग्राफिक कोड]]
* रैखिक नेटवर्क कोडिंग, पॉइंट-टू-पॉइंट लिंक के बजाय पूरे नेटवर्क में एक प्रकार का मिटाने वाला कोड
* [[रैखिक नेटवर्क कोडिंग]], पॉइंट-टू-पॉइंट लिंक के बजाय पूरे नेटवर्क में एक प्रकार का मिटाने वाला कोड
* लंबा कोड (गणित)
* [[लंबा कोड (गणित)]]
* कम-घनत्व समता-चेक कोड, जिसे गैलेजर कोड के रूप में भी जाना जाता है, विरल ग्राफ कोड के लिए मूलरूप के रूप में
* कम-घनत्व समता-चेक कोड, जिसे [[गैलेजर कोड]] के रूप में भी जाना जाता है, [[विरल ग्राफ कोड]] के लिए मूलरूप के रूप में
* एलटी कोड, जो एक लगभग इष्टतम फाउंटेन कोड है | रेटलेस इरेज़र करेक्टिंग कोड (फाउंटेन कोड)
* [[एलटी कोड]], जो एक लगभग इष्टतम [[फव्वारा कोड]] है | रेटलेस इरेज़र करेक्टिंग कोड (फाउंटेन कोड)
* एन कोड का एम
* [[एन कोड का एम]]
* नॉर्डस्ट्रॉम-रॉबिन्सन कोड, ज्यामिति और समूह सिद्धांत में प्रयुक्त<ref>{{Citation |author-first1=A.W. |author-last1=Nordstrom |author-first2=J.P. |author-last2=Robinson |title=An optimum nonlinear code |journal=Information and Control |date=1967 |volume=11 |issue=5–6 |pages=613–616 |doi=10.1016/S0019-9958(67)90835-2 |url=https://doi.org/10.1016/S0019-9958(67)90835-2 }}</ref>
* [[नॉर्डस्ट्रॉम-रॉबिन्सन कोड]], ज्यामिति और समूह सिद्धांत में प्रयुक्त<ref>{{Citation |author-first1=A.W. |author-last1=Nordstrom |author-first2=J.P. |author-last2=Robinson |title=An optimum nonlinear code |journal=Information and Control |date=1967 |volume=11 |issue=5–6 |pages=613–616 |doi=10.1016/S0019-9958(67)90835-2 |url=https://doi.org/10.1016/S0019-9958(67)90835-2 }}</ref>
* ऑनलाइन कोड, लगभग इष्टतम फाउंटेन कोड
* [[ऑनलाइन कोड]], लगभग इष्टतम फाउंटेन कोड
* ध्रुवीय कोड (कोडिंग सिद्धांत)
* ध्रुवीय कोड (कोडिंग सिद्धांत)
* रैप्टर कोड, एक निकट-इष्टतम फाउंटेन कोड
* [[रैप्टर कोड]], एक निकट-इष्टतम फाउंटेन कोड
* रीड-सोलोमन त्रुटि सुधार
* रीड-सोलोमन त्रुटि सुधार
* रीड-मुलर कोड
* रीड-मुलर कोड
Line 244: Line 244:
* पुनरावृत्ति कोड, जैसे ट्रिपल मॉड्यूलर अतिरेक
* पुनरावृत्ति कोड, जैसे ट्रिपल मॉड्यूलर अतिरेक
* स्पाइनल कोड, छद्म-यादृच्छिक हैश फ़ंक्शंस पर आधारित एक रेटलेस, नॉनलाइनियर कोड<ref>{{Cite conference |author-first1=Jonathan |author-last1=Perry |author-first2=Hari |author-last2=Balakrishnan |author-first3=Devavrat |author-last3=Shah |title=रेटलेस स्पाइनल कोड्स|book-title=Proceedings of the 10th ACM Workshop on Hot Topics in Networks |date=2011 |pages=1–6 |url=http://doi.acm.org/10.1145/2070562.2070568 |doi=10.1145/2070562.2070568|hdl=1721.1/79676 |isbn=9781450310598 |hdl-access=free }}</ref>
* स्पाइनल कोड, छद्म-यादृच्छिक हैश फ़ंक्शंस पर आधारित एक रेटलेस, नॉनलाइनियर कोड<ref>{{Cite conference |author-first1=Jonathan |author-last1=Perry |author-first2=Hari |author-last2=Balakrishnan |author-first3=Devavrat |author-last3=Shah |title=रेटलेस स्पाइनल कोड्स|book-title=Proceedings of the 10th ACM Workshop on Hot Topics in Networks |date=2011 |pages=1–6 |url=http://doi.acm.org/10.1145/2070562.2070568 |doi=10.1145/2070562.2070568|hdl=1721.1/79676 |isbn=9781450310598 |hdl-access=free }}</ref>
* बवंडर कोड, एक निकट-इष्टतम विलोपन कोड, और फाउंटेन कोड का अग्रदूत
* [[बवंडर कोड]], एक निकट-इष्टतम विलोपन कोड, और फाउंटेन कोड का अग्रदूत
* टर्बो कोड
* टर्बो कोड
* वॉल्श-हैडमार्ड कोड
* वॉल्श-हैडमार्ड कोड
Line 250: Line 250:


== यह भी देखें ==
== यह भी देखें ==
* कोड दर
* [[कोड दर]]
* इरेज़र कोड
* इरेज़र कोड
* शीतल-निर्णय डिकोडर
* शीतल-निर्णय डिकोडर
* बर्स्ट एरर-करेक्टिंग कोड
* बर्स्ट एरर-करेक्टिंग कोड
* त्रुटि का पता लगाने और सुधार
* त्रुटि का पता लगाने और सुधार
* प्रतिक्रिया के साथ त्रुटि-सुधार कोड
* [[प्रतिक्रिया के साथ त्रुटि-सुधार कोड]]


==संदर्भ==
==संदर्भ==
Line 261: Line 261:




==अग्रिम पठन==
==आगे की पढाई==
* {{cite book |title=The Theory of Error-Correcting Codes |author-first1=Florence Jessiem |author-last1=MacWilliams |author-link1=Florence Jessiem MacWilliams |author-first2=Neil James Alexander |author-last2=Sloane |author-link2=Neil James Alexander Sloane |publisher=[[North-Holland Publishing Company|North-Holland]] / [[Elsevier BV]] |series=North-Holland Mathematical Library |volume=16 |lccn=76-41296 |isbn=978-0-444-85193-2 |edition=digital print of 12th impression, 1st |date=2007 |orig-date=1977 |publication-place=Amsterdam / London / New York / Tokyo |location=AT&T Shannon Labs, Florham Park, New Jersey, USA}} (xxii+762+6 pages)
* {{cite book |title=The Theory of Error-Correcting Codes |author-first1=Florence Jessiem |author-last1=MacWilliams |author-link1=Florence Jessiem MacWilliams |author-first2=Neil James Alexander |author-last2=Sloane |author-link2=Neil James Alexander Sloane |publisher=[[North-Holland Publishing Company|North-Holland]] / [[Elsevier BV]] |series=North-Holland Mathematical Library |volume=16 |lccn=76-41296 |isbn=978-0-444-85193-2 |edition=digital print of 12th impression, 1st |date=2007 |orig-date=1977 |publication-place=Amsterdam / London / New York / Tokyo |location=AT&T Shannon Labs, Florham Park, New Jersey, USA}} (xxii+762+6 pages)
* {{cite book |author-last1=Clark, Jr. |author-first1=George C. |author-last2=Cain |author-first2=J. Bibb |title=Error-Correction Coding for Digital Communications |publisher=[[Plenum Press]] |location=New York, USA |date=1981 |isbn=0-306-40615-2 }}
* {{cite book |author-last1=Clark, Jr. |author-first1=George C. |author-last2=Cain |author-first2=J. Bibb |title=Error-Correction Coding for Digital Communications |publisher=[[Plenum Press]] |location=New York, USA |date=1981 |isbn=0-306-40615-2 }}
Line 276: Line 276:
==इस पेज में लापता आंतरिक लिंक की सूची==
==इस पेज में लापता आंतरिक लिंक की सूची==


==बाहरी संबंध==
*बातचीत का माध्यम
*विपुल भंडारण
*ईसीसी मेमोरी
*गलती पहचानना
*विटरबी डिकोडर
*शोर अनुपात करने के लिए संकेत
*अनुकूली मॉड्यूलेशन और कोडिंग
*स्वचालित दोहराव अनुरोध
*नैंड फ्लैश
*बहुआयामी समता-चेक कोड
*गले में कोड (बहुविकल्पी)
*बहुपदी समय फलन
*बहु स्तरीय सेल
*यात्रा कार्यक्रम
*संभाव्य रूप से जाँच योग्य प्रमाण
*स्थानीय रूप से डिकोडेबल कोड
*फटने की त्रुटि
*क्रमपरिवर्तन बहुपद
*मिथ्या
*कोड दोहराएं-जमा करें
*चक्रीय अतिरेक की जाँच
*मिटा कोड
*त्रुटि का पता लगाना और सुधार
==बाहरी कड़ियाँ==
* {{Cite web |author-last=Morelos-Zaragoza |author-first=Robert |date=2004 |url=http://www.eccpage.com/ |title=The Correcting Codes (ECC) Page |access-date=2006-03-05}}
* {{Cite web |author-last=Morelos-Zaragoza |author-first=Robert |date=2004 |url=http://www.eccpage.com/ |title=The Correcting Codes (ECC) Page |access-date=2006-03-05}}
* [https://github.com/supermihi/lpdec lpdec: library for LP decoding and related things (Python)]
* [https://github.com/supermihi/lpdec lpdec: library for LP decoding and related things (Python)]
[[Category: त्रुटि पहचान और सुधार]]
[[श्रेणी: त्रुटि पहचान और सुधार]]




[[Category: Machine Translated Page]]
[[Category: Machine Translated Page]]
[[Category:Created On 15/12/2022]]
[[Category:Created On 29/12/2022]]

Revision as of 20:58, 29 December 2022

कम्प्यूटिंग, दूरसंचार, सूचना सिद्धांत और कोडिंग सिद्धांत में, एक त्रुटि सुधार कोड, कभी-कभी त्रुटि सुधार कोड, (ईसीसी) का उपयोग अविश्वसनीय या शोर संचार चैनलों पर डेटा में त्रुटि नियंत्रण के लिए किया जाता है।[1][2] केंद्रीय विचार यह है कि प्रेषक ईसीसी के रूप में अतिरेक (सूचना सिद्धांत) के साथ संदेश को कूटबद्ध करता है। अतिरेक रिसीवर को सीमित संख्या में त्रुटियों का पता लगाने की अनुमति देता है जो संदेश में कहीं भी हो सकती हैं, और अक्सर इन त्रुटियों को बिना पुनर्प्रसारण के ठीक करने के लिए। अमेरिकी गणितज्ञ रिचर्ड हैमिंग ने 1940 के दशक में इस क्षेत्र का नेतृत्व किया और 1950 में पहला त्रुटि-सुधार कोड का आविष्कार किया: हैमिंग (7,4) कोड।[2]

ECC त्रुटि का पता लगाने के विपरीत है जिसमें सामने आने वाली त्रुटियों को ठीक किया जा सकता है, केवल पता नहीं लगाया जा सकता है। लाभ यह है कि ईसीसी का उपयोग करने वाली प्रणाली को त्रुटि होने पर डेटा के पुन: प्रसारण का अनुरोध करने के लिए रिवर्स चैनल की आवश्यकता नहीं होती है। नकारात्मक पक्ष यह है कि एक निश्चित ओवरहेड है जो संदेश में जोड़ा जाता है, जिससे उच्च अग्रेषण-चैनल बैंडविड्थ की आवश्यकता होती है। इसलिए ईसीसी उन स्थितियों में लागू किया जाता है जहां पुन: प्रसारण महंगा या असंभव होता है, जैसे कि एक तरफ़ा संचार लिंक और जब बहुस्त्र्पीय में कई रिसीवरों को प्रेषित किया जाता है। लंबे समय तक चलने वाले कनेक्शन से भी फ़ायदा होता है; अरुण ग्रह के चारों ओर परिक्रमा करने वाले उपग्रह के मामले में, त्रुटियों के कारण पुन: प्रसारण में पांच घंटे की देरी हो सकती है। ECC जानकारी को आमतौर पर बड़े पैमाने पर भंडारण उपकरणों में जोड़ा जाता है ताकि दूषित डेटा की पुनर्प्राप्ति को सक्षम किया जा सके, मोडम में व्यापक रूप से उपयोग किया जाता है, और इसका उपयोग उन प्रणालियों पर किया जाता है जहां प्राथमिक मेमोरी ECC मेमोरी होती है।

एक रिसीवर में ईसीसी प्रसंस्करण एक डिजिटल बिटस्ट्रीम या डिजिटल रूप से संग्राहक वाहक के डिमॉड्यूलेशन में लागू किया जा सकता है। उत्तरार्द्ध के लिए, ईसीसी प्रारंभिक एनॉलॉग से डिजिटल परिवर्तित करने वाला उपकरण | रिसीवर में एनालॉग-टू-डिजिटल रूपांतरण का एक अभिन्न अंग है। Viterbi डिकोडर एक त्रुटि सुधार कोड # ECC के प्रकार लागू करता है | शोर से दूषित एनालॉग सिग्नल से डिजिटल डेटा को डिमॉड्यूलेट करने के लिए सॉफ्ट-डिसीजन एल्गोरिदम। कई ECC एनकोडर/डिकोडर बिट त्रुटि दर (BER) सिग्नल भी उत्पन्न कर सकते हैं, जिसका उपयोग एनालॉग रिसीविंग इलेक्ट्रॉनिक्स को फाइन-ट्यून करने के लिए फीडबैक के रूप में किया जा सकता है।

त्रुटियों या लापता बिट्स के अधिकतम अंश जिन्हें ठीक किया जा सकता है, ECC कोड के डिज़ाइन द्वारा निर्धारित किए जाते हैं, इसलिए विभिन्न स्थितियों के लिए अलग-अलग त्रुटि सुधार कोड उपयुक्त होते हैं। सामान्य तौर पर, एक मजबूत कोड अधिक अतिरेक उत्पन्न करता है जिसे उपलब्ध बैंडविड्थ का उपयोग करके प्रसारित करने की आवश्यकता होती है, जो प्राप्त प्रभावी सिग्नल-टू-शोर अनुपात में सुधार करते हुए प्रभावी बिट-दर को कम करता है। क्लाउड शैनन के शोर-चैनल कोडिंग प्रमेय का उपयोग किसी अधिकतम स्वीकार्य त्रुटि संभावना के लिए अधिकतम प्राप्त करने योग्य संचार बैंडविड्थ की गणना के लिए किया जा सकता है। यह कुछ दिए गए आधार शोर स्तर के साथ एक चैनल की सैद्धांतिक अधिकतम सूचना अंतरण दर पर सीमा स्थापित करता है। हालांकि, सबूत रचनात्मक नहीं है, और इसलिए क्षमता प्राप्त करने वाले कोड को बनाने के तरीके की कोई अंतर्दृष्टि नहीं देता है। वर्षों के शोध के बाद, कुछ ध्रुवीय कोड (कोडिंग सिद्धांत)[3]सैद्धांतिक अधिकतम के बहुत करीब आओ।

आगे त्रुटि सुधार

दूरसंचार, सूचना सिद्धांत और कोडिंग सिद्धांत में, अग्रेषित त्रुटि सुधार (FEC) या चैनल कोडिंग[4][3] अविश्वसनीय या शोर संचार चैनलों पर डेटा ट्रांसमिशन में त्रुटि नियंत्रण के लिए उपयोग की जाने वाली तकनीक है। केंद्रीय विचार यह है कि प्रेषक एक अतिरेक (सूचना सिद्धांत) तरीके से संदेश को एन्कोड करता है, अक्सर एक ईसीसी का उपयोग करके।

अतिरेक रिसीवर को सीमित संख्या में त्रुटियों का पता लगाने की अनुमति देता है जो संदेश में कहीं भी हो सकती हैं, और अक्सर इन त्रुटियों को पुनः प्रसारण के बिना ठीक करने के लिए। एफईसी रिसीवर को डेटा के पुन: प्रसारण का अनुरोध करने के लिए एक रिवर्स चैनल की आवश्यकता के बिना त्रुटियों को ठीक करने की क्षमता देता है, लेकिन एक निश्चित, उच्च फॉरवर्ड चैनल बैंडविड्थ की कीमत पर। इसलिए एफईसी उन स्थितियों में लागू किया जाता है जहां पुन: प्रसारण महंगा या असंभव होता है, जैसे कि एकतरफा संचार लिंक और मल्टीकास्ट में कई रिसीवरों को प्रेषित करते समय। एफईसी जानकारी आमतौर पर बड़े पैमाने पर भंडारण (चुंबकीय, ऑप्टिकल और ठोस राज्य/फ्लैश आधारित) उपकरणों में जोड़ा जाता है ताकि दूषित डेटा की वसूली को सक्षम किया जा सके, मोडेम में व्यापक रूप से उपयोग किया जाता है, उन प्रणालियों पर उपयोग किया जाता है जहां प्राथमिक मेमोरी ईसीसी मेमोरी और प्रसारण स्थितियों में होती है, जहां रिसीवर के पास पुन: प्रसारण का अनुरोध करने की क्षमता नहीं है या ऐसा करने से महत्वपूर्ण विलंबता उत्पन्न होगी। उदाहरण के लिए, यूरेनस की परिक्रमा करने वाले उपग्रह के मामले में, डिकोडिंग त्रुटियों के कारण पुन: प्रसारण कम से कम 5 घंटे की देरी पैदा करेगा।

एक रिसीवर में एफईसी प्रसंस्करण एक डिजिटल बिट स्ट्रीम या डिजिटल रूप से संग्राहक वाहक के डिमॉड्यूलेशन में लागू किया जा सकता है। बाद के लिए, एफईसी प्रारंभिक एनालॉग-टू-डिजिटल कनवर्टर | रिसीवर में एनालॉग-टू-डिजिटल रूपांतरण का एक अभिन्न अंग है। Viterbi डिकोडर एक शीतल-निर्णय डिकोडर | सॉफ्ट-डिसीजन एल्गोरिथम को लागू करता है, जो शोर से दूषित एनालॉग सिग्नल से डिजिटल डेटा को डिमॉड्यूलेट करता है। कई FEC कोडर्स एक बिट-एरर रेट (BER) सिग्नल भी उत्पन्न कर सकते हैं, जिसका उपयोग एनालॉग प्राप्त इलेक्ट्रॉनिक्स को फाइन-ट्यून करने के लिए फीडबैक के रूप में किया जा सकता है।

त्रुटियों या लापता बिट्स का अधिकतम अनुपात जिसे ठीक किया जा सकता है, ईसीसी के डिजाइन द्वारा निर्धारित किया जाता है, इसलिए विभिन्न स्थितियों के लिए अलग-अलग त्रुटि सुधार कोड उपयुक्त होते हैं। सामान्य तौर पर, एक मजबूत कोड अधिक अतिरेक उत्पन्न करता है जिसे उपलब्ध बैंडविड्थ का उपयोग करके प्रसारित करने की आवश्यकता होती है, जो प्राप्त प्रभावी सिग्नल-टू-शोर अनुपात में सुधार करते हुए प्रभावी बिट-दर को कम करता है। क्लाउड शैनन का शोर-चैनल कोडिंग प्रमेय इस सवाल का जवाब देता है कि डिकोडिंग त्रुटि संभावना को शून्य करने वाले सबसे कुशल कोड का उपयोग करते हुए डेटा संचार के लिए कितना बैंडविड्थ बचा है। यह कुछ दिए गए आधार शोर स्तर के साथ एक चैनल की सैद्धांतिक अधिकतम सूचना अंतरण दर पर सीमा स्थापित करता है। उनका प्रमाण रचनात्मक नहीं है, और इसलिए क्षमता प्राप्त करने वाले कोड को कैसे बनाया जाए, इसकी कोई जानकारी नहीं देता है। हालाँकि, वर्षों के शोध के बाद, कुछ उन्नत FEC प्रणालियाँ जैसे ध्रुवीय कोड (कोडिंग सिद्धांत)[3]अनंत लंबाई के फ्रेम की परिकल्पना के तहत शैनन चैनल क्षमता प्राप्त करें।

यह कैसे काम करता है

एल्गोरिथम का उपयोग करके प्रेषित सूचना में अतिरेक (सूचना सिद्धांत) जोड़कर ECC को पूरा किया जाता है। एक निरर्थक बिट कई मूल सूचना बिट्स का एक जटिल कार्य हो सकता है। मूल जानकारी एन्कोडेड आउटपुट में शाब्दिक रूप से प्रकट हो भी सकती है और नहीं भी; कोड जो आउटपुट में अपरिवर्तित इनपुट शामिल करते हैं, व्यवस्थित कोड होते हैं, जबकि जो गैर-व्यवस्थित नहीं होते हैं।

ईसीसी का एक सरल उदाहरण प्रत्येक डेटा बिट को 3 बार प्रसारित करना है, जिसे (3,1) पुनरावृत्ति कोड के रूप में जाना जाता है। एक शोर चैनल के माध्यम से, एक रिसीवर आउटपुट के 8 संस्करण देख सकता है, नीचे दी गई तालिका देखें।

Triplet received Interpreted as
000 0 (error-free)
001 0
010 0
100 0
111 1 (error-free)
110 1
101 1
011 1

यह तीन नमूनों में से किसी एक में त्रुटि को बहुसंख्यक वोट या लोकतांत्रिक मतदान द्वारा ठीक करने की अनुमति देता है। इस ईसीसी की सुधार क्षमता है:

  • त्रुटि में 1 बिट ट्रिपलेट तक, या
  • ट्रिपलेट के 2 बिट तक छोड़े गए (मामलों को तालिका में नहीं दिखाया गया है)।

हालांकि लागू करने में सरल और व्यापक रूप से उपयोग किया जाता है, यह ट्रिपल मॉड्यूलर अतिरेक अपेक्षाकृत अक्षम ईसीसी है। बेहतर ईसीसी कोड आमतौर पर पिछले कई दसियों या यहां तक ​​कि पहले प्राप्त बिट्स के पिछले कई सैकड़ों की जांच करते हैं ताकि यह निर्धारित किया जा सके कि वर्तमान छोटे मुट्ठी भर बिट्स (आमतौर पर 2 से 8 बिट्स के समूह में) को कैसे डिकोड किया जाए।

त्रुटियों को कम करने के लिए औसत शोर

ईसीसी को शोर के औसत से काम करने के लिए कहा जा सकता है; चूंकि प्रत्येक डेटा बिट कई संचरित प्रतीकों को प्रभावित करता है, शोर द्वारा कुछ प्रतीकों का भ्रष्टाचार आम तौर पर मूल उपयोगकर्ता डेटा को दूसरे से निकालने की अनुमति देता है, अनियंत्रित प्राप्त प्रतीक जो समान उपयोगकर्ता डेटा पर भी निर्भर करते हैं।

  • इस जोखिम-पूलिंग प्रभाव के कारण, ईसीसी का उपयोग करने वाली डिजिटल संचार प्रणालियां एक निश्चित न्यूनतम सिग्नल-टू-शोर अनुपात से ऊपर अच्छी तरह से काम करती हैं और इसके नीचे बिल्कुल नहीं।
  • यह ऑल-ऑर-नथिंग प्रवृत्ति - चट्टान प्रभाव - अधिक स्पष्ट हो जाता है क्योंकि मजबूत कोड का उपयोग किया जाता है जो सैद्धांतिक शैनन सीमा के अधिक निकट होते हैं।
  • इंटरलीविंग ईसीसी कोडेड डेटा प्रेषित ईसीसी कोड के सभी या कुछ भी गुणों को कम कर सकता है जब चैनल त्रुटियां फटने में होती हैं। हालाँकि, इस पद्धति की सीमाएँ हैं; यह नैरोबैंड डेटा पर सबसे अच्छा उपयोग किया जाता है।

अधिकांश दूरसंचार प्रणालियां एक निश्चित चैनल कोड का उपयोग करती हैं जिसे अपेक्षित सबसे खराब स्थिति वाली बिट त्रुटि दर को सहन करने के लिए डिज़ाइन किया गया है, और यदि बिट त्रुटि दर कभी भी खराब हो तो बिल्कुल भी काम करने में विफल रहती है। हालाँकि, कुछ सिस्टम दिए गए चैनल त्रुटि स्थितियों के अनुकूल होते हैं: हाइब्रिड ऑटोमैटिक रिपीट-रिक्वेस्ट के कुछ उदाहरण एक निश्चित ECC विधि का उपयोग करते हैं, जब तक कि ECC त्रुटि दर को संभाल सकता है, तब स्वचालित रिपीट अनुरोध पर स्विच करें जब त्रुटि दर बहुत अधिक हो जाती है; अनुकूली मॉडुलन और कोडिंग ईसीसी दरों की एक किस्म का उपयोग करता है, प्रति पैकेट अधिक त्रुटि-सुधार बिट्स जोड़ता है जब चैनल में उच्च त्रुटि दर होती है, या जब उनकी आवश्यकता नहीं होती है तो उन्हें बाहर निकाल दिया जाता है।

ईसीसी के प्रकार

त्रुटि सुधार कोड का संक्षिप्त वर्गीकरण

ईसीसी कोड की दो मुख्य श्रेणियां ब्लॉक कोड और दृढ़ कोड हैं।

  • ब्लॉक कोड बिट्स या पूर्व निर्धारित आकार के प्रतीकों के निश्चित आकार के ब्लॉक (पैकेट) पर काम करते हैं। प्रैक्टिकल ब्लॉक कोड आमतौर पर बहुपद समय में उनकी ब्लॉक लंबाई में हार्ड-डीकोड किए जा सकते हैं।
  • संवादात्मक कोड मनमाना लंबाई के बिट या प्रतीक धाराओं पर काम करते हैं। वे अक्सर विटरबी एल्गोरिथ्म के साथ सॉफ्ट डीकोडेड होते हैं, हालांकि अन्य एल्गोरिदम कभी-कभी उपयोग किए जाते हैं। विटरबी डिकोडिंग असम्बद्ध रूप से इष्टतम डिकोडिंग दक्षता की अनुमति देता है, जो दृढ़ संहिता की बढ़ती बाधा लंबाई के साथ है, लेकिन घातीय समय बढ़ती जटिलता की कीमत पर। एक कनवल्शनल कोड जिसे टर्मिनेट किया जाता है, वह भी एक 'ब्लॉक कोड' होता है, जिसमें यह इनपुट डेटा के एक ब्लॉक को एनकोड करता है, लेकिन एक कन्वेन्शनल कोड का ब्लॉक आकार आम तौर पर मनमाना होता है, जबकि ब्लॉक कोड का एक निश्चित आकार होता है जो उनके बीजगणितीय विशेषताओं द्वारा निर्धारित होता है। कनवल्शनल कोड्स के टर्मिनेशन के प्रकारों में टेल-बाइटिंग और बिट-फ्लशिंग शामिल हैं।

कई प्रकार के ब्लॉक कोड हैं; रीड-सोलोमन त्रुटि सुधार|रीड-सोलोमन कोडिंग कॉम्पैक्ट डिस्क, डीवीडी और हार्ड डिस्क ड्राइव#त्रुटि दर और हैंडलिंग में इसके व्यापक उपयोग के लिए उल्लेखनीय है। शास्त्रीय ब्लॉक कोड के अन्य उदाहरणों में गोले कोड (बहुविकल्पी), बीसीएच कोड, बहुआयामी समानता-जांच कोड और हैमिंग कोड शामिल हैं।

हैमिंग ईसीसी का उपयोग आमतौर पर एनएएनडी फ्लैश मेमोरी त्रुटियों को ठीक करने के लिए किया जाता है।[5] यह सिंगल-बिट एरर करेक्शन और 2-बिट एरर डिटेक्शन प्रदान करता है। हैमिंग कोड केवल अधिक विश्वसनीय एकल-स्तरीय सेल (SLC) NAND के लिए उपयुक्त हैं। सघन बहु-स्तरीय सेल (एमएलसी) एनएएनडी बीसीएच या रीड-सोलोमन जैसे बहु-बिट सुधार ईसीसी का उपयोग कर सकता है।[6][7] NOR Flash आमतौर पर किसी त्रुटि सुधार का उपयोग नहीं करता है।[6]

शास्त्रीय ब्लॉक कोड आमतौर पर हार्ड-डिसीजन एल्गोरिदम का उपयोग करके डिकोड किए जाते हैं,[8] जिसका अर्थ है कि प्रत्येक इनपुट और आउटपुट सिग्नल के लिए एक कठिन निर्णय लिया जाता है चाहे वह एक या शून्य बिट के अनुरूप हो। इसके विपरीत, विटरबी, एमएपी या बीसीजेआर एल्गोरिदम जैसे सॉफ्ट-डिसीजन एल्गोरिदम का उपयोग करके कन्वेन्शनल कोड को आमतौर पर डिकोड किया जाता है, जो एनालॉग सिग्नल को प्रोसेस (विघटित) करता है, और जो हार्ड-डिसीजन डिकोडिंग की तुलना में बहुत अधिक त्रुटि-सुधार प्रदर्शन की अनुमति देता है।

लगभग सभी शास्त्रीय ब्लॉक कोड परिमित क्षेत्रों के बीजगणितीय गुणों को लागू करते हैं। इसलिए शास्त्रीय ब्लॉक कोड को अक्सर बीजगणितीय कोड कहा जाता है।

शास्त्रीय ब्लॉक कोड के विपरीत जो अक्सर त्रुटि-पता लगाने या त्रुटि-सुधार करने की क्षमता निर्दिष्ट करते हैं, कई आधुनिक ब्लॉक कोड जैसे एलडीपीसी कोड में ऐसी गारंटी नहीं होती है। इसके बजाय, आधुनिक कोड का मूल्यांकन उनकी बिट त्रुटि दरों के संदर्भ में किया जाता है।

अधिकांश आगे त्रुटि सुधार कोड केवल बिट-फ्लिप को सही करते हैं, लेकिन बिट-इंसर्शन या बिट-डिलीशन को नहीं। इस सेटिंग में, बिट त्रुटि दर को मापने के लिए हैमिंग दूरी उपयुक्त तरीका है। मार्कर कोड और वॉटरमार्क कोड जैसे बिट-प्रविष्टि और बिट-विलोपन को ठीक करने के लिए कुछ अग्रेषित त्रुटि सुधार कोड डिज़ाइन किए गए हैं। ऐसे कोड का उपयोग करते समय बिट त्रुटि दर को मापने के लिए लेवेनशेटिन दूरी एक अधिक उपयुक्त तरीका है। [9]


== कोड-दर और विश्वसनीयता और डेटा दर == के बीच तालमेल

ईसीसी का मूल सिद्धांत डिकोडर को ट्रांसमीटर द्वारा एन्कोड किए गए सही संदेश को खोजने में मदद करने के लिए अनावश्यक बिट्स जोड़ना है। किसी दिए गए ईसीसी सिस्टम की कोड-दर को दिए गए संचार पैकेज में सूचना बिट्स की संख्या और बिट्स की कुल संख्या (यानी, सूचना प्लस अतिरेक बिट्स) के बीच के अनुपात के रूप में परिभाषित किया गया है। कोड-दर इसलिए एक वास्तविक संख्या है। शून्य के करीब एक कम कोड-दर एक मजबूत कोड का अर्थ है जो एक अच्छा प्रदर्शन प्राप्त करने के लिए कई अनावश्यक बिट्स का उपयोग करता है, जबकि 1 के करीब एक बड़ी कोड-दर एक कमजोर कोड का संकेत देती है।

अनावश्यक बिट्स जो जानकारी की रक्षा करते हैं उन्हें उसी संचार संसाधनों का उपयोग करके स्थानांतरित किया जाना चाहिए जिसकी वे रक्षा करने का प्रयास कर रहे हैं। यह विश्वसनीयता और डेटा दर के बीच एक मौलिक व्यापार का कारण बनता है।[10] एक चरम में, एक मजबूत कोड (कम कोड-दर के साथ) प्रभावी डेटा दर को कम करने की कीमत पर, बिट त्रुटि दर को कम करने वाले रिसीवर एसएनआर (सिग्नल-टू-शोर-अनुपात) में एक महत्वपूर्ण वृद्धि को प्रेरित कर सकता है। दूसरी चरम पर, किसी भी ईसीसी (यानी, 1 के बराबर एक कोड-दर) का उपयोग नहीं करने से बिट्स को बिना किसी अतिरिक्त सुरक्षा के छोड़ने की कीमत पर सूचना हस्तांतरण उद्देश्यों के लिए पूर्ण चैनल का उपयोग किया जाता है।

एक दिलचस्प सवाल निम्नलिखित है: सूचना हस्तांतरण के मामले में एक ईसीसी कितना कुशल हो सकता है जिसमें नगण्य डिकोडिंग त्रुटि दर हो? इस प्रश्न का उत्तर क्लॉड शैनन ने अपने दूसरे प्रमेय के साथ दिया, जो कहता है कि चैनल क्षमता किसी भी ईसीसी द्वारा प्राप्त की जाने वाली अधिकतम बिट दर है जिसकी त्रुटि दर शून्य हो जाती है:[11] उनका प्रमाण गाऊसी यादृच्छिक कोडिंग पर निर्भर करता है, जो वास्तविक दुनिया के अनुप्रयोगों के लिए उपयुक्त नहीं है। शैनन के काम द्वारा दी गई ऊपरी सीमा ने ईसीसी को डिजाइन करने में लंबी यात्रा को प्रेरित किया जो अंतिम प्रदर्शन सीमा के करीब आ सकता है। विभिन्न कोड आज लगभग शैनन सीमा प्राप्त कर सकते हैं। हालांकि, ईसीसी हासिल करने की क्षमता आमतौर पर लागू करने के लिए बेहद जटिल होती है।

सबसे लोकप्रिय ईसीसी में प्रदर्शन और कम्प्यूटेशनल जटिलता के बीच एक समझौता है। आमतौर पर, उनके पैरामीटर संभावित कोड दरों की एक श्रृंखला देते हैं, जिन्हें परिदृश्य के आधार पर अनुकूलित किया जा सकता है। आमतौर पर, यह अनुकूलन डेटा दर पर प्रभाव को कम करते हुए कम डिकोडिंग त्रुटि संभावना प्राप्त करने के लिए किया जाता है। कोड दर के अनुकूलन के लिए एक अन्य मानदंड संचार की ऊर्जा लागत के क्रम में कम त्रुटि दर और पुन: प्रसारण संख्या को संतुलित करना है।[12]


बेहतर प्रदर्शन के लिए जुड़े हुए ईसीसी कोड

क्लासिकल (बीजगणितीय) ब्लॉक कोड और कन्वेन्शनल कोड अक्सर समेकित कोडिंग योजनाओं में संयुक्त होते हैं जिसमें एक छोटी बाधा-लंबाई विटरबी-डीकोडेड कनवल्शनल कोड अधिकांश काम करता है और एक ब्लॉक कोड (आमतौर पर रीड-सोलोमन) बड़े प्रतीक आकार और ब्लॉक लंबाई के साथ कनवल्शनल डिकोडर द्वारा की गई किसी भी त्रुटि को मिटा देता है। त्रुटि सुधार कोड के इस परिवार के साथ एकल पास डिकोडिंग बहुत कम त्रुटि दर प्राप्त कर सकता है, लेकिन लंबी दूरी की संचरण स्थितियों (जैसे गहरे स्थान) के लिए पुनरावृत्त डिकोडिंग की सिफारिश की जाती है।

कनेक्टेड कोड उपग्रह और गहरे अंतरिक्ष संचार में मानक अभ्यास रहे हैं क्योंकि वायेजर कार्यक्रम ने पहली बार यूरेनस के साथ 1986 की मुठभेड़ में तकनीक का उपयोग किया था। गैलीलियो (अंतरिक्ष यान) शिल्प ने असफल एंटीना होने के कारण बहुत उच्च त्रुटि दर स्थितियों की भरपाई के लिए पुनरावृत्त संघटित कोड का उपयोग किया।

लो-डेंसिटी पैरिटी-चेक (LDPC)

कम-घनत्व समता-चेक कोड | लो-डेंसिटी पैरिटी-चेक (LDPC) कोड अत्यधिक कुशल रैखिक ब्लॉक का एक वर्ग है कई एकल समानता जांच (एसपीसी) कोड से बने कोड। वे अपनी ब्लॉक लंबाई के संदर्भ में रैखिक समय जटिलता पर पुनरावृत्त नरम-निर्णय डिकोडिंग दृष्टिकोण का उपयोग करके शैनन सीमा (सैद्धांतिक अधिकतम) के बहुत करीब प्रदर्शन प्रदान कर सकते हैं। व्यावहारिक कार्यान्वयन समानांतर में घटक SPC कोड को डिकोड करने पर बहुत अधिक निर्भर करता है।

एलडीपीसी कोड सबसे पहले 1960 में रॉबर्ट जी. गैलागर ने अपनी पीएचडी थीसिस में पेश किए थे, लेकिन एनकोडर और डिकोडर को लागू करने और रीड-सोलोमन कोड की शुरूआत में कम्प्यूटेशनल प्रयास के कारण, 1990 के दशक तक उन्हें ज्यादातर नजरअंदाज किया गया था।

LDPC कोड अब हाल के कई हाई-स्पीड संचार मानकों में उपयोग किए जाते हैं, जैसे DVB-S2 (डिजिटल वीडियो ब्रॉडकास्टिंग - सैटेलाइट - सेकेंड जेनरेशन), WiMAX (माइक्रोवेव संचार के लिए IEEE 802.16e मानक), हाई-स्पीड वायरलेस LAN (IEEE 802.11n) ),[13] 802.3an#10GBASE-T|10GBase-T ईथरनेट (802.3an) और G.hn|G.hn/G.9960 (बिजली लाइनों, फोन लाइनों और समाक्षीय केबल पर नेटवर्किंग के लिए ITU-T मानक)। अन्य LDPC कोड 3GPP MBMS के भीतर वायरलेस संचार मानकों के लिए मानकीकृत हैं (मानकों में फाउंटेन कोड#फाउंटेन कोड देखें)।

टर्बो कोड

टर्बो कोड एक पुनरावर्तित सॉफ्ट-डिकोडिंग योजना है जो दो या दो से अधिक अपेक्षाकृत सरल कनवल्शनल कोड और एक इंटरलीवर को एक ब्लॉक कोड बनाने के लिए जोड़ती है जो शैनन सीमा के डेसिबल के एक अंश के भीतर प्रदर्शन कर सकता है। व्यावहारिक अनुप्रयोग के संदर्भ में एलडीपीसी कोड से पहले, वे अब समान प्रदर्शन प्रदान करते हैं।

टर्बो कोडिंग के शुरुआती व्यावसायिक अनुप्रयोगों में से एक CDMA2000 (TIA IS-2000) डिजिटल सेलुलर तकनीक थी जिसे क्वालकॉम द्वारा विकसित किया गया था और वेरिज़ॉन वायरलेस, स्प्रिंट नेक्सटल और अन्य वाहकों द्वारा बेचा गया था। इसका उपयोग CDMA2000 1x के विकास के लिए विशेष रूप से इंटरनेट एक्सेस, Evolution-Data Optimized|1xEV-DO (TIA IS-856) के लिए भी किया जाता है। 1x की तरह, EV-DO क्वालकॉम द्वारा विकसित किया गया था, और वेरिज़ोन वायरलेस, स्प्रिंट नेक्स्टल और अन्य वाहकों द्वारा बेचा जाता है (1xEV-DO के लिए वेरिज़ोन का मार्केटिंग नाम ब्रॉडबैंड एक्सेस है, स्प्रिंट के उपभोक्ता और 1xEV-DO के लिए व्यावसायिक मार्केटिंग नाम पावर विजन हैं और मोबाइल ब्रॉडबैंड, क्रमशः)।

स्थानीय डिकोडिंग और कोड का परीक्षण

कभी-कभी केवल संदेश के एक बिट को डिकोड करना आवश्यक होता है, या यह जांचने के लिए कि क्या दिया गया संकेत एक कोडवर्ड है, और पूरे सिग्नल को देखे बिना ऐसा करें। यह एक स्ट्रीमिंग सेटिंग में समझ में आ सकता है, जहां कोडवर्ड बहुत तेजी से पर्याप्त रूप से डिकोड किए जाने के लिए बहुत बड़े हैं और जहां संदेश के केवल कुछ बिट्स अभी के लिए रुचि के हैं। साथ ही ऐसे कोड कम्प्यूटेशनल जटिलता सिद्धांत में एक महत्वपूर्ण उपकरण बन गए हैं, उदाहरण के लिए, संभाव्य रूप से जांच योग्य प्रमाणों के डिजाइन के लिए।

स्थानीय रूप से डिकोड करने योग्य कोड त्रुटि-सुधार करने वाले कोड होते हैं, जिसके लिए कोडवर्ड के कुछ स्थिर अंशों पर कोडवर्ड के दूषित होने के बाद भी कोडवर्ड की स्थिति की एक छोटी (निरंतर) संख्या को देखते हुए संदेश के एकल बिट्स को संभाव्य रूप से पुनर्प्राप्त किया जा सकता है। स्थानीय रूप से परीक्षण योग्य कोड त्रुटि-सुधार करने वाले कोड होते हैं, जिसके लिए यह संभाव्य रूप से जांचा जा सकता है कि सिग्नल की स्थिति की एक छोटी संख्या को देखते हुए सिग्नल कोडवर्ड के करीब है या नहीं।

इंटरलीविंग

इंटरलीविंग विचार का एक छोटा उदाहरण

आगे त्रुटि सुधार कोड के प्रदर्शन को बेहतर बनाने के लिए इंटरलीविंग का उपयोग अक्सर डिजिटल संचार और भंडारण प्रणालियों में किया जाता है। कई संचार चैनल मेमोरीलेस नहीं होते हैं: आमतौर पर त्रुटियाँ स्वतंत्र रूप से होने के बजाय फटने वाली त्रुटियों में होती हैं। यदि किसी कोड शब्द में त्रुटियों की संख्या त्रुटि-सुधार कोड की क्षमता से अधिक है, तो यह मूल कोड शब्द को पुनर्प्राप्त करने में विफल रहता है। इंटरलीविंग कई कोड शब्दों में स्रोत प्रतीकों को फेरबदल करके इस समस्या को दूर करता है, जिससे त्रुटियों का अधिक समान वितरण (निरंतर) बनता है।[14] इसलिए, इंटरलीविंग का व्यापक रूप से फट त्रुटि सुधार कोड | बर्स्ट एरर-करेक्शन के लिए उपयोग किया जाता है।

आधुनिक पुनरावृत्त कोड का विश्लेषण, जैसे टर्बो कोड और एलडीपीसी कोड, आमतौर पर त्रुटियों का एक स्वतंत्र वितरण मानते हैं।[15] एलडीपीसी कोड का उपयोग करने वाले सिस्टम आमतौर पर कोड वर्ड के भीतर प्रतीकों में अतिरिक्त इंटरलीविंग को नियोजित करते हैं।[16] टर्बो कोड के लिए, एक इंटरलीवर एक अभिन्न अंग है और अच्छे प्रदर्शन के लिए इसका उचित डिज़ाइन महत्वपूर्ण है।[14][17] पुनरावृत्त डिकोडिंग एल्गोरिथ्म सबसे अच्छा काम करता है जब डिकोडर का प्रतिनिधित्व करने वाले कारक ग्राफ में छोटे चक्र नहीं होते हैं; छोटे चक्रों से बचने के लिए इंटरलीवर को चुना जाता है।

इंटरलीवर डिज़ाइन में शामिल हैं:

  • आयताकार (या एकसमान) इंटरलीवर्स (ऊपर वर्णित स्किप कारकों का उपयोग करने वाली विधि के समान)
  • दृढ़ इंटरलीवर
  • यादृच्छिक इंटरलीवर (जहां इंटरलीवर एक ज्ञात यादृच्छिक क्रमपरिवर्तन है)
  • एस-यादृच्छिक इंटरलीवर (जहां इंटरलीवर एक ज्ञात यादृच्छिक क्रमपरिवर्तन है जिसमें बाधा है कि दूरी एस के भीतर कोई इनपुट प्रतीक आउटपुट में एस की दूरी के भीतर दिखाई नहीं देता है)।[18]
  • एक विवाद-मुक्त द्विघात क्रमचय बहुपद (QPP)।[19] उपयोग का एक उदाहरण 3GPP लॉन्ग टर्म इवोल्यूशन मोबाइल दूरसंचार मानक में है।[20]

मल्टी-वाहक संकेत कम्युनिकेशन सिस्टम में, फ्रीक्वेंसी विविधता योजना प्रदान करने के लिए कैरियर्स के बीच इंटरलीविंग को नियोजित किया जा सकता है, उदाहरण के लिए, आवृत्ति-चयनात्मक लुप्त होती या नैरोबैंड इंटरफेरेंस को कम करने के लिए।[21]


उदाहरण

बिना इंटरलीविंग के ट्रांसमिशन:

त्रुटि रहित संदेश:                                 aaaabbbbccccddddeeeeffffgggg

फट त्रुटि के साथ संचरण: aaaabbbbccc____deeeeffffgggg यहां, एक ही अक्षर का प्रत्येक समूह 4-बिट एक-बिट त्रुटि-सुधार कोडवर्ड का प्रतिनिधित्व करता है। कोडवर्ड cccc एक बिट में बदल दिया गया है और इसे ठीक किया जा सकता है, लेकिन कोडवर्ड dddd तीन बिट्स में बदल दिया गया है, इसलिए या तो इसे डीकोड नहीं किया जा सकता है या यह झूठा हो सकता है।

इंटरलीविंग के साथ:

त्रुटि रहित कूट शब्द:                              aaaabbbbccccddddeeeeffffgggg

इंटरलीव्ड: abcdefgabcdefgabcdefgabcdefg फट त्रुटि के साथ संचरण: abcdefgabcd____bcdefgabcdefg डीइंटरलीविंग के बाद प्राप्त कोड शब्द: aa_abbbbccccdddde_eef_ffg_gg प्रत्येक कोडवर्ड मेंaaaa,eeee,ffff, औरgggg, केवल एक बिट बदला गया है, इसलिए एक-बिट त्रुटि-सुधार कोड सब कुछ सही ढंग से डिकोड करेगा।

बिना इंटरलीविंग के ट्रांसमिशन:

मूल प्रेषित वाक्य:                      ThisIsAnExampleOfInterleaving

बर्स्ट त्रुटि के साथ वाक्य प्राप्त हुआ: ThisIs______pleOfInterleaving अवधिAnExampleज्यादातर समझ से बाहर और सही करने के लिए मुश्किल समाप्त होता है।

इंटरलीविंग के साथ:

प्रेषित वाक्य:                               ThisIsAnExampleOfInterleaving...

त्रुटि रहित संचरण: TIEpfeaghsxlIrv.iAaenli.snmOten. बर्स्ट त्रुटि के साथ वाक्य प्राप्त हुआ: TIEpfe______Irv.iAaenli.snmOten. deinterleaving के बाद सजा मिली: T_isI_AnE_amp_eOfInterle_vin_... कोई भी शब्द पूरी तरह से खोया नहीं है और कम से कम अनुमान के साथ लापता अक्षरों को पुनर्प्राप्त किया जा सकता है।

इंटरलीविंग के नुकसान

इंटरलीविंग तकनीकों का उपयोग कुल विलंब को बढ़ाता है। ऐसा इसलिए है क्योंकि पैकेट को डिकोड किए जाने से पहले पूरे इंटरलीव्ड ब्लॉक को प्राप्त किया जाना चाहिए।[22] साथ ही इंटरलीवर त्रुटियों की संरचना को छिपाते हैं; इंटरलीवर के बिना, अधिक उन्नत डिकोडिंग एल्गोरिदम त्रुटि संरचना का लाभ उठा सकते हैं और इंटरलीवर के साथ संयुक्त सरल डिकोडर की तुलना में अधिक विश्वसनीय संचार प्राप्त कर सकते हैं।[citation needed]. ऐसे एल्गोरिदम का एक उदाहरण तंत्रिका नेटवर्क पर आधारित है[23] संरचनाएं।

त्रुटि-सुधार कोड के लिए सॉफ्टवेयर

सॉफ़्टवेयर में त्रुटि-सुधार कोड (ECCs) के व्यवहार का अनुकरण करना ECCs को डिज़ाइन, मान्य और बेहतर बनाने के लिए एक सामान्य अभ्यास है। आगामी वायरलेस 5G मानक सॉफ्टवेयर ECC के लिए अनुप्रयोगों की एक नई श्रेणी को बढ़ाता है: C-RAN | क्लाउड रेडियो एक्सेस नेटवर्क (C-RAN) एक सॉफ्टवेयर-परिभाषित रेडियो | सॉफ्टवेयर-परिभाषित रेडियो (SDR) संदर्भ में। विचार सीधे संचार में सॉफ्टवेयर ईसीसी का उपयोग करना है। उदाहरण के लिए 5जी में, सॉफ्टवेयर ईसीसी क्लाउड में स्थित हो सकते हैं और एंटेना इस कंप्यूटिंग संसाधनों से जुड़े हुए हैं: इस तरह संचार नेटवर्क के लचीलेपन में सुधार और अंततः सिस्टम की ऊर्जा दक्षता में वृद्धि।

इस संदर्भ में, विभिन्न उपलब्ध ओपन-सोर्स सॉफ़्टवेयर नीचे सूचीबद्ध हैं (गैर संपूर्ण)।

  • AFF3CT(एक फास्ट फॉरवर्ड एरर करेक्शन टूलबॉक्स): C++ में एक पूर्ण संचार श्रृंखला (टर्बो, एलडीपीसी, पोलर कोड आदि जैसे कई समर्थित कोड), बहुत तेज और विशिष्ट चैनल कोडिंग (अनुकरण के लिए एक कार्यक्रम के रूप में या एसडीआर के लिए एक पुस्तकालय के रूप में इस्तेमाल किया जा सकता है)।
  • IT++: रैखिक बीजगणित, संख्यात्मक अनुकूलन, सिग्नल प्रोसेसिंग, संचार और सांख्यिकी के लिए कक्षाओं और कार्यों की एक C++ लाइब्रेरी।
  • OpenAir: विकसित पैकेट कोर नेटवर्क से संबंधित 3GPP विनिर्देशों का कार्यान्वयन (C में)।

== त्रुटि-सुधार कोड == की सूची

Distance Code
2 (single-error detecting) Parity
3 (single-error correcting) Triple modular redundancy
3 (single-error correcting) perfect Hamming such as Hamming(7,4)
4 (SECDED) Extended Hamming
5 (double-error correcting)
6 (double-error correct-/triple error detect) Nordstrom-Robinson code
7 (three-error correcting) perfect binary Golay code
8 (TECFED) extended binary Golay code

यह भी देखें

संदर्भ

  1. Glover, Neal; Dudley, Trent (1990). इंजीनियरों के लिए व्यावहारिक त्रुटि सुधार डिजाइन (Revision 1.1, 2nd ed.). CO, USA: Cirrus Logic. ISBN 0-927239-00-0.
  2. 2.0 2.1 Hamming, Richard Wesley (April 1950). "त्रुटि का पता लगाने और कोड को ठीक करने में त्रुटि". Bell System Technical Journal. USA: AT&T. 29 (2): 147–160. doi:10.1002/j.1538-7305.1950.tb00463.x. S2CID 61141773.
  3. 3.0 3.1 3.2 Maunder, Robert (2016). "चैनल कोडिंग का अवलोकन".
  4. Charles Wang; Dean Sklar; Diana Johnson (Winter 2001–2002). "फॉरवर्ड एरर-करेक्शन कोडिंग". Crosslink. The Aerospace Corporation. 3 (1). Archived from the original on 14 March 2012. Retrieved 5 March 2006. त्रुटि सुधार कोड कैसे काम करते हैं {{cite journal}}: External link in |quote= (help)
  5. "Hamming codes for NAND flash memory devices" Archived 21 August 2016 at the Wayback Machine. EE Times-Asia. Apparently based on "Micron Technical Note TN-29-08: Hamming Codes for NAND Flash Memory Devices". 2005. Both say: "The Hamming algorithm is an industry-accepted method for error detection and correction in many SLC NAND flash-based applications."
  6. 6.0 6.1 "फ्लैश मेमोरी पर किस प्रकार के ईसीसी का उपयोग किया जाना चाहिए?" (Application note). Spansion. 2011. रीड-सोलोमन एल्गोरिदम और बीसीएच एल्गोरिदम दोनों एमएलसी नंद फ्लैश के लिए सामान्य ईसीसी विकल्प हैं। ... हैमिंग आधारित ब्लॉक कोड एसएलसी के लिए सबसे अधिक उपयोग किए जाने वाले ईसीसी हैं... रीड-सोलोमन और बीसीएच दोनों ही कई त्रुटियों को संभालने में सक्षम हैं और एमएलसी फ्लैश पर व्यापक रूप से उपयोग किए जाते हैं।
  7. Jim Cooke (August 2007). "नंद फ्लैश मेमोरी के असुविधाजनक सत्य" (PDF). p. 28. एसएलसी के लिए, 1 की सुधार सीमा वाला कोड पर्याप्त है। t=4 आवश्यक ... MLC के लिए.
  8. Baldi, M.; Chiaraluce, F. (2008). "मल्टीमीडिया प्रसारण में बीसीएच और आरएस कोड के विश्वास प्रचार डिकोडिंग के लिए एक सरल योजना". International Journal of Digital Multimedia Broadcasting. 2008: 1–12. doi:10.1155/2008/957846.
  9. Shah, Gaurav; Molina, Andres; Blaze, Matt (2006). "कीबोर्ड और गुप्त चैनल". USENIX. Retrieved 20 December 2018.
  10. Tse, David; Viswanath, Pramod (2005), Fundamentals of Wireless Communication, Cambridge University Press, UK
  11. Shannon, C. E. (1948). "संचार का एक गणितीय सिद्धांत" (PDF). Bell System Technical Journal. 27 (3–4): 379–423 & 623–656. doi:10.1002/j.1538-7305.1948.tb01338.x. hdl:11858/00-001M-0000-002C-4314-2.
  12. Rosas, F.; Brante, G.; Souza, R. D.; Oberli, C. (2014). "ऊर्जा-कुशल वायरलेस संचार प्राप्त करने के लिए कोड दर का अनुकूलन". Proceedings of the IEEE Wireless Communications and Networking Conference (WCNC). pp. 775–780. doi:10.1109/WCNC.2014.6952166. ISBN 978-1-4799-3083-8.
  13. IEEE Standard, section 20.3.11.6 "802.11n-2009" Archived 3 February 2013 at the Wayback Machine, IEEE, 29 October 2009, accessed 21 March 2011.
  14. 14.0 14.1 Vucetic, B.; Yuan, J. (2000). टर्बो कोड: सिद्धांत और अनुप्रयोग. Springer Verlag. ISBN 978-0-7923-7868-6.
  15. Luby, Michael; Mitzenmacher, M.; Shokrollahi, A.; Spielman, D.; Stemann, V. (1997). "प्रैक्टिकल लॉस-रेसिलिएंट कोड". Proc. 29th Annual Association for Computing Machinery (ACM) Symposium on Theory of Computation.
  16. "डिजिटल वीडियो प्रसारण (डीवीबी); ब्रॉडकास्टिंग, इंटरएक्टिव सर्विसेज, न्यूज गैदरिंग और अन्य सैटेलाइट ब्रॉडबैंड एप्लिकेशन (DVB-S2) के लिए दूसरी पीढ़ी की फ्रेमिंग संरचना, चैनल कोडिंग और मॉड्यूलेशन सिस्टम". En 302 307. ETSI (V1.2.1). April 2009.
  17. Andrews, K. S.; Divsalar, D.; Dolinar, S.; Hamkins, J.; Jones, C. R.; Pollara, F. (November 2007). "डीप-स्पेस एप्लिकेशन के लिए टर्बो और एलडीपीसी कोड का विकास". Proceedings of the IEEE. 95 (11): 2142–2156. doi:10.1109/JPROC.2007.905132. S2CID 9289140.
  18. Dolinar, S.; Divsalar, D. (15 August 1995). "यादृच्छिक और गैर-यादृच्छिक क्रमपरिवर्तन का उपयोग करके टर्बो कोड के लिए भार वितरण". TDA Progress Report. 122: 42–122. Bibcode:1995TDAPR.122...56D. CiteSeerX 10.1.1.105.6640.
  19. Takeshita, Oscar (2006). "क्रमपरिवर्तन बहुपद इंटरलीवर्स: एक बीजगणितीय-ज्यामितीय परिप्रेक्ष्य". IEEE Transactions on Information Theory. 53 (6): 2116–2132. arXiv:cs/0601048. Bibcode:2006cs........1048T. doi:10.1109/TIT.2007.896870. S2CID 660.
  20. 3GPP TS 36.212, version 8.8.0, page 14
  21. "डिजिटल वीडियो प्रसारण (डीवीबी); दूसरी पीढ़ी के डिजिटल स्थलीय टेलीविजन प्रसारण प्रणाली (DVB-T2) के लिए फ़्रेम संरचना, चैनल कोडिंग और मॉड्यूलेशन". En 302 755. ETSI (V1.1.1). September 2009.
  22. Techie (3 June 2010). "इंटरलीविंग की व्याख्या करना". W3 Techie Blog. Retrieved 3 June 2010.
  23. Krastanov, Stefan; Jiang, Liang (8 September 2017). "स्टेबलाइजर कोड्स के लिए डीप न्यूरल नेटवर्क प्रोबेबिलिस्टिक डिकोडर". Scientific Reports. 7 (1): 11003. arXiv:1705.09334. Bibcode:2017NatSR...711003K. doi:10.1038/s41598-017-11266-1. PMC 5591216. PMID 28887480.
  24. Nordstrom, A.W.; Robinson, J.P. (1967), "An optimum nonlinear code", Information and Control, 11 (5–6): 613–616, doi:10.1016/S0019-9958(67)90835-2
  25. Perry, Jonathan; Balakrishnan, Hari; Shah, Devavrat (2011). "रेटलेस स्पाइनल कोड्स". Proceedings of the 10th ACM Workshop on Hot Topics in Networks. pp. 1–6. doi:10.1145/2070562.2070568. hdl:1721.1/79676. ISBN 9781450310598.


आगे की पढाई


इस पेज में लापता आंतरिक लिंक की सूची

  • बातचीत का माध्यम
  • विपुल भंडारण
  • ईसीसी मेमोरी
  • गलती पहचानना
  • विटरबी डिकोडर
  • शोर अनुपात करने के लिए संकेत
  • अनुकूली मॉड्यूलेशन और कोडिंग
  • स्वचालित दोहराव अनुरोध
  • नैंड फ्लैश
  • बहुआयामी समता-चेक कोड
  • गले में कोड (बहुविकल्पी)
  • बहुपदी समय फलन
  • बहु स्तरीय सेल
  • यात्रा कार्यक्रम
  • संभाव्य रूप से जाँच योग्य प्रमाण
  • स्थानीय रूप से डिकोडेबल कोड
  • फटने की त्रुटि
  • क्रमपरिवर्तन बहुपद
  • मिथ्या
  • कोड दोहराएं-जमा करें
  • चक्रीय अतिरेक की जाँच
  • मिटा कोड
  • त्रुटि का पता लगाना और सुधार

बाहरी कड़ियाँ

श्रेणी: त्रुटि पहचान और सुधार