banner
ホームページ / ブログ / CLHS IP コアにより、25 Gbps 製品の迅速な市場投入が可能になります
ブログ

CLHS IP コアにより、25 Gbps 製品の迅速な市場投入が可能になります

Nov 01, 2023Nov 01, 2023

クラッシュ テスト アプリケーションは、Camera Link HS (CLHS) の 25 G 光ファイバー インターフェイスの恩恵を受けることができます。 画像は Excelitas PCO カメラによってキャプチャされます。 | 画像提供:Excelitas PCO GmbH

CLHS X プロトコル 25 Gbps IP コアは、市場にあるすべての 10 Gbps CLHS 製品に搭載されているのと同じ IP コアで、2012 年の CLHS 仕様の最初のリリース以来、A3 から入手可能です。この実績のあるコアは、簡単にビデオ、双方向トリガー、カメラ コマンド、双方向 GPIO、および CLHS リビジョン メッセージ用のパラレル インターフェイスを使用します。 CLHS 仕様にリストされているすべての優先エンコード要件を実行するこのコアにより、CLHS 製品の開発が簡素化されます。 関連する PCS モジュールは、前方誤り訂正による 64/66b エンコードを実行し、誤りのない伝送を保証し、シンプルな 64 対 1 シリアライザ/デシリアライザを提供する FPGA トランシーバでコアを使用できるようにします。 他の IP は必要ありません。

CLHS 仕様 1.2 では最近、QSFP28、SFP28、および MPO コネクタとともに 25 Gbps の速度が導入されました。 良いニュースは、25 Gbps 光エンジンは、CLHS 検出が行われる 10 Gbps 光エンジンとの下位互換性があることです。 CLHS は、フェールセーフ ネゴシエーション プロセスを使用して 25 Gbps に切り替えます。 すでに何人かの開発者が、実績のある 10 Gbps ハードウェアを使用して 25 Gbps 製品をデバッグする 25 Gbps システムを開発しています。 同委員会は、同じ IP コアを使用して 50 Gbps を達成する概念実証を行っており、将来の速度への容易な移行を保証します。

このペーパーでは、2048H x 1024V ピクセルを持ち、12 ビット出力で 950 フレーム/秒で動作するモノクロ イメージ センサーを搭載したカメラ用の CLHS 25 Gbps ソリューションを FPGA で作成する手順について説明します。 この 2.99 GByte/秒のデータを処理のためにホストに送信することが望まれます。 2.99 GByte/秒は、25 G での単一 CLHS レーンの 3 GByte/秒の能力の範囲内です。SFP28 ソリューションが選択されています。

A3 から $1000 で購入したオープン VHDL コア (Camera Link HS Standard: The High-Speed Interface for the Future of Imaging and Machine Vision (automate.org)) には、CLHS カメラとフレーム グラバー モジュール、および完全な機能を実現する CLHS PCS が含まれています。以下に示すようなシステムです。

画像出典: Teledyne DALSA

このコアはベンダーに固有のものではなく、AMD (Xilinx)、Intel (Altera)、および MicroChip (PolarFire) FPGA に実装されています。 開発者は、トランシーバー機能、クロック分配、およびコアとの間でメッセージを送受信するロジックを構成する必要があります。 以下の図は、パルス (トリガー)、GPIO、ビデオ データ、コマンド、およびリビジョンの IP コアの仮想メッセージ チャネルを示しています。 トランシーバー構成とクロック分配は、コアのユーザーによって構成されます。 すべてのパケットの構築、エンコード、および優先順位のルールは CLHS コアによって処理されます。 検出中に、フレーム グラバーはカメラ内の必須レジスタを読み取り、25 Gbps 動作への転送を開始することを決定します。これには、トランシーバーを再構成し、関連する PLL をリセットする必要があります。

画像出典: Teledyne DALSA

このコアは、使いやすいパラレル インターフェイスを提供します。 例として、パルス メッセージは、パラレル インターフェイスで目的のパルス モードと関連バイトを設定することによって送信され、その後 1 クロック幅のパルスが送信要求入力ピンに適用されます。 次に、パルス メッセージはリンクを介して送信され、そこで CLHS 受信機がメッセージ タイプをデコードし、1 クロック幅の PulseMsgValidStrobe パルスでユーザーのシステムにパラレル データの利用可能性を通知します。 GPIO メッセージとリビジョン メッセージは同じ方法を使用します。 ビデオ パケットとコマンド パケットのサイズは、それぞれ最大 8k バイトと 1k バイトになります。 ユーザーは、書き込みイネーブル パルスを使用して、それぞれ 64 ビットまたは 32 ビットのデータを CLHS バッファに書き込み、パケット データの書き込みが完了し、パラレル ヘッダー バイトの内容を設定すると、メッセージに対して 1 クロック幅の送信リクエストを発行します。 IP コアがメッセージをリンク上に送信するポート。 受信側では、受信パケットがデコードされ、ビデオまたはコマンド受信バッファーに正しく格納され、VidMsgValidStrobe などの 1 クロック幅のパルスをアサートして、バッファーの読み取り準備ができていることを示します。