संगणकाचा इतिहास – मेमरी त्रुटी सुधारणे कोड

आम्ही याआधी, संगणक मालिकेच्या इतिहासात नमूद केले आहे की, माध्यम अविश्वसनीय आहे अशा प्रकरणांमध्ये त्रुटी सुधारण्याचे विविध प्रकार वापरले जातात. हे प्रामुख्याने चुंबकीय टेप आणि डिस्कवर लागू होते. रेकॉर्डिंग पृष्ठभागावरील चुंबकीय कोटिंग परिधान करण्याच्या अधीन आहे, CRC (सायक्लिक रिडंडन्सी चेक) सारखे विविध कोड विकसित केले गेले आहेत. डेटा ट्रान्समिशन आता एरर दुरूस्तीचा देखील वापर करते, पूर्वी एरर डिटेक्शन री-ट्रांसमिशनला कारणीभूत ठरेल.

1970 च्या दशकात जेव्हा सेमीकंडक्टर किंवा चिप मेमरी आणल्या गेल्या तेव्हा आठवणींमध्ये त्रुटी सुधारण्याची गरज अधिक तीव्र झाली. जरी त्यांनी कमी जागेत खूप मोठ्या क्षमतेचे वचन दिले असले तरी, चांगल्या किंमतीसाठी, सुरुवातीच्या चिप्स अपयशास बळी पडतात.

मेनफ्रेममध्ये या मेमरी प्रकारांची सुरुवातीच्या काळात हॅमिंग कोडची पुन्हा ओळख झाली. WWII मध्ये मॅनहॅटन प्रकल्पावर काम करणारे गणितज्ञ रिचर्ड हॅमिंग यांनी सुरुवातीच्या संगणकावर काम केले आणि 1950 मध्ये कोड तयार केला.

कोडचा वापर चिप मेमरीमध्ये कॉम्प्युटरचे कार्यप्रदर्शन सुधारण्यासाठी केला गेला जेणेकरून ते बर्याच अपयशांशिवाय वापरता येतील! ते एकल बिट त्रुटी (SBE) दुरुस्त करण्यात सक्षम होते. अशा प्रकारे, मेमरीमधून वाचलेल्या शब्दातील बिट्सपैकी एक 0 ऐवजी 1 असेल, तर ते फ्लायवर परत 0 मध्ये बदलले जाऊ शकते. हे ऑपरेशन वापरकर्त्यासाठी पारदर्शक होते. हे मल्टिपल बिट एरर्स (एमबीई) देखील शोधू शकते, परंतु दुरुस्त करू शकत नाही, ज्याला MUE (मल्टिपल अकरेक्टेबल एरर्स) देखील म्हणतात.

एकाधिक बिट त्रुटींमुळे पुनर्प्राप्ती प्रक्रिया सुरू झाली, ज्यामुळे वेळ वाया गेला, संगणक वर्तुळात अशी परिस्थिती निर्माण झाली! त्यामुळे अभियंत्यांनी त्रुटी नोंदींवर लक्ष ठेवणे महत्त्वाचे होते.

एखाद्या विशिष्ट बिटच्या त्रुटीची पुनरावृत्ती होण्याने एकाधिक बिट्सचे संभाव्य अपयश सूचित होते, कारण त्याच पत्त्यावर दुसर्‍या बिट बिघाडामुळे समस्या उद्भवू शकतात. या कारणास्तव पुढील देखभाल सत्रात एकल बिट त्रुटी दर्शविणारी चिप बदलली जाईल.

हॅमिंग कोड कसे कार्य करते? हे एका साध्या पॅरिटी कोडचा विस्तार म्हणून पाहिले जाऊ शकते, ज्याचा आम्ही आधी उल्लेख केला आहे. विषम समता वर्ण किंवा शब्दातील 1 बिट्सची संख्या मोजते आणि एकूण संख्या विषम करण्यासाठी 1 किंवा 0 वर सेट करते. उदाहरणार्थ 1011010 मध्ये बिट्सची सम संख्या आहे, त्यामुळे मेमरीमध्ये लिहिलेल्या डेटामध्ये 1 चा पॅरिटी बिट जोडला जाईल – 11011010. आता आपण बिटची एकूण संख्या विषम किंवा सम आहे का हे पाहण्यासाठी मेमरीमधून वाचलेला डेटा तपासू शकतो. . जर ते अगदी असेल तर एक त्रुटी आहे.

P101 1010 = अगदी # बिट्स

1101 1010 = समता बिटसह बिट्सची विषम #.

आता आपण पुढच्या पायरीवर जाऊ, आणि एक कोड तयार करू जो बिघडलेल्या बिटचे स्थान ओळखेल. आम्ही असे करण्याचा मार्ग म्हणजे बिट्सच्या संचांच्या मालिकेचा विचार करणे जेणेकरून चेक ओव्हरलॅप होतात. आम्ही हे संच बायनरी बिट व्हॅल्यूज, किंवा पॉवर्स, 1,2,4,8 इत्यादींनुसार निवडतो. शब्दाची लांबी कव्हर करण्यासाठी आवश्यक तेवढे बिट घेतो. हे चेक बिट्स योग्य बिट पोझिशनमध्ये मेमरीमध्ये लिहिलेल्या शब्दात घातले जातात.

D7-D6-D5 C8-D4-D3-D2 C4-D1-C2-C1

D1 ते D7 हे अनुक्रमातील मूळ डेटा बिट आहेत

C1 ते C4 हे दशांश मूल्य पोझिशनमधील चेक बिट आहेत.

संगणकाचा इतिहास – मेमरी त्रुटी सुधारणे कोड

Leave a Reply

Your email address will not be published.

Scroll to top