본문 바로가기

먹고살기/-- HDMI

HDMI E-EDID Block 0

0x00 ~ 0x07 : header
 00 ff ff ff ff ff ff 00 
 
0x08 ~ 0x11 : vendor/product Id
 xx xx 48 36 01 00 00 10 30 0f
 - 0x08,0x09 :manufacture ID로 Microsoft에 의해 할당.  

 - 0x0a,0x0b: Model ID

 - 0x0c~0x0f : serial number
 - 0x10 : week

 - 0x11 : year , 1990 + x = year    

  ** Manufacturer ID

  hex   0x4a         0x8c
  bin   0100 1010    1000 1100

  LSB부터 5bit씩 구분 하면
      0 10010 10100 01100
        0x12   0x14  0x0c
이값에  0x40을 더하면
       0x52 0x54  0x4c ==> ascii로 "RTL"

0x12 ~ 0x13 : version,revison
    01 03
    
0x14 ~ 0x18 : Basic display Parameters/Feature
 ver1.3 에서 0x14 의 bit7이 1일때는 bit6~0은 E-EDID standard정의에 따른다.
 0x18의 bit 1이 1이면 첫번째 DTD가 Preferred timing임을 의미.
 
    80 38 20 78 2a
    
0x19 ~ 0x22 : color 특성.
 7c 11 9e 59 47 9b 27 10 50 54
 
0x23 ~ 0x25 : Established Timings,VGA 일때만 enbale 
 00 00 00
 
0x26 ~ 0x35 : Standard Timing Identification,사용하지 않는다.
   사용하지 않는 byte는 00 으로 채우지 말것
 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01 01
 
0x36 ~ 0x0x7d : Detailed Timing Descriptor,1080i60(In this case),480p60

 0xff,0xfc,0xfd등의 ASCII를 포함하는 discriptor는 13 문자보다 작을때는
 string의 끝에 line feed(0x0a)를 붙여야하고 나머지는 space(0x20)으로 채운다.

    DTD #1 : (0x36 ~ 0x47) Preferred/Native Mode
 01 1d 80 18 71 1c 16 20 58 2c 25 00 c4 8e 21 00 00 9e : 30 3b --> c4 8e

 DTD #2 : (0x48 ~ 0x59) First CEA Mode
 8c 0a d0 8a 20 e0 2d 10 10 3e 96 00 13 8e 21 00 00 18 : a4 3b 11 --> 13 8e 21
 
 DTD #3 : (0x5a ~ 0x6b) Monitor Name ,0xfc는 ASCII stiring discriptor
 00 00 00 fc 00 52 53 58 31 30 35 38 0x0a 20 20 20 20 20 : 0x20 --> 0x0a
 
 DTD #4 : (0x6c ~ 0x7d) Monitor Range Limit,0xfd는 range limit discriptor
 00 00 00 fd 00 3b 3d 0f 2e 08 00 0a 20 20 20 20 20 20
 

0x7e : Extension Flag,이값이 1이라는것은 128 byte 의 EDID extension이 있다는 의미.
 01
0x7f : checksum SUM[0:127] = 0x00
 60

 

 

EDID 1.1 출처:http://en.wikipedia.org/wiki/Extended_display_identification_data

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 centimeters).
  22: Maximum Vertical Image Size (in centimetres).
  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: 720×400@70 Hz, 720×400@88 Hz, 640×480@60 Hz, 640×480@67 Hz,
           640×480@72 Hz, 640×480@75 Hz, 800×600@56 Hz, 800×600@60 Hz
36: ESTABLISHED TIMING II
  bit 7-0: 800×600@72 Hz, 800×600@75 Hz, 832×624@75 Hz, 1024×768@87 Hz (Interlaced),
           1024×768@60 Hz, 1024×768@70 Hz, 1024×768@75 Hz, 1280×1024@75 Hz
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 frequency.  Adds 60 to get actual value.
54–71: Descriptor Block 1
  54–55: Pixel Clock (in 10 kHz) or 0
  If Pixel Clock is non null:
    56: Horizontal Active (in pixels)
    57: Horizontal Blanking (in pixels)
    58: Horizontal Active high (4 upper bits)
        Horizontal Blanking high (4 lower bits)
    59: Vertical Active (in pixels)
    60: Vertical Blanking (in vertical pixels/lines)
    61: high significant bits for Vertical Active (4 upper bits)
        high significant bits for Vertical Blanking (4 lower bits)
    62: Horizontal Sync Offset (in pixels)
    63: Horizontal Sync Pulse Width (in pixels)
    64: Vertical Sync Offset (in lines) (4 upper bits)
        Vertical Sync Pulse Width (in lines) (4 lower bits)
    65: high significant bits for Horizontal Sync Offset (bit 7-6)
        high significant bits for Horizontal Sync Pulse Width (bit 5-4)
        high significant bits for Vertical Sync Offset (bit 3-2)
        high significant bits for Vertical Sync Pulse Width (bit 1-0)
    66: Horizontal Image Size (in mm)
    67: Vertical Image Size (in mm)
    68: high significant bits for Horizontal Image Size (4 upper bits)
        high significant bits for Vertical Image Size (4 lower bits)
    69: Horizontal Border
    70: Vertical Border
    71: Interlaced or not (bit 7)
        Stereo or not (bit 6-5) ("00" means not)
        Separate Sync or not (bit 4-3)
        Horizontal Sync positive or not (bit 2)
        Vertical Sync positive or not (bit 1)
        Stereo Mode (bit 0) (unused if 6-5 are 00)
  If Pixel Clock is null:
    56: 0
    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 frequency, Max Vertical frequency, 
          Min Horizontal frequency (in kHz), Max Horizontal frequency (in kHz), pixel clock (in MHz (multiply by 10 for actual value))
        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.

'먹고살기 > -- HDMI' 카테고리의 다른 글

hdmi depth  (0) 2007.10.05
HDMI E-EDID Block 1  (0) 2007.10.05
기기간 HDCP 초기화  (0) 2007.10.05
Hot Plug Detect와 EDID  (0) 2007.10.05
해상도에 따른 audio전송 가능 sampling rate 그리고 pixel replication  (0) 2007.10.05