Beşiktaş Forum  ( 1903 - 2013 ) Taraftarın Sesi


Geri git   Beşiktaş Forum ( 1903 - 2013 ) Taraftarın Sesi > Eğitim Öğretim > Dersler - Ödevler - Tezler - Konular > Elektronik & Bilgisayar

Cevapla
 
LinkBack Seçenekler Stil
Alt 06-09-2008, 01:45   #1
ยŦยк
 
Constantin - ait Kullanıcı Resmi (Avatar)
 
Mikroişlemciler

1.) Mikroişlemcilerin Tarihsel Gelişimi
1970 den beri, bilgisayar teknolojisinde çok hızlı ve kapsamlı gelişmelere tanık olmaktayız. Bilgisayar teknolojisindeki bu hızlı gelişmenin temelinde, mikroişlemcilerin doğuşu yatmaktadır. Bilgisayarın günümüze kadar geçirdiği evrim üç ana kuşak içinde toplanabilir. Bunlar, elektronik öncesi kuşak, elektronik kuşak ve mikrobilgisayar kuşağıdır

1.1) Elektronik Öncesi Kuşak
Bilgisayar kavramının gelişmesinde ilk adımlar, hesap makineleridir. Tarihi kaynaklar, ilk hesap makinesinin 1642 yılında Fransız matematikçi Blaise Pascal tarafından gerçeklendiğini belgelemektedir. Pascal'ın gerçeklediği ve "Machine Arithmetique" adını verdiği bu hesap makinesi sadece toplama ve çıkarma işlemlerini yapabiliyordu. Yapısı tamamen mekanik ve çarklara dayalı olan bu makine en çok sekiz basamaklı sayıları toplayıp çıkarabiliyordu.
1820 yılında C.X, Thomas, Pascal'ın hesap makinesine çarpma ve bölme yeteneklerini eklemeyi başarmıştır. Ancak bu dört işlem hesap makinesi kullanımı zor olduğu için kullanılmamıştır.Aynı yıllarda, İngiliz matematikçi ve makine mühendisi Charles Babbage, Pascal'ın 1642 de gerçeklediği iki işlem hesap makinesini geliştirmeye çalışmaktaydı. Babbage'e göre Pascal'ın makinesinin eksik yanı, her işlemin insan tarafından yapılmasmı gerektirmesi idi. "Aynı makine ardarda işlemleri kendisine verilecek bir işlemler zinciri ile nasıl yapabilirdi ?" sorusu Babbage'e yön vermiştir. Babbage bu düşünce ile matematiksel işlemleri peş peşe gerçekleyebilecek bir mekanizmanın tasarımına girişti ve düşüncesini küçük bir model üzerinde gerçekledi (1822). Farklara dayanarak çalışan bu makineye "Difference Engine" adını verdi. Bu model makinenin, amaçlanan biçimi, günün tekniği yetersiz kaldığı için, gerçeklenemedi.
Babbage bu başarısızlığına rağmen "Analitik Motor" adını verdiği ikinci makinesini önerdi (1835). Analitik motor, temelde bir hesap makinesi olmayıp aritmetik işlemleri peş peşe yapabilme ve karar verebilme yeteneğine sahip bir makine olarak tasarlanmıştır.
Aynı yıllarda, dokuma tezgahlarının birbirine zincir düzeninde bağlanmış delikli kartlarla programlanması tekniği, J.M. Jacquard tarafından bulunmuştu. Bu buluş Babbage'i etkiledi ve aynı tekniği analitik motora uygulamaya başladı. İki takım kart zinciri kullandı. Birinci kart zincirine, üzerinde işlem yapılacak verileri, ikinci kart zincirine de, veriler üzerinde yapılacak işlemleri sırasıyla delerek işledi Analitik motorun kendisi ise iki parçadan oluşmaktaydı.Birinci parça bellek elemanı olarak çalışmakta ve 50 tane sayıcı tekerlekten kurulu idi. Bellek 50 sayıyı saklayabilmekte ve bu sayılar l000'e kadar değer alabilmekteydiler. Diğer birim ise hesaplama birimi idi.
Babbage' nin analitik motorunun çalışması şöyle anlatılabilir. Bir işlem adımında, kart zincirleri birer adım ilerler, Delikli kartların karşılarında bulunan kollar, kartlardaki deliklere göre konumlanırlar. Bu konumlamaya göre hesap birimi yapacağı işlemi ve üzerinde işlem yapacağı veriyi öğrenir, Analitik motor, işlemlerin ardışık yapılması, bir çevrim içinde çalışma gibi günümüz yazılımının temel kavramlarını ortaya çıkarması açısından da önem taşımaktadır. Ayrıca Babbage'in önerdiği bu makine, değişmez bir donanımın, bir bellekte saklanacak bilgilerle yönlendirilebileceği kavramını getirmesi açısından günümüz bilgisayarlarının temelini oluşturmaktadır. Babbage'ın önerip gerçekleyemediği bu makineler, yaklaşık bir yüzyıl sonra (1937) IBM 'in desteği ile Harward Üniversitesinde, Howard Aiken tarafından gerçeklenmiştir.
19. Yüzyılda, bilgisayarın gelişmesine katkısı olan bir diğer gelişme 1880 dolaylarında bir yarışma sonunda ortaya çıkmıştır. 1880 yılında A.B.D.'nin nüfusu 62 milyon idi ve beş yılda bir nüfus sayımı yapılıyordu. O yıllarda, sayım sonuçlarının değerlendirilmesi yaklaşık beş yıl almaktaydı. Bu gerçekten hareketle, gelecek yıllarda yapılacak nüfus sayım sonuçlarının değerlendirilmesinin, bir sonraki sayıma kadar bitmeyeceği anlaşıldı. Bu nedenle, sayım sonuçlarını değerlendirmeyi hızlandıracak yeni bir sistemin geliştirilmesi araştırmalarının destekleneceği açıklandı. Bu araştırma desteğinden yararlanmak isteyen MIT öğretim üyelerinden Herman Hollerith " Sayım Makinesi " adını verdiği bir makine geliştirdi, Bu makinenin temel çalışma ilkesi şöyle açıklanabilir: Her vatandaşa ilişkin bilgiler bir kart üzerine, daha önceden belirlenmiş alanlara delikler açılarak işleniyordu, Daha sonra bu kartlar sayım makinesi tarafından okunabiliyordu, Kart okuma yöntemi şöyle açıklanabilir: Kartlar içi cıva dolu bir kabın üzerinden geçirilmekte ve bu arada kartın üstüne de iletken fırçalar değmektedir, Karta değen fırçalardan deliklere rastlayanlar cıvaya değmekte ve böylece elektrik devresini tamamlamaktadır. Sonuçta kart üzerindeki deliklerin konumları öğrenilmekte ve dolayısıyla kişiye ilişkin bilgiler elde edilmektedir, Hollerith'in geliştirdiği sayım makinesi 1890 ABD sayımlarında kullanılmış ve sayım sonuçlarını, bir önceki değerlendirme süresinin üçte biri zamanda verebilmiştir.
Yakın zamanlara kadar kullanılan delikli kartların da bulucusu olan Hernıan Hollerith 1911 yılında başka iki firma ile birlikte "Conıputing Tabulating Recording Company" firmasını kurdu, Bu firmanın adı, daha sonra Iııternatioııal Busiııess Machine (IBM) olarak değiştirildi.
1938 yılında İngiliz matematikçi Alan M. Turing, kendi adını verdiği bir hesap makinesi önerdi. Tamamen soyut olan bu makine, gerçekleşmemiş olmasına karşın, bilgisayar kavramının öğretilmesi konusunda başarılı oldu, Turing makinesi bir giriş-çıkış birimi, bir denetim birimi ve sonsuz uzunlukta varsayılan bir şeritten oluşmaktaydı. Şerit program ve verilerin saklanması için düşünülmüş bir bellekti.

