1 / 35

EE-2623 Mikroprosesor & Antarmuka

EE-2623 Mikroprosesor & Antarmuka. Materi 6 Interfacing I/O Team Dosen 2006. Interfacing I/O. Secara umum interface I/O sama dengan interface ke memori, hanya ada sedikit perbedaan dalam hal:

oleg
Download Presentation

EE-2623 Mikroprosesor & Antarmuka

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EE-2623Mikroprosesor & Antarmuka Materi 6 Interfacing I/O Team Dosen 2006

  2. Interfacing I/O • Secara umum interface I/O sama dengan interface ke memori, hanya ada sedikit perbedaan dalam hal: • I/O umumnya hanya mempunyai alamat yang jauh lebih sedikit (dibawah 100) dari memori (kB)  saluran alamat yang masuk ke Address Decoder akan lebih banyak • Beberapa prosesor mempunyai peta I/O terpisah dari peta memori (termasuk i8088 dan turunannya)

  3. Peta Memori dan I/O intel 8088 FFFF I/O 64K 0000

  4. Interface Memori 8 IC RAM s / d AD s / d RAM1 RAM8 Latch s / d AD0 AD7 D7

  5. Contoh soal: • Gambarkan address decoder untuk LPT1 (378h) dan LPT2(278h) (/cs) di prosesor i8088 Lakukan dengan bertahap (mulai dari pembuatan tabel sampai pembuatan rangkaian)

  6. Jawaban soal Pemetaan LPT1 dan LPT2 ke ruang alamat i8088 64kB (A0-A15) (LPT1)  /cs = /A15./A14./A13./A12./A11./A10.A9.A8./A7.A6.A5.A4.A3./A2./A1./A0.IO (LPT1)  /cs = /A15./A14./A13./A12./A11./A10.A9./A8./A7.A6.A5.A4.A3./A2./A1./A0.IO

  7. Address Decoder LPT1 (378h) Controller LPT1 8 D0 – D7

  8. Contoh soal: • Gambarkan address decoder untuk joystick (100h sd 107h) /cs di prosesor i8088 Lakukan dengan bertahap (mulai dari pembuatan tabel sampai pembuatan rangkaian)

  9. Konsep I/O Interfacing • Sebagian besar dari I/O berinterface serial • Dibutuhkan ‘glue chip’ (controller) sebagai perantara antara I/O dan uP uP Controller AD mouse Serial Paralel

  10. Interface I/O Umum • Tidak berbeda jauh dari memori • Menggunakan latch LS373 • Menggunakan tranceiver/buffer, untuk I/O menjadi sangat penting karena kec. I/O << kec. Memori • Alamat dari A0 sd A15 • Menggunakan juga address decoder (biasanya jumlah kaki ke AD (An+1 sd A15; n= 1,2,3) > jumlah kaki ke I/O (A0 sd An)) • Khusus • I/O bisa meminta layanan dari prosesor, sementara memori tidak bisa  memerlukan mekanisme permintaan khusus (interupt)

  11. 2 Metoda Akses Dasar • Polling • Devais I/O menjadi slave dari prosesor, I/O berkerja hanya atas permintaan prosesor • Mekanisme: prosesor akan menanyakan (polling) ke setiap I/O apakah perlu dilayani (ada data) • Baik untuk jumlah I/O yang sedikit • Selama melakukan polling, prosesor tidak bisa melakukan pekerjaan lain

  12. Interupt • Prosesor terus bekerja sampai ada permintaan (interupt) dari I/O, jika ada permintaan prosesor menunda pekerjaan tersebut untuk melakukan pelayanan atas permintaan • Cocok untuk jumlah I/O yang banyak • Prosesor bisa mengerjakan pekerjaan lain selama tidak ada interupt • Membutuhkan sistem yang lebih rumit (implementasinya lebih sukar, melibatkan hardware dan software)

  13. uP Interupt Alamat + AD 3 uP I/O 1 4 Data Polling interupt 2 Alamat + AD 1 I/O 3 atau 2 Data 2 atau 3

  14. 1. Parallel Peripheral Interface i8255 • I8255 merupakan periferal pasangan dari i8088

  15. i8255 • Punya 3-4 alamat (8bit) yang bisa diakses baca dan tulis • 3 port (A,B,C) 8 bit kearah I/O CWR PortC R /WR D7 PortB R /RD PortA R D0 /CS 8 bit A0 A1

  16. Programable • Program = menulis suatu kode ke register control (kendali) • Diprogram 24 bit input  1 00 1 1 0 1 1 (9B) • 24 bit output  1 00 0 0 0 0 0 (80) • MOV AL, 10000000b • MOV DX,303  alamat control register • OUT DX, AL

  17. Mode • Mode 0 • Tanpa handshaking  antara PPI dan devais yang terhubung tidak ada negosiasi/persetujuan/tanda (PPI akan menulis/membaca data tanpa devais luar siap) • Pilihan • 24 bit input • 24 bit output • 12 input dan 12(atau 8) output • 12 output dan 12(atau 8) input • 8 bit input dan 16(atau 8) bit output • 8 bit output dan 16(atau 8) bit input

  18. ` • Mode 1 Input • Single handshaking • 1. STB • 2. data (devais  PPI) • 3. IBF • 4. INTR (memberi tahu uP ada data) • 5. RD • 6. data (ppi  uP) uP PPI devais STB IBF RD INTR

  19. Mode 1 Output 1. WR 2. data (uP  PPI) 3. OBF 4. data (PPI  devais) 5. ACK 6. INTR (memberi tahu uP, PPI siap menerima data) uP PPI devais ACK OBF WR INTR

  20. Mode 0  input atau output saja Mode 1  input atau output sajadengan handshaking Mode 2  input dan output dengan handshaking

  21. Contoh soal • (a) Temukanalamat-alamat port dan control: • (b) Tentukan program CWR, jika • PA =out, • PB=in, • PC0 – PC3 =in, • dan PC4 - PC7=out. • (c) Buat program 8255 untukmendapat data dari port B dankirimkanke port A. Juga data dari port C Low dikirimke CPU. CH

  22. Jawaban • /CS= /(A2.A3.A4.A5.A6./A7)  0111 11XX port A  0111 1100 = 7C port B  0111 1101 = 7D port C  0111 1110 = 7E CWR  0111 1111 = 7F • Program CWR jika PA=out,PB=in,PCL=in,PCH=out  CWR = 10000011 (83h) mov DX,xx7F mov AL,1000 0011 out DX,AL • Program (setelah CWR selesai di init  CWR= 1001 x001) mov DX,xx7C in AL,DX mov DX,xx7D out DX,AL mov DX,xx7E in AL,DX and AL,OF

  23. BSR (bit set/reset) • Sifat khas dari port C adalah bisa diprogram bit demi bit. Mode BSR bisa membuat setiap bit di PC0 sampai PC7 sebagai ‘0’ atau ‘1’.

  24. Contoh penggunaan • Program PC4 digambar ini untuk menghasilkan sebuah pulsa 50 ms dengan duty cycle 50%.

  25. Jawab: • 8255 diprogram di mode BSR, • bit D7 dari control word harus low. • Membuat PC4 high, control word nya adalah ‘0xxx1001". • Membuat PC4 low , control word nya adalah “0xxx1000". • X adalah "don't care" dan umumnya di set ‘0’. MOV AL.00001001B ;muat byte control (PC4=1) OUT 93H,AL ;set PC4 high, kirim ke CWR CALL DELAY ;waktu delay 0.5 * 50 ms MOV AL,00001 OOOB ;muat byte control (PC4=0) OUT 93,AL ;set PC4 low, kirim ke CWR CALL DELAY ;waktu delay 0.5 * 50 ms

  26. Mode 2: I/O bidirectional dengan handshaking • Untuk mentransfer data baik masuk mapun keluar melalui port yang sama dengan kemampuan handshaking, port A digunakan di mode 2. • Sinyal handshaking untuk port A disediakan dengan memilih bit di port C. • Di mode 2 selain port A, dapat digunakan port B di mode 0 or 1.

  27. Mode 2 and Mode 1 output PC3 PA7-PA0 PC7 PC6 PC4 PC5 PB7-0B1 PC1 PC2 PC0 INTRA OBFA ACKA STBA IBFA OBFB ACKB INTRB Control word 1 1 x x x 1 0 x RD WR

  28. Mode 2 and Mode 1 Input PC3 PA7-PA0 PC7 PC6 PC4 PC5 PB7-0B1 PC1 PC2 PC0 INTRA OBFA ACKA STBA IBFA IBFB STBB INTRB Control word 1 1 x x x 1 1 x RD WR

  29. Interfacing dengan DIP Switch PPI

  30. PPI sebagai controller LED 7 segmen PPI

More Related