메뉴 English Ukrainian 러시아인 홈

애호가 및 전문가를 위한 무료 기술 라이브러리 무료 기술 라이브러리


라디오 전자 및 전기 공학의 백과사전
무료 도서관 / 무선 전자 및 전기 장치의 계획

USB 버스 및 FireWire. 무선 전자 및 전기 공학 백과사전

무료 기술 라이브러리

무선 전자 및 전기 공학 백과사전 / 컴퓨터

기사에 대한 의견 기사에 대한 의견

USB(Universal Serial Bus)는 전화 통신 및 소비자 가전 장치와의 통합에 초점을 맞춘 PC 아키텍처 확장을 위한 업계 표준입니다. 버전 1.0은 1996년 XNUMX월에 출시되었습니다.

USB 아키텍처는 다음 기준에 따라 결정됩니다.

  • PC 주변 장치의 손쉬운 확장 구현
  • 최대 12Mbps의 전송 속도를 지원하는 저렴한 솔루션
  • 실시간 오디오 및 (압축) 비디오 전송을 완벽하게 지원합니다.
  • 등시성 데이터와 비동기식 메시지의 혼합 전송을 위한 프로토콜의 유연성
  • 제조된 장치와의 통합. 모든 구성 및 크기의 PC에서 사용 가능
  • 시장을 빠르게 선점할 수 있는 표준 인터페이스 제공
  • PC를 확장하는 새로운 장치 클래스 생성

최종 사용자의 관점에서 볼 때 USB의 다음 기능은 매력적입니다.

  • 케이블링 및 연결 용이성
  • 최종 사용자에게 전기 연결 세부 정보 숨기기
  • 자체 식별 제어 장치, 장치와 드라이버 및 구성의 자동 연결
  • 제어 장치의 동적 연결 및 구성 가능성

1996년 중반부터 칩셋에 의해 구현된 USB 컨트롤러가 내장된 PC가 생산되었습니다. USB를 지원하는 모뎀, 키보드, 스캐너, 스피커 등 입출력 장치는 물론, USB 어댑터를 탑재한 모니터도 등장해 다른 장치를 연결하는 허브 역할을 하게 될 것으로 예상된다.

1.1. USB 구조

USB를 사용하면 서로 동시에 데이터를 교환할 수 있습니다. 호스트 컴퓨터 그리고 많은 주변 장치(PU). PU 간의 버스 대역폭 분배는 호스트에 의해 계획되고 토큰을 전송하여 구현됩니다. 버스를 사용하면 호스트와 장치 자체가 실행되는 동안 장치를 연결, 구성, 사용 및 연결 해제할 수 있습니다.

다음은 Compaq, DEC, IBM, Intel, Microsoft, NEC 및 Northern Telecom에서 발행한 "범용 직렬 버스 사양. 개정 IO15년 1996월 XNUMX일" 사양의 용어 번역에 대한 작성자 버전입니다. 보다 자세한 최신 정보는 usb.org에서 확인할 수 있습니다.

기기 USB는 허브, 기능 또는 둘의 조합일 수 있습니다. 바퀴통 (허브)는 장치를 버스에 연결하기 위한 추가 지점을 제공합니다. 기능 USB는 ISDN 연결, 디지털 조이스틱, 디지털 스피커 등과 같은 추가 기능을 시스템에 제공합니다. USB 장치에는 USB 프로토콜을 완전히 지원하고 표준 작업(구성 및 재설정)을 수행하며 장치 설명 정보를 제공하는 USB 인터페이스가 있어야 합니다. . USB에 연결된 많은 장치에는 허브와 기능이 모두 있습니다. USB는 전체 시스템을 제어합니다. 호스트 컨트롤러(호스트 컨트롤러), 호스트 컴퓨터의 소프트웨어 및 하드웨어 하위 시스템입니다.

물리적 연결 장치는 다중 계층의 토폴로지에 따라 수행됩니다. 별. 각 별의 중심은 바퀴통, 각 케이블 세그먼트는 두 개의 허브 지점을 다른 허브 또는 기능에 연결합니다. 시스템에는 하나(단 하나)가 있습니다. 호스트 컨트롤러, 장치와 허브의 피라미드 꼭대기에 위치합니다. 호스트 컨트롤러는 다음과 통합됩니다. 루트 허브(루트 허브), 하나 이상의 연결 지점 제공 포트. 칩셋에 포함된 USB 컨트롤러에는 일반적으로 XNUMX포트 허브가 내장되어 있습니다. 논리적으로 USB 허브에 연결되고 구성된 장치(아래 참조)는 호스트 컨트롤러에 직접 연결된 것으로 간주될 수 있습니다.

기능 버스를 통해 데이터나 제어 정보를 전송하거나 수신할 수 있는 장치입니다. 일반적으로 기능은 허브 포트에 케이블이 연결된 별도의 제어 장치입니다. 물리적으로 하나의 케이스에는 하나의 포트에 대한 연결을 보장하는 내장 허브가 있는 여러 기능이 포함될 수 있습니다. 이러한 조합 호스트 장치는 영구적으로 연결된 기능 장치가 있는 허브입니다.

각 기능은 CP의 기능과 리소스 요구 사항을 설명하는 구성 정보를 제공합니다. 사용하기 전에 호스트에서 기능을 구성해야 하며 채널 대역폭을 할당해야 하며 구성 옵션을 선택해야 합니다.

함수의 예는 다음과 같습니다.

포인터: 마우스, 태블릿, 라이트 펜. 입력 장치: 키보드 또는 스캐너.

출력 장치 프린터, 스피커(디지털).

ISDN 전화 어댑터

바퀴통 USB 아키텍처에서 PnP 시스템의 핵심 요소입니다. 허브는 케이블 집중 장치입니다. 연결 지점을 호출합니다. 포트 바퀴통. 각 허브는 하나의 연결 지점을 여러 지점으로 변환합니다. 이 아키텍처에서는 여러 허브를 연결할 수 있습니다.

각 허브에는 하나의 업스트림 포트}, 호스트 또는 최상위 허브에 연결하도록 설계되었습니다. 나머지 포트는 다운스트림(다운스트림 포트), 하위 수준 기능이나 허브를 연결하도록 설계되었습니다. 허브는 장치가 포트에 연결되어 있는지 연결이 끊어졌는지 인식하고 해당 세그먼트에 대한 전원 공급을 제어할 수 있습니다. 각 포트는 활성화 또는 비활성화될 수 있으며 전체 또는 제한된 전송 속도로 구성될 수 있습니다. 허브는 고속 세그먼트에서 저속 세그먼트를 분리합니다.

허브는 다운스트림 포트에 대한 전원 공급을 제어할 수 있습니다. 각 포트가 소비하는 전류에 대한 제한을 설정하기 위한 규정이 마련되어 있습니다.

USB 및 FireWire 버스

USB 시스템 특정 상호 작용 규칙에 따라 세 가지 수준으로 나뉩니다. USB 장치에는 인터페이스 부분, 장치 부분 및 기능 부분이 포함되어 있습니다. 호스트는 또한 인터페이스, 시스템 및 장치 소프트웨어의 세 부분으로 나뉩니다. 각 부분은 특정 범위의 작업만을 담당하며, 이들 사이의 논리적이고 실제적인 상호 작용은 그림 7.1에 나와 있습니다. XNUMX.

고려중인 구조에는 다음 요소가 포함됩니다.

USB 물리적 장치 최종 사용자가 관심을 갖는 기능을 수행하는 버스의 장치입니다.

클라이언트 SW 호스트 컴퓨터에서 실행되는 장치별 소프트웨어입니다. OS의 일부일 수도 있고 특수 제품일 수도 있습니다.

USB 시스템 SW USB 시스템은 특정 장치 및 클라이언트 소프트웨어와 독립적으로 지원됩니다.

USB 호스트 컨트롤러 USB 장치를 호스트 컴퓨터에 연결하는 하드웨어 및 소프트웨어.

물리적 인터페이스

USB 표준은 버스의 전기적, 기계적 사양을 정의합니다.

정보 신호와 5V 공급 전압은 0,3선 케이블을 통해 전송됩니다. 두 개의 와이어를 통해 D+ 및 D 신호를 전송하는 차동 방식이 사용됩니다. 정적 모드의 송신기 신호 레벨은 2,8V(낮은 레벨) 미만이거나 0,5V(높은 레벨) 이상이어야 합니다. 수신기는 3,8~+XNUMXV 범위의 입력 전압을 견딜 수 있습니다. 송신기는 한 쌍의 전선을 통한 양방향 반이중 전송을 위해 높은 임피던스 상태로 전환할 수 있어야 합니다.

USB의 XNUMX선 전송은 차동 신호에만 국한되지 않습니다. 차동 수신기 외에도 각 장치에는 D+ 및 D- 신호용 선형 수신기가 있으며 이러한 라인의 송신기는 개별적으로 제어됩니다. 이를 통해 하드웨어 인터페이스를 설정하는 데 사용되는 두 개 이상의 회선 상태를 구별할 수 있습니다. 상태 차이 и 차이1 D+ 및 D 라인의 200mV 이상의 전위차에 의해 결정됩니다. 단, 그 중 하나의 전위는 VSE 응답 임계값보다 높습니다. 입력 D+와 D가 모두 낮은 조건을 호출합니다. 선형 제로(SEO 단일 종단 제로). 인터페이스는 다음 상태를 정의합니다.

