当前位置:网站首页>RFFE中MIPI协议
RFFE中MIPI协议
2022-06-30 17:45:00 【全栈程序员站长】
大家好,又见面了,我是你们的朋友全栈君。
MIPI官网
https://www.mipi.org
MIPI联盟
移动产业处理器接口(Mobile Industry Processor Interface 简称MIPI)联盟。
MIPI (Mobile Industry Processor Interface)协议是 MIPI 联盟(MIPI Alliance)提出的用于标准化移动终端系统各器件间通信的通信协议。2003年,ARM,Nokia,ST(意法半导体),TI(美国德州仪器)四家公司成立了一个联盟,叫做MIPI联盟。成立这个联盟的目的是把手机内部的接口如摄像头、显示屏接口、射频/基带接口等标准化,从而减少手机设计的复杂程度和增加设计灵活性。
经过多年发展,截止2019年12月,MIPI联盟已经发布48份标准,应用领域也扩展至汽车、工业及AR/VR等领域。MIPI联盟拥有包括终端厂商、器件厂商、平台厂商以及测试厂商在内的339个会员单位。MIPI协议成为手机终端各器件通信的主流标准协议。
MIPI并不是一个单一的接口或协议,而是包含了一套协议和标准,以满足各种子系统(图像子系统[摄像头和显示器]、存储子系统、无线子系统、电源管理子系统、低带宽子系统[音频、键盘、鼠标、蓝牙])独特的要求。
MIPI RFFE(MIPI RF Front-end,MIPI射频前端)是MIPI联盟RFFE工作组在2010年推出的用于移动终端射频前端控制的控制接口标准。在MIPI RFFE推出之前,射频前端的控制解决方案复杂,如果用并行的GPIO口进行控制,需要接口过多,系统成本无法承载。2010年,MIPI联盟推出用于射频前端控制的MIPI RFFE协议。MIPI RFFE协议总线由一根电源线(VIO)以及两根控制线(SCLK和SDATA)构成,实现简单,易于部署,可实现时序范围要求内的近实时控制。
在过去10多年里,无线终端通信协议从3G演进至4G、5G,MIPI协议也不断演进。目前,MIPI协议已演进至V3.0版本,支持多种Trigger模式,适应5G通信系统中更多器件以及更严苛的时序控制要求。
MIPI RFFE系统架构
如下图是MIPI RFFE的系统架构:
一个MIPI RFFE的架构通常包含:
- Signal Bus:包含SCLK和SDATA两条信号线
- RFFE Master Device:控制系统MIPI signal bus的器件,一般为手机系统中的RFIC(transceiver),单个MIPI系统最多可支持4个Master device
- BOM:Bus Own Master,任一时刻只能有一个BOM被激活
- RFFE Slave Device:MIPI受控器件,一般为射频前端模组,例如PA、LNA、Switch等,单个MIPI系统最多可支持15个device
一个Slave器件会有三种状态,分别为Active、Shutdown和Startup。
- VIO控制MIPI系统是否Shutdown
- 当VIO=high时,MIPI进入Startup状态,随后自动进入active状态
MIPI RFFE的ID配置
MIPI RFFE中定义了多种ID,ID作为MIPI中Slave器件的识别代号有着非常重要的作用。
MIPI RFFE包含的相关ID以及对应寄存器地址、说明如下:
- MID(Manufacturer ID):每个厂商在加入MIPI Alliance之后都会被分配一个专门的MID,可以从官网(https://mid.mipi.org/)查询到
- PID(Product ID):由厂商自行管理给不同产品配置不同的PID,在MIPI RFFE V2.1引入了Extend-PID,这样PID就包含16bits供配置
- USID(Unique Slave ID):MIPI bus主要通过USID对Slave器件进行寻址,USID共4bits 16组状态,但一个MIPI bus上最多15个Slave器件,MIPI RFFE定义SID=0b0000时为广播ID,即BSID(Broadcast Slave ID)
MID和PID所对应的寄存器都是read-only,而USID一般有一个默认的值,同时可以支持可编程。原因是MIPI指令是以USID进行寻址的,当一个MIPI bus上的所有Slave器件存在两个或以上的USID是相同的时候,会导致无法区分,因此可编程的USID至关重要。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/132249.html原文链接:https://javaforall.cn
边栏推荐
- Infineon - GTM architecture -generic timer module
- Flink series: checkpoint tuning
- 如何做好软件系统的需求调研,七种武器让你轻松搞定
- TCP粘包问题
- Cloud Native Landing Practice Using rainbond for extension dimension information
- 秉持'家在中国'理念 2022 BMW儿童交通安全训练营启动
- Troubleshooting MySQL for update deadlock
- MySQL找不到mysql.sock文件的临时解
- TiDB Dashboard里面可以写sql执行吗
- mysql for update 死锁问题排查
猜你喜欢

Multipass中文文档-设置图形界面

金融服务行业SaaS项目管理系统解决方案,助力企业挖掘更广阔的增长服务空间

opencv数据类型代码表 dtype

Swin-transformer --relative positional Bias

详解单例模式

Infineon - GTM architecture -generic timer module

Countdowncatch and completabilefuture and cyclicbarrier

Dependencies tool to view exe and DLL dependencies

Cloud Native Landing Practice Using rainbond for extension dimension information

When selecting smart speakers, do you prefer "smart" or "sound quality"? This article gives you the answer
随机推荐
Entry node of link in linked list - linked list topic
【TiDB】TiCDC canal_json的实际应用
TCP粘包问题
Dlib库实现人脸关键点检测(Opencv实现)
Deep learning compiler understanding
「杂谈」对数据分析未来的几点思考
Rust 书籍资料 - 芽之家书馆
AI首席架构师10-AICA-蓝翔 《飞桨框架设计与核心技术》
torch stack() meshgrid()
Helping the ultimate experience, best practice of volcano engine edge computing
TiDB Dashboard里面可以写sql执行吗
MySQL cannot find mysql Temporary solution of sock file
Redis - persistent RDB and persistent AOF
MRO industrial products procurement management system: enable MRO enterprise procurement nodes to build a new digital procurement system
Sword finger offer 17 Print from 1 to maximum n digits
LeetCode动态规划经典题(一)
Rhai - Rust 的嵌入式脚本引擎
Vulnerability recurrence ----- 38. Thinkphp5 5.0.23 Remote Code Execution Vulnerability
[零基础学IoT Pwn] 环境搭建
一点比较有意思的模块