Go to the Kingston Homepage for Turkey TURKEY  
Kingston Araçlar


Temel Bellek Kılavuzu

BELLEK NASIL ÇALIŞIR

Önceki bölümlerde belleğin bilgileri CPU’nun hızlı bir şekilde alabileceği bir yerde nasıl tuttuğunu konuştuk. Şimdi bu sürece biraz daha ayrıntılı bakalım.

BELLEK İŞLEMCİ İLE NASIL ÇALIŞIR


Bir bilgisayar sisteminin ana bileşenleri.


CPU’dan genellikle bilgisayarın beyni olarak söz edilir. Burası, gerçek hesaplamanın yapıldığı yerdir.

Yonga seti CPU’yu destekler. Genellikle, işlemci ve sistemdeki diğer bileşenler arasında bilgilerin nasıl dolaştığını yöneten bir çok “denetleyici” içerir. Bazı sistemlerinden birden fazla yonga seti vardır.

Bellek denetleyicisi yonga setinin bir parçasıdır ve bu denetleyici bellek ve CPU arasındaki bilgi akışını kurar.

Veri yolu CPU, bellek ve bütün giriş/çıkış cihazlarının bağlı olduğu çeşitli paralel tellerden meydana gelen, bilgisayar içerisindeki bir veri yoludur. Veri yolu veya veri yolu mimarisinin tasarımı verilerin ana kartta ne fazlalıkta ve ne kadar hızla hareket edeceğini belirler. Bu belirli bileşenler için hangi hızların gerekli olduğuna bağlı olarak, bir sistem içerisinde bir çok farklı çeşitte veri yolu vardır. Bellek veri yolu bellek denetleyicisinden bilgisayarın bellek soketlerine doğru çalışır. Yeni sistemlerin ön taraf veri yolunun (FSB) CPU’dan ana belleğe doğru ve arka taraf veri yolunun (BSB) bellek denetleyicisinden L2 önbelleğe doğru çalıştığı bir bellek veri yolu mimarisi vardır.

BELLEK HIZI

CPU bellekten bilgi alması gerektiğinde bellek denetleyicisi tarafından yönetilen bir talep gönderir. Bellek denetleyicisi isteği belleğe gönderir ve CPU’ya bilginin okuması için ne zaman hazır olacağını bildirir. CPU’dan bellek denetleyicisine ve oradan belleğe ve tekrar CPU’ya doğru olan bütün bu döngü bellek hızı ve ayrıca veri yolu hızı gibi diğer faktörlere göre uzunluk olarak farklılık gösterebilir.

Bellek hızı kimi zaman Megahertz (MHz) olarak ölçülür veya erişim süresi açısından (veriyi teslim etmek için gerekli olan gerçek süre) nanosaniye (ns) olarak ölçülür. İster Megahertz ister nanosaniye olarak ölçülsün, bellek hızı bellek modülünün bir talep alındığında kendini bir isteğe ne kadar hızlı ilettiğini gösterir.

ERİŞİM SÜRESİ (NANOSANİYE)

Erişim süresi bellek modülünün bir veri isteği almasından verinin kullanılabilir hale geldiği zamana kadar ölçülür. Bellek yongaları ve modüller 80ns – 50ns arasında değişen erişim süreleriyle işaretlenir. Erişim süresi ölçümleriyle (ölçümler nanosaniye olarak), düşük sayılar daha yüksek hızları gösterir.

Bu örnekte, bellek denetleyicisi bellekten veri talep eder ve bellek talebe 70ns’de yanıt verir. CPU veriyi yaklaşık 125ns’de alır. Böylece, bir 70ns bellek modülü kullanıldığında CPU’nun bilgiyi ilk talep ettiği zamandan bilgiyi aldığı gerçek zaman arasındaki toplam süre 195ns olur. Bunun nedeni, bellek denetleyicisinin bilgi akışını yönetmesinin zaman alması ve bilginin bellek modülünden CPU’ya veri yolu üzerinde gitmesi gerekmesidir.



