Monday, 17 December 2012

Memory: Cache


Cache, satu komponen dalam computer yang dapat menyimpan maklumat-maklumat yang sering digunakan dan dapat mengakseskan dengan pantas pada masa depan. Apabila sesuatu maklumat yang diminta terdapat di dalam cache(cache hit), maklumat ini dapat dibaca daripada cache dan menyebabkan kita mengakses maklumat tersebut dengan cepat. Jika maklumat yang diminta tiada simpan dalam cache(cache miss), oleh itu, maklumat tersebut perlu diambil dari sumber lokasinya yang mana lebih perlahan berbanding dengan (cache hit).
Anologi cache
Seorang pergi perpustakaan meminjam buku. Orang tersebut meminta buku yang bernama “worlds”.
perpustakawan akan pergi ke stor untuk mencari buku tersebut untuk meminjam kepada orang tersebut. Apabila orang tersebut memulang buku, perpustakawan tersebut meletak balik buku tersebut ke dalam stor. Apabila orang kedua pergi ke perpustakaan meminjam buku yang sama iaitu “worlds”. Perpustakawan tersebut pula masuk ke stor semula mencari buku tersebut untuk meminjam kepada orang kedua.  Proses ini akan mengambil masa yang lama.
Sebaliknya, jika perpustakawan tersebut menyediakan satu bag bersamanya. Apabila orang pertama meminjam dan memulang buku “worlds”, perpustakawan boleh sementara menyimpan buku tersebut dalam bag yang disediakan. Apabila orang kedua meminjam buku yang sama, perpustakawan boleh menperiksa bagnya sama ada buku-buku yang diminta orang orang kedua. apabila terdapat buku tersebut, perpustakawan boleh mengambil keluar buku tersebut dan meminjam kepada orang kedua. ini dapat menjimat banyak masa dan tenaga.

Cache merupakan non-volatile memory(tidak perlu bekalan kuasa untuk menyimpan memory).
 Lokasi cache ditentukan oleh alamat(address). Iaitu disimpan dalam blocks.
Tag-lokasi alamat cache disimpan.
Jika sesuatu lokasi tiada data, bermaksud bit= 0. Jika ada data ,bit =1.
Contoh cache:
8-blocks,1 word/block,direct mapped
initial state.
indeks
V
tags
data
000
N


001
N


010
N


011
N


100
N


101
N


110
N


111
N




Contoh 1.
Word address
Binary address
Hit/miss
Cache block
18
10 010
miss
010

Cache memory akan disimpan seperti berikut:
Indeks
V
Tags
data
000
N


001
N


010
Y
10
Mem[10010]
011
N


100
N


101
N


110
N


111
N




Contoh 2.
Word address
Binary address
Hit/miss
Cache block
20
10 100
miss
100

Cache memory baru akan disimpan seperti berikut:
Indeks
V
Tags
data
000
N


001
N


010
Y
10
Mem[10010]
011
N


100
Y
10
Mem[10100]
101
N


110
N


111
N




Contoh 3
Word address
Binary address
Hit/miss
Cache block
20
10 100
miss
100
20
10 100
Hit
100

Apabila terdapat word address yang mengulang, ia tidak akan menyimpan cache memory tersebut.
Indeks
V
Tags
data
000
N


001
N


010
Y
10
Mem[10010]
011
N


100
Y
10
Mem[10100]
101
N


110
N


111
N



Contoh 4
Word address
Binary address
Hit/miss
Cache block
26
11 010
miss
010

Jika terdapat word address yang berbeza, tetapi menggunakan cache block yang sama, ia akan
bertindih.
Indeks
V
Tags
data
000
N


001
N


010
Y
10
Mem[11010]
011
N


100
Y
10
Mem[10100]
101
N


110
N


111
N



No comments:

Post a Comment