HDMI란?
HDMI(High Definition Multimedia Interface)는 2002년에 처음 발표된 음성 신호 전송까지 포함된 디스플레이 인터페이스 커넥터 표준 규격입니다. 영상 신호뿐만 아니라 음성 신호까지 전송되어 케이블을 줄일 수 있는 점이 장점입니다.
TMDS
3개의 line을 통해 R, G, B 세 가지 원색을 전송하고, HV 신호는 B 신호통로에서 전송되며 R, G 신호통로에 음성 신호가 전송
DDC
Display Data Channel, 디스플레이 데이터 통로로, 장치의 송출 사양 신호와 데이터 격식 신호를 받는 용도로 사용되며, 장치의 이런 E-EDID(Enhanced Extended Display Identification Data, 호환성 식별 데이터) 정보가 전송
CEC
Consumer Electronics Control, 전자제어통로로, HDMI CEC Network상의 상호작용을 통제
HPD
Hot Plug Detect, 해당 신호가 오지 않으면 DDC 신호를 하단으로 전송하지 않도록 함
HDMI 핀 정보
- 1-9는 TMDS 데이터 전송에 사용되는 핀이며 세 그룹이 있습니다.
- 10~12번은 TMDS 클럭 전송에 사용되는 핀으로 한 세트로 존재합니다. TMDS 클록은 픽셀 클록입니다.
- 13은 소비자 가전 호환 전송 프로토콜인 CEC 핀입니다.
- 14는 예약된 핀입니다.
- 15,16은 DDC의 핀이고 DDC는 I2C 프로토콜 전송을 기반으로 하므로 핀은 SCL 및 SDA입니다.
- 17은 접지입니다.
- 18은 +5V 전원입니다.
- 19는 연결을 설정하는 데 사용되는 HPD 핀입니다.
HDMI 종류
HDMI Standard(Type-A)는 PC와 모니터 사이의 연결, TV 에서 사용되고 있습니다.
mini HDMI(Type-C)는 소형화된 카메라, 캠코더 종류 또는 작은 모니터 등에서 사용되고 있습니다.
Micro HDMI(Type-D)는 예전에 휴대폰 등에서 탑재되는 경우도 있었으나 최근 거의 사라졌습니다.
TMDS
고속 직렬 데이터 전송 기술인 TDMS(Transition Minimized Differential Signaling)는 DVI 및 HDMI 비디오 인터페이스와 기타 디지털 통신 인터페이스에서 사용됩니다.
비디오 데이터를 전송하고 HDMI에서 사용할 때 3개의 TMDS 트위스트 페어(케이블)를 사용하여 비디오 데이터를 전송합니다. 세 개의 링크 각각은 서로 다른 RGB 구성 요소에 해당합니다.
HTMI는 DVI의 TMDS 비디오 기능을 포함하며 디지털 오디오 및 제어 정보를 운반하도록TMDS를 확장합니다.
DDC
HDMI의 DDC 신호는 EDID 정보를 하위 장치에서 상위 장치로 제공합니다. EDID는 VESA의 EDID 규칙을 따릅니다. HDMI에서 출력 가능한 모든 기능 및 호환성 정보를 묘사합니다. 소스 장치와 싱크 장치가 커뮤니케이션 하는데 사용되는 프로토콜입니다.
DCC는 I2C 규격을 따르고, EDID는 칩의 ROM에 저장되어 있습니다.
HDMI ROM의 I2C Address는 항상 0xA0가 됩니다. 회로설계 중 DDC포트에는 저항 연결이 필요합니다. 저항은 최소 1.3K가 되어야 합니다.
CEC
CEC는 단선 양방향 통신 기술 입니다. 전자기기들은 연결된 HDMI 장치의 One Touch Play, System Standby와 같은 신호 통제에 사용됩니다.
VCD를 재생할 때, TV는 CEC 신호에 의해 재생을 시작하게 됩니다. 신호가 통과된 이후에는 플레이어 연결부의 통로에 의해 화면이 전환됩니다. TV의 전원을 끄면 CEC 신호가 HDMI 연결을 Standby로 진입하도록 합니다. 그러므로 HDMI의 단일 리모컨과 같이 작동합니다.
CEC는 통신 협약 버스로, 물리주소가 연결된 모든 HDMI Process의 물리 주소를 분배하고, DDC 신호를 해당 물리주소로 전송합니다.
만일 신호가 high를 유지한 후 low로 내려오지 않는다면, 신호 데이터가 들어오지 않았다는 것을 의미합니다.
HPD
모니터나 기타 디스플레이 장치에 접속이 되었는지를 감지하기 위해 달아 놓습니다. 즉, 디스플레이 장치를 소스 장치에 Hot Plugging 하는 것은 디바이스들이 둘다 전원이 on 되어있음을 의미합니다.
이는 예전 기술에서 많이 요구하였던, 하나 혹은 두 장치 모두 전원이 꺼져 있어야 하는 "cold-plugged" 기술과 차이가 있습니다.
HPD는 HDMI, DP, DVI 스펙들의 기능이며, 보통은 접촉하는 커넥터의 single pin으로 이루어집니다.
이 Pin의 동작은 수신부가 출력을 내고 송신부가 수신하는 형태로 동작을 합니다. 그러나 수신 측의 HPD은 송신측 +5v 출력에 pullup 되어 있어 송신 측에서도 영향을 받습니다. 그래서 규격에는 송신 측에서 +2v 이상이면 인식을 해야 한다고 나와 있습니다.
위의 그림에서 볼 수 있듯이 HDMI는 다음 네 가지 유형의 데이터를 전송합니다.
그림의 프리앰블 제어 정보인 CTLx는 데이터 아일랜드 또는 비디오 데이터가 나중에 전송될지 여부를 나타내는 데 사용될 수 있습니다. D[1:0] 채널 1과 2를 통해 전송되며 4bit를 차지합니다.
HSYNC, VSYNC 채널0을 이용합니다. D[1:0] 전송에는 2비트가 소요됩니다.
데이터 아일랜드(Data Island)는 오디오 데이터 및 다양한 보조 데이터 입니다.
D[3:0] 3개 채널을 통해 전송되며 12bit를 차지합니다.
비디오 데이터, RGB 형식의 이미지가 다이어그램으로 전송됩니다. D[7:0] R, G, B는 각각 채널 2, 1, 0을 통해 전송되며 각 색상은 8bit 이고, 총 24bit를 차지합니다.
Source의 각 색상 8bit 데이터는 TMDS encoder를 거쳐 10bit 데이터를 얻은 후, Serializer를 거쳐 직렬로 출력됩니다. Sink에서는 10비트 데이터가 먼저 복원된 후 TMDS decoder를 통해 8비트 소스 데이터를 얻습니다.
또한 HDMI 비디오는 스트림 전송이므로 패킷 전송을 포함하지 않습니다.
Control Period 동안 CTLx와 HSYNC, SYNC가 전송됩니다.
프리앰블 정보 조합에는 다음 두가지 유형 Video Data Period에 대한 CTL0:3=1000과, Data Island Period에 대한 CTL0:3=1010가 있습니다. HSYNC, VSYNC도 이때 변경될 수 있습니다.
Data Island Period와 Control Period는 모두 블랭킹된 영역에서 수행됩니다.
Control Period, Data Island Period, Video Data Period 3가지 전송 단계의 전환 프로세스는 위의 그림과 같습니다.
Data Island Period는 패킷 형태로 전송되며, 오디오 및 비디오 정보 설명에 사용되는 정보 프레임 및 기타 데이터를 포함하는 오디오 데이터 및 보조 데이터를 전송합니다.
Data Island Period는 길이가 2개의 문자로 구성된 선행 가드 밴드로 시작되며, 너비가 2개의 문자인 트레일링 가드 밴드로 끝납니다. 가드 밴드는 다음과 같습니다.
ch0: q_out[9:0] = n.a
ch1: q_out[9:0] = 0b0100110011
ch2: q_out[9:0] = 0b0100110011
영상 데이터 기간 동안 유효한 영상 데이터가 전송됩니다.
Video Data Period는 길이가 2개의 문자(픽셀)로 구성된 선행 가드 밴드로 시작되며, 가드 밴드는 다음과 같습니다.
ch0: q_out[9:0] = 0b1011001100
ch1: q_out[9:0] = 0b0100110011
ch2: q_out[9:0] = 0b1011001100
각 데이터 스트림 섹션 앞에는 가드 밴드와 프리앰블이 있습니다. 가드 밴드와 프리앰블을 통해 수신된 데이터 스트림과 정확한 동기화가 가능합니다.
위의 그림은 Clock당 1, 2픽셀로 비디오 데이터, 비디오 데이터 활성화, 비디오 H-SYNC, 비디오 V-SYNC의 배열을 보여줍니다.
RGB4:4:4, YCbCr4:4, YCbCr4:2:2의 세 가지 픽셀 인코딩이 지원됩니다.
비디오 형식 CEA-861-D 형식 외에도 더욱 다양한 특수 형식이 지원됩니다.
색 심도는 픽셀당 24, 30, 36 및 48비트를 지원할 수 있습니다.
아래는 각각 24bit/pixel RGB444, YCbCr422, YCbCr444의 픽셀 인코딩 다이어그램입니다.
RGB444는 색상당 8비트를 사용합니다.
사람의 눈은 색보다 휘도에 영향을 많이 받습니다. 따라서 Y는 휘도에 해당되고 Cb,Cr은 색에 해당됩니다.
YCbCr422에서 Y는 12비트를 사용하고, Cb와 Cr 12비트를 사용합니다. YCbCr444에서 Y,Cb 및 Cr은 모두 8비트를 사용합니다.
HDMI 버전에 따른 사양
'Embedded SW 기초' 카테고리의 다른 글
MCU - 상태 레지스터 (0) | 2024.06.30 |
---|---|
MCU - 마이크로컨트롤러 (0) | 2024.06.30 |
네트워크 인터페이스 명 변경 방법 (0) | 2024.06.25 |
Makefile (0) | 2024.06.25 |
WiFi (0) | 2024.06.17 |