博客

  • 如何快速生成Verilog代码文件列表(附开源C代码)

    如何快速生成Verilog代码文件列表(附开源C代码)

    用工具建工程对Verilog进行仿真、综合或者其它操作时,在写脚本的时候常常需要工程中Veriog文件的列表,若工程中.v文件过多,则常常需要手动编写文件列表。本文教给大家用C语言简单写的一个自动生成某个文件夹下所有.v文件列表的方法。

    使用说明

    环境:Windows 7操作系统或其它常用Windows操作系统
    编译器:DEV C++或其它
    使用方法:随便找个C语言的编译器,静态编译生成exe文件后,可随意拷贝至某文件夹下,双击运行,等待输出rtl.f文件即可。

    使用举例:将生成的exe文件拷贝至C:modeltech64_10.4目录下,双击运行,如下动图。

    生成的rtl.f打开后如下图所示。

    另外,该代码提供了一种操作Windows系统路径的操作方法,可以简单修改一下,用作它用。如找到某种类型的文件或某个文件进行拷贝、转移、修改、删除等操作。

    源代码

    [hidecontent type=”logged” desc=”隐藏内容:登录后可查看”]

    #include <stdio.h>
    #include <windows.h>
    #include <unistd.h>
    #include <math.h>        
    #include <time.h>             
    #include <string.h> 
    
    #define FILE_NUM 50000
    #define N 50000
    
    static int count_file=0;
    
    typedef struct 
        {
            int  num;
            char name[800];   
            int vtype;     
        }filetype;
    
       filetype files[FILE_NUM];
    
    BOOL IsRoot(LPCTSTR lpszPath)   
    {
       TCHAR szRoot[4];
       wsprintf(szRoot, "%c:", lpszPath[0]);
       return (lstrcmp(szRoot, lpszPath) == 0);
    }
    
    void FindInAll(LPCTSTR lpszPath)
    { 
        WIN32_FIND_DATA wfd;
        TCHAR szFind[MAX_PATH];
        HANDLE hFind;
        TCHAR szFile[MAX_PATH];
        lstrcpy(szFind, lpszPath);
    
        if (!IsRoot(szFind))
            lstrcat(szFind, "");
        lstrcat(szFind, "*.*"); // 找所有.v文件
    
        hFind = FindFirstFile(szFind, &wfd);
        if (hFind == INVALID_HANDLE_VALUE) // 如果没有找到或查找失败
            return;
    
         do
         {
            if (wfd.cFileName[0] == '.')
                 continue; // 过滤这两个目录
            if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
            {
    
             if (IsRoot(lpszPath))
                 wsprintf(szFile, "%s%s", lpszPath, wfd.cFileName);
             else
                 wsprintf(szFile, "%s%s", lpszPath, wfd.cFileName);
             FindInAll(szFile); // 如果找到的是目录,则进入此目录进行递归
            }
            else
            {
    
             if (IsRoot(lpszPath))
                 wsprintf(szFile, "%s%s", lpszPath, wfd.cFileName);
             else
                 wsprintf(szFile, "%s%s", lpszPath, wfd.cFileName);
    
             printf("%sn",szFile);
    
              files[count_file].num=count_file;
              strcpy(files[count_file].name,szFile);  
              count_file = count_file + 1; 
    
              //printf("count_file=%d,num=%sn",count_file, files[count_file-1].name);
    
             // 对文件进行操作
            }
         } while (FindNextFile(hFind, &wfd));
         FindClose(hFind); // 关闭查找句柄
    }
    
    int main(int argc, char* argv[])
    {
        FILE *fp1;
        int i,j,k;
        char buf[800]=" "; 
        char buf1[800]=" "; 
        int type=0;
    
        if ((fp1=fopen("rtl.f","w+"))==NULL)
            return;  
    
        memset(buf,0,800);
        memset(buf1,0,800);
        memset(files,0,FILE_NUM*sizeof(filetype));      
    
        getcwd(buf, sizeof(buf));
        printf("current working directory : %sn", buf);
        FindInAll(buf);
    
         for(i=0;i<count_file;i++)
        {
            memset(buf1,0,800);
            strcpy(buf1,files[i].name);
            type=0;
            k=strlen(buf1);
            //printf("n k=%d;",k);
            for(j=0;j<=k;j++)
            {
    
                if((buf1[j]=='.') && ((buf1[j+1]=='v') || (buf1[j+1]=='V')) && (j==k-2))
                //if((buf1[j]=='.') && (j==k-2))
                {
                   //printf("n j=%dn",j);
                   type=1;
                   files[i].vtype=1;
                   fprintf(fp1,"%sn",files[i].name);
                }
            }
    
        }
    
    getch();  
    fclose(fp1);
    return 0;
    }

    [/hidecontent]

    版本更新记录


    版本号:V1.1.2
    更新日期:2013-07-17
    14:46:46 修改代码,扩展name的长度为800,可以处理长路径的情况

    版本号:V1.1.1
    更新日期:2013-05-18
    10:55:38  修改代码,添加判断语句&& (j==k-2),避免.vhd等文件也被列出来

    版本号:V1.1.0
    更新日期:2013-02-10
    14:49:55 已添加对文件名进行判断,能够自动的将当前路径下的所有文件及子文件夹下的.v文件列举出来。

  • 高速LVDS (非serdeds)实现HDMI TX TMDS verilog 源码

    [hidecontent type=”payshow” desc=”隐藏内容:付费阅读”]

    [/hidecontent]

    305511b737194510

  • 使用 FPGA XILINX ALTERA INTEL 开发HDMI 之 Hot Plug Detection, DDC, and EDID

    热插拔

    大多数现代显示器的一个便利功能是能够在两者都通电时“热插入”到源设备中,并在正确的显示设置下立即变为活动状态。

    这种行为是通过三个功能实现的:热插拔检测、显示数据通道 (DDC) 和扩展显示标识数据 (EDID)。

    什么是热插拔检测?

    将显示器“热插拔”到源中意味着设备在两个都通电时已连接。这与旧技术不同,旧技术通常需要在一个或两个设备关闭的情况下“冷插拔”。热插拔检测或“HPD”是HDMI、DisplayPort和DVI规范的一项功能。通常,它依赖于连接器中的单个引脚进行接触,从而启动该过程。

    什么是 DDC?

    DDC 或显示数据通道描述了源和显示器用于通信的协议和物理路径。它通常分配给接口上的一个或多个引脚,并带有 EDID。

    DisplayPort 没有使用专用的 DDC,而是使用多功能“AUX 通道”,它既可用作用户数据的媒介(通常是 USB),又可用作传输 EDID 和其他拓扑信息的手段。

    什么是 EDID?

    EDID(扩展显示器识别数据)是显示器提供的信息,用于描述其功能和对源设备的要求。它包含制造商、序列号、最大分辨率、刷新率和色彩空间等信息。

     

    5c5879489c192609

    热插拔检测问题

    虽然 HPD 通常是可靠的,但据报道,某些显示器在与特定的 PC 设置配对时会导致不良行为。

    最常见的问题出现在显示器关闭或进入睡眠状态时。它将通过 DCC 传输一个信号,指示它正在关闭电源,在某些情况下,系统的视频驱动程序或操作系统会将其解释为显示器被拔下。这会导致操作系统以不希望的方式重新排列桌面空间和窗口。

    解决方案

    这些问题有一些可用的解决方案,具体取决于所涉及的硬件和软件。

    显示器设置

    如果可用,解决此问题的最简单方法是在显示器设置中禁用热插拔检测。尝试搜索您的显示器型号并“禁用热插拔”。

    电脑显示设置

    在 PC 端,您的显示驱动程序或操作系统的显示设置中可能有一些选项可以禁用热检测,或强制其始终使用特定布局。对于具体的故障排除,请搜索您的操作系统或显卡品牌,并“禁用监视器检测”或“EDID 覆盖”。

    HDMI接口HPD(热插拔)

        HDMI(Pin 19)/DVI(Pin16)的功能是热插拔检测(HPD)。该信号将作为HDMI源(Source)是否启动EDID读取以及是否开始发送TMDS信号的依据。HPD 是从 HDMI 显示器 (Sink) 生成并输出到 HDMI 源 (Source) 的检测信号。热插拔检测的作用是当显示器等带有HDMI接口的显示设备通过HDMI/DVI接口与HDMI源(Source)连接或断开时,可以通过HPD检测HDMI源(Source) HDMI/DVI 的引脚并对这一事件做出响应。下面以HDMI为例来说明HPD的原理和实现。

        1、显示器通过HDMI连接到HDMI源设备。当HDMI源(Source)检测到显示器通过HDMI接口的HPD管脚连接到HDMI源(Source)时(HPD由低到高),HDMI源(Source)认为有显示设备连接,并通过HDMI接口中的显示数据通道DDC(DDC I2C总线)读取存储在显示EDID内存中的EDID数据(扩展显示识别数据),如果检测到显示器的工作模式范围与输出设置兼容HDMI信号源(Source),HDMI信号源(Source)激活TMDS信号传输电路,将正常的HDMI信号发送给显示设备。所以当HPD从低电平转换到高电平时,HDMI Source端会读取sink端的EDID。

           2、当显示器断开HDMI连接时,当HDMI源(Source)通过HPD管脚检测到显示器的HDMI接口与HDMI源(Source)断开时,HDMI源(Source)断开TMDS信号传输电路,停止发送 HDMI 信号。

           3、HDMI信号源(Source)需要HPD信号。当HDMI源(Source)检测到HDMI/DVI接口上的HPD管脚电压大于2V时,判断HDMI显示设备(Sink)通过HDMI/DVI接口与HDMI源连接:当检测到HPD引脚电压小于0.8V,判断HDMI显示设备(Sink)与HDMI源(Source)通过HDMI/DVI接口的连接已断开。

          4、HPD信号一般在HDMI的sink端实现,通过1K欧电阻上拉到HDMI+5V,同时本地主机处理器可以通过GPIO控制,如下图. 

      当HDMI源(Source)通过HDMI接口连接到HDMI sink时,HDMI source(Source)通过HDMI pin 18(PWR_CON,PIN18,即HDMI_5V)给HDMI sink的DDC内存(EDID数据)加上+5V电压) Memory)给DDC内存供电,保证HDMI source(Source)即使HDMI sink没有打开也能通过HDMI接口读取EDID数据。HDMI源(Source)开机后产生+5V,通过18脚给HDMISink端(HDMI显示器)供电,此时HDMISink端(HDMI显示器)接收到5V电压,将HDMI接口19脚HPD变为高电平(1K 欧姆电阻上拉)。此时HDMI源(Source)通过19th Pin接收到HPD高电平,并且判断HDMI Sink(HDMI显示器)是通过HDMI接口连接到HDMI source的,所以通过HDMI接口DDC通道(I2C)的第15、16脚读取显示器中的EDID数据,并使HDMI源的TMDS信号传输电路开始工作。当HDMI显示器与HDMI源的HDMI连接断开,HDMI源上的HDP信号为低电平时,HDMI源上的TMDS信号传输电路停止工作。

    由于HDMI sink侧的HPD电路预留了一个控制端,如果HDMI sink侧的主处理器需要对HDMI链路进行复位(包括重新HDCP握手认证),可以通过下拉再上拉HPD来实现这个功能。

    前面介绍EDID提到过,HDMI规范规定发送设备要检测接收设备的第一个CEAEDID扩展块是否包含HDMI VSDB,这个HDMIVSDB是否包含IEEE数据标识符0x000C03,只有包含这个的设备data identifier ,将被视为 HDMI 设备,否则将视为 DVI 设备。

    HDMI设备的EDID通常包含两个模块,第一个是EDID1.3的数据模块,第二个是CEA 861B模块。此 861B 模块必须包含数据标识符 0x000C03。当HDMI发送设备(Source)检测到HPD信号由低变高时,会读取sink的EDID数据,确认接收设备是否发生变化,判断是工作在HDMI模式还是DVI模式。

    硬件解决方案

    最后,还有各种硬件解决方案,例如位于显示器和 PC 之间的加密狗或设备,可中断 HPD 或 EDID 过程。您需要搜索您的连接类型(HDMI、DisplayPort 等)和“医生”或“EDID 仿真器”或“检测杀手”。

    HDMI热插拔检测原理

    [hidecontent type=”reply” desc=”隐藏内容:评论后查看”]

    https://www.cnblogs.com/cslunatic/p/3598951.html   

    HDMI(19Pin)/DVI(16 pin)的功能是热插拔检测(HPD),这个信号将作为主机系统是否对HDMI/DVI是否发送TMDS信号的依据。HPD是从显示器输出送往计算机主机的一个检测信号。热插拔检测的作用是当显示器等数字显示器通过DVI接口与计算机主机相连或断开连接时,计算机主机能够通过HDMI/DVI的HPD引脚检测出这一事件,并做出响应。 在传输信号上来讲,HDMI与DVI完全兼容,只是接口封装不一样而已,下面以HDMI为例讲述HPD的原理和实现方式。下图为HDMI与DVI接口图。

     HDMI(左)与DVI(右)接口图 

    1.显示器通过HDMI联机 
    当计算机主机通过HDMI接口的HPD引脚检测到显示器与计算机主机相连时,主机中的图形显示系统(显卡)发出一个信号,要求计算机的通过HDMI接口中的显示器数据通道DDC(DDC I2C总线)读取显示器DDC存储器中存储的EDID数据(扩展显示器识别数据),如果检测到显示器的工作模式范围与显卡相适应,则主机系统可以激活显卡 TMDS信号发送电路(数字视频信号发送电路)。

    2.显示器断开HDMI连接 
    当计算机主机通过HPD引脚检测到显示器的HDMI接口与计算机主机断开时,主机中的图形显示系统(显卡)发出一个信号,通知计算机的操作系统中断显卡TMDS信号发送电路(安装在显卡上)的工作。

    3.计算机主机对HPD信号的要求 
    当计算机主机上的显卡检测到DVI接口HPD引脚电压大于2V时,判断为显示器通过DVI接口与主机连接:当检测到HPD引脚电压小于0.8V时,则判断为显示器与主机之间的DVI连接已经断开。

    4.HPD信号的实现

     显示器HPD与PWR外围图

            如上图,当计算机通过HDMI接口与显示器相连接时,主机通过HDMI的第18脚(PWR_CON_PIN18)将+5V电压加到显示器的DDC存储器(EDID数据存储器)向DDC存储器供电,确保即使显示器不开机,计算机主机也能通过HDMI接口读取EDID数据。 
    主机开机后产生 5V_SYS并通过第18脚向显示器供电,此时显示器接收到5V电压后通过内部电路使HDMI接口第19脚HPD转变为高电平,并驱动Q1使CE导通,致使HPD_GPU也转变为高电平,主机(显卡控制器)检测到HPD为高电平时,判断显示器通过HDMI与主机连接,并通过HDMI接口的第15、16脚 DDC通道(I2C)读取显示器中的EDID数据,并使主机显卡中的TMDS信号发送电路开始工作。 
    当显示器与主机之间的HDMI连接断开时,主机一侧的HDP信号为低电平,主机显卡中的TMDS信号发送电路停止工作。

    附加: 
    1、DDC是显示器与电脑主机进行通信的一个总线标准,其全称是:DISPLAY DATA CHNNEL。它的基本功能就是将显示器的电子档案资料信息,诸如可接收行场频范围、生产厂商、生产日期、产品序列号、产品型号、标准显示模式及其参数、所支持的DDC标准类别、EDID的版本信息等等。高版本的DDC标准总线还可以允许电脑主机直接调节显示器的基本参数,诸如亮度、对比度、行场幅度的大小、行场中心位置、色温参数等等。

    2、EDID数据标准:EDID(Extended Display Identification Data Standard) 就是显示器通过DDC传输给电脑主机的标准数据信息,至今已发布到第三版本,即EDID Version 3,前面分别有EDID Version 1.0,Revision 0,EDID Version 1,Revision 1,EDID Version 2,Revision 0,EDID Version 2,Revision 1等版本。就数据信息量而分,EDID分为128 BYTE和256 BYTE,将来也许会有更多数据信息量的新版EDID公布。

    3、TMDS是最小化传输差分信号的英文缩写。 
    Silicon Image公司开始采用面板连接、数字可视接口(DVI)和高清多媒体接口(HDMI)的形式向显示行业推广其所有权标准——最小化传输差分信号 (TMDS)。在该情况下,发射端混合了具有在铜导线上降低EMI特性的更高级编码算法,从而使得接收端具有健壮的时钟恢复性能。

    HDMI控制与组态剖析

    HDMI能够称霸为王者之尊吗?目前消费者陷入的困境就是Audio/Video的连接线数量过度庞大,而HDMI最大卖点之一就是可使 用单一的连接线完全取代众多的影音连接线,简洁又方便。缺点是技术版本变动太快,2006年6月,1.3版本正式出笼。虽然HDMI是从DVI变身而来, 但DVI却仅局限于视频(Video)的传送,HDMI则是跨及音频与视频,技术的层次较高也比较复杂。

    如果认真追究起来,过去在视频领域里,其实还存在有一个称之为D端子的连接器,据不同的影像格式而区分为D1~D5。由于目前仅在日本当地最为常用,常常让不知情的非日本人引起一阵迷惑,以为D端子就是Digital端子的简称,其实不然,只要查证其管脚定义就可看出其内涵是色差端子的综合体。之所以取名为D端子,是因为其连接头的形状有如D字母外型的缘故而得名。

      日本家电使用D端子的机会比较多,其好处是可以减少色差端子连接线的数量。但就长期而言,终究D端子还是要走入历史的,日本产官方皆已建立起一致的共识。就消费性产品而言,HDMI唯我独尊。

      通常,HDMI所称的源端(Source)主要装置是DVD及HD DVD、Blu-Ray等播放器以及STB机顶盒,接收端(Sink)当然就是以数字电视为主,跨越了液晶电视、等离子电视以及背投电视等。而所谓重复器或复送器(Repeater)装置,最典型的代表当然就是家庭剧院中所使用的AV扩大机了。

      HDMI接口主要有三个通信通道:

    ◆  TMDS通道。负责所有音频、视频数据的传输。辅助数据,如AVI InfoFrame、Audio InfoFrame等也是通过TMDS通道。

    ◆   DDC通道:HDMI源端,通过这个通道来读取接收端(Sink)的E-EDID数据结构,进而得知接收端内含的机能与特性。

    ◆  CEC通道:这是一个选项(Option)。提供更高层次的使用方式让消费者使用,好比说自动设定的细节、单键播放或是遥控相关的事。

      目前HDMI虽然独霸天下,若是参观美国的CES消费性电子大展或是日本的CEATEC电子展,您就会发现拥有HDMI接口的消费性电子产品琳琅满目。但若从消费者的使用观点来思考,还是有一些问题存在。首先,多数产品在其规格上或是说明书中仅提及了产品附有HDMI端子,有些还会提及其支持的版本,但一个只知道出钱买货的消费者并不会明了技术版本上的差异点。另外就是不同厂商之间各种产品的互通性是否经得起市场的考验以及消费者的感观接受度等等,这些都还有一段时间与路途要走。

      众所皆知,日本东芝率先于2006年3月底推出下一代HD DVD光驱HD-XA1,HDMI端子的高画质展现是一大卖点。而个人计算机界直销的龙头Dell,也觊觎着这块消费性产品大饼,也是于2006年3月推出了24英寸宽银幕、WUXGA分辨率1920×1200、拥有HDCP著作权保护机制的液晶电视,并拥有色差输入以及D-DVI输入。可想而知,大家最关心的无疑是当HD DVD连接上这台高分辨率的液晶电视,是否能享受高画质的影像。当然这必须借用HDMI-DVI转换器或连接线,但连接以后的结果却是1080i的节目根本没有影像显现出来,必须通过遥控器的“分辨率切换”按键才能够看到影像。也就是说,似乎仅能看到480P或720P分辨率的输出,类似如此的细节性问题,对于一般的消费者来说,似乎显得比较沉重。

      从此案例可以看出,为确保不同厂商产品间的沟通顺畅,HDMI兼容性测试(Compliance Testing)肯定是HDMI发展中不可或缺的一环。兼容性测试已经有标准公布,然而随时要留心版本的更新。USB的兼容测试花了十年的功夫也不见得能够解决所有的兼容性问题,那么,HDMI当然也需要花一段时间来克服这个问题。

      使用HDMI接口对于工程师而言肯定是毫无困难度,但对于普通消费者来说,是需要重新教育的一环,若想去硬性改变消费者的使用习惯,如果没有构思细想周全,要付出的代价是难以言喻的。因此,产业上存在一种头衔User Experience Architect,其职责就是要想尽办法让使用者无痛苦的升级。

      EIA/CEA-861B所定义的InfoFrames是学习HDMI技术必要的认知。一个InfoFrame打包仅仅能够载送一个InfoFrame。而且,依据HDMI的规范,其大小被限制在30个字节加上一个检验和(CheckSum)字节。

      在某些情况下,HDMI的源端会使用到AVI InfoFrame与Audio InfoFrame,而EIA/CEA-861B中所定义的其他InfoFrame,则是列为选项。想知道所有InfoFrame的细节,只有去翻阅CEA-861B Section 6一种办法,因此,HDMI规格并不是一份完全独立的规范,必须还有其他的文献在手,交叉阅读与参考。而EIA/CEA-861B不仅定义了HDMI的影像格式、EDID以及InfoFrame的数据结构之外,还描述了音频的描述值与表格。这个现象与PCI Express规范是一样的情形,必须同时准备PCI与PCI-X的规范,才能够彻底弄通。

      就HDMI的学习来说,当然所针对的目标就是AVI InfoFrame与Audio InfoFrame。首先要澄清一个重要的概念,即HDMI中的格式是以电视的立场为出发点而做的,而且是直接从EIA/CEA-861-B “A DTV Profile for Uncompressed High Speed Digital Interfaces”标准参考而来。EIA/CEA-861-B所制定的格式多达34种,若是再加上一些如像素重复(Pixel Repetition)的小变化,就有348种之多。因此,很多的字段都是来自于EIA/CEA-861B,内容细节上颇为繁复。

    InfoFrame的描述

      图7和图8是AVI InfoFrame的打包标头(Packet Header)与打包内涵(Packet Content)的格式,简单掌握住一个重点,AVI InfoFrame所包含的信息乃是为了实现与达成显示模式自动化(Display Mode Automation)而规划的一种方法或机制。当然,所有的重点都处于打包中各个内涵的字段之中。

    ◆   Y0、Y1:RGB或YCbCr指示器。就是意指色彩的编码以及采样方法(Color Encoding & Sampling Methods)。

    ◆  A0:Active (format)Information Present是一个旗帜,用来表示R0~R3是否有效,R0~R3就是Active Format Aspect Ratio。

    ◆  B0、B1:Bar Info数据是否有效的旗帜。

    ◆   S0、S1:Scan Information。安全范围的信息。比如说,全画面(OVERSCAN)和非全画面(UNDERSCAN)。

    ◆  C0、C1:比色法(Colorimetry),ITU BT.601,BT.709等。

    ◆   M0、M1:Picture Aspect Ratio (4:3, 16:9)。EIA/CEA-861-B标准的Section 2.4定义了Picture Aspect Ratio的词汇,视为在未压缩数字接口上传送影像的宽高比。

    ◆   R0~R3就是Active Format Aspect Ratio。

    ◆   VIC0~VIC6:Video Format Identification Code。

    ◆  PR0~PR3:Pixel Repetition Factor。关系到Double Clocking & Pixel Repetition的议题。比如说,速率低于25HMz的视频格式(如NTSC的480i就只有13.5MHz),可使用像素重复(Pixel RePetition)的机制来传输。

    ◆  SC1、SC0:Non-uniform Picture Scaling,是morph mode。

    AVI InfoFrame的打包内容还包含有:

    ◆   ETB:Line number of end of top bar。

    ◆  SBB:Line number of start of bottom bar。

    ◆  ELB:Pixel number of end of left bar。

    ◆SRB:Pixel number of start of right bar。

      AVI InfoFrame的内容不去了解,可以用一种比较形象的比喻来解释,有些人拍影片的格式会有多种花样,其内容不见得与消费者家中电视机的长宽比(Aspect Ratio)相符合,因此即使您拥有非常智能的电视机,想要将内容影像做最佳化的显示,唯一的方法就是要了解所收到的影像状况,这也就是AVI InfoFrame所要去完成的任务。

      电视机最常见的银幕长宽比(Aspect Ratio)不是4:3就是16:9,而计算机的显示主要是4:3,有时还可见到5:4、3:2或16:10,而当代的电影胶片却能够支持六种格式,分别是4×3、13×9、5×3、13×7、11×5与12×5。以前的电视节目大多以4:3的比例来拍摄,随着HDTV的迫近,越来越多的节目开始以16:9的比例来拍摄。

      HDMI接口的源装置使用IEC 60958 Channel Status位、IEC 61937 Burst Info以及Audio InfoFrame来表达有源音频串(Active Audio Stream)的特性,Audio InfoFrame的传送是Data Island打包可以载送的任何时间点。

      需要注意的是,该打包内涵中许多字段可以设定为零,表示着这些信息在IEC 60958 Channel Status位、IEC 61937 Burst Info中已经隐含。 

    ◆   CC0…CC2:Channel Count。

    ◆   CT0…CT3:Coding Type。 

    ◆   SS0…SS1:Sample Size。

    ◆   SF0…SF2 Sample Frequency。对于L-PCM以及压缩音频,这些位必须为零。对于Super Audio CD来说,位设定必须为[0,1,0],表示2.8224M个采样(64×44.1KHz)。

    ◆ CA0…CA7:Channel/Speaker Allocation。对于压缩音频而言,这些位是无效用的。

    ◆   LSV0…LSV3:Level Shift Value。

    ◆   DM_INH:Down-mix Inhibit。

      Audio InfoFrame所传送的额外数据,包含多轨道L-PCM扩音器喇叭的配置以及降混音量(Down-mix Volume)调整的修正。

    E-EDID的数据结构

      E-EDID是增强型扩充显示器识别数据(Enhanced Extended Display Identification Data Standard)的简称,是VESA组织所规范,在版本上也有更新的考虑。所有的终端接收装置(Sink),其E-EDID数据结构必须遵照VESA E-EDID Standard Release A, Revision 1,而E-EDID的第128个字节,不仅必须包含EDID 1.3的架构,也得满足EIA/CEA-861B的要求。

      源装置使用DDC来读取终端接收显示装置的E-EDID(Enhanced Extended Display Identification Data),以确认终端显示装置的设定与功能。规格中清楚写到,所有包含EIA/CEA-861B的E-EDID数据结构的终端接收显示装置,都需要通过DDC来存取。更准确地说,即源装置必须读取EDID 1.3以及第一个CEA EDID Timing Extension,来确认终端显示装置所支持的功能。

    HDMI既然师出于DVI,又有兼容的特征,那么有趣的问题就浮现出来了,即用什么方法来判别或鉴别是DVI装置还是HDMI装置呢?想要简单推断则必须要规范一种机制或方法来鉴别。

      CEA EDID Timing Extension必须包含HDMI Vendor Specific Data Block (HDMI VSDB)的表格。这是一个EIA/CEA-861B Vendor Specific Data Block的数据区块,细节描述在EIA/CEA-861B的表格30~32。这个数据区块会包含有一个24位的IEEE Registration Identifier登记识别符号0x000C03,而该识别码就是隶属于HDMI Licensing,LLC。基于此,HDMI的源端可以检查是否为合理的HDMI VSDB,然后包含有IEEE Registration Identifier登记识别符号0x000C03,就可以判断为HDMI装置,而不是DVI装置。同样的,任何具有E-EDID的装置,不包含有CEA EDID Timing Extension或是有效长度的HDMI VSDB,即可视为DVI装置。

      HDMI接收装置端的音频特性的支持,在CEA EDID Timing Extension中的Short Audio Descriptor数据区块中完全表达。这些数据表达了接收端所支持的音频编码方式与相关参数,比如说支持的通道数,而多声道的L-PCM或是多声道的单位元音频,也可以通过数据区块中的“Speaker Allocation Descriptor”来清楚表达。

      如果接收端也支持RCbCr的像素编码(Pixel Encoding),EDID Timing Extension字节三的位四与位五必须设定为一。至于视频格式的支持,HDMI接收端采用SVD(Short Video Descriptor)中的Video Code来表达,也可以使用DTD(Detailed Timing Descriptor)。如果接收端支持了单位元音频,可以通过Short Audio Descriptor的Coding Type为九,Short Audio Descriptor的字节三必须保留为零。

    Enhanced DDC概述

      DDC(Display Data Channel)是终端显示器用来告知个人计算机显示器信息(如分辨率、扫描频率等)的规格,也就是显示器与主机系统之间的通信方法,当然,这个规格的主要目的就是要实现即插即用(Plug & Play)的功能。Enhanced DDC乃是定义于VESA的ENHANCED DISPLAY DATA CHANNEL STANDARD Version 1 (September 2, 1999)。依据HDMI规格的记载,所有的接收端必须支持这些Enhanced DDC的特征。在技术层面,就数据传输的时序来说,必须完全符合业界标准的I2C接口的标准模式,也就是数据必须与SCL维持同步。

      I2C接口是一个非常简易的控制接口,仅是时钟(Clock)与数据(Data)的两线式接口。(注:I2C接口是上个世纪80年代初期,飞利浦半导体所开发的连接接口,依照传送速度有三种模式:标准模式约100Kbps,快速模式约400Kbps,高速模式约3.4Mbps)总之,HDMI来源端是利用了I2C接口的命令来读取接收端的E-EDID。

      HDMI接口有一热插拔检测(Hot Plug Detect)的信号,它要遵循一些准则。一个HDMI接收端,当E-EDID数据尚未准备好可读取时,不能够在高电压准位驱动该信号。同时,也必须得知来源端的+5V Power信号时,才能够驱动。HDMI来源装置可以利用该信号的高电位来激发E-EDID数据的读取。HDMI接收端E-EDID数据的内容有任何改变的话,在该信号驱动为低电位至少需100ms的时间。

    CEC信号线概述

      CEC(Consumer Electronics Control)信号线是提供使用者对于HDMI接口连接装置,提供一种高级控制的方式,例如单键播放(One Touch Play)、单键录像(One Touch Record)等,让消费者对HDMI装置能有逻辑性高的控制方便性,这个功能主要与遥控装置的使用有密切的关系。

      CEC功能是以欧洲常见的影音连接通讯协议(AV.Link Protocol)为基础,欧洲的影音设备惯用AV.Link或Q-Link等一堆奇怪的字眼,完全视厂商情况而定。CEC的功能支持与否是一个选项,使用上也是随制造厂商而定。

      USB与1394均是分享式以及随插即用的总线,接口上会存在多个装置,为了能够维持正确传输而不会互相干扰,各个装置必须赋予一个物理地址(Physical Address),这个过程就称之为Physical Address Discovery,所有的地址都用4个位数来表示,而装置连接的阶数最多为5阶。

    [/hidecontent]

  • 使用 FPGA XILINX ALTERA INTEL 开发HDMI 之FRL模式

    HDMI 2.1 固定速率链路 (FRL) 模式概述

    为响应消费市场对高品质音视频应用日益增长的需求,HDMI论坛发布了HDMI 2.1的最新规范。最惊艳的新功能就是加入了FRL(Fixed Rate Link)传输模式,可以说是颠覆了。过去HDMI接口传输信号的方式。在HDMI 2.1发布之前,信号传输采用 TMDS(Transition Minimized Differential Signaling)架构,最大带宽为 18Gbps,可用于传输 3840x2160p 60 等 4K 高质量图像,而 FRL 的带宽模式提升到48Gbps,通过压缩的方式可以传输分辨率高达10K的图像。FRL 是如何实现如此高的带宽的?

    圖片1-1 (1)

    图 1:HDMI 带宽演变

    关于HDMI通道传输的操作,在传统的TMDS架构下,是通过一个独立的通道来传输Clock信号,而在FRL架构中,Clock是嵌入在Data信号中,然后通过后续的Clock Recovery。这样就可以分析时钟信号(如图2所示)。这样,可以多使用一个通道来传输图像信号,从而提高带宽。另一方面,在FRL架构下,引入了一种新的物理层传输方式,TMDS使用的8b/10b编码方式,FRL使用的16b/18b编码方式(图3),进一步提高了使用通道带宽速率,允许通道传输更高的分辨率和图像更新率,为消费者提供更好的音视频质量体验。

    圖片2-1-768x557-1

    图2:HDMI信号通道示意图

    圖片3-1-2

    图3:16b/18b码转换示意图

    由于在 FRL 架构下,Link Training 用于确定当前用于传输信号的速率,因此 HDMI 2.1 FRL 模式定义了六种通道速率,供客户设计产品规格(见表 1)。其中,FRL模式仍保持3通道传输模式。由于支持 HDMI 2.1 FRL 的产品需要向后兼容 HDMI TMDS 模式,因此原有的 Clock 通道规格可以有更大的通道衰减。架构下也可以支持FRL模式,所以有3通道的设计。

    圖片5-Apr-05-2022-10-09-47-30-AM

    表1:FRL速率与信道关系图

    在 HDMI 2.1 FRL 模式下,每通道可支持高达 12Gbps。由于传输速率的提高,将面临信道上高速信号的更大衰减。为了改善信号的衰减,HDMI2.1引入了更多种类的均衡器应用(图4)。

    圖片6-Apr-05-2022-10-09-59-00-AM

    图 4:HDMI 均衡器示意图

    在发送端添加前馈均衡器(FFE)均衡器,由四种不同大小的 Deemphasis 和 Pre-shoot 值组成,如下图 5 所示,Tx 端在 Link Training 时会使用 0=TxFFE0 FFE . 如果需要传输更高速率的信号,Tx 会使用 Link Training 来确定更高的 FFE 补偿,以确保音视频数据能够完整传输到 sink。

    圖片7-4

    图 5:HDMI 前馈均衡器模块

    圖片8-2

    表 2:HDMI Feed Forward Equalizer模組

    在接收端,使用了连续时间线性均衡器 (CTLE) 和判决反馈均衡器。不同数据速率的信号可以选择使用不同级别的CTLE,经过电缆损耗的信号可以在接收端得到更完整的恢复。

    圖片9-768x444-1

    图 6:HDMI 连续时间线性均衡器模块

    除了改变信号传输结构外,低速信号Display Data Channel(DDC)上传输的Extended Display Identification Data(EDID)和Status and Control Data Channel(SCDC)都开放写入原来的Reserve空间增加FRL模式的新功能公告,这些低速信号的通信在FRL的Link Training的过程中起到了极其重要的作用。

    下面是一个简化的 Link Training 过程(下图 7):

    1.Source读取Sink的EDID,确认是否支持FRL模式,如果不支持FRL模式则返回TMDS模式

    2. Sink 将通过在 SCDC Status Flags 中写入 FLT_Ready 来通知 Source 可以进行 Link Training。当 Source 发现设置了 FLT_Ready 的值时,可以设置要输出的 FRL Data Rate 和支持的通道数。确定相对 TxFFE 值

    3. Sink 会要求 Source 输出对应的 Link Training Pattern。确认无误后,即可进入正式的FRL信号传输。

    圖片10-2

    图 7:FRL 链接训练过程

    除了增加通道带宽以实现高分辨率图像传输外,HDMI 2.1 还首次引入了显示流压缩 (DSC) 技术。DSC 只能用于 FRL 模式传输,以实现 10K 图像的传输。DSC的概念是划分或分段的。这样,图像被压缩后传输到 Sink 进行解码和恢复,可以使用较低的带宽传输高分辨率图像(如下图 8 所示)。

    圖片11-3

    图 8:DSC 示意图

    随着信道带宽的增加,对信号传输过程中的信道损耗提出了更严格的要求。用于传输信号的线材也升级为Ultra High Speed HDMI Cable ,为3类线材,最高可传输48G。带宽,相比之前的有线电子认证,增加了很多项目,比如ACR(Attenuation to Crosstalk Ratio)等。

    HDMI 2.1 也对消费者体验进行了许多更新。与HDMI 1.4开发的音频回传通道 (ARC) 相比,HDMI 2.1增加了增强型音频回传通道 (eARC),可以传输多达八种声音,以及 Dolby True HD、Atmos 等更高级别的声音格式等,让消费者在家中也能享受到影院同等水平的影音享受。

    除了音视频传输的带宽升级外,HDMI2.1更新增加了一项提高画面精细度的技术。HDMI 2.0引入的静态高动态范围 (HDR)对整个图像使用相同的参数。HDMI 2.1 引入的动态 HDR 可以针对每个场景,甚至是画面的每一帧进行不同的处理,让图像更真实地呈现给观看者。

    HDMI 2.1 还定义了一些 Gaming Mode 功能,包括可变刷新率 (VRR)、快速媒体切换 (QMS)、快速帧传输 (QFT) 和自动低延迟模式 Auto Low Latency Mode (ALLM),总体概念是提高帧转换速度,减少视频和音频输出到屏幕的延迟,让用户减少游戏屏幕转换过程中的画面失真或画面破损。

    简单对比一下HDMI 2.1的新品。在认证方面,HDMI 2.1 已经完全取代了 HDMI 2.0。不同的是HDMI 2.1分为FRL和TMDS两种模式。目前支持 FRL 的 Source、Sink 和 connector。所有这些都可以进行测试和认证。GRL 在相关测试和证据收集方面拥有丰富的经验。DSC、HDR、Gaming Mode等相关测试项目暂未公布。希望未来整体技术更加完善,促进HDMI影像产业的蓬勃发展。

    [hidecontent type=”vip1″ desc=”隐藏内容:会员可查看”]

    HDMI 2.1 FRL 概览

    为了因应消费市场对于高画质影音应用需求日益增加,HDMI Forum 于2017 年底发布了HDMI 2.1 的最新规格,其中最令人惊艳的新功能就是加入FRL(Fixed Rate Link)的传输模式,它可以说是颠覆了以往HDMI 介面传送讯号的方式。HDMI 2.1 发布以前是使用TMDS(Transition Minimized Differential Signaling,最小化传输差分讯号)的架构来进行讯号的传输,最高频宽可达18Gbps,可用来传送3840x2160p 60 等4K 高画质影像,而FRL 模式的频宽则提升到48 Gbps,利用压缩的方式则可传送高达10K 解析度的影像,而FRL 是如何达成这样的高频宽呢?

    图片1-1 (1)

    图1:HDMI频宽演进

    HDMI 传输通道与编码方式

    关于HDMI 通道传输的运作方式,在传统的TMDS 架构下,是利用一个独立的通道来传送Clock 讯号,但在FRL 的架构中,将Clock 嵌入在Data 的讯号中,再透过后续的Clock Recovery 处里方式来解析出Clock 的讯号(图二),如此一来就可以多一条通道来传送影像讯号,频宽因此便获得提升。

    另一方面,在FRL 架构下,导入新的物理层传送方式,在TMDS 使用的8b/10b 编码方式,而FRL 中是使用16b/18b的编码方式(图三),进一步提升通道频宽的使用率,让通道可传输更高的解析度及影像更新率,提供消费者更好的影音品质体验。

    图片2-1-768x557-1

    图2:HDMI讯号通道示意图

    图片3-1-2

    图3:16b/18b编码转换示意图

    由于在FRL 架构下,是透过Link Training 的方式来决定当下是要用什么速率来传输讯号,HDMI 2.1 FRL 模式定义了六种通道速率让客户设计产品的规格(表一)。其中特别的是FRL 模式依然保有3通道的传输方式,由于支援HDMI 2.1 FRL 的产品需向下相容HDMI TMDS 模式,原有的Clock 通道规格上可有较大通道衰减,为了让客户能在既有的架构下也能支援FRL 模式,所以才有3条通道的设计。

    图片5-Apr-05-2022-10-09-47-30-AM

    表1:FRL速率与通道关系图

    HDMI 2.1 FRL 模式下的Equalizer 应用

    在HDMI 2.1 FRL 模式下,可以支援最高每条通道达12Gbps,由于传输速率的提升,就会面临到高速讯号在通道上更大的衰减,为了改善讯号的衰减,HDMI 2.1 导入了更多样化的Equalizer 应用(图四)。

    图片6-Apr-05-2022-10-09-59-00-AM

    图4:HDMI Equalizer示意图

    在Transmitter 端加入Feed Forward Equalizer(FFE)的均衡器,由四种不同大小的De-emphasis 和Pre-shoot 值组成,如下图五所示,Tx 端在Link Training 时会使用0=TxFFE0 的FFE,若需要传输更高速率的讯号,Tx 会再经由Link Training 来决定较高的FFE 补偿,以确保影音资料能完整传送至Sink 端。

    图片7-4

    图5:HDMI Feed Forward Equalizer模组

    图片8-2

    表2:HDMI Feed Forward Equalizer模组

    Receiver 端则是使用Continuous Time Linear Equalizer(CTLE)及Decision FeedbackEqualizer,不同资料速率的讯号可选择使用不同程度的CTLE,将经过了线缆损耗的讯号,在接收端更完整的被还原回来。图七是讯号加上了FFE 与不同程度CTLE 补偿后的眼图。

    图片9-768x444-1

    图6:HDMI Continuous Time Linear Equalizer模组

    图片10-2

    图7:讯号经过FFE与CTLE的补偿

    Display Stream Compression(DSC)

    除了讯号传输的架构做了改变,在低速讯号Display Data Channel(DDC)上传输的Extended Display Identification Data(EDID),以及Status and Control Data Channel(SCDC),都开放写入原本Reserve 的空间,来增加FRL mode 新增的功能宣示,而这些低速讯号的沟通在FRL 的Link Training 过程中是极度重要的角色。

    以下是简化的Link Training 流程(图八):

    1. Source 读取Sink 的EDID 确认是否支援FRL 模式,若无支援FRL 模式则会回到TMDS 模式。
    2. Sink 会透过写入SCDCStatus Flags 中的FLT_Ready 来告知Source 可以进行Link Training,当Source 查询到FLT_Ready 值被设定后,即可设定要输出的FRL Data Rate,支援的通道数并设定相对的TxFFE 值。
    3. Sink 会要求Source 输出相对应的Link Training Pattern,确认无误之后即可进入正式的FRL 讯号传输。

    图片11-3

    图8:FRL Link Training 过程

    除了提升通道频宽达到高解析度影像传输,HDMI 2.1 首次引用了Display Stream Compression(DSC)的技术,DSC 只可使用在FRL mode 传输,以此实现10K 影像的传送,DSC 概念是以分割或分段等方式,将影像压缩后传输到Sink 再进行解码还原,可以使用较低的频宽来传输高解析度影像(如图九)。

    图片12-2

    图9:DSC示意图

    而随着通道频宽的提升,讯号传输时,对于通道损耗便有更严格的要求,用以传输讯号的线缆也升级到Ultra High Speed HDMI Cable,也就是Category 3 线缆(图十),可以传输高达48G 的频宽,相较于先前的线缆e认证,增加了许多项目,如ACR(Attenuation to Crosstalk Ratio)等等。

    图片13-2

    图10:Ultra High Speed HDMI Cable

    ARC & eARC

    HDMI2.1 也在消费者使用体验上做了许多更新,相较于HDMI 1.4 开发的Audio Return Channel (ARC),HDMI2.1 新增了Enhanced Audio Return Channel (eARC),比较表如下图十一,eARC 能够传输高达到八声道的声音,以及更高阶的声音格式如Dolby TrueHD,Atmos 等等,让消费者在家也能有与剧院相同等级的影音享受。

    图片14-1

    表3:ARC与eARC的比较表

    动态High Dynamic Range (HDR)

    除了影音传输的频宽升级,HDMI 2.1 更新增了提升画面细致度的技术,HDMI 2.0 推出的静态High Dynamic Range (HDR),是对整部的影像做同样参数的处理,HDMI 2.1 推出的动态HDR (图十二),是可以针对每一段场景,甚至是每一帧的画面都做不同的处理,让影像更真实的呈现给观影者。

    图片15-1

    图12:静态与动态HDR比较

    HDMI 2.1 也定义了一些Gaming Mode 的功能,包含可变刷新速率Variable Refresh Rate (VRR),快速媒体切换Quick Media Switching (QMS),快速帧传输Quick Frame Transport (QFT),以及自动低延迟模式Auto Low Latency Mode (ALLM),整体的概念是提高帧的转换速度,减少影音输出到萤幕时的延迟,让使用者在游戏的画面转换中减少画面失真或是画面破格的情况。

    简单比较HDMI 2.1 的新增项目如下图十三,以认证来说HDMI 2.1 已全面取代HDMI 2.0,差别在于HDMI 2.1 之下分为FRL 与TMDS 两种模式,目前支援FRL 的Source,Sink 与连接器都已经可以进行测试认证,GRL 也已经有相关测试取证的经验,而DSC,HDR 与Gaming Mode 的相关测试项目还未发表,期盼未来整体技术更加完整,以提升HDMI 影像产业的蓬勃发展。

    图片16-1

    表3:ARC与eARC的比较表

    参考文献

    • HDMISpecification2.1-94919-0215192500
    • https://www.hdmi.org/spec/hdmi2_1

    [/hidecontent]

  • 使用 FPGA XILINX ALTERA INTEL 开发HDMI 之HDCP

    什么是 HDCP,为什么它在 4K 中很重要?

    文章的第一顺序必须是简要解释 HDCP 代表什么以及做什么。开发了高带宽数字内容保护以防止非法复制数字高清媒体。这涵盖了蓝光光盘和全数字传输等实体项目,尤其是 Netflix 和 Hulu 等流媒体服务。HDCP 作为数字版权管理或 DRM 的一种形式存在,它是应用于数字媒体的复制保护的总称。 

     

    bcbc756b3f214634

     

    HDCP 快速介绍

    HDCP 最初由英特尔工程师开发,但逐渐在整个技术和娱乐行业变得普遍。HDCP 经常与 HDMI 混淆,虽然它们是相关的,但它们显然不一样。HDCP 为包括 HDMI 在内的三种主要连接类型提供复制保护和盗版保护。另外两个是 DVI 和 DisplayPort。因此,虽然您不应将 HDCP 与 HDMI 混淆,但请记住,您的所有设备和电缆都必须符合 HDCP 标准才能欣赏4K 内容,因为 HDMI 几乎已经普及。我们所说的设备是指源(流媒体盒、蓝光、PC、游戏机、HDMI 分配器等)、电缆和接收设备——您的投影仪、电视或显示器。即使一个组件缺乏 HDCP 认证,内容也无法以 4K 播放或根本无法播放。您还需要在所有组件上使用相同版本的 HDCP,否则您将获得降级的全高清内容,而不是 4K。在撰写本文时,相关版本是 HDCP 2.2。

    请记住,如果您有智能电视或投影仪,并且无需任何外部设备或电缆(即来自内置应用程序)直接从其操作系统流式传输内容,则 HDCP 不适用。它仅在通过电缆连接各种设备时起作用(双关语警报)。

    另一个注意事项:视频游戏行业并没有采用 HDCP,而是开发了各种其他保护机制,例如 Denuvo。因此,如果您只想将 Xbox 或 PlayStation 连接到仅用于游戏的 4K 显示器,那么您无需担心 HDCP。 

    HDCP 的基本作用是什么?

    该协议在源设备和输入设备之间建立握手,以确保内容已正确创作并防止非法复制。为 HDCP 设计的设备会主动进入彼此的对话并寻找 HDCP 安全密钥。如果密钥丢失,您将无法播放内容,因为设备假定安全性已受到威胁,或者您正在尝试播放电影、电视节目和其他内容类型的盗版版本。

    作为一种不断发展的复制保护形式,在过去的十五年中,HDCP 已被证明对内容所有者非常有用。然而,该协议明显增加了用户的复杂性,随着 4K 的到来,这一点变得更加明显。 

    有不同版本的 HDCP 吗?

    是的。截至 2020 年初,两个主要版本是 HDCP 1.4 和 HDCP 2.2。这就是协议与 HDMI 混淆的部分原因。你看,HDCP 1.4 或多或少与 HDMI 1.3/1.4 重合,而 HDCP 2.2 与 HDMI 2.0 的到来重叠。更令人困惑的是,4K 投影仪、电视和显示器几乎总是在 HDMI 端口旁边印有“HDCP 2.2”。

    HDCP 1.4 专为全高清内容而设计,而 HDCP 2.2 与超高清 4K 媒体相关。随着 HDMI 2.1 于 2020 年进入主流服务,HDCP 2.2 继续成为 4K 享受必不可少的。展望未来,随着 8K 内容的到来,HDCP 的未来迭代肯定会出现。 

    HDCP 如何影响 4K?

    要跨设备查看 4K 内容,您必须确保所有组件都符合 HDCP 2.2,就这么简单。最明确的方案是将 4K 流媒体盒连接到具有非 HDCP 认证 HDMI 端口的廉价 4K 电视、显示器或投影仪。在这种情况下,您很可能会在屏幕上收到一条错误消息并且没有显示。在某些情况下,您会一直到主菜单,但 Netflix 等应用程序将无法播放,并且会显示错误代码或消息。对于游戏机,您将能够玩游戏,因为正如我们所说,游戏尚未在 HDCP 上兴起,但娱乐应用程序同样会拒绝显示。

    一个更常见和烦人的情况会阻止您获得 4K,但会将内容降级为常规的 1080p 全高清。如果您拥有声称为 4K 但仅具有 HDCP 1.4 的投影仪、电视或显示器,就会发生这种情况。与上面没有握手的情况不同,这里我们得到了部分握手。HDCP 协议认为内容是真实的,但怀疑可能有问题或握手无法完全完成。在这种情况下,您将只能观看 1080p 全高清的内容,而不是 2160p 超高清(更广为人知的 4K)的内容。您在 4K 硬件和内容上的投资将被浪费。

    我们已经多次提到握手,这就是底线。HDCP 2.2 和 4K 齐头并进。没有 HDCP 2.2 就无法获得 4K。 

    继续关注 HDCP 2.2

    现在,请确保您为设置获得的所有设备和电缆都清楚地说明了 HDCP 2.2 兼容性。这使您可以享受真实形式的 4K 内容而不会降级。您将遇到的最常见的连接类型是 HDMI 2.0/2.1,但请记住不要将它们与 HDCP 混淆。HDMI 需要 HDCP 才能正常工作。我们不能夸大在 4K 设备上寻找好得令人难以置信的交易的重要性。那些有时会跳过实施 HDCP 2.2 的额外成本和开发,因此不是真正的 4K。现在你知道了!

    为什么 HDCP 2.2 对于播放 4K 超高清或 HDR 内容很重要?

    什么是 HDCP 2.2?

    HDCP 是电影和电视行业使用的复制和内容保护标准。复制保护/内容保护已经存在了很长时间,并且在其早期阶段是阻止您复制商业 VHS 磁带的原因。最新的复制保护技术称为 HDCP(高带宽数字内容保护),用于 Blu-ray™ 播放器、有线电视盒和 Roku 流媒体设备等数字设备的 HDMI 连接。HDCP 2.2专为4K 超高清内容以及具有高动态范围的电影和电视节目而设计。

     

    如果未检测到 HDCP 2.2 支持会怎样?

    如果您的 Roku 播放器未检测到对 HDCP 2.2 的支持,您可能会在设置过程中看到以下消息:

    关于 Roku 设备上的 HDMI 连接

    …或者,当您尝试在“设置” > “显示类型”中更改为 4K 或 HDR 选项之一时,您可能会看到以下消息:

    在 Roku 设备上更改为 4K UHD 时出错

    …或者您在尝试播放 4K 或 HDR 内容时可能会看到以下“检测到 HDCP 错误”消息。

    在 Roku 设备上的 HDMI 上检测到 HDCP 2.2 错误消息

     

    我该如何避免这种情况?

    [hidecontent type=”vip1″ desc=”隐藏内容:会员可查看”]

    查看以下项目以确保您的 Roku 播放器已针对 HDCP 2.2 进行设置。

    1. 使用优质高速 HDMI 电缆– 确保为链中的每个链接使用优质高速 HDMI 电缆。即使是一个链路使用低于标准的电缆也可能导致 HDCP 2.2 故障。
    2. 您的电视必须有一个支持 HDCP 2.2 的 HDMI 输入– 确认您的电视至少有一个支持 HDCP 2.2 的 HDMI 输入。并非所有 4K 电视都支持 HDCP 2.2,包括早期型号和一些鲜为人知的品牌。
    3. 您的 AVR 必须具有支持 HDCP 2.2 的 HDMI 输入– 如果您通过 AVR 连接 Roku 播放器,AVR 还必须支持 HDCP 2.2。事实上,Roku 播放器和电视之间的链中的每个设备也必须支持 HDCP 2.2。检查 AVR 的文档以确保您使用的 HDMI 输入支持 HDCP 2.2。

      如果您有兼容 4K 或 HDR 的电视,但您的 AVR 不支持 HDCP 2.2,您仍然可以获取 4K 或 HDR 视频并使用您的 AVR。你只需要两个连接。将您的 Roku 播放器直接连接到电视上的 HDCP 2.2 输入,然后使用 ARC(音频回传通道)或 S/PDIF(如果可用)将音频从电视路由回 AVR。

      专家提示:如果您使用的是 AVR 并想确定它是否是问题的根源,请尝试将其从链中移除并将您的 Roku 播放器直接连接到电视上的 HDCP 2.2 输入。如果在此配置中检测到 HDCP 2.2 支持,则 AVR 连接存在问题。如果可能,请尝试使用不同的 HDMI 电缆并在 AVR 上输入。

     

    如何确定哪些 HDMI 输入支持 HDCP 2.2?

    如果您的名牌 4K 电视、HDR 电视或 AVR 是在过去几年购买的,那么它很有可能至少有一个支持 HDCP 2.2 的 HDMI 输入。在确定哪些输入支持 HDCP 2.2 时,从显而易见的开始 – 查找标有“HDCP 2.2”的输入。

    注意:在某些电视上,HDMI 输入是通过特殊电缆连接到显示器的外部盒子的一部分。这个外部盒子可能在电视后面,也可能在柜子里。

    • 单一输入– 当只有一个输入支持 HDCP 2.2 时,您可能会在该输入旁边看到一个标签,如下所示:

      突出显示单个 HDCP 2.2 端口的 AVR 背面
      在这些情况下,假设其余输入支持 HDCP 2.2。将您的 Roku 播放器连接到标记的输入。

      • 注意:如果您要连接多个需要 HDCP 2.2 的设备并且您计划使用 HDMI 分配器,请确保它也支持 HDCP 2.2。
    • 多个输入– 当多个输入支持 HDCP 2.2 时,您可能会在多个输入中看到一个标签,如下例所示:

      AVR 背面突出显示多个 HDCP 2.2 端口
      ……或者您可能会在每个输入上看到一个单独的标签,如下图所示。

      AVR 背面突出显示两个 HDCP 2.2 端口
      无论哪种方式,假设任何未标记为支持 HDCP 2.2 的输入。将您的 Roku 播放器连接到任何带标签的输入。

    • 所有输入– 不幸的是,所有输入都支持 HDCP 2.2 的设备可能包含也可能不包含标签以表明这一点 – 每个品牌都不同。如果您没有看到标签但怀疑您的设备支持 HDCP 2.2,请参阅用户手册或在线用户指南。如果您在任何地方都找不到记录的 HDCP 版本,请联系制造商进一步询问。

      一旦您确定所有 HDMI 输入都支持 HDCP 2.2,请将您的 Roku 播放器连接到其中任何一个。

     

    如果我的设备不支持 HDCP 2.2 怎么办?

    您仍然可以享受高清内容。在设置过程中,您的 Roku 播放器将自动选择 720p 或 1080p,而不是 4K 或 HDR。或者您可以从Settings > Display type中选择 720p 或 1080p 。

    [/hidecontent]

  • 使用 FPGA XILINX ALTERA INTEL 开发HDMI 之ARC与EARC您需要知道的一切

    15 多年来,值得信赖的 HDMI 或“高清多媒体接口”一直是电视、投影仪和其他 AV 设备的首选数字连接器。在那段时间里,它发展成为终极的一体式连接,充当各种视频和音频格式的管道,不幸的是,这需要更多的首字母缩略词。

    HDMI ARC(即音频回传通道)是一种符合 HDMI 标准的巧妙协议,理论上,它可以帮助简化复杂的 AV 设置并减少您需要的电缆数量。

    但这有什么意义呢?最新的 eARC 在这张照片中的位置在哪里?继续阅读您需要的所有信息(以及更多信息)…

    什么是 HDMI 和 HDMI ARC?

    HDMI 早在 2002 年就推出了,第一个采用这种高科技连接器的消费套件于 2004 年上市。

    它被宣传为一种将高质量数字图像和声音数据从源“上游”发送到电视、放大器或条形音箱的便捷方式。由于 HDMI 已成为事实上的 AV 连接,传统的模拟插座(如 SCART 和分量视频)发现自己已被置于备件箱中。

    HDMI 接口多年来不断发展,新版本(HDMI 2.1是最新的)带来了对新的音频和视频技术的支持,例如 3D、4K、8K、HDR和高帧率等等。

    直到 2009 年,HDMI ARC 协议才被添加到规格表中。它是作为 HDMI 1.4 版的一部分引入的,从那时起就一直是规范的一部分。

    所谓ARC是指「音频回传信道」( Audio ReturnChannel), 是2009年HDMI论坛提出HDMI1.4版时所增加的附加功能。如果电视与环绕放大机两方均搭载HDMI1.4端口(或高于HDM1.4版本),就可以让环绕放大机的音效从电视回传给环绕放大机或是其它的音响器材,让音响系统能取代电视喇叭发声。

    其实这类的运用并非新创,而是早就存在了,在以前,如果你用电视连接有线电视机上盒或是其它的信号源,又嫌电视机本身的音效不够好,可以透过数字光纤或数字同轴将音频输出给其它的音响器材,以获得较佳的声音质量。而ARC功能的出现,等于可以减化线材的连接,你只要用一条HDMI线,就可以从环放传送影音频号给电视,必要时,这条HDMI线也可以把电视的音效回传给环绕放大机。

    什么时候使用 HDMI ARC?

    描绘场景。您的机顶盒、游戏机和蓝光播放器都通过 HDMI 插入您的电视。

    或者,您的智能电视可能正在使用Netflix或Amazon Prime Video等内置视频应用程序。无论哪种方式,您都不想使用电视的扬声器播放音频——您宁愿听到通过条形音箱或家庭影院放大器播放的所有内容。

    以前,您必须将电视背面的光缆连接到音频设备上的光输入。

    但这是一个混乱的解决方案。理论上,HDMI ARC 解决了这个问题。

    HDMI ARC 消除了对光缆的需求,并允许您将音频从电视上的兼容 HDMI 插座“下行”发送到条形音箱或 AV 接收器上的兼容 HDMI ARC 插座。

    使用 HDMI ARC 需要什么?

    要利用 HDMI ARC,您需要一个电视和音频处理器(AV 接收器或条形音箱)以及匹配的支持 ARC 的 HDMI 插座。

    看看你的电视背面——如果它包含三个或四个 HDMI 插座,你需要找到标有“(ARC)”的那个。标签不是强制性的,但只要您的电视是 2009 年末或更新的型号,就应该有一个供您使用。如果您不确定,请查阅电视的用户手册。

    对于某些电视,HDMI ARC 可能会自动工作。如果没有,您需要使用遥控器并调整一些电视设置,包括关闭电视的内置扬声器并让您的电视将音频发送到外部扬声器或放大器。

    使用 HDMI ARC 不需要新的 HDMI 电缆。任何 HDMI 电缆都应该能够满足这些要求——只有当我们转向 eARC 时,这可能(可能)成为一个问题。但稍后会详细介绍。

    作为该过程的一部分,您应该考虑启用 HDMI CEC(消费电子控制),这样您就可以打开电视并控制条形音箱或放大器的音量,而无需多个遥控器。不过,请注意:打开 HDMI CEC 可能会产生一些不需要的 AV 副作用 – 因此您可能需要先进行试验。

    HDMI ARC 有问题吗?

    担心潜在的口型同步问题?2006 年推出的 HDMI v1.3 添加了自动音频同步功能,尽管它只是可选的。这意味着一些支持 ARC 的产品可以很好地协同工作,而其他产品可能不会。

    目前 ARC 面临的最大问题是制造商不得不选择他们想要包含的协议的哪些元素。

    对所有相关音频编解码器的支持不是强制性的,因此您不能简单地假设电视能够通过 ARC 从电影中发送 5.1 杜比数字或 DTS 音轨。一些电视制造商只支持杜比数字,而另一些则只支持两声道立体声,不攻自破。

    值得注意的是,ARC 不允许您对蓝光和 4K 蓝光上的全脂高品质编解码器进行比特流传输,例如 Dolby TrueHD、Dolby Atmos、DTS-HD Master Audio 或 DTS:X 音轨。它只是剥离了核心 5.1 数据流。如果您想要这种级别的功能,您将需要 HDMI eARC。

    但是,ARC 可以让您从 Netflix、Disney Plus 和 Amazon Prime Video 等流媒体服务接收杜比全景声音频,因为这些服务将杜比全景声嵌入到 ARC 可以处理的有损杜比数字+格式中。

    什么是 HDMI eARC?有什么好处?

    [hidecontent type=”vip1″ desc=”隐藏内容:会员可查看”]

    增强型音频回传通道(也称为 eARC)是下一代 ARC。这是在最新的 HDMI 2.1 规范中实现的功能。

    eARC 的主要好处是大大提高了带宽和速度。这使您可以将更高质量的音频从电视发送到条形音箱或 AV 接收器。

    eARC 可以提供多达 32 个音频通道,包括速度高达 38Mbps 的 8 通道、24 位/192kHz未压缩数据流。

    这意味着目前在蓝光光盘、4K 蓝光和一些流媒体服务上可用的所有那些高比特率格式——杜比 TrueHD、DTS-HD Master Audio 和基于对象的格式,如杜比全景声和DTS: X——都将兼容.

    但制造商是否选择支持他们都取决于他们。

    在纸面上,HDMI eARC 还使兼容设备之间的握手更加顺畅,并且不需要激活 HDMI CEC(它并不总是正常工作)——因此操作多个产品不需要任何额外的步骤来启动和运行。

    与 ARC 一样,您需要两个具有兼容 HDMI eARC 插座的设备才能使协议正常工作。虽然设备不一定要经过 HDMI 2.1 认证,但 HDMI 2.1 认证只是保证支持 eARC。

    带宽提升十几倍的eARCeARC是2017年时HDMI论坛提出HDMI2.1版时,所一并新增的功能,其全名是Enhanced AudioReturn Channel,也就是

    「 增强版音频回传信道」功能的意思。和先前的ARC技术相比eARC提升很多, 在音频传输能力方面,eARC的最大资料率可以达到37Mbps左右( ARC仅有1~3Mbps左右),是十几倍的成长,这让eARC不仅能传送无压缩的5.1或7.1多声道音频(也就是Dolby True HD和DTS HD-MA),而且还能传送先进的「物体导向」音频(也就是Dolby Atmos和DTS:X),至此,网络串流的影音规格有很大部分赶上了4K蓝光光盘的规格。)

    相比之下,旧有的ARC只支持Dolby Digital、DTS、PCM 2.0…这类上一代的声音格式,已经不符合今日的需求。 而eARC的诞生,也促使Netflix在提供网络影片时增加Dolby Atmos音效的比例。

    更多相关参考信息可参见 https://zhuanlan.zhihu.com/p/76274259

    我是否需要新的 HDMI 线缆才能使用 eARC?

    根据 HDMI.org,如果您目前使用带以太网的标准 HDMI 电缆,或带以太网的高速 HDMI 电缆,您应该没问题。带有以太网的超高速 HDMI 电缆肯定可以工作。

    eARC 是否向后兼容 ARC?

    如果您的电视启用了 HDMI eARC,但您的 AV 放大器或条形音箱仅与 HDMI ARC 兼容,您可能会听到声音 – 但 ARC 的带宽限制将意味着您将无法体验高比特率音频eARC 可以提供。所以不,它不是向后兼容的。

    一些没有 HDMI 2.1 芯片组的 AV 接收器和条形音箱可以升级以支持 eARC,但它因制造商和产品而异。这取决于他们是否使用可以接受必要固件更新的兼容硬件。

    时间会证明 eARC 的集成程度会如何,但它似乎很可能会像 HDMI ARC 一样无处不在。

    [/hidecontent]

  • 使用 FPGA XILINX ALTERA INTEL 开发HDMI 之Source,Sink,Cable,Repeater是什么?

    HDMI系统可以划分4个种类,Source、Sink、Cable 和Repeater

    Source可以理解为TMDS信号发射端;比如电脑的显卡,电视盒子。

    Sink直译为槽,即TMDS接收端, 最常见的设备如电脑显示器或者电视机。

    [hidecontent type=”reply” desc=”隐藏内容:评论后查看”]

    Repeater为中继。HDMI中继器(HDMI RP repeater)是最简单的网络互连设备,主要完成物理层的功能,负责在两个节点的物理层上按位传递信息,完成信号的复制、调整和放大功能,以此来HDMI延长器网络的长度。HDMI中继器即基于这样的原理,有效的放大HDMI传输信号,高质的补偿信号衰减,支持更远距离的传输。

    Cable 就是HDMI线缆,其它三个设备通过线缆进行连接。

    [/hidecontent]