You are on page 1of 12

BAB V MEMORI

5.1 Pendahuluan
Main Memory (memory utama) atau lebih dikenal sebagai memori adalah sebuah array
yang besar dari word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan
jutaan. Setiap word atau byte mempunyai alamat tersendiri. Main memory berfungsi
sebagai tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat
I/O. Main-memory termasuk tempat penyimpanan data yang sementara (volatile),
artinya data dapat hilang begitu sistem dimatikan.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan
manajemen memori seperti: menjaga track dari memori yang sedang digunakan dan
siapa yang menggunakannya; memilih program yang akan di-load ke memori; dan
mengalokasikan dan mendealokasikan memoryspace sesuai kebutuhan.
Main memory dapat dibayangkan sebagai kumpulan kotak-kotak yang masing dapat
menyimpan suatu penggal informasi baik berupa data maupun instruksi. Umumnya 1
byte memory terdiri dari 8 bit dan tiap bit diwakili oleh 1 atau 0. Kombinasi bit dalam1
byte tersebut membentuk suatu kode yang mewakili isi dari lokasi memory.
Kode yang digunakan untuk mewakilinya tergantung dari komputer yang digunakan,
dapat membentuk sistem kode BCD (Binary-Coded Decimal), sistem kode SBCDIC
(Standard Binary Coded Decimal Interchange Code), sistem kode EBCDIC (Extended
Binary Coded Decimal Interchange Code) atau sistem kode ASCII (American Standard
Code for Information Interchange).
Misalnya suatu komputer mempunyai kapasitas memory 256 KB atau 262.144 byte,
yang berarti mempunyai 262.144 lokasi memori. Alamat dari memori ini adalah
bernomor 000000 sampai dengan 262.143.
5.2 Pengelompokkan Memory
Main memory terdiri dari:
A. RAM (Random Access Memory)
Merupakan memori yang dapat diisi dan diambil isinya oleh pemrogram. Semua
data dan program yang dimasukkan lewat alat input akan disimpan terlebih dahulu
di RAM. Struktur dari RAM, dibagi menjadi:
1. Input Storage, digunakan untuk menampung input yang dimasukkan lewat alat
input;

2. Program Storage, digunakan untuk menyimpan semua instruksi program yang


akan diproses;
3. Working Storage, digunakan untuk menyimpan data yang akan diolah dan hasil
dari pengolahan;
4. Output Storage, digunakan untuk menampung hasil akhir dari pengolahan data
yang akan ditampilkan ke alat output.
B. ROM (Read Only Memory)
Memori ini hanya dapat dibaca saja, programer tidak bisa mengisi sesuatu ke dalam
ROM. Isi ROM sudah diisi oleh pabrik pembuatnya berupa sistem operasi yang
terdiri dari program-program pokok yang diperlukan oleh sistem komputer, seperti
program untuk mengatur penampilan karakter, pengisian tombol kunci dan
bootstrap program.
Bootstrap program diperlukan pada waktu pertama kali sistem komputer diaktifkan,
yang proses ini disebut dengan istilah booting, yang terdiri dari:
1. Cold booting, yaitu proses mengaktifkan sistem komputer pertama kali untuk
mengambil bootsrap program dari keadaan listrik komputer mati.
Warm booting, yaitu proses pengulangan pengambilan bootstrap program dalam
keadaan komputer masih hidup Instruksi yang tersimpan di ROM disebut dengan
microinstruction atau microcode atau disebut juga firmware. Isi dari ROM tidak boleh
hilang atau rusak, karena dapat menyebabkan sistem komputer tidak berfungsi. ROM
bersifat non volatile, artinya isinya tidak hilang bila listrik komputer dimatikan. Jenisjenis ROM:
1. PROM (Programmable Read Only Memory), yaitu ROM yang dapat diprogram
sekali saja dan tidak dapat diubah kembali
2. EPROM (Erasable Programmable Read Only Memory), yaitu ROM yang dapat
dihapus dengan sinar ultra violet serta dapat diprogram kembali berulang-ulang
3. EEPROM (Electrically Erasable Programmable Read Only Memory), yaitu ROM
yang dapat dihapus secara elektronik dan dapat diprogram kembali

5.3 Jenis Memory


Berdasarkan komponen yang digunakan terbagi atas :
A. Vacuum Tubes

Komputer generasi pertama ENIAC tahun 1946 menggunakan komponen tabung


hampa udara untuk main memory. Memori ini relatif berukuran besar dan tiap-tiap
tabung hampa udara mewakili 1 bit.

Gambar 1.1 Gambar Vacuum Tubes


B. Magnetic Core Storage
Digunakan sekitar tahun 1960-1970. Terdiri dari ribuan cincin magnetik kecil berukuran
18 mm dengan lubang berdiameter 10 mm. Tiap-tiap core dihubung-kan dengan kabel
kawat membentuk suatu bidang core (core plane) dan ditumpuk membentuk suatu core
stack.
Masing-masing core dapat menyimpan 1 bit bila dimagnetasi dengan suatu arus listrik dari
dua arah jurusan yang masing-masing bermuatan arus.

Gambar 1.2 Gambar Mesin Vacuum Tube dengan Magnetic Core Storage
C. Planar Thin-Film Storage
Terbuat dari lempengan tipis keramik atau metal tembus pandang yang berisi kumpulan
besi nikel berbentuk empat persegi panjang kecil dihubungkan dengan kabel-kabel.

Gambar 1.3 Gambar Single LayerTthin Film dengan Ta2N Resistors

D. Semiconductor Storage
Mulai banyak digunakan sejak tahun 1970-an hingga sekarang. Terbuat dari VLSI (Very
Large Scale Integration) yaitu meletakkan sejumlah besar circuit ke dalam suatu chip.
Teknologi yang digunakan adalah MOS (Metal Oxide Semiconductor) dan bersifat
volatile.

Gambar 1.4 Gambar Semiconductor Storage berbentuk Single In-line Memory Module
(SIMM)
E. Josephson Junction
Diciptakan oleh Brian Josephson dari Inggris. Merupakan memori yang dapat
melakukan switch dari bit 1 ke bit 0 atau sebaliknya dengan kecepatan yang tinggi,
yaitu kurang dari sepertriliun detik. Menggunakan suatu tempat tertutup yang berisi
helium cair dengan suhu sekitar -200 derajat celcius.

Gambar 1.5 Gambar Josephson Junction Chip


F. Charged-Coupled Device (CCD)
Merupakan memori yang terdiri dari ribuan metal bujur sangkar berukuran kecil
yang masing-masing dapat menyimpan informasi digit binari dalam bentuk beban
elektronik (electric charge)

Gambar 1.6 Gambar Delta-Doped Charged Coupled Devices (CCD)

5.4 Hubungan Antara CPU dengan Main Memory dan Alat-Alat I/O
Berikut ini adalah hubungan antara CPU dengan main memory dan alat-alat I/O:
A. BUS
Disebut juga pathway, merupakan suatu sirkuit yang merupakan jalur transportasi
informasi antara dua atau lebih alat-alat dalam sistem komputer. Bus yang
menghubungkan antara CPU dengan main memory disebut dengan internal bus,
sedangkan yang menghubungkan CPU dengan alat-alat input/output disebut external
bus.
Jenis-jenis bus :
1. Data bus, yaitu bus yang digunakan untuk jalur transportasi data dan instruksi;
2. Address bus, yaitu bus yang digunakan untuk jalur transportasi untuk alamat di main
memory untuk data atau instruksi yang akan diambil atau direkam;
3. Control bus, yaitu bus yang digunakan untuk mengirimkan signal sebagai
pemberitahuan akan dikirimkan suatu informasi atau telah diterimanya informasi yang
dikirimkan dari satu alat ke alat yang lain.

Gambar 1.7 Gambar Keterhubungan CPU, MM, dan I/O


Di dalam internal bus, hubungan antara CPU dengan main memory melalui data bus yang
dihubungkan dengan memory data register (MDR), address bus yang dihubungkan dengan
memory address register (MAR) dan control bus yang dihubungkan dengan control unit.

Gambar 1.8 Gambar Keterhubungan CPU, MM, dan I/O melalui Register

B. I/O PORT
Alat-alat input/output tidak dilekatkan langsung dengan bus tetapi melalui suatu I/O port
atau I/O interface. Alat-alat input/output dapat berkomunikasi dengan CPU dengan cara
mengirimkan informasi yang akan dikomunikasikan lewat bus. Informasi yang dikirim
dari alat input/output (peripheral device) ke main memory atau ke register di CPU
diletakan di I/O port dan dikirimkan lewat data bus. Demikian juga bila informasi dari
main memory akan dikirimkan ke peripheral device juga melalui data bus dan diterima di
I/O port. Cara ini disebut juga dengan program-controlled I/O. Cara ini banyak diterapkan
pada alat I/O yang hanya dapat menangani satu karakter atau 1 byte atau 1 word saja tiap
saat misalnya keyboard.
C. DMA CONTROLLER
Untuk peripheral device yang mempunyai kecepatan tinggi, tidaklah ekonomis untuk
pengiriman informasi byte per byte atau word per word, dan akan lebih ekonomis bila
pengiriman informasi dilakukan sekaligus per blok informasi. Bila informasi dikirim
sekaligus per blok dan CPU harus selalu mengawasi pengiriman informasi, maka akan
terjadi suatu waktu yang terbuang (idle time).
DMA (Direct Memory Access) merupakan suatu konsep yang akan membuat komunikasi
informasi antara peripheral device dengan main memory akan lebih efisien. DMA
controller mempunyai suatu processor sendiri di dalamnya berupa IC khusus yang akan
menangani operasi baca dan tulis antara main memory dan device peripheral.
Dengan cara DMA ini, CPU cukup sekali saja memberi signal ke DMA controller untuk
melakukan pengiriman sejumlah blok data antara main memory dengan device peripheral,
yang selanjutnya urusan pengiriman data tersebut akan dilakukan oleh processor di DMA
tanpa turut campur dari CPU, sehingga dapat melakukan pekerjaan yang lain.
Cara DMA ini biasanya digunakan untuk device peripheral yang mempunyai kecepatan
tinggi yang membutuhkan pengiriman blok data yang besar, misalnya hard disk drive.
D. I/O CHANNEL

I/O Channel adalah suatu DMA controller yang digunakan bersama-sama untuk
sejumlah alat-alat I/O. Masing-masing alat I/O dihubungkan dengan suatu channel
lewat suatu controller. Sebuah controller dapat digunakan untuk sejumlah alat-alat
I/O sejenis, misalnya akan digunakan dua atau lebih disk drive pada sebuah
komputer.

5.5 Karakteristik Sistem Memori


Adapun karakteristik sistem memori adalah sebagaimana tabel berikut:
Karakteristik
Lokasi
Kapasitas
Satuan Transfer
Metode Akses

Kinerja
Tipe Fisik
Karakteristik Fisik

Keterangan
1. CPU
2. Internal (main)
3. External (secondary)
1. Ukuran word
2. Jumlah word
1. Block
2. Word
1. Sequential Access
2. Direct Access
3. Random Access
4. Associative Access
1. Access Time
2. Cycle Time
3. Transfer Rate
1. Semi konduktor
2. Magnetik
1. Volatile/Non-Volatile
2. Eraseable/Non-Eraseable

Tabel 1.1. Tabel Karakteristik Sistem Memori

5.6 Cache Memory


