Rabu, 14 April 2010

interface

MEMORY-MAPPED I / O
Memory-mapped I / O (MMIO) dan port I / O (juga disebut port-dipetakan I / O atau PMIO) adalah dua metode saling melengkapi melakukan input / output antara CPU dan perangkat periferal komputer. Metode lain, tidak dibahas dalam artikel ini, adalah menggunakan berdedikasi I / O prosesor - yang umumnya dikenal sebagai saluran pada komputer mainframe - yang mengeksekusi instruksi mereka sendiri.

Memory-mapped I / O (jangan dikelirukan dengan dipetakan memori-berkas I / O) menggunakan alamat yang sama bus ke kedua alamat memori dan I / O devices, dan instruksi CPU yang digunakan untuk mengakses memori juga digunakan untuk mengakses perangkat . Dalam rangka mengakomodasi I / O device, wilayah addressable CPU ruang harus disediakan untuk I / O. Mungkin reservasi sementara - Commodore 64 bank dapat beralih di antara I / O device dan memori biasa - atau permanen. Setiap I / O device memonitor alamat CPU bus dan merespon ke salah satu dari CPU akses perangkat-ruang alamat yang diberikan, menghubungkan data bus ke perangkat yang diinginkan hardware mendaftar.

Hardware interrupt adalah salah satu metode komunikasi antara CPU dan perangkat periferal. Namun, selalu diperlakukan secara terpisah untuk sejumlah alasan. Ini adalah perangkat-dimulai, berlawanan dengan metode-metode yang disebutkan di atas, yang CPU-dimulai. Hal ini juga searah, seperti arus informasi hanya dari perangkat ke CPU. Terakhir, setiap menyela baris hanya membawa satu bit informasi dengan arti tetap, yaitu "suatu peristiwa yang memerlukan perhatian telah terjadi dalam perangkat jalur memotong ini".

Keuntungan utama menggunakan port-dipetakan I / O adalah pada CPU dengan kemampuan berbicara yang terbatas. Karena port-dipetakan I / O memisahkan I / O akses dari akses memori, ruang alamat lengkap dapat digunakan untuk memori. Hal ini juga jelas bagi seseorang membaca sebuah program bahasa assembly listing (atau bahkan, dalam kasus-kasus langka, menganalisis bahasa mesin), ketika I / O yang sedang dilakukan, karena instruksi khusus yang hanya dapat digunakan untuk tujuan itu.

Ada dua keuntungan utama menggunakan memori-dipetakan I / O. Salah satunya adalah bahwa, dengan membuang kerumitan tambahan bahwa port I / O membawa, CPU memerlukan lebih sedikit logika internal dan dengan demikian lebih murah, lebih cepat, lebih mudah untuk membangun, mengkonsumsi lebih sedikit daya dan dapat secara fisik lebih kecil; ini mengikuti prinsip-prinsip dasar dikurangi set instruksi komputasi, dan juga menguntungkan dalam embedded system. Keuntungan lainnya adalah bahwa, karena instruksi memori biasa digunakan untuk menangani perangkat, semua CPU Tersedia modus pengalamatan untuk I / O serta memori, dan instruksi yang melakukan suatu operasi ALU langsung pada memori operand - loading sebuah operand dari lokasi memori, menyimpan hasil ke lokasi memori, atau keduanya - dapat digunakan dengan I / O device register juga. Sebaliknya, port-dipetakan I / O instruksi seringkali sangat terbatas, sering hanya untuk menikmati memberikan beban dan menyimpannya operasi antara CPU register dan I / O ports, sehingga, misalnya, untuk menambahkan konstanta ke pelabuhan-perangkat dipetakan mendaftar akan memerlukan tiga instruksi: membaca port pada CPU mendaftar, tambahkan terus-menerus ke CPU mendaftar, dan menulis hasilnya kembali ke pelabuhan.


