SlideShare a Scribd company logo
1 of 32
Download to read offline
Von Neumann Mimarisi




     Bilgisayar Mühendisliğine Giriş   1
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)



                       Bilgisayar Mühendisliğine Giriş   2
Saklı Program Kavramı
• Bilgisayardan istenilen işlerin gerçekleştirilebilmesi için
  gereken      işlem      dizisi    bilgisayarın      içinde
  saklanabilmektedir.

• İstenilen bir işi yerine getiren işlemlerin listesine program
  denir. Programlar bilgisayarın içinde saklanırlar.

• Program kavramının iki avantajı vardır; Birincisi işlemler
  için gereken zaman kullanıcıya bağlı değildir. İkincisi
  sadece veriler girilerek aynı işlemler tekrar tekrar
  yaptırılabilir.

                       Bilgisayar Mühendisliğine Giriş        3
Saklı Program

Giriş Verisi                                     Çıkış Verisi




               Sayısal Bilgisayarlar




               Bilgisayar Mühendisliğine Giriş                  4
Temel Yapı
         Sayısal bir bilgisayar 3 bileşenden oluşmaktadır.

i)       Hem programı oluşturan komutların listesini, hem de
         işlemeyi bekleyen veri değerlerini tutan bir bellek birimi
ii)      Her bir program komutunu yorumlayıp yürüten merkezi
         işlem birimi (MİB & CPU)
iii)     Bir veya daha çok giriş ve çıkış portu sağlayan giriş-çıkış
         (I/O) arabirim ünitesi

       Mikroişlemci, ROM, RAM ve I/O birimlerinden oluşan adreslenebilir
       saklayıcılar topluluğudur.




                                Bilgisayar Mühendisliğine Giriş            5
Von Neumann Modeli
                  MEMORY
             MAR                MDR

INPUT                                        OUTPUT
Keyboard                                     Monitor
Mouse      PROCESSING UNIT                   Printer
Scanner                                      LED
Disk           ALU             TEMP          Disk




             CONTROL UNIT
             PC                    IR

           Bilgisayar Mühendisliğine Giriş             6
Bellek (Memory)

Bellek tümdevresinin kapasitesi arttıkça kullanılacak uç sayısı da
logaritmik olarak artmaktadır.

Temel bellek birimi gözedir.

Gözelerin yanyana gelmesiyle gözler oluşur.

Gözelerin bir araya gelmesiyle de bellek oluşur.




                       Bilgisayar Mühendisliğine Giriş           7
8 bit
          Adres (Des.)                               Adres (hex)
                    0                                0000H
                    1                                0001H
Bellek
                    2                                0002H
üzerinde işlem
yapan temel         3                                0003H
komutlar                        .
LOAD ve                         .
STORE                           .                                  16 bit adres
                                .
                                                                   hattına sahip
                                .
                                                                   bir sistemin
                         Yürülükteki Komut
                                                                   bellek yapısı
                         Bir Sonraki Komut

                 65531                               FFFBH
                 65532                               FFFCH
                 65533                               FFFDH
                 65534                               FFFEH
                 65535                               FFFFH



                           Bilgisayar Mühendisliğine Giriş                     8
Bellek Arayüzü
               (Memory Interface)
Mikroişlemci, bellek ile MAR (Memory Address Register) ve MDR
(Memory Data Register) olarak bilinin iki yapı yardımıyla iletişim kurar.




                                  MEMORY
                            MAR                    MDR




                            Bilgisayr Mühendisliğine Giriş                  9
Bellekteki X konumundan bir okuma işlemi gerçekleştirileceği zaman:

• Adres X ilk önce MAR kaydedicisine yerleştirilir.
• Belleğe bir okuma sinyali(RD) gönderilir.
• X konumunun içerdiği veri değeri MDR kaydedicisinde elde edilir.


Bellekteki X konumuna T değerinin yazılması gerektiği durumda

• T verisi önce, MDR kaydedicisinin içerisine yerleştirilir.
• X bellek adresi MAR kaydedicisine yerleştirilir.
• Ardından mikroişlemci denetim birimi tarafından üretilen yazma
sinyali (WR) ile bu konuma T verisi yazılmış olunur.




                          Bilgisayar Mühendisliğine Giriş             10
Merkezi İşlem Birimi (CPU)
Mikroişlemci, bellekten komutları okuyan, çalıştıran ve giriş-çıkış
cihazlarını kontrol eden birimdir. Bilgisayarın beynidir denilebilir.


Bilgisayar içerisinde olan işlem akışlarını kontrol eder ve düzenler.


