Anda di halaman 1dari 30

BAB 1

SPESIFIKASI PERANGKAT KERAS MIKROPROSESOR 8088/8086

1.1 PIN OUT DAN PIN FUNGSI


Pin out
Pin 8088/8086 hampir mirip dg perbedaan sebagai berikut:
1. 8086 adl mp 16 bit dg bus data 16 bit, 8088 adl mp 16 bit dg bus data
8 bit, 8086 >>> AD0 – AD15, 8088>>>>AD0-AD7
2. 8086 pin control memori I/O nya adl M/-IO sedang 8088 adl –IO/M
3. Pada pin 34 8086 adl –BHE/S7 sedang 8088 adl SSO

Pin out dari mikroprosesor 8086 dan 8088 bisa dilihat pada gambar 1.1

Gambar 1.1 Pin out dari mikroprosesor 8086 dan 8088

Kebutuhan power supply


VCC = 5 Volt ±10% dengan arus pasok mak 360 mA u 8086 dan 340
mA u 8088.Tersedia juga versi CMOS yaitu 80C86 dan 80C88 dengan
arus pasok sangat rendah 10 mA dan jangkauan suhu lebih besar.

Karakteristik DC
Karakteristik masukan>>> sesuai dengan semua komponen
berlogika standar yg tersedia saat ini.

Level logika Tegangan Arus


0 0,8 V mak ± 10 uA mak
1 2,0 V min ± 10 uA mak
Karakteristik Keluaran
Karakteristik keluaran dari 8086/8088
Level logika Tegangan Arus
0 0,45 V mak 2,0 mA mak
1 2,4 V mak -400 uA mak

Fan out yg direkomendasikan dari semua hubungan pin 8088/8086


Keluarga Arus sink Arus sumber Fan out
TTL 74 -1,6 mA 40 uA 1
TTL 74LS -0,4 mA 20 uA 5
TTL 74S -2,0 mA 50 uA 1
TTL 74ALS -0,1 20 uA 10
TTL 74AS -0,5 25 uA 10
TTL 74F -0,5 mA 25 uA 10
CMOS 74HC -10 uA 10 uA 10
CMOS CD4 -10 uA 10 uA 10
NMOS -10 uA 10 uA 10

Hubungan Pin

AD7-AD0 Jalur bus data/alamat 8088 termultipleks dan berisi 8 bit terkanan
dari alamat memori atau IO ketika ALE logika 1 atau data ketika
ALE logika 0, berada pada high impedansi selama hold
acknowledge
A15 – A18 bus alamat 8088 memberi bit alamat upper half memori, high
impedansi selama hold ack
AD15 – AD8 BUS data/alamat 8086 berisi data/addres termultiplek, berada
pada high impedansi selama hold acknowledge
A19/S6-A16/S3 bus addres/status termultiplek, berada pada high
impedansi selama hold acknowledge
-RD ketika sinyal baca berlogika 0 bus data menerima data dari
memori/IO, berada pada high impedansi selama hold
acknowledge
READY masukan ini dikontrol untuk memasukkan wait state ke dalam
pewaktuan MP, jika ready berlogika 0 MP memasuki wait state
dan menggangur, jika ready tinggi dia tak mempengaruhi
operasi MP.
INTR interrupt request dipakai untuk meminta interupsi perangkat
keras, Jika intr logika 1 ketika IF=1 MP memasuki siklus ack
interupsi (-INTA menjadi aktif), setelah intruksi terkini selesai
dilaksanakan
-TEST test adl masukan yg diuji oleh intruksi WAIT. Jika – TEST
berlogika 0, wait berfungsi sebagi NOP, Jika –TEST = 1 intruksi
wait menunggu test menjadi logika 0. Pin ini sering dikoneksikan
dg koprosesor numeric 8087.
NMI Hampir sama dg INTR, kecuali dia tidak mengecek IF =1.
RESET pin reset menyebabkan MP mereset dirinya jika pin ini tinggi
selama 4 periode clock, setelah direset MP akan melaksanakan
intruksi pada lokasi FFFF0H dan melumpuhkan intruksi
selanjutnya dg membuat IF =0
CLK memberikan sinyal pewaktu dasar kepada MP, sinyal pewaktu
harus punya siklus tugas 33%.
VCC power supply yaitu 5 V ± 10%
GND Adalah pengembalian dari power supply, kedua pin GND harus
dihubungkan dg ground
MN/-MX jika modus minimum yg dipilih maka pin MN/-MX dihubungkan dg
VCC
-BHE/S7 pin bus high enable digunakan untuk memungkinkan bus data
MSB (D15-D8) digunakan dalam operasi R/W, keadaan S7
selalu berlogika 1.

