interrupt etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
interrupt etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

28.9.10

Interrupt Çeşitleri, Kullanılma Alanları ve Farklı Mimarilerde Performansı

Kasım 2009 tarihinde hazırladığım bir araştırma ödevi:

Mikroişlemci tasarımı bilgisayarın ve işlemcinin performansını etkileyen önemli faktörlerden biridir. Mikroişlemci tasarımı konusunda çalışmalar devam etmektedir. Günün imkan ve ihtiyaçlarına göre çeşitli zamanlarda çeşitli mimariler öne çıkmıştır. Bunlar sınırlı donanımsal kaynaklardan maksimum faydayı elde etmek amacıyla geliştirilmişlerdir. Bu ödevde CISC RISC ve EPIC mimarilerinden kısaca bahsedilecek, bunlar arsındaki farklar ortaya konacak, interrupt performansları değerlendirilecek.




Şekil-1


Şekil-2

Interruptlar temelde ikiye ayrılır:
1. Mask Edilemeyen Interruptlar: bu tür interruptlar herhangi bir program tarafından engellenemez. Örneğin bilgisayar kasası üzerindeki reset tuşuna basıldığında bu interruptı hiçbir program engelleyemez. Bu tür interruptlara mask edilemeyen interruptlar denir.


  1. Mask Edilebilen Interruptlar: Programlarla manüple edilebilen interruptlardır.


Karmaşık komut setli bilgisayar (Complex instruction set computer) olarak açılır. İşlemcideki komutların tipi mimarinin isminden de anlaşılacağı üzere complexdir. Bu mimari hafızanın dar ve pahalı olduğu yıllarda ortaya çıkmıştır. Bu nedenle de hafızanın verimli kullanılması öncelikli olarak tasarımda etkisini göstermektedir. CISC mimarisinin bilgisayar endüstrisinde kullanılması RISC ve EPIC mimarilerinden eskidir. Hafıza elemanlarının kapasiteleri artıp fiyatları düştükçe CISC mimarisi yavaş yavaş gözden düşmüştür.



İndirgenmiş komut takımı bilgisayarı ( Reduced instruction set computer) anlamına gelir. CISC mimarisinden sonra ortaya çıkmıştır. Transistör sayısında bir artış gerçekleştirmeden, mimaride yapılan değişiklikle işlemcilerde performans artışı sağlanmıştır. RISC de hafıza CISC'e göre daha fazla kullanılır, ancak bu o kadar da büyük bir problem değildir. Çünkü RISC mimarisinin getirdiği performans artışı yanında hafıza kullanım artışı göze batmamaktadır. Hem hafıza elemanlarının fiyatı gelişen teknolojiyle düştüğünden bu bir sorun oluşturmaz. Bu mimaride daha az sayıda komut vardır. Daha az sayıda adresleme kipi içerir. Sabit uzunlukta komutlar kullanılır. Doğrudan bellek üzerinde işlem yapan komutlara sahip olmayıp, işlemler iç saklayıcılarda yapılır. Belleğe sadece okuma/yazma işlemleri için erişilir. Komutlar tek çevrimde alınıp yürütülür. RISC mimarisinde komutlar CISC mimarisine göre daha basit olduğundan daha hızlı bir yapı oluşturulmuştur.


EPIC (Explicitly Parallel Instruction Computing) belirtilmiş paralel komutlarla hesaplama anlamına gelir. CISC ve RISC mimarilerinden sonra ortaya çıkan ve onlardan daha başarılı bir mimaridir. İntel İtanium'un temelini EPIC mimarisi oluşturur. Bu mimari mikroişlemcilerde komutların paralel işletimini derleyiciye bırakmaktadır. Bu sayede mikroişlemci içerisinde karmaşık devrelere gerek kalmamaktadır. Bu da mikroişlemcinin performansını arttırmaktadır.

FARKLI MİMARİLERDE INTERRUPT PERFORMANSI

