Tại sao chiều dài tối đa của cáp USB lại ngắn hơn so với trong RS232?


9

Tại sao chúng ta cần đệm tín hiệu USB nếu cáp dài hơn 5m?
Có phải vì giảm điện áp tín hiệu?
Đó có phải là vì nó điều khiển dòng điện?


1
Rs 232

Câu trả lời:


16

Tốc độ của các vấn đề truyền tải vì USB là một nửa song công: để truyền một phản hồi, xe buýt phải được quay lại và dữ liệu được truyền theo hướng khác. Vì vậy, máy chủ lưu trữ dữ liệu và chờ đợi một xác nhận hoặc phản hồi. Tất cả các chuyển được kiểm soát bởi các máy chủ. Thiết bị sau đó có một thời gian nhất định (khá ngắn) để đáp ứng. Thời gian này là khoảng thời gian dành cho hai chuyến đi tín hiệu dọc theo cáp 5m.

(Tôi không thể tìm thấy tài liệu tham khảo ngay thứ hai này, nhưng các tài liệu thông số kỹ thuật có liên quan là công khai)

Chỉnh sửa: cảm ơn psmears vì đã tìm thấy phần này

Cáp và giải pháp kéo dài

  1. Tại sao có giới hạn chiều dài cáp, và chúng là gì?

Trả lời: Chiều dài cáp được giới hạn bởi thông số độ trễ cáp là 26ns để cho phép các phản xạ lắng xuống tại máy phát trước khi bit tiếp theo được gửi. Vì USB sử dụng các trình điều khiển chế độ điện áp và chấm dứt nguồn, đây phải là trường hợp, nếu không các phản xạ có thể chồng chất và thổi bay trình điều khiển. Điều này không có nghĩa là điện áp đường dây đã được giải quyết hoàn toàn vào cuối bit; với sự hủy diệt trong trường hợp xấu nhất. Tuy nhiên, đã có đủ giảm xóc vào cuối bit rằng biên độ phản xạ đã giảm xuống mức có thể quản lý được. Chiều dài cáp tốc độ thấp được giới hạn ở 18ns để giữ cho hiệu ứng đường truyền không ảnh hưởng đến tín hiệu tốc độ thấp.

  1. Tôi muốn xây dựng một cáp dài hơn 5 mét, tại sao điều này sẽ không hoạt động?

A: Ngay cả khi bạn vi phạm thông số kỹ thuật, nó thực sự sẽ không đưa bạn đi rất xa. Giả sử thời gian trễ trong trường hợp xấu nhất, một thiết bị tốc độ đầy đủ ở dưới cùng của 5 hub và cáp có biên độ hết thời gian là 280ps. Giảm mức ký quỹ này xuống 0ps sẽ chỉ giúp bạn có thêm 5cm, điều này hầu như không đáng để gặp rắc rối.

Vì vậy, câu trả lời của tôi chỉ đúng một nửa: giới hạn chuyến đi khứ hồi dành cho một chuỗi các trung tâm và dây cáp trong trường hợp xấu nhất, với tổng độ sâu 25m.

Dan Neely cũng đúng khi USB luôn được coi là giải pháp chi phí thấp nhất cho các thiết bị ngoại vi "chậm" như bàn phím, chuột, máy in, v.v ... Nếu bạn muốn in hai mặt đầy đủ để có tốc độ cao hơn nhiều khoảng cách hơn, ethernet 100baseT là lựa chọn tự nhiên.


mũ là một trong những cáp USB 20m. chuyện gì sẽ xảy ra? bạn nói điện áp không thay đổi và vấn đề tốc độ. Vì vậy, những gì xảy ra trong trường hợp cáp 20m và USB không hoạt động?
dùng16307

2
Máy chủ gửi yêu cầu, không nhận được phản hồi kịp thời và không liệt kê thiết bị ở đầu bên kia.
pjc50

4
Bạn có chắc về điều này? Theo thông số kỹ thuật USB , độ trễ lan truyền của tín hiệu dọc theo cáp phải <26ns (bảng 7-9), do đó tín hiệu chỉ mất dưới 5,2 ns / m trong cáp 5m tiêu chuẩn. Giới hạn cho độ trễ chuyến đi khứ hồi là khoảng 1,5 μs. Ở tốc độ đó, có nhiều thời gian để tín hiệu truyền ra và quay lại trên cáp> 100m. Diễn đàn triển khai USB đưa ra một lý do khác cho giới hạn 5m.
psmears

Có bất kỳ lý do nào để USB 1.0-2.0 là bán song công thay vì song công hoàn toàn kể từ ngày đầu tiên (như USB 3.0) không? Nói cách khác, có bất kỳ lợi thế thực tế nào của một nửa so với song công hoàn toàn không?
tigrou