MEGAHERTZ (MHZ)

Senkronize DRAM teknolojisi ile başlayarak, bellek yongaları hızı megahertz veya saniye başına milyonlarca devirle ölçülmeyi kolaylaştırarak kendilerini bilgisayarın sistem saatiyle senkronize etme yeteneğine sahip olmuştur. Sistemin geri kalanında ölçülen hızla aynı şekilde olması nedeniyle, farklı bileşenlerin hızlarının karşılaştırılmasını ve işlevlerini senkronize etmeyi kolaylaştırır. Hızı daha iyi anlayabilmek için, sistem saatinin anlaşılması önemlidir.

SİSTEM SAATİ

Bir bilgisayarın sistem saati ana kartta bulunur. Bir metronom gibi, diğer bütün bilgisayar bileşenlerine ritimli bir şekilde bir sinyal gönderir. Bu ritim tipik olarak aşağıda gösterildiği şekilde bir kare dalga olarak çizilir:



Gerçekte, bir osiloskopla gözlemlendiğinde, asıl saat sinyali aşağıdaki örneğe daha çok benzer.



Bu sinyaldeki her dalga bir saat devrini ölçer. Bir sistem saati 100MHz’de çalışıyorsa, bir saniyede 100 milyon saat devri olduğu anlamına gelir. Bilgisayardaki her eylem bu saat devirleriyle zamanlanır ve her eylemin gerçekleşmesi belirli bir saat devri sayısı tutar. Örneğin, bir bellek talebini işlerken, bellek denetleyicisi işlemciye talep edilen verinin altı saat devrinde varacağını bildirebilir.

CPU ve diğer cihazların sistem saatinden daha hızlı veya daha yavaş çalışması muhtemeldir. Farklı hızlardaki bileşenler, senkronize edilmek için sadece bir çarpma veya bölme faktörü gerektirir. Örneğin, 100MHz’lik bir sistem saati 400MHz’lik bir CPU ile etkileşime geçtiğinde, her bir cihaz sistem saati devrinin CPU üzerinde dört saat devrine eşit olduğunu anlar; kendi eylemlerini senkronize etmek için dörtlük bir faktör kullanırlar.

Bir çok insan işlemcinin hızının bilgisayarın hızı olduğunu varsayar. Ancak çoğu zaman sistem veri yolu ve diğer bileşenler farklı hızlarda çalışır.

PERFORMANSIN EN ÜST SEVİYEYE ÇIKARTILMASI

Bilgisayar işlemci hızları son birkaç yıldır hızlı bir şekilde artmaktadır. İşlemcinin hızının arttırılması bilgisayarın genel performansını da arttırır. Ancak, işlemci bilgisayarın sadece bir parçasıdır ve işlevleri tamamlamak için hala sistemdeki diğer bileşenlere bağlıdır. CPU’nun işleyecek olduğu bütün bilgilerin belleğe yazılması veya bellekten okunması gerektiğinden, bir sistemin genel performansı bilginin CPU ve ana bellek arasında ne kadar hızlı dolaşabileceğinden çarpıcı bir şekilde etkilenir.

Bu nedenle, daha hızlı bellek teknolojileri genel sistem performansına oldukça büyük bir katkıda bulunur. Ancak, belleğin hızının arttırılması çözümün sadece bir parçasıdır. Bilginin bellek ve işlemci arasında dolaşma süresi genellikle işlemcinin işlevlerini yerine getirme süresinden daha uzundur. Bu bölümde anlatılan teknolojiler ve yenilikler bellek ve işlemci arasındaki iletişim sürecini hızlandırmak üzere tasarlanmıştır.

ÖNBELLEK

