MIPI协议简介

MIPI协议简介MIPI协议简介 介绍 MIPI联盟定义了一套接口标准,把移动设备内部的接口如摄像头、显示屏、基带、射频接口等标准化,从而增加设计灵活性,同时降低成本、设计复杂度、功耗和EMI。未来的产品都将朝着移动的方向发展,例如智能手机、数码相机、摄像机、平板电脑、媒体播放器、游戏机等,这些产品需要能执行多任务,包括处理多个不同的传感器如麦克风、图像传感器、磁罗盘、三轴加速度计和精细的触摸屏…

大家好,又见面了,我是你们的朋友全栈君。

MIPI协议简介

  1. 介绍

MIPI联盟定义了一套接口标准,把移动设备内部的接口如摄像头、显示屏、基带、射频接口等标准化,从而增加设计灵活性,同时降低成本、设计复杂度、功耗和EMI。

未来的产品都将朝着移动的方向发展,例如智能手机、数码相机、摄像机、平板电脑、媒体播放器、游戏机等,这些产品需要能执行多任务,包括处理多个不同的传感器如麦克风、图像传感器、磁罗盘、三轴加速度计和精细的触摸屏等,它们也要能够扑捉、处理及播放高清晰度的音频、视频和图像,能通过WiFi或者2G/3G/4G网络上网冲浪,以及能够支持GPS导航和移动定位服务(LBS)。

 

当然每种产品各有不同。为了更好地说明问题,我们假设这样一个常见的由电池供电的系统(移动设备),它包括一个应用处理器、一些存储器、数字摄像头和麦克风等传感器、显示屏和扬声器等输出设备、一个基带芯片和一个射频(RF)芯片。在一些情况下,除了像传感器和输出设备等外围设备外,许多这些功能模块可能会被集成到一个SoC中,要不就是用一个或多个SoC以增加现有应用处理器的能力。无论怎样,最终这个产品都需要用到某种芯片与芯片、传感器与芯片以及芯片与显示器之间的通信机制。

 

当许多人听到和硅片有关的IP时,他们的条件反射就是:它应该是像微处理器(ARM、MIPS)或者数字信号处理器(DSP)内核一样酷的东西。然而除了这些重要的内核外,奋战在第一线的设计工程师们知道,构建他们SoC非常重要的IP中,其实很多是用来实现接口应用的。

 

随着时间的推移,涌现出了许许多多的接口标准,例如UART协议、I2C、I2S、SPI、SDIO等,同时也出现了各种与摄像头传感器和显示器相关的并行接口,多种不同的接口标准导致了设计时的混乱。移动设备的设计人员在设计某个功能系统时,可能得处理多达五种相互有冲突的专用物理层接口。

 

多种不同的标准不利于设备接口的互联互通,也限制了产品开发者的选择。例如有时无法用一个更便宜的传感器来替代现有的,因为两者常常是基于不同的接口标准。

 

至于并行接口,通常摄像头传感器要涉及10路以上信号,而显示器则涉及到多达20路甚至更多,这么多路信号可能导致传输拥塞。另外并行连接器的费用、大小、重量都得考虑;还有一个是可靠性,因为每个信号和节点都可能是导致故障的原因。另外,随着技术的发展,硅片正不断缩小,也就意味着移动设备的芯片会被封装得越来越轻小,而这样的封装会用到的输入输出引脚更少,使得并行接口更缺乏吸引力。

 

为了解决移动设备中的这些问题,在2003年,一些企业联合组建了MIPI(移动行业处理器接口)联盟。联盟的目的是制定一套用于移动设备和消费类电子产品的接口标准,使这些设备的接口既能增加带宽、提高性能,同时又能降低成本、复杂度、功耗以及EMI。MIPI主要针对下列系统部分:图像子系统(摄像头和显示器);存储子系统;无线子系统;电源管理子系统;低带宽子系统(音频、键盘、鼠标、蓝牙)。

 

有一点很重要,MIPI并不是一个单一的接口或协议,而是包含了一套协议和标准,以满足各种子系统独特的要求。传统接口一般都与多个物理层相关,与此不同的是,MIPI接口只在需要时连接到D-PHY或者M-PHY这两个物理层之上。下面我们将介绍已经在开发或者即将开发的MIPI主要标准,还会讨论到一些关于选择MIPI IP的注意事项。

 

  1. CSI-2、DSI和D-PHY标准

