V-By-One协议说明

这篇具有很好参考价值的文章主要介绍了V-By-One协议说明。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、简介

关于VbyOne接口,V-by-One HS是由日本赛恩电子公司(THine Electornics)开发的适用于平板显示器的信号传输接口标准。目前,广泛应用在多功能打印机等办公设备、车载娱乐设备、机器人、安防系统等领域。

1、较与LVDS的优势

①高速(支持最高4Gbps速率,有效数据速率达3.2Gbps)②低功耗(与固定的速率传输相比,传输速率可变)③低EMI(支持扰码和数据时钟恢复)④支持时钟对齐(时钟信号恢复技术,解决了在LVDS方案下日趋显著化的配线时滞问题)

2、V-By-One 系统link框图

v-by-one,单片机,fpga开发,驱动开发,硬件架构

①TX和RX数据传输线两端需匹配去耦电容②在TX端控制信号LOCKN,HTPDN需上拉电阻③TX和RX之间传输线数量由色深和pixel clock决定(见table 1)④TX端控制信号有H-sync,V-sync,DE和CTL信号。⑤传输端支持预加重(pre-emphasis),接收端支持EQ均衡(equalizer)

3、data line数量选择

v-by-one,单片机,fpga开发,驱动开发,硬件架构

v-by-one,单片机,fpga开发,驱动开发,硬件架构

Pixel Clock=H-total*V-total*refresh rate

例:4K*2K 60Hz,Pixel Clock=4400*2250*60=594Mhz

Color depth=R(6、8、10、12bit)+G(6、8、10、12bit)+B(6、8、10、12bit)

①根据Color depth选取数据包字节模式【byte mode】

 支持byte mode模式:3byte,4byte,5byte

例:10bit色深,则一个pixel需要3(R,G,B)*10bit=30bit的数据,4byte mode可以支持,另外5byte mode也可以支持。

②由于采用8b 10b编码方案,因此物理传输的编码数据量位10位原始数据(只有8位有效数据)。

故编码总bit rate为:

v-by-one,单片机,fpga开发,驱动开发,硬件架构

例:4K*2K,60Hz,8bit:encoded total bit rate= 4*8*(10/8)*594M=23.76Gbps

每Line bit rate,lane数通常选择1 2 4 8 16。

v-by-one,单片机,fpga开发,驱动开发,硬件架构

例,4K*2K,60Hz,8bit:encoded total per rate=23.76GHz/8=2.97Gbps。符合范围(600Mbps-4Gbps)

4、HTPDN,LOCKN信号作用

HTPDN:确认TX与RX之间的连接状态。在RX未连接时,TX端此信号处于拉高状态;当RX连接好后,RX端将此信号拉低;TX端检测到此信号为低时,开始进入CDR training模式。此信号也可以省略使用,TX端直接拉低。

LOCKN:确认TX,RX之间是否完成CDR training。TX端检测到HTPDN拉L后,TX传输CDR training数据,RX进行CDR training。当完成CDR training后,RX将LOCKN拉L,TX端检测到LOCKN为L状态后,开始ALN training结束后开始传输正常数据。

v-by-one,单片机,fpga开发,驱动开发,硬件架构

 二、Link Spec

链接连接的建立方法如下。

①Packer:将来自SOC的输入数据被打包到包含8位数据字符的数据包中。

②Scrambler:打包后,在扰码器中使用伪随机数进行乱码。

③Encoder:扰码的8位数据包数据被编码为10位字符,以实现近似的DC平衡以及CDR的充分的0-1和1-0转换。

④Serializer:通过序列化器将10位数据字符序列化为1位流。

接收器执行逆过程,以将来自发射器的串行数据转换为用于用户逻辑的像素数据。

v-by-one,单片机,fpga开发,驱动开发,硬件架构

1、Packer and Unpacker

一个packet由8bit数据组成;Packet的数据包括:有效数据(data),控制信号(CTL),时序信号(DE,H-sync,V-sync),packet的data mapping由帧byte决定;打包后的数据顺序为高位在后,低位在前。D/K码是用于8bit/10bit扰码器的抽头选择。

