MIPI CSI

您所在的位置:网站首页 mipi同步序列 MIPI CSI

MIPI CSI

#MIPI CSI| 来源: 网络整理| 查看: 265

一,前言

  本文主要阐述mipi phy layer 到csi2 lane managenment layer 到low level protocol layer的数据接收过程,更高层的byte to pixel以及医用层可按照csi2协议解包.

本文主要参考文献:

1.mipi D PHY specification version 1.2

2.mipi CSI-2 specification version 2.1

二,正文 1.mipi csi-2结构简介

mipi csi-2的结构类似于以太网的分层结构,如下图所示:

phy layer为物理层,通过控制时钟以及数据通道信号的电平值,实现低速模式(low power,或者说低功耗模式)与高速模式(high speed)的切换.

lane management layer 负责检测各通道(lane)低速模式到高速模式的跳变,并检测高速数据的同步头(HS ...00011101...序列),进一步将各通道的同步头对齐到字节,最终各通道的同步头实现对齐.

low level protocol layer,按照csi2协议,解析出帧起始(Frame Start,FS)短包,视频数据长包,以及帧结束(Frame End,FE)短包.输出图像数据,帧有效,数据有效.

byte to pixel unpack format层负责将基于字节的数据,按照协议,还原成各颜色空间/格式的像素数据,比如rgb565,raw10等格式.

2.csi-2采集整体结构

整体结构图如下:

首先运行摄像头配置模块,通过iic总线配置摄像头,是摄像头输出指定格式的视频流.

sensor输出视频流后,phy层接收模块会接收到4通道(或者2通道,可配置)串行双沿差分数据以及一个通道的差分时钟信号.phy层接收模块会调用fpga厂家提供的源语,对输入信号做串并转换以及差分到单端的转换.输出每个通道的两根差分线可输出l0,l1两bit低速信号(4通道就是l0[3:0]以及l1[3:0]),或者输出四路高速视频数据,rx_byte_clk的时钟频率是rx_clk_p/n的四分之一,内部源语的解串比是4:1,再双沿转单沿后,四个通道的数据共32bit数据输出给字节对齐模块.(四个字节之间还没对齐)

字节对齐模块检测各个通道低速模式到高速模式的跳变,并检测高速数据的同步头,先将各个通道的同步头对齐到字节,再将各个通道的同步头也对齐.

解包模块解析出帧起始短包,数据长包,以及帧结束短包.输出图像,后续按照协议将包数据恢复成各种格式的像素.

3.phy层设计

phy层接收模块示意图如下:

GTP_IOBUF_RX_MIPI源语完成差分转单端,逻辑电平转换(不完成双沿转单沿,iserdes以4:1的时钟比,将串行双沿数据转换成8bit单沿并行数据).高低电平转换指示为高时,该源语工作于高速模式,电压摆幅200mv,有利于高速传输数据.指示为低时,源语工作于低速模式,此时源语输出两根低速单端信号.

根据csi-2协议,低速信号LP11->LP01->LP00序列标志着主设备(摄像头)从低速模式进入高速模式.从设备(fpga)可设置一个状态机,先让源语工作在低速模式,实时监测LP11->LP01->LP00序列.监测到该序列后,向GTP_IOBUF_RX_MIPI源语发出转换到高速模式的指示.进入高速模式后,监测各个通道的rx_data_hs是否出现同步头(...00011101...),低位先传,即监测0xB8序列.

4.字节对齐模块设计

序列00011101有可能分布在两拍rx_data_hs[7:0]上,因此需将各个通道的同步头做相应的移位,使得B8位于一个字节之内,然后再对齐各个通道的B8,使得各通道的B8位于同一拍时钟之内.简单代码如下:

assign data_2byte = {rx_data_hs,rx_data_hs_d1};

for(i=0;i



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3