Minggu, 17 Mei 2009

Transfer data PPI 8255 (2009 library)

Transfer Data Paralel (PPI 8255)
Salah satu serpih perantara yang digunakan untuk pengantarmukaan paralel (paralel interfacing) adalah Programmable Peripheral Interface (PPI) 8255. Serpih ini diproduksi oleh Intel Corporation dan dikemas dalam bentuk 40 pin dual in line package dan dirancang untuk berbagai fungsi pengantarmukaan dalam mikroprosesor. PPI 8255 memiliki 24 pin I/O yang dibagi menjadi tiga port masing-masing 8 bit. Port – port tersebut adalah port A (PA0-PA7), port B (PB0-PB7) dan port C (PC0-PC7). Sebagai jalur untuk transfer data dari dan ke PPI 8255 disediakan saluran 8 bit bus data (D0-D7). Bus data dari PPI ini dapat dihubungkan langsung dengan bus data dari mikrokomputer. Penyemat/pin out dari PPI 8255 diberikan pada Gambar 1. Proses pembacaan dan penulisan data dari dan ke PPI 8255 dapat dilakukan dengan program. Salah satu register yang akan dituju dari ketiga port dan register kontrol ditentukan dengan kombinasi penyemat A0 dan A1.Tabel 1.1 menyatakan format operasi dasar pembacaan atau penulisan dan pengalamatan dari 3 port I/O dan register kendali PPI 8255.
Kontrol Group A dan Group B
  • Konfigurasi fungsional setiap port diprogram oleh sistem perangkat lunak, yaitu melalui output CPU (control word) ke PPI 8255. Control word berisikan mode, bit set, bit reset, dan sebagainya. Ini merupakan suatu proses inisialisasi konfigurasi fungsional dari PPI 8255.
  • Setiap blok kontrol (Group A dan Group B) menerima perintah dari kontrol logika read/write, menerima kontrol word dari bus data untuk keperluan perintah pada setiap port. Kontrol group A adalah port A dan Port C upper (C7..C4) dan kontrol group B adalah port B dan port C lower (C3..C0), sedangkan register kontrol hanya dapat dioperasi untuk output (operasi write). Port A,B dan C
  • Port A. Output 8 bit data latch/buffer dan input 8 bit data latch.
  • Port B. Input/output 8 bit data latch/buffer dan input 8 bit data buffer. Port C. Output 8 bit data latch/buffer dan input 8 bit data buffer. Dan port ini dapat dibagi atas dua port (setiap port 4 bit data latch) yang digunakan secara bersama dengan port A dan port B untuk mengontrol sinyal output dan status sinyal input.

Deskripsi Operasional PPI 8255
Ada tiga mode operasi yang dapat dipilih olehsistem perangkat lunak untuk mengoperasikan PPI 8255 yaitu: Mode 0 – Basic Input/Output
  • Mode ini digunakan untuk input/output sederhana langsung ke port I/O.Peralatan luar yang dihubungkan selalu siap untuk mengirimkan/menerima data, sehingga mode ini tidak tergantung pada waktu.
  • Semua port A, B dan C bisa bekerja pada mode ini. Port-port PPI hanya bisa digunakan sebagai port input atau port output dari sistem mikroprosesor. Port A dan port B masing-masing dapat digunakan sebagai 8 bit masukan saja atau 8 bit keluaran saja. Sedangkan port C dapat digunakan sebagai empat (4) bit masukan atau empat (4) bit keluaran seperti port A dan port B.
Mode 1 – Strobe Input/Output
Mode ini digunakan untuk peralatan luar yang mempunyai data valid pada saat – saat tertentu, sehingga diperlukan sinyal-sinyal pemicu (strobe) pada I/O agar data segera dapat dikirim, sehingga mode ini tergantung pada waktu.
  • Pada mode ini port A dan port B bisa ditentukan sebagai port masukan atau keluaran data, sedangkan port C berfungsi sebagai pembawa sinyal status.Transfer data mode ini merupakan sinyal terprogram bersyarat.
Mode 2 – Bidirectional Bus
  • Mode ini mampu mengrim/menerima data dalam dua arah (bidirectional handshake data transfer).
  • Mode ini menyebabkan port A bisa berfungsi sebagai masukan sekaligus keluaran yang dilengkapi dengan sinyal jabat tangan 5 bit dari port C sebagai kontrol port A. Mode ini tidak tersedia untuk port B.
