Bilgisayar mimarisi, bir bilgisayar sisteminin donanım bileşenlerinin organizasyonunu ve bu bileşenlerin yazılımla etkileşimini tanımlayan bir alandır. Bu alan, işlemcilerin, bellek birimlerinin ve giriş/çıkış sistemlerinin tasarımı ile ilgilenir. Bilgisayar mimarisi, sistemin performansı ve verimliliği üzerinde etkili olan bir mühendislik disiplinidir ve teknolojik gelişmelere bağlı olarak değişim göstermektedir.
Von Neumann Mimarisi ve İşlem Döngüsü
Modern bilgisayarların temel tasarımını oluşturan Von Neumann mimarisi, program komutları ve verilerin aynı bellek alanında depolanması prensibine dayanır. Bu mimaride merkezi işlem birimi (CPU), ana bellek, giriş/çıkış (I/O) birimleri ve bu birimleri birbirine bağlayan veri yolları bulunur. Tek bir işlemci çekirdeğinin, bir seferde bir komutu alıp işlediği bu seri işleme modeli, uzun yıllar boyunca bilgisayar tasarımında kullanılmıştır.
Getir-Çöz-Uygula Döngüsü
Von Neumann mimarisinin temel çalışma mekanizması, Getir-Çöz-Uygula (Fetch-Decode-Execute) döngüsüdür. Bu döngüde, CPU bellekten komutları getirir, bu komutları ne yapması gerektiğini anlamak için çözer ve ardından uygular. Komutların sırayla işlenmesi, işlemci ile bellek arasındaki veri yolu hızının, işlemci hızının gerisinde kalmasıyla bilinen Von Neumann Tıkanıklığı'na yol açar.
Bellek Hiyerarşisi ve Önbellek Sistemleri
Bilgisayar mimarisinin bir parçası olan bellek hiyerarşisi, işlemci hızları ile bellek hızları arasındaki farkı yönetmek amacıyla kullanılan katmanlı bir yapıdır. Bu yapı, işlemciye en yakın ve en hızlı bellek birimlerinden (kayıtçılar ve önbellek) en uzak ve en yavaş bellek birimlerine (ana bellek ve disk) doğru bir sıra izler.
Çok Seviyeli Önbellek Mimarileri
Önbellek (Cache), işlemcinin en sık kullandığı verilere ve komutlara erişimi hızlandıran, ana bellekten daha hızlı ve küçük bir bellek türüdür. Önbellekler genellikle üç seviyeden oluşur:
L1 Önbellek: En küçük ve en hızlı bellek birimidir, her işlemci çekirdeğine özeldir.
L2 Önbellek: L1'den daha büyük ve yavaştır, genellikle her çekirdeğe özeldir.
L3 Önbellek: En büyük ve en yavaş önbellektir, genellikle tüm işlemci çekirdekleri tarafından paylaşılır.
Çok çekirdekli sistemlerde, aynı verinin farklı önbelleklerde farklı değerlere sahip olmasını engellemek için önbellek tutarlılığı (Cache Coherence) adı verilen bir mekanizma gereklidir.
Paralel İşleme ve Çok Çekirdekli Sistemler
Tek bir işlemci çekirdeğinin performans artışının fiziksel sınırlara ulaşmasıyla birlikte, paralel işleme mimarileri geliştirilmiştir. Bu mimariler, aynı anda birden fazla işlemin gerçekleştirilmesine olanak tanır.
Komut Seviyesinde Paralellik ve Çok Çekirdekli Sistemler
Komut Seviyesinde Paralellik (ILP), bir komut döngüsü içinde birden fazla işlemin eşzamanlı olarak gerçekleştirilmesini hedefler. Pipelining (ardışık düzen), komutları işlem döngüsünün farklı aşamalarında eşzamanlı olarak işler. Superscalar mimariler ise, aynı anda birden fazla komutu işleme yeteneği olan birden fazla yürütme birimi kullanır. Günümüzde yaygın olan çok çekirdekli işlemciler, bu teknolojileri bünyesinde barındırır.
Özel Paralel İşlem Birimleri: GPU'lar
Grafik İşlemci Birimleri (GPU'lar), binlerce küçük çekirdekten oluşur ve Tek Komut, Çoklu İş Parçacığı (SIMT) prensibiyle çalışır. Bu mimari, grafik işleme, yapay zekâ algoritmaları ve bilimsel hesaplamalar gibi yüksek oranda paralel hesaplama gerektiren görevler için tasarlanmıştır.

