当前位置:网站首页>MIPI C-PHY协议你了解吗?手机高速接口之一
MIPI C-PHY协议你了解吗?手机高速接口之一
2022-06-23 15:03:00 【工程师看海】
MIPI C-PHY是手机中的重要接口,它的速率比D-PHY还要高,其速率单位是symbol/s/lane,而D-PHY的速率单位是bit/s/lane,换算关系是1 Symbol = 2.28 bits。
以前介绍过D-PHY相关内容:
https://www.dianyuan.com/eestar/article-3322.html
今天着重介绍下C-PHY内容,包括对协议的人肉解析、C-PHY不需要时钟的原因,内容较多,建议收藏。
C-PHY和D-PHY在pin map上有个重要的区别:C-PHY没有单独的时钟通道,它的时钟隐藏在通信的时序之中。Dphy是每条lane是一对差分线,而Cphy每条lane是3条数据线,彼此差分。下图是使用3 lane的C-PHY接口链路示意图,一条lane包含3条信号线,3条信号线彼此做差分。
同D-PHY一样,C-PHY也有LP(低功耗)和HS(高速)两种工作模式,我们着重介绍HS时的特点。
先看下C-PHY的波形,下图是一条lane中A、B和C三根数据线在高速模式时、分别对地的单端信号的波形,可见C-PHY在高速模式时是有高、中、低三种电平状态。
这三条线彼此作差后得到的眼图波形如下图,三种电平彼此作差,作差后的眼图有3个窟窿4种电平,从上到下的4个电平依次定义为strong1,weak1,weak0,strong0。
那么是strong是怎么通过单端信号得到的呢?
Wire state(线状态)
C-PHY按照信号线不同高低电平搭配被分成6个wire state,分别为+X、-X;+Y、-Y;+Z、-Z,详见下表。
举例说明:当A、B、C三条线在HS模式下,分别为高、低、中这三种电平,则将此时的wire state定义为+X,见下图+X部分;同理,当A、B、C分别为高、中、低时,则定义为-Z。
Strong 1、weak1的定义
CPHY每条lane分为A、B、C三根信号线,两两作差就是Va-Vb、Vb-Vc、Vc-Va,得到的差具有4种电平,从上到下分别被定义为strong1,weak1,weak0,strong0。比如上图中,+X状态下,Va-Vb(红-绿)得到的电平最高,被定义为strong1;-Y状态下,Va-Vb得到的电平为弱高,被定义为weak1。以此类推就可以得到weka0和strong0了,就和下面测试时的眼图对应上去了。
协议解析
我们要传输的信息是被编码到wire state中的,上文已经介绍CPHY具有+x、-x、+y、-y、+z、-z 6种wire state,当信号处于其中一种状态时,只能往剩下的5中状态切换,不会保持不变,哪怕CPHY传输的数据流不变,信号本身也会一直变化,信息被编码到状态与状态切换之中,被称之为symbol编码,换句话说,一共只有6条路,你占了一条,接下来只能往剩下的5条路里走。
举例如下,wire state从+X到-Y变化时,根据下面的状态转移图,传输的信息(symbol)就是011;从-Y到-Z传输的信息就是010,如果想要继续保持传输010,那么wire state就要从-Z变到-X,数据和时钟信息都被编码到symbol中,即都被编码到切换的过程中了,因此Cphy也就不需要格外拉一条时钟线了。
以上就是CPHY的介绍。
边栏推荐
猜你喜欢

MySQL日志管理怎么配置

Important knowledge of golang: detailed explanation of context

Why is Xiaomi stuck in the chip quagmire?

嵌入式软件架构设计-程序分层

这五年的6个编程感悟!

变压器只能转换交流电,那直流电怎么转换呢?

golang 重要知识:定时器 timer

golang 重要知识:sync.Once 讲解
![[datahub] LinkedIn datahub learning notes](/img/ca/9c4a87d38155edd093cbb81d81ee81.png)
[datahub] LinkedIn datahub learning notes

Starting from 3, add paging function in the business system
随机推荐
Une compréhension simple du tri rapide
SFOD:无源域适配升级优化,让检测模型更容易适应新数据(附论文下载)
VIM backup history command
Six programming insights in these five years!
32. compose beautiful touch animation
RF analyzer demo setup
golang 重要知识:sync.Cond 机制
FPN特征金字塔网络
golang 重要知识:sync.Once 讲解
golang 重要知识:context 详解
变压器只能转换交流电,那直流电怎么转换呢?
F5《2022年应用策略现状报告》:边缘部署及负载安全成亚太地区关注焦点
要买的理财产品年限长,划算吗?
Horizon development board commissioning
php 二维数组插入
MySQL create and manage tables
电子学会图形化一级编程题解析:猫捉老鼠
SQL注入漏洞(原理篇)
How is it safe to open an account for futures? Which futures company has a relatively low handling fee for futures and is suitable for retail investors to open an account?
JS garbage collection