Önbellek, CPU’ya oldukça yakın olan yüksek hızlı belleğe oranla nispeten daha azdır (normalde 1MB’tan az). Önbellek, CPU’ya en sık talep edilen veri ve talimatları sağlamak üzere tasarlanmıştır. Önbellekten veri alma ana belleğe erişim süresinden az bir zaman aldığından, hala ana bellekten alınmalıdır ama önbelleğin kontrol edilmesi kısa sürer; buna değer. Markete almaya gitmeden önce buzdolabınızdaki yemekleri kontrol etmenize benzerdir: ihtiyacınız olan şeyin orada olması muhtemeldir; değilse, kontrol etmeniz sadece kısa bir süre alır.

Önbelleğin arkasındaki kavram, zamanın %80’inde bilgisayarınızdaki bütün programların, bilgilerin ve verilerin yaklaşık %20’sinin kullanıldığını ifade eden “80/20” kuralıdır. (Bu %20 veri e-mail gönderme veya silme, bir dosyayı sabit diskinize kaydetme veya sadece klavyenizdeki hangi tuşlara dokunduğunuzu tanıma için gerekli kodları içerebilir.) Bunun tersine, sisteminizdeki verilerin geri kalan %80’i sürenin yaklaşık %20’sini kullanır. CPU’nun şu anda kullanmakta olduğu veri ve talimatlara yeniden ihtiyaç duyabilecek olması nedeniyle önbellek mantıklıdır.

ÖNBELLEK NASIL ÇALIŞIR
Önbellek, CPU tarafından ihtiyaç duyulan talimatların bir “önemli listesi” gibidir. Bellek denetleyici CPU’nun talep ettiği her bir talimatı önbelleğe kaydeder; CPU her talimat alışında, önbellekten talimatın “önemli liste”nin üst sırasına taşınmasına ihtiyaç duyar – bu bir “önbellek hiti” olarak adlandırılır. Önbellek dolu olduğunda ve CPU yeni bir talimat istediğinde, sistem önbellekte en uzun süredir kullanılmayanın üzerine veriyi yazar. U şekilde, sürekli olarak kullanılan yüksek öncelikli bilgi önbellekte kalırken, daha az sıklıkta kullanılan bilgiler çıkartılır.

ÖNBELLEK SEVİYELERİ
Bugün, önbelleklerin büyük bir kısmı işlemci yongasının kendisine yerleştirilir; ancak, diğer yapılandırmalar da mümkündür. Bazı durumlarda, bir sistem işlemcinin içerisinde, ana kart üzerinde işlemcinin hemen dış kısmında veya bir önbellek modülü içerebilecek olan CPU’ya yakın bir önbellek soketine yerleştirilmiş bir önbelleğe sahip olabilir. Yapılandırma ne olursa olsun, herhangi bir önbellek bileşenine işlemciye olan yakınlığına göre bir “seviye” atanır. Örneğin, önbellek işlemciye en yakın olansa 1 (L1) Önbellek olarak adlandırılır, sonraki önbellek seviyesi L2 olarak, daha sonra L3 olarak vs. adlandırılır. Bilgisayarlar genellikle önbelleğe ek olarak diğer önbelleğe alma çeşitlerine sahiptirler. Örneğin, sistem kimi zaman ana belleği sabit disk için bir önbellek olarak kullanır. Bu senaryoları burada tartışacak olmasak bile, önbellek teriminin özellikle bellek ve diğer depolama teknolojilerine başvurduğuna dikkat etmek önemlidir.

Merak edebilirsiniz: işlemciye yakın bir önbelleğe sahip olmak faydalıysa, neden önbellek ana belleğin tamamı için kullanılmıyor? Birincisi, önbellek tipik bir şekilde SRAM olarak adlandırılan ve ana bellekte kullanılan DRAM’le karşılaştırıldığında daha pahalı olan ve megabayt başına daha fazla alan gerektiren bir bellek yongası çeşidi kullanır. Ayrıca, önbellek genel sistem performansını arttırmazken, bir noktaya kadar bunu gerçekleştirir. Önbelleğin gerçek faydası en sık kullanılan talimatları depolamasıdır. Daha büyük bir önbellek daha fazla veri tutabilir, ama veri çok sık gerekmiyorsa işlemcinin yakınında olmasının çok az faydası vardır.

