0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MIPI-DSI中的视频帧传输

星星科技指导员 来源:synopsys 作者:Hari Balisetty,Broa 2023-05-25 15:13 次阅读

DSI是一种高速串行接口,旨在通过将数据实时传输到显示模块而不将数据存储在设备中来降低移动设备中显示子系统的成本。但是,这意味着必须使用正确的时序信息发送数据。验证MIPI-DSI最重要的方面是与视频帧传输相关的时序参数。我与几个VIP用户一起完成了整个练习,并认为分享这将很有用,因为它将使其他人了解视频帧传输所涉及的复杂性。

让我们以888×640分辨率的RGB480视频帧为例,了解传输视频帧的相关时序细节。

poYBAGRvCmWAfA4eAACOACKfEQM015.png

图 1:888×640 显示屏中的 RGB480 视频格式

在RGB888数据格式中,每个像素有3个字节(24位)的信息,每个分量(R和G和B)有1个字节(8位)。在 640×480 分辨率帧中,每行有 640 像素,帧有 480 行。让我们看看需要与此RGB数据一起发送的时序信息。

每个视频帧应具有以下信息(按顺序):

VSYNC (同步信息)

VBP(垂直后门廊计时信息)

VACT(活动视频数据以及水平后门廊和前门廊定时)

VFP(垂直前门廊定时信息)

VSYNC (同步信息)

VSYNC具有同步脉冲的信息。每个脉冲信息通过发送垂直同步开始或水平同步开始数据包(第一个脉冲单独具有VSS,其余脉冲具有HSS)进行传输,然后是水平同步活动(只不过是一个消隐数据包),水平同步结束和BLLP(如果时间允许,可以引入低功耗状态,这又是一个屏蔽数据包), 参见图 2。此信息针对每个 VSA(垂直同步活动)线路发送。在简化模式下(非突发/突发同步事件),主机只能发送同步脉冲的启动事件(仅限VSS或HSS),外设可以在需要时从收到的同步事件中重新生成同步脉冲。每条VSA线路应在tL(线路时间)范围内,时序参数由外设定义。

在此状态下涉及的定时参数是tL(线路时间),tHSA(水平同步活动时间)和BLLP,这些时序参数的约束显示在VACT部分中,因为这些参数还取决于VACT中的其他参数(HBP,HACT,HFP)。

VBP(垂直后门廊计时信息)

VBP具有垂直后廊定时的信息。VBP 线路信息通过发送垂直同步端或水平同步开始(第一行单独具有 VSE,其余具有 HSS)数据包,然后发送水平同步活动(只不过是消隐数据包)、水平同步端和 BLLP(如果时间允许,可以引入低功耗状态,这又是屏蔽数据包)来传达), 参见图 2。此信息将针对每个 VBP 行发送。每个 VBP 行都应在 tL(行时间)范围内。

poYBAGRvCmGAVahnAADRIzMTns8432.png

图2:具有同步脉冲定时信息的非突发(来源:DSI 1.1规范)

此状态期间涉及的定时参数与 VSA 中的定时参数相同,并将在 VACT 中涵盖,因为这些参数还取决于 VACT 中的其他参数(HBP、HACT、HFP)。

VACT(活动视频数据以及水平后门廊和前门廊定时)

VACT具有活动视频数据以及水平后廊和水平前廊的信息。每个VACT行都有以下信息

HSYNC(水平同步信息):

这与我们在VSA或VBP中看到的Hsync信息相同。这是由HSS传达的,其次是HAS和HSE。同步信息应在外设定义的tHSA定时参数范围内。

HBP(水平后门廊计时信息):

这只不过是一个带有水平后门定时信息的空白包。该信息应在外设定义的tHBP时序参数范围内。

活动线数据(在我们的示例中为 RGB888 数据)

这是具有24位像素信息的活动视频像素数据。每条线路作为一个长数据包发送,也可以分成多个长数据包。但是多条线路不能合并为一个长数据包,在这种情况下,我们可能无法传达第二条线路的 HBP 和 HFP。此信息应在外设定义的 tHACT 定时参数范围内。

HFP(水平前门廊定时信息)

