USB (Universial Serial Bus) 범용 직렬 버스. 예전 RS-232C 포트나 DB-25, PS/2 단자들이 점차 사장되면서 "범용적인" 커넥터로 자리잡았다.
버전별 차이
버전 | 최대 전송속도 | 출시연도 | 비고 | |
USB 0.x | USB 0.7/0.8/0.9(9) | . | 1994~5 | 최초 릴리즈 |
USB 1.x | USB 1.0 |
1.5Mbps / 12Mbps |
1996 |
Low-Speed(1.5Mbps) / Full-Speed(12Mbps) |
USB 1.1 |
1998 | 허브 확장성 개선 | ||
USB 2.x | USB 2.0 |
480Mbps |
2000 |
High-Speed USB |
USB 3.x |
USB 3.2 Gen 1x1 |
5Gbps | 2008 | SuperSpeed USB |
USB 3.2 Gen 2x1 |
10Gbps | 2013 | SuperSpeed+ (SuperSpeed USB)USB 3.2 Gen 2x1 |
|
USB 3.2 Gen 1x2 |
10Gbps | 2017 |
SuperSpeed+ Dual-lane |
|
USB 3.2 Gen 2x2 |
20Gbps | 2017 |
SuperSpeed+ Dual-lane |
|
USB4 |
USB4 |
40Gbps | 2019 |
Thunderbolt3 기반 |
USB 버전 네이밍은 볼때마다 무슨 생각으로 이렇게 지은 건가 싶다.. 특히 USB 3.x에서 미쳐 날뛰는 걸 볼 수 있는데, 4로 넘어가지 않고 소수점만 바꾼 데다가, USB 타입 C 케이블에서 성능을 확장시키기 위해 호스트 디바이스와 다중 레인 운용을 추가하여, 버전 뒤에 레인이 총 몇 개인지를 나타내는 만행을 저질렀다. USB 3.1이 발표되면서 USB 3.0을 흡수했고, USB 3.2가 발표되면서 USB 3.0과 USB 3.1을 흡수한 상태에서 이 같이 개같은 네이밍 센스를 보여준 덕분에, 소비자는 케이블 하나 살 때도 골머리를 앓아야 되는 처지에 놓였다-_-;
USB 3.x에 해당하는 버전들을 다시 정리하면 다음과 같다. 물론 USB 하위 호환성은 그대로 가져가며, 듀얼 레인 구성의 경우 C타입 커넥터가 필요하다.
버전 | 레인 개수 | 인코딩 | 전송 속도 | 커넥터 종류 | 다른 이름 |
USB 3.2 Gen 1x1 | 5Gbps x 1 | 8b/10b | 5Gbps | Type A, B, C | USB 3.1 Gen 1, USB 3.0 |
USB3.2 Gen 2x1 | 10Gbps x 1 | 128b/132b | 10Gbps | Type A, B, C | USB 3.1 Gen 2, USB 3.1 |
USB 3.2 Gen 1x2 | 5Gbps x 2 | 8b/10b | 10Gbps | Type C Only | X (USB3.2에서 새로 정의된 규격) |
USB 3.2 Gen 2x2 | 10Gbps x 2 | 128b/132b | 20Gbps | Type C only | USB 3.2 |
차세대 버전인 USB4로 넘어오면서 인텔에서 썬더볼트3 프로토콜을 USB-IF에 무료로 푼(오픈소스화) 덕분에 USB 커넥터를 통해 썬더볼트를 활용하는 데 그치지 않고 USB4를 썬더볼트3 프로토콜 기반으로 정의했다. 기존 USB C 케이블로는 듀얼 레인을 통해 20Gbps, 새로 정의된 40Gbps 인증 케이블을 쓰면 40Gbps(썬더볼트3 최대 속도)로 통신이 가능하다.
USB4도 역시 기본 레인 1개당 20Gbps 지원으로, USB4 Gen 1x1은 20Gbps, Gen 1x2가 되어야 40Gbps속도를 지원할 것으로 보이며, 당연히 버전은 물론 레인 개수도 USB 하위 호환 법칙에 따른다. 예) USB 3.2 Gen 1x2 + USB 3.2 Gen 2x1 = USB 3.2 Gen 1x1
Thunderbolt 호환성
Thunderbolt 케이블이 USB-C 단자를 채택하면서 호환성이 많이 좋아지긴 했지만, 아직 사용자가 원하는 "아무거나 막 꽂아도 동작하는" 케이블이 되기 위해선 갈 길이 멀다. 썬더볼트 케이블은 50cm 까지는 모든 기능을 다 지원하고, 그 이상의 길이가 되면 Passive 케이블과 Active 케이블로 나뉘어 기능이 달라지게 된다.(물론 가격도)
길이 | 50cm | 1m | 2m | ||
P/A | . | P | A | P | A |
대역폭 | 40Gbps | 20Gbps | 40Gbps | 20Gbps | 40Gbps |
USB 2.x 호환 | O | O | O | O | O |
USB 3.x 호환 | O | O | X | O | X |
4K 호환 | O | O | O | O | O |
5K 호환 | O | X | O | X | O |
쉽게 말해서, 50cm가 넘어가면 USB3.x 호환성과 5K 호환성 둘 중 하나를 포기해야 한다. 썬더볼트 케이블도 가격이 어마어마한데, 비싼 돈 주고 산 케이블을 480Mbps 속도로 사용하고 싶지 않으면 미리미리 알아보고 사야 하는 불편함이 있다.
다만 한 가지 알아 두면 좋을 만한 것이, USB 3.x 이상을 지원하는 C to C 케이블들은 핀 배열이 바뀌지 않아 상위 버전에서도 그대로 사용할 수 있다고 한다. 다만 차폐 정도나 굵기가 달라 손실이 어느 정도 발생할 수는 있겠다.
'Tips' 카테고리의 다른 글
간략한 코드 공유하기 (0) | 2021.04.13 |
---|---|
VScode에서 Python Linter 경고 메시지 suppress (2) | 2021.04.07 |
동시성과 병렬성 (4) | 2020.09.30 |
Python Progress Spinner (0) | 2019.05.11 |
HTML 마우스 함수 (0) | 2018.12.09 |