Anda di halaman 1dari 11

BABII

PERLUASAN MEMORI
Mikrokotroler AT89X51/52 mempunyai keterbatasan kapasitas memori internal (on chip) baik
memori program maupun memori data. Kapasitas memori program mikrokontroler AT89X51
adalah 4 kByte sedangkan AT89X52 adalah 8 kByte. Sedangkan kapasitas memori data on
chip untuk mikrokontroler AT89X51 adalah 128 byte dan AT89X52 adalah 256 byte. Untuk
melakukan penambahan kapasitas memori dapat dilakukan dengan menambahkan chip
memori eksternal (off chip).

II.1 Memori
Secara umum memori dapat dibedakan menjadi dua macam, yaitu
1.Memori hanya baca (ROM), dan
2.Memori baca-tulis (RAM)

II.1.1Karakteristik Memori
Beberapa karakteristik memori yang perlu diperhatikan ketika melakukan perancangan
aplikasi mikrokontroler yang menggunakan chip memori eksternal. Karakteristik-
karakateristik tersebut antara lain:

II.1.1.1Kecepatan (speed)
Kecepatan dinyatakan dalam bentuk waktu akses (access time) dan waktu siklus (cycle
time). Waktu akses adalah waktu yang diukur dari saat alamat yang diberikan ke memori
stabil sampai memori memberikan data yang stabil. Waktu siklus adalah waktu yang
menyatakan kecapatan mengakses memori secara kontinyu.

II.1.1.2Kepadatan/Kapasitas
Kepadatan atau kapasitas adalah jumlah bit yang dapat disimpan dalam chip memori.
Kepadatan atau kapasitas chip memori menetukan berapa jumlah chip yang dibutuhkan
untuk mengimplementasikan memori pada sistem mikroprosesor/mikrokontroler. Sedikitnya
jumalgh chip akan mengurangi kompleksitas rangkaian dan luasan PCB (Printed Circuit
Board) yang akhirnya akan mengurangi biaya sistem.

II.1.1.3Disipasi Daya (power disipation)


Disipasi daya adalah daya yang diserap (digunakan) oleh chip. Pada chip memori disipasi
daya dibedakan menjadi daya operasi (operating power) dan daya stanbai (standby power).
Dalam pemilihan chip memori, daya stanbai perlu diperhatikan karena waktu terbanyak
berada pada kondisi stanbai. Chip dengan disipasi daya yang rendah akan mengurangi
konsumsi daya listrik dan panas.

II.1.1.4Organisasi Memori
Susunan bit-bit dalam memori menentukan organisasi memori. Organisasi memori biasanya
dinyatakan dalam bentuk perkalian antara jumlah alamat dengan lebar data. Sebagai contoh
organisasi memori 1k x 8 bit menyatakan bahwa jumlah alamat adalah 1 kilo sedangkan
lebar datanya 8 bit sehingga kapasaitas totalnya adalah 8 kbit.

catatan:
kilo dalam satuan memori sama dengan 210 = 1024.

II.1.1.5Karakteristik non fisik


Dalam pemilihan chip memori, selain pertimbangan-pertimbangan di atas perlu juga

1
disampaikan di sini pertimbangan-pertimbangan non fisik, di antaranya adalah masalah
harga, ketersedian di pasaran, dan kompatibilitas. Harga jelas akan mempengaruhi biaya
dan nilai jual, ketersediaan di pasaran akan mempengaruhi kecepatan realisasi yang juga
berimplikasi terhadap biaya dan waktu, kompatibilitas akan mempengaruhi kemudahan
pengembangan.

II.1.2Memori Hanya Baca (ROM)


Pada sistem mikroprosesor atau mikrokontroler ada suatu bagian memori yang berisi
program untuk dieksekusi atau data yang bersifat konstan dan hanya dibaca oleh prosessor
(CPU). Data program maupun data konstan biasanya disimpan secara permanen di dalam
memori hanya baca (Read Only Memory). ROM mempunyai keuntungan utama yang
disebut nonvolatile, yaitu isi memori (data) tidak beubah (hilang) jika terjadi kesalahan
operasi atau ketika catu daya tidak ada.

Tipe chip ROM dapat dikategorikan ke dalam :