1
@tigrou rộng hơn USB1 chấp nhận các tùy chọn đơn giản ở mọi nơi có thể vì nó cần đủ rẻ để thực hiện để có thể cạnh tranh với các cổng RS232 / PS2 / LPT / Game. Silicon đã rẻ hơn rất nhiều trong những năm qua; nhưng có mức giá cao hơn mức tối thiểu cần thiết là 'đủ tốt' cho các ứng dụng được nhắm mục tiêu dẫn đến USB2 giết chết FireWire; và Thunderbolt ngày càng tỏ ra chết non.
Dan đang loay hoay bởi Firelight

10

Xem trang này, /superuser/64744/maximum-length-of-a-usb-cable .

Câu 1: Tôi có thể sử dụng cáp trong bao lâu để kết nối thiết bị của mình? A1: Trong thực tế, thông số kỹ thuật USB giới hạn chiều dài của cáp giữa các thiết bị tốc độ tối đa là 5 mét (một chút dưới 16 feet 5 inch). Đối với thiết bị tốc độ thấp, giới hạn là 3 mét (9 feet 10 inch).

Câu 2: Tại sao tôi không thể sử dụng cáp dài hơn 3 hoặc 5m? A2: Thiết kế điện của USB không cho phép. Khi USB được thiết kế, một quyết định đã được đưa ra để xử lý việc truyền các trường điện từ trên các đường dữ liệu USB theo cách giới hạn độ dài tối đa của cáp USB ở mức nào đó trong phạm vi 4m. Phương pháp này có một số ưu điểm và, vì USB được dành cho môi trường máy tính để bàn, nên các giới hạn phạm vi được coi là chấp nhận được. Nếu bạn quen thuộc với lý thuyết đường truyền và muốn biết thêm chi tiết về chủ đề này, hãy xem phần tín hiệu USB của Câu hỏi thường gặp của nhà phát triển.


1
vẫn không giải thích bất cứ điều gì nhiều thông tin sương mù
user16307

10
Có thể là sương mù với bạn, nhưng không có cách dễ dàng để giải thích lý thuyết tín hiệu trong phòng định dạng này cho phép.
Wouter van Ooijen

5
Tôi nghĩ rằng câu trả lời này chỉ ra một số lý do tại sao những hạn chế là có. Khá dễ dàng để khám phá thêm các khu vực này bằng cách tìm kiếm trên web. Ví dụ về lý thuyết đường truyền. Đó là lý do tại sao tôi đăng câu trả lời này.
Mattias Johansson

1
Tôi hiếm khi downvote, vì vậy tôi cảm thấy buộc phải biện minh cho nó bây giờ. Trái với nhận xét của Wouter van Ooijen, tôi thực sự không cảm thấy rằng câu trả lời này cung cấp bất cứ điều gì cụ thể hơn một đề xuất có thể tìm kiếm về "giới hạn chiều dài cáp USB". Ngoài ra, câu trả lời bạn đề cập có chứa một liên kết chết và vì vậy đề xuất của nó để đọc thêm thậm chí không hữu ích. Nếu bạn đã tìm đúng nguồn gốc ban đầu và được trích dẫn từ đó, như psmears và pjc50 đã làm, thì đó sẽ là một vấn đề khác - bởi vì điều đó thực sự cung cấp chi tiết về lý do tại sao giới hạn này tồn tại.
Oleksandr R.

5

Thật sự không thể "đệm" USB, ít nhất là không phải theo nghĩa thông thường của từ này. Thông thường, bộ đệm có nghĩa là khuếch đại điện và có lẽ tái tạo tín hiệu.

Với USB, máy chủ lưu trữ toàn bộ xe buýt. Một máy chủ gửi yêu cầu và thiết bị phải đưa ra phản hồi cho máy chủ. Bắt đầu phản hồi phải đến máy chủ một thời gian nhất định sau khi yêu cầu truyền xong. Với cáp quá dài, độ trễ lan truyền quá dài để đáp ứng kịp thời đến máy chủ.

Vì vậy, có cách giải quyết, và không ai trong số chúng liên quan đến việc "đệm" đơn giản vì bộ đệm thêm sự chậm trễ bổ sung, và chúng ta cần bằng cách nào đó làm cho máy chủ chịu đựng được độ trễ lâu hơn.

