EDID的简介和解析

from:EDID的简介和解析 - 花生红枣眼泪和小米 - 博客园

去年对EDID做了一个解析,下面是学习EDID过程中整理的资料。

一、EDID简介

EDID: Extended Display Identification Data (外部显示设备标识数据)----指DDC通讯中传输的显示设备数据。

Q1:EDID是什么?

A1:EDID的全称是Extended Display Identification Data(扩展显示标识数据),VGA、DVI的EDID由主块128字节组成,HDMI的EDID增加扩展块(128字节),扩展块的内容主要是和音频属性相关的,DVI和VGA没有音频,HDMI自带音频,扩展块数据规范按照CEA-861x标准定义,未来可能增加到512或256的整数倍。

其中包含有关显示器及其性能的参数,包括供应商信息、最大图像大小、颜色设置、厂商预设置、频率范围的限制以及显示器名和序列号的字符串等等。形象地说,EDID就是显示器的身份证、户口本、技能证书等证件的集合,目的就是告诉别人我是谁,我从哪来,我能干什么。

Q2:为什么要使用EDID?

A2:为了能让PC或其他的图像输出设备更好的识别显示器属性

EDID并非古而有之,在古老的CRT时期是没有EDID这个概念的,那为什么后来会有呢?因为随着显示设备的发展,显示器的种类越来越多,模拟的、数字的、普屏的、宽屏的、17寸、19寸、22寸……这让PC傻了眼,分辨率和时序的种类太多了,而每种显示器又不可能支持所有的分辨率,那怎么知道该给显示器一个什么样的分辨率啊?显示出的效果是最佳效果吗?不仅如此,随便输出一个分辨率还有损坏显示器硬件的可能,这可太危险了。于是,EDID临危受命,担当起显示器和PC之前的传话筒。“PC你好,我是A显示器,我能显示N种分辨率,最佳分辨率是XXX”。“显示器你好,收到你的信息,现在就按最佳分辨率给你输出”。这下大家明白了吧,EDID就是为了能让PC或其他的图像输出设备更好的识别显示器属性而出现的。

Q3:经常听到有同志一会说“EDID信息”,一会说“DDC信息”。那么哪种说法更准确?EDID和DDC的关系又是什么?

A3: DDC的全称是Display Data Channel(显示数据通道),顾名思义,它是一个通道。我们可以说DDC是用来传送EDID信息的,也可以说EDID信息是通过DDC传送的,所以,“DDC信息”的说法并不准确。

Q4:每个显示器只有一个EDID吗?

A4:不一定。

现在的显示器功能很强大,通常都提供多种视频接口,常见的有DVI、VGA、HDMI、Display Port等,由于每种接口的特性和带宽不同,使得不同接口的EDID也不同。使用哪个接口,PC读到的就是哪个接口的EDID。我们的设备主要使用DVI、VGA、HDMI几种接口。由于VIDEO接口的几种制式如PAL、NTSC等,其分辨率场频都是固定的,没有使用EDID的必要,故不在讨论之列。

Q5:EDID对我们到底有什么用?

A5:要回答这个问题,首先要弄清我们设备的应用场景,请看下图

这是一个典型的应用场景,PC将视频信号发送到我们的设备上,经过一系列的传输或切换,设备将视频信号发送到显示器或投影机上,也就是说,我们的设备位于PC和显示器之间。首先,在输入端,设备需要让PC知道自己是能够输入视频信号的,换句话说,设备要“欺骗”PC,让PC认为自己是一台显示器。如果不这样的话,PC可能会拒绝输出任何视频信号的(VGA接口不需要EDID也能输出)。除此之外,设备还要告诉PC自己支持的显示时序。而在输出端,当设备需要自建输出时序(如大屏控制器的输出卡)而不是简单的复制输入时序(如各种矩阵设备)的时候,就需要知道显示器支持的显示时序,从而让自己输出的信号能在显示器上正常显示。在这些地方,EDID就发挥作用了。在输入端PC通过读取设备上的EDID来获悉设备支持的显示时序,而同样,在输出端设备需要读取显示器的EDID来确定自己的输出时序。

二、EDID主块详解

1. EDID主块结构

 

2. Header:

在EDID的开头八个字节为EDID的开始标志,简称头,固定为:

00H

01H

02H

03H

04H

05H

06H

07H

00

FF

FF

FF

FF

FF

FF

00

3. Vendor / Product Identification

这十个字节表示产品ID和制造商信息。详细如下:

08H

09H

0AH

0BH

0CH

0DH

0EH

0FH

10H

11H

制造商名称

产品代码

产品序列号

制造周

制造年份

制造商名称:3个字母组成,基于压缩的ASCII码见下表,例如“00001=A”… …”11010=Z”。这两字节排列如下:

地址

bit1

bit2

bit3

bit4

bit5

bit6

bit7

bit8

08H

-

(4

3

2

1

0)

(4

3

字符1

字符2

09H

2

1

0)

(4

3

2

1

0)

字符2

字符3

A

B

C

D

E

F

G

H

I

J

K

L

M

00001

00010

00011

00100

00101

00110

00111

01000

01001

01010

01011

01100

01101

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

01110

01111

10000

10001

10010

10011

10100

10101

10110

10111

11000

11001

11010

 

产品代码:固定为4位16进制数,即两个字节,为客户提供,直接填写。

产品序列号:即产品的流水号(数值型),直接转成16进制或以ASCII格式转换。序列号也可用字符型,在后面DTD部分定义。

生产周:即在当年中的生产周,范围1~52,注意0为无效值。

生产年份:规定1990开始计算,即1990年为0,然后递增计算。

4. EDID Structure Version / Revision

字节

EDID版本及修改

备注

1(12H)

版本号

1(13H)

修改号

5. Basic Display Parameters / Features

5

字节

基本的显示参数/特征

14H

1

视频信号定义

见下表

15H

1

最大水平图像尺寸

cm

16H

1

最大垂直图像尺寸

cm

17H

1

显示传输特性(Gamma)

(gamma x 100)-100,[1.00→3.55]

18H

1

电源管理标准(DPMS)

见下表

字节

类型

详细描述

14H

7

模拟/数字信号

模拟= 0,数字= 1

bit7=0,即模拟信号,bit6~0定义如下:

6

信号电平[6:5]

参阅下列定义。

Bit6   Bit5   Operation

0   0      0.700,0.300(1.000Vp-p)

0     1      0.714,0.286(1.000Vp-p)

1     0      1.000,0.400(1.400Vp-p)

1     1      0.700,0.000(0.700Vp-p)

5

4

setup

一般为0

3

同步输入支持[3]

如果设置1, 支持同步分离信号;

2

同步输入支持[2]

如果设置1, 支持同步复合信号(在水平同步行信号上);

1

同步输入支持[1]

如果设置1, 支持同步SOG信号;

0

同步输入支持[0]

如果设置1, 场同步扫描起点,脉冲须在复合同步信号或同步SOG信号被使用;

bit7=1,即模拟信号,bit6~0定义如下:

6-1

保留

0

DFP 1.x

If set = 1, Interface is signal compatible with VESA DFP 1.x TMDS CRGB, 1 pixel / clock, up to 8 bits / color MSB aligned,DE active high

字节

特点支持

详细描述

18H

7

Standby待机

是否支持Standby功能

6

Suspend挂起

是否支持Suspend功能

5

Active Off/Very

Low Power

是否支持Off Mode功能

[4:3]

显示类型[4:3]

Bit4 Bit3 解释       

0 0   黑白/灰度显示

0 1   RGB颜色显示

1 0   非RGB多彩色显示,如RGY

1   1   没有定义

2

标准默认颜色空间sRGB

如果置1,显示将使用默认的颜色空间sRGB作为基色

1

推荐分辨率模式

如果置1,推荐分辨率为第一个详细描述的时序(DTD)

0

支持GTF

如果置1,支持GTF标准分辨率

6. Color Characteristics

字节

颜色特征

基于CIE出版15.2测定空间

19H

Red / Green Low Bits

红绿场xy坐标低2位值

Rx1 Rx0 Ry1 Ry0

Gx1 Gx0 Gy1 Gy0

1AH

Blue / White Low Bits

蓝白场xy坐标低2位值

Bx1 Bx0 By1 By0

Wx1 Wx0 Wy1 Wy0

1BH

Red_x红场画面x坐标

Red_x    bits 9 →2

1CH

Red_y红场画面y坐标

Red_y    bits 9 →2

1DH