Bütün matematiksel ve mantıksal işlemleri gerçekleştirir.




                      Bilgisayar Mühendisliğine Giriş              11
Memor y
             Input

                                                         D ata
                        Centr al Processing
                        Unit (CPU)
             O utput
                                                        Progr am




Mikroişlemci, bellekten komutları okuyan, yürüten ve giriş-çıkış
cihazlarını kontrol eden birimdir.
                        Kod                                 Kod
         Getirme       Çözme      Yürütme     Getirme              Yürütme
                                                           Çözme

                     Komut N                             Komut N+1




             Komut Saykılı                            Komut Saykılı


                              Bilgisayar Mühendisliğine Giriş                12
Arithmetical and Logic Unit (ALU)                     PROCESSING UNIT
 Temel aritmatiksel (+,-,x,/) ve
 mantıksal (AND,OR,NOT…)                                  ALU   TEMP
 işlemleri gerçekleştiri.

Kaydediciler (Registers)
 Üzerinde işlem yapılacak veri ve/veya
 komut parçacıklarının mikroişlemci
 içersinde saklayan gözlerdir. Bellek
 gözleri ile benzerlik taşır.
Kelime Uzunluğu (Word Size)

 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 alanı
 kapasitesidir.
                        Bilgisayar Mühendisliğine Giriş                 13
Giriş/Çıkış (Input&Output) Arabirimleri
                                    Denetimli İşlem

                           Giriş Birimleri   Çıkış Birimleri


                                Sayısal Bilgisayar


  Arabirim                                Saklı                                 Arabirim
  Devreleri         ....                 Program                  ....          Devreleri
                    ....                                          ....




              ...                                                         ...
    Arabirim Devreleri                                              Arabirim Devreleri

     Kullanıcı Girişleri                                             Kullanıcı Çıkışları
       (Klavye vb..)                                                   (Ekran vb..)


                                Bilgisayar Mühendisliğine Giriş                             14
.....           .....


                              Giriş Portu   Çıkış Portu
       Bellek
       Birimi                    G/Ç Arabirim Ünitesi




CPU

                   Mikrobilgisayar Yolu



      Mikrobilgisayar




      Bilgisayar Mühendisliğine Giriş                     15
Kontrol Birimi (Control Unit)
                     CONTROL UNIT
                     PC                    IR



Komutların yürütümünü gerçekleştirir. Sistem üzerindeki
senkronizasyonu sağlar. Sistemdeki diğer birimlere ne
yapmaları gerektiğini söyler.

Komut Kaydedicisi (Intruction Register) : O an yürürlükte olan
komutun tutulduğu kaydedicidir.


Program Sayıcısı (Program Counter) : Bellekte yürütülecek bir
sonraki komutun adresini tutar.


                      Bilgisayar Mühendisliğine Giriş            16
Komut
Komut, yapılan bir işin en temel parçacığıdır.

         Op-code      Operand


Op-code (İşlem Kodu): CPU’ya hangi işlemin gerçekleştirileceğini
söyler.

Operand (İşlenen): Op-code tarafından kullanıcak verinin adresini
belirtir.

Mikroişlemci içindeki komutlar birden fazla operanda sahip olabileceği
gibi hiç bir operandı olmayan komutlarda mevcuttur.

   Bilgisayarın komutları ve formatları, komut seti mimarisi
   olarak bilinir (Instruction Set Architecture-ISA)


                         Bilgisayar Mühendisliğine Giriş                 17
Komut İşleme
Bellekten komut getir
Bellekten komut getir


Komutun kodunu çöz
Komutun kodunu çöz


Adresi oluştur
Adresi oluştur


Operandları bellekten getir.
Operandları bellekten getir.


Komutu yürüt
Komutu yürüt


Elde edilen sonucu sakla
Elde edilen sonucu sakla



                 Bilgisayar Mühendisliğine Giriş   18
Örn: T mikroişlemcisinde ADD komutunun yürütülmesi
  T mikroişlemcisi 16 bitlik komut setine sahiptir. 16 bitlik
  komut setinin 4 biti işlem kodu (op-code) için ayrılmıştır. [12-
  15]
  T mikroişlemcisinin R0,…,R7 olmak üzere 8 adet kaydedicisi
  vardır.




                      R6                 R2                  R6

   Bu komut, R2’nin içeriğini R6’nın içeriğine ekler ve sonucu
   R6’da saklar.


                           Bilgisayar Mühendisliğine Giriş           19
