Bellek Hata Türleri ve ECC RAM Bellekler

Arızalanan sistem belleği, performans düşüşü ya da donanım çökmeleri gibi sorunlarla çalışmaları kesintiye uğratır. Özellikle kurumsal uygulamalarda yaşanan zaman ve iş gücü kaybı ile kurumlarda büyük zarara sebep olabilir. Kurumsal sistemlerde kullanılan DRAM (dynamic random access memory) modülleri, bellek hatalarını denetleme mekanizmalarına sahiptirler.  Bu yazımızda; özellikle kritik iş yüklerinde kullanılan bellek hataları ile bilgiler vererek, kullanıcıların DRAM modüllerde en yüksek kullanılabilirlik ve güvenilirlik elde edebilmelerine yardımcı olmaya çalışacağız.

Bellek hataları türleri nelerdir?

Bellek hataları, iki ana başlığa ayrılabilir :

Yazılımsal Bellek Hataları (Soft Errors)

Bellek bit verilerini rastgele bozan ve depolanan verilerde değişiklik oluşturan, ancak RAM modülünde fiziksel hasara sebep olmayan hatalardır. Yazılımsal bellek hataları, sistem donanımına değil işlenen verilere zarar verir. Tıbbi ekipman, endüstriyel denetleyiciler, otonom araçlar, güvenlik – gözetim sistemleri ve veri merkezi gibi kritik görevlerdeki uygulamalarda düzeltilmemiş yazılımsal hatalar da çok kötü sonuçlara yol açabilmektedir.

Yazılımsal bellek hataları da 2 alt başlığa ayrılabilir.

  • Yonga Düzeyinde Yazılımsal Hatalar (Chip-Level Soft Errors), genellikle bellek yongası paketindeki öğelerin radyoaktif bozunmasından kaynaklanır. Bu alfa parçacıkları yongaya çarptığında, hücre durumunun değişmesine sebep olur. Bu da yonganın elektriksel özelliklerinde dengesizlik oluşmasına ve depolanan verinin bozulmasına sebep olur. Bellek teknolojileri ve tasarımda yaşanan gelişmeler sayesinde bu tür hatalar ile çok nadir olarak karşılaşılmaktadır.
  • Sistem Düzeyinde Yazılımsal Hatalar (System-Level Soft Errors), genellikle, veri yolu üzerinde işlenmekte olan veriye bir aksaklık ya da gürültü çarpması sonucu ortaya çıkarlar. Gürültü olarak adlandırılan durum; sinyal bütünlüğünü bozan ve EMI (elektromanyetik girişim), radyo dalgaları, elektrik kabloları, yıldırım, kötü bağlantı ve diğer kaynaklardan meydana gelebilen girişim durumudur. Gürültü, sistem tarafından yanlışlıkla bir veri biti olarak algılanıp bozuk veri biti ya da program kodu olarak kullanıldığında hata oluşmasına sebep olur.

Donanımsal bellek hataları (Hard errors)

RAM modülündeki fiziksel ya da donanımsal kusurlar nedeni ile tekrar tekrar ortaya çıkan hatalardır. Sebebi üretim hatası değil ise genellikle RAM modülünün hız kapasitesinin üzerinde yoğun olarak çalıştırılmasından ve sistemin statik elektrik yüklerine maruz kalmasından kaynaklanır. Diğer sebepler, sıcaklık, şok/titreşim, elektrik/voltaj gerilimi ya da fiziksel gerilim gibi çevresel etkenlerdir. Yanlış kullanım/taşıma ve eskime de tüm donanımlarda olduğu gibi RAM modüllerinin arızalanmasına sebep olmaktadırlar. Donanımsal hatalar geçici olmayan ve arızalı RAM modülünün en kısa süredece değiştirilmesini gerektiren ciddi hatalardır.

Bellek hatasının yazılımsal mı donanımsal mı olduğu nasıl anlaşılır?

Yazılımsal bellek hataları, genellikle sistem yeniden başlatıldığında düzelmektedir. Sistem yeniden başlatıldığında ya da kapatılıp açıldığında hatalar devam ediyorsa, büyük ihtimalle donanımsal hatadır. Çözüm ise hatanın kaynağı olan RAM modülü ya da modüllerini yenileri ile değiştirmektir.

Bellek hatalarının maliyeti nedir?

