Bab 10

81
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

description

mikroprosesor

Transcript of Bab 10

Page 1: 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

Page 2: Bab 10

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.

Page 3: Bab 10

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),

Page 4: Bab 10

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

Page 5: Bab 10

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.

Page 6: Bab 10

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).

Page 7: Bab 10

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

Page 8: Bab 10

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

Page 9: Bab 10

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

Page 10: Bab 10

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.

Page 11: Bab 10

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.

Page 12: Bab 10

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

Page 13: Bab 10

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.

Page 14: Bab 10
Page 15: Bab 10
Page 16: Bab 10

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.

Page 17: Bab 10
Page 18: Bab 10
Page 19: Bab 10

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.

Page 20: Bab 10

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

Page 21: Bab 10

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

Page 22: Bab 10

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

Page 23: Bab 10

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.

Page 24: Bab 10

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

Page 25: Bab 10

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

Page 26: Bab 10

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.

Page 27: Bab 10

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

Page 28: Bab 10

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

Page 29: Bab 10

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,

Page 30: Bab 10

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

Page 31: Bab 10

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

Page 32: Bab 10

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

Page 33: Bab 10

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

Page 34: Bab 10

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

Page 35: Bab 10

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.

Page 36: Bab 10

(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

Page 37: Bab 10

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

Page 38: Bab 10

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

Page 39: Bab 10

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

Page 40: Bab 10

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.

Page 41: Bab 10

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

Page 42: Bab 10

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

Page 43: Bab 10

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

Page 44: Bab 10

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

Page 45: Bab 10

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.

Page 46: Bab 10

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

Page 47: Bab 10

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.

Page 48: Bab 10

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

Page 49: Bab 10

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

Page 50: Bab 10

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 .

Page 51: Bab 10

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

Page 52: Bab 10

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.)

Page 53: Bab 10

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.

Page 54: Bab 10

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.

Page 55: Bab 10
Page 56: Bab 10

GAMBAR 10-31 Sistem memori pada 8086 yang berisi EPROM 64K-byte dan SRAM

128-byte

Page 57: Bab 10
Page 58: Bab 10

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

Page 59: Bab 10

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.

Page 60: Bab 10

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

Page 61: Bab 10
Page 62: Bab 10

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

Page 63: Bab 10

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.

Page 64: Bab 10
Page 65: Bab 10

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

Page 66: Bab 10

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.

Page 67: Bab 10

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

Page 68: Bab 10

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

Page 69: Bab 10

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.

Page 70: Bab 10
Page 71: Bab 10

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.

Page 72: Bab 10

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

Page 73: Bab 10

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

Page 74: Bab 10

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

Page 75: Bab 10
Page 76: Bab 10

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.

Page 77: Bab 10

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

Page 78: Bab 10

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.

Page 79: Bab 10

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?

Page 80: Bab 10

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.

Page 81: Bab 10

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.