Örn: T mikroişlemcisinde LDR komutunun yürütülmesi
  Veriyi bellekten okur ve okunan                              değeri       belirtilen
  kaydedicilerden birisinde saklar.

     Offset Address + Base Address = Memory Address

 Memory Address ile belirtilen adresteki değeri “0 1 0” ile belirtilen hedef
 kaydedicide saklar.




                        R2                 R3                           6
 Bellek adresini oluşturmak için 6 değerini R3 kaydedicisinin içeriğine ekler.
 Ardından oluşturduğu bellek adresinin içeriğini R2 kaydedicisinde saklar.
                             Bilgisayar Mühendisliğine Giriş                             20
Komut İşleme:Getir(Fetch)
PC’nin içeriğini bellek adres kaydedicisine yükle (MAR)
                                                                   F
                                                                   F

Bellekten bir okuma işlemi gerçekleştir.
                                                                   D
                                                                   D

Bellek veri kaydedicisinin (MDR) içeriğini oku ve bunu daha
                                                                   EA
                                                                   EA
sonra komut kaydedicisine (IR) yerleştir.


                                                                   OP
                                                                   OP
PC’nin içeriğini bir sonraki komutu gösterecek şekilde 1 arttır.

                                                                   EX
                                                                   EX


                                                                   S
                                                                   S

                            Bilgisayar Mühendisliğine Giriş             21
Komut İşleme:Kod Çözme(Decode)
   Komutun işlem parçasını (op-code) tanımla.
                                                                       F
                                                                       F
• T mikroişlemcisinde bu komutun en yüksek değerlikli ilk 4 bitidir.

   Mikroişlemci komutun op-code kısmına bakarak operand kısmı          D
                                                                       D
   için kaç byte getireceğini bilir.

   Örn:                                                                EA
                                                                       EA

   LDR komutunun son 6 biti offset adresini gösterir.
                                                                       OP
                                                                       OP
   ADD komutunun son 3 biti işlem parçasının ikinci kısmını
   (operand 2’yi gösterir)
                                                                       EX
                                                                       EX


                                                                       S
                                                                       S

                               Bilgisayar Mühendisliğine Giriş              22
Komut İşleme:
Adresin Hesaplanması (Evaluate Address)
  Bellek erişimine ihtiyaç duyan bir komut, erişim için        F
                                                               F
  gerekli olan adresi hesaplar.

  Örn:
                                                               D
                                                               D

         Offset Address + Base Address = Memory Address
                                                               EA
                                                               EA

         Offset Address + PC = Memory Address
                                                               OP
                                                               OP

         Offset Address + 0 = Memory Address
                                                               EX
                                                               EX


                                                               S
                                                               S

                             Bilgisayar Mühendisliğine Giriş        23
Komut İşleme:İşlenen Getir(Fetch Operand)
  Komutun üzerinde işlem yapacağı parçaları getirir.

                                                               F
                                                               F
 Örn:

 • Bellekten verinin yüklenmesi                                D
                                                               D

 • Kaydediciden bir değerin okunması
                                                               EA
                                                               EA


                                                               OP
                                                               OP


                                                               EX
                                                               EX


                                                               S
                                                               S


                             Bilgisayar Mühendisliğine Giriş        24
Komut İşleme:Yürütme (Execution)
Mikroişlemci önceden okumuş olduğu op-code ve operandları
kullanarak ilgili işlemi yerine getirir.
                                                            F
                                                            F


                                                            D
                                                            D


                                                            EA
                                                            EA


                                                            OP
                                                            OP


                                                            EX
                                                            EX


                                                            S
                                                            S

                        Bilgisayar Mühendisliğine Giriş          25
Komut İşleme:Sakla (Store)
Komut sonucunda, elde edilen değer saklanır. Bu bir bellek
konumu olabileceği gibi, bir kaydedici veya bir çıkış portu da
olabilir.                                                        F
                                                                 F


Örn:                                                             D
                                                                 D

Bellekteki bir konuma sonucun saklanacağı durumda
                                                                 EA
                                                                 EA
• Önce ilgili konumun adresi MAR kaydedicisine yerleştirilir

• Kaydedilecek veri MDR kaydedicisine yerleştirilir.             OP
                                                                 OP

• Ardından belleğe yazma işlemi gerçekleştirilir.
                                                                 EX
                                                                 EX


                                                                 S
                                                                 S


                            Bilgisayar Mühendisliğine Giriş           26
Komut İşlenme Sırasını Değiştirme
Buraya kadar belirtilen işlemlerde bellekteki komutlar sırasıyla
işlenmekteydi. Bu durumda PC’ın içeriği sırasıyla birer birer artmaktaydı.


