డిజిటల్ వ్యవస్థలలో, ప్రసారం చేయబడిన డేటా కమ్యూనికేషన్ బాహ్య శబ్దం మరియు ఇతర శారీరక వైఫల్యాల కారణంగా పాడైపోవచ్చు. ప్రసారం చేయబడిన డేటా ఇచ్చిన ఇన్పుట్ డేటాతో సరిపోలకపోతే, దానిని ‘లోపం’ అంటారు. డేటా లోపాలు డిజిటల్ వ్యవస్థలలో ముఖ్యమైన డేటాను తొలగించగలవు. డేటా బదిలీ డిజిటల్ వ్యవస్థలలో బిట్స్ (0 మరియు 1) రూపంలో ఉంటుంది. బిట్లో ఎవరైనా మార్చబడితే, మొత్తం సిస్టమ్ పనితీరు ప్రభావితమవుతుంది. బిట్ ‘1’ ను బిట్ ‘0’ లేదా దీనికి విరుద్ధంగా మార్చినట్లయితే, దానిని బిట్ ఎర్రర్ అంటారు. భిన్నమైనవి ఉన్నాయి లోపాల రకాలు సింగిల్ బిట్ లోపాలు, బహుళ లోపాలు మరియు పేలుడు లోపాలు వంటివి. ఈ వ్యాసంలో, మేము లోపం దిద్దుబాటు మరియు గుర్తింపు మరియు హామింగ్ కోడ్ గురించి చర్చిస్తాము.
లోపం గుర్తించడం మరియు దిద్దుబాటు అంటే ఏమిటి?
డిజిటల్ కమ్యూనికేషన్లో, ఒక సిస్టమ్ / నెట్వర్క్ నుండి మరొక సిస్టమ్ / నెట్వర్క్కు సమాచారాన్ని బదిలీ చేయడంలో లోపం ఉంటే డేటా పోతుంది. కాబట్టి, లోపాలను కనుగొని సరిదిద్దడం చాలా ముఖ్యం. కొంత లోపం గుర్తింపు మరియు సమర్థవంతమైన కమ్యూనికేషన్ కోసం లోపాలను గుర్తించడానికి మరియు సరిదిద్దడానికి దిద్దుబాటు పద్ధతులు ఉపయోగించబడతాయి. ఈ పద్ధతులు ఉపయోగించినట్లయితే, అప్పుడు డేటాను అధిక ఖచ్చితత్వంతో బదిలీ చేయవచ్చు.
లోపం గుర్తించడం అనేది డిజిటల్ సిస్టమ్స్లో ట్రాన్స్మిటర్ / పంపినవారి నుండి రిసీవర్కు ప్రసారం చేసిన లోపాలను గుర్తించడానికి ఉపయోగించే పద్ధతి. లోపాలను కనుగొనడానికి ప్రసార సమయంలో డేటాకు పునరావృత సంకేతాలు జోడించబడతాయి. వీటిని లోపం గుర్తించే సంకేతాలు అంటారు.
లోపం దిద్దుబాటు అంటే ట్రాన్స్మిటర్ నుండి రిసీవర్కు ప్రసారం చేయబడిన డేటా యొక్క దిద్దుబాటు. లోపం దిద్దుబాటు రెండు రకాలుగా చేయవచ్చు.
వెనుకబడిన లోపం దిద్దుబాటు
ఈ రకమైన లోపం దిద్దుబాటులో, రిసీవర్ లోపాన్ని గుర్తించినట్లయితే డేటాను తిరిగి ప్రసారం చేయమని రిసీవర్ పంపినవారిని తిరిగి అభ్యర్థిస్తుంది.
ఫార్వర్డ్ లోపం దిద్దుబాటు
రిసీవర్ అందుకున్న డేటా లోపాన్ని కనుగొంటే, డేటాను స్వయంచాలకంగా సరిదిద్దడానికి మరియు తిరిగి పొందడానికి, లోపం-సరిచేసే కోడ్లను ఇది అమలు చేస్తుంది.
డేటా బిట్స్లో ‘m’ no.of మరియు పునరావృత బిట్లు ఉంటే, అప్పుడు సమాచార కలయికలు 2r అవుతుంది.
2r> = m + r + 1
లోపం గుర్తించే కోడ్ల రకాలు
అందుకున్న డేటాలోని లోపాలను 3 రకాల లోపం గుర్తింపు కోడ్లను ఉపయోగించడం ద్వారా గుర్తించవచ్చు. అవి, పారిటీ చెక్, సైక్లిక్ రిడెండెన్సీ చెక్ (సిఆర్సి) మరియు లాంగిట్యూడినల్ రిడెండెన్సీ చెక్.
పారిటీ చెక్
పారిటీ బిట్ అని పిలువబడే పునరావృత బిట్ సమానత్వం లేదా బేసి సమానత్వం విషయంలో సంఖ్యను బిట్లను సమానంగా లేదా బేసిగా చేయడానికి జోడించబడుతుంది. పారిటీ బిట్ను జోడించడానికి రిసీవర్ ఒక ఫ్రేమ్లో no.of బిట్లను (1’లు) లెక్కిస్తుంది. దీనిని పారిటీ చెకింగ్ అంటారు. ఒక ఫ్రేమ్లోని no.of 1’లు సమానంగా ఉంటే, అప్పుడు ‘1’ను సున్నా విలువతో జోడించడం ద్వారా సమానత్వం కూడా ఉపయోగించబడుతుంది. అదేవిధంగా, no.of 1 యొక్క బేసి, అప్పుడు ‘1’ విలువతో బిట్ను జోడించడం ద్వారా బేసి సమానత్వం ఉపయోగించబడుతుంది.
లోపం-గుర్తింపు
అందువల్ల, మూలం నుండి రిసీవర్ అందుకున్న ఫ్రేమ్ / తేదీ పాడైపోకుండా చూసుకోవడానికి ఇది ఉపయోగించబడుతుంది. ఈ రకమైన లోపం గుర్తింపులో, అందుకున్న ఫ్రేమ్లో కూడా 1 యొక్క సంఖ్య ఉండాలి. అన్ని రకాల లోపాలను గుర్తించడంలో ఇది చాలా తక్కువ ఖర్చుతో కూడుకున్నది.
లాంగిట్యూడినల్ రిడండెన్సీ చెక్ (LRC)
కోడి బిట్స్ యొక్క సెట్ / బ్లాక్ నిర్వహించబడుతుంది, అప్పుడు ప్రతి ఫ్రేమ్లోని పారిటీ బిట్ను తనిఖీ చేయడానికి LRC పద్ధతిని ఉపయోగించవచ్చు. ఇది అసలు డేటాతో పాటు పారిటీ బిట్ల సమితిని పంపడానికి సహాయపడుతుంది మరియు పునరుక్తిని తనిఖీ చేస్తుంది.
చక్రీయ పునరావృత తనిఖీ
మూలం నుండి స్వీకరించిన డేటా / ఫ్రేమ్ చెల్లుబాటు అవుతుందో లేదో తెలుసుకోవడానికి అతని రకం ఉపయోగించబడుతుంది. ఇది పంపవలసిన డేటా యొక్క బైనరీ విభాగంలో ఉంటుంది మరియు బహుపదాలను ఉపయోగిస్తుంది (విభజనను ఉత్పత్తి చేయడానికి). ముందు ప్రసారం , మిగిలిన వాటిని లెక్కించడానికి డేటా / బిట్స్ / ఫ్రేమ్పై పంపినవారు ఒక డివిజన్ ఆపరేషన్ చేస్తారు.
చక్రీయ-పునరుక్తి-తనిఖీ
పంపినవారి నుండి వాస్తవ డేటాను ప్రసారం చేసేటప్పుడు, ఇది మిగిలినది వాస్తవ డేటా చివరిలో జతచేస్తుంది. వాస్తవ డేటా మరియు మిగిలిన కలయికను కోడ్వర్డ్ అంటారు. డేటా కోడ్వర్డ్ల రూపంలో ప్రసారం చేయబడుతుంది. ఈ ప్రక్రియలో, డేటా పాడైతే, డేటా రిసీవర్ చేత తిరస్కరించబడుతుంది లేకపోతే అది అంగీకరించబడుతుంది.
హామింగ్ కోడ్ అంటే ఏమిటి?
హామింగ్ కోడ్ 2-ఇంటర్మీడియట్ లోపాల వరకు లోపం గుర్తించే ప్రక్రియలో ఉపయోగించే సరళ కోడ్ అని నిర్వచించబడింది. ఇది సింగిల్-బిట్ లోపాలను గుర్తించగల సామర్థ్యాన్ని కలిగి ఉంటుంది. ఈ పద్ధతిలో, డేటాను ఎన్కోడ్ చేయడానికి పంపినవారు డేటా / సందేశానికి పునరావృత బిట్స్ జోడించబడతాయి. లోపం గుర్తించడం మరియు దిద్దుబాటు చేయడానికి, లోపం దిద్దుబాటు ప్రక్రియ కోసం ఈ పునరావృత బిట్స్ కొన్ని స్థానాల్లో చేర్చబడతాయి.
హామింగ్-కోడ్
హామింగ్ కోడ్ల చరిత్ర
1950 లో, రిచర్డ్ డబ్ల్యూ. హామింగ్ డేటాలోని లోపాలను గుర్తించి సరిదిద్దడానికి హామింగ్ కోడ్లను కనుగొన్నాడు. అధిక విశ్వసనీయతతో కంప్యూటర్ల పరిణామం తరువాత, అతను 1-లోపం సరిదిద్దే సంకేతాల కోసం హామింగ్ కోడ్లను ప్రవేశపెట్టాడు మరియు తరువాత అతను 2-లోపం గుర్తించే కోడ్ల వరకు విస్తరించాడు. సమానత్వ తనిఖీ డేటాలోని లోపాలను గుర్తించి సరిదిద్దలేనందున హామింగ్ కోడ్లు సృష్టించబడతాయి. వాస్తవ డేటా మరియు రిడెండెన్సీ బిట్ల మధ్య ఏదైనా బ్లాక్లెంగ్త్ డేటాకు హామింగ్ సంకేతాలు చేర్చబడతాయి. లోపం దిద్దుబాటు పద్ధతుల సమస్యలపై పని చేయడానికి అతను అల్గోరిథంల శ్రేణిని అభివృద్ధి చేశాడు మరియు ఈ సంకేతాలు ECC మెమరీలో విస్తృతంగా ఉపయోగించబడుతున్నాయి.
హామింగ్ కోడ్ ఉపయోగించి సందేశాన్ని ఎన్కోడింగ్ చేసే ప్రక్రియ
పంపినవారు హామింగ్ కోడ్ ఉపయోగించి సందేశాన్ని ఎన్కోడింగ్ చేసే ప్రక్రియలో 3 దశలు ఉంటాయి.
దశ 1: మొదటి దశ సందేశంలో అనవసరమైన బిట్లను లెక్కించడం
- ఉదాహరణకు, సందేశంలో ‘n’ no.of బిట్స్ మరియు ‘p’ no.of అనవసరమైన బిట్స్ సందేశానికి జోడించబడితే, అప్పుడు ‘np’ వివిధ రాష్ట్రాలను సూచిస్తుంది (n + p + 1).
- ఎక్కడ (n + p) ప్రతి బిట్ స్థానంలో లోపం యొక్క స్థానాన్ని సూచిస్తుంది
- 1 (అదనపు స్థితి) లోపం సూచిస్తుంది.
- ‘P’ 2 ^ p (2p) స్థితులను సూచిస్తుంది కాబట్టి, ఇవి (n + p + 1) రాష్ట్రాలకు సమానం.
దశ 2: పునరావృత బిట్లను ఖచ్చితమైన / సరైన స్థితిలో ఉంచండి
1, 2, 4, 8, 16, వంటి 2 యొక్క శక్తి అయిన బిట్ స్థానాల్లో 'పి' బిట్స్ చేర్చబడతాయి. ఈ బిట్ స్థానాలు పి 1 (స్థానం 1), పి 2 (స్థానం 2), పి 3 (స్థానం 4), మొదలైనవి.
దశ 3: పునరావృత బిట్ల విలువలను లెక్కించండి
- పునరావృత బిట్ల విలువలను లెక్కించడానికి ఇక్కడ పారిటీ బిట్స్ ఉపయోగించబడతాయి.
- పారిటీ బిట్స్ సందేశంలో 1 యొక్క సంఖ్యను సమానంగా లేదా బేసిగా చేయగలవు.
- సందేశంలో 1 యొక్క మొత్తం సంఖ్య సమానంగా ఉంటే, అప్పుడు సమానత్వం కూడా ఉపయోగించబడుతుంది
- సందేశంలో మొత్తం 1 యొక్క సంఖ్య బేసి అయితే, బేసి సమానత్వం ఉపయోగించబడుతుంది.
హామింగ్ కోడ్లో సందేశాన్ని డీక్రిప్ట్ చేసే విధానం
హామింగ్ కోడ్ను ఉపయోగించి రిసీవర్ పంపినవారి నుండి అందుకున్న సందేశాన్ని డీక్రిప్ట్ చేసే ప్రక్రియ క్రింది దశలను కలిగి ఉంటుంది. ఈ ప్రక్రియ సందేశంలోని లోపాలను గుర్తించి సరిదిద్దడానికి తిరిగి లెక్కించడం తప్ప మరొకటి కాదు.
దశ 1: పునరావృత బిట్ల సంఖ్యను లెక్కించండి
పునరావృత బిట్లను ఉపయోగించి సందేశాన్ని ఎన్కోడ్ చేసే సూత్రం,
2p≥ n + p + 1
దశ 2: అన్ని పునరావృత బిట్ల స్థానాలను సరిచేయండి
1,2,4,8,16,32 వంటి 2 యొక్క శక్తి యొక్క బిట్ స్థానాల్లో ‘p’ no.of పునరావృత బిట్స్ ఉంచబడతాయి
దశ 3: సమాన తనిఖీ (బేసి సమానత్వం మరియు సమానత్వం)
డేటా బిట్స్ మరియు పునరావృత బిట్స్లోని 1 యొక్క ఆధారంగా పారిటీ బిట్స్ లెక్కించబడతాయి.
ఉదాహరణకి
P1 యొక్క సమానత్వం 1, 3, 5, 7, 9, 11,…
P2 యొక్క సమానత్వం 2, 3, 6, 7, 10, 11,…
P3 యొక్క సమానత్వం 4-7, 12-15, 20-23,…
హామింగ్ కోడ్ యొక్క ప్రయోజనాలు
డేటా స్ట్రీమ్లో సింగిల్-బిట్ లోపాలు ఉంటే హామింగ్ కోడ్ను ఉపయోగించడం యొక్క ప్రధాన ప్రయోజనం తక్కువ ఖర్చుతో కూడుకున్నది.
- ఇది లోపం గుర్తించడాన్ని అందిస్తుంది మరియు దిద్దుబాటు కోసం లోపాన్ని కలిగి ఉన్న బిట్ను కూడా సూచిస్తుంది.
- కంప్యూటర్ మెమరీ మరియు సింగిల్-బిట్ లోపం దిద్దుబాటు మరియు గుర్తింపులో ఉపయోగించడానికి హామింగ్ కోడ్లు చాలా సులభం మరియు ఉత్తమమైనవి.
హామింగ్ కోడ్ యొక్క ప్రతికూలతలు
- సింగిల్-బిట్ లోపం దిద్దుబాటు మరియు గుర్తింపు కోసం మాత్రమే ఇది ఉత్తమమైనది. బహుళ బిట్స్ లోపాలు ఉంటే, అప్పుడు మొత్తం పాడైపోతుంది.
- హామింగ్ కోడ్ అల్గోరిథం సింగిల్-బిట్ లోపాలను మాత్రమే పరిష్కరించగలదు.
హామింగ్ కోడ్ల అనువర్తనాలు
హామింగ్ సంకేతాలు,
- కంప్యూటింగ్
- టెలికమ్యూనికేషన్స్
- డేటా కుదింపు
- పజిల్స్ మరియు టర్బో కోడ్లను పరిష్కరించడం
- ఉపగ్రహాలు
- ప్లాస్మా CAM
- కవచ వైర్లు
- మోడెములు
- కంప్యూటర్ మెమరీ
- కనెక్టర్లను తెరవండి
- పొందుపరిచిన వ్యవస్థలు మరియు ప్రాసెసర్
తరచుగా అడిగే ప్రశ్నలు
1). హామింగ్ కోడ్ 2-బిట్ లోపాలను గుర్తించగలదా?
హామింగ్ కోడ్లు డేటా స్ట్రీమ్లో 2-బిట్ లోపాలను గుర్తించి సరిచేయగలవు
2). మీరు హామింగ్ కోడ్ను ఎలా పరిష్కరించాలి?
వాస్తవ డేటా మరియు పునరావృత బిట్ల మధ్య డేటా యొక్క పొడవులో హామింగ్ కోడ్లు ఉంచబడతాయి. ఈ సంకేతాలు కనీసం 3 బిట్ల దూరం ఉన్న ప్రదేశాలు
3). పారిటీ కోడ్ అంటే ఏమిటి?
పారిటీ కోడ్ లేదా పారిటీ బిట్ మొత్తం బిట్స్ (1’లను) లేదా బేసిగా చేయడానికి స్వీకరించిన ఫ్రేమ్కు (డేటా 1 మరియు 0 లను కలిగి ఉంటుంది) కొంచెం జోడిస్తుంది.
4). డేటా మధ్య హామింగ్ దూరం ఎంత?
సమాన పొడవు యొక్క రెండు వేర్వేరు డేటా స్ట్రీమ్ల మధ్య దూరం దూరం 1 యొక్క సంఖ్య.
XOR ఆపరేషన్ ఉపయోగించి సమాన పొడవు యొక్క రెండు డేటా తీగలకు మధ్య దూరాన్ని లెక్కించవచ్చు.
ఉదాహరణకు, a = 11011001
b = 10011101
హామింగ్ దూరాన్ని ఇలా లెక్కించవచ్చు,
11011001 ⊕ 10011101 = 01000100 (1-బిట్స్ సంఖ్య 2)
ఫలిత డేటా స్ట్రీమ్లోని 1 యొక్క సంఖ్యను హామింగ్ దూరం సూచిస్తుంది
కాబట్టి, d (11011001, 10011101) = 2
అదేవిధంగా, 010 011 = 001, డి (010, 011) = 1.
5). హామింగ్ కోడ్ చక్రీయమా?
అవును, హామింగ్ సంకేతాలు చక్రీయ సంకేతాలకు సమానం, వీటిని లోపం గుర్తించే కోడ్లుగా ఉపయోగించవచ్చు.
అందువల్ల ఇది లోపం దిద్దుబాటు మరియు గుర్తింపు, లోపం గుర్తించే రకాలు, హామింగ్ సంకేతాలు , హామింగ్ కోడ్లు, హామింగ్ కోడ్ల అనువర్తనాలు, ప్రయోజనాలు మరియు హామింగ్ కోడ్ల యొక్క ప్రతికూలతలను ఉపయోగించి సందేశాన్ని గుప్తీకరించడం మరియు డీక్రిప్ట్ చేసే విధానం. మీ కోసం ఇక్కడ ఒక ప్రశ్న ఉంది, ‘లోపం గుర్తించడం మరియు దిద్దుబాటు యొక్క అనువర్తనాలు ఏమిటి?’