Azaltılmış komut seti bilgisayarı - Reduced instruction set computer

Bir Sun UltraSPARC , bir RISC mikroişlemcisi

Bir azaltılmış talimat kurma bilgisayar veya RISC ( / r ɪ s k / ), küçük, yüksek derecede optimize edilmiş olan bir bilgisayar talimat setinde çok sık bir olarak mimarisinin diğer türleri, bulunan başka özel grubu, daha karmaşık bir talimat bilgisayarı (CISC) ayarlayın. RISC mimarisinin ana ayırt edici özelliği, talimat setinin çok sayıda yazmaç ve oldukça düzenli bir talimat boru hattı ile optimize edilmesidir, bu da talimat başına düşük sayıda saat döngüsüne (CPI) izin verir . Bir RISC felsefesinin temel özellikleri, belleğe, setteki çoğu talimatın bir parçası olarak değil, belirli talimatlar aracılığıyla erişilen ve yalnızca tek döngülü talimatlar gerektiren bir yükleme/depolama mimarisidir .

1960'lar ve 1970'lerden bir dizi bilgisayar RISC'lerin öncüleri olarak tanımlanmış olsa da, modern konsept 1980'lere kadar uzanmaktadır. Özellikle, Stanford Üniversitesi ve California Üniversitesi, Berkeley'deki iki proje, bu kavramın popülerleşmesiyle en çok ilişkili olanlardır. Stanford'un MIPS'si başarılı MIPS mimarisi olarak ticarileştirilmeye devam edecekken , Berkeley'in RISC'si tüm konsepte adını verdi ve SPARC olarak ticarileştirildi . Bu çağın bir başka başarısı da, IBM'in , sonunda IBM POWER komut seti mimarisine , PowerPC'ye ve Power ISA'ya yol açan çabasıydı . Bu projeler olgunlaştıkça, 1980'lerin sonlarında ve özellikle 1990'ların başında, Unix iş istasyonu pazarında ve lazer yazıcılardaki , yönlendiricilerdeki ve benzer ürünlerdeki gömülü işlemciler için büyük bir gücü temsil eden çeşitli benzer tasarımlar gelişti .

RISC tasarımlarının birçok çeşidi arasında ARC , Alpha , Am29000 , ARM , Atmel AVR , Blackfin , i860 , i960 , M88000 , MIPS , PA-RISC , Power ISA ( PowerPC dahil ), RISC-V , SuperH ve SPARC bulunmaktadır . Kullanımı ARM mimarisi içinde işlemciler akıllı telefonlar ve tablet bilgisayarlar gibi iPad ve Android cihazlar RISC tabanlı sistemler için geniş bir kullanıcı tabanına sağladı. RISC işlemciler, Haziran 2020 itibariyle dünyanın en hızlı süper bilgisayarı olan Fugaku gibi süper bilgisayarlarda da kullanılıyor .

Tarih ve gelişim

Alan Turing'in 1946 Otomatik Hesaplama Motoru (ACE) tasarımı, bir RISC mimarisinin birçok özelliğine sahipti. 1960'lara kadar giden bir dizi sistem, kısmen onların yükleme/depolama yaklaşımına dayalı olarak ilk RISC mimarisi olarak kabul edildi . RISC terimi , daha önce benzer kavramlar ortaya çıkmış olmasına rağmen , Berkeley RISC projesinden David Patterson tarafından yapılmıştır .

CDC 6600 tarafından tasarlanan Seymour Cray 1964'te kullanılan yükleme / depolama mimarisi , sadece iki ile ele modları temel saat çevrimi hızlı bellek erişim süresi 10 kat olmak üzere, (+ kayıt, kayıt ve + hemen sabit kayıt) ve 74 işlem kodları . Kısmen CDC 6600'ün optimize edilmiş yük/depolama mimarisi nedeniyle Jack Dongarra , modern bir RISC sisteminin geliştirilmesi için bir dizi başka teknik engelin aşılması gerekmesine rağmen, modern RISC sistemlerinin öncüsü olarak kabul edilebileceğini söylüyor.

