হামিং কোড কী: ইতিহাস, কাজ এবং এর প্রয়োগসমূহ

সমস্যাগুলি দূর করার জন্য আমাদের উপকরণটি ব্যবহার করে দেখুন





ডিজিটাল সিস্টেমে, এর জন্য প্রেরিত ডেটা যোগাযোগ বাহ্যিক শব্দ এবং অন্য কোনও শারীরিক ব্যর্থতার কারণে দূষিত হতে পারে। যদি প্রেরিত ডেটা প্রদত্ত ইনপুট ডেটার সাথে মিলে না যায় তবে এটিকে একটি ‘ত্রুটি’ বলা হয়। ডেটা ত্রুটি ডিজিটাল সিস্টেমে গুরুত্বপূর্ণ ডেটা মুছতে পারে। ডেটা স্থানান্তরিত হবে ডিজিটাল সিস্টেমে বিট (0 এবং 1) আকারে। যদি বিটের কেউ পরিবর্তন হয় তবে পুরো সিস্টেমের কর্মক্ষমতা ক্ষতিগ্রস্থ হতে পারে। বিট ‘1’ ​​বিটকে যদি ‘0’ বা তার বিপরীতে পরিবর্তন করা হয় তবে এটিকে বিট ত্রুটি বলা হয়। তারা আলাদা ত্রুটি ধরণের যেমন একক বিট ত্রুটি, একাধিক ত্রুটি এবং বিস্ফোরণ ত্রুটি। এই নিবন্ধে, আমরা ত্রুটি সংশোধন এবং সনাক্তকরণ এবং হামিং কোড নিয়ে আলোচনা করব।

ত্রুটি সনাক্তকরণ এবং সংশোধন কী?

ডিজিটাল যোগাযোগের ক্ষেত্রে, একটি সিস্টেম / নেটওয়ার্ক থেকে অন্য সিস্টেম / নেটওয়ার্কে তথ্য স্থানান্তর করতে কোনও ত্রুটি থাকলে ডেটা হারিয়ে যাবে। সুতরাং, ত্রুটিগুলি সন্ধান করা এবং সংশোধন করা গুরুত্বপূর্ণ। কিছু ত্রুটি সনাক্তকরণ এবং সংশোধন পদ্ধতি কার্যকর যোগাযোগের জন্য ত্রুটিগুলি সনাক্ত এবং সংশোধন করতে ব্যবহৃত হয়। যদি এই পদ্ধতিগুলি ব্যবহার করা হয়, তবে উচ্চতর নির্ভুলতার সাথে ডেটা স্থানান্তর করা যায়।




ত্রুটি সনাক্তকরণকে সংজ্ঞায়িত করা হয়, ডিজিটাল সিস্টেমে ট্রান্সমিটার / প্রেরক থেকে রিসিভারে সংক্রমণিত ত্রুটিগুলি সনাক্ত করতে ব্যবহৃত পদ্ধতি। ত্রুটিগুলি সন্ধানের জন্য ট্রান্সমিশনের সময় ডেটাগুলিতে রিডানডেন্সি কোড যুক্ত করা হয়। এগুলিকে ত্রুটি সনাক্তকরণ কোড বলা হয়।

ত্রুটি সংশোধন হ'ল ট্রান্সমিটার থেকে রিসিভারে প্রেরিত ডেটা সংশোধন। ত্রুটি সংশোধন দুটি ধরণের করা যেতে পারে।



পিছনের ত্রুটি সংশোধন

এই ধরণের ত্রুটি সংশোধনে, গ্রহীতা যদি প্রেরক ত্রুটিটি সনাক্ত করে তবে প্রেরককে ডেটা পুনরায় প্রেরণের জন্য অনুরোধ করে।

সম্মুখ ভুল সংশোধন

যদি রিসিভারের প্রাপ্ত ডেটা যদি ত্রুটিটি খুঁজে পায়, তবে এটি ত্রুটি-সংশোধনকারী কোডগুলি কার্যকর করে, স্বয়ংক্রিয়ভাবে ডেটা সংশোধন করে পুনরুদ্ধার করতে।


