bab 9

16
21. Apa penangan event yang digunakan untuk mengakses mouse di Visual C ++ lingkungan pemrograman dan apa event yang menyebabkan setiap handler dipanggil? 22. Bagaimana tombol kanan mouse terdeteksi dalam program? 23. Bagaimana sebuah klik ganda terdeteksi dengan mouse? 24. Mengembangkan perangkat lunak yang mendeteksi ketika kedua tombol kanan dan kiri mouse ditekan secara bersamaan. 25. Bagaimana warna yang dipilih dalam program menggunakan Visual C ++? 26. Apa tujuan dari ForeColor property? 27. Ketika nomor dikonversi dari biner ke BCD, _________ menyelesaikan instruksi konversi, asalkan jumlahnya kurang dari 100 desimal. 28. Bagaimana sejumlah besar (lebih dari 100 desimal) dikonversi dari biner ke BCD? 29. Bagaimana bilangan biner ditampilkan sebagai bilangan oktal? 30. Sebuah BCD digit diubah menjadi kode ASCII dengan menambahkan (n) _________. 31. Sebuah nomor ASCII-kode diubah menjadi BCD dengan mengurangi _________. 32. Mengembangkan fungsi yang bertuliskan nomor ASCII dari kontrol textbox sebagai kunci yang diketik (menggunakan KeyDown) pada keyboard dan mengembalikannya sebagai int unsigned. Nomor dalam textbox adalah bilangan oktal yang akan dikonversi ke biner oleh fungsi. 33. Jelaskan bagaimana sejumlah ASCII-kode tiga digit diubah menjadi biner. 34. Mengembangkan fungsi yang mengubah semua huruf ASCII-kode huruf kecil menjadi huruf besar kode huruf ASCII. Cara Anda mungkin tidak mengubah karakter lain kecuali huruf a-z dan harus mengembalikan karakter dikonversi sebagai char. 35. Mengembangkan tabel lookup yang mengkonversi heksadesimal Data 00H-0FH ke kode karakter ASCII yang mewakili digit heksadesimal. Pastikan untuk menunjukkan tabel dan setiap perangkat lunak yang diperlukan untuk konversi. Hal ini menunjukkan bahwa fungsi yang dibuat untuk melakukan konversi. 36. Jelaskan tujuan dari boot sector, FAT, dan direktori root di sistem FAT. 37. Jelaskan tujuan dari MFT dalam sistem file NTFS. 38. Permukaan disk dibagi dalam beberapa track yang kemudian dibagi lagi menjadi _________. 39. Apa yang dimaksud dengan bootstrap loader dan mana itu ditemukan? 40. Apa itu cluster? 41. Sistem file NTFS 41. sering menggunakan cluster dengan _________ byte panjangnya. 42. Berapa panjang maksimum file? 43. Apa kode yang digunakan untuk menyimpan nama file ketika nama file yang panjang yang digunakan? 44. Nama file DOS yang paling panjang _________ karakter. 45. Berapa banyak karakter biasanya muncul dalam extension? 46. Berapa banyak karakter mungkin muncul dalam nama file yang panjang? 47. Mengembangkan program yang membuka file bernama TEST.LST, membaca 512 byte dari file tersebut ke dalam memori daerah Array, dan menutup file. 48. Bagaimana cara mengubah nama file TEST.LST ke TEST.LIS. 49. Apa maksud dari File Move member fuction?

Upload: rahayu-sutarini

Post on 21-Jul-2015

85 views

Category:

Engineering


0 download

TRANSCRIPT

Page 1: Bab 9

21. Apa penangan event yang digunakan untuk mengakses mouse di Visual C ++

lingkungan pemrograman dan apa event yang menyebabkan setiap handler dipanggil?

22. Bagaimana tombol kanan mouse terdeteksi dalam program?

23. Bagaimana sebuah klik ganda terdeteksi dengan mouse?

24. Mengembangkan perangkat lunak yang mendeteksi ketika kedua tombol kanan dan

kiri mouse ditekan secara bersamaan.

25. Bagaimana warna yang dipilih dalam program menggunakan Visual C ++?

26. Apa tujuan dari ForeColor property?

27. Ketika nomor dikonversi dari biner ke BCD, _________ menyelesaikan instruksi

konversi, asalkan jumlahnya kurang dari 100 desimal.

28. Bagaimana sejumlah besar (lebih dari 100 desimal) dikonversi dari biner ke BCD?

29. Bagaimana bilangan biner ditampilkan sebagai bilangan oktal?

30. Sebuah BCD digit diubah menjadi kode ASCII dengan menambahkan (n) _________.

31. Sebuah nomor ASCII-kode diubah menjadi BCD dengan mengurangi _________.

32. Mengembangkan fungsi yang bertuliskan nomor ASCII dari kontrol textbox sebagai

kunci yang diketik (menggunakan KeyDown) pada keyboard dan mengembalikannya

