بیت توازن چیست (parity)

نویسنده:

دسته:

تاریخ انتشار:


در ارتباطات بین دو دستگاه یا کاربر، خطا زمانی رخ می‌دهد که پیام دریافتی با پیام ارسالی متفاوت باشد که این مشکل می‌تواند به دلیل عوامل مختلفی مانند کیفیت پایین سیگنال، وجود نویز یا خرابی سیستم به وجود آید. چنین خطاهایی باعث تفسیر نادرست داده‌ها شده و بر دقت و کیفیت ارتباطات دیجیتال تاثیر می‌گذارند. یکی از راه‌حل‌های ساده برای کاهش این خطاها، استفاده از Parity bit است که امکان تشخیص خطاهای تک بیتی را فراهم می‌کند. البته این روش فقط قادر به شناسایی خطا بوده و توانایی اصلاح آن را ندارد؛ اما Parity چیست و چگونه خطاها را تشخیص می‌دهد؟ با ما همراه باشید تا به این پرسش پاسخ دهیم.

Parity چیست؟

حفاظت از داده‌ها با توازن


اگر می‌خواهید بدانید Parity چیست، باید گفت Parity bit که به آن «بیت توازن» نیز گفته می‌شود یک روش ساده برای تشخیص خطا در ارتباطات دیجیتال، محاسبات و ذخیره‌سازی داده‌ها است. این روش یک بیت به کد باینری (کد ۰ و ۱) داده‌ها اضافه می‌کند تا درستی انتقال یا ذخیره‌سازی آن‌ها را تضمین نماید. مقدار بیت توازن بر اساس تعداد ۱ ‌ها (یا صفرها) در داده‌های ارسالی تعیین می‌شود و به گیرنده کمک می‌کند خطاهای احتمالی در انتقال را شناسایی کند. مقدار بیت اضافی ۰ یا ۱ بوده و به گونه‌ای تعیین می‌شود که تعداد ۱ ‌های داده زوج یا فرد شود. بیت توازن به دو صورت زیر انجام می‌شود:

  • توازن زوج (Even Parity): تعداد کل ۱ ‌های کد (شامل بیت توازن) را زوج می‌کند.
  • توازن فرد (Odd Parity): تعداد کل ۱ های کد (شامل بیت توازن) را فرد می‌کند.

مطالعه مقاله راهنمای جامع ذخیره سازی اطلاعات، را به شما پیشنهاد می‌دهیم.

اهمیت Parity چیست؟

در کدهای باینری، تغییر ناخواسته بیت‌ها از ۰ به ۱ یا برعکس اتفاق رایجی است که می‌تواند به داده‌ها آسیب بزند؛ به همین دلیل استفاده از بیت توازن به عنوان یک روش ساده ولی مفید برای تشخیص این خطاها اهمیت ویژه‌ای دارد.

بیت توازن با مقایسه تعداد بیت‌های ۱ دریافتی با مقدار مورد انتظار، این خطاها را شناسایی می‌کند. اگر تعداد ۱ ها با الگوی تعیین‌شده (زوج یا فرد) مطابقت نداشته باشد، سیستم متوجه بروز خطا می‌شود. مثلا اگر داده با توازن زوج ارسال شود، اما تعداد ۱ های دریافتی فرد باشد، نشان‌دهنده اختلال در انتقال است.

هرچند این روش فقط قادر به تشخیص خطاهای تک بیتی است و توانایی اصلاح آن‌ها را ندارد، ولی به دلیل سادگی و کم هزینه بودن، هنوز در بسیاری از سیستم‌های ارتباطی و ذخیره سازی داده کاربرد دارد.

نحوه عملکرد Parity bit

کاربرد Parity

نحوه کار Parity چیست و چگونه کدها را تغییر می‌دهد؟ باید گفت در این روش دستگاه فرستنده ابتدا تعداد بیت‌های ۱ در داده اصلی را محاسبه می‌کند. اگر این تعداد فرد باشد، بیت توازن را هم روی ۱ تنظیم می‌کند تا مجموع یک‌ها زوج شود. اگر تعداد از ابتدا زوج باشد، بیت توازن صفر در نظر گرفته می‌شود و آن اضافه می‌گردد (تعداد ۱ ها ثابت می‌ماند).

در طرف گیرنده، پس از دریافت داده، مجددا تعداد ۱ ها (شامل بیت توازن) شمارش می‌شود. اگر نتیجه زوج باشد، داده به درستی دریافت شده است. اما اگر تعداد ۱ ها فرد باشد، نشان‌دهنده بروز خطا در حین انتقال است.

این روش مانند یک چک کننده ساده اما مفید عمل می‌کند که می‌تواند بسیاری از خطاهای انتقال داده را تشخیص دهد. البته دقت داشته باشید که این سیستم فقط قادر به شناسایی خطاهای فرد است و نمی‌تواند خطاهای زوج یا موقعیت دقیق بیت معیوب را مشخص کند. همچنین توانایی اصلاح خطا را ندارد و صرفا وجود آن را گزارش می‌دهد.