1.2 GENERATOR CLOCK (8284A)


Tanpa clock generator akan dibutuhkan banyak rangkaian tambahan
untuk membuat clock dalam st MP 8088/8086. 8284A memberikan fungsi-
fungsi dasar atau sinyal berikut, membuat clock, sinkronisasi reset,
sinkronisasi ready, dan sinyal clock periferal tingkat TTL. Pin-pin IC 8284
adalah seperti gambar berikut:

Fungsi-fungsi pin:
8284A adalah sirkuit terintegrasi 18 pin, yg dirancang khusus untuk
digunakan dg MP 8088/8086. Berikut adalah daftar dari pin dan fungsinya:
-AEN1 dan –AEN2: addres enable disediakan untuk memenuhi sinyal bus
ready RDY1 dan RDY2 masing-masing.
RDY1 dan RDY2: bus ready tersedia berhubungan dengan pin –AEN1
dan -AEN2 untuk menghasilkan wait state dalam system
berbasis MP8088/86
-ASYNC: pilihan masukan ready synkronisasi memilih salah satu dari 2
tingkat sinkronisasi untuk masukan RDY1 dan RDY2
READY: ready adalah pin out yang berhubungan ke masukan READY
8086/88. Sinyal ini disinkronisasi dengan masukan RDY1 dan
RDY2.
X1 dan X2: pin osilator Kristal dihubungkan dengan kristal eksternal yang
digunakan sebagai sumber pewaktuan untuk clock generator
dan semua fungsinya.
F/-C: masukan pilihan frekwensi/Kristal memilih sumber pewaktuan
untuk 8024A. Jika pin ini H maka clock eksternal disediakan
untuk masukan EFI. Jika keadaan rendah osilator Kristal internal
memberikan sinyal waktu.
EFI: Eksternal frekwensi input, digunakan ketika F/-C keadaan tinggi,
EFI memberikan pewaktuan ketika pin F/-C berkeadaan tinggi.
CLK: pin clock output memberikan sinyal masukan clock kepada MP
8086/88, dan komponen lain pada system. Pin CLK memberikan
sinyal keluaran 1/3 frekwensi Kristal atau EFI, dan mempunyai
siklus tugas 33%
PCLK: Peripheral clock adalah 1/6 dari frekwensi Kristal atau EFI dan
punya siklus tugas 50%. Keluaran PCLK memberikan sinyal
clock kepada peralatan dalam system.
OSC: osilator output adalah sinyal tingkat TTL yang berfrekwensi sama
dengan masukan Kristal atau EFI. Keluaran OSC memberikan
maukan EFI kepada clock generator 8284A lain dalam system
multiprosesor.
-RES : Reset output dihubungkan dengan 8086/88 pin masukan reset.
CSYNC: Clock sinkronisasi digunakan ketika masukan EFI memberikan
sinkronisasi dalam sistem dengan multiprosesor.
GND: dikoneksikan dengan ground
Vcc: power supply dikoneksi dengan +5V dengan toleransi 10%.

OPERASI 8084A
Operasi bagian clock. Hubungan generator clock dengan
mikroprosesor 8086/8088 bisa dilihat pda gambar berikut
1.3 Penyanggaan dan pengancingan bus
Bgmn pendemultiplekan bus termultiplek dan bgmn bus disangga
untuk system yang sangat besar.
Demultiplek bus
Tujuannya supaya mendapat alamat yg valid dan stabil selama siklus
baca dan tulis. Semua sistem computer mempunyai 3 bus yaitu bus alamat
yang menyediakan memori dan I/O dengan alamat memori atau nomor
port I/O, bus data dan bus control.

Demultiplek 8088
Memakai 2 transparan latch 74LS373 untuk mendemultiplek bus
alamat/data AD7-AD0 dan bus alamat/status A19/S6 – A16/S3. Pin G
dihubungkan dg pin ALE dan pin –OE dihubungkan dg ground. Demultiplek
MP 8088 bisa dilihat pada gambar berikut

Note: The eight latches of the DM74LS373 are transparent D type latches meaning that while the enable
(G) is HIGH the Q outputs will follow the data (D) inputs. When the enable is taken LOW the output will be
latched at the level of the data that was set up.

Demultiplek 8086
Pin yang didemultiplek adl AD15-AD0, A19/S6-A16/S3, dan BHE/S7,
diperlukan 3 IC 74LS373. MP 8086 dengan bus alamat terdemultiplek
dapat dilihat pada gambar berikut.
SISTEM TERSANGGA
Jika lebih dari 10 unit beban terpasang pada suatu pin bus seluruh
sisten 8088/8086 harus disangga. Pin yg didemultiplek telah disangga
74LS373. Arus keluaran penyangga sudah dinaikkan sehingga lebih
banyak beban yg bisa dijalankan.

