1. USB (Universal Serial Bus)
ㅇ PC와 주변기기 간에 시리얼버스 구조에 대한 규격
- PC 역사상 가장 성공적인 접속장치
ㅇ 인텔社에서 제안하여 당시 컴팩,DEC,IBM,MS社 등과 함께 한,
- PC 주변기기들에 대한 범용 직렬 인터페이스 표준
. USB 1.x (1996년 ~), USB 2.0 (2000년도 ~), USB 3.0 (2008년도 ~)
- USB 표준화 기관 : USB-IF (USB Implementers Forum) ☞ USB 공식사이트
2. USB 특징
ㅇ 주요 특징
- 편리한 사용성, 다목적성, 고속 안정 전송, 낮은 가격, 저 전력 소모 등
ㅇ 연결 형태
- 주(主)/부(副) : Master/Slave(호스트/주변기기) 형태로 정보 교환
- 호스트 : PC/휴대용기기/임베디드시스템 등을 호스트로하는 연결구조를 취함
. 호스트 기능은, `USB Host Controller` 및 `USB 루트 허브` 기능 내장
. 호스트 역할
.. USB 디바이스의 장착/제거 즉시 감지 가능
.. USB 디바이스 장착 즉시 데이터 교환 방식 제어
.. 버스 상의 전송 스케줄 관리
. 단, USB 3.1 규격에서는, 두 호스트 간 대등한 연결도 가능
- 토폴로지 : 스타형 토폴로지 (USB 허브를 통해, 연이은 구성이 가능)
- 최대접속 : 외장 USB 허브를 직렬로 5개까지 하면,
단일 호스트에 최대 127개까지 주변기기 연결/수용 가능
ㅇ 버스 형태
- PC 기반의 직렬 인터페이스 표준 (직렬버스)
ㅇ 장치 식별
- 주변장치 연결시 호스트가 주소 할당 (호스트 0 ~ 주변장치 127까지)
ㅇ 편의성
* 포트 주소, 인터럽트 번호(IRQ), 점퍼 설정, 환경 설정 등이 필요 없음
- Plug and Play (PnP) : 연결시 자동설정
- Hot Plug : 전원 공급 중에도 탈부착 가능
ㅇ 주변기기 종류
- 시리얼포트,페러럴포트,키보드,모니터,마우스,프린터,스캐너등
ㅇ 기타사항
- USB는 기본구조면에서 IEEE 1394와 매유 유사
3. USB 속도
ㅇ 느린 장치부터 빠른 장치까지 모두 수용 가능
- USB 1.0
. 로우스피드 1.5 Mbps : 주변기기로의 하향 전송 위주
. 풀스피드 12 Mbps : 호스트로의 상향 전송 위주
- USB 2.0 : 하이스피드 480 Mbps
- USB 3.0 : 슈퍼스피드 5 Gbps
- USB 3.1 : 슈퍼스피드 플러스 10 Gbps, 16 Gbps
4. USB 전원
ㅇ 공급 형태 : 호스트 메인버스 또는 USB 허브(통상, 별도 외부 전원 사용)로부터 주변장치 공급
- 한편, USB 단자 형태로, 스마트폰,보조 배터리 등에,
. 데이터 전송용이 아닌 전원 공급용 만으로도 많이 사용되고 있음
ㅇ 전압 : 직류 5 V
ㅇ 전류 : 호스트 메인버스로부터, USB 2.0은 최대 500 mA, USB 3.1은 최대 900 mA 공급 가능
- 통상, USB 각 포트별 주변장치에서 200 ~ 300 mA 정도의 전류 소모 가능
- 때론, 충전기,USB 허브 등의 경우에, 최대 2200 mA (= 2.2 A)까지도 외부 공급 가능
- 충전시에는, 스마트폰 1 A, 태블릿 2 A 정도 전류가 흘러들어갈 수 있음
※ 한편, USB 전력 공급 규격
- USB 2.0 : 2.5 W
- USB 3.0 : 4.5 W
- USB BC (Battery Charging, USB 배터리용 충전 규격) 1.2 : 7.5 W
- USB Type C : 15 W (5 V, 3 A)
- USB PD (Power Delivery, USB 전력 확장 규격) : ~ 100 W (20 V, 5 A)
5. USB 케이블
※ ☞ USB 케이블 참조
- 케이블 길이 (전송 길이), 케이블 가닥선, 케이블 단자/커넥터 모양 등
6. USB 신호 전송 형태 및 방식
ㅇ 신호/회로 모드 : 차동신호
ㅇ 통신 방식 : 직렬통신
ㅇ 전송 형태
- USB 1.0/2.0 : 반이중 브로드캐스트/점대다중점구조, 시점 마다 방향 달리함
- USB 3.0 : 전이중 지점간/점대점구조, 완전 양방향 통신
ㅇ 전송 방식 (4가지)
* 양방향 비동기식(Asynchronous) 전송방식 및 등시적(Isochronous) 전송방식 모두 가능
- 비동기 전송방식 : 제어 전송, 벌크 전송 (대량 데이터), 인터럽트 전송 (소량 데이터)
. 제어 전송
.. 디바이스 장착시, 호스트는 표준 리퀘스트를 전송해 디바이스 설정 및 정보 취득
.. 디바이스 클래스 등의 리퀘스트 전달
- 동기 전송방식 : 등시성 전송 (실시간성 데이터, 헤드폰 등)
ㅇ 전송 요소
- 엔드포인트 : 송수신 데이터를 임시 저장할 수 있는 버퍼
- 트랜잭션
- 파이프
7. USB 디바이스 클래스
※ 다수 디바이스들이 유사한 서비스를 제공하므로, 클래스별 공용 프로토콜 등을 정의 함
ㅇ 오디오 : 0x01
ㅇ 오디오/비디오 : 0x21
ㅇ 빌보드 : 0x11
ㅇ 커뮤니케이션(CDC) : 0x02
ㅇ 휴먼인터페이스(HID) : 0x03 (키보드,마우스,게임컨트롤러 등)
ㅇ ... (추가작성중) ...
8. [참고사항]
ㅇ USB OTG (On-The-Go)
- PC 없이도 주변기기들 끼리 제한적으로나마 데이터를 교환할 수 있는 규격
. 즉, 프린터를 디지털카메라에 연결, 외장 메모리를 스마트폰에 끼워 파일 전송하는 등
USB OTG와 임베디드 호스트 간에 데이터 교환/전송 가능
ㅇ 무선에 의한 통신 ☞ 무선 USB