3.nonprogrammable read-only memoriy ( ROM)
4.programmable, nonerasable, read only memory (PROM)
5.programmable, ultraviolet erasable, read only memory ( UV EPROM)
6.programmable, electrical erasable, read only memory (EEPROM)
7.flash Memory.

II.1.2.1Nonprogrammeble ROM
Nonprogrammable ROM adalah jenis ROM yang tidak dapat diprogram oleh pengguna, data
diisikan ketika proses pabrikasi. Data yang disimpan tidak dapat diubah. Pengubahan data
memerlukan proses pabrikasi dari awal sehingga proses koreksi akan memerlukan biaya
yang lebih besar serta waktu yang lebih lama.

II.1.2.2Programmable, nonerasable, read only memory (PROM)


PROM merupakan jenis ROM yang dapat diprogram oleh pengguna. Pemrograman
(pengisian data ke chip) biasanya hanya dapat dilakukan satu kali sehingga sering juga
disebut dengan One Time Programming ROM (OTP ROM). Pemrograman dillakukan
dengan menggunakan alat pemrogram PROM.

II.1.2.3Ultra violet Erasable Programmable Read Only Memory ( UV EPROM)


UV EPROM adalah jenis ROM yang dapat dihapus dan diprogram. Pemograman dilakukan
dengan bantuan pemrogram UV EPROM dan penghapusan dilakukan dengan
menggunakan sinar ultra violet dengan rentang waktu tertentu. Tidak seperti PROM yang
hanya dapat diprogram satu kali UV EPROM dapat dilakukan program-hapus berulang-
ulang.

II.1.2.4Electrical Erasable Programmable Read Only Memory (EEPROM)


EEPROM atau kadang disingkat E2PROM adalah jenis ROM yang dapat dihapus dan
diprogram secara elektrik sehingga chip memori tidak perlu dicabut dari sistem (In-circuit).

II.1.2.5Flash Memory
Flash memory adalah jenis ROM yang dapat dihapus dan diprogram secara elektrik.
Penghapusan dan pemrograman dilakukan perblok yang biasanya besarnya 512 byte.

2
II.1.3Memori Baca-Tulis (RAM)
Dalam sistem komputer biasanya terdapat operasi yang membutuhkan penyimpanan data,
yang dapat dilakukan pengubahan ketika sistem sedang berjalan. Data yang demikian
membutuhkan tempat yang sifatnya dapat ditulis maupun dibaca. Tempat penyimpanan data
tersebut biasanya menggunakan memori baca-tulis. Karena penulisan dan pembacaan
dilakukan secara acak maka sering disebut dengan RAM (Random access memory). RAM
bersifat volatile dalam artian jika catu daya dihilangkan dari chip maka data yang tersimpan
akan hilang.

Elemen rangkaian yang membentuk RAM dapat bersifat dinamik maupun statik sehingga
dikenal dengan RAM dinamik dan RAM statik.

II.1.3.1RAM Dinamik (DRAM)


DRAM elemen penyimpan logika 1 dan 0 berupa kapasitor, jika kapasitor terisi (charged)
maka elemen penyimpan berlogika 1 dan jika kapasitor kosong (discharged) maka elemen
penyimpan berlogika 0. Karena ada arus bocor pada kapasitor maka muatan pada kapasitor
akan berkurang sampai pada titik yang mengakibatkan logika 1 akan berubah menjadi logika
0, yang berarti data yang tersimpan di dalam memori akan beubah (hilang). Oleh karena itu
RAM Dinamik memerlukan proses yang dikenal dengan refresh. Refresh dilakukan secara
periodik untuk mengisi ulang seluruh kapasitor yang berlogika 1 agar tidak berubah menjadi
logika 0.

Beberapa karakteristik penting DRAM adalah:


8.membutuhkan proses refresh.
9.kepadatan tinggi.
10.disipasi daya rendah
11.secara umum lebih lambat.
12.rangkaian antarmuka lebih komplek
13.pewaktuan (proses baca tulis) kompleks.
14.harga perbitnya lebih murah

II.1.3.2RAM Statik (SRAM)


Pada RAM Statik elemen penyimpan berupa rangkaian flip-flop yang dibuat dengan
beberapa transistor. Beberapa karakteristik SRAM adalah sebagai berikut:
15.karena elemen penyimpan berupa flip-flop maka tidak diperlukan proses refresh
16.kepadatanya lebih rendah
17.disipasi daya lebih besar
18.kecepatan lebih tinggi
19.rangkaian antarmuka lebih sederhana
20.pewaktuan (proses baca tulis) lebih sederhana
21.harga perbitnya lebih mahal

