On Figure 1 you see the block diagram of HDMI architecture. A “source” is any device with a HDMI output, while “sink” is any device with a HDMI input.

click to enlarge
Figure 1: HDMI architecture.
Data transmission uses TMDS (Transition Minimized Differential Signaling) protocol, which was created by Silicon Image (who adopts PanelLink as commercial name for this protocol) and is the same standard used by DVI connection.
This standard codes an eight-bit data into a 10-bit signal and transfers them using differential transmission. Read our tutorial How Gigabit Ethernet Works to learn what is differential transmission, also known as cancellation.
Audio and video data are transferred using the three available TMDS data channels.
Video information is transmitted as a series of 24-bit pixels and 10 bits per pixel clock period are transmitted (pixel clock period, Tpixel, is defined as the time necessary to transmit one pixel; it equals to 10 times the bit transmission period, Tbit).
Pixel clock rate can vary from 25 MHz to 165 MHz. Screen formats that use transfer rates below 25 MHz (NTSC 480i standard [480 lines, non-interlaced scanning] uses a 13.5 MHz pixel clock rate) can use a pixel repetition technique to be transmitted.
This means that with HDMI it is possible to transfer up to 165 million pixels per second (using dual-link configuration, which we will be talking about on next page, it is possible to double this rate). This rate tells us what is the maximum resolution that can be transmitted.
For you to understand better what is pixel clock and its importance, consider 720p resolution, which is widely used by HDTV sets. This resolution is in fact of 1280x720. Multiplying 1280 x 720 we have the number of pixels available on the screen. The number you found must be then multiplied by the number of frames per second (a.k.a. refresh rate or vertical frequency) so we can know the number of pixels per second (i.e. transfer rate) of this resolution. Assuming a refresh rate of 60 Hz (720p@60 Hz) we found that we need a link capable of transmitting 55,296,000 pixels per second or 55.3 MHz. Since HDMI standard can transfer up to 165 million of pixels per second, this connection is more than enough for this screen resolution.
If we make the math for the highest resolution available today, 1080p (1920x1080) at 60 MHz, we will see that it needs a 124.4 MHz transfer rate: HDMI can fit this.
So HDMI supports the highest resolutions available today for consumer electronics products and also has a dual-link mode with a 330 MHz transfer rate, supporting even higher resolutions not used commercially yet.
For more information on HDTV resolutions, read our HDTV Tutorial.
Video pixels can be coded under RGB, YCbCr 4:4:4 or YCbCr 4:2:2 formats at 24 bits per pixel.
YCbCr is the digital version of Video Component (analog version of Video Component, which is the most used one, is called YPbPr). These standards are also known as YUV. “Y” standards for luminance (or simply “luma”, which is the image without color information, i.e. black-and-white image), Cb is the difference between blue and luminance (B-Y) and Cr is the difference between red and luminance (R-Y). The three numbers represent the sample rate used to code Y, Cb and Cr signals, respectively. “4” means a 13.5 MHz rate, which is the sample rate used by NTSC, PAL and Secam systems. 4:4:4 standard means that all signals are being transmitted at the same rate. 4:2:2 means that Y signal is being transmitted at 13.5 MHz but Cb and Cr are being transmitted at 6.75 MHz. Obviously this mode offers a worse video quality, although being widely used.
Audio can be from two to eight channels, using sample rates up to 192 KHz.
DDC (Display Data Channel) channel is used to inform the transmitting device about the receiving device configuration and capabilities. This is done by reading the E-EDID (Enhanced Extended Display Identification Data) data from the receiving device.
CEC (Consumer Electronics Control) channel is optional and allows the control of several audiovisual devices that the user might have.