যদি অপ্রয়োজনীয় বিটগুলির ‘এম’ নং ডেটার বিট এবং ‘আর’ নং থাকে তবে তথ্যের সংমিশ্রণ 2r হবে।

2 আর> = মি + আর + 1

ত্রুটি সনাক্তকরণ কোডের প্রকার

প্রাপ্ত তথ্যের ত্রুটিগুলি 3 ধরণের ত্রুটি সনাক্তকরণ কোড ব্যবহার করে সনাক্ত করা যায়। তারা হ'ল, প্যারিটি চেক, সাইক্লিক রিডানডেন্সি চেক (সিআরসি) এবং অনুদৈর্ঘ্য অপ্রয়োজনীয় চেক।

প্যারিটি চেক

প্যারিটি বিট নামক অপ্রয়োজনীয় বিটটি যোগ করা হয়েছে এমনকি সাম্য বা বিজোড় সাম্যতার ক্ষেত্রে নোটের বিটকে আরও বা বিজোড় তৈরি করতে। প্যারিটি বিট যুক্ত করার জন্য রিসিভার একটি ফ্রেমে নং বিট (1 টি) গণনা করে। একে প্যারিটি চেকিং বলা হয়। যদি কোনও ফ্রেমের নং 1 এর মান হয় তবে এমনকি সমতাটি শূন্য মানের সাথে বিট 1 1 যোগ করে ব্যবহৃত হয়। একইভাবে, প্রথমার 1 এর মধ্যে বিজোড় হয়, তারপরে বিজোড় প্যারিটিটি ‘1’ এর সাথে বিট যোগ করে ব্যবহৃত হয়।

ত্রুটি সনাক্তকরণ

ত্রুটি সনাক্তকরণ

সুতরাং, উত্স থেকে রিসিভারের দ্বারা প্রাপ্ত ফ্রেম / তারিখটি দূষিত না হয়েছে তা নিশ্চিত করার জন্য এটি ব্যবহার করা হয়। এই ধরণের ত্রুটি সনাক্তকরণে, প্রথম নম্বরটি প্রাপ্ত হওয়া ফ্রেমেও হওয়া উচিত। সমস্ত ধরণের ত্রুটি সনাক্তকরণের মধ্যে এটি খুব কম ব্যয়বহুল।

অনুদৈর্ঘ্য রিন্ডানডেন্সি চেক (এলআরসি)

মুরগীর বিটগুলির সেট / ব্লকটি সংগঠিত হয়, তারপরে প্রতিটি ফ্রেমে প্যারিটি বিট পরীক্ষা করতে এলআরসি পদ্ধতি ব্যবহার করা যেতে পারে। এটি মূল ডেটা সহ প্যারিটি বিটের সেট প্রেরণে সহায়তা করে এবং অতিরিক্ত কাজটি পরীক্ষা করে।

চক্রীয় অপ্রয়োজনীয় চেক

উত্স থেকে প্রাপ্ত ডেটা / ফ্রেমটি সনাক্ত করতে তার প্রকারটি বৈধ কিনা না তা ব্যবহার করতে ব্যবহৃত হয়। এটি ডেটা বাইনারি বিভাগের সাথে জড়িত যা প্রেরণ করা উচিত এবং বহুভৌম ব্যবহার করা উচিত (বিভাজক তৈরি করতে)। আগে সংক্রমণ , বাকীটি গণনা করতে ডেটা / বিট / ফ্রেমে প্রেরক দ্বারা একটি বিভাগ অপারেশন সঞ্চালিত হয়।

সাইক্লিক-রিডানডেন্সি-চেক

চক্রীয়-অপ্রয়োজনীয়-চেক

