thiết kế hệ thống usb

thiết kế hệ thống usb

Kiến trúc thiết kế của USB có cấu trúc liên kết không đối xứng, bao gồm một máy chủ, vô số cổng USB xuôi dòng và nhiều thiết bị ngoại vi được kết nối theo cấu trúc liên kết hình sao phân tầng. Các trung tâm USB bổ sung có thể được bao gồm trong các tầng, cho phép phân nhánh thành cấu trúc cây với tối đa năm cấp. Máy chủ USB có thể triển khai nhiều bộ điều khiển máy chủ và mỗi bộ điều khiển máy chủ có thể cung cấp một hoặc nhiều cổng USB. Tối đa 127 thiết bị, bao gồm cả thiết bị trung tâm nếu có, có thể được kết nối với một bộ điều khiển máy chủ duy nhất. Các thiết bị USB được liên kết nối tiếp thông qua các trung tâm. Một hub—được tích hợp trong bộ điều khiển máy chủ—là hub gốc.

Một thiết bị USB vật lý có thể bao gồm một số thiết bị phụ logic được gọi là chức năng của thiết bị. Một thiết bị có thể cung cấp một số chức năng, ví dụ: webcam (chức năng của thiết bị video) có micrô tích hợp (chức năng của thiết bị âm thanh). Loại thiết bị này được gọi là thiết bị tổng hợp. Một giải pháp thay thế cho điều này là thiết bị phức hợp, trong đó máy chủ gán cho mỗi thiết bị logic một địa chỉ riêng biệt và tất cả các thiết bị logic kết nối với một hub tích hợp kết nối với cáp USB vật lý.

Sơ đồ: bên trong một thiết bị có một số điểm cuối, mỗi điểm được kết nối bằng một ống logic với bộ điều khiển máy chủ. Dữ liệu trong mỗi đường ống chảy theo một hướng, mặc dù có một hỗn hợp đi đến và đi từ bộ điều khiển máy chủ.

Giao tiếp thiết bị USB dựa trên các đường ống (kênh logic). Đường ống là kết nối từ bộ điều khiển máy chủ đến một thực thể logic, được tìm thấy trên thiết bị và được đặt tên là điểm cuối. Vì các đường ống tương ứng 1-1 với các điểm cuối nên các thuật ngữ này đôi khi được sử dụng thay thế cho nhau. Một thiết bị USB có thể có tới 32 điểm cuối (16 IN, 16 OUT), mặc dù hiếm khi có nhiều như vậy. Điểm cuối được thiết bị xác định và đánh số trong quá trình khởi tạo (khoảng thời gian sau khi kết nối vật lý được gọi là "liệt kê") và do đó tương đối lâu dài, trong khi một đường ống có thể được mở và đóng.


Điểm cuối USB thực sự nằm trên thiết bị được kết nối: các kênh tới máy chủ được gọi là đường ống

Có hai loại ống: ống truyền phát và ống thông báo. Một đường ống thông báo là hai chiều và được sử dụng để chuyển điều khiển. Ống thông báo thường được sử dụng cho các lệnh ngắn, đơn giản tới thiết bị và phản hồi trạng thái, chẳng hạn như được sử dụng bởi ống điều khiển xe buýt số 0. Ống truyền phát là một ống một chiều được kết nối với điểm cuối một hướng để truyền dữ liệu sử dụng truyền đẳng thời, ngắt hoặc truyền số lượng lớn:

• truyền đẳng thời: ở tốc độ dữ liệu được đảm bảo (thường xuyên, nhưng không nhất thiết, nhanh nhất có thể) nhưng có thể mất dữ liệu (ví dụ: âm thanh hoặc video thời gian thực).
• truyền ngắt: các thiết bị cần phản hồi nhanh được đảm bảo (độ trễ giới hạn) (ví dụ: thiết bị trỏ và bàn phím).
• Truyền số lượng lớn: truyền lẻ tẻ với số lượng lớn sử dụng tất cả băng thông sẵn có còn lại nhưng không đảm bảo về băng thông hoặc độ trễ (ví dụ: truyền tệp).

