Apr 16, 2024
DisplayPort: Altmode 탭하기
실제로 DisplayPort의 가장 현대적인 구현은 "USB-C를 통한 비디오"와 동의어인 USB-C DisplayPort 대체 모드이며, 건너뛰면 놓칠 수 있습니다. 덧붙여서, 우리의 지난 두 기사
실제로 DisplayPort의 가장 현대적인 구현은 "USB-C를 통한 비디오"와 동의어인 USB-C DisplayPort 대체 모드이며, 건너뛰면 놓칠 수 있습니다. 덧붙여서, USB-PD에 대한 지난 두 기사는 몇몇 사람들에게 멋진 새 장난감을 제공했습니다. 사람들은 기사에 댓글을 달고 디버깅 도움을 위해 나에게 연락했으며 심지어 사람들이 FUSB302B를 USB-PD에 구축하는 것을 보았습니다. 그들의 프로젝트! 그 성과에 힘입어 더 나아가 USB-C 기능을 하나 더 정복해 보겠습니다. 이 기능은 해킹할 자격이 있음에도 불구하고 아직 공개적으로 사용할 수 없습니다.
오랜 독자들에게는 해커가 일상적인 기능을 거부하는 것을 보는 것이 놀라운 일이 아닙니다. 이제 우리 모두는 많은 노트북과 전화기에서 USB-C 포트를 통해 DisplayPort 연결을 얻을 수 있다는 것을 알고 있습니다. USB-C 사양이 공개적으로 사용 가능하고 이전에 해당 사양을 사용하여 PD 싱크를 구현했다는 점을 고려하면 DisplayPort도 마찬가지로 쉽게 수행할 수 있을 것으로 예상할 수 있습니다. 그러나 DisplayPort altmode 사양은 VESA 멤버십 페이월 뒤에 있으며 가격이 비쌉니다. 이러한 관행은 널리 비판을 받아 표준 조직으로서의 목적에 어긋나고 일부 표준이 실패하는 결과를 가져왔습니다.
하지만 걱정하지 마세요. DisplayPort 대체 모드에 대한 높은 수준의 개요와 일부 세부 정보를 제공하는 다양한 PDF를 쉽게 찾을 수 있습니다. 여기에 제가 가장 좋아하는 것이 있습니다! 또한 FUSB302 칩이 연결된 MicroPython을 실행하는 장치와 분해할 수 있는 몇 가지 DisplayPort 대체 모드 장치가 있습니다. 이것은 우리가 오픈 소스 DisplayPort altmode 라이브러리를 리버스 엔지니어링하는 데 충분하고도 남습니다!
USB-C 포트에는 4개의 고속 쌍과 1개의 보조 저속 쌍(SBU)이 있습니다. 이는 최대 4개의 고속 데이터 전송 쌍과 1개의 AUX 구성 채널을 통해 DisplayPort 요구 사항에 아름답게 매핑됩니다. 한 가지 작은 단점은 HPD 신호용 핀이 없다는 것입니다. 대신 해당 상태는 PD 채널을 통해 DisplayPort altmode 메시지 내부로 전달됩니다. 결과적으로 장치를 DisplayPort 지원 USB-C에 연결하고 PD를 통해 몇 가지 마법의 단어를 쓰고 USB-C TX/RX 핀에서 DisplayPort 신호를 얻을 수 있습니다! DisplayPort 내부를 자세히 살펴볼 필요가 없습니다. 가장 필요한 것은 HPD를 PD 메시지로 전달하는 것입니다. 장치가 USB-C 소켓을 사용하는 경우 USB-C 케이블이 연결된 방식에 따라 신호를 뒤집는 저렴한 멀티플렉서를 사용하세요.
DisplayPort 외에도 오래된 USB2 핀에 USB 2.0도 제공되므로 모니터 옆에 키보드와 마우스를 연결하는 데 적합합니다. 그러나 이것이 추출할 수 있는 전부는 아닙니다. 2레인 DisplayPort에 만족한다면 업스트림 장치에 한 쌍의 핀에 2개의 DisplayPort 레인을 제공하고 다른 핀에는 USB3 포트를 제공하도록 요청할 수 있습니다! 이는 대부분의 저렴한 USB-C 도크가 작동하는 방식입니다. VGA 또는 HDMI에 사용되는 DisplayPort 레인 2개, 고속 포트 또는 몇 가지 주변 장치용 USB3, 기타 여러 가지 용도로 사용되는 USB2를 사용하여 전력을 처리합니다. 측면에서 입력합니다.
ST에서 가져온 PDF를 보면 DisplayPort 장치를 구축하려는 경우 응답해야 하는 7가지 종류의 PD 메시지가 있습니다. 13페이지의 다이어그램에 모두 표시되어 있습니다. "USB-C에 관한 모든 것: 저수준 PD 응답" 기사에서 우리는 두 가지 유형의 메시지, 즉 USB-C PSU 전원 프로필 광고인 Source_Capability와 우리가 얻기 위해 제작한 요청 메시지를 배웠습니다. 해당 전원 프로필 중 하나를 사용하면 USB-C 포트에서 더 높은 전압을 얻을 수 있습니다. 2시부터 7시까지 – 이것은 우리의 손이 닿는 범위 내에 있습니다!
이를 리버스 엔지니어링하려면 최소한 무엇을 해야 합니까? PDF에는 그 자체로 충분한 정보가 포함되어 있는 것 같습니다. 통신 흐름, 다양한 명령 코드 및 내용이 거기에 설명되어 있습니다. 그러나 참조할 패킷 캡처가 있으면 훨씬 더 편안할 것입니다!
USB-C 통신 스니핑은 아직 탐구되지 않은 분야입니다. 특히 고속 신호가 관련된 경우에는 더욱 그렇습니다. 이를 위해서는 CC 핀을 탭할 수 있게 하면서 신호 무결성을 유지하는 인터포저 보드가 필요합니다. USB-C 스니핑을 위한 상용 도구의 경우 많은 사람들이 USB-C를 이해하지 못한다는 사실을 고려하여 대부분 가격이 책정된 것 같습니다. 그러나 이를 해결할 수 있는 방법은 분명 있습니다. 첫 번째 PD 강연 기사의 댓글 섹션에서 [WF]는 sigrok 및 펄스뷰! 우리는 단순히 냄새를 맡는 것이 아니라 DisplayPort altmode와 통신할 수 있는 장치를 만들고 있습니다. 하지만 이 기사를 따라하면서 장치를 활용하고 싶다면 이것으로 충분합니다.