Ana belleğin CPU’dan gelen bir bellek talebini karşılaması 195ns sürer. Harici önbellek CPU’dan gelen bir bellek talebini 45ns gibi kısa bir sürede karşılayabilir.

SİSTEM DEVRE KARTI DÜZENİ

Sizin de muhtemelen fark ettiğiniz gibi, bellek modüllerinin sistem devre kartına yerleştirilmesinin sistem performansı üzerinde doğrudan etkisi vardır. CPU’nun işlem yapmak için ihtiyaç duyduğu bütün bilgilerin yerel bellek tarafından tutması gerektiğinden, verinin bellek ve CPU arasında dolaşabileceği hız sistemin genel performansı için önemlidir. CPU ve bellek arasındaki bilgi değişimlerinin çok karışık bir şekilde zamanlanması nedeniyle, işlemci ve bellek arasındaki mesafe performans açısından bir başka önemli faktör haline gelir.

ARAYA GİRME

Araya girme terimi, CPU’nun iki veya daha fazla bellek öbeği arasındaki iletişimi dönüşümlü olarak kullanmasından söz eder. Araya girme teknolojisi tipik olarak sunucular ve iş istasyonları gibi büyük sistemlerde kullanılır. Şu şekilde çalışır: CPU’nun bir bellek öbeğini her belirleyişinde, öbek kendini “sıfırlamak” için yaklaşık bir saat devrine ihtiyaç duyar. CPU, birinci öbek sıfırlanırken ikinci bir öbek belirleyerek işleme süresinden tasarruf eder. Araya girme, ayrıca performansı geliştirmek için bellek yongaları arasında da çalışabilir. Örneğin, SDRAM yongası içerisindeki bellek hücreleri eşzamanlı olarak etkinleştirilebilecek iki bağımsız hücre öbeğine bölünür. İki hücre öbeği arasına girme sürekli bir veri akışı sağlar. Bu, bellek devri uzunluğunu azaltır ve daha hızlı aktarım hızlarıyla sonuçlanır.

ÇOĞUŞMA

Çoğuşma bir başka zamandan tasarruf ettirici teknolojidir. Çoğuşmanın amacı CPU’ya ihtiyaç duyması muhtemel olmasına dayanarak bellekten ek veri sağlamaktır. Böylece, CPU’nun her seferinde bellekten bir parça bilgi alması yerine, bellekteki birkaç ardıl adresten bir bilgi bloğu alır. İşlemcinin talep edeceği bir sonraki veri adresinin bir öncekini takip ediyor olmasına ait istatistiksel olasılık nedeniyle zamandan tasarruf ettirir. Bu şekilde, CPU her seferinde ayrı bir talep göndermeye ihtiyaç duymadan, ihtiyaç duyduğu talimatları alır. Çoğuşma pek çok farklı bellek çeşidi ile çalışabilir ve veri okurken veya yazarken çalışabilir.

Hem çoğuşma hem de küme komut işleme, EDO teknolojisinin kullanılabilir hale getirilmesiyle aynı zamanda popüler olmuştur. Bu işlevleri sunan EDO yongaları “Çoğuşma EDO” veya “Küme Komut İşleme EDO” yongaları olarak adlandırılmıştır.

KÜME KOMUT İŞLEME

Küme komut işleme, görevin her bir aşamada çalışmanın bir kısmının tamamlandığı bir aşamalar serisine bölündüğü bir bilgisayar işleme tekniğidir. Büyük görevlerin daha ufaklara bölünmesiyle, görevlerin üst üste bindirilmesiyle, küme komut işleme kendisi olmadan mümkün olmayanın ötesinde performansı arttırmak için kullanılır. İlerledikleri aşama sayısına bakılmaksızın, bir küme komut işleme ile akış başladığında talimatların uygulanma hızı yüksektir.


© 2008 Kingston Technology Company - Bütün Hakları Saklıdır