스톤펄슨

USB 시스템적 구성과 작동원리 알아보겠습니다 본문

정보글

USB 시스템적 구성과 작동원리 알아보겠습니다

스톤펄슨 2020. 5. 3. 23:11

원래 프린터와 저속 모뎀용으로 설계된 PC의 시리얼 포트와 병행 포트는 범용 인터페이스로 많은 것이 요망됩니다. 데이터 전송 속도는 낮고, 각 장치에는 독자적인 하드웨어 인터럽트가 필요합니다. 이로 인해 가능한 확장량이 제한됩니다. 또, 이러한 인터페이스로 플러그 앤드 플레이 조작을 실현하는 희망도 없습니다. 주변기기를 PC에 접속하는 것이 기술자 이외의 사용자도 실행할 수 있도록 할 때 필요합니다. 사실상 무제한 수의 기기를 연결하기 위해 사용할 수 있는 것은 USB였습니다. USB는 저속의 다수의 주변기기를 PC에 접속할 수 있도록 설계되어 있습니다. USB는 SCSI를 대체하는 것을 의도하지 않았습니다. 그러나 시리얼 포트나 병행 포트보다 훨씬 더 빠릅니다. 오디오 및 비디오 장치의 요구에는 특히 주의가 기울여졌습니다. 이것은, 차세대의 개인 생산성 애플리케이션에서 더욱더 중요하게 된다고 생각되고 있었습니다. USB의 설계 때문에 이 타임 중대한 아이소크로나스 데이터는 화상이나 음성의 품질에 악영향을 주는 지연 없이 전달됩니다. USB는 플러그 앤드 플레이로 사용할 수 있도록 설계되어 있습니다. 시스템 수행 중에도 기기를 추가 및 삭제할 수 있으므로 시스템을 재시작하여 재구성할 필요가 없습니다. 버스 종단이나 장치 식별자 할당 등의 기술적인 문제는 하드웨어와 소프트웨어 아키텍처에 의해 처리되기 때문에 이러한 일반적인 구성 오류 원인은 문제가 되지 않습니다. 장치의 일시 정지와 재개를 허용함으로써 절전에 대한 우려가 충족되고 있습니다. 일반적인 USB 장치는 저 및 중 대역폭이 있어야 하는 장치입니다. 대역폭 범위 하한선에서는 USB를 사용하여 키보드와 마우스를 PC에 연결할 수 있습니다. 탑 엔드에서는 화상 회의 애플리케이션용의 스캐너, 백업 장치, 또는 카메라가 USB를 사용할 수 있으므로 관련하는 설치 및 구성의 문제를 수반하는 전용의 인터페이스 보드가 불필요하게 됩니다. 다른 장치의 데이터가 같은 케이블 위를 이동하는 버스 아키텍처에는 접속 요건을 간소화할 가능성도 있습니다. 예를 들어 마우스를 키보드에 연결하면 한 개의 케이블로 이들을 PC에 연결할 수 있습니다. 모니터에는 여전히 아날로그 VGA 케이블이 필요하지만, 다른 USB 링크를 사용하면 모니터를 온스 깨끗한 디스플레이가 아닌 PC의 소프트웨어에서 조정할 수 있습니다. 멀티미디어 모니터의 경우 내장 스피커와 마이크의 오디오 데이터도 같은 케이블로 송신할 수 있습니다. 핀 2와 3의 2번째 선의 페어, D+와 D-는 데이터의 전송에 사용되는 트위스트 페어입니다. 데이터 실시간은 신호방식을 사용합니다. 모두 접지에 관해 신호를 전송하고 두 데이터 라인이 서로에 대해 극성을 반전하면 천이가 발생합니다. 이를 통해 기존의 싱글 끝 로직 신호보다 잡신호에 대한 내성이 향상됩니다. 데이터는 NAZI를 사용하여 인코딩된 비트의 동기화 시리얼 경향으로 송신됩니다. 비트스태핑을 사용하여 천이가 빈번하게 발생하고 리시버가 동기화를 잃지 않도록 합니다. 클록 신호는 데이터와 함께 발송되며 SYNC 필드는 각 데이터 패킷 앞에 놓입니다. USB는 2개의 다른 속도로 동작합니다. 풀 빠르기는 12Mbit/초의 대역폭을 제공합니다. 이 속도에서는 적절한 잡신호 내성을 얻어 전자간섭을 방지하기 위해 길드케이블을 사용해야 합니다. 방패 케이블은 약 5mm입니다. 지름 케이블 구분의 최대 길이는 5m입니다. 저대역폭이 있어야 하는 애플리케이션에서는 더욱 저속의 동작 상태를 이용할 수 있습니다. 이를 통해 얇고 저렴한 방패 없이 케이블을 사용할 수 있습니다. 방패 없는 케이블의 길이는 최대 3m로 단축되어 있습니다. 방패되지 않은 케이블을 통해 고속신호가 송신되는 것을 막고, 저속 장치가 풀 빠르기 데이터를 응답해야 하는 명령어로 잘못 해석하는 위험을 피하고자 풀 빠르기 신호 링이 이루어지는 동안 저속 장치와의 통신은 무효가 됩니다. 사용되고 있습니다. USB에는 시리즈 A와 시리즈 B라고 불리는 2종류의 플러그와 소켓이 지정되어 있습니다. 시리즈 A의 플러그와 소켓은, 외부 케이블이 항구적으로 접속된 장치에 사용하기 위한 것입니다. 시리즈 B 커넥터는 프린터, 스캐너, 모뎀 등, USB 케이블을 떼어낼 수 있는 경우에 사용합니다. 2가지 타입은 호환성이 없습니다. 시리즈 B 커넥터는 약 10.6mm x 12.0mm로 콘택트는 들어가 있습니다. 끼워 맞춤 플러그는 완전히 방패 된 연결을 제공합니다. 플러그와 소켓이 작으므로 기술이 보급됨에 따라 USB 포트는 랩톱뿐만 아니라 데스크톱 PC에도 나타나는 것 같습니다. USB 사진은, 그림 1 에 나타내는 그래피컬 아이콘으로 나타납니다. USB는 트리처럼 보이는 멀티레벨 출발 폴로 자기를 사용합니다. 버스가 2개 이상의 분기로 나누어져 있는 곳이 허브입니다. 각 지점의 마지막에는 주변 기능이 있습니다. 이 문맥에서의 함수라는 용어는 특정 USB 용어입니다. 각 물리 USB 장치는 버스 인터페이스, 논리 장치 및 하나 이상의 기능으로 구성됩니다. 버스 인터페이스는 모든 USB 기기에 표준으로 장착되어 있습니다. 논리 장치는 장치의 사용자 전망입니다. 물리적으로는 단일 기능을 포함하는 경우와 허브가 내장된 복수의 기능으로 구성되는 때도 있습니다. 허브가 내장된 다기능 장치의 예는 트랙볼이 내장된 키보드입니다. 허브에는 다른 USB 장치를 허브에 접속할 수 있는 사진 또는 접속 포인트가 있습니다. 케이블의 길이는 각각 허브로 시작해, 다른 장치로 끝납니다. 각 커넥터는 종단 처리되므로 케이블의 종단처리는 자동으로 이루어지며 사용자가 걱정할 필요는 없습니다. 호스트에는 1개 또는 복수의 USB 사진에 내부적으로 접속된 단일 허브가 있습니다. USB마다 존재할 수 있는 루트 허브는 1개뿐입니다.  USB는 시스템의 가동 중에 장치의 동적인 설치와 떼어낼 수 있도록 설계되어 있습니다. 이는 지속해서 버스를 열거하는 과정을 사용하여 달성됩니다. 이 과정은 버스 위에 있는 장치를 항상 점검합니다. 장치가 접속 포인트에 접속되어 있지 않으면 풀다운 저항 때문에 양쪽 데이터 라인이 확실히 접지 전위가 됩니다. 장치가 접속되면 장치 내의 풀어 저항이 1개의 라인을 2.8V의 문턱 값을 넘어 상승시키기 때문에 허브는 장치가 접속된 것을 인식합니다. 허브는 기기가 저속인지 고속인지 늘 통지할 수도 있습니다. 저속 장치는 D-라인을 풀어 해, 고속 장치는 D+ 늘 라이플 합니다. 시스템 소프트웨어는 장치의 존재와 그 통신 속도 늘 확립한 후 장치에 문의하여 요건을 확인하고 장치와 관련된 드라이버를 올릴 수 있습니다. USB 소프트웨어와 카드 및 소켓 서비스 PC 카드 소프트웨어에는 유사점이 있습니다. 3개의 소프트웨어 레벨이 있습니다. 가장 낮은 레벨은, USB 컨트롤러에 직접 인터페이스 하는 호스트 컨트롤러 드라이버 소프트웨어입니다. 이 위에는 PC가 실행하고 있는 운영체제에서 USB 지원을 제공하는 USB 드라이버 소프트웨어가 있습니다. 이 두 층 위에는 각 USB 기능에 필요한 클라이언트 소프트웨어가 있습니다. USED는 클라이언트 소프트웨어 요구를 버스 트랜잭션 레벨로 변환합니다. 예를 들어, 큰 데이터 블록을 필요한 수의 패킷 크기 전송에 전송하는 요구를 중단합니다. 이것들은 HDC 계층에게 건네집니다. HDC는 USB 컨트롤러와 직접 대화하여 트랜잭션 요구를 저수준의 실장에 의존하는 형식으로 변환하고 컨트롤러가 버스 활동을 작성하여 응답합니다. USB의 물리적인 지도는 트리처럼 보일 수 있지만, 논리적으로는 버스는 하나의 허브에 최대 127대의 장치가 연결된 스타로 표시됩니다. 클라이언트 소프트웨어는 장치와 직접 통신합니다. 각 장치에는 원하는 주소가 있으며 경합을 피하고자 구성 중에 USB 시스템 소프트웨어를 통해 할당됩니다. 장치와 클라이언트 소프트웨어 간의 통신은 파이프를 사용하는 것으로 개념화되어 있습니다. 각 파이프는 호스트 상의 소프트웨어와 장치상의 끝 포인트 간의 통신 채널입니다. 각 끝 포인트는 명령어 수신이나 데이터 송신 등 장치의 특정 1가지 목적을 충족하는 장치 일부를 나타냅니다. 풀 빠르기 장치는 최대 16의 끝 포인트를 가질 수 있지만, 저속 장치는 3개 밖에 가질 수 없습니다. 모든 USB 장치는 전원 투입 시에 끝 포인트 0을 후원합니다. 이 끝 포인트는 디폴트 파이프의 표적입니다. 장치 연결이 검출된 후 USED 소프트웨어는 끝 포인트 0을 사용하여 기기를 초기화하고 일반적인 구성을 실행하여 장치에서 제공되는 다른 끝 포인트에 대한 정보를 가져옵니다.끝 포인트는 끝 포인트 번호 및 버스 대역폭, 접근 빈도, 레이던시, 에러 처리 동작의 요건에 따라 특징지을 수 있습니다. 장치의 끝 포인트가 식별 및 구성되면 파이프가 존재하며 클라이언트 소프트웨어가 장치와 통신할 수 있게 됩니다. 파이프는 버스 접근과 대역폭 요구, 전송 종류, 전송 방향, 최대 데이터 급료 로드 크기 등의 특성이 관련되어 있습니다. USB는 4개의 타입의 전송을 정의합니다. 보통 명령어 또는 상태 조작에 사용되는 제어 전송, 호스트로부터의 액션을 요구하기 위해 장치에 의해서 개시되는 인터럽트 전송, 데이터 전송에 사용되는 아이소크로너스 전송은 타임 중대합니다. 이용 가능한 모든 대역폭을 사용할 수 있으나 시간은 중요하지 않은 무더기 짐 전송·모든 전송은 제어정보, 데이터 및 에러 체크 필드를 포함하는 패킷의 형식을 취합니다. 파이프에는 메시지 파이프와 경향 파이프 두 종류도 있습니다. 제어 전송은 메시지 파이프를 사용하여 이루어집니다. 메시지 파이프에서는 각 패킷의 데이터 부분은, USB 시스템 소프트웨어에서 어떠한 의미가 있습니다. 경향 파이프는 인터럽트, 아이소크로너스, 무더기 짐 전송에 사용됩니다. 경향 파이프에서는 패킷 데이터 부분에는 USB에 대한 정의된 의미가 없습니다. 데이터는 클라이언트 소프트웨어와 장치 사이에 전달될 뿐입니다. 버스를 매개로 한 정보전송은 트랜잭션이라고 부릅니다. 호스트 컨트롤러는 액션 실행을 기다리고 있는 트랜잭션 리스트를 언제든지 유지할 수 있습니다. 컨트롤러가 트랜잭션의 타입과 방향, 7bit USB 장치 주소 및 끝 포인트 번호를 기술하는 패킷을 전송하면 트랜잭션이 시작됩니다. 이 패킷은 토큰 패킷이라고 불립니다. 데이터의 소스가 데이터 패킷을 발송합니다. 대부분은 트랜잭션은 데이터가 받아들여졌음을 나타내는 ACB, 데이터가 받아들여지지 않았음을 나타내는 NAB 또는 끝 포인트가 종료되었음을 통지하는 STALL 중 하나인 손 셰이크 패킷을 발송하는 데이터의 수신처에 의해 완료됩니다. 실속 했다. 각 프레임의 나머지 시간 일부 또는 모든 것은 아이소크로너스 장치에 서비스를 제공하는 파이프를 통해 예약할 수 있습니다. 각 파이프에 할당되는 실제 부분은 파이프 세트업 시 사전에 네고시에이트됩니다. 이것에 의해, 밀리 초마다 특정의 양의 데이터를 전송할 수 있습니다. 나머지 대역폭은 다른 유형의 전송에 사용할 수 있습니다. 자기 회복 메커니즘이 메시지전달 프로토콜에 내장되어 잃어버린 패킷이나 비활성 패킷의 타임아웃이 발생합니다. 일부 오류 회복은 하드웨어에 포함되어 있습니다. 호스트 컨트롤러는 에러를 클라이언트 소프트웨어에 보고하기 전에 실패한 트랜잭션을 3회 재시행합니다. 보고된 에러 처리 방법은 클라이언트 소프트웨어의 책임입니다. 인터럽트 및 무더기 짐 데이터 전송은 손 셰이크 패킷으로 종료되고 데이터가 수신된 것을 확인하거나 수신되지 않은 경우는 재발송하도록 요구합니다. 따라서 데이터의 전달에 걸리는 시간이 보증되지 않아도, 이 데이터의 전달은 보증됩니다. 아이소크로너스 데이터에서는 실패한 트랜잭션을 재시행할 수 없습니다. 각 프레임 사이에 파이프에 할당되는 슬롯은 1개뿐이므로 데이터를 재발 송신하면, 후속 데이터 표본의 송신이 지연되어, 데이터 전달의 시간 요소가 혼란합니다. 따라서 핸드쉐이크 패킷은 송신되지 않고, 데이터는 그대로 받아들여질 필요가 있습니다.

Comments