Green_x绿场画面x坐标

Green_x  bits 9 →2

1EH

Green_y绿场画面y坐标

Green_y  bits 9 →2

1FH

Blue_x蓝场画面x坐标

Blue_x   bits 9 →2

20H

Blue_y蓝场画面y坐标

Blue_y   bits 9 →2

21H

White_x白场画面x坐标 

White_x  bits 9 →2

22H

White_y白场画面y坐标  

White_y  bits 9 →2

7. Established Timings

提供一些基本固定的VESA, Apple, Mac, IBM VGA等输出的Timing

字节

描述

信源

23H

7

720 x 400 @ 70Hz

IBM, VGA

6

720 x 400 @ 88Hz

IBM, XGA2

5

640 x 480 @ 60Hz

IBM, VGA

4

640 x 480 @ 67Hz

Apple, Mac II

3

640 x 480 @ 72Hz

VESA

2

640 x 480 @ 75Hz

VESA

1

800 x 600 @ 56Hz

VESA

0

800 x 600 @ 60Hz

VESA

24H

7

800 x 600 @ 72Hz

VESA

6

800 x 600 @ 75Hz

VESA

5

832 x 624 @ 75H z

Apple, Mac II

4

1024 x 768 @ 87Hz(I)

IBM

3

1024 x 768 @ 60Hz

VESA

2

1024 x 768 @ 70Hz

VESA

1

1024 x 768 @ 75Hz  

VESA

0

1280 x 1024 @ 75Hz

VESA

25H

7

1152 x 870 @ 75Hz

Apple, Mac II

6-0

保留

8. Standard Timing Identification

这16个字节提供最多8种分辨率的识别,每一种分辨率都是由2个字节的模式格式和刷新率得到的。这些分辨率都没有包含Established Timings中。备注:这2个字节的识别码都是由VESA标准分辨率来定义的,它们都是VESA分辨率的一部分,未使用的字节应该设为01H. 详细设定见表12。

字节

描述

标准分辨率定义1

注释

26H

(水平活动像素 /8)-31

一个字节能够的水平活动像范围是

256-2以 8 个像素为增加

27H

7,6

5-0

画面比

Bit7 Bit6 生效

0   0   1  : 1 画面比

0   1   4  : 3 画面比

1   0   5  : 4 画面比

1   1   16 :9 画面 比

刷新率( Hz ) -60

画面比 = 水平像素 / 垂直活动

范围是 60-123Hz

28H-29H

同上

同上

2AH-2BH

同上

同上

2CH-2DH

同上

同上

2EH-2FH

同上

同上

30H-21H

同上

同上

32H-33H

同上

同上

34H-35H

同上

同上

9. Detailed Timing Descriptions(DTD)

共72个字节分为四个详细时序描述块(DTD),每部分18个字节,故最多可以对四个TIMING进行详细描述

 

Detailed Timing Descriptions(DTD)还可以用来描述显示器的其他特性,如机名、最大频率范围,字符型序列号SN,字符串描述信息,如下结构:

 

 

10. Extension Flag

扩展标志:除主块128字节外,如果有扩展块则该字节置1,VGA和DVI的值为0,HDMI的值为1

11. Checksum

校验和:使前127字节加上此字节等于0。

三、EDID扩展块(CEA-861D)详解

1. CEA-861D(HDMI)结构

地址

(+80H)

描述

格式

00H

02H

Tag(02H)

01H

03H

版本号

02H

DTD开始地址,暂用d表示

d为扩展块中详细时序描述(DTD)开始地址

03H

Native DTD数量及YCbCr444/422,过扫描支持设置

Bit7:是否支持过扫描

Bit6:是否支持basic audio

Bit5:是否支持YCbCr 4:4:4

Bit4:是否支持YCbCr4:2:2

低4bits:Native DTD个数

<d

各功能块参数设置

各功能块包括:

Video Data Block

Audio Data Block

Speaker Allocation Data Block

Vendor Specific Data Block

等等....

大部分功能块长度可变

d

DTD开始地址,根据剩下空间情况,可定义n个DTD(每个18字节),所以DTD占用空间为n*18

Detailed Timing Descriptor(DTD 详细时序描述),每一个DTD包括18字节,具体结构EDID主块中已有定义。

d+(n*18)

00H

剩下的保留字节(Padding)