IBM 801

Bir IBM PowerPC 601 RISC mikroişlemci

Michael J. Flynn , ilk RISC sistemini , 1975'te John Cocke tarafından başlatılan ve 1980'de tamamlanan IBM 801 tasarımı olarak görüyor. dijital telefon anahtarı . Saniyede 300 çağrı (saatte 1 milyon) anahtarlama hedeflerine ulaşmak için, o zamanın en hızlı ana bilgisayar makineleri olan 3,5 MIPS'de performans gösteren 370/168 ile karşılaştırıldığında CPU'nun 12 MIPS düzeyinde performans gerektirdiğini hesapladılar .

Tasarım, IBM'in mevcut platformlarına ilişkin kapsamlı istatistik koleksiyonunun bir çalışmasına dayanıyordu. Bunlar, yüksek performanslı ayarlardaki kodun, yazmaçları kapsamlı bir şekilde kullandığını ve çoğu zaman bunların tükendiğini gösterdi. Bu, ek kayıtların performansı daha da artıracağını öne sürdü. Ek olarak, derleyicilerin genellikle mevcut talimatların büyük çoğunluğunu, özellikle de ortogonal adresleme modlarını görmezden geldiğini fark ettiler . Bunun yerine, verilen herhangi bir talimatın en hızlı versiyonunu seçtiler ve ardından onu kullanarak küçük rutinler oluşturdular. Bu, talimatların çoğunun, sonuçtaki kodu etkilemeden kaldırılabileceğini gösterdi. Bu iki sonuç uyum içinde çalıştı; talimatların kaldırılması, talimat kodlarının daha kısa olmasına izin verecek ve daha sonra daha büyük bir kayıt kümesi arasından seçim yapmak için kullanılabilecek talimattaki bitleri serbest bırakacaktır.

Telefon değiştirme programı 1975'te iptal edildi, ancak o zamana kadar ekip, aynı tasarımın hemen hemen tüm kodlarda önemli performans kazanımları sağlayacağını göstermişti. Simülasyonlarda, mümkün olan her yerde kayıtları kullanmaya ayarlanmış bir derleyicinin, geleneksel tasarımlardan yaklaşık üç kat daha hızlı kod çalıştıracağını gösterdiler. Şaşırtıcı bir şekilde, aynı kod, geliştirilmiş kayıt kullanımı nedeniyle mevcut makinelerde bile yaklaşık %50 daha hızlı çalışacaktı. Pratikte, PL/1'in biraz kısaltılmış bir versiyonu olan deneysel PL/8 derleyicileri , sürekli olarak ana bilgisayarlarında çok daha hızlı çalışan kodlar üretti.

801'in 32 bitlik bir sürümü, 1981'de IBM ROMP olarak tek çipli bir biçimde üretildi ve bu, 'Research OPD [Office Products Division] Micro Processor' anlamına geliyordu . Bu CPU, "mini" görevler için tasarlandı ve 1986'da IBM RT PC'de de kullanıldı ve bunun ticari bir başarısızlık olduğu ortaya çıktı. Ancak 801, sonunda IBM POWER komut seti mimarisine yol açacak IBM'deki yenileri de dahil olmak üzere birçok araştırma projesine ilham verdi .

RISC ve MIPS

1970'lerin sonunda, 801 sektörde iyi bilinir hale geldi. Bu, daha karmaşık çiplerin pazara girmesine izin veren yeni üretim teknikleriyle aynı zamana denk geldi. Zilog Z80 1979 ise 1976, 8000 transistör vardı Motorola 68000 (68k) 68.000 vardı. Bu daha yeni tasarımlar genellikle yeni bulunan karmaşıklıklarını komut setini daha dik hale getirmek için genişletmek için kullandı. Çoğu, 68k gibi, bunu yapmak için mikro kod kullandı , talimatları okudu ve bunları daha basit dahili talimatlar dizisi olarak yeniden uyguladı. 68k'de, bu mikro kodlama için tam 13 transistör kullanıldı.