sebagai int unsigned. Nomor dalam textbox adalah bilangan oktal yang akan

dikonversi ke biner oleh fungsi.

33. Jelaskan bagaimana sejumlah ASCII-kode tiga digit diubah menjadi biner.

34. Mengembangkan fungsi yang mengubah semua huruf ASCII-kode huruf kecil

menjadi huruf besar kode huruf ASCII. Cara Anda mungkin tidak mengubah karakter

lain kecuali huruf a-z dan harus mengembalikan karakter dikonversi sebagai char.

35. Mengembangkan tabel lookup yang mengkonversi heksadesimal Data 00H-0FH ke

kode karakter ASCII yang mewakili digit heksadesimal. Pastikan untuk menunjukkan

tabel dan setiap perangkat lunak yang diperlukan untuk konversi. Hal ini

menunjukkan bahwa fungsi yang dibuat untuk melakukan konversi.

36. Jelaskan tujuan dari boot sector, FAT, dan direktori root di sistem FAT.

37. Jelaskan tujuan dari MFT dalam sistem file NTFS.

38. Permukaan disk dibagi dalam beberapa track yang kemudian dibagi lagi menjadi

_________.

39. Apa yang dimaksud dengan bootstrap loader dan mana itu ditemukan?

40. Apa itu cluster?

41. Sistem file NTFS 41. sering menggunakan cluster dengan _________ byte

panjangnya.

42. Berapa panjang maksimum file?

43. Apa kode yang digunakan untuk menyimpan nama file ketika nama file yang panjang

yang digunakan?

44. Nama file DOS yang paling panjang _________ karakter.

45. Berapa banyak karakter biasanya muncul dalam extension?

46. Berapa banyak karakter mungkin muncul dalam nama file yang panjang?

47. Mengembangkan program yang membuka file bernama TEST.LST, membaca 512

byte dari file tersebut ke dalam memori daerah Array, dan menutup file.

48. Bagaimana cara mengubah nama file TEST.LST ke TEST.LIS.

49. Apa maksud dari File Move member fuction?

Page 2: Bab 9

50. Apa yang dimaksud kontrol?

51. Menulis sebuah program yang membaca setiap angka desimal antara 0 dan 2G dan

menampilkan Versi biner 32-bit pada layar video.

52. Menulis sebuah program yang menampilkan power biner dari 2 (dalam desimal) pada

layar video untuk kekuatan 0 sampai 7. Layar ponsel akan menampilkan 2n = nilai

untuk setiap daya dari 2.

53. Menggunakan timer untuk menghasilkan random number, mengembangkan sebuah

program yang menampilkan random number antara 1 dan 47 (atau apa pun) untuk

lotere negara Anda.

54. Ubah program pada Contoh 8-28 sehingga juga menampilkan huruf A, b, C, d, e, dan

F untuk heksadesimal layar tujuh-segmen.

55. Ubah contoh 8-42 untuk mengenkripsi pesan menggunakan algoritma desain Anda

sendiri.

56. Mengembangkan fungsi dekripsi (untuk String) untuk menemani enkripsi pertanyaan

55.

BAB 9

8088/8086 HARDWARE SPESIFIKASI

PENDAHULUAN

Pada bab ini, kita akan membahas tentang fungsi pin dari mikroprosesor 8086 dan

8088 secara detail. Berikut adalah topik hardware yang akan dibahas : clock generatoin, bus

buffering, bus latching timing, wait states, dan operasi mode minimum terhadap operasi

mode maksimum.

Sebelum kita dapat menghubungkan atau membuat beberapa interface untuk

mikroprosesor, kita perlu memahami fungsi pin dan timing. Dengan demikian informasi

dalam bab ini sangat penting untuk memahami memori yang lengkap dan I/O interfacing,

yang kita cakup dalam akhir teks ini.

TUJUAN

Setelah menyelesaikan bab ini, kita akan mendapatkan :

1. Menjelaskan fungsi dari masing-masing pin 8086 dan 8088

2. Memahami karakteristik DC dan menunjukkan fan-out untuk logika secara umum

3. Menggunakan kepingan/chip clock generation (8284A) untuk menyediakan clock

4. Menghubungkan buffer dan latches ke bus

5. Mengintepretasi diagram timing

6. Menjelaskan wait states dan menghubungkan sirkuit yang diperlukan sehingga dapat

menyebabkan beberapa wait

7. Menjelaskan perbedaan antara operasi mode minimum dan operasi mode maksimum

Page 3: Bab 9

9-1 PIN-OUT DAN FUNGSI PIN

Pada bagian ini, kita akan menjelaskan fungsi dan (dalam contoh nyata) fungsi ganda

dari pin mikroprosesor. Kita juga akan mendiskusikan karakteristik DC untuk

memberikan dasar agar mengerti bagian yang selanjutnya pada buffering dan latching.

The Pin-Out

