Merkezi İşlem Birimi (CPU) Hakkında Detaylı Bir Rehber
Bilgisayar donanımının en kritik bileşenlerinden biri olan işlemci (CPU – Central Processing Unit), bilgisayarın beyni olarak kabul edilir. Kullanıcı tarafından verilen komutları yorumlayarak işlemleri gerçekleştiren bu bileşen, modern bilgisayar mimarisinin temel taşlarından biridir. Bu yazıda, işlemcinin ne olduğunu, çalışma prensibini, türlerini ve gelişimi ele alacağız.

İşlemci(CPU) Nedir?
İşlemci, bilgisayarda işlem yapmaktan sorumlu olan elektronik devre elemanıdır. Bellekten veri alır, bu verileri işler ve ilgili bileşenlere geri gönderir. Bunu yaparken aritmetik ve mantıksal işlemleri gerçekleştirir.
İşlemcinin Çalışma Prensibi
İşlemler 7 temel birim tarafından yürütülür.Bunlar sırasıyla:
1. Kontrol Birimi (Control Unit – CU):
Görevi: İşlemcinin tüm bileşenlerini koordine eder.
- Bellekten veya önbellekten gelen komutları yorumlar.
- Komutların hangi bileşenler tarafından işleneceğini belirler.
- İşlemcideki bileşenlerin senkronize çalışmasını sağlar.
- ALU ve diğer birimlere gerekli talimatları gönderir.
Örnek:
Eğer işlemci “5 + 3” işlemi yapacaksa, kontrol birimi ALU’ya bu işlemi gerçekleştirmesi için talimat verir.
2. Prefetch Birimi (Prefetch Unit)
Görevi: İşlemcinin ihtiyaç duyacağı komutları önceden tahmin ederek alır.
- Bellekten veya önbellekten komutları alır ve işlenmeye hazır hale getirir.
- İşlemcinin komutları hızlı bir şekilde almasını sağlar.
- Önbellekle (Cache) sıkı bir şekilde çalışır, böylece işlemci komutları RAM’den almak zorunda kalmaz.
Örnek:
Bir döngü içinde sürekli tekrarlanan işlemleri (for loop) tahmin ederek önceden yükler.
3. Kod Çözme Birimi (Decode Unit)
Görevi: Komutları anlamlı hale getirir.
- Prefetch biriminden gelen komutları işler.
- Makine dilindeki komutları ALU veya diğer birimlerin anlayabileceği formata çevirir.
- CISC işlemcilerde (x86 gibi) karmaşık komutları küçük mikroişlemlere bölerek hızlandırır.
Örnek:
Eğer işlemci şu komutu alırsa:
MOV A, 5 ; A değişkenine 5 değerini ata
Decode Unit, bu komutu işler ve hangi bileşenin ne yapacağını belirler.
4. Yürütme Birimi (Execution Unit)
ALU ve FPU olmak üzere kendi içinde iki birimden oluşur.
Görevi: İşlemleri gerçekleştirir.
- A) ALU (Aritmetik ve Mantık Birimi) burada yer alır ve matematiksel işlemleri yapar.
- B) FPU (Floating Point Unit), ondalıklı işlemleri yürütmek için kullanılır.
- Mantıksal kararları (IF, ELSE gibi) ve karşılaştırmaları (>, <, ==) yönetir.
Örnek:
Eğer “5 + 3” işlemi yapılacaksa:
- Decode Unit, bunun bir toplama işlemi olduğunu anlar.
- Execution Unit, ALU’ya “5 + 3” işlemini yaptırır.
- Sonuç, kayıtlara veya belleğe yazılır.
5. Kayıtçılar (Registers)
Görevi: İşlem sırasında geçici olarak verileri saklar.
- İşlemcinin en hızlı belleğidir.
- Çok küçük bir alana sahiptir (genellikle birkaç KB boyutunda).
- Farklı türde kayıtçılar vardır:
- Program Counter (PC): Hangi komutun işleneceğini saklar.
- Instruction Register (IR): Anlık işlenen komutu saklar.
- Accumulator (ACC): ALU’nun hesapladığı verileri geçici olarak tutar.
- General-Purpose Registers (AX, BX, CX, DX – x86 işlemcilerde): Genel amaçlı veri saklama alanlarıdır.
Örnek:
Bir işlem sırasında “5 + 3” işlemi yapılacaksa, sayıların tutulduğu yer kayıtçılardır.
6. Önbellek (Cache)
Görevi: En sık kullanılan verileri saklayarak işlemcinin hızını artırır.
- RAM’den daha hızlıdır, çünkü işlemciye entegre edilmiştir.
- Üç seviyeye ayrılır:
- A) L1 Cache: İşlemcinin en hızlı ve en küçük önbelleği.
- B) L2 Cache: Orta seviyede hız ve kapasiteye sahiptir.
- C) L3 Cache: En yavaş bellektir. Tüm işlemci çekirdekleri için ortak bir önbellektir.
Örnek:
Bir oyun oynarken, tekrar eden hesaplamalar önbellekte saklanır. Böylece, işlemci aynı veriyi RAM’den almak zorunda kalmaz ve oyun daha hızlı çalışır.
7. Veri Yolu Arabirim Birimi (Bus Interface Unit – BIU)
Görevi: İşlemci ile diğer bileşenler arasındaki veri akışını sağlar.
- İşlemci ve bellek arasında veri taşır.
- Üç ana veri yolu içerir:
- A) Adres Yolu (Address Bus): İşlemcinin hangi bellek adresine erişeceğini belirler.
- B) Veri Yolu (Data Bus): Verileri işlemci ile bellek veya diğer bileşenler arasında taşır.
- C) Kontrol Yolu (Control Bus): İşlemciye ne yapacağını bildiren sinyalleri taşır.
Örnek:
Bir klavyeye bastığında, bu komut işlemciye BIU aracılığıyla gönderilir.
Özet: 7 Temel İşlemci Bileşeni
Birim | Görevi |
---|---|
1. Kontrol Birimi (CU) | İşlemcinin bileşenlerini yönetir. |
2. Prefetch Birimi | Komutları önceden alır ve hazırlar. |
3. Kod Çözme Birimi (Decode Unit) | Komutları işlemci bileşenlerinin anlayacağı hale getirir. |
4. Yürütme Birimi (Execution Unit) | İşlemleri gerçekleştirir (ALU ve FPU içerir). |
5. Kayıtçılar (Registers) | Geçici verileri saklar, işlem sırasında kullanılır. |
6. Önbellek (Cache) | En sık kullanılan verileri saklayarak işlemcinin hızını artırır. |
7. Veri Yolu Arabirim Birimi (BIU) | İşlemci ile bellek/giriş-çıkış birimleri arasındaki veri akışını yönetir. |

