Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Mikroişlemciler Giriş.

Benzer bir sunumlar


... konulu sunumlar: "Mikroişlemciler Giriş."— Sunum transkripti:

1 Mikroişlemciler Giriş

2 İçerik Ders hakkında bilgi Tarihi gelişim Tanımlar
Mikroişlemci tabanlı sistemler Sayı sistemleri

3 Ders hakkında bilgi

4 Ders hakkında bilgi Dersi veren: Mustafa M Atanak E-posta adresi:
Ders kitabı: Mikroişlemciler Mikrobilgisayarlar, Eşref Adalı, Birsen Yayınevi, 2004

5 Notlandırma Ara sınav: % 30, Lab ve küçük sınavlar: % 30
Dönem sonu sınavı: % 40

6 Tarihi gelişimi

7 Mekanik Çağı M.Ö. 500, Abaküs 1823, Charles Babbage, Analitik motoru

8 Elektrik Çağı 1800ler, Elektrik motorunun bulunması
1889, Herman Hollerith, basılı kartların üzerinde yer alan verileri sayan, sıralayan bir makine geliştirdi

9 Birinci Nesil Bilgisayarlar (1945-1956)
1941, Z3 hesaplama makinesi, Konrad Zuse İkinci Dünya Savaşı’nın başlaması ile, yönetimler bilgisayarların potansiyel stratejik önemi nedeniyle bilgisayar araştırmalarını iyice arttırdılar. 1941’de Alman mühendis Konrad Zuse uçak ve roketler için Z3 olarak adlandırılan bir bilgisayar geliştirdi. Müttefik kuvvetler daha güçlü bilgisayarlar için çalışmaya başladılar.

10

11 Birinci Nesil Bilgisayarlar (1945-1956)
1943, Alan Turing, Colossus İngilizler Almanların mesajlarını çözebilmek için Colossus adlı gizli kodları kırmayı başaran bilgisayarı dizayn ettiler. Alman askeri kodlarını kırdı Vakum tüpleri kullandı Programlanabilir değildi Başka problemleri çözemiyordu 1944, Howard H. Aiken, Mark I IBM tamamen elektronik hesap makinasını üretti. Kısaca Mark I olarak adlandıran makine elektronik rolelerden oluşmuş bir cihazdı Mekanik parçaları hareket ettirmek için elektromagnetik sinyaller kullanılmıştı. Makina yavaştı çünkü tek hesaplama 3-5 saniye alıyordu ve ard arda gelen hesaplamalar sırasında herhangi bir şey değiştirilemiyordu. Fakat daha kompleks eşitliklerin üstesinden gelebiliyordu.

12

13

14 Birinci Nesil Bilgisayarlar (1945-1956)
1946, ENIAC, Pensilvanya Üniversitesi Savaş nedeniyle gelişmiş diğer bir bilgisayar, Amerikan hükümeti ve Pennsylvania Universitesi ortaklığı ile ortaya çıkmış olan ENIAC adlı bilgisayardı (Electronic Numerical Integrator And Computer). Bilgisayar vakum tübü, direnç ve lehim noktarına sahipti. 160 kilowatt elektrik gücü tüketen makina Philadelphia daki ışıkların sönükleşmesine neden oluyordu. ENIAC, Mark I e göre 1000 kez daha hızlı bir bilgisayardı 800 km kablo 30 tondan fazla ağırlık Saniyede 100,000 işlem Devrelerdeki bağlantıların değiştirilmesi ile programlanır

15

16 İkinci Nesil Bilgisayarlar (1956-1963)
1948, transistörün geliştirilmesi 1948 de transistörlerin keşfi ile birlikte bilgisayarların gelişimindeki artış iyice arttı. Transistörler televizyonlardaki, radyolardaki ve bilgisayarlardaki büyük ve hantal vakum tüplerinin yerlerini aldılar. Transistörlerin bilgisayarlarda kullanılmaya başlaması ile ikinci nesil bilgisayarlar daha küçük, daha hızlı dahagüvenilir ve önceki modellere göre daha az enerji tüketen modeller olarak ortaya çıkmasına neden oldular. İkinci nesil bilgisayarlarda makine dili ile assembly dili yer değiştirdi ve böylece uzun ve zor ikili kodların yerini kısa programlama kodları aldı