Beberapa perusahaan memproduksi SRAM yang disertai dengan baterai buck-up di dalam
kemasannya, sehingga ketika catu daya hilang dari sistem, SRAM masih mendapatkan catu
daya dari baterai buck-up tersebut. Jenis SRAM seperti ini sering disebut dengan Non
Volatile SRAM (NV-SRAM). Kemudian SRAM yang tidak terdapat baterai back-up disebut
dengan Volatile SRAM (V-SRAM).

Catatan:
Sebagian besar memori (main memory) pada personal komputer (PC) merupakan
memori jenis DRAM dan sebagian kecil berupa memori SRAM ( Cache Memory).

3
II.1.4Chip ROM dan RAM
Chip ROM dan RAM sangat beragam dari sisi kapasitas, jenis, maupun pembuatnya
sehingga pada subbab ini hanya akan dibahas beberapa chip yang akan digunakan sebagai
contoh dalam perancangan perluasan memori. Beberapa contoh chip ROM maupun RAM
dapat dilihat pada Tabel II.4

Tabel II.4 Contoh chip ROM dan RAM.


Seri Jenis Kapasitas organisasi Kecepatan Disipasi daya (mA)
(ns)
operasi standby
AT28C64 EEPROM 64 kbit 8k x 8 bit 120 30 0,1
M27C64 EPROM 64 kbit 8k x 8 bit 150 30 0,1
HY6264A SRAM 64 kbit 8k x 8 bit 70 70 2
DS1225 NV-SRAM 64 kbit 8k x 8 bit 70 - 200 75 5

II.2 Contoh Chip


Sebagai contoh chip akan dibahas dua chip yaitu AT28C64 dan DS1225

II.3 EEPROM AT28C64


AT28C64 adalah chip memori EEPROM yang diproduksi oleh ATMEL . Huruf di depan pada
seri chip merupakan kode pembuat, sedangkan angka 28 merupakan kode EEPROM, huruf
C merupakan kode teknologi yang digunakan untuk implement chip yaitu CMOS, angka 64
merupakan kapasitas memori dalam kilo (210) bit, yaitu 64 kbit. AT28C64 diorganisasikan ke
dalam 8k x 8 bit.

Susunan kaki chip AT28C64 diperlihatkan pada Gambar II.14.

Gambar II.14 Susunan kaki IC AT28C64.

Tabel II.4 Fungsi kaki IC AT28C64


Nama Fungsi Keterangan
A0 s/d A12 Alamat jalur masukan alamat untuk menentukan
lokasi memori yang akan diakses.
I/O0 s/d I/O7 masukan/keluaran data jalur input data ketika proses menulis dan
keluaran data ketikan proses membaca.
/CE Chip enable jalur signal kendali untuk pemilihan chip (chip
enable), jika CE aktif maka chip dalam kondisi
aktif dan jika CE tidak aktif maka chip dalam

4
kondisi stanbai.
/OE Output enable jalur signal kendali ketika proses membaca
(output enable).
/WE Write enable jalur signal kendali ketika proses menulis
(write enable).
Ready/Busy Keluaran ready/busy Jalur signal ready atau busy
VCC Catu daya positif (+5V)
GND Ground
NC No Connect Tidak dihubungkan

II.3.1.1Operasi Penulisan
Operasi penulisan dilakukan pertama kali dengan mengirim alamat lokasi memori yang akan
ditulis kemudian memberi logika OE = 1, CE dan WE = 0 seperti diperlihatkan pada Gambar
II.14.

Gambar II.14 Diagram waktu operasi penulisan AT28C64.

II.3.1.2Operasi Pembacaan
Operasi pembacaan dilakukan pertama kali dengan mengirim alamat lokasi memori yang
akan dibacakemudian memberi logika OE dan CE = 0 seperti diperlihatkan pada Gambar
II.14.

Gambar II.14 Diagram waktu operasi pembacaan AT28C64


Catatan
Agar konsumsi daya yang digunakan lebih hemat maka kaki CE diberi logika
tinggi jika tidak melakukan penulisan maupun pembacaan memori (lihat mode operasi).