1.2) Elektronik Kuşak
Elektronik bilgisayar düşüncesi, ancak 1919 yılında ortaya atıldı, Çünkü bu tarihte Eccles ve Jordan "flip-flop" devresini bulmuşlardı. Ancak, elektronik bilgisayar konusundaki ilk ciddi çalışmalar 11. Dünya Savaşı yıllarına rastlar Bu yıllarda A.B.D ordusu, balistik yöriinge hesaplarını hızlı bir biçimde yapabilecek bir makinenin arayışı içindedir. Bu nedenle Pennsylvania Üniversitesinde 1942 yılında başlatılan bir çalışma 1945 yılında sonuçlandı ve ilk modern bilgisayar olarak bilinen ENIAC "Electronic Numerical lntegrator and Calculator" ortaya çıktı, 18.000 elektronik tüpten oluşan ve 100 KW güç harcayan bu dev bilgisayar J.P. Eckert ve J.W, Mauchley tarafından gerçeklenmiştir. 30 metre boy ve 30 ton ağırlığındaki ENIAC'a çok kişi, haklı olarak, çalışmaz gözü ile baktı. Ancak ENIAC dokuz yıl çalışma başarısı gösterdi. ENIAC aritmetik işlemlerin yanı sıra diferansiyel denklem de çözebiliyordu. Ayrıca bölme ve kök alma için özel devreleri mevcuttu. "e" sayısını 2000 basamağa kadar hesaplayabiliyordu. Günümüz bilgisayarlarının atası sayılan ENIAC 'ta sayılar onluk düzende saklanıyor ve onluk düzende işleme katılıyordu. Bir toplama işlemini 200 mikro saniyede, bir çarpma işlemini 2300 mikro saniyede yapabiliyordu.
ENIAC' ın yapımı sürerken Dr. Von Neumann ve arkadaşları, Babbage'nin önerdiği makine üzerinde çalışıyorlardı. Bu çalışmalar sonunda, programı bellekte saklanabilen ilk bilgisayar olan EDVAC ( Electronic Discrete Variable Automatic Computer ) ortaya çıktı (1952). EDVAC' ın 4096 bellek gözü bulunmaktaydı ve veriler ile program aynı bellekte saklanmaktaydı. Bu yöntem günümüz bilgisayarlarının çoğunda kullanılmaktadır.
1947 yılında 23.000 röle ve 13.000 tüpten oluşan SSEC (Selective Sequence Electromc Calculator) IBM firmasınca gerçeklenmiştir.
1948 yılında transistörün bulunuşu, bilgisayar teknolojisinin gelişmesinde sıçramaya neden olmuştur. 1960'lı yıllara gelindiğinde, artık bilgisayarlar standart olarak üretilip satılmakta veya kiraya verilmekteydi.
60'lı yıllarda gerçeklenen bilgisayarlar, boyutça büyük olmalarının yanı sıra ortam koşulları açısından nazlı makinelerdi. Çalışma ortamları nem ve sıcaklık açısından denetlenmek zorunda idi. Bu durum, bilgisayarı, bilgi işlem odasına hapsetmekte ve ofis ve fabrika ortamına inmesini engellemekte idi. Transistör teknolojisindeki gelişmeler, hem bilgisayarın boyutunu küçülttü hem de ortama olan bağımlılığını azalttı. Bu arada harcadığı gücü de önemli ölçüde azalttı. Sonuçta, fiyat olarak ucuz, boyut olarak küçük, fabrika veya ofis ortamında çalışabilen orta boy (mini) bilgisayarlar devri başlamış oldu.
Boyut ve fiyatı azaltan bir başka gelişme, tüm devre teknolojisinin gelişmesidir. Bu yeni teknoloji sayesinde çok sayıda transistör ve pasif elemandan oluşan elektronik devre tek bir tüm devre içine sığdırabilmiştir.
60'lı yıllara kadar bilgisayarın elektronik yapısı ön plandaydı. Bilgisayarın programlanması özel bilgi ve beceri gerektiriyordu. Giderek bilgisayarların standart olarak üretilmesi, dolayısıyla bilgisayar sayılarının ve bilgisayar kullanıcılarının artması, kullanıcılara kolay gelecek ve makineden bağımsız programlama dillerinin geliştirilmesinin gerektiğini ortaya çıkardı. Bu nedenle bu dönemlerde (daha çok bilimsel ve mühendislik çalışmaları için), FORTRAN, (ticari uygulamalar için) COBOL programlama dili ve bu diller için derleyiciler geliştirildi. Bu yıllarda bilgisayar donanım fiyatları, yazılım fiyatlarına göre o denli yüksekti ki, bilgisayar satın alana yazılım, genelde çok ucuza, hatta bazen bedava veriliyordu.

1.3) Mikroişlemci Kuşağı
1971 yılına gelindiğinde, yarı iletken teknolojisinde önemli bir sıçrama daha gözlendi. Bu yeni gelişme, bilgisayarın temel elemanı veya beyni olarak kabul edilen Merkezi İşlem Biriminin (MİB) tek bir tüm devre içine sığdırılmasıdır. Bu konudaki ilk ürün Intel firması tarafından piyasaya sürüldü. 4-bitlik olan bu İlk mikroişlemcinin adı I-4004 idi. Bunu I-4040 ve ardından 1973'te 8 bitlik I-8080 izledi. 1975’te Motorola firması MC6800 adında 8-bitlik mikroişlemcisini piyasaya sundu. Böylece yarış başlamış oldu.
1971 yılında başlayan mikroişlemciler kuşağı, hızlı bir gelişme göstermektedir. Her geçen gün daha yetenekli ve güçlü mikroişlemciler üretilmektedir. 1978 lerde 16-bitlik mikroişlemciler seksen ortalarında 32-bitlik mikroişlemciler üretilmeye başlanmıştır. Üretici firma sayılarında da artışlar gözlenmekle beraber, genelde, Intel ve Motorola firmalarının üretimleri aynen veya benzer şekilde üretilmeye çalışıldığı gözlenmektedir. Günümüzde, gelişmiş mikroişlemci olarak Intel ailesinden I-8088, I-8086, I-80186, I-80286, I-80386 ve I-80486, Pentium, Motorola ailesinden MC68000, MC68010, MC68020, MC68030 ve MC68040’ı görmekteyiz.

2.) Mikroişlemcinin Tanımı
Bilgisayarlarda en önemli donanım parçalarından birisi olan Merkezi İşlem Birimi (MIB), genel olarak bilgisayarlarda mikroişlemci adıyla anılırlar Mikroişlemci; klavye, monitör, sistem ve bunların birbirine bağlantısını sağlayan kablo ve diğer çevre elemanlarıyla birlikte bir bilgisayarın beyni olarak düşünülebilir. Mikroişlemci, bilgisayarlarda aritmetik ve mantık işlemlerinin yapıldığı ve bunların denetlendiği bir merkezdir Mikroişlemci önceleri LSI teknolojisi ve günümüzde de VLSI teknolojisi ile üretilen ve 1995 yılı itibarıyla içerisinde milyonlarca kazanç elemanı transistörlerden meydana gelen elektronik bir elemandır.
MİB, kullanıcı ya da programcı tarafından yazılan programların meydana getirdiği ve bir program dahilinde diğer elemanlarında yardımıyla makine koduna çevrili komutları veya bilgileri yorumlamak ve yerine getirmek için gerekli olan tüm mantıksal devreleri kapsar,
Bir mikroişlemcinin çok karmaşık iç yapısına geçmeden önce dünyaca ünlü birkaç işlemciden bahsetmek gereklidir. En popüler olan ve genellikle Amerikan şirketlerince üretilen mikroişlemciler, MOTOROLA, INTEL, AMD, CYRIX ve diğerleridir. 80’li yıllarda ilk ve ikinci kuşak işlemci üreticileri, daha sonraları yukarda adı geçen firmalara ayak uyduramayarak, asli işleri olan bellek ve yardımcı entegre üretimine dönmüşlerdir.
Günümüz bilgisayarlarında en çok kullanılanlar, MOTOROLA firmasınca üretilen, önceleri 680X0 kodlu olan ve 90’lı yıllarda PowerPC olarak anılan İşlemciler (bu şirketin değişik adlarla pazarladığı pek çok işlemci sanayide kontrol amaçlı kullanılanlar arasında birinci sırada dır) ve INTEL firmasın tarafından üretilen önceleri 80X86 koduyla üretilen ve 90’lı yıllarda Pentium adıyla anılan ve günümüzde de PX olarak lanse edilen mikroişlemcilerdir. Buradaki X karakteri sayısal bir değeri ifade etmektedir. Bu iki işlemcinin diğerlerine nazaran daha fazla kullanılır olmasının sebebi, dünyaca iki ünlü bilgisayar firmasının markalarında bu iki ismi tercih etmeleridir APPLE / Machintosh firmasınca üretilen bilgisayarlarda başlangıcın dan günümüze kadar MOTOROLA tercih edilmiştir. İkincisi ise, dünyada bilgisayar denilince ilk akla gelen ve adıyla özdeşleşen IBM’dir. Bu şirkette bütün makinelerinde INTEL’ in mikro işlemcilerini tercih etmişlerdir. Böylece bu iki firmanın mikro işlemci pazar payı diğerlerine nazaran oldukça yüksek olmuştur.