Có hai loại cách giải quyết:

  1. Giải pháp chèn trung tâm vật lý hoặc ảo. Nếu một máy chủ liệt kê một trung tâm trên xe buýt, thì chính trung tâm đó sẽ thêm một độ trễ nữa và có một cáp có chiều dài đầy đủ khác giữa trung tâm và máy chủ. Bất kỳ yêu cầu nào cho các thiết bị gắn dưới dòng từ trung tâm đều được lên lịch với độ trễ bổ sung.

    1. Bạn có thể chèn một hub cổng đơn cứ sau 4m cáp, với tối đa 7 hub nối tiếp. Giới hạn là 7 cấp độ trung tâm từ máy chủ đến thiết bị cuối cùng, vì vậy nếu có bất kỳ trung tâm nào ngược dòng của bạn, bạn cần giảm số lượng trung tâm tương ứng. Nhiều máy chủ USB bao gồm một cấp độ trung tâm bên trong, do đó giới hạn thực tế sẽ là 28m cáp, với 6 trung tâm nối tiếp. Tất cả các trung tâm nhưng người đầu tiên sẽ phải giả vờ tự cấp nguồn.

    2. Bạn có thể thêm các trung tâm ảo, với bộ thu phát mạnh hơn với định kiến, ngay tại phích cắm đi vào máy chủ, sau đó truyền lưu lượng USB qua cáp dài hơn. Miễn là tín hiệu mà thiết bị nhận được ở cuối cáp mở rộng như vậy nằm trong thông số kỹ thuật và miễn là máy thu của bạn có thể khôi phục dữ liệu được gửi bởi thiết bị tiêu chuẩn qua cáp dài, bạn sẽ ổn. Các trung tâm ảo được thêm vào để máy chủ cho phép trì hoãn lâu - nhưng tất nhiên không có trung tâm vật lý nào, chỉ là một sự mạo danh của chúng.

  2. Giải pháp mô phỏng một thiết bị có vẻ "chậm" ở mức giao thức cao hơn. Đó là cách một số "bộ mở rộng" USB của Cat-5 hoạt động. Có năm đối tác ở đây: máy chủ thực sự (rhost), một thiết bị mô phỏng được nhìn thấy bởi nó (eDev), cáp dài, máy chủ mô phỏng (ehost) và các thiết bị nhìn thấy nó ở đầu xa của cáp (rDev) .

    Ban đầu, eDev giả vờ không có mặt ở đó. Tại một số thời điểm, ehost thấy rằng một rDev đã được cắm. Nó liệt kê nó và chuyển tiếp dữ liệu tới eDev. Sau đó, eDev mô phỏng một sự kiện bổ trợ và rhost liệt kê nó. The rhost tin rằng họ nhìn thấy rDev, nhưng chỉ có eDev ở đó, giả vờ. Tương tự như vậy, rDev nghĩ rằng đang nhìn thấy một rhost, nhưng đó chỉ là một ehost đang ở đó, giả vờ.

    Cuối cùng, rhost muốn phát hành một số chuyển khoản cho rDev mà nó tin là có, để sử dụng nó. Đối với chuyển khoản IN, eDev giả vờ không có dữ liệu (trả lời bằng NAK). Yêu cầu chuyển được chuyển tiếp đến ehost, thực hiện lại nó với rDev. Kết quả của việc này được chuyển lại cho eDev, sử dụng kết quả vào lần tiếp theo khi chủ nhà cố gắng chuyển.

    Đối với chuyển khoản OUT, eDev phải đoán xem hành vi của rDev sẽ như thế nào. Có nhiều heuristic và hành vi có thể được cố gắng ở đây. Một cách là để eDev luôn nhận dữ liệu và trả lời bằng ACK. Việc chuyển tiền được chuyển tiếp đến ehost, sau đó phát lại chuyển khoản sang rDev. Lý tưởng nhất, rDev cuối cùng sẽ tiêu thụ dữ liệu và ACK nó. Nếu điều này không thành công hoặc nếu rDev trả lời bằng STALL, điều tốt nhất mà eDev có thể làm là thực hiện theo cách này trong lần chuyển tiếp theo từ máy chủ. Ngoài ra, eDev luôn có thể NAK chuyển, với giả định thường chính xác rằng máy chủ sẽ chỉ thử lại chuyển khoản giống hệt sau đó. Mặc dù chuyển khoản ban đầu là NAK-ed, nó được chuyển tiếp đến ehost, sau đó thực hiện chuyển khoản với rDev. Dù câu trả lời của rDev là gì, hãy trở thành câu trả lời của eDev ngay khi biết được.

    Việc triển khai thực tế sẽ bắt đầu với các heuristic bảo thủ liên quan đến việc làm tròn hoàn toàn đến rDev cho tất cả các giao dịch có thể bị hoãn bởi NAK. Khi quá trình chuyển tiền diễn ra, hành vi dự kiến ​​của rDev có thể được học và eDev có thể trở nên ít bảo thủ hơn. "Bộ mở rộng" có thể sử dụng kiến ​​thức về các lớp USB tiêu chuẩn và một số kiến ​​thức / danh sách thiết bị / danh sách đen dành riêng cho nhà cung cấp để cung cấp hiệu suất tốt hơn.