8088 tersangga penuh.


A15-A8 disangga dg penyangga octal 74LS244, D7-D0 disangga dg
penyangga octal bidirectional 74LS245, sinyal bis control –IO/M, _RD, -WR
disangga dengan74LS244. Jadi system ini memakai 2 74LS244, 1
74LS245, dan 2 74LS373. Arah 74LS245 dikontrol oleh sinyal DT/-R dan
dihidupkan atau dimatikan dg sinyal DEN. Lihat gambar 9.7 halaman 329.
8086 tersangga penuh.
Pin addres disangga oleh latch 74LS373, bus data menggunakan 2
bus octal bidirectional 74LS245, dan sinyal bus control M/-IO, -RD, dan –
WR, menggunakan penyangga 74LS244. Jadi system 8086 tersangga
penuh membutuhkan 1 74LS244, 2 74LS245, 3 74LS373. Mikroprosesor
8086 tersangga penuh dapat dilihat pada gambar berikut.
1.4 PEWAKTUAN BUS
Dasar operasi bus
Lihat gambar 9.9 dan 9.10
Siklus tulis bus MP 8086/88 yang disederhanakan

PEWAKTUAN SECARA UMUM


Mp 8088/86 memakai memori dan I/O dalam periode yang disebut
siklus bus. Masing-masing siklus bus setara dengan 4 periode clock
(keadaan T)
Periode pertama dari siklus bus disebut T1, dan hal-hal yang terjadi
adlah: alamat dari memori atau I/O dikirim melalui saluran bus alamat dan
bus alamat/data. Pada T1 sinyal control ALE, DT/R, IO/-M, (8088), M/-IO
(8086) juga merupakan keluaran.
Pada T2, MP 8088/86 mengeluarkan sinyal –RD, -WR, -DEN,dan
dalam hal tulis, data yg ditulis muncul pada bus data. Ini mengakibatkan
memori atau IO mulai membaca atau menulis. Sinyal –DEN menghidupkan
penyangga bus (jika ada) shg memori atau IO bisa menerima data untuk
ditulis dan MP bisa menerima data untuk dibaca. Ready disampel pada
akhir T2 sep gb 9.11. Jika ready berkeadaan rendah pada periode ini T3
menjadi wait state. Kalau yang terjadi adalah siklus baca bus bus data
disample pada akhir T3.
Dalam T4 semua sinyal bus tak diaktifkan untuk persiapan siklus bus
selanjutnya.

PEWAKTUAN BACA
Lihat gambar 9.11
Pewaktu baca MP 8088 dan 8086 adalah identik kecuali 8086
mempunyai 16 busa data. Waktu akses memori berawal ketika alamat
muncul pada bus alamat memori dan berlanjut hingga MP mencacah data
memori pada T3. Kurang lebih tiga keadaan T berlaku antara pewaktuan
ini. Alamat tidak muncul selama periode T clav (110 ns untuk clock 5
MHz)setelah awal dari T1. Artinya periode dari Tclav harus dikurangi dari 3
state clock (600 ns) yang memisahkan tampilan dari alamat (T1) dan
sampel dari data T3. Waktu lain juga harus dikurangi periode setup data
(TDVCL) yang terjadi seblem T3. Shg periode akses memori menjadi 3 state
clock –( TDVCL- TCLAV)= 600-110-30 = 460 ns

TDVCL = data in setup time


TCLAV = address Valid delay

PEWAKTUAN TULIS
Lihat gambar 9.11

1.5 READY DAN WAIT STATE


Masukan ready menyebabkan wait state Tw untuk memori dan
komponen I/O yang lebih lambat Tw adalah suatu clok ekstra yang
diselipkan antara T2 dan T3 untuk menambah siklus bus.
Masukan READY
Masukan ready disample pada akhir T2 dan lagi, kalau dapat
dipakai ditengah ditengah Tw. Jika ready berlogika nol pada akhir T2
maka T3 ditunda dan Tw diselipkan antara T2 dan T3. ready kemudian
disample ditengah Tw untuk menetapkan apakah keadaan berikutnya
adalah Tw atau T3. Ready dites dengan suatu logika nol jika terjadi
perpindahan satu ke nol dari clock pada akhir T2 dan logika satu
unutk perpindahan 0 ke 1 dari clock di tengah Tw
9.8 PERTANYAAN DAN PERMASALAHAN

