概要
GMSL™(Gigabit Multimedia Serial Link™)とGigE(Gigabit Ethernet) Visionは、いずれもカメラのアプリケーションで広く使われているリンク技術です。本稿では、これら2つの技術について、システムのアーキテクチャ、主要な機能、制約の観点から比較/分析を行います。両技術に関する基本的な事柄について説明した上で、GMSLカメラがGigE Vision®カメラの強力な代替品になり得る理由を明らかにします。
背景
GigE Visionは、ネットワーク・カメラのインターフェースについて定めた規格です。イーサネットのインフラとプロトコルに基づいており、産業分野で広く用いられています。一方、GMSLはアナログ・デバイセズが開発したシリアル・リンク技術です。これを使用すれば、ビデオ・データをポイントtoポイントで伝送することができます。
いずれの技術も、イメージ・センサーで取得したビデオ・データを別の場所まで伝送できるという点で有用です。また、それぞれのソリューションは固有の特徴を備えています。GMSLは、もともとは車載カメラや車載ディスプレイのアプリケーションをターゲットとして設計されたものです。ただ、GMSLカメラは、長年にわたり車載以外の分野でも数多く使用されてきました。GigE Visionカメラに代わるものとしてGMSLカメラが使われるケースが少なくなかったのです。以下では、その理由について詳しく説明します。
代表的なシステム・アーキテクチャ
まずは、GigE VisionカメラとGMSLカメラのアーキテクチャについて確認しておきましょう。
イメージ・センサーの接続
通常、GigE Visionカメラのシグナル・チェーンは3つの主要なコンポーネントによって構成されます(図1)。イメージ・センサー、プロセッサ、イーサネットPHY(物理層)の3つです。プロセッサは、イメージ・センサーで取得した未処理の画像データをイーサネットのフレーム・データに変換します。通常、このプロセスには画像処理が含まれます。それに加え、イーサネットがサポートする帯域幅にデータ・レートを合致させるために、圧縮処理またはフレームのバッファリング処理が行われます。
一方、GMSLカメラのシグナル・チェーンは図2のようなものになります。使われるのはイメージ・センサーとシリアライザだけであり、より簡素であることがわかります。標準的なアプリケーションでは、シリアライザによってイメージ・センサーからの未処理のデータを独自のフォーマットに変換します。得られたデータはリンクを介して送出されます。プロセッサが必要ないことから、カメラの設計が容易になることは明らかです。また、フォーム・ファクタの小さいカメラや、低消費電力であることが求められるアプリケーションにも適していることがわかります。
ホスト・プロセッサの接続
GigE Visionカメラは、様々なホスト・デバイスに接続できます。そのため、業界で広く受け入れられています。PCや組み込みプラットフォームのほとんどは、GigE(Gigabit Ethernet)のポートを標準で備えています。また、一部のGigE Visionカメラは、真のプラグ&プレイを実現するためにユニバーサル・ドライバで動作させられるようになっています。
一方、GMSLカメラの場合、ホスト側にはデシリアライザが必要になります。多くの場合、GMSLカメラのアプリケーションでは、ホスト・デバイスとしてカスタマイズされた組み込みプラットフォームが使用されます。そのプラットフォームに、1つまたは複数のデシリアライザを実装することになります。デシリアライザは、イメージ・センサーのMIPI(Mobile Industry Processor Interface)出力を受け取り、MIPIトランスミッタを介して独自のフォーマットで画像データを送信します。MIPIに対応する他のカメラを使用する場合と同様に、カスタマイズされた設計ごとにカメラ用のドライバを用意しなければなりません。ただ、イメージ・センサー用のドライバが既に存在しているのであれば状況は大幅に簡素化されます。その場合、カメラからSoC(System on Chip)にビデオ・ストリームを送信するにあたりSerDes(Serializer/Deserializer)に必要になるのは、いくつかのプロファイル・レジスタまたはいくつかのレジスタに対する書き込みだけです。
カメラを1台しか使用しないのであれば、GigE Visionは、システムの複雑さの面でGMSLよりも優れていると言えるかもしれません。イーサネット・ポートを備えたPCや組み込みプラットフォームに直接接続できるからです。しかし、複数台のGigE Visionカメラを使用する場合には、イーサネット・スイッチを用意しなければなりません(図3)。つまり、イーサネット・スイッチの専用装置や、複数のイーサネット・ポートを備えるNIC(Network Interface Card)、複数のイーサネット・ポートとSoCの間に配置するイーサネット・スイッチICなどが必要になるということです。このことは、トータルの最大データ・レートが低下する原因になり得ます。また、カメラと端末機器の間のインターフェースによっては、予期せぬ遅延が発生してしまう可能性もあります。
一方、GMSLカメラではMIPI C-PHY/D-PHYトランスミッタを使用することで、1つのデシリアライザを最大4つのリンクに接続することができます。しかも、4台すべてのカメラの全帯域幅をサポートすることが可能です。SoCがトータルのデータ・レートに対応して処理を実行できるのであれば、1つまたは複数のGMSLカメラを使用しても、帯域幅が狭くなったり、システムが過度に複雑になったりすることはありません。
センサー用のインターフェース
続いて、センサー用のインターフェースの観点からGigE VisionカメラとGMSLカメラの機能を比較してみましょう。
GMSLシリアライザは、センサー用のインターフェースとしてパラレルLVDS(第1世代のGMSL1)とMIPI(第2世代のGMSL2、第3世代のGMSL3)だけをサポートします。MIPIは、民生分野や車載分野のカメラにおいて最も一般的なイメージ・センサー用インターフェースだと言えます。そのため、GMSLカメラには多様なイメージ・センサーを組み込むことができます。
一方、GigE Visionカメラの内部にはプロセッサが実装されます。このことから、センサー用のインターフェースの面ではより汎用性が高いと言えます。
ビデオの仕様
続いて、GigE VisionカメラとGMSLカメラのビデオ機能について詳しく見ていきましょう。
動作原理
まずは図5をご覧ください。このタイミング図は、イメージ・センサーからGMSLリンクまたはGigEネットワークに対し、連続的なビデオ・ストリームとしてデータを伝送する場合の様子を表したものです。
ビデオ・ストリームの各フレームを見ると、イメージ・センサーは露光期間の直後にデータを送出していることがわかります。そして、次のフレームが始まるまでアイドル状態になります。なお、この図はグローバル・シャッタ・センサーの例を表しています。ローリング・シャッタ・センサーの場合、フレームのレベルで露光期間と読み出し期間に重なりが生じます。露光と読み出しは行ごとに個別に制御されるからです。
GMSLカメラでは、センサー側のGMSLシリアライザによって、イメージ・センサーからのデータがシリアル化されます。得られたデータは、独自のプロトコルによって即座にリンクに送出されます。
一方、GigE Visionカメラのプロセッサは、ビデオ・データをイーサネット・フレームの中に組み込んでネットワークに送出する前に、イメージ・センサーからのデータをバッファし、非常に頻繁に処理を行います。
リンク・レート
リンク・レートは、リンク上で伝送されるデータの理論上の最大速度を規定するものです。異なるデータ・リンク技術を比較する場合、これが重要な仕様として扱われることが少なくありません。GMSL2、GMSL3、GigE Visionは、いずれも値の異なる固定のリンク・レートを使用します。
GMSL2は、データ・レートとして3Gbpsと6Gbpsをサポートしています。一方、GMSL3は12Gbpsのデータ・レートに対応します。GMSL3を採用したデバイスは、GMSL2のプロトコルを採用したデバイスに対する下位互換性を備えていることになります。
GigE Visionは、イーサネット規格に準拠しています。多くのアプリケーションでは、GigE/2.5 GigE/5 GigE/10 GigEに対応するGigE Visionカメラが使用されています。その名のとおり、それぞれのカメラは1Gbpsから10Gbpsまでのリンク・レートをサポートしています。最新のGigE Visionカメラの中には、100Gbpsのリンク・レート(100 GigE)に対応しているものがあります1。なお、GigE Visionでは、より高速のプロトコルはより低速のプロトコルもサポートします。
リンク・レートは、ビデオの解像度、フレーム・レート、遅延との間で強い関連性を持ちます。そのため、リンク・レートだけに基づいて2つの技術を直接比較するのは困難です。
実効ビデオ・データ・レート
データ通信において、実効データ・レートは、プロトコルのオーバーヘッドを除いたデータ・レートの容量を表します。この考え方は、ビデオ・データ通信にも適用できます。通常、転送されるビデオ・データの実効量は、ピクセルのビットの深さと、パケット/フレーム内のピクセル数の積で表されます。図6に、実効ビデオ・データとオーバーヘッドの関係を示しました。
GMSLでは、ビデオ・データがパケット単位で伝送されます。そして、GMSL2またはGMSL3に対応するデバイスは固定のパケット・サイズを使用します。そのため、実効ビデオ・データ・レートは明確に定義できます。ここでは、GMSL2に対応するデバイスを例にとります。リンクのデータ・レートが6Gbpsに設定されている場合には、5.2Gbps以下のビデオ帯域幅を使用することが推奨されます。しかし、リンクはセンサーのMIPIからのオーバーヘッドとブランキング時間も伝送の対象とします。そのため、5.2Gbpsというのは1秒あたりのビデオ・データが5.2Gビットであるという意味ではなくなります。つまり、MIPIのあらゆる入力データ・レーンからのトータルのデータ・レートを反映した値になります。
一方、イーサネットはフレーム単位でデータを伝送します。GigE Visionでは、標準のフレーム・サイズは定義されていません。通常、フレーム・サイズはソフトウェア・ソリューションのトレードオフに使われます。つまり、効率を向上させるのか(長いフレームの利点)、遅延を減少させるのか(短いフレームの利点)というトレードオフを実施するということです。通常、GigE Visionカメラではオーバーヘッドは5%以下になります。イーサネットの速度が速いほど、長いフレームを使用する際のリスクが軽減され、実効ビデオ・データ・レートが向上します。
GigE VisionでもGMSLでも、データはバースト的に伝送されます。そのため、長期間にわたる(1ビデオ・フレーム以上)平均のデータ・レートは、伝送中の実効ビデオ・データ・レートよりも更に低くなる可能性があります。GMSLカメラのバースト時間は、イメージ・センサーからの読み出し時間だけに依存します。実際のアプリケーションではバースト率が100%に達し、その全実効ビデオ・データ・レートをサポートできる可能性があります。一方、GigE Visionカメラは、より複雑で予測が困難なネットワーク環境で使用されることがあります。その場合、バースト率はデータの衝突を回避するために低くなることが少なくありません(図7)。
解像度とフレーム・レート
解像度とフレーム・レートは、ビデオ・カメラにおいて最も重要な仕様だと言えます。これらは、リンク・レートを高めるための原動力となります。それぞれについては、GigE VisionにおいてもGMSLにおいてもトレードオフが生じます。
GMSLに対応するデバイスは、フレームのバッファリングや処理を行いません。解像度とフレーム・レートは、イメージ・センサーまたはセンサー側のISPがリンクの帯域幅内でサポートできる内容に左右されます。解像度、フレーム・レート、ピクセルのビット深さの間には、単純なトレードオフの関係が存在することになります。
GigE Visionのモデルはより複雑です。多くの場合、使用可能なリンク・レートはGMSLよりも低くなります。ただ、バッファリングと圧縮を追加することで、より高い解像度、より高いフレーム・レート、あるいはその両方を同時にサポートすることができます。とはいえ、遅延、消費電力の面で代償が伴うことになるので、その点には注意が必要です。加えて、カメラ・システムの両方の側で高価な部品を使用しなければなりません。なお、それほど一般的ではないアプリケーションでは、どちらのカメラでも未処理の画像データをより低いフレーム・レートで伝送することがあります。
遅延
ビデオ・カメラにはもう1つ重要な仕様があります。それは遅延です。特にデータを処理してリアルタイムに判断を行うアプリケーションでは、その重要性が高くなります。
GMSLカメラでは、シリアライザの入力(センサーの出力)からデシリアライザの出力(受信側のSoCの入力)までの遅延は小さく抑えられます。またその値は確定的なものになります。
通常、GigE Visionカメラでは、その内部処理とより複雑なネットワーク・トラフィックが原因で遅延がより大きくなります。また、その値は非確定的です。ただ、カメラ側の処理がシステムの画像処理のパイプラインに含まれていて、それがより特化型で効率的なものである場合には、必ずしもシステム・レベルの遅延が大きくなるとは限りません。
その他の機能
ここまでで、GigE VisionカメラとGMSLカメラの主要な仕様について押さえることができました。ここからは、それ以外に注目すべき事柄について説明していきます。
伝送距離
GMSLのシリアライザとデシリアライザは、自動車内で同軸ケーブルを使用して最長15mまでのデータ伝送距離を実現できるように設計されています。ただ、カメラのハードウェア・システムがGMSL Channel Specificationを満たしていれば、伝送距離が15mに限定されるわけではありません。
先述したとおり、GigE Visionはイーサネット・プロトコルをベースとしています。そのため、銅線のケーブルを使用することによって最長100mのデータ伝送を実現することが可能です。光ファイバを使用すれば、更に長い距離にも対応できます。但し、PoE(Power over Ethernet)など一部の機能が使用できなくなる可能性があります。
PoC、PoE、PoDLへの対応
GigE VisionでもGMSLでも、単一のケーブルを使って電力とデータの両方を伝送することが可能です。GMSLでは、PoC(Power over Coax)を使用することによってそれを実現します。一方、GigE Visionについては、4ペアのイーサネットではPoEを使用し、シングルペアのイーサネット(SPE)ではPoDL(Power over Data Line)を使用します。ほとんどのGigE Visionカメラでは、従来の4ペアのワイヤとPoEの組み合わせが使われています。
PoCは簡素な技術です。通常、同軸構成のカメラ・アプリケーションではデフォルトで使用されています。この構成では、リンク上の電力とデータを1本のワイヤで伝送します。PoC用の回路に必要な受動部品はわずかです。
1Gbps以上のデータ・レートをサポートするPoE回路はやや複雑です。カメラ側とホスト(またはスイッチ)側の両方に能動部品を使用した専用回路が必要になります。言い換えれば、PoEは高コストでやや利用しにくいということです。一般に、PoEをサポートするGigE Visionカメラには、ローカルの外部電源がオプションとして用意されます。
周辺デバイスの制御、システムの接続
GMSLは、カメラまたはディスプレイに専用のリンク技術です。言い換えれば、様々な周辺デバイスをサポートするようには設計されていません。GMSLカメラを使用する標準的なアプリケーションでは、リンクによって制御信号(UART、I2C、SPI)を伝送します。そして、温度センサー、環境光センサー、慣性計測ユニット、LEDコントローラといったカメラの周辺デバイスとだけ通信を行います。通常、大規模なシステムでGMSLをカメラ用のインターフェースとして使用する場合には、他のデバイスと通信するためのものとして、CAN(Controller Area Network)やイーサネットといったより低速のインターフェースが用意されます。
通常、GigE Visionカメラは内蔵するプロセッサによって周辺デバイスの制御に対応します。産業用イーサネットは、その分野のアプリケーションをサポートする一般的な接続ソリューションです。そのため、多様な機械や装置をサポートする標準プロトコルがいくつも用意されています。GigE Visionカメラは、ソフトウェア・インターフェースとハードウェア・インターフェースの両方を使用してネットワークに直接接続されます。
カメラのトリガとタイムスタンプ
GMSLのリンクは、順方向のチャンネルと逆方向のチャンネルの両方で、マイクロ秒のレベルに遅延を抑えたGPIOとI2Cトンネリングをサポートします。そのため、様々なカメラのトリガ/同期の構成をサポートすることができます。GMSLカメラをトリガするための信号源としては、デシリアライザ側のSoCまたはシリアライザ側のイメージ・センサーのうちいずれかを使用することが可能です。
通常、GigE Visionカメラは専用のピン/ポートまたはイーサネットのトリガ/同期パケットを介したトリガのオプションをハードウェアとソフトウェアの両方で提供します。一般的なアプリケーションでは、他のカメラまたはカメラ以外のデバイスとの間で応答が速く正確な同期を実現するための標準的な手法として、ハードウェア・トリガが使用されます。一方、ソフトウェア・トリガを使用する場合には、ネットワークの遅延が主な課題になります。同期の精度を高めるために利用できるプロトコルも存在しますが、それぞれ異なる課題を抱えている可能性があります。例えば、NTP(Network Time Protocol)では、ミリ秒単位で同期をとることになり、十分な精度が得られません2。また、PTP(Precision Time Protocol)ではマイクロ秒単位の同期を実現できますが、互換性のあるハードウェアが必要になり、高い費用対効果が得られません3。
イーサネットのネットワーク上で同期用のプロトコルを使用するケースも考えられます。その場合、GigE Visionカメラを含む同じネットワーク上のすべてのデバイスは、同じクロック・ドメインでタイムスタンプを提供することができます。
一方、GMSLはタイムスタンプ機能を備えていません。イメージ・センサーの中には、MIPIの埋め込みヘッダによってタイムスタンプを提供できるものがあります。但し、通常は上位システムの他のデバイスとのリンクは実現されません。システムのアーキテクチャによっては、GMSLデシリアライザはPTPネットワーク上にあるSoCに接続され、中央集中型のクロックを使用することになります。この機能が必要な場合には、AD-GMSL2ETH-SLを参考にしてください。
まとめ
表1は、GigE VisionとGMSLについてまとめたものです。本稿で説明したとおり、GMSLカメラは既存のGigE Visionカメラに対する強力な代替品/置き換え品として使用できます。多くの場合、GigE Visionカメラと比較すると、GMSLカメラは、より低いコスト、より少ない消費電力、よりフットプリントが小さくよりシンプルなシステム・アーキテクチャによって同等以上のリンク・レートと機能を提供することができます。また、GMSLはもともと車載アプリケーション向けに設計されたものです。そのため、同分野の技術者は、過酷な環境下におけるGMSLの動作を数十年にわたって検証してきました。そのため、GMSLカメラは、信頼性と機能安全が重要視されるシステムでも安心して使用することができます。
GMSL | GigE Vision | |
トポロジ | ポイントtoポイント | ポイントtoポイントまたはネットワーク・スイッチ経由 |
データ・リンク・レート〔Gbps〕 | 3/6/12、専用 | 1/2.5/5/10、共用 |
PHYのセンサー用インターフェース | あり、MIPI D-PHY/C-PHY | なし |
制御信号 | リアルタイム | ネットワークがフリーなとき |
ビデオの圧縮 | なし | あり |
ビデオの遅延 | 小さい、確定的 | 大きい(ビデオの処理)、非確定的(ネットワークの状態) |
カメラのトリガ | リンクを介した双方向のトリガ、マイクロ秒単位の遅延 | トリガ・ピン(追加のハードウェア)、イーサネットのパケット(非確定的な遅延) |
サイズ | 5mm×5mm(GMSL2シリアライザ)4 | 5mm×5mm以上(GigE PHY)5、プロセッサも必要 |
消費電力 | 260mW(GMSL2シリアライザ)4 | 300mW以上(GigE PHY)6、プロセッサの消費電力も加わる |
プラグ&プレイ | なし、MIPIドライバが必要 | あり |
データ・ケーブルによる電力伝送 | 簡素、受動回路 | 複雑、能動部品 |
標準のネットワーク同期プロトコル | なし | あり |
伝送距離 | 15m以下(GMSL2、6Gbps) * 105℃に対応する旧来の同軸ケーブル(LEONI Dacar 302、-1.1dB/m)を想定 |
100m以下 |
GMSLを使用した設計を着手する際には、ぜひ「ギガビット・マルチメディア・シリアル・リンク(GMSL)」のページにアクセスしてください。また、製品のセレクション・テーブルや、ハードウェアの設計ガイド、ユーザ・ガイドも重要なリソースになるはずです。リファレンス設計とドライバに関するサポートが必要になる場合には、GMSLのGitHubリポジトリにアクセスしてください。
参考資料
1「Understanding the Benefits of 10, 25, 50, and 100GigE Vision(10/25/50/100GigE Visionがもたらすメリットを理解する)」Emergent Vision Technologies Inc.、2023年
2 David L. Mills「Internet Time Synchronization: The Network Time Protocol(インターネットの時刻同期 - ネットワーク・タイム・プロトコル)」IEEE Transactions on Communications、Vol. 39、Issue. 10、1991年10月
3 「IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems(ネットワーク化された測定/制御システム向けの高精度クロック同期プロトコルに関するIEEE規格)」IEEE、2008年7月
4 MAX96717、Analog Devices、2023年5月
5 「Single Port Gigabit Ethernet PHY(シングルポートのギガビット・イーサネット用PHY)」MaxLinear、2023年2月