Sayısal Bilgisayarın Tarihsel Gelişim Süreci ;
•Babage’in analitik makinası(1833)
•Vakumlu lambanın bulunuşu (1910)
•İlk elektronik sayısal bilgisayar (1946)
•Transistörün bulunuşu (1947)
•İlk transistörlüsayısal bilgisayar (1960)
•Entegre devrenin bulunuşu (1963)
•İlk mikroişlemci (1970)
•10.000 transistörlüentegre devreler (1981)
Basit bir hayale dalın, bir kişinin istediği bilgiye anında Internet denilen dünya bilgisayarlar arası bağlantı ile erişebildiğini, günlerce sürecek hesaplamaların sonucunu bir tuşa dokunmakla birkaç saniye içerisinde alabildiğini, bir hastanın tüm iç yapısının taranarak ne gibi hastalıkları olduğunu anında öğrenilebildiğini ve bu sonuçlara göre tanının konulabildiğini, milyonlarca metre uzaktaki uzay araçlarının kontrol edilebildiğini ve yönlendirilebildiğini, binlerce kişinin yatırım bilgilerinin tutulduğu banka hesaplarının birkaç tuşa dokunularak ne durumda olduğunun gözlenebildiğini, taşıtların ve elektronik aletlerin insan eli değmeden robotlar vasıtasıyla üretilebildiğini, işin ve okulun yerinden kalkmadan evden yürütülebildiğini düşünün.
İnsanoğlu beyin ve kas kuvvetini kullanarak sürekli yaptığı ve sonuçlanması uzun zaman alan işleri kolaylaştırmak ve hızlandırmak için tarihi süreç içerisinde bazı araçlar geliştirmiştir. Bunlardan belli başlıları hesaplamalarda kullanılan abaküs ve sürgülü hesap cetvelidir.
Büyüklük ve karmaşıklık yönünden insanlar tarafından elle yapılan hesaplamalarda iki ciddi sınırlama ortaya çıkmaktaydı:
1. ) Belli bir hıza sahip olan insan beyni ile yapılan çalışmalar sınırlıdır. Basit toplama veya çarpma gibi birkaç işlemlik hesaplamalar insan tarafından kısa zamanda yapılabilmektedir. Fakat daha büyük ve karmaşık üssel ifadelerin yer aldığı hesaplamalar elle yapılması durumunda, çok zaman alabilecek ve doğru sonucun alınması zorlaşacaktır.
2. )İnsan beyni karmaşık hesaplamalarda hata yapmaya meyillidir.
1642 yılında Blaise PASCAL, adına Pascaline denilen,toplama ve çıkarma yapabilen otomatik masaüstü alet geliştirmiştir.Aslında üst üste toplamanın bir çarpma ,üst üste çıkarmanın da bir bölme işlemi olmasına rağmen bu mekanik hesaplayıcı çarpma ve bölme işlemlerinde zayıflık göstermekteydi.
1671 yılında Gottfried Leibnitz adlı alman filozof pascaline makinesindeki bu zayıflığı gideren bir sistem geliştirmiştir. Hesaplamalarda doğru sonuçlar almaya yatkın ve adına Differens Machine denilen aleti ingiliz matematikçi Charles Babbage gerçekleştirmiştir.
Daha sonra bu aleti geliştirerek, aritmetik problemlerin çözülmesi için tasarlanan ve adına Analytical Engine denilen tek-görevli genel amaçlı bilgisayarı ortaya çıkarmıştır. Bu cihazın temeli aslında günümüz sayısal bilgisayarlarının da özünü oluşturan, verinin belli kurallar dahilinde işlenmesinin gerçekleştirildiği işlemci birimi ve bu kuralların tutulduğu yer (bellek) depo veya giriş birimi ve hesap sonuçlarının yerleştirildiği çıkış birimidir (yazıcı).
1840 yılında Lady Ada Lovelance adlı matematikçi Babbage' in yarım kalan makinesini program yönünden geliştirmiş ve ilk program tasarımcısı (programcı) unvanını almıştır.
1890 yılında Herman Hollerith adlı makine mühendisi ve istatistikçi bilgilerin elle mekanik makinelere girilmesinin uzun zaman alması gibi sorunların ortadan kaldırmak için nüfus bilgilerinin delikli kartlarla makineye girilmesi fikrini geliştirmiştir. Daha sonra delikli kartlarda bilginin giriş-çıktı formatını daha düzgün hale getirerek verinin hızlı bir şekilde işlenmesini sağlamıştır. Bu makineyi geliştirdiği firma şu anda dünyadaki en büyük bilgisayar şirketlerinden birisi olan IBM 'in temellerini oluşturmuştur.
Aynı zamanda alman Konrad Zuse adlı ilim adamı, ilk role tabanlı bilgisayarı tasarlamış ve gerçekleştirmiştir.
1937 yılında Howard H. Aiken Mark-1 adlı makineyi geliştirmiştir. Mark-1 tamamı elektronik elemanlardan oluşmayan genel amaçlı bir makineydi, bunun yerine 1943 'de yapımına başlanan ve 1946'da bitirilen tamamı elektronik aksamlardan meydana gelen kısaca adına ENIAC denilen bir bilgisayar geliştirilmiştir.Bilgisayarda bulunan 19 bin lamba yaklaşık 150 KW güç tüketmekleydi.
ENIAC bilgisayarında yetersiz miktardaki bilginin tutulabilmesi, verilerinin sürekli değiştirilerek tekrar tekrar makineye girilmesini zorunlu hale getirmiştir.
Daha sonraları Macar John von Neuman isimli matematikçi bu soruna bir çare olarak verinin makinenin içerisinde saklanmasını göstermiştir. Bu yol, komutların sayısal değerler olarak makinenin içerisinde depolanmasıdır.
İlk program depolamalı bilgisayar 1949'da EDSAC adıyla Cambridge Üniversitesinde geliştirilmiştir.
Daha sonra bu gelişmeyi ACE adlı bilgisayar takip etmiştir.
1951 yılında, Amerika'da UNIVAC-1 adlı makine geliştirilmiştir.
Elektriğin bulunması ile mekanik parçaların yerine geçecek parçaların tasarlanması yeni fikirler ortaya çıkarmış (Elektronik devri başlamış) ve bunun sonucunda lambalar icat edilmiştir.
Bilgisayarlarda(hesaplayıcılarda) lambaların kullanılması kısa zamanda pek çok hesaplamanın yapılmasını sağlamış fakat, bilginin (komut ve veri grubu) nerede saklanacağı ve hangi yöntemle makineye verileceği sorun olmaya devam etmiştir.
Daha sonraları lambanın yerine silisyum ve germanyum maddelerinin bulunup transistörün icat edilmesiyle elektronik dünyasında ve dolayısıyla bilgisayar sistemlerinde büyük ve hızlı gelişmeler yasanmış ve yaşanmaktadır.
Bilgiyi giriş olarak alan, bunu belli bir kurala göre işleyen ve sonucu çıktı olarak veren sisteme basit olarak bilgisayar denir. Makine olarak tanımlanan bilgisayar, veriyi belli bir düzen dahilinde işler. Buradaki veri, işlenecek bilgidir. Verinin işleniş düzenini veya kuralları donanımın dışında komutlar koyar. Sayısal değerler belli bir formatta sisteme yerleştirilmek zorundadır. Sistemdeki herhangi bir fiziksel ve mantıksal parametreler ikilik sayılarla ifade edilmektedir.
Bilgisayar sistemleri iki temel öğeden oluşmaktadır. Bunlar; yazılım ve donanımdır. Her ikisi de birbirinin tamamlayıcıdır, birisi olmazsa diğeri de olmaz. Sistem öncelikli olarak tasarlanırken önce sistemi meydana getirecek elemanlar, yani donanım parçaları göz önüne alınır. Daha sonra yazılım bu yapıya bakılarak yazılır.
Yazılım, donanımın hangi yönteme göre nasıl çalışacağını gösteren bir sanal uygulamadır. Donanım, yazılıma göre belli zamanlarda devreye girerek fonksiyonlarını yerine getirmekle görevlidir.Tüm sayısal bilgisayarlar şekilde gösterilen elemanlara sahiptir. Bunların dışındaki eleman ya da cihazlar seçimliktir.
Bilgisayarı oluşturan bir sistemdeki temel elemanlar; mikroişlemci(CPU), bellek ve giriş/çıkış (G/Ç) birimleridir. Mikroişlemcinin işleyeceği komutlar ve veriler geçici veya kalıcı belleklerde tutulmaktadır. Bilgiyi oluşturan komut ve veriler bellekte karmaşık veya farklı alanlarda tutulabilir.
Bilginin işlenmesi sırasında ortaya çıkabilecek ara değerler, en sonunda sonuçlar bellekte bir yerde depolanmak zorundadır. Bütün bu yapılan işlemler bir hesaba dayanmaktadır. Bilgisayarın bilgiyi işlemedeki ana karar vericisi sistemin kalbi sayılan mikroişlemcidir.
CPU tarafından gerçekleştirilen iki temel işlem vardır. Birincisi, komutların yorumlanarak doğru bir sırada gerçekleşmesini sağlayan kontrol işlevi, diğeri; toplama, çıkarma ve benzeri özel matematik ve mantık işlemlerinin gerçekleştirilmesini sağlayan icra işlevidir.
Ayrıca sistemin dışarıda denetlemek islediği bir aleti belli bir düzende kontrol edebilmesi için bir de giriş/çıkış birimine gerek vardır. G/Ç birimi, makine ile kullanıcı (veya programcı) arasında bilginin makine dilinden insanın anlayacağı dile çevrilmesinde veya tersi işlemde iletişim (aracı) sağlar.
Sistemin öne çıkmayan diğer elemanları iletişim yollandır. Adres yolu, veri yolu ve kontrol yolu olarak üçe ayrılan iletişim yolu, bilgisayar sistemindeki birimler arasında bilginin taşınmasından sorumludur.Adres yoluna bellekten getirilerek çalıştırılmak istenen komut adresi veya komutun işlenmesiyle bellekten getirilecek verinin adresi konulur.
Sonuç olarak, ister insan yapısı ister yapay olsun her bilgisayar aşağıdaki elemanlara sahip olmalıdır:
1. Programın yorumlanması ve çalıştırılmasını gerçekleştiren bir mikroişlemci.
2. Bir dizi komutlardan oluşan program ve verilerin sürekli veya geçici depolandığı bellek.
3. Bilgisayarın dış dünya ile bağlantısını sağlayan sağlayan giriş/çıkış birimi.
4. CPU ve bellek aracındaki bilgi aktarımını ve işlemcinin dış dünya ile iletişimini sağlayan iletişim yolları
Çalışma Bakımından Bilgisayarlar:
1. Analog Bilgisayarlar
2. Sayısal (digital) bilgisayarlar
3. karma (hybrit) bilgisayarlardır.
1. Analog bilgisayarlar, kayıt yapmada tam bir değerin başlangıcından sonuna kadar sürekli fonksiyonlarını kullanırlar. Nasıl ki bir termometre ısıya veya bir barometre atmosfer çevresindeki hava değişimine (basıncına) duyarlıysa, Analog bilgisayarlar da kullanıldığı uçak veya benzeri sistemlerde bu değerlerin ölçülüp değerlendirilmesinde duyarlığa sahiptir. Bir çok ölçüm ve denetim cihazı, kesik adımlı sinyallerden daha çok sürekli sinyallere bağlı olarak analog çalışırlar.
2. Sayısal bilgisayarlar, kesikli veya süreklilik arz etmeyen bilgiyi yorumlarlar. Sayısal sistemlerde her şey "evet" veya "hayır"la ifade edilebilmektedir. Böylece "evet" yerine geçen 1' ler ve "hayır" yerine geçen 0' larla her şey tanımlanabilmektedir. Analog bilgisayarlara göre hızlı ve performansı yüksektir. Analog bilgisayarlar matematiksel olarak bazı işlemleri yapabildikleri halde, sayısal bilgisayarlar aynı zamanda mantık işlemlerini de kolaylıkla yapabilmektedir.
3. Karma (hibrid) bilgisayarlar, analog ve sayısal bilgisayarların her iki özelliğini kendisinde bulunduran bilgisayarlardır. Uygulama özelliklerine göre bu cihazlar tasarlanmaktadır.
Fiziksel büyüklük bakımından bilgisayarlar: Bilgisayarların fiziksel açıdan birbirinden ayrılmasında büyüklüğü, hızı ve maliyeti göz önüne alınmaktadır.
1. Mikrobilgisayarlar
2. minibilgisayarlar
3. Mainframe sistemleri
4. süper bilgisayarlar
1. Mikrobilgisayarlar: Günümüzde moda kelimelerle ifade edilen bu ayırımlardan en küçük olanına Mikrobilgisayar denilmektedir. Belli başlı elemanları; sistem birimi, monitör ve klavyedir. Sistem biriminin içersinde CPU, anakart, ekran kartı, sabit disk, CD-sürücü bulunan metalik-plastik karışımı kutudur. Büyük orandaki verilerin depolanmasında ve üzerinde hesaplamaların yapılmasında, daha güçlü ve büyük veri depolama ve işleme araçları gerektirmiştir.
2. Minibilgisayarlar: Adına minibilgisayar (büyük ölçekli bilgisayar) denilen yüksek düzeyli makinelerde, veriler ve programlar manyetik disk ortamında tutulurken, aynı anda birden fazla kişi tarafından paylaşılması sağlanmaktadır.
Bu tip bilgisayarlar bir ana sistem ve bunlara bağlı manyetik disk birimi ve terminaller (Workstation) bulunan yapıya sahiptir. Mini bilgisayarlar genelde bilimsel araştırmalarda küçük boyutlu bankalarda ve işletmelerde kullanılmaktadır.
3. Mainframe Sistemler: Giderek ihtiyaçların çoğalması, bilimin ve teknolojinin ilerlemesi daha büyük ve hızlı sistemleri de beraberinde getirmiştir. Daha büyük kapasiteli veri saklama ortamları ve bunları çok hızlı bir şekilde işleyebilecek sistem elemanlarına sahip sistemlere Mainframe (Çok büyük ölçekli bilgisayar) denilmekledir. Mainframe, mini bilgisayarların talep edilen zamanda sonuçlandıramadığı işlemleri çok kısa zamanda yapabilecek yeteneğe sahip sistemlerdir.
Bu sistemde büyük ve birden fazla manyetik veri depolama ortamları, disk ortamları, yazıcılar ve daha çok terminaller bulunmaktadır. Bu büyük boyutlu bilgisayarlar, veri işleme işlerinde orta büyüklükteki iş merkezinden çok büyük iş merkezlerine kadar kullanılmakladır.
Genellikle büyük maliyetli bilimsel çalışmalarda (NASA), bankacılık işlemlerinde ve üniversitelerin araştırma laboratuarlarında yer almaktadır.
4. Süper Bilgisayarlar: Diğer bir yüksek düzeyli bilgisayar türü de Süperbilgisayarlardır. Bu sistem, ölçek olarak mainframe'den daha büyük olmayabilir, fakat yaptığı iş ve maliyet bakımından diğerlerinden ayrılmaktadır.
Çok hassas ölçümlerin üzerinde çalışılmasında, kesin hava tahminlerinde, derin uzay araştırmalarında ve geniş ölçekli sayısal çalışmalarda bu bilgisayarlar kullanılmaktadır. Bir çok bilgisayar bir araya getirilerek süper bilgisayar sistemi oluşturulabileceği gibi günümüzde süperbilgisayar olarak satılan bilgisayar sitemleri de vardır(Cray II gibi).
Bilgisayar Organizasyonu
Bilgisayar sistemi tarif edilirken iki temel esastan bahsedilebilir. Bilgisayar organizasyonu ve bilgisayar mimarisi. Bilgisayar mimarisi, bir programın mantıksal çalışmasına doğrudan etki eden özelliklerdir. Bilgisayar organizasyonu, operasyonal birimler ve bunların yapısal özelliklerini veren bağlantıları ifade eden yaklaşımdır; Daha çok yazılım ve donanım arasındaki bağdaştırmayla ilgilidir.
Mimari özelliklere; komut kümesi, değişik şekillerdeki veri tiplerini temsil etmesi için kullanılan bit sayısı, G/Ç mekanizması ve bellek adresleme tekniklerinin dahil olduğu bir bilgisayar tasarımı girmektedir.
Organizasyona ise, kontrol sinyalleri, bilgisayar, çevre elemanları ve kullanılan bellek teknolojisi gibi donanımın programcıya ayrıntısıyla transparan gözüken özelliklerdir.Bilgisayar mimarisi ve organizasyonun ayrıştırılması bazı sebeplerden dolayı önemlidir.
Bilgisayar Mimarisi
Bilgisayar mimarisi, komut kümesinin, donanım elemanlarının ve sistem organizasyonun dahil olduğu bir bilgisayarın tasarımıdır. Mimari iki farklı yaklaşımla tanımlanmaktadır Komut kümesi mimarisi (ISA) ve donanım sistem mimarisi(HSA).
ISA, bir bilgisayarın hesaplama karakteristiklerini belirleyen komut kümesinin tasarımıdır. HSA; CPU, depolama ve G/Ç sistemlerinin dahil olduğu alt sistem ve bunların bağlantı şeklidir.
ISA ise, programcının bu elemanlara yön verecek programı yazması durumunda nasıl bir kabul göreceğidir. Özel bilgisayar sistemleri için programcı kodlarını makinenin doğrudan özel donanımına göre yazmaktaydı. Böylece bir makine için yazılan program aynı firma tarafından üretilse bile ne rekabet ettiği bir makinesinde nede diğer makinesinde çalışabilmekteydi. Programcı tarafından yazılın kodlar donanımı açma anahtarı olarak düşünülebilir.
Her zaman yeni bir makine üretildiğinde yazılım geliştiriciler bu makine için yeni baştan başlamak zorunda kalmaktaydılar. Bundan dolayı bilgisayar sistem tasarımcıları iki önemli sorunla karşı karşıya idi. Bunlar;
1. Bilgisayar sistemleri ile ilgili işlevselliğin sergilenmesi.
2. Yazılımın sistemler arasındaki geçişini kolaylaştırması.
1960 yıllarında IBM firması bu sorunların üstesinde gelmek için, adına komut kümesi mimarisi (ISA) ve mikrokod motoru denilen bir yöntem geliştirmiştir. (ISA) Sistemi meydana getiren donanımın özelliklerini sergilemede kullanılan standart bir yol sağlar.
Programsal Yaklaşım
Sistem tasarımcıları sık sık bazı program işlevlerini mikrokodlara aktararak performansta artış sağlamak istemişlerdir. Donanımı devreye sokacak öz bilgilerin yani komut kümesinin yer aldığı bu yere mikrokod motoru denilmektedir.
Burası, CPU içinde CPU olarak da ifade edilebilir. Programcının yazdığı kodları işlemcinin daha çabuk anlayabileceği veya çalıştırabileceği küçük mikrokodlara dönüştüren bu mikrokod motoru, işlemci içerisine ROM bellek vasıtasıyla yerleştirilmiştir. Mikroprogram ve icra biriminden meydana gelen mikrokod ROM'un görevi, özel komutları kontrol sinyallerine çevirerek sistem elemanlarının denetimini sağlar.
Aynı zamanda firmware olarak adlandırılan mikrokodun CISC tipi işlemcilerdeki temel işlevi, alt düzey komut kümesiyle programcının çalıştığı üst düzey komutlar arasında soyutlama düzeyi yaratmaktır.
Mikroişlemci üreticileri, sistem tasarımında iki yönlü düşünmek zorundadırlar. Birincisi, mimariyi meydana getiren elemanların işlevleri, ikincisi bu elemanların nasıl devreye sokulacağıdır.
Elemanları devreye sokmak için program yazmak gerekecektir. Bu işin bir yanı, diğer yanı ise donanımdır. Donanım mimarisini programcıya aktaracak en iyi yol ona kullanabileceği komut kümesini hazır vermektir. Programcının yazdığı bir komut işletildiğinde, mikrokod ROM bu komutu okur ve sonra o komuta karşılık gelen uygun mikrokodları yükler ve çalıştırır.
Bilgisayarın komut kümesinde bulunan tüm komutların mikrokod ROM'da karşılığı vardır.Mikrokoda sahip işlemciler aşağıdaki üstünlüklere sahiptir:
• İçerisinde mikrokod bulundurun ROM bellek, ana bellekten çok daha hızlı olduğu için, mikrokod bellekteki komut serisi fazla hız kaybetmeksizin dahili sistemde yürütülebilir.
• Aynı komut kümesini adanmış mantık üzerinde yürütmek yerine, yeni yongalarla yürütmek daha kolaydır ve daha az transistor gerektirir.
• Bir mikroprogramlı tasarım yeni komut kümelerini işlemek için tamamen değiştirilebilir.
• Yeni komutlar mikrokod halinde eskilerin üzerine eklenebilir.
Bazı makineler ticari hesaplamalar için, bazıları da bilimsel hesaplamalar için elverişli hale getirilmişlerdir. Bununla birlikle tümü aynı komut kümesini paylaştığından, programlar temel donanımlara bağlı kalarak makineden makineye, yeniden derlenmeden taşınabilir.
Mikroprogramlama esasına göre çalışan bilgisayarlar günümüzde hala kullanılmaktadır. Intel ve AMD gibi üreticiler ISA X86 komut kümesinin tüm özelliklerini bazı yeniliklerle birlikte işlemcilerine yansıtmakladırlar.
ISA mimarisi daha çok CISC denilen, belleği azami ölçüde etkin kullanmak için geliştirilen bir sistem olan karmaşık komut kümeli bilgisayarlarda kullanılmıştır.
Donanımsal Yaklaşım
Mikrokod kullanılarak ISA sisteminin yürütülmesinin başlıca sakıncası, başlangıçta komutların doğrudan çalıştıran sisteme göre yavaş olmasıdır. Daha çok komut demek daha fazla mikrokod, çekirdek büyüklüğü ve güç demektir.
ISA mimarisinin yaşanan aksaklıklarından dolayı daha sonraları, komutların doğrudan donanım elemanları tarafından yorumlanarak sistemin denetlendiği diğer bir mimari yaklaşımıda donanımsal çalışma modelidir. Komutların anlaşılır standartta bir boyuta getirilerek çalıştırıldığı sisteme RISC modeli denilmektedir. Böylece küçük, hızlı ve çok hafifleyen komut kümesiyle, iri hacimli mikrokoda nazaran donanım üzerinde doğrudan hakimiyet kolayca sağlanabilmiştir.
RISC tasarımcıları komutların doğrudan icra edildiği eski modele dönerken, ISA kavramı dokunulmadan korunmuştur. Intel, AMD ve Transmeta firmaları hala x86 mimarisine dayalı işlemcilerini ISA yaklaşımıyla üretmektedirler.
Günümüzde üst düzey entegrasyon ve daha düşük tel kalınlıklarının ve birleştirme yüzeylerinin elde edilmesiyle (0.18, 0.13 ve 0.09 mikron gibi) çok daha karmaşık olan donanım temelli sistemler oluşturmak mümkün olmakladır.
CISC Mimarisi
(CISC: Complex Instruction Set Computer: Karmaşık komut kümeli bilgisayar)
CISC mimarisinin karakteristik iki özelliğinden birisi, değişken uzunluktaki komutlar, diğeri ise karmaşık komutlardır. Değişken ve karmaşık uzunluktaki komutlar bellek tasarrufu sağlar. Karmaşık komutlar İki ya da daha fazla komutu tek bir komut haline getirdikleri için hem bellekten hem de programda yer alması gereken komut sayısından tasarruf sağlar.
Karmaşık komut karmaşık mimariyi de beraberinde getirir. Mimarideki karmaşıklığın artması, işlemci performansında istenmeyen durumların ortaya çıkmasına sebep olur. Ancak programların yüklenmesinde ve çalıştırılmasındaki düşük bellek kullanımı bu sorunu ortadan kaldırabilir.
Tipik bir CISC komut seti, değişken komut formatı kullanan 120-350 arasında komut içerir. Bir düzineden fazla adresleme modu ile iyi bir bellek yönetimi sağlar.
CISC mimarisi çok kademeli işleme modeline dayanmaktadır. İlk kademe, yüksek düzeyli dilin yazıldığı yerdir. Sonraki kademeyi makine dili oluşturur ki, yüksek düzeyli dilin derlenmesi sonucu bir dizi komutlar makine diline çevrilir.
Bir sonraki kademede makine diline çevrilen komutların kodları çözülerek, mikroişlemcinin donanım birimlerini kontrol edebilen en basit işlenebilir kodlara dönüştürülür. En alt kademede ise işlenebilir kodları olan donanım aracılığıyla gerekli görevler yerine getirilir.
CISC Mimarisinin Avantajları
• Mikroprogramlama, yürütülmesi kolaydır ve sistemdeki kontrol biriminden daha ucuzdur.
• Yeni komutlar ve mikrokod ROM'a eklemenin kolaylığı tasarımcılara CISC makinelerini geriye doğru uyumlu yapmalarına izin verir. Yeni bir bilgisayar aynı programları ilk bilgisayarlar gibi çalıştırabilir.
• Verilen görevi yürütmek için daha az komut kullanır.
• Mikroprogram komut kümeleri, derleyici karmaşık olmak zorunda değildir.
CISC Mimarisinin Dezavantajları
· İşlemci ailesinin ilk kuşakları genelde her yeni versiyon tarafından kabullenilmiştir; böylece komut kodu ve yonga donanımı bilgisayarların her kuşağıyla birlikte daha karmaşık hale gelmiştir.
· Mümkün olduğu kadar çok komut, mümkün olan en az zaman kaybıyla belleğe depolanabiliyor ve kumutlar neredeyse her uzunlukta olabiliyor. Bunun anlamı farklı komutlar farklı miktarda saat çevrimi tutacaktır.
· Çoğu özel güçlü komutlar geçerliliklerini doğrulamak için yeteri kadar sık kullanılmıyor.
· Komutlar genellikle bayrak (durum) kodunu komuta bir yan etki olarak kurar. Bu ise ek saykıllar yani bekleme demektir. Aynı zamanda, sıradaki komutlar işlem yapmadan önce bayrak bitlerinin mevcut durumunu bilmek durumundadır. Bu da yine ek saykıl demektir.
RISC Mimarisi
(RISC: Reduced Instruction Set computer: Azaltılmış Komut Kümeli Bilgisayar)
RISC mimarisi, CISC mimarili işlemcilerin kötü yanlarını piyasanın tepkisi ve ona bir alternatif olarak, işlemci mimari tasarımlarında söz sahibi olan IBM, Apple ve Motorola gibi firmalarca sistematik bir şekilde geliştirilmiştir.
70' lerin ortalarında yarı iletken teknolojisindeki gelişmeler, ana bellek ve işlemci yongaları arasındaki hız farkını azaltmaya başladı.
Bellek hızı arttığından ve yüksek seviyeli diller assembly dilinin yerini aldığından, CISC' in başlıca üstünlükleri geçersizleşmeye başladı. Bilgisayar tasarımcıları sadece donanımı hızlandırmaktan çok bilgisayar performansını iyileştirmek için başka yollar denemeye başlamışlardır.
RISC Mimarisinin Özellikleri
RISC mimarisi aynı anda birden çok komutun birden fazla birimde işlendiği iş-hattı (pipelining) tekniği ve süperskalar yapılarının kullanımıyla yüksek bir performans sağlamıştır.Bu mimari, küçültülen komut kümesi ve azaltılan adresleme modları sayısı yanında aşağıdaki özelliklere sahiptir:
· Bir çevrimlik zamanda bir komut işleyebilme.
· Aynı uzunluk ve sabit formatta komut kümesine sahip olma.
· Ana belleğe "load" ve "store" komutlarıyla erişim; operasyonların kaydedici üzerinde yapılması.
· Bütün icra birimlerinin mikrokod kullanılmadan donanımsal çalışması.
· Yüksek seviyeli dilleri destekleme.
· Çok sayıda kaydediciye sahip olması.
RISC Mimarisinin Üstünlükleri
RISC tasarımı olan bir işlemciyi kullanmak, bir CISC tasarımını kullanmaya göre pek çok avantaj sağlar:
· Hız: Azaltılmış komut kümesi kanal ve superskalar tasarıma izin verdiğinden RISC işlemciler genellikle karşılaştırabilir yarı iletken teknolojisi ve aynı saat oranları kullanılan CISC işlemcilerinin performansının 2 veya 4 katı daha yüksek performans gösterirler.
· Basit Donanım: RISC işlemcinin komut kümesi çok basit olduğundun çok az yonga uzayı kullanırlar.
· Kısa Tasarım Zamanı: RISC işlemciler CISC işlemcilere göre daha basit olduğundan daha çabuk tasarlanabilirler ve diğer teknolojik gelişmelerin avantajlarını CISC tasarımlarına göre daha çabuk kabul edebilirler.
RISC Mimarisinin Mahzurları
· Bir RISC işlemcinin performanı işlediği kodun algoritmasına çok bağlıdır. Eğer programlama iyi yapılmamışsa işlemci atıl durumda kalarak biraz fazla zaman harcayabilir.
· Komut planlaması dikkatli yapılmazsa hatalardan arındırmayı zorlaştırabilir.
· Komutlarını beslemek için çok hızlı bellek sistemleri gerekir.
EPIC Mimarisi
RISC mimarisinin altında yatan iki ana tasarım amacı vardır. Birincisi; derleyicinin kullanmadığı veya kullanamadığı komutlar ve adresleme modlarından kurtulmak. İkincisi; İleride superölçekli mimariyi oluşturacak iş-hattını kolaylaştıracak çekirdek oluşturmak.. Komutların aynı anda farklı birimlerde farklı şekilde çalıştırıldığı ortamlar Süperölçekli mimari olarak adlandırılır.
RISC mimarisinde kullanılan bu süperölçekli yapının tasarlanmasında iki önemli sorun ortaya çıkmaktadır. Birincisi; Komut kümesinde bulunan komutlardan hangilerinin paralel çalıştırılabileceğine karar verilmesi. İkincisi; Paralel çalıştırılabilecek yeterli komutların bulunabilmesi. Bu problemlerin üstesinden gelmek için Intel, Alpha ve benzer işlemci firmaları yonga alanlarının büyük bir kısmını harcamaktadırlar. EPIC mimarisi işte bu sorunların üstesinden gelmek için tasarlanmıştır.
EPIC mimarisi, işlemcinin hangi komutların paralel çalışabildiğini denetlemesi yerine, EPIC derleyicisinden açık olarak hangi komutların paralel çalışabildiğini bildirmesini ister.
Çok uzun komut kelimesi (VLIW) kullanan bilgisayarlar, yazılımın paralelliğine ilişkin kesin bilgi sağlanan mimari örneklerdir. EPIC varolan VLIW mimarisinin dallanma sorunlarını çözmeye çalışarak daha ötesine gitmeyi hedeflemektedir.
Derleyici, programdaki paralelliği tanımlar ve hangi işlemlerin bir başkasından bağımsız olduğunu belirleyerek donanıma bildirir. Bu bilgi, aynı çevrimde hangi işlerin başlatılabileceği ile ilgili daha fazla denetim olmadan donanımda doğrudan değerlendirilir.
EPIC tarzı mimari, VLIV tekniğinin geliştirilmiş bir modelidir denilebilir. Süperskalar işlemcilerinin en iyi yönlerinin bir çoğu EPIC felsefesine uydurulmuştur. Çok belirgin RISC mimarileri olduğu gibi (Hewlet-Packard'ın PA-RISC, Silicon Graphics'in MIPS ve Sur'ın SPARC) EPIC yapısı içinde bir komut kümesi mimarisinden fazlası vardır.
EPIC mimarisinin ilk örneği, IA-64 mimarisine dayalı Itanium işlemci ailesidir.
EPIC Mimarisinin Üstünlükleri
· Paralel çalıştırma (çevrim başına birden çok komut çalıştırma)
· Tahmin kullanımı
· Spekülasyon kullanımı
· Derleme anında paralelizmi tanıyan derleyiciler
· 128 kayan nokta, 128 tamsayı, 64 tahminli büyük kaydedici kümesi
· Dallanma tahmini ve bellek gecikmesi problemlerine karşı üstün başarı
· Gelişmeye ve yeni birimlerin eklenmesine verilen destek ve eskiye karşı uyumluluk
MİKROİŞLEMCİLER
Mikroişlemciler, bilgisayar sisteminin kalbidir. Bilgisayar operasyonlarını kontrol ederek veri işleme işlevlerini yerine getirir. Kısaca işlemci veya CPU, kullanıcı ya da programcı tarafından yazılan programları meydana getiren komutları veya bilgileri yorumlamak ve yerine getirmek için gerekli olan tüm mantıksal devreleri kapsar.
İlk mikroişlemci 1971 yılında hesap makinesi amacıyla üretilen Intel firmasının 4004 adlı ürünüdür. Bir defada işleyebileceği verinin 4-bit olmasından dolayı 4-bitlik işlemci denilmekteydi.
Bir anda ele alabildiği bit sayısına bakılarak güçlü olup olmadığı anlaşılan işlemcilere daha sonra kısa bir süreç için sınırlı sayıda işlem yapabilen 8-bitlik 8008 işlemcisi eklenmiştir. 1974 yılında Intel 8080 adlı işlemcisini, hemen ardından önceki işlemci ile pek farkı olamayan Motorola 6800 adlı işlemcisini piyasaya sürmüşlerdir. Birbirleri arasında küçük farklılıklar olan iki işlemci daha piyasaya sürülmüştür. Bunlar, MOS Technology firması tarafından üretilen 6502 ve Zilog firması tarafından üretilen Z-80 işlemcileridir.
8-bitlik 8080 ve Z-80 mikroişlemcilerinde hesaplama yapmak maksadıyla bol miktarda kaydedici vardır. Bundan dolayı bu işlemcilere kaydediciye dayalı işlemciler denilmekledir.
Diğer 8 bitlik işlemciler 6800 ve 6502, anlaşılır komutlar ve daha fazla adresleme modu kullanmaları, kaydedicilerinin fazla olmamasından dolayı veri manevrasında sık sık belleği kullanmalarından dolayı belleğe dayalı işlemciler olarak anılırlar. Bu gruplar birbirlerinin bellek ve G/Ç yongalarını kullanabilmektedirler.
80X86 İŞLEMCİ AİLESİ
80x86 işlemcisiyle birlikte, intel ailesinin mikroişlemcilerde kullandığı mimariye intel mimarisi (IA) ya da X86 mimarisi denilmiştir.
1. Birinci Kuşak Mikroişlemciler : Birinci kuşak mikroişlemciler, eski orijinal IBM PC. XT tipi ve benzer makinelerde kullanılmıştır. Bu kuşağa giren mikroişlemciler 8086 ve 8088 modelidir.
8086 ve 8088 İşlemciler: IA ailesindeki ilk gerçek mikroişlemci 8086 ve bşraz daha düşük mimarili olan 8088 işlemcisidir. Bu iki işlemci pin uyumsuz olmalarına rağmen her iki işlemci de aynı programı sorunsuz çalıştırabilmektedir. Bu ki çip CISC mimarisine dayalı olarak üretilmişlerdir. Her iki işlemci de 20 adres hattına sahiptir. Adres hattı sayısı işlemcinin ne kadar bellek alanına ulaşabileceğini gösterir. 20 adres hattına sahip bu işlemcilerle toplam 1 MB’ lık bir bellek uzayı adreslenebilir. 8086 ve 8088 farklı veri yolu büyüklüğüne sahiptirler. Veri yolu kapasitesi mikroişlemcinin bir çevrimde ne kadar baytlık bir veriyi okuyabileceğini ya da yazabileceğini tayin eder. 8086 16 bitlik veri yoluna sahipken, 8088, 8 bit veri yoluna sahiptir. 8086 hattındaki işlemciler 4 MHz ile 16 MHz arasındaki hızlarda çalışırlar.
80186 ve 80188 işlemciler: bu işlemcilerin belli başlı özellikleri eklenen yeni komutlar, korumada yeni hata toleranslarıdır. Intel bu işlemcilere halihazırda PC’ lerde kullanılan birçok çevresel çipleri (kesme denetimcisi, aralık zamanlayıcısı, DMA denetimcisi saat üreteci ve diğer çekirdek mantık devreleri) entegre etmiştir. 80186 v e 80188 işlemcileri 6 MHz ile 40MHz arasında hızlara sahiptir.
2. İkinci Kuşak Mikroişlemciler: bu kuşağa giren işlemci sadece 286 modelidir.
80286 İşlemciler: Bu işlemcide komut kümelerinin genişletilmesine devam edildi. Dört adres hattının eklenmesiyle birlikte yeni bir işletim modu olan Korumalı Mod ortaya atıldı. 24 adres hattına sahip olan bu işlemciler 16 MB’lık bellek alanını hesaplayabilirler. Bu işlemcilerin bilgisayarlarda kullanılmasıyla birlikte, küçük ev ve ofis bilgisayarlarına 1985 yılında itibaren PC-AT sistemler denilmiştir. 80286’ nın kullanıldığı yıllarda ilk çipsetler (entegre kümesi) ortaya atıldı. 80286 işlemciler, 6 MHz ile 25 Mhz hızları arasında bir frekansa sahiptirler.
3. Üçüncü Kuşak Mikroişlemciler: 386 işlemcilerin tamamı üçüncü kuşak işlemcileri oluşturur.
80386 İşlemciler: ilk gerçek 32 bit mikroişlemcidir. Bu özelliği sayesinde 4Gb’ lık bellek adreslemesi sağlamıştır. Düz 386 işlemcisinden sonra 80386 SX adlı bir türevi daha çıkarıldı. SX modeli 16 bit veriyolu ve 24 bit adres yoluna sahip d80386 modelin ucuz bir versiyonudur. 80386 işlemcisi altı adet paralel aşama ile çalışan ilk işlemcidir. 386 işlemcilerin kullanıldığı yıllarda işlemciye dayalı bilgisayarlarda ön bellek tanımları yapılması fikri benimsendi.
4. Dördüncü Kuşak Mikroişlemciler: bu kuşaktaki işlemciler güç ve yetenek bakımından hızlı bir çıkış yapmıştır.
80486 İşlemciler: 80386 versiyonunun mimari yönden biraz daha geliştirilmiş bir tipidir. Bu işlemcideki en önemli gelişmelerden birisi, 80486 çekirdek mantığına 80387 matematik işlemcisinin entegre edilmesidir. Günümüzde FPU (Floating Point Unit Yuvarlanmış sayılarla iş yapan birim) olarak yerini alan bu matematik işlemcisi olmadan, bazı programlar pahalı donanım ihtiyacı duyar. 80486 işlemcinin DX ve SX modelleri çıkarılmıştır. SX modeli DX modeline göre daha ucuzdur ve SX modelinde matematik işlemcisi yoktur. SX modeli için geliştirilen 387SX işlemcisinin geliştirilmesiyle birlikte az güç harcayan ve performansı artan SL modeli piyasaya sürüldü. Bu model özellikle taşınabilir bilgisayarlarda kullanıldı. Anakart üzerindeki çekirdek frekansın çarpan devreleri vasıtasıyla ayarlanmasıyla DX2 ve DX4 modelleri tanıtıldı.
Beşinci Kuşak Mikroişlemciler
Pentium İşlemciler: Birden fazla icar birimine sahiptir. 60-66 MHZ hızlarında üretilmişlerdir. u ve v olarak bilinen iki iletişim kanalında aynı anda iki ayrı komut çalıştırılabilir. 8 KB’ lık komut kodu, 8KB’ lık veri ön belleği vardır. 64 bitlik harici veriyoluna sahiptir. Dahili veriyolu 128 ile 256 bit genişliğindedir.
Altıncı Kuşak mikroişlemciler
Pentium Pro İşlemci: derin iş hattı, 100 MHz’ lik saat hızının aşılmasında önbellek erişim darboğazını ortadan kaldırmak için geliştirilmiştir. Ayrıca işlemcinin bellek erişim hızını arttırmak için ikincil ön bellek işlemcinin yakınına alınmıştır. Dört adet işlemciyi destekleme özelliğine sahiptir. Özellikle server tipi bilgisayarlarda kullanılır. İşlemci içinde L1 önbellek, işilemci dışında ama aynı hızda L2 ön bellek kullanılmıştır.
Pentium II işlemci: Pentium Pro işlemciye MMX(multi medya) özelliklerinin eklenmesiyle ortaya çıkmıştır. 100 MHz hızında ön veri yolu, birbirinden bağımsız çift veri yolu, SLOT paketleme tipi ilk defa bu işlemcide kullanılmıştır, L2 ön belleği işlemci çekirdeğinden dışarı fakat kılıf içine alınmıştır.
Pentium II Xeon işlemci: özellikle server tipi bilgisayarlar için tasarlanmıştır. Geniş ve hızlı ön belleklere sahiptir. 400-450 MHz hızlarda çalışırlar. Birden fazla işlemciyi destekler.
Celeron İşlemciler: Pentium II işlemci ile mimari yönden aynı L2 ön bellek yönünden farklıdır. 16 Kb komut ve 16 KB veri olmak üzere toplam 32 KB’ lık L1 ön belleğe sahiptirç işlemci kartuşu üzerinde L’2 ön belleği yoktur.
Pentium III İşlemciler: önceki işlemci modellerine ilave olarak 3D komutları vardır. Aynı anda matematiksel ve 3D komutların kullanılmasına izin veren SIMD (Single Instruction Multiple Data) teknolojisine sahiptir. Yani tek komutla çok data işleme özelliği vardır. 3D uygulamalarını hızlandırmak için 70 adet yeni komuta sahiptir.
Pentium IV işlemci: 1.4 GHz’ den başlayan hızlarda üretilmişleridir. Yüksek saat çevrimlerinde, tamsayı ve kayan nokta hesaplamalarını yüksek bir performansta başarmak için NetBurst Mimarisi tasarlanmıştır. 400 Mhz hızında sistem veri yolu kullanır. Görselliğin yoğun olarak kullanıldığı internet ortamı, ses ve görsel iletişim 3D uygulamalar, ses tanınması, MP3 çözümü, DVD oynatımı gibi uygulamalarda yüksek performans sunarken, ısının kontrol edilebilir derecede tutulmasını sağlar.
Not : Alıntıdır...