17 İkinci Nesil Bilgisayarlar (1956-1963)
1960 ların başlarında işyerleride, üniversitelerde, ikinci nesil bilgisayarlar kullanılmaya başlandı. İkinci nesil bilgisayarlara yazıcılar, tape birimleri, disk birimleri, hafıza, işletim sistemi ve programlar ilave edildi. IBM 1401 ikinci nesil bilgisayarlar için önemli bir örnektir. Daha gelişmiş COBOL (Common Business- Oriented Language) ve FORTRAN (Formula Translator) gibi yüksek seviye diller kullanılmaya başlanmıştır. Bu tip dillerde; kriptik ikili makina kodları yerlerini kelimelere, cümlelere ve matematiksel formüllere bırakarak bir bilgisayarın programlanmasının daha basit hale gelmesine neden olmuştur. İkinci nesil bilgisayarların ortaya çıkışı ile birlikte yeni meslek tipleri (programcı, analizleyiciler, bilgisayar sistem uzmanları) ve software endüstrisi doğmuştur.

18 Üçüncü Nesil Bilgisayarlar (1963-1971)
1960lar, Sayısal entegre devreler Transistörler vakum tüplerine göre avantajlı olsalarda büyük miktarda ısı yayarlar ve bilgisayarın duyarlı iç parçalarının bozulmasına neden olabilirler. 1958 yılında Texas Instruments deki mühendislerden Jack Kilby Tümleşik devreyi (Integrated Circuit (IC)) geliştirdi. Tümleşik devre (IC), kuartzdan yapılmış küçük bir silikon disk üzerinde 3 elektronik bileşenden meydana gelir. Bilimadamları daha sonra yarıiletken olarak adlandırılan küçük bir yonga (chip) üzerine pekçok parçayı yerleştirerek yönetmeyi balardılar. Sonuçta bilgisayarlar küçük bir yonga üzerine daha fazla bileşenin katılmasıyla küçülmüş oldular. Üçüncü nesil bilgisayarlarda işletim sistemi etrafında pekçok programın çalışması mümkün oldu ve bilgisayar hafızası bu programlar tarafından ortak olarak kullanılmaya başlandı

19

20

21

