Universal Serial Bus (USB)
Universal Serial Bus (USB)
I. Apa itu USB ?
I. Apa itu USB ?
Seseorang yang telah menggunakan komputer selama lebih dari 3 atau 5 tahun akan
Seseorang yang telah menggunakan komputer selama lebih dari 3 atau 5 tahun akan
mengetahui hal-hal apa saja yang hendak dipecahkan oleh USB. Di masa lalu, untuk
mengetahui hal-hal apa saja yang hendak dipecahkan oleh USB. Di masa lalu, untuk
menghubungkan berbagai maca alat ke komputer diperlukan berbagai macam cara pula :
menghubungkan berbagai maca alat ke komputer diperlukan berbagai macam cara pula :
Parallel
Parallel port
port
, dapat digunakan untuk mengubungkan
, dapat digunakan untuk mengubungkan
printer
printer
,,
scanner
scanner
atau
atau
Zip
Zip
drive
drive
. Yang menjadi masalah adalah
. Yang menjadi masalah adalah kebanyakan komputer hanya memiliki sebuah
kebanyakan komputer hanya memiliki sebuah
parallel
parallel port
port
sehingga pemakai harus menggunakan alat-alat tersebut secara
sehingga pemakai harus menggunakan alat-alat tersebut secara
bergantian.
bergantian. Belum
Belum lagi
lagi masalah
masalah kecepatan,
kecepatan,
zip
zip drive
drive
yang membutuhkan transfer
yang membutuhkan transfer
data kecepatan tinggi menjadi
data kecepatan tinggi menjadi lambat karena harus me
lambat karena harus menggu
nggunakan
nakan
parallel port
parallel port
..
Serial port
Serial port
, umumnya digunakan untuk
, umumnya digunakan untuk
modem
modem
dan komunikasi langsung antar 2
dan komunikasi langsung antar 2
komputer. Bila dibandingkan dengan
komputer. Bila dibandingkan dengan
parallel
parallel port
port
maka
maka
serial port
serial
port
jauh lebih
jauh lebih
lambat.
lambat.
Slot ISA atau PCI, digunakan oleh peralatan-peralatan lain yang memerlukan
Slot ISA atau PCI, digunakan oleh peralatan-peralatan lain yang memerlukan
transfer data secara cepat. Sayangnya, prosedur instalasi
transfer data secara cepat. Sayangnya, prosedur instalasi
card-card
card-card
yang datang
yang datang
bersama alat-alat tersebut pada umumnya tidak mudah.
bersama alat-alat tersebut pada umumnya tidak mudah.
Tujuan utama dari USB adalah untuk mengakhiri segala ketidak nyamanan diatas.
Tujuan utama dari USB adalah untuk mengakhiri segala ketidak nyamanan diatas.
USB memberikan sebuah
USB memberikan sebuah
bus
bus
yang terstandarisasi, mudah digunakan dan dapat
yang terstandarisasi, mudah digunakan dan dapat
menghubungkan sampai 127 peralatan pada komputer. Setial alat yang duhubungkan
menghubungkan sampai 127 peralatan pada komputer. Setial alat yang duhubungkan
memungkinkan untuk mencapai kecepatan transfer data sampai 6 MBps. Kecepatan transfer
memungkinkan untuk mencapai kecepatan transfer data sampai 6 MBps. Kecepatan transfer
tersebut akan mencukupi untuk kebutuhan kebanyakan peralatan eksternal komputer. Dewasa
tersebut akan mencukupi untuk kebutuhan kebanyakan peralatan eksternal komputer. Dewasa
ini hampir semua peralatan dapat menggunakan USB :
ini hampir semua peralatan dapat menggunakan USB :
printer
printer
,,
scanner
scanner
,,
mouse
mouse
,,
joystick
joystick
,,
digital camera
digital camera
,,
webcam
webcam
,,
modem
modem
,,
speaker
speaker
,,
storage device
storage device
,,
network device
network device
dan lain-lain.
dan lain-lain.
Peralatan yang menggunakan USB dapat dihubungkan dengan komputer dengan
Peralatan yang menggunakan USB dapat dihubungkan dengan komputer dengan
sangat mudah. Konektor USB dapat dengan mudah ditemukan baik di belakang ataupun di
sangat mudah. Konektor USB dapat dengan mudah ditemukan baik di belakang ataupun di
depan
depan
casing
casing
komputer. Apabila peralatan tersebut baru untuk pertama kalinya dihubungkan
komputer. Apabila peralatan tersebut baru untuk pertama kalinya dihubungkan
dengan komputer, maka sistem operasi akan mendeteksinya secara otomatis dan meminta
dengan komputer, maka sistem operasi akan mendeteksinya secara otomatis dan meminta
pemakai
pemakai untuk
untuk memasukkan
memasukkan
driver disk
driver disk
untuk peralatan tersebut. Apabila
untuk peralatan tersebut. Apabila
driver
driver
telah
telah
terinstalasi maka komputer akan langsung menggunakan alat tersebut. Apabila peralatan itu
terinstalasi maka komputer akan langsung menggunakan alat tersebut. Apabila peralatan itu
untuk kemudian dilepas maka
Kebanyakan peralatan USB datang dengan langsung membawa suatu konektor USB
Kebanyakan peralatan USB datang dengan langsung membawa suatu konektor USB
tipe A, bila tidak maka peralatan tersebut pasti memiliki soket yang dapat dihubungkan
tipe A, bila tidak maka peralatan tersebut pasti memiliki soket yang dapat dihubungkan
dengan konektor tipe B.
dengan konektor tipe B.
Konektor
Konektor tipe
tipe A
A
Konektor
Konektor Tipe
Tipe B
B
Standar USB menentukan bahwa :
Standar USB menentukan bahwa :
Konektor tipe A harus dihubungkan dengan komputer.
Konektor tipe A harus dihubungkan dengan komputer.
Konektor tipe B harus dihubungkan dengan peralatan l
Konektor tipe B harus dihubungkan dengan peralatan l uar.
uar.
Dengan adanya dua jenis konektor tersebut maka dapat dipastikan tidak akan terjadi
Dengan adanya dua jenis konektor tersebut maka dapat dipastikan tidak akan terjadi
kesalahan dalam
kesalahan dalam menghubun
menghubungkan.
gkan.
II. USB
II. USB
H
H ub
ub
Apabila terdapat banyak sekali peralatan USB yang hendak dihubungkan dengan
Apabila terdapat banyak sekali peralatan USB yang hendak dihubungkan dengan
komputer, maka ada kemungkinan
komputer, maka ada kemungkinan
port
port
USB pada komputer tidak cukup. Untuk mengtasi
USB pada komputer tidak cukup. Untuk mengtasi
masalah ini diperlukan USB
masalah ini diperlukan USB
hub
hub
. Standar USB menyatakan bahwa sebuah
. Standar USB menyatakan bahwa sebuah
port
port
USB pada
USB pada
komputer dapat dihubungkan sampai dengan 127 peralatan dan USB
komputer dapat dihubungkan sampai dengan 127 peralatan dan USB
hub
hub
adalah termasuk
adalah termasuk
dalam standar tersebut.
dalam standar tersebut.
USB
Suatu
Suatu
hub
hub standar memiliki 4
standar memiliki 4 port
port
. Setiap
. Setiap
hub
hub dapat
dapat dihubungkan dengan
dihubungkan dengan
hub
hub lainnya,
lainnya,
ini berarti dengan membuat “rantai
ini berarti dengan membuat “rantai--hub
hub” akan banyak sekali peralatan USB yang dapat
” akan banyak sekali peralatan USB yang dapat
dihubungkan pada komputer. Suatu peralatan USB dan
dihubungkan pada komputer. Suatu peralatan USB dan
hub
hub USB dapat memiliki
USB dapat memiliki
power
power
supply
supply sendiri atau dapat pula menggunakan suplai dari komputer. Suatu
sendiri atau dapat pula menggunakan suplai dari komputer. Suatu
self-powered
self-powered
HUB
HUB
diperlukan apabila akan terdapat banyak sekali peralatan USB yang tidak memiliki suplai
diperlukan apabila akan terdapat banyak sekali peralatan USB yang tidak memiliki suplai
sendiri akan dihubungkan ke
sendiri akan dihubungkan ke
hub
hub tersebut. Namun, peralatan-peralatan besar seperti
tersebut. Namun, peralatan-peralatan besar seperti
printer
printer
dan
dan
scanner
scanner
pastilah memiliki
pastilah memiliki
power
power supply
supply sendiri, sehingga apabila terdapat banyak
sendiri, sehingga apabila terdapat banyak
peralatan
peralatan seperti
seperti itu
itu yang aka
yang akan
n dihubungkan ma
dihubungkan maka
ka yang diperl
yang diperlukan
ukan adalah
adalah suatu
suatu
unpowered
unpowered
USB
USB
hub
hub..
III. Standar dan Spesifikasi USB
III. Standar dan Spesifikasi USB
USB memiliki banyak sekali kemampuan (fitur) dan ketentuan yang diantaranya
USB memiliki banyak sekali kemampuan (fitur) dan ketentuan yang diantaranya
adalah sebagai berikut :
adalah sebagai berikut :
Komputer selalu dan hanya akan selalu bertindak sebagai
Komputer selalu dan hanya akan selalu bertindak sebagai
host
host
(master).
(master).
Sampai 127 peralatan dapat
Sampai 127 peralatan dapat dihubungk
dihubungkan dengan
an dengan
master port
master port
baik secara langsung
baik secara langsung
atau melalui
atau melalui
hub
hub..
Kabel USB dapat sampai 5 meter, tetapi dengan “merantai”
Kabel USB dapat sampai 5 meter, tetapi dengan “merantai”
hub
hub maka panjang
maka panjang
kabel bisa sampai 30 meter.
kabel bisa sampai 30 meter.
Suatu
Suatu port
port
(USB 1.1) dapat memiliki kecepatan transfer maksimum 12 MBps.
(USB 1.1) dapat memiliki kecepatan transfer maksimum 12 MBps.
Setiap peralatan USB dapat meminta
Setiap peralatan USB dapat meminta
bandwidth
bandwidth sampai 6 MBps (USB 1.1)
sampai 6 MBps (USB 1.1)
Setiap
Setiap
port
port
USB pada komputer dapat memberikan suplai tegangan 5V dengan
USB pada komputer dapat memberikan suplai tegangan 5V dengan
maksimum 500 mA.
maksimum 500 mA.
Low-power
Low-power device
device, seperti
, seperti
mouse
mouse dapat menggunakan suplai yang diberikan oleh
dapat menggunakan suplai yang diberikan oleh
port
port
..
High-power device
High-power device, seperti
, seperti printer
printer
harus memiliki
harus memiliki power supply
power supply sendiri.
sendiri.
Peralatan USB adalah
Peralatan USB adalah
hot-swappable
hot-swappable, ini berarti mereka dapat dihubungkan dan
, ini berarti mereka dapat dihubungkan dan
diputuskan ke
diputuskan ke port
port
kapan saja.
kapan saja.
Saat komputer memasuki mode
Saat komputer memasuki mode
suspend
suspend
atau
atau
power-saving
power-saving
maka suatu peralatan
maka suatu peralatan
USB sebaiknya dapat ikut masuk ke mode tersebut demi menghemat tenaga.
USB sebaiknya dapat ikut masuk ke mode tersebut demi menghemat tenaga.
Suatu kabel USB memiliki konfigurasi sebagai berikut :
Suatu kabel USB memiliki konfigurasi sebagai berikut :
Dua buah kabel untuk suplai (me
Dua buah kabel untuk suplai (merah untuk +5V dan hitam untuk
rah untuk +5V dan hitam untuk
ground
ground
).
).
Dua buah kabel data diferensial yang saling dipilin (putih
Dua buah kabel data diferensial yang saling dipilin (putih untuk D- dan hijau untuk
untuk D- dan hijau untuk
D+).
D+).
Pelindung
Pelindung
(shield)
(shield)
Saat
Saat
host
host
dinyalakan atau pada saat ada peralatan baru yang dihubungkan, maka
dinyalakan atau pada saat ada peralatan baru yang dihubungkan, maka
host
host
akan
akan
melakukan pemeriksaan
melakukan pemeriksaan
(query)
(query) terhadap peralatan-peralatan tersebut. Proses ini disebut
terhadap peralatan-peralatan tersebut. Proses ini disebut
enumeration
enumeration..
Host
Host
juga akan menanyakan pada peralatan, tipe atau cara transfer data yang
juga akan menanyakan pada peralatan, tipe atau cara transfer data yang
bagaimana yang
bagaimana yang diinginkan oleh alat tersebut :
diinginkan oleh alat tersebut :
Control
Control
, mode ini digunakan oleh
, mode ini digunakan oleh
host
host
untuk melakukan
untuk melakukan
query
query dan kontrol
dan kontrol
terhadap peralatan.
terhadap peralatan.
Interrupt
Interrupt
, peralatan seperti
, peralatan seperti
mouse
mouse dan
dan
keyboard
keyboard
yang akan mengirim data dalam
yang akan mengirim data dalam
jumlah sangat sedikit biasanya mengg
jumlah sangat sedikit biasanya menggunakan mode ini.
unakan mode ini.
Bulk
Bulk
, peralatan seperti
, peralatan seperti printer
printer
yang menerima data dalam bentuk paket-paket yang
yang menerima data dalam bentuk paket-paket yang
besar
besar akan
akan menggu
menggunakan
nakan mode
mode ini.
ini. Terdapat
Terdapat proses
proses
handshaking
handshaking
untuk
untuk
memastikan data yang dikirim benar.
memastikan data yang dikirim benar.
Isochronous
Isochronous, peralatan
, peralatan
streaming
streaming
seperti
seperti
speaker
speaker
yang akan dan harus menerima
yang akan dan harus menerima
data secara terus menerus hampir
data secara terus menerus hampir
real-time
real-time akan menggunakan mode ini. Tidak
akan menggunakan mode ini. Tidak
ada pengecekan kesalahan pada mode ini, apapun datanya dianggap benar.
ada pengecekan kesalahan pada mode ini, apapun datanya dianggap benar.
Secara khusus,
Secara khusus,
bandwidth dari
bandwidth
dari
bus
bus dicadangkan seanyak 10% untuk keperluan paket-
dicadangkan seanyak 10% untuk keperluan
paket- paket
paket kontrol.
kontrol. Setiap
Setiap peralatan
peralatan dapat
dapat meminta
meminta
bandwidth
bandwidth sampai maksimum 90% dari total
sampai maksimum 90% dari total
kemampuan
kemampuan
bus
bus. USB membagi-bagi
. USB membagi-bagi
bandwidth
bandwidth kedalam
kedalam
frame-frame
frame-frame. Setiap
. Setiap
frame
frame berisi
berisi
1500
1500
byte
byte dan sebuah
dan sebuah
frame
frame baru selalu ada setial mili detik (USB 1.1). Mode
baru selalu ada setial mili detik (USB 1.1). Mode
interrupt
interrupt
dan
dan
isochronous
isochronous selalu mendapatkan kesempatan pertama pada setiap
selalu mendapatkan kesempatan pertama pada setiap
frame
frame sehingga dapat
sehingga dapat
dipastikan mereka akan selalu mendapatkan
dipastikan mereka akan selalu mendapatkan
bandwidth
bandwidth yang mereka minta. Mode
yang mereka minta. Mode
bulk
bulk
hanya
hanya
dapat mengunakan
dapat mengunakan
bandwidth
bandwidth yang tersisa.
yang tersisa.
Standar USB versi 1.1 mendukung dua jenis kecepatan transfer, mode
Standar USB versi 1.1 mendukung dua jenis kecepatan transfer, mode
full
full speed
speed
dengan 12 MBps dan mode
dengan 12 MBps dan mode
low speed
low speed
dengan 1.5 MBps. Dengan adanya mode lambat ini
dengan 1.5 MBps. Dengan adanya mode lambat ini
yang lebih kebal
yang lebih kebal
Electromagnetic Interference
Electromagnetic
Interference
(EMI) maka ongkos pembuatan alat dapat
(EMI) maka ongkos pembuatan alat dapat
ditekan. Sedangkan USB 2.0 dapat mencapai kecepatan transfer sampai 480 MBps (mode
ditekan. Sedangkan USB 2.0 dapat mencapai kecepatan transfer sampai 480 MBps (mode
high speed
USB dikontrol oleh
USB dikontrol oleh
host
host
, dengan demikian hanya diperbolehkan ada satu
, dengan demikian hanya diperbolehkan ada satu
host
host
untuk setiap
untuk setiap
bus
bus
(USB 2.0 memungkinkan suatu protocol negosiasi sehingga dua
(USB 2.0 memungkinkan suatu protocol negosiasi sehingga dua
host
host
dapat saling memilih untuk menjadi
dapat saling memilih untuk menjadi
host
host
).
). Suatu
Suatu USB
USB
host
host
bertanggung jawab penuh
bertanggung jawab penuh
untuk mengontrol dan melangsungkan transaksi. USB menggunakan topologi
untuk mengontrol dan melangsungkan transaksi. USB menggunakan topologi
star
star
sehingga semua peralatan yang dihubungkan harus memiliki suatu pusat (
sehingga semua peralatan yang dihubungkan harus memiliki suatu pusat (
host
host
atau
atau
hub
hub
). Dengan topologi ini diperoleh suatu keuntungan, yaitu pemakain arus oleh setiap
). Dengan topologi ini diperoleh suatu keuntungan, yaitu pemakain arus oleh setiap
peralata
peralata dapat dikontrol
dapat dikontrol dan
dan bahkan bisa
bahkan bisa diputuskan apabila
diputuskan apabila terjadi
terjadi kondisi kelebihan
kondisi kelebihan
arus.
arus.
USB 1.1 memiliki dua standar protocol
USB 1.1 memiliki dua standar protocol
(Host Controller Interface
(Host Controller Interface
Specification)
Specification)
, yaitu :
, yaitu :
Universal Host Controller Interface
Universal Host Controller Interface
(UHCI) yang dikembangkan oleh Intel
(UHCI) yang dikembangkan oleh Intel
dan Microsoft dengan tujuan membebankan kompleksitas pada
dan Microsoft dengan tujuan membebankan kompleksitas pada
software
software
sehingga desain
sehingga desain
hardware
hardware
dapat disederhanakan.
dapat disederhanakan.
Open Host Controller Interface
Open Host Controller Interface
(OHCI) yang dikembangkan oleh
(OHCI) yang dikembangkan oleh Compaq,
Compaq,
Microsoft dan National Semiconductor dengan tujuan membebankan
Microsoft dan National Semiconductor dengan tujuan membebankan
kompleksitas pada
kompleksitas pada
hardware
hardware
sehingga desain
sehingga desain
software
software
menjadi sederhana.
menjadi sederhana.
USB 2.0 memiliki protocol khusus untuk mendukungnya yang disebut dengan
USB 2.0 memiliki protocol khusus untuk mendukungnya yang disebut dengan
Enhanced Host
Enhanced Host Controller Interface
Controller Interface
(EHCI) yang dikembangkan oleh Intel, Compaq,
(EHCI) yang dikembangkan oleh Intel, Compaq,
NET,
NET, Lucent
Lucent dan
dan Microsoft.
Microsoft. EHCI
EHCI dikembangkan
dikembangkan dengan
dengan prinsip
prinsip standarisasi
standarisasi
sehingga suatu peralatan USB 1.1 akan dapat tetap dapat berjalan pada
sehingga suatu peralatan USB 1.1 akan dapat tetap dapat berjalan pada
host
host
USB 2.0.
USB 2.0.
Untuk dapat
me-Untuk dapat me-
load driver
load driver
yang tepar maka suatu peralatan USB memiliki
yang tepar maka suatu peralatan USB memiliki
suatu kode yang disebut
suatu kode yang disebut
Vendor ID
Vendor ID
(VID) dan
(VID) dan
Product
Product ID
ID
(PID). VID/PID hanya
(PID). VID/PID hanya
dapat dikeluarka oleh USB Implementor's Forum dengan mendaftar dan melakukan
dapat dikeluarka oleh USB Implementor's Forum dengan mendaftar dan melakukan
pembayaran.
pembayaran. Untuk
Untuk keperluan
keperluan non
non komersial
komersial (misalnya
(misalnya pendidikan),
pendidikan), USB
USB
Implementor's Forum mengijinkan pemakai untuk menggunakan VID/PID milik
Implementor's Forum mengijinkan pemakai untuk menggunakan VID/PID milik
pabrik
pabrik manufakturing IC
manufakturing IC untuk digunakan
untuk digunakan pada
pada IC USB
IC USB ASIC yang
ASIC yang didesain
didesain sendiri.
sendiri.
Suatu manufaktur juga mungkin menjual PID untuk dipasangkan dengan VID milik
Suatu manufaktur juga mungkin menjual PID untuk dipasangkan dengan VID milik
mereka. Suatu pabrik pembuat IC USB kontroler untuk keperluan umum bahkan
mereka. Suatu pabrik pembuat IC USB kontroler untuk keperluan umum bahkan
mengijinkan VID/PID IC tersebut untuk digunakan.
III.1 Spesifikasi Elektrik Sinyal Data
III.1 Spesifikasi Elektrik Sinyal Data
USB menggunakan transmisi data diferensial yang dikodekan dengan metoda NRZI
USB menggunakan transmisi data diferensial yang dikodekan dengan metoda NRZI
(Non Return to Zero Invert)
(Non Return to Zero Invert)
u
untuk
ntuk mengirim data
mengirim data dengan
dengan field
field
sinkronisasi untuk melakukan
sinkronisasi untuk melakukan
sinkronisasi antara
sinkronisasi antara
clock
clock
dari
dari
host
host
dan
dan
device
device..
Transmitter
Transmitter
USB 1.1 menggunakan cara-cara
USB 1.1 menggunakan cara-cara
berikut untuk mengirimkan b
berikut untuk mengirimkan bit data :
it data :
Sinyal diferensial ‘1’ ditransmisikan dengan cara membawa pin D+ ke tegangan
Sinyal diferensial ‘1’ ditransmisikan dengan cara membawa pin D+ ke tegangan
lebih dari 2.8V sambil
di-lebih dari 2.8V sambil di-
pull-down
pull-down ke ground dengan resistor 15k, dan membawa
ke ground dengan resistor 15k, dan membawa
pin D- ke tegangan dibawah 0.
pin D- ke tegangan dibawah 0.3V sambil di-
3V sambil di-
pull-up ke 3.6V dengan resistor 1.5k.
pull-up
ke 3.6V dengan resistor 1.5k.
Sinyal diferensial ‘0’ ditransmisikan dengan cara membawa D+ ke tegangan
Sinyal diferensial ‘0’ ditransmisikan dengan cara membawa D+ ke tegangan
kurang dari 0.3V dan D- ke tegangan lebih dari 2.8V, dengan konfigurasi resistor
kurang dari 0.3V dan D- ke tegangan lebih dari 2.8V, dengan konfigurasi resistor
pull-down
pull-down dan
dan pull-up
pull-up yang sama.
yang sama.
Receiver
Receiver
USB 1.1 mendefinisikan :
USB 1.1 mendefinisikan :
Sinyal diferensial ‘1’ apabila D+ setidaknya 200mV lebih tinggi dari D
Sinyal diferensial ‘1’ apabila D+ setidaknya 200mV lebih tinggi dari D
-.
-.
Sinyal diferensial ‘0’ apabila D+ setidaknya 200mV lebih rendah dari D
Sinyal diferensial ‘0’ apabila D+ setidaknya 200mV lebih rendah dari D
-.
-.
Pada USB 2.0, polaritas
sinyal-Pada USB 2.0, polaritas sinyal-sinyal tersebut dibalik. Untuk memudahkan maka kode “J”
sinyal tersebut dibalik. Untuk memudahkan maka kode “J”
dan “K” digunakan untuk melambangkan status dari transmisi serial tersebut. Pada USB 1.1,
dan “K” digunakan untuk melambangkan status dari transmisi serial tersebut. Pada USB 1.1,
“J”
“J” state
state
adalah diferensial ‘0’ sedangkan pada USB 2.0, “J”
adalah diferensial ‘0’ sedangkan pada USB 2.0, “J” state
state adalah diferensial
adalah diferensial
‘1’.
‘1’.
Namun,
Namun, sebenarnya
sebenarnya
transceiver
transceiver
USB tidak selalu menggunakan mode diferensial.
USB tidak selalu menggunakan mode diferensial.
Beberapa status dari
Beberapa status dari
bus
bus dapat ditunjukkan dari status tunggal D+, D- atau keduanya secara
dapat ditunjukkan dari status tunggal D+, D- atau keduanya secara
terpisah. Sebagai contoh,
terpisah. Sebagai contoh,
Single Ended Zero
Single Ended Zero
(SE0) yang dibuat dengan cara membawa D+
(SE0) yang dibuat dengan cara membawa D+
dan D- keduanya ke tegangan lebih kecil dari 0.3V. SE0 apabila diberlakukan selaman lebih
dan D- keduanya ke tegangan lebih kecil dari 0.3V. SE0 apabila diberlakukan selaman lebih
dari 10 mS digunakan untuk
me-dari 10 mS digunakan untuk me-
reset device
reset device. Ini berarti sinyal diferensial dan
. Ini berarti sinyal diferensial dan
single
single ended
ended
sama-sama penting, sehingga suatu USB
sama-sama penting, sehingga suatu USB
device controller
device controller
tidak bisa hanya melakukan
tidak bisa hanya melakukan
sampling pada salah satunya.
sampling pada salah satunya.
Suatu
Suatu
low speed
low speed
atau
atau full
full speed
speed bus
bus memiliki impedansi 90 ohm dengan toleransi +/-
memiliki impedansi 90 ohm dengan toleransi
+/-15%. Mode
15%. Mode
High speed
High speed
menggunakan
menggunakan
constant current source
constant current source 17.78 mA untuk mengurangi
17.78 mA untuk mengurangi
noise
noise..
III.2 Identifikasi Kecepatan
III.2 Identifikasi Kecepatan
Agar dapat melakukan identifikasi apakah suatu peralatan adalah
Agar dapat melakukan identifikasi apakah suatu peralatan adalah
low spedd
low spedd
atau
atau full
full
speed
speed
maka digunakan suart resistor
maka digunakan suart resistor
pull-up
pull-up. Sebenarnya resistor ini tidak hanya berguna
. Sebenarnya resistor ini tidak hanya berguna
sebagai identifikasi kecepatan, namun juga sebagai indikator bagi
sebagai identifikasi kecepatan, namun juga sebagai indikator bagi
host
host
apakah ada atau tidak
apakah ada atau tidak
ada peralatan yang dihubungkan.
F
F ul
ul l
l S
Spe
pee
ed Device
d Device
menghubugkan resistor
menghubugkan resistor
pull-up
pull-up
pada D+
pada D+
L
L ow Spe
ow Speed Device
ed Device
menghubugkan resistor
menghubugkan resistor
pull-up
pull-up
pada D-
pada
D- High
High Speed
Speed device
device selalu memulai koneksi sebagai
selalu memulai koneksi sebagai
full
full speed
speed device
device (1.5k to 3.3V).
(1.5k to 3.3V).
Setelah dia akan melakukan
Setelah dia akan melakukan
high speed chirp
high speed chirp (transisi JKJKJK secara cepat) pada sat
(transisi JKJKJK secara cepat) pada sat
device reset
device reset
untuk meminta koneksi
untuk meminta koneksi
high speed
high speed
pada
pada
host
host
atau
atau
hub
hub jika mereka dapat
jika mereka dapat
mendukungnya. Setelah beroperasi pada
mendukungnya. Setelah beroperasi pada
high speed
high speed
maka resistor
maka resistor
pull-up akan
pull-up
akan
dinonaktifkan.
Suatu
Suatu USB
USB 2.0
2.0
compliant device
compliant device
tidak harus mendukung
tidak harus mendukung
high speed
high speed
, sama
, sama
halnya bahwa USB 1.1
halnya bahwa USB 1.1
compliant device
compliant device
tidak harus mendukung
tidak harus mendukung
full
full speed
speed
dan juga
dan juga
low speed
low speed
sekaligus. Namun, suatu
sekaligus. Namun, suatu
high speed device
high speed device
tidak boleh mendukung
tidak boleh mendukung
low
low
speed
speed
. Suatu USB
. Suatu USB
host
host
atau
atau
hub
hub
yang USB 2.0
yang USB 2.0
compliant
compliant
harus mendukung semua
harus mendukung semua
mode kecepatan.
mode kecepatan.
III.3 Spesifikasi
III.3 Spesifikasi
Clock
Clock
High-speed data
High-speed data
di-
di-
clock
clock
pada 480.0 MBps dengan toleransi +/- 500 ppm.
pada 480.0 MBps dengan toleransi +/- 500 ppm.
Full-speed
Full-speed
data
data
di
di--
clock
clock
pada 12.0 MBps dengan toleransi +/- 2.500 ppm (0,25 %).
pada 12.0 MBps dengan toleransi +/- 2.500 ppm (0,25 %).
Low-speed data
Low-speed data
di-
di-clock
clock
pada 1.5 MBps dengan toleransi +/- 15.000 ppm (1,5 %). Dengan demikian suatu
pada 1.5 MBps dengan toleransi +/- 15.000 ppm (1,5 %). Dengan demikian suatu
peralatan
peralatan
low speed
low speed
dapat hanya menggunakan
dapat hanya menggunakan
ceramic resonator
ceramic resonator
untuk menghasilkan
untuk menghasilkan
clock
clock
--nya. Namun, suatu peralatan
nya. Namun, suatu peralatan
high speed
high speed
harus
harus menggunakan
menggunakan
crystal
crystal
yang presisi.
yang presisi.
III.4 Spesifikasi V
III.4 Spesifikasi V
BUSBUSTegangan yang dapat diberikan oleh
Tegangan yang dapat diberikan oleh
host
host
USB, V
USB, V
BUSBUS, berkisar antara 4.4V sampai
, berkisar antara 4.4V sampai
5.25B. Suatu peralatan USB akan menyatakan pemakaian arusnya dalam satuan per 2 mA
5.25B. Suatu peralatan USB akan menyatakan pemakaian arusnya dalam satuan per 2 mA
pada
pada saat
saat
host
host
melakukan
melakukan
enumeration
enumeration
. Sebuah peralatan tidak bisa menaikkan konsumsi
. Sebuah peralatan tidak bisa menaikkan konsumsi
arusnya lebih dari yang telah dispesifikasikan pada saat konfigurasi. Terdapat 3 jenis
arusnya lebih dari yang telah dispesifikasikan pada saat konfigurasi. Terdapat 3 jenis
peralatan USB :
peralatan USB :
Low-power bus po
Low-power bus powered device
wered device
High-power
High-power bus powered device
bus powered device
Self-powered device
Self-powered device
Suatu
Suatu
low-power bus powered device
low-power bus powered device
mengambil arus sepenuhnya dari V
mengambil arus sepenuhnya dari V
BUSBUSdan tidak
dan tidak
boleh mengambil arus lebih
boleh mengambil arus lebih dari satu
dari satu
unit load
unit load
yang besarnya 100 mA. Suatu
yang besarnya 100 mA. Suatu
high-power bus
high-power bus
powered device
powered device
mengambil arus sepenuhnya dari V
mengambil arus sepenuhnya dari V
BUSBUSdan tidak boleh mengambil arus lebih
dan tidak boleh mengambil arus lebih
dari satu
dari satu
unit load
unit load
pada saat konfiurasi, setelah itu, sesuai spesifikasi yang dideskripsikan
pada saat konfiurasi, setelah itu, sesuai spesifikasi yang dideskripsikan
pada
pada saat
saat
enumeration
enumeration
, ia dapat mengkonsumsi sampai maksimum 5
, ia dapat mengkonsumsi sampai maksimum 5
unit load
unit load
(500 mA).
(500 mA).
Suatu
Suatu
self-powered
self-powered device
device
dapat mengambil arus dari V
dapat mengambil arus dari V
BUSBUSsampai maksimal sebesar 1
sampai maksimal sebesar 1
unit
unit
load
load
dan menggunakan suplai eksternal untuk sisa kebutuhannya. Apabila karena suatu
dan menggunakan suplai eksternal untuk sisa kebutuhannya. Apabila karena suatu
kondisi maka suplai eksternal mengalami gangguan peralatan jenis ini harus diatur agar tidak
kondisi maka suplai eksternal mengalami gangguan peralatan jenis ini harus diatur agar tidak
menggunakan lebih dari 100 mA. Apabila
menggunakan lebih dari 100 mA. Apabila
host
host
mematikan V
mematikan V
BUSBUSkarena suatu hal, maka suatu
karena suatu hal, maka suatu
self-powered device
self-powered device
harus sudah menonaktifkan resistor
harus sudah menonaktifkan resistor
pull-up
pull-up
atau
atau
pull-down
pull-down
ke D+ atau D-
ke D+ atau
D-(yang digunakan untuk identifikasi kecepatan) tidak lebih dari 10 detik.
Untuk membatasi arus sesaat
Untuk membatasi arus sesaat
(inrush current)
(inrush current)
pada saat suatu peralatan ditancapkan
pada saat suatu peralatan ditancapkan
(plugged)
(plugged)
, maka kapasitor
, maka kapasitor
decuupling
decuupling
yang boleh digunakan adalah maksimum 10 uF. Untuk
yang boleh digunakan adalah maksimum 10 uF. Untuk
mencegah timbulnya
mencegah timbulnya
flyback
flyback
yang muncul pada ujung kabel pada saat suatu peralatan
yang muncul pada ujung kabel pada saat suatu peralatan
dilepaskan
dilepaskan
(unplugged)
(unplugged)
, maka harus digunakan kapasitor
, maka harus digunakan kapasitor
decoupling
decoupling
dengan ukuran minimal
dengan ukuran minimal
1 uF.
1 uF.
III.5
III.5
Suspe
Sus
pend M
nd M ode
ode
Pada saat komputer memasuki mode
Pada saat komputer memasuki mode
suspend
suspend
maka suatu peralatan USB hanya boleh
maka suatu peralatan USB hanya boleh
menggunakan arus maksimal sebesar 500 uA untuk setiap
menggunakan arus maksimal sebesar 500 uA untuk setiap
unit load
unit load
yang telah diminta pada
yang telah diminta pada
saat konfigurasi. Arus ini termasuk arus yang mengalir pada resistor
saat konfigurasi. Arus ini termasuk arus yang mengalir pada resistor
pull-up
pull-up
dan
dan
pull-down
pull-down
yang digunakan oleh peralatan tersebut.
yang digunakan oleh peralatan tersebut.
Suatu peralatan USB harus masuk ke mode
Suatu peralatan USB harus masuk ke mode
suspend
suspend
apabila tidak ada aktifitas apapun
apabila tidak ada aktifitas apapun
pada
pada
bus
bus
selama lebih dari 3 mS. Setelah itu, peralatan mempunyai waktu maksimal 7 mS
selama lebih dari 3 mS. Setelah itu, peralatan mempunyai waktu maksimal 7 mS
untuk masuk ke mode
untuk masuk ke mode
suspend
suspend
. Ini berarti 10 mS setelah aktifitas pada
. Ini berarti 10 mS setelah aktifitas pada
bus
bus
berakhir total,
berakhir total,
semua peralatan USB harus sudah masuk ke mode
semua peralatan USB harus sudah masuk ke mode
suspend
suspend
. Peralatan USB dalam mode
. Peralatan USB dalam mode
suspend
suspend
harus tetap mengaktifkan resistor
harus tetap mengaktifkan resistor
pull-up
pull-up
seleksi kecepatannya untuk tetap terkoneksi
seleksi kecepatannya untuk tetap terkoneksi
dengan
dengan
host
host
atau
atau
hub
hub
..
USB mengirimkan paket khusus yang bernama
USB mengirimkan paket khusus yang bernama
start
start of
of frame
frame
atau
atau
keep alive
keep alive
secara
secara
periodik untuk mencegah agar aktifitas
periodik untuk mencegah agar aktifitas
bus
bus
tidak terhenti sama sekali pada saat tidak ada data.
tidak terhenti sama sekali pada saat tidak ada data.
Spesifikasi paket khusus ini adalah :
Spesifikasi paket khusus ini adalah :
High speed bus
High speed bus
akan mengirim
akan mengirim
micro-frame
micro-frame
setiap 125.0 uS +/- 62.5 nS
setiap 125.0 uS +/- 62.5 nS
Full speed bus
Full speed bus
akan mengirim
akan mengirim
frame
frame
setiap 1.0 mS +/- 500 nS
setiap 1.0 mS +/- 500 nS
Low
Low speed
speed bus
bus
akan mengirim sebuah
akan mengirim sebuah
keep-alive
keep-alive
, yang adalah
, yang adalah suatu kode
suatu kode
End
End of
of
Packet
Packet
(EOP) setiap 1.0 mS hanya dan hanya jika tidak ada
(EOP) setiap 1.0 mS hanya dan hanya jika tidak ada
low speed
low speed
data yang perlu
data yang perlu
dikirim.
dikirim.
Suatu peralatan USB akan kembali aktif apabila ia mendeteksi adanya sembarang sinyal pada
Suatu peralatan USB akan kembali aktif apabila ia mendeteksi adanya sembarang sinyal pada
bus
bus
. Peralatan yang memiliki kemampuan
. Peralatan yang memiliki kemampuan
remote wakeup
remote wakeup
diperbolehkan untuk memberikan
diperbolehkan untuk memberikan
sinyal pada
sinyal pada
host
host
untuk meminta
untuk meminta
host
host
kembali aktif.
kembali aktif.
IV. Protokol USB
IV. Protokol USB
Tidak seperti RS232 dimana data yang dikirim tidak memiliki peraturan tertentu, USB
Tidak seperti RS232 dimana data yang dikirim tidak memiliki peraturan tertentu, USB
tersusun atas beberapa layer protokol. Protokol layer bawah pada umumnya dikontrol
tersusun atas beberapa layer protokol. Protokol layer bawah pada umumnya dikontrol
langsung oleh IC USB
langsung oleh IC USB
cotroller
cotroller
sedangkan
sedangkan
software
software
hanya perlu mengatur layer yang lebih
hanya perlu mengatur layer yang lebih
tinggi.
Setiap transaksi USB terdiri atas :
Setiap transaksi USB terdiri atas :
Token packet
Token packet
, merupakan
, merupakan
header
header
yang mendefinisikan paket apa selanjutnya yang
yang mendefinisikan paket apa selanjutnya yang
mengikutinya.
mengikutinya.
Optional data packet
Optional data packet
, yang berisi data sebenarnya
, yang berisi data sebenarnya
(payload)
(payload)..
Status packet
Status packet
, yang digunakanan untuk meng-
, yang digunakanan untuk meng-
acknowledge
acknowledge transaksi dan sebagai
transaksi dan sebagai
media untuk melakukan
media untuk melakukan
error correction
error correction..
Sistem USB adalah terpusat pada
Sistem USB adalah terpusat pada
host
host
, ini berarti suatu peralatan USB tidak dapat mengirim
, ini berarti suatu peralatan USB tidak dapat mengirim
data pada
data pada
host
host
tanpa diminta.
tanpa diminta.
Host
Host
akan mengirim
akan mengirim
token packet
token packet
yang berisi kode apakah
yang berisi kode apakah
host
host
akan mengirim atau meminta data ke atau dari
akan mengirim atau meminta data ke atau dari
device
device..
IV.1 Struktur Paket USB
IV.1 Struktur Paket USB
Data pada USB dikirimkan LSB-nya terlebih dahulu. Paket USB pada umumnya
Data pada USB dikirimkan LSB-nya terlebih dahulu. Paket USB pada umumnya
tersusun atas beberapa
tersusun atas beberapa field
field
:
:
Sync
Sync
, setiap paket harus diawali dengan
, setiap paket harus diawali dengan
field
field
ini.
ini.
Field
Field
ini terdiri atas 8 bit pada
ini terdiri atas 8 bit pada
low
low dan
dan full speed
full speed
dan 32 bit pada
dan 32 bit pada
high speed
high speed
.
. Paket ini
Paket ini berguna un
berguna untuk melakukan
tuk melakukan
sinkronisasi
sinkronisasi
clock
clock
antara
antara
host
host
dan
dan
device
device..
PID
PID, PID adalah
, PID adalah
Packet
Packet ID
ID. Paket ini berguna sebagai identifikasi dari tipe paket
. Paket ini berguna sebagai identifikasi dari tipe paket
yang sedang dikirim.
yang sedang dikirim.
Group
Group
PID Value
PID Value
Packet Identifier
Packet Identifier
Token
Token
0001
0001
OUT Token
OUT Token
1001
1001
IN Token
IN Token
0101
0101
SOF Token
SOF Token
1101
1101
SETUP Token
SETUP Token
Data
Data
0011
0011
DATA0
DATA0
1011
1011
DATA1
DATA1
0111
0111
DATA2
DATA2
1111
1111
MDATA
MDATA
Handshake
Handshake
0010
0010
ACK Handshake
ACK Handshake
1010
1010
NAK Handshake
NAK Handshake
1110
1110
STALL Handshake
STALL Handshake
0110
Special
Special
1100
1100
PREamble
PREamble
1100
1100
ERR
ERR
1000
1000
Split
Split
0100
0100
Ping
Ping
Terdapat 4 bit untuk setiap ID, tetapi untuk memastikan agar diterima secara tepat
Terdapat 4 bit untuk setiap ID, tetapi untuk memastikan agar diterima secara tepat
maka 4 bit tersebut
di-maka 4 bit tersebut di-invert
invert
dan diulang sehingga total menjadi 8 bit sebagai
dan diulang sehingga total menjadi 8 bit sebagai
berikut :
berikut :
PID
PID
00PID
PID
11PID
PID
22PID
PID
33nPID
nPID
00nPID
nPID
11nPID
nPID
22nPID
nPID
33
ADDR
ADDR
, paket ini berukuran 7 bit dan berisi alamat ke
, paket ini berukuran 7 bit dan berisi alamat ke
device
device manakah paket ini
manakah paket ini
ditujukan. Alamat 0 adalah tidak valid.
ditujukan. Alamat 0 adalah tidak valid.
ENDP
ENDP
, paket ini berukuran 4 bit sehingga memungkinkan untuk mengakses
, paket ini berukuran 4 bit sehingga memungkinkan untuk mengakses
sampai 16
sampai 16
endpoint
endpoint
. Namun,
. Namun,
low speed device
low speed device hanya boleh memiliki maksimum 4
hanya boleh memiliki maksimum 4
endpoint
endpoint
..
CRC
CRC
, suatu
, suatu
cyclic redundancy checks
cyclic redundancy checks diterapkan pada setiap data yang dikirim.
diterapkan pada setiap data yang dikirim.
Setiap
Setiap
token packet
token packet
memiliki 5 bit CRC sedangkan paket data memiliki CRC 16
memiliki 5 bit CRC sedangkan paket data memiliki CRC 16
bit.
bit.
EOP
EOP
, menunjukan akhir paket
, menunjukan akhir paket
(end of packet). Ditransmisikan dalam wujud
(end of packet)
. Ditransmisikan dalam wujud
Single
Single
Ended Zero
Ended Zero (SE0) selama kira-kira waktu 2 bit dan diikuti dengan sebuah J selama
(SE0) selama kira-kira waktu 2 bit dan diikuti dengan sebuah J selama
waktu 1 bit.
waktu 1 bit.
IV.2 Tipe-Tipe paket USB
IV.2 Tipe-Tipe paket USB
Terdapat 4 jenis paket yang berbeda pada USB :
Terdapat 4 jenis paket yang berbeda pada USB :
Tok
Tok e
en Packet
n Packet
, menunjukan tipe transaksi :
, menunjukan tipe transaksi :
o
o
II n
n
, menunjukkan bahwa
, menunjukkan bahwa
host
host
ingin meminta data
ingin meminta data
o
o
Ou
Out
t
, menunjukkan bahwa
, menunjukkan bahwa
host
host
ingin mengirim data
ingin mengirim data
o
o
Setup
Setup
, digunakan untuk memulai
, digunakan untuk memulai
control transfer
control transfer
..
Paket ini memiliki format sebagai berikut :
Paket ini memiliki format sebagai berikut :
Sync
Dat
Data Packe
a Packet
t
, terdapat dua tipe data untuk USB 1.1, yaitu :
, terdapat dua tipe data untuk USB 1.1, yaitu :
o
o
Data0
Data0
o
o
Data1
Data1
USB 2.0 memiliki jenis data tambahan :
USB 2.0 memiliki jenis data tambahan :
o
o
Data2
Data2
o
o
MData
MData
Paket ini memiliki format sebagai berikut :
Paket ini memiliki format sebagai berikut :
Sync
Sync
PID
PID
Data
Data
CRC16
CRC16
EOP
EOP
Ukuran data maksimum untuk
Ukuran data maksimum untuk
low-speed device
low-speed device
adalah 8
adalah 8
byte
byte
, untuk
, untuk
full-speed
full-speed
device
device
adalah 1023
adalah 1023
byte
byte
dan untuk
dan untuk
high-speed device
high-speed device
adalah 1024
adalah 1024
byte
byte
..
H
H andshake
andshake Packet
Packet
, paket ini hanya berisi PID dan memiliki 3 tipe :
, paket ini hanya berisi PID dan memiliki 3 tipe :
o
o
ACK
ACK
, suatu
, suatu
acknowledgment
acknowledgment
yang menunjukkan bahwa paket telah
yang menunjukkan bahwa paket telah
dikirim dengan sukses.
dikirim dengan sukses.
o
o
NAK
NAK
, suatu tanda bahwa
, suatu tanda bahwa
device
device
untuk sementara waktu tidak dapat
untuk sementara waktu tidak dapat
menerima atau mengirim data. Dalam transaksi tipe
menerima atau mengirim data. Dalam transaksi tipe
interrupt
interrupt
juga
juga
digunakan untuk memberi informasi pada
digunakan untuk memberi informasi pada
host
host
bahwa tidak ada data yang
bahwa tidak ada data yang
harus dikirim.
harus dikirim.
o
o
STALL
STALL, suatu kondisi yang menyatakan bahwa
, suatu kondisi yang menyatakan bahwa
device
device
dalam kondisi
dalam kondisi
stall
stall
sehingga dibutuhkan tindakan dari
sehingga dibutuhkan tindakan dari
host
host
..
Secara lengkap, paket ini memiliki format sebagai berikut :
Secara lengkap, paket ini memiliki format sebagai berikut :
Sync
Sync
PID
PID
EOP
EOP
Start of Frame(SOF) Packet
Start of Frame(SOF) Packet
, tersusun atas
, tersusun atas
frame
frame
berukuran 11 bit yang
berukuran 11 bit yang
digunakan untuk mencegah agar
digunakan untuk mencegah agar
bus
bus
tidak pernah benar-benar
tidak pernah benar-benar
idle
idle
. Paket ini
. Paket ini
memiliki format sebagai berikut :
memiliki format sebagai berikut :
Sync
Sync
PID
PID
Frame
Frame Number
Number CRC5
CRC5 EOP
EOP
IV.3
IV.3
Endpoint
Endpoint
dan
dan
Pipe
Pipe
?
?
Suatu
Suatu
endpoint
endpoint
dapat dideskripsikan sebagai
dapat dideskripsikan sebagai
sources
sources or
or sinks
sinks of
of data
data
. Suatu
. Suatu
endpoint
endpoint
dapat dikonfigurasi sebagai
dapat dikonfigurasi sebagai
output buffer
output buffer
(menerima data dari
(menerima data dari
host
host
) atau sebagai
) atau sebagai
input buffer
input buffer
(untuk mengirim data ke
(untuk mengirim data ke
host
host
). Suatu peralatan USB dapat memiliki satu atau beberapa
). Suatu peralatan USB dapat memiliki satu atau beberapa
endpoint
endpoint
, namun, harus selalu mendukung
, namun, harus selalu mendukung
endpoint zero
endpoint zero
(EP0) yang akan selalu digunakan
(EP0) yang akan selalu digunakan
untuk menerima kontrol baik pada saat
Pada saat peralatan USB mengirim dan menerima data ke dan dari
Pada saat peralatan USB mengirim dan menerima data ke dan dari
endpoint
endpoint
, maka
, maka
client software
client software
akan mentransfer data tersebut melalui sesuatu yang disebut dengan
akan mentransfer data tersebut melalui sesuatu yang disebut dengan
pipe
pipe..
Suatu
Suatu
pipe
pipe adalah sebuah
adalah sebuah
logical connection
logical connection antara
antara
host
host
dan
dan
endpoint
endpoint
. Suatu
. Suatu
pipe
pipe juga
juga
dikonfigurasikan oleh beberapa parameter :
dikonfigurasikan oleh beberapa parameter :
Besarnya
Besarnya
bandwidth yang dialokasikan untuknya.
bandwidth
yang dialokasikan untuknya.
Arah aliran data (
Arah aliran data (out
out
atau
atau
in
in).
).
Ukuran paket atau
Ukuran paket atau
buffer
buffer
maksimum.
maksimum.
Tipe transfer (
Tipe transfer (control
control
,,
bulk
bulk
,,
interrupt
interrupt
atau
atau
isochronous
isochronous).
).
Suatu peralatan USB selalu dan harus memiliki sebuah
Suatu peralatan USB selalu dan harus memiliki sebuah
default pipe
default pipe yaitu
yaitu
bi-directional pipe
bi-directional pipe
yang dihubungkan dengan
yang dihubungkan dengan
endpoint zero out
endpoint zero out
(EP0 OUT) dan
(EP0 OUT) dan
endpoint zero in
endpoint zero in
(EP0 IN).
(EP0 IN).
Terdapat dua jenis
Terdapat dua jenis pipe
pipe :
:
S
Str
tr e
eam Pi
am Pi pe
pe
, tidak memiliki format data yang khusus. Melakukan transfer data
, tidak memiliki format data yang khusus. Melakukan transfer data
secara sekuensial sesuai arah yang telah dikonfigurasikan sebelumnya. Digunakan
secara sekuensial sesuai arah yang telah dikonfigurasikan sebelumnya. Digunakan
untuk transfer data
untuk transfer data
bulk
bulk
,,
interrupt
interrupt
dan
dan
isochronous..
isochronous
M
M es
ess
sage Pipe
age Pipe
, memiliki format data khusus. Merupakan
, memiliki format data khusus. Merupakan
pipe
pipe khusus yang
khusus yang
digunakan untuk transfer data
digunakan untuk transfer data
control
control
..
IV.3.1
IV.3.1
Control T
Control T ransfe
ransfer
r
Digunaka untuk operasi perintah dan status. Diperlukan untuk melakukan kontrol pada
Digunaka untuk operasi perintah dan status. Diperlukan untuk melakukan kontrol pada
peralatan USB pada
peralatan USB pada saat
saat
enumeration
enumeration maupun operasional. Transfer tipe ini dapat dikirimkan
maupun operasional. Transfer tipe ini dapat dikirimkan
sewaktu-waktu oleh
sewaktu-waktu oleh
host
host
dan selalu ada
dan selalu ada
bandwidth
bandwidth yang dicadangkan untuknya. Pada
yang dicadangkan untuknya. Pada
kecepatan rendah, ukuran paket kontrol adalah harus selalu 8
kecepatan rendah, ukuran paket kontrol adalah harus selalu 8
byte
byte. Pada kecepatan penuh
. Pada kecepatan penuh
(full
(full
speed)
speed) ukuran paket ini adalah harus selalu 64
ukuran paket ini adalah harus selalu 64
byte
byte. Sedangkan pada kecepatan tinggi dapat
. Sedangkan pada kecepatan tinggi dapat
berukuran 8/16/32/
berukuran 8/16/32/64
64
byte
byte..
Control transfer
Control transfer
dapat terdiri sampai 3 tahap :
dapat terdiri sampai 3 tahap :
Se
Setu
tup Stage
p Stage
, adalah pada saat
, adalah pada saat
request
request
dikirimkan. Terdiri atas 3 paket, yaitu :
dikirimkan. Terdiri atas 3 paket, yaitu :
o
o
Setup Token
Setup Token, yang berisi alamat
, yang berisi alamat dan nomor
dan nomor
endpoint
endpoint
o
o
Data
Data Packet
Packet
, yang selalu memiliki PID Data0, digunakan untuk
, yang selalu memiliki PID Data0, digunakan untuk
mendeskripsikan
mendeskripsikan
request
request
..
o
o
Handshake
Handshake Packet
Packet
, berupa ACK yang akan dikirimkan oleh peralatan
, berupa ACK yang akan dikirimkan oleh peralatan
apabila data kontrol yang diterima benar (PID dan CRC benar). Apabila
apabila data kontrol yang diterima benar (PID dan CRC benar). Apabila
terjadi kesalahan maka
terjadi kesalahan maka
device
device akan dan harus membiarkan
akan dan harus membiarkan
(ignore)
(ignore) paket
paket
kontrol tersebut tanpa mengirim NAK ataupun STALL.
Dat
Data S
a Stage
tage
, bersifat opsional dan dapat tersusun atas satu atau beberapa transfer
, bersifat opsional dan dapat tersusun atas satu atau beberapa transfer
IN atau OUT. Prinsip pengiriman data adalah sebagi berikut :
IN atau OUT. Prinsip pengiriman data adalah sebagi berikut :
o
o
Tipe IN,
Tipe IN,
host
host
ingin menerima data kontrol dari
ingin menerima data kontrol dari
device
device. Apabila
. Apabila
Setup Stage
Setup Stage
yang telah diterima sebelumnya (berisi permintaan IN) benar maka
yang telah diterima sebelumnya (berisi permintaan IN) benar maka
device
device
akan mengirimkan data yang diminta atau NAK apabila tidak ada data
akan mengirimkan data yang diminta atau NAK apabila tidak ada data
yang dikirim.
yang dikirim.
o
o
Tipe OUT,
Tipe OUT,
host
host
ingin mengirim data ke
ingin mengirim data ke
device
device. Setelah
. Setelah
Setup Stage
Setup Stage
maka
maka
host
host
akan langsung mengirimkan data yang dimaksud. Apabila
akan langsung mengirimkan data yang dimaksud. Apabila
device
device
sukses menerima maka
sukses menerima maka
device
device akan mengirim ACK, apabila sedang sibuk
akan mengirim ACK, apabila sedang sibuk
akan mengirim NAK, sedangkan apabila ada kesalahan pada
akan mengirim NAK, sedangkan apabila ada kesalahan pada
endpoint
endpoint
maka akan
maka akan dikirim STALL.
dikirim STALL.