Ardışık Düzen: Mimari, Avantajlar ve Dezavantajlar

Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin





Programın yürütme hızının arttırılması sonuç olarak işlemci. Yürütme hızını artırmak için hem donanım uygulaması hem de Yazılım mimarisi gibi birçok icat yolu vardır. Komutların aynı anda yürütülmesi ile yürütme için gerekli sürenin azaltılabileceği görülmüştür. Paralellik kavramı programlama önerildi. Buna göre, saat döngüsü başına birden fazla komut yürütülebilir. Bu kavram, bir programcı tarafından aşağıdaki gibi çeşitli tekniklerle uygulanabilir: Ardışık düzen, Çoklu yürütme birimleri ve birden çok çekirdek . Tüm bu paralellik yöntemleri arasında, boru hattı en yaygın şekilde uygulanmaktadır. Öyleyse, ardışık düzen yönteminde bir talimat nasıl yürütülebilir? Uygulama hızını nasıl arttırır?

Pipelining nedir?

Ardışık düzen kavramını kavramak için, programın nasıl yürütüldüğünün kök düzeyine bakalım. Talimat, bir programın en küçük yürütme paketidir. Her komut bir veya daha fazla işlem içerir. Basit skaler işlemciler saat döngüsü başına bir veya daha fazla komut yürütür ve her komut yalnızca bir işlem içerir. Komutlar, beklenen sonuçları elde etmek için bir dizi aşamada yürütülür. Bu sıra aşağıda verilmiştir




Komut Yürütme Sırası

Komut Yürütme Sırası

  • IF: Talimatı talimat yazmacına getirir.
  • ID: Instruction Decode, işlem kodu için talimatın kodunu çözer.
  • AG: Address Generator, adresi üretir.
  • DF: Veri Getirme, işlenenleri veri kaydına getirir.
  • EX: Yürütme, belirtilen işlemi yürütür.
  • WB: Geri yazın, sonucu şuraya yazar: kayıt.

Tüm talimatlar yukarıdaki adımların tümünü gerektirmez, ancak çoğu gerektirir. Bu adımlar, farklı donanım işlevlerini kullanır. Boru hattında bu farklı aşamalar eşzamanlı olarak gerçekleştirilir. Ardışık düzende bu aşamalar farklı işlemler arasında bağımsız olarak kabul edilir ve örtüşebilir. Böylelikle, her işlem kendi bağımsız fazında olmak üzere birden fazla işlem aynı anda gerçekleştirilebilir.



Talimat Ardışık Düzenlemesi

Şimdi boru hattında talimatların nasıl işlendiğine bakalım. Bu, aşağıdaki şema ile kolayca anlaşılabilir.

Talimat Ardışık Düzenlemesi

Talimat Ardışık Düzenlemesi

Talimatların bağımsız olduğunu varsayın. Basit ardışık düzen işlemcisinde, belirli bir zamanda, her aşamada yalnızca bir işlem vardır. İlk aşama, IF aşamasıdır. Böylece ilk saat döngüsünde bir işlem getirilir. Bir sonraki saat darbesi geldiğinde, ilk işlem, IF fazını boş bırakarak ID aşamasına geçer. Şimdi, bu boş aşama bir sonraki operasyona tahsis edilmiştir. Bu nedenle, ikinci saat darbesi sırasında ilk işlem İD aşamasında ve ikinci işlem IF aşamasındadır.

Üçüncü döngü için ilk işlem AG aşamasında, ikinci işlem ID aşamasında ve üçüncü işlem IF aşamasında olacaktır. Bu şekilde, komutlar eşzamanlı olarak yürütülür ve altı döngüden sonra işlemci saat döngüsü başına tamamen yürütülen bir komut çıkarır.


Bu komut sıralı olarak mı yürütüldü, başlangıçta ilk komutun tüm aşamalardan geçmesi gerekiyor, sonra bir sonraki komut getirilecek mi? Dolayısıyla, her komutun yürütülmesi için işlemci altı saat döngüsüne ihtiyaç duyacaktır. Ancak, ardışık düzenlenmiş bir işlemcide, komutların yürütülmesi eşzamanlı olarak gerçekleştiğinden, yalnızca ilk talimat altı döngü gerektirir ve kalan tüm komutlar, her döngüde bir tane olarak yürütülür, böylece yürütme süresi azalır ve işlemcinin hızı artar.

Boru Hattı Mimarisi

Donanım, Derleyici ve yazılım teknikleriyle paralellik sağlanabilir. Boru hattı kavramından yararlanmak için bilgisayar Mimarisi birçok işlemci birimi birbirine bağlıdır ve eşzamanlı olarak çalışır. Ardışık düzenlenmiş işlemci mimarisinde, tamsayılar ve kayan nokta talimatları için sağlanan ayrı işlem birimleri vardır. Sıralı mimaride ise tek bir işlevsel birim sağlanır.

Boru Hatlı İşlemci Birimi

Boru Hatlı İşlemci Birimi

Statik boru hattında, işlemci, talimat gerekliliğine bakılmaksızın, talimatı boru hattının tüm aşamalarından geçirmelidir. Dinamik bir ardışık düzen işlemcisinde, bir talimat, gereksinimine bağlı olarak aşamaları atlayabilir ancak sıralı sırada hareket etmesi gerekir. Karmaşık bir dinamik ardışık düzen işlemcisinde, talimat aşamaları atlayabilir ve sıra dışı aşamaları seçebilir.

RISC İşlemcilerinde Ardışık Düzen

En popüler RISC mimarisi ARM işlemcisi, 3 aşamalı ve 5 aşamalı boru hattını takip eder. 3 aşamalı ardışık düzenlemede aşamalar şunlardır: Getirme, Kod Çözme ve Yürütme. Bu ardışık düzen, 3 döngü gecikmesine sahiptir, çünkü tek bir talimatın tamamlanması 3 saat döngüsü alır.

ARM 3 aşamalı Boru Hattı İşleme

ARM 3 aşamalı Boru Hattı İşleme

Doğru boru hattı uygulaması için Donanım mimarisi de yükseltilmelidir. 3 aşamalı boru hattı donanımı, bir kayıt bankası, ALU, Varil değiştirici, Adres üreteci, artırıcı, Yönerge kod çözücü ve veri kayıtlarını içerir.

ARM 3 Aşamalı Ardışık Düzen Veri Yolu

ARM 3 Aşamalı Ardışık Düzen Veri Yolu

5 aşamada ardışık düzen aşamaları şunlardır: Getirme, Kod Çözme, Yürütme, Tampon / veri ve Geri Yazma.

Boru Hatlarıyla İlgili Tehlikeler

Tipik bir bilgisayar programında basit talimatların yanı sıra, dal komutları, kesme işlemleri, okuma ve yazma komutları da vardır. Boru hattı döşeme her türlü talimat için uygun değildir. Ardışık düzende bazı talimatlar yürütüldüğünde, boru hattını durdurabilir veya tamamen temizleyebilirler. Boru hattı oluşturma sırasında ortaya çıkan bu tür sorunlara Boru Hattı Tehlikeleri adı verilir.

Bilgisayar programlarının çoğunda, bir komutun sonucu, diğer komut tarafından işlenen olarak kullanılır. Bu tür komutlar ardışık düzen içinde yürütüldüğünde, iki komut işlenenleri toplamaya başladığında ilk komutun sonucu mevcut olmadığından arıza oluşur. Bu nedenle, ikinci talimat birinci talimat yürütülene ve sonuç üretilene kadar durmalıdır. Bu tür bir tehlikeye Okuma - yazma sonrası boru hattı oluşturma tehlikesi denir.

Ardışık Düzen Oluşturma Tehlikesini Yazdıktan Sonra Okuyun

Ardışık Düzen Oluşturma Tehlikesini Yazdıktan Sonra Okuyun

Branşman talimatlarının yürütülmesi de bir boru hattı tehlikesine neden olur. Yürütülürken dal talimatları boru hattında sonraki talimatların getirme aşamalarını etkiler.

Ardışık Düzenli Dal Davranışı

Ardışık Düzenli Dal Davranışı

Boru Hattının Avantajları

  • Öğretim verimi artar.
  • Ardışık düzen aşamalarının sayısındaki artış, aynı anda yürütülen komutların sayısını artırır.
  • Daha hızlı ALU, boru hattı kullanıldığında tasarlanabilir.
  • Ardışık CPU'lar, RAM'den daha yüksek saat frekanslarında çalışır.
  • Ardışık düzen, CPU'nun genel performansını artırır.

Ardışık Düzenlemenin Dezavantajları

  • Ardışık düzenlenmiş işlemcinin tasarımı karmaşıktır.
  • Ardışık düzenlenmiş işlemcilerde komut gecikmesi artar.
  • Ardışık düzenlenmiş bir işlemcinin verimini tahmin etmek zordur.
  • Boru hattı ne kadar uzunsa, dal talimatları için tehlike sorunu daha da kötüleşir.

Ardışık düzen, yürütme için benzer bir adım dizisini izleyen tüm talimatlara fayda sağlar. Her komutun diğerinden farklı davrandığı karmaşık komutlara sahip işlemcilerin ardışık düzenlenmesi zordur. İşlemciler, boru hattının 3 veya 5 aşamalı makul donanımlarına sahiptir, çünkü boru hattının derinliği arttıkça bununla ilgili tehlikeler de artar. Bazı ardışık düzen işlemcileri ardışık düzen aşamalarıyla adlandırın?