데이터J 상태 и 상태로 데이터 전송된 비트의 상태(또는 단순히 J и 에게), 상태를 통해 정의됩니다. 차이 и 차이1.

유휴 상태 버스 정류장.

요약 상태 장치를 절전 모드에서 깨우기 위한 "wake-up" 신호입니다.

패킷 시작(SOP) 패킷의 시작(에서 전환 K의 유휴 상태).

패킷 끝(EOP) 패키지 끝.

분리 장치가 포트에서 분리됩니다.

연결하기 장치가 포트에 연결되어 있습니다.

다시 쓰기 장치 재설정.

상태는 차동 신호와 선형 신호의 조합으로 결정됩니다. 최대 및 낮은 상태 속도용 차이 и 차이1 반대 목적을 가지고 있습니다. 상태 디코딩 중 연결 해제, 연결 и 다시 쓰기 라인이 특정 상태(2,5ms 이상)에 있는 시간이 고려됩니다.

버스에는 두 가지 전송 모드가 있습니다. 전속력 USB 신호 전송 속도는 12Mbit/s입니다. 낮은 1,5Mbit/s. 최고 속도의 경우 임피던스가 90Ω이고 세그먼트 길이가 최대 5m인 차폐 연선 케이블이 사용되며, 저속의 경우 최대 3m의 비차폐 비차폐 케이블이 사용됩니다. 저속 케이블 및 장치는 고속보다 저렴합니다. -속도가 빠른 것. 동일한 시스템에서 두 모드를 동시에 사용할 수 있습니다.

장치 전환은 투명하게 수행됩니다. 저속은 고속이 필요하지 않은 소수의 PU로 작업하기 위한 것입니다.

특정 포트에 연결된 장치가 사용하는 속도는 트랜시버의 부하 저항 R2에 의해 바이어스되는 D+ 및 D- 라인의 신호 레벨을 기반으로 허브에 의해 결정됩니다(그림 7.2 및 7.3 참조).

동기화 신호는 다음 방법을 사용하여 데이터와 함께 인코딩됩니다. NRZI(영점으로의 비복귀 반전), 그의 작품은 그림 7.4에 나와 있습니다. XNUMX. 각 패킷 앞에는 동기화 필드가 있습니다. 동조, 수신기가 송신기 주파수에 동조하도록 허용합니다.

케이블에는 5V 공급 전압을 장치에 전송하기 위한 VBus 및 GND 라인도 있습니다. 도체의 단면적은 보장된 신호 레벨과 공급 전압을 보장하기 위해 세그먼트의 길이에 따라 선택됩니다.

USB 및 FireWire 버스
쌀. 7.4. NRZI 방법을 사용한 데이터 코딩

표준 정의 두 가지 유형의 커넥터 (표 7.1 및 그림 7.5 참조)
접촉 체인 접촉 체인
1 V버스 3 D+
2 D- 4 GND

유형 "A" 커넥터 허브에 연결하는 데 사용 (업스트림 커넥터). 플러그는 장치(예: 키보드, 마우스 등)에서 분리할 수 없는 케이블에 설치됩니다. 잭은 다운스트림 포트에 설치됩니다. (다운스트림 포트) 허브.

B형 커넥터(다운스트림 커넥터) 연결 케이블을 분리할 수 있는 장치(프린터 및 스캐너)에 설치되어 있습니다. 결합 부분(플러그)은 연결 케이블에 설치되며 반대쪽 끝에는 "A" 유형 플러그가 있습니다.

"A" 및 "B" 유형의 커넥터는 기계적으로 다르므로(그림 7.5) 허브 포트의 허용되지 않는 루프 연결을 제거합니다. XNUMX핀 커넥터에는 잘못된 연결을 방지하기 위해 키가 있습니다. 커넥터 설계로 인해 신호 회로는 전원 공급 회로에 비해 늦게 연결되고 조기에 분리됩니다. USB 커넥터를 인식하기 위해 장치 본체에 표준 기호 지정이 표시됩니다.

USB 및 FireWire 버스
쌀. 7.5. USB 소켓: A 유형, б "B" 유형(기호 지정)

장치 전원 USB 가능 케이블에서(버스 전원 장치) 또는 자체 전원 공급 장치에서 (자체 전원 장치). 호스트는 호스트에 직접 연결된 제어 장치에 전원을 공급합니다. 그러면 각 허브는 다운스트림 포트에 연결된 장치에 전원을 공급합니다. 일부 토폴로지 제한에 따라 버스 전원 공급 허브의 사용이 허용됩니다. 그림에서. 그림 7.6은 USB 장치 연결 다이어그램의 예를 보여줍니다. 여기서 키보드, 펜 및 마우스는 버스 전원을 사용할 수 있습니다.

USB 및 FireWire 버스

데이터 전송 모델

각 USB 장치는 독립적인 장치의 모음입니다. 끝점(끝점), s 호스트 컨트롤러와 정보를 교환합니다. 엔드포인트는 다음 매개변수로 설명됩니다.

필요한 버스 접근 빈도 및 허용 가능한 서비스 지연;

필요한 채널 대역폭;

포인트 번호;

오류 처리 요구 사항

전송 및 수신된 패킷의 최대 크기

교환 유형;

교환 방향(연속적이고 등시적인 교환의 경우)

각 장치에는 초기화, 일반 관리 및 상태 폴링에 사용되는 0번 엔드포인트가 있어야 합니다. 이 지점은 전원이 켜지고 장치가 버스에 연결될 때 항상 구성됩니다. "제어" 유형 전송을 지원합니다(아래 참조).

영점 외에도 기능 장치에는 유용한 데이터 교환을 구현하는 추가 지점이 있을 수 있습니다. 저속 장치는 최대 16개의 추가 포인트를 가질 수 있으며, 전속 장치는 최대 16개의 입력 포인트와 XNUMX개의 출력 포인트(프로토콜 제한)를 가질 수 있습니다. 포인트는 구성될 때까지 사용할 수 없습니다(포인트와 연관된 채널이 설정됨).

채널 {파이프) USB는 호스트 컨트롤러와 엔드포인트 간의 데이터 전송 모델을 나타냅니다. (종료점) 장치. 두 가지 유형의 채널이 있습니다. 스트림 (개울) 및 메시지 (메시지). 흐름 채널의 한쪽 끝에서 다른 쪽 끝으로 데이터를 전달하지만 항상 단방향입니다. 두 개의 입력 및 출력 스트림 채널에 동일한 끝점 번호를 사용할 수 있습니다. 스레드는 연속, 등시성, 인터럽트 등의 통신 유형을 구현할 수 있습니다. 배송은 항상 선입선출(FIFO) 순서로 진행됩니다. USB 관점에서 보면 스트림 데이터는 구조화되지 않습니다. Сообщения USB 사양에 정의된 형식을 가지고 있습니다. 호스트는 엔드포인트에 요청을 보낸 후 메시지 패킷이 전송(수신)되고, 이어서 엔드포인트의 상태 정보가 포함된 패킷이 전송됩니다. 이전 메시지가 처리되기 전에는 일반적으로 다음 메시지를 보낼 수 없지만, 오류 처리 시 처리되지 않은 메시지를 재설정하는 것이 가능합니다. 양방향 메시징은 동일한 끝점으로 전달됩니다. 메시지 전달에는 제어 유형 교환만 사용됩니다.

채널에는 엔드포인트(대역폭, 서비스 유형, 버퍼 크기 등)와 관련된 특성이 있습니다. USB 장치를 구성할 때 채널이 생성됩니다. 활성화된 각 장치에 대한 메시지 채널이 있습니다. (제어 파이프 0), 구성, 제어 및 상태 정보를 전달합니다.

데이터 전송 유형

USB는 단방향 및 양방향 통신 모드를 모두 지원합니다. 호스트 소프트웨어와 장치 엔드포인트 간에 데이터 전송이 발생합니다. 장치에는 여러 개의 엔드포인트가 있을 수 있으며 각 엔드포인트(채널)와의 통신은 독립적으로 설정됩니다.

USB 아키텍처는 네 가지 기본 유형의 데이터 전송을 허용합니다.

제어 전송, 장치 관리를 위해 연결 중 및 작동 중 구성에 사용됩니다. 이 프로토콜은 보장된 데이터 전달을 제공합니다. 제어 메시지 데이터 필드의 길이는 최고 속도에서는 64바이트, 저속에서는 8바이트를 초과하지 않습니다.

대량 데이터 전송 엄격한 배송 시간 요구 사항이 없는 상대적으로 큰 패키지. 전송은 사용 가능한 모든 버스 대역폭을 차지합니다. 패킷에는 8, 16, 32 또는 64바이트의 데이터 필드가 있습니다. 이러한 기어는 우선순위가 가장 낮으며 버스의 부하가 높을 때 정지될 수 있습니다. 최대 전송 속도에서만 허용됩니다.