Basic types of address decoding
* Exhaustive - 1:1 pemetaan alamat unik mendaftar ke salah satu perangkat keras (lokasi memori fisik)
* Partial - n: 1 pemetaan dari n alamat unik untuk satu hardware mendaftar. Partial decoding memungkinkan sebuah lokasi memori untuk memiliki lebih dari satu alamat, sehingga memungkinkan para programmer untuk referensi lokasi memori n menggunakan alamat yang berbeda. Mungkin juga dapat dilakukan hanya untuk menyederhanakan decoding hardware, bila tidak semua ruang alamat CPU diperlukan. Sinonim: foldback, multiply-dipetakan, sebagian-dipetakan.
* Linear - Alamat baris yang digunakan secara langsung tanpa logika decoding. Hal ini dilakukan dengan perangkat seperti RAM dan ROM yang memiliki urutan alamat input, dan dengan perangkat chip yang memiliki urutan yang sama masukan-masukan untuk mengatasi bank register. Linear pengalamatan jarang digunakan sendiri (hanya jika ada beberapa perangkat pada bus, dengan menggunakan linear murni ditujukan untuk lebih dari satu perangkat limbah biasanya banyak ruang alamat) tetapi dikombinasikan dengan salah satu metode lain untuk memilih perangkat atau perangkat yang ada dalam kelompok yang menangani linear memilih satu register atau lokasi memori.

Incomplete address decoding

Alamat mungkin akan diterjemahkan sepenuhnya atau tidak sempurna oleh perangkat.

* Lengkapi decoding melibatkan memeriksa setiap baris dari bus alamat, menyebabkan bus data yang terbuka saat CPU mengakses suatu wilayah unmapped memori. (Perhatikan bahwa bahkan dengan decoding tidak lengkap, beberapa dari daerah parsial didekode mungkin tidak akan terhubung ke perangkat lain, meninggalkan data bus terbuka ketika wilayah tersebut diakses.)

* Incomplete decoding, atau parsial decoding, sederhana dan sering menggunakan logika yang murah hanya meneliti beberapa baris alamat. Decoding sederhana seperti sirkuit mungkin memungkinkan perangkat untuk merespon beberapa alamat yang berbeda, secara efektif menciptakan virtual salinan perangkat di tempat yang berbeda dalam peta memori. Semua salinan ini merujuk kepada perangkat nyata yang sama, sehingga tidak ada keuntungan tertentu dalam melakukan ini, kecuali untuk menyederhanakan decoder (atau mungkin perangkat lunak yang menggunakan perangkat). Umumnya, para decoding itu sendiri dapat diprogram, sehingga sistem dapat mengkonfigurasi ulang memori sendiri peta sesuai kebutuhan, meskipun ini adalah pengembangan yang lebih baru dan umumnya bertentangan dengan maksud menjadi lebih murah.






PENGENALAN PPI

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.


Gambar 1. Penyemat PPI 8255

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.



Gambar 2. Format Kata Kendali PPI 8255

Tujuan Praktikum Pengenalan PPI
Tujuan pratikum ini adalah untuk memahami transfer data paralel dan cara kerja PPI 8255 sebagai interface paralel.