Cache memory merupakan lokasi data sementara antara prosesor dengan main memory.
Penempatan cache memory ditujukan untuk mengurangi gap antara kecepatan prosesor
dengan kecepatan main memory. Gambar 2.1. di bawah ini menunjukkan posisi cache
memory yang diletakkan antara prosesor (CPU) dengan main memory. Sedangkan
gambar 2.2. memperlihatkan sistem interkoneksi untuk cache memory.

CPU

Word
Cache
Transfer Memory

Block
Transfer

Main
Memory

Gambar 2.1. Gambar Posisi Cache Memory pada Sistem Memory.

Gambar 2.2. Gambar Sistem Interkoneksi yang terkait dengan Cache Memory.

Cache berasal dari kata cash. Dari istilah tersebut cache adalah tempat menyembunyikan
atau tempat menyimpan sementara. Sesuai definisi tersebut cache memory adalah tempat
menympan data sementara. Cara ini dimaksudkan untuk meningkatkan transfer data
dengan menyimpan data yang pernah diakses pada cache memory tersebut, sehingga
apabila ada data yang ingin diakses adalah data yang sama maka maka akses akan dapat
dilakukan lebih cepat. Cache memory ini adalah memori tipe SDRAM yang memiliki
kapasitas terbatas namun memiliki kecepatan yang sangat tinggi dan harga yang lebih
mahal dari memori utama. Cache memory ini terletak antara register dan RAM (memori
utama) sehingga pemrosesan data tidak langsung mengacu pada memori utama.
Karakteristik cache memory adalah sebagai berikut:
Kapasitas relatif lebih kecil dari main memory, tetapi memiliki kecepatan yang relativ
lebih tinggi dibanding main memory;
Cache memory merupakan suatu memori buffer (salinan data) bagi memori utama;

Meskipun cache menggunakan informasi yang tersimpan dalam memori utama, tetapi ia
tidak berhadapan secara langsung dengan memori utama;
Word yang disimpan didalam cache memory adalah word yang diambil dari main
memory, yang dikerjakan sesuai perintah CPU.

5.7 Level Cache Memory


Hingga saat ini, cache memory terbagi atas tiga level yaitu L1, L2 dan L3. Cache memory
memori level 1 (L1) adalah cache memory yang terletak dalam prosesor (internal cache). Cache
memory ini memiliki kecepatan akses paling tinggi dan harganya paling mahal. Ukuran memori
berkembang mulai dari 8KB, 64KB dan 128KB. Cache memory level 2 (L2) memiliki kapasitas
yang lebih besar yaitu berkisar antara 256KB sampai dengan 2MB. Namun, cache memory L2
ini memiliki kecepatan yang lebih rendah dari cache memory L1. Cache memory L2 terletak
terpisah dengan prosesor atau disebut dengan external cache.
Sedangkan cache memory level 3 hanya dimiliki oleh prosesor yang memiliki unit lebih dari satu
misalnya dualcore dan quadcore. Fungsinya adalah untuk mengontrol data yang masuk dari
tembolok L2 dari masing-masing inti prosesor.
Level 2 atau L2 cache merupakan bagian dari strategi penyimpanan multi level untuk
meningkatkan performa komputer. Terdapat tiga level cache yang digunakan pada komputer,
yaitu L1, L2 dan L3 cache. Tiap-tiap cache tersebut menjembatani jarak (gap) diantara processor
yang sangat cepat, dengan memori RAM (Random Access Memory) yang jauh lebih lambat.
Sementara desainnya terus mengalami perubahan, L1 cache biasanya telah terintegrasi (built in)
ke dalam processor, sementara L2 cache biasanya terintegrasi pada motherboard (bersamaan
dengan L2 cache). Namun, beberapa processor kini menggabungkan L2 cache serta L1 cache,
dan bahkan beberapa diantaranya juga menggungkan L3 cache. Kecepatan yang paling tinggi
terdapat pada L1 cache, kemudian menurun pada L2 dan L3 cache. Namun kebalikannya,
semakin besar angka cache, maka semakin besar pula kapasitas penyimpanan datanya.

