हैमिंग कोड क्या है: इतिहास, कार्य और इसके अनुप्रयोग

समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें





डिजिटल सिस्टम में, के लिए प्रेषित डेटा संचार बाहरी शोर और किसी अन्य शारीरिक विफलता के कारण दूषित हो सकता है। यदि प्रेषित डेटा दिए गए इनपुट डेटा से मेल नहीं खाता है, तो इसे 'त्रुटि' कहा जाता है। डेटा त्रुटियाँ डिजिटल सिस्टम में महत्वपूर्ण डेटा को हटा सकती हैं। डेटा का हस्तांतरण डिजिटल सिस्टम में बिट्स (0 और 1) के रूप में होगा। यदि बिट में से किसी को बदल दिया जाता है, तो पूरे सिस्टम का प्रदर्शन प्रभावित हो सकता है। यदि बिट the 1 'को बिट ’0' या इसके विपरीत में बदल दिया जाता है, तो इसे बिट त्रुटि कहा जाता है। वह अलग अलग है त्रुटियों के प्रकार एकल बिट त्रुटियों, एकाधिक त्रुटियों और फट त्रुटियों की तरह। इस लेख में, हम त्रुटि सुधार और पता लगाने, और हैमिंग कोड पर चर्चा करते हैं।

त्रुटि का पता लगाने और सुधार क्या है?

डिजिटल संचार में, एक सिस्टम / नेटवर्क से दूसरे सिस्टम / नेटवर्क में सूचना के हस्तांतरण में त्रुटि होने पर डेटा खो जाएगा। इसलिए, त्रुटियों को ढूंढना और उन्हें सही करना महत्वपूर्ण है। कुछ त्रुटि खोज और प्रभावी संचार के लिए त्रुटियों का पता लगाने और सही करने के लिए सुधार विधियों का उपयोग किया जाता है। यदि इन विधियों का उपयोग किया जाता है, तो डेटा को उच्च सटीकता के साथ स्थानांतरित किया जा सकता है।




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

त्रुटि सुधार ट्रांसमीटर से रिसीवर को प्रेषित डेटा का सुधार है। त्रुटि सुधार दो प्रकार से किया जा सकता है।



बैकवर्ड एरर करेक्शन

इस प्रकार के त्रुटि सुधार में, रिसीवर प्राप्तकर्ता को त्रुटि का पता लगाने पर डेटा वापस लेने का अनुरोध करता है।

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

यदि रिसीवर द्वारा प्राप्त डेटा में त्रुटि पाई जाती है, तो वह डेटा को सही और स्वचालित रूप से पुनर्प्राप्त करने के लिए त्रुटि-सुधार कोड को निष्पादित करता है।


यदि डेटा बिट्स का there m 'नंबर है और no r' no.of अनावश्यक बिट्स हैं, तो सूचना का संयोजन 2r होगा।

2r> = m + r + 1

त्रुटि जांच कोड के प्रकार

प्राप्त डेटा में त्रुटियों का पता 3 प्रकार के त्रुटि पहचान कोड का उपयोग करके लगाया जा सकता है। वे हैं, समता जाँच, चक्रीय अतिरेक जाँच (CRC) और अनुदैर्ध्य अतिरेक जाँच।

समता जांच

समता बिट नामक अतिरेक बिट को समता या विषम समता के मामले में सम या विषम नहीं बनाया जाता है। समता बिट जोड़ने के लिए रिसीवर एक फ्रेम में no.of बिट्स (1) को गिनता है। इसे समता जाँच कहते हैं। यदि फ्रेम 1 में no.of 1 सम है, तो समता का उपयोग बिट ’1 बिट शून्य मान जोड़कर किया जाता है। इसी तरह, no.of 1 का आकार विषम है, तो विषम समता का उपयोग मूल्य '1' के साथ थोड़ा जोड़कर किया जाता है।

गलती पहचानना

गलती पहचानना

इसलिए, यह सुनिश्चित करने के लिए उपयोग किया जाता है कि स्रोत से रिसीवर द्वारा प्राप्त फ्रेम / तिथि दूषित नहीं है। इस प्रकार की त्रुटि का पता लगाने में, no.of 1 को प्राप्त फ्रेम में भी होना चाहिए। यह सभी प्रकार की त्रुटि का पता लगाने के बीच बहुत कम खर्चीला है।

अनुदैर्ध्य अतिरेक जाँच (LRC)

बिट्स के सेट / ब्लॉक को व्यवस्थित किया जाता है, फिर एलआरसी पद्धति का उपयोग हर फ्रेम में समता बिट की जांच के लिए किया जा सकता है। यह मूल डेटा के साथ समता बिट्स के सेट को भेजने में मदद करता है और अतिरेक की जांच करता है।

चक्रीय अतिरेक की जाँच