5
II.4 NV-SRAM DS1225
DS1225 merupakan NV-SRAM yang diproduksi oleh Dallas/Maxim. Secara internal terdapat
baterai lithium sebagai back-up. Ketika tegangan catu di bawah spesifikasi, baterai ini akan
memberikan catu ke RAM sehingga data tidak hilang walaupun catu daya utama hilang atau
ada gangguan. Pengalihan sumber catu daya RAM dari catu utama ke catu baterai back-up
dilakukan secara otomatis.

Kapasitas memori DS1225 sebesar 64kbit dan diorganisasikan ke dalam 8k x 8 bit = 8kbyte.
Susunan pin DS1225 kompatibel dengan EEPROM 2864 dan tentu saja dengan SRAM
6264 sebagaimana Gambar II.14.

Gambar II.14 Susunan kaki IC DS1225.

Tabel II.4 Fungsi kaki IC DS1225.


Nama Fungsi Keterangan
A0 s/d A12 Alamat jalur masukan alamat untuk menentukan
lokasi memori yang akan diakses.
I/O0 s/d I/O7 masukan/keluaran jalur input data ketika proses menulis dan
data keluaran data ketikan proses membaca.
/CE Chip enable jalur signal kendali untuk pemilihan chip (chip
enable), jika CE aktif maka chip dalam kondisi
aktif dan jika CE tidak aktif maka chip dalam
kondisi stanby.
/OE Output enable jalur signal kendali ketika proses membaca
(output enable).
/WE Write enable jalur signal kendali ketika proses menulis
(write enable).
Ready/Busy Keluaran ready/busy Jalur signal ready atau busy
VCC Catu daya positif (+5V)
GND Ground
NC No Connect Tidak dihubungkan

II.4.1.1Operasi Penulisan
Operasi penulisan dilakukan pertama kali dengan mengirim alamat lokasi memori yang akan
ditulis kemudian memberi logika OE = 1, CE dan WE = 0 seperti diperlihatkan pada Gambar
II.14.

6
Gambar II.14 Diagram pewaktuan operasi penulisan DS1225.

II.4.1.2Operasi Pembacaan
Operasi pembacaan dilakukan dengan memberi logika OE dan CE = 0 seperti
diperlihatkan pada Gambar II.14.

Gambar II.14 Diagram pewaktuan operasi pembacaan DS1225.

II.5 Menambahkan Memori Program ( Program Memory/ Code Memory)


Mikrokontroler AT89X51/52 mampu mengalamati memori program sebesar 64 kByte. Akses
terhadap memori program eksternal dilakukan dengan menggunakan Port 0 dan Port 2. Port
0 digunakan sebagai bus data yang termultipleks dengan bus alamat rendah ( A0 s/d A7 ),
sedangkan Port 2 sebagai bus alamat tinggi ( A8 s/d A15 ). Sedangkan signal kendali yang
digunakan adalah:
1.ALE ( Address Latch Enable ) aktif tinggi dan
2./PSEN (Program Store enable ) aktif rendah

II.5.1Signal ALE
Signal ALE digunakan untuk singkronisasi pada bus alamat rendah karena bus alamat
rendah termultipleks dengan bus data. Pada setengah siklus mesin pertama Port 0
digunakan sebagai bus alamat dan setengah siklus mesin berikutnya digunakan sebagai bus
data. Ketika data alamat berada pada port 0 yang ditandai oleh signal tinggi pada ALE maka
data alamat harus dipegang oleh latch agar selama proses pembacaan memori program,
data alamat tidak hilang. Pemegangan data alamat ini dilakukan menggunakan IC

7
(Integrated Circuit) latch seperti 74LS373 atau 74HCT573. Signal ALE dihubungkan dengan
kaki pemboleh (enable) pada IC latch.

Gambar II.14. Koneksi Signal ALE Pada IC Latch 74LS373

II.5.2Signal /PSEN
Signal /PSEN merupakan signal baca untuk memori program. Signal ini dihubungkan
dengan kaki OE (Output Enable) atau RD (Read).

II.5.3Chip Memori
Chip memori yang biasa digunakan sebagai memori program adalah dari jenis ROM semisal
PROM, EPROM, EEPROM,dan Flash Memory atau NV-SRAM semisal DS1225. Gambar
II.14 memperlihatkan hubungan antara IC Latch 74LS373, IC EEPROM 28C64, Port 0 ( bus
data dan alamat) serta signal ALE, dan /PSEN.