Gambar 9.1 (a) pin-out dari mikroprosesor 8086 pada mode maksimum

(b) pin-out dari mikroprosesor 8086 pada mode minimum

Gambar 9.1 menggambarkan pin-out dari mikroprosesor 8086 dan 8088. Kedua

mikroprosesor tersebut tidak memiliki perbedaan, keduanya dibuat pada 40 pin dual

in-line packages (DIPs). Seperti yang telah disebutkan pada Bab 1 bahwa 8086

merupakan mikroprosesor 16 bit dengan 16 bit data bus dan 8088 merupakan

mikroprosesor 16 bit dengan 8 bit data bus (lihat gambar pin-out, 8086 memiliki pin

AD0-AD15, dan 8088 memiliki pin AD0-AD7). Oleh karena itu data bus yang lebar

adalah perbedaan yang besar pada kedua mikroprosesor ini. Ini dapat memungkinkan

8086 akan mentransfer data 16 bit lebih efisien. Di keduanya bagaimanapun terdapat

perbedaan yang kecil yaitu dalam salah satu sinyal kontrol. 8086 dan 8088 memiliki

satu pin I/O. Perbedaan lainnya terdapat pada pin 34 dari kedua IC : pada 8088, yaitu

pin ๐‘†๐‘†0ฬ…ฬ… ฬ…ฬ… ฬ… dan pada 8086 yaitu pin ๐ต๐ป๐ธฬ…ฬ… ฬ…ฬ… ฬ…ฬ… /๐‘†7.

Power Supply Requirements

Mikroprosesor 8086 dan 8088 membutuhkan +5.0 V dengan dengan toleransi

tegangan ยฑ 10 persen. 8086 menggunakan arus maksimum 360 mA, dan 8088

Page 4: Bab 9

menggunakan arus maksimum sebesar 340 mA. Kedua mikroprosesor ini bekerja

pada temperatur antara 32oF dan 180oF. Rentang suhu ini tidak cukup lebar untuk

digunakan diluar ruangan saat musim dingin atau musim panas, tapi luas jarak

temperatur dari mikroprosesor 8086 dan 8088 masih tersedia. Ada juga versi CMOS,

yang membutuhkan suplai arus yang sangat rendah dan memiliki rentang temperatur

yang luas. 8088 dan 8086 merupakan versi CMOS yang membutuhkan hanya 10 mA

dari arus yang ada dan fungsi pada suhu ekstrim antara -40oF sampai +225oF.

Karakteristik DC

Tidak mungkin jika untuk menghubungkan suatu pin ke mikroprosesor tanpa

mengetahui besar arus masukan yang dibutuhkan untuk sebuah input pin dan

kemampuan arus keluaran untuk sebuah pin output. Pengetahuan ini memungkinkan

desainer hardware untuk memilih komponen interface yang tepat untuk digunakan

dengan mikroprosesor tanpa takut merusak apapun.

Karakteristik input. Karakteristik input mikroprosesor ini adalah sesuai untul semua

komponen standart logic yang ada saat ini. Pada tabel 9.1 menggambarkan level

tegangan input dan input arus requirement untuk setiap input pin pada kedua

mikroprosesor. Level arus input sangat kecil karena input tersebut merupakan gerbang

koneksi dari MOSFETs dan hanya mewakili arus yang bocor.

Tabel 9.2 Karakteristik output mikroprosesor 8086 dan 8088

Karakteristik output. Tabel 9.2 menggambarkan karakteristik output dari semua pin

output dari mikroprosesor ini. Logic level 1 tegangan dari 8086/8088 cocok dengan

sebagian besar keluarga standart logic, tapi tidak untuk logic level 0. Rangkain

standart logic memiliki logic level 0 tegangan maksimum 0.4 V dan 8086/8088

memiliki batas maksimum 0.45 V. Demikian, ada perbedaan 0.05 V.

Perbedaan ini mengurangi imunitas noise dari standart level 400 mV (0.8 V-

0.45 V) ke 350 mV. Imunitas noise adalah perbedaan antara logic 0 tegangan output

dan logic 0 input tegangan level. Pengurangan imunitas noise dapat mengakibatkan

masalah pada koneksi kawat panjang atau terlalu banyak beban. Oleh karena itu

direkomendasikan bahwa tidak ada lenih dari 10 beban dari jenis atau kombinasi

dapat dihubungkan sebuah pin output pin tanpa buffering. Jika faktor beban

terlampaui, noise akan mulai korban pada timing problem

Page 5: Bab 9

Tabel 9.3 fan-out dari beberapa hubungan pin 8086 dan 8088

Tabel 9.3 memberikan daftar beberapa common logic yang umum dan fan-out

yag disarankan dari 8086/8088. Pilihan terbaik dari tipe komponen unutk penghubung

ke pin output 8086/8088 adalah 74LS, 74ALS atau komponen logic 74HC. Catatan

bahwa beberapa hitungan arus fan-out lebih dari 10 unit beban. Oleh karena itu

