İşlemci Teknolojileri

Merhaba,

Bugün işlemci teknolojileri üzerinde duracağız.

Yapılacak iş ve uygulama ile ilgili olarak kullanılacak sunucuyu seçerken göz önünde bulundurmak gereken en temel faktörlerin başında sunucunun kullandığı işlemci ve bu işlemcinin sahip olduğu teknolojiler gelir. Bu yüzden CPU’nun nasıl çalıştığı ve sahip olduğu teknolojilerinin uygulamalarınızın performansına ne şekilde etki edebileceğini bilmek önemlidir.

Günümüz işlemcilerinin çalışma hızları GHz’ler ile ifade edilir.

Örnek olarak 2.5 GHz hızına sahip bir işlemci saniyede 2.5 milyar çevrim gerçekleştirir. Örnek olarak bir işlemin 10 saat çevriminde gerçekleştiğini varsayarsak bu işlemcinin teorik olarak saniyede 250 milyon işlem yapabilme kapasitesine sahip olduğu söylenebilir.

En temel anlamda bir işlemci, bir bilgisayar programından aldığı, binary olarak 1 ve 0’larla ifade edilen instruction’ları çalıştıran yarı iletken teknolojisi kullanılarak tasarlanmış milyonlarca transistör içeren bileşenler grubudur.

Tipik olarak programlar yüksek seviye bir programlama dili ile yazılır. Bu seviyede programcı tarafından yazılan komutlar derleyici tarafından instruction’lara çevrilir. İşlemci kendi bünyesinde birçok bileşeni içerir. Bu bileşenleri ve görevlerini özetleyecek olursak:

Şekil 1: Bir işlemcinin temel bileşenleri.

 

Prefetch unit: İşlemcinin ihtiyaç duyacağı instruction’ları ve operatorleri üzerinde tutar.

Decode unit: Bir instruction’ı, execution unit tarafından işlenebilmesi için alt parçalarına böler.

Execution unit: Verilerin esas olarak işlendiği birimdir. Matematiksel ve mantıksal işlemlerin yapıldığı arithmetic logic unit ve floating point unit’i içinde barındırır. Arithmetic logic unit matematiksel ve mantıksal işlemlerin yapıldığı birimdir. Floating point unit ise ileri düzey matematiksel işlemleri yerine getirir.

Control unit: İşlemciye gelen ve işlemciden gönderilen verilerin organizasyonunu sağlar.

Register’lar: Control unit ve execution unit tarafından verilerin üzerinde geçici olarak depolandığı bellek birimleridir.

L1 cache: Son kullanılan veri ve instruction’ları üzerinde tutan küçük ve hızlı bir bellek birimidir.

Bus interface unit: Address ve data bus’lara erişimi kontrol eder.

İşlemci bir instruction’ı çalıştırmadan önce, ilk olarak L1 cache’e bakar. Instruction burada yoksa prefetch unit bu instruction’ı bellekten getirir.

Instruction bulunduktan sonra ilk olarak L1 cache’e (L1 instruction cache’e) getirilir ve buradan prefetch unit tarafından decode unit’e gönderilir. Decode unit, aldığı bu instruction’ı daha basit par-çalara ayırdıktan sonra bunları control unit’e gönderir. Control unit, bu decode edilen instruction’ı execution unit’e gönderir. Execution unit’teki ALU’da komut işlenir. Bu aşamada komutun işlen-mesi için gereken veriler varsa bu veriler register’lardan execution unit’e transfer edilir. İşlem sonunda sonuç register’a ve cache’e (data cache’e) yazılır.

Bu aşamada işlemci sistem saati ile senkronize edilir. Bu adımların her birinin birer saat çevriminde gerçekleşmesi durumunda bir instruction 5 saat çevriminde işlenir.

İşlemcilerin performanslarını arttırmaya yönelik birçok teknoloji vardır.  *CPU kategorisinde bu teknolojilerden bazılarını inceleyeceğiz.

Görüşmek üzere.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir