HDMI SCDC处理过程
SCDC State and Control Data Channel
接收端如果有SCDC,应该在E-EDID中包含一个有效的HF-VSDB,并且把SCDC_Present位设置为1。在访问SCDC之前,源端必须验证接收端E-EDID中,包含一个有效的HF-VSDB并且SCDC_Present位要设置为1,否则源端不能访问SCDC。
HF-VSDB在H2.0中定义,用于指示宿端支持的H2.0中定义的特性。HF-VDSB与H1.4b中定义的VSDB是有区别的。HF-VDSB不能取代VDSB,它们都是Vendor Specific Data Block
在E-EDID中是否要支持HF-VDSB是可选的,除非支持Table10-5(H2.0)的特征。如果包含的话,HF-VSDB应该位于宿端E-EDID中CEA 扩展版本3,在E-EDID中紧随H14b VSDB。下图是H2.0中Table10-6,它定义了HF-VDSB

在程序中,SCDC主要用于源端更新宿端TMDS_Bit_Clock_Ratio和Scrambler_Enable寄存器位,并且在这个版本中不支持HDMI RX对SCDC的读请求。
SCDC_Present[1bit] = 1,宿端支持SCDC功能
= 0,宿端不支持SCDC功能
以下HDMI Specification 2.0 中的对应的寄存器及地址参数

按照版本2.0,接收端版本应该是1
Table10-19:SCDC—TMDS Configuration

Scrambling_Enable:=1,源端设置该位为1使能宿端加扰
=0,源端设置该位为0,禁止宿端加扰
TMDS_Bit_Clock_Ratio:=0,(TMDS Bit Period)/ (TMDS Clock Period) = 1/10
=1, (TMDS Bit Period) / ( TMDS Clock Period) = 1/40
当宿端支持的TMDS位速率大于3.4Gbps时,就要提供TMDS_Bit_Clock_Ratio控制位。如果TMDS位速率小于3.4Gpbs,源端要设置TMDS_Bit_Clock_Ratio = 0,TMDS 时钟和数据信号要遵从HDMI1.4b。当TMDS位速率在3.4~6.0Gbps时,源端要设置TMDS_Bit_Clock_Ratio = 1,此时TMDS的时钟和数据信号要遵从HDMI2.0的6.1.1.4。设置之后源端可以读取Clock_Detected状态位来确保宿端接收到了传输的TMDS_Bit_Clock_Ratio设置。
源端修改宿端的TMDS_Bit_Clock_Ratio位的操作步骤:
- 源端要暂停传输TMDS时钟和数据
- 写tmds_bit_clock_ratio位
- 等待最小1ms,最大100ms,再启动TMDS时钟和数据的传输
- 源端可以读取Clock_Detected状态位来验证宿端是否检测到了TMDS时钟

Clock_Detected:当宿端接收到有效的时钟信号时该位置1,反之置0
Ch0_Locked:当宿端在通道0上成功解码出数据时该位置高,反之置0.
数据传输协议
SCDC 的I2C从机地址是0xA8/0xA9
(1) 读update flags

(2) 读其余数据

(3) 写操作