3.) 8-Bit Mikroişlemciler
1971 yılında Intel firmasınca üretilen ilk mikroişlemciye benzer 4-bitlik 4004 entegresi masa üstü hesaplayıcılarda kullanılmıştır. Bir bilgisayar için tasarlanmamış olmasına rağmen ilk genel amaçlı entegre olarak kabul edilmiştir.
Yine aynı firma tarafından PMOS teknolojisiyle 8008 işlemcisi geliştirilmiş ve sınırlı görev yapsa da ilk kuşak mikroişlemci olarak anılmıştır. Daha sonra NMOS teknolojisi kullanılarak ikinci kuşak 8-bitlik ilk genel amaçlı 8080 işlemcisi geliştirildi. 1974 yılında yine dünyaca ünlü başka bir entegre üreticisi olan Motorla firması 8-bitlik 6800 mikroişlemcisini üretti. Bu işlemci bazı küçük farklılıklarla birlikte 8080 işlemcisinin bir benzeri sayılmaktaydı. Hemen bir sonraki yılda MOS Technology ve Fairchild firması bu kitabında temelini oluşturan 6500 serisi işlemcileri üretmeye başladı. Bu işlemcide çok küçük birkaç ayrıcalıklarla 6800 ile benzerlik göstermekteydi. Her iki işlemcide kullanılan bütün yardımcı elemanlar birbirlerini tam olarak desteklemekteydi. Daha sonra Zilog firması 8080 işlemcisinin bir benzeri olan ve birkaç üstün özellikle donatılı Z-80 işlemcisini tanıttı. Bütün bu dört çeşit mikroişlemci kendi aralarında bazı özelliklerinden dolayı iki gruba ayrıldı. Bunlardan 8080 ile Z-80 ve 6800 ile 6500 işlemcileri yapısal bakımdan birbirleri ile benzerlik göstermekteydi. 8-bitlik 8080 / Z-80 grubu mikroişlemcilerin hesaplayıcılar olarak tasarlanması ve bundan dolayı da kaydedicilerinin bol kullanılması, bunların kaydediciye dayalı mimari olarak anılmasına sebep oldu. 6500/6800 işlemci grubunun küçük bir bilgisayar sınıfına girecek şekilde daha anlaşılır komutlar ve daha fazla adresleme modu kullanması sebebiyle belleğe dayalı mimari olarak anıldılar. Bu iki grup 1980 yıllarının en iyi satan işlemcileri olarak ün yaptılar. 8-bitlik işlemcili bilgisayarların bellek adresleme kapasiteleri, (16-bitlik adres yoluyla ancak 216=64 KB) 65.536 Bayt ile sınırlıydı ve bu kapasite gittikçe büyüyen yazılım ve programlara yetersiz gelmekteydi.
4.) 16 Bit Mikroişlemciler
Intel veya Motorola’nın haricinde birçok üretici firma, 8 veya 16-bitlik işlemci geliştirmiştir fakat, ülkemize ilk giren bilgisayarda bu iki firmanın işlemcisinin kullanılmış olması sebebiyle daha çok bu iki işlemci üzerinde durulacaktır.
Intel firması 1974 8-bitlik başka bir 8080 versiyonu mikroişlemci geliştirmesine rağmen asıl atılımını 1978 yılında NMOS teknolojili tek entegrelik 16-bitlik 8086 işlemcisiyle yaptı. 8086, 8080’in bir ileri versiyonu olmasıyla birlikte birbirleri ile uyumlu değillerdi. Daha sonra Intel firması 8086 ile aynı mimari yapıya sahip bir türevi olan 8088’i çıkardı. Bu işlemciler den 8086, 16-bitlik veri yoluna sahip olmasına rağmen 8088, 8-bitlik veri yoluna sahipti. Bu sebepten 8088, 8086’dan biraz daha yavaştır Bu sıralarda IBM firması artık bir endüstri standardı haline gelen PC bazlı bilgisayarlarında 8088 işlemcisini kullandı. O günlerde üretilen bilgisayarlar iki standart birden kazandılar. Birincisi PC (Personel Computer - Kişisel Bilgisayar) standardı ikincisi, 8-bitlik mikroişlemcilerden sonra 16-bitlik işlemcilerin kullanıldığı bilgisayarlar XT (eXtended Technology - Gelişmiş Teknoloji) standardıdır.
1979 yılında Motorola 68000 kodlu 16-32 bit arasında bir mikroişlemci üretti. 16’bitlik veri yoluna sahip bu işlemcideki kaydedicilerin 32-bitlik olması, 16 Megabaytlık bir bellek adreslemesini de beraberinde getirdi. Adresleme kapasitesinin bu denli büyük olması 68000 mikroişlemcisini popüler yaptı. ve Apple Machintosh, Amiga gibi ünlü firmalarca bilgisayarlarda kullanılmıştır.
1982 yılında yine Intel firmasınca yeni bir standart olan ve kullanıldığı bilgisayarlara AT (Advandce Technology- İleri Teknoloji) denilen 80286 mikroişlemcisini üretti. Bu işlemcide kaydedicilerle birlikte hem veri yolu hem de adres yolu 16-bit olarak tasarlandı. Mikroişlemci içerisindeki 16-bitlik kaydedici çıkışları çoğaltılarak (bir kaydıran kaydedici vasıtasıyla dört defa kaydırılarak) 20-bite çıkarıldı (220=16 Megabayt) ve böylece 1 Megabaytlık adresleme kapasitesi elde edilmiş oldu.
1985 yılına kadar bilgisayarların önemli pazar payına sahip iki işlemcisi, DOS (Windows) işletim sistemini kullanan 80286 ve MacOS (System X) işletim sistemini kullanan 68000’dir Bu sıralarda ağ sistemlerinin işletim sistemini oluşturan UNIX işletim sisteminin ortaya çıkması bu kuşak mikroişlemcilerin adresleyebildiği bellek kapasite sinden daha fazla bellek gerektirdi. Bu sebeple yeni bir gelişmeyle Motorola firması 68000’in bir gelişmiş versiyonu olan ve sanal bellek kullanma imkanı sağlayan 68010 işlemcisini üretti. Böylece büyük yazılımlar için gerekli olan büyük bellek kapasiteleri sistemde kullanılan disklerin bir bölümünün ana belleğin bir parçasıymış gibi davranması sağlanarak halledilmiş o1du

5.) 32-Bit Mikroişlemciler
Mikroelektronik teknolojisinin hızla gelişmesi beraberinde mikroişlemcilerin gelişmesini dolayısıyla da sistemde kullanılan program ve yazılımlarında gelişmesini sağladı. Yeni geliştirilen bir mikroişlemci anında bir bilgisayarda kullanıldı ve buna göre de kısa sürede bir çok yazılımlar geliştirildi. Yazılımların kapladığı bellek alanlarının büyümesi beraberinde bellek problemini doğurdu ve mikroişlemcilerde yeni tasarımların oluşması gerçekleşti. Bunlardan en önemlisi gerçek ve bütünüyle 32-bitlik mikroişlemcilerin ortaya çıkması ve İşlemcilerin performansını artıran destek devrelerinin geliştirilmesidir
1984 yılında Motorola 68020 işlemcisini, ardından 1985’te Intel 80386 işlemcisini üretti. Bu iki mikroişlemci de gerçek birer 32’bitlik işlemcidir. 80386 aşağı-yukarı daha önceki üretilen 80286’dan 8086’ya kadar geriye doğru uyumludur. 8086’da yazılmış programlar 80386’lı bilgisayarlarda çalışabilir fakat, 80386’da yazılan gerçek mod (Real Mode) dışındaki programlar alt versiyondaki işlemcili bilgisayarlarda çalışmaz. AT tipi makinelerin önemli bir özelliği de gerçek mod ve korumalı mod (Protected Mode) denilen iki ayrı modda çalışabilmeleridir. Gerçek modda sistem normal olarak 1 MB.' lık bellek kullanarak kendi başına çalışır.
Korumalı modda, bilgisayar başka bilgisayarlarla ortak olarak çalışabilir ve aynı anda ortak dosya paylaşımı, ortak sistem kullanımı ve zaman paylaşımı denilen sistem kullanılır. Ayrıca bu modda 1 MB sınırı aşılarak büyük bellek kapasiteleri kullanılabilmektedir. 32-bitlik işlemciler 246 adres yolu ile Terabayt cinsinden bellek kapasitesi kullanabilir. Fakat günümüzde bu rakam çok fazla ve aynı zamanda pahalıdır.
Bu yıllarda Intel’in ürettiği işlemciler IBM uyumlu PC ve AT tipi bilgisayarlarda kullanılırken Motorola işlemcileri mühendislik ve bilimsel araştırmalar için kullanılan SUN ve HP gibi iş istasyonları (workstation) da tercih edildi.
1998 yılında 80386 'nın bir değişik modeli olan 80386SX geliştirildi. Bu işlemcide de 32 bitlik kaydediciler kullanılırken, 80286 ile soket uyumluğu sağlamak için veri yolu 16 bite indirildi. Bu durum normal 80386nın DX olarak anılmasına sebep oldu.
1987’de Motorola içerisinde Bellek Yönetim Birimi bulunan 32-bitlik diğer bir versiyonu olan 68030 ve 1989’da da yine 32-bitlik 68040 modeli işlemcisini üretti. Bu sırada Intel firması da 32-bitlik süper performans ve hızda 80486 mikroişlemcisini üretti. Bu tip işlemciler de farklı olarak kayar noktalı hesaplama birimi (FPU), bellek yönetim birimi (MMU), ön bellek gibi birimler geliştirildi. Daha önceleri işlemci dışında kullanılan önbellek ve kayar nokta aritmetik birimi işlemci içerisine alındı. Böylece sistemin verimliliği artmış oldu.
Constantin Ofline   Alıntı ile Cevapla
Alt 06-09-2008, 01:45   #2
ยŦยк
 
Constantin - ait Kullanıcı Resmi (Avatar)
 

6.) Mikroişlemci Mimarisi
Bir mikroişlemci mimari yetenekleri ve tasarım felsefesiyle şekillenir. Mimari, kayar noktalı sayıların standartlaştığı, komutların ve verinin bellek-kaydedici arasında taşınmasında kullanılan kaydedicilerin büyüklüğü ve sayısı gibi tasarım kararlarının dahil olduğu, işlemci yeteneklerinin nihai sonucunu gösteren bir yapıdır.
Günümüzde, CISC (Complex Instruction Set Computer - Karışık Komut Kümeli Bilgisayarlar) mimarisine sahip bilgisayarlar ile RISC (Reduced Instruction Set Computers Azaltılmış Komut Kümeli Bilgisayarlar) işlemcili bilgisayarlar arasında kıyasıya bir rekabet yaşanmaktadır. CISC mimarisi Intel 80486, Pentium ve Motorola 68030 gibi işlemcileri oluştururken, IBM 360 ve DEC WAX gibi büyük bilgisayarlarda bu yapıyı kullanmaktadırlar. RISC mimarisi, Motorola PowerPC ve MIPS işlemcilerinde ve IBM 801 ve SUN Mikrosistem gibi büyük sistemlerde kullanılmaktadır.

