290 likes | 540 Views
Pertemuan 10 ( Sistem Memori ). 5.1 MEMORI CACHE Merupakan memori berukuran kecil berkecepatan tinggi yang berfungsi untuk menyimpan sementara instruksi dan atau data ( informasi ) yang diperlukan oleh processor. Memori Cache terbagi menjadi 2.
E N D
Pertemuan 10(SistemMemori) 5.1 MEMORI CACHE Merupakanmemoriberukurankecilberkecepatantinggi yang berfungsiuntukmenyimpansementarainstruksidanatau data (informasi) yang diperlukanoleh processor. Group 4 PTIK 09
Memori Cache terbagi menjadi 2 - Internal Chacheyaitumemori yang terdapatdidalamprosesor, seringdikenaldengannama first level ( L1). Chache L1 dipasanglangsungpadacipprosesor. Chache L1 biasanyamemilikikapasitassangatkecil, berkisarantaraantara 8 KB sampai 128 KB. - External Chacheyaitumemori yang terdapatdidalam motherboard, seringdikenaaldengannama second level ( L2 ). Chache L2 sedikitlebihlambatdaripadachache L1 tetapimemilikikapasitas yang jauhlebihbesar, berkisarantara 64 KB sampai 16 MB. Group 4 PTIK 09
Penggunaan memori cache. Pada saat request read diterima dari prosesor, isi blok word memori yang berisi lokasi tertentu ditransfer ke cache satu word tiap satu waktu. Selanjutnya, pada saat program mengacu pada suatu lokasi pada blok ini, maka isi yang dimaksud dibaca langsung dari cache. Biasanya memori cache dapat menyimpan sejumlah blok pada tiap waktu tertentu, tetapi jumlah ini kecil dibandingkan dengan jumlah total blok dalam memori utama. Group 4 PTIK 09
Tugas dari cache memori : - Mengatasi kesenjangan kecepatan chip memori biasa dengan CPU - Mengurangi waktu tunggu CPU mendapatkan data dari memori, sehingga dapat mengolah instruksi lebih banyak. - Pada sistem cache, CPU mengambil sekelompok instruksi sekaligs dari memori primer dan menaruhnya ke dalam cache. Sementara CPU sedang melakukan instruksi yang ada dalam register instruksi, bagian lain dari CPU mengambil sebagian sekelompok instruksi lagi dari memori primer. Group 4 PTIK 09
MEMORI CACHE 5.1.1 FUNGSI MAPPING Untuk membahas metode yang mungkin untuk menetapkan dimana blok memori ditempatkan di dalam cache, kita menggunakan contoh kecil yang spesifik. Perhatikanlah suatu cache dengan 128 blok yang masing-masing terdiri dari dari 16 word, sehingga total 2048 (2K) word, dan asumsikan bahwa memori utama adalah addressable dengan alamat 16-bit. Memori utama memiliki 64K word, yang akan kita tampilkan sebagai blok 34K yang masing-masing trdiri dari 16 word. Group 4 PTIK 09
Direct Mapping Cara yang paling sederhana untuk menentukan lokasi cache yang digunakan untuk menyimpan blok memori adalah teknik direct-mapping. Keuntungan dari direct mapping adalah sederhana dan murah. Sedangkan kerugian dari direct mapping adalah suatu blok memiliki lokasi yang tetap (Jika program mengakses 2 block yang di map ke line yang sama secara berulang-ulang, maka cache - miss sangat tinggi). Group 4 PTIK 09
GambarCache direct-mapped Group 4 PTIK 09
Associative Mapping Metode mapping yang jauh lebih fleksibel, dimana blok memori utama dapat diletakkan ke dalam tiap posisi blok cache. Dalam hal ini, 12 tag bit diperlukan unutk mengidentifikasi blok memori pada saat blok tersebut residen dalam cache. Tag bit alamat yang diterima dari prosesor dibandingkan dengan tag bit tiap blok cache untuk mengetahui apakah blok yang diinginkan terdapat disana. Hal ini disebut teknik associative-mapping. Group 4 PTIK 09
GambarCache Associative-mapped Group 4 PTIK 09
Set-associative mapping Pada pemetaan ini, cache dibagi dalam sejumlah sets. Setiap set berisi sejumlah line. Pemetaan asosiatif set memanfaatkan kelebihan-kelebihan pendekatan pemetaan langsung dan pemetaan asosiatif. Group 4 PTIK 09
GambarCache set-associative-mapped dengan dua blok per set Group 4 PTIK 09
MEMORI CACHE 5.1.2 ALGORITMA PENGGANTIAN Dalam cache direct mapped, posisi tiap blok ditetapkan sebelumnya; karenanya tidak ada strategi penggantian. Dalam cache associative dan set associative terdapat beberapa fleksibilitas. Pada saat blok baru dibawa ke dalam cache dan semua posisi yang mungkin untuk dipergunakannya telah penuh, maka controller cache harus memutuskan blok lama mana yang di over-write. Pada saat suatu blok akan di over-write, maka sangat bijaksana untuk meng-overwrite yang paling lama tidak direferensi. Blok ini disebut blok recently used (LRU), dan teknik tersebut disebut algoritma penggantian LRU (LRU replacement algorithm). Beberapa algoritma penggantian lain juga digunakan dalam praktek. Aturan yang masuk akal secara intuitif adalah menghilangkan blok paling “lama” dari set lengkap pada saat blok baru dimasukkan. Group 4 PTIK 09
MEMORI CACHE 5.1.3 CONTOH TEKNIK MAPPING Sekarang kita memperhatikan contoh detil mengilustrasikan efek teknik mapping cache yang berbeda. Asumsikan bahwa prosesor memiliki cache instruksi dan data terpisah. Agar contoh tersebut tetap sederhana, asumsikan cache data hanya memiliki ruang untuk delapan blok data. Asumsikan juga bahwa tiap blok hanya terdiri dari 16 bit word data dan memori word addressable dengan 16 bit alamat. (parameter tersebut tidak realistic untuk computer actual, tetapi memungkinkan kita untuk mengilustrasikan teknik mapping dengan jelas). Akhirnya, asumsikan algoritma penggantian LRU digunakan untuk penggantian blok dalam cache. Group 4 PTIK 09
Cache Direct - Mapped Dalam cache data direct-mapped, isi cache berubah.Kolom dalam tabel tersebut mengindikasikan-isi cache setelah berbagai lewatan melalui dua loop program diselesaikan. Misalnya, setelah lewatan kedua melalui loop pertama (j=1), maka cache menyimpan elemen A(0,O) dan A(0,1), Elemen tersebut berada dalam posisi blok 0 dan 4, sebagaimana ditetapkan oleh tiga least-significant bit_alamat. Group 4 PTIK 09
Cache Associative-Mapped Selama delapan lewatan pertama melalui loop pertama, elemen dibawa ke posisi blok yang berurutan, mengasumsikan bahwa cache tersebut pada awalnya kosong. Selama lewatan kesembilan (j = 8), algoritma LRU memilih A(0,0) di-overwrite oleh A(0,8). Lewatan selanjutnya dan terakhir melalui loop j mengetahui A(0,1) diganti dengan A(0,9). Sekarang, untuk delapan lewatan pertama melalui loop kedua (i=9, 8, ..., 2) semua elemen yang diperlukan didapat dalam cache. Pada saat i=1, elemen yang diperlukan adalah A(0,1), sehingga menggantikan elemen yang paling akhir digunakan, A(0,9). Selama lewatan kedua A(0,0) menggantikan A(0,8). Group 4 PTIK 09
MEMORI CACHE 5.1.4 CONTOH CACHE DALAM PROSESOR KOMERSIAL Cache 68040 68040 Motorola memiliki dua cache yang disertakan pada chip prosesor - satu digunakan untuk instruksi dan yang lain untuk data. Cache ARM710AT ARM710T adalah salah satu dari prosesor dalam famili ini. Prosesor ini memiliki cache tunggal untuk instruksi dan data. Cache Pentium III Pentium III adalah prosesor performa tinggi. Karena performa tinggi tergantung pada akses cepat ke instruksi dan data, maka Pentium III menggunakan dua tingkat cache. Group 4 PTIK 09
Cache Pentium 4 Prosesor Pentium 4 dapat mempunyai hingga tiga tingkat cache. Cache L 1 terdiri dari cache data dan instruksi terpisah. Group 4 PTIK 09
5.2 PERTIMBANGAN PERFORMA Dua faktor kunci dalam kesuksesan komersial komputer adalah performa dan biaya; tujuannya adalah performa terbaik yang dimungkinkan pada harga terendah. Tantangan dalam menetapkan alternatif desain adalah untuk meningkatkan performa tanpa meningkatkan biaya. Pengukuran umum kesuksesan adalah rasio harga/performa. Dalam bagian ini, kita membahas fitur khusus desain memori yang menghasilkan performa tinggi. Performa tergantung pada seberapa cepat instruksi mesin dapat dibawa ke dalam prosesor untuk eksekusi dan seberapa cepat instruksi tersebut dapat dieksekusi. Group 4 PTIK 09
PERTIMBANGAN PERFORMA 5.2.1 Interleaving Jika memori utama komputer disusun sebagai kumpulan modul yang terpisah secara fisik, tiap modul dengan address buffer register (ABR) dan data buffer register (DBR)-nya, maka operasi akses memori dapat dilanjutkan dalam lebih dari satu modul pada saat yang sama. Sehingga, kecepatan agregat transmisi word ke dan dari sistem memori utama dapat ditingkatkan. 5.2.2 Hit Rate DAN Miss Penalty Indikator yang sangat bagus untuk keefektifan implementasi hierarki memori tertentu adalah tingkat keberhasilan dalam mengakses informasi pada berbagai level hierarki. Ingatlah bahwa pengaksesan data yang berhasil dalam suatu cache disebut hit. Jumlah hit yang dinyatakan sebagai fraksi semua akses yang dilakukan disebut hit rate, dan miss rate adalah jumlah terlewat yang dinyatakan sebagai fraksi akses yang dilakukan. Group 4 PTIK 09
5.2.3 Cache dalam Chip Prosesor Pada saat informasi ditransfer antar chip yang berbeda, jeda yang cukup dimasukkan dalam driver dan gerbang receiver pada chip. Sehingga dari sudut pandang kecepatan, tempat optimal untuk cache adalah pada chip prosesor. Sayangnya, ruang pada chip prosesor diperlukan oleh banyak fungsi lain; hal ini membatasi ukuran cache yang dapat diakomodasinya. Group 4 PTIK 09
5.2.4. Pengembangan Lainnya Write Buffer Untuk meningkatkan performa, buffer tulis (write buffer) dapat disertakan untuk penyimpanan sementara request tulis. Prefetching Prosesor harus berhenti hingga data baru tiba, yang merupakan efek miss penalty. Untuk menghindari penghentian prosesor, dimungkinkan untuk mem-prefetch data ke dalam cache sebelum diperlukan. Cache Lookup-Free Cache yang dapat mendukung banyak outstanding miss disebut lockup-free. Karena dapat melayani hanya satu miss pada satu waktu, maka harus menyertakan sirkuit yang mencatat semua outstanding miss. Group 4 PTIK 09
5.3 MEMORI VIRTUAL Teknik yang secara otomatis memindahkan program dan blok data ke dalam memori utama fisik pada saat diperlukan untuk eksekusi disebut teknik memori-virtual. Programdan prosesor, mereferensi instruksi dan ruang data yang bebas dari ruang memori utama fisik yang tersedia. Group 4 PTIK 09
MEMORI VIRTUAL 5.3.1 Translasi Alamat Metode sederhana untuk mentranslasi alamat virtual menjadi alamat fisik adalah dengan mengasumsikan bahwa semua program dan data tersusun dari unit fixed-length yang disebut page, yang masing-masing terdiri dari blok word yang mempergunakan lokasi yang berdekatan di dalam memori utama. Group 4 PTIK 09
5.4 PERSYARATAN MANAJEMEN MEMORI Routine manajemen adalah bagian darI sistem operasi komputer. Sangat baik untuk menggabungkan routine sistem operasi ke dalam ruang alamat virtual, disebut ruang sistem, yang terpisah dari ruang virtual dimana terdapat program aplikasi user. Ruang berikutnya disebut ruang user. Sebenarnya, terdapat sejumlah ruang user, satu untuk tiap user. Hal ini diatur dengan menyediakan tabel page terpisah untuk tiap user program. Group 4 PTIK 09
5.5 PENYIMPANAN SEKUNDER Memori semikonduktor yang dibahas dalam bagian sebelumnya tidak dapat digunakan untuk menyediakan semua kemampuan penyimpanan yang diperlukan dalam komputer. Batasan utamanya adalah biaya per bit informasi yang tersimpan. Persyaratan penyimpanan besar kebanyakan sistem komputer secara ekonomis direalisasikan dalam bentuk disk magnetik, disk optik, dan tape magnetik, yang biasanya disebut sebagai perangkat penyimpanan sekunder. Group 4 PTIK 09
PENYIMPANAN SEKUNDER 5.5.1 Harddisk Magnetik Sebagaimana yang diimplikasikan nama tersebut, media penyimpanan dalam sistem disk-magnetik terdiri dari satu atau lebih disk yang dipasangkan pada kumparan bersama. Film magnetik tipis disimpan pada tiap disk, biasanya pada kedua sisi. Disk tersebut diletakkan dalam drive berutar sehingga permukaan termagnetisasi bergerak sangat dekat dengan head baca/tulis Group 4 PTIK 09
Organisasi dan Pengaksesan Data pada Disk Tiap permukaan dibagi menjadi track konsentris, dan tiap track dibagi dalam sector. Set track yang bersesuaian pada semua permukaan stack disk membentuk cylinder logika. Data pada semua track cylinder dapat diakses tanpa menggerakkan head baca/tulis. Data diakses dengan menetapkan nomor permukaan, nomor track, dan nomor sector. Operasi Read dan Write mulai pada batasan sector. Group 4 PTIK 09
Waktu Akses Terdapat dua komponen yang terlibat dalam jeda waktu antara menerima alamat dan awal transfer data yang sebenarnya. Yang pertama, disebut waktu pencarian (seek time), adalah waktu yang diperlukan untuk memindahkan head baca/tulis yang sesuai. Komponen kedua adalah jeda rotasi (rotational delay), yang juga disebut waktu latensi (latency time , ni adalah jumlah waktu yang diperlukan dari saat head ditempatkan pada track yang tepat hingga posisi awal sector yang dituju lewat di bawah head baca tulis. Group 4 PTIK 09
5.5.2 Disk Optik Perangkat penyimpanan besar dapat pula diterapkan menggunakan alat optik. Compact disk (CD) lazim, yang digunakan dalam sistem audio, merupakan aplikasi praktis pertama dari teknologi ini. 5.5.3 Sistem Tape Magnetik Tape magnetik cocok untuk penyimpanan off-line sejumlah besar data. Tape magnetik biasanya digunakan untuk tujuan backup harddisk dan media penyimpanan arsip. Perekaman magnetic-tape menggunakan prinsip yang sama dengan yang digunakan dalam perekaman magnetic-disk. Group 4 PTIK 09