ECC چیست؟
حافظه ECC که مخفف عبارت Error Correction Code می باشد، در سرورها یا سایر سیستم های دادهای با اهمیت، بسیار محبوب است؛ چرا که با شناسایی و اصلاح خودکار خطاهای حافظه، داده ها را در برابر خرابی و آسیب های احتمالی محافظت می کند. حافظه های استاندارد دارای تراشهای با هشت بانک داده هستند که در این بانک ها داده ها ذخیره شده و در صورت نیاز به پردازنده ارسال می شوند. اما حافظه ECC ساختار متفاوتی دارد زیرا علاوه بر داشتن تراشهای برای نگهداری داده ها، دارای یک تراشه حافظه اضافی است که به عنوان تشخیص دهنده خطا و تصحیح تراشه هشت بانکی دیگر عمل می کند.
قبل از ظهور حافظه ECC ، تشخیص خطا از طریق بیت های برابری زوج یا فرد انجام می شد. به این صورت که در سیستم های رایانهای، داده ها معمولاً در بانک های ۸ بیتی (بسته های اطلاعاتی) ذخیره می شدند. در روش زوج بودن یا parity ، یک بیت اضافی که همان بیت نهم است نوشته می شود که به سیستم کمک می کند بروز خطا را تشخیص دهد. اگر سیستمی از روش برابری یا همان زوج بودن استفاده کند، بیت های ۱ و ۰ (به علاوه بیت اضافی) باید در نهایت یک عدد زوج را ارائه دهند. به عنوان مثال اگر داده های نوشته شده روی حافظه “۱۰۰۱۱۰۱۱” باشد.