Bellek hatalarının vereceği en düşük hasar, RAM modüllerinin düşük performans ile çalışarak sistem performansını düşürmeleridir. Özellikle donanımsal bellek hataları, sistem çökmelerine sebep olmasının yanında, sisteme ya da diğer donanımlara zarar vererek çok daha büyük hasar ve maliyete sebep olabilir.

RAM modüllerinin performans ve güvenilirliğini neler etkiler?

RAM modülünün kendisinde ve bileşenlerinde fiziksel değişikliğe sebep olması nedeni ile aşırı sıcaklıklar belleğin fiziksel olarak bozulmasında en önemli etkenlerin başında gelmektedir. Bu nedenle işletmelerin BT yatırımlarının önemli bir kısmı ısı ve soğutma sistemleri için ayrılmaktadır. Yoğun sistem kullanımı ve RAM modülünün uzun süre kullanım sonrası eskimesi de bellek performansını ve güvenilirliğini etkileyebilir.

Bellek hata düzeltme mekanizmaları nelerdir ve nasıl çalışırlar?

Veri bozulması ve sistem arızasının önlenmesi gereken kritik uygulamalarda, ECC (error correcting code) DIMM RAM modülleri kullanılır. ECC DIMM modüller; tek bit hata düzeltmesi (single-bit error correction (SEC) ya da SEC ve çift bit hata düzeltme (SECDED) işlevine sahip olabilirler. Sadece tek bit hata düzeltmesi işlevine sahip olan modüller, çift-bit hatasını algılayamazlar. Çift-bit hata düzeltmesine sahip modüller, hem tek ve çift bit hatalarını algılarlar ve tek bit hatalarını düzeltirler. Üç bit hatalarını algılayamazlar ve çift bit hatalarını düzeltemezler.

Daha gelişmiş hata algılama ve düzeltme seçenekleri ChipKill ya da Advanced ECC gibi işlevlere sahip modüllerde bulunmaktadır. Bu işlevlere sahip modüllerde, ECC tarafından düzeltilemeyen çoklu-bit hataları algılanıp düzeltilebilmektedir. Örneğin ChipKill işlevi; bellek alt sisteminin bir bölümünde verinin bir kopyasını bir sağlama toplamı (checksum) halinde oluşturur. Bellek arızası meydana geldiğinde; sağlama toplamı bilgilerinden veriler yeniden hesaplanarak veri kurtarma işlemi gerçekleştirilir. Bu veri kurtarma işlemi DRAM yongası bozulmasında ortaya çıkacak hata durumunda bile veri hatasını düzeltmeyi sağlayarak, sistemin çalışmasının kesintiye uğramasını önler.

Düzeltilebilir ve düzeltilemez hata nedir?

Düzeltilebilir hatalar, genellikle sistem ya da ECC işlevi tarafından düzeltilebilen tek bitlik hatalardır. Bu hatalar, veri bozulmasına bağlı sistem kesintilerine sebep olmazlar.
Düzeltilemez hatalar ise genellikle sistemde çökme ya da kapanmaya sebep olan çoklu-bit hatalarıdır.

ECC ve Non-ECC DIMM RAM modülleri fiziksel olarak farklı mıdır?

Masaüstü sistemlerde kullanılan standart yani Non-ECC bellek modüllerinde kapasitesine bağlı olarak 8 ya da 16 adet bellek yongası bulunur. ECC belleklerde ise diğer 8 adet yongada oluşacak hataları tespit etmek ve düzeltmek için 1 adet daha yonga ile birlikte toplam 9 adet bellek yongası bulunur. Yüksek kapasiteli ECC RAM modüllerinde ise 18 (16+2) adet bellek yongası yer alır. Basit şekilde ifade etmek gerekirse, eğer RAM modülü üstündeki yonga sayısı 9 ya da 18 gibi üçe bölünebilen sayılarda ise ECC modüldür. Aşağıdaki tabloda Non-ECC, ECC ve Registered RAM modüllerinin yonga yerleşim örnekleri görülmektedir.

Modül

Türü

ECC

Non-ECC

DDR4

Registered
Unbuffered Unbuffered

DDR3

Registered
Unbuffered  Unbuffered

DDR2

Registered
Unbuffered
Unbuffered

DDR

Registered
Unbuffered Unbuffered

DDR/DDR2/DDR3/DDR4 ECC ve non-ECC ve Registered DIMM RAM modülleri.

Bir yorum ekleyin

E-posta hesabınız yayımlanmayacak.

This site uses Akismet to reduce spam. Learn how your comment data is processed.