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 2 10 = 1024. II.1.1.5Karakteristik non fisik Dalam pemilihan chip memori, selain pertimbangan-pertimbangan di atas perlu juga 1

Perluasan Memori

Embed Size (px)

Citation preview

Page 1: Perluasan Memori

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, yaitu1.Memori hanya baca (ROM), dan2.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

Page 2: Perluasan Memori

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

Page 3: Perluasan Memori

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 rendah11.secara umum lebih lambat.12.rangkaian antarmuka lebih komplek13.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 refresh16.kepadatanya lebih rendah 17.disipasi daya lebih besar18.kecepatan lebih tinggi19.rangkaian antarmuka lebih sederhana20.pewaktuan (proses baca tulis) lebih sederhana21.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

Page 4: Perluasan Memori

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 (ns)

Disipasi daya (mA)

operasi standbyAT28C64 EEPROM 64 kbit 8k x 8 bit 120 30 0,1M27C64 EPROM 64 kbit 8k x 8 bit 150 30 0,1HY6264A SRAM 64 kbit 8k x 8 bit 70 70 2DS1225 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 KeteranganA

0 s/d A

12Alamat jalur masukan alamat untuk menentukan

lokasi memori yang akan diakses.I/O

0 s/d I/O

7masukan/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

Page 5: Perluasan Memori

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 busyVCC Catu daya positif (+5V)GND GroundNC 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

CatatanAgar konsumsi daya yang digunakan lebih hemat maka kaki CE diberi logika

tinggi jika tidak melakukan penulisan maupun pembacaan memori (lihat mode operasi).

5

Page 6: Perluasan Memori

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 KeteranganA

0 s/d A

12Alamat jalur masukan alamat untuk menentukan

lokasi memori yang akan diakses.I/O

0 s/d I/O

7masukan/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 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 busyVCC Catu daya positif (+5V)GND GroundNC 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

Page 7: Perluasan Memori

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

Page 8: Perluasan Memori

(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

Page 9: Perluasan Memori

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

Page 10: Perluasan Memori

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 KeluaranEnable Select

G1 /G2 C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7X 1 X X X 1 1 1 1 1 1 1 10 X X X X 1 1 1 1 1 1 1 11 0 0 0 0 0 1 1 1 1 1 1 11 0 0 0 1 1 0 1 1 1 1 1 11 0 0 1 0 1 1 0 1 1 1 1 11 0 0 1 1 1 1 1 0 1 1 1 11 0 1 0 0 1 1 1 1 0 1 1 11 0 1 0 1 1 1 1 1 1 0 1 11 0 1 1 0 1 1 1 1 1 1 0 11 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

Page 11: Perluasan Memori

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 baca2.WR (write) yaitu sinyal tulis

11