প্রেরকের কাছ থেকে প্রকৃত ডেটা সংক্রমণের সময়, এটি প্রকৃত ডেটার শেষে অবশিষ্টটি যুক্ত করে। প্রকৃত ডেটা এবং বাকী অংশের সংমিশ্রণকে কোডওয়ার্ড বলা হয়। ডেটা কোডওয়ার্ড আকারে সঞ্চারিত হয়। এই প্রক্রিয়াতে, যদি ডেটাটি দূষিত হয়, তবে ডেটা রিসিভার দ্বারা প্রত্যাখ্যান করা হবে অন্যথায় এটি গৃহীত হবে।

হামিং কোড কী?

হামিং কোডটিকে সংজ্ঞায়িত করা হয়, একটি লিনিয়ার কোড যা ত্রুটি সনাক্তকরণ প্রক্রিয়ায় 2-মধ্যবর্তী ত্রুটি পর্যন্ত ব্যবহৃত হয়। এটি একক-বিট ত্রুটি সনাক্ত করতে সক্ষম। এই পদ্ধতিতে, রিডানড্যান্ট বিটগুলি ডেটা / বার্তায় প্রেরক দ্বারা ডেটা এনকোড করার জন্য যুক্ত করা হয়। ত্রুটি সনাক্তকরণ এবং সংশোধন করার জন্য, এই অপ্রয়োজনীয় বিটগুলি ত্রুটি সংশোধন প্রক্রিয়ার জন্য নির্দিষ্ট অবস্থানে যুক্ত করা হয়।

হামিং-কোড

হামিং-কোড

হামিং কোডের ইতিহাস

1950 সালে, রিচার্ড ডাব্লু হ্যামিং ডেটাগুলির ত্রুটিগুলি সনাক্ত করতে এবং সংশোধন করতে হামিং কোডগুলি আবিষ্কার করেছিল। উচ্চতর নির্ভরযোগ্যতার সাথে কম্পিউটারগুলির বিবর্তনের পরে, তিনি 1-ত্রুটি সংশোধনকারী কোডগুলির জন্য হামিং কোডগুলি প্রবর্তন করেছিলেন এবং পরে তিনি কোডগুলি সনাক্তকরণ 2-ত্রুটি পর্যন্ত প্রসারিত করেছিলেন। হামিং কোডগুলি তৈরি করা হয়েছে কারণ সমতা চেক ডেটাতে ত্রুটিগুলি সনাক্ত করতে পারে না এবং ঠিক করতে পারে না। হ্যামিং কোডগুলি আসল ডেটা এবং রিডানডেন্সি বিটের মধ্যে থাকা কোনও ব্লকের দৈর্ঘ্যে sertedোকানো হয়। তিনি ত্রুটি সংশোধন পদ্ধতিগুলির সমস্যাগুলি নিয়ে কাজ করার জন্য একটি অ্যালগোরিদমের অ্যারে তৈরি করেছিলেন এবং ইসি মেমরিটিতে এই কোডগুলি ব্যাপকভাবে ব্যবহৃত হয়।

হামিং কোড ব্যবহার করে একটি বার্তা এনকোডিংয়ের প্রক্রিয়া

প্রেরকের দ্বারা হামিং কোড ব্যবহার করে একটি বার্তা এনকোডিংয়ের প্রক্রিয়াটিতে 3 টি পদক্ষেপ অন্তর্ভুক্ত রয়েছে।

ধাপ 1: প্রথম পদক্ষেপটি একটি বার্তায় নালার বিট গণনা করা

  • উদাহরণস্বরূপ, যদি কোনও বার্তায় ‘এন’ নং বিট এবং ‘পি’ নং থাকে, তবে মেসেজটিতে রিন্ডান্ট বিট যুক্ত করা হয়, তবে ‘এনপি’ ইঙ্গিত করে (এন + পি + 1) বিভিন্ন রাজ্য।
  • যেখানে (এন + পি) প্রতিটি বিট পজিশনে ত্রুটির অবস্থান প্রতিনিধিত্ব করে
  • 1 (অতিরিক্ত অবস্থা) কোনও ত্রুটি উপস্থাপন করে।
  • যেহেতু ‘পি’ 2 ^ পি (2 পি) রাজ্যগুলিকে ইঙ্গিত করে, যা (এন + পি + 1) রাষ্ট্রের সমান।