स्रोत से प्राप्त डेटा / फ्रेम का पता लगाने के लिए उसका प्रकार मान्य है या नहीं। इसमें डेटा के बाइनरी डिवीजन को शामिल किया जाता है जिसे भेजा जाना चाहिए और पॉलीओनियल का उपयोग करना चाहिए (विभाजक उत्पन्न करने के लिए)। इससे पहले संचरण , शेष की गणना के लिए डेटा / बिट्स / फ्रेम पर प्रेषक द्वारा एक डिवीजन ऑपरेशन किया जाता है।

चक्रीय अतिरेक की जाँच

चक्रीय अतिरेक की जाँच

प्रेषक से वास्तविक डेटा के प्रसारण के दौरान, यह वास्तविक डेटा के अंत में शेष जोड़ता है। वास्तविक डेटा और शेष के संयोजन को एक कोडवर्ड कहा जाता है। डेटा को कोडवर्ड के रूप में प्रेषित किया जाता है। इस प्रक्रिया में, यदि डेटा दूषित है, तो डेटा रिसीवर द्वारा अस्वीकार कर दिया जाएगा अन्यथा इसे स्वीकार किया जाएगा।

हैमिंग कोड क्या है?

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

हैमिंग-कोड

हमिंग-कोड

कोडिंग का इतिहास

1950 में, रिचर्ड डब्ल्यू। हैमिंग ने डेटा में त्रुटियों का पता लगाने और उन्हें ठीक करने के लिए हैमिंग कोड का आविष्कार किया। उच्च विश्वसनीयता वाले कंप्यूटरों के विकास के बाद, उन्होंने 1-त्रुटि सुधार कोड के लिए हैमिंग कोड पेश किए और बाद में उन्होंने 2-त्रुटि का पता लगाने वाले कोड तक बढ़ाया। हमिंग कोड बनाए जाते हैं क्योंकि समता जांच डेटा में त्रुटियों का पता नहीं लगा सकती है और उन्हें सही नहीं कर सकती है। Hamming कोड वास्तविक डेटा और अतिरेक बिट्स के बीच डेटा के किसी भी अवरोधक में डाला जाता है। उन्होंने त्रुटि सुधार विधियों की समस्याओं पर काम करने के लिए एल्गोरिदम का एक सरणी विकसित किया और ये कोड व्यापक रूप से ईसीसी मेमोरी में उपयोग किए जाते हैं।

हमिंग कोड का उपयोग करके एक संदेश को एन्कोड करने की प्रक्रिया

प्रेषक द्वारा किसी संदेश कोड का उपयोग करके संदेश को एन्कोडिंग करने की प्रक्रिया में 3 चरण शामिल हैं।

चरण 1: पहला कदम यह है कि एक संदेश में अनावश्यक अनावश्यक बिट्स की गणना करें

  • उदाहरण के लिए, यदि किसी संदेश में ’n’ no.of बिट्स और no p ’no.of अनावश्यक बिट्स संदेश में जोड़े जाते हैं, तो p np’ इंगित करता है (n + p + 1) विभिन्न अवस्थाएँ।
  • जहां (n + p) हर बिट स्थिति में एक त्रुटि के स्थान का प्रतिनिधित्व करता है
  • 1 (अतिरिक्त स्थिति) कोई त्रुटि नहीं दर्शाता है।
  • चूंकि) p '2 ^ p (2p) राज्यों को इंगित करता है, जो (n + p + 1) राज्यों के बराबर हैं।

चरण 2: निरर्थक बिट्स को सटीक / सही स्थिति में रखें

बिट पदों में 'p' बिट्स डाले जाते हैं जो 1, 2, 4, 8, 16 आदि की शक्ति की तरह होते हैं। इन बिट पोजीशनों को p1 (स्थिति 1), पी 2 (स्थिति 2), पी 3 (स्थिति) के रूप में इंगित किया जाता है। 4), आदि।

चरण 3: निरर्थक बिट्स के मूल्यों की गणना करें

  • यहाँ निरर्थक बिट्स का उपयोग निरर्थक बिट्स के मूल्यों की गणना करने के लिए किया जाता है।
  • पैरिटी बिट्स no.of 1 के संदेश में भी या विषम बना सकते हैं।
  • यदि किसी संदेश में कुल संख्या 1 है, तो समता का उपयोग किया जाता है
  • यदि किसी संदेश में कुल no.of 1 विषम है, तो विषम समता का उपयोग किया जाता है।

एक संदेश को हामिंग कोड में डिक्रिप्ट करने की प्रक्रिया

हैमिंग कोड का उपयोग करके रिसीवर द्वारा प्रेषक से प्राप्त संदेश को डिक्रिप्ट करने की प्रक्रिया में निम्नलिखित चरण शामिल हैं। यह प्रक्रिया एक संदेश में त्रुटियों का पता लगाने और उन्हें ठीक करने के अलावा और कुछ नहीं है।

