Blog

Kendi İşlemcinizi Yapın: TD4 4-Bit CPU Yolculuğu

Alper Kocan 07 May 2026 31 görüntülenme

İşlemcilerin Kalbine Yolculuk: Neden TD4?

Selamlar, ben Alper. Bugün yazılım dünyasının o çok sevdiğimiz soyut katmanlarından biraz aşağı inip, işin mutfağına, yani donanımın tam kalbine dokunacağız. Modern işlemciler (CPU - Central Processing Unit) bugün milyarlarca transistörden oluşuyor ve iç yapılarını anlamak gerçekten uzmanlık gerektiriyor. Ancak bilgisayar biliminin temelleri aslında oldukça basit mantık kurallarına dayanıyor. İşte TD4 (Truly Discrete 4-Bit) işlemcisi, bize bu temelleri "elle tutulur" bir şekilde göstermek için tasarlanmış harika bir mimari.

TD4, Japon yazar Mamoru Watanabe'nin "How to Build a CPU" kitabıyla popülerleşen, sadece 74 serisi mantık entegreleri (Logic ICs) kullanılarak yapılan 4 bitlik bir işlemcidir. İçinde mikroişlemci yok, Arduino yok, hazır bir kontrolcü yok. Sadece kapılar, kablolar ve biraz sabır var. Eğer bir yazılımcı olarak "Kod yazdığımda arka planda elektrik sinyallerine tam olarak ne oluyor?" diye merak ediyorsanız, TD4 sizin için en iyi öğretmen olacaktır.

TD4 İşlemcisinin Anatomisi

Bir işlemciyi işlemci yapan temel birimler vardır. TD4'ü inşa ederken aslında bir bilgisayarın iskeletini kuruyoruz. Gelin bu parçalara yakından bakalım:

  • Yazmaçlar (Registers - A ve B): İşlemcinin içindeki çok hızlı küçük hafıza alanlarıdır. TD4'te iki adet 4 bitlik yazmaç bulunur. Bunlar veriyi geçici olarak tutar ve işlemlerin üzerinde yapılmasını sağlar.
  • Aritmetik Mantık Birimi (ALU - Arithmetic Logic Unit): İşlemcinin matematikçisidir. TD4'te bu birim aslında sadece toplama (Addition) işlemi yapar. Ancak bu basit toplama işlemi, doğru mantıkla birleştiğinde birçok farklı komutu yerine getirebilir.
  • Program Sayacı (PC - Program Counter): O an hangi komutun çalıştırıldığını takip eden bir sayaçtır. Her saat vuruşunda bir sonraki komuta geçer.
  • Komut Kaydedicisi ve Dekoder (Instruction Decoder): ROM'dan gelen 8 bitlik veriyi (komutu) alır ve işlemcinin diğer parçalarına "Sen şunu yap, sen veriyi şuraya gönder" şeklinde sinyaller gönderir.
  • Saat Sinyali (Clock): İşlemcinin kalp atışıdır. Genellikle bir 555 zamanlayıcı entegresi ile yapılır. Her "tık" sesinde işlemci bir adım ileri gider.

Komut Seti: İşlemciyle Konuşmak

TD4 çok kısıtlı ama işlevsel bir komut setine (Instruction Set) sahiptir. Toplamda 16 farklı komutu destekleyebilir ancak temel tasarımda genellikle 10-12 tanesi kullanılır. Örneğin, bir veriyi A yazmacına yüklemek (MOV A, Im), A yazmacına bir sayı eklemek (ADD A, Im) veya belirli bir adrese atlamak (JMP Im) gibi komutlar mevcuttur.

Buradaki en ilginç nokta, bu işlemcinin bir ROM (Read Only Memory) birimine sahip olmasıdır. Ama bu ROM, bildiğimiz çiplerden değil, genellikle 8'li DIP switch dediğimiz küçük anahtarlardan oluşur. Yani programınızı yazmak için anahtarları elinizle aşağı yukarı çekerek 1 ve 0'ları (Binary - İkilik sistem) belirlersiniz. Gerçekten "makine dilinde" kod yazmanın ne demek olduğunu burada anlıyorsunuz.

İnşa Süreci: Breadboard mı, PCB mi?

Eğer bu projeye yeni başlıyorsanız, devreyi bir Breadboard (Devre Tahtası) üzerinde kurmanızı öneririm. Hata yapma lüksünüz olur ve kabloların karmaşası içinde sinyalin nasıl aktığını izlemek harika bir deneyimdir. Ancak bağlantıların gevşemesi (Loose connection) gibi sorunlar canınızı sıkabilir. Daha kalıcı bir eser bırakmak isterseniz, bir PCB (Printed Circuit Board - Baskı Devre Kartı) tasarlamak veya hazır kitlerden faydalanmak daha mantıklı olacaktır.

İnşa ederken en çok dikkat etmeniz gereken şey, güç hattıdır. 74 serisi entegreler (özellikle LS serisi) güç dalgalanmalarına karşı hassastır. Her entegrenin yanına bir adet 0.1uF dekuplaj kondansatörü (Decoupling Capacitor) koymayı unutmayın. Bu, gürültüyü engelleyerek işlemcinizin "saçmalamasını" önleyecektir.

Sonuç: İlk LED'in Yanışı

Tüm bağlantıları bitirip güç düğmesine bastığınızda ve yazdığınız o basit "LED yakıp söndürme" programının çalıştığını gördüğünüzde hissettiğiniz duygu paha biçilemez. Modern yazılım geliştirme dünyasında her şey çok hızlı değişiyor; kütüphaneler, frameworkler, diller... Ama TD4 ile öğrendiğiniz o temel mantık (Fetch-Decode-Execute döngüsü) 50 yıl önce de aynıydı, 50 yıl sonra da aynı kalacak.

Eğer bilgisayar mühendisliğine veya elektroniğe ilginiz varsa, bir hafta sonunuzu bu projeye ayırın. Sadece bir işlemci değil, aynı zamanda teknolojiye olan bakış açınızı da inşa etmiş olacaksınız. Bir sonraki yazıda bu işlemci için nasıl basit bir derleyici (Compiler) yazarız, ondan bahsederiz belki. Şimdilik hoşça kalın!

Yorumlar (0)
Yorum Yap