Bazı durumlarda bu tür kullanımın dışına çıkılarak program akışının
yönünü değiştirmek mümkündür. Örn: Döngüler(loop), Şartlı yapılar (if-
then) ve alt yordamlar (sub-routines) gibi.


Bu işlemi gerçekleştirmek için bazı komutlara gereksinim duyulur. Bunlar
sıçrma(jump) ve şartlı dallanma(branch) komutlarıdır.




                           Bilgisayar Mühendisliğine Giriş                   27
Örn: T mikroişlemcisinin belleğinde sıçrama
  Offset değeri bir kaydedicinin değerine eklenerek yürütülecek
  bir sonraki komutun adresini oluşturabilir. Bu adres PC’nin
  içeriğine yüklenerek programın bu adresten devam etmesi
  sağlanabilir.




                                       R3                 6 değeri
    R3 kaydedicisinin değerini taban olarak alıp bunun üzerine
    offset değerinin eklenmesi ile yürütülecek bir sonraki
    komutun bulunduğu bellek adresi elde edilir ve elde edilen
    bu değer PC’nin içerisine yerleştirilir.

                        Bilgisayar Mühendisliğine Giriş              28
Komut Türleri
Mikroişlemci tarafından yürütülen komut türleri genel olarak aşağıdaki
sınıflara ayrılabilir.



• Veri Taşıma Komutları

• Veri İşleme Komutları

• Program Kontrol Komutları

• Giriş / Çıkış Komutları




                            Bilgisayar Mühendisliğine Giriş              29
Sistem Saati (System Clock)
 Mikroişlemcide kontrol biriminin çalışmasını sağlayan sistem saatidir.

 Saat darbesinin her bir kenarında kontrol birimi bir sonraki makine
 çevrimine girer. Bu çevrim yeni bir komut olabileceği gibi yürürlükteki
 komutun farklı bir evresi de olabilir.

“1”
“0”
                           Makine Çevrimi                      zaman→

 Sistem saati, kristal bir osilatör devre yardımıyla yürütülür. Sistem saati
 düzenli olarak “1” ve “0” lar üretir.




                            Bilgisayar Mühendisliğine Giriş                    30
Mhz ve MIPS
    MIPS = millions of instructions per second
    MHz = millions of clock cycles per second



Bu iki kavram birbirine benzer olmasına karşı farklıdırlar.   Neden?




                            Bilgisayar Mühendisliğine Giriş            31
Von Neumann Modeli
                  MEMORY
             MAR                MDR

INPUT                                        OUTPUT
Keyboard                                     Monitor
Mouse      PROCESSING UNIT                   Printer
Scanner                                      LED
Disk           ALU             TEMP          Disk




             CONTROL UNIT
             PC                    IR


           Bilgisayar Mühendisliğine Giriş             32

More Related Content

What's hot (10)

S7 300 ladder programlama
S7 300 ladder programlamaS7 300 ladder programlama
S7 300 ladder programlama
 
ferhat gör
ferhat görferhat gör
ferhat gör
 
Temel plc komutlarına giriş
Temel plc komutlarına girişTemel plc komutlarına giriş
Temel plc komutlarına giriş
 
Portlar
PortlarPortlar
Portlar
 
Kodlayiclar Proteus
Kodlayiclar ProteusKodlayiclar Proteus
Kodlayiclar Proteus
 
Bcd 7 Segment Kod Cozucu proteus
Bcd 7 Segment Kod Cozucu proteusBcd 7 Segment Kod Cozucu proteus
Bcd 7 Segment Kod Cozucu proteus
 
Led'lerle havaya yazı yazma
Led'lerle havaya yazı yazmaLed'lerle havaya yazı yazma
Led'lerle havaya yazı yazma
 
Java, android ve arduino ile gömülü programlama
Java, android ve arduino ile gömülü programlamaJava, android ve arduino ile gömülü programlama
Java, android ve arduino ile gömülü programlama
 
Uart ve seri̇ haberleşme
Uart ve seri̇ haberleşmeUart ve seri̇ haberleşme
Uart ve seri̇ haberleşme
 
Eki̇m
Eki̇mEki̇m
Eki̇m
 

Similar to Sistem3

Bilgi teknolojilerinde temel_kavramlar
Bilgi teknolojilerinde temel_kavramlarBilgi teknolojilerinde temel_kavramlar
Bilgi teknolojilerinde temel_kavramlar
cosmosonur
 
Bilgi Teknolojileri Temel Kavramları - 1
Bilgi Teknolojileri Temel Kavramları - 1Bilgi Teknolojileri Temel Kavramları - 1
Bilgi Teknolojileri Temel Kavramları - 1
Zekai Uçan
 
Bdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlar
Bdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlarBdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlar
Bdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlar
elif ırkı
 
Metasploit framework ile exploit gelistirme 2013 1.5
Metasploit framework ile exploit gelistirme   2013 1.5Metasploit framework ile exploit gelistirme   2013 1.5
Metasploit framework ile exploit gelistirme 2013 1.5
Canberk Bolat
 
Metasploit Framework ile Exploit Gelistirme
Metasploit Framework ile Exploit GelistirmeMetasploit Framework ile Exploit Gelistirme
Metasploit Framework ile Exploit Gelistirme
Fatih Ozavci
 

Similar to Sistem3 (20)

CEIT 253
CEIT 253CEIT 253
CEIT 253
 
CEIT 253
CEIT 253CEIT 253
CEIT 253
 
Bilgi Teknolojilerine Giriş
Bilgi Teknolojilerine GirişBilgi Teknolojilerine Giriş
Bilgi Teknolojilerine Giriş
 
Bilgi teknolojilerinde temel_kavramlar
Bilgi teknolojilerinde temel_kavramlarBilgi teknolojilerinde temel_kavramlar
Bilgi teknolojilerinde temel_kavramlar
 
Bilgi Teknolojisi Temel Kavramları
Bilgi Teknolojisi Temel KavramlarıBilgi Teknolojisi Temel Kavramları
Bilgi Teknolojisi Temel Kavramları
 
Programlama I (C) Ders Notu
Programlama I (C) Ders NotuProgramlama I (C) Ders Notu
Programlama I (C) Ders Notu
 
Donanım Sunusu - 3
Donanım Sunusu - 3Donanım Sunusu - 3
Donanım Sunusu - 3
 
Bilgisayar Donanımı
Bilgisayar DonanımıBilgisayar Donanımı
Bilgisayar Donanımı
 
Bilgi Teknolojileri Temel Kavramları - 1
Bilgi Teknolojileri Temel Kavramları - 1Bilgi Teknolojileri Temel Kavramları - 1
Bilgi Teknolojileri Temel Kavramları - 1
 
Bilgi Teknolojilerinin Temel Kavramları 1
Bilgi Teknolojilerinin Temel Kavramları 1Bilgi Teknolojilerinin Temel Kavramları 1
Bilgi Teknolojilerinin Temel Kavramları 1
 
Bilgi Teknolojilerinin Temel Kavramları 1
Bilgi Teknolojilerinin Temel Kavramları 1Bilgi Teknolojilerinin Temel Kavramları 1
Bilgi Teknolojilerinin Temel Kavramları 1
 
Bilgisayar Mimarisi 01, Feza BUZLUCA
Bilgisayar Mimarisi 01, Feza BUZLUCABilgisayar Mimarisi 01, Feza BUZLUCA
Bilgisayar Mimarisi 01, Feza BUZLUCA
 
İşlemciler
İşlemciler İşlemciler
İşlemciler
 
Bilgisayara Giriş 1
Bilgisayara Giriş 1Bilgisayara Giriş 1
Bilgisayara Giriş 1
 
Bdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlar
Bdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlarBdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlar
Bdc3b6 hafta-1-bilgisayarla-ilgili-temel-kavramlar
 
Bilgisayar donanim-2021
Bilgisayar donanim-2021Bilgisayar donanim-2021
Bilgisayar donanim-2021
 
Programlanabilir DDRx Denetleyicileri
Programlanabilir DDRx DenetleyicileriProgramlanabilir DDRx Denetleyicileri
Programlanabilir DDRx Denetleyicileri
 
Metasploit framework ile exploit gelistirme 2013 1.5
Metasploit framework ile exploit gelistirme   2013 1.5Metasploit framework ile exploit gelistirme   2013 1.5
Metasploit framework ile exploit gelistirme 2013 1.5
 
Metasploit Framework ile Exploit Gelistirme
Metasploit Framework ile Exploit GelistirmeMetasploit Framework ile Exploit Gelistirme
Metasploit Framework ile Exploit Gelistirme
 
Nurdan Sarıkaya
Nurdan Sarıkaya Nurdan Sarıkaya
Nurdan Sarıkaya
 