Kata Kendali (Control Word) merupakan pendefinisian mode dan port yang akan digunakan dan prosesnya dilakukan oleh perangkat lunak yang ditunjukkan dalam Gambar 2.

TTRANSFER DATA PC MENGGUNAKAN PPI CARD

Sistem Bus dan I/O Mikrokomputer
Tiga unit utama yang terdapat dalam sistem mikrokomputer adalah Unit Pemroses Pusat (Central Processing Unit – CPU), unit memori dan unit I/O. Hubungan atau aliran informasi antara masing-masing unit utama tersebut berlangsung melalui tiga jalur utama sesuai dengan jenisnya. Ketiga jalur tersebut adalah jalur data, jalur alamat dan jalur kontrol.
1. Jalur data (Data Bus), berfungsi sebagai jalur untuk pertukaran data atau informasi antar unit, yaitu antara CPU, memori dan peralatan I/O.
2. Jalur alamat (Address Bus), berfungsi sebagai pengatur jalur komunikasi antara CPU dengan memori (RAM/ROM), CPU dengan I/O dan antara memori dengan I/O.
3. Jalur Kontrol (Control Bus), berfungsi menentukan jenis komunikasi dan arah aliran data serta memberi tanda pada awal dan akhir pengiriman data.
Pada sistem bus, data dipindahkan selama selang waktu yang disebut siklus jalur (bus cycle). Siklus jalur dibedakan atas cara pemindahan informasi antara mikroprosesor, memori dan I/O. Adapun jenis-jenis siklus jalur dan aliran informasi dapat dilihat pada
Gambar 1. Digram blok sistem mikrokomputer
Dua dari beberapa siklus jalur seperti pada Tabel 1. yaitu pembacaan I/O dan penulisan I/O merupakan jalur yang digunakan pada rangkaian antarmuka (interface). Siklus pembacaan port I/O terjadi setiap mikroprosesor melaksanakan instruksi masuk (in). Kegunaan siklus ini untuk mengambil data dari salah satu alamat port I/O, sedangkan siklus penulisan port I/O dilakukan setiap mikroprosesor melaksanakan perintah keluar (out). Siklus ini menuliskan data dari mikroprosesor ke alamat port I/O tertentu. IBM PC/XT-AT menyediakan sepuluh bit bagian bawah dari bus alamat untuk ruang alamat I/O, sehingga tersedia ruang alamat port I/O sebesar 1024. Ruang alamat tersebut dibagi menjadi dua bagian yaitu 512 alamat (0000H-01FFH) digunakan untuk sistem board dan 512 alamat-alamat sisanya (0200H-03FFH) disediakan untuk alamat-alamat kartu tambahan (Slot Card). Pemilihan alamat I/O untuk pengembangan antarmuka dapat menggunakan alamat prototype card dan alamat cadangan yang belum terpakai oleh kartu yang lain. Pemetaan ruang alamat I/O secara lengkap dapat dilihat pada tabel 2.
Tabel 2. Peta Ruang Alamat I/O
Alamat Port (hex) Sarana
000-00F Chip 8237 DMA Controller
020-021 Chip 8259 PIC
040-043 Chip 8253 PIT
060-063 Chip 8255 PIO
080-083 DMA page register
100-1FF Tidak digunakan
200-20F Game control
210-217 Unit ekspansi
220-24F Cadangan
278-27F Cadangan
2F0-2F7 Cadangan
2F8-2FF Komunikasi asinkron (2)
300-31F Prototype card
320-32F Hard disk
378-37F Printer
380-38C SDLC
38D-398 Komunikasi sinkron biner (2)
3A0-3A9 Komunikasi sinkron biner (1)
3B0-3BF Display monochrom/Printer card
3C0-3CF Cadangan
3D0-3DF Color/Graphics card
3E0-3F7 Cadangan
3F0-3F7 Diskette
3F8-3FF Komunikasi sinkron (1)

Unit Masukan dan Keluaran 2 (Interface)

Modul I/O
Merupakan peralatan antarmuka (interface) bagi sistem bus atau switch sentral dan mengontrol satu atau lebih perangkat peripheral.
Tidak hanya sekedar modul penghubung, tetapi sebuah piranti yang berisi logika dalam melakukan fungsi komunikasi antara peripheral dan bus komputer
>> Programmable Peripheral Interface(PPI)Intel 8255A
Menggunakan I/O terprogram
Interrupt driven I/O
Dirancang untuk keperluan mikroprosesor 8086
>> Modul IO PPI 8255