ধাপ ২: অপ্রয়োজনীয় বিটগুলি সঠিক / সঠিক অবস্থানে রাখুন

'পি' বিটগুলি বিট পজিশনে areোকানো হয় যা 2, 1, 2, 4, 8, 16 ইত্যাদির মতো শক্তি ইত্যাদি These এই বিট পজিশনগুলি পি 1 (পজিশন 1), পি 2 (পজিশন 2), পি 3 (পজিশন) হিসাবে নির্দেশিত 4), ইত্যাদি।

ধাপ 3: অপ্রয়োজনীয় বিটের মান গণনা করুন

  • এখানে প্যারিটি বিটগুলি অপ্রয়োজনীয় বিটের মান গণনা করতে ব্যবহৃত হয়।
  • প্যারিটি বিটস একটি বার্তায় নং 1 এর দুটিও সমান বা বিজোড় করতে পারে।
  • যদি একটি বার্তায় 1 নম্বর মোট হয়, তবে সমতাও ব্যবহৃত হয়
  • যদি একটি বার্তায় 1 নম্বর মোট হয় বিজোড় হয়, তবে বিজোড় সমতা ব্যবহার করা হবে।

হামিং কোডে একটি বার্তা ডিক্রিপ্ট করার প্রক্রিয়া

হ্যামিং কোডটি ব্যবহার করে প্রেরকের কাছ থেকে প্রেরকের কাছ থেকে প্রাপ্ত বার্তাকে ডিক্রিপ্ট করার প্রক্রিয়াটিতে নিম্নলিখিত পদক্ষেপগুলি অন্তর্ভুক্ত রয়েছে। এই প্রক্রিয়াটি কোনও বার্তায় ত্রুটিগুলি সনাক্ত এবং সংশোধন করার জন্য পুনরায় গণনা ছাড়া কিছুই নয়।

ধাপ 1: অপ্রয়োজনীয় বিটগুলি গণনা করুন

অপ্রয়োজনীয় বিট ব্যবহার করে বার্তাটি এনকোড করার সূত্রটি হ'ল,

2p≥ n + p + 1

ধাপ ২: সমস্ত অপ্রয়োজনীয় বিটের অবস্থান সংশোধন করুন

‘পি’ নং এর রিডানডেন্ট বিটগুলি ১,২,৪,৮,১,,32২ ইত্যাদি ইত্যাদির মতো শক্তির কিছুটা সামান্য অবস্থানে রাখা হয়

ধাপ 3: সমতা পরীক্ষা (বিজোড় সমতা এবং সমতা)

প্যারিটি বিটগুলি ডেটা বিট এবং অপ্রয়োজনীয় বিটগুলিতে নম্বর 1 এর ভিত্তিতে গণনা করা হয়।

উদাহরণ স্বরূপ

পি 1 এর সমতা 1, 3, 5, 7, 9, 11,…

পি 2 এর সমতা 2, 3, 6, 7, 10, 11,…

পি 3 এর সমতা 4-7, 12-15, 20-23,…

হামিং কোডের সুবিধা

কোনও ডেটা স্ট্রিমে সিঙ্গল-বিট ত্রুটি থাকলে হ্যামিং কোড ব্যবহারের মূল সুবিধাটি কার্যকর cost

  • এটি ত্রুটি সনাক্তকরণ সরবরাহ করতে পারে এবং সংশোধন করার জন্য একটি ত্রুটিযুক্ত বিটটিকেও নির্দেশ করে।
  • হামিং কোডগুলি কম্পিউটার মেমরি এবং একক-বিট ত্রুটি সংশোধন এবং সনাক্তকরণে ব্যবহার করা খুব সহজ এবং সেরা are