1979 yılında David Patterson bir gönderilmiştir izine gelen Kaliforniya Üniversitesi, Berkeley DEC'in batı sahil ekibi VAX mikrokodları artırmaya yardımcı olmak için. Patterson, kodlama sürecinin karmaşıklığından etkilendi ve bunun savunulamaz olduğu sonucuna vardı. İlk önce mikro kodlamayı geliştirmenin yolları üzerine bir makale yazdı, ancak daha sonra fikrini değiştirdi ve sorunun mikro kodun kendisi olduğuna karar verdi. DARPA VLSI Programından sağlanan fonla Patterson, Berkeley RISC çabasını başlattı . Bugün neredeyse bilinmeyen Program, çip tasarımında, imalatında ve hatta bilgisayar grafiklerinde çok sayıda ilerlemeye yol açtı. BSD Unix varyantlarından çeşitli programları göz önünde bulunduran Berkeley ekibi, IBM'in yaptığı gibi, çoğu programın 68k'deki çok çeşitli talimatları kullanmadığını buldu.

Patterson'ın ilk çalışmaları, geleneksel "daha çok daha iyidir" yaklaşımıyla ilgili önemli bir soruna işaret etti; genel performans için kritik olan bu talimatlar bile mikrokoddan geçmeleri nedeniyle erteleniyordu. Mikrokod kaldırılsaydı, programlar daha hızlı çalışırdı. Ve mikrokod nihayetinde karmaşık bir talimat aldığı ve onu adımlara böldüğü için, derleyicinin bunu yapmaması için hiçbir neden yoktu. Bu çalışmalar, başka hiçbir değişiklik yapılmasa bile, daha hızlı çalışacak 13 daha az transistörlü bir çip yapılabileceğini ileri sürdü . IBM'in 801 ekibi de bunu fark etmişti; derleyiciler olası işlem kodlarının bir seçimiyle karşı karşıya kaldıklarında, yazarların en hızlı çalışacak şekilde optimize edildiğini bildiklerini seçerlerdi. Bu, işlem kodunu gerçekleştirmek için bir dizi işlem oluşturan mikro kodun her zaman aynı şeyi tekrar tekrar yaptığı anlamına geliyordu. Bu görev, mikro kodun kaldırılması ve gerçekte kullanılan tek işlem kodunun doğrudan derleyiciye sunulması durumunda ortadan kaldırılabilecek bir gecikmeye neden oldu.

Ayrıca, belirli mimarilerin mikro kodlanmış uygulamalarında, karmaşık işlemlerin , aynı şeyi yapan bir dizi basit işlemden daha yavaş olma eğiliminde olduğu da keşfedildi . Bu kısmen, birçok tasarımın aceleye getirilmesi ve her talimatı optimize etmek veya ayarlamak için çok az zamanın olması gerçeğinin bir etkisiydi; yalnızca en sık kullanılanlar optimize edildi ve bu komutların bir dizisi, bu diziyle eşdeğer bir işlem gerçekleştiren daha az ayarlanmış bir komuttan daha hızlı olabilirdi. Bir rezil örneğiydi VAX 'ın INDEXtalimatı.

Berkeley çalışması ayrıca bir dizi ek noktayı da ortaya çıkardı. Bunların arasında, programların alt program çağrıları ve geri dönüşleri gerçekleştirmek için önemli miktarda zaman harcaması ve bu çağrıları hızlandırarak genel performansı iyileştirme potansiyeli olduğu görülüyordu. Bu, Berkeley tasarımını, bir miktar karmaşıklık pahasına da olsa alt program performansını önemli ölçüde iyileştirebilen kayıt pencereleri olarak bilinen bir yöntemi seçmeye yöneltti . Onlar da matematiksel talimatlar çoğunluğu basit atamaları, sadece olduğunu fark ettim 1 / 3 tanesi aslında ekleme ya da çıkarma gibi bir işlemi gerçekleştirilir. Ancak bu operasyonlar gerçekleştiğinde, yavaş olma eğilimindeydiler. Bu, çipin çoğunluğunun kontrol ve mikro koda ayrıldığı önceki tasarımların aksine, temel aritmetik veri birimine çok daha fazla vurgu yapılmasına yol açtı.