6.1) CISC İşlemciler
PC’lerde günümüze kadar RAM’ların sınırlı ve pahalı olduğu 1960 ve 70’li yıllarda geliştirilen CISC işlemci mimarisi kullanılmaktadır. Daha çok programların az bellek kullanımı gerektirdiği sistemlerde yer almakta ve az bellek kullanımı için kompleks komutların ve mimarinin oluşumunu ortaya çıkardı. Mimarideki kompleksliğin artması, işlemci performansında negatif oluşumların ortaya çıkmasına sebep oldu. Bununla birlikte programların yüklenme sinde ve çalıştırılmasında düşük bellek kullanımının hızlı olması mesele teşkil etmemekteydi. 1980 ve 90’lı yıllarda bellek ihtiyacının artması işlemci tasarımcılarının kararlarını gözden geçirmesine sebep oldu. Eskiden kullanılan bellekler 16-32Kbayt iken yeni mimarilerde 8-16 Mbayt’ a çıktı ve günümüz kişisel bilgisayarlarında bir standart halini aldı.

6.2) RISC İşlemciler
RISC işlemcili sistemlerde amaç, komut işlenmesinin mümkün olduğu kadar hızlı olmasıdır. Bunu başarmak için ana yol işlemcinin çalıştırdığı komutların basitleştirilmesidir. Komutların basitleştirilmesi ve azaltılması işlemcinin uzun ve kompleks olandan daha hızlı çalışabilmesi demektir. RISC mimarisi, aynı anda birden fazla komutun işlendiği tekniği içeren kanal (pipelining) ve süper skalar çalışmasının kullanımıyla yüksek bir performans sağladı. Doğal olarak bu tasarım tekniği yüksek bellek ve çok ileri derleme teknolojisini gerektirdi. 1980'lerin ortasında bellek fiyatlarının önemli olmadığı yüksek performanslı işistasyonlarında RISC ta banlı işlemciler çok sık kullanıldı. 1990’larda VLSI teknolojisinin gelişimiyle birlikte belleklerin eskiye nazaran daha ucuz oluşu ve makine diline bağımlılığı ortadan kaldıran ileri derleyicilerin çok yaygın olduğu sistemlerde ve hatta PC' lerde yüksek performanslı RISC işlemciler kullanılmaktadır. Örnek olarak CRAY, IBM, DEC, HP, APPLE ve SUN 'ın ürettiği iş istasyonlarını veya süper bilgisayarlarını gösterebilir.

6.3) CISC ve RISC Tabanlı İşlemcilerin Karşılaştırılması
CISC ve RISC tabanlı işlemcilerin karşılaştırılmasında iki önemli faktör farklılıklarını ortaya çıkarmada yeterlidir.
Hız: Genelde RISC çipleri kanal tekniği kullanarak eşit uzunlukta segmentlere bölünmüş komutları çalıştırmaktadır. Kanal tekniği komutları kademeli olarak işler ki bu RISC’in bilgi işlemini CISC’den daha hızlı yapmasını sağlar RISC işlemcisinde tüm komutlar 1 birim uzunlukta olup kanal tekniği ile işlenmektedir. Bu teknikte bazıları hariç komutlar, her bir basamağında aynı işlemin uygulandığı birimlerden geçerler. Kanal teknolojisini açıklamak için herhangi bir komutun işlenmesindeki adımlar ele alınırsa:
Komut kodu ve işlenecek veriler dahil bütün bilgilerin MIB’deki kaydedicilerde olduğu düşünülürse, birinci adımda yapılacak işin kaydedicide bulunan komut kodu çözülür, ikinci adımda üzerinde çalışılacak veri (işlenen) kaydediciden alınıp getirilir, üçüncü adımda veri, komuta göre Aritmetik ve Mantık Biriminde işleme tabii tutulur ve dördüncü adımda da sonuç kaydediciye yazılacaktır. Böylece bir komutun işlemesi için her bir basamak bir saat çevrimi gerektirirse, dört çevrimle (adımda) gerçekleşmiş olmakta ve bir adım bitmeden diğeri başlayamamaktadır.
Kanal tekniği ile çalışan işlemcilerde birinci adımda komut kodu çözülür, ikinci adımda birinci komutun üzerinde çalışacağı veri (işlenen) kaydediciden alınırken, sıradaki ikinci işlenecek olan komutun kodu çözülür. Üçüncü adımda ilk komutun görevi ALU’da yerine getirilirken, ikinci komutun işleyeceği işlenen alınıp getirilir. Bu anda sıradaki üçüncü komutun kodu çözülür ve işlem böylece devam eder.
Kanal (Pipeline) tekniğinde çevrim zamanın düşmesi için komut kodlarının hızlı çözülmesi gereklidir. RISC mimarisinde tüm komutlar 1 birim uzunlukta oldukları için komut kodunu çözme işlemi kolaylaşır. Sistemde kullanılan kaydedicilerin simetrik bir yapıda olması, derleme işlemini kolaylaştırmaktadır. RISC işlemcilerde belleğe yalnız yükle ve depola komutlarıyla ulaşılır.
Bazı eski CISC mimarisinde de olmasına rağmen RISC mimarisinin sabit uzunluktaki basit komutlarla çalışması pipeline sistemini daha iyi kullanmasına sebep olmaktadır. Bu yüzden hesaplama oranlarının birinci öncelik arz ettiği yerlerde iş-istasyonları ve dağıtıcılarda çok tercih edilmektedir.
Transıstör sayısı: CISC mimarisinde kullanılan transistor sayısı RISC’e nazaran daha fazladır. Transistör sayısının bir yerde çok olması fazla yerleşim alanı ve ayrıca fazla ısı demektir. Bundan dolayı da fazla ısı üretimi soğutma olayını gündeme getirmektedir. CISC tabanlı Pentium işlemcilerde karışık ısı dağıtıcısı veya soğutma fanlar kullanılmaktadır.
RISC mimarisindeki önemli üstünlüklere karşı bazı mahzurları ortaya çıkmaktadır. RISC mimarisi, CISC’in güçlü komutlarından yoksundur ve aynı işlemi yapmak için daha fazla komut işlenmesini gerektirir. Bundan dolayı da RISC’in bant genişliği artar. Bu sistemde güçlü komutların yokluğu ikinci bir yardımcı işlemciyle ya da işlemci içinde oluşturulacak ayrı bir pipeline bölümüyle giderilebilir. Komut ön-belleğinin kullanılması yüksek komut alıp getirme işlemini azaltmaktadır. RISC mimarisi diğerine nazaran daha kompleks yazılımlara ihtiyaç duyar
Günümüzde her iki mimarinin üstün özellikleri birleştirilerek bir çok yeni sistemler üretilmekte ve üretilecektir. IBM RISC/6000 ile Intel 860 ve 960 mimarileri bir makina çevrimin de birden fazla komut işleyerek son derece hızlı bir performans yakalamışlardır.

7.) Mikroişlemcilerin Özellikleri
Bilgisayarın beyni sayılan mikroişlemcileri birbirinden ayırt eden en önemli unsurlar onların işlevleri ve özellikleridir. Bunlar;

7.1) Mikroişlemcinin Bir Defada İşleyebileceği Kelime Uzunluğu
Mikroişlemcilerde kelime uzunluğu veya bit uzunluğu, paralel olarak işlenen veri bitlerinin sayısıdır. Kelime işlemcideki genel amaçlı kaydedicilerin büyüklüğü ve aynı zamanda her bir bellek mahalli kapasitesidir. Büyük kelime uzunluğu, aynı anda birçok işlemin birlikte yapılması ve bazı uygulama program yazımları için kolaylık demektir işlemciler, her bir saat çevriminde senkronize olarak o anda komut kuyruğunda bulunan komutları ve bunlara göre de bellekteki verileri işlerler. Bilgi bitleri mikroişlemcinin tipine göre bir, dört, sekiz, onaltı ve otuzikilik sıralar halinde işlenir. Bir mikroişlemcili sistemde çok basit problemler tek bit kodunda işlenebilir. Buna örnek olarak içerisinde işlemci bulunan soğuk içecek makinelerdir ve tek bit esasına göre tasarlanmıştır. Küçük hesap makineleri ve cep bilgisayarlarda basit aritmetik problemlerin çözümünde dört bit kullanılmaktadır. Normal bilgisayarlarda bütün bilgiler sekiz bit (1 Bayt), onaltı bit (1 Word) veya otuziki bit (1 Doubleword) olarak işlenirler. Eğer komutlar veya veriler küçük gruplar halinde işlenirse hızda bir azalma olacak ve bu yüz den performans düşecektir. Kelime uzunluğu büyük olan işlemcide yapılan aritmetik işlemlerde doğruluk oranlan kısa uzunluklu kelimelilere nazaran çok yüksektir (4-bit %6, 8-bit %0,4 ve 16-bit %0,001). Eğer işlemcinin kelime uzunluğu, tek bir kelimeyle ele alınan belirli bir problem için yetersizse, tek bir verinin işlenmesi için işlemci daha fazla zaman harcayacak ve veri işleme hızı düşecektir.