인터럽트 짧은(최고 속도에서 최대 64바이트, 낮은 속도에서 최대 8바이트) 입력 문자 또는 좌표와 같은 전송. 인터럽트는 본질적으로 자발적이며 장치에서 요구하는 것보다 느리게 서비스되어야 합니다. 서비스 시간 제한은 최고 속도의 경우 1-255ms, 저속의 경우 10-255ms 범위로 설정됩니다.

등시성 전송 버스 대역폭의 사전 협상된 부분을 차지하고 지정된 전달 지연이 있는 연속 실시간 전송입니다. 오류가 감지되면 등시성 데이터가 재생되지 않고 전송되고 잘못된 패킷은 무시됩니다. 예를 들어 디지털 음성 전송이 있습니다. 대역폭은 전송 품질 요구 사항에 따라 결정되며, 예를 들어 원격 회의를 구현할 때 전달 지연이 중요할 수 있습니다.

버스 대역폭은 설치된 모든 채널에 분배됩니다. 할당된 대역폭은 채널에 할당되며, 새로운 채널 설립을 위해 기존 할당에 맞지 않는 대역폭이 필요한 경우 채널 할당 요청이 거부됩니다.

US B 아키텍처는 모든 장치의 내부 버퍼링을 제공하며 장치에 필요한 대역폭이 많을수록 버퍼도 커져야 합니다. USB는 버퍼링으로 인해 발생하는 장치의 데이터 지연이 몇 밀리초를 초과하지 않는 속도로 데이터 전송을 제공해야 합니다.

등시성 전송은 데이터 소스 또는 수신자의 엔드포인트가 시스템과 동기화되는 방식에 따라 분류됩니다. 비동기식, 동기식 및 적응형 장치 클래스가 있으며 각각 고유한 유형의 USB 채널이 있습니다.

프로토콜

USB를 통한 모든 교환(거래)은 세 가지 패키지로 구성됩니다. 각 거래 컨트롤러에 의해 계획되고 시작되었습니다. 패킷 토큰(토큰 패킷). 전송 유형과 방향, USB 장치 주소, 엔드포인트 번호를 설명합니다. 각 트랜잭션에서는 주소가 지정된 장치(엔드포인트)와 호스트 사이에서만 교환이 가능합니다. 마커에 의해 주소가 지정된 장치는 주소를 인식하고 교환을 준비합니다. 데이터 소스(토큰으로 식별됨)는 데이터 패킷(또는 전송할 데이터가 없다는 알림)을 전송합니다. 패킷을 성공적으로 수신한 후 데이터 수신기는 다음을 보냅니다. 승인 패킷(Handshake 패킷).

트랜잭션 스케줄링은 흐름 채널에 대한 제어를 제공합니다. 하드웨어 수준에서 트랜잭션 포기 사용 (낙) 허용할 수 없는 전송 강도의 경우 상단과 하단에서 버퍼가 넘치지 않도록 보호합니다. 거부된 거래의 토큰은 버스가 비어 있을 때 재전송됩니다. 흐름 관리를 사용하면 동시 이기종 데이터 스트림 서비스를 유연하게 예약할 수 있습니다.

오류 허용 오차 다음 USB 속성을 제공합니다.

차동 수신기/송신기 및 차폐 케이블을 통해 높은 신호 품질을 달성합니다.

CRC 코드로 제어 필드 및 데이터를 보호합니다.

장치의 연결 및 연결 끊김을 감지하고 시스템 수준에서 리소스를 구성합니다.

패킷이 손실된 경우 시간 초과가 포함된 자가 복구 프로토콜입니다.

등시성 및 하드웨어 버퍼 관리를 위한 흐름 제어.

다른 기능과의 실패한 교환으로부터 기능의 독립성.

전송 오류를 감지하기 위해 각 패킷에는 모든 단일 및 이중 비트 오류를 ​​감지하는 CRC 검사 필드가 있습니다. 하드웨어는 전송 오류를 감지하고 컨트롤러는 자동으로 전송을 세 번 시도합니다. 재시도에 실패하면 클라이언트 소프트웨어에 오류 메시지가 보고됩니다.

패키지 형식

바이트는 최하위 비트부터 시작하여 버스를 통해 순차적으로 전송됩니다. 모든 소포는 패키지로 구성됩니다. 각 패킷은 일련의 상태로 표시되는 동기화 필드로 시작됩니다. ㅋㅋㅋㅋㅋㅋ (NRZI 인코딩) 다음 상태 유휴. 마지막 두 비트 (QC) 패킷 식별자의 첫 번째 비트를 식별하는 데 사용되는 SOP 패킷 마커의 시작입니다. PID. 패킷 ID는 4비트 필드입니다. PID[3:0], 패킷 유형을 식별하고(표 7.2), 제어 비트와 동일하지만 반전된 4비트가 뒤따릅니다.
PID 유형 PID 이름 PID[3:0] 내용 및 목적
Token OUT 0001 함수 주소 및 엔드포인트 번호 함수 트랜잭션 토큰
Token IN 1001 함수 주소 및 엔드포인트 번호 호스트 트랜잭션 토큰
Token SOF 0101 시작 프레임 마커
Token 설정 1101 제어 지점이 있는 기능 주소 및 끝점 번호 트랜잭션 토큰
Data 데이터O 데이터 0011 1011 짝수 및 홀수 PID 데이터 패킷이 인터리브되어 승인을 정확하게 식별합니다.
Handshake 확인 0010 오류 없는 패킷 수신 확인
Handshake NAK 1010 수신기가 데이터 수신에 실패했거나 송신기가 데이터 전송에 실패했습니다. 데이터 흐름 제어에 사용할 수 있습니다(준비되지 않음). 인터럽트 트랜잭션에서는 서비스되지 않은 인터럽트가 없음을 나타냅니다.
Handshake 마구간 1110 엔드포인트에는 호스트 개입이 필요합니다.
이달의 스페셜 예약 1100 저속 전송 프리앰블

마커 가방에 인, 설정 и OUT 다음은 주소 필드: 7비트 함수 주소 및 4비트 끝점 주소. 최대 127개의 USB 기능을 처리할 수 있으며(주소 16은 구성에 사용됨) 기능당 XNUMX개의 엔드포인트를 허용합니다.

SOF 패키지에는 11비트가 있습니다. 프레임 번호 필드, 다음 프레임에 대해 순차적으로(주기적으로) 증가합니다.

데이터 필드 크기는 0~1023 정수 바이트일 수 있습니다. 필드의 크기는 전송 유형에 따라 다르며 채널이 설정될 때 협상됩니다.

필드 sks-콜라 모든 토큰과 데이터 패킷에 존재하며 다음을 제외한 패킷의 모든 필드를 보호합니다. PID. 토큰(5비트)과 데이터(11비트)에 대한 CRC는 서로 다른 공식을 사용하여 계산됩니다.

각 트랜잭션은 토큰을 전송하여 호스트 컨트롤러에 의해 시작되고 핸드셰이크 패킷으로 끝납니다. 트랜잭션의 패킷 순서는 그림 7.7에 나와 있습니다. XNUMX.

호스트 컨트롤러는 리소스 할당 계획에 따라 장치와의 교환을 구성합니다. 컨트롤러는 주기적으로(1ms 주기로) 다음을 생성합니다. 프레임(프레임), 예정된 모든 거래가 이에 적합합니다. 각 프레임은 SOF 토큰 전송으로 시작됩니다. (프레임 시작), 이는 허브를 포함한 모든 장치에 대한 동기화 신호입니다. 각 프레임이 끝나면 시간 간격이 할당됩니다. EOF(프레임 끝) 그 동안 허브는 컨트롤러로의 전송을 금지합니다. 각 프레임에는 고유한 번호가 있습니다. 호스트 컨트롤러는 32비트 카운터를 작동하지만 SOF 토큰의 하위 11비트만 전송합니다. EOF 중에 프레임 번호가 (주기적으로) 증가합니다. 호스트는 트랜잭션을 제어하고 중단할 수 있는 공간이 항상 있도록 프레임 로드를 예약합니다. 연속 방송으로 무료 프레임 시간을 채울 수 있습니다. (대량 전송).

USB 및 FireWire 버스


쌀. 7.8. USB 프레임 스트림

등시성 전송 장치와 컨트롤러의 동기화가 중요합니다. 세 가지 옵션이 있습니다:

SOF 마커와 장치의 내부 생성기 동기화

프레임 속도를 장치 주파수에 맞게 조정하는 단계;

장치의 전송(수신) 속도를 프레임 속도와 일치시킵니다.

물론 컨트롤러 프레임 속도 조정은 한 장치의 내부 동기화 주파수와 일치시키는 것이 가능합니다. 조정은 ±1비트 간격 내에서 프레임 주기를 변경할 수 있는 피드백 메커니즘을 통해 수행됩니다.

1.2. 시스템 설정

USB는 장치의 동적 연결 및 연결 해제를 지원합니다. 버스 장치 번호 지정은 물리적 토폴로지의 변경 사항을 추적하는 지속적인 프로세스입니다.