Ortaya çıkan Berkeley RISC , boru hattı kullanımı ve kayıt pencerelemenin agresif kullanımı yoluyla performans kazanmaya dayanıyordu . Geleneksel bir CPU'da az sayıda kayıt vardır ve bir program herhangi bir zamanda herhangi bir kaydı kullanabilir. Kayıt pencereleri olan bir CPU'da çok sayıda kayıt vardır, örneğin 128, ancak programlar herhangi bir zamanda bunlardan yalnızca küçük bir kısmını, örneğin sekizi kullanabilir. Kendisini prosedür başına sekiz kayıtla sınırlayan bir program çok hızlı prosedür çağrıları yapabilir : Çağrı, pencereyi "aşağı" sekiz, bu prosedür tarafından kullanılan sekiz kayıt kümesine taşır ve geri dönüş pencereyi geri taşır. Berkeley RISC projesi, 1982'de RISC-I işlemcisini teslim etti. Yalnızca 44.420 transistörden oluşuyordu ( dönemin daha yeni CISC tasarımlarında yaklaşık 100.000 ortalama ile karşılaştırıldığında ) RISC- I'nin yalnızca 32 talimatı vardı ve yine de diğer tüm tek yongalardan tamamen daha iyi performans gösterdi. tasarım. Bunu, 1983'te RISC-I'den üç kat daha hızlı çalışan 40.760 transistör, 39 talimatlı RISC-II ile takip ettiler.

RISC projesi Silikon Vadisi'nde tanınmaya başladığında, benzer bir proje 1981'de Stanford Üniversitesi'nde başladı . Bu MIPS projesi John L. Hennessy tarafından verilen bir lisansüstü kursundan doğdu , 1983'te işleyen bir sistem üretti ve 1984. MIPS yaklaşımı, agresif bir saat döngüsünü ve boru hattının kullanımını vurgulayarak, mümkün olduğunca "dolu" çalıştırılabilmesini sağladı. MIPS sistemini MIPS-X izledi ve 1984'te Hennessy ve meslektaşları MIPS Bilgisayar Sistemleri'ni kurdu . Ticari girişim , 1985 yılında MIPS ve R2000 mikroişlemci olarak da adlandırılan yeni bir mimariyle sonuçlandı .

RISC konseptinin genel felsefesi 1980'lerin ikinci yarısında geniş çapta anlaşıldı ve MIPS-X tasarımcılarının 1987'de bunu şu şekilde ifade etmelerine yol açtı:

Herhangi bir talimat formatının amacı şu olmalıdır: 1. basit kod çözme, 2. basit kod çözme ve 3. basit kod çözme. CPU performansı pahasına geliştirilmiş kod yoğunluğu girişimleri her fırsatta alay konusu olmalıdır.

ticari patlama

RISC-V prototip çipi (2013).

1980'lerin başında, RISC konseptini çevreleyen önemli belirsizlikler vardı. Bir endişe hafızanın kullanımını içeriyordu; 68k gibi geleneksel bir işlemciden gelen tek bir talimat, belki de yarım düzine daha basit RISC talimatı olarak yazılabilir. Teoride, bu, bellekten talimat almak için daha fazla zaman harcadığı için sistemi yavaşlatabilir. Ancak 1980'lerin ortalarına gelindiğinde, kavramlar ticari olarak uygulanabilir olarak görülebilecek kadar olgunlaşmıştı.