v-by-one,单片机,fpga开发,驱动开发,硬件架构

 v-by-one,单片机,fpga开发,驱动开发,硬件架构

(1)data mapping

名词介绍:

FS:framing symbols   帧符

FSACTIVE:Pixel Data在DE为高电平时被打包,在此期间的所有data均为D code

FSBS:Blanking Start 在pixel data的最后一个后插入,V sync和H sync被打包在byte0和byte1中;在此期间的所用data,均为K code

FSBP:Blanking Payload 插入在BS和BE之间;V sync和H sync数据被打包在Byte0和Byte1中,将CTL数据打包在Byte2-4中。在此期间的数据,均为K code

FSBE:Blanking End 插入在第一个像素之前。在此期间的数据均为K code

FSBE_SR:在Vsync后的第一个FSBE和每512个FSBE被FSBE_SR取代,用于重置LFSR(liner feedback shift register)。每次发送FSBE_SR时,FSBE将被重置。

v-by-one,单片机,fpga开发,驱动开发,硬件架构

v-by-one,单片机,fpga开发,驱动开发,硬件架构 v-by-one,单片机,fpga开发,驱动开发,硬件架构

v-by-one,单片机,fpga开发,驱动开发,硬件架构 v-by-one,单片机,fpga开发,驱动开发,硬件架构

2、Scrambler and Unscrambler

在8bit/10bit encoder之前,先进性扰码处理;来减轻EMI问题;每条line,独立使用16位LFSR进行扰码处理。

16位LFSR的G(X)=X16+X5+X4+X3+1

BS,BE,SYNL,SYNH,BE_SR不能被扰码,BP及FSACTIVE可以被扰码;在CDR training阶段的Scrambler必须disable。3

v-by-one,单片机,fpga开发,驱动开发,硬件架构

 3、encode and decode

编码器和解码器与ANSI标准8b/10b兼容。在正常的模式操作中,每个10位的字符代表8位的像素数据(图11)。编码字符在V-by-One®HS流中提供直流平衡和足够的0-1和1-0转换,使接收机能够使用CDR技术恢复链路时钟。

FSBS、FSBE、FSBE_SR帧符号由K码组成,FSBP帧符号由D码组成。FSBS框架符号由BS、SYNH或SYNL字符组成,而FSBE符号除包含SYNH或SYNL字符外,还包含BE或BE_SR字符。下表中描述了SYNH、SYNL、BS、BE和BE_SR等特殊字符。BS和SYNL被分配了相同的代码。BS、SYNH和SYNL代码也称为COMMA,它们用于检测字节边界。

v-by-one,单片机,fpga开发,驱动开发,硬件架构

 v-by-one,单片机,fpga开发,驱动开发,硬件架构

 4、Serializer and Deserializer

v-by-one,单片机,fpga开发,驱动开发,硬件架构

v-by-one,单片机,fpga开发,驱动开发,硬件架构 

 文章来源地址https://www.toymoban.com/news/detail-795656.html