A. Cara Kerja PPI 8255 Operasi Output (Penulisan Data)
• Set semua sinyal kontrol yang digunakan ( , , ) ke posisi tidak aktif (semua sinyal diberi logika tinggi)
• Resetlah PPI 8255 dengan mengaktifkan pin RESET (diberi logika 1).
• Siapkan kata kendali untuk operasi output (misal :80H) dengan cara memberikan data kata kendali pada modul input.
• Set alamat PPI pada register kontrol. A0 = 1, A1 = 1.
• Aktifkan PPI 8255, dengan cara memberikan logika rendah pada pin , =0
• Tuliskan kata kendali ke register kontrol PPI 8255, dengan cara memberikan pulsa menuju rendah pada pin . =
• Non-aktifkan PPI 825. =1
• Siapkan data yang akan ditulis ke PPI ( misal : D7-D0 = 10101010 = AAH ).
• Set port tempat data dikeluarkan.Misalnya data akan dikeluarkan pada port A, maka set A0=0, A1=0.
• Aktifkan PPI 8255. =0
• Tulis data yang telah disiapkan ke port A. =
• Amati perubahan pada modul LED indikator
• Cobalah diganti dengan data yang lain, dengan mengulangi langkah 9 - 14.
• Ulangi langkah - langkah diatas (yang bersesuaian) jika data akan dikeluarkan ke port B.
• Ulangi langkah - langkah diatas (yang bersesuaian) jika data akan dikeluarkan ke port C. B. Cara Kerja PPI 8255 Operasi Input (Pembacaan Data)
• Siapkan kata kendali untuk operasi input (misal : 9BH; PA, PB, PC: input; mode 0) dengan cara memberikan data kata kendali pada modul input.
• Dengan cara yang sama denga percobaan A1, masukkan kata kendali tersebut ke reguster kendali PPI 8255.(Setelah itu biarkab kata kendali, jangan direset).
• Susunlah modul peralatan seperti pada gambar 3.1.2, untuk operasi pembacaan data.
• Pastikan rangkaian yang disusun sudah benar sebelum menghubungkannya ke sumber listrik.
• Set semua sinyal kontrol yang digunakan ( , , ) ke posisi tidak aktif (semua sinyal diberi logika tinggi). Pilihlah port tempat dimana data akan dimasukkan.Misalnya data akan dimasukkan dari port A, maka set A0=0, A1=0.
• Siapkan datanya.Misalkan : PA7-PA0 = 10101010 = AAH.
• Aktifkan PPI 8255. =0
• Baca data yang disiapkan di port A. =
• Amati perubahan pada LED indikator
• Cobalah diganti dengan data yang lain dan ulangi proses pembacaan data.
• Ulangi langkah - langkah tersebut untuk port B dan port C
Port paralel
Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Port paralel (DB-25) adalah salah satu jenis soket pada personal komputer untuk berkomunikasi dengan peralatan luar seperti printer model lama. Karena itu parallel port sering juga disebut printer port. Perusahaan yang memperkenalkan port ini adalah Centronic, maka port ini juga disebut dengan Centronics port.
Kesederhanaan port ini dari sisi pemrograman dan antarmuka dengan hardware membuat port ini sering digunakan untuk percobaan-percobaan sederhana dalam perancangan peralatan elektronika.
Register-register dari Port Paralel
Semua data, kontrol, dan status dari port paralel berhubungan dengan register-register yang ada didalam komputer. Dengan mengakses langsung register-register tersebut, masukan dan keluaran dari port paralel dapat diatur. Register-register pada port paralel adalah:
1. Register data
2. Register status
3. Register kontrol
Pada umumnya di komputer personal alamat dasar LPT1 adalah 0x378 (378 hexadecimal) dan LPT2 adalah 0x278. Alamat dari ketiga register tersebut diatas dapat ditentukan dengan menjumlahkan alamat dasar dari port paralel dengan bilangan desimal tertentu. Misalnya kita ingin mengakses register data dari port paralel LPT1, alamat register datanya sama dengan alamat dasar dari LPT1 yaitu 0x378. Sedangkan alamat register status sama dengan alamat register dasar + 1 atau 0x379 dan alamat register kontrolnya sama dengan alamat register dasar + 2 atau 0x37A. Hal tersebut berlaku juga pada LPT2. Untuk lebih jelasnya, dapat dilihat ditabel dibawah ini:
Register LPT1 LPT2
Register data (alamat dasar + 0) 0x378 0x278
Register status (alamat dasar + 1) 0x379 0x279
Register kontrol (alamat dasar + 2) 0x37A 0x27A

