Granite River Labs,GRL 杨昕睿Ray Yang
DisplayID的全名为Display Identification Data,又名第二世代的EDID,2013年VESA推出的DisplayID 1.3版本被广泛地运用在DisplayPort界面;而在2021年第四季VESA再度颁布了更新后的2.1版本。若想了解DisplayID 1.3的基本构架,请参考GRL另一篇技术文章:VESA® DisplayID 1.3 Standard Overview。
最新的2.1版本延续着DisplayID 1.3以及DisplayID 2.0的所有基本结构,同时更新了许多的Data block以适用于日益渐增的现代高清显示器,或穿戴式装置如AR及VR。随着高清显示器的普及,DisplayID 2.1的出现为电子消费市场提供一个简洁且清晰的方式来描述甚至优化连接性。本篇文章将着重于DisplayID Data block的描述,让读者们更熟悉DisplayID 2.1的构造与更新内容,可搭配参考VESA® Display Identification Data(DisplayID)Standard version 2.1取得更详细的规范说明,进一步运用至产品中。
DisplayID 2.1构造介绍
DisplayID 2.1延续着DisplayID1.3的基本构架,由一个最基本的Base DisplayID搭配一个或是多个的DisplayID Extension为一个组合,原则上不管是Base DisplayID或是DisplayID Extension内部的结构都是一样的,只是DisplayID 2.1多做了一些内容的更新。
例如在Base DisplayID下的第三个Byte为Product Type Identifier,用来描述该显示器的类别为何,以下分别为此Byte在DisplayID 1.3以及DisplayID 2.1定义的产品分类。
图1: DisplayID 1.3 Product type identifier (来源:DisplayID spec1.3) 图2: DisplayID 2.1 Product type identifier (來源:DisplayID spec2.1)可以看出两个版本从0h至6h都是相似的内容,但在DisplayID 2.1多了7h以及8h用来描述VR以及AR显示装置,由此可见DisplayID 2.1的推出对于未来的VR、AR显示装置扮演很重要的角色。
Data Block
显示器所有相关数据几乎都包含在“Data Block”里面,大部分的Data Block为VESA或是CEA两个组织定义好的模块,各家厂商可以自由的选择使用Data Block来描述自家的产品。VESA或是CEA定义的Data Block基本上不会有固定的长度,主要看厂商使用了几个Descriptor来描述,而VESA在DisplayID 2.1规范中新增了几个以往在DisplayID 1.3或是DisplayID 2.0没有的Data Block,如Adaptive-Sync、AR/VR等,相关的显示器可以透过新增Data Block宣告详细内容供Source端来做相对应的输出以及应用。Data Block的基本结构如图3所示。
图3: Data Block Format (出自DisplayID spec2.0)Data Block的基本构造在DisplayID 2.1和DisplayID 1.3中没有差别,唯一不一样的地方为Block Tag,过往DisplayID 1.3的00h至13h在DisplayID 2.1皆为RESERVED,DisplayID 2.1有规定若使用了DisplayID 2.1的构架则不能使用上述DisplayID 1.3 00h至13h的Data Block。DisplayID 2.1的Data Block Tag则由20h开始,81h开始依然是CEA所定义的Data Block,如下图。
图4: Data Block Tag Allocation(来源:DisplayID spec2.1)如前文所述,在Base DisplayID Section会描述该产品属于哪一类别,每个不同类别的产品都有必须具备的Data Block,如每个产品类别都必须含有20h Product Identification Data Block。其余的Data Block则要根据产品类别决定是否需要支持,以下会针对目前较常见到的Data Block内容、必备性以及如何使用加以说明。
Product Identification Data Block
前面章节提到Base DisplayID的02h必须说明该产品的类别,不论哪一种类别的产品,在Base DisplayID下一定要将Product Identification Data Block作为第一个Data Block,除此之外整个DisplayID结构仅能有一个Product Identification Data Block,图5为该Data Block的结构。
图5: Product Identification Data Block(来源:DisplayID spec2.0)第一个Byte为Product Identification Data Block的Block Tag“20h”,随后的Byte则会详细的说明该产品的制造日、Vendor ID、Product code、Serial number等详细信息。要注意的是除了Serial number以及Product Nam String是选择性支持,其余的Descriptor都是必须宣告的。
Display Parameters Data Block
Display Parameters Data Block是由不同的字段组成来定义屏幕尺寸、像素等。一个DisplayID section只能宣告一个Display Parameters Data Block。所有Base DisplayID定义为Display类别的产品皆必须支持此Data Block,其余类别则皆为选择性支持,下图为Display Parameters Data Block的结构。
图6: Display Parameters Data Block (来源:DisplayID spec2.0)这里简单举Horizontal Image Size与Vertical Image Size字段为例,顾名思义就是在宣告此产品的显示画面大小,这两个Descriptor会搭配在01h bit 7的Image Size Multiplier而有不同的倍数关系(图7),接着如图8所示,若Image Size Multiplier为0的时候Horizontal / Vertical的范围为0.1mm至6553.5mm,而当Image Size Multiplier为1的时候Horizontal / Vertical的范围为1mm至65535.0mm。
图7:Image Size Multiplier bit (来源:DisplayID spec2.0) 图8: Horizontal Image Size and Vertical Image Size Fields (来源:DisplayID spec2.0)然而某些显示产品不能精确的测量画面尺寸,如CRT显示器,这些产品此字段需宣告的大小即为该显示器可输出的最大分辨率。另外,像是投影设备的相关产品如果没有一个固定的尺寸,两个Descriptor皆需宣告为0。
Video Timing Mode Data Block
Video Timing Mode Data Block可以使用多个Descriptor来描述多个分辨率,而此在DisplayID 2.1 Data Block又可向下细分四种不同的Video Timing Mode:Type VII Timing–Detailed、Type VIII Timing–Detailed、Type IX Timing–Short、Type X Timing–Formula-Based Timing,Block Tag分别如下表。而本文将对Type VII Timing–Detailed进行简单说明。
表1: Video Timing Mode subcategoriesType VII Timing–Detailed
Type VII Timing Data Block是由每个20 byte的Detailed Timing Descriptor组成,所有在Base DisplayID定义为Display类别的产品是强制支持此Data Block的,其余类别的产品皆为选择性支持。Type VII Timing Data Block与DisplayID 1.3里定义的Type I Timing Data Block有相似的功能,只不过在Bytes 0,1,2对于Pixel Clock有所不同。Type VII所使用的单位为KHz,可以更精确地宣告Pixel Clock,数值可从0.001宣告至16777.216MP/s。
图9: Type VII Detailed Timing Data Block Format (出自DisplayID spec 2.0)Adaptive-Sync Data Block
任何支持Adaptive-Sync功能的显示器都必须在DisplayID里宣告Adaptive-sync data block,下图为此Data Block的基本构造。
图10: Adaptive-Sync Data Block Format (来源:DisplayID spec2.1)下图则为Adaptive-Sync Data Block中Descriptor内的细节,这边会举几个例子作为示例。
图11: Adaptive-Sync operation mode and range descriptor (出自DisplayID spec2.1)Byte 0会清楚地宣告该Descriptor的Adaptive-Sync范围以及操作模式,如Byte 0的bit3:2会说明此模式有无支持FAVT,或是FAVT及AVT两种模式都支持。
Byte 2则是会宣告最低的Refresh rate(更新率),范围从0至255Hz,分母为1.001。Byte3及Byte4则宣告最高的Refresh rate,范围从1至1024Hz,再乘上350ppm。
DisplayID Structure v2.0 as an EDID Extension Block
为了让DisplayID v2.0的结构(注1)可以做为EDID的extension block,在DisplayID 2.1规范里一些相关的规定以及须包含哪些必要的Data Block,以下为相关规则:
- 当DisplayID作为EDID的Extension block时,EDID Extension Block的Block Tag必须为70h。
- 整个Extension Block的长度须为128 Bytes。
- DisplayID structure 2.0的Version/Revision须为20h。
- 如前文所述,Base DisplayID有一个Product type Identifier Byte用来描述该显示器的类别为何,在当作EDID的Extension Block时也必须包含此Byte。
- Extension Count需宣告为00h。
- Bytes in section必须宣告为79h(121),因整个section的总数为128个Byte,扣除DisplayID构架基本需要的5个Byte再加上EDID extension的block tag以及Checksum,因此需宣告79h。
- 若同时只用DisplayID v1.2以及DisplayID v2.0的Extension block作为EDID的Extension block,DisplayID v2.0的位置需填写在DisplayID 1.x之后。
- DisplayID v1.2以及DisplayID v2.0的Extension block必须填写在所有CTA-861 Extension block之后。
- 若Source装置可以解读DisplayID v2.0的构架,那么不论DisplayID v2.0 Extension的先后位置在何处Source装置都必须可以完整的解读。此外若有相似的信息同时宣告在不同的Extension中,Source device必须优先解读DisplayID v2.0 extension里的信息,示例如下:
- Display Parameters data block在DisplayID v1.2以及DisplayID v2.0都同时宣告时Source Device必须优先解读DisplayID v2.0的Display Parameters data block。
- EDID Base下的Chromaticity information以及DisplayID v2.0的Display Parameters data block,Source device须优先解读DisplayID v2.0的Display Parameters data block。
结论
最后,我们将根据GRL的测试经验来分享DisplayPort及HDMI®在使用DIsplayID的规范,因目前市场上多数产品仍为EDID标准,极少数产品拥有完整的DisplayID构架(Base DisplayID +DisplayID Extension),大部分皆是以EDID Base为主再加上一个DisplayID Extension;但为了满足更高分辨率及更新率的需求,相信未来市场上以DisplayID为构架的产品将会越来越多。 – HDMI HDMI现阶段的规范仍是不允许Display Extension作为EDID的Extension block,即使是DisplayID V1.x也无法使用,目前的规范还是多半使用CTA 861 Extension作为Extension Block,且必须遵守EDID1.3的规范去做设计。 – DisplayPort 相较于HDMI,Display Port的EDID规范可以将DisplayID Extension作为EDID Base下的Extension Block。仅需遵守上述的相关规范即可。 下方附上一实例,DisplayID Structure v2.0作为EDID Extension,该DisplayID Extension接续在EDID base之后,符合目前Display Port的EDID规范。 表3: DisplayID Structure v2.0 as an EDID Extension Section Example 参考文献- VESA® Display Identification Data (DisplayID) Standard version 2.1
作者
GRL台湾技术工程师杨昕睿Ray Yang
毕业于国立台湾科技大学化学工程学系。
在GRL累积四年多的HDMI相关测试经验,熟悉HDMI、MIPI、V by One等测试规范。目前在GRL台湾主要负责HDMI测试,乐于协助客户厘清HDMI方面的问题,以顺利取得认证。
本文件中规格特性及其说明若有修改恕不另行通知。
发布日期2022/08/10 AN-220810-TW