7.2) Mikroişlemcinin Tek Bir Komutu İşleme Hızı
Bir mikroişlemcinin hızı saat frekansıyla doğrudan ilgilidir. Fakat saat frekansı her zaman gerçek çalışma frekansını yansıtmaz. İşlemci hızını belirleyen bir çok yol vardır. Bunlar, çalışma çevriminin uzunluğudur ki (algetir-kodunu çöz-işlet-depola), bu ölçüm fazla kullanışlı değildir. Bilgisayar üreticileri daha çok hız ölçmek için özel bazı test programları geliştirmişlerdir. Baslıca mikroişlemci hızları mikrosaniye olarak 16, 25, 33, 100 MHz ve MIPS’tir (Saniyede milyon adet komut işleme).
Bir mikroişlemciyi diğerinden daha hızlı yapan unsurlar şunlardır:
· MIB’in devre teknolojisi ve planı: Mesela katı durum elektroniğinde kullanılan bazı teknolojiler diğerlerine nazaran daha hızlı cevap veren devreler üretmektedirler.
· Birinci maddede açıklandığı gibi işlemcinin bir defada işleyebileceği kelime uzunluğu.: Uzun kelime hızlı işlem demektir.
· İşlemci komut kümesi çeşidi: Bir işlemcide bir işlem tek bir komutla yapılırken diğerinde daha fazla komutla yapılabilir.
· Genel olarak zamanlama ve kontrol düzeni.
· Kesme altyordamların çeşitleri.
· Bilgisayar belleğine ve I/O cihazlarına erişim hızı.
7.3) Mikroişlemcinin Doğrudan Adresleyebileceği Bellek Büyüklüğü
Bilgisayar sistemlerindeki ana bellek mikroişlemci tarafından adres yolu vasıtasıyla adreslenir. Adres yolu hattı ne kadar çoksa adresleme kapasitesi de ona göre büyük olur. Adres yolu doğrudan mikroişlemci yapısıyla ilgili olup işlemciye göre standarttır. Fakat işlemci içerisindeki kaydedicilerin büyüklüğü bir devre oyunuyla adres yoluna çoğullanmakta ve büyütülebilmektedir. XT tipi bilgisayarlarda kaydediciler 16-bitlik olmasına rağmen adres bilgisi dört bit kaydırılarak 20-bitlik hatta verilip, 1 MB.'lık bellek adreslenebilmektedir. AT tipi bilgisayarlarda 24, 32, 46-bitlik adres hattı kullanılarak gerçek modda 4 Gigabayt ve korumalı modda 70 TeraBayt adreslenebilmektedir. 210 Kilobayt, 220 Megabayt,230 Gigabayt ve 240 Terabayta karşılık gelir.

7.4) Kullanıcı Veya Programcının Mikroişlemci Üzerinde Çalışabileceği
Kaydedici Sayısı
Kullanıcı verileri bu kaydediciler üzerinde çalıştırır. Kaydedici sayısının fazla olması manevra kolaylığı ve elastikiyet sağlar. Genel amaçlı kaydediciler (EAX, EBX, ECX ve EDX), İşaretçi ve İndeks kaydedicileri (ESP, EBP, ESI, EDI, EIP), Bayrak kaydedicileri (C, P, A, Z, S, T, D, I, D, O, NT, RF, VM, AC) ve Segment kaydedicileri (CS, DS, ES, SS, FS, GS). Bunların haricinde korumalı modda kullanılan Selektör, Tanımlayıcı ve bunlara ilişik olarak Tablo Kaydedicileri vardır (TR, LDTR, GDTR, IDTR).

7.5) Programcının Elde Edebileceği Değişik Tipteki Komutlar
Mikroişlemci hızını etkileyen komutlar, veri manevra komutları, giriş/çıkış komutları, aritmetik komutlar, mantık komutları ve test komutları gruplarından birisine dahildir. Mikroişlem cinin kütüphanesinde bulunan komutların çokluğu sisteme belki elastikiyet sağlar fakat, asıl olan komutun az saykılla işlemi tamamlamasıdır.

7.6) Programcının Bellek Adreslerken Gerek Duyacağı Farklı Adresleme Modları
Doğrudan adresleme, dolaylı adresleme ve indeksli adresleme gibi adresleme türleri programcıya ekstra kolaylıklar sağlar. Adresleme modları, üzerinde çalışılan bir verinin belleğe nasıl ve ne şekilde yerleştirileceği veya üzerinde çalışılacak bir verinin bellekten nasıl ve hangi yön temle çağrılacağıdır. Bu işlem bir mektubun gideceği yere birisinin eliyle mi? yoksa bir nesne baz alınarak mı? sokaklar ve evler eklenerek mi? gibi kısa bir tarifle ulaşmasıdır.

7.7) Uygulamalar İçin Sistemin Yazılım Uyumluluğu
CP/M, DOS, MacOS, SISTEM7, WINDOWS, UNIX, OS/2 ve LINUX gibi işletim sistemi ve bunlar üzerindeki uygulamalara yapısal olarak uygun olma durumu.

7.8) İlave Edilecek Devrelerle Uyumluluğu
Mikroişlemcili sisteme eklenecek devrelerin en azından işlemci hızında çalışması gerekir. Sisteme ilave edilecek bir SIMM veya SIP kartındaki bellek entegrelerinin hızları nanosaniye cinsinden işlemci ile aynı hızda olması tercih edilmelidir. Aynı şekilde sisteme takılan ekran kartının hızlandırıcısı ve VideoRAM’ların hızları ve performansları mikroişlemci ile aynı veya çok yakın olmalıdır Mikroişlemcinin çok hızlı çalışması diğer elemanlardaki pasiflikten veya hastalıktan dolayı zamanla düşer.
Constantin Ofline   Alıntı ile Cevapla
Alt 06-09-2008, 01:46   #3
ยŦยк
 
Constantin - ait Kullanıcı Resmi (Avatar)
 

8.) Mikroişlemcilerin Uygulama Alanları
Mikroişlemcilerin yeteneklerinin zamanla artması, kullanım alanlarında çeşitlik ve yaygınlığa neden olmuştur. Mikroişlemcilerin kullanım alanlarını iki genel konuda toplayabiliriz,

8.1)Atanmış Bilgisayar Uygulamaları
Belli bir amaca ulaşmak için gerçeklenmiş ve bilgisayar içeren dizgelere, atanmış bilgisayarlı dizgeler adı verilmektedir Atanmış bilgisayar uygulamalarına bazı örnekler aşağıda sıralanmıştır:
· Bilgisayar destekli üretim tezgahları.
· Mikroişlemci kullanan otomatik çamaşır makineleri.
· Mikroişlemci içeren mikrodalga fırınlar.
· İklimlendirme dizgeleri.
· Bilgisayarlı otomobil yakıt dizgeleri
Verilen örneklerden de anlaşılacağı gibi, atanmış bilgisayar, ilişkili olduğu dizge içinde gömülü olarak yer almaktadır. Bu nedenle, çoğu kez kullanıcı tarafından fark edilmez.

8.2) Genel Amaçlı Bilgisayar Uygulamaları
Genel amaçlı bilgisayar, standart bir donanım ile kullanıcıya sunulan bilgisayardır. Bu tür bilgisayarlara örnek olarak:
· Ana bilgisayarlar
· İş istasyonları
· Bireysel bilgisayarlar (PC) verilebilir
Mikroişlemciler, bilgisayarın her iki tür uygulaması için de önemli ivme kaynağı olmuştur, Mikroişlemciler Üretilmeye başlamadan önce, atanmış bilgisayar uygulamalar yok denecek kadar azdı. Mikroişlemci öncesi bilgisayarların büyük boyutta olmaları ve pahalı olmaları, atanmış bilgisayar uygulamalarına olanak vermemiştir. Örneğin, mikroişlemci öncesinde, bilgisayarla yönetilen bir çamaşır makinesi düşünülemezdi.
Geçen 25 yıl içinde mikroişlemci tabanlı dizge tasarımı uygulamalarının sayısı çok hızlı artmıştır. Hemen hemen her konuda mikroişlemcili dizge uygulamasına rastlanmaktadır. Mikroişlemcili dizge tasarımında, tasarıma uygun mikroişlemci seçimi yapılmaktadır Örneğin, bir çamaşır makinesi, mikrodalga fırın veya benzer ölçekte uygulamalar için 8 bitlik mikroişlemciler yeterli olmaktadır Buna karşın bir üretim tezgahının denetimi ya da bir robot denetimi için 16 hatta 32 bitlik mikroişlemciler gerekmektedir Uygulamaların çeşitliliği nedeniyle, değişik sözcük uzunluğu (8, 16, 32 bit) olan mikroişlemciler üretilmektedir.
Sadece 8 bitlik mikroişlemcilerin üretildiği yıllarda, mikroişlemci tabanlı, genel amaçlı bilgisayar örneklerine rastlanmıştır. Bu dönemde gerçeklenen ve adına "ev bilgisayarı" denilen ilginç örnekler hatırlardadır. 16 bitlik mikroişlemcilerin üretilmesinin ardından bireysel bilgisayarlarda önemli bir atılım gözlenmiştir. Bu dönemde, IBM uyumlu PC’ler ve Apple uyumlu bilgisayarlar yaygın biçimde kullanılmıştır IBM uyumlu PC’lerde Intel ailesinin mikroişlemcileri (I8088, I80186, I80286, I80386, I80486, Pentium) kullanılırken, Apple uyumlu bilgisayarlarda Motorola ailesinin mikroişlemcilerinin (MC68000, MC68020, MC68030, MC68040) kullanılması yeğlenmiştir. Mikroişlemciler, iş istasyonlarında da kullanılmıştır. İş istasyonlarının üretiminde belli süre Motorola MC 680X0 ailesinin işlemcileri kullanılmıştır.
Constantin Ofline   Alıntı ile Cevapla
Alt 06-09-2008, 01:46   #4
ยŦยк
 