disarankan bahwa jika sebuah fan-out lebih dari 10 unit beban diperlukan, sistem

harus buffer.

Pin Connections

AD7-AD0 (8088) alamat/data bus ; baris yang menyusun alamat data bus yang

(multiplexed) dari 8088 dan berisi hampir 8 bit dari alamat memori atau bilangan port

I/O ketika ALE aktif (1) atau data ketika ALE tidak aktif (0). Pin tersebut akan berada

pada keadaan impedansi yang tinggi ketika.

A15-A8 (8088) alamat/data bus memberikan upper-half alamat memori dari seluruh

bus cycle.

AD15-AD8 (8086) alamat/data bus: baris yang mengubah multiplexed alamat data

bus dari 8086 dan berisi informasi alamat atau bilangan port I/O selama ALE aktif (1)

atau ketika ALE tidak aktif (0). Pin tersebut akan berada pada keadaan impedansi

yang tinggi.

Tabel 9.4 Fungsi status bit S4 dan S3

Page 6: Bab 9

A19/S6-A16/S3 alamat/data bus bit merupakan multiplexed untuk memberikan sinyal

alamat A19-A16 dan juga status bit S6-S3. Pin juga mencapai impedansi yang tinggi

saat diizinkan. Status bit S6 selalu pada logic 0, bit S5 menunjukkan kondisi dari IF

flag bit dan S4 serta S3 yang segmennya akan di akses selama arus siklus bus. Lihat

tabel 9.4 untuk tabel kebenaran dari S4 dan S3. Kedua status bit sebaiknya digunakan

untuk empat alamat terpisah 1 M byte memori penyimpanan dengan decoding sebagai

A21 dan A20.

๐‘๐ƒฬ…ฬ… ฬ… ฬ… kapanpun membaca sinyal selalu pada logic 0, data bus menerima dari memori

atau dari perangkat I/O yang dihubungkan ke sistem.

READY. Input READY dikontrol untuk memasukkan wait states kedalam

mikroprosesor tersebut. Jika pin READY ditempatkan pada logic 0, maka

mikroprosesor masuk kedalam wait states dan tetap tidak aktif. Jika pin READY

ditempatkan pada logic 1, hal tersebut tidak akan memiliki pengaruh terhadap cara

kerja mikroprosesor.

INTR. Interrupt request digunakan untuk meminta sebuah hardware interrupt. Jika

INTR berpengaruh besar ketika IF=1, 8086/8088 masuk sebuah siklus pemberitahuan

yang interrupt (๐ผ๐‘๐‘‡๐ดฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ… menjadi aktif) setelah intruksi arus diselesaikan.

๐“๐„๐’๐“ฬ…ฬ… ฬ…ฬ… ฬ…ฬ…ฬ… pin TEST adalah sebuah input yang diuji dengan WAIT instruction. Jika ๐‘ป๐‘ฌ๐‘บ๐‘ปฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ…

berada pad logic 0, maka fungsi WAIT instruction sama dengan NOP dan jika ๐‘ป๐‘ฌ๐‘บ๐‘ปฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ…

pada logic 1, WA instruction menunggu sampai ๐‘ป๐‘ฌ๐‘บ๐‘ปฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… menjadi logic 0. Pin ๐‘ป๐‘ฌ๐‘บ๐‘ปฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ…

kebanyakan sering dihubungkan dengan 8087.

NMI input non-maskable interrupt mirip dengan INTR kecuali pada NMI tidak

dapat mengecek untuk melihat apakah IF flag bit saat itu logic 1. Jika NMI diaktifkan,

input interrupt ini menggunakan vector 2.

RESET pin RESET menyebabkan mikroprosesor untuk diatur kembali. Jika pin ini

pada saat tinggi untuk minimim dari 4 clock, ketika 8086/8088 diatur kembali, akan

mulai mengeksekusi instruksi di lokasi memori FFFFOH dan tidak mungkin interrupt

selanjutnya dengan IF flag bit.

CLK pin CLK memberikan dasar timing signal pada mikroprosesor. Sinyal clock

harus memiliki sebuah duty cycle 33% (tinggi untuk sepertiga dari periode clock dan

rendah untuk duapertiga) untuk memberikan internak timing yang tepat untuk

8086/8088.

VCC input power supply memberikan +5.0 V, ยฑ10% ke mikroprosesor

GND hubungan GROUND kembali ke power supply. Catatan bahwa 8086/8088

memiliki 2 pin GND, keduanya harus dihubungkan.

Page 7: Bab 9

MN/๐Œ๐—ฬ…ฬ…ฬ…ฬ… ฬ… pin minimum/maximum mode dipilih baik mode operasi minimum atau

maksimum pada mikroprosesor. Jika minimum mode dipilih maka pin ini harus

dihubungkan langsung dengan +5.0 V