Gambar 2.3. Gambar Contoh Level Cache pada Processor.


Tugas dari cache processor adalah untuk mengantisipasi data request, sehingga ketika pengguna
mengakses sebuah program yang sering digunakan, sebagai contohnya, instruksi-instruksi yang
dibutuhkan untuk menjalankan program tersebut telah siap digunakan, disimpan pada cache.
Ketika hal ini terjadi, CPU dapat memproses request tanpa adanya jeda (delay), sehingga dapat
meningkatkan performa komputer secara drastis.
CPU pertama-tama akan memeriksa L1 cache, diikuti dengan L2 dan L3 cache. Jika
processor telah menemukan bit data yang dibutuhkan, maka disebut dengan cache hit.
Namun jika cache tidak menyediakan bit data yang dibutuhkan, processor mendapatkan
sebuah cache miss, dan data perlu ditarik dari RAM yang lebih lambat atau hard disk
yang juga lebih lambat.

5.8 Kapasitas Cache


Menentukan ukuran cache memory sangatlah penting untuk mendongkrak kinerja
komputer. Dari segi harga cache memory sangatlah mahal tidak seperti memori utama.
Semakin besar kapasitas cache tidak berarti semakin cepat prosesnya, dengan ukuran besar
akan terlalu banyak gate pengalamatannya sehingga akan memperlambat proses.
Kita bisa melihat beberapa merek prosesor di pasaran beberapa waktu lalu. AMD
mengeluarkan prosesor K5 dan K6 dengan cache memory yang besar (1MB) tetapi
kinerjanya tidak bagus. Kemudian Intel pernah mengeluarkan prosesor tanpa cache

memory untuk alasan harga yang murah, yaitu seri Intel Celeron pada tahun 1998-an hasil
kinerjanya sangat buruk terutama untuk operasi data besar, floating point, 3D. Intel Celeron
versi berikutnya sudah ditambah cache memory sekitar 128KB.
Lalu berapa idealnya kapasitas cache memory? Sejumlah penelitian telah menganjurkan
bahwa ukuran cache antara 1KB dan 512KB akan lebih optimum.
5.9 Ukuran Blok
Elemen rancangan yang harus diperhatikan lagi adalah ukuran blok. Telah dijelaskan
adanya sifat lokalitas referensi maka nilai ukuran blok sangatlah penting. Apabila blok
berukuran besar ditransfer ke cache akan menyebabkan hit ratio mengalami penurunan
karena banyaknya data yang dikirim disekitar referensi. Tetapi apabila terlalu kecil,
dimungkinkan memori yang akan dibutuhkan CPU tidak tercakup. Apabila blok berukuran
besar ditransfer ke cache, maka akan terjadi :
1. Blok-blok yang berukuran lebih besar mengurangi jumlah blok yang menempati cache.
Karena isi cache sebelumnya akan ditindih.
2. Dengan meningkatnya ukuran blok maka jarak setiap word tambahan menjadi lebih
jauh dari word yang diminta, sehingga menjadi lebih kecil kemungkinan-nya digunakan
cepat.
Hubungan antara ukuran blok dan hit ratio sangat rumit untuk dirumuskan, tergantung
pada karakteristik lokalitas programnya dan tidak terdapat nilai optimum yang pasti telah
ditemukan. Ukuran antara 4 hingga 8 satuan yang dapat dialamati (word atau byte) cukup
beralasan untuk mendekati nilai optimum.

Bibliography
Harmoko, I. W., Chandra, R., & Prihastomo, Y. (n.d.). Tugas Arsitektur dan Organisasi
Komputer - Cache Memory.pdf. Retrieved November 9, 2016, from
files.yogaprihastomo.com/.../Tugas%20Arsitektur%20dan%20Organisasi%20Komputer

You might also like