Sistem3

  • 1. Von Neumann Mimarisi Bilgisayar Mühendisliğine Giriş 1
  • 2. 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) Bilgisayar Mühendisliğine Giriş 2
  • 3. Saklı Program Kavramı • Bilgisayardan istenilen işlerin gerçekleştirilebilmesi için gereken işlem dizisi bilgisayarın içinde saklanabilmektedir. • İstenilen bir işi yerine getiren işlemlerin listesine program denir. Programlar bilgisayarın içinde saklanırlar. • Program kavramının iki avantajı vardır; Birincisi işlemler için gereken zaman kullanıcıya bağlı değildir. İkincisi sadece veriler girilerek aynı işlemler tekrar tekrar yaptırılabilir. Bilgisayar Mühendisliğine Giriş 3
  • 4. Saklı Program Giriş Verisi Çıkış Verisi Sayısal Bilgisayarlar Bilgisayar Mühendisliğine Giriş 4
  • 5. Temel Yapı Sayısal bir bilgisayar 3 bileşenden oluşmaktadır. i) Hem programı oluşturan komutların listesini, hem de işlemeyi bekleyen veri değerlerini tutan bir bellek birimi ii) Her bir program komutunu yorumlayıp yürüten merkezi işlem birimi (MİB & CPU) iii) Bir veya daha çok giriş ve çıkış portu sağlayan giriş-çıkış (I/O) arabirim ünitesi Mikroişlemci, ROM, RAM ve I/O birimlerinden oluşan adreslenebilir saklayıcılar topluluğudur. Bilgisayar Mühendisliğine Giriş 5
  • 6. Von Neumann Modeli MEMORY MAR MDR INPUT OUTPUT Keyboard Monitor Mouse PROCESSING UNIT Printer Scanner LED Disk ALU TEMP Disk CONTROL UNIT PC IR Bilgisayar Mühendisliğine Giriş 6
  • 7. Bellek (Memory) Bellek tümdevresinin kapasitesi arttıkça kullanılacak uç sayısı da logaritmik olarak artmaktadır. Temel bellek birimi gözedir. Gözelerin yanyana gelmesiyle gözler oluşur. Gözelerin bir araya gelmesiyle de bellek oluşur. Bilgisayar Mühendisliğine Giriş 7
  • 8. 8 bit Adres (Des.) Adres (hex) 0 0000H 1 0001H Bellek 2 0002H üzerinde işlem yapan temel 3 0003H komutlar . LOAD ve . STORE . 16 bit adres . hattına sahip . bir sistemin Yürülükteki Komut bellek yapısı Bir Sonraki Komut 65531 FFFBH 65532 FFFCH 65533 FFFDH 65534 FFFEH 65535 FFFFH Bilgisayar Mühendisliğine Giriş 8
  • 9. Bellek Arayüzü (Memory Interface) Mikroişlemci, bellek ile MAR (Memory Address Register) ve MDR (Memory Data Register) olarak bilinin iki yapı yardımıyla iletişim kurar. MEMORY MAR MDR Bilgisayr Mühendisliğine Giriş 9
  • 10. Bellekteki X konumundan bir okuma işlemi gerçekleştirileceği zaman: • Adres X ilk önce MAR kaydedicisine yerleştirilir. • Belleğe bir okuma sinyali(RD) gönderilir. • X konumunun içerdiği veri değeri MDR kaydedicisinde elde edilir. Bellekteki X konumuna T değerinin yazılması gerektiği durumda • T verisi önce, MDR kaydedicisinin içerisine yerleştirilir. • X bellek adresi MAR kaydedicisine yerleştirilir. • Ardından mikroişlemci denetim birimi tarafından üretilen yazma sinyali (WR) ile bu konuma T verisi yazılmış olunur. Bilgisayar Mühendisliğine Giriş 10
  • 11. Merkezi İşlem Birimi (CPU) Mikroişlemci, bellekten komutları okuyan, çalıştıran ve giriş-çıkış cihazlarını kontrol eden birimdir. Bilgisayarın beynidir denilebilir. Bilgisayar içerisinde olan işlem akışlarını kontrol eder ve düzenler. Bütün matematiksel ve mantıksal işlemleri gerçekleştirir. Bilgisayar Mühendisliğine Giriş 11
  • 12. Memor y Input D ata Centr al Processing Unit (CPU) O utput Progr am Mikroişlemci, bellekten komutları okuyan, yürüten ve giriş-çıkış cihazlarını kontrol eden birimdir. Kod Kod Getirme Çözme Yürütme Getirme Yürütme Çözme Komut N Komut N+1 Komut Saykılı Komut Saykılı Bilgisayar Mühendisliğine Giriş 12
  • 13. Arithmetical and Logic Unit (ALU) PROCESSING UNIT Temel aritmatiksel (+,-,x,/) ve mantıksal (AND,OR,NOT…) ALU TEMP işlemleri gerçekleştiri. Kaydediciler (Registers) Üzerinde işlem yapılacak veri ve/veya komut parçacıklarının mikroişlemci içersinde saklayan gözlerdir. Bellek gözleri ile benzerlik taşır. Kelime Uzunluğu (Word Size) 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 alanı kapasitesidir. Bilgisayar Mühendisliğine Giriş 13
  • 14. Giriş/Çıkış (Input&Output) Arabirimleri Denetimli İşlem Giriş Birimleri Çıkış Birimleri Sayısal Bilgisayar Arabirim Saklı Arabirim Devreleri .... Program .... Devreleri .... .... ... ... Arabirim Devreleri Arabirim Devreleri Kullanıcı Girişleri Kullanıcı Çıkışları (Klavye vb..) (Ekran vb..) Bilgisayar Mühendisliğine Giriş 14
  • 15. ..... ..... Giriş Portu Çıkış Portu Bellek Birimi G/Ç Arabirim Ünitesi CPU Mikrobilgisayar Yolu Mikrobilgisayar Bilgisayar Mühendisliğine Giriş 15
  • 16. Kontrol Birimi (Control Unit) CONTROL UNIT PC IR Komutların yürütümünü gerçekleştirir. Sistem üzerindeki senkronizasyonu sağlar. Sistemdeki diğer birimlere ne yapmaları gerektiğini söyler. Komut Kaydedicisi (Intruction Register) : O an yürürlükte olan komutun tutulduğu kaydedicidir. Program Sayıcısı (Program Counter) : Bellekte yürütülecek bir sonraki komutun adresini tutar. Bilgisayar Mühendisliğine Giriş 16
  • 17. Komut Komut, yapılan bir işin en temel parçacığıdır. Op-code Operand Op-code (İşlem Kodu): CPU’ya hangi işlemin gerçekleştirileceğini söyler. Operand (İşlenen): Op-code tarafından kullanıcak verinin adresini belirtir. Mikroişlemci içindeki komutlar birden fazla operanda sahip olabileceği gibi hiç bir operandı olmayan komutlarda mevcuttur. Bilgisayarın komutları ve formatları, komut seti mimarisi olarak bilinir (Instruction Set Architecture-ISA) Bilgisayar Mühendisliğine Giriş 17
  • 18. Komut İşleme Bellekten komut getir Bellekten komut getir Komutun kodunu çöz Komutun kodunu çöz Adresi oluştur Adresi oluştur Operandları bellekten getir. Operandları bellekten getir. Komutu yürüt Komutu yürüt Elde edilen sonucu sakla Elde edilen sonucu sakla Bilgisayar Mühendisliğine Giriş 18
  • 19. Örn: T mikroişlemcisinde ADD komutunun yürütülmesi T mikroişlemcisi 16 bitlik komut setine sahiptir. 16 bitlik komut setinin 4 biti işlem kodu (op-code) için ayrılmıştır. [12- 15] T mikroişlemcisinin R0,…,R7 olmak üzere 8 adet kaydedicisi vardır. R6 R2 R6 Bu komut, R2’nin içeriğini R6’nın içeriğine ekler ve sonucu R6’da saklar. Bilgisayar Mühendisliğine Giriş 19
  • 20. Örn: T mikroişlemcisinde LDR komutunun yürütülmesi Veriyi bellekten okur ve okunan değeri belirtilen kaydedicilerden birisinde saklar. Offset Address + Base Address = Memory Address Memory Address ile belirtilen adresteki değeri “0 1 0” ile belirtilen hedef kaydedicide saklar. R2 R3 6 Bellek adresini oluşturmak için 6 değerini R3 kaydedicisinin içeriğine ekler. Ardından oluşturduğu bellek adresinin içeriğini R2 kaydedicisinde saklar. Bilgisayar Mühendisliğine Giriş 20
  • 21. Komut İşleme:Getir(Fetch) PC’nin içeriğini bellek adres kaydedicisine yükle (MAR) F F Bellekten bir okuma işlemi gerçekleştir. D D Bellek veri kaydedicisinin (MDR) içeriğini oku ve bunu daha EA EA sonra komut kaydedicisine (IR) yerleştir. OP OP PC’nin içeriğini bir sonraki komutu gösterecek şekilde 1 arttır. EX EX S S Bilgisayar Mühendisliğine Giriş 21
  • 22. Komut İşleme:Kod Çözme(Decode) Komutun işlem parçasını (op-code) tanımla. F F • T mikroişlemcisinde bu komutun en yüksek değerlikli ilk 4 bitidir. Mikroişlemci komutun op-code kısmına bakarak operand kısmı D D için kaç byte getireceğini bilir. Örn: EA EA LDR komutunun son 6 biti offset adresini gösterir. OP OP ADD komutunun son 3 biti işlem parçasının ikinci kısmını (operand 2’yi gösterir) EX EX S S Bilgisayar Mühendisliğine Giriş 22
  • 23. Komut İşleme: Adresin Hesaplanması (Evaluate Address) Bellek erişimine ihtiyaç duyan bir komut, erişim için F F gerekli olan adresi hesaplar. Örn: D D Offset Address + Base Address = Memory Address EA EA Offset Address + PC = Memory Address OP OP Offset Address + 0 = Memory Address EX EX S S Bilgisayar Mühendisliğine Giriş 23
  • 24. Komut İşleme:İşlenen Getir(Fetch Operand) Komutun üzerinde işlem yapacağı parçaları getirir. F F Örn: • Bellekten verinin yüklenmesi D D • Kaydediciden bir değerin okunması EA EA OP OP EX EX S S Bilgisayar Mühendisliğine Giriş 24
  • 25. Komut İşleme:Yürütme (Execution) Mikroişlemci önceden okumuş olduğu op-code ve operandları kullanarak ilgili işlemi yerine getirir. F F D D EA EA OP OP EX EX S S Bilgisayar Mühendisliğine Giriş 25
  • 26. Komut İşleme:Sakla (Store) Komut sonucunda, elde edilen değer saklanır. Bu bir bellek konumu olabileceği gibi, bir kaydedici veya bir çıkış portu da olabilir. F F Örn: D D Bellekteki bir konuma sonucun saklanacağı durumda EA EA • Önce ilgili konumun adresi MAR kaydedicisine yerleştirilir • Kaydedilecek veri MDR kaydedicisine yerleştirilir. OP OP • Ardından belleğe yazma işlemi gerçekleştirilir. EX EX S S Bilgisayar Mühendisliğine Giriş 26
  • 27. Komut İşlenme Sırasını Değiştirme Buraya kadar belirtilen işlemlerde bellekteki komutlar sırasıyla işlenmekteydi. Bu durumda PC’ın içeriği sırasıyla birer birer artmaktaydı. Bazı durumlarda bu tür kullanımın dışına çıkılarak program akışının yönünü değiştirmek mümkündür. Örn: Döngüler(loop), Şartlı yapılar (if- then) ve alt yordamlar (sub-routines) gibi. Bu işlemi gerçekleştirmek için bazı komutlara gereksinim duyulur. Bunlar sıçrma(jump) ve şartlı dallanma(branch) komutlarıdır. Bilgisayar Mühendisliğine Giriş 27
  • 28. Örn: T mikroişlemcisinin belleğinde sıçrama Offset değeri bir kaydedicinin değerine eklenerek yürütülecek bir sonraki komutun adresini oluşturabilir. Bu adres PC’nin içeriğine yüklenerek programın bu adresten devam etmesi sağlanabilir. R3 6 değeri R3 kaydedicisinin değerini taban olarak alıp bunun üzerine offset değerinin eklenmesi ile yürütülecek bir sonraki komutun bulunduğu bellek adresi elde edilir ve elde edilen bu değer PC’nin içerisine yerleştirilir. Bilgisayar Mühendisliğine Giriş 28
  • 29. Komut Türleri Mikroişlemci tarafından yürütülen komut türleri genel olarak aşağıdaki sınıflara ayrılabilir. • Veri Taşıma Komutları • Veri İşleme Komutları • Program Kontrol Komutları • Giriş / Çıkış Komutları Bilgisayar Mühendisliğine Giriş 29
  • 30. Sistem Saati (System Clock) Mikroişlemcide kontrol biriminin çalışmasını sağlayan sistem saatidir. Saat darbesinin her bir kenarında kontrol birimi bir sonraki makine çevrimine girer. Bu çevrim yeni bir komut olabileceği gibi yürürlükteki komutun farklı bir evresi de olabilir. “1” “0” Makine Çevrimi zaman→ Sistem saati, kristal bir osilatör devre yardımıyla yürütülür. Sistem saati düzenli olarak “1” ve “0” lar üretir. Bilgisayar Mühendisliğine Giriş 30
  • 31. Mhz ve MIPS MIPS = millions of instructions per second MHz = millions of clock cycles per second Bu iki kavram birbirine benzer olmasına karşı farklıdırlar. Neden? Bilgisayar Mühendisliğine Giriş 31
  • 32. Von Neumann Modeli MEMORY MAR MDR INPUT OUTPUT Keyboard Monitor Mouse PROCESSING UNIT Printer Scanner LED Disk ALU TEMP Disk CONTROL UNIT PC IR Bilgisayar Mühendisliğine Giriş 32