모든 장치는 허브 포트를 통해 연결됩니다. 허브는 장치의 포트 연결 및 연결 끊김을 감지하고 컨트롤러가 요청할 때 포트 상태를 보고합니다. 호스트는 포트를 활성화하고 다음을 사용하여 제어 채널을 통해 장치의 주소를 지정합니다. 제로 주소 USB 기본 주소. 초기 연결 중 또는 재설정 후 모든 장치가 그런 방식으로 지정됩니다.

호스트는 새로 연결된 장치가 허브인지 기능인지 판단하여 할당합니다. 고유 주소 USB. 호스트가 제어 채널을 생성합니다. (제어 파이프) 포함 이 장치는 할당된 주소와 대상 번호 XNUMX을 사용합니다.

새 장치가 허브인 경우 호스트는 연결된 장치를 확인하고 주소와 설정을 할당합니다.

채널을 쏟아 붓습니다. 새 장치가 기능인 경우 USB 관리자가 관심 있는 소프트웨어에 연결 알림을 보냅니다.

장치의 연결이 끊어지면 허브는 해당 포트를 자동으로 비활성화하고 컨트롤러에 연결 끊김을 보고합니다. 그러면 모든 데이터 구조에서 이 장치에 대한 정보가 제거됩니다. 허브가 오프라인 상태가 되면 허브에 연결된 모든 장치에 대해 제거 프로세스가 수행됩니다. 기능이 비활성화되면 해당 소프트웨어에 알림이 전송됩니다.

장치 번호 매기기, 버스에 연결 (버스 열거), 사용자 또는 클라이언트 소프트웨어 개입 없이 연결(또는 전원 켜짐)될 때 동적으로 발생합니다. 번호 매기기 절차는 다음과 같이 수행됩니다.

1. 장치가 연결된 허브는 상태 폴에 응답하여 포트 상태 변경을 호스트에 알립니다. 이 순간부터 장치는 상태에 들어갑니다. 첨부 (연결됨)이며, 연결된 포트는 상태입니다. 사용할 수 없습니다.

2. 호스트가 포트 상태를 확인합니다.

3. 새 장치가 연결된 포트를 인식한 후 호스트는 포트를 재설정하고 활성화하라는 명령을 내립니다.

4. 허브는 이 포트에 대한 재설정 신호(10ms)를 생성하고 이를 다음 포트로 전환합니다. 사용함. 연결된 장치는 버스에서 최대 100mA 공급 전류를 끌어올 수 있습니다. 장치가 상태에 들어갑니다. 전원 (전원이 공급되면) 모든 레지스터가 원래 상태로 재설정되고 주소 XNUMX에 대한 액세스에 응답합니다.

5. 장치가 고유 주소를 수신할 때까지 호스트 컨트롤러가 패킷 데이터 필드의 허용 가능한 최대 크기를 결정하는 대기 채널을 통해 액세스할 수 있습니다.

6. 호스트는 장치에 고유 주소를 알려주고 상태에 들어갑니다. 해결 (주소로).

7. 호스트는 버스에서 선언된 전류 소모를 포함하여 장치 구성을 읽습니다. 읽기에는 여러 프레임이 걸릴 수 있습니다.

8. 수신된 정보를 기반으로 호스트는 이 장치의 사용 가능한 모든 엔드포인트를 구성하며 이는 상태로 전송됩니다. 구성된 (구성). 이제 허브를 사용하면 장치가 버스의 구성에 지정된 전체 전류를 소비할 수 있습니다. 장치가 준비되었습니다.

장치가 버스에서 연결 해제되면 허브는 호스트에 이를 알리고 포트는 비활성화되며 호스트는 현재 토폴로지 정보를 업데이트합니다.

1.3. USB 장치 기능 및 허브

USB 버스의 기능을 통해 다양한 장치를 연결하는 데 사용할 수 있습니다. 제어 장치의 "유용한" 속성을 다루지 않고 USB 버스에 연결된 인터페이스 부분에 대해 설명하겠습니다. 모든 장치는 아래 나열된 일반적인 작업 집합을 지원해야 합니다.

동적 연결 및 연결 해제. 이러한 이벤트는 허브에 의해 모니터링되어 호스트 컨트롤러에 보고되고 연결된 장치를 재설정합니다. 장치는 재설정 신호 후에 주소 XNUMX에 응답해야 하며 구성되거나 일시 중지되지 않습니다. 호스트 컨트롤러가 담당하는 주소를 할당한 후 장치는 고유한 주소에만 응답해야 합니다.

구성 호스트가 수행하는 장치는 사용을 위해 필요합니다. 구성은 일반적으로 장치 자체에서 읽은 정보를 사용합니다. 장치에는 여러 인터페이스가 있을 수 있으며, 각 인터페이스에는 장치의 기능을 호스트에 나타내는 자체 엔드포인트가 있습니다. 구성의 인터페이스에는 대체 특성 세트가 있을 수 있습니다. 세트 변경은 프로토콜에서 지원됩니다. 적응형 드라이버를 지원하기 위해 장치 및 인터페이스 설명자에는 클래스, 하위 클래스 및 프로토콜 필드가 있습니다.

데이터 전송 네 가지 전송 유형 중 하나를 통해 가능합니다(위 참조). 다양한 유형의 전송을 허용하는 엔드포인트의 경우 구성 후에는 그 중 하나만 사용할 수 있습니다.

에너지 관리 매우 진보된 USB 기능입니다. 버스 전원 공급 장치의 경우 전력이 제한됩니다. 연결된 경우 모든 장치는 버스에서 100mA를 초과하는 전류를 소비해서는 안 됩니다. 작동 전류(500mA 이하)는 구성에 선언되어 있으며, 허브가 선언된 전류를 장치에 제공할 수 없는 경우 구성되지 않으므로 사용할 수 없습니다.

USB 장치는 다음을 지원해야 합니다. 정지 (일시 중단 모드), 전류 소비가 500μA를 초과하지 않습니다. 버스 활동이 중단되면 장치가 자동으로 일시 중지되어야 합니다.

기회 원격 깨우기 일시 중지된 장치가 일시 중지 상태일 수도 있는 호스트 컴퓨터에 신호를 보낼 수 있도록 합니다. 원격 깨우기 기능은 장치 구성에 설명되어 있습니다. 이 기능은 구성 중에 비활성화될 수 있습니다.

바퀴통 USB에서는 신호를 전환하고 전원 전압을 공급하며, 연결된 장치의 상태를 모니터링하여 변경 사항을 호스트에 알립니다. 허브는 두 개의 컨트롤러 부분으로 구성됩니다. (허브 컨트롤러) 그리고 중계기 (허브 리피터). 연발총 출력 포트를 입력 포트에 연결하는 관리형 키입니다. 신호 재설정 및 일시 중지를 지원합니다. 제어 장치 호스트와의 상호작용을 위한 레지스터를 포함합니다. 허브 액세스를 위한 특정 명령을 사용하여 레지스터에 액세스합니다. 명령을 사용하면 허브를 구성하고, 다운스트림 포트를 관리하고, 해당 상태를 모니터링할 수 있습니다.

다운스트림 포트 허브는 다음 상태일 수 있습니다.

전원 (^(전원 끄기) 포트에 전원이 공급되지 않습니다. (허브 스위칭에만 가능)

영양물 섭취). 출력 버퍼는 고임피던스 상태에 놓이고 입력 신호는 무시됩니다.

연결 끊김 (연결 끊김) 포트는 어떤 방향으로도 신호를 전송하지 않지만 장치의 연결을 감지할 수 있습니다(상태 없음). SEO 2,5μs 이내). 그런 다음 포트가 상태로 전환됩니다. 장애인, 그리고 입력 신호 레벨에 따라 {디포 또는 차이1 할 수 있는 게으른) 연결된 장치의 속도를 결정합니다.

s장애인 (비활성화) 포트는 재설정 신호(컨트롤러의 명령에 따라)만 전송하며 포트의 신호(종료 감지 제외)는 인식되지 않습니다. 트립 감지 시(2,5 µs 상태 SEO) 항구가 상태가 된다 연결을 끊다, "휴면" 허브에서 종료가 감지되면 신호가 컨트롤러로 전송됩니다. 이력서.

w 활성화 (활성화) 포트는 신호를 양방향으로 전송합니다. 컨트롤러의 명령이 있거나 프레임 오류가 감지되면 포트는 상태로 들어갑니다. 장애인, 그리고 주에 대한 여행이 감지되면 연결을 끊습니다.

매달린 (일시중단) 포트는 정지 상태(절전 모드)로 전환하기 위해 신호를 보냅니다. 허브가 활성 상태이면 어떤 방향으로도 신호가 포트를 통해 전달되지 않습니다. 그러나 "휴면" 허브는 금지되지 않은 포트 상태의 변화 신호를 감지하여 "휴면" 허브 체인을 통해서도 활성화된 장치에서 "깨우기" 신호를 보냅니다.

각 포트의 상태는 별도의 레지스터를 사용하여 허브 컨트롤러에 의해 식별됩니다. 일반 레지스터가 있는데, 그 비트는 각 포트의 상태가 변경되었다는 사실을 반영합니다. EOF). 이를 통해 호스트 컨트롤러는 허브의 상태를 빠르게 확인할 수 있으며, 특수 트랜잭션에 의해 변경 사항이 감지되면 상태를 명확히 할 수 있습니다.

