Camera Link（カメラリンク）は、カメラインターフェースアプリケーション用に設計されたシリアル通信プロトコル規格である。この規格は、ナショナルセミコンダクター社のインターフェースをベースとして、カメラ、ケーブル、などの科学・産業用ビデオ製品の標準化を目的として設計された。この規格は、国際的なマシンビジョン業界の業界団体である3A（Association for Advancing Automation）によって維持・管理されている。

 伝送プロトコル 
Camera Linkは、1～3つのトランシーバチップを使用し、1個あたり7ビットのシリアルビットで4つのリンクを形成する。最低でも28ビットを用い、最大24ビットのピクセルデータと3ビットのビデオ同期信号を表現し、1ビットの予備ビットが予約されている。ビデオ同期ビットはData Valid、Frame Valid、Line Validからなる。データは7:1にシリアライズされ、4つのデータストリームと専用クロックが5つのLVDSペアで駆動される。レシーバーは4つのLVDSデータストリームとLVDSクロックを受け取り、28ビットとクロックを基板に駆動する。これらの28ビットは4つのシリアライズされた差動信号で伝送され、シリアライズ係数は7である。通常、シリアル化されたビデオを送受信するには、PLLまたはSERDESブロックで7倍のクロックを生成する必要がある。データをデシリアライズするには、シフトレジスタとカウンタを使用することができる。シフトレジスタはシリアライズされたビットを1つずつキャッチし、データカウンタが終端値に達すると、データをパラレルクロックドメインへ出力する。

 バリエーション 

Camera Linkにはいくつかの種類があり、転送できるデータ量が異なる。転送に2本のケーブルが必要なものもある。

 Base configuration 
Base configurationでは、1本のコネクタ/ケーブルで信号を伝送する。使用ケーブルは、3M社がLVDS信号用に最適化したMDR(Mini D Ribbon)26ピンオスプラグコネクタである。このコネクタには、シリアライズされたビデオデータ（24ビットのデータと4ビットのframing/enable bits）を伝送する5つのLVDSペアに加え、4つのLVDS離散制御信号と、カメラと通信するための2つのLVDS非同期シリアル通信チャネルも搭載されている。チップセットの最大動作周波数（85 MHz）において、Base configurationで2.04 Gbit/s（255 MB/s）のビデオデータスループットが得られる。

 Medium/Full configuration 
Camera Link規格には、2本目のコネクター/ケーブルを介して追加のビデオデータ経路を提供する、より広帯域幅の構成がある。

Medium configurationはビデオ帯域幅を2倍にし、24ビットのデータとBase configurationと同じ4つのframing/enable bitsを追加する。これにより、最大4.08 Gbit/s（510 MB/s）のスループットが可能な48ビット幅のビデオデータパスが得られる。

Full configurationでは、データパスにさらに16ビットが追加され、5.44 Gbit/s（680 MB/s）を伝送できる64ビット幅のビデオパスになる。

 Deca configuration 
一部のカメラおよびデータ取得ハードウェアのメーカーは、Camera Linkインターフェイス仕様の制限を超えてインターフェイスの帯域幅を拡張している。これらのフォーマットは、8つの未使用ビットを利用し、8つの冗長なframing/enable bitsを再割り当てすることでFull configurationの幅を拡張し、2つのコネクタ/ケーブルで最大80ビットのデータパス幅を生成し、帯域幅をさらに広げている。業界では80ビットのバリエーションについてコンセンサスが形成されており、互換性のあるカメラやフレームグラバーは「Camera Link Deca」という用語で販売されている。しかし、一部のメーカーはDeca configurationに対し「Extended Full」という用語を使用しており、さらに他のメーカーはFull Decaを指して「Camera Link Full」という用語を使用している。80ビットのビデオパスは、6.8 Gbit/s（850 MB/s）の伝送が可能である。

 信号タイミング 
下の図は、Camera Link伝送に使用されるChannel Linkトランシーバの1つのクロックと1つのデータの相対的な信号タイミングを示している。データワードはクロックのハイの途中から開始され、最上位ビットが最初に送信される。

 ビット割り当て 
画素値のビットは順番にシリアルトランスミッタに割り当てられるのではなく、次の図に示すように複雑な方法で並べ替えられる。この図ではCamera Linkのデータビットは連続的にラベル付けされ、Camera Link Full規格にはない8つの追加ビットを含んでいる。(Camera Link規格では、データビットを8つの8ビットポートに分割し、文字と数字の組み合わせで表記しているが、必ずしも一対一に対応しないカラーチャンネルに同じ文字と数字の組み合わせを使用しているため、この表記が曖昧になっている)

この図の上半分は、2つの物理インターフェースと2本のケーブルを必要とするMedium/Full configurationにのみ関係する。中央の2つの長方形はケーブルを表し、その両側に各信号のコネクタピンが示されている。

トランシーバの左側には、最下位ビットから最上位ビットまで、そのChannel Linkで伝送されたピクセルデータビットのリストが示されている。L、F、Dはそれぞれライン同期(Line Sync)、フレーム同期(Frame Sync)、データ有効(Data Valid)ビットを示す。アンダースコアは未使用の予備ビットを表す。図に使用されているビット0から71に、画素データビットが割り当てられている。グレイスケールのピクセルの場合、これは些細な1対1のマッピングである。各色8ビットの倍数のカラーピクセルの場合、色は単純に（最下位ビットから最上位ビットへ）赤、緑、青の順に連結される。12ビットRGBデータの場合、各色の下位8ビットはデータビット0-7, 16-23, 32-39に割り当てられ、各色の上位4ビットはビット8-11, 12-15, 40-43に割り当てられる。

 ケーブルとコネクタ 
規格では、Camera Linkに使用する26ピンのミニチュアデルタリボンコネクタ（MDR-26）を規定している。規格バージョン1.2からは、シュリンクタイプのSDR-26が認められている。コネクタのピン配置は前節の大きな図に示されている。コネクタのピンアウトは以下の通りである：

マッチング差動信号ペアは、意図的にコネクタの反対側に配置され、ケーブルの異なる端の異なるコネクタ側に配置される。これにより、コネクタがプリント基板に垂直に取り付けられることによるスキューを防ぐことができる。

Camera Linkケーブルはシールド付きツイストペアケーブルである。規格では、差動ペアは個別にシールドされなければならず、ケーブル全体としては2つのシールドが必要であると規定されている。カメラデータよりも低速の信号を伝送する用途では、2つのシリアルインターフェース信号ペアをシールドしないことでコストを節約している企業もある。このようなケーブルはカメラ側とグラバー側を1本ずつ持ち、逆にすることはできず、Medium/Full configurationの2本目のケーブルとして使用することはできない。

 歴史 
Camera Link規格は3A(Association for Advancing Automation)によって管理されている。Camera Linkインターフェース規格（1.0）は2000年10月にリリースされた。2004年1月に改訂1.1が採択され、ソフトウェア機能のサポートが拡大された。規格委員会は、2007年1月にバージョン1.2を採択し、mini SDR(Shrunk D Ribbon)コネクタ(SDR-26)とPower over Camera Link(PoCL)を導入した。v1.2の付属書Dには、規格に機械的および電気的な説明、特にケーブルの性能が追加された。v1.2の附属書Eには、PoCL機器の要件が記載されている。Camera Link 2.0は2011年にリリースされた。