మూలం, విస్తృత వాడకం
Reed–Solomon కోడ్లను Irving S. Reed, Gustave Solomon 1960లో వర్ణించారు. అవి ఒక్క బిట్లపై కాకుండా, సాధారణంగా బైట్లైన పూర్తి సింబల్స్పై పనిచేస్తాయి; అందువల్ల గీత లేదా మరక వంటి గుంపు నష్టాన్ని నిర్వహించడంలో అవి మంచివి.
అదే కోడ్ కుటుంబం CDలు, DVDలు, Blu-ray డిస్క్లలోని డేటాను, కొన్ని డిజిటల్ టెలివిజన్, ఉపగ్రహ లింక్లలో, Data Matrix ECC 200, Aztec code, PDF417 సహా ఇతర 2D బార్కోడ్లలో కూడా రక్షిస్తుంది.
QR కోడ్లు దీన్ని ఎలా వాడతాయి
QR కోడ్ ప్రతి 8-బిట్ కోడ్వర్డ్ను GF(256) పరిమిత క్షేత్రంలోని మూలకంగా పరిగణిస్తుంది; ఇది ప్రిమిటివ్ బహుపది x^8 + x^4 + x^3 + x^2 + 1 (హెక్స్ 0x11D)తో నిర్మితం. డేటా కోడ్వర్డ్లను జనరేటర్ బహుపదితో భాగించి, శేషం వాటికి జోడించే ఎర్రర్ కరెక్షన్ కోడ్వర్డ్లవుతుంది.
పెద్ద కోడ్లు తమ డేటాను అనేక బ్లాక్లుగా విభజిస్తాయి; ప్రతిదానికీ సొంత ఎర్రర్ కరెక్షన్ కోడ్వర్డ్లు ఉంటాయి. కోడ్వర్డ్లను గ్రిడ్లో ఉంచేటప్పుడు బ్లాక్లను ఇంటర్లీవ్ చేస్తారు; దానివల్ల ఒక్క నష్టపు మచ్చ ఒక బ్లాక్ను ముంచెత్తకుండా అనేక బ్లాక్లలో పంపిణీ అవుతుంది.
ఇది ఎంత సరిచేయగలదు
ఒక బ్లాక్లో n ఎర్రర్ కరెక్షన్ కోడ్వర్డ్లు ఉంటే, డీకోడర్ స్థానం తెలియని n/2 కోడ్వర్డ్లను, లేదా స్థానం తెలిసిన (ఎరేజర్లు అంటారు) n కోడ్వర్డ్ల వరకు సరిచేయగలదు. మిశ్రమ సందర్భాల్లో, ప్రతి ఎర్రర్ రెండుగా, ప్రతి ఎరేజర్ ఒకటిగా లెక్కలోకి వస్తుంది.
అందుకే శుభ్రమైన, చదునైన ప్రాంతాన్ని లోగో కప్పినా కోడ్ స్కాన్ కాగలదు: తెలివైన రీడర్ కప్పిన ప్రాంతాన్ని ఎరేజర్లుగా పరిగణించవచ్చు, కానీ యాదృచ్ఛిక నష్టాన్ని సరిచేయడం కష్టం, ఎందుకంటే డీకోడర్ ముందు దాన్ని కనుగొనాలి.
- తెలియని ఎర్రర్లు: EC కోడ్వర్డ్ల సంఖ్యలో సగం వరకు
- ఎరేజర్లు (తెలిసిన స్థానాలు): EC కోడ్వర్డ్ల సంఖ్య వరకు
- క్షేత్రం: GF(256), బహుపది 0x11D
- గుంపు నష్టాన్ని పంచడానికి బ్లాక్లను ఇంటర్లీవ్ చేస్తారు