1.4. 호스트 컨트롤러

호스트 컴퓨터는 컨트롤러를 통해 장치와 통신합니다. 호스트에게는 다음과 같은 책임이 있습니다.

USB 장치 연결 및 연결 끊김 감지;

장치와 호스트 간의 제어 흐름 조작;

데이터 흐름 관리;

통계 수집;

연결된 제어 장치를 통해 에너지 절약을 보장합니다.

컨트롤러 시스템 소프트웨어는 장치와 호스트 컴퓨터에서 실행되는 소프트웨어 간의 상호 작용을 관리하여 다음을 조정합니다.

장치 번호 지정 및 구성;

등시성 데이터 전송;

비동기 데이터 전송;

에너지 관리;

장치 및 버스 관리에 대한 정보.

가능할 때마다 USB 소프트웨어는 고급 전원 관리와 같은 기존 호스트 컴퓨터 시스템 소프트웨어를 사용하여 전력 소비를 관리합니다.

2. IEEE 1394-FireWire

공식적으로 IEEE 1394라고 불리는 고성능 직렬 버스 표준은 1995년에 채택되었습니다. 목표는 최신 표준 병렬 버스보다 열등하지 않은 버스를 만드는 동시에 비용을 크게 줄이고 연결 용이성을 높이는 것이었습니다(직렬 인터페이스로의 전환으로 인해). 버스 기반 표준 파이어와이어, Macintosh 및 PowerMac 컴퓨터에서 SCSI에 대한 저렴한 대안으로 Apple 컴퓨터에서 사용됩니다. FireWire라는 이름은 이제 IEEE 1394 구현에 적용되며 약어와 공존합니다. 1394.

FireWire의 이점 다른 직렬 버스 이전:

에스? 다기능성: 버스는 추가 장비(허브)를 사용하지 않고도 최대 63개 장치에 대한 디지털 통신을 제공합니다. 디지털 캠코더, 스캐너, 프린터, 화상회의 카메라, 디스크 드라이브 등은 PC뿐만 아니라 서로 데이터를 교환할 수 있다. VESA의 주도로 FireWire는 "홈 네트워크"에도 사용됩니다.

높은 교환률과 등시성 전송을 통해 보급형 수준(100Mbit/s)에서도 방송 품질의 두 비디오 채널(초당 30프레임)과 CD 품질 스테레오 오디오 신호를 동시에 전송할 수 있습니다.

s§ 구성 요소 및 케이블 비용이 저렴합니다.

si 설치 및 사용이 쉽습니다. FireWire는 pnp 시스템을 확장합니다. 활성화/비활성화되면 장치가 자동으로 인식되고 구성됩니다. 버스 전원(최대 1,5A 전류)을 통해 제어 장치는 전원이 꺼진 경우에도 시스템과 통신할 수 있습니다. PC뿐만 아니라 VCR과 같은 다른 "지능형" 장치도 버스 및 기타 장치를 제어할 수 있습니다.

2.1. 버스 장치의 구조와 상호 작용

1394 표준은 케이블 버스와 크로스 버스라는 두 가지 범주의 버스를 정의합니다. (뒷면). 아래의 크로스 타이어 일반적으로 1394 케이블에 연결된 장치의 내부 하위 시스템을 연결하는 병렬 인터페이스를 나타냅니다.

단일 호스트 컨트롤러로 제어되는 USB와 달리 1394 표준을 사용하면 PXNUMXP 장치를 네트워크에 연결할 수 있습니다. 네트워크는 브리지로 연결된 많은 버스로 구성될 수 있습니다. 동일한 버스 내에서는 추가 장치를 사용하지 않고 케이블을 연결하여 장치를 연결합니다. 교량 특별한 지능형 장치입니다. PC용 FireWire 버스 인터페이스 카드는 PCI 1394 브리지입니다. 브리지에는 1394 케이블 버스에서 장치 크로스버스까지의 연결도 포함되며 16비트 네트워크 노드 주소 지정이 허용됩니다.

각 버스에는 최대 63개의 장치가 있으며 6비트 노드 ID 필드로 주소가 지정됩니다. 10비트 버스 식별자 필드는 시스템에서 최대 1023개의 브리지를 허용하여 다양한 유형의 버스를 연결합니다.

케이블 버스 노드와 케이블 브리지로 구성된 네트워크입니다. 유연한 토폴로지를 사용하면 트리 및 체인 아키텍처를 결합하는 네트워크를 구축할 수 있습니다(그림 7.9). 각 노드에는 일반적으로 XNUMX개의 동일한 커넥터가 있습니다. 여러 장치 연결 옵션이 허용되며 다음과 같은 제한 사항이 있습니다.

ssi 노드 쌍 사이에는 16개 이상의 케이블 세그먼트가 있을 수 없습니다.

표준 케이블 세그먼트의 길이는 4,5m를 초과해서는 안 됩니다.

두 번째 총 케이블 길이는 2m를 초과해서는 안 됩니다(고품질 케이블을 사용하면 이 제한이 완화됩니다).

일부 장치에는 커넥터가 하나만 있을 수 있으므로 가능한 배치 옵션이 제한됩니다. 표준에서는 단일 장치에 최대 27개의 커넥터를 허용합니다.

USB 및 FireWire 버스
쌀. 7.9. FireWire 버스에 장치 연결

USB 및 FireWire 버스
쌀. 7.10. FireWire 커넥터

이 표준은 공통 실드에 포함된 6선 케이블을 사용하여 노드 연결을 제공합니다. 두 개의 꼬인 쌍은 신호를 전송하는 데 사용되며(수신기와 송신기에 대해 별도) 두 개의 와이어는 장치에 전원을 공급하는 데 사용됩니다(8-40V, 최대 1,5A). 인터페이스의 갈바닉 절연을 위해 변압기(최대 500V의 절연 전압) 또는 커패시터(공통 와이어에 비해 최대 60V의 절연 전압을 갖는 저렴한 장치)가 사용됩니다. 커넥터에 대한 아이디어는 그림 7.10에 나와 있습니다. 700. 일부 장치(Sony DCRVX1000 및 DCR-VX1000 캠코더, DHR-4 DVCR)에는 신호 회로만 구현하는 작은 XNUMX핀 커넥터가 하나만 있습니다. 이러한 장치는 최종 장치로만 특수 어댑터 케이블을 통해 버스에 연결됩니다(특수 어댑터 스플리터를 사용할 수도 있음).

1394 표준은 케이블 전송에 사용할 수 있는 세 가지 주파수(98,304, 196,608 및 393,216Mbps)를 정의하며, 이는 반올림하여 100, 200 및 400Mbps입니다. 표준의 주파수는 다음과 같이 지정됩니다. S100, S200 и S400 각기. 소비자 장치는 일반적으로 지원 S100, 대부분의 어댑터는 S200. 서로 다른 속도로 설계된 장치를 동일한 버스에 연결할 수 있습니다. 교환은 모든 활성 노드에 대해 최소 속도로 발생합니다. 그러나 호스트 컨트롤러가 토폴로지 및 속도 맵을 구현하는 경우 (토폴로지_mar и 속도_지도), 교환에 참여하는 특정 쌍의 기능에 따라 하나의 버스에서 여러 주파수를 사용할 수 있습니다.

시스템은 장치의 동적(핫) 연결 및 분리를 허용합니다. 연결 가능한 식별자

장치는 사용자 개입 없이 자동으로 할당됩니다. 토폴로지(연결된 장치의 구성)의 변경 사항은 버스에 의해 자동으로 모니터링되고 제어 소프트웨어로 전송됩니다.

IEEE 1394 프로토콜

1394 프로토콜은 세 가지 수준으로 구현됩니다(그림 7.11).

거래 계층 패킷을 애플리케이션에 제공되는 데이터로 변환하거나 그 반대로 변환합니다. ISO/IEC 13213:1994(ANSI/IEEE 1212, 1994 에디션), 마이크로컴퓨터 버스(읽기, 쓰기, 잠금)용 CSR(제어 및 상태 레지스터) 아키텍처를 준수하는 요청-응답 프로토콜을 구현합니다. 이렇게 하면 1394 버스가 표준 병렬 버스와 더 쉽게 통신할 수 있습니다.

링크 레이어 물리 계층 데이터로부터 패킷을 형성하고 역변환을 수행합니다. 이는 노드가 확인을 통해 데이터그램을 교환하도록 보장합니다. 계층은 패킷 전송과 등시성 전송 관리를 담당합니다.

물리층 버스 신호를 생성하고 수신합니다. 언제든지 하나의 송신기만 작동한다고 가정하여 초기화 및 중재 기능을 제공합니다. 계층은 데이터 스트림과 직렬 버스 신호 레벨을 상위 계층으로 전달합니다. 물리적 계층 칩이 버스에 의해 구동되는 이러한 레벨 사이에서 갈바닉 절연이 가능합니다. 전원 공급 장치의 보호 접지선을 통해 나타날 수 있는 기생 공통 회로를 방지하려면 갈바닉 절연이 필요합니다.