হামিং কোডের অসুবিধাগুলি

  • এটি কেবল একক-বিট ত্রুটি সংশোধন এবং সনাক্তকরণের জন্য সেরা। যদি একাধিক বিট ত্রুটি হয়, তবে সম্পূর্ণরূপে কলুষিত হতে পারে।
  • হামিং কোড অ্যালগরিদম কেবল একক-বিট ত্রুটিগুলি সমাধান করতে পারে।

হামিং কোডের প্রয়োগ

হামিং কোডগুলি ব্যবহার করা হয়,

  • গণনা
  • টেলিযোগাযোগ
  • তথ্য সংকোচন
  • ধাঁধা এবং টার্বো কোডগুলি সমাধান করা
  • উপগ্রহ
  • প্লাজমা সিএএম
  • ঝালাই তারে
  • মডেম
  • কম্পিউটার স্মৃতি
  • সংযোগকারীগুলি খুলুন
  • এম্বেড সিস্টেম এবং প্রসেসর

FAQs

1)। হামিং কোডটি কি 2-বিট ত্রুটি সনাক্ত করতে পারে?

হামিং কোডগুলি ডেটা স্ট্রিমে 2-বিট ত্রুটি সনাক্ত করতে এবং সংশোধন করতে পারে

2)। আপনি কীভাবে হামিং কোডটি ঠিক করবেন?

হ্যামিং কোডগুলি প্রকৃত ডেটা এবং অপ্রয়োজনীয় বিটের মধ্যে যে কোনও দৈর্ঘ্যের ডেটাতে রাখা হয়। এই কোডগুলি এমন স্থানগুলি যেখানে সর্বনিম্ন 3 বিটের দূরত্ব রয়েছে

3)। সমতা কোড কী?

প্যারিটি কোড বা প্যারিটি বিট প্রাপ্ত বিস্তৃত বিট (1 এর) সমান বা বিজোড় করার জন্য প্রাপ্ত ফ্রেমে (ডেটা 1 এবং 0 এর রয়েছে) কিছুটা যোগ করছে।

4)। ডেটার মধ্যে হামিং দূরত্ব কত?

সমান দৈর্ঘ্যের দুটি পৃথক ডেটা স্ট্রিমের মধ্যে হাতুড়ি দূরত্বটি প্রথম নম্বর 1 এর is

এক্সওআর অপারেশন ব্যবহার করে সমান দৈর্ঘ্যের দুটি ডেটা স্ট্রিংয়ের মধ্যে হামিং দূরত্ব গণনা করা যেতে পারে।

উদাহরণস্বরূপ, a = 11011001

খ = 10011101

হামিং দূরত্ব হিসাবে গণনা করা যেতে পারে,

11011001 ⊕ 10011101 = 01000100 (নং 1-বিট 2)

হামিংয়ের দূরত্বটি ফলাফল ডেটা প্রবাহের মধ্যে প্রথম নম্বরটি নির্দেশ করে

সুতরাং, ডি (11011001, 10011101) = 2

একইভাবে, 010 ⊕ 011 = 001, d (010, 011) = 1।

5)। হামিং কোডটি কি চক্র?

হ্যাঁ, হামিং কোডগুলি চক্রীয় কোডগুলির সমতুল্য যা ত্রুটি সনাক্তকরণ কোড হিসাবে ব্যবহার করা যেতে পারে।

সুতরাং এটি ত্রুটি সংশোধন এবং সনাক্তকরণ সম্পর্কিত, ত্রুটি সনাক্তকরণের ধরণগুলি, হামিং কোডগুলি , হামিং কোড, হ্যামিং কোডের প্রয়োগ, সুবিধা এবং হামিং কোডের অসুবিধাগুলি ব্যবহার করে বার্তাটি এনক্রিপ্ট করা এবং ডিক্রিপ্ট করার প্রক্রিয়া। আপনার জন্য এখানে একটি প্রশ্ন, 'ত্রুটি সনাক্তকরণ এবং সংশোধনের প্রয়োগগুলি কী?'