๐๐‡๐„ ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…๐’๐Ÿ• pin Bus High Enable digunakan pada 8086 untuk memungkinan most-

significant data bus bits (D15-D8) selama membaca atau menulis. S7 akan selalu logic

1 (aktif)

Pin Mode Minimum. Operasi mode minimum dari 8086/8088 diperoleh dengan

menghubungkan MN/๐Œ๐—ฬ…ฬ…ฬ…ฬ… ฬ… secara langsung ke +5.0 V. Jangan menghubungkan pin ini

ke +5 V melalui pull-up register, jika hal tersebut dilakukan maka operasi mode

minimum tidak akan bekerja.

๐ˆ๐Ž/๏ฟฝฬ…๏ฟฝ ๐š๐ญ๐š๐ฎ ๐Œ/๐ˆ๐Žฬ…ฬ… ฬ…. Memori atau input output merupakan pin yang menunjukka ketika

alamat bus informasi berisi alamat memori atau informasi pengalamatan I/O.

๐‘พ๐‘นฬ…ฬ… ฬ…ฬ… ฬ… Write Line : stobe yang menunjukkan bahwa 8086/8088 merupakan keluaran

data ke memori atau perangkat I/O. Disaat WR berada pada logic 0, data bus akan

berisi data valid untuk memori atau I/O.

๐ˆ๐๐“๐€ฬ…ฬ… ฬ…ฬ…ฬ… ฬ…ฬ… sinyal interrupt acknowledge merupakan respon untuk INTR. Pin ini

digunanakn secara normal untuk gerbang interrupt vector number kedalam data bus.

๐€๐‹๐„. Address Latch Enable menunjukkan bahwa data atau alamat bus dari

8086/8088 berisi tentang informasi alamat. Alamat ini dapat berupa alamat memori

atau I/O.

๐ƒ๐“/๏ฟฝฬ…๏ฟฝ. Data transmitter /receiver menunjukkan bahwa data us mikroprosesor akan

menjadi pemancar ketika keadaan sama dengan 1 atau menjadi penerima jika keadaan

sama dengan 0. Sinyal ini cocok digunakan untuk eksternal buffer data bus.

๐ƒ๐„๐. Data Bus Enable aktif saat eksternal data bus

๐‡๐Ž๐‹๐ƒ. Suatu input yang digunakan untuk meminta direct memori access (DMA).

Jika HOLD aktif, maka 8086/8088 akan mengirimkan alamat, data dan kontrol bus

sehingga pengontrol DMA eksternal dapat mendapatkan akses ke memori dan I/O.

HLDA Hold acknowledge menunjukkan bahwa 8086/8088 dimasukkan pada hold

states

๐’๐’๐ŸŽฬ…ฬ… ฬ…ฬ… .ฬ… ๐’๐’๐ŸŽฬ…ฬ… ฬ…ฬ… ฬ… ini sama seperti S0 pada maksimum mode pada mikroprosesor. Sinyal ini

dikombinasikan dengan IO/M dan DT/R untuk membaca fungsi sandi pada siklus arus

bus.(lihat tabel 9.5)

Page 8: Bab 9

Tabel 9.5 Status siklus bus (8088) menggunakan ๐’๐’๐ŸŽฬ…ฬ… ฬ…ฬ… ฬ…

Pin mode maksimum. Untuk mendapatkan mode maksimum menggunakan

coprosesor eksternal yang menghubungkan MN/MX ke ground.

๐’๐Ÿ,ฬ…ฬ… ฬ…ฬ… ๐’๐Ÿฬ…ฬ… ฬ…ฬ… , ๐๐š๐ง ๐’๐ŸŽฬ…ฬ…ฬ…ฬ… status bit yang menunjukkan fungsi dari siklus arus bus. Sinyal yang

bekerja secara normal dan dikodekan oleh kontrol bus 8088 dan digambarkan pada

tabel 9.6. tabel tersebut menunjukkan fungsi dari ketiga status bit di maksimum mode

ini.

Tabel 9.6 Fungsi Control bus oleh mengontrol bus (82824)

๐‘๐ฬ…ฬ… ฬ…ฬ… /๐†๐“๐Ÿฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ๐๐š๐ง ๐‘๐ฬ…ฬ… ฬ…ฬ… /๐†๐“๐ŸŽฬ…ฬ… ฬ…ฬ… ฬ…ฬ… . Pin Request/grant digunakan untuk meminta DMA selama

operasi mode maksimum.

๐‹๐Ž๐‚๐Šฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… output lock digunakan untuk mengunci periperal dari sistem. Pin ini diaktifkan

menggunakan LOCK : awalan dari beberapa perintah.

Page 9: Bab 9

Tabel 9.7 Antrian status bit

๐๐’๐Ÿ ๐๐š๐ง ๐๐’๐Ÿ. Queue status bit menunjukkan status antrean instruksi internal. Pin ini

memberikan akses untuk 8087. Lihat tabel 9.7 untuk operasi dari Queue status bits