FireWire 하드웨어는 일반적으로 두 개의 전용 물리 계층 트랜시버 칩으로 구성됩니다. PHY 트랜시버 및 버스 연결 다리 링크 칩. 예를 들어 IBM-Apple LINK-PHY 인터페이스를 통해 이들 간의 통신이 가능합니다. 통신 레벨 마이크로 회로는 해당 레벨의 모든 기능과 레벨의 일부 기능을 수행합니다.

트랜잭션이 발생하면 나머지 트랜잭션 계층은 소프트웨어에서 실행됩니다.

USB 및 FireWire 버스

커넥터

그림. 7.11. FireWire의 XNUMX층 구조

버스 관리

1394 프로토콜에는 서로 다른 장치 간의 통신을 관리하기 위한 유연한 메커니즘이 있습니다. 이를 위해서는 버스에 PC나 기타 버스 컨트롤러가 필요하지 않습니다. 관리에는 세 가지 서비스가 포함됩니다.

사이클 마스터, 프레임 시작 브로드캐스트 패킷 전송(등시성 교환에 필요함)

등시성 리소스 관리자, 노드가 등시성 교환(디지털 비디오 및 오디오용)을 지원하는지 여부.

옵션 버스 컨트롤러(버스 마스터) PC일 수도 있고 편집용 DVCR일 수도 있습니다.

재설정 시 버스 구조가 결정되고 각 노드에 물리적 주소가 할당되며 루프 마스터, 등시성 자원 관리자 및 버스 컨트롤러가 조정됩니다. 재설정 후 XNUMX초 후에 모든 리소스를 나중에 사용할 수 있게 됩니다.

버스의 근본적인 장점은 컨트롤러가 필요 없다는 것입니다. 모든 전송 장치는 등시성 트래픽 스트립을 수신하고 자율 또는 원격 제어에서 신호 전송을 시작할 수 있으며, 수신기는 이 정보를 "듣게" 됩니다. 컨트롤러(PC)가 있는 경우 해당 소프트웨어는 장치의 작동을 제어하여 디지털 비선형 비디오 편집 스튜디오 등을 구현할 수 있습니다.

등시성 데이터 전송

1394 버스의 등시성 전송은 여러 채널을 통한 고속 전송을 위해 처리량을 보장하고 대기 시간을 제한합니다. 등시성 자원 관리자에는 레지스터가 포함되어 있습니다. 대역폭^사용 가능, 이는 등시성 전송을 사용하는 노드에 대한 나머지 대역폭의 가용성을 결정합니다. 재설정 시 등시성 전송을 사용하여 새로 등장한 노드는 대역폭 할당을 요청합니다. 예를 들어 디지털 비디오에는 30Mbit/s 대역폭(비디오 데이터의 경우 25Mbit/s, 오디오, 동기화 및 패킷 헤더의 경우 3-4Mbit/s)이 필요합니다. 대역폭은 125ms 주기에 6144개의 특수 할당 단위로 측정되며, 단위당 약 20ns가 소요되며, 이는 하나의 대역폭을 전송하는 데 필요한 시간에 해당합니다. 쿼드렛 (Quadlet) 1600Mbps에서. 쿼드렛 (32비트 워드)는 버스의 데이터 전송 단위입니다. 주기의 25ms는 비동기 트래픽을 위해 예약되어 있으므로 재설정 후 레지스터의 초기 값은 4915 단위입니다. 안에 S100 디지털 비디오 장치는 약 1800개 단위를 요청합니다. S200 해당 대역을 사용할 수 없는 경우 이를 요청한 기기는 주기적으로 요청을 반복합니다.

등시성 자원 관리자는 각 등시성 노드에 사용 가능한 채널 번호(레지스터) 중에서 채널 번호(0-63)를 할당합니다.

채널_사용 가능). 등시성 패킷 식별자입니다. 노드에 등시성 교환이 불필요해지면 대역폭과 채널 번호를 해제해야 합니다. 제어 정보는 비동기 채널을 통해 교환됩니다.

2.2. IEEE 1394 표준의 동의어 및 추가 사항

IEEE 1394 버스에는 다음과 같은 많은 별칭이 있습니다.

고성능 직렬 버스에 대한 IEEE 1394-1995 표준은 현재 시행 중인 표준을 설명하는 문서의 전체 이름입니다.

FireWire는 Apple Computer, Inc.의 IEEE-1394 구현의 상표입니다.

P1394는 IEEE-1394(1995년 XNUMX월 채택 전)의 예비 버전 이름입니다.

DigitalLink는 디지털 카메라의 IEEE-1394 구현과 관련하여 사용되는 Sony Corporation의 상표입니다.

멀티미디어 연결은 1394 고성능 직렬 버스 무역 협회(1394TA) 로고에 사용된 이름입니다.

Apple은 1986년부터 FireWire 개념을 개발해왔기 때문에 FireWire라는 이름은 IEEE 1394의 가장 일반적인 동의어입니다.

주요 IEEE 1394-1995 표준 외에도 몇 가지 수정 사항이 있습니다.

1394a는 원래 표준의 일부 공백을 메우고 사소한 변경 사항(예: 버스의 더 빠른 재설정 작업)을 포함하는 정리 문서로 간주됩니다. 1394a 제품은 주요 표준이 채택되기 전에 출시된 장치와 역호환됩니다. 이 버전은 속도를 800Mbit/s 이상으로 높이기 위해 도입되었으며, 고속 버전도 1394b에 포함되어 있습니다.

1394.1은 4선 커넥터를 정의하고 버스 브리지의 표준을 설정합니다.

1394.2는 1Gbit/s 이상의 교환율로 스테이션 클러스터를 연결하기 위한 표준으로 사용됩니다. 와 호환되지 않는 1394. 이 ​​표준은 슈퍼컴퓨팅을 위한 IEEE 1596 SCI(Scalable Coherent Interface)에서 유래했으며 때로는 시리얼 익스프레스 또는 SCILite. 1394.2 신호 인터페이스는 FCAL과 유사하며 링 토폴로지, 1394 표준에 의해 금지됩니다.

2.3. FireWire와 USB의 비교

직렬 인터페이스 FireWire와 USB는 공통된 기능을 갖고 있지만 상당히 다른 기술입니다. 두 버스 모두 다수의 제어 장치(USB의 경우 127개, FireWire의 경우 63개)를 쉽게 연결할 수 있어 시스템이 실행되는 동안 장치를 켜고 끌 수 있습니다. 두 버스의 토폴로지는 매우 유사합니다. USB 허브는 제어 센터의 일부입니다. 그 존재는 사용자에게 보이지 않습니다. 두 버스 모두 장치 전력선을 갖고 있지만 FireWire의 전력 용량은 훨씬 더 높습니다. 두 버스 모두 PnP 시스템(자동 구성 켜기/끄기)을 지원하고 주소, DMA 채널 및 인터럽트 부족 문제를 제거합니다. 대역폭과 버스 관리는 다릅니다.

USB PC에 연결된 제어 장치에 중점을 둡니다. 등시성 전송을 통해 디지털 오디오 신호만 전송할 수 있습니다. 모든 전송은 중앙에서 제어되며 PC는 버스 트리 구조의 루트에 위치한 필수 제어 노드입니다. 이 버스는 여러 대의 PC 연결을 지원하지 않습니다.

파이어 와이어 연결된 모든 장치 간의 집중적인 교환에 중점을 둡니다. 등시성 트래픽을 사용하면 "실시간" 비디오를 전송할 수 있습니다. 버스에는 PC의 중앙 집중식 제어가 필요하지 않습니다. 버스를 사용하여 여러 대의 PC와 제어 장치를 로컬 네트워크에 연결할 수 있습니다.

새로운 디지털 비디오 및 오디오 장치에는 1394 어댑터가 내장되어 있습니다. 기존 아날로그 및 디지털 장치(플레이어, 카메라,

모니터)는 인터페이스 및 신호의 어댑터 변환기를 통해 가능합니다. 표준의 균일한 FireWire 케이블 및 커넥터는 소비자 가전 장치와 PC 사이의 다양한 연결을 대체합니다. 다양한 유형의 디지털 신호가 하나의 버스에 다중화됩니다. 이더넷 네트워크와 달리 FireWire를 통한 데이터 스트림의 고속 실시간 전송에는 추가 프로토콜이 필요하지 않습니다. 또한, 주어진 시간 내에 버스에 대한 접근을 보장하는 중재 시설이 있습니다. FireWire 네트워크에서 브리지를 사용하면 노드 그룹의 트래픽을 서로 격리할 수 있습니다.

7.3. ACCESS.Bus 및 PC 인터페이스

직렬 버스 ACCESS.버스 (액세서리 버스)는 DEC가 개발한 모니터(VESA DDC 채널), 스마트 전원 공급 장치(스마트 배터리) 등과 같은 컴퓨터와 액세서리 간의 상호 작용을 위한 버스입니다. 버스는 두 개의 신호와 두 개의 전원( 12V, 500mA) 와이어는 최대 14개의 입력/출력 장치를 연결할 수 있으며 버스 길이는 8m에 달할 수 있습니다. 하드웨어 기반은 PC 인터페이스로 구현이 용이하지만 USB에 비해 성능이 낮습니다. ACCESS.Bus용 PC 하드웨어 프로토콜 위에는 연결된 특정 장치의 프로토콜과 상호 작용하는 기본 소프트웨어 프로토콜이 있습니다. 프로토콜은 OS를 재부팅하지 않고도 장치의 연결/연결 해제를 제공합니다. VESA에서 제안한 ACCESS.Bus 커넥터 신호 할당은 표에 나와 있습니다. 7.3.
접촉 예약
1 GND
2 열쇠
3 SDA
4 +5V(장치 전원)
5 SCL