Constantin - ait Kullanıcı Resmi (Avatar)
 

9.) Merkezi İşlem Biriminin Yapısı
MİB içinde bulunan alt birimlerin adları aşağıda sunulmuştur.
· Bellek Veri Kütüğü BVK
· Bellek Adres Kütüğü BAK
· Aritmetik Lojik Birim ALB
· Akümülatör ACC
· Durum Kütüğü DK
· Yardımcı Kütükler YK
· Program Sayacı PS
· Buyruk Kütüğü BK
· Buyruk Çözücü BÇ
· Yığın Göstergesi YG
· Sıralama Kütüğü SK
· Denetçi DEN
9.1.1) Bellek Veri Kütüğü ( BVK )
MİB’ inden belleğe veya G/Ç arabirimine giden veya bu birimlerden MİB’ ne gelen verinin yazıldığı yerdir. BVK, MIB içinde iç yol üzerinden ACC, yardımcı kütükler ve buyruk kütüğüne bağlıdır. BVK, MİB dışında veri yoluna bağlıdır, BVK’ nün veri yolu ile bağlantısı üç konumlu kapı yapısındadır, Bu nedenle, gerektiğinde, BVK kendisini veri yolundan yalıtabilir, BVK boyunun, MİB ‘nin sözcük uzunluğuna eşit olması beklenir, Ancak, BVK uzunluğu, MİB sözcük uzunluğunun yarısına eşit olan mikroişlemciler vardır, MC6800 ve I-8085 te BVK 8 bittir, Dolayısıyla BVK’ nün boyu MIB sözcük uzunluğuna eşittir, I-8088 16 bit sözcük işleyebilmesine karşın BVK 8 bit olarak düzenlenmiştir. Bu nedenle, aktarılacak veriler iki parça olarak BVK’ de yer alır.

9. 1.2) Bellek Adres Kütüğü( BAK )
MIB ile bellek arasında gidip gelen verilerin bellekte hangi göze yazılacağı veya verilerin hangi gözden geldiği bu kütüğe yazılan adres ile belirtilir, Giriş-Çıkış arabirimlerinin adreslenmesinde de BAK’ nden yararlanılır, BAK iç yol üzerinden PS, YG ve SK’ ne bağlıdır, BAK çıkışındaki üç konumlu kapılar üzerinden Veri Yoluna bağlıdır, Bu bağlantının üç konumlu kapılarla yapılması, gerektiğinde, BAK’ nün Adres Yolundan yalıtılmasını sağlar.
BAK’nün boyu, MIB’nin adresleme yeteneği ile belirlenir, Sözgelimi, 8 bitlik mikroişlemcilerde, genellikle, Adres Yolu 16 bitliktir, Dolayısıyla bu mikroişlemciler için BAK 16 bit uzunluğundadır, 16 ve 32 bit mikroişlemcilerde BAK,’ nün boyu 24 byte ‘a kadar çıkmaktadır.
Bazı mikroişlemcilerde, BAK ve BVK ortak hatları kullanırlar, Örneğin I-8085 de, 16 hattın tamamı BAK' ne bağlı olarak adres yolunu oluştururken, bu hatlardan ilk sekizi, BVK’ ne de bağlıdır, Dolayısıyla, 16 hattın sekizi, veri yolu olarak da görev yapar, Doğal olarak, aynı hatların hem veri, hem de adres için kullanılması, zamanda paylaşımı gerektirir, Yani, hatlar zamanın bir kesitinde adres, diğer bir kesitinde veri ile ilgili bilgileri taşırlar.

9. 1.3) Aritmetik Lojik Birimi( ALB )
MIB içinde yapılması gereken aritmetik ve lojik işlemler ALB içinde gerçeklenir. Karşılaştırma ve karar verme işlemleri de bu birim içinde gerçeklenir ALB’ in üzerinde işlem yapacağı verilerden birincisi (birinci işlenen) Akümülatörde bulunur, ALB’ in yetenekleri, MİB ni doğrudan etkilemektedir, Bu nedenle, ALB’ in yapabildiği işlemler, MIB’ nin yeteneklerini belirleme açısından önem taşır ALB, ACC ve DK ile doğrudan ilintilidir,
ALB’ lerden beklenen işlemler şunlardır:
Aritmetik işlemler: ALB toplama ve çıkarma işlemlerini yerine getirebilmelidir, Çarpma ve bölme işlemini her ALB yerine getiremez, Bu açıdan çarpma ve bölme işlemini yapabilen ALB’ ler üstün sayılırlar.
Lojik İşlemler: ALB içinde temel VE, VEYA ve YADA işlemleri yerine getirilir.
Karşılaştırma ve Karar Verme İşlemleri: İki büyüklüğün birbirine göre büyüklük, küçüklük veya eşitlik karşılaştırması yapılabilir, Ortaya çıkan duruma göre karar verilir ve sonuç Durum Kütüğüne işlenir.

9. 1.4) Akümülatör( ACC )
ACC, aritmetik ve lojik işlemlerin yerine getirilmesi sırasında, üzerinde işlem yapılacak verinin bulunduğu yerdir. ALB’ in işleyeceği birinci işlenen ve işlem sonunda ortaya çıkan sonuç ACC’ de yer alır, Akümülatör, bir yerde ALB’ in yardımcısıdır, ACC’ ün boyu MIB’ nin işleyebildiği sözcük uzunluğuna eşit olmalıdır, Dolayısıyla 8-bitlik mikroişlemcilerde ACC 8-bit ve 16-bitlik mikroişlemcilerde ACC 16-bit uzunluktadır, ACC, aritmetik ve lojik işlemlerde birinci işlenenin ve işlem sonucunun bulunması gereken tek yer olması nedeniyle, MİB nin önemli bir alt birimidir. Bu nedenle bazı mikroişlemcilerde birden fazla akümülatör bulunmaktadır. Örneğin, MC68000’ de ACC A ve ACC B olarak adlandırılan iki akümülatör bulunmaktadır.

9. 1.5) Durum Kütüğü ( DK )
Aritmetik Lojik Birim tarafından gerçeklenen işlemlerin sonunda ortaya çıkan durumların yazıldığı bir kütüktür. Aslında, ortaya çıkan durumları gösteren bayrakların bir arada bulunduğu yerdir denebilir, Bu nedenle bu kütüğe Bayrak Kütüğü de denilmektedir, Durum kütüğünün içeriği, Akümülatörün yüklenmesi durumunda da etkilenir, Durum kütüğünün içeriği, karar verme işlemlerinde temel alınır, Aritmetik ve lojik işlemlerin sonunda şu durumlar ortaya çıkabilir:
Sıfır: İşlem sonunda akümülatöre aktarılan ya da akümülatörde oluşan veri sıfır olabilir, Akümülatörde bulunan sayının sıfır olması tüm bitlerinin sıfır olması demektir, Bazı mikroişlemciler için Sıfır Bayrağı’nın etkilenmesi için, son yapılan işlemin aritmetik ya da lojik olması gerekmez, Sıfır Bayrağı, akümülatördeki sayının değerine göre her zaman etkilenir,
Negatif: İşlem sonunda, akümülatöre aktarılan sayı negatif olabilir. Akümülatörde bulunan sayının negatif olup olmadığı, 7. bitin 1 olup olmaması ile sınanır, Bazı mikroişlemciler için Negatif Bayrağının etkilenmesi için, son yapılan işlemin aritmetik ya da lojik olması gerekmez, Negatif Bayrağı, akümülatördeki sayının değerine göre her zaman etkilenir,
Elde: Toplama işleminin sonunda elde biti oluşabilir, Yani toplama sonunda ortaya çıkan sonuç ACC e sığamamakta ve 1 bit artırmaktadır, Elde Biti olarak adlandırılan bu bit, durum kütüğü içinde E bayrağı ile belirtilir.
Borç : Çıkarma işleminde çıkan sayının ana sayıdan büyük olması durumunda borçlu kalınır, Bu durum, durum kütüğü içinde bulunan Borç Bayrağı ile belirtilir, Genellikle, Elde ve Borç durumları aynı bayrakla belirtilir, Bayrağın taşıdığı anlam son işlemden çıkarılabilir.
Yarım Elde veya Yarım Borç : İlk dört bitin toplanması veya çıkarılmasında elde veya borç oluşabilir, İkili onluk sayıların toplanması ve çıkarılması işlemlerinde önemi olan bu bayrağın etkilenmesi normal elde ve borç bayrağının etkilenmesi ile aynı biçimde olmaktadır.
Taşma: Elde bayrağı 1 iken yeni bir toplama işlemi sonucunda, yeni bir elde gelerek akümülatör boyundan iki bit fazla bir elde oluşuyorsa bu Taşma bayrağını etkiler.
DK içinde yukarıda tanıtılan bayrakların hepsinin bulunması gerekmez, Bu nedenle bazı mikroişlemcilerde daha az sayıda bayrak bulunabilir, Bazı mikroişlemcilerde ise daha başka durumları göstermek için de bayraklar bulanabilir. Örneğin bazı durum kütüklerinde Eşlik Bayrağı bulunur. Eşlik Bayrağı Akümülatörde bulunan veri içindeki 1 ’ lerin sayısının tek ya da çift sayıda olduğunu belirtir, Örneğin bu bayrağın 1 olması, akümülatör içinde bulunan sayı içinde 1’ lerin çift sayıda olduğunu gösterir
Aşağıda durum bayrakları topluca gösterilmiştir
· Elde E
· Yarım Elde Y
· Negatif N
· Sıfır S
· Taşma T
Durum kütüğünün her bayrağının doğal olarak iki konumu vardır. 0 ve 1. Bir bayrağın etkin hali, lojik 1 konumu olarak kabul edilmektedir, Örneğin, sıfır bayrağının 1 olması, akümülatör içeriğinin sıfır olmasına karşı düşer, Akümülatörün içeriği sıfırdan farklı ise bu bayrak 0 konumunda kalır.

