Bab 10
-
Upload
lusi-arsenal -
Category
Documents
-
view
278 -
download
10
description
Transcript of Bab 10
TUGAS MATA KULIAH
SISTEM MIKROPROSESOR
BAB 10
ANTARMUKA MEMORI
Oleh
KELOMPOK 3
Andi Hamka ( 0608 3032 0220 )
Ja’far Shodik ( 0608 3032 0228 )
Muhammad Arif ( 0608 3032 0233 )
Septa Susmitha Paratami ( 0608 3032 0238 )
Kelas : 4 EB
Dosen Pembimbing : Ir. Nawawi
POLITEKNIK NEGERI SRIWIJAYA
2010
BAB 10
Antarmuka Memori
PENDAHULUAN
Entah sederhana atau kompleks, setiap system berdasarkan mikroprosesor
memiliki sebuah system memori. Kerabat mikroprosesor intel tidak berbeda
dengan yang lainnya dalam hal ini.
Hampir semua system memiliki dua tipe utama memori: read-only
memory (ROM) dan random access memory (RAM) atau memori baca/tulis.
ROM mengandung system perangkat lunak dan data system permanent, di mana
RAM mengandung data sementara dan perangkat lunak aplikasi. Bab ini
menerangkan bagaimana mengantarmukakan kedua tipe memori itu kepada
kerabat mikroprosesor intel. Kita mendemonstrasikan interface (antarmuka)
memori kepada bus data 8-bit, 16-bit, 32-bit, dan 64-bit menggunakan variasi
ukuran-ukuran alamat memori. Hal ini benar-benar memungkinkan mikroprosesor
manapun untuk diantarmukakan kepada system memori manapun.
TUJUAN BAB
Ketika menyelesaikan bab ini, Anda diharapkan mampu:
1. Decode (menerjemahkan) alamat memori dan menggunakan outputnya
(hasil-hasilnya) dari decoder (penerjemah) untuk memilih komponen
memori.
2. Menggunakan Programmable Logic Devices (PLD = peranti logika yang
dapat diprogram) untuk mendekodekan alamat-alamat memori.
3. Menerangkan bagaimana antarmuka keduanya baik RAM maupun ROM
pada mikroprosesor.
4. Menerangkan bagaimana paritas dapat mendeteksi error memori.
5. Mengantarmuka memori kepada sebuah bus data 8-bit, 16-bit, 32-bit, dan
64-bit.
6. Menerangkan operasi dari sebuah pengontrol RAM dinamis.
7. Mengantarmuka RAM dinamis kepada mikroprosesor.
10-1 PERANTI MEMORI
Sebelum berusaha mengantarmuka memori ke mikroprosesor, adalah penting
untuk benar-benar mengerti operasi komponen-komponen memori. Dalam subbab
ini, kami menerangkan fungsi dari empat tipe umum memori: memori hanya baca
(ROM- Read Only Memory ), memory flash (EEPROM), (SRAM = Static
Random Acces Memory), dan memori akses acak dinamis (DRAM = Dynamic
Random Acces Memory).
Hubungan Pin Memori
Hubungan pin yang umum untuk semua peranti memori adalah masukan (input)
alamat, keluaran (output) data atau masukan/keluaran data, beberapa tipe masukan
seleksi, dan paling tidak satu input control yang digunakan untuk menyeleksi
operasi membaca dan menulis. Lihat Gambar 10-1 untuk peranti memori-generik
ROM dan RAM.
Hubungan Alamat. Semua peranti memori memiliki input alamat yang memilih
lokasi memori di dalam peranti memori. Input alamat hamper selalu diberi label
dari A0, yang paling kecil dari alamat input signifikan, sampai An, di mana
subskrip n bisa nilai apapun tapi selalu diberi label sebagai kurang satu dari
jumlah total pin alamat. Sebagai contoh, peralatan memori yang memiliki 10 pin
alamat yang diberi label A0 sampai A9. jumlah dari pin alamat yang ditentukan
pada peranti memori ditentukan oleh jumlah lokasi memori yang ditemukan
tanpanya.
Sekarang, peranti memori yang lebih umum memiliki antara 1K (1024)
sampai 64M (64.108.864) lokasi memori, dengan peranti lokasi memori 256M
pada perkiraan terjauh. Peranti memori 1K memiliki 10 pin alamat (A0-A9);
karenanya, 10 input alamat dibutuhkan untuk memilih yang manapun dari 1024
lokasi memorinya. Hal itu membutuhkan bilangan biner 10-bit (1024 kombinasi
kombinasi yang berbeda) untuk menseleksi lokasi tunggal manapun pada peranti
1024 lokasi. Jika peranti memori memiliki 11 hubungan alamat (A0-A10),
memiliki 2048 (2K) lokasi memori internal. Jumlah dari lokasi memori karenanya
dapat diperkirakan dari jumlah pin alamat. Sebagai contoh, peranti memori 4K
memiliki 12 hubungan alamat, peranti 8k memiliki 13, dan seterusnya. Peranti
yang memiliki 1M lokasi membutuhkan alamat 20-bit (A0-A19).
400H mewakili bagian 1K-byte dari system memori. Jika peranti memori
dikodekan untuk dimulai pada alamat memori 10000H, dan adalah peranti 1K,
lokasi terakhirnya adalah pada alamat 103FFH – satu lokasi kurang dari 400H.
bilangan heksadesimal penting lainnya adalah yang perlu diingat adalah 1000H,
karena 1000H adalah 4K. Peranti memori yang memiliki alamat awal 14000H
adalah 4K-byte berakhir pada lokasi 14FFFH – satu lokasi kurang dari 1000H.
Bilangan ketiga adalah 64K atau 10000H. Memori yang dimulai pada lokasi
30000H dan berakhir pada lokasi 3FFFH adalah 64K byte memori. Akhirnya,
karena 1M memori cukup dikenal, maka memori 1M mengandung 100000H
lokasi memori.
Hubungan (Connection) Data. Semua peranti memori memiliki kumpulan data
output atau input/output. Peranti yang diilustrasikan pada Gambar 10-1 memiliki
kumpulan umum dari hubungan input/output (I/O). Sekarang, benyak peranti
meori memiliki pin I/O dua arah.
GAMBAR 10-1 Komponen
memori semu (pseudo) yang
mengilustrasikan hubungan
alamat, data, dan kontrol.
Hubungan data adalah titik
dimana data dimasukkan untuk
menyimpan atau dikeluarkan
untuk pembacaan. Pin data pada
peranti memori diberi label D0
O0
O1
O2
ON
....
..
A0
A1
A2
AN
....
..
WE
OECS
Output atau
hubungan
input/output
hubungan
alamat
Write
ReadSelect
sampai D7 untuk peranti memori dengan lebar 8-bit. Dalam contoh peranti
memori ini, ada delapan hubungan I/O yang berarti peranti memori menyimpan 8-
bit data dalam setiap lokasi memorinya. Peranti memori yang lebarnya 8-bit
sering disebut sebagai memori selebar byte. Walaupun sebagian besar piranti saat
ini lebarnya 8-bit,beberapa piranti mempunyai labar 16-bit, 4-bit, atau hanya 1-bit.
Katalog yang mendaftarkan peranti memori sering menunjuk pada lokasi
memori kali bit per lokasi. Sebagai contoh, sebuah peranti memori dengan lokasi
memori 1K dan 8-bit dalam setiap lokasi sering didaftarkan sebagai 16K × 8 oleh
pabrik. Peranti memori 16K × 1 mengandung 16K memori lokasi 1-bit. Peranti
memori juga sering diklasifikasikan sesuai dengan kapasitas total bit. Sebagai
contoh, peranti memori 1K × 8 bit kadang-kadang didaftarkan sebagai sebuah
peranti memori 8K, atau sebuah peranti memori 64K × 4 didaftarkan sebagai
sebuah peranti 256K. Variasi- variasi ini terjadi dari satu pabrik ke pabrik lain.
Hubungan Seleksi. Setiap peranti memori memiliki sebuah input- kadang-kadang
lebih dari satu yang memilih atau mengenable peranti memori. Input jenis ini
paling sering disebut masukan sebagai suatu pemilih chip (CS chip select ),
enable chip ( CE chip enable ), atau hanya pilih ( S select ). Memori RAM
umumnya memiliki paling tidak satu input CS atau S , dan ROM paling tidak
satu CE . Jika input CE , CS atau S aktif (sebuah logika 0 dalam kasus ini,
karena garis atas), peranti memori memberikan sebuah pembacaan atau sebuah
penulisan; jika tidak aktif (sebuah logika 1 dalam kasus ini), peranti memori tidak
dapat melakukan sebuah pembacaan atau sebuah penulisan karena dimatikan atau
didisable. Jika ada lebih dari satu penghubung CS , semua harus diaktifkan untuk
membaca atau menulis data.
Hubungan Kontrol. Sebuah peranti memori memiliki beberapa bentuk input
control atau banyak input control. Sebuah ROM baisanya memiliki satu input
control, di mana RAM sering memiliki satu atau dua input control.
Input control yang sering ditemukan pada ROM adalah output enable
(OE ) atau hubungan gerbang G gate, yang memungkinkan data mengalir keluar
dari pin output data dari ROM. Jika ( OE ) dan input pemilihan ( CS ) keduanya
aktif, maka output diaktifkan; jika ( OE ) tidak aktif, output tidak diaktifkan pada
keadaan tahanan-tinggi. Penghubung ( OE ) mengenabel dan mengdisabel satu
kumpulan dari buffer tiga-keadaan yang ditempatkan di dalam peranti memori dan
harus aktif untuk membaca data.
Peranti memori RAM memiliki baik satu maupun dua input control. Jika
ada satu input control, sering disebut sebagai R/W . Pin ini memilih operasi
pembacaan atau operasi penulisan hanya jika peranti dipilih dengan input pilihan
(CS ). Jika RAM memiliki dua input control, biasanya diberi label WE (atau W )
dan ( OE ) (atau G ). Di sini, WE (penulisan diaktifkan = write enable) harus
aktiff dalam memberikan operasi pembacaan memori. Jika dua control ini
(WE dan OE ) ada, keduanya harus tidak pernah aktif pada waktu yang sama. Jika
kedua input control tidak aktif (logika 1), maka data tidak ditulis maupun dibaca
dan hubungan data pada keadaan tahanan-tinggi.
Memori ROM
Read-onli memory (ROM) secara permanen menyimpan program-program dan
data yang bersifat menetap (residen) terhadap system serta harus tidak berubah
jika listrik dimatikan. ROM diprogram secara permanent sehingga data selalu ada,
walupun listrik diputuskan. Tipe memori ini sering disebut sebagai memori yang
tidak mudah berubah (nonvolatile memory).
ROM tersedia dalam banyak bentuk sekarang ini. Sebuah peranti yang kita
kita sebut sebagai ROM dibeli dalam jumlah yang banyak dari pabrik dan
deprogram selama pembuatanya di pabrik. (memori hanya dibaca yang bisa
diprogram dan bisa dihapus EPROM = erasable programmable read-only
memory), sebuah tipe ROM, lebih umum dipakai jika perangkat lunak harus
sering diganti atau jika hanya ada jumlah yang sangat terbatas pada permintaan
untuk membuat ROM ekonomis. Agar sebuah ROM menjadi praktis, kita
umumnya harus membeli paling tidak 10.000 peranti untuk mengganti rugi
ongkos pemrograman pabrik. Sebuah EPROM diprogram di tempat pada saat
peralatan yang dinamakan sebuah programmer EPROM. EPROM juga dapat
dihapus jika diletakkan pada sinar ultra violet berintensita-tinggi selama 20 menit
atau kurang, bergantung pada tipe EPROM.
Peranti memori PROM juga tersedia, tapi tidak begitu umum sekarang.
PROM (memori yang hanya baca dan dapat deprogram = programmable read-
only memory) juga diprogramkan ditempat dengan membakar terbuka sekering
NI-chrome yang sangat kecil atau sekering silicon oksida, tapi satu kali diprogram
tidak dapat dihapus.
Masih yang lain, tipe lebih baru dari memori sering dibaca (RMM) read-
mostly memory disebut sebagai memori flash. Memori flash juga sering disebut
sebagai ROM yang dapat diprogram dan yang dapat dihapus dengan tenaga listrik
(EEPROM = electrically erasable programmable ROM), ROM yang dapat
diubah dengan tenaga listrik (EAROM electrically alterable ROM), atau RAM
yang tidak mudah berubah (NVRAM nonvolatile RAM). Peranti memori ini
dapat dihapus dengan listrik dalam system, tapi membutuhkan waktu yang lama
dalam menghapus dari pada RAM yang normal. Peranti memori flash yang
digunakan untuk menyimpan informasi setup untuk sistem-sistem sepeti kartu
video dalam computer. Biasanya juga dengan segera menggantikan EPROM
dalam computer untuk memori BIOS. Beberapa system mempunyai kata kunci
(password) yang disimpan dalam peranti memori flash.
KARAKTERISTIK AC
TA=0°C sampai 70°C, Vcc[1] =+5V±5%, Vpp[2] =Vcc±0,6[3]
Simbol Parameter Batas Unit Kondisi uji
Min Tipikal[4] Maks Penguji
tACC1 Tundaan Alamat ke Output 250 450 ns PD/PGM= CS =VIL
TACC2 Tundaan PD/PGM ke Output 258 450 ns CS =VIL
tCO Tundaan Pilihan Chip ke Output 120 Ns PD/PGM=VIL
tPF Float PD/PGM ke Output 0 100 ns CS =VIL
tDF Float Deseleksi Chip ke Output 0 100 ns PD/PGM=VIL
tOH Hold Alamat ke Output 0 ns
PD/PGM COUT
CS =VIL
Kapasitas [5] TA=25°C, f= 1 MHz
Simbol Parameter Tipikal Maks. Unit Kondisi uji
CIN Kapasitas Input 4 6 pF VIN =0V
COUT Kapasitas Output 8 12 pF VOUT =0V
GAMBAR 10-3 Diagram pewaktu dari karakteristik AC untuk 2716 EPROM.
(Sumbang Intel Corporation.)
Gambar 10-2 mengilustrasikan 2716 EPROM, yang mewakili sebagian
besar EPROM. Peranti ini memiliki 11 masukan alamat dan 8 keluaran data. 2716
adalah peranti memori hanya baca 2K × 8. seri 27XXX dari EPROM mengandung
nomor komponen sebagai berikut ini: 2704(512 × 8), 2708(1K × 8), 2716(2K ×
8), 2732 (4K × 8), 2764(8K × 8), 27128(16K × 8), 27256(32K × 8), 27512(64K ×
8), 271024(128K × 8). Masing-masing komponen ini memiliki pin alamat,
delapan hubungan data, satu atau lebih masukan seleksi chip ( CE ), dan pin output
enable ( OE ).
Gambar 10-3 mengilustrasikan diagram pewaktuan untuk EPROM 22716.
Data hanya terlihat pada hubungan keluaran sebuah logika 0 ditempatkan pada
Kondisi Uji AC:
Muatan Output: 1 jembatan TTL
dan CL=100pF Wakrtu naik turun input: ≤20 ns Tingkat pulsa input: 0,8 sampai 2,2V Tingkat referensi pengukuran tinggi: Input 1V dan 2V
Output 0,8V dan 2V
kedua-duanya baik hubungan pin ( OE ) maupun (CE ). Jika (OE ) maupun (CE )
keduanya tidak memiliki logika 0, hubungan data keluaran tetap pada keadaan
tahanan-tingginya atau keadaan mati. Perhatikan bahwa pin Vpp harus
ditempatkan pada logika 1 untuk datanya dibaca WE pada SRAM. Hal ini
memungkinkan soket tunggal untuk memuat baik sebuah EPROM maupun
SRAM. Contoh-contohnya adalah EPROM 2716 dan SRAM 6166, keduanya
adalah peranti 2K × 8 yang memiliki pin out yang sama, kecuali untuk Vpp pada
EPROM dan WE pada SRAM.
Satu informasi penting yang diberikan oleh diagram pewktuan (timing)
dan lembar data pewaktuan adalah waktu akses memori-waktu yang dibutuhkan
memori untuk membaca informasi. Sebagaimana Gambar 10-3 ilustrasikan,
memory access time (TACC) di ukur dari tampilan alamat pada input alamat sampai
pada tampilan data pada hubungan output. Hal ini berdasarkan pada asumsi bahwa
input CE menjadi rendah pada waktu yang sama input alamat menjadi stabil.
Juga, OE harus berupa logika 0 untuk hubungan output menjadi aktif. Kecepatan
dati EPROM adalah 450 ns. (Ingat kembali Bab 7 yaitu 8086/8088 dioperasikan
dengan sebuah clock 5 MHz memungkinkan memori 460 ns untuk mengakses
data). Tipe komponen memori ini membutuhkan status tunggu untuk beroperasi
dengan benar dengan mikroprosesor 8086/8088 karena waktu akses yang agak
panjang. Jika status tunggu tidak diinginkan, versi kecepatan lebih tinggi dari
EPROM tersedia dengan tambahan biaya. Sekarang, memori EPROM tersedia
dengan waktu akses sekecil 100 ns.
GAMBAR 10-4 Pin-out TMS4016, RAM (SRAM) statis 2K × 8.
(Sumbangan Texas Instruments Incorporated.)
Peranti RAM Statis (SRAM)
Memori RAM statis mempertahankan data selama daya DC diberikan. Kerena
tidak ada aksi khusus (kecuali daya) yang dibutuhkan untuk menampung data
yang disimpan, peralatan ini disebut sebagai memori statis. Juga dipanggil
memori yang mudah berubah (volatil) karena tidak akan mempertahankan data
tanpa daya. Perbedaan yang utama antara ROM dan RAM adalah RAM yang
ditulis di bawah operasi yang normal, di mana ROM deprogram di luar computer
dan normalnya hanya dibaca. SRAM menyimpan data sementara dan digunakan
jika ukuran dari memori baca/tulis relative kecil. Sekarang, memori yang kecil
adalah yang kurang dari 1 M byte.
Gambar 10-4 mengilustrasikan SRAM 4016, yaitu memori baca/tulis 2K ×
8. peralatan ini memiliki 11 input alamat dan 8 hubungan input/output data.
Peralatan ini mewakili semua peralatan SRAM, kecuali untuk jumlah hubungan
alamat dan data.
Input control dari RAM ini sedikit berbeda dari yang diberikan
sebelumnya. pin OE diberi label G , pin CS diberi label S , dan pin WE diberi
label W . Walaupun adanya penunjukan yang diubah, fungsi pin control sama
persis dengan yang digariskan sebelumnya. Pabrik lain membuat SRAM popular
ini dibawah nomor 2016 dan 6166.
Karakteristik elektris untuk jarak operasi suhu udara bebas yang direkomendasikan (kecuali dinyatakan
sebaliknya)
PARAMETER KONDISI TES MIN TIP┼MAKS Unit
VOH Teganan tingkat
tinggi
IOH = -1 mA
Vcc = 4,5 V V 2,4 V
VOL Teganan tingkat
rendah
IOL = 2,1 mA mA
Vcc = 4,5 V 0,4 V
II Arus input V1 = 0 V sampai 5,5 V 10 uA
IOZ Arus output status-off
S atau G pada 2V atau W pada 0,8V,
VO = 0 V sampai 5,5 V 10 uA
Icc Arus catu dari Vcc
IO = 0 mA
TA = 0°C (kasus terburuk) mA
Vcc = 5,5 V 40 70 mA
CI Kapasitas input
VI = 0 V,
f= 1 MHz
8
pF
CO Kapasitas output
VO = 0 V,
f= 1 MHz
12
pF
┼ Semua nilai tipikal teletak pada Vcc= 5 V, TA = 25°C.
Persyaratan pewaktuan untuk jarak tegangan catu dan jarak operasi suhu udara bebas yang direkomendasikan
PARAMETER TMS4016-12 TMS4016-15 TMS4016-20 TMS4016-25 UNIT
MIN MAKS MIN MAKS MIN MAKS MIN MAKS
tc(rd) Waktu siklus baca 120 150 200 250 ns
tc(wr) Waktu siklus tulis 120 150 200 250 ns
tw(W) Lebar pulsa tulis 60 80 100 120 ns
tsu(A) Waktu setup alamat 20 20 20 20 ns
tsu(S) Waktu setup pilih chip 60 80 100 120 ns
tsu(D) Waktu setup data 50 60 80 100 ns
th(A) Waktu hold alamat 0 0 0 0 ns
th(D) Waktu hold data 5 10 10 10 ns
Karakteristik pensaklaran untuk jarak tegangan yang direkomendasikan, TA = 0°C sampai 70°C
PARAMETER
TMS4016-
12 TMS4016-15 TMS4016-20 TMS4016-25 UNIT
MIN
MAKS MIN MAKS MIN MAKS MIN MAKS
ta(A) Waktu siklus baca 120 150 200 250 ns
ta(S) Waktu akses dari pilih chip rendah 120 75 100 120 ns
ta(G) Waktu akses dari enable output rendah 50 60 80 100 ns
tv(A) Data output valid setelah perubahan alamat 10 15 15 15 ns
tdis(S) Waktu disable output setelah pilih chip tinggi 40 50 60 80 ns
tdis(G) Waktu disable output setelah enable output tinggi 40 50 60 80 ns
tdis(W) Waktu disable output setelah enable tulis rendah 50 60 60 80 ns
ten(S) Waktu enable output setelah pilih chip rendah 5 5 10 10 ns
ten(G) Waktu enable output setelah enable output rendah 5 5 10 10 ns
ten(W) Waktu enable output setelah enable tulis tinggi 5 5 10 10 ns
Catatan: 3. CL = 100pF untuk semua pengukuran kecuali tdis(W) dan ten(W)
CL = 5 pF untuk tdis(W) dan ten(W)
4. Parameter tdis dan ten adalah contoh dan tidak 100% dites.
GAMBAR 10-5 (a) Karakteristik AC TMS4016 SRAM. (b) Diagram pewaktu SRAM
TM4016. (sumbangan Texas Instrument.)
Gambar 10-5 menerangkan diagram pewaktu untuk SRAM 401.
sebagaimana yang ditunjukkan oleh pewaktu siklus baca, waktu akses adalah ta
(A). pada versi yang paling lambat dari 4016, waktu ini adalah 250 ns, yang cukup
cepat untuk menghubungkan 8088 atau 8086 yang dioperasikan pada 5 MHz
tanpa status tunggu. Sekali lagi, adalah penting untuk diingat bahwa waktu akses
harus dicek untuk menentukan kecocokan dari komponen memori dengan
mikroprosesor.
Gambar 10-6 mengilustrasikan keluaran pin out dari 62256, RAM statis
32K × 8. peralatan ini dikemas dalam sirkuit terpadu 28-pin, dan tersedia dengan
waktu akses 120 ns atau 150 ns. Peranti SRAM umum lainnya tersedia dalam
ukuran 8K × 8 dan, 128K × 8, dan 256K × 8 dengan waktu akses sekecil 10ns
untuk SRAM yang digunakan dalam system memori cache computer.
Memori RAM Dinamis (DRAM)
Mengenai RAM statis terbesaar yang tersedia sekarang ini adalah 128K × 8. Yang
dimiliki RAM dinamis, sebaliknya, tersedia dalam ukuran yang lebih besar;
sampai 64M × 1. Dalam semua aspek yang lain, DRAM pada dasarnya sama
dengan SRAM, kecuali menampung data hanya 2 atau 4 ms pada kapasitor
terpadu. Sesudah 2 atau 4 ms, isi dari DRAM harus ditulis kembali seluruhnya
(refresh) karena kapasitor-kapasitor, yang menyimpan logika 1 atau 0, kehilangan
muatan (charge) mereka.
Sebagai ganti mensyaratkan tugas yang hamper mustahil dalam membaca
isi dari masing-masing lokasi memori dengan program dan kemudian menuliskan
kembali, pabrik telah secara internal mengkonstruksikan DRAM berbeda dengan
SRAM. Pada DRAM, seluruh isi dari memori di-refres dengan 256 pembacaan
dalam interval-2 atau 4-ms. Refres juga berlaku selama penulisan, pembacaan,
atau selama siklus refresh special. Informasi yang lebih banyak lagi pada refresh
DRAM diberikan dalam subbab 10-6.
Kekurangan yang lain dari DRAM yaitu membutuhkan banyak pin alamat
sehingga pabrik telah memultipleks input alamat. Gambar 10-7 mengilustrasikan
sebuah DRAM 64K × 4, TMS4464, yang menyimpan 256 K bit data. Perhatikan
bahwa mengandung 8 alamat input di mana seharusnya mengandung 16, jumlah
yang dibutuhkan untuk mengalamatkan 64K lokasi memori. Satu-satunya cara
agar 16-bit alamat dapat dipaksa ke dalam 8 pin alamat adalah dalam 2 tingkat 8-
bit. Operasi ini membutuhkan 2 pin khusus yang disebut column address strobe
(CAS = strobe alamat kolom) dan row adderss strobe ( RAS = strobe alamat
baris). Pertama, A0-A7 ditempatkan pada pin-pin alamat dan di-strobe ke dalam
latch baris internal pada RAS sebagai row address (alamat baris). Berikutnya, bit
alamat A8-A15 ditempatkan pada delapan alamat input yang sama dan di-strobe
ke dalam sebuah latch kolom internal oleh CAS sebagai colum address (alamat
kolom)(lihat Gambar 10-8 untuk pewaktuan ini). Alamat 16-bit yang berada di
dalam latch internal ini mengalamatkan isi-isi dari salah satu lokasi memori 4-bit.
Perhatikan bahwa CAS juga menunjukkan fungsi dari input seleksi chip ke
DRAM.
Gambar 10-9 mengilustrasikan satu kumpulan dari multiplekser yang
digunakan untuk men-strobe alamat kolom dan baris ke dalam 8 input alamat dari
DRAM TMS4464. Di sini RAS tidak hanya men-strobe alamat baris ke dalam
DRAM, tapi juga mengganti alamat yang diterapkan kepada input alamat. Hal ini
mungkin karena panjangnya waktu tundaan pengembangan dari multiplekser. Jika
RAS logika 1, input-inpit B dihubungkan dengan input-input ke output Y. Karena
latch alamat baris internal edge-trigger, menangkap alamat baris sebelum alamat
dari input berubah menjadi alamat baris. Rincian yang lebih banyak dari DRAM
dan antarmuka DRAM diberikan dalam Subbab 10-6.
Sebagaimana dengan SRAM, pin R/W menulis data ke DRAM jika logika
0, tapi tidak ada pin yang diberi label G atau enable (diaktifkan). Tidak ada juga
S (select) input ke DRAM. Sebagaimana disebutkan, input CAS memilih
DRAM. Jika terpilih, DRAM ditulis jika R/W = 0 dan dibaca jika R/W = 1.
Gambar 10-10 menunjukkan pinout dari RAM dinamis 41256. alat ini
diatur sebagai memori 256K × 1 yang membutuhkan dana akses 70 ns.
Lebih dini, DRAM yang lebih besar tersedia yang diatur sebagai memori
1M × 1, 4M × 1, dan 16M × 1. Ada memori 256M × 1. Karena memori DRAM
biasanya ditempatkan pada papan sirkuit kecil disebut SIMM (Single In-line
Memory Module), gambar 10-11 menunjukkan output pin dari dua SIMM yang
paling umum. SIMM 30-pin diatur paling sering sebagai 1M × 8 atau 1M × 9 dan
4m × 8 atau 4M × 9. (yang diilustrasikan dalam gambar 10-11 adalah 4m × 9.) bit
ke sembilan adalah bit paritas. Juga ditunjukkan SIMM 72-pin lebih baru.
Kepunyaan SIMM 72-pin sering diatur sebagai 1M × 32 atau 1M × 36 (dengan
paritas). Ukuran lain adalah 2M × 32, 4M × 32 atau 8M × 32. ini juga tersedia
dengan paritas di ilustrasikan pada gambar 10-11 adalah SIMM 4M × 36, yang
memiliki 16M byte memori.
Banyak system pemakaian mikroprosesor Pentium, Pentium Pro, atau
Pentium II. Mikroprosesor-mikroprosesor ini mempunyai bus data lebar 64-bit,
yang menghalangi penggunaan SIMM lebar 8-bit seperti yang dijelaskan disini.
Bahkan SIM 72-pin tidak praktis digunakan karena haru dipakai dalam pasangan
untuk mendapat koneksi lebar 64-bit. Sekarang, DIMM (Dual-In-line Memoru
Module) lebar 64-bit menjadi standar dan sebagian besar system. Memori dalam
module ini diorganisir selebar 64-bit. Ukuran yang umum tersedia yaitu 16M
byte, (2M× 64), 32M (4M × 64), 64M byte(8M × 64), dan 128M byte( 16M × 64).
Pin-out DIMM di ilustrasikan dalam Gambar 10-12. Module DIMM tersedia
dalam DRAM,EDO, dan SDRAM dengam atau tanpa setu EPROM. EPROM
menyediakan informasi pada system tentang ukuran dan kecepatan dari peranti
memori bagi aplikasi –aplikasi plug-n-play.
10-2 PEDEKODEAN ALAMAT
Agar dapat menyambungkan peranti memori ke mikroproseseor, diperlukan
pendekodean alamat dari mikroprosesor untuk membuat fungsi memori pada
bagian yang unik atau partisi dari peta memori. Tanpa pendekodean alamat, hanya
satu peralatan memori dapat dihubungkan ke mikroprosesor, yang membuatnya
benar-benar tidak berguna. Dalam suubbab ini, penulis menerangkan beberapa
dari teknik pendekonean alamat yang lebih umum, seperti juga decoder yang
ditemukan dalam banyak system.
Mengapa Mendekodekan Memori?
Jiika mikroprosesor 8088 dibandingkan dengan EPROM 2716, suatu perbedaan
dalam jumlah hubungan input alamat timbul – EPROM memiliki 11 hubungan
alamat dan mikroprosesor mengirimkan alamat memori 20-bit setiap kali
membaca atau menulis data. Karena EPROM hanya memiliki 11 input alamat, ada
ketidakcocokan bagaimanapun juga harus dikoreksi. Jika hanya 11 dari pin alamat
8088 yang dihubungkan dengan memori, maka 8088 hanya melihat memori yang
memiliki 2K bytes bukan 1M byte yang di”harapkan”. Decoder mengoreksi
ketidakcocokan dengan mendekodekan alamat pin yang tidak terhubung ke
komponen memori.
Decoder Gerbang NAND Sederhana
Jika EPROM 2K × 8 yang digunakan, hubungan alamat A10-A11 EPROM, dan
sisa sembilan alamat pin (A19-A11) dihubungkan dengan input deri decoder
gerbang NAND (lihat Gambar 10-12). Decoder memilih EPROM dari satu dari
banyak bagian 2K byte dari keseluruhan 1M byte jangkauan alamat dari
mikroprosesor 8088.
Dari sirkuit ini, gerbang NAND tunggal mengdekodekan alamat memori.
Keluaran dari gerbaang NAND adalah sebuah logika 0 kapan saja pin alamat 8088
disambungkan pada inputnya (A19-A11) semua logika1. Keluaran artif rendah,
logika 0 dari decoder gerbang NAND dihubungkan dengan input CE , yang
memilih (mengenabel) EPROM. Pin OE diaktifkan oleh sinyal RD 8088 atau
sinyal MRDC (memory read control = control baca memori) dari anggota
keluarga lain.
Jika alamat biner 20-bit, yang dikodekan oleh gerbang NAND, ditulis
sehingga 9 bit yang paling kiri adalah milik 1 dan 11 bit yang paling kanan adalah
don’t care (X = tidak peduli), jangkauan alamat sebenarnya dari EPROM dapat
ditetapkan. (Don’t care bisa logika 1 atau logika 0, yang mana saja yang cocok).
Contoh 10-1 mengilustrasikan bagaimana jangkauan alamat untuk
EPROM ini ditetapkan dengan menuliskan bit alamat yang dikodekan secara
eksternal (A19-A11) dan bit alamat ditetapkan oleh EPROM (A10-A0) sebagai
don’t care. Sebagaiman contohnya mengilustrasikan, don’t care pertama ditulis
sebagai 0 untuk melokasikan alamat terendah dan kemudian sebagai 1 untuk
menemukan alamat tertinggi. Contoh 10-1 juga menunjukkan batas-batas bineri
ini sebagai alamat-alamat heksadesimal. Disini EPROM 2K diterjemahkan pada
lokasi alamat memori FF800H – FFFFFH. Perhatikan bahwa ini suatu Bagian 2K-
byte memori dan juga dilokasikan pada lokasi yang diset kembali unuk 8086/8088
(FFFFOH), tempat yang paling mungkin untuk EPROM.
CONTOH 10-1
1111 1111 1xxx xxxx xxxx
Atau
1111 1111 1000 0000 0000 = FF800H
Ke
1111 1111 1111 1111 1111= FFFFFH
Walaupun contoh ini bekerja untuk mengilustrasikan pengkodean, gerbang
NAND jarang digunakan untuk mengkodekan memori karena setiap peralatan
memori membutuhkan decoder gerbang NANDnya sendiri. Karena harga yang
sangat mahal.
74LS138
0
1
2
3
4
5
6
7
A
B
C
G2A
G2B
G1
OUTPUT
INPUT
SELEKTIF
ENABLE
SELEKTIF
GAMBAR 10-14 Dekoder
3 sampai 8 baris 74LS138
dan tabel fungsi
Input Output
Enable Pilih
AG2 BG2 G1 C B A 0 1 2 3 4 5 6 7
1 X X X X X 1 1 1 1 1 1 1 1
X 1 X X X X 1 1 1 1 1 1 1 1
X X 0 X X X 1 1 1 1 1 1 1 1
0 0 1 0 0 0 0 1 1 1 1 1 1 1
0 0 1 0 0 1 1 0 1 1 1 1 1 1
0 0 1 0 1 0 1 1 0 1 1 1 1 1
0 0 1 0 1 1 1 1 1 0 1 1 1 1
0 0 1 1 0 0 1 1 1 1 0 1 1 1
0 0 1 1 0 1 1 1 1 1 1 0 1 1
0 0 1 1 1 0 1 1 1 1 1 1 0 1
0 0 1 1 1 1 1 1 1 1 1 1 1 0
Gambar 10-15 Rangkaian yang menggunakan delapan EPROM 2764 pada
memori 64K x 8 dalam system berbasis mikroprosesor 8088. alamat yang dipilih
dalam rangkaian ini adalah F0000H-FFFFFH.
Dari decoder gate NAND dan inverter (pembalik) yang sering dibutuhkan, pilihan
ini membutuhkan sebuah alternative.
Dekoder 3-Sampai-8 Baris (74LS138)
Hal yang lebih umum, walaupun bukan satu-satunya, dari decoder sirkuit terpadu
yang dijumpai dalam banyak system berbasis mikroprosesor adalah 74L138 3-to-
8 line decoder. Gambar 10-14 mengilustrasikan decoder ini dan tabel
kebenarannya.
Tabel kebenaran menunjukkan bahwa hanya satu dari delapan keluaran
yang pernah turun rendah pada setiap waktu. Untuk keluaran decoder yang
manapun yang turun renadah, tiga input enable ( AG2 , BG2 , dan G1) harus aktif
semuanya. Untuk menjadi aktif, input AG2 dan BG2 harus rendah kedua-duanya
(logika 0), dan G1 harus tinggi (logika 1). Ketika 74LS138 diaktifkan, input
alamat (C, B, dan A) memilih output pin mana yang turun rendah. Bayangkan
delapan input EPROM CE dihubungkan dengan delapan output dari decoder. Ini
adalah peralatan yang sangat berdaya guna karena memilih delapan peralatan
memori yang berbeda pada waktu yang sama.
Sample Decoder Circuit (Sirkuit Dekoder Sampel) Perhatikan bahwa
decoder yang diilustrasikan pada Gambar 10-15 dihubungkan dengan delapan
peranti memori 2764 EPROM yang berbeda. Disini decoder memilih delapan 8K-
byte blok memori untuk total 64K-byte memori. Gambar ini juga
mengilustrasikan jangkauan alamat dari setiap peranti memori dan hubungan yang
umum dari peranti memori. Perhatikan bahwa semua hubungan alamat dari 8088
dihubungkan dengan sirkuit ini. Juga perhatikan bahwa keluaran decoder juga
dihubungkan dengan input CE dari EPROM. Hal ini memungkinkan hanya
EPROM tertentu yang dipilih saja yang diaktifkan dan mengirim datanya ke
mikroprosesor melalui bus data kapan saja RD menjadi logika 0.
Dalam sirkuit ini, gerbang NAND 3-masukan dihubungkan dengan bit
alamat A19-A17. jika semua dari ketiga alamat input tinggi, output dari gerbang
NAND ini turun rendah dan mengenable input BG2 dari 74LS138. Input G1
dihubungkan langsung dengan A16. Dengan kata lain, untuk mengaktifkan
decoder ini, empat hubungan alamat pertama ini (A19-A16) harus semua tinggi.
Alamat masukan C, B, dan A dihubungkan dengan pin alamat
mikroprosesor A15-A13. Ketiga input alamat ini menentukan output pin mana
yang turun rendah dan EPROM mana yang dipilih kapan saja 8088 memberi
output alamat memori di jangkauan ini ke sistem memori.
Contoh 10-2 menunjukkan bagaimana jangkauan alamat dari seluruh
decoder ditentukan. Perhatikan bahwa jangkauan adalah lokasi F0000H-FFFFFH.
Ini adalah jangkauan 64K-byte dari memori.
CONTOH 10-2
1111 XXXX XXXX XXXX XXXX
Atau
1111 0000 0000 0000 0000 = F0000H
Ke
1111 1111 1111 1111 1111 = FFFFFH
Bagaimana mungkin menentukan jangkauan alamat dari setiap peralatan
memori yang dilekatkan pada output decoder? Sekali lagi, pola bit biner
dituliskan, dan kali ini C, B, dan A input alamat bukan don’t care. Contoh 10-3
menunjukkan bagaimana output 0 dari decoder dibuat turun rendah untuk memilih
EPROM yang disambungkan pada pin itu. Disini C, B, dan A ditunjukkan sebagai
logika 0.
CONTOH 10-3
CBA
1111 000X XXXX XXXX XXXX
Atau
1111 0000 0000 0000 0000 = F0000H
Ke
1111 0001 1111 1111 1111 = F1FFFH
Jika jangkauan alamat dari EPROM dihubungkan ke output 1 dari decoder
yang dibutuhkan, hal itu ditetapkan dalam cara yang tepat sama seperti output 0.
satu-satunya perbedaan bahwa sekarang input C, B, dan A memiliki 001
menggantikan 000 (lihat contoh 10-4). Jangkauan alamat output yang tersisa
ditentukan dengan cara yang sama dengan menggantikan alamat biner dari pin
output kedalam C, B, dan A.
CONTOH 10-4
CBA
1111 001X XXXX XXXX XXXX
Atau
1111 0010 0000 0000 0000 = F2000H
Ke
1111 0011 1111 1111 1111 = F3FFFH
Dual 2-Sampai-4 Line Decoder (74LS139)
Dekoder yang laian yang menemukan beberapa aplikas adalah decoder 74LS139
dual 2-sampai-4 baris.
GAMBAR 10-16 Pin-out
Dan table kebenaran
74LS139, decoder 2
Samapi 4 baris ganda.
Dekoder Alamat PROM
Decoder alamat lain yang pernah popular adalah bipolar PROM, digunakan
karena jumlah koneksi inputnya yang besar, yang mengurangi jumlah dari sirkuit
yang dibutuhkan dalam system decoder alamat memori. Decoder 74LS138
memiliki enam input yang digunakan untuk hubungan alamat. Decoder PROM
bisa memiliki lebih banyak input untuk pengkodean alamat.
Sebagai contoh, PROM 82S147 (512 x 8) digunakan sebagai alamat
decoder yang memiliki 10 hubungan input dan 8 hubungan output, dapat
memindahkan sirkuit dalam Gambar 10-15 tanpa ekstra 3-input gerbang NAND.
Ini menghemat tempat pada papan sirkuit yang dicetak dan menguarangi biaya
system.
Gambar 10-17 mengilustrasikan decoder alamat ini dengan PROM pada
tempatnya. PROM adalah peralatan memori yang harus diprogramkan dengan
pola bit biner yang benar untuk memilih kedelapan peralatan memori EPROM.
PROMnya sendiri memliki sembilan input alamat yang memilih satu dari 512
lokasi memori internal 8-bit. Input sisa ( CE ) harus digroundkan karena jika
output PROM mengapung kekeadaan tahanan tinggi, maka satu atau lebih dari
EPROM mungkin dipilih dengan denyutan noise dalam system.
Tabel 10-1 mengilustrasikan pola bit biner yang diprogramkan kedalam
setiap lokasi PROM agar dapat memilih delapan EPROM yang berbeda. Manfaat
utama dalam menggunakan PROM adalah bahwa peta alamat dengan mudah
diubah dalam bidangnya. Karena PROM datang dengan semua lokasi yang
deprogram sebagai logika 1, hanya 8 dari 512 lokasi yang harus deprogram. Ini
menghemat waktu yang berharga dalam perbuatan.
Dekoder yang dapat Diprogram PLD
Subbab ini menerangkan dari peralatan logika yang dapat diprogram atau PLD
(Programmable Logic Device) sebagai decoder. Akhir-akhir ini, PAL telah
menggantikan decoder alamat PROM dalam antarmuka memori yang terkhir. Ada
tiga peralatan PLD yang berfungsi pada adsarnya dengan cara yang sama, tetapi
nama-nama yang berbeda. PLA (Programmable Logic Array = susunan logika
yang dapat diprogram), PAL (Programmable Array Logic = logika susunan
yang dapat diprogram), dan GAL (Gated Array Logic = logika susunan yang
diberi gerbang). Walaupun peralatan-peralatan ini telah ada sejak tahun 1970an,
baru akhir-akhir ini tampak dalam system-sistem memori dan design digital. PAL
dan PLA merupakan system fused-programming, sebagaimana dengan EPROM,
dan sebagian piranti PLD dapat dihapus, sebagaimana milik EPROM. Pada
dasarnya, semua dari ketiga peralatan itu adalah susunan dari elemen-elemen
logika yang dapat deprogram (programmable).
Combinatorial Programmable Logic Arrays (Array Logika yang
dapat Diprogram dengan Kombinasi)
Satu dari dua tipe dasar milik PAL adalah Combinatorial Programmable Logic
Arrays. Peralatan ini distruktur secara internal sebagai array yang dapat
deprogram dari sirkuit logika yang dapat dikombinasikan. Gambar 10-18
mengilustrasikan struktur internal dari PAL16L8 yang dikonstruksikan dengan
gerbang logika AND/OR (DAN/ATAU). Peralatan ini sangat umum, memiliki 10
input tetap, 2 output tetap, dan 6 pin yang dapat deprogram sebagai input dan
output. Setiap pin output dibangkitkan dari gerbang 7-input OR yang memiliki
gerbang AND yang
dilekatkan pada setiap input. Output dari gerbang OR lewat melalui inverter
(pembalik) tiga-keadaan yang mendefinisikan setiap out sebagai fungsi AND/OR.
Pada mulanya, semua fuse (sekering) ini menghubungkan semua hubungan
vertical/horizontal yang diilustrasikan dalam Gambar 10-17. Pemrograman
dicapai dengan memutuskan sekering untuk menghubungkan input yang
bervariasi ke susunan gerbang OR. Fungsi yang di AND-kan ditampilkan pada
setiap hubungan input yang memungkinkan persyaratan produk sampai 16 input.
Ekspresi logika menggunakan PAL16L8 dapat memiliki 7 persyaratan produk
dengan 16 input yang diNORkan bersama untuk membangkitkan ekspresi output.
Peralatan ini ideal sebagai decoder alamat memori karena strukturnya. Juga
idealnya karena output aktif rendah.
Untungnya, kita tidak harus memilih sekering dengan nomor
pemrograman, sebagaimana biasanya jika peralatan ini diperkenalkan pertama
kali. Saat ini memprogram PAL menggunakan paket perangkat lunak seperti
PALASM, program assembles PAL. Contoh 10-5 menunjukkan program yang
mengkodekan area yang sama dari memori sebagaimana dikodekan dalam
Gambar 10-16. perhatikan bahwa program ini dikembangkan menggunakan editor
teks seperti EDIT, yang tersedia dengan Microsoft DOS persi 7.0 atau Notepad,
dalam windows 95. program juga dapat dikembangkan menggunakan paket editor
PALASM atau program assembler PAL lain manapun. Penggunaan berbagai
editor untuk memudahkan tugas dari pendefinisian pin, tapi penulis percaya
adalah lebih mudah menggunakan EDIT dan listing sebagai tertulis dibawah.
CONTOH 10-5
TITLE Address
PATTERN Test 1
REVISION A
AUTHOR Barry B. Brey
COMPANY BreyCo
DATE 6 / 6 / 99
CHIP DECODER1 PAL16L8
;pins 1 2 3 4 5 6 7 8 9 10
A19 A18 A17 A16 A15 A14 A13 NC NC GND
;PINS 11 12 13 14 15 16 17 18 19 20
NC 08 07 06 05 04 03 02 01 VCC
EQUATIONS
/01 = A19 * A18 * A17 * A16 * /A15 * /A14 * /A13
/02 = A19 * A18 * A17 * A16 * /A15 * /A14 * A13
/03 = A19 * A18 * A17 * A16 * /A15 * A14 * /A13
/04 = A19 * A18 * A17 * A16 * /A15 * A14 * A13
/05 = A19 * A18 * A17 * A16 * A15 * /A14 * /A13
/06 = A19 * A18 * A17 * A16 * A15 * /A14 * A13
/07 = A19 * A18 * A17 * A16 * A15 * A14 * /A13
/08 = A19 * A18 * A17 * A16 * A15 * A14 * A13
Kedelapan baris yang pertama dari program yang diilustrasikan dalam
Contoh 10-5 mengidentifikasikan judul program, pola, pembuat, perusahaan,
tanggal, dan tipe chip dengan nama program. Walaupun normal untuk
menemukan entri dari setiap judul, satu-satunya entri yang benar-benar penting
adalah pernyataan CHIP. Dalam contoh ini, tipe chip adalah PAL16L8 dan
programnya disebut sebagai DECODER1.sesudah program diidentifikasikan,
pernyataan komentar (;pins) mengidentifikasikan nomor-nomor pin. Dibawah
pernyataan komentar ini terlihat pin sebagaimana didefinisikan dalam aplikasi ini.
Ketika semua pin didefinisikan, kita menggunakan pernyataan EQUATIONS
untuk menunjukkan bahwa persamaan tersebut mwngikuti aplikasi. Dalam contoh
ini, persamaan mendefinisikan delapan output enable chip untuk delapan peranti
memori EPROM. Lihat Gambar 10-19 untuk diagram skema lengkap dari decoder
PAL ini.
Perhatikan bahwa setiap pernyataan menunjuk satu pin output rendah yang
aktif sebagaimana didefinisikan dengan / di depan nama pin-contohnya, /O1
digunakan untuk menggantikan 1O . Kita biasanya meletakkan garis atas diatas
output rendah aktif, tapi tidak mungkin ketika mengetiknya, jadi garis miring
didepan pin digunakan untuk menunjukkan output rendah aktif. Dalam contoh ini,
semua output adalah rendah aktif karena PAL16L8, yang hanya memiliki output
rendah aktif. Peralatan PAL lain tersedia dengan output tinggi aktif, jika
diperlukan. Normalnya, sema pin didefinisikan sebelum pernyataan persamaan
sebagai tinggi aktif.
Symbol-simbol logika yang digunakan dalam persamaan PAL termasuk *
untuk operasi AND. Jika input tunggal diubah, / ditempatkan didepan nama pin.
Jika sebuah grup harus diubah, maka garis miring ditempatkan didepan grup itu
yang dilingkupi tanda kurung-contohnya, /(A+B) adalah sama dengan BA ,
fungsi NOR. Fungsi NAND akan menjadi /(A*B) yang sama dengan BA* .
Mari kita memeriksa pernyataan pertama dalam Contoh10-15. output pin
/O1 adalah aktif rendah, yang berarti jika logika 0, mengaktifkan PROM dalam
Gambar 10-18 jika pernyataan, pada sisi laian dari tanda yang sama, adalah benar.
Persamaan untuk output ini menganduh sejumlah input yang diANDkan bersama.
Dalam contoh ini, jika A19, A18, A17, dan A16 semua satu disaat A15, A14, Dan
A13 semua rendah, pin keluaran /01 menjadi logika 0. nomor biner ini
berhubungan dengan lokasi memori F0000H-F1FFFH.
ANTARMUKA MEMORI 8088 DAN 80188 (8-BIT)
Teks ini memiliki subbab yang terpisah pada antarmuka memori untuk 8088 dan
80188 dengan bus data 8-bitnya; 8086, 80186, 80286, dan 80386SX dengan bus-
bus data 16-bitnya; 80386DX dan 80486 dengan bus-bus data 32-bit; dan Pentium
II dengan bus data 64-bit. Diberikan subbab terpisah karena metode yang
digunakan untuk mengalamatkan memori sedikit berbeda dalam mikroprosesor
yang memiliki bus data berbeda. Para insinyur perangkat keras atau teknisi yang
ingin mengembangkan keahliannya dalam mengantarmukakan memori 16-bit, 32-
bit, dan 64-bit harus mempelajari semua subbab. Subbab ini jauh lebih lengkap
lagi daripada subbab antarmuka memori 16-bit dan 32-bit, yang meliputi memori
yang tidak ada dalam subbab 8088/80188.
Dalam subbab ini, kita memeriksa antarmuka memori untuk RAM dan
ROM dan menerangkan pengeekan paritas, yang masih digunakan dalam banyak
system computer berbasis-mikroprosesor. Kita juga dengan singkat menyebutkan
skema koreksi kesalahan yang sekarang tersedia untuk perancangan system
memori.
Dasar Antarmuka Memori 8088/80188
Kedua mikroprosesor 8088 dan 80188 ini memiliki bus data 8-bit, yang
membuatnya ideal untuk dihubungkan ke peralatan memori 8-bit yang ada
sekarang ini. Ukuran memori 8-bit membuat 8088 dan terutama 80188 ideal
sebagai pengontrol sederhana. Agar 8088/80188 berfungsi baik dengan memori,
maka system memori harus mendekodekan alamat untuk memilih komponen
memori, dan harus mamakai RD , WR , dan sinyal-sinyal control IO/ M yang
diberikan oleh 8088/80188 untuk mengontrol system memori.
Konfigurasi mode yang minimum digunakan dalam subbab ini dan pada
dasarnya sama dengan system mode maksimum untuk antarmuka memori.
Perbedaan utama adalah bahwa, pada mode maksimum, IO/ M dikombinasikan
dengan RD untuk membangkitkan sinyal MRDC dan IO/ M dikombinasikan
dengan WR untuk membangkitkan sinyal MWTC . Sinyal-sinyal control mode
maksimum ini, dikembangkan dalam pengontrol bus 8288. dalam mode
minimum, dapat melihat 8088/80188 sebagai peralatan dengan 20 hubungan
alamat (A19-A0), 8 hubungan bus data (AD7-AD0) dan sinayl-sinyal control
IO/ M , RD , dan WR .
Mengemukakan EPROM ke 8088. anda akan menemukan subbab ini sangat
mirip dengan subbab 10-2 pada decoder. Satu-satunya perbedaan adalah, dalam
subbab ini, kita mendiskusikan keadaan tunggun (wait) dan penggunaan sinyal
IO/ M untuk mengektifkan decoder:
Gamabar 10-20 mengilustrasikan mikroprosesor 8088/80188 yang
dihubungkan dengan delapan EPROM 2732, peralatan memori 4K x 8 yang
digunakan sangat umum saat ini. 2732 memiliki satu tambahan input alamat
(A11) daripada 2716, dan dua kali memori. Peralatan dari ilustrasi ini
mendekodekan delapan 4K x 8 blok memori, untuk total 32K x 8 bit dari ruangan
alamat fisik untuk 8088/80188.
Dekoder (74LS138) dihubungkan berbeda dari yang diduga karena versi
yang lebih lamabat dari EPROM ini memiliki waktu akses memori 450 ns. Ingat
kembali dari bab 8 bahwa jika 8088 dioperasikan dengan clock 5MHz,
memungkinkan 460 ns untuk memori mengakses data. Karena penundaan waktu
tambahan decoder (12 ns), adalah tidak mungkin untuk memori ini berfungsi
dalam 460 ns. Agar dapat mengoreksi problem ini, kita harus menambahkan
sebuah gerbang NAND untuk membangkitkan sinyal untuk meng-enable decoder
dan sebuah sinyal untuk generator keadaan menunggu, diliput dalam bab 8.
(Perhatikan bahwa 80188 dapat secara internal memasukkan dari keadaan
menunggu 0-15 tanpa perangkat eksternal tambahan, sehingga tidak
membutuhkan gerbang NAND ini.) Dengan sebuah keadaan menunggu
dimasukkan setiap kali bagian memori ini 8088 akan memungkinkan 660 ns dari
EPROM untuk mengakses data. Mengingat bahwa keadaan menunggu ekstra
menambahkan 200 ns (1 clock) kepada waktu akses. 660 ns adalah waktu yang
banyak untuk sebuah komponen memori 450 ns untuk mengakses data, bahkan
dengan penundaan yang diberikan oleh decoder dan buffer manapun yang
ditambahkan kepada bus data.
Perhatikan bahwa decoder dipilih dari jangkauan alamat memori yang
dimulai pada lokasi F8000H dan diteruskan melalui lokasi FFFFFH-32K bytes
atas dari memori. Bagian memori ini adalah sebuah EPROM karena FFFF0H
adalah dimana 8088 mulai mengeksekusi instruksi sesudah perangkat keras diset
kembali. Kita sering menyebut lokasi FFFF0H lokasi cold-start (start dingin).
Perangkat lunak yang disimpan dalam memori ini akan mengandung instruksi
JMP pada lokasi FFFF0H yang melompat ke lokasi F8000H sehingga sisa dari
program dapat dilaksanakan.
Mengantarmuka RAM ke 8088. RAM sedikit lebih mudah ditemukan
daripada EPROM karena sebagian besar memori tidak membutuhkan keadaan-
keadaan menunggu. Sebuah Bagian yang ideal dari memori untuk RAM adalah
yang dasar, yang mengandung vector interrupt. Vector interrupt (didiskusikan
dengan lebih rinci dalam Bab 11) sering dimodifikasi dengan perangkat lunak,
karenanya cukup penting untuk memberi kode bagian ini dengan RAM.
Dalam Gambar 10-20, 16 62256 32K x 8 RAM statis di antarmuka ke
8088, dimulai pada lokasi memori 00000H. papan sirkuit menggunakan dua
decoder untuk memilih enam belas komponen memori RAM yang berbeda dan
sepertiga untuk memilih decoder-dekoder lain untuk Bagian-bagian memori yang
sesuai. Enam belas 32K milik RAM mengisi memori dari lokasi 00000H melalui
lokasi 7FFFFH, untuk 512K byte memori.
Decoder pertama (U4) dalam sirkuit ini memilih dua decoder lainnya.
Alamat dimulai dengan 00 memilih decoder U3, dan alamat yang mulai dengan 01
memilih decoder U9. perhatikan bahwa pin ekstra tetap pada output dari decoder
U4 untuk penambahan di masa depan. Ini memungkinkan lebih banyak RAM
256K x 8 blok, untuk total 1M x 8, hanya dengan menambah RAM dan decoder
sekunder tambahan.
Juga perhatikan dari sirkuit dalam Gambar 10-21 bahwa semua masukan
alamat untuk Bagian memori ini diberikan buffer sebagaimana yang dilakkan
pada penghubung bus data dan sinyal control RD dan WR. Buffer penting jika
banyak peralatan muncul pada papan tunggal atau pada system tunggal. Andaikan
tiga papan lain seperti ini dihubungkan ke dalam system. Tanpa buffer pada setiap
board, beban pada system alamat, data, dan bus control akan cukup untuk
menghalangi operasi yang sesuai. (Pembebanan yang berlebihan menyebabkan
output logika 0 meningkat diatas 0,8 V maksimum yang dibolehkan dalam
system.) Buffer normalnya digunakan jika memori mengandung tambahan pada
tanggal masa depan. Jika memori tidak pernah tumbuh, maka buffer bisa tidak
dibutuhkan.
Mengantarmuka Flash Memory
Memori flash (EEPROM) menjadi tempat yang biasa untuk menyimpan informasi
yang ditetapkan pada kartu video, juga untuk menyimpan sitem BIOS dalam
computer pribadi. Memori flash juga ditemukan dalam banyak aplikasi lain untuk
menyimpan data yang hanya kadang-kadang saja digantikan.
Satu-satunya perbedaan antara peralatan memori flash dan SRAM adalah
peralatan memori flash juga membutuhkan voltage pemrograman 12 V untuk
menghapus data dan menulis data baru. 12 V dapat tersedia pada penyedia tenaga,
maupun pengubah 5 V-menjadi-12 V yang dirancang untuk digunakan pada flash
memori.
Gambar 10-22 mengilustrasikan sebuah 28F400 Intel peranti flash memori
yang diantarmukakan ke flash memori mikroprosesor 8088. 28F400 dapat
digunakan baik sebagai peranti memori 512K x 8 maupun sebagai peranti memori
526K x 16. karena diantarmukakan ke 8088, konfigurasinya menjadi 512K x 8.
perhatiakan bahwa penghubung control pada peranti ini identik dengan SRAM-
CE , OE , dan WE . Satu-satunya pin yang baruadalah Vpp, yang dihubungkan
dengan 12 V untuk menghapus dan memrogram: PWD , dan BYTE , yang
memilih operasi bit (0) atau kata (1). Perhatkan fungsi pin DQ15 sebagai masukan
alamat LSB jika dioperasikan dalam mode byte. Perbedaan yang lain adalah
jumlah waktu yang dibutuhkan untuk mendapatkan operasi penulisan. SRAM
dapat menampilkan operasi penulisan dalam < 10 ns, tapi memori flash
membutuhkan lebih kurang 0,4 detik untuk menghapus satu byte. Topic untuk
memprogramkan memori flash diliput dalam Bab 10, bersama dengan peranti I/O.
peranti flash memori memiliki beberapa register internal dan diproram
menggunakan teknik-teknik I/O belum diterangkan. Bab ini berkonsenterasi pada
antarmukanya ke mikroprosesor.
Perhatikan dalam Gambar 10-22 bahwa decoder yang dipilih adah
74LS139, karena hanya sebuah decoder sederhana dibutuhkan untuk peranti flash
memori sebesar ini. Decoder menggunakan penghubung alamat A19 dan IO/ M
sebagai input-input. Sinyal A15 memilih flash memori untuk lokasi-lokasi
80000H melalui FFFFFH, dan IO/ M mengaktifkan decoder.
Paritas Untuk deteksi Kesalahan Memori
Karena memori besar seperti itu dalam system saat ini, dan karena biaya sirkuit
minimal, banyak pembuat papan memori menambahkan pengecek ke papan
paritas memori RAM mereka, walaupuna akhir-akhir ini ada kecenderungan
menjauhi paritas. Pengecekan paritas menghitung jumlah dari 1 dalam data dan
menunjukkan apakah ada nomor genap atau ganjil. Jika semua data disimpan
dengan perilaku genap (dengan nomo genap dari 1-bit), kesalahan 1-bit dapat
dideteksi. Memori yang memiliki paritas selebar 9-bit atau lebar 36-bit, untuk
momponen-komponen SIMM (Single-In-Line Memory Module) 72-pin yang lebih
baru didapatkan dalam system computer.
Gambar 10-23 mengilustrasikan generator paritas 74AS280/detector
integrated circuit (sirkuit yang dipadu dengan detector). Sirkuit ini memiliki
sembilan input dan membangkitkan paritas genap atau ganjil untuk nomor 9-bit
yang ditempatkan pada input-inputnya. Juga mengecek paritas dari nomor 9-bit
yang dihubungkan dengan input-inputnya.
Gambar 10-24 mengilustrasikan system RAM statis 64K x 8
menggunakan dua peranti SRAM 62556 32K x 8 untuk penyimpanan data yang
memiliki generasi dan deteksi paritas. Perhatikan bahwa 74AS280
membangkitkan bit paritas yang disimpan didalam SRAM 6287 64K x 1. sirkuit
ini mendekodekan dari memorimemori pada lokasi 800000H-8FFFFH
menggunakan decoder 74LS138. disini delapan hubungan bus data disambungkan
pada (U6) masukan A-H generator paritas. Masukan 1 di-ground-kan, sehingga
nomor genap dari milik 1 terlihat pada bus data, sebuah 1 (pada output genap)
disimpan dalam paritas RAM. Jika nomor ganjil dari milik 1 terlihat, 0 disimpan
dalam paritas RAM. Disini paritas ganjil disimpan untuk setiap byte data,
termasuk bit paritas yang ditulis ke memori.
Jika data dibaca dari memori, setiap data dihubungkan ke 74AS280 (U7)
lain untuk mengecek paritasnya. Dalam kasus ini, semua input ke pengecek
dihubungkan. Masukan A-H dihubungkan ke data output RAM, dan masukan 1
dihubungkan dengan paritas RAM. Perhatikan bahwa paritas RAM pin control
berbeda. SRAM ini membaca data dan pin keluarannya jika memilih dan menulis
data jika dipilih dengan WE = 0. Tidak
Memiliki penghubung OE untuk RD . Jika paritas ganjil, sebagaimana adanya
jika dipilih dengan WE = 0. Tidak memiliki hubungan OE untuk RD . Jika satu
bit dari informasi yang dibaca dari memori berubah untuk alasan apapun, maka
pin output genap dari 74AS280 akan menjadi logika 1. pin output paritas
dihubungkan dengan memasukkan khusus dari 8088 yang disebut nonmaskable
interrupt (NMI = interrupsi yang tidak dapat disamarkan) input. Input NMI tiak
pernah dapat dimatikan. Jika ditempatkan pada level logika 1-nya, program yang
sedang dieksekusi diintrupsi, dan subrutin khusus menunjukkan bahwa kesalahan
paritas telah dideteksi oleh sistem memori. (Rincian yang lebih banyak dalam
intrruput diberikan pada Bab 11.)
Aplikasi dari kesalahan paritas diukur waktunya sehingga data yang dibca
dari memori ditetapkan kepada keadaan finalnya sebelum sebuah inout NMI
terjadi. Operasi diukur waktunya oleh flip-flop bertipe-D yang menyambungkan
output pengecek paritas pada akhir dari lingkaran RD dari bagian memori ini.
Dengan cara ini, memori mempunyai cukup waktu membaca informasi dan
melewati generator sebelum output generator disampelkan oleh masukan NMI.
KOREKSI KESALAHAN
Skema-skema koreksi keslahan telah ada cukup lama, tapi para pembuat
integrated circuit hanya akhir-akhir ini memulai menghasilkan sirkuit-sirkuit
pengoreksi-kesalahan. Satu dari sirkuit seperti itu adalah 74LS636, sebuah
pengoreksi kesalahan 8-bit dan
Sirkuit deteksi yang mengoreksi kesalahan pembacaan memori bit-tunggal
manapun dan memberi flag kesalahan 2-bit manapun. Peralatan ini ditemukan
dalam sistem computer berujung-tinggi karena biaya menerapkan system yang
menggunakan pengoreksi kesalahan.
74LS636 mengoreksi kesalahan dengan menyimpan lima bit paritas
dengan setiap byte data memori. Ini memang meningkatkan jumlah memori yang
dibutuhkan, tapi juga memberikan pengoreksi kesalahan otomatis untuk
kesalahan-kesalahan bit-tunggal. Jika lebih dari dua bit salah, sirkuit ini mungkin
tidak mendeteksinya. Untungnya, ini jarang, dan usaha ekstra yang dibutuhkan
untuk mengoreksi lebih dari kesalahan bit-gagal total, bit-bitnya semuanya tinggi
atau semuanya rendah. Dalam kasus ini, sirkuit memberi flag ke prosesor dengan
sebuaah indikasi kesalahan bit-banyak.
Gambar 10-25 menjelaskan pin-out dari 74LS636. perhatikan bahwa
memiliki delapan I/O pin-pin data, lima pin bit pengecek I/O, dua input control
(S0 dan S1), dan
Dua output salah; Single Error Flag (SEF=bendera kesalahan tunggal) dan double
error flag (DEF = bendera kesalahan-ganda). Input-input control memilih tipe
operasi untuk ditampilkan dan didaftarkan dalam table kebenaran dari table 10-2.
BHE (BLE)
FFFFFFFFFDFFFFB
000050000300001 00000
0000200004
FFFFAFFFFCFFFFE
Bank tinggi
(Bank ganjil)
Bank rendah
(Bank genap)
Catatan : A0 dilabeli BLE (bus
low enable) pada 80386SX
Jika satu kesalahan tunggal dideteksi, 74LS636 melalui lingkaran koreksi
kesalahan: menempatkan 01 pada S0 dan S1 dengan menyebabkan wait (tunggu)
dan kemudian pembacaan mengikuti koreksi kesalahan.
Gambar 10-26 mengilustrasikan sirkuit yang digunakan mengoreksi
kesalahan bit-tunggal dengan 74LS636 dan mengimtrupsikan prosesor melalui pin
NMI untuk kesalahan bit-logika. Untuk menyederhanakan ilustrasi, kami hanya
menjelaskan satu 2K x 8 RAM dan satu 2K x 8 RAM keduanya untuk menyimpan
kode cek 5-bit.
Hubungan dari komponen memori ini berbeda dari contoh sebelumnya.
Perhatikan bahwa S atau CS dibumikan, buffer bus data mengontrol aliran ke
bus sistem.
TABEL 10-2 Bit control S0 dan S1.
SO S1 Fungsi SEF DEF
0
0
1
1
0
1
1
1
Word cek tulis
Word koreksi data
Data baca
Data latch
0
*
0
*
0
*
0
*
*catatan: Tingkat ini ditentukan oleh tipe error.
GAMBAR 10-27 Bank memori 8-bit
Rendah (genap) dan tinggi (ganjil)
Pada mikroprosesor
8086/80286/80386SX.
Pada tepi negatif berikutnya dari clock sesudah satu RD , 74LS636
mengecek flag kesalahan-tunggal (SEF) untuk menentukan apakah sebuah
kesalahan telah terjadi. Jika demikian, maka sebuah lingkaran koreksi
menyebabkan cacat kesalahan-tunggal dikoreksi. Jika sebuah kesalahan-ganda
terjadi, maka sebuah permintaan interruput dibangkitkan oleh output flag
kesalahan-ganda (DEF), yang dihubungkan dengan pin NMI dari mikroprosesor.
10-4 ANTARMUKA MEMORI 8086, 80186, 80286, DAN 80386SX (16-BIT)
Mikroprosesor 8086, 80186, 80286, dan 80386SX berbeda dari 8088/80188 dalam
tiga hal: (1) Bus data dengan lebar 16-bit bukan 8-bit seperti pada 8088/80188, (2)
Pin IO/ M dari 8088/80188 digantikan oleh satu pin M/ IO , (3) Ada satu sinyal
control baru yang disebut bus high enable ( BHE ). Bit alamat A0 atau BLE juga
digunakan secara berbeda. Karena subbab ini berdasarkan pada informasi yang
diberikan dalam Subbab 100-3, adalah sangat penting Anda membaca subbab
sebelumnya terlebih dahulu. Beberapa perbedaan-perbedaan lain ada di antara
8086/80186 dan 80286/8038SX. Mikroprosesor 80286/80386SX memiliki bus
alamat 24-bit (A23-A0) bukan bus alamat 20-bit (A19-A0) dari 8086/80186.
8086/80186 mengandung sinyal M/ IO di mana sistem 80286 dan mikroprosesor
80386SX mengandung sinyal kontrol MRDC dan MWTC bukan RD dan WR .
Kontrol Bus 16-Bit
Bus data dari 8086, 80186, 80286 dan 80386SX adalah dua kali lebih besar dari
bus 8088/80188. bus data yang lebih besar ini memberikan kepda kita satu
kumpulan problem unik yang belum pernah dialami sebelumnya. 8086, 80186,
80286 dan 80386SX harus dapat menulis data kepada lokasi 16-bit manapun –
atau lokasi 8-bit manapun. Ini berarti bahwa bus data 16-bit harus dibagi dalam
dua bagian yang terpisah (bank-bank) yang mempunyai lebar 8-bit sehingga
mikroprosesor dapat menulis ke separuh bagian manapun (8-bit) atau kedua paruh
itu (16-bit). Gambar 10-27 mengilustrasikan kedua bank memori. Satu bank
(bank rendah) menahan semua lokasi memori bernamor-genap, dan bank lainya
(bank tinggi) menahan semua lokasi memori bernomor-gajil.
8086, 80186, 80286 dan 80386SX menggunakan sinyal BHE (bank tinggi)
dan bit alamat A0 atau BLE (bus low enable) untuk memilih satu atau kedua
bank dari memori yang digunakan untuk transfer data. Tabel 10-3 menerangkan
level-level logika pada dua pin ini dan bank atau bank-bank dipilih.
Seleksi bank didapatkan dengan dua cara: (1) sinyal penulisan terpisah
dikembangkan untuk memilih penulisan kepada setiap bank dari memori atau (2)
decoder terpisah digunakan untuk setiap bank. Sebagaimana perbandingan yang
berhati-hati mengungkapkan, teknik pertama adalah pendekatan yang paling kecil
biayanya untuk antarmuka memori pada mikroporsesor 8086, 80186, 80286 dan
80386SX.
Decoder-dekoder bank terpisah. Penggunaan decoder bank terpisah sering
merupakan cara yang paling tidak efektif untuk menerjemahkan alamat memori
dari 8086, 80186, 80286 dan 80386SX. Kebanyakan kasus menggunakan metode
ini/ salah satu alas an mungkin menghemat energi, karena hanya bank atau bank-
bank yang dipilih yang diaktifkan. Hal ini tidak selalu kasusnya dengan bank
terpisah pembacaan dan penulisan sinyal-sinyal, yang akan didiskusikan
kemudian.
Gambar 10-28 mengilustrasikan dua decoder 74LS138 digunakan untuk
memilih 64K RAM komponen-komponen memori untuk mikroprosesor 80386SX
(alamat 24-bit). Disini decoder U2 memiliki pin BLE (A0) yang disambungkan
pada G2A , dan decoder U3 memiliki sinyal BHE yang disambungkan pada input
G2A nya. Karena decoder tidak akan mengaktifkan samapi semua inputnya
enable aktif, decoder U2 hanya mengaktifkan operasi 16-bit atau operasi 8-bit dari
bank rendah, dan decoder U3 mengaktifkan opwrasi 16-bit atau operasi 8-bit bank
tinggi. Kedua decoder ini dan enam belas milik 64K RAM yang mereka control
mewakili satu jangkauan 1M dari sistem memori 80386SX. Decoder U1
mengenabelkan U2 dan U3 untuk jangkauan alamat memori 000000H-OFFFFFH.
Perhatikan dari Gambar 10-28 bahwa pin alamat A0 tidak mengubungkan
dengan memori; sebenarnya, bahkan tidak ada pada mikroprosesor 80386SX. Juga
perhatikan bahwa posisi bit bus alamat A1 dihubungkan dengan input alamat
memori A0, A2 dihubungkan dengan A1, dan selanjutnya. Alasannya adalah
bahwa A0 dari 8086/80186 (atau BLE dari 80286/80386SX) telah dihubungkan
dengan decoder U2 dan tidak butuh untuk dihubungkan lagi ke memori. Jika A0
atau BLE dihubungkan dengan memori pin alamat A0, setiap lokasi memori lain
dalam setiap bank memori akan digunakan. Ini berarti setengah memori
diboroskan jika A0 atau BLE dihubungkan dengan A0.
Strobe Penulisan Bank Terpisah. Cara yang paling efekti untuk menangani bank
seleksi adalah untuk meningkatkan strobe penulisan terpisah untuk setiap bank
memori. Tehnik ini membutuhkan hanya satu decoder untuk menyeleksi sebuah
memori lebar 16-bit. Ini sering menghemat uang dan mengurangi jumlah
komponen dalam sistem.
Mengapa tidak juga membangkitkan stobe penulisan terpisah dari setiap
bank memori? Ini biasanya tidak perlu, karena mokroprosesor 8086, 80186,
80286 dan 80386SX hanya membaca data byte yang dibutuhkan pada suatu waktu
dari setengah bus data. Jika bagian 16-bit dari data selalu diberikan kepada bus
data selama satu pembacaan, mikroprosesor mengabaikan bagian 8-bit yang tidak
dibutuhkannya tanpa konflik atau problem khusus apapun.
TABEL 10-3
Pemilihan bank
Memori
Menggunakan
BHE dan BLE
(A0).
BHE BLE (A0) Fungsi
0
0
1
1
0
1
0
1
Kedua bank dienabelkan untuk transfer 16-bit
Bank tinggi dienabelkan untuk transfer 8-bit
Bank rendah dienabelkan untuk transfer 8-bit
Tak ada bank yang dienabel
Gambar 10-29 menerangkan pembagkitan dari strobe penulisan 8086
terpisah dari memori. Disini satu gerbang gerbang OR 74LS32
mengkombinasikan A0 dengan WR untuk sinyal seleksi bank rendah ( LWR )
dan BHE dikombinasikan dengan WR untuk sinyal seleksi bank tinggi ( HWR ).
Strobe penulisan untuk 80286/80386SX dibangkitkan dengan menggunakan
sinyal MWTC bukan WR .
BHE
WR
A0
HWR
LWR
Sistem memori yang menggunakan strobe penulisan terpisah
dikontruksikan secara berbeda dari baik sistem 8-bit (8088) atau sistem
menggunakan bank-bank memori terpisah. Memori dalam satu sistem yang
menggunakan strobe penulisan terpisah diterjemahkan sebagai memori lebar 16-
bit. Sebagai contoh, andaikan bahwa sebuah sistem memori akan memiliki 64K
bytes dari memori SRAM. Memori ini membutuhkan dua peranti memori 32K
byte (62256) sehingga memori lebar 16-bit dapat dikontruksikan.
Gambar 10-29 Sinya;
memasukkan pemilihan penulisan
bank memori: HWR (high bank
write) dan LWR (low bank
write).
Karena memori memiliki lebar 16-bit, dan sirkuit lain membangkitkan sinyal-
sinyal penulisan bank, bit alamat A0 menjadi satu don’t care. Sebenarnya, A0
bahkan bukan merupakan satu pin pada mikroprosesor 80386SX.
Contoh 10-6 menunjukkan bagaiman sebuah memori lebar 16-bit disimpan
pada lokasi-lokasi 060000H-06FFFFH didekodekan untuk mikroprosesor 80286
atau 80386. memori dalam contoh ini didekodekan sehingga bit A0 adalah sebuah
don’t care untuk A0-A14. decoder (PAL 1618) memampukan kedua peranti
memori dengan menggunakan hubungan alamat A23-A15 untuk memilih memori
kapan saja alamat 06XXXXH kelihatan pada bus alamat.
Contoh 10-6
0000 0110 0000 0000 0000 0000 = 060000H
ke
0000 0110 1111 1111 1111 1111 = 06FFFFH
0000 0110 XXXX XXXX XXXX XXXX = 06XXXXH
Gambar 10-30 mengilustrisikan sirkuit sederhana ini menggunakan sebuah
PAL16L8 keduanya untuk mendekodekan memori dan membangkitkan strobe
penulisan terpisah. Program untuk decoder PAL16L8 diilustrasikan dalam Contoh
10-7. perhatikan bahwa tidak hanya memori ini dipilih, tapi kedua-duanya yaitu
strobe penulisan atas dan bawah juga dibangkitkan oleh PAL.
Contoh 10-7
TITLE Address Decoder
PATTERN Test 2
REVISION A
AUTHOR Barry B. Brey
COMPANY BreyCo
DATE 6/7/99
CHIP DECODER2 PAL16L8
;pins 1 2 3 4 5 6 7 8 9 10
A23 A22 A21 A20 A19 A18 A17 A16 A0 GND
;pins 11 12 13 14 15 16 17 18 19 20
BHE SEL LWR HWR NC NC MWTC NC NC VCC
EQUATIONS
/SEL = /A23 * /A22 * /A21 * /A19 * /A18 * /A17 *
/A16
/LWR = /MWTC * /A0
/HWR = /MWTC * / BHE
Gambar 10-31 menerangkan sistem memori kecil untuk mikroprosesor
8086 yang mengandung bagian EPROM dan bagian RAM. Disini ada empat
EPROM 27128 (16K x 8) yang membuat memori 32K x 16-bit pada lokasi
F0000-FFFFFH dan empat RAM 62256 (32K x 8) yang membuat memori 64K x
16-bit pada lokasi 0000H-1FFFFH. (Ingat walaupun memori lebar 16-bit, masih
dihitung dalam bytes.)
Sirkuit ini menggunakan sebuah 74LS139 dual dengan decoder 2-sampai-
4 line yang memilih EPROM setengahnya dan RAM setengahnya lagi.
Mendekodekan memori dengan lebar 16-bit, bukan 8-bit seperti sebelumnya.
Perhatikan bahwa strobe RD dihubungkan dengan semua input OE EPROM dan
semua pin input G RAM. Hal ini dilakukan karena bahkan jika 8086 hanya
membaca data 8-bit, aplikasi dari 8-bit kepada bus data tidak memiliki akibat pada
operasi 8086.
Strobe LWR dan HWR dihubungkan dengan bank-bank yang berada dari
memori RAM. Disini memang penting jika mikroprosesor melakukan penulisan
16-bit atau 8-bit. Jika 8086 menulis nomor 16-bit ke memori, kedua-duanya yaitu
LWR dan HWR turun rendah dan mengaktifkan pin W pada kedua bank
memori. Tapi jika 8086 melakukan penulisan 8-bit, maka hanya satu dari strobe
penulisan turun rendah, menulis ke hanya satu bank memori. Sekali lagi, satu-
satunya waktu dimana bank membuat perbedaan adalah operasi penulisan
memori.
Perhatikan bahwa sinya; decoder EPROM dikirim ke generator keadaan
tunggu 8086 karena memori EPROM biasanya membutuhkan keadaan menunggu.
Sinyal yang dating dari gerbang NAND digunakan untuk memilih bagian decoder
EPROM sehingga jika EPROM terpilih, sebuah keadaan menunggu diminta.
Gamabr 10-32 mengilustrasikan sistem memori yang dihubungkan dengan
mikroposesor 80386SX menggunakan PAL16L8 sebagai decoder. Antarmuka ini
mengandung 256K byte dari memori SRAM yang ditemukan dalam empat 62256
(32K x 8) milik SRAM.
Perhatikan dari gambar 10-32 bahwa PAL juga membangkitkan bank
memori menulis sinyal-sinyal LWR dan HWR . Sebagaimana bias dikutip dari
rangkaian ini, jumlah komponen yang dibutuhkan untuk mengantarmukakan
memori telah dikurangi mejadi hanya satu dalam kebanyakan kasus (PAL).
Pendaftaran program untuk PAL berlokasi dalam Contoh 10-8 PAL
mendekodekan alamat-alamat memori lebar 16-bit pada lokasi-lokasi 000000H-
01FFFFH untuk SRAM dan lokasi-lokasi FC0000H-FFFFFFH untuk EPROM.
GAMBAR 10-31 Sistem memori pada 8086 yang berisi EPROM 64K-byte dan SRAM
128-byte
Contoh 10-8
TITLE Address Decoder
PATTERN Test 3
REVISION A
AUTHOR Barry B. Brey
COMPANY BreyCo
DATE 6/8/99
CHIP DECODER3 PAL16L8
;pins 1 2 3 4 5 6 7 8 9 10
MWTC A0 A16 A17 A18 A19 A20 A21 A22 GND
;pins 11 12 13 14 15 16 17 18 19 20
NC HWR A23 BHE LWR RB0 RB1 EB1 EB1 VCC
EQUATIONS
/LWR = /A23 * /A0
/HWR = /MWTC * /BHE
/RB0 = /A23 * /A22 * /A21 * /A19 * /A18 * /A17 *
/A16
/RB1 = /A23 * /A22 * /A21 * /A19 * /A18 * /A17 *
/A16
/EB0 = A23 * A22 * A21 * A19 * A18 * A17
/EB1 = A23 * A22 * A21 * A19 * A18 * A17
10-5 ANTARMUKA MEMORI 80389DX DAN 80486 (32 BIT)
Seperti pada sistem memori 8-bit dan 16-bit, mikroprosesor mengantarmua ke memori
melalui data busnya dan sinyal control yang memilih bank memori terpisah. Satu-satunya
perbedaan dengan sistem memori 32-bit adalah bahwa mikroprosesor memiliki bus data
32-bit dan empat memori bank bukan satu atau dua. Perbedaan lainnya adalah kedua-
duanya yaitu 80386DX dan 80486 (keduanya, baik SX dan DX) mengandung alamat 32-
bit yang biasanya membutuhkan decoder PLD bukan terpadu dan decoder terpadu, karena
jumlah yang dapat diukur dari bit alamat.
Bank-bank Memori
Bank-bank memori untuk keduanya yaitu mikroprosesor 8038DX dan 80486
diilustrasikan pada Gamabr 10-33. Perhatikan bahwa system memori besar ini memiliki
empat bank lebar 8-bit dimana masing-masing memiliki sampai memori 1G byte. Seleksi
bank didaptkan dengan sinyal seleksi bank BE3 , BE2 , BE1 , dan BE0 . Jika nomor 32-
bit ditransfer, semua dari empat bank dipilih: jka nomor 16-bit ditransfer, dua bank
(biasanya BE3 , BE2 , BE1 , dan BE0 ) dipilih; dan jika 8-bit ditransfer, bank tunggal
terpilih.
Seperti halnya dengan 8086/80286/80386SX, 80386DX dan 80486
membutuhkan sinyal strobe penulisan terpisah dari setiap bank memori. Strobe penulisan
terpisah ini dikembangkan seperti yang diilustrasikan dalam Gamabr 10-34 menggunakan
gerbang OR sederhana atau komponen logika lainnya.
Antarmuka Memori 32-Bit
Sebagaimana bisa disimpulkan dari diskusi sebelumnya, sebuah antarmuka memori untuk
80386DX atau 80486 meminta kita membangkitkan empat strobe penulisan bank dan
juga mendekodekan alamat 32-bit. Tidak ada decoder terpadu, seperti 74LS138, yang
dengan mudah menampung antarmuka memori untuk mikroprosesor 80386DX atau
80486. perhatikan bahwa bit alamat A0 dan A1 adalah don’t care jika memori lebar 32-bit
didekodekan. Bit alamat ini digunakan di dalam mikroprosesor ini untuk membangkitkan
sinyal yang dapat diaktifkan oleh bank. Juga perhatikan bahwa A2 yang dihubungkan
dengan bus alamat menghubungkan ke pin alamat memori A0.
Gambar 10-35 menunjukkan system memori 256K x 8 untuk mikroprosesor
80486. antarmuka ini menggunakan delapan peranti memori 32K x 8 SRAM dan dua
peranti PAL16L8. dua peralatan dibutuhkan karena jumlah koleksi alamat yang ada paada
mkroprosesor. System ini mendapatkan SRAM pada lokasi 02000000H-0203FFFFGH.
Program untuk peralatan PAL ditemukan pada Contoh 10-9.
Contoh 10-9
TITLE Address Decoder
PATTERN Test 4 (PAL U1)
REVISION A
AUTHOR Barry B. Brey
COMPANY BreyCo
DATE 6/9/99
CHIP DECODER4 PAL16L8
;pins 12 3 4 5 6 7 8 9 10
MWTC BE0 BA1 BE2 BE3 A17 A28 A29 A30 GND
;pins 11 12 13 14 15 16 17 18 19 20
A31 RB1 U2 NC WR0 WR1 WR2 WR3 RB0 VCC
EQUATIONS
/WR0 = /MWTC * /BE0
/WR1 = /MWTC * /BE1
/WR3 = /MWTC * /BE2
/RB0 = /A31 * /A30 * /A29 * /A28 * /A17 * /U2
/RB1 = /A31 * /A30 * /A29 * /A28 * A17 * /U2
JUDUL Adress Decoder
PATERN Test 5 (PAL U2)
REVISION A
AUTHOR Barry B.Brey
PERUSAHAAN BreyCo
TANGGAL 6/10/99
CHIP DECODER5 PAL16L8
;pins 12 3 4 5 6 7 8 9 10
A18 A19 A20 A21 A22 A23 A24 A25 A26
;pins 11 12 13 14 15 16 17 18 19
A27 U2 NC NC NC NC NC NC VCC
EQUATIONS
/U2 = /A27 * /A26 * A25 * /A24 * /A23 * /A22 * /A21 * /A20 *
/A19 * /A18
Walaupun tidak disebutkan dalam subbab tulisan ini,mikroprosesor
80386DX dan 8046 beroperasi dengan kecepatan clock sangat tinggi yang
biasanya membutuhkan keadaan tunggu (wait states) untuk akses
memori.Kalkulasi waktu akses untuk mikroprosesor ini didiskusikan dalam bab
17 dan 18.Antarmuka memberikan sinyal yang digunakan dengan generator
keadaan tunggu tidak diilustrasikan dalam subbab teks ini.Peralatan-peralatan lain
yang ditemukan dalam mikroprosesor-mikroprosesor kecepatan lebih tinggi ini
adalah chace memory(penyimpanan) dan sistem-sistem interleaved memory.Ini
juga di berikan dalam Bab 17 dengan mikroprosesor 80386DX dan 80486.
ANTARMUKA MEMORI PENTIUM,PENTIUM PRO,DAN PENTIUM II
(64-BIT)
Mikroprosesor Pentium Pro,dan Pentium II (kecuali versi P24T),memiliki
bus data bus 64-bit,yang membutuhkan baik delapan decoder (satu per bank)
ataupun delapan sinyal penulisan terpisah.Dalam kebanyakan system,sinyal
penulisan terpisah yang digunakan dengan mikroprosesor ini jika
mengantarmukakan memori.Gambar 10-36 mengilustrasikan organisasi memori
Pentium dan delapan bank memorinya.Perhatikan bahwa ini hampir identik
dengan 8046 kecuali memiliki delapan bank bukan empat.
Sebagaimana pada versi-versi sebelumnya dari intel
mikroprosesor,organisasi ini dibutuhkan untuk kecocokan memori keatas.Sinyal
strobe penulisan terpisah didapatkan dengan mengkombinasikan sinyal bank
enable dengan MWTC,yang dibangkitkan dengan mengkombinasikan M/IO
dengan W/R.sirkuit yang dipakai untuk sinyal penulisan bank diperhatikan pada
gambar 10.37.sebagaimana dapat dibayangkan,kita sering menemukan PAL
byang digunakan untuk pembangkitan sinyal penulisan bank.
Antarmuka Memori 64-Bit
Gambar 10-38 mengilustrasikan system memori Pentium-pentium II
kecil.Sistem ini menggunakan PAL16L8 untuk mendekodekan alamat memori
dan PAL16L8 kedua untuk membangkitkan sinyal penulisan bank terpisah.Sistem
ini mengandung enam belas peralatan memori EPROM 27512 (64K*8) yang
diantarmukakan kepada Pentium-pentium II pada lokasi FF80000H-
FFFFFFFH.Ini adalah ukuran memori total dari 1M byte yang diatur sehingga
setiap bank memiliki dua komponen memori.Perhatikan bahwa Pentium pro dan
Pentium II dapat dikonfigurasikan dengan 36 penghubung alamat,yang
memungkinkan kepada 64G memori.
Pendekatan memori,sebagaimana diilustrasikan pada contoh 10-10,adalah
mirip dengan contoh sebelumnya kecuali terhadap Pentium-pentium II,bit alamat
tiga paling kanan (A2-A0)diabaikan.Dalam kasus ini,decoder memilih dua bagian
memori yaitu lebar 64-bit dan memiliki memori EPROM 512 byte.
Masukan alamat A0 dari setiap peralatan memori dihububgkan ke output
alamat memori yang dihubungkan ke output alamat A4 Pentium. Hubung kan
alamat miring ini terus sampai masukan alamat A15 ke memori dihubungkan
dengan output alamat A18 pentium. Posisi alamat A18-A28 didkodekan oleh
PAL16L8 U2, dan A29-A31 didekodekan oleh PAL16L8U1. Program untuk
kedua peralatan PAL didaftarkan dalam contoh 10-10 untuk lokasi-lokasi memori
FFF80000H-FFFFFFFH.
CONTOH 10-10
JUDUL Adress Decoder
PATTERN Test 6 (PAL UI)
REVISION A
AUTHOR Barry B.Brey
PERUSAHAAN Breyco
TANGGAL 6/11/99
CHIP DECODERS PAL16L8
;pins 1 2 3 4 5 6 7 8 9 10
A29 A30 A31 NC NC NC NC NC NC VCC
;pins 11 12 13 14 15 16 17 18 19 20
U2 CE NC NC NC NC NC NC NC VCC
EQUATIONS
/CE = /U2 * A29 * A30 * A31 JUDUL Adress Decoder
JUDUL Adress Decoder
PATTERN Test 7 (PAL U2)
REVISION A
AUTHOR Barry B.Brey
PERUSAHAAN Breyco
TANGGAL 6/12/99
CHIP DECODERS PAL16L8
;pins 1 2 3 4 5 6 7 8 9 10
A19 A20 A21 A22 A23 A24 A25 A26 A27 GND
;pins 11 12 13 14 15 16 17 18 19 20
A28 U2 NC NC NC NC NC NC U2 VCC
EQUATIONS
/U2 = A19 * A20 * A21 * A22 * A23 * A24 * A25 * A26 * A27 *
A28
RAM DINAMIS (DYNAMIC RAM)
Karena memori ram sering sangat besar, membutuh kan banyak piranti
SRAM dengan biaya besar atau hanya beberapa BRAM pada biaya yang jauh
lebih kecil memori DRAM, sebagai mana didiskusikan dengan singkat dalam
subbab 10-1, cukup kompleks karena membutuhkan multiplekser bagian alamat
dan refresh. Untungnya, para pembuat rangkaian terpadu telah memberikan
pengontrol RAM dinamis yang termasuk multiplekser alamat dan semua
pensirkuitan yang perlu untuk refresh.
Subbab dari teks ini meliputi peralatan memori DRAM dalam rinci yang
lebih banyak daripada dalam subbab 10-1 dan memberikan informasi untuk
penggunaan pengontrol dinamis dalam system memori.
Tinjauan Ulang DRAM
Sebagaimana disebutkan dalam Subbab 10-1,DRAM hanya menyimpan data
selama 2-4 ms dan membutuhkan multiplekser input alamat.Kita telah membahas
multiplekser input alamat.Kita telah membahas multiplekser alamat dalam subbab
10-1,tapi kita akan membahas operasi DRAM secara rinci dalam subbab ini.
Sebagaimana disebutkan sebelumnya ,DRAM harus direfresh secara
periodik karena menyimpan data secara internal pada kapasitor yang kehilangan
tenaganya dalam periode singkat.Agar dapat merefresh DRAM,isi dari bagian
memori harus secara periodik dibaca atau ditulis.Pembacaan atau penulisan bit
manapun secara otomatis merefresh seluruh bagian dari DRAM.Jumlah bit yang
direfresh tergantung pada ukuran komponen memori dan organisasi internalnya.
Siklus refresh didapatkan dengan mengerjakan pembacaan ,penulisan,atau
siklus perefresh khusus yang tidak membaca atau menulis data.Siklus perefresh
secara total internal ke DRAM dan didapatkan ketika komponen memori lainnya
dalam system beroperasi.Tipe perefresh ini disebut sebagai hidden
refresh(perefresh tersembunyi),transparent refresh (perefresh transparan),maupun
kadang-kadang cycle stealing(pencurian siklus).
Agar mengoperasikan perefresh tersembunyi dimana komponen memori
lainnya berfungsi,siklus RAS-only strobe satu alamat baris kedalam DRAM untuk
memilih sebaris bit untuk direfresh.Input RAS juga menyebabkan baris yang
terseleksi untuk dibaca secara internal dan ditulis kembali kedalam bit yang
dipilih.Ini menguatkan kembali kapasitor internal yang menyimpan data.Tipe
refresh ini tersenbunyi dari system karena itu terjadi jika mikroprosesor sedang
membaca atau menulis kepada bagian-bagian lain dari memori.
Gambar 10-40 mengilustrasikan pewaktuan untk siklus refresh RAS-
only,perbedaan utama antara RAS dan pembacaan atau penulisan adalah hal itu
diterapkan hanya pada alamat refresh,yang biasanya didapatkan dari penghitung
biner 7bit atau 8bit.Ukuran dari penghitung ditetapkan dengan tipe DRAM yang
sedang dei refresh.penghitung refresh ditingkatkan pada ujung dari setiap siklus
refresh,sehingga semua baris direfresh dalam 2 atau 4 ns,tergantung pada tipe
DRAM.
Jika ada 256 baris yang di refresh dalam 4ms,seperti dalam sebuah DRAM
256K*1,maka siklus refresh harus diaktifkan paling tidak sekali setiap 15,6 us,ini
berarti bahwa untuk setiap 19 pembacaan memori atau penulisan,system memori
harus melakukan siklus refresh atau data memori akan hilang.Ini mewakili
kehilangan 5 persen dari waktu computer sebuah harga kecil yang harus dibayar
untuk penyimpanan yang diwakili dengan menggunakan RAM dinamis.
MEMORI EDO
Suatu modifikasi kecil kepada struktur dari DRAM mengubah peralatan tersebut
menjadi DRAM EDO(extanded deata out=keluaran data yang diperluas).Dalam
EDO memori,akses memori manapun,termasuk perefresh,menyimpan 256 bit
yang dipilih oleh RAS ke dalam latch.Latch ini menyimpan informasi 256-bit
berikutnyasehingga dalam kebanyakan program yang secara berurutan di
eksekusi,data tersedia tanpa keadaan menunggu.Modifikasi kecil ini ke struktur
internal dari DRAM meningkatkan kinerja system hingga 15 sampai 25 persen.
SDRAM
Synchronus Dynamic RAM (SDRAM)digunakan pada sebagian besar
system yang baru dikarenakan kecepatannya.Versi yang ada dengan waktu akses
10 ns yang digunakan dengan bus system 66MHZ dan 8 ns digunakan untuk bus
system 100MHZ.Pertama kali,waktu akses piranti-piranti ini bekerja tanpa status
tunggu,tetapi itu tidak benar.Setelah itu,waktu akses DRAM adalah 60 ns dan
waktu akses SDRAM adalah 10 ns.wWaktu akses 10 ns memberikan pengertian
yang salah karena hanya dapat diterapkan pada pembacaan 64-bit yang
kedua,ketiga,dan keempat dari piranti.Pembacaan pertama memerlukan waktu
tunggu yang sama denga DRAM standar.
Pada saat pemindahan burst terjadi dari mikroprosesor ke
SDRAM,diperlukan tiga atau empat clock bus sebelum bilangan 64-bit pertama
dibaca.Setiap bilangan berikutnya dibaca tanpa status tunggu dan dalam setiap
satu siklus bus.Karena burst SDRAM membaca empat bilangan 64-bit,dan pada
bilangan kedua sampai keempat tidak memerlukan waktu tunggu dan dapatdibaca
dalam setiap siklus bus,SDRAM melebihi performa DRAM standar atau memori
EDO.Artinya bahwa jika memerlukan tiga siklus bus pada bilangan pertama dan
tiga lagi untuk btiga berikutnya,maka seluruhnya diperlukan tujuh clock bus
buntuk membaca empat bilangan 64-bit.Jika ini dibandingkan dengan DRAM
yang memerlukan tiga clock per bilangan,atau total 12 clock,anda dapat lihat
kecepatannya bertambah.Sebagian besar memperkirakan bahwa kinerja SDRAM
sekitar 10 persen lebih tinggi daripada memori EDO.
Pengontrol DRAM
Dalam kebanyakan system,rangkaian terpadu pengontrol DRAM
melakukan tugas multiplekser alamat dan pembangkitan sinyal control
DRAM.Beberapa mikroprosesor yang lebih baru seperti 80186/80188 termasuk
sirkuit refresh sebagai satu bagian dari mikroprosesor.Karena sangat kompleksnya
beberapa pengontrol DRAM yang lebih baru,teks ini memberikan penjelasan
secara rinci tentang intel 82C08,yang mengontrol sampai dua bank memori
DRAM 256K *16.Dengan mikroprosesor 8086/80386SX,ini dapat mencapai 1M
byte memori.
82C08 mengandung multiplekser alamat 18-bit kedalam 9 koneksi alamat
untuk peralatan memori 256K.Gambar 10-41 menunjukkan pin-out dari
pengontrol DRAM.Input alamat diberi label AL0-AL8 dan AH0-AH8. Output
alamat ke DRAM diberi label AO0-A08.82C08 memiliki sirkuit yang
membangkitkan sinyal CAS dan RAS untuk DRAM.Sinyal ini dibangkitkan
secara internal dengan sinyal CLK,S1,dan WR ke pengontrol DRAM
82C08.Sinyal AACK/XACK adalah output pengenalan yang digunakan untuk
menunjukkan kondisi siap dari mikroprosesor.Kaki-kaki tersebut secara normal
dihubungkan ke input READY dari mikroprosesor atau pembangkit denyut(clock)
SRDY.
Gambar 10-42 mengilustrasikan peralatan ini yang dihubungkan dengan
sederet empat modul memori SIMM 256K*8-bit (41256A8)yang membentuk
system memori byte 1M untuk mikroprosesor 80286.Sirkuit memori U3 dan U5
membentuk bank memori tinggi,dan U4 danU6 membentuk bank rendah.PAL
16L8 mengkombinasikan sinyal WE dari 82C08 dengan A0 untuk
membangkitkan sinyal dengan mengkombinasikan M/I0 dengan garis alamat
A20-A23 untuk mendekode atau bank lebih rendah (U5 dan U6) melalui
masukkan BS (bank select=seleksi bank) ke pengontrol DRAM 82C08.Contoh
10-11 menampilkan program untuk PAL 16L8 yang digunakan untuk seleksi dan
memory.
CONTOH 10-11
JUDUL
Adress Decoder
PATTERN
Test 7
;pins 1 2 3 4 5 6 7 8 9 10
WE BHE A0 A20 A21 A22 A23 NC NC GND
;pins 11 12 13 14 15 16 17 18 19 20
MTO NC NC NC NC NC HWR NC PE VCC
EQUATIONS
/HWR = /BHE * /WE/LWR = /A0 * /WE
/PE = /A20 * /A21 * /A22 * /A23 * MIO
RINGKASAN
1. Semua piranti memori mempunyai input alamat;input data dan output,atau
hanya output poin;pin untuk pemilihan;dan satu atau lebih pin yang
digunakan untuk mengontrol operasi memori.
2. Hubungan alamat pada komponen memori digunakan untuk menyeleksi
satu lokasi memeori dalam piranti.Sepuluh pin alamat mempunyai 1024
kombinasi dan oleh karena itu mampu mengalamatkan 1024 lokasi
memori yang berbeda.
3. Koneksi data pada memori digunakan untuk memasukkan informasi untuk
disimpan dalam lokasi memori dan juga untuk mencari kembali informasi
dari lokasi memori.Pabrik menuliskan memorinya,sebagai contoh
4K*4,yang berarti piranti mempunyai 4K lokasi memori (4096) dan bahwa
empat bit disimpan dalam setiap lokasi.
4. Pemilihan memori dilakukan melalui pin pemilihan chip (CS) pada banyak
RAM atau pin enable chip (CE) pada beberapa EPROM atau ROM.
5. Fungsi memori dipilih oleh pin output enable (OE) untuk membaca
data,yang normalnya untuk menghubungkan ke sinyal baca system (RD
atau MRDC),pin write enable (WE),untuk menulis data yang secara
normal menghubungkan sinyal tulis system (WR atau MWTC).
6. Memori EPROM diprogram olem pemrograman EPROM dan dapat
dihapus jika disinari cahaya ultraviolet, Sekarang, EPROM tersedia dalam
ukuran mulai 1K x 8 sampai 128K x 8 dan lebih besar lagi.
7. Flash memory (EEPROM) diprogram dalam system dengan menggunakan
pulsa pemrograman 12V.
8. RAM statis (SRAM) mengumpulkan data selama dihubungkan dengan
catu daya, Tipe memori ini terseddia sampai ukuran 128K x 8.
9. RAM dinamis (DRAM) menyimpan data hanya dalam waktu yang sangat
singkat, biasanya 2-4 ms. Hal ini menyebabkan masalah untuk perancang
dalam sistem memori karena DRAM harus direfresh secara periodik.
DRAM juga memultipleks input alamat yang memerlukan multi plekser
eksternal untuk menyediakan setiap setengah alamat pada waktu tertentu.
10. Dekoder alamat memori memilih EPROM atay RAM pad area memori
tertentu. Biasanya ditemukan dekoder alamat termasuk dekoder 3-to-8 line
74LS138, dekoder 2-to-4 line 74LS139, dan logika pemilihan yang
diprogram dalam bentuk PROM atau PLD.
11. Dekoder PROM dan alamat PLD untuk mikroprosesor seperti 8088
sampai Pentium II mengurangi jumlah rangkaian terpadu yang diperlukan
untuk melengkapi sistem memori.
12. 12.Antarmuka memori pada mode minimum 8088 berisi 20 line alamat, 8
line data, dan line kontrol: RD, WR, dan IO/M. memori 8088 berfungsi
dengan benar hanya jika semua line ini digunakan pada antar muka
memori.
13. Kecepatan akses EPROM harus kompatibel dengan mikroprosesor yang
disambungkan dengannya. Banyak EPROM yang ada saat ini mempunyai
waktu akses 450ns yang sangat lambat untuk 8088 5 Mhz. Untuk
mengatasi hal ini, maka status tunggu disisipkan untuk menambah waktu
akses memori menjadi 660ns.
14. 14.Pengecek paritas menjadi hal yang biasa dalam banyak sistem
mikrokomputer berdasarkan mikroprosesor.Bit ekstra disimpan pada
setiap byte memori sehingga lebar memori menjadi Sembilan bit,yang
tadinya delapan.
15. 15.Fitur koreksi kesalahan juga tersedia pada sistem memori,tetapi hal ini
memerlukan penyimpanan lebih banyak bit.Jika bilangan 8 bit disimpan
dengan rangkaian koreksi kesalahan-kesalahan,jumlah bit yang diperlukan
sebenarnya 13 bit dalam memori:lima untuk kode pengecekan kesalahan
dan delapan untuk data.Sebagian besar rangkaian terpadu koroksi
kesalahan mampu untuk mengoreksi hanya kesalahan bit tunggal.
16. 16.Antarmuka memori 8086/80286/80386SX mempunyai bus data 16 bit
dan berisi pin kontrol M/IO,sedangkan 8088 mempunyai bus data 8 bit dan
berisi pin IO/M.Disamping perubahan ini,ada juga sinyal kontrol ekstra
yaitu bus high enable (BHE).
17. 17.Memori 8086/80386/80386SX disusun dalam dua bank 8 bit bank
tinggi9 dan bank rendah.Bank tinggi dan memori diaktifkan oleh sinyal
kontrol BHE dan bank rendah diaktifkan oleh sinyal kontrol BLE.
18. 18.Dua skema yang ada untuk memilih bank dalam sistem berbasis
8086/80286/80386SX termasuk (1) dekoder vang terpisah untuk setiap
bank dan (2) sinyal kontrol WR yang terpisah untuk setiap bank dengan
dekoder yang sama.
19. 19.Lebar memori yang dihubungkan ke 80386DX dan 80486 adalah 32
bit,yang dipilih oleh bus alamat 32 bit.Karena lebar memori ini,maka
memori disusun menjadi empat bank memori yang lebarnya masing-
masing delapan bit.Sinyal pemilihan bank disediakan oleh mikroprosesor
seperti BE3,BE2,BE1,dan BE0.
20. 20.Memori yang dihubungkan ke Pentium-pentium II mempunyai nlebar
64 bit,yang dipilih oleh bus alamat 32 bit.Karena lebar memori ini,maka
memori disusun menjadi delapan bank memori yang lebarnya masing-
masing delapan bit.Sinyal pemilihan bank disediakan oleh mikkroprosesor
seperti BE7-BE0.
21. 21.Pengontrol RAM dinamis dirancang untuk mengontrol komponen
memori DRAM.Banyak pengontrol DRAM saat ini berisi multiplekser
alamat,refresh counter,dan rangkaian yang diperlukan untuk merefresh
memori DRAM secara periodik.
PERTANYAAN DAN SOAL
1. Tipe-tipe hubungan apa yang ada pada semua piranti memori?
2. Sebutkan jumlah word yang ada dalam setiap piranti memori untuk jumlah
hubungan alamat berikut ini:
a.8 c.12
b.11 d.13
3. Sebutkan jumlah data yang disimpan dalam setiap piranti memori berikut ini
dan jumlah bit dalam setiap data:
a.2K*4 d.16K*1
b.1K*1 e.64K*4
c.4K*8
4. Apa kegunaan dari pin CS atau CE pada lomponen memori?
5. Apa kegunaan dari pin OE pada komponen memori?
6. Apa kegunaan dari pin WE pada RAM?
7. Berapa byte dari penyimpanan yang diperlukan pada piranti memori EPROM
berikut ini yang berisi:
a.2708 d.2764
b.2716 e.27128
c.2732
8. Mengapa EPROM 450 ns tidak akan bekerja secara langsung dengan 8088 5
Mhz?
9. Berapa jumlah waktu yang diperlukan untuk menghapus dan menulis lokasi
dalam piranti flash memori?
10. SRAM merupakan kependekan dari tipe piranti apa?
11. Memori 4016 mempunyai pin G,pin S,dan pin W.Pin-pin ini digunakan untuk
apa dalam RAM?
12. Berapa waktu akses memori yang diperlukan oleh 4016 yang paling lambat?
13. DRAM singkatan dari piranti apa?
14. TMS-4464 mempunyai delapan input alamat,sekarang disebut DRAM
64K.Terangkan bagaimana alamat memori 16 bit dimasukkan kedalam delapan
input alamat.
15. Apa kegunaan input CAS dan RAS pada DRAM khusus?
16. Berapa lama waktu yang diperlukan untuk merefresh DRAM khusus?
17. Mengapa dekoder alamat memori penting?
18. Modifikasikan dekoder gerbang NAND pada gambar 10-13 untuk memilih
memori alamat pada daerah DF800H-DEFFFFH.
19. Modifikasikan dekoder gerbang NAND pada gambar 10-13 untuk memilih
memori alamat pada daerah 40000H-407FFH.
20. Kapan masukkan G1 tinggi,dan G2A dan G2B keduanya rendah,apa yang
terjadi pada keluaran dekoder 30-to-8 line 74LS138
21. Modifikasikan rangkaian pada gambar 10-15 untuk daerah memori alamat
70000H-7FFFFFH
22. Modifikasikan rangkaian pada gambar 10-15 ntuk daerah memori alamat
40000H-4FFFFH.
23. Gambarkan dekoder 74LS139
24. Mengapa dekoder alamat PROM sering ada dalam sistem memori?
25. Pemerograman kembali PROM dalam tabel 10-1 untuk mendekodekan daerah
alamat memori 80000H-8FFFFH.
26. Pemerograman kembali PROM dalam tabel 10-1 untuk mendekodekan daerah
alamat memori 30000H-3FFFFH.
27. Modifikasikan rangkaian dalam gambar 10-19 dengan penulisan kembali
program PAL untuk memori alamat pada lokasi 40000H-4FFFFH.
28. Modifikasikan rangkaian dalam gambar 10-19 dengan penulisan kembali
program PAL untuk memori alamat pada lokasi 40000H-4FFFFH.
29. Sinyal kontrol mode minimum RD dan WR digantikan oleh dua sinyal kontrol
68000-6FFFFH.
30. Modifikasikan rangkaian dalam gambar 10-20 untuk memilih memori pada
lokasi 68000-6FFFFH.
31. Modifikasikan rangkaian dalam gambar 10-20 untuk memilih delapan
2764EROM 8K x 8 pada lokasi memori 100000H-1FFFFH.
32. Tambahkan dekoder lainnya kerangkaian pada gambar 10-21 sehingga
delapan SRAM 62256 tambahan ditambahkan pada lokasi C0000H-FFFFFH.
33. Terangkan bagaimana paritas ganjil disimpan dalam sistem memori dan
bagaimana mengeceknya.
34. Rangkaian koreksi dan deteksi kesalahan 74LS636 menyimpan kode
pengecekan pada setiap data byte. Berapa byte disimpan sebagai kode
pengecekan?
35. Apa kegunaan pin SEF pada 74LS636?
36. 74LS636 akan membetulkan ……………….-bit yang merupakan suatu
kesalahan.