İşlemcinin Hızını Etkileyen Faktörler
İşlemcinin ne kadar hızlı çalıştığı birkaç temel faktöre bağlıdır:
- Saat Hızı (Clock Speed – GHz)
- İşlemcinin saniyede kaç döngü (cycle) gerçekleştirdiğini gösterir.
- Örneğin, 3.5 GHz işlemci, saniyede 3.5 milyar döngü gerçekleştirebilir.
- Çekirdek Sayısı (Core Count)
- Modern işlemcilerde birden fazla çekirdek bulunur (Dual-core, Quad-core, Octa-core).
- Her çekirdek ayrı bir işlem gerçekleştirebilir.
- İş Parçacığı (Threading) ve Hyper-Threading
- Hyper-Threading (Intel) / SMT (AMD) teknolojisi, bir çekirdeğin iki iş parçacığını aynı anda çalıştırmasını sağlar.
- Önbellek (Cache)
- L1, L2, L3 cache, işlemcinin RAM’e olan bağımlılığını azaltarak hızını artırır.
- Veri Yolu Genişliği (Bus Width)
- İşlemci ile bellek arasındaki veri aktarım hızını belirler (örneğin, 64-bit veri yolu, 32-bit veriyolundan daha hızlıdır).
Modern Mikroişlemci Mimari Teknikleri
Modern işlemciler, yüksek performanslı hesaplamalar için çeşitli teknikler kullanır. Bu teknikler, işlemcinin hızını artırmak ve daha verimli çalışmasını sağlamak için geliştirilmiştir.
Pipelining (Hat Borulama)
Amaç: İşlemcinin aynı anda birden fazla komut üzerinde çalışmasını sağlayarak verimliliği artırmak.
- Geleneksel işlemciler Fetch → Decode → Execute → Write Back adımlarını sırayla tamamlar.
- Pipelining, bu adımları eş zamanlı hale getirerek işlem sürecini hızlandırır.

