27
USB – GIAO TIẾP NỐI TIẾP USB – GIAO TIẾP NỐI TIẾP Sinh viên: Nguyễn Thành Nhân 40401746 Sinh viên: Nguyễn Thành Nhân 40401746 Nguyễn Thanh Quân 40402051 Nguyễn Thanh Quân 40402051

Usb

  • Upload
    hoadktd

  • View
    1.957

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Usb

USB – GIAO TIẾP NỐI TIẾPUSB – GIAO TIẾP NỐI TIẾP

Sinh viên: Nguyễn Thành Nhân 40401746 Sinh viên: Nguyễn Thành Nhân 40401746

Nguyễn Thanh Quân 40402051Nguyễn Thanh Quân 40402051

Page 2: Usb

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 usbII. Hệ thống USB II. Hệ thống USB 1. Mô tả hệ thống 1. 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 USBIII. 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 layerIV. PhIV. Phươương thức giao tiếp USBng thức giao tiếp USB

Page 3: Usb

I Khái niệm USB:I Khái niệm USB: - - USB (Universal Serial Bus) là bus nối tiếp đa năng USB (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ính phé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.

Page 4: Usb

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.

Page 5: Usb

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ối kế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ạo vớ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.

Page 6: Usb
Page 7: Usb

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âm Host 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ặc nố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 sao trung 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 127 có thể quản lí tối đa 127

thiết bị. thiết bị.

Page 8: Usb

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=0V cấ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.

Page 9: Usb

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

Page 10: Usb

1. Application layer:1. Application layer: gồm clientsoftware trên host và interface gồm clientsoftware trên host và interface trên thiết bị. trên thiết bị.

Page 11: Usb

2.Protocol 2.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à Usb host 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ều HCD: 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.

Page 12: Usb

- USBD: +dữ liệu từ buffer qua USBD sẽ được đóng gói USBD: +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 đi thà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à serial gồ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 host việ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…

Page 13: Usb

IV. IV. PhPhươngương thức giao tiếp USB thứ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.

Page 14: Usb

- 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ểu Cotrol.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 bao Dữ 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.

Page 15: Usb

IV.1 IV.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ép liệu. cho phép đồng đồng bộ các thiết bị ngoại vi với xung bộ 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ùng dùng đểđể nhận dạng loại gói dữ liệu.4 bit nhận dạng loại gói dữ liệu.4 bit đầu đểđầu để nhận nhận

dạng dữ liệu, 4 bit cuối dạng dữ liệu, 4 bit cuối đểđể kiểm tra bit và phát hiện kiể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.

Page 16: Usb

OUT: OUT: đểđể chỉ dữ liệu sẽ truyền từ host chỉ 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ắt SOF: chỉ bắt đầuđầu của 1 frame. của 1 frame. SETUP: truyền từ host SETUP: 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ền NAK: 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ông STALL: lệnh điều khiển không đượcđược thực hiện thực hiện

Page 17: Usb

3.Address field: chia thành 2 vùng: 3.Address field: chia thành 2 vùng: - Addres field(ADDR): chứa Addres 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ủa Endpoint field( ENDP): chứa số thứ tự của đđiểm cuối iểm cuối trên thiết bị.trên thiết bị.

Page 18: Usb

4. Frame number field: 4. Frame number field: - 11 bit, chỉ số thứ tự của frame, chỉ có trong mã thông 11 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.

Page 19: Usb

IV.2 IV.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.

Page 20: Usb

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.

Page 21: Usb

IV.3 IV.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ó hay Gồ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_DESCRIPTOR GET_DEVICE_DESCRIPTOR GET_CONFIGURATION_DESCRIPTOR GET_CONFIGURATION_DESCRIPTOR GET_CONFIGURATIONGET_CONFIGURATION

SET_CONFIGURATION SET_CONFIGURATION

Page 22: Usb
Page 23: Usb

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ói thiế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ệu lớ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

Page 24: Usb

Ví dụ: IN bulk transferVí dụ: IN bulk transfer

Page 25: Usb

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

Page 26: Usb

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.

Page 27: Usb

CẢM ƠN THẦY VÀ CÁC CẢM ƠN THẦY VÀ CÁC BẠN ĐÃ CHÚ Ý THEO DÕIBẠN ĐÃ CHÚ Ý THEO DÕI