9-2 CLOCK GENERATOR (8284A)

Pada bagian ini mendiskripsikan clock generator 8284A dan sinyal RESET,

mengenalkan sinyal READY pada mikroprosesor 8086/8088. (sinyal READY akan

dibicarakan lebih dalam pada bagian 9-5)

8284A clock generator

Gambar 9.2 Pin-out dari clock generator 8284A

8284 adalah komponen pendukung bagi mikroprosesor 8086/8088. Tanpa adanya

clock generator, beberapa sirkuit tambahan memerlukan adanya CLK pada sistem

dasar 8086/8088. 8284A memberikan fungsi pokok : clock generation, sinkronisasi

RESET, sinkronisasi READY, dan sinyal level TTL. Gambar 9.2 menggambarkan

pin-out dari 8284 clock generator

Fungsi pin. 8284A adalah IC yang didesain khusus untuk digunakan pada

mikroprosesor 8086/8088. Berikut adalah daftar pin tersebut beserta fungsinya.

๐€๐„๐๐Ÿฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ๐๐š๐ง ๐€๐„๐๐Ÿฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… . Pin Address Enable menyediakan kualitas untuk sinyal, RDY1

dan RDY2. Bagian 9-5 menggambarkan penggunaan kedua pin ini, yang

menyebabkan keadaan wait states, input RDY1 dan RDY2. Wait states dibuat oleh

pin READY dari mikroprosesor 8086.8088, yang dikontrol dengan dua input tersebut.

Page 10: Bab 9

RDY1 dan dan RDY2. Input bus ready yang disediakan dalam konjungsi

๐€๐„๐๐Ÿฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ๐๐š๐ง ๐€๐„๐๐Ÿฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… yang menyebabkan wait states dalam sistem mikroprosesor

8086/8088.

๐€๐’๐˜๐๐‚ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… . Suatu input yang disediakan untuk memilih satu atau dua tahap dari

singkronisasi RDY1 dan RDY2

๐‘๐„๐€๐ƒ๐˜. Pin output yang menghubungkan 8086/8088 ke input READY. sinyal ini

disinkronisasi dengan input RDY1 dan RDY2

๐—๐Ÿ ๐๐š๐ง ๐—๐Ÿ. Crystal input, pin yang dihubungkan ke kristal eksternal dan digunakan

sebagai sumber untuk clock generator.

๐…/ ๐‚. Frequency/ Crystal, pin ini digunakan ketika pin memilih sumber masukan

clock dari 8284A. Jika pin ini pada keadaan tinggi (1), clock eksternal disediakan

unutk input pin EFI; jika keadaan rendah (0) maka osilator crystal internal yang

memberikan timing signal. Input frekuensi eksternal digunakan ketika ๐…/ ๐‚ keadaan

tinggi. EFI menyediakan waktu kapanpun ketika ๐…/ ๐‚ dalam keadaan tinggi.

CLK. Output clock yang menyediakan sinyal input clock ke 8086/8088 dan

komponen lainnya dalam sistem. Pin CLK memiliki sinyal output yang merupakan

sepertiga kristal atau frekuensi input EFI dan memiliki 33% duty cycle yang diminta

oleh 8086/8088.

PCLK. Sinyal yang merupakan seperenam kristal atau frekuensi input EFI dan

mempunyai 50% duty cycle. PCLK menyediakan sinyal clock ke perangkat periperal

dalam sistem.

OSC. Oscillator output adalah level sinyal TTL yang frekuensinya sama dengan

kristal atau input EFI. OSC ini memberikan sebuah iput EFI ke clock generator

8284A lainnya pada sistem yang sama

๐‘๐„๐’ฬ…ฬ… ฬ…ฬ… ฬ…ฬ… . Reset input merupakan input aktif pada saat keadaan rendah di 8284A. Pin ini

sering kali dihubungkan pada jaringan RC yang menyediakan power reset.

RESET. Reset output merupakan sinyal yang dihubungkan ke pin input RESET

8086/8088

CSYNC. Pin clock synchronization yang digunakan ketika input EFI memberikan

sinkronisasi dalam sistem dengan beberapa prosesor. Jika osilator kristal internal

digunakan, maka pin ini harus dihubungkan ke ground.

Vcc. Pin Input power supply yang dihubungkan ke +5.0 V dengan toleransi ยฑ10%

Cara Kerja 8284A

Page 11: Bab 9

Gambar 9.3 internal block diagram dari clock generator 8284A

8284A adalah komponen yang relatif mudah dipahami. Gambar 9.3 menggambarkan

diagram logic internal dari clock generator.

Cara kerja dari bagian clock. Setengah bagian dari diagram logic menunjukkan

bagian clock synchronize dan reset dari clock generator 8284A. Seperti yang

ditunjukkan dalam diagram, osilattor kristal mempunyai dua input : X1 dan X2, maka

