Dokumen tersebut membahas tentang hierarki memori dan cache memory. Desain memori mempertimbangkan kecepatan, kapasitas, dan biaya. Terdapat trade-off antara kecepatan akses, kapasitas, dan biaya per bit. Solusinya adalah kombinasi memori besar dan kecil dengan kecepatan akses berbeda.
3. Desain memory dipangaruhi oleh
beberapa hal, yaitu : kecepatan,
kapasitas, dan cost .
Terdapat beberapa kaitan yang
menjadi trade off dalam upaya
desain memory :
Semakin cepat waktu akses,
semakin mahal cost per-bit.
Semakin besar kapasitas memory,
cost tiap bit semakin murah.
Semakin besar kapasistas,
semakin lambat waktu aksesnya.
4.
5. Designer mencoba untuk merancang
memory yang berkapasitas besar,
namun tetap memperhatikan faktor
performa.
Solusinya adalah kombinasi antara
memory yang berkapasitas besar,
dengan memory yang kapasitasnya
lebih kecil dengan waktu akses
yang cepat.
6. Berdasarkan kondisi yang dijelaskan
sebelumnya, designer mencoba
untuk merancang memory yang
berkapasitas besar, namun tetap
memperhatikan faktor performa.
Solusinya adalah kombinasi antara
memory yang berkapasitas besar,
dengan memory yang kapasitasnya
lebih kecil dengan waktu akses
yang cepat.
7. Misalkan processor memiliki level
memory 2 tingkat, tingkat 1 berisi 1000
word dengan waktu akses 0.1 µs, sedang
tingkat 2 dengan kapasitas yang lebih
besar 100.000 word dengan waktu akses
1 µs.
Jika word yang akan diakses berada pada
tingkat 1, maka processor akan langsung
akses.
Jika word yang akan diakses ada pada
tingkat 2, maka word yang ada pada
tingkat 2 akan dipindah ke tingkat 1 dan
kemudian akan diakses oleh processor.
8. Misalkan 95% waktu akses ada
pada tingkat 1, dan 5% ada pada
tingkat 2.
Sehingga :
(0.95)(0.1 µs) + (0.05)(0.1 µs +
1 µs) = 0.095 + 0.055 = 0.15
µs
Nilai yang didapatkan mendekati
waktu akses memory tingkat 1.
Inilah strategi yang digunakan
dalam menyediakan mekanisme
processing yang membutuhkan
kecepatan akses dan kapasitas
yang besar.
9. Idealnya, kecepatan processor
harus diimbangi oleh
kecepatan memory yang dalam
hal ini adalah main memory.
Pada penjelasan sebelumnya,
terdapat trade-off antara
kapasitas yang semakin besar
dengan kecepatan akses.
10.
11. Cache memory berisi copy dari sebagian isi dari main
memory.
Processor akan mencari word pada cache memory terlebih
dahulu jika membutuhkan suatu word.
Jika word yang dicari ada pada cache, maka processor
langsung akan membacanya.
Jika word yang dicari tidak ada, maka beberapa blok dari
main memory akan di load ke cache, dan dedeliver ke
processor.
12.
13.
14. Beberapa point yang diperhatikan dalam design suatu
cache memory adalah sebagai berikut :
Cache size
Block size
Mapping function
Replacement algorithm
Write policy
15. Terdapat beberapa mekanisme komunikasi yang
berhubungan dengan I/O, yaitu :
Programmed I/O
Interrupt-driven I/O
Direct Memory Access (DMA)
16. Pada mekanisme ini, processor bertanggung jawab dalam
transfer data dari perangkat eksternal ke memory dan
sebaliknya.
Pada saat processor melakukan eksekusi dan mendapatai
instruksi yang berkaitan dengan I/O, maka akan
menerbitkan perintah ke modul I/O yang bersangktan.
Modul I/O yang bersangkutan akan melakukan aksi yang
diminta processor.
Sebagai mekanisme untuk menentukan status transfer I/O,
modul I/O tidak dapat melakukan interrupt pada
processor, sehingga, processor secara periodik melakukan
pengecekan akan status tersebut.
17. Dengan demikian, instruksi untuk mekanisme I/O pada
programmed I/O mencakup beberapa hal dibawah ini :
Control
Digunakan untuk aktivasi perangkat eksternal dan
menginformasikan tentang aksi apa yang harus dilaksanakan.
Status
Digunakan untuk mengetahui status akan transfer data dari
perangkat I/O ke main memory.
Transfer
Digunakan untuk memindahkan data antara register
processor dengan perangkat eksternal.
18. Pada gambar disamping ditunjukan
mekanisme eksekusi instruksi yang
melibatkan I/O.
Processor secara periodik melakukan
pengecekan untuk mengetahui status
daripada transfer data dari perangkat
ekstenal ke main memory dan sebaliknya.
Sehingga processor disibukan dengan proses
untuk mengetahui status transfer.
19. Masalah pada programmed I/O adalah bahwa processor harus
menunggu hingga modul I/O siap untuk melakukan transfer yang
mengakibatkan processor musti melakukan pengecekan yang
berulang-ulang atas status modul I/O.
Alternatifnya, processor menerbitkan perintah ke modul I/O dan
kemudian processor melanjutkan eksekusinya atas instruksi yang
lain.
Modul I/O akan melakukan interrupt ke processor untuk
meminta layanan jika modul I/O telah siap saling bertukar data
dengan processor.
Processor kemudian melakukan eksekusi atas instruksi
perpindahan data.
Setelah selesai, processor akan melanjutkan eksekusi instruksi
sebelumnya, sebelum peocessor di interrupt oleh modul I/O.
20. Pada gambar disamping dapat diketahui,
processor melakukan intervensi atas proses
transfer setelah mendapatkan interrupt dari
modul I/O.
21. Interrupt-Driven I/O dirasa lebih efisien daripada programmed I/
O, namun Interrupt-Driven masih memerlukan intervensi aktif
dari processor.
Kesulitan yang dihadapi oleh programmed I/O dan Interrupt-
Driven I/O adalah :
Kecepatan transfer I/O dibatasi oleh kecepatan processor dalam
memeriksa dan melayani perangkat eksternal.
Processor terikat oleh kegiatan mengatur transfer I/O.
22. Jika terdapat data yang bervolume besar, diperlukan teknik yang
lebih efisien.
Direct Memory Access (DMA) diperkenalkan sebagai solusi untuk
menyediakan modul yang terpisah yal ng terdapat pada sistem
BUS atau menggabungkanya dengan modul I/O.
Pada saat akan melakukan pembacaan atau penulisan suatu blok
data, processor mengeluarkan perintah ke modul DMA dengan
cara mengirimkan informasi sebagai berikut :
Apakah read atau write yang diminta ?
Apakah perangkat I/O terlibat ?
Lokasi awal dalam memory yang akan dibaca atau ditulis ?
Jumlah word yang akan dibaca atau ditulis ?
23. Setelah memberikan perintah
ke DMA, processor
melanjutkan eksekusinya atas
instruksi yang lain.
DMA melakukan transfer data
dari perangkat eksternal ke
main memory tanpa intervensi
processor.
Setelah process transfer
selesai, DMA akan melakukan
interrupt ke processor.
Sehingga processor hanya
dilibatkan pada permulaan dan
akhir dari proses transfer.