Điểm cuối của đường ống có thể được định địa chỉ bằng một bộ dữ liệu (địa chỉ thiết bị, số_điểm cuối) như được chỉ định trong gói TOKEN mà máy chủ gửi khi muốn bắt đầu phiên truyền dữ liệu. Nếu hướng truyền dữ liệu là từ máy chủ đến điểm cuối, gói OUT (chuyên biệt của gói TOKEN) có địa chỉ thiết bị và số điểm cuối mong muốn sẽ được máy chủ gửi. Nếu hướng truyền dữ liệu là từ thiết bị đến máy chủ thì thay vào đó, máy chủ sẽ gửi gói IN. Nếu điểm cuối đích là điểm cuối một hướng có hướng chỉ định của nhà sản xuất không khớp với gói TOKEN (ví dụ: hướng chỉ định của nhà sản xuất là IN trong khi gói TOKEN là gói OUT), gói TOKEN sẽ bị bỏ qua. Nếu không, nó sẽ được chấp nhận và giao dịch dữ liệu có thể bắt đầu. Mặt khác, điểm cuối hai chiều chấp nhận cả gói IN và OUT.

Điểm cuối được nhóm thành các giao diện và mỗi giao diện được liên kết với một chức năng của thiết bị. Một ngoại lệ cho điều này là điểm cuối số 0, được sử dụng để cấu hình thiết bị và không liên kết với bất kỳ giao diện nào. Một chức năng thiết bị duy nhất bao gồm các giao diện được điều khiển độc lập được gọi là thiết bị tổng hợp. Một thiết bị tổng hợp chỉ có một địa chỉ thiết bị duy nhất vì máy chủ chỉ gán địa chỉ thiết bị cho một chức năng.


Hai ổ cắm USB chuẩn A ở mặt trước của máy tính

Khi thiết bị USB được kết nối lần đầu với máy chủ USB, quá trình liệt kê thiết bị USB sẽ được bắt đầu. Việc liệt kê bắt đầu bằng cách gửi tín hiệu đặt lại đến thiết bị USB. Tốc độ dữ liệu của thiết bị USB được xác định trong quá trình thiết lập lại tín hiệu. Sau khi đặt lại, thông tin của thiết bị USB được máy chủ đọc và thiết bị được gán một địa chỉ 7 bit duy nhất. Nếu thiết bị được máy chủ hỗ trợ, trình điều khiển thiết bị cần thiết để liên lạc với thiết bị sẽ được tải và thiết bị được đặt ở trạng thái được định cấu hình. Nếu máy chủ USB được khởi động lại, quy trình liệt kê sẽ được lặp lại cho tất cả các thiết bị được kết nối.

Bộ điều khiển máy chủ hướng luồng lưu lượng đến các thiết bị, do đó, không thiết bị USB nào có thể truyền bất kỳ dữ liệu nào trên bus mà không có yêu cầu rõ ràng từ bộ điều khiển máy chủ. Trong USB 2.0, bộ điều khiển máy chủ thăm dò lưu lượng trên xe buýt, thường theo kiểu vòng tròn. Thông lượng của mỗi cổng USB được xác định bởi tốc độ chậm hơn của cổng USB hoặc thiết bị USB được kết nối với cổng.

Hub USB 2.0 tốc độ cao chứa các thiết bị được gọi là bộ dịch giao dịch chuyển đổi giữa bus USB 2.0 tốc độ cao và bus tốc độ cao và tốc độ thấp. Khi hub USB 2.0 tốc độ cao được cắm vào máy chủ hoặc hub USB tốc độ cao, nó sẽ hoạt động ở chế độ tốc độ cao. Sau đó, hub USB sử dụng một trình dịch giao dịch trên mỗi hub để tạo một bus tốc độ đầy đủ/thấp được định tuyến đến tất cả các thiết bị tốc độ đầy đủ và tốc độ thấp trên hub hoặc sử dụng một trình dịch giao dịch trên mỗi cổng để tạo một bus tốc độ thấp/đầy đủ riêng biệt cho mỗi cổng. cổng trên hub.

Vì có hai bộ điều khiển riêng biệt trong mỗi máy chủ USB 3.0 nên các thiết bị USB 3.0 truyền và nhận ở tốc độ dữ liệu USB 3.0 bất kể các thiết bị USB 2.0 hoặc cũ hơn được kết nối với máy chủ đó. Tốc độ dữ liệu vận hành cho các thiết bị cũ hơn được đặt theo cách cũ.