İçeriğe atla

Boru hattı (bilgisayar)

Boru hattı (İngilizce: Pipeline) yöntemi bilgisayar mimarisi ve diğer sayısal ürünlerin tasarımında başarımı artırmak için uygulanan bir yöntemdir. Komutları, boru hattı yöntemi ile işleyip daha kısa süre içinde bitmesini sağlar. Asıl amacı saat sıklığını artırarak başarımı artırmaktır. Farklı kaynakları aynı anda, farklı işler tarafından kullanarak çalışır.

Tek çekirdekli işlemcilerde,[1] bir komut bitince diğer komut çalışmaya başlar. Her saat vuruşunda bir komut girer, bir komut çıkar. Yani buyruk başına düşen çevrim sayısı 1'dir. Boru hattı yöntemi ise çoklu buyrukların örtüşmeli yürütümüdür. Birbirini bağlayan komutlar haricinde bir buyruğun işlemi gerçekleştirilirken diğer komut işleme girebilir. Günümüzde daha hızlı işlemci tasarımında kullanılan önemli bir yöntemdir. Boru hattı işlemcinin komut döngü süresini azaltır böylece birim döngü zamanına düşen komut sayısı artar. Boru hattında bütün aşamalardan geçmek gerekir. Tek bir komutun işini değil toplu komutların işlerini hızlandırır. Kısacası toplamda üretilen işi artırır. Olası hızlanma boru hattındaki aşama sayısına bağlı olarak değişir.

Boru hattı hızını etkileyen etkenler
  • Boru hattındaki aşama sayısı ne kadar fazlaysa boru hattı hızlanması o kadar yavaştır.
  • Boru hattındaki aşamaların uzunluğunun sabit veya değişken olması; sabit olursa daha hızlı, değişken olursa hızlanma süresi azalır.
  • Buyruk biçimleri ne kadar farklıysa hızlanma o kadar az olur.
  • Boru hattının dolma ve boşalma zamanları hızlanmayı etkiler. Dolma-boşalma süreleri ne kadar kısa olursa hızlanması o kadar artar.
  • Komutların bağımlılıklarına göre hızlanma yavaşlar. Komutlar arasındaki bağımlılık gecikme hızını artırır. Komut bağımlılıklarının az olması, gecikmeyi azaltır ve hızlanmayı artırır.
  • Boru hattında, en uzun olan aşamaya göre sınırlama yapılır.

Boru Hattı Kullanarak Yapılan Sistemin Avantajları

  1. İşlemcinin döngü zamanını azaltır, böylece komut genişliğini birçok durumda arttırır.
  2. Toplu komut işlemlerinde çevrim zamanı azalır. Bu durumda yürütme zamanı azaltılmış olur. Bu da başarımı artırır.
  3. Kullanılmayan kaynakların boş kalmasını engeller. Kaynakların verimli kullanılmasını sağlar.

Boru Hattı Kullanmadan Yapılan Sistemin Avantajları

  1. İşlemci tek bir komut zamanı yürütür. Çok bölümlülük hata ve problem kodları aynı zamanda işletilir. Sonuç olarak tasarım basitleşir ve ucuza mal olur.
  2. Boru hattı kullanılmayan bir sistemde komut gizliliği, kullanılan sisteme göre daha azdır. Tabi bunun olması için boru hattı kullanılan sisteme daha fazla flip-flop eklemek gereklidir.
  3. Boru hattı kullanılmamış bir sistemin sabit bir komut genişliği bulunur. Boru hattı kullanılan sistemin başarımını önceden bilmek çok güçtür ve farklı programlarda, farklı komut boylarında farklılık gösterebilir.

Boru Hattı İşlem Aşamaları