oscilator akan membuat sinyal gelombang kotak dari frekuensi yang sama dengan

kristal. Gelombang kotak diberikan pada gerbang AND dan juga inverting buffer yang

memberikan sinyal output OSC. OSC dapat digunakan sebagai input EFI ke 8284A

yang lain.

Pemeriksaan gerbang AND menyatakan bahwa ketika ๐…/ ๐‚ logic 0,

mengarahkan osilator output melalui membagi dari 3 counter. Jika ๐…/ ๐‚ logic 1,

kemudian EFI diarahkan ke counter.

Output dari ketiga 3 counter menghasilkan waktu untuk sinkronisasi READY,

sinyal untuk counter lainnya dan sinyal CLK dari mikroprosesor. Sinyal CLK juga

akan dikuatkan sebelum sinyal tersebut meninggalkan clock generator. Perlu dicatat

bahwa keluaran dari counter pertama akan saling menghilangkan dengan yang kedua.

Kedua aliran counter memberikan pembagi 6 output pada PCLK.

Pada gambar 9.4 menunjukkan bagaimana 8284A dihubungkan ke 8086/8088/

perlu dicatat bahwa ๐…/ ๐‚ dan CSYNC dihubungkan dengan ground jika memilih

Page 12: Bab 9

crystal oscillator, dan 15 MHz kristal memberikan 5 MHz normal dari sinyal clock ke

8086/8088, sama baiknya dengan 2.5 MHz sinyal peripheral clock.

Cara Kerja bagian reset. Bagian reset dari 8284A adalah bagian yang sangat

sederhana. Bagian ini terdiri dari buffer trigger schmitt dan sirkuit flip-flop tipe D.

Flip-flop tipe D bahwa timing yang diperlukan dari input RESET 8086/8088 akan

dijumpai. Sirkuit ini menerapkan sinyal RESET ke mikroprosesor pada sisi negatif

(transisi 1-0) dari setiap clock. 8086/8088 memberikan contoh misalnya RESET pada

sisi positif (transisi 0-1) dari clock. Oleh sebab itu, sirkuit ini akan memperoleh timing

yang diperlukan dari 8086/8088.

Gambar 9.4 clock generator (8284A) dan mikroprosesor 8086 dan 8088 menggambar

hubungan dari clock dan sinyal reset.kristal 15 MHz memberikan 5 MHz clock untuk

mikroprosesor

Pada gambar 9.4 perlu diperhatikan bahwa sirkuit RC pada logic 0 ke pin

input RESฬ…ฬ… ฬ…ฬ… ฬ… ketika daya pertama kali diterapkan ke sistem. Setelah periode waktu yang

pendek, input tersebut akan menjadi logic 1 karena beban kapasitor terhadap +5 V

melalui resistor. Tekan Switch yang ada di bawah akan memungkinkan mikroprosesor

untuk RESET oleh operator. Pengaturan waktu reset yang benar memerlukan input

RESET untuk menjadi logika 1, tidak lebih dari 4 clock setelah power sistem

dinyalakan dan dijaga tetap pada posisi tinggi untuk minimal 50ยตs. Flip-flop akan

memastikan bahwa RESET akan tetap 1 dalam 4 clock, dan konstanta waktu RC

menyatakan bahwa dia akan tetap 1 untuk minimal 50ยตs.

9-3 BUS BUFFER AND LATCHING

Page 13: Bab 9

Sebelum mikroprosesor 8086/8088 dapat digunakan dengan memory atau interface

I/O, bus multiplexed harus didemultiplex. Paga bagian ini memberikan secara detail

apa yang dibutuhkan untuk demultiplexed dan mengilustrasikan bagaiman bus akan

dikuatkan untuk sistem yang sangat besar. (karena maksimum fan-out adalah 10,

sistem harus menguatkan jika hal itu mengandung lebih dari 10 komponen.)

Demultiplexing Bus

Alamat/data bus pad a8086/8088 di multiplexing untuk memperkecil nomer dari pin

yang dibutuhkan untuk IC mikroprosesor 8086/8088. Sayangnya, hal ini membeban

desainer hardware ini untuk mencari tugas penggalian informasi atau demultiplexing

dari pin multiplexing

Mengapa tidak meninggalkan bus multiplexed? Memori dan I/O bahwa alamat

yang valid dan stabil sepanjang siklus membaca dan menulis. Jika bus di

multiplexing, mengubah alamat pada memori dan I/O yang menyebabkan keduanya

membaca atau menulis data pada lokasi yang salah.

Semua sistem komputer memiliki 3 bus; (1) Bus alamat yang menyediakan

memori dan I/O dengan alamat memori atau port I/O, (2) data bus yang mentransfer

data antara mikroprosesor dan memori dan I/O dalam sistem, dan (3) bus kontrol yang

menyediakan sinyal kontrolke memori dan I/O. Bus ini harus ada untuk interface ke

memori dan I/O.