인터페이스 에게, Philips가 개발한 이 시스템은 최근 PC에 등장했으며 설치된 구성 요소(DIMM 메모리 모듈)를 식별하기 위해 비휘발성 메모리와 통신하기 위해 마더보드의 내부 보조 버스로 사용됩니다. 버스는 구현이 극도로 단순하다는 점, 즉 소프트웨어로 작동되는 두 개의 신호 라인이 특징입니다. 의도된 목적에 따라 이 버스는 현재 BIOS에서 하드웨어를 결정할 때만 사용되지만 재기록 가능한 구성 메모리를 사용하면 소프트웨어를 특정 시스템(보다 정확하게는 설치된 모듈)에 연결하고 바이러스에 대한 새로운 기회가 열립니다. . 버스에 대한 소프트웨어 액세스 방법은 아직 표준화되지 않았지만 원하는 경우 칩셋 문서를 연구하여 "계산"할 수 있습니다.

USB 및 FireWire 버스
쌀. 7.12. PC 통신 프로토콜

직렬 인터페이스 CSS SDA(직렬 데이터) 데이터와 SCL(직렬 시계) 동기화라는 두 가지 신호를 사용하여 한 쌍의 장치 간에 양방향 데이터 전송을 제공합니다. 두 장치가 교환에 참여합니다. 리딩(마스터) и 노예. 그들 각각은 다음과 같은 역할을 할 수 있습니다. 송신기, SDA 라인에 정보 비트를 배치하거나 수화기 교환 프로토콜은 그림 7.12에 나와 있습니다. 100. 동기화는 마스터 장치 컨트롤러에 의해 설정됩니다. 데이터 라인은 오픈 콜렉터 유형 출력으로 양방향이며 두 장치에 의해 교대로 제어됩니다. 교환 주파수(반드시 일정할 필요는 없음)는 표준 모드의 경우 400kHz, 고속 모드의 경우 XNUMXkHz로 제한되므로 인터페이스 컨트롤러의 소프트웨어 제어 구현을 구성할 수 있습니다.

모든 작동 조건의 시작 스타트 SCL이 하이일 때 하이에서 로우로 이동하는 SDA 신호에 의해 트리거됩니다. SCL 조건이 High일 때 SDA 신호를 Low에서 High로 전달하여 작업이 완료됩니다. 중지합니다. 데이터를 전송할 때 SDA 라인의 상태는 SCL 레벨이 낮을 때만 변경될 수 있으며 데이터 비트는 SCL의 포지티브 에지에 의해 게이트됩니다. 각 메시지는 송신기에서 생성된 8개의 데이터 비트로 구성됩니다(MSB가 먼저 전송됨). 그 후 송신기는 승인을 받기 위해 한 클럭 사이클 동안 데이터 라인을 해제합니다. XNUMX번째 사이클 동안 수신기는 XNUMX을 생성합니다. 확인 비트를 확인합니다. 승인 비트를 전송한 후 수신기는 SCL 라인을 로우로 유지하여 다음 전송을 지연할 수 있습니다. 또한 수신기는 송신기에서 생성된 폴오프 이후 SCL을 낮게 유지하여 비트당 수신 수준에서 버스 전송 속도를 늦출 수 있습니다.

각 슬레이브 장치에는 자체 주소가 있으며 기본 너비는 7비트입니다. 주소 답[6:0] 첫 번째 바이트의 비트 [7:1]에서 마스터 장치에 의해 전송되고, 비트 0에는 연산 R1U의 부호가 포함됩니다(R1/U = 1 읽기, RW=Q -기록). 7비트 주소는 두 부분으로 구성됩니다: 가장 중요한 4비트 답[6:3] 장치 유형(예: EEPROM 1010)에 대한 정보와 하위 3비트를 전달합니다. 답[0:2] 이 유형의 장치 번호를 결정합니다. PC 인터페이스가 있는 많은 마이크로 회로에는 필요한 주소가 논리 레벨 1과 0으로 설정되도록 전환하여 세 개의 주소 입력이 있습니다. 일부 전체 주소 값은 예약되어 있습니다(표 7.4).

일반 통화를 사용하면 켜져 있는 장치가 브로드캐스트 방식으로 자신을 알릴 수 있습니다. 바이트 스타트 장치 내에서 소프트웨어(하드웨어가 아닌) 방식으로 구성되는 경우 프로세서의 인터페이스에 대한 관심을 끌도록 설계되었습니다. 이 바이트를 수신하기 전에 장치 마이크로 컨트롤러는 상태를 폴링하지 않으며 인터페이스 신호를 모니터링하지 않습니다. 10비트 주소 지정을 사용하는 경우 비트[2:1]에는 주소의 가장 중요한 부분이 포함되며 하위 8비트는 다음 바이트에서 전송됩니다. RW=0.

슬레이브 장치의 주소와 액세스 유형은 교환을 시작할 때 컨트롤러에 의해 설정됩니다. 메모리와의 교환은 그림 7.13에 나와 있습니다. 0. 여기서는 SA[2:0] 장치 주소, DA[7:0] 데이터 주소, D[7:0] 데이터, W 쓰기 기호(1), R 읽기 기호(XNUMX)입니다.
비트 [7:1] BKTO(원) 예약
0000 000 0 일반 전화 주소 일반 통화 주소
0000 000 1 스타트. 활발한 교류의 시작
0000 001 X CBUS 장치 주소(호환성을 위해)
0000 010 X 다른 버스의 기기 주소
0000 011 X 예약 된
0000 1XX X 예약 된
1111 1XX X 예약 된
1111 오오 X 10비트 주소 지정의 부호

USB 및 FireWire 버스
쌀. 7.13. PC 인터페이스를 통한 메모리 교환: a 쓰기, b 현재 주소에서 읽기, в 임의의 주소에서 읽기

조건을 충족하고 스타트, 컨트롤러는 장치 주소와 작업 표시를 포함하는 바이트를 보냅니다. 우, 확인을 기다리고 있습니다. ~에 쓰기 작업 컨트롤러의 다음 메시지는 기록되는 셀의 8비트 주소와 데이터 바이트입니다(메모리 용량이 256바이트를 초과하는 초소형 회로의 경우 셀 주소는 XNUMX바이트로 전송됩니다). 확인을 받은 후 컨트롤러는 다음 조건으로 루프를 종료합니다. 중지, 주소가 지정된 장치는 내부 쓰기 주기를 시작할 수 있으며, 이 동안에는 인터페이스 신호에 응답하지 않습니다. 컨트롤러는 쓰기 명령(장치 주소 바이트)을 전송하여 장치의 준비 상태를 확인합니다.

승인 비트를 분석한 후 조건을 생성합니다. 중지합니다. 장치가 승인 비트로 응답하면 내부 루프가 완료되고 다음 작업을 수행할 준비가 되었음을 의미합니다.

읽기 작업 레코드와 동일한 방식으로 시작되지만 기호가 포함됩니다. RW=\. 특정 주소, 현재 주소 또는 순차적으로 읽을 수 있습니다. 현재 주소는 슬레이브 장치의 내부 카운터에 저장되며, 마지막 작업에 참여한 셀의 주소를 XNUMX 증가시켜 저장합니다.

읽기 명령을 받으면 장치는 승인 비트를 제공하고 현재 주소에 해당하는 데이터 바이트를 보냅니다. 컨트롤러는 승인으로 응답할 수 있으며, 그런 다음 장치는 다음 바이트를 보냅니다(순차 읽기). 컨트롤러가 조건을 사용하여 수신된 데이터 바이트에 응답하는 경우 중지, 읽기 작업이 완료됩니다(현재 주소에서 읽는 경우). 컨트롤러는 장치 주소 바이트와 셀 주소 바이트가 전송되는 가상의 쓰기 작업으로 읽기 시작 주소를 설정하고, 주소 바이트 수신 확인 후 조건이 다시 생성됩니다. 스타트 장치 주소가 전송되지만 읽기 작업이 표시됩니다. 이것이 임의의 셀(또는 셀 시퀀스)을 읽는 방법입니다.

인터페이스를 통해 컨트롤러는 한 쌍의 신호를 사용하여 이 버스에 연결되고 고유한 주소를 갖는 8개의 유사한 장치에 액세스할 수 있습니다(그림 7.14). 장치 수를 늘려야 하는 경우 그룹을 연결할 수 있습니다. 이 경우 공통 SCL 신호와 별도의 SDA 신호(양방향)를 사용하거나, 공통 SDA 신호와 별도의 단방향 SCL 신호를 사용하는 것이 허용됩니다. 자체 주소 설정을 위한 핀이 없는 여러 미세 회로(또는 장치) 중 하나에 액세스하기 위해 SCL(또는 SDA) 라인 분리도 사용됩니다.

