-->

Bilgisayar Organizasyonu ve Mimarisi - Mikromimariye Giriş: Tek Döngü

Posted by : at

Category : computerStudy   BOM   computer


Mikromimariye Giriş: Tek Döngü

Gözden geçirmek;

  • Günümüz Bilgisayar Mimarisi ve Temelleri
  • Temel Kavramlar
  • ISA temelleri ve değiş tokuşları
  • Talimat uzunluğu
  • Tek tip ve tek tip olmayan kod çözme
  • Kayıt sayısı
  • Adres modları
  • Hizalı ve hizasız erişim
  • RISC ve CISC özellikleri

Mikro mimari aşağıdakileri kapsayacaktır

  • Mikromimariye Başlayın
  • Tek çevrimli Mikro mimariler
  • Çok çevrimli Mikro mimariler
  • Mikroprogramlanmış Mikro Mimariler
  • Boru hattı döşeme
  • Ardışık Düzenlemede Sorunlar: Kontrol ve Veri
  • Bağımlılığı Yönetimi, Durum Bakımı ve Kurtarma

ISA’nın Uygulanması: Mikromimarinin Temelleri

Talimat İşleme “Döngüsü”

  • Talimatlar, adım adım bir “kontrol ünitesi” yönetimi altında işlenir.
  • Talimat döngüsü: Bir talimatı işlemek için adım dizisi
  • Temel olarak, altı aşama vardır:
  • Fetch
  • Kod çözme
  • Adresi Değerlendir
  • Fetch Operandları
  • Yürüt
  • Store Sonucu
  • Tüm talimatlar altı aşamanın hepsini gerektirmez

Bir Makine Talimatları Nasıl İşler?

  • Bir talimatın işlenmesi ne anlama gelir?
  • Von Neumann modelini hatırlayın AS = Bir talimat işlenmeden önce Mimari (programcı görünür) durumu İşlem talimatı AS ’= Mimari (programcı görünür) bir talimat işlendikten sonraki durum Talimatın ISA spesifikasyonuna göre “Bir talimatı işleme: AS’yi AS’ye dönüştürme”

Talimat İşleme “Döngüsü” - Makine Saat Döngüsü

  • Tek döngülü makine:
  • Komut işleme döngüsünün altı aşamasının tümü, tamamlamak için tek bir makine saat döngüsü alır
  • Çok çevrimli makine:
  • Komut işleme döngüsünün altı aşamasının tümü, tamamlanması için birden fazla makine saat döngüsü alabilir
  • Aslında, her aşamanın tamamlanması birden fazla saat döngüsü alabilir

Tek döngülü ve Çok Döngülü Makineler

  • Tek döngülü makineler
  • Her talimat tek bir saat döngüsü alır
  • Bir talimatın yürütülmesinin sonunda yapılan tüm durum güncellemeleri
  • Büyük dezavantaj: En yavaş talimat döngü süresini belirler
  • Uzun saat döngü süresini
  • Çok döngülü makineler
  • Birden çok döngüye / aşamaya bölünmüş talimat işleme
  • Bir komutun yürütülmesi sırasında durum güncellemeleri yapılabilir
  • Yalnızca bir talimatın yürütülmesinin sonunda yapılan mimari durum güncellemeleri
  • Tek döngüye göre avantaj: En yavaş “aşama”, döngü süresini belirler
  • Hem tek döngülü hem de çok döngülü makineler mikro mimari düzeyinde tam anlamıyla von Neumann modelini takip eder

Talimat İşleme Başka Bir Şekilde Görüntülendi

  • ‘Talimatlar Verileri (AS) Veriye (AS’) dönüştürür
  • Bu dönüşüm fonksiyonel birimler tarafından yapılır
  • Veriler üzerinde “çalışan” birimler
  • Bu birimlere verilere ne yapacaklarının söylenmesi gerekir
  • Bir komut işleme motoru iki bileşenden oluşur
  • Datapath: Veri sinyalleri ile ilgilenen ve bunları dönüştüren donanım öğelerinden oluşur
  • Veriler üzerinde çalışan işlevsel birimler İşlevsel birimlere ve kayıtlara veri akışını sağlayan donanım yapıları (ör. Teller ve çoklayıcılar)
  • Veri depolayan depolama birimleri (ör. Kayıtlar)
  • Kontrol mantığı: Kontrol sinyallerini, yani veri yolu öğelerinin verilere ne yapması gerektiğini belirten sinyalleri belirleyen donanım öğelerinden oluşur

Tek döngü ve Çok döngü: Kontrol ve Veriler

  • Tek döngülü makine:
  • Kontrol sinyalleri, veri sinyallerinin çalıştırıldığı aynı saat döngüsünde üretilir.
  • Bir komutla ilgili her şey bir saat döngüsünde gerçekleşir (serileştirilmiş işlem)
  • Çok çevrimli makine:
  • Bir sonraki döngüde ihtiyaç duyulan kontrol sinyalleri mevcut döngüde üretilebilir
  • Kontrol işlemenin gecikmesi, veri yolu işleminin gecikmesiyle örtüşebilir (daha fazla paralellik)

Flash-Forward: Performans Analizi

  • Bir talimatın uygulama süresi
  • {CPI} x {saat döngü süresi}
  • Bir programın yürütme süresi
  • Tüm talimatları toplayın [{CPI} x {saat döngü süresi}]
  • {# talimat} x {Ortalama CPI} x {saat döngüsü süresi}
  • Tek döngülü mikro mimari performansı
  • CPI = 1
  • Saat çevrim süresi = uzun
  • Çok döngülü mikro mimari performansı
  • CPI = her talimat için farklı
  • Ortalama CPI  umarım küçük
  • Saat çevrim süresi = kısa

Şimdi, bağımsız olarak optimize etmek için iki serbestlik derecemiz var

Tek Döngülü Mikro Mimari Daha Yakından Bir Bakış

Şimdilik Varsayacağız

  • “Magic” bellek ve kayıt dosyası
  • Kombinasyonel okuma Okunan veri portunun çıkışı, kayıt dosyası içeriklerinin ve karşılık gelen okuma seçme portunun kombinasyonel bir fonksiyonudur.
  • Eşzamanlı yazma
  • Yazma izni verildiğinde seçilen kayıt pozitif kenar saat geçişinde güncellenir
  • Saat kenarları arasındaki okuma çıktısını etkileyemez
  • Tek döngülü, eşzamanlı bellek
  • Verinin ne zaman hazır olduğunu söyleyen bellekle bunu karşılaştırın… Yani, Hazır bit: okuma veya yazma işleminin tamamlandığını gösterir

sipariş düzenleniyor

  • 5 genel adım (P&H kitabı)
  • Talimat getirme (IF)
  • Komut çözme ve kayıt operand getirme (ID / RF)
  • Yürütme / Bellek adresi oluşturma (EX / AG)
  • Hafıza operand getirme (MEM)
  • Kaydetme / geri yazma sonucu (WB)

Aritmetik ve Mantıksal Komutlar için Tek Döngülü Veri Yolu

R-Type ALU Talimatları

ALU Veri Yolu

R - Tipi Uygula

ALU Veri Yolu

R - Tipi Uygula

I-Type ALU Talimatları

  • Montaj (ör. Kayıt - hemen imzalanan eklemeler) Ex. ADDI rtreg rsreg immediate16

  • Machine encoding

Semantics

R ve I-Type ALU Insts için Veri Yolu.

Veri Taşıma Talimatları için Tek Döngülü Veri Yolu

Yükleme Talimatları

  • Assembly (e.g., load 4-byte word) LW rtreg offset16 (basereg)
  • Machine encoding

  • Semantics

if MEM[PC]==LW rt offset16 (base) EA = sign-extend(offset) + GPR[base] GPR[rt] <- MEM[ translate(EA) ] PC <- PC + 4

LW Veri Yolu

if MEM[PC]==LW rt offset16 (base) EA = sign-extend(offset) + GPR[base] GPR[rt] <- MEM[ translate(EA) ] PC <- PC + 4 ====» Combinational state update logic

LW uygula…


About Avni Kasikci

Hi, my name is Avni Kasikci.

Star