这只不过是一个带有水平前廊计时信息的空白包。该信息应在外设定义的tHFP定时参数范围内。

每行应在tL(线路时间)定时参数范围内。在此状态下涉及的定时参数为tL,tHSA,tHBP,tHACT,tHFP。HSA 应在 tHSA 最小和最大范围内。同样,Line、HBP、HACT、HFP 应在相应的最小和最大时序参数范围内。很难对实时进行约束,因此我们建议将时间转换为字数和字数限制。例如,如果最小 tL 为 tL_MIN,最大 tL 为 tL_MAX则通过将其除以比特率然后除以 8(获得字节数 = 字数)来计算字数。同样,从其他参数的最小和最大范围计算其字数。

bit[15:0] min_line_wc = ((tL_MIN ) / bitrate) / 8;
bit[15:0] max_line_wc = ((tL_MAX ) / bitrate) / 8;
// Note: tL_MIN and tL_MAX are in micro seconds and so make sure the units of bitrate is also in micro seconds

constraint constraint_hsa {
hsa_wc inside {[min_hsa_wc:max_hsa_wc]};
}

constraint constraint_hbp {
hbp_wc inside {[min_hbp_wc:max_hbp_wc]};
}

constraint constraint_hfp {
hfp_wc inside {[min_hfp_wc:max_hfp_wc]};
}

constraint constraint_hact {
hact_wc inside {[min_hact_wc:max_hact_wc]};
// Below constraint is required to make sure HACT has one byte of data for RGB in each pixel
(hact_wc % 3) == 0;
}

constraint constraint_line {
line_wc inside {[min_line_wc:max_line_wc]};
// LINE = HSS (4bytes short packet) + HSA + HSE (4bytes short packet) + HBP + HACT + HFP
line_wc == 4 + hsa_wc + 4 + hbp_wc + hact_wc + hfp_wc;
}

constraint constraint_bllp {
//BLLP = LINE – HSS (4bytes short packet) – HSA – HSE (4bytes short packet)
bllp_wc == line_wc – 4 – has_wc – 4;
}

线路时序约束为hsa_wc、hbp_wc、hact_wc、hfp_wc、HSS 和 HSE 的总和。HSS 和 HSE 是 2 个短数据包,因此每个数据包 4 个字节。BLLP(用于 VSA、VBP 和 VFP)的字数应减去字数统计和 2 个短数据包,HSS 和 HSE 各有字数。

VFP(垂直前门廊定时信息)

VFP具有垂直前廊计时的信息。VFP 线路信息通过发送水平同步开始数据包,然后发送水平同步活动(只不过是一个消隐数据包)、水平同步结束和 BLLP(如果时间允许,可以引入低功耗状态,这又是一个消隐数据包)来传达。此信息针对 VFP 时间发送。每条 VFP 线路都应在外设定义的 tL(线路时间)计时参数范围内。

DSI1.1规范(表22,第8.11.5节)中提到的时序参数范围(最小值和最大值)留给外设供应商的分立器件。除了本博客中解释的非突发同步脉冲之外,还有不同的视频帧信息发送模式,但有微小的变化,例如,在非突发同步事件中,不需要发送HSA和HSE,而只需使用HSS即可。同样,DSI也具有突发模式,其中像素数据使用时间压缩突发格式在更短的时间内传输,从而为LP状态提供更多时间。让我们在后续博客中看一下这些其他模式。希望此博客对那些在DSI中验证视频帧传输的人有所帮助。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口
    +关注

    关注

    33

    文章

    7648

    浏览量

    148529
  • 显示屏
    +关注

    关注

    28

    文章

    4230

    浏览量

    72695
  • DSI
    DSI
    +关注

    关注

    0

    文章

    38

    浏览量

    42167