1. perbedaan antara MP 8088 dg 8086 adl:


8088 bus data 8 bit, 8086 bus data 16 bit , pin -SSO pada
8088 sebagi pengganti –BHE/S7 pada 8086, pin IO/-M pada 8088
sedang M/-IO pada 8086

2. Apakah 8086/8088 kompatible TTL: kompatibel, harus


didetailkan per tipe komponen sesuai data sheet
3. Apa fan out dari 8086/8088 untuk piranti berikut:
a. 74XXX TTL
b. 74ALSXXX TTL
c. 74HC XXX CMOS
4. informasi apa yg muncul pada data/ alamat saat ALE aktif pada
8088 >>> address
5. Apa manfaat bit status S3 dan S4>>> untuk menunjukkan
segmen mana yg diakses selama siklus bus saat ini.
6. Keadaan apa yg diindikasikan oleh logika 0 pada pin -RD 8086/8088
MP sedang membaca data dari memori atau IO
7. Terangkan operasi pin TEST dan Intruksi WAIT Jika –TEST
berlogika 0, intruksi wait berfungsi sbg NOP, Jika test berlogika 1 wait
menunggu test berlogika 0
8. Deskripsikan sinyal yg digunakan untuk pin masukan clock
dari MP 8088/8086
Gelombang persegi dengan siklus tugas 33%
9. Modus operasi apa yang dipilih jika MN/-MX berlogika 0 >>>>
modus maksimal
10. Apa yang diindikasikan sinyal strobe –WR dari 8088/8086
tentang operasi 8088/8086
8088/86 mengeluarkan data ke piranti memori atau IO,
Selama berlogika 0 bus data berisi data valid untuk memori dan IO
11. Kapan ALE mengambang pada keadaan impedansi tinggi>>>tidak
pernah mengambang
12. Jika DT/-R adalah logika 1, keadaan apa yang diindikasikan
tentang operasi 8086/88?
Menunjukkan MP sedang mengirim data
13. Apa yang terjadi ketika masukan HOLD ke 8088/86 pada level
logika tinggi
Mikroprosesor menghentikan eksekusi perangkat lunak serta
menempatkan bus addres data dan kontrol pada keadaan
impedansi tinggi

14. Tiga pin mode minimum 8088/86 yang didekode untuk mengetahui
apakah prosesor berhenti?

15. Terangkan operasi dari –LOCK>>>


Menunjukkan bahwa st master bus lainnya tidak dapat
dikontrol oleh st bus saat LOCK logika nol (aktif)Sinyal lock
diaktifkan oleh intruksi prefik lock sampai akhir intruksi
berikutnya.Sinyal ini aktif low dan mengambang ke 3 state off
pada hold ack.
16. Keadaan apa yang diindikasikan pin QS1 dan QS0?
Bit-bit status antrian

17. Ada 3 pekerjaan rumah yg diberikan oleh generator 8284A?


membuat clock, sinkronisasi reset, sinkronisasi ready, dan sinyal
clock periferal tingkat TTL.
18. Faktor berapa yang digunakan clock generator 8284A unutk
membagi frekwensi keluaran osilator Kristal.>>>>tiga
19. Jika pin F/-C ditaruh pada level logika 1 osilator Kristal tidak
aktif. Dimana sinyal masukan pewaktuan dipasang untuk 8284A pada
keadaan ini? >> pin EFI
20. Keluaran PCLK dari 8284 adalah 14/6 = 2,33 MHz jika osilator
Kristal beroperasi pada 14 MHz
21. Masukan - RES untuk 8284A ditempatkan pada level logika
…LOW untuk reset 8086/88.
22. Saluran bus mana pada MP 8086 yg umumnya didemultiplek
>>>AD15-AD0
23. Saluran bus mana pada MP 8088 yg umumnya didemultiplek
>>>AD7-AD0
24. IC TTL mana yang sering dipakai untuk demultiplek bus pada
8086/88? 74LS373
25. Apa tujuan demultiplek sinyal –BHE pada MP 8086?>>
Untuk enable data MSB dari ½ data bus D15- D8
26. Mengapa penyangga sering digunakan dalam system berbasis
8086/88? Untuk sistem besar diperlukan arus yang lebih besar
27. Sinyal 8086/88 yang dipakai untuk memilih arah aliran data
lewat penyangga bus bididrectional 74LS245>>>DT/-R
28. Suatu siklus bus sama dengan 4 periode clock
29. Kalau masukan CLK untuk 8088/86 adalah 4 MHz berapa
panjang satu siklus bus?? =0,25uS x 4 = 1 uS
30. Dua operasi 8088/86 apa yang terjadi pada satu siklus
bus??>> baca atau tulis
31. Berapa banyak MIPS yang mampu didapat 8086/88 jika
beroperasi dengan clock 10 MHz.
1/10=0.1 uS, 0.1 x4=0.4 uS= 400 ns. >>1000/400 MIPS=2,5
MIPS
32. Secara singkat deskripsikan maksud masing-masing keadaan
T:
T1, T2, T3, T4
33. Berapa lama periode yang dibolehkan untuk akses memori jika
8086/88 dioperasikan dengan clock 5 MHz.>>>800 ns
34. Berapa lebar –DEN apabila 8086 8088 dioperasikan dg clock 5
MHz>> -DEN aktif low selama tiape2 akses memori dan IO, dan untuk
siklus – INTA. Untuk read atau –INTA, dia akan aktif dari
pertenganhan T2 sd pertengahan T4, unutk siklus write dia aktif dari
pertengahan T2 sd pertengahan T4. –DEN float untuk 3 state off
selama local bus HLDA (2 periode clock = 400 ns)
35. Kalau pin READY di ground akan timbul keadaan …. Dalam
siklus bus dari 8086/88
MP memasuki wait state dan tetap menganggur. Jika ready =1
tak akan berpengaruh pada operasi mikroprosesor.
36. Apa yang dilakukan masukan –ASYNC untuk 8284A??>>>
37.
BAB 2