Birçok modern işlemci saat vuruşlarıyla yürütülür. İşlemciler mantık ve flip-floplardan oluşmaktadır. Saat vuruşu geldiğinde, flip-floplar yeni değerlerini alırlar sonra kodları çözüp yapmaları gereken şeyi yapmaları için belli bir süre gerekir. Bir sonraki saat vuruşu geldiğinde, flip-floplar tekrar kendi değerlerini alırlar ve bu böyle devam eder. Mantık yürütülmesini ufak bölümlere bölüp aralarına flip-floplar koyarsak, veri çıkışımızdaki gecikme azalmış olur. Saat vuruş zamanını azalma nedeni de budur. Boru hattı kullanımında komutlar arası aşama farklılıkları görülmektedir. Yükleme işlemlerinin 5, saklama işlemlerinin 4 dallanma işlemlerinin de 3 aşaması vardır.

  1. Getir: Buyruklar, buyruk belleklerinden getirilir.
  2. Oku/Çöz: İşlenenler okunur ve buyruk belleklerinden getirilen buyruklar çözülür.
  3. Yürüt: Bellek adresleri hesaplanır.
  4. Bellek: Veriler, veri belleklerinden okunur.
  5. Yaz: Elde edilen sonuçlar yazmaç öbeğine yazılır.

  • Yükleme işlemi aşamaları: Getir, oku/çöz, yürüt, bellek, yaz
  • Saklama işlemi aşamaları: Getir, oku/çöz, yürüt, bellek
  • Dallanma işlemi aşamaları: Getir, oku/çöz, yürüt (yazmaçlardan gelen işlenenler karşılaştırılır, dallanma tahmini yapılır ve program sayacı güncellenir.)
  • Yazmaç türü buyrukların aşamaları: Getir, oku/çöz, yürüt (Aritmetik Mantık Birimi, yazmaçlardan gelen işlenenler üzerinde işlem yapar ve program sayacını günceller), yaz (Aritmetik Mantık Birimi'nden çıkan sonuç yazmaç öbeğindeki yazmaca yazılır)

Boru Hattı Sorunları

Boru hattının dezavantajı, uygulanırken çeşitli sorunlara neden olmasıdır. Boru hattında 3 tip sorun vardır:

Yapı Sorunları

Boru hattı uygulamasında aynı kaynak aynı anda birden fazla değişik biçimde kullanılmaya çalışılırsa gerçekleşir. Başarımı sınırlarlar. Sorun bekleyerek çözülebilir.

Denetim Sorunları

Dallanma olan yerlerde, koşullar belli olmadan karar verilirse gerçekleşir. Dallanma kararı verilmeden önce yürütüm durdurulur ve karar belli olana kadar beklenir. Bir başka çözüm yolu da kararı tahmin edip ona göre işlemi devam ettirmek, eğer karar hatalıysa geri dönüp tekrar denemektir (Dallanma öngörüsü). Dallanma komutları geldiğinde işlemcinin nereye gideceğini bilmesi gerekir.

Veri Sorunları

Bir önceki işlemde henüz tamamlanmayan bir veri kullanılmak istenirse, veri sorunları gerçekleşir.

  • Bütün boru hattı sorunları, işlemin durdurulup beklenmesi ile çözümlenebilir.

Boru hattı uygulamasında her işlem birimi aynı aşamada sadece bir kere kullanılır (komut başına) ve her işlem birimi tüm komutlar için aynı aşamada kullanılmalıdır. Boru hattında yazmaç türü ve yükleme komutlarında çakışma ya da yapı sorunu olursa, mesela, iki ayrı komut yazmaç öbeğine aynı anda yazmaya çalışıyorsa (sadece bir tane yazmaç yolu vardır) boru hattına boşluk eklenebilir ya da sonucun yazılması bir çevrim geciktirilebilir. Boşluk konması hem karmaşıklık hem de veri açısından iyi bir yol değildir. Onun için genellikle bir çevrim geciktirme yoluna başvurulur. Geciktirilen işlem sırasında bir işlem yapılmaz.

Boru hattı kullanılarak yapılan işlemcilerde beş bağımsız birim vardır
  1. Buyrukları bellekten getirmek için – Buyruk Belleği
  2. Buyrukları okuyup/çözmek için – Yazmaç Öbeği'nin okuma yolları
  3. Buyrukların yürütülüp adres belleklerinin hesaplanması için – Aritmetik Mantık Birimi
  4. Verileri almak için – Veri Belleği
  5. Verileri yazmak için – Yazmaç Öbeği'nin yazma yolu

Örnekler

Örnek 1

İki sayının toplama kodu basit olarak ADD A, B, C, şeklindedir, yani bellekteki adreslerinden A'nın ve B'nin değerlerini bulup, toplar ve daha sonra C'nin bellekteki adresine bu sonucu ekler. Boru hattı kullanılan bir işlemcide, boru hattı kontrolcüsü bu işlemi şöyle ifade eder:

LOAD A, R1
LOAD B, R2
ADD R1, R2, R3
STORE R3, C
LOAD next instruction

Tablodaki R'ler yazmaçları göstermektedir, işlemcinin içindeki geçici bellekte tutulurlar, böylece çabuk erişim sağlanır. Sonuç basittir toplanıp bulunan sonuç C'nin adresinde tutulur, bu süre boru hattı kullanan ve kullanmayan sistemler için aynıdır.

Boru hattı yönteminin bu toplama komutu örneğindeki avantajı için “kısa yoldan yapılmış” olmasıdır. Burada bellekten veriyi alma görevi döngünündür ve uzun süre kullanımda olmayacağı için az kullanılan bölümde saklanır. Bu durumda boru hattı kontrolcüsü işine yarayacak olan bir sonraki bilgiyi bellekten alıp getirir ve yazmaçlarda tutar. Toplama komutu yerine getirildiği sırada gereken bir sonraki bilgi bellekten alınıp getirilmiş ve hazırda bekletiliyor olması gerekir. Burada programın başarımı büyük ölçüde artar çünkü işlemcinin bileşenleri boş kalmaz.

Bu küçük adımlar boru hattı adımı olarak adlandırılır, yukarıdaki örnekte boru hattı yönteminin 3 ana adımı vardır, bunlar; yükleyici, toplayıcı ve depolayıcıdır.

Günümüzde her mikroişlemci en az iki adımdan oluşan boru hattı kullanmaktadır (Atmel AVR ve PIC mikrokontrolör iki adımlı boru hattı içermektedir).

Örnek 2

Bu kavramı daha iyi görselleştirmek için kuramsal 3 aşamalı boru hattı incelenebilir;

StateDescription
Yükle Bellekten buyruğu okunması
YürütBuyruğun Yürütülmesi
Sakla Sonucun belleğe ya da yazmaca saklanması

Ve bunlarla aşağıdaki komutlar işletilebilir.

	LOAD  #40,A      ; load 40 in A
	MOVE  A,B        ; copy A in B
	ADD   #20,B      ; add 20 to B
	STORE B, 0x300   ; store B into memory cell 0x300

Aşağıda nasıl işlendiği gösterilmiştir.

1.Çevrim
YükleYürütSakla
LOAD  

Aşağıda bellekten komut okunması gösterilmiştir.

2.Çevrim
YükleYürütSakla
MOVELOAD 

Bellekten komut okutulması gerçekleşirken, yükleme komutu gerçekleşir.

3.Çevrim
YükleYürütSakla
ADDMOVELOAD

Depolama kısmında tutulan yükleme komutu (değeri 40) A yazmacında tutulur. Bu sırada hareket komutu işletilir. Hareket komutu, A'nın ve B'nin içerikleri işlemeye geçmeden önce yükleme komutunun işini bitirmesini beklemesi gerekmektedir.

4.Çevrim
YükleYürütSakla
STOREADDMOVE

Hareket komutunun işlemi bitip sayılar toplandıktan sonra saklama komutu işletilir. Ve bu işlem böyle devam eder. Bazen işletilen komut bir önceki komutun sonucuna bağlıdır. Eğer birden aynı adresi gösteren birden çok komut varsa ve bunların ikisi birden yazma ya da okuma komutuysa, normal program işleyişi sırasıyla yapılmasa risk meydana gelebilir. Böyle bir riskin gerçekleşmemesi için yapılan birçok teknik vardır.

Karışıklıkları

Birçok boru hattı tasarımı 7, 10, 31 bölümden oluşur (Intel Pentium 4 gibi). Xelerator X10q ise binlerce bölümden oluşan boru hattına sahiptir. Eğer işletilen program çok bölümden oluşursa, boru hattı kullanmak soruna yol açabilir, çok bölüm oluşundan dolayı çıkan bu sorunu ise "bölüm bildirici" (İngilizcebranch predicting) ile hafifletilebilir. Bölüm bildirici problemin kötüye gitmesini kendi engelleyebilir. Güncel uygulamalarda, programlar daha az bölümden oluşan komutlar yazarlar böylece uzun boru hatları program hızını artırmak için daha idealdir, bu boru hatları komuta göre döngü zamanı verirler. Çok bölümlülük sabitlendiğinde, Ofis programları gibi programlar, boru hattından kazanılan kazancı azaltırlar. Çök bölümlülükten dolayı işlemci bir sonraki bilginin adresinin nerede olduğunu bilemiyor ve işletilen komutunun bitmesini beklemesi gerekiyor. İşletilen komut bittiğinde boru hattı ile bir sonraki bilgi işlemciye iletilir ve işlemci yapması gereken şeyi yapar. Komut, boru hattı kullanılmasından dolayı işlemci yüklemeyi hemen gerçekleştiremez. Koddaki güncelleştirmeler şu andaki işletim yerini etkilemez çünkü işletim için zaten belli bir alan ayrılmıştır (İngilizcePrefetch Input Queue). Komut önbellekleri bu durumu daha kötü hala getirirler. Bu sadece "kendi programlanabilen" programlarla ilgilidir, işletim sistemi gibi.

Genel Kültür

İlk işlemci mikrokontrolörü (MOS Technology 6502) tek bölümlük komut boru hattı uygulamasından oluşurdu.

  • Boru Hattı Kullanan İşlemciler
  1. Pentium III: Pentium 3 ler 10 kademeli boru hattına sahiptir.
  2. Athlon: Athlon Thunderbird, pluto, thoroughbred, barton hepsi 10 kademeli boru hattına sahiptir.
  3. Athlon64: 12 kademeli boru hattına sahiptir.
  4. Pentium4 [2]: williamette, northwood 20 kademeli boru hattına sahiptir.
  5. Presscott: 31 kademeli boru hattına sahiptir.
  • Boru hattı ilk olarak FORD firmasında, Henry Ford tarafından kullanılmıştır. Eski zamanlarda bu kadar teknolojik araç/gereç olmadığı için günde 1 araba üretilmekteydi. Bu da hem üretimi hem de tüketimi sınırlıyordu. Henry Ford üretim bantlarını geliştirdi. Bu sayede her üretim bandında arabanın farklı bir kısmı yapılacaktı ve hem başarım artacak hem de işlem daha hızlı yürüyecekti. Örneğin; bantta karbüratör takılıyorsa diğer bantlarda tekerlekler, fren sistemi… vb. parçalar takılacaktı. Bir arabanın karbüratörü takılıp işi bitince diğer banda giderken, başka bir araba karbüratör takımına girecek şekilde sistem işlemiştir.

Kaynakça

  1. ^ "Tek vuruşlu işlemcilerde". 13 Eylül 2006 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Aralık 2007. 
  2. ^ "Arşivlenmiş kopya" (PDF). 3 Aralık 2008 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 20 Aralık 2007. 

İlgili Araştırma Makaleleri

Komut kümesi mimarisi, CPU'nun yazılım tarafından nasıl kontrol edileceğini tanımlayan bilgisayar soyut modelinin bir parçasıdır. ISA, işlemcinin ne yapabileceğini ve bunu nasıl yapacağını belirterek donanım ve yazılım arasında bir arayüz gibi davranır.

İşlemci önbelleği, CPU'nun hafızadaki verilere ulaşma süresini azaltan bir donanımdır. Ana belleğe(RAM) kıyasla küçük, hızlı ve işlemci çekirdeğine yakındır. Sık kullanılan veriler ya da en güncel veriler işlemci önbelleğinde saklanır. Günümüzde pek çok CPU, birden çok seviyede önbellek içerir, bu önbellekler verilerin yanı sıra komutları da bünyesinde tutar.

Dallanma Öngörüsü, bilgisayar mimarisinde çalıştırılacak programın buyruk kümesi içindeki dallanma buyruklarına gelindiğinde koşula göre atlanacağını ya da atlanmayacağını önceden varsayarak veya geçmişine bakıp tahmin ederek öngörüde bulunma işidir. Bugünkü işlemcilerin tasarımında boru hattı (bilgisayar) yöntemi kullanıldığı ve başarım hedeflerinin yüksek olduğu düşünüldüğünde bir dallanmada hangi yöne gidileceğini yüksek doğrulukta tahmin etmek kaçınılmaz olmuştur. Bu öngörü işlemciye dallanmanın sonucunu beklemeden diğer buyrukları işleme imkânı verir. Bu da zamandan kazanç anlamına gelir ki başarımı yükseltir. Bu arada da işlemcinin şimdiki buyruğun işlenmesi bitmeden sonraki buyruğun adresini bilmesi gerekir.

<span class="mw-page-title-main">Merkezî işlem birimi tasarımı</span>

Merkezî işlem birimi tasarımı bilgisayarın temel bileşenlerinden birisi olan Merkezî işlem birimini (MİB) etkin kullanmayı yönelik bir tasarımdır. MİB bilgisayar donanımının temel bileşenlerinden birisidir. İşlemcisi olmayan bir bilgisayar düşünülemez. Bu yüzden işlemcinin tasarımı ne kadar iyi olursa sistem de o derece hızlı olacaktır. İşlemciyi hızlandırmanın değişik yolları vardır. Bunlardan bazıları:

  1. Buyrukların paralel çalışmasını sağlamak
  2. Çok vuruşluk işlemciler kullanmak
  3. Boru hattı kullanmak
  4. Çoklu işleme kullanmak

Veri sorunları, bir önceki işlemde henüz tamamlanmayan bir veri kullanılmak istenirse oluşmaktadır. Tam başarımda çalıştırabilmek için, boru hattının ilk komut yürütülürken sonradan gelen 4 bağımsız komutu da çalıştırmaya başlaması gerekmektedir. Eğer bu 4 komutun, ilk komutun çıkışıyla alakası yoksa bu bağımlılık durumu ortadan kalkıncaya kadar boru hattının mantık kontrol birimi araya bir kesme ya da bekletme sokmalıdır. Yürütmeyi ilerletmek gibi teknikler, programı durdurmak gibi olası durumları önemli ölçüde azaltırlar. Boru hattı kullanılan sistem, kullanılmayan sisteme göre daha hızlı olmasına karşın, birçok program kodu normal işletim hızını değiştirmeye izin vermemektedir. İşlemin gerçekleştirilmesi için bir önceki işlem tamamlanmalı, bir sonraki işlem geciktirilmeli veya "yönlendirme" yapılmalıdır. Veri sorunu yükleme komutlarında da karşımıza çıkabilir. Eğer yükleme komutundan sonra gelen bir başka komut, yüklemenin yapılacağı yazmacı kullanmak isterse veri sorunu oluşur ve yüklemeden sonra gelen komutu durdurmamız gerekir. Bunun için de ayrı bir denetim birimi gerekir. Bunun dışında boru hattını, bir komutu sonraki aşamaya geçirmeyerek tıkayabiliriz.

Yazmaçların yeniden adlandırılması, işlemcilerde, yürütülen buyruklardaki, aynı yazmaçların tekrar kullanımından doğan sahte bağımlılıkları gidermek için kullanılan bir yöntemdir.

<span class="mw-page-title-main">Itanium işlemcisi</span>

Itanium işlemcisi, Intel firmasının 64-bit işlemci ailesinden olup IA-64 mimarisi kullanan işlemcilerinin devamı olarak bilinir. Itanium ve Itanium2 olarak sunulan bu işlemci ilk olarak Ekim 2001'de piyasaya sürülmüştür. Itanium işlemcilerin asıl hedefi yüksek performansa sahip bilgisayarlardı. Bu işlemcinin mimarisinin gelişimi ilk olarak Hewlett-Packard tarafından yapılmıştır ve devamında ise Intel ve Hewlett-Packard ortak olarak birlikte gerçek Itanium mimarisini geliştirmişlerdir.

Mikroişlemcilerde kural dışı durumlar, programların çalıştırılması esnasında verilen komutlar neticesinde oluşan hatalardır. Bu hatalar nedeniyle program istenilen şekilde çalışmaz. Hatta işlemcinin kilitlenmesine bile sebep olabilir. Bu tür durumlar normal bir işleyiş olmadığından kural dışı durum oluşturur.

Sırasız yürütüm ya da Düzensiz yürütme, bilgisayar mühendisliğinde, günümüz yüksek performanslı işlemcilerinde kullanılan, yüksek gecikmeler sebebiyle harcanan işlemci döngülerini kullanıma sunan bir talimat yürütme yaklaşımıdır.

<span class="mw-page-title-main">Yazmaç öbeği</span>

Yazmaç öbeği, bir merkezi işlem birimindeki işlemci yazmaçlarının bir dizisini ifade etmektedir. Modern tümleşik devre tabanlı yazmaç öbekleri genellikle çok portlu hızlı durağan rastgele erişimli bellekleri (SRAM) kullanılarak sistemlere tümleştirilmektedirler. Bu tür rastgele erişimli bellekleri kullandıkları okuma ve yazma girişlerine göre ayrılır, fakat normal çok portlu durağan rastgele erişimli bellekler okuma ve yazma işlemlerini aynı girişleri kullanarak gerçekleştirebilmektedirler.

<span class="mw-page-title-main">Çoklu kullanım</span>

Çoklu kullanım özelliğine sahip bilgisayarlar birden fazla iş parçacığını donanım desteği sayesinde çalıştırabilir. Çoklu işlem yapabilen sistemlerden gelişen bu yöntem tek bir çekirdeğin kaynaklarını paylaşmak zorundadır. Bu kaynaklar: aritmetik mantık birimi, yazmaçlar (registers), işlemci ön belleği ve adres dönüştürme ön belleğidir. Çoklu işlem yapabilen sistemlerde, işlem birimlerinin tamamı ayrı çekirdeklerde olmasına rağmen, çoklu kullanım tek bir çekirdeğin kullanılabilirliğini iş-parçacığı seviyesinde ve buyruk düzeyinde daha verimli hale getirir. Bu iki teknik birbirini tamamlayan tekniklerdir.

<span class="mw-page-title-main">Alpha 21064</span>

Alpha 21064, Alpha(Alpha APX olarak ortaya çıkan) buyruk kümesi mimarisini(ISA) oluşturan Digital Equipment Corporation tarafından geliştirilmiş bir mikroişlemcidir. 1994 yılında ismi değiştirilmeden önce DECchip 21064 olarak bilinirdi.Ayrıca EV4 kod adıyla da bilinmektedir. 1992 şubat ayında tanıtılmış ve aynı yıl eylül ayında yeni sürüm olanağı sağlanmıştır.21064, ilk ticari Alpha ISA uygulamasıdır. Ayrıca Ekim 1993'te, 21064'ten türeyen Alpha 21064A ticari amaçla kullanılan ilk mikroişlemci olmuştur.

Çok uzun buyruk kelimesi, buyruk düzeyindeki paralelliğin avantajından yararlanmak için geliştirilmiş bir işlemci tasarımıdır. Her buyruğu arka arkaya çalıştıran işlemciler, işlemci kaynaklarını verimsiz bir şekilde kullanabilmekte ve bu durum da başarımın düşmesine neden olmaktadır. Başarım, sıralı çalışan buyrukların çalıştırılma basamaklarında farklı aşamalarda olmasıyla veya aynı anda birden fazla buyruğun birbirinden bağımsız olarak çalıştırılmasıyla arttırılabilir. Bu yöntemlerin daha da iyileştirilmesi, buyrukların programdaki sırasından farklı bir sırada çalıştırılması ile sağlanabilir; bu yönteme de Sırasız yürütüm denir.

<span class="mw-page-title-main">Alpha 21164</span>

Alpha 21164, aynı zamanda Alpha buyruk kümesi mimarisini geliştirmiş olan Digital Equipment Corporation tarafından geliştirilmiş, EV5 kod adıyla da bilinen bir mikroişlemcidir. Alpha 21164 Digital'in en çok satışı yapılan mikroişlemcisi Alpha 21064A'yı takiben 1995 yılı Ocak ayında tanıtılmıştır. Onu 1998 yılında 21264 izleyecektir.

<span class="mw-page-title-main">Alpha 21264</span>

Alpha 21264 1996 yılı Ekim ayında Digital Equipment Corporation tarafından indirgenmiş komut takımı bilgisayarı(RISC) mikroişlemcisi olarak tanıtılmıştır. 21264 Alfa işlemcisi Komut kümesi ile tanımlanmıştır.

Önden yürütüm işlemcinin ön bellekte bulamama durumunda boşa harcayacağı çevrimlerin beklemekte olan buyrukların önceden yürütülmesi ile faydalı şekilde kullanılması esasına dayalı bir bilgisayar mimarisi tekniğidir. Bu şekilde önceden yürütülecek olan buyruklar ile gelecekte oluşacak olan önbellekte bulamama durumları tespit edilerek, işlemcinin boşta olan yürütüm kaynakları kullanılarak faydalı buyruk ve veri ön yüklemeleri yapılması sağlanır.

NetBurst, İntel'in 2000 yılında piyasaya sürdüğü Pentium 4 işlemci markasının mikromimarisine verilen isimdir. 2006 Temmuz'unda Core mikromimarisinin çıkışına kadar İntel işlemcilerin mikromimarisi olmuştur. Selefi P6 mikromimarisine göre en önemli özelliği derin boru hattı yapılanmasıyla avantaj sağladığı yüksek saat sıklığıdır. Temel olarak dört ana parçadan oluşmaktadır: Sıralı(ing. In-order) Ön-Uç(ing. Front-end), Sırasız(ing. out-of-order) yürütme birimi, Tam sayı ve kayan nokta yürütme birimleri ve bellek altdizgesi.

<span class="mw-page-title-main">Nehalem (mikromimari)</span>

Nehalem, İntel firmasının Eylül 2008'de piyasaya sürülen Core i7 işlemcisiyle birlikte kullanılmaya başlanmıştır. 2011'de Sandy Bridge mikromimarisi sunulana kadar İntel'in en gelişmiş mikromimarisi olarak piyasada kalmıştır. Selefi Core mikromimarisine göre paralelliği ve saat frekansını arttırmış, Core mikromimarisinde İntel'in kullanmadığı fakat daha önce NetBurst'de kullanılan Hyper Threading teknolojisi Nehalem ile tekrar kullanılmaya başlamıştır. Nehalem'le birlikte Core mikromimarisinde terkedilmiş olan üçüncü seivye bir önbellek de yonganın içerisine eklenmiştir. İntel, Nehalem ile ilk defa bellek denetim birimini işlemci yongasının içine koymuş ve front-side bus dan ayırmıştır.

<span class="mw-page-title-main">Komut seviyesi paralellik</span>

Komutlar arasındaki potansiyel örtüşmeye komut seviyesinde paralellik denir. Yazılım ve donanımda gerçekleştirilebilir. Yazılımda yapılan teknikler sabit iken donanımda yapılan teknikler dinamik parallelik sağlar.

Dijital elektronikte, özellikle bilgi işlemde, donanım yazmaçları genellikle belleğe benzer birçok özelliğe sahip, genellikle flip floplardan oluşan devrelerdir, örneğin: