7. CPU ve Memory
Giriş
CPU ‘nun Komponentleri
Bilgisayar’ın Karşılığı
System Block Diagram
Registers-Yazmaç
Registers-Yazmaç
Registers-Yazmaç
Memory Unit
Memory Unit
Bellek Kapasitesi
Soru
Alıştırma – Bellek Kapasitesi
Alıştırma – Bellek Kapasitesi
Memory Uygulamaları
Komutu Getir-İşlet Döngüsü Fetch-Execute Cycle
CPU-Memory İletişimi
CPU-Memory İletişimi
CPU-Memory İletişimi
CPU-Memory İletişimi
Saklama Komutu The Store Instruction
The Add Instruction
Yollar-Buses
Bus Tipleri (1/3)
Bus Tipleri (2/3)
Bus Tipleri (3/3)
Bilgisayar içindeki Yollar
Data Bus
Address Bus
Control Bus
Memory Haritası
Bellek Haritalarının Kullanımı
Alıştırma – Bellek Alanı
Alıştırma – Bellek Alanı
Alıştırma – Bellek Haritası
Teşekkür Ederim
312.50K
Category: informaticsinformatics
Similar presentations:

CPU ve Memory

1. 7. CPU ve Memory

Bilgisayar Mühendisliğine Giriş

2. Giriş

• Bilgisayarlar…
• Memory CPU dan ayrıdır
• Veriler binary dir. (decimal değil)
Bilgisayar Mühendisliğine Giriş

3. CPU ‘nun Komponentleri

• ALU (arithmetic and logic unit)
• Aritmetik ve mantık işlemlerini yerine getirir.
• Aritmetik: toplama, çıkarma, çarpma, bölme vs.
• Mantık (Logic): AND, OR, NOT, Shift, vb.
• Kontrol ünitesi
• Komutları (instructions) yorumlar (compile)
• CPU içindeki bilgi akışını kontrol eder.
• Program sayacı (“program counter” ) ile çalışır. (bir
sonraki komutun adresi)
• Giriş/Çıkış Arayüzü (Input/output interface)
• Veri giriş/çıkışı için bir mekanizma sağlar
• Mümkün olan pek çok çeşitleme ile
Bilgisayar Mühendisliğine Giriş

4. Bilgisayar’ın Karşılığı

ALU
Input/output
interface
123
456
00
01
02
03
04
05
123
500
199
500
399
CPU
95
96
97
98
99
789
123
05
Program counter
Bilgisayar Mühendisliğine Giriş

5. System Block Diagram

CPU
ALU
Input/output
interface
Memory
Control unit
Program counter
Bilgisayar Mühendisliğine Giriş

6. Registers-Yazmaç

• Register (yazmaç) CPU içindeki tek depolama
yeridir.
• CPU ‘nun dışında olan bellekten farklıdır.
• Register’lar, CPU içerisinde bulunduklarından
dolayı, hafıza bloğuna göre oldukça hızlıdırlar.
• Hafıza bloğuna erişim için sistem veri yollarının
kullanılması gereklidir.
• Register’daki verilerin ulaşılması için çok küçük
bir zaman dilimi yeterli olur.
Bilgisayar Mühendisliğine Giriş

7. Registers-Yazmaç


Bu sebeple, değişkenler, register’larda tutulmaya
çalışılmalıdır.
Register grupları genellikle oldukça kısıtlıdır ve
çoğu register’ın önceden tanımlanmış görevleri
bulunur. Bu nedende, kullanımları çok sınırlıdır.
Ancak, yine de hesaplamalar için geçici hafıza
birimi olarak kullanılmak için en ideal
birimlerdir.
Bilgisayar Mühendisliğine Giriş

8. Registers-Yazmaç

• Bazı register örnekleri:
Accumulator (ACC)
Program counter (PC)
Instruction register (IR)
Memory address register (MAR)
Memory data register (MDR)
Status register
• Genel amaçlı registerlar (R0, R1, …)
• Bazıları CPU lara dahil edilmiştir.
• Program değişkenlerinin yüksek hızlarla geçici
depolanmaları için kullanılır.
Bilgisayar Mühendisliğine Giriş

9. Memory Unit

• Bilgisayarın icra edilecek komutlarını ve bu
komutların işleyeceği veriyi depolamak için
kullandığı alt sistemdir.
• CPU ‘nun işleyeceği tüm veri ve program
belleğe yüklenmiş olmalıdır.
• Bellekteki tüm bilgiler 2 li sayı sisteminde
ifade edilmiştir.
• Bir bellek ünitesinin kapasitesi saklayabileceği
toplam bilginin kaç bayt olduğu ile ölçülür.
Bilgisayar Mühendisliğine Giriş

