当前位置: 首页 > article >正文

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析LLP (二)

低层协议(Low Level Protocol, LLP)详细解析

1. 低层协议(Low Level Protocol, LLP)核心特性

  • 包基础 :基于字节的包协议,支持 短包 (32位)和 长包 (可变长度)。
  • 关键功能
    传输任意数据负载(与格式无关)
    支持4个虚拟通道(Virtual Channel)
    帧/行同步包(Frame/Line Start/End)
    数据类型(Data Type)标识负载格式(如YUV/RGB/RAW)
  • 错误检测 :16位CRC校验(长包负载)
  • 错误纠正 :8位包头ECC(仅D-PHY)

2. 包结构详解

(1) 长包(Long Packet)

在这里插入图片描述

  • 包头(PH)字段
    数据标识(DI, 1字节) :高2位=虚拟通道号(0-3),低6位=数据类型
    在这里插入图片描述

    字计数(WC, 2字节) :负载的 字节数 (LSB优先)。
    ECC(1字节) :保护包头(可纠正1位错误,检测2位错误)。

  • 包尾(PF) :16位CRC校验整个负载。

  • 数据包负载规则 :长度=WC字节,值无限制(无嵌入同步码)。

(2) 短包(Short Packet)

在这里插入图片描述

  • 仅含包头 :结构同长包PH,但WC字段替换为 16位用户数据 (如帧/行号)
  • 用途
    同步包 (Data Type 0x00-0x03):
    0x00帧开始(FS)、0x01帧结束(FE)→ 携带 16位帧号 (非零)
    0x02行开始(LS)、0x03行结束(LE)→ 携带16位行号
    通用包 (Data Type 0x08-0x0F):传递用户自定义事件(如快门控制)。

3. 关键机制

(1) 虚拟通道(Virtual Channel)
  • 作用 :复用4个独立数据流(如多摄像头)。
  • 实现 :DI字节高2位标识通道号(0-3),接收端据此分流(图44, 67)。
  • 特性 :各通道有独立帧同步(FS/FE包),支持不同帧率。
(2) 数据交织(Data Interleaving)
  • 方式

  • 类型交织 :同一通道内不同DataType包交替传输,基于相同的帧开始、帧结束控制,传输不同数据类型的包。
    在这里插入图片描述

  • 通道交织 :不同Virtual Channel包混合传输,每个虚拟通道单独控制自己的帧开始、帧结束包。
    在这里插入图片描述

  • 规则 :同一帧内同通道同DataType包长度必须一致(YUV420例外)。

(3) DPHY错误处理
  • 包头ECC
  • 基于 汉明码(24位) ,覆盖DI+WC字段,可以纠正24-bit数据的一个错误,标示两个错误的存在,提高传输的鲁棒性。
  • 负载CRC :多项式 x¹⁶ + x¹² + x⁵ + 1,初始值0xFFFF
    在这里插入图片描述

4. 传输规则

  • 包间距 :包间必须进入 低功耗状态(LPS)
    在这里插入图片描述

  • 时序控制
    在这里插入图片描述

  • 垂直同步 :FS/FE包位置可调,实现像素级精准帧定时

  • 水平同步 :LS/LE包位置可调,控制行消隐期

  • 空白期定义
    行消隐(Line Blanking) :包尾到下一包头之间
    帧消隐(Frame Blanking) :FE包到下一FS包之间

http://www.lryc.cn/news/2404308.html

相关文章:

  • 第4天:RNN应用(心脏病预测)
  • Python训练day40
  • 湖北理元理律师事务所:债务优化中的民生保障实践
  • Vue-Todo-list 案例
  • GIC700概述
  • 动静态库的使用(Linux)
  • Flutter、React Native 项目如何搞定 iOS 上架?从构建 IPA 到上传 App Store 的实战流程全解析
  • 统信桌面专业版如何使用python开发平台jupyter
  • 移除元素-JavaScript【算法学习day.04】
  • Android 相对布局管理器(RelativeLayout)
  • DuckDB + Spring Boot + MyBatis 构建高性能本地数据分析引擎
  • 什么是预训练?深入解读大模型AI的“高考集训”
  • 鸿蒙仓颉语言开发实战教程:购物车页面
  • OPENCV的AT函数
  • 【走好求职第一步】求职OMG——见面课测验4
  • ISO 17387——解读自动驾驶相关标准法规(LCDAS)
  • 智慧零售管理中的客流统计与属性分析
  • Ps:Adobe PDF 预设
  • Python Excel 文件处理:openpyxl 与 pandas 库完全指南
  • 九、【ESP32开发全栈指南: UDP通信服务端】
  • 靶场(二十)---靶场体会小白心得 ---jacko
  • 【EasyExcel】导出时添加页眉页脚
  • ​​高频通信与航天电子的材料革命:猎板PCB高端压合基材技术解析​​
  • 如何区分 “通信网络安全防护” 与 “信息安全” 的考核重点?
  • Java 中 ArrayList、Vector、LinkedList 的核心区别与应用场景
  • WPF技术体系与现代化样式
  • Redis 与 MySQL 数据一致性保障方案
  • Sentry 接口返回 Status Code 429 Too Many Requests
  • 数学建模期末速成 聚类分析与判别分析
  • 【工具教程】PDF电子发票提取明细导出Excel表格,OFD电子发票行程单提取保存表格,具体操作流程