Chương 1: Giới thiệu tổng quan về bus nối tiếp đa năng USB. Chương 2: Host USB: Phần cứng và phần mềm. Giới thiệu về đường dẫn cơ bản và các mối quan hệ nội tại của phương thức truyền thông của USB. Chương 3 Thiết bị USB.
Chương này mô tả các tính năng và hoạt động phổ biết ở lớp giữa của thiết bị USB. Các thuộc tính và hoạt động này được dùng bởi quá trình phân chia chức năng đặc biệt cho thiết bị để giao tiếp thông qua giao diện bus và cuối cùng là giao tiếp với máy chủ. TIEU LUAN MOI download : skknchat@gmail.com 8 CHƢƠNG 1. TỔNG QUAN VỀ USB 1.
Những nét chung về Bus USB USB là một bus nối tiếp, dữ liệu trên bus được truyền tương tự như cổng nối tiếp, cụ thể là từng bit kế tiếp nhau. Một điều đáng chú ý là, dữ liệu được truyền trên cùng một đường dẫn theo hai hướng, trong khi theo tiêu chuẩn RS-232 dữ liệu được truyền trên hai đường dẫn khác nhau, mỗi đường chỉ theo một hướng. USB cho phép đấu nối đến 127 thiết bị, cũng chính vì vậy mà được gọi là một bus. Mỗi thiết bị đấu nối vào bus nhận được một địa chỉ và cũng chính qua địa chỉ này thiết bị có thể trao đổi dữ liệu với PC cũng như các thiết bị khác.
Về mặt tốc độ, USB nhanh hơn RS-232 nhiều, dữ liệu có thể được truyền với tôc độ đến 12Mbps trên các đường dẫn tín hiệu. Tất nhiên dải thông được phân chia cho tất cả các thiết bị đấu nối với bus.0, tốc độ lên trên 12Mbps/một kênh con ( subchanel), 1,5Mbps cho các thiết bị có tốc độ thấp (chuột), còn USB-2.0 trên 480Mbps nhưng vẫn giữ tính tương thích với phiên bản 1. USB có mối liên quan chặt chẽ với đặc tính "Cắm Là Chạy; Plug and Play" ở các PC đời mới. Trong khi máy tính đang hoạt động, thiết bị có thể được đấu vào hoặc tháo ra mà không cần cắt điện nguồn nuôi cho máy tính.
Đặc tính này gọi là đấu/ngắt nóng. Hệ thống nhận biết một USB mới được đấu vào và lập tức nạp phần mềm điều khiển (tệp đệm) thích hợp. Các đặc tính cơ bản của USB : • Các cuộc truyền là đẳng thời (isochonous), có thể hiểu là truyền "liên tục", hỗ trợ các tín hiệu video và sound. Với các cuộc truyền đẳng thời, các cuộc truyền và nhận dữ liệu theo kiểu được đảm bảo và có thể đoán trước (predictable).
• USB cũng hỗ trợ các thiết bị không đẳng thời hay thiết bi có quyền ưu tiên cao nhất, các thiết bị đẳng thời lẫn không đẳng thời có thể tồn tại cùng một thời điểm. • Các thông số kỹ thuật cũng có thông số là Plug and Play, các cáp nối và cách kết nối đều được tiêu chuẩn hoá rộng rãi trong công nghiệp. • Các hub được xếp thành nhiều tầng (Multiple-tiered) với khả năng mở rộng gần đến mức rất lớn (có thể đến 127 thiết bị vật lý), và các thao tác xảy ra đồng thời. • Tốc độ truyền USB2.0: 1,5/12/480 Mbps (low/full/high), với các kích thước gói khác nhau.
• Hỗ trợ nhiều ưu cầu dải thông thiết bị từ một vài Kbps đến 480 Mbps. • Hỗ trợ tốc độ truyền dữ liệu của thiết bị trên một pham vi rộng các giá trị thông qua việc điều tiết kích thước bộ đệm các gói dữ liệu và cơ chế tiềm ẩn (latency). • Có khả năng cắm nóng (hot-plug), nghĩa là cho phép các thiết bị ngoại vi có thể được đấu nối mà không cần phải cắt nguồn nuôi cho PC, có thể đấu/ngắt và thay đổi lại cấu hình thiết bi ngoại vi một cách linh hoạt. TIEU LUAN MOI download : skknchat@gmail.com 9 • Khả năng quản lý năng lượng được tăng cường với các chế độ "ngủ" và "nằm_lì" trên pham vi hệ thống.
• Tự nhận dạng thiết bị ngoại vi, tự động vẽ bản đồ chức năng đối với phần mềm điều khiển và cấu hình. • Hỗ trợ cho các thiết bị ngoại vi khác nhau, với nhiều chức năng khác nhau. Điều khiển luồng dữ liệu thông qua bộ đệm, thông qua giao thức được đặt sẵn bên trong. • Có cơ chế xử lý lỗi/hoàn trả lỗi.
• Hỗ trợ khả năng nhận dạng các thiết bị mắc lỗi. • Giao thức đơn giản trong việc thực hiện và tích hợp. USB là cấu trúc bus cần bằng. Trong quá trình hoạt động, máy chủ USB điều khiển dải thông của hệ thống.
Mỗi thiết bị được gán một địa chỉ mặc định khi thiết bi USB được cấp điện lần đầu tiên hoặc được reset. Các hub và các thiết bị chức năng được gán một địa chỉ thiết bị giả định duy nhất bởi phần mềm USB. Khung 1ms Hình 1.1: Ví dụ minh họa phân chia dải thông cho các thiết bị USB. Một đặc điểm cơ bản khác của USB là điện áp nguồn nuôi (+5V) có thể nhận được từ bus.
Các thiết bị có công suất tiêu thu nhỏ có thể sử dụng trực tiếp nguồn trên bus (ví dụ: USB flash disk, iPod,…). Đối với những thiết bị công suất lớn hơn (như máy Scan…) giao tiếp với PC qua USB thì nên có nguồn nuôi riêng, nếu là loại có nguồn nuôi lấy trực tiếp từ cổng USB thì phải cân nhắc kỹ trước khi sử dụng, liệu công suất bộ nguồn PC có đủ cung cấp, và dòng ra cho phép của cổng USB trên mainboard TIEU LUAN MOI download : skknchat@gmail.com 10 có đáp ứng được không. (thường thì I_out.max = 500mA); mặc dù tất cả đều có mạch bảo vệ quá tải hay quá dòng, khi dòng ra tổng đạt đến 5A , nhưng tốt nhất ta nên tránh.1: Bảng so sánh tương đối giữa một số chuẩn truyền thống nối tiếp. Đầu nối và cáp USB USB có hai kiểu đầu nối khác nhau: kiểu A và kiểu B.
USB kiểu B là cổng USB nhỏ gọn thường gặp trên các loại máy chụp hình, điện thoại di động, iPod,… USB kiểu A là kiểu bình thường mà ta hay gặp trên PCs, digital camera, webcam TIEU LUAN MOI download : skknchat@gmail.com 11 divices,… Đầu nối USB loại A. Đầu nối và cáp chuyển A-B (Trái-Phải).2: Các đầu nối USB. USB kiểu A bao gồm một hàng chân đánh số 4 3 2 1 còn kiếu B gồm hai hàng chân song song đánh số 1 2 4 3 (nhìn đối điện, đếm chữ Z ,từ trái qua phải, từ trên xuống dưới). Hệ thống được thiết kế sao cho không xảy ra hiện tượng đấu nối nhầm.
Khác với chuẩn RS-232, việc kết nối ở USB không chia ra những kiểu đấu khác nhau như nối thẳng hay bắt chéo. USB sử dụng cáp 4 lõi (chính), trong đó D+ và D- là hai sợi cáp xoắn chéo nhau và truyền dữ liệu dưới dạng vi phân, GND thường là lớp bọc kim bên ngoài, còn lại là +5VDC và cáp nối luôn được liên kết 1:1. Việc chuyển đổi qua lại giữa 2 loại A-B được thông qua đầu nối chuyển đổi A- B. Các cáp nối, chuyển đổi USB được các nhà sản xuất cung cấp đưới dạng hoàn chỉnh, trên đó : đầu cắm, độ dài cáp, độ xoắn D+/D-, chất lượng lớp bọc kim chống nhiễu đã được tối ưu và chuẩn hóa nên không thể thay đổi được, vì tốc độ truyền của TIEU LUAN MOI download : skknchat@gmail.com 12 USB là rất cao và phương thức truyền cũng khá phức tạp.
vì vậy tuỳ theo mục đích sử dụng mà ta phải chọn cho đúng loại cáp (từ chiều dài cho đến loại đầu nối).3: Cáp USB và ký hiệu màu dây. Ngoài ra để hỗ trợ cho người dùng có thể tự chế tạo các module ghép nối qua USB, các nhà chế tạo cũng có sẵn các đế cắm USB đơn có chân để hàn lên mạch in. Một điểm đáng lưu ý là, USB có thể có các tốc truyền dữ liệu khác nhau (low-speed, full-speed và high-speed) thế nên sẽ ngẫu nhiên xảy ra tình huống là một thiết bị USB tốc độ cao lại được đấu nối vào một cái khác có tốc độ thấp hơn (Ví dụ: high-speed USB flash disk được cắm vào đầu cắm low-speed USB của PC có mainboard đời cũ), hay một thiết bị USB tốc độ cao lại được đấu nối vào PC qua một cáp nối tốc độ thấp. Để khắc phục tình trạng này, tất cả các thiết bị có USB đều được trang bị hệ thống phần cứng và phần mềm thích nghi và tất cả các cáp nối đều là loại tốc độ cao.
Loại cáp tốc độ thấp được chỉ định cho những trường hợp ứng dụng cụ thể và được nhà sản xuất ghi rõ. (ví dụ cáp nối dùng cho chuột USB); còn những ứng dụng video đều sử dụng cáp tốc độ cao. Ổ cắm USB trên PC có thể lấy ra +5VDC với dòng tiêu thụ khoảng 100mA, và max khoảng 500mA, tùy theo sự hỗ trợ của main, nhưng phải cân nhắc khi sử dụng. Hai đường dẫn D+ và D- cũng cho phép đấu nối với các linh kiện hỗ trợ USB như Vi- Điều-Khiển ( Micro-Controller) hay chip biến đổi tương tự/số - USB (USB-ADC chips )… Tín hiệu trên các chân D+ D- là các tín hiệu vi phân với mức điện áp bằng 0/3,3 V được cấp từ vi mạch ổn áp (vi mach lấy nguồn vào +5V và ổn áp cho đầu ra ở mức +3,3V và do đó điện áp nguồn nuôi USB có thể dao động trong khoảng +5,25Vđến TIEU LUAN MOI download : skknchat@gmail.
CHƢƠNG 2 HOST USB: PHẦN CỨNG VÀ PHẦN MỀM 2. Tổng quan về host của USB. Đường dẫn cơ bản và các mối quan hệ nội tại của phương thức truyền thông của USB được chỉ trong hình 2.[3] Host Liên kết thiết bị TB ngoài Chức năng HT USB TB USB Giao diện Giao diện bus USB bus USB Đường truyền thông thực Đường truyền thông logic Hình 2.1: Phương thức truyền thông của lớp lõi. Host và thiết bị được phân thành các lớp riêng biệt được mô tả trong hình 2.
Truyền thông thực trên host được biểu diễn dọc theo các cột. Các giao diện tương ứng trên thiết bị được bổ sung cụ thể. Tất cả quá trình truyền thông giữa host và thiết bị đều diễn ra trên dây USB vật lý. Tuy nhiên, có các giao diện host - thiết bị logic giữa mỗi lớp theo hàng.
Các quá trình truyền thông này, giữa phần mềm ngoại vi cư trú trên host và chức năng của nó do host cung cấp, đó là chức năng được quy định dựa trên sự cần thiết của ứng dụng hiện tại của thiết bị và khả năng mà thiết bị đó cung cấp. Sự tương tác giữa thiết bị ngoài - chức năng tạo lên các nhu cầu cho tất cả các lớp bên dưới và các giao diện của chúng. Trong chương này mô tả phương thức này từ cách thức kết nối host và các lớp của nó.2 mô tả quá trình truyền thông của host với thiết bị.[3] TIEU LUAN MOI download : skknchat@gmail.