Gambar II.14. Koneksi EPROM Dengan IC Latch 74LS373

8
Gambar II.14 Siklus Baca Memori Program eksternal

II.5.4Antarmuka Mikrokontroler Dengan Memori Program Eksternal


Sebagian koneksi (pengkawatan) antara mikrokontroler dengan memori program telah
diperlihatkan pada Gambar II.14 dan Gambar II.14. Untuk lebih memperjelas, akan
diberikan contoh perancangan koneksi secara lengkap.

Hal yang perlu diperhatikan dalam penambahan memori program adalah penempatan
alamat chip memori tambahan pada ruang memori yang diperbolehkan. Penempatan chip
memori tidak boleh tumpang tindih antara chip satu dengan yang lainnya, oleh karena itu
perlu dirancang pemetaan dari semua chip yang akan ditambahkan.

Sebagai contoh akan ditambahkan chip memori AT28C64 untuk menambah kapasitas
memori program yang telah dipunyai oleh mikrokontroler (4kByte onchip) dan ditempatkan
pada alamat mulai 0x2000. Peta memorinya diperlihatkan pada Gambar II.14

Gambar II.14 Penempatan AT28C64 pada memori


program.

Diagram blok antarmuka mikrokontroler dengan


EEPROM AT28C64 diperlihatkan pada Gambar
II.14.

9
Gambar II.14 Diagram blok antarmuka mikrokontroler dengan AT28C64.
Untuk membagi ruang memori data eksternal menjadi 8 ruang dapat dilakukan dengan
menggunakan IC dekoder alamat seri 74LS138 dengan blok diagram seperti pada Gambar
II.14 dan tabel kebenaran seperti pada Tabel II.4.

Gambar II.14 Blok diagram fungsional IC 74X138

Tabel II.4 Hubungan antara masukan dengan keluaran IC 74X138


Masukan Keluaran
Enable Select
G1 /G2 C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
X 1 X X X 1 1 1 1 1 1 1 1
0 X X X X 1 1 1 1 1 1 1 1
1 0 0 0 0 0 1 1 1 1 1 1 1
1 0 0 0 1 1 0 1 1 1 1 1 1
1 0 0 1 0 1 1 0 1 1 1 1 1
1 0 0 1 1 1 1 1 0 1 1 1 1
1 0 1 0 0 1 1 1 1 0 1 1 1
1 0 1 0 1 1 1 1 1 1 0 1 1
1 0 1 1 0 1 1 1 1 1 1 0 1
1 0 1 1 1 1 1 1 1 1 1 1 0

Contoh rangkaiannya seperti pada Gambar II.14

Gambar II.14 Rangkaian dekoder menggunakan IC 74LS138

Catatan:
Y0/D0 keluaran dekoder 74LS138 tidak dapat digunakan secara langsung karena ruang

10
alamatnya sudah digunakan oleh internal memori program (on-chip) sebesar 4kByte mulai
alamat 0x0000 s/d 0x0FFF sedangkan alamat 0x1000 s/d 0x1FFF masih kosong. Agar
alamat 0x1000 s/d 0x1FFF dapat digunakan maka perlu dilakukan pendekodean lebih lanjut,
yaitu dengan mendekode alamat A11.

Rangkaian lengkap antarmuka mikrokontroler AT89C/S51 dengan EEPROM AT28C64 yang


dipetakan pada lokasi memori mulai alamat 0x2000 diperlihatkan pada Gambar II.14.

Gambar II.14 Rangkaian lengkap antarmuka mikrokontroler AT89C/S51 dengan AT28C64.

II.6 Menambahkan Memori Data Ekternal


Mikrokontroler AT89C51/52 atau AT89S51/52 mempunyai ruang memori data eksternal
sebesar 64 kbyte, yang bersifat dapat dibaca maupun ditulis. Akses data pada ruang memori
data eksternal menggunakan bus alamat dan bus data yang sama dengan yang digunakan
pada memori program eksternal. Oleh karena itu rangkaian antarmuka yang digunakan juga
sama, yaitu menggunakan tambahan IC Latch sebagaimana Gambar II.14.

Sinyal kendali yang digunakan adalah:


1.RD (Read) yaitu sinyal baca
2.WR (write) yaitu sinyal tulis

11

Anda mungkin juga menyukai