Sei sulla pagina 1di 15

HDMI High-Definition Multimedia Interface

Mythri P K September 2010

Introduction
HDMI is a compact audio/video interface for transmitting digital data.

HDMI communication channels


HDMI has three physically separate communication channels, which are the DDC, TMDS, and the optional CEC
The HDMI cable and connectors carry four differential pairs that make up the TMDS data and clock channels.
Audio, video and auxiliary data is transmitted across the three TMDS data channels. A TMDS clock, typically running at the video pixel rate, is transmitted on the TMDS clock channel

HDMI communication channels contd..


HDMI carries a VESA DDC channel. The DDC is used for configuration and status exchange between a single transmitter and a single receiver.
The DDC is used by the transmitter to read the receivers Enhanced Extended Display Identification Data (E-EDID) in order to discover the receivers configuration and capabilities.

The optional CEC protocol provides high-level control functions between all of the various audiovisual products in a users environment.

HDMI connector
There are 3 Types of HDMI connector, Type A , B and C. All three connectors carry all required HDMI signals, including a TMDS link. The Type B connector is slightly larger and carries a second TMDS link, which is necessary to support very high resolution displays using dual link. The Type C connector carries the same signals as the Type A but is more compact and intended for mobile applications. The HDMI connector provides a pin allowing the transmitter to supply +5.0 Volts to the cable and receiver. All HDMI transmitters shall assert the +5V Power signal whenever the transmitter is using the DDC or TMDS signals

HDMI Link
The HDMI link operates in one of three modes: Video Data Period - the active pixels of an active video line are transmitted Data Island period - audio and auxiliary data are transmitted using a series of packets.
This auxiliary data includes InfoFrames and other data describing the active audio or video stream or describing the transmitter.

Control period- It is used when no video, audio, or auxiliary data needs to be transmitted. It is required between any two periods that are not control periods.

Video Data on HDMI


Video data can have a pixel size of 24, 30, 36 or 48 bits. Color depths greater than 24 bits are defined to be Deep Color modes. Video at the default 24-bit color depth is carried at a TMDS clock rate equal to the pixel clock rate. Video Pixels Video Data Coding is such that the 8 bits converted to 10 bits by HDMI transmitter. The video pixels can be encoded in either RGB, YCBCR 4:4:4 or YCBCR 4:2:2 formats. Deep Color modes are optional though if an HDMI transmitter or receiver supports any Deep Color mode*, it shall support 36-bit mode.

AVI Infoframe
An InfoFrame packet carries one InfoFrame. The InfoFrame provided by HDMI is limited to 30 bytes plus a checksum byte. HDMI transmitter shall always transmit an AVI InfoFrame at least once per two video fields if the transmitter supports. The AVI InfoFrame shall be transmitted even while such a transmitter is transmitting RGB and non pixel-repeated video. For AVI infoframe format refer : Section 8.2 in HDMI 1.3 specification

EDID Extended display identification data


HDMI transmitter shall read the EDID and first CEA Extension to determine the capabilities supported by the receiver. HDMI transmitter shall check the E-EDID for the presence of an HDMI Vendor Specific Data Block within the first CEA Extension to determine whether it is an HDMI/DVI device. All the receiver supports 640 * 480P video format by default. For detailed information on EDID format refer to http://en.wikipedia.org/wiki/Extended_display_identificati on_data

Hot-Plug detect
An HDMI receiver shall assert high voltage level on its Hot Plug Detect pin when the E-EDID is available for reading. HDMI receiver shall indicate any change to the contents of the E-EDID by driving a low voltage level pulse on the Hot Plug Detect pin.

Code flow in OMAP4


hdmi_init It is called during bootup during the DSS probe along with other blocks like dispc, dsi , dpi etc. This registers the HDMI driver to DSS and registers HDMI IRQ handler.

hdmi_exit
Called from omapdss_remove , it will free IRQ handler.

Call flow when


echo 1 > sys/devices/platform/omapdss/display*/enabled Is called

hdmi_enable_display
Does the GPIO configuration for DDC and hot-plug detect level shifter (GPIO60 and 41). Enabled dss clk -> hdmi_enable_clocks Reads EDID by calling hdmi_read_edid to determine the timing supported by TV. See http://omappedia.org/wiki/RFCs RFC for autodetect for more information/ Computes PLL based on the timing that is selected after reading EDID. Configures the HDMI PLL and PHY blocks hdmi_pll_program and hdmi_phy_init Configures the video and auxillary infoframe inforamtion based on the EDID by calling hdmi_lib_enable. Configures the dispc(display controller) gamma table and HDMI switch.

Call flow when


echo 0 > sys/devices/platform/omapdss/display*/enabled Is called

hdmi_disable_display
Disabled the dss_clk requested by HDMI. Hdmi_enable_clocks(0). Sets the power state of the HDMI PLL block to ALL_OFF HDMI_W1_SetWaitPllPwrState Set the PHY block to off hdmi_phy_off GPIO configurations are pulled down.

References
TI OMAP4 TRM http://focus.ti.com/general/docs/wtbu/wtbudocumentcent er.tsp?templateId=6123&navigationId=12667 HDMI 1.3 specification http://www.hdmi.org/learningcenter/faq.aspx EDID information http://en.wikipedia.org/wiki/Extended_display_identificati on_data http://www.hdmi.org/learningcenter/presentations.aspx (Implementing EDID that works) Connector http://pinouts.ru/Video/hdmi_pinout.shtml

Potrebbero piacerti anche