>> Modul I/O PPI 8255
Bagian kanan dari blok diagram Intel 8255A
 24 saluran antarmuka luar
• 8 bit port A
• 8 bit port B
• 4 bit port CA dan 4 bit port CB
 Saluran tersebut dapat diprogram dari mikroprosesor 8086 dengan menggunakan register kontrol untuk menentukan bermacam – macam mode operasi dan konfigurasinya.
Bagian kiri blok diagram merupakan interface internal dengan mikroprosesor 8086.
 8 bus data dua arah (D0 – D7)
 bus alamat
 bus kontrol yang terdiri atas saluran CHIP SELECT, READ, WRITE, dan RESET
>> Interface keyboard dgn PPI 8255
>>
>> DMA (Direct Memory Access)
Direct Memory Access (DMA)
DMA ialah sebuah prosesor khusus (special purpose processor) yang berguna untuk menghindari pembebananCPU utama oleh program I/O (PIO). Untuk memulai sebuah transfer DMA, host akan menuliskan sebuah DMA command block yang berisi pointer yang menunjuk ke sumber transfer, pointer yang menunjuk ke tujuan transfer, dan jumlah byte yang ditransfer, ke memori. CPU kemudian menuliskan alamat command block ini ke pengendali DMA, sehingga
pengendali DMA dapat kemudian mengoperasikan bus memori secara langsung dengan menempatkan alamatalamatpada bus tersebut untuk melakukan transfer tanpabantuan CPU.
>>Tiga langkah dalam transfer DMA:
Prosesor menyiapkan DMA transfer dengan menyedia kan data-data dari perangkat, operasi yang akan ditampilkan, alamat memori yang menjadi sumber dan tujuan data, dan banyaknya byte yang ditransfer.
Pengendali DMA memulai operasi (menyiapkan bus, menyediakan alamat, menulis dan membaca data), sampai seluruh blok sudah di transfer.
Pengendali DMA meng-interupsi prosesor, dimana selanjutnya akan ditentukan tindakan berikutnya.
>>Direct Memory Access (DMA)
Pada dasarnya, DMA mempunyai dua metode yang berbeda dalam mentransfer data. Metode yang pertama ialah metode yang sangat baku dan sederhana disebut HALT, atau Burst Mode DMA, karena pengendali DMA memegang kontrol dari sistem bus dan mentransfer semua blok data ke atau dari memori pada single burst.
Selagi transfer masih dalam prosres, sistem mikroprosessor diset idle, tidak melakukan instruksi operasi untuk menjaga internal register. Tipe operasi DMA seperti ini ada pada kebanyakan komputer.
Metode yang kedua, mengikutsertakan pengendali DMA untuk memegang kontrol dari sistem bus untuk jangka waktu yang lebih pendek pada periode dimana mikroprosessor sibuk dengan operasi internal dan tidak membutuhkan akses ke sistem bus. Metode DMA ini disebut cycle stealing mode. Cycle stealing DMA lebih kompleks untuk diimplementasikan dibandingkan HALT DMA, karena pengendali DMA harus mempunyai kepintaran untuk merasakan waktu pada saat sistem bus terbuka.
>> Blog diagram DMA
>> KOnfigurasi I/O DMA
>>Direct Memory Access (DMA)
Melaksanakan transfer data secara mandiri
 DMA memerlukan pengambilalihan kontrol bus dari CPU
 DMA akan menggunakan bus bila CPU tidak menggunakannya atau DMA memaksa CPU untuk menghentikan sementara penggunaan bus
 Teknik cyclestealing, modul DMA mengambil alih siklus bus Penghentian sementara penggunaan bus bukanlah bentuk interupsi, tetapi penghentian proses sesaat yang berimplikasi
hanya pada kelambatan eksekusi CPU saja
>>Klasifikasi perangkat eksternal
Human Readable, yaitu perangkat yang berhubungan dengan manusia sebagai
pengguna komputer. Contoh: monitor,keyboard, mouse, printer, joystick, diskdrive.
Machine readable, yaitu perangkat yangberhubungan dengan peralatan. Biasanya
berupa modul sensor dan tranduser untukmonitoring dan kontrol suatu peralatan atau
sistem.
Communication, yatu perangkat yang berhubungan dengan komunikasi jarak jauh. Contoh: NIC dan modem

Tidak ada komentar:

Posting Komentar