00H填充

7FH

Checksum

使前127字节加上此字节等于0

2. Tag

固定数值02H,EDID标准分配给CEA-861x标准的扩展标识。

3. Revision

CEA扩展块版本号,目前使用03版本

4. 数字信号特性

此字节各位定义如下:

Bit7:是否支持过扫描

Bit6:是否支持basic audio

Bit5:是否支持YCbCr 4:4:4

Bit4:是否支持YCbCr4:2:2

低4bits:Native DTD个数

Data

5. Data Blocks(各功能块参数设置)

各Data Block结构如下:

注:L表是length,即长度,表中有说明

 

其中各Data Block的Tag Code值定义如下:

 

1.Video Data Block

根据Data Block结构,首字节的bit7~5为Video Data Block = 2,bit4~0为Video Data Block长度,后面跟的字节为多个CEA short Video Descriptor,结构如下:

 

Video Identification Code见CEA-861D标准定义,如下:

 

2.Audio Data Block

根据Data Block结构,首字节的bit7~5为Audio Data Block = 1,bit4~0为Video Data Block长度,后面跟的字节为1个或多个CEA short Audio Descriptor,每个CEA short Audio Descripto由三个字节组级,分为LPCM,AC3,MPEG2等各种Audio Format Code,  Audio Format Code及CEA short Audio DZescriptor结构如下:

 

3.Speaker Allocation Data Block

根据Data Block结构,首字节的bit7~5为Speaker Allocation Data Block = 4,bit4~0为Speaker Allocation Data Block长度(固定为3),后面跟的3字节,结构如下:

 

注:F为前置,L为左置,R为右置,C为中置,Fxx=0表示预留位

4.Vendor Specific Data Block(VSDB)

厂商定义块,根据Data Block结构,首字节的bit7~5为Vendor Specific Data Block= 3,bit4~0为Vendor Specific Data Block长度,后面结构参照HDMI标准中的VSDB规范,如下是HDMI1.4a(HDMI1.4a使用CEA-861D)中的VSDB结构:

 

6. Detailed Timing Descriptions(DTD)

Detailed Timing Descriptions(DTD),每块18字节,详细结构见EDID主块对此部分的解释。

7. Padding保留字节

保留字节,用00填充。

8. Checksum

校验和:使前127字节加上此字节等于0。

 参考资料:

1.EDID_V3标准规范

2.CEA-861-F 规范

