1. USB – GIAO TIẾP NỐI TIẾPUSB – GIAO TIẾP NỐI TIẾP
Sinh viên: Nguyễn Thành Nhân 40401746Sinh viên: Nguyễn Thành Nhân 40401746
Nguyễn Thanh Quân 40402051Nguyễn Thanh Quân 40402051
2. NỘI DUNG THUYẾT TRÌNH
I. Giới thiệu khái niệm usbI. Giới thiệu khái niệm usb
II. Hệ thống USBII. Hệ thống USB
1. Mô tả hệ thống1. Mô tả hệ thống
2. Kiến trúc BUS2. Kiến trúc BUS
3. Máy chủ USB ( Host USB)3. Máy chủ USB ( Host USB)
4. Các thiết bị USB4. Các thiết bị USB
5. Cáp USB5. Cáp USB
III. Các lớp giao tiếp USBIII. Các lớp giao tiếp USB
1. Protocol engine layer1. Protocol engine layer
2. Physical layer2. Physical layer
3. Application layer3. Application layer
IV. PhIV. Phươương thức giao tiếp USBng thức giao tiếp USB
3. I Khái niệm USB:I Khái niệm USB:
-- USB (Universal Serial Bus) là bus nối tiếp đa năngUSB (Universal Serial Bus) là bus nối tiếp đa năng
chocho phép các thiết bị đầu cuối giao tiếp với máy tínhphép các thiết bị đầu cuối giao tiếp với máy tính
chủ ( host computer).chủ ( host computer).
Ưu điểm của hệ thống USB:Ưu điểm của hệ thống USB:
Dễ dàng mở rộng các thiết bị đầu cuối của PC.Dễ dàng mở rộng các thiết bị đầu cuối của PC.
CChi phí thấp song vẫn hỗ trợ truyền dẫn với tốc độhi phí thấp song vẫn hỗ trợ truyền dẫn với tốc độ
lên đến 480Mb/s.lên đến 480Mb/s.
Hỗ trợ ứng dụng thời gian thực như voice, audio,Hỗ trợ ứng dụng thời gian thực như voice, audio,
video,...video,...
Có thể gắn và tháo nóng.Có thể gắn và tháo nóng.
Được Windows và các hệ điều hành khác hỗ trợ doĐược Windows và các hệ điều hành khác hỗ trợ do
đó có thể không cần driver mức thấp cho các thiết bịđó có thể không cần driver mức thấp cho các thiết bị
USB.USB.
4. II. Hệ thống usb:II. Hệ thống usb:
- Kết nối USBKết nối USB
- Thiết bị USBThiết bị USB
- USB host.USB host.
5. 11. Thiết bị usb:. Thiết bị usb:
Thiết bị hiểu được giao thức USB như digital joystick,Thiết bị hiểu được giao thức USB như digital joystick,
speaker, printer…speaker, printer…
- Điểm cuối: thiết bị usb là tập hợp nhiều điểm cuối, là nơi nhận- Điểm cuối: thiết bị usb là tập hợp nhiều điểm cuối, là nơi nhận
hoặc truyền dữ liệu.hoặc truyền dữ liệu.
+ Điểm cuối IN: thiết bị+ Điểm cuối IN: thiết bị hosthost
+ Điểm cuối OUT: host+ Điểm cuối OUT: hostthiết bịthiết bị
- Mỗi điểm cuối trong thiết bị có số riêng khi thiết kê. Khi kết- Mỗi điểm cuối trong thiết bị có số riêng khi thiết kê. Khi kết
nối vào hệ thống thì mỗi thiết bị có mỗi địa chỉ riêng.nối vào hệ thống thì mỗi thiết bị có mỗi địa chỉ riêng.
- Điểm cuối zero: gồm 1 điểm cuối in và 1 điểm cuối out. Khi- Điểm cuối zero: gồm 1 điểm cuối in và 1 điểm cuối out. Khi
kết nối thiết bị vào hệ thống, thì usb system software kết nốikết nối thiết bị vào hệ thống, thì usb system software kết nối
với điểm cuối zero dể cập nhật thông tin, setup thiết bịvà tạovới điểm cuối zero dể cập nhật thông tin, setup thiết bịvà tạo
thành một đường truyền cho control transfer.thành một đường truyền cho control transfer.
6.
7. 2. Kết nối usb:2. Kết nối usb:
- Kiến trúc tầng sao.Kiến trúc tầng sao.
- Host là trung tâmHost là trung tâm
của sao. Từ Host có thểcủa sao. Từ Host có thể
nối đến thiết bị hoặcnối đến thiết bị hoặc
đến 1 Hub. Mỗi Hubđến 1 Hub. Mỗi Hub
cũng có thể coi làcũng có thể coi là
trung tâm của mỗi saotrung tâm của mỗi sao
nhỏ hơn.nhỏ hơn.
- Với 7 bit địa chỉ, hostVới 7 bit địa chỉ, host
có thể quản lí tối đa 127có thể quản lí tối đa 127
thiết bị.thiết bị.
8. Cáp USBCáp USB
USB truyền tín hiệu và nguồn qua một cáp 4 sợi hình 4.2:USB truyền tín hiệu và nguồn qua một cáp 4 sợi hình 4.2:
Vbus: Điện áp cung cấp cho thiết bị.Vbus: Điện áp cung cấp cho thiết bị.
Tín hiệu D+.Tín hiệu D+.
Tín hiệu D-.Tín hiệu D-.
Dây đất GND.Dây đất GND.
D+ và D- được dùng để truyền tín hiệu, Vbus và GND đểD+ và D- được dùng để truyền tín hiệu, Vbus và GND để
cấp nguồn cho thiết bị (Thường thì Vbus =5V còn GND=0Vcấp nguồn cho thiết bị (Thường thì Vbus =5V còn GND=0V
tại nguồn).tại nguồn).
1: D+ high D- low1: D+ high D- low
0: D+low D-high0: D+low D-high
Có 3 tốc độ truyền dữ liệu:Có 3 tốc độ truyền dữ liệu:
USB tốc độ cao (USB high-speed): 480Mb/s.USB tốc độ cao (USB high-speed): 480Mb/s.
USB toàn tốc (USB full-speed): 12Mb/s.USB toàn tốc (USB full-speed): 12Mb/s.
USB tốc độ thấp (USB low-speed): 1.2Mb/s.USB tốc độ thấp (USB low-speed): 1.2Mb/s.
9. III.Các lớp giao tiếp trong hệ thống usb:III.Các lớp giao tiếp trong hệ thống usb:
ApplicationApplication
layerlayer
Protocol EngineProtocol Engine
layerlayer
Physical layerPhysical layer
10. 1. Application layer:1. Application layer: gồm clientsoftware trên host và interfacegồm clientsoftware trên host và interface
trên thiết bị.trên thiết bị.
11. 2.Protocol2.Protocol engine layer:engine layer: gồm usb system software trên host vàgồm usb system software trên host và
usb logical device.usb logical device.
--
Usb system software:Usb system software: host controller driver(HCD) và Usbhost controller driver(HCD) và Usb
driver(USBD)driver(USBD)
- HCD: giúp cho host quản lí thiết bị dễ dàng hơn khi có nhiềuHCD: giúp cho host quản lí thiết bị dễ dàng hơn khi có nhiều
thiết bị kết nối vào hệ thống.thiết bị kết nối vào hệ thống.
12. - USBD: +dữ liệu từ buffer qua USBD sẽ được đóng góiUSBD: +dữ liệu từ buffer qua USBD sẽ được đóng gói
thành các kiểu dữ liệu I/O request Packet để truyền đithành các kiểu dữ liệu I/O request Packet để truyền đi
++ cung cấp cho host bản mô tả chi tiết về thiết bị khi thiết bịcung cấp cho host bản mô tả chi tiết về thiết bị khi thiết bị
kết nối vào hệthống.kết nối vào hệthống.
+ Giữ kênh truyền riêng cho thiết bị khi kết nối+ Giữ kênh truyền riêng cho thiết bị khi kết nối
3.3. Physical layerPhysical layer :: gồm Host Controller trên host và serialgồm Host Controller trên host và serial
interface engine ( SIE ) trên host và thiết bị.interface engine ( SIE ) trên host và thiết bị.
- SIE: chuyển dữ liệu thành- SIE: chuyển dữ liệu thành
các tín hiệu trên dây D+,D-.các tín hiệu trên dây D+,D-.
- Host controller: quản lí- Host controller: quản lí
việc truyền dữ liệu giữa hostviệc truyền dữ liệu giữa host
và thiết bị như usb resource,và thiết bị như usb resource,
băng thông và áp trên bus…băng thông và áp trên bus…
13. IV.IV. PhPhươngương thức giao tiếp USBthức giao tiếp USB::
- Máy chủ bao gộp hầu hết sự phức tạp của giao thức USB.
- Dữ liệu có thể truyền từ thiết bị đến máy chủ và ngược lại.
- Quá trình truyền được thực hiện qua các gói dữ liệu.Mỗi
gói dữ liệu gôm 3 phase:
Token phase: khởi động kiểu truyền.
Data phase: dữ liệu truyền đi, tối đa 1023 byte.
Handshake phase: cho biết quá trình truyền thành công
hay bị lỗi.
- Hệ thống USB dùng cấu trúc Polling trong truyền thông.
14. - Có 4 kiểu truyền trong hệ thống USB:Có 4 kiểu truyền trong hệ thống USB:
+ Isochronous transfer (Truyền đẳng thời)+ Isochronous transfer (Truyền đẳng thời)
+ Bulk transfer ( Truyền hàng loạt)+ Bulk transfer ( Truyền hàng loạt)
+ Interrupt transfer+ Interrupt transfer
+ Control transfer+ Control transfer
- Các thiết bị tốc độ thấp chỉ hỗ trỡ kiểu truyền Interrupt vàCác thiết bị tốc độ thấp chỉ hỗ trỡ kiểu truyền Interrupt và
Cotrol.Còn các thiết bị tốc độ cao thì hỗ trợ cả 4 kiểuCotrol.Còn các thiết bị tốc độ cao thì hỗ trợ cả 4 kiểu
truyền trên.truyền trên.
- Dữ liệu được truyền dưới dạng từng gói. Và mỗi gói baoDữ liệu được truyền dưới dạng từng gói. Và mỗi gói bao
gồm nhiều trường dữ liệu.gồm nhiều trường dữ liệu.
15. IV.1IV.1 CÁC LOẠI TRƯỜNG:CÁC LOẠI TRƯỜNG:
1.Trường SYNC:1.Trường SYNC:
- Trường SYNC nằm ở vị trí bắt đầu của mỗi gói dữTrường SYNC nằm ở vị trí bắt đầu của mỗi gói dữ
liệu. cho phépliệu. cho phép đồngđồng bộ các thiết bị ngoại vi với xungbộ các thiết bị ngoại vi với xung
clock bên trong.clock bên trong.
2. PID( packet identifier field ):2. PID( packet identifier field ):
- dùngdùng đểđể nhận dạng loại gói dữ liệu.4 bitnhận dạng loại gói dữ liệu.4 bit đầu đểđầu để nhậnnhận
dạng dữ liệu, 4 bit cuốidạng dữ liệu, 4 bit cuối đểđể kiểm tra bit và phát hiệnkiểm tra bit và phát hiện
lỗi.lỗi.
- PID chia thành 3 nhóm:PID chia thành 3 nhóm:
+ Mã thông báo(Token): có thể là IN, OUT, SOF hoặc+ Mã thông báo(Token): có thể là IN, OUT, SOF hoặc
SETUP.SETUP.
16. OUT:OUT: đểđể chỉ dữ liệu sẽ truyền từ hostchỉ dữ liệu sẽ truyền từ host đếnđến device.device.
IN:IN: đểđể chỉ dữ liệu sẽ truyền từ device sang host.chỉ dữ liệu sẽ truyền từ device sang host.
SOF: chỉ bắtSOF: chỉ bắt đầuđầu của 1 frame.của 1 frame.
SETUP: truyền từ hostSETUP: truyền từ host đếnđến device, chứa lệnh dùng đểdevice, chứa lệnh dùng để
cấu hình thiết bị.cấu hình thiết bị.
+ Data.+ Data.
+ HANDSHAKE: dùng cho handshake packet, gồm có+ HANDSHAKE: dùng cho handshake packet, gồm có
ACK: bên nhận đã nhận data.ACK: bên nhận đã nhận data.
NAK: bên nhận không thể nhận dữ liệu, hoặc bên truyềnNAK: bên nhận không thể nhận dữ liệu, hoặc bên truyền
không cho phép truyền dữ liệu.không cho phép truyền dữ liệu.
STALL: lệnh điều khiển khôngSTALL: lệnh điều khiển không đượcđược thực hiệnthực hiện
17. 3.Address field: chia thành 2 vùng:3.Address field: chia thành 2 vùng:
- Addres field(ADDR): chứaAddres field(ADDR): chứa địađịa chỉ của thiết bịchỉ của thiết bị
- Endpoint field( ENDP): chứa số thứ tự củaEndpoint field( ENDP): chứa số thứ tự của đđiểm cuốiiểm cuối
trên thiết bị.trên thiết bị.
18. 4. Frame number field:4. Frame number field:
- 11 bit, chỉ số thứ tự của frame, chỉ có trong mã thông11 bit, chỉ số thứ tự của frame, chỉ có trong mã thông
báo SOF( SOF token).báo SOF( SOF token).
5. Data field:5. Data field:
- chứa dữ liệu tryền đi, có thể lên tới 1023 byte.chứa dữ liệu tryền đi, có thể lên tới 1023 byte.
6. CRC field:6. CRC field:
- Gồm 5 bit dùng để bảo vệ các trường khác trong gói mãGồm 5 bit dùng để bảo vệ các trường khác trong gói mã
thông báo ngoại trừ trường PID.thông báo ngoại trừ trường PID.
- Gồm 16 bit dùng để bảo vệ dữ liệu trong gói dữ liệu.Gồm 16 bit dùng để bảo vệ dữ liệu trong gói dữ liệu.
19. IV.2IV.2 CÁC ĐỊNH DẠNG GÓI ĐỂ TRUYỀN:CÁC ĐỊNH DẠNG GÓI ĐỂ TRUYỀN:
- Có 3 loại gói được định dạng.Có 3 loại gói được định dạng.
1.1. Gói mã thông báo(Token packet):Gói mã thông báo(Token packet):
- Có 5 trường được sử dụng trong loại gói mã thông báo.Có 5 trường được sử dụng trong loại gói mã thông báo.
2.2. Gói bắt đầu một frame.Gói bắt đầu một frame.
- Sử dụng 4 loại trường.Sử dụng 4 loại trường.
20. 3. Gói dữ liệu.3. Gói dữ liệu.
- Dùng 4 trường chứa dữ liệu truyền đi.Dùng 4 trường chứa dữ liệu truyền đi.
44 Gói handshake.Gói handshake.
- Chỉ dùng hai trường dùng để báo dữ liệu truyền cóChỉ dùng hai trường dùng để báo dữ liệu truyền có
thành công hay không.thành công hay không.
21. IV.3IV.3 CÁC KIỂU TRUYỀN CỦA USBCÁC KIỂU TRUYỀN CỦA USB
1.1. Kiểu truyền điều khiển.Kiểu truyền điều khiển.
- Gồm 2 hoặc 3 pha:Cài đặt, Dữ liệu(có thể có hayGồm 2 hoặc 3 pha:Cài đặt, Dữ liệu(có thể có hay
không) và trạng thái.không) và trạng thái.
+ Mỗi pha ở trên lại bao gồm 3 pha khác:Token, Data,+ Mỗi pha ở trên lại bao gồm 3 pha khác:Token, Data,
Handshake.Handshake.
+ Pha SETUP có nhiều loại:+ Pha SETUP có nhiều loại:
SET_ADDRESSSET_ADDRESS
GET_DEVICE_DESCRIPTORGET_DEVICE_DESCRIPTOR
GET_CONFIGURATION_DESCRIPTORGET_CONFIGURATION_DESCRIPTOR
GET_CONFIGURATIONGET_CONFIGURATION
SET_CONFIGURATIONSET_CONFIGURATION
22.
23. 2. Kiểu truyền khối (Bulk Transfer).2. Kiểu truyền khối (Bulk Transfer).
- CácCác thiết bị như một máy in, nhận dữ liệu trong một góithiết bị như một máy in, nhận dữ liệu trong một gói
lớn, sử dụng chế độ truyền hàng loạt. Một khối dữ liệulớn, sử dụng chế độ truyền hàng loạt. Một khối dữ liệu
được gửi đến máy in (một khối 64 byte) và được kiểm trađược gửi đến máy in (một khối 64 byte) và được kiểm tra
để chắc chắn nó chính xácđể chắc chắn nó chính xác..
- Có 2 loại: IN bulk transfer và OUT bulk transferCó 2 loại: IN bulk transfer và OUT bulk transfer
Ví dụ: OUT bulk transferVí dụ: OUT bulk transfer
24. Ví dụ: IN bulk transferVí dụ: IN bulk transfer
25. 3. Interrupt transfer:3. Interrupt transfer: Một thiết bị như chuột hoặc bàn phím,Một thiết bị như chuột hoặc bàn phím,
gửi một lượng nhỏ dữ liệu, sẽ chọn chế độ ngắtgửi một lượng nhỏ dữ liệu, sẽ chọn chế độ ngắt
26. 4. Insochronous transfer:4. Insochronous transfer:
-- TThiết bị truyền dữ liệu theo chuỗi (loahiết bị truyền dữ liệu theo chuỗi (loa, video…, video…) sử dụng) sử dụng
chế độ đẳng thời. Những dòng dữ liệu giũa thiết bị vàchế độ đẳng thời. Những dòng dữ liệu giũa thiết bị và
máy trong thời gian thực, và không có sự sửa lỗi ở đây.máy trong thời gian thực, và không có sự sửa lỗi ở đây.
27. CẢM ƠN THẦY VÀ CÁCCẢM ƠN THẦY VÀ CÁC
BẠN ĐÃ CHÚ Ý THEO DÕIBẠN ĐÃ CHÚ Ý THEO DÕI