The task at hand this week is to design an HDMI transmitter. I gotta admit it this is the most interesting project yet.
HDMI is this cable that you connect between your computer and HD Display and magically high quality audio and video appears on that display. Of course it’s not only the cable but the whole system that takes audio and video data from your output device and delivers it to your display on time and without the need for any compression.
I find the design of the HDMI quite elegant. Following it’s story since it was first introduced in 2002 it has been met with nothing but success. Nowadays the latest version of HDMI allows for a transfer as fast as 10.2 GB/S which is double the bandwidth needed for transferring a 1080p video and can even cater for Digital cinema 4K quality video.
When learning about HDMI you find yourself bombarded with numerous terms from all sorts of disciplines which you never heard before, Some of these terms that you’ll come across are related to multimedia picture quality which won’t help with designing a HDMI device but still it’s fun to learn as general knowledge. You should know what is color gamut and bit depth, display resolution and video frame rate and lastly have an idea about how videos are displayed.
HDMI uses the TMDS protocol and specifications for transmission. This website gives a very simple overview about TMDS. Finally here is the crown jewel: The HDMI specifications document. This document is your best friend when working with HDMI.
From time to time you might find it useful to refer to silicon image’s, TMDS developing company, white paper about TMDS or the chapters about TMDS in the specifications of the DVI, another multimedia transmission protocol that was introduced before HDMI. Basically HDMI and DVI use the TMDS protocol exactly the same except that the HDMI adds in the audio data along the transmission while DVI uses it only for transmitting video only.
As for my design you can read about it next week but if you are too anxious feel free to check this lab that uses the HDMI and DVI protocol for demonstration purposes on Xilinx spartan-6 FPGA and here is it’s material