9. 1.6) Yardımcı Kütükler ( YK )
MIB içindeki işlemlere hız kazandırmak amacıyla, yardımcı kütükler kullanılmaktadır. Bu kütükler, üzerinde sık sık işlem yapılacak işlemler için kullanılır, Yardımcı kütüklerde bulunan veriler, BVK üzerinden belleğe veya bir giriş/çıkış arabirimine gönderilebilir. Benzer şekilde bellek ve giriş/çıkış arabirimindeki veriler bu kütüklere aktarılabilir, Yardımcı kütüklerin akümülatörden tek farkı, aritmetik lojik işlemlerde birinci işlenen yerini alamamalarıdır.
Yardımcı kütük kullanılması konusunda Motorola ve Intel tasarımları arasında önemli farklar vardır. Motorola MC6800 ailesinde iki akümülatör bulunmakta, buna karşın yardımcı kütük bulunmamaktadır, Intel 8085 ailesinde ise tek akümülatöre ek olarak B, C, D, E, H, L yardımcı kütükler bulunmaktadır, Her iki yönteminde üstün ve eksik olduğu yönler bulunmaktadır. Bazı gelişmiş mikroişlemcilerde, akümülatör sayısı artırılmakta ve bunlara ek olarak yardımcı kütükler de bulunmakta böylece, iki yöntemin üstünlüklerinden yararlanılmaktadır.

9. 1.7) Program Sayacı ( PS )
Program Sayacı, genellikle, bir sonra işlenecek buyruğun bulunduğu bellek gözünün adresini taşır. Buyruk bir bellek gözüne sığmıyor ise, buyruğun bulunduğu ilk gözün adresini içerir. Program sayacının boyu, bellek içindeki her gözü belirlemesi gerektiğinden BAK’ nün boyuna eşit olmalıdır. Daha önce değinildiği gibi, buyrukların boyları, işlevlerine göre değişmektedir, Bu nedenle, peşpeşe gelen program adımlarında, bir sonraki buyruğun bulunduğu bellek gözünün adresi her adımda hesaplanır ve bu değer program sayacına yazılır. Programın akışı, bazen, koşullar gereği değiştirilir. Bu durumda, yeni izlenecek program parçasının ilk buyruğunun bulunduğu adres Program Sayacına yazılır,

9. 1.8) Buyruk Kütüğü ( BK )
Buyruk Kütüğü, o anda işlenen buyruğu içerir Bellekten okunan bilgi içinde hangisinin komut ve hangisinin işlenen olduğu şöyle anlaşılır. Program sayacının gösterdiği ilk adreste komut olduğu varsayılır, Bu başlangıç noktasından sonra, her adımda, buyruğun boyu hesaplanarak, bir sonraki buyruğun başlangıç noktası belirlenir

9. 1.9) Buyruk Çözücü ( BÇ )
Buyruk Kütüğünde bulunan buyruğun taşıdığı anlamın çözümlendiği yerdir, Buyruğun çözümlenmesi sonunda, MİB içinde ve dışında yapılacak işler ve bu işlerin yapılacağı yerler belirlenir Ardından bu işler denetim biriminin güdümünde, ALB ve diğer kütük ve akümülatör ile birlikte yerine getirilir.

9. 1.10) Yığın Göstergesi ( YG )
Yığın göstergesini tanıtma işlemine yığın kavramını tanıtarak başlamakta yarar vardır, Bilgisayar dilinde, verileri üst üste yığmaya ve gerektiğinde, verileri yığından teker teker geri almaya yığın işlemi denilmektedir.
Örnek olarak ele alınan yığının dört gözü bulunmakta ve bunlar MİB içinde yer almaktadır. Yığının gözlerinden ilk üçüne daha önceden üç veri ( V1, V2 ve V3 ) konulmuştur. Yığına V4 verisi atılmak istendiğinde, yığında daha önceden bulunan veriler birer basamak aşağıya kayarlar. Böylece yeni veri için yer açılmış olur. Yığından veri çekilmeye kalkışıldığında ilk olarak V4 geri alınır, V4 verisinin geri alınmasının hemen ardından, yığındaki tüm veriler birer basamak yukarıya kayarlar Bu örnekten de anlaşılacağı gibi, yığına son giren veri ilk olarak geri alınmaktadır. V4 verisinin yığına atılmasının hemen ardından V5 yığına atılmak istenirse, yığında bulunan tüm veriler aşağıya doğru kayarlar, Bu kayma sonunda V5 için yer açılır, Ancak, yığının dört gözü olması nedeniyle Vl verisinin yazılacağı bir göz kalmaz ve bu nedenle V1 verisi yığından düşmüş olur, V5 verisinin yığına atılmasından sonra, yığından bir veri çekilmek islenirse, yığının özelliği gereği V5 dışarı alınacak ve hemen ardından yığındaki tüm veriler birer yukarı kayacaklardır, Bir önceki adımda, Vl verisi yığından düştüğü için iki adım önceki durum oluşmayacak ve Vl değeri eski yerine gelemeyecektir,
Bilgisayarın çalışmasında önemli yeri olan yığın işlemi için, MIB içinde sınırlı boyda göz kullanılması, yukarıda verilen örnekten anlaşılacağı gibi sakınca yaratmaktadır, Bu yığın boyunun sınırlı olması sonucunda ortaya çıkan durum sakıncayı ortadan kaldırmak üzere, bellek içinde yığın kurulması yoluna gidilmiştir. Bu yöntemde, bellek içinde istenen bir bölgede yığın oluşturmak için kullanılabilmektedir.
Bellek içinde, yığının nerede kurulduğunu belirlemek için MİB içinde Yığın Göstergesi kullanılmaktadır. Yığın göstergesinin nasıl çalıştığı Şekil de gösterilmiştir. Program çalıştırılmadan önce Yığın göstergesi, yığının başlangıç adresi ile yüklenir. Böylece yığının başlangıç adresi belirlenmiş olur. Yığına her yeni veri atıldığında, yığın göstergesinin değeri bir azalarak, yığına yeni atılacak verinin yerleşeceği adresi gösterir. Yığından bir veri çekilmesi durumunda ise, yığın göstergesinin değeri bir artar.
Bellekte kurulan yığın ile, MIB içinde kurulan yığın arasında işlev açısından fark olmamakla beraber işleyiş açısından önemli farklar vardır. MİB içinde kurulan yığının boyu sınırlıdır. Yığına her yeni veri atıldığında, eski veriler birer adım aşağı kaymaktadırlar. Veri çekildiğinde ise birer adım yukarı kaymaktadırlar. Bellekte düzenlenen yığında ise, yığındaki elemanların kayması söz konusu değildir. Kayan sadece, yığın göstergesidir. Bir başka fark da bellek içinde düzenlenen yığının aşağı doğru büyümesidir, Bunun nedeni şöyle açıklanabilir Bilgisayarda, programlar küçük adreslerden başlayarak yazılır ve programın boyu uzadıkça yüksek adreslere erişilir. Bir başka deyişle, program küçük adreslerden büyüklere doğru uzanır. Yığının yüksek adreslerden başlatılarak aşağıya doğru uzaması, veya sarkması, belleği en uygun kullanma biçimi olarak kabul edilmektedir.
Yığın işlemi, sıfır adresli buyruklar için kullanılmakla beraber, bilgisayarın çalışması için de kullanılmakladır. Sözgelimi, alt programlara gidiş ve dönüşlerde, MİB içindeki kütüklerin içerikleri ve dönüş adresi yığında saklanmaktadır. Ayrıca kesme işlemlerinde de benzer bilgiler yığına atılmaktadır. Yığın göstergesinin boyunun, BAK boyuna eşit olması beklenir. Ancak daha küçük boyda YG kullanan bilgisayarlar da bulunmaktadır.