Không thể thay thế các trung tâm giả vờ được cung cấp năng lượng xe buýt? Tôi nghĩ rằng một trung tâm hỗ trợ xe buýt có thể cung cấp năng lượng cho một trung tâm tự cấp nguồn, có thể không?
supercat

Không có gì để làm với xe buýt - đó là sự chậm trễ hoàn toàn khi phản ứng với ACK.
pjc50

@supercat Có, có thể có các trung tâm giả vờ thay thế. Không quan trọng bạn làm như thế nào, miễn là cây thiết bị giả vờ xuất hiện tuân thủ máy chủ.
Phục hồi lại

@ pjc50 theo thông số kỹ thuật USB, độ trễ ACK tối đa là khoảng 400ns. Tín hiệu thời gian có thể truyền 40 mét đồng theo cả hai hướng. Nó không phải là một yếu tố hạn chế ở đây.
ZAB


2

Hầu hết các sơ đồ truyền dữ liệu qua cáp đều có một tiêu chuẩn được quốc tế công nhận mô tả cách thực hiện chúng, bao gồm một đặc điểm kỹ thuật cho "trở kháng đặc tính" của cáp (coi đây là điện trở, nhưng áp dụng cho AC), trở kháng kết thúc ( 'điện trở' ở cuối kết nối cần thiết để tránh phản xạ tín hiệu của bạn dội ngược cáp về phía người gửi), thường là 'tốc độ xoay' được chỉ định (thời gian cần thiết để tín hiệu chuyển từ 0 trạng thái sang trạng thái 1 hoặc ngược lại) và do đó số lần chuyển đổi tối đa giữa 0/1 mỗi giây (tức là kbps / Mbps / Gbps) và do đó cáp có thể mất bao lâu trước khi toàn vẹn tín hiệu suy giảm & công cụ ngừng hoạt động ngay.

So với USB, RS232 có tất cả các thông số kỹ thuật về loại cáp, trở kháng đặc tính, tốc độ xoay, chiều dài cáp, loại đầu nối. Chắc chắn, các đầu nối 'D' 25 chân và 9 chân là phổ biến, nhưng trên thực tế, RS232 được thiết kế thành tất cả các loại đầu nối & cáp & sản phẩm không có thông số kỹ thuật thực sự để nói khác. Trong thực tế, với RS232, bạn thường có thể đi được quãng đường dài hơn bằng cách giảm xuống tốc độ bit trên mỗi giây (còn gọi là 'baud') thấp hơn. Khoảng cách tối đa bạn có thể đạt được cũng sẽ được xác định một phần đáng kể trên trở kháng của cáp, cho dù nó có được che chắn hay không, chấm dứt ở cuối, v.v.

và khi so sánh RS232 với USB, bạn đang so sánh một 'tiêu chuẩn' từ những năm 1960, đứng đầu ở mức 115k2 (với các trường hợp ngoại lệ hiếm hoi), với một trong những năm 1990 và 2000 bắt đầu với tốc độ 1,5Mb / giây , nhanh hơn sau đó là 12Mbps (nhanh hơn gần 100 lần), sau đó là 480Mbps (nhanh hơn gần 5000 lần), nhưng điều đó có nghĩa là các tham số cáp và chiều dài cáp đóng vai trò quan trọng trong việc làm cho nó hoạt động đáng tin cậy . Nó được thiết kế như một tiêu chuẩn kết nối ngoại vi máy tính để bàn, vì vậy 5m được coi là chấp nhận được, và sau đó tất cả các thông số của cáp & đầu nối & tốc độ được đặt ra từ thời điểm đó. Nếu có một cách để làm cho USB chạy chậm hơn, có lẽ bạn có thể làm cho nó chạy trên các dây cáp dài hơn (không có bộ lặp).


2
RS232 có thể đã "đứng đầu" ở mức 115K, nhưng tôi nhớ khi đó là liên kết 110 hoặc 300 bit mỗi giây giữa teleprinter và modem. Các tín hiệu không cân bằng, điện áp dao động từ -12V đến + 12V và không có cặp xoắn hoặc kết thúc hoặc che chắn. Ở tốc độ đó, và trong khoảng cách ngắn như vậy, các đặc tính của dây không có nghĩa gì. Sau này, khi mọi người muốn gửi ở tốc độ cao hơn hàng trăm mét, chúng tôi đã nhận được RS422 và RS485, điều này nói nhiều hơn về đường dây truyền tải.
Solomon chậm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.