ARSITEKTUR DAN INTRUKSI MIKROPROSESOR 8086/8088

2.1 Arsitektur CPU 8086/8088(john unfe)


Arsitektur CPU meliputi flag dan register internal serta set intruksi.
Gambar 2.1 memperlihatkan model CPU mikroprosesor 8088. CPU ini
diorganisasikan sebagai dua prosesor terpisah yaitu bagian bus interface
unit (BIU) dan execution unit (EU). BIU berhubungan dengan fungsi-fungsi
hardware termasuk membangkitkan alamat memori dan I/O untuk
komunikasi dengan dunia luar di luar CPU dan berhubungan dengan EU.
EU menerima kode dan data intruksi program dari BIU, melaksanakan
intruksi-intruksi ini dan menyimpan hasilnya pada register umum. Dengan
melewatkan kembali data BIU, data dapat juga disimpan pada lokasi
memori atau ditulis ke piranti output. Karena EU tidak mempunyai koneksi
dengan system bus dia harus menerima dan mengeluarkan data melalui
BIU. EU untuk masing-masing prosesor adalah sama sehingga program
untuk 8086 dapat berjalan juga pada 8088 tanpa perubahan.

Gambar 2.1 Diagram blok fungsional CPU 8088 dan konfigurasi pinnya untuk
mikroprosesor 8088, EU dan BIU diberikan
Fetch dan eksekusi
Pengorganisasian CPU ke dalam bagian BIU dan EU memungkinkan
siklus fetch dan eksekusi overlapping. Saat start 8086/8088 akan
melakukan aksi-aksi berikut:

1. Register IP dinaikan satu untuk mempersiapkan fetch intruksi


berikutnya
2. Sesudah berada di dalam BIU intruksi dimasukkan ke dalam queue,
register ini bersifat FIFO kadang disamakan dengan pipeline
3. Anggap mula-mula queue mula-mula kosong maka EU akan segera
menarik intruksi ini dan mengeksekusinya
4. Saat EU mengeksekusi intruksi ini BIU tetap melanjutkan fetch intruksi
baru.Tergantung pada waktu eksekusi intruksi pertama, BIU bisa
mengisi queue dengan intruksi baru sebelum EU siap menarik
intruksi berikutnya.
Dengan adanya arsitektur pipeline ini EU bisa mengeksekusi intruksi
hampir secara kontinu tidak menunggu BIU menfetch intruksi baru. akses
memori EU dapat mengulangi mengeksekusi kode us menunggu dari
queue
1. Intruksi yang dieksekusi adalah intruksi jump/loncat. Dalam hal ini
kendali akan dipindahkan ke alamat baru (alamat nonsekuensial)
sedangkan queue tetap mengangggap alamat adalah sekuensial.. EU
harus menunggu saat intruksi jump dilaksanakan,
2. BIU akan menunda pengambilan intruksi saat eksekusi berlangsung
secara lambat, misalnya pada intruksi AAM (ASCII adjust for
multiplication) memerlukan 8 siklus clock untuk berakhir.
Jadi salah satu keuntungan pipeline adalah CPU bisa memakai
memori yang lebih lambat tanpa mengganggu tampilan system secara
keseluruhan.