9. 1.11) Sıralama Kütüğü ( SK )
Sıralı verilerin belleğe yazılması veya bellekte sıralı bulunan verilerin okunması için kullanılır, Bilindiği gibi, matematikte diziler ve matrisel yapılar önemli ölçüde kullanılmaktadır. Tek boyutlu ya da çok boyutlu dizi içindeki elemanları belirtmede indis kullanılması da üzerinde anlaşılmış bir yöntemdir. Sıralama kütüğü bu tür özeliği olan veriler için kullanışlı çözümler sağlar. Sıralama kütüğünün kullanılması ile ilgili şu örnek verilebilir. Bellekte bulunan bir dizinin başlangıç adresi Sıralama kütüğüne yüklenir, Ardından bu dizideki n, veri MIB’ ne aktarılmak istenirse, yapılacak tek işlem n, verinin yükleneceğini söylemektir.

9. 1.12) Denetçi ( DEN )
MİB’ nin en önemli birimlerinden biri denetim alt birimidir. Bu birim hem MİB içindeki çalışmayı düzenler hem de bilgisayar içindeki çalışmayı düzenler. MİB içindeki çalışmayı, Buyruk Çözücü alt birimin yönlendirmesi ve diğer alt birimlerin işbirliği ile düzenler. Bilgisayarın çalışmalarını düzenlemek için Denetim biriminin aşağıda sıralanan giriş ve çıkış uçları bulunmaktadır,
Girişler:
Saat SAAT
Al baştan ABN
Bekle BEK
Kesme KES Kesme İsteği KİS
Yalıtım YLT
Çıkışlar:
Oku/Yaz O/Y
Yalıtıldı YLD
Saat çıkışı SAAT ÇIKIŞI
Bellek yadaGiriş/çıkış Arabirim B-O/Y

9. 1.12.1) Denetim Biriminin Girişleri
Saat: Bilgisayar içindeki işlemlerin bir sıra izlemesi ve adımların uygun atılması için tüm birimlerin ayak uyduracağı bir saat işareti gereklidir. Bilgisayar içindeki her işlem bu saat işaretine bağlı olarak yerine getirilir.
Bir buyruğun işlenmesinde ilk aşama, buyruğun bellekten alınıp MIB’ ne getirilmesidir. MIB içinde BK’ ne yerleşen ve daha sonra çözümlenmesi yapılan buyruğun gerektirdiği işlemler, buyruğun özelliğine göre yapılır. Bu nedenle her buyruğun işlenme süresi birbirinden farklı olacaktır. Saat işareti MIB dışında üretildiği gibi, MİB içinde de üretilmektedir. Bu amaçla gerekli devreler MİB içinde gerçeklenmektedir. Bu tür donanımlarda salınım frekansını belirleyecek elemanlar MİB’ ne dışarıdan bağlanmaktadır. Salınım frekansını kararlı kılmak için genellikle kristal kullanılmaktadır.
Al baştan : Bu giriş, bilgisayarı ilk açıldığı duruma getirmek için kullanılır. Al baştan edilen bir bilgisayar, bu durumda, izlemesi gereken programın başına gider ve bu programın işletilmesine başlar. Al baştan girişi, bilgisayar ilk açıldığında kullanıldığı gibi, bilgisayarın ilk açılma koşullarına döndürülmesi gerektiği durumlarda da kullanılabilir.
Bekle: MIB’ nin bir süre durmasını sağlayan bir giriştir. Bu girişin etkin hale getirilmesi ile MİB’ nin çalışması durdurulur. Bekle girişi etkin olmayan konumuna döndürülene kadar MİB çalışmaz. Bu giriş etkisiz konuma geçince, MİB kaldığı yerden çalışmasına devam eder.
Kesme: Bu girişin etkin hale gelmesi ile, MİB o anda yürüttüğü programı keser ve daha önce belirlenmiş olan kesme hizmet programını işletmeye başlar. Kesme hizmet programının tamamlanmasından sonra, kesmenin geldiği anda yaptığı işe geri döner.
Kesme İsteği: Kesme isteği girişi de kesme girişi gibi çalışmaktadır. Bu girişin tek farkı, girişe uygulanan kesme isteğine, istendiğinde uyulması veya uyulmamasıdır. Bu amaçla MIB içinde Kesme İsteği Karar Bayrağı bulunmaktadır. Bu bayrağa verilecek değer ile kesme isteği girişi etkin ya da etkisiz kılınabilir.
Yalıtım: Yalıtım girişinin etkin hale getirilmesi ile, MİB adres ve veri yollarının çıkışlarını üçüncü konuma getirir. Sonuçta, MIB kendisini adres yolu ve veri yolundan yalıtır. Bu durum aynı yolların başka MİB veya başka akıllı birimler tarafından kullanılmasını sağlamak için gereklidir.
Constantin Ofline   Alıntı ile Cevapla
Alt 06-09-2008, 01:46   #5
ยŦยк
 
Constantin - ait Kullanıcı Resmi (Avatar)
 

9. 1.12.2) Denetim Biriminin Çıkışları
Oku/Yaz: İki yönlü çalışan veri yolu üzerindeki verilerin akış yönünü belirleyen bir çıkıştır. Bu çıkışın 1 konumu okuma ve 0 konumu yazma durumunu belirler. Okuma yönü bellekten ve giriş / çıkış arabirimlerinden MİB’ ne doğrudur. Yazına yönü ise MİB’ inden belleğe ve giriş / çıkış arabirimlerine doğrudur. Intel ve türevleri mikroişlemcilerde Oku / Yaz çıkışı Oku ve Yaz olarak ayrı ayrıdır. Ancak okuma ve yazma kavramında farklılık yoktur.
Yalıtıldı: Veri yolu ve adres yolunun yalıtıldığını, aynı yolları kullanan diğer birimlere duyurmak için gerekli bir çıkıştır.
Saat çıkışı: Saat osilatör devresi MİB içinde olan mikroişlemcilerde, bilgisayar içindeki diğer birimler için gerekli olan saat işaretini elde etmek için kullanılan bir çıkıştır. Bu çıkış ya MİB’ ne uygulanan ya da MIB’ inde üretilen saat frekansında ya da bunun bölünüşü bir frekansta olabilir.
Bellek ya da giriş/çıkış arabirimi: Adres yolu üzerinde bulunan adres bilgisinin, bir bellek gözünü mü yoksa bir giriş/çıkış arabirimini mi adreslemek için kullanılacağını belirtir.

9.2) Merkezi İşlem Biriminin Donanım Özelikleri
Tek kırmık olarak üretilen MİB’ııe dışarıdan bakıldığında, temelde, veri yolu, adres yolu ve denetim bağlantıları görüleceklir. MİB uçlarının adları ve kısaltmaları aşağıda verilmiştir
Veri Yolu
Adres Yolu
Saat SAAT
Albaştan ABN
Bekle BEK
Kesme KES
Kesme İsteği KİS
Yalıtım YLT
Oku/Yaz O/Y
Yalıtıldı YLDD
Saat Çıkışı SAAT ÇIKIŞI
Bellek yada Giriş Çıkış Birimi B/G/Ç
Bu girişlerin dışında besleme uçlarınında olacağı açıktır. MİB ‘nin iki yolu üç konumlu kapılarla tasarlanmıştır. Bu yollarda bulunan her bir hat çıkışı bir anda ancak bir TTL yük sürebilecek kapasitededir. Yolların dışında kalan diğer çıkışlar, üç konumlu kapı biçiminde olmayabilir ancak sürme güçleri genelde 1 TTL yüke eşittir. Görüldüğü MİB’ in çıkışları oldukça güçsüzdür. Bu nedenle bilgisayar donanımında giriş akımı az olan devre elemanlarının kullanılması gerekir.
Constantin Ofline   Alıntı ile Cevapla
Alt 06-09-2008, 01:48   #6
Banned
 
|RespecT Me| - ait Kullanıcı Resmi (Avatar)
 

ufuk kredi kartı sözleşmesi hepsini okuyamasamda paylaşım süper teşekkürler...
__________________
ARKADAŞLAR SİZLERİ SALAK YERİNE KOYMAYA ÇALIŞTIM ANCAK BAŞARILI OLAMADIM. FORUM YÖNETİMİNİ ENAYİ YERİNE KOYMAYA ÇALIŞTIM ANCAK BAŞARAMADIM. SİZDEN DİLENEREK ALDIĞIM REPLERİ FORUM YÖNETİMİ SİLDİ. ŞİMDİ İSE BEN BUNA İSYAN EDİYORUM. BEN BİR MALIM!
Click the image to open in full size.
|RespecT Me| Ofline   Alıntı ile Cevapla
Cevapla

Bu konuyu arkadaşlarınızla paylaşın


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-KodlarıKapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık




Türkiye`de Saat: 04:27 .

Powered by vBulletin® Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.3.2

Sitemiz CSS Standartlarına uygundur. Sitemiz XHTML Standartlarına uygundur

Oracle DBA | Kadife | Oracle Danışmanlık



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580