Ticari RISC tasarımları 1980'lerin ortalarında ortaya çıkmaya başladı. İlk MIPS R2000 tarafından kısa bir süre sonra, Ocak 1986 yılında ortaya çıktı Hewlett Packard 'ın PA-RISC bilgisayarlarında bazı. Bu arada, Berkeley çabası o kadar iyi biliniyordu ki sonunda tüm konseptin adı haline geldi. 1987'de Sun Microsystems , doğrudan Berkeley RISC II sistemine dayalı SPARC işlemcisi ile sistemleri sevk etmeye başladı . ABD hükümeti Bilgi İşlem ve İletişimde Yenilikler Komitesi, RISC kavramının uygulanabilirliğinin kabul edilmesini SPARC sisteminin başarısına borçludur. SPARC'ın başarısı, 1990'a kadar yeni RISC sistemlerini ve 1995'e kadar RISC işlemcilerini piyasaya süren IBM'e olan ilgiyi yeniledi ve 15 milyar dolarlık bir sunucu endüstrisinin temeli oldu.

1980'lerin sonlarında, yeni RISC tasarımları, tüm geleneksel tasarımları geniş bir farkla kolayca geride bırakıyordu. Bu noktada, diğer tüm satıcılar kendi RISC çabalarına başladılar. Bunlar arasında DEC Alpha , AMD Am29000 , Intel i860 ve i960 , Motorola 88000 , IBM POWER ve biraz sonra IBM/Apple/Motorola PowerPC vardı . Bunların çoğu, aynı dönemin diğerlerine göre çoğu zaman rekabet avantajı sağlamadıkları için ortadan kayboldu. Kalanlar genellikle yalnızca niş pazarlarda veya diğer sistemlerin parçası olarak kullanılır, yalnızca SPARC ve POWER'ın kalan önemli bir pazarı vardır. Aykırı olan ARM Apple ile işbirliği içinde, düşük güçlü bir tasarım geliştirdi ve daha sonra bir zamanda bir niş olduğunu pazarda, uzmanlaşmış,. Mobil bilgi işlemdeki artışla, özellikle iPhone'un piyasaya sürülmesinden sonra , ARM artık piyasada en yaygın kullanılan üst düzey CPU tasarımıdır.

RISC ve geleneksel CISC yaklaşımları arasındaki rekabet de 1980'lerin başında teorik analizin konusuydu ve örneğin işlemci performansının demir yasasına yol açtı .

2010'dan beri yeni bir açık kaynak komut seti mimarisi (ISA), RISC-V , California Üniversitesi, Berkeley'de araştırma amacıyla ve tescilli ISA'lara ücretsiz bir alternatif olarak geliştirilmektedir. 2014 itibariyle, kullanıcı alanı ISA'nın 2. sürümü düzeltildi. ISA, standart ve çip tasarımcısı tanımlı uzantılar ve yardımcı işlemciler ile küçük bir gömülü işlemci için süper bilgisayar ve bulut bilişim kullanımına yetecek kadar basit bir çekirdekten genişletilebilir olacak şekilde tasarlanmıştır. CHISEL dilinde açık kaynaklı işlemci üreticisi olarak da mevcut olan ROCKET SoC ile silikon tasarımında test edilmiştir .

Özellikler ve tasarım felsefesi

Komut seti felsefesi

"Azaltılmış komut kümesi bilgisayarı" ifadesinin yaygın bir yanlış anlaşılması, talimatların basitçe ortadan kaldırılarak daha küçük bir talimat kümesiyle sonuçlanmasıdır. Aslında, yıllar içinde, RISC komut setlerinin boyutu büyümüştür ve bugün bunların birçoğu, birçok CISC CPU'dan daha büyük bir talimat setine sahiptir. PowerPC gibi bazı RISC işlemcileri, örneğin CISC IBM System/370 kadar büyük talimat setlerine sahiptir ; tersine, DEC PDP-8 - talimatlarının çoğu çoklu bellek erişimi içerdiğinden açıkça bir CISC CPU'su - yalnızca 8 temel talimata ve birkaç genişletilmiş talimata sahiptir. Bu ifadedeki "azaltılmış" terimi, düzinelerce veri gerektirebilecek CISC CPU'larının "karmaşık talimatları" ile karşılaştırıldığında, herhangi bir tek talimatın gerçekleştirdiği iş miktarının -en fazla tek bir veri bellek döngüsü- azaldığı gerçeğini tanımlamayı amaçlamıştır. Tek bir talimatı yürütmek için hafıza döngüleri.