Örnek:
Bir üretim hattını düşünelim: Bir araba fabrikasında montaj, boyama ve test aşamaları aynı anda yürütülüyorsa, işlem hızlanır. Aynı şekilde, Pipelining işlemcinin verimliliğini artırır.
Faydaları:
Komut başına harcanan süre azalır.
İşlemci daha verimli çalışır.
Superscalar (Süperskaler Mimari)
Amaç: İşlemcinin aynı anda birden fazla komutu işleyebilmesini sağlamak.
- Superscalar işlemciler, tek bir döngüde birden fazla talimatı (instruction) paralel olarak yürütür.
- Her çekirdekte birden fazla yürütme birimi (Execution Unit) bulunur.
- Yine tek FPU varıdr; ortak kullanılır.Fakat ALU sayısı artmıştır.
- Pipelining ile birlikte çalışır ve işlemcinin hızını büyük ölçüde artırır.
Örnek:
Intel’in Pentium Pro işlemcisi (1995) ilk Superscalar işlemcilerden biridir.
Modern işlemcilerde (Intel Core, AMD Ryzen) bu teknik yaygın olarak kullanılır.
Faydaları:
Birden fazla komut aynı anda yürütülebilir.
Performansı önemli ölçüde artırır.

Out-of-Order Execution (Sıra Dışı Yürütme)
Amaç: İşlemcinin, komutları sırasına bağlı kalmadan en hızlı şekilde yürütmesini sağlamak.
- Geleneksel işlemcilerde komutlar kod sırasına göre çalıştırılır.
- Out-of-Order Execution (OoOE), işlemcinin önce çalıştırabileceği talimatları yürütmesine olanak tanır.
- Instruction Scheduler (Komut Zamanlayıcı), bağımsız talimatları sıraya sokarak bekleme sürelerini azaltır.
Örnek:
Bir restoranda müşteri siparişleri mutfağa gider. Şef, en hızlı hazırlanabilecek yemeği önce yapar, böylece siparişler daha verimli bir şekilde hazırlanır. OoOE de aynı mantıkla çalışır.
Faydaları:
Boşta kalan yürütme birimlerini daha verimli kullanır.
Pipeline tıkanmalarını azaltır.

Branch Prediction (Dallanma Tahmini)
Amaç: Koşullu dallanmaları önceden tahmin ederek işlemcinin boşta kalmasını önlemek.
- İf-Else, Loop gibi koşullu ifadelerde, işlemcinin hangi yolu seçeceğini önceden tahmin etmesi gerekir.
- Statik ve Dinamik tahmin teknikleri kullanılır.
- Eğer tahmin yanlış çıkarsa, pipeline temizlenir ve süreç baştan başlar (Branch Misprediction Penalty).
- Aynı veya benzer işlemler için tahmin belleği kullanır.
- Benzer veya aynı işlemin sonucunu, tekrar gelmesi halinde tahmin eder. Bu tahmin belleğine Branch Target Buffer(BTB) adı verilir.
Örnek:
Bir trafik ışığında, sürücüler genellikle bir yöne dönecek araçları tahmin ederek hızlarını ayarlar. Branch Prediction, işlemcinin bu tür tahminler yapmasına benzer.
Faydaları:
Pipeline’ın boşta kalmasını önler.
Performans kaybını azaltır.