चरण 1: संख्या निरर्थक बिट्स की गणना करें

संदेश को बेमानी बिट्स का उपयोग कर सांकेतिक शब्दों में बदलना है,

2 पी 2 एन + पी + 1

चरण 2: सभी निरर्थक बिट्स की स्थिति को ठीक करें

‘P 'no.of अतिरेक बिट्स को 2 की शक्ति के 1,2,4,8,16,32 आदि की एक बिट स्थिति में रखा जाता है।

चरण 3: समता जाँच (विषम समता और समता)

डेटा बिट्स और निरर्थक बिट्स के आधार पर समानता बिट्स की गणना की जाती है।

उदाहरण के लिए

P1 की समानता 1, 3, 5, 7, 9, 11,… होगी

P2 की समानता 2, 3, 6, 7, 10, 11,… होगी

P3 की समानता 4-7, 12-15, 20-23, होगी ...

कोडिंग के लाभ

यदि किसी डेटा स्ट्रीम में एकल-बिट त्रुटियाँ हैं, तो हैमिंग कोड का उपयोग करने का मुख्य लाभ लागत प्रभावी है।

  • यह त्रुटि का पता लगा सकता है और बिट को भी इंगित करता है जिसमें सुधार के लिए त्रुटि है।
  • कंप्यूटर मेमोरी और सिंगल-बिट एरर करेक्शन और डिटेक्शन में उपयोग करने के लिए हैमिंग कोड बहुत आसान और बेस्ट हैं।

हामिंग कोड के नुकसान

  • यह केवल एकल-बिट त्रुटि सुधार और पता लगाने के लिए सबसे अच्छा है। यदि कई बिट्स त्रुटि करते हैं, तो पूरे को दूषित किया जा सकता है।
  • हैमिंग कोड एल्गोरिथ्म केवल एकल-बिट त्रुटियों को हल कर सकता है।

हैमिंग कोड्स के अनुप्रयोग

हमिंग कोड का उपयोग किया जाता है,

  • कम्प्यूटिंग
  • दूरसंचार
  • आधार - सामग्री संकोचन
  • पहेलियाँ और टर्बो कोड को हल करना
  • उपग्रहों
  • प्लाज्मा सीएएम
  • छितरे हुए तार
  • मोडेम
  • स्मृति
  • कनेक्टर्स खोलें
  • अंतः स्थापित प्रणालियाँ और प्रोसेसर

पूछे जाने वाले प्रश्न

1)। क्या हमिंग कोड 2-बिट त्रुटियों का पता लगा सकता है?

हमिंग कोड एक डेटा स्ट्रीम में 2-बिट त्रुटियों का पता लगा सकते हैं और उन्हें सही कर सकते हैं

२)। आप Hamming कोड को कैसे ठीक करते हैं?

हमिंग कोड्स को वास्तविक डेटा और निरर्थक बिट्स के बीच किसी भी लम्बाई के डेटा में रखा जाता है। ये कोड 3 बिट्स की न्यूनतम दूरी वाले स्थान हैं

३)। समता कोड क्या है?

समता कोड या समता बिट प्राप्त फ्रेम में थोड़ा जोड़ रहा है (डेटा में 1 और 0 का) कुल no.of बिट्स (1) भी या विषम बनाने के लिए है।

4)। डेटा के बीच हैमिंग की दूरी क्या है?

समान लंबाई की दो अलग-अलग डेटा धाराओं के बीच की दूरी की दूरी संख्या 1 है।

XOR ऑपरेशन का उपयोग करके समान लंबाई के दो डेटा स्ट्रिंग्स के बीच की बाधा दूरी की गणना की जा सकती है।

उदाहरण के लिए, एक = 11011001

b = 10011101

हमिंग दूरी की गणना इस प्रकार की जा सकती है,

11011001 11 10011101 = 01000100 (नंबर 1-बिट्स 2 हैं)

हामिंग दूरी परिणामी डेटा स्ट्रीम में नंबर 1 का संकेत देती है

तो, d (11011001, 10011101) = 2

इसी तरह, 010 ⊕ 011 = 001, डी (010, 011) = 1।

5)। हैमिंग कोड चक्रीय है?

हां, हैमिंग कोड चक्रीय कोड के बराबर हैं जो त्रुटि-पता लगाने वाले कोड के रूप में उपयोग किए जा सकते हैं।

इस प्रकार यह त्रुटि सुधार और पहचान के बारे में है, त्रुटि का पता लगाने के प्रकार, हैमिंग कोड हैमिंग कोड, हैमिंग कोड के अनुप्रयोग, फायदे, और हैमिंग कोड के नुकसान का उपयोग करके संदेश को एन्क्रिप्ट और डिक्रिप्ट करने की प्रक्रिया। यहाँ आपके लिए एक प्रश्न है, detection त्रुटि का पता लगाने और सुधार के आवेदन क्या हैं? ”