10. Memory Unit

Memory cell
bit 0
bit 1
0
1
2
3
4
Address decoder
Memory address register
n bit
2n-1
bit n - 1
0
1
2
m-1
Memory data register
Bilgisayar Mühendisliğine Giriş
m bits

11. Bellek Kapasitesi


2n x m
n adres biti = 2n adres olabilir
m Veri biti
m veri yolu uzunluğudur.
Tipik değerler:
• n: 16, 17, 18, 19, 20, 21, 22, vb
• m: 8, 16, 32, 64
Bilgisayar Mühendisliğine Giriş

12. Soru

• S: 512 KB lık bir bellek ünitesinin bellek
hacmi kaç bit içerir?
A: 512 = 29, K = 210, B = byte = 8 = 23
29 x 210 x 23 = 222 = 4,194,304
Bilgisayar Mühendisliğine Giriş

13. Alıştırma – Bellek Kapasitesi

• S: 2 MB lık bir bellek ünitesinin bellek
hacmi kaç bit içerir?
C:
Bilgisayar Mühendisliğine Giriş

14. Alıştırma – Bellek Kapasitesi

Cevap
• S: 2 MB lık bir bellek ünitesinin bellek
hacmi kaç bit içerir?
A: 2 = 21, M = 220, B = byte = 8 = 23
21 x 220 x 23 = 224 = 16,777,216
Bilgisayar Mühendisliğine Giriş

15. Memory Uygulamaları

• RAM – random access memory
• Static RAM-cache memory
• Dynamic RAM
• ROM – read-only memory
Bilgisayar Mühendisliğine Giriş

16. Komutu Getir-İşlet Döngüsü Fetch-Execute Cycle

• Her komutun işletilmesinde iki aşama ya da
döngü
• Fetch – Bellekten komut kodunu getir ve komut
yazmacına yerleştir
• Execute – Komutu işlet
• Güzel bir resim, bazen yardımcı olabilir…
Fetch
Execute
zaman
Bilgisayar Mühendisliğine Giriş

17. CPU-Memory İletişimi

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

18. CPU-Memory İletişimi

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

19. CPU-Memory İletişimi

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ş

20. CPU-Memory İletişimi

Bilgisayar Mühendisliğine Giriş

21. Saklama Komutu The Store Instruction

Fetch
PC
(program counter)
MAR
(memory adress register)
MDR
IR
(memory data register) (Instruction register)
IR[address] MAR
Execute
A MDR
PC + 1 PC
Bilgisayar Mühendisliğine Giriş
zaman

22. The Add Instruction

Fetch
PC MAR
MDR IR
IR[address] MAR
Execute
A + MDR A
PC + 1 PC
Bilgisayar Mühendisliğine Giriş
zaman

23. Yollar-Buses

• Tanım: ortak bir amaç için kabloların bir
araya toplanması
• Her bir kablo hat-line olarak adlandırılır
• Genelde, yollar bilgiyi bir yerden diğerine
taşır.
Bilgisayar Mühendisliğine Giriş

24.

bus
Printer
Mouse
Ports
Keyboard
Modem
CPU
Disk
controller
Graphics
card
Monitor
Sound
card
Speakers
RAM
Network
card
Computer
Bilgisayar Mühendisliğine Giriş

25. Bus Tipleri (1/3)

• Point-to-point
Serial
port
Control
unit
Modem
ALU
Bilgisayar Mühendisliğine Giriş

26. Bus Tipleri (2/3)

• Multipoint
Computer
Computer
Computer
CPU
Disk controller
Computer
Memory
Video controller
Bilgisayar Mühendisliğine Giriş

27. Bus Tipleri (3/3)

• Papatya Zinciri
Device controller
Device
Device
Device
Terminator
Bilgisayar Mühendisliğine Giriş

28. Bilgisayar içindeki Yollar

Data bus
Address bus
Control bus
CPU
I/O Module
Memory
I/O Device
Bilgisayar Mühendisliğine Giriş
Motherboard
• Pek çok
konfigürasyon
mümkün

29. Data Bus

