Giao thức truyền dữ liệu
3.3.2. Gói thẻ bài đặc biệt giao dịch Split
USB định nghĩa một thẻ bài đặc biệt cho giao dịch phân chia: Split. Đây là một gói thẻ bài 4byte khác với các gói thẻ bài 3byte. Gói thẻ bài giao dịch phân chia cung cấp các loại dịch vụ bổ sung với các thông tin rõ ràng giao dịch bổ sung. Thẻ bài giao dịch phân chia được dùng để hỗ trợ các giao dịch phân chia giữa việc thông tin điều khiển host với một hoạt động hub ở tốc độ cao với các thiết bị tốc độ full/low để các cổng đối ứng dòng xuống của nó. Có hai giao dịch phân chia đã định nghĩa sử dụng thẻ bài đặc biệt Split: giao dịch bắt đầu phân chia (SSPLIT) và giao dịch phân chia hoàn toàn (CSPLIT).
3.3.2.1. Các giao dịch phân chia
Giao dịch phân chia tốc độ cao chỉ dùng giữa điều khiển host và hub khi hub có nối với các thiết bị tốc độ full/low. Giao dịch phân chia tốc độ cao dùng để thiết lập giao thức tốc độ full/low thông qua hub và các thiết bị điểm cuối tốc độ full/low. Giao dịch phân chia tốc độ cao cũng cho phép lấy toàn bộ trạng thái của giao dịch tốc độ full/low được lấy lại từ hub. Cách tiếp cận này cho phép bộ điều khiển host bắt đầu giao dịch tốc độ full/low qua một giao dịch tốc độ cao và sau đó tiếp tục với các giao dịch tốc độ cao khác mà không phải chờ các giao dịch tốc độ full/low để vận hành/hoàn thiện ở tốc độ thấp hơn.
Giao dịch phân chia tốc độ cao gồm hai phần: bắt đầu phân chia và hoàn thành phân chia. Các giao dịch phân chia chỉ xác định để sử dụng giữa bộ điều khiển host và hub. Các thiết bị tốc độ cao trung bình/thấp khác không
Hình H-3.6 chỉ ra việc tạo các gói giao dịch bắt đầu phân chia tổng quát. Có hai gói trong đoạn thẻ bài: thẻ bài đặc biệt và một thẻ bài tốc độ trung bình/thấp. Phụ thuộc hướng truyền dữ liệu và có hay không một bắt tay được xác định loại giao dịch, đoạn thẻ bài sau tuỳ thuộc gói dữ liệu và gói bắt tay. Giao dịch bắt đầu phân chia có thể bao gồm 2,3, hay 4 gói phụ thuộc loại truyền cụ thể và hướng truyền dữ liệu.
Hình H-3.7 cho biết tạo ra các gói tổng quát giao dịch hoàn thành phân chia. Có hai gói trong đoạn thẻ bài: thẻ bài đặc biệt SPLIT và một thẻ bài tốc độ trung bình/thấp. Một gói bắt tay hay dữ liệu theo sau các gói đoạn thẻ bài trong hoàn thành phân chia phụ thuộc hướng truyền dữ liệu và loại giao dịch cụ thể. Các kết quả của giao dịch phân chia được trả về bằng một giao dịch tất phân chia. Hình H-3.8 chỉ ra điều này sự chuyển đổi trong ví dụ loại truyền ngắt IN. Host phát ra một giao dịch phân chia (chỉ ra với 1) đến hub và sau đó có thể tiếp tục với các giao dịch tốc độ cao khác. Giao dịch phân chia sinh ra hub để phát ra một thẻ bài IN tốc độ trung bình/thấp (2). Thiết bị đáp ứng thẻ bài IN (trong ví dụ này) với một gói dữ liệu và hub đáp ứng với một bắt tay
đến thiết bị. Cuối cùng host một lúc sau đó phát một hoàn thành phân chia (3) để nhận lấy dữ liệu được cung cấp bởi thiết bị. Chú ý là trong ví dụ này hub cung cấp bắt tay tốc độ trung bình/thấp đến đầu cuối thiết bị trước hoàn thành phân chia, và hoàn thành phân chia không cấp bắt tay tốc độ cao đến hub.
3.3.2.2. Thẻ bài giao dịch bắt đầu Split
Trường địa chỉ Hub chứa địa chỉ thiết bị USB của hub hỗ trợ thiết bị thốc độ full/low đã mô tả cho giao dịch tốc độ full/low. Trường này có định nghĩa tương tự như trường ADDR đã cho trong phần trước.
Gói thẻ bài đặc biệt SPLIT với trường SC (Start/Complete) lập về 0 cho biết đây là giao dịch bắt đầu split (SSPLIT). Trường Port chứa số cổng của hub đích được dành cho giao dịch tốc độ full/low như trong hình H-3.7, và sẽ
có 128 cổng được chỉ ra trong Port<6:0>. Host phải thiết lập đùng trường cổng cho việc thực thi hub đa hay đơn TT. Khi thực hiện hiện với hub TT đơn có thể bỏ qua trường cổng.
Trường S, đặc tả tốc độ cho giao dịch ngắt hay điều khiển như sau 0 - Tốc độ Full (đầy đủ)
1 - Tốc độ Low (thấp)
Với bắt đầu split IN đồng bộ và khối IN/OUT, trường S phải được lập về 0. Cho đầu split Khối/điều khiển IN/OUT, ngắt IN/OUT và đồng bộ IN trường E phải lập là 0.
Cho đầu split OUT đẳng thời tốc độ trung bình, trường S (Start) và E (End) đặc tả cách thức tải trọng dữ liệu tốc độ cao tương ứng với dữ liệu cho
một gói dữ liệu tốc độ full như trong bảng B-3.2
Bảng 3.2: Mã hoá mỡ rộng tải trọng OUT đẳng thời
S E Quan hệ dữ liệu tốc độ full và tốc độ cao
0 0 Dữ liệu tốc độ cao giữa tải trọng tốc độ trung bình
0 1 Dữ liệu tốc độ cao ở cuối của dữ liệu tải tốc độ trung bình. 1 0 Dữ liệu tốc độ cao là bắt đầu dữ liệu tải tốc độ trung bình 1 1 Dữ liệu tốc độ cao là toàn của đường tải tốc độ trung bình.
LSb MSb
Port0 Port1 Port2 Port3 Port4 Port5 Port6
Hình 3.10: Trường Port lsb msb Trường PID SPILT Đ/c Hub SC Cổng S E ET CRC5 Bit 8 7 1 7 1 1 2 5 Hình 3.9: Thẻ bài SSPLIT
Trường ET (loại điểm cuối) mô tả loại điểm cuối của giao dịch tốc độ trung bình và thấp như được cho trong bảng B-3.3.
Bảng 3.3: Các giá trị loại trường điểm cuối trong thẻ bài SPLIT Giá trị ET (msb:lsb) Loại điểm cuối
00 Điều khiển
01 Đẳng thời
10 Khối
11 Ngắt
Trường này báo cho hub biết cơ chế trạng thái giao dịch phân chia để sử dụng cho giao dịch tốc độ trung bình và thấp.
Địa chỉ và thông tin số điểm cuối các thiết bị tốc độ thấp/trung bình được chứa trong một gói thẻ bài bình thường tiếp sau gói thẻ bài đặc biệt SPLIT.
3.3.2.3. Thẻ bài hoàn thành giao dịch phân chia
Gói thẻ bài SPLIT với trường SC thiết lập cho biết rằng đây là giao
dịch hoàn thành phân chia (CSPLIT).
Bit U được dự trữ không sử dụng và phải lập là 0.
Các trường khác của thẻ bài giống như trong thẻ bài bắt đầu phân chia (SSPLIT).