ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal...

19
14. Hafta MİKROİŞLEMCİLER Dr. Öğr. Üyesi Nesibe YALÇIN https://nesibeyalcin.wordpress.com/bsm102/ BARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Transcript of ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal...

Page 1: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

14. Hafta – MİKROİŞLEMCİLER

Dr. Öğr. Üyesi Nesibe YALÇIN

https://nesibeyalcin.wordpress.com/bsm102/

BARTIN ÜNİVERSİTESİ

MÜHENDİSLİK, MİMARLIK VE TASARIM FAKÜLTESİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Page 2: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

• CPU/İşlemci, bilgisayarların verileri işleyen ve komutları gerçekleştiren bölümüdür. Diğer aygıtlardan gelen verileri aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve sonucu gerekli yerlere gönderir.

• İşlemci ile diğer birimler arası iletişim hızı ne kadar yüksek ise bilgisayar performansı da o denli iyi olacaktır. Gelişen teknoloji ile birlikte işlemcinin hız birimi GHz olmuştur.

Merkezi İşlem Birimi (CPU – Central Processing Unit)

Page 3: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

Mikroişlemci İç Yapısı

― Aritmetik ve Mantık Birimi (ALU); işlemcinin işlem yapan birimidir. ― Bellek Birimi; verinin geçici olarak tutulmasında görevlidirler. ― Kontrol Birimi; işlemcinin faaliyetlerini kontrol eden birimidir.

Veriyolu

Bus

Page 4: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

4

Mikroişlemciler

• 1946 Vakum tüp teknolojisini kullanan ilk bilgisayar ENIAC

• 1958 İlk transistörlü bilgisayar TRADIC

• 1959 İlk entegre (IC)

• 1971 İlk mikroişlemci Intel 4004

• 1981 IBM 8088 mikroişlemcisini kullanan ilk PC sini satışa

sundu.

• 2020 İlk 64 çekirdekli masaüstü işlemcisi, Ryzen Threadripper 3990X (AMD)

Page 5: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

5

İlk Mikroişlemci – Intel 4004

• İlk mikroişlemci 1971 yılında hesap makinası 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.

• Saat hızı: 108 KHz • Transistör sayısı: 2,300 • 640 bayt bellek kapasitesi • 4-bit register • 4-bit veri yolu

Page 6: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

6

Intel 8008

Page 7: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

7

Intel

Pentium

Intel Pentium Pro – 200 Mhz, 5.500.000 transistör

Page 8: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

8

Mikroişlemcide Çekirdek Kavramı • Her işlemci çekirdeği (core), ayrı bir merkezi işlem

birimidir. Başka bir ifade ile çipin işlem yapan bölümüdür.

• Örneğin çift çekirdekli işlemci, tek çipli bir işlemci gibi görünür ancak içerisinde iki işlem birimi vardır. Ek merkezi işlem birimleri, birden çok işi aynı anda yapabilirler.

• Çift çekirdek, hızı ikiye katlamaz!!

Page 9: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

9

Mikroişlemcide Çekirdek Kavramı • Çoklu işlemcilerden fayda görmeleri için programların özel

olarak geliştirilmeleri gerekir. Daha fazla çekirdek, ancak bir program yapacağı işleri çekirdekler arasında bölümlendirebilirse daha hızlı işlem yapar.

• Çekirdek sayısı arttıkça, elektrik sarfiyatı da artar. İşlemci devreye girdiğinde sadece birine değil, hepsine elektrik sağlar.

• İşlemcinin açığa çıkardığı ısı, çekirdek sayısıyla doğru orantılı olarak artabilir.

Page 10: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

10

MİKROİŞLEMCİ

MİMARİLERİ

Page 11: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

• Mikroişlemci mimarileri en yaygın olarak bellek yönetimi ve komut işleme teknikleri olarak iki şekilde sınıflandırılır.

I. Bellek Yönetimi Açısından:

Von Neumann

Harvard

II. Komut İşleme Teknikleri Açısından:

CISC- Complex Instruction Set Computer (Karmaşık Komut Kümeli Bilgisayar)

RISC- Reduced Instruction Set Computer (Azaltılmış Komut Kümeli Bilgisayar)

Temel Mikroişlemci Mimarileri

Page 12: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

12

Von Neumann Mimarisi • Modern bilgisayarın babası kabul edilen matematikçi ve fizikçi