收藏 人收藏

    评论

    相关推荐

    实现MIPI DSI发送桥完整的HDL设计

    MIPI DSI发送桥参考设计。 DSI(显示串行接口)发送参考设计是一种完整的HDL设计,可以使MachXO2,MachXO3或ECP3 FPGA驱动DSI接收设备。在该设计
    发表于 04-30 07:58

    请问如何使用示波器分析手机MIPI-DSI协议?

    如何解析MIPI的显示模组接口协议MIPI-DSI
    发表于 06-15 09:10

    请问用RK3399的两个MIPI-DSI接口连接显示屏能否实现双屏异显功能?

    用RK3399的两个MIPI-DSI接口连接显示屏能否实现双屏异显功能??
    发表于 12-30 07:17

    MIPI协议DSI和CSI是什么?

    议,MIPI协议包含了很多部件接口的协议规范。 今天我们所说的MIPI CSI 和 MIPI DSI就是
    发表于 01-13 16:55

    I.MX8:MIPI-DSI挂起/恢复失败怎么解决?

    我正在使用 MIPI-DSI 作为 i.mx8mp/i.mx8mm 的显示器。但是遇到暂停/恢复失败的问题:这是错误代码:[27.658410]imx_sec_dsim_drv
    发表于 03-30 08:22

    使用imx8mm处理器的定制板上启用mipi-dsi时遇到问题求解

    我在使用 imx8mm 处理器的定制板上启用 mipi-dsi 时遇到问题。我的面板已连接,连接时唯一工作的是背光。我不太确定我是否正确配置了 mipi-dsi,因为我在尝试探测时收到错误 22
    发表于 04-14 07:47

    如何在iMx8DualX QNX平台上启用MIPI-DSI

    MIPI-DSI视频信号输出。 4. 现在主板可以通过I2C与显示器通信,但是不能发送MIPI-DSI视频流给显示器,因为主板不支持MIPI-
    发表于 05-10 06:26

    如何使用示波器分析手机中的MIPI-DSI协议?

    智能手机内部集成了多种设备,为了形成行业统一标准,MIPI联盟发起MIPI(移动行业处理器接口)作为移动应用处理器制定的开放标准。那么如何解析MIPI中的显示模组接口协议MIPI-DSI
    发表于 03-23 10:55 1.7w次阅读

    Firefly-RK3288MIPI DSI简介

    MIPI DSI 使用 Config配置
    的头像 发表于 11-25 10:35 3472次阅读
    Firefly-RK3288<b class='flag-5'>MIPI</b> <b class='flag-5'>DSI</b>简介

    基于MIPI DSI Transmit Bridge图像传感器的参考设计

    查看MIPI DSI传输桥的参考设计。 http://www.elecfans.com/soft/有成千上万的参考设计,可帮助您使项目栩栩如生。
    发表于 01-13 10:25 7次下载
    基于<b class='flag-5'>MIPI</b> <b class='flag-5'>DSI</b> Transmit Bridge图像传感器的参考设计

    HDMI2.1到MIPI-DSI/CSI芯片LT6911GX资料

    HDMI2.1到MIPI-DSI/CSI芯片LT6911GX资料说明
    发表于 01-02 11:34 69次下载

    高性能mipi DSI/CSI至HDMI2.0转换器

    ,从而降低了超高清视频传输的带宽需求、功耗和EMI。HDMI2.0输出支持高达6Gbps的数据速率,为4k@60H 特征 1.单/双端口 MIPI DSI/CSI 接收
    发表于 05-25 18:18 934次阅读

    MIPI DSI转RGB视频转换芯片方案介绍

    MIPI DSI转RGB视频转换芯片方案介绍
    的头像 发表于 08-25 19:09 2782次阅读

    ICN6211:MIPI DSI转RGB视频转换芯片方案介绍

    ICN6211:MIPI DSI转RGB视频转换芯片方案介绍
    发表于 11-15 09:09 2707次阅读
    ICN6211:<b class='flag-5'>MIPI</b> <b class='flag-5'>DSI</b>转RGB<b class='flag-5'>视频</b>转换芯片方案介绍

    LT6911C MIPI DSI/CSI芯片规格书

    ,带1个高速时钟通道和1~4个高速数据通道最大1.5Gb/s/通道,可支持总带宽高达12Gbps。LT6911C支持突发模式DSI视频数据传输,还支持灵活的视频数据映射路径对于2D视频
    发表于 06-13 17:36 10次下载