BİLGİSAYAR MİMARİLERİ 2.Hafta: Bilgisayar Bileşenleri Doç.Dr. Ahmet ÖZMEN Sakarya Üniversitesi Bilgisayar Mühendisliği Bölümü
Ders Planı Bilgisayar Organizasyonu Merkezi İşlem Birimi (CPU: Central Processing Unit) Komut kümesi mimarisi ve gerçekleme Kombinezonsal devreler (ALU, çoğullayıcı, kod çözücü vs.) Saklayıcılar, Kontrol lojiği Bellek Giriş/Çıkış Veri yolu (bus)
Bilgisayar Organizasyonu Temel Bileşenler: Merkezi işlem birimi (CPU), Bellek birimi, Giriş/Çıkış arabirimi, Adres/veri yolları (bus)
Merkezi İşlem Birimi (CPU) ISA gerçekleme: Yapısal: Alt birimlerin nasıl bağlı olduğu ile ilgili (statik) Davranışsal: Verinin alt birimler arasında nasıl aktığı ile ilgili (dinamik)
Merkezi İşlem Birimi (CPU) CPU içindeki donanımsal unsurlar: Kombinezonsal: Çoğullayıcı, kod çözücü, kodlayıcı, ALU vs. Ardışıl lojik devre elemanları: Flip-flop, saklayıcı, SRAM, DRAM vs.
Merkezi İşlem Birimi (CPU) Küme saklayıcılar (Register file): Okumayla ilgili zamanlama sıkıntısı yok, Çok fazla okuma portu olan saklayıcı kümesi olşturmak çok zor Intel Intanium’da 128 GPR (genel amaçlı saklayıcı) , 8 okuma ve 4 yazma portu var!
Bellek Basit bir bellek modeli: Okuma ve yazma daima 1 saat çevriminde gerçeklenir. Okuma herhangi bir anda oluşabilir (kombinezonsal). Yazma ise saatin yükselen kenarında olur. İzin verilmişse; yazma anında adres ve veri sabit (stable) olmalı.
Örnek: MIPS 32 ISA İşlemci: Veri tipleri: Load/Store türü komutlar: 32 adet 32 bit GPR, R0 daima 0 (sıfır), 16 double-precision 32 single-precision FPR Program sayacı (PC) , durum saklayıcısı (SR) ve bazı özel saklayıcılar, Veri tipleri: 8-bit (byte), 16-bit (half word) 32 bit-word tamsayılar için, 32-bit word single precision reel sayılar için, 64 bir double-word precision reel sayılar için, Load/Store türü komutlar: Veri adresleme modları: ivedi (immediate) ve sıralı (indexed), Dallanma adresleme modları: PC-bağıl ve dolaylı (register indirect) Byte adreslenebilir bellek, big-endian mode Tüm komutlar 32 bit
MIPS Komut Biçimleri
Komut İcra Evreleri Komut icrası aşağıdaki evreleri içerir: Bellekten komut çekilmesi (instruction fetch), Komut çözümleme ve saklayıcı belirleme (instr. decode & register fetch), ALU işlemi, Bellek işlemi (bazen gerekmeyebilir), Sonuç yazma (write back). ve bir sonraki komutun adresinin hesaplanması.
Saklayıcı-Saklayıcı ALU İşlemleri
Saklayıcı-İvedi Veri ALU İşlemleri
Her İki Durumda Çakışan Yerler
ALU İşlemleri için Data Path
Load/Store Komutları
MIPS Kontrol Komutları Koşullu bağıl dallanma (PC-Relative) Koşulsuz bağıl dallanma (saklayıcı dolaylı dallanma) Koşulsuz mutlak dallanma Bağıl dallanma: Yeni adres = offsetX4 + PC +4 (Range +-128 Mbyte) Mutlak dallanma: Yeni adres = targetX4, PC<31:28>’e ilave edilir (append). (Range: 256 Mbyte) Jump &link komutlarında PC+4, R31’e saklanır (link saklayıcısı)
Koşullu Dallanma (BEQZ, BNEZ)
Saklayıcı-Dolaylı Dallanma (JR)
Jump & Link (JALR)
Mutlak Dallanma (J, JAL)
MIPS için Harvard Biçimi Data Path
Giriş/Çıkış ile İlgili Konular Genel veri iletişim:: Veri yolları (bus) İşlemci ile diğer birimler arası iletişim metodları: Kesmeler Bellek adreslemeli giriş/çıkış Giriş/çıkış kontrol yapıları: Polling, DMA, Giriş/çıkış kontrolörleri, Giriş/çıkış işlemcileri, Kapasite, erişim süresi, band genişliği, fiyat
Veri Yolları (BUS) Bus: Alt birimler tarafından paylaşılan iletişim hattı. Fiziksel yapısı: Paralel olarak döşenmiş iletkenler Avantajları: Ucuz, Çok çeşitli olarak yapılabilir, Dezavantajları: Elektriksel problemler: Hat boyu kısa olmalı, Kare dalga bozulması (bus skew), Dispersion (dağılım), Cross-talk (hatlar arası etkileşim), Organizasyon: Kontrol hatları için kullanılabilir (request ve acknowledge), Veri hatları için kullanılabilir (veri ve adres hatları)
BUS türleri Arka plan bus’lar: Giriş/çıkış bus: İşlemci bellek ve giriş/çıkış aygıtı aynı hatta, Örnek bus türleri: VMEbus, multibus, NuBus, PCI, ISA (Industry Standard Architecture) bus, Giriş/çıkış bus: Örnekler: IDE, SCSI
Sadece Arka-Plan Bus ile Giriş/Çıkış
Giriş/Çıkış Bus kullanan bir sistem