ECC
Skrót od „Error Correction Code”.
ECC to metoda sprawdzania integralności danych zapisywanych w pamięci systemowej i odczytywanych z niej. Specjalne moduły RAM, nazywane pamięcią ECC, używają ECC do ochrony danych przed uszkodzeniem i są często stosowane w systemach, w których niezawodność i ciągłość działania mają kluczowe znaczenie. Pamięci ECC są zwykle używane w stacjach roboczych, serwerach, sprzęcie medycznym i naukowym oraz komputerach sterujących statkami powietrznymi.
Większość błędów pamięci komputera to błędy pojedynczego bitu, spowodowane zmianą wartości pojedynczego bitu z 0 na 1 (lub odwrotnie) wskutek pewnego rodzaju zakłóceń elektromagnetycznych. Błędy te często prowadzą do niestabilności systemu lub uszkodzenia danych — na przykład zmiany pojedynczego znaku tekstu albo wartości koloru piksela. Pamięć ECC potrafi wykrywać błędy pojedynczego bitu i je naprawiać, przywracając zmieniony bit do jego pierwotnej wartości.
Gdy system zapisuje dane w module pamięci ECC, wykonuje dwie czynności, które pomagają mu śledzić błędy. Po pierwsze, dodaje dodatkowy bit danych do każdego słowa (czyli grupy bitów), nazywany bitem parzystości, który rejestruje, ile bitów w danym słowie ma wartość 1. Generuje również kod korekcji błędów za pomocą wbudowanego algorytmu opartego na położeniu wartości 0 i 1 w słowie. Jeśli liczba wartości 1 zmieni się wskutek błędu pojedynczego bitu, bit parzystości nie będzie się zgadzał. Układ ECC w module pamięci odwołuje się do wygenerowanego przez siebie kodu korekcji błędów, aby ustalić, który bit się zmienił, a następnie przywraca go do pierwotnego stanu.
Moduły pamięci ECC są bardziej złożone ze względu na dodatkowe układy, przez co są droższe niż pamięć bez ECC. Wymagają większej liczby układów scalonych pamięci niż moduły pamięci bez ECC, aby przechowywać bity parzystości. Pamięć ECC działa również wolniej niż pamięć bez ECC ze względu na dodatkowe czynności potrzebne do generowania kodów korekcji błędów i sprawdzania bitu parzystości. Ze względu na koszt i spadek wydajności typowy komputer stacjonarny lub laptop korzysta z pamięci RAM bez ECC, pozostawiając pamięć ECC serwerom i stacjom roboczym wymagającym wysokiej dostępności.
Sprawdź swoją wiedzę