Pengenalan Port Paralel
Port paralel ialah port data di komputer untuk mentransmisi 8 bit data dalam sekali detak. Standar port paralel yang baru ialah IEEE 1284 dimana dikeluarkan tahun 1994. Standar ini mendefinisikan 5 mode operasi sebagai berikut :
1. Mode kompatibilitas
2. mode nibble
3. mode byte
4. mode EPP (enhanced parallel port)
5. mode ECP (Extended capability port)
Tujuan dari standar yang baru tersebut ialah untuk mendesain driver dan peralatan yang baru yang kompatibel dengan peralatan lainnya serta standar paralel port sebelumnya (SPP) yangn diluncurkan tahun 1981. Mode Compatibilitas, nibble dan byte digunakan sebagai standar perangkat keras yang tersedia di port paralel orisinal dimana EPP dan ECP membutuhkan tambahan hardware dimana dapat berjalan dengan kecepatan yang lebih tinggi. Mode kompatibilitas atau (“Mode Centronics” ) hanya dapat mengirimkan data pada arah maju pada kecepatan 50 kbytes per detik hingga 150 kbytes per detik. Untuk menerima data, anda harus mengubah mode menjadi mode nibble atau byte. Mode nibble dapat menerima 4 bit (nibble) pada arah yang mundur, misalnya dari alat ke computer. Mode byte menggunakan fitur bi-directional parallel untuk menerima 1 byte (8 bit) data pada arah mundur. IRQ (Interrupt Request ) pada port paralel biasanya pada IRQ5 atau IRQ7.
Port paralel Extend dan Enhanced menggunakan hardware tambahan untuk membangkitkan dan mengatur handshaking. Untuk mengeluarkan 1 byte ke printer menggunakan mode kompatibilitas, software harus :
1. menulis byte ke data port
2. cek untuk melihat apakah printer sibuk, jika sibuk, ia tidak akan menerima data, sehingga data yang telah ditulis akan hilang.
3. buat strobe (pin 1) rendah. Ini memberitahukan printer bahwa data yang benar telah berada di line data
4. buat strobe tinggi lagi setelah menunggu sekitar 5 mikrodetik setelah membuat strobe low.
Hal ini membatasi kecepatan data. Sedangkan EPP dan ECP mengizinkan hardware mengecek jika printer sibuk dan mengeluarkan sinyal strobe atau handshaking lainnya. Ini berate hanya 1 instruksi I/O yang harus dilakukan yang akan meningkatkan kecepatan Port ECP juga mempunyai kelebihan menggunakan saluran DMA dan buffer FIFO, jadi data dapat digeser tanpa menggunakan instruksi I/O.
Protokol EPP mempunyai 4 macam siklus transfer dta yang berbeda yaitu :
1. Siklus baca data (Data read)
2. Siklus baca alamat (Address Read)
3. Siklus tulis data (data write)
4. siklus tulis alamat (address write)

Siklus data digunakan untuk mentrasfer data antara host dan peripheral. Siklus alamat digunakan untuk mengirimkan alamat, saluran (channel) atau informasi perintah dan control.
Berikut ialah tabel nama pin dari konekter DB25 dan Centronics dengan jumlah konektor 34. DB25 ialah konektor yang umum digunakan di computer sebagai port paralel , sedangkan konektor Centronics umum ditemukan di printer. IEEE 1284 ialah standar yang menentukan 3 konektor berbeda yang dapat digunakan dengan port paralel, yaitu1284 tipe A ialah konektor DB25 yang dapat ditemukan di hampir semua komputer, 1284 tipe B ialah konektor Centronics 36 pin yang umum ditemukan di printer, IEEE 1284 type C ialah konektor 36 pin seperti Centronics, tetapi ukurannya lebih kecil dan lebih memuaskan.
Tabel Nama pin dari konektor parallel port DB 25 dan Centronics
Pin DB25 Pin Centronics SPP Signal Arah In/out Register Hardware di invert
1 1 nStrobe In/Out Control Ya
2 2 Data 0 Out Data
3 3 Data 1 Out Data
4 4 Data 2 Out Data
5 5 Data 3 Out Data
6 6 Data 4 Out Data
7 7 Data 5 Out Data
8 8 Data 6 Out Data
9 9 Data 7 Out Data
10 10 nAck In Status
11 11 Busy In Status Ya
12 12 Paper-Out / Paper-End In Status
13 13 Select In Status
14 14 nAuto-Linefeed In/Out Control Ya
15 32 nError / nFault In Status
16 31 nInitialize In/Out Control
17 36 nSelect-Printer / nSelect-In In/Out Control Ya
18 - 25 19-30 Ground Gnd