PC 프로토콜을 사용하면 충돌을 감지하고 중재를 수행하여 여러 컨트롤러가 동일한 버스를 공유할 수 있습니다. 이러한 기능은 매우 간단하게 구현됩니다. 두 송신기가 SDA 라인에서 서로 다른 논리 신호 레벨을 설정하려고 하면 낮은 레벨을 설정하는 송신기가 "승리"하게 됩니다. 송신기는 제어하는 ​​신호의 레벨을 모니터링하고 불일치가 감지되면(높은 레벨을 전송하지만 낮은 레벨을 "인식"함) 추가 전송을 거부합니다. 장치는 신호가 수동 상태일 때만 교환을 시작할 수 있습니다. 충돌은 교환 시작을 동시에 시도하는 경우에만 발생할 수 있습니다. 충돌이 감지되자마자 "패배한" 송신기는 꺼지고 "승리한" 송신기는 계속 작동합니다.

USB 및 FireWire 버스
쌀. 7.14. 컨트롤러에 장치 연결

부록 A. IBM PC 호환 컴퓨터의 시스템 엔지니어링

여기서는 프로그램과 인터페이스 어댑터의 상호 작용을 고려합니다. PC 아키텍처에 대한 간략한 정보가 제공됩니다. 메모리와 I/O 공간의 구성, 인터럽트 시스템, 직접 메모리 액세스에 대해 설명합니다. 더 자세한 정보는 "IBM PC Hardware. Encyclopedia"("Peter", 1998) 책에서 찾을 수 있습니다.

A.1. 메모리 공간

PC 메모리의 논리적 구조는 x86 제품군 프로세서의 주소 지정 시스템에 의해 결정됩니다. 최초의 IBM PC 모델에 사용된 8086/88 프로세서의 주소 공간은 1MB(주소 버스의 20비트)였습니다. 80286 프로세서부터 주소 버스는 24비트로 확장되었고, 그 다음에는(386DX, 486, Pentium) 32비트, 마지막으로 36비트(Pentium Pro, Pentium II)로 확장되었습니다. DOS에서 사용되는 실제 프로세서 모드에서는 공식적으로 1MB의 메모리만 사용할 수 있습니다. 그러나 8086 프로세서의 리얼 모드 에뮬레이션 버그로 인해 80286 및 상위 프로세서는 (64K-16)바이트 더 많은 lOFFEFh의 사용 가능한 최대 주소를 갖습니다. lOOOOOh-lOFFEFh 영역은 다음과 같습니다. 고용량 메모리 영역 (HMA). 여기에는 리얼 모드 OS와 소규모 상주 프로그램의 일부가 포함되어 있습니다. 8086/88 프로세서와의 완전한 호환성을 위해 주소 버스의 A20 라인에 게이트가 있습니다. 게이트A20, 이는 프로세서의 신호를 전달하거나 시스템 주소 버스의 라인 A20을 강제로 재설정합니다.

간행물: cxem.net

다른 기사 보기 섹션 컴퓨터.

읽고 쓰기 유용한 이 기사에 대한 의견.

<< 뒤로

과학 기술의 최신 뉴스, 새로운 전자 제품:

터치 에뮬레이션을 위한 인조 가죽 15.04.2024

거리가 점점 일반화되는 현대 기술 세계에서는 연결과 친밀감을 유지하는 것이 중요합니다. 최근 독일 자를란트 대학(Saarland University) 과학자들이 인공 피부를 개발하면서 가상 상호 작용의 새로운 시대가 열렸습니다. 독일 자를란트 대학 연구진이 촉각 감각을 멀리까지 전달할 수 있는 초박형 필름을 개발했습니다. 이 최첨단 기술은 특히 사랑하는 사람과 멀리 떨어져 있는 사람들에게 가상 커뮤니케이션을 위한 새로운 기회를 제공합니다. 연구원들이 개발한 두께가 50마이크로미터에 불과한 초박형 필름은 직물에 통합되어 제XNUMX의 피부처럼 착용될 수 있습니다. 이 필름은 엄마나 아빠의 촉각 신호를 인식하는 센서이자, 이러한 움직임을 아기에게 전달하는 액추에이터 역할을 합니다. 부모가 직물을 만지면 압력에 반응하여 초박막 필름이 변형되는 센서가 활성화됩니다. 이것 ...>>

펫구구 글로벌 고양이 모래 15.04.2024

애완동물을 돌보는 것은 종종 어려운 일이 될 수 있습니다. 특히 집을 깨끗하게 유지하는 데 있어서는 더욱 그렇습니다. Petgugu Global 스타트업의 새롭고 흥미로운 솔루션이 제시되었습니다. 이 솔루션은 고양이 주인의 삶을 더 쉽게 만들고 집을 완벽하게 깨끗하고 깔끔하게 유지할 수 있도록 도와줍니다. 스타트업 펫구구글로벌(Petgugu Global)이 자동으로 배설물을 씻어내는 독특한 고양이 화장실을 공개해 집안을 깨끗하고 산뜻하게 유지해준다. 이 혁신적인 장치에는 애완동물의 배변 활동을 모니터링하고 사용 후 자동으로 청소하도록 활성화되는 다양한 스마트 센서가 장착되어 있습니다. 이 장치는 하수 시스템에 연결되어 소유자의 개입 없이 효율적인 폐기물 제거를 보장합니다. 또한 변기는 물을 내릴 수 있는 대용량 수납 공간을 갖추고 있어 다묘 가정에 이상적입니다. Petgugu 고양이 모래 그릇은 수용성 모래와 함께 사용하도록 설계되었으며 다양한 추가 기능을 제공합니다. ...>>

배려심 많은 남자의 매력 14.04.2024

여성이 '나쁜 남자'를 더 좋아한다는 고정관념은 오랫동안 널리 퍼져 있었습니다. 그러나 최근 모나쉬 대학의 영국 과학자들이 실시한 연구는 이 문제에 대한 새로운 관점을 제시합니다. 그들은 여성이 남성의 정서적 책임과 다른 사람을 도우려는 의지에 어떻게 반응하는지 살펴보았습니다. 이번 연구 결과는 무엇이 남성을 여성에게 매력적으로 만드는지에 대한 우리의 이해를 변화시킬 수 있습니다. Monash University의 과학자들이 실시한 연구는 여성에 대한 남성의 매력에 대한 새로운 발견으로 이어졌습니다. 실험에서 여성에게는 노숙자를 만났을 때의 반응을 포함하여 다양한 상황에서 자신의 행동에 대한 간략한 이야기와 함께 남성의 사진이 표시되었습니다. 일부 남성은 노숙인을 무시했지만, 다른 남성은 음식을 사주는 등 그를 도왔습니다. 한 연구에 따르면 공감과 친절을 보여주는 남성은 공감과 친절을 보여주는 남성에 비해 여성에게 더 매력적이었습니다. ...>>

아카이브의 무작위 뉴스

바람보다 빠르게 12.07.2009

영국 엔지니어 Richard Jenkins는 그의 오랜 꿈을 실현했습니다. 그는 아이스보트에서 속도 기록을 세웠습니다. 그가 만든 바퀴 달린 버드나무 "Green Bird"는 풍속이 시속 203km에 불과했음에도 불구하고 캘리포니아의 마른 소금 호수 표면에서 시속 48km의 속도로 발전했습니다.

"Green Bird"는 완전히 탄소 합성물로 만들어졌으며 바퀴의 볼 베어링과 회전식 돛 마운트만 금속입니다. 기존의 돛 대신 수직으로 설정된 단단한 날개가 사용됩니다.

엔지니어에 따르면 부표의 특수한 가벼움과 공기역학적 설계로 인해 풍속을 3~5배 초과할 수 있다고 합니다. Jenkins는 XNUMX년 동안 디자인을 개선하기 위해 노력했습니다.

다른 흥미로운 소식:

▪ 집단 전자 터널링

▪ 로봇 드라이버

▪ 대형 타워 크레인용 Ampd Energy 배터리.

▪ 수백만 개의 나노포어 배터리

▪ 오디세우스는 이타카에 살지 않았다

과학 기술 뉴스 피드, 새로운 전자 제품

 

무료 기술 라이브러리의 흥미로운 자료:

▪ 아마추어 라디오 디자이너를 위한 사이트 섹션. 기사 선택

▪ 허블 망원경 기사. 발명과 생산의 역사

▪ 기사 견과류는 무엇입니까? 자세한 답변

▪ 기사 수평 절삭 공구가 있는 목공 기계. 가정 작업장

▪ 기사 주파수 응답 측정기로 안테나 튜닝. 무선 전자 및 전기 공학 백과사전

▪ 기사 릴레이 보호. 발전기 블록 보호 - 변압기. 무선 전자 및 전기 공학 백과사전

이 기사에 대한 의견을 남겨주세요:

이름 :


이메일(선택사항):


댓글 :





이 페이지의 모든 언어

홈페이지 | 도서관 | 조항 | 사이트 맵 | 사이트 리뷰

www.diagram.com.ua

www.diagram.com.ua
2000-2024