Model Pemrograman
Gambar 2.3 menunjukkan pembagian register ke dalam grup logika
untuk membentuk model pemrograman. Grup data terdiri dari AX, BX, CX
dan DX, masing-masing bisa diakses dalam ukuran byte atau word. BX
menunjukkan register basis 16 bit dan BH menunjukkan byte orde tinggi.
Register data biasanya dipakai unutk menyimpan hasil sementara yang
dipakai untuk intruksi berikutnya.

Grup pointer dan indeks semuanya adalah 16 bit dan tidak bisa
diakses sebagai byte tinggi dan byte rendah. Register ini dipakai sebagai
pointer memori. Register IP dimasukkan dalam grup indek dan pointer tapi
hanya mempunyai satu fungsi yaitu untuk menunjukkan intruksi berikutnya
yang akan difetch oleh BIU. Register IP secara fisik adalah bagaian BIU
dan bukan di bawah control langsung programmer seperti register pointer
lainnya.
Gambar 2.5 menunjukkan difinisi bit untuk register flag 16 bit. Enam
dari flag adalah status, menggambarkan sifat dari hasil intruksi aritmetika
dan logika.
SEGMENTASI MEMORI
8086 adalah mikroprosesor 16 bit (16 bit data bus) tapi memorinya
masih berukuran byte. Ini memungkinkan mp bekerja dengan ukuran
byte atau word. Ini diperlukan ketika mp diantarmukakan dengan
peralatan I/O seperti printer atau modem yang mentransfer data kode
ASCII ( 7 atau 8 bit). Pertimbangan lain adalah kemampuan
mengakses lokasi byte ganjil karena ada intruksi yang panjangnya 2-
7 byte.
8086 punya 20 bit bus alamat sehingga jumlah lokasi memorinya
adalah 220 = 1048576 byte= 524287 word. 8086 mengorganisasikan
memorinya ke dalam bank alamat genap dan bank alamat ganjil
seperti ditunjukkan pada gambar 2.7a.8088 dengan 8 bit bus data
mengantarmukakan 1 MB memori sebagai satu bank sehingga saat
mengakses word diperlukan 2 siklus baca/tulis.

Map memori
Seperti gambar 2.8 8086/8088 mempunyai 16x64 KB lokasi
memori mulai pada alamat 00000h – FFFFFh. Address 20000h lebih
tinggi 64 KB dengan address 10000h. Address ini bisa diisi RAM
ataupun ROM pada range alamat tertentu sesuai dengan kapasitas
RAM atau ROM. Pada gambar 2.8 lokasi memori ditandai dengan
reserved dan dedicated. Lokasi dedicated dipakai untuk proses
khusus seperti system interup dan fungsi reset. Intel juga
mencadangkan beberapa lokasi untuk produk hardware dan software
masa berikutnya.
Register segmen
Dalam 1 MB memori 8086/8088 mendifinisikan 4 64 KB blok
memori yang disebut segmen kode (CS), segmen stack (SS), segmen
data (DS) dan segmen ekstra (ES). Masing-masing blok ini dipakai
secara berbeda oleh mikroprosesor. CS memegang kode intruksi
program, DS menyimpan data untuk program. ES sering dipakai
untuk sharing data sedangkan SS dipakai menyimpan interup dan
addres return subrutin.
Empat segmen register dipakai untuk menunjukkan pada lokasi 0
(address base) dari tiap-tiap segmen. Ada sedikit trik karena register
segmen lebarnya hanya 16 bit tetapi alamat memori lebarnya 20 bit.
BIU memperhatikan masalah ini dengan menambahkan empat 0 pada
byte orde rendah pada register segmen. Akibatnya adalah register
segmen isinya akan dikalikan dengan 16 seperti pada gambar 2.9.
gambar 2.9.

Register CS yang mengandung B3FFH akan direpresentasikan


dengan menunjuk pada alamat B3FF0h. Dari hal ini harus dicatat
bahwa alamat awal segmen tidak sembarang tapi harus mulai alamat
yang dapat dibagi dengan 16 atau heksa digit byte rendah harus 0.

Alamat fisik dan logic


Jangkauan alamat-alamat dalam segmen adalah dari alamat 0 sd
FFFFh karena panjang segmen adalah 64 KB. Alamat dalam sebuah
segmen disebut alamat logic atau offset. Misalnya alamat logic 0005h
pada kode segmen seperti gambar 2.9 menunjukkan alamat real
B3FF0h +5 = B3FF5h, alamat real ini disebut juga alamat fisik.
BAB 3
ANTARMUKA MEMORI DAN I/O

10.1 PIRANTI MEMORI

Memori secara umum


1. ROM
2. Flash memori (EEPROM)
3. SRAM
4. DRAM

Koneksi pin memori


Koneksi pin yang umum untuk sebuah memori adalah masukan alamat,
keluaran data atau masukan/keluaran, beberapa jenis masukan pemilihan,
dan sedikitnya satu masukan control untuk memilih operasi baca atau tulis.
Koneksi alamat
Tujuan untuk memilih suatu lokasi memori dalam piranti memori.
Biasanya disimbolkan dengan A0 sd An. Jumlah pin alamat suatu piranti
memori ditentukan dari lokasi memori yang terdapat di dalamnya.
Memori 1 K perlu 10 pin alamat (A0sd A9)
Memori 2 K perlu 11 pin alamat (A0sd A10)
Memori 4 K perlu 12 pin alamat (A0sd A11)
Memori 1 M perlu 20 pin alamat (A0sd A19)

Jika suatu memori mulai pada alamat 10000H dengan kapasitas 1 K


maka lokasi terakhirnya adalah 10000+3FF= 103FFH.
64K akan mulai dari 30000h sd 3FFFFH, 1 M akan berisi 1000000H
lokasi memori
Koneksi data
Koneksi data adl titik dimana data dimasukkan untuk
penyimpanan atau diekstrak untuk pembacaan. Pin-pin data pada
memori dilabelkan dg D0 sd Dn Umumnya lebar memori adl 8 bit tapi
beberapa memiliki lebar 16 bit. Daftar catalog memori mengacu pada
lokasi memori kali bit perlokasi misalnya lokasi memori 1K dan 8 bit
pada masing-masing lokasi akan ditulis 1Kx 8 oleh pabrik. Sering
juga ditulis dg kapasitas bit total misalnya 1Kx8 bit ditulis dg 8K.

Koneksi pemilihan/select
Setiap memori akan punya 1 masukan atau lebih untuk
mengaktifkan memori tersebut. Misalnya –CS, -CE, -S (select), Jika
dia kondisi rendah maka memori akan melakukan operasi baca atau
tulis.

KONEKSI KONTROL
ROM hanya punya satu masukan control tapi RAM bisa memiliki
satu atau dua.
Masukan kontrol untuk ROM –OE (output enable), -G (gate) Jika -
OE dan –CS aktif keluaran dapat muncul. RAM mempunyai satu atau
dua control masukan Jika hanya terdapat satu control masukan
biasanya disebut R/-W. Piranti ini hanya melakukan operasi R/_W jika
CS aktif. Jika RAM punya 2 masukan kontrol biasanya dilabel dg –WE
atau –W dan –OE atau –G. –WE harus aktif untuk melakukan
penulisan memori, -OE harus aktif unutk melakukan operasi baca
memori. Ketika 2 kontrol ini tersedia mereka harus tidak aktif secara
bersamaan . Jika kedua maukan berada pada logika 1 (tak aktif)
koneksi data berada pada impedansi tinggi.
ROM
Rom secara permanen menyimpan program dan data yg menetap
pada sistem dan tidak boleh berubah jika catu daya terputus>>>
memori nonvolatile
EPROM diprogram oleh piranti yg disebut EPROM programer. EPROM
bisa dihapus jika diekspos pada sinar UV intensitas tinggi selama 20
menit atau kurang tergantung tipe nya
PROM diprogram dengan membakar sumbu NI-krom stau silicon
oksida kecil, sekali diprogram PROM tidak dapat dihapus.

EEPROM/Flash memori atau NOVRAM( Nonvolatile RAM)


>>> memori ini dapat dihapus secara elektris dalam sistem
Gambar dibawah adalah EPROM 2764
Seri 27XXX dari EPROM memasukkan nomor bagian berikut
2704(512x8), 2708 (1Kx8), 2716(2Kx8), 2732(4Kx8), 2764(8Kx8),
27128(16kx8), 27256(32Kx8), 27512(64Kx8),271024(128Kx8).
Masing – masing bagian ini berisi pin-pin alamat, 8 koneksi data,
satu atau lebih (-CE) dan pin output enable(-OE).

RAM STATIS (SRAM).


Ram Statis menyimpan data selama daya dc diberikan, disebut
juga memori volatile karena tidak bisa menahan data tanpa catu daya.
Gb 10-4 adalah SRAM 4016 yang merupakan suatu memori
read/write 2Kx8. Piranti ini punya 11 masukan alamat dan 8 koneksi
IO data. Piranti ini mewakili semua SRAM kecuali jumlah alamat dan
koneksi data. Pada IC ini pin –OE dilabeli dengan –G, pin –CS adalah
–S, pin –WE adalah –W. PAbrik lain membuat SRAM dengan nomor
2016 dan 6116.
Gambar 10.6 adalah pin dari 62256 32Kx 8 RAM statis. Piranti
SRAM umumnya tersedia dalam ukuran 8K x 8, 128K x 8, 256Kx8
dengan waktu akses sedikitnya 10 ns unutk SRAM yang dipakai
dalam system memori cache .
Memori RAM Dinamis (DRAM)
Ram dinamis tersedia dalam ukuran yang lebih besar dari SRAM
hingga 64M x1. DRAM pada dasarnya sama dengan SRAM, kecuali dia
bisa menahan data hanya 2 atau 4 ms dalam sebuah kapasitor
terintegrasi , setelah 2 atau 4 ms mereka harus ditulis ulang (refresh)
seluruhnya karena kapasitornya sudah kehilangan tenaga. Dalam
DRAM semua isi memori direfresh dengan 256 pembacaan interval 2
ms atau 4 ms. Refresh terjadi juga pada suatu penulisan, pembacaan,
atau selama siklus refresh khusus.
10.2 Dekode alamat
Pendekodean membuat memori berfungsi pada suatu bagian atau
partisi unik dari peta memori. Tanpa decoder alamat hanya satu
piranti memori yg dapat menyambung ke suatu MP.

Mengapa mendekodekan memori.


Untuk MP 8088 dengan 20 pin alamat (1 MB) dan EPROM 2716
(2KB) dengan 11 koneksi alamat (2KB). Dekoder memperbaiki
ketidakcocokan ini dengan mendekodekan alamat yang tidak
tersambung ke komponen memori.
Dekoder gate and sederhana
Saat EPROM 2K x 8 digunakan koneksi A10-A0 dari 8088
tersambung ke masukan alamat A10-A0 dari EPROM. 9 pin alamat
sisa (A19-A11) dikoneksikan ke masukan suatu decoder gate NAND.
Dekoder memilih EPROM sebanyak satu dari sekian banyak bagian
2KB dari seluruh rentang alamat 1MB pada mikroprosesor 8088
Dari rangkaian gb 10.13 nand gate tunggal mendekodekan alamat
memori. Keluaran dari gate nand berlogika 0 saat semua masukannya
berlogika 1. Output logika nand terhubung dengan masukan –CE
yang mengaktifkan EPROM. Data akan dibaca saat –OE dan –CE
berlogika nol dan pin –OE dihubungkan dengan pin –RD MP.

Contoh 10.1
Rentang alamat untuk EPROM 2KB adalah
1111 1111 1xxx xxxx xxxx
Atau
1111 1111 1000 0000 0000 = FF800H
Sd
1111 1111 1111 1111 1111 = FFFFFH
Dekoder saluran 3 ke 8 (74LS138)
Lihat gambar 10-14 untuk decoder 74LS138 dan table
kebenarannya.

Hanya satu dari 8 keluaran yg menuju rendah pada satu waktu


dengan syarat kondisi ketiga pin enable harus aktif. IC ini mampu
memilih 8 piranti EPROM (pin –CE) pada waktu yang sama.

SAMPEL RANGKAIAN DEKODER


LIHAT GB 10-15 HAL 359.

Contoh 10-2

Alamat total yang bisa diakses adalah 64KB yaitu dari F0000h-
FFFFFh. Desain rangkaian decoder
1111 xxxx xxxx xxxx xxxx
Atau dalam range
1111 0000 0000 0000 0000 = F0000h
1111 1111 1111 1111 1111 = FFFFFh
Contoh 10-3
Pemilihan masing-masing EPROM ditentukanoleh kondisi input
CBA
1111 000x xxxx xxxx xxxx adalah antara alamat
1111 0000 0000 0000 0000 = F0000h
1111 0001 1111 1111 1111 = F1FFFh

Dekoder lain yang dipilh adalah decoder saluran 2 ke 4 ganda


74LS139.
Dekoder alamat PROM
PROM dipilih karena koneksi masukan yang lebih banyak
sehingga memperkecil jumlah rangkaian yang dibutuhkan. Misalkan
PROM 82S147(512x8) dengan 10 masukan (9 alamat, 1 EN) dan 8
koneksi keluaran memilih salah satu dari 512 lokasi memori 8 bit
internal. Lihat gambar 10-17. TAbel 10 -1 adalah pola bit biner yang
diprogram ke dalam lokasi PROM unutk memilih 8 EPROM berbeda.
Manfaat pemakain RPOM adalah mudahnya peta alamat berubah
dalam field.
Interfacing

Anda mungkin juga menyukai