22 Dördüncü Nesil Bilgisayarlar (1971-Devam ediyor)
1971, Intel tarafından ilk mikroişlemci yapıldı Tümleşik devrelerden sonra, boyutlar azalmaya devam etti. Bir yonga üzerine yüzlerce bileşen monte edildi (Large scale Integration (LSI)). 1980 de bir yonga üzerine binlerce bileşenin yüzlercesi sıkıştırıldı (Very Large scale Integration (VLSI)). Sayı milyonlar mertebesine çıktığında (Ultra-Large scale Integration (ULS söz konusu oldu. Bilgisayarların boyut ve fiyatları azaldı ve azalmaya devam ediyor. Bunun yanında güçleri verimlilikleri güvenilirlikleri artmaya devam ediyor. 1971 yılında Intel 4004 yongasını ürettiğinde çok küçük bir yonga üzerinde bilgisayarın tüm bileşenleri (merkezi işlem birimi (Central Processing Unit (CPU)), hafıza, girdi ve çıktı yönetimi) toplanmıştı.

23 Dördüncü Nesil Bilgisayarlar (1971-Devam ediyor)
1981 de evde, işyerinde ve okullarda kullanım için kişisel bilgisayarı (Personal Computer (PC)) ortaya çıkarttı de 2 milyon olan PC sayısı 1982 de 5.5 milyona ulaştı. On yıl sonra 65 milyon PC kullanılmaya başlandı. Giderek bilgisayarların boyutları küçülmeye devam ederek laptop bilgisayarlar (bir çantaya sığacak büyüklükte), palmtop (gömlek cebine girebilecek büyüklükte) bilgisayarlar dizayn edildiler. 1984 yılına gelindiğinde ilk kez IBM PC ve Apple Macintosh yarışı başladı. Macintoshlar user-friendly dizayn ile ortaya çıktı. Macintosh’un sunduğu işletim sistemi; kullanıcılara, yazılı komutlar yerine bilgisayar ekranında simüle edilen bir simge ile diğer simgeleri (icon) taşıma kolaylığı sağladı. Yakın bilgisayarların daha etkili kullanılabilmesi için birbirlerine bağlanmaya başladılar ve bilgisayar ağları kurulmaya başlandı. Ağ üzerindeki herbir bilgisayar diğer bilgisayarların hafızalarını, programlarını bilgilerini paylaşmaya başladı. Bu tür birbilerine bağlı bilgisayarların oluşturduğu ağlar (Local Area Network (LAN)) diğer bilgisayar ağlarına bağlandılar. Böylece tüm dünyadaki bilgisayarlar birbirlerine bağlanarak ağların ağı olan İnterneti oluşturdular

24

25

26

27

28

29

30 Programlama gelişmeleri
Programlanabilir makineler geliştirilmeye başlanınca, programlar ve programlama dilleri de gelişmeye başladı Bağlantıların yeri değiştirilerek programlama yapmak oldukça zor olduğu için, bilgisayar dilleri gelişmeye başladı. İlk makine dili, birler ve sıfırlar ile geliştirildi. Hafızada program denilen bir grup komut biçiminde idi

31 Assembly dili 1950lerin başlarında, UNIVAC benzeri sistemlerin gelişmesi ile, digital komutların girilmesini kolaylaştıran assembly dilleri kullanılmaya başlandı. Assembler, kullanıcıların anlaşılabilir kodlar yazmasına izin verdi… Toplama için ADD komutu gibi Digital komutlar yerine gibi Assembly dili, programlama yapmak için kullanışlı bir araç haline geldi.

32 Yüksek seviye programlama dilleri
1957, FLOWMATIC, Grace Hopper 1957, FORTRAN, IBM 1958, ALGOL COBOL RPG BASIC, PASCAL, ADA C / C++ / C# / JAVA

33 Yüksek seviye programlama dilleri ve assembly
Bilimsel camia genellikle C/C++ kullanır. Bazen PASCAL ve FORTRAN Güncel bir istatistik, gömülü sistem geliştiricilerinin yaklaşık % 60’ının C programlama dilini kullandıklarını göstermektedir. % 30 assembly dilini kullanır Geri kalanlar ise genellikle BASIC ve JAVA

34 Assembly’nin önemi C/C++, genellikle assembly dili kullanan düşük seviye kontrol yazılımlarında kullanılmaya başlandı. Ancak, assembly dili hala önemli bir yere sahiptir. Çoğu video oyunu, neredeyse tamamen assembly dilinde yazılır Assembly ayrıca, C/C++ ile entegre olarak, bazı kontrol fonksiyonlarının daha hızlı gerçekleştirilmesini sağlar. Pentium ve çift çekirdekli işlemcilerde kullanılan bazı paralel komutlar, sadece assembly dilinde yazılır.

35 İkili sayı sistemi Bit: 1, 0 nibble: 4-bit Byte: 8-bit Word: 16-bit
1 KB = 1024 Byte = 210 Byte 1 MB = 1024 KB = 220 Byte 1 GB = 230 Byte, 1 TB = 240 Byte B: byte b: bit 8 Mbps = 8 Megabits per second (Saniyede 8 Mb - ADSL hızı)

36 Mikroişlemci Çağı 1971, Intel 4004 ve 4040 1972, Intel 8008
4-bit mikroişlemciler 4096 adetlik 4-bit hafıza bölümü 45 komut Çoğu hesap makinesi ve düşük seviye uygulamalar (mikrodalga fırınlar gibi) hala 4-bitlik mikroişlemciler kullanır 1972, Intel 8008 8-bit mikroişlemci 16K satırlık hafıza 48 komut Saniyede 50,000 komut

37 Mikroişlemciler (devamı)
1973, Intel 8080 64K hafıza satırı Saniyede 500,000 komut (komut başına 2 s) 1974, Motorola 6800 1974, İlk kişisel bilgisayar 1977, Intel 8085 Saniyede 769,230 (komut başına 1.3 s) Dahili saat ve sistem yöneticisi

38 Modern Mikroişlemciler
1978, Intel 8086 ve 8088 16 bit mikroişlemciler Komut başına 400 ns. Saniyede 2,5 milyon komut 1M satırlık hafıza Çarpma ve bölme komutları 20,000’den fazla komut çeşitliliği Komut sayısı çok fazla olan mikroişlemcilere CISC (complex instruction set computers – Karmaşık komut setli işlemci) ismi verilir

39 Modern Mikroişlemciler
1983, Intel 80286 16M büyüklüğünde hafıza Arttırılmış saat hızı (8 MHz) Bazı komutların sağlanması 250 ns. alır 1986, Intel 80386 32 bit mikroişlemci 4GB büyüklüğünde hafıza 1989, Intel 80486 80386 gibi. Ancak, komutların çalıştırılması, iki değil tek saat çevriminde yapılır 8 KB önbellek

40 Pentium Mikroişlemci 1993, Intel Pentium (P5 veya 80586)
Giriş verisyonları, 60 & 66 MHz saat frekanslarında ve 110 MIPS hızında çalışmakta idi 16 KB önbellek 30 Hz ve üzerinde video gösterimine olanak tanımakta idi.

41 Modern Mikroişlemciler
Pentium Pro Pentium II Pentium III Pentium IV Core2 Quad Core 64-bit mikroişlemciler

42 Tanımlar

43 Entegre Devre Diğer adıyla IC, mikrodevre, mikroçip, silikon çip, veya çip İnce bir tabaka halindeki yarıiletken materyal üzerinde oluşturulmuş olan minyatür elektronik devre genellikle yarıiletken ve pasif devre elemanlarından oluşur

44 Mikroişlemci Merkezi işlemci ünitesi (CPU) fonksiyonlarını tek bir entegre devre üzerinde toplayan programlanabilir sayısal elektronik bileşen. 8-bit, 16-bit, 32-bit, ve 64-bit mikroişlemci: Tek bir seferde manipüle edilen bit sayısı. Programların çalıştırılabilmesi için harici bir hafızaya ihtiyaç duyabilir.

45 Mikroişlemci ve Mikrodenetleyici
Mikrobilgisayar: CPU olarak bir mikroişlemci kullanan bir bilgisayar. Mikrodenetleyici (veya MCU): Br çipin üzerindeki bilgisayar. Kendine yetebilirlik ve maliyet düşüklüğüne önem veren bir mikroişlemci. Mikrodenetleyici ile mikroişlemci arasındaki tek fark: Mikroişlemcide sadece ALU, kontrol ünitesi ve register’lar bulunur. Mikrodenetleyicide ise ROM, RAM, harici üniteler (zamanlayıcı, Girdi/Çıktı portları ve benzeri) bulunur.

46 Mikroişlemci tabanlı kişisel bilgisayar sistemi

47 Mikroişlemci tabanlı bilgisayar sistemi

48 Temel bileşenler

49

50 Mikroişlemci Mikroişlemciye aynı zamanda Merkezi İşlem Ünitesi (Central Processing Unit - CPU) de denilir. CPU, bilgisayar sistemini kontrol eden elemandır. CPU hafızayı ve girdi/çıktıları bus denilen bağlantılar sayesinde kontrol eder. Bus: Girdi/çıktı veya hafıza ünitesini seçer, farklı bileşenler arasındaki veri akışlarını gerçekleştirir. Hafıza ve Girdi/Çıktı üniteleri, hafızada bulunan ve mikroişlemci tarafından çalıştırılan komutlar sayesinde kontrol edilir.

51 Mikroişlemci Mikroişlemcinin üç temel işlevi bulunur:
Kendisi ile hafıza ve girdi/çıktı sistemleri arasındaki veri akışını kontrol eder. Temel aritmetik ve mantık operasyonlarını gerçekleştirir. Temel karar mekanizmaları ile program akışını kontrol eder. CPU aşağıdaki bileşenlerden oluşur: Aritmetik Mantık Ünitesi: Arithmetic Logic Unit (ALU) Register’lar Kontrol Ünitesi

52 ALU Aritmetik ve mantık operasyonlarını gerçekleştirir.
Ana hafızadan ve/veya register’lardan verileri alır ve sonuçların bu ünitelere yazılmasını sağlar. Mikroişlemci, bir sayının sıfır mı, pozitif mi … ve benzeri durumlarını kontrol eder. Bu durumları da göz önüne alarak oluşturulan program akışı sayesinde, sistem ile ilgili temel kararlar verilmesine olanak tanır.

53 Aritmetik ve mantık operasyonları
Yorum Addition Subtraction Multiplication Division AND Mantıksal çarpma OR Mantıksal toplama NOT Mantıksal değilleme NEG Aritmetik değilleme Shift Rotate

54 Kararlar Karar Yorum Zero Sayının sıfır olup olmadığını test eder Sign
Sayının pozitif mi negatif mi olduğunu test eder Carry Toplamadan dolayı oluşan eldeyi ve çıkarmadan dolayı oluşan ödünç alma işlemlerini test eder Parity Sayının çift mi tek mi olduğunu test eder Overflow Toplama veya çıkarma sonucunda oluşan sayının geçerliliğini kontrol eder

55 Register’lar CPU’nun ikili sayıları hızlı okumaları ve yazmaları için özelleşmiş bölgeler. Veri veya adres değerlerini tutabilirler. Sayıları ve tipleri, CPU dizaynına bağlıdır. CPU ve girdi/çıktı alt sistemi tarafından kullanılabilirler.

56 Kontrol Ünitesi Mikroişlemcinin çalışmasını kontrol eden merkezi ünite. Aşağıdaki işlemleri sırası ile gerçekleştirir: Fetch: Makine dili komutlarını hafızadan okur Decode: Komutları tanımlar Execute: Komutların karşılanmasını sağlar Gerekli verileri register’lardan veya hafızadan alır Gerekli işlemlerin yapılmasını sağlar Sonuçları register’lara veya hafızaya yazar

57 Hafıza Aynı büyüklükteki (genellikle byte) verilerin tutulduğu sayısal bölgeler. Genellikle ardışık byte’lar word (2 byte) ve double word (4 byte) oluşturur. Hafızadaki her satırın ayrı bir adresi bulunur. 16-bit adres, 65,636 (64K) hafıza satırının tanımlanmasına olanak tanır. Dikkat: Bilgisayardaki adres büyüklüğü ile hafızadaki toplam büyüklüğü birbiri ile karıştırmayın. Hafızadan veri transferi read (okuma) operasyonudur. Hafızaya veri transferi write (yazma) operasyonudur.

58 Bus Bilgisayar sisteminde bileşenleri bağlayan kablolar grubu
Mikroişlemci, hafıza ve girdi/çıktı üniteleri arasındaki adres, veri ve kontrol bilgilerini transfer eder. Bazı cihazlar aynı ortak yolu kullanabilirler. Ancak bir zaman diliminde sadece bir tanesi veri yolunu kullanıyor olabilir.

59 Bus (devam) Address bus: CPU tarafından, halihazırdaki komutun gereksinim duyduğu okuma ve yazma operasyonlarının hangi adres ile ilişkili olduğu bilgisini iletmede kullanılır. Data bus: Mikrobilgisayarın farklı parçaları arasındaki veri akışlarında kullanılır. data bus width (bit olarak): Mikrobilgisayar sistemindeki verilerin büyüklüğünü tanımlar. Control bus: Mikrobilgisayar içerisindeki olayların kontrolünde ve senkronizasyonunda kullanılan sinyallerin iletiminde kullanılır.

60 Bus Yapısı

61 Sayı Sistemleri

62 İkili sistemden (binary) onluk sisteme (decimal) çevrim
( )2 = 1×22 + 1×21 + 0×20 + 1× × ×2-3 = = 6.625

63 Decimalden ikili sisteme geçiş örneği
0.125 = (0.001)2

64 Örnek 2 0.468  ( )2 gerçekte ( )2 = Veri kaybı var!

65 İkili sistemden 16’lık sisteme (hexadecimal) çevrim
İkili sistemdeki sayıları dörderli gruplara ayır ve her grubun 16’lık sistemdeki karşılıklarını yaz. Örnek: ( )2 = (C5)16 Çünkü (1100)2 = (C)16 and (0101)2 = (5)16.

66 Hexadecimal’den binary’ye çevrim örneği
Örnek: (A7)16 = ( )2


"Mikroişlemciler Giriş." indir ppt

Benzer bir sunumlar


Google Reklamları