Terimi, yükleme / depolama mimarisi , bazen tercih edilir.

RISC/CISC tartışmasına bakmanın başka bir yolu da derleyicinin nelere maruz kaldığını düşünmektir. Bir CISC işlemcisinde, donanım, STRING MOVE gibi tek bir karmaşık talimatı uygulamak için dahili olarak yazmaçları ve bayrak bitini kullanabilir, ancak bu ayrıntıları derleyiciden gizleyebilir. Bir RISC işlemcisinin dahili işlemleri "derleyiciye açık" olup, "Relegate Ilginç Şeyleri Derleyiciye Aktar " arka planına yol açar .

talimat formatı

Çoğu RISC mimarisi, sabit uzunluklu talimatlara (genellikle 32 bit) ve alma, kod çözme ve mantığı önemli ölçüde basitleştiren basit bir kodlamaya sahiptir. 32 bitlik talimatların bir dezavantajı, gömülü bilgi işlemde iş istasyonu ve sunucu pazarlarında olduğundan daha olumsuz bir özellik olan azaltılmış kod yoğunluğudur. RISC mimarileri orijinal olarak hizmet vermek üzere tasarlanmıştır. Bu sorunu çözmek için ARM , Power ISA , MIPS , RISC-V ve Adapteva Epiphany gibi çeşitli mimarilerde isteğe bağlı kısa, özelliği azaltılmış talimat formatı veya talimat sıkıştırma özelliği bulunur. SH5 da ters yönde gelişmiştir olan özgün bir 16-bit kodlama uzun ortam adımları eklendi sahip olmalarına rağmen, bu şekilde hareket etmesi.

Donanım kullanımı

Herhangi bir genel performans seviyesi için, bir RISC yongası tipik olarak, tasarımcıların kayıt setinin boyutunu artırmalarına ve dahili paralelliği artırmalarına izin veren çekirdek mantığa adanmış çok daha az transistöre sahip olacaktır .

RISC mimarilerinin diğer özellikleri şunları içerir:

  • İşlemci ortalama verimi, döngü başına 1 talimata yakındır
  • Daha basit kod çözme için aynı bit konumlarında opcode ile tek kelime kullanan tek tip talimat formatı
  • Tüm genel amaçlı kayıtlar , tüm talimatlarda kaynak/hedef olarak eşit olarak kullanılabilir, bu da derleyici tasarımını basitleştirir ( kayan nokta kayıtları genellikle ayrı tutulur)
  • Komut dizileri tarafından gerçekleştirilen karmaşık adreslemeli basit adresleme modları
  • Donanımda az sayıda veri türü ( örneğin bayt dizesi veya BCD yok )

