こんにちは! Lattice チーム新人 FAE の ひろみん です!
このブログは、私ひろみんが MIPI の規格を学んでいく勉強ブログです。
MIPI ってなに? DSI/CSI-2 の規格の違いは?Lattice FPGAで設計するには?など
基礎から応用まで お勉強したことを余すことなくお伝えしたいと思っています!
さて、今回は以下、目次に沿ってMIPI インターフェースの基礎を学んでいきたいと思います。
以下よりリンクで飛ぶこともできますのでご確認ください!
【この記事で分かること】
MIPI 規格の基礎について、DSI/CSI-2 の違いや事例を学びます!
・MIPI規格とは?物理層(D-PHY)とプロトコル層(DSI/CSI-2)
MIPI に関わる勉強ブログは、以下まとめリンクよりご覧いただけますので
ご興味ありましたらお読みいただけると嬉しいです!
MIPI規格とは?物理層(D-PHY)とプロトコル層(DSI/CSI-2)
まず、MIPI とはどんな規格か学んでいきましょう!
MIPI とは Mobile Industry Processor Interface の略で、標準化団体 MIPI Allianceが2005年に策定した標準規格です。
スマートフォンや、産業機器、車載用途など主にカメラ周りの製品で使われるインターフェースです。
MIPIは、物理層とプロトコル層に分けることができます。物理層には、D-PHY、M-PHY、C-PHY、A-PHYと種類があります。
それぞれ、以下図のようになります。

今回は、最終的にLattice FPGAで実機で検証をおこないたいと考えているため
Latticeが対応しているMIPI D-PHYについて詳しく学んでいきたいと思います。
MIPI D-PHYには、2種類のプロトコルが存在し、それぞれ用途が異なります。
CSI-2はカメラ周辺、DSIはディスプレイ周りで良く用いられるプロトコルになります。
D-PHY とは ~DSI/CSI-2で構成が変わる?~
まず、D-PHYについて勉強していきましょう!
DSI/CSI-2 で違いはあるのか? LVDS との比較をおこない D-PHYについて理解を深めたいと思います。
D-PHY は物理層となり、DSI/CSI-2 それぞれの構成は、以下のようになります。

まず、DSI の構成です。基本的にクロック 1 Lane とデータ 1, 2, 4 Data Lane となります。
共に差動信号となり、クロックはDDR動作となります。
次に CSI-2 の構成です。D-PHY の構成は、DSI と同じ構成となります。
では、差分は何になるのでしょうか?
DSI/CSI-2 の差分は、Data Lene0 に違いがあります。 DSI はDataLane0 が双方向通信可能となるようです!
DSI では、このData Lane0 を用いて Slave デバイスと相互通信することができます。
D-PHYの構成は DSI/CSI-2 基本的に構成は同じ、唯一の差分は DSI にて Data Lane0が双方向通信になるということがわかりました!
D-PHYとは ~電気的特徴と転送モード~
次に D-PHY の電気的特性について学んでいきたいと思います。
D-PHY には 2つの伝送モード、Low Power(LP) Mode / High Speed (HS) Mode があるようです。
LP Mode では 1.2V 振幅のシングルエンド出力、HS Mode では ±200mV 振幅の差動出力でデータが出力されます。
ではなぜ、2つのモードがあるのでしょうか?以下の転送時の波形を見てみましょう。

上記波形について、詳しくは以降の回で詳しく勉強していきたいと思いますが、
この波形を見る限り、LP Mode と HS Mode を切り替えてデータ転送をおこなうようです。
また、伝送距離は30cm、Dataの伝送速度は HS: Max 2.5Gbps、LP: Max 10Mbpsとなります。
LP Mode では 1.2V 振幅のシングルエンド出力、HS Mode では ±200mV 振幅の差動出力でデータが出力される、
LP/HSを切り替えて通信をおこなうことがわかりました!
D-PYHは、このLP-HSをチップ内で切り替えられるのがポイントになりそうです。
他の規格と比較すると、よりイメージがつくかもしれませんので
LVDSとMIPI 通信との差分を比較しましょう!
D-PHYとは ~LVDSとの比較~
LVDS は入社してから何度か聞いたことがあり、私としてはMIPI より馴染みのある通信です。
ただ、詳しくは知らないため今回勉強になると思い、比較表を作ってみました!
|
MIPI D-PHY |
LVDS |
伝送距離 |
短距離 (Max 30cm位) |
Max 10m |
1レーンあたり |
HS: Max 2.5Gbps |
Max 655Mbps |
LP: Max 10Mbps |
||
電気信号 (振幅) |
HS: 差動 p-p200 mV |
差動 p-p 350 mV |
LP: シングルエンド 1.2V |
||
Common電圧 |
HS: 330mV, LP: 0.6V |
0.2~2.2V |
定電流源 |
2.0mA |
3.5mA |
クロック方式 |
DDRソース同期 |
DDRソース同期 |
その他 |
クロック信号をデータ線とは別に転送 |
クロック信号をデータ線と |
上記表から、MIPI は伝送距離は短いが LVDSより高速で通信可能ということがわかりました!
LVDS は Max10m も通信できるのは知らなかったので、比較したことによって良い勉強になりました。
今回のお勉強はここまでにしたいと思います。次回からMIPI DCI/CSI-2 の プロトコル層についてそれぞれ詳しく見ていきたいと思います!
さいごに:
感想は、物理層(D-PHY)はDSI/CSI-2 とあまり差分はなく、LVDSと比較することでよりイメージがつきました!
物理層がそんなに変わらないということは、プロトコル層で大きく違いが出るのかな?とひろみんは予想しています。
では、また次回 Lattice寺子屋でお会いしましょう!さようなら!
新人エンジニアの奮闘記~MIPI規格編~
MIPI規格は、近年ディスプレイのインターフェースやイメージセンサーの出力インターフェースなどに多く用いられる通信規格です。
規格の名前は知っているけど、通信帯域は?どんなプロトコルで伝送するの?など
MIPIの中でも、DSI/CSI に焦点を当てて、新人がゼロから勉強していく記事です。
他の記事よりも、わかりやすく、楽しくをモットーにMIPI規格について記事を作成しています。
新人と一緒に、勉強してみませんか?