• Veriler CPU ve bellek ya da I/O device arasında
taşınır
• İki Yönlü olarak
• Yazma işlemleri için CPU nun dışına veri transfer edilir.
• Okuma işlemleri için CPU nun içine veri transfer edilir.
• Genel büyüklükleri : 8, 16, 32, 64 line
• Sinyal isimleri:
• D0, D1, D2, D3, vb.
Bilgisayar Mühendisliğine Giriş

30. Address Bus

• Bir adres CPU dan bellek ya da I/O device taşınır.
• Tek yönlü
• Adresler her zaman CPU tarafından desteklenir
• Genel büyüklükleri : 16, 20, 24 line
• Sinyal isimleri:
• A0, A1, A2, A3, vb.
Bilgisayar Mühendisliğine Giriş

31. Control Bus

• CPU faaliyetlerinin koordinesi için sinyallerin
toplanması
• Her sinyal tek bir amaca sahiptir
• Genel büyüklükleri: 10-20 line
• Sinyaller giriş,çıkış ya da 2 yönlüdür
• Genel sinyaller
/RD (read)
/WR (write
CLK (clock)
/IRQ (interrupt request)
vb.
Bilgisayar Mühendisliğine Giriş

32. Memory Haritası

• Bir sistemde bellek alanının
kullanımı/gösterimi genellikle “ bellek
haritası” olarak tanımlanır
• Haritanın yüksekliği adres sayıları
tarafından belirlenir
• Harita genişliği/büyüklüğü genellikle 8
bittir.
• 216 byte kapasiteli bir sistem…
Bilgisayar Mühendisliğine Giriş

33.

Memory
Map
7 6 5 4 3 2 1 0
FFFF
Veri bit
pozisyonu
Hexadecimal
adres
0002
0001
0000
Bilgisayar Mühendisliğine Giriş
Belleğin
başlangıcı

34. Bellek Haritalarının Kullanımı

• Bir sistem üzerinde ’’neyin nerede’’ olduğunu
göstermek için bellek haritaları çizilir.
• Bazı ‘’ne’’ ler
• RAM, ROM, I/O, hiçbir şey
• Bazı ’’ nerede’’ ler
• Her RAM, ROM, I/O ’’blok’’ larının başlangıç/bitiş
adresleri ile belirlenir.
• Mesela ,
• Bellek başlangıcında art arda 2 adet 1 KB RAM
modülü olan, 216 byte kapasiteli bir sistem bellek
haritası …
Bilgisayar Mühendisliğine Giriş

35.

Memory
Map
FFFF
62 KB
boş
216 bytes = 64 KB
“kapasite”
0800
07FF
1 KB RAM
4000
03FF
1 KB RAM
0000
Bilgisayar Mühendisliğine Giriş

36. Alıştırma – Bellek Alanı

S: 32 MB 4 bellek modülü art arda
yerleştirilen,128 GB kapasiteli bir sistemin
geri kalan kısmı kullanılmamaktadır. Ne
kadarlık bellek alanı daha sonraki
genişleme için kullanılabilir?
(Cevaplarınızı megabyte cinsinden verin)
C: ?
Bilgisayar Mühendisliğine Giriş

37. Alıştırma – Bellek Alanı

S: 32 MB 4 bellek modülü art arda yerleştirilen,128
GB kapasiteli bir sistemin geri kalan kısmı
kullanılmamaktadır. Ne kadarlık bellek alanı
daha sonraki genişleme için kullanılabilir?
(Cevaplarınızı megabyte cinsinden verin)
C: ? 128 GB – 4 x 32 MB
= 27 x 210 MB - 22 x 25 MB
= (217 – 27) MB
= (131,072 – 128) MB
= 130,944 MB
Bilgisayar Mühendisliğine Giriş

38. Alıştırma – Bellek Haritası

• 2 GB kapasiteli bir sistem için bellek
haritası çizilecek. Sistemin başlangıç
adresinde 3 adet 32 MB lık modüller
olduğunu varsayın. Her bloğun başlangıç ve
başlama/bitiş adreslerini MB olarak
gösterin.
Bilgisayar Mühendisliğine Giriş

39.

Memory
Map
Cevap
7FFFFFFF
1,952 MB
boş
231 bytes = 2 GB
“kapasite”
06000000
05FFFFFF
04000000
03FFFFFF
Note:
2 GB = 2,048 MB
02000000
01FFFFFF
00000000
32 MB RAM
32 MB RAM
32 MB RAM
Bilgisayar Mühendisliğine Giriş

40. Teşekkür Ederim

Bilgisayar Mühendisliğine Giriş
English     Русский Rules