Extended display identification data
|
Extended display identification data (EDID) is a data structure provided by a computer display to describe its capabilities to a graphics card. It is what enables a modern personal computer to know what kind of monitor is connected. EDID is defined by a standard published by the Video Electronics Standards Association (VESA). The EDID includes manufacturer name, product type, phosphor or filter type, timings supported by the display, display size, luminance data and (for digital displays only) pixel mapping data.
EDID structure 1.0 was defined in 1994; version 1.1 followed in 1996, then 1.2, and 1.3 in 2000. All these define upwards compatible 128 byte structures. EDID structure 2.0 defines a new 256-byte structure.
The channel for transmitting the EDID from the display to the graphics card is usually the I²C bus. The combination of EDID and I²C is called the display data channel version 2, or DDC2. The 2 distinguishes it from VESA's original DDC, which used a different serial format.
Before DDC and EDID were defined, there was no standard way for a graphics card to know what kind of display device it was connected to. Some VGA connectors in personal computers provided a basic form of identification by connecting one, two or three pins to ground, but this coding was not standardized.
The EDID is often stored in the monitor in a memory device called a serial PROM (programmable read-only memory) or EEPROM (electrically erasable PROM) that is compatible with the I²C bus.
EDID 1.1 data format
Byte sequence 00-07: Header information 08-17: Complete serial number 08-09: Manufacturer ID 10-11: Product ID Code (little endian) 12-15: Serial Number (little endian) 16: Week of Manufacture 17: Year of Manufacture. Add 1990 to the value for actual year. 18: EDID Version Number 19: EDID Revision Number 20-24: Basic Display Parameters 20: VIDEO INPUT DEFINITION bit 7: 0=analog, 1=digital if bit 7 is digital: bit 0: 1=DFP 1.x compatible if bit 7 is analog: bit 6-5: video level 00=0.7, 0.3, 01=0.714, 0.286, 10=1, .4 11=0.7, 0 bit 4: blank-to-black setup bit 3: separate syncs bit 2: composite sync bit 1: sync on green bit 0: serration vsync 21: Maximum Horizontal Image Size (in millimetre). Multiply by 10 for actual value. 22: Maximum Vertical Image Size (in millimetre). Multiply by 10 for actual value. 23: Display Gamma. Divide by 100, then add 1 for actual value. 24: Power Management and Supported Feature(s): bit 7: standby bit 6: suspend bit 5: active-off/low power bit 4-3: display type. 00=monochrome, 01=RGB colour, 10=non RGB multicolour, 11=undefined bit 2: standard colour space bit 1: preferred timing mode bit 0: default GTF supported 25-34: CHROMA INFO 25: low significant bits for Red X (bit 7-6), Red Y (bit 5-4), Green X (bit 3-2), Green Y (bit 1-0). 26: low significant bits for Blue X (bit 7-6), Blue Y (bit 5-4), White X (bit 3-2), White Y (bit 1-0). 27-34: high significant bits for Red X, Red Y, Green X, Green Y, Blue X, Blue Y, White X, White Y. To decode actual value, rearrange bits as follows: High significant bits 7-0 for (channel), low significant bits for (channel). Actual value is between 0.000 and 0.999, but encoded value is between 000h and 3FFh. 35: ESTABLISHED TIMING I bit 7-0: 720x400@70Hz, 720x400@88Hz, 640x480@60Hz, 640x480@67Hz, 640x480@72Hz, 640x480@75Hz, 800x600@56Hz, 800x600@60Hz 36: ESTABLISHED TIMING II bit 7-0: 800x600@72Hz, 800x600@5Hz, 832x624@75Hz, 1024x768@87Hz(Interlaced), 1024x768@60Hz, 1024x768@70Hz, 1024x768@75Hz, 1280x1024@75Hz 37: Manufacturer's Reserved Timing 38-53: Standard Timing Identification. 2 bytes for each record. First byte Horizontal resolution. Multiply by 8, then add 248 for actual value. Second byte bit 7-6: Aspect ratio. Actual vertical resolution depends on horizontal resolution. 00=16:10, 01=4:3, 10=5:4, 11=16:9 bit 5-0: Vertical frequeny. Adds 60 to get actual value. 54-71: Descriptor Block 1 54-55: Unknown 56: Unknown 57: Block type FFh=Monitor Serial Number, FEh=ASCII string, FDh=Monitor Range Limits, FCh=Monitor name, FBh=Colour Point Data, FAh, Standard Timing Data, F9h=Currently undefined, F8h=defined by manufacturer 58: Unknown 59-71: Descriptor block contents. If block type is FFh, FEh, or FCh, the entire area is a text string. If block type is FDh: 59-63: Min Vertical freqency, Max Vertical freqency, Min Horizontal freqency (in kHz), Max Horizontal freqency (in kHz), pixel clock (in MHz) 64-65: Secondary GTF toggle If encoded value is 000A, bytes 59-63 are used. If encoded value is 0200, bytes 67-71 are used. 66: Start horizontal frequency (in kHz). Multiply by 2 for actual value. 67: C. Divide by 2 for actual value. 68-69: M (little endian). 70: K 71: J. Divide by 2 for actual value. If block type is FBh: 59: W Index 0. If set to 0, bytes 60-63 are not used. If set to 1, 61-63 are assigned to white point index #1 64: W Index 1. If set to 0, bytes 65-68 are not used. If set to 2, 65-68 are assigned to white point index #2 White point index structure: First byte bit 3-2: low significant bits for White X (bit 3-2), White Y (bit 1-0) Second to third byte: high significant bits for White X, White Y. Fourth byte: Gamma. Divide by 100, then add 1 for actual value. To decode White X and White Y, see bytes 25-34. If block type is FAh: 59-70: Standard Timing Identification. 2 bytes for each record. For structure details, see bytes 38-53. 72-89: Descriptor Block 2 90-107: Descriptor Block 3 108-125: Descriptor Block 4 126: Extension EDID Block(s). In EDID 1.1, it is ignored, and should be set to 0. 127: Checksum.
For example, here is a summary of the data reported by an Envision EN-775e monitor:
Monitor Name EPI EnVision EN-775e Monitor ID EPID775 Model EN-775e Manufacture Date Week 26 / 2002 Serial Number 1226764172 Max. Visible Display Size 32 cm x 24 cm (15.7") Picture Aspect Ratio 4:3 Horizontal Frequency 30 - 72 kHz Vertical Frequency 50 - 160 Hz Maximum Resolution 1280 x 1024 Gamma 2.20 DPMS Mode Support Active-Off Supported Video Modes: 640 x 480 140 Hz 800 x 600 110 Hz 1024 x 768 85 Hz 1152 x 864 75 Hz 1280 x 1024 65 Hz Monitor Manufacturer: Company Name Envision, Inc.