RISC tasarımlarının ayrıca , talimat akışının ve veri akışının kavramsal olarak ayrıldığı bir Harvard bellek modeline sahip olması daha olasıdır ; bu, kodun tutulduğu belleği değiştirmenin, işlemci tarafından yürütülen talimatlar üzerinde herhangi bir etkisi olmayabileceği anlamına gelir (çünkü CPU'nun ayrı bir talimatı ve veri önbelleği vardır ), en azından özel bir senkronizasyon talimatı verilene kadar; Ayrı talimat ve veri önbelleklerine sahip CISC işlemcileri, eski işlemcilerle geriye dönük uyumluluk için genellikle bunları otomatik olarak senkronize tutar.

Birçok erken RISC tasarımı , bir atlama veya dallanmanın hemen ardından bir talimat alanı olan bir dal gecikme yuvasına sahip olma özelliğini de paylaştı . Bu alandaki komut, dal alınıp alınmadığına bakılmaksızın yürütülür (yani dalın etkisi geciktirilir). Bu talimat tutar ALU normalde bir şube gerçekleştirmek için gereken ekstra süre meşgul CPU. Günümüzde şube gecikme yuvası, bazı RISC tasarımlarını uygulamak için belirli bir stratejinin talihsiz bir yan etkisi olarak kabul edilir ve modern RISC tasarımları genellikle bunu ortadan kaldırır ( PowerPC ve SPARC ve MIPS'in daha yeni sürümleri gibi ).

1975 civarındaki ilk RISC etiketli tasarımlara atfedilen bazı yönler , zamanın sınırlı bellekli derleyicilerinin genellikle manuel montaj kodlamasını kolaylaştırmaya yönelik özelliklerden yararlanamadığı ve karmaşık adresleme modlarının gerçekleştirilmesi için birçok döngü gerektirdiği gözlemlerini içerir. gerekli ek bellek erişimlerine Yavaş bellek erişimlerinin sayısını azaltarak, birçok yazmaç için yer bırakacak kadar küçük uygulamalar sağlayabilirse, bu tür işlevlerin daha basit komut dizileriyle daha iyi gerçekleştirileceği tartışıldı. Bu basit tasarımlarda, komutların çoğu aynı uzunlukta ve benzer yapıdadır, aritmetik işlemler CPU kayıtlarıyla sınırlıdır ve yalnızca ayrı yükleme ve depolama talimatları belleğe erişir. Bu özellikler, boru hattı aşamalarının eskisinden daha iyi dengelenmesini sağlayarak RISC boru hatlarını önemli ölçüde daha verimli hale getirir ve daha yüksek saat frekanslarına izin verir .

Hem RISC hem de diğer tasarımların bir başka itici gücü, gerçek dünya programlarındaki pratik ölçümlerden geldi. Andrew Tanenbaum bunların çoğunu özetledi ve işlemcilerin genellikle büyük boyutlu acil durumlara sahip olduğunu gösterdi. Örneğin, bir programdaki tüm sabitlerin %98'inin 13 bit'e sığacağını , ancak birçok CPU tasarımının bunları depolamak için 16 veya 32 bit ayırdığını gösterdi. Bu, bellek erişimlerinin sayısını azaltmak için, sabit uzunluklu bir makinenin, komut sözcüğünün kullanılmayan bitlerinde sabitleri depolayabileceğini, böylece CPU'nun ihtiyaç duyduğu anda (geleneksel bir tasarımdaki anında adresleme gibi) hemen hazır olacaklarını gösterir. . Bu , 32 bitlik bir komut sözcüğünde makul boyutta bir sabite yer bırakmak için küçük işlem kodları gerektiriyordu .

Birçok gerçek dünya programı zamanlarının çoğunu basit işlemleri yürütmekle geçirdiğinden, bazı araştırmacılar bu işlemleri olabildiğince hızlı yapmaya odaklanmaya karar verdi. Saat hızı bir CPU o yavaş çalıştırması için gereken zaman ile sınırlıdır alt operasyonu herhangi talimat; bu döngü süresini azaltmak, genellikle diğer talimatların yürütülmesini hızlandırır. "Azaltılmış talimatlar" üzerine odaklanma, ortaya çıkan makinenin "indirgenmiş komut seti bilgisayarı" (RISC) olarak adlandırılmasına yol açtı. Amaç, yüksek frekanslarda tek bir saat çıktısı elde etmek için komutları kolayca ardışık düzene geçirilebilecek kadar basit hale getirmekti .

Daha sonra, RISC işlemcilerinin en önemli özelliklerinden birinin, harici belleğe yalnızca bir yükleme veya depolama talimatı ile erişilebilmesi olduğu belirtildi . Diğer tüm talimatlar dahili kayıtlarla sınırlıydı. Bu, işlemci tasarımının birçok yönünü basitleştirdi: talimatların sabit uzunlukta olmasına izin vermek, boru hatlarını basitleştirmek ve yalnızca iki talimata bir bellek erişimini (önbellek kaçırma vb.) tamamlamadaki gecikmeyle başa çıkmak için mantığı izole etmek. Bu, RISC tasarımlarının yükleme/depolama mimarileri olarak anılmasına yol açtı .

Diğer mimarilerle karşılaştırma

Bazı CPU'lar özellikle çok küçük bir talimat setine sahip olacak şekilde tasarlanmıştır - ancak bu tasarımlar klasik RISC tasarımlarından çok farklıdır, bu nedenle minimum komut seti bilgisayarı (MISC) veya taşıma tetiklemeli mimari (TTA) gibi başka isimler verilmiştir .

RISC mimarileri, x86 tabanlı platformların baskın işlemci mimarisi olmaya devam ettiği masaüstü bilgisayar ve ticari sunucu pazarlarında geleneksel olarak çok az başarıya sahiptir . Ancak, ARM tabanlı işlemciler daha yüksek performanslı sistemler için geliştirildiğinden bu durum değişebilir. Dahil Üreticileri Cavium , AMD ve Qualcomm ARM mimarisine dayanan sunucu işlemcilerini yayınladı. ARM, ARM tabanlı bir süper bilgisayar üretmek için 2017 yılında Cray ile daha da ortaklık kurdu . Masaüstünde Microsoft , Qualcomm ile ortaklığının bir parçası olarak 2017 yılında Qualcomm Snapdragon tabanlı cihazlarda Windows 10'un PC sürümünü desteklemeyi planladığını duyurdu . Bu cihazlar bir x86 işlemci vasıtasıyla 32 bit x86 derlenmiş Windows uygulamalarını destekleyecek emülatörü ARM64 koduna 32 bit x86 kodu çevirir . Apple, Mac masaüstü ve dizüstü bilgisayarlarını Intel işlemcilerden Apple silikon adı verilen dahili olarak geliştirilen ARM64 tabanlı SoC'lere geçireceklerini duyurdu ; Apple M1 işlemci kullanan bu tür ilk bilgisayarlar Kasım 2020'de piyasaya sürüldü. Apple silikonlu Mac'ler, x86-64'ten ARM64'e çevirmen olan Rosetta 2 ile x86-64 ikili dosyalarını çalıştırabilir .

Ancak masaüstü alanının dışında, ARM RISC mimarisi akıllı telefonlarda, tabletlerde ve birçok gömülü cihaz biçiminde yaygın olarak kullanılmaktadır. Erken RISC tasarımları çağdaş CISC tasarımlarından önemli ölçüde farklı olsa da, 2000 yılına gelindiğinde RISC hattındaki en yüksek performanslı CPU'lar CISC hattındaki en yüksek performanslı CPU'lardan neredeyse ayırt edilemezdi.

RISC mimarilerinin kullanımı

RISC mimarileri artık akıllı telefonlar ve tablet bilgisayarlardan , Kasım 2020 itibariyle TOP500 listesinde en hızlı olan Fugaku ve sonraki üçü Summit , Sierra ve Sunway TaihuLight gibi dünyanın en hızlı süper bilgisayarlarından bazılarına kadar çeşitli platformlarda kullanılmaktadır. o listede.

Düşük seviye ve mobil sistemler

21. yüzyılın başlarında, düşük kaliteli ve mobil sistemlerin çoğu RISC mimarilerine dayanıyordu. Örnekler şunları içerir:

Masaüstü ve dizüstü bilgisayarlar

İş istasyonları, sunucular ve süper bilgisayarlar

Ayrıca bakınız

Referanslar

Dış bağlantılar