8088 Demultiplexing. Gambar 9.5 menggambarkan mikroprosesor 8088 dan

komponen yang dibutuhkan untuk demultiplexing. Dalam kasus ini, ada dua latch

transparan 74LS373 atau 74LS573 yangb digunakan untuk menghubungkan

demultiplex alamat / data bus AD7-AD0 dan alamat multiplexing Status A19 / S6-

A16 / S3.

Page 14: Bab 9

Gambar 9.5 Mikroprosesor 8088 ditunjukkan dengan bus alamat demultiplexe. Ini

adalah model yang digunakan unutk merancang kebanyakan sistem dasar 8088

Latch transparan ini mirip dengan kabel bila sewaktu-waktu ketika pin ALE

menjadi logic 1, dari input ke output. Setelah beberapa saat, ALE kembali ke keadaan

logic 0, yang menyebabkan latch mengingat input pada saat perubahan ke logic 0.

Pada kasuus ini, A7-A0 disimpan dalam bottom latch dan A19-A16 disimpan di top

latch. Hal ini menghasilkan bus alamat yang terpisah dengan A19-A0. Koneksi alamat

ini memungkinkan 8088 untuk menampung 1M byte di ruang memori. Fakta bahwa

bus data yang terpisah memungkinkan untuk dihubungkan ke 8-bit perangkat periferal

atau komponen memori.

8086 Demultiplexing. Sama seperti 8088, sistem 8086 membutuhkan pemisah antara

alamat, data dan kontrol bus. Hal ini berbeda terutama dalam jumlah pin multiplexing.

Pada 8088, hanya AD7-AD0 dan A19 / S6-A16 / S3 adalah multiplexing. Pada 8086,

pin multiplexing termasuk AD15-AD0 dan A19 / S6-A16 / S3, dan BHEฬ…ฬ… ฬ…ฬ… ฬ…ฬ… / S7. Semua

sinyal ini harus demultiplex.

Page 15: Bab 9

Gambar 9.6 menggambarkan demultiplex 8086 dengan ketiga bus : alamat

(A19-A0 dan BHEฬ…ฬ… ฬ…ฬ… ฬ…ฬ… ), data (D15-D0) dan kontrol (M/IOฬ…ฬ… ฬ…, RDฬ…ฬ… ฬ…ฬ… , dan WRฬ…ฬ… ฬ…ฬ… ฬ…).

Gambar 9.6 Mikroprosesor 8086 ditunjukkan dengan bus alamat demultiplexe. Ini

adalah model yang digunakan unutk merancang kebanyakan sistem dasar 8086

Rangkaian ini ditunjukkan di gambar 9.6 hampir identik dengan yang digambarkan

pada Gambar 9-5, kecuali bahwa latch tambahan 74LS373 telah ditambahkan ke

demultiplex bus alamat/data pin AD15-AD8 dan BHEฬ…ฬ… ฬ…ฬ… ฬ…ฬ… /S7 masukan telah ditambahkan

ke atas 74LS373 untuk memilih bank high-order memori dalam sistem memori l6-bit

dari 8086. Disini, memori dan sistem I/O melihat 8086 segai perangkat dengan bus

alamat 20 bit (A19-A0), bus data (D15-D0) dan 3 jalur kontrol bus (M/IOฬ…ฬ… ฬ…, RDฬ…ฬ… ฬ…ฬ… dan

WRฬ…ฬ… ฬ…ฬ… ฬ…).

Buffered System

Jika ada lebih dari 10 unit beban menempel pada beberapa pin bus, maka seluruh

sistem 8086/8088 harus dikuatkan. Pin demultiplexe telah dikuatkan oleh 74LS373

atau 74LS573, yang telah dirancang untuk kapasitansi tinggi yang akan di hadapi pada

sistem mikrokomputer.

Page 16: Bab 9

Penguatan arus output telah meningkat sehingga lebih banyak unit beban TTL

mungkin didorong: Logika 0 keluaran menyediakan sampai 32 mA arus yang

dihilangkan, dan logika 1 output menyediakan upto 5,2 mA sumber arus.

Total penguatan sinyal akan mendahului timing delay ke sistem. Ini

menyebabkab tidak adanya kesulitan kecuali kalau memori atau I/O digunakan, yang

fungsinya mendekati kecepatan maksimum bus. Bagian 9-4 akan mendiskusikan

masalah ini dan time delay secara lebih detail.

Penguatan total 8088. Gambar 9.7 menggambarkan penguatan total mikroprosesor

8088. Catatan bahwa tersisa 8 pin alamat (A15-A8), menggunakan 74LS244 octal

buffer; 8 pin data bus (D7-D0), menggunakan 74LS245 octal bidirectional bus buffer;

dan sinyal kontrol bus (M/IOฬ…ฬ… ฬ…, RDฬ…ฬ… ฬ…ฬ… dan WRฬ…ฬ… ฬ…ฬ… ฬ…)