John von Neumann tarafından ortaya atılmıştır (1945).

• İşlemci ile bellekten oluşan ve bunlar arasındaki ilişkiyi gösteren ilk ve önemli bilgisayar tasarımıdır.

Page 13: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

13

Harvard Mimarisi • Günümüzde daha çok görüntü, ses işleme, yüksek hız

gerektiren uygulamalarda Harward mimarisine sahip mikroişlemciler (DSP’ler, ARM Cortex..) kullanılır.

Page 14: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

• PC piyasasında ise CISC mimariler popüler olarak kullanılmaktadır (Intel, AMD).

• RISC mimarileri PC sektöründe olmasa da SUNUCU sektörünü tamamen işgal etmiştir: SUN ve IBM tarafından üretilen sunucuların işlemcileri RISC mimarisinde tasarlanmıştır.

CISC RISC

-Karmaşık assembly komutları +Daha anlaşılır ve basit kod kullanımı

+Daha az saat çeviriminde daha çok iş -Aynı işlev için daha uzun program kodu

-Uzun süren kod çevirim aşamaları +Daha hızlı kod işletimi

-Daha çok donanım +Daha az donanım

RISC ve CISC

Page 15: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

RISC ve CISC

1.Kod Bellekten program kodunun getirilmesi (FI-Fetch Instruction) 2.Kodun Çözülmesi (DI-Decode Instruction) 3.Komutun ALB’da çalıştırılması (EI-Execute Instruction) 4.Sonucun ilgili kaydediciye yüklenmesi (WB- Write back Result)

Page 16: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

Mikrodenetleyici • İşlemci çevresinde yapılandırılmış, bellek,

programlanabilir giriş ve çıkışlar (input-output), analog-dijital dönüştürücü, sinyal üretici, sayıcı, iletişim arabirimi, kristal salınım üretici gibi çevre birimlerinin tek bir yonga şeklinde üretildiği bir mikro bilgisayardır.

16

Page 17: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

Mikroişlemci ve Mikrodenetleyici

Mikroişlemci Mikrodenetleyici

• Sadece CPU içerir, RAM, ROM, I/O, timer vb. ayrıca bağlanır.

• Tasarımcı ROM, RAM ve I/O portlarının büyüklerini kendisi belirler ve ona göre tasarımı gerçekleştirir.

• Pahalıdır. • Çok yönlüdür. • Genel amaçlıdır. • Bilgisayarlarda kullanılmaktadır.

• CPU, RAM, ROM, I/O, timer vb. birimler tek bir çip içerine konulmuştur.

• Dahili ROM, RAM ve I/O portları mevcuttur, ayrıca bir tasarım gerektirmez.

• Ucuzdur. • Tek (özel) amaçlıdır. • Alarmlı saatlerde, mikrodalga

fırınlarda, bulaşık makinelerinde, buzdolaplarında gibi elektronik kontrol gerektiren birçok cihazda kullanılmaktadırlar.

17

Page 18: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

Mikroişlemci ve

Mikrodenetleyici Çeşitleri

18

• Makine kodu (Machine Code) • Düşük seviyeli diller Low level language (Assembly) • Yüksek seviyeli diller (High Level Language) (C, C++, Java) • Uygulama Düzeyi Diller (Visual Basic)

Mikroişlemci Programlama

• PIC (PIC16F877, PIC16F84) • ARM (Stm32f4) • RASPBERRY PI (1, 2, 3) • ARDUINO (Uno, Mega)

Page 19: ARTIN ÜNİVERSİTESİ MÜHENDİSLİK, MİMARLIK VE TASARIM ... · aritmetik ve mantıksal işlemler yardımı ile işler, sonuca ulaşır ve ... C++, Java) • Uygulama Düzeyi Diller

Gömülü Sistem ve Uygulamaları Herhangi bir sistem içerisinde yer alarak, o sistemi akıllı hale getiren elektronik donanım ve yazılım ile oluşmuş entegre sisteme gömülü sistem denir. – Cep telefonu – Televizyon – Video kamera – Alarmlı saat – Fotoğraf makinesi – Hırsız alarmı – Mikrodalga fırın – Mutfak robotu – Çamaşır makinesi – Tansiyon ölçme cihazı – Elektronik oyuncaklar vb.

19