Dalam komputasi , sebuah port serial adalah komunikasi serial interface fisik melalui transfer informasi yang masuk atau keluar satu bit pada suatu waktu (kontras port paralel ). [1] Sepanjang sebagian besar sejarah komputer pribadi , transfer data melalui port serial terhubung komputer ke perangkat seperti terminal dan berbagai periferal.
Virtual" port serial
Main article: Virtual serial port Artikel utama: serial port Virtual
. Sebuah port serial virtual adalah emulasi dari port serial standar. pelabuhan ini dibuat oleh perangkat lunak yang memungkinkan tambahan serial port dalam sistem operasi tanpa instalasi hardware tambahan (seperti kartu ekspansi , dll). Tidak seperti port serial fisik satu virtual dapat diberi nama apapun (COM255, VSP33, dll. Hal ini dimungkinkan untuk menciptakan jumlah tidak terbatas port serial virtual di PC. The only limitation is Satu-satunya batasan adalah kinerja komputer, karena mungkin memerlukan sejumlah besar sumber daya untuk meniru sejumlah besar port serial.
port serial Virtual meniru fungsi semua port serial hardware, termasuk tingkat Baud , bit data, bit paritas, bit Berhenti, dll Selain itu mereka mengijinkan mengendalikan aliran data, meniru garis sinyal semua (DTR / DSR / CTS / RTS / DCD / RI) dan mengubah pinout. Virtual port serial yang umum dengan Bluetooth dan merupakan cara standar untuk menerima data dari GPS dilengkapi modul-Bluetooth.
Virtual emulasi port serial dapat bermanfaat jika ada kekurangan yang tersedia port serial fisik atau mereka tidak memenuhi persyaratan saat ini. Misalnya, serial port virtual dapat berbagi data antara beberapa aplikasi dari salah satu GPS perangkat terhubung ke port serial. Pilihan lainnya adalah untuk berkomunikasi dengan perangkat seri lainnya melalui internet atau LAN seolah-olah mereka secara lokal terhubung ke komputer (teknologi Serial-over-Ethernet). Dua komputer atau aplikasi dapat berkomunikasi melalui link serial port dicontoh. emulator Virtual port serial yang tersedia untuk Microsoft Windows dan beberapa dari mereka berjalan di bawah Windows CE, Windows Mobile dan Pocket PC.
Dalam komputasi , sebuah port serial adalah komunikasi serial interface fisik melalui transfer informasi yang masuk atau keluar satu bit pada suatu waktu (kontras port paralel ). [1] Sepanjang sebagian besar sejarah komputer pribadi , transfer data melalui port serial terhubung komputer ke perangkat seperti terminal dan berbagai periferal.
Sedangkan antarmuka seperti Ethernet , FireWire , dan USB semua mengirim data sebagai serial sungai , serial "port istilah" biasanya mengidentifikasi perangkat keras kurang lebih sesuai dengan RS-232 standar, dimaksudkan untuk antarmuka dengan modem atau dengan perangkat komunikasi yang sama .
Pada komputer pribadi modern port serial umumnya telah digantikan oleh USB dan firewire untuk sambungan ke perangkat periferal. Banyak komputer pribadi modern tidak memiliki port serial karena hal ini port warisan telah digantikan untuk sebagian besar menggunakan. Server computers may use a serial port as a control console for diagnostics. Serial port umumnya masih digunakan dalam aplikasi seperti sistem otomasi industri, analisis ilmiah, toko sampai sistem dan beberapa industri dan produk konsumen. Server komputer dapat menggunakan port serial sebagai kontrol konsol untuk diagnosa. Peralatan jaringan (seperti router dan switch) sering menggunakan konsol serial untuk konfigurasi. Serial port masih digunakan di daerah-daerah karena mereka yang sederhana, murah dan fungsi konsol mereka sangat standar dan meluas. Sebuah port serial membutuhkan perangkat lunak pendukung sangat sedikit dari sistem host.
A-negara buffer tri adalah perangkat yang memungkinkan Anda untuk mengontrol kapan sinyal output membuat ke bus. Ketika-buffer bit kontrol negara tri aktif, masukan dari perangkat membuat ke keluaran. Ini adalah bila katup "" terbuka.
Ketika itu tidak aktif, output dari perangkat Z, yang tinggi-impedansi atau, dengan kata lain, apa-apa. Hal ini bila katup "" ditutup, dan tidak ada sinyal listrik diperbolehkan untuk lolos ke output.
Katup "" analogi membantu memudahkan untuk memahami perilaku tri-state buffer.

Tidak ada komentar:

Posting Komentar