到了这里,关于V-By-One协议说明的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 解决RuntimeError: one of the variables needed for gradient computation has been modified by an inplace

    解决RuntimeError: one of the variables needed for gradient computation has been modified by an inplace

    错误:RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.FloatTensor [6,128,60,80]], which is output 0 of SoftmaxBackward , is at version 1; expected version 0 instead. Hint: enable anomaly detection to find the operation that failed to compute its gradient, with torch.autograd.set_de

    2024年02月08日
    浏览(10)
  • 【完美解决】RuntimeError: one of the variables needed for gradient computation has been modified by an inp

    【完美解决】RuntimeError: one of the variables needed for gradient computation has been modified by an inp

    💛Pytorch深度学习·理论篇(2023版) https://blog.csdn.net/qq_39237205/category_12077968.html   💚Pytorch深度学习·动手篇(2023版) https://blog.csdn.net/qq_39237205/category_12077994.html 【就看这一篇就行】RuntimeError: one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatT

    2024年01月16日
    浏览(31)
  • 台式电脑(ubuntu系统)开机界面循环This product is covered by one or more of the following patents

    台式电脑(ubuntu系统)开机界面循环This product is covered by one or more of the following patents

    开机界面如图所示 问题出现原因:主机太久没开机了,主板默认把uefi改为了legacy 解决办法 进入bios设置,将boot filter设置为uefi

    2024年02月10日
    浏览(13)
  • 报错解决 one of the variables needed for gradient computation has been modified by an inplace operation

    报错解决 one of the variables needed for gradient computation has been modified by an inplace operation

     one of the variables needed for gradient computation has been modified by an inplace operation: [torch.cuda.FloatTensor [16, 64, 256, 256]], which is output 0 of LeakyReluBackward1, is at version 1;  最近跑代码遇到了这样的一个问题,在网上找了很多方法都没有很好的解决,今天就在这个博客里面将所有的解决办法整

    2024年02月16日
    浏览(11)
  • Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definiti

    Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definiti

    Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true 解决方法: 在application.yml或你项目对应的配置文件中添加如下代码: 实践验证: 为了验证该配置信息是否会造成覆盖问题,现模拟一下情况: 项目中有feign模块、service_user模块、serv

    2024年02月04日
    浏览(19)
  • Found multiple CRI endpoints on the host. Please define which one do you wish to use by setting.....

    Found multiple CRI endpoints on the host. Please define which one do you wish to use by setting.....

     1、报错信息 报错信息截图:   2、原因: 没有整合kubelet和cri-dockerd 3、解决办法,在命令后面加上以下选项 例:  创作不易,如果这篇文章对你有帮助,希望能点个赞帮助文章的推广,如果文章有错漏,希望各位能批评指正,谢谢大家。

    2024年02月11日
    浏览(20)
  • FPGA - 单总线协议(one-wire)

    FPGA - 单总线协议(one-wire)

    单总线(one-wire)是美国 DALLAS 公司推出的外围串行扩展总线技术,与 SPI、I2C 等串行数据通信方式不同,它采用单根信号线,既传输时钟又传输数据,而且数据传输是双向的。它具有节省 I/O口线资源、结构简单、成本低廉、便于总线扩展和维护等诸多优点。 单总线英文名

    2024年04月12日
    浏览(9)
  • IIC、SPI、Uart、One-wire等常见协议

    IIC、SPI、Uart、One-wire等常见协议

    IIC两线式 串行 总线,由数据线 SDA 和时钟线 SCL 构成,由于数据在同一条线上传输,因此IIC通信是 半双工 通信方式; IIC使用 多主从架构 , 每个器件都有唯一的识别地址,都可以作为一个发送器或接收器,这里的主从并没有绝对的概念,基本上谁控制时钟线谁就是主设备,

    2024年02月12日
    浏览(10)
  • 51单片机(80951系列)引脚功能说明

    51单片机(80951系列)引脚功能说明

    1.0.1 中断源 AT89C51一共有5个中断源 (1) :外部中断0,外部中断请求信号由 引脚输入,低电平或下降沿有效,中断请求标志位IE0。 (2) :外部中断1,外部中断请求信号由引脚 输入,低电平或下降沿有效,中断请求标志位IE1。 (3)T0:定时/计数溢出时发出中断请求信号,

    2024年02月06日
    浏览(14)
  • STC51单片机解码433M程序说明

    STC51单片机解码433M程序说明

    最近需要用到433M的单片机解码,上网搜了一下。大部分的程序都是基于定时器定时检测。感觉逻辑不够严谨。对于新手理解起来也比较困难。 查看EV1527手册 我是用的240K电阻。得到了每个数据宽度是1.29MS,每个数据宽度为16个LCK,每个LCK宽度大约为80us, 可以算出同步位的高

    2024年02月11日
    浏览(15)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包