分析 EDID 的小工具 生成如下形式的说明文档: Adr Value Remark Description 00h 00h 01h FFh 02h FFh 03h FFh 04h FFh 05h FFh 06h FFh 07h 00h 08h 34h MAG EISA Manufacturer ID (high) 09h 27h EISA Manufacturer ID (low) 0Ah 17h 0717h EISA Product ID(low) 0Bh 07h EISA Product ID(high) 0Ch 02h 2 Serial Number 0Dh 00h Serial Number 0Eh 00h Serial Number 0Fh 00h Serial Number 10h 0Dh 13 Week of Manufacture 11h 0Eh 2004 Year of Manufacture 12h 01h 1 EDID Version 13h 03h 3 EDID Revision 14h 08h Video Input Definition Bit 7 : 0 = Analog signal Bit 6,5: 00 = 0.700,0.300(1.000Vpp) Bit 4 : 0 = No blank-to-black setup Bit 3 : 1 = Separate sync supported Bit 2 : 0 = No composite sync supported Bit 1 : 0 = No sync on green supported Bit 0 : 0 = No serration of the Vsync required 15h 22h 34 Max. Horizontal Image Size 16h 1Bh 27 Max. Vertical Image Size 17h 96h 2.5 Display Transfer Characteristic (Gamma) 18h 28h Feature Support (DPMS) Bit 7 : 0 = No stand-by mode Bit 6 : 0 = No suspend mode Bit 5 : 1 = Active off Bit 4,3: 01 = R/G/B color display Bit 2 : 0 = No standard default color space Bit 1 : 0 = No preferred timing mode Bit 0 : 0 = No GTF supported 19h 67h Red / Green Low Bits 1Ah 55h Blue/ White Low Bits 1Bh A5h 0.646 Red X 1Ch 5Bh 0.357 Red X 1Dh 47h 0.278 Green X 1Eh 9Ch 0.612 Green Y 1Fh 25h 0.146 Blue X 20h 1Eh 0.118 Blue Y 21h 4Fh 0.31 White X 22h 54h 0.329 White Y 23h BFh Established Timings 1 Bit 7 : 1 = 720 x 400 : 70 Hz Bit 6 : 0 Bit 5 : 1 = 640 x 480 : 60 Hz Bit 4 : 1 = 640 x 480 : 67 Hz Bit 3 : 1 = 640 x 480 : 72 Hz Bit 2 : 1 = 640 x 480 : 75 Hz Bit 1 : 1 = 800 x 600 : 56 Hz Bit 0 : 1 = 800 x 600 : 60 Hz 24h EFh Established Timings 2 Bit 7 : 1 = 800 x 600 : 72 Hz Bit 6 : 1 = 800 x 600 : 75 Hz Bit 5 : 1 = 832 x 624 : 75 Hz Bit 4 : 0 Bit 3 : 1 = 1024 x 768 : 60 Hz Bit 2 : 1 = 1024 x 768 : 70 Hz Bit 1 : 1 = 1024 x 768 : 75 Hz Bit 0 : 1 = 1280 x1024 : 75 Hz 25h 00h Manufacturers Timings 26h 31h 640 x 480 27h 40h 60 Hz 28h 45h 800 x 600 29h 40h 60 Hz 2Ah 61h 1024 x 768 2Bh 40h 60 Hz 2Ch 81h 1280 x 1024 2Dh 80h 60 Hz 2Eh 31h 640 x 480 2Fh 4Fh 75 Hz 30h 45h 800 x 600 31h 4Fh 75 Hz 32h 61h 1024 x 768 33h 4Fh 75 Hz 34h 81h 1280 x 1024 35h 8Fh 75 Hz 36h 30h 108Mhz Pixel Clock (low) 37h 2Ah Pixel Clock (high) 38h 00h 1280 Horizontal Active (low) 39h 98h 408 Horizontal Blank (low) 3Ah 51h H.Active/H.Blank (high) 3Bh 00h 1024 Vertikal Active (low) 3Ch 2Ah 42 Vertikal Blank (low) 3Dh 40h V.Active/V.Blank (high) 3Eh 30h 48 H.Front Porch (low) 3Fh 70h 112 H.Sync Pulse Width (low) 40h 13h 1/3 V.Front Porch/V.Sync PW (low) 41h 00h H/V Sync (high) 42h 51h 337 H.Image Size (low) 43h 0Eh 270 V.Image Size (low) 44h 11h H/V Smage Size (high) 45h 00h 0 H.Border 46h 00h 0 H.Border 47h 1Eh Flags 48h 00h Flag = 0000h 49h 00h 4Ah 00h Reserved = 00h 4Bh FFh Tag=Monitor S/N String 4Ch 00h Flag = 00h 4Dh 31h '1' 4Eh 0Ah 4Fh 20h 50h 20h 51h 20h 52h 20h 53h 20h 54h 20h 55h 20h 56h 20h 57h 20h 58h 20h 59h 20h 5Ah 00h Flag = 0000h 5Bh 00h 5Ch 00h Reserved = 00h 5Dh FCh Monitor Name 5Eh 00h Flag = 00h 5Fh 50h 'P' 60h 53h 'S' 61h 2Dh '-' 62h 37h '7' 63h 37h '7' 64h 36h '6' 65h 49h 'I' 66h 0Ah 67h 20h 68h 20h 69h 20h 6Ah 20h 6Bh 20h 6Ch 00h Flag = 0000h 6Dh 00h 6Eh 00h Reserved = 00h 6Fh FDh Tag=Monitor Range Limits 70h 00h Flag = 00h 71h 3Ch 60 Min. vert. Frequency [Hz] 72h 4Bh 75 Max. vert. Frequency [Hz] 73h 1Eh 30 Min. hor. Frequency [kHz] 74h 50h 80 Max. hor. Frequency [kHz] 75h 0Eh 140 Max. Pixel Frequency [MHz/10] 76h 00h Reserved for VESA GTF (=00) 77h 0Ah Set to 0Ah 78h 20h 79h 20h 7Ah 20h 7Bh 20h 7Ch 20h 7Dh 20h 7Eh 00h EDID Ext. Flag 7Fh 15h Checksum
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值