Teknik Manajemen Memori

Download Report

Transcript Teknik Manajemen Memori

Oleh :
Devie Rosa Anamisa


Pengembangan teknologi dalam perjalanan
waktu menawarkan memori dengan kapasitas
besar, kecepatan tinggi dengan harga murah.
Untuk itu, perancang komputer menemukan
beberapa teknik desain untuk
mengembangkan memori kecil dan lambat
disebut teknik manajemen memori.

Teknologi memori seperti: memori
semikonduktor, hard disk magnetik, pita
magnetik, disk optik.




Pefetch Instruksi
Interleave Memori
Buffer Tulis
Memori Cache




Tujuannya : untuk mendahului ketika ada instruksi dieksekusi
oleh prosesor dan terdapat instruksi berikutnya dari memori
utama.
Penyangga prefetch digunakan untuk menyimpan suatu
antrian instruksi karena beberapa instruksi diambil
sebelumnya dari memori utama.
Prefetch instruksi adalah suatu fitur hardware dan program
yang bukan menyangkut keberadaan antrian instruksi.
Contoh :
◦ Instruksi skrg adalah instruksi JUMP
◦ Instruksi berikutnya tidak berada pada antrian
◦ Sehingga antrian kosong dan prosesor harus menunggu
waktu pengambilan instruksi setelah setiap instruksi JUMP




Bandwidth memori : jumlah byte yang
ditransfer per detik.
CPU mampu menangani bandwidth yang lebih
tinggi dari memori.
Karena itu CPU harus istirahat/menunggu
instruksi atau data dari memori.
Interleave Memori :
◦ Suatu teknik reorganisasi memori utama menjadi
modul-modul independen yang jamak agar
bandwidth ditingkatkan menjadi beberapa kali.

Kelemahan Interleave Memori :
◦ Diperlukan pendekodean bank dan sirkuit enable.
Hal ini meningkatkan biaya.
◦ Waktu tunda nominal didahului oleh sirkuit logika
pendekode akses efektif dan bandwidth.
◦ CPU harus mempunyai sirkuit logika tambahan
untuk memulai dan menangani serangkaian siklus
baca/tulis memori.


Kebalikan dari prefetch instruksi
Buffer tulis berisikan:
◦ Alamat memori
◦ Data yang akan ditulis

Fungsi :
◦ Dapat digunakan untuk menyimpan informasi
untuk lebih dari satu operasi tulis.

Cara kerja :
◦ CPU menulis data ke memori utama dan buffer tulis
menyimpan hasil dari suatu instruksi tersebut.
◦ Jika memori sibuk mengerjakan beberapa operasi maka
buffer tulis mengajukan waktu tunggu pada CPU.


Adalah suatu buffer tengah antara CPU dan
memori Utama.
Tujuan :
◦ Untuk mengurangi waktu tunggu CPU selama
pengaksesan memori utama.

Akibat sistem tanpa memori cache :
◦ Waktu akses memori utama lebih besar dari periode
clock prosesor.
◦ Kecepatan CPU yang tinggi terbuang selama akses
memori.

Macam-macam operasi cache :
◦ Temporal Locality
 Instruksi yang sedang diambil dapat diperlukan
kembali dengan segera
◦ Spatial Locality
 Instruksi-instruksi yang berdekatan dengan instruksi
sekarang dapat diperlukan segera.

3 metode pemetaan memori cache:
◦ Pemetaan Langsung
◦ Pemetaan Asosiatif penuh
◦ Pemetaan asosiatif set

Alamat memori utama dikelompokan dalam 3
field :
◦ TAG
Untuk menentukan jumlah blok, memori cache mempunyai
c baris dan memori utama mempunyai m blok
◦ LINE
◦ WORD : bit-bit dalam WORD menunjukkan
banyaknya word dalam blok.

Rumus :
Icm = bmm modulo c
◦ Dimana
 Icm = nomor baris cache
 bmm = nomor blok memori utama
 C = jumlah total baris cache

Alamat memori terdiri dari :
◦ TAG : menunjukkan nomor blok memori
 Bila prosesor melakukan operasi pembacaan memori,
pengontrol cache harus mencocokkan field TAG dalam
alamat dengan isi TAG pada semua baris dalam cache.
 Jika cocok maka blok yang tersimpan dalam baris
tersebut dibaca oleh cache.
 Jika tidak cocok maka pengontrol cache memulai
operasi pembacaan memori utama.
◦ WORD : log2 B, dimana B adalah jumlah word dalam
blok.

Contoh :
◦ Misalkan sebuah memori utama mempunyai 2K
blok, memori cache 32 baris, dan setiap blok terdiri
atas 8 word. Tunjukkan contoh pemetaan asosiatif
penuh.
◦ Jawab:
 Field word : log2 B = log2 8 = log2 2^3 = 3 bit
Merupakan gabungan konsep pemetaan langsung
dan pemetaan asosiatif, untuk memberikan biaya
efektif dan kelayakan skema pemetaan yang
fleksibel.
 Format mempunyai 3 field :
◦ TAG
◦ SET : menyediakan nomor set
◦ WORD
 Rumus :
r=sxl
dimana : r = jumlah total baris memori cache
s = jumlah set memori cache
l = jumlah baris didalam set


Contoh :
◦ Misalkan sebuah memori utama mempunyai 2K
blok, memori cache 32 baris, dan setiap blok terdiri
atas 8 word. Tunjukkan contoh pemetaan asosiatif
set dengan jumlah blok dalam setiap set adalah 4.
◦ Jawab :
◦ S = r/ l
= 32 / 4 = 8 set
maka field set : log2 8 = log2 2^3 = 3 bit

Diperlukan jika :
◦ Ruang memori utama prosesor tidak cukup untuk
menjalankan program besar
◦ Ukuran fisik memori utama dibiarkan kecil untuk
mengurangi biaya walaupun prosesor mempunyai
ruang memori logik yang besar.

Keuntungan :
◦ Ukuran program tidak dibatasi oleh ukuran memori
fisik
◦ Pemakai tidak perlu mengestimasi alokasi memori
◦ Program dapat diload dalam suatu area memori
fisik karena program tidak menggunakan alamat
fisik.

Dua metode implementasi memori virtual:
◦ Paging
 Software sistem membagi program menjadi sejumlah
page.
◦ Segmentasi
 Pemrogram (bahasa mesin) menyusun program
kedalam segmen-segmen berbeda.