上面的程序对应一个地址为0Xa8,先看下在HDMI Specification2.0【10.4.3 Data Transfer Protocols】中的说明:
HDMI Specification2.0对SCDC(Satus and Control Data Channel)的参数进行了详细的讲述。
HDMI SCDC处理过程的更多相关文章
- HDMI EDID 处理过程
DDC的参数 EDID是一种VESA 标准数据格式,其中包含有关监视器及其性能的参数,包括供应商信息.最大图像大小.颜色设置.厂商预设置.频率范围的限制以及显示器名和序列号的字符串.EDID数据标准: ...
- HDMI接口与协议
深入了解HDMI接口 一.HDMI接口的工作原理这张图是HDMI接口的架构示意图.从左边的信号源中你可以看到,HDMI接口的信源可以是任何支持HDMI输出的设备,而接入端也可以是任何带有HDMI输 入 ...
- HDMI介绍与流程
HDMI接口 http://baike.c114.net/view.asp?id=17671-21565442 DDC(Display Data Channel)通道用于HDMI发送和接收端之间交换一 ...
- LVDS/DVI/HDMI Interface
数字视频信号 以SXGA为例,其时序如下: 垂直: 水平: 图中DSPTMG为使能信号,VSYNC为场同步信号,HSYNC为行同步信号.在行场的消隐期(T1与T7),DSPTMG为低电 ...
- 【转】 HDMI介绍与流程
转自:https://www.cnblogs.com/TaigaCon/p/3840653.html HDMI,全称为(High Definition Multimedia Interface)高清多 ...
- HDMI中checksum计算法
在AVI传输过程中有三个字节没有被传输.这是在HDMI1.4B中找到的前三个字节的数据. >> hex2dec('82') ans = 130 下图中的数据中在HDMI中接收到的一串数据, ...
- 转:HDMI介绍与流程
HDMI介绍与流程 HDMI,全称为(High Definition Multimedia Interface)高清多媒体接口,主要用于传输高清音视频信号. HDMI引脚: HDMI有A,B,C, ...
- 转载: HDMI 基础知识
转自:http://www.cnblogs.com/TaigaCon/p/3840653.html HDMI,全称为(High Definition Multimedia Interface)高清多媒 ...
- c++ primer plus 第6版 部分二 5- 8章
---恢复内容开始--- c++ primer plus 第6版 部分二 5- 章 第五章 计算机除了存储外 还可以对数据进行分析.合并.重组.抽取.修改.推断.合成.以及其他操作 1.for ...
随机推荐
- ADB文件及文件夹操作
1.创建文件夹: adb shell mkdir /data/local/tmp/local多级的一次只能创建一级adb shell mkdir /data/local/tmp/local/tmp 2 ...
- 生产者-消费者(wait-notify实现)
使用wait/notify来实现生产者消费者时能够达到在线程阻塞的效果,这样就不会出现轮询,然后浪费cpu时间的目的.代码如下:1. 状态类,表示是否已经生产: package com.demo; p ...
- JAVA性能优化:35个小细节让你提升java代码的运行效率
代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是, ...
- android 开发 View _3_ View的属性动画ValueAnimator
ValueAnimator ValueAnimator继承自抽象类Animator.要让属性动画渐变式地更改对象中某个属性的值,可分两步操作:第一步,动画需要计算出某一时刻属性值应该是多少:第二步,需 ...
- dubbo配置方式简单介绍
原地址:http://www.cnblogs.com/chanshuyi/p/deep_insight_dubbo_config.html 一.介绍 Dubbo 采用全Spring配置方式,透明化接入 ...
- 4-29 c语言之栈,队列,双向链表
今天学习了数据结构中栈,队列的知识 相对于单链表来说,栈和队列就是添加的方式不同,队列就相当于排队,先排队的先出来(FIFO),而栈就相当于弹夹,先压进去的子弹后出来(FILO). 首先看一下栈(St ...
- JAVA算术运算符
算术运算符 +.-.*(乘号)./(除号,取商).%(取余数.取模) 特殊的运算符:++(加加).--(减减) int a = 1; a+=10; 等同于a=a+10; a-=5; 等同于a= ...
- FP数据库配置文件
- 大数据入门到精通7--对复合value做reducebykey
培训系列7--对复合value做reduce 1.做基础数据准备 val collegesRdd= sc.textFile("/user/hdfs/CollegeNavigator.csv& ...
- Python设计模式 - UML - 用例图(Use Case Diagram)
简介 用例图主要是从用户的角度出发对软件产品的功能及执行者进行描述的. 用例图是从需求分析到软件交付的第一步,图示化展示参与者与参与者之间.参与者与用例之间.用例与用例之间的关系,帮助开发人员更好的理 ...