[导读]来源:公众号瓜大三哥,版权归瓜大三哥所有1MIPI简介2MIPICSI-2简介2.1MIPICSI-2的层次结构2.2 CSI-2协议层2.3 打包/解包层2.4 LLP(LowLevelProtocol)层2.5 通道管理(LaneManagement)层2.6 物理...
来源:公众号瓜大三哥,版权归瓜大三哥所有
1 MIPI简介2 MIPI CSI-2简介2.1 MIPI CSI-2 的层次结构2.2 CSI-2协议层2.3 打包/解包层2.4 LLP(Low Level Protocol)层2.5 通道管理(Lane Management)层2.6 物理层(PHY Layer)3 MIPI CSI2的物理连接4 MIPI CSI2的工作模式5 MIPI CSI2的数据包格式5.1 MIPI CSI2的长包格式5.2 MIPI CSI2的短包格式6 基于FPGA的MIPI接口实现6.1 接口描述6.2 模块分析6.2.1 解串模块6.2.2 协议模块6.2.3 RAW 10bit生成模块6.3 实例应用6.3.1 硬件结构框图6.3.2 IIC配置6.3.3 实验结果7 参考链接
1 MIPI简介
MIPI 是
Mobile Industry Processor Interface(移动行业处理器接口)的缩写。MIPI 联盟是一个开放的会员制组织。2003年7月,由美国德州仪器(TI)、意法半导体(ST)、英国 ARM 和芬兰诺基亚(Nokia)4 家公司共同成立。
MIPI 联盟旨在推进移动应用处理器接口的标准化。MIPI 联盟下面有不同的 WorkGroup ,分别定义了一系列的手机内部接口标准,比如摄像头接口 CSI 、显示接口 DSI 、射频接口 DigRF 、麦克风/喇叭接口 SLIMbus 等。而 MIPI CSI-2 (Camera) and MIPI DSI (Display)则是目前业界使用最广的两个 MIPI 接口标准,而这也是和视频传输相关的标准,所以本文主要对 CSI-2 摄像头标准进行介绍。
2 MIPI CSI-2简介
MIPI CSI(Camera Serial Interface)是由MIPI联盟下 Camera 工作组指定的接口标准。CSI-2 是 MIPI CSI 第二版,主要由应用层、协议层、物理层组成,最大支持4通道数据传输、单线传输速度高达1Gb/s。
2.1 MIPI CSI-2 的层次结构
MIPI CSI-2的分层方法有好几种,根据MIPI联盟的规范,CSI-2 可分为5层,如图1所示,分别为:应用层、组包/解包层、底层协议层(Low Level Protocol)、通道管理层和物理层。
图1协议结构层次详细描述如下
名称
|
描述
|
应用层
|
即是处理原始图像数据的各种算法模块
|
组包/解包层
|
负责将数据按照一定的次序,切割成8比特数据。
|
底层协议层
|
为新生成的数据加上包头包尾,形成符合协议要求的数据流。
|
通道管理层
|
将生成的数据流按照一定次序和要求,进行读写管理,输出数据流。
|
物理层
|
生成MIPI最后的信号波形。
|
2.2 CSI-2协议层
CSI-2 协议层允许多数据流(CSI-2TX)共用一个主机处理器端 CSI-2 接收信号接口(CSI-2RX)。协议层就可以描述有多少数据流被标记并组合在一起,指定了多数据流怎样被标记和交叉存取,因此每个数据流可以在 SOC 处理器 CSI-2 接收器中被正确的重建,才能把各个数据流正确地恢复出来。
2.3 打包/解包层
CSI-2支持多种像素格式图像应用,包括从6位到24位每个像素的数据格式。
在发送端,数据由本层被发送到LLP层(Low Level Protocol)前,本层将应用层传来的数据由像素打包成字节数据;
在接收端,执行相反过程,将LLP层发来的数据解包,由字节转成像素,然后才发送到应用层。8位每像素的数据在本层被传输时不会被改变。
2.4 LLP(Low Level Protocol)层
LLP层包括为串行数据在传输开始(SoT)到传输结束(EoT)之间传输事件和传输数据到下一层,建立位级和字节级同步的方法。LLP最小数据粒度是1字节。LLP层也包括,每字节中各位数值分布解释,即“端”(Endian)分布。
2.5 通道管理(Lane Management)层
为性能不断提升,CSI-2 是通道可扩展的。数据通道数目可以是1,2,3,4,这个依赖于应用中的带宽需求。接口发送端分配(“distributor”功能)输出数据流到一个或更多通道。在接收端,接口从通道收集字节并将之合并(“merger”功能)成为重新组合的数据流,恢复原始数据流序列。
2.6 物理层(PHY Layer)
定义了传输介质 (electrical conductors,导体),输入/输出电路信号的电气特性(electrical parameters)和时钟机制(时序)。即如何从串行位流(Bit Stream)中获取“0”和“1”信号。规范中的这一部分记录了传输介质的特性,并依据时钟和数据通道之间发信号和产生时钟的关系规定了电学参数。
3 MIPI CSI2的物理连接
除地线外,MIPI CSI2一般会有1对I2C通信引脚,1对MIPI差分时钟引脚和1~4对MIPI差分数据信号引脚,如图2所示。
图2信号描述如下
名称
|
描述
|
DATA1 /DATA1-
|
MIPI协议组包生成的差分模拟数据信号第1组
|
DATA2 /DATA2-
|
MIPI协议组包生成的差分模拟数据信号第2组
|
CLOCK /CLOCK-
|
协议组包生成的差分模拟时钟信号
|
SCL/SDA
|
IIC控制通道
|
在典型的应用中发送端在完成对图像的各种处理后,按照协议对数据进行打包,然后通过差分信号线向接收端传输信号,差分信号线一般有一对时钟差分线和多对数据差分线,数据差分信号线的数量与需要传输的数据量的要求有关,数据量越大多对数据线能更容易满足链路的需求。一般情况下两百万到五百万像素的手机使用两对差分数据线,即两个数据通道。而当摄像头像素进一步提高到八百万甚至一千三百万时一般会使用四个数据通道,即四对差分数据线。
与外部进行控制信号交互时,采用的是I2C接口,在MIPI的发送端使用的是I2C从端的IP,MIPI CSI-2接口的控制寄存器连接I2C的从端,这样外部接收装置可以通过I2C去配置MIPI发送端的内部寄存器,以此改变MIPI CSI-2接口内部状态机的持续时间和最后输出数据时的通道数,又或者在调试过程中读出这些寄存器,去做相应的检查,以判断发送端的工作状态,再通过接收端的现象来分析发送端是否工作在正常的状态。
4 MIPI CSI2的工作模式
D-PHY有两种传输模式。
-
HS 高速传输模式,用于传输突发数据,同步传输,信号为差分信号,电平范围为100mv-300mv,传输速度范围是80-1000Mbps。在该模式下传输时,当差分线正端收到 1.2V 信号,负端收到 0V信号时,这时接收端识别为 1。反之为0。
-
LP 低功耗模式,用于传输控制指令,异步传输,信号线为单端,电平范围是0-1.2v,没有用时钟线,时钟是通过两个数据线异或而来的,速度只有10Mbps。在该模式下传输时,当正端接收到300m V,负端接收到100m V 时接收端识别为1,反之则识别为0。
5 MIPI CSI2的数据包格式
MIPI CSI2是一个面向字节的,基于包的协议;它支持任意大小的数据通过短包和长包格式传输。各个包之间由EOT-LPS-SOT序列隔开,如图所示。
LLP包有两种:长包和短包。每个包的传输以SoT(start of transmission)开始,EoT(end of transmission)结束,中间间隙是LPS(Low Power State低功耗状态)。
5.1 MIPI CSI2的长包格式
MIPI CSI2的长包主要有包头、数据包和包尾三部分构成。而包头又可细分为:数据标识(data identifier)、数据包大小(word count)和错误校验码(ECC)构成如下图所示。
其中,数据标识大小为1字节,包含虚拟数据通道号[7:6]和数据类型[5:0]。
数据包大小为2字节,其内容为传送数据的长度,以“字”为单位。
错误校验码大小为1字节,负责对数据包的传输错误进行检查及纠错。
数据包可以传送数据的大小为0~65535字节。
包尾大小为2字节,是数据负荷的检查和。
5.2 MIPI CSI2的短包格式
与长包相比,短包没有数据包和包尾。数据标识DI中的数据类型在0x00到0x0F之间。WC字段是短包的数据域,这个数据可由用户定义。ECC采用的是Hamming Code的方式,能对1bit错误进行纠错,2bit错误进行检查,如下图所示。
短包只是将长包中的WC的位置作为包的数据域,也就是说,短包每次最多只能发两个字节的数据。和长包一致,同样需要先发LSB,再发MSB。应当注意的是,短包一般是用来发送同步控制信号的,一般不建议使用短包来发送用户数据。
同步信号的类型如下:
而当Data Type为0x08到0x0F时,则为Generic Short Packet Code,即可发送用户自定义数据。
比如下面的例子,短包发帧同步信号,长包发数据。
6 基于FPGA的MIPI接口实现
6.1 接口描述
源码请看【资料获取】
csi_4lane_raw10 #(
.series("7SERIES")
) inst (
.ref_clock_in(ref_clock_in),
.reset(reset),
.mipi_phy_if_clk_hs_n(mipi_phy_if_clk_hs_n),
.mipi_phy_if_clk_hs_p(mipi_phy_if_clk_hs_p),
.mipi_phy_if_clk_lp_n(mipi_phy_if_clk_lp_n),
.mipi_phy_if_clk_lp_p(mipi_phy_if_clk_lp_p),
.mipi_phy_if_data_hs_n(mipi_phy_if_data_hs_n),
.mipi_phy_if_data_hs_p(mipi_phy_if_data_hs_p),
.mipi_phy_if_data_lp_n(mipi_phy_if_data_lp_n),
.mipi_phy_if_data_lp_p(mipi_phy_if_data_lp_p),
.m_axis_video_aclk(m_axis_video_aclk),
.m_axis_video_aresetn(m_axis_video_aresetn),
.m_axis_video_tready(m_axis_video_tready),
.m_axis_video_tuser(m_axis_video_tuser),
.m_axis_video_tlast(m_axis_video_tlast),
.m_axis_video_tvalid(m_axis_video_tvalid),
.m_axis_video_tdata(m_axis_video_tdata)
);
端口描述如下:(输入为MIPI接口数据流,输出为axi stream数据流)
端口
|
I/O
|
描述
|
ref_clock_in
|
I
|
200M输入参考时钟
|
reset
|
I
|
复位,高有效
|
mipi_phy_if_clk_hs_n mipi_phy_if_clk_hs_p
|
I
|
HS链路差分时钟
|
mipi_phy_if_clk_lp_n mipi_phy_if_clk_lp_p
|
I
|
LP链路差分时钟
|
mipi_phy_if_data_hs_n mipi_phy_if_data_hs_p
|
I
|
HS链路差分数据
|
mipi_phy_if_data_lp_n mipi_phy_if_data_lp_p
|
I
|
LP链路差分数据
|
m_axis_video_aclk
|
I
|
视频输入时钟
|
m_axis_video_aresetn
|
I
|
视频输入复位,低有效
|
m_axis_video_tready
|
I
|
视频输入准备信号
|
m_axis_video_tuser
|
O
|
视频输出的帧开始
|
m_axis_video_tlast
|
O
|
视频输出行结尾
|
m_axis_video_tvalid
|
O
|
视频输出数据有效
|
m_axis_video_tdata
|
O
|
视频输出数据
|
6.2 模块分析
程序接口如下图,主要由三个模块组成:
-
解串模块(csi_rx_4_lane_link)
-
协议解析模块(csi_rx_packet_handler)
-
RAW10bit(csi_rx_10bit_unpack)生成模块
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
法国格勒诺布尔, Sept. 06, 2022 (GLOBE NEWSWIRE) -- Teledyne e2v 宣布发布其 2百万像素Optimom™,这是 MIPI CSI-2 光学模组系列中的第一款产品。Optim...
关键字:
光学
MIPI
视觉系统
TI
加利福尼亚州圣荷西2022年5月18日 /美通社/ -- 面向当今片上系统(SoC)市场的Total IPTM解决方案领先提供商Arasan Chip Systems宣布其经...
关键字:
TOTAL
IP
AN
MIPI
Arasan宣布为格芯(GlobalFoundries)12nm FinFET工艺节点立即提供作为Tx Only或Rx Only的MIPI D-PHY(SM) IP。...
关键字:
格芯
MIPI
节点
(全球TMT2022年3月9日讯)面向当今片上系统(SoC)行业的Total IPTM解决方案提供商Arasan Chip Systems宣布,立即为GlobalFoundries 12nm FinFET制造节点提供其...
关键字:
FET
节点
MIPI
加利福尼亚州圣何塞2022年2月1日 /美通社/ -- SoC市场领先的全IPTM提供商Arasan Chip Systems宣布推出配有无缝集成VESA DSC IP的MI...
关键字:
MIPI
加利福尼亚州圣何塞2021年12月10日 /美通社/ -- 面向当今片上系统(SoC)市场的领先Total IP™解决方案提供商Arasan Chip System...
关键字:
超低功耗
IP
AN
MIPI
来源:公众号瓜大三哥,版权归瓜大三哥所有1MIPI简介2MIPICSI-2简介2.1MIPICSI-2的层次结构2.2 CSI-2协议层2.3 打包/解包层2.4 LLP(LowLevelProtocol)层2.5...
关键字:
MIPI
BSP
VIDEO
数据流
文章转自知乎[MIPI自学笔记],作者IEEE1364https://zhuanlan.zhihu.com/p/926820471 MIPI概述MIPI是MobileIndustryProcessorInterface的...
关键字:
MIPI
LAN
数据流
时钟
▼关注公众号:工程师看海▼20年发布的小米MIX4无论前置相机还是后置相机都有重要革新,其拥有一块6.67英寸全面屏,将前摄完全隐于屏下。后置相机搭载1亿像素专业主摄,今天来聊一聊那些隐藏在产品背后的技术信息:MIPI揭...
关键字:
接口
相机
MIPI
文章转自知乎[MIPI自学笔记],作者IEEE1364https://zhuanlan.zhihu.com/p/926820471 MIPI概述MIPI是MobileIndustryProcessorInterface的...
关键字:
MIPI
目录1.前言2.什么是MIPIC-PHY3.MIPIC-PHY所需的静噪滤波器 村田推荐4.为MIPIC-PHY开发的共模静噪滤波器5.NFG0NCN_HL3系列的静噪效果6.信号波形验证7.共模静噪滤波器对偏移的...
关键字:
MIPI
▼点击名片,关注公众号▼近日发布的小米MIX4无论前置相机还是后置相机都有重要革新,其拥有一块6.67英寸全面屏,将前摄完全隐于屏下。后置相机搭载1亿像素专业主摄,今天来聊一聊那些隐藏在产品背后的技术信息:MIPI揭秘,...
关键字:
MIPI
相机
接口
最近在学习MIPI接口的LCD驱动开发与调试,这里我主要用的是MIPI-DSI接口,它学习起来真的是太复杂了,特别是对于我这种很久都没写驱动来说更是头疼,但是头疼归头疼,工作咱们还是要完成的,那就只能硬着头皮往下肝吧!首...
关键字:
MIPI
驱动开发
调试
点击上方「嵌入式云IOT技术圈」,选择「置顶公众号」第一时间查看嵌入式笔记!上一篇文章,我们简单的列举了MIPI-DSI驱动的一些常用参数的基本解读,但是那仅仅是走马观花走了一遍,真正深入往里钻的话还是很难的,文章如下:...
关键字:
初始化代码
MIPI
调试
点击上方「嵌入式云IOT技术圈」,选择「置顶公众号」第一时间查看嵌入式笔记!前面我们介绍了一些MIPILCD的基础知识以及LCD初始化序列的配置:LinuxMIPIDSILCD设备驱动开发调试细节学习笔记(一)Linux...
关键字:
MIPI
调试
时序
最近在学习MIPI接口的LCD驱动开发与调试,这里我主要用的是MIPI-DSI接口,它学习起来真的是太复杂了,特别是对于我这种很久都没写驱动来说更是头疼,但是头疼归头疼,工作咱们还是要完成的,那就只能硬着头皮往下肝吧!首...
关键字:
MIPI
驱动开发
调试
点击上方「嵌入式云IOT技术圈」,选择「置顶公众号」第一时间查看嵌入式笔记!前面我们介绍了一些MIPILCD的基础知识以及LCD初始化序列的配置:LinuxMIPIDSILCD设备驱动开发调试细节学习笔记(一)Linux...
关键字:
MIPI
调试
时序
Diodes 公司今日宣布推出的 PI3WVR628 3 通道 2:1 切换器,尺寸仅 1.7mm x 2.4mm x 0.5mm。
关键字:
Diodes
MIPI
切换器
21ic讯, 是德科技公司日前发布首款用于 M8000 系列 BER 测试解决方案中的M8070A 系统软件的软件插件——Keysight M8085A MIPI C-PHY 接收机测试解决方案...
关键字:
是德科技
接收机
MIPI
测试软件
罗德与施瓦茨公司推出基于RTO系列示波器的新选件实现对DSI和CSI-2接口串行协议的触发并支持将采集波形解码为容易读取的协议内容。
关键字:
示波器
调试
MIPI
接口的设计