Speculative Execution (Spekülatif Yürütme)
Amaç: İşlemcinin dallanma tahminine göre komutları önceden yürütmesi.
- Branch Prediction ile birlikte çalışır.
- İşlemci, yüksek ihtimalle kullanılacak komutları önceden çalıştırır.
- Eğer tahmin doğru çıkarsa, sonuçlar hızla alınır.
- Eğer tahmin yanlışsa, hesaplanan veriler iptal edilir.
Örnek:
Bir satranç oyuncusu, rakibinin hamlesini tahmin ederek önceden strateji oluşturur. Eğer tahmin doğruysa, avantaj kazanır. İşlemciler de benzer şekilde çalışır.
Faydaları:
İşlemcinin verimliliğini artırır.
Dallanma gecikmelerini en aza indirir.

Explicitly Parallel Instruction Computing (EPIC)
Amaç: Komutların paralel çalışmasını donanımsal olarak desteklemek.
- Intel ve HP tarafından geliştirilen bir mimaridir.
- IA-64 (Itanium) işlemcilerinde kullanılmıştır.
- Superscalar mimariyi daha da genişleterek birden fazla komutu paralel çalıştırır.
Faydaları:
Yüksek performanslı paralel işlem yapabilme yeteneği.
Hyper-Threading (Çoklu İş Parçacığı Yürütme)
Amaç: Her fiziksel çekirdeğin iki sanal çekirdek (Thread) gibi çalışmasını sağlamak.
- Intel tarafından geliştirilmiştir.
- Her fiziksel çekirdek, iki ayrı iş parçacığını aynı anda çalıştırabilir.
- Gerçekten iki çekirdek eklenmez, ancak boşta kalan işlem birimleri daha verimli kullanılır.
Örnek:
İki kişi aynı bilgisayarı kullanıyor gibi düşünelim. Normalde bir çekirdek tek bir işlem yapar, ancak Hyper-Threading sayesinde iki farklı işlem yürütülebilir.
Faydaları:
Aynı anda daha fazla işlem yapılmasını sağlar.
Çoklu görevlerde performans artışı sağlar.

Özet: Modern İşlemci Teknikleri
Teknik | Amaç | Faydalar |
---|---|---|
Pipelining | Komutları paralel işlemek | Daha yüksek verimlilik |
Superscalar | Aynı anda birden fazla komut yürütmek | Performans artışı |
Out-of-Order Execution | Komutları sıradan bağımsız çalıştırmak | Bekleme sürelerini azaltır. |
Branch Prediction | Dallanma tahmini yapmak | Pipeline verimliliğini artırır. |
Speculative Execution | Tahmin edilen komutları önceden çalıştırmak | Daha hızlı yürütme |
EPIC | Paralel işlem yapmayı artırmak | Büyük ölçekli veri işleme |
Hyper-Threading | Çekirdekleri sanal olarak ikiye bölmek | Çoklu görevlerde hız artışı |
CPU’larda Veri Yolları
Adres Yolu (Address Bus):
- Veriler, bellekte 8 bitlik bloklar halinde saklanır.
- Her bloğun bir adresi vardır.
- İşlemciler bellekteki verilere ulaşırken bu adresleri kullanır.
- Bu bloklar, adres yolları aracılığıyla adreslenir.
Veri Yolu (Data Bus): Bellek üzerinde adreslenmiş bloklardaki veriler, bu yollar aracılığıyla taşınırlar.

Front Side Bus (FSB): İşlemci ile bellek arasındaki veri yoluna verilen addır.
Bu veri yolu anakart üzerinde bulunur.
Back Side Bus (BSB): İşlemci ile L2 Cache arasındaki veri yoluna verilen addır.
Bu veri yolu işlemcinin içindedir. İşlemci ile mikro işlemci arasındadır.

Sonuç
Günümüz bilgisayarların ve mobil cihazların kalbinde bulunan işlemciler, her geçen gün daha gelişmiş, daha hızlı ve daha verimli hale gelmektedir. Kullanıcıların ihtiyaçlarına göre en uygun işlemciyi seçmek, performans ve enerji verimliliği açısından büyük önem taşır.
Share this content:
Yorum gönder