مثال از کار با Parity bit

فرض کنید می‌خواهید کد باینری ۱۱۰۱ را که سه عدد ۱ دارد، ارسال کنید. با توازن زوج، باید یک بیت توازن اضافه کنید تا تعداد کل ۱ ها زوج شود. بنابراین، بیت توازن روی ۱ تنظیم می‌شود و کد ۱۱۰۱۱ حاصل می‌شود. از طرف دیگر، با توازن فرد، بیت توازن روی ۰ تنظیم می‌شود تا تعداد کل فردهای ۱ را تشکیل دهد و کد ۱۱۰۱۰ حاصل می‌شود. تفاوت اصلی بین این دو در نحوه دستیابی به تعداد مطلوب یک‌ها (زوج یا فرد) با تنظیم بیت توازن بر اساس آن است. در جدول زیر می‌توانید چند مثال از توازن‌های فرد و زوج را مشاهده نمایید:

رشته داده 7 بیتی تعداد ۱ ها 8 بیت با احتساب بیت توازن
- - توازن زوج توازن فرد
0000000 0 00000000 00000001
1100001 3 11000011 11000010
1100101 4 11001010 11001011
1111111 7 11111111 11111110

کاربردهای Parity چیست؟

بیت توازن روشی ساده اما کاربردی است که در چند حوزه مهم مورد استفاده قرار می‌گیرد:

  • تشخیص خطا در انتقال داده‌ها: یکی از کاربردهای اصلی Parity، شناسایی خطاهای احتمالی در حین انتقال اطلاعات بین دستگاه‌های مختلف است. این سیستم به عنوان یک لایه حفاظتی اولیه عمل می‌کند.
  • حفاظت از دیتاسنترها: در سرورها و سیستم‌های ذخیره‌سازی، بیت توازن برای تشخیص خطاهای ناشی از عوامل مختلف مانند نویز الکترومغناطیسی یا مشکلات سخت‌افزاری به کار می‌رود و می‌تواند از اختلال در ذخیره سازی اطلاعات پیشگیری کند.
  • در سیستم‌های RAID: در آرایه‌های دیسکی، بیت توازن به شکل پیشرفته‌تری پیاده‌سازی می‌شود تا در صورت خرابی دیسک‌ها، امکان بازسازی اطلاعات وجود داشته باشد. این ویژگی در انواع مختلف RAID مانند RAID 5 و RAID 6 دیده می‌شود که در ادامه به بررسی بیشتر آن می پردازیم.

برای اطلاعات بیشتر raid، مقاله raid چیست، را به شما پیشنهاد می‌دهیم.

کاربرد بیت توازن در RAID

کاربرد Parity در RAID

سیستم RAID از Parity به شکل پیشرفته‌تری برای محافظت از داده‌ها استفاده می‌کند. در این کنترلر RAID، اطلاعات بیت توازن به صورت تخصصی‌تر محاسبه و ذخیره می‌شود تا در صورت خرابی دیسک‌ها، امکان بازسازی اطلاعات وجود داشته باشد. اما نقش Parity چیست و چگونه به بازیابی اطلاعات دیسک کمک می‌کند؟

نقش Parity در RAID 5

در RAID 5 که یکی از رایج‌ترین انواع آن است، اطلاعات بیت توازن به صورت چرخشی بین دیسک‌ها توزیع می‌شود. این کار باعث می‌شود حتی اگر یک دیسک از کار بیفتد داده‌ها از دست نروند. وقتی یک دیسک خراب می‌شود، سیستم با استفاده از اطلاعات باقیمانده روی دیسک‌های دیگر و داده‌های Parity bit، می‌تواند محتوای دیسک خراب را دوباره بسازد.

نقش Parity در RAID 6

نسخه پیشرفته‌تر RAID یعنی RAID 6 این قابلیت را دارد که حتی با خرابی همزمان دو دیسک هم اطلاعات از بین نرود. این سیستم از دو مجموعه محاسبات توازن استفاده می‌کند که امنیت بیشتری ایجاد می‌نماید؛ اما در عوض نیاز به دیسک‌های بیشتری دارد و سرعت نوشتن داده‌ها را کمی کاهش می‌دهد.

وقتی داده‌ای در این سیستم‌ها نوشته می‌شود، همزمان اطلاعات توازن آن هم به دقت محاسبه و ذخیره می‌شود. این کار باعث می‌شود در صورت بروز مشکل، سیستم دقیقا بداند چه اطلاعاتی از دست رفته و چطور باید آن‌ها را بازیابی کند. البته این روش‌ها پیچیدگی‌های خاص خود را دارند و نیاز به سخت‌افزارهای مناسب و تنظیمات دقیق دارند.

هم‌چنین بخوانید: انواع حافظه کامپیوتری


آیا Parity bit هنوز کاربرد دارد؟

بیت توازن زمانی متداول‌ترین روش برای تشخیص خطا بود؛ اما امروزه کمتر در سیستم‌های مدرن دیده می‌شود. دلیل اصلی آن این است که روش‌های جدیدتر مثل CRC و FEC هم خطاها را بهتر تشخیص می‌دهند و هم قادر به اصلاح آن‌ها هستند. این تکنیک‌های پیشرفته در اکثر سیستم‌های امروزی جایگزین بیت توازن شده‌اند. با این حال، هنوز هم در برخی موارد می‌توان کاربردهای Parity را مشاهده کرد؛ اما این کاربردهای امروزی Parity چیست؟ برای مثال، در سیستم‌های قدیمی که هنوز به‌روزرسانی نشده‌اند یا در تجهیزاتی با منابع محدود که نیاز به روش‌های ساده‌تری دارند، هنوز از این تکنیک استفاده می‌شود. همچنین گاهی به عنوان مکملی برای روش‌های پیشرفته‌تر به کار می‌رود تا میزان اطمینان را افزایش دهد.


جمع بندی

Parity به عنوان یکی از ساده‌ترین و قدیمی‌ترین روش‌های تشخیص خطا در سیستم‌های دیجیتال شناخته می‌شود. این تکنیک با اضافه کردن یک بیت کنترل به داده‌های ارسالی، امکان شناسایی خطاهای تک بیتی را فراهم می‌سازد. روش کار آن به این صورت است که فرستنده با محاسبه تعداد بیت‌های ۱ در کد باینری اصلی، مقدار بیت توازن را تعیین می‌کند تا تعداد نهایی ۱ ها زوج (یا فرد) شود. گیرنده نیز با انجام همین محاسبه می‌تواند درستی انتقال داده را بررسی کند.

این روش بیشترین کاربرد را هنگام انتقال داده بین دستگاه‌ها، در حافظه‌های کامپیوتری، دیتاسنترها و روش ذخیره‌سازی RAID دارد. در هر یک از این کاربردها، بیت توازن می‌تواند اختلال و خرابی داده‌ها را تشخیص دهد؛ اما مستقیما نمی‌تواند آن را اصلاح کند. به همین دلیل، امروزه استفاده از بیت توازن کاهش یافته و از روش‌های پیشرفته‌تری که می‌توانند داده‌ها را نیز اصلاح کنند استفاده می‌شود؛ اما هنوز هم این روش در بعضی سیستم‌های قدیمی یا ساده کاربرد دارد. در این مقاله به این پرسش که Parity چیست پاسخ دادیم و نحوه کار و کاربردهای آن را بررسی کردیم. برای راهنمایی بیشتر با ما تماس بگیرید.

سوالات متداول

بیت توازن (Parity) چیست؟

بیت توازن یا Parity bit یک بیت اضافی است که به کد باینری اضافه می‌شود تا خطاهای تک بیتی در انتقال یا ذخیره‌سازی داده‌ها را تشخیص دهد. این بیت به گونه‌ای تنظیم می‌شود که تعداد ۱‌ها در داده زوج یا فرد شود.

تفاوت توازن زوج (Even Parity) و توازن فرد (Odd Parity) چیست؟

در توازن زوج، بیت توازن طوری تنظیم می‌شود که تعداد کل ۱‌ها زوج باشد. در توازن فرد، تعداد ۱‌ها فرد می‌شود.

آیا بیت توازن می‌تواند خطاها را اصلاح کند؟

خیر، بیت توازن فقط قادر به تشخیص خطاهای تک بیتی است و نمی‌تواند آن‌ها را اصلاح کند یا موقعیت دقیق خطا را مشخص نماید.

نقش بیت توازن در RAID چیست؟

در سیستم‌های RAID، بیت توازن برای بازسازی داده‌ها در صورت خرابی دیسک استفاده می‌شود. در RAID 5، اطلاعات توازن بین دیسک‌ها توزیع می‌شود و در RAID 6، از دو مجموعه توازن برای تحمل خرابی دو دیسک استفاده می‌شود.

 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


مقالات مرتبط

data deduplication چیست

آشنایی با تکنولوژی + Data Deduplication کاربردها

ذخیره‌سازی درست داده‌ها از مهم‌ترین دغدغه‌های کسب و کارها، سازمان‌ها و به طور کلی گروه‌هایی است که با حجم زیادی...

آموزش نصب و راه‌اندازی vSAN

آموزش نصب و راه‌اندازی vSAN

vSAN یک سیستم ذخیره‌سازی نرم‌افزارمحور است که به عنوان بخشی از پلتفرم مجازی‌سازی Vmware یا vSphere ارائه شده و امکان...

لاگ چیست؟ آشنایی با انواع و مدیریت لاگ

لاگ چیست؟ معرفی انواع لاگ

عیب یابی سیستم‌های کامپیوتری وقتی می‌تواند به خوبی و سادگی انجام شود که بدانید دقیقا چه اتفاقاتی در سیستم رخ...