Search

Java - 4

16 Ocak 2015 Cuma

İşlemci (CPU) Nedir? Bölümleri ve Çalışma Mantığı
İşlemci: İşlemci kısaca takılı bulunduğu sistemde (bilgisayar, playerlar, oyun konsolları vs..) tüm işlemleri denetleme ve sistemin çalışması için gerekli olan adımları uygulama görevine sahiptir. Yani örnek verecek olursak en basit anlamda bir hesap makinasında 4+4 işlemini yaptığımız zaman sonucu görebilmemiz için gerekli işlemlerin yapıldığı birime diyebiliriz. Veya bilgisayarda bir klasöre tıkladığımız zaman içindeki bilgileri ekrana getiren veya bir programı kurarken dosyaların gerekli şekilde bilgisayara yüklenmesini sağlayan aygıtlara diyebiliriz.

İşlemci Nedir?
CPU ingilizce olarak Central Processing Unit veya Merkezi İşlem Birimi olarak adlandırılına ve kısaca yukarıda bahsettiğimiz ve daha birçok işlemi yapan ve sistemlerin çalışmasını sağlayan bir ünite olarak adlandırılabilir. Saniyede yaptığı işlem sayısında göre bir hız birimi atanarak işlemcilerin kapasiteleri ve çalışma hızları belirlenmektedir. İşlemcinin çalışma hızları tamamen tasarım ve üretim teknolojisine bağlı olarak değişmekle birlikte yeni nesil işlemcilerde dışarıdan yapılan müdahalelerle (overclock) hız arttırımları söz konusu olmaktadır. İşlemcilerde hız birimi HZ, MHZ ve GHZ olarak adlandırılan birimle ifade edilmektedir. Bazı özel işlemcilerde ise bu birimin yerini Flop adı verilen bir birim almaktadır.

İşlemci Nasıl Çalışır?
İşlemci kendi içinde bir mimariye sahip olup işlemlerin yapılabilmesi için birçok ünitesi bulunmaktadır. İşlemler yapılırken Logic (mantıksal 1 veya 0) mantığı ile yapılmaktadır. Yani iki sayıyı toplamak için ilk olarak sayıların ikilik değerleri (1001010 şeklinde) ele alınır ve bunun üzerine işlemler yapılarak sonuç elde edilir. Veya bir film izlerken ekrandaki görüntünün oluşması için hafızada bulunana ikilik değerler birleştirilerek görüntüler oluşur. İşlemciler hafızalarında bulunana komutlarla dışarıdan gelen uyarılar eşliğinde işlemleri yapmaktadırlar. İşlemcini hafızasında bulunan komutlara o işlemcinin komut seti denilebilir.
KOMUT VE PROGRAM KAVRAMLARI
Örnek – 1
Bir işlemci ile ilgili en çok merak edilen konulardan birisi, o işlemcinin klavye veya fare gibi farklı kaynaklardan aldığı komutları tam olarak nasıl algıladığı ve işleme soktuğudur. Veriler herhangi bir yoldan bilgisayara girildiğinde önce elektrik sinyallerine çevrilirler. Sinyaller iki durumdan oluşur. Kapalı (off=0) veya açık (on=1).
Elektrik sinyali ile bunu yapmak kolaydır; elektrik ya vardır (1) ya da yoktur (0). Bu iki durum prensibi (two state principle) olarak bilinir. İki durum prensibini tanımlamak için iki parçadan oluşan anl##### gelen ikili (binary) terimi kullanılır. Bilgisayarlarda veriler binary digits adlı temel elemanlarına yani kısa adıyla bits’lerine ayrılarak 0 ve 1 (yani açık ve kapalı) sayıları ile değerlendirirler. Verilerin ikili sistem şekline çevrilmiş haline ikili kodlama (binary coding ) denir. Bir bilgisayar içinde devreleri oluşturan yongalar üzerinde milyonlarca mikroskobik elektronik anahtar (switch) vardır. Bir mikro işlemciyi yakından incelediğimizde, her biri elektrik sinyallerinin iletiminde kullanılan çok sayıda ayaklar (pin) içerdikleri görülür.

Örnek – 2
İşlemci komutlar ile çalışır. Bu komutların arka arkaya dizilişlerine Program denir. İşlemcinin yapabileceği her bir işlem bir komut ile ifade edilir. Örneğin TOPLA A,B,C komutu işlemciye A sayısı ile B sayısını toplayıp sonucu C olarak kaydetmesini anlatır. Komutların işlemci içerisinde sırayla çalıştırılmasını yukarıda tanımladığımız Kontrol Birimi gerçekleştirir.

Bu komut nasıl gerçekleştirilir?
1. İşlemci Adres yolunu Kullanarak A Sayısını Bellekten ister.
2. Bellek Veri Yolundan A Sayısını İşlemciye Gönderir.
3. İşlemci Adres yolunu Kullanarak B Sayısını Bellekten ister.
4. Bellek Veri Yolundan B Sayısını İşlemciye Gönderir.
5. İşlemci A ve B Sayısını Toplar ve Sonucu Bulur.
6. İşlemci Adres yolunu kullanarak C Sayısına Bilgi Göndereceğini Belleğe Bildirir.
7. İşlemci Veri Yolunu Kullanarak C Sayısını Belleğe Gönderir.
8. Bellek Gelen Sonucu C Sayısı olarak kaydeder.

İki sayının toplanması yukarıdaki şekilde gerçekleşir. Bütün bu işlemler saniyenin milyarda biri gibi kısa bir sürede gerçekleştirilir. İşlemci TOPLA komutunu bitirir bitirmez hemen arkasından gelen komutu (eğer varsa) gerçekleştirmeye çalışır.

İşlemci Üniteleri Nelerdir?

İşlemcinin iç yapısına biraz bakacak olursak çeşitli ünitelerden teşkil edildiği gözükmektedir. Öncelikle kendi içinde bir belleğe sahiptir bu bellekte hafızasında bulunan komutlar (komut seti) ve işlem sırasında geçici bilgilerin saklanması için boş hafıza kısımları bulunmaktadır. Üniteleri biraz daha geniş açacak olursak.

- Data Yolları: İşlemcinin içindeki bölümleri birbirine bağlayan ve bilgi akışının olduğu kısımlar olarak nitelendirebiliriz. Yeni nesil işlemcilerde data yolları çok daha büyük yapılarak (32 Bit, 64 Bit, 128 Bit) büyük verileri daha kısa sürede işlemeye olanak sağlamaktadırlar. Örnek olarak 64 bitlik veri yoluna sahip bir işlemcide tek döngüde 64 bit uzunluktaki bir veri bir yerden bir yere aktarılabilir.

- Cache (Ön Bellekler): Normal olarak işlemci işlemleri gerçekleştirirken bir yerdeki bilgiyi alıp bir kısmını işeldikten sonra bilgilerin o anda tutulacağı ram adını verdiğmiz yerlere gönderir fakat işlemlerdevam ederken önceden ram e atmış olduğu bilgilerden bazılarına gereksinim duyabilir. Fakat işlemci ile ram arasındaki veri transferi işlemcinin kendi içindeki ram bölümündeki beri transferinden çok daha uzundur. Bu nedenle bu tarz gereksinimleri karşılamak için işlemciler dahili bir ram bellek ile (cache – ön bellek) üretilmektedirler. Öneli bilgiler ram bölümüne gönderilirken cache kısmındada saklanmaktadır ve bir işlem sırasında gereksinim duyulduğunda bu kısımda bilgiler alınmakta veya bu kısma aktarılmaktadır.

- ALU: (Aritmetic Logic Unit – Matematiksel Mantık Birimi) olarak ta adlandırılabile bu bölüm ise işlemci içindeki işlemci oalrak nitelendirilebilir. İşlemci içinde 2 lik sistemde işlemlerin yapıldığı bölümdür ve tüm işlemler aslında toplama, çıkarma, çarpma, bölme gibi işlemlerin türevi olduğundan komut setleri ile gelen işlemler burdan gerekli şekilde işlenerek çıkartlılmaktadır.
İşlemcinin İç Yapısı Nasıldır ve Nasıl Tasarlanır?

İşlemciler aslında transistör adını veridiğimiz yarı iletken elemanların birleştirilmesi ile oluşmaktadır. Başlarda 100 -200 transistör birleştirilerek yapılan işlemciler, teknolojinin gelişmesi ise 1 Milyar ve daha fazla transistör birleştirilerek yapılabilir hale geldi.

İŞLEMCİNİN ÇALIŞMA PRENSİBİ
Bilgisayarda genelde üç tip bilgi iletişimi yapılır.
Bunlar; veri (data) iletişimi, işlemin kontrol (control) edilmesi ve durumun bir bilgi ile (Status data) belirlenmesidir.
Bu veri akışında alfabetik harfler, sayılar veya her ikisi birlikte kullanılır.
Kontrol işaretleri ise bilgisayarın farklı üniteleri arasında bir işlem yapıldığı sırada kullanılır. Status (durum) işaretleri ile merkezi işlemcinin durumu ve ne iş yaptığı açıklanır yani veri giriş mi yaptığı yoksa veri çıkışı mı oluyor ya da kontrol mu yapılıyor gibi.
Bir merkezi işlemci işleyeceği bilgileri bellekten alarak işler, daha sonra işlenen bilgileri belleğe ya da portlara bilgi olarak geri gönderir. Veri işlemlerinin dışında ayrıca mantıksal ve matematiksel operasyonları gerçekleştirir. CPU bir işlemi gerçekleştirirken kontrol, adres ve veri yolarını kullanır ve CPU’nun o anki durumu; işlem durum kaydedicisinde yani Status Register’da görülür.
Bir mikroişlemcinin iki tane çalışma frekansı vardır. Bunlardan biri; iç frekans (internal), diğeri ise;dış frekans (external). İç frekans, işlemcinin saniyede yaptığı işlem miktarını tanımlar. Dış frekans ise; işlemcinin bellek ve çipset gibi diğer bileşenlerle haberleştiği frekanstır. Buna veri yolu hızı ya da FSB de denilmektedir. İç frekans her zaman dış frekanstan çok daha hızlıdır.

İşlemcinin Yapısı
Üreticiler, farklı işlemci mimarilerine göre işlemci üretirler. İşlemci mimarisi; işlemcinin işlemleri gerçekleştirme yöntemi, teknolojisi ve tasarımını ifade eder. Ortak mimariye sahip olan işlemciler aynı komutları tanımakta ve aynı yazılımları çalıştırabilmektedirler.
Her işlemci temel bazı birimleri içinde barındırır. İşlemcilerin gelişim sürecinde bu birimlerin özellikleri artırılmıştır. Genel bir işlemci yapısı aşağıdaki şekilde gösterilmiştir.

Veriler, bilgisayarı oluşturan çeşitli birimler arasında sürekli olarak taşınır. Örneğin, klavye biriminde bir tuşa bastığımızda bu tuşun karşılığı olan karakteri ekranda görürüz.
İşlemci, giriş birimden aldığı veriyi çıkış birimine aktarmıştır. İşlemcinin anakartla iletişim kurmasını sağlayan, toplu iğneye benzeyen uçlara pin denir. Pin yerine farklı isimler de kullanılabilmektedir.
Pin = İğne = Bağlantı iğnesi = Bacak = Ayak
İşlemcinin yapısında bulunan birimler aşağıda kısaca açıklanmıştır.
1.4.1. Çekirdek (Core)
 Komut çalıştırma işlemlerini yapan bölümdür. Çalıştırma birimi (execution unit) olarak da bilinir.
1.4.2. ALU (Aritmetik Lojik Unit / Aritmetik Mantık Birimi)
İşlemci tarafından gerçekleştirilecek matematiksel ve mantıksal işlemlerin yapıldığı bölümdür.
1.4.3. Ön Bellek (Cache)
Sistem belleğinden gelen veriler, çoğunlukla CPU’nun hızına yetişemezler. Bu problemi çözmek için CPU içinde yüksek hızlı hafızalar bulunur. Ön bellek çalışmakta olan programa ait komutların, verilerin geçici olarak saklandığı yüksek hızlı hafızalardır.
İşlemcinin komutları daha hızlı yüklemesini sağlayan bu hafıza genellikle L1 (Level 1) ve L2 (Level 2) olmak üzere iki kısımdan oluşur. İşlemci, ihtiyaç duyduğu komutu ilk önce L1 ön bellekte (L1 ön bellek L2 ön bellekten daha hızlıdır.) arar. Eğer işlemcinin aradığı komut burada yoksa L2 önbelleğe bakar. Eğer burada da yoksa sırasıyla RAM ve sabit disk üzerindeki sanal hafıza üzerinde arar. Ön belleklerin kimisi işlemci ile aynı hızda çalışır.
1.4.4. Kontrol Birimi
İşlemciye gönderilen komutların çözülüp (komutun ne anlama geldiğinin tanımlanması) işletilmesini sağlar. İşlemci içindeki birimlerin ve dışındaki birimlerin eş zamanlı olarak çalışmasını sağlayan kontrol sinyalleri bu birim tarafından üretilir.
İletişim Hatları (İletişim Yolları)
İnsanlarda beyin nasıl tüm vücudu yönetmek, kontrol etmek için sinir sisteminin bir parçası olan sinirleri kullanıyorsa; işlemciler de bilgisayarı yönetmek, kontrol etmek için iletişim yollarını kullanır. Hem işlemci içerisinde hem de işlemciyle diğer birimler arasında iletişim hatları bulunmaktadır. İletişim hatları üzerinden elektrik sinyali geçebilecek iletken hatlardır. Bu hatların sayısı işlemci modeline göre değişir

İletişim hatları üç grup halinde incelenebilir:
Adres Yolu (Address Buses): İşlemcinin bilgi yazacağı veya okuyacağı her hafıza hücresinin ve çevre birimlerinin bir adresi vardır. İşlemci, bu adresleri bu birimlere ulaşmak için kullanır. Adresler, ikilik sayı gruplarından oluşur. Bir işlemcinin ulaşabileceği maksimum adres sayısı, adres yolundaki hat sayısı ile ilişkilidir. Adres yolunu çoğunlukla işlemci kullanır. Bu yüzden adres yolunun tek yönlü olduğu söylenebilir.
Veri Yolu (Data Buses): İşlemci, hafıza elemanları ve çevresel birimleriyle çift yönlü veri akışını sağlar. Birbirine paralel iletken hat sayısı veri yolunun kaç bitlik olduğunu gösterir. Örneğin, iletken hat sayısı 64 olan veri yolu 64 bitliktir. Yüksek bit sayısına sahip veri yolları olması sistemin daha hızlı çalışması anlamına gelir.

Kontrol Yolu (Control Buses): İşlemcinin diğer birimleri yönetmek ve eş zamanlamayı (senkronizasyon) sağlamak amacı ile kullandığı sinyallerin gönderildiği yoldur.

Hiç yorum yok:

Yorum Gönder