İşlemci performansını gelecekte artırmanın yolu işlemci içerisinde daha fazla paralel işlem yapılmasını sağlamak olacaktır. Bu konuya EPIC mimarisinin yaklaşımı, paralelliği koddan almak şeklindedir. Günümüzde performans artışı paralellikle sağlanmaktadır. Hangi mimari paralelliği daha fazla destekliyorsa daha fazla performans sağlamaktadır. Bu açıdan bakılacak olursa paralelliği en fazla destekleyen mimari EPIC mimarisidir. Bu mimari ile kodda programcı tarafından paralel yazılmayan yerler dahi paralel çalıştırılmaya çalışılmaktadır. Örneğin bir if bloğunu düşünelim. Bu kod paralel bir kod değildir. Ancak EPIC mimarisinde dallanmalar paralel olarak çalıştırılır ve programın nereden akacağına daha kısa bir sürede karar verilip oradan devam edilir.

Şekil-3

Şekil-4

İnterruptlar özellikle bilgisayarlarda birden fazla uygulama çalışıyorsa kullanılır. Yani multitasking ne kadar fazlaysa interrupt kullanımı da o kadar fazladır. Yukarıda bahsettiğimiz üç miamari içerisinde interrupt kullanımının ve performansının en fazla olduğu mimari EPIC mimarisidir. Dikkat edilirse EPIC mimarisinde aynı anda birden fazla işlem işlemci tarafından diğer mimarilere oranla daha fazla gerçekleştiriliyor. Ayrıca EPIC mimarisinde komutların paralel işletilmesi derleyici tarafından halledilmektedir. Komutların paralel işletilebilmesi için de interruptlar kullanılmaktadır. Motorola 680000 işlemcisi bir CISC mimarisine sahip işlemcidir. Bu işlemcide komutların paralel çalıştırılması ya da multitasking aşağıdaki şekilde de görüldüğü gibi karmaşık donanımsal elemalarla sağlanmaktadır.


Şekil-5

CISC mimarisi ise interrupt performansı açışından en geride olan mimaridir. Bu mimari ortaya çıktığı dönemdeki ihtiyaçların farklı olması ve teknolojinin hızla gelişmesiyle artık güncelliğini kaybetmiştir. Ortaya çıktığı dönemde birden fazla işlemin bilgisayarda aynı anda çalıştırılması bugünkü kadar önem taşımadığından interrupt performansı da RISC ve EPIC mimarilerine oranla geridedir. Ancak CISC mimarileri günümüzde tamamen gereksizdir diyemeyiz. Özellikle yoğun network trafiği yöneten işlemcilerde interruptlar sisteme yük olurlar, sistemi oyalarlar. Bu nedenle bu tarz işler CISC mimarisine sahip işlemcilerle halledilir. Hesaplama ağırlıklı alanlarda ve iş istasyonlarında ise RISC mimarili işlemcilerin kullanılması performans açısından daha sağlıklı olacaktır. EPIC mimarili işlemciler ise paralel çalışması durumunda performans artışı alınacak uygulama alanlarında çalıştırılmalıdırlar. Örneğin bir CAD uygulamasında EPIC mimarisi yerine RISC mimarisi kullanılırsa daha mantıklı bir seçim yapılmış olunur.

SONUÇ

Bu araştırma ödevinde CISC, RISC ve EPIC mimarileri incelendi, interrupt performansları değerlendirildi, bunun sonucunda hangi uygulamalarda hangi mimariye sahip işlemcilerin kullanılması gerektiği açıklandı. Mimarilerin ortaya çıkış tarihleri açısından ve performansları açısından bir sıralama yapıldı. Mimarinin performansta ne kadar etkin olduğu ortaya kondu. Ödev hazırlanırken interruptlar hakkında daha geniş bilgi edinildi, özellikle EPIC mimarisinin interrupt performansının nasıl daha yüksek olduğu ve bunun nasıl sağlanıldığı öğrenildi.

KAYNAKLAR

1-http://www.sltf.com/articles/pein/pein9505.htm
2-http://www.sgi.com/products/software/react/react_pro.html
3-http://www.internals.com/articles/protmode/interrupts.htm
4-http://www.pic24micro.com/cisc_vs_risc.html
5-http://www.ifp.illinois.edu/~jones/RISCvCISCvDSP.pdf
6-http://www.ddj.com/architect/184408418
7-http://www.cpushack.net/CPU/cpuAppendA.html






                                                                                                                              M.Ali      
Related Posts Plugin for WordPress, Blogger...