MIPI涵盖很多方面,对新手来说很难把所有东西都理解清楚,所以我们先从摄像头串行接口(CSI)和显示器串行接口(DSI)说起。目前发布的CSI-2和DSI都要求最多不超过6路信号,信号数的多少则取决于设计者使用的线路数。另外CSI-2和DSI共享一个名为D-PHY的通用物理层接口,这样设计是为了提高速率、降低功耗和EMI(如图1)。

 

特别要注意用于连接D-PHY和高层协议的物理层协议接口(PPI)的连接方式,后文会介绍设计人员从不同的IP供应商中选择MIPI IP时需要考虑的各种事项。

 

不同的系统处理多任务会采用不同的方式,这点很重要。拿摄像头传感器来说,一些传感器是直接把未经处理的数据传给应用处理器/SoC,让它来完成后期的处理;而有些传感器则是先进行数据的预处理然后把处理后的结果传给应用处理器/SoC。CSI-2可以处理诸如此类的各种不同情况。

 

并且,虽然CSI-2和DSI都是串行方式传递数据,但他们都保存着与数据流相关的实时信息。例如DSI会包含类似V-Sync和H-Sync信息的事件数据。

 

另外值得提的其他两个MIPI标准是SLIMbus(串行低功耗芯片间媒介总线)和HSI(高速同步串行接口)。SLIMbus是一个低功耗、低速率外围总线,它支持多路时钟/采样率,用于处理控制信号和音频通道等。它可以直接取代现有的I2C和I2S接口,且与这两者的组合使用相比,SLIMbus能提供更多功能并降低功耗。而HSI则是为SLIMbus和CSI-2、DSI接口之间提供中级带宽能力的通用接口。

  1. 基于M-PHY的MIPI协议

前面已经讨论过了,原先的MIPI物理层是D-PHY,但在行业中已经开始向名为M-PHY的下一代物理层过渡。这两个物理层要么提供高速信号,要么提供低功耗信号。M-PHY使用更少的引脚,但是能提供更多的选择和更灵活快速的信号传输,传输速率可达6GB/Sec。与CSI-2和DSI在D-PHY层之上的概念一样,各种高层协议共享M-PHY,如图2所示。

 

统一协议(UniPro)规范为移动设备等消费电子产品内部设备和元器件之间的互联定义了一个分层协议,它适用于包括应用处理器、协处理器、调制解调器等器件以及像控制信号、批量数据传输、打包流等数据传输。

 

UFS(Universal Flash Storage)接口为移动设备中的非易失性存储器(NVM)提供一个简单的标准接口,是一个JEDEC标准中的低层协议,它使用MIPI标准作为子集。

 

CSI-3和DSI-2协议分别是CSI-2和DSI协议的下一代版本。新版本将支持更高的带宽和分辨率,以适用于3D摄像机和3D显示器等新兴应用产品。

 

LLI(Low Latency Interface)接口提供芯片间低延时通信,而高速低功耗DigRFv4接口则用于应用处理器/SoC和基带IC、基带IC和RF IC之间的连接。另外,SSIC(SuperSpeedInterChip)规范正在开发中,它由USB 3.0开发组和MIPI联盟一同开发,目的是将高速USB 3.0引入芯片内部通信中,且只需更少的引脚和更低功耗,并允许使用现有的USB驱动(此接口目前正在定义中)。

 

根据IP Nest预计,到2013年100%智能手机都会使用MIPI标准。MIPI也不只限于在移动市场中使用,而是会变成整个消费类电子产品的标准,只要这类产品带有应用处理器和一大堆外围设备。根据InStat预计,2016年各种消费类电子产品和电脑设备中有70%的产品都将使用MIPI标准。

当选择IP的时候,设计工程师最大的顾虑就是互操作性(例如某个供应商提供的IP能不能与另一个供应商提供的IP一起工作)、集成的简易性、系统的性能和稳定性。如图1的CSI-2和DSI,一些IP供应商提供CSI-2发送器,但另一些提供CSI-2接收器,有些供应商则两者都提供。DSI设备和主机控制器也有这样的情况。事实上,现实世界中情况可能会复杂得多。因为有些IP供应商只提供数字部分IP,而D-PHY IP只能从别的供应商获得,而有些IP供应商则只提供D-PHY或者M-PHY,但对接口的数字部分却了解得不多。这样的问题就是,在关于图1所做的讨论中已经提到,数字IP模块通过PPI与D-PHY通信,但这个接口只是可选的并且取决于判读,总之结果可能会不够好。

 

另一个需要考虑的就是和主IP核相随的IP验证(VIP)的质量。IP供应商一般都构建IP核和相应的VIP,一个潜在的问题就是接口规范并不总是能100%被理解的,于是会产生这样的结果:某一极端情况下可能会在IP中引入一个非标准的判读(甚至有可能是溢出错误),然后就会产生为验证这个错误的VIP。为了改正这个问题,虽然Arasan有生成和使用自己的VIP,但还使用其他领先供应商的VIP来复查核对IP。

Arasan可提供现有的所有MIPI标准数字IP和模拟PHY,包括CSI-2、DSI、SLIMbus和HIS,以及D-PHY和M-PHY,而除了IP还有RTL(用于数字部分)和GSDII(用于模拟模块)。Arasan提供完整的MIPI IP解决方案也即提供RTL/GDSII、ESL、TLMs(传输层模型)、VIP、软件驱动和堆栈以及参考设计和全套硬件开发工具(HDKs)和平台。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/130166.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PID算法详解[通俗易懂]

    PID算法详解[通俗易懂]PID算法是一种具有预见性的控制算法,其核心思想是:1>.PID算法不但考虑控制对象的当前状态值(现在状态),而且还考虑控制对象过去一段时间的状态值(历史状态)和最近一段时间的状态值变化(预期),由这3方面共同决定当前的输出控制信号;2>.PID控制算法的运算结果是一个数,利用这个数来控制被控对象在多种工作状态(比如加热器的多种功率,阀门的多种开度等)工作,一般输出形式为PWM,基本上满足了按需输出控制信号,根据情况随时改变输出的目的。比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例

    2022年9月26日
    0
  • PHPstrom 2021.2激活码破解方法[通俗易懂]

    PHPstrom 2021.2激活码破解方法,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    59
  • Xshell 连接linux主机

    Xshell 连接linux主机0 前言使用 Xshell 连接远程服务器 文件 新建 出现如下图标 主机即为需要连接的 Linux 服务器的 ip 地址 端口号为 22 无须修改 但需要确认远程服务器的 22 端口已经打开 点击左边的 用户身份验证 输入用户名和密码 点击确认后 即可连接 总体流程 就是这个样子 问题就在于 ip 地址 用户名 密码怎么填写 下面几个章节就展示了如何查看远程 Linux 服务器的 ip 用户名和密码等 1 查看 ip 地址查看 ip 地址使用命令 ifconfig 确保能够 ping 通在连接之前 需要确保本地能够 p

    2025年7月11日
    0
  • linux——awk(7):awk数组详解

    linux——awk(7):awk数组详解awk中数组的使用。我们在其他语言中经常会使用到数组,awk中也可以使用。示例如下:与其他不同的是,awk中的数组元素值可以设置为”空字符串“,当设定某一个元素为”空字符串“时,打印出的值就是为”空“(注:”空格“不为”空“)。鉴于awk中,元素的值可以为”空“,我们就不能根据元素的值是否为”空“去判断元素是否存在了。另外即使在模式中没有提前设定某个字符的存在,如果print中进行了引用,…

    2022年7月19日
    14
  • SQL Server2000安全设置内容

    SQL Server2000安全设置内容

    2021年4月27日
    140
  • m-learning_数据库上云

    m-learning_数据库上云这是云从大佬在CVPR上的一篇paper。基本思想就是通过对globalfeature进行多粒度的切分,提取更局部的细节特征。当时在Market-1501,CUHK03,DukeMTMC-reID三个数据集刷新了SOTA纪录,其中最高在Market-1501上的首位命中率(Rank-1Accuracy)达到96.6%,让(ReID)在准确率上首次达到商用水平,很大程度上可以说是推动了整个rei…

    2022年10月5日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号