Протокол Camera Link

протокол CameraLink

Протокол Camera Link был создан компаниями Basler, Cognex, Coreco, DALSA, Data Translation, Datacube, EPIX, Euresys, Foresight Imaging, Integral Technologies, Matrox, National Instruments, PULNiX America. Необходимость создания этого протокола была обусловлена тем, что совершенно разные компании занимались производством скоростных видеокамер и фреймграбберов (это хорошо видно и из вышеприведенного списка), поэтому существовали разные разъёмы, протоколы и программные решения для осуществления связи между видеокамерами и фреймграбберами. При повышении скорости передачи данных эти проблемы стали ещё более актуальными. Чтобы упорядочить и стандартизировать эти разработки был создан протокол CameraLink, а также универсальный кабель c высокочастотным разъёмом для подключения скоростных видеокамер к фреймграбберам.

Что такое интерфейс LVDS

Интерфейс LVDS (Low Voltage Differential Signaling - низковольтный дифференциальный сигнал, RS-644), обеспечивающий высокую скорость передачи данных, был принят в марте 1996 года. Амплитуда дифференциального сигнала равна 350 мВ, что позволяет сделать более резкие фронты сигналов и теоретически возможную скорость передачи данных 1,923 Гбит/сек в среде без потерь. Этот интерфейс нечувствителен к синфазным наводкам до ±1 Вольт на дифференциальные входы. Так как LVDS использует при передаче информации режим переключения тока, то при проектировании устройств необходимо особое внимание уделять энергоёмкости и электромагнитным наводкам на соседние шины, что является платой за скорость.

National SemiconductorИнтерфейс Channel Link

Компания National Semiconductor создала технологию Channel Link, основанную на LVDS (RS-644), для своих плоских мониторов. Затем эта технология была развита в универсальный скоростной метод передачи данных. Чип Channel Link состоит из пары отправитель-получатель. Отправитель (driver) получает 28 одиночных сигналов данных и один тактовый. Данные сериализуются 7:1, то есть 28 бит поданных на вход устройства превращаются в 7-битный последовательный код на 4 выходных шинах. Затем 4 потока данных и один тактовый поток отправляются по 5 парам LVDS. Получатель (receiver) принимает 4 потока данных LVDS и один тактовый LVDS, а затем "разворачивает" его в 28 бит и тактовый сигнал и передаёт по параллельной выходной шине на плату.

схема Channel LinkСпецификация Camera Link предусматривает использование одной, двух или трёх микросхем сериализации. Максимальная скорость передачи данных чипсета Channel Link может достигать 2,38 Гбит/сек.

Технология Channel Link имеет ряд существенных достоинств. Она основана на хорошо изученных технологиях TTL и LVDS, а также достаточно проста в реализации. Чипы Channel Link недороги и широко доступны. Поскольку в этой технологии используется низкая амплитуда дифференциального сигнала, то это приводит к уменьшению электромагнитных помех. Но главным преимуществом является уменьшение количества передающих линий благодаря мультиплексированию. Технология RS-644 для передачи 28 бит данных требует 56 проводников только для передачи данных. В случае с Channel Link для этого потребуется только 11 проводников: 4 пары для передачи данных, одна пара для тактового сигнала и земля. Таким образом, уменьшаются размеры кабеля и размер разъёма, а также улучшается экранирование кабеля.

Получить спецификацию протокола Channel Link на английском языке.

Описание сигналов интерфейса Camera Link

Стандартный кабель Camera Link передаёт сигналы управления видеокамерой, сигналы синхронизации видео и видео данные. Видео данные (Video Data) передаются в формате 3, 6 или 8 байт за такт.

Сигналы синхронизации видео

  • FVAL - Frame Valid (FVAL) уровень сигнала 1 соответствует отправке / получению кадра
  • LVAL - Line Valid (LVAL) уровень сигнала 1 соответствует отправке / получению строки
  • DVAL - Data Valid (DVAL) уровень сигнала 1 соответствует отправке / получению данных
  • Spare - этот сигнал был зарезервирован для использования в будущем

Все 4 сигнала должны устанавливаться камерой на каждом чипе Channel Link. Все неиспользуемые биты данных должны принимать заданное значение, определяемое видеокамерой, т.е. все неиспользуемые биты данных должны быть 0 или 1, но не Z или Х, и за это отвечает видеокамера.

Сигналы управления камерой (Camera Control Signals)

4 пары LVDS зарезервированы для управления видеокамерой. Они определяются как входные для видеокамеры и выходные для фреймграббера. Производители видеокамер могут определять эти сигналы по своему усмотрению для каждого конкретного продукта:

  • Camera Control 1 (CC1)
  • Camera Control 2 (CC2)
  • Camera Control 3 (CC3)
  • Camera Control 4 (CC4)

Связь (Communication)

2 пары LVDS предназначены для асинхронной передачи данных по последовательному интерфейсу между видеокамерой и фреймграббером в обоих направлениях. Видеокамеры и фреймграбберы должны поддерживать скорость не менее 9600 бод.

  • SerTFG - дифференциальная пара для последовательного интерфейса связи с фреймграббером
  • SerTC - дифференциальная пара для последовательного интерфейса связи с видеокамерой

Последовательный интерфейс имеет следующие характеристики: один стартовый бит, один стоповый бит, нет бита чётности и нет бита handshaking.

Сигналы управления и связи подаются непосредственно на разъём Camera Link и не связаны с сигналами видео.

Питание (Power)

В разъёме Camera Link нет питания. Видеокамера должна подключаться к источнику питания через отдельный кабель. Каждый производитель видеокамеры может делать свой собственный разъём для подключения к блоку питания и устанавливать свои требования на ток и напряжение.

фреймграбберы с разъёмами CameraLinkИнтерфейс Camera Link имеет три варианта конфигурации:

  • Base - один чип Channel Link, один разъём для кабеля
  • Medium - два чипа Channel Link, два разъёма для кабеля
  • Full - три чипа Channel Link, два разъёма для кабеля

На рисунке справа приведены изображения двух фреймграбберов National Instruments с разъёмами Camera Link. На левой плате есть лишь один разъём - это конфигурация Base. У правой платы есть два разъёма, т.е. это может быть конфигурация как Medium, так и Full, в зависимости от количества установленных чипов Channel Link.

В конфигурации Base есть один чип Channel Link, который может передать 28 бит данных. В конфигурации Medium можно передать 28*2=56 бит данных, а в случае Full Camera Link получается 28*3=84 бита данных (во всех конфигурациях также имеется одна LVDS-пара для управления камерой и обмена данными через последовательный интерфейс). Поэтому для конфигурации Base достоточно одного кабеля Camera Link, а для конфигураций Medium и Full необходимы 2 кабеля Camera Link для подключения к фреймграбберу.

Таким образом, интерфейс Full Camera Link теоретически может иметь максимальную пропускную способность 3 чипа * 28 бит * 85 МГц = 892 Мбайт/сек. Однако достичь такой пропускной способности можно лишь теоретически и при полной загрузке всех линий, т.е. игнорируя программный протокол Camera Link (иначе говоря, используя все биты, в том числе зарезервированные и служебные). Если же всё делать в соответствии с программным протоколом, то для передачи видео данных, которые отправляются в формате 3, 6 или 8 байт за такт, максимальная пропускная способность получится равной 8 байт * 85 МГц = 680 Мбайт/сек.

Максимальные пропускные способности разных вариантов конфигурации Camera Link

  • Base - 3 байта * 85 МГц = 255 Мбайт/сек
  • Medium - 6 байт * 85 МГц = 510 Мбайт/сек
  • Full - 8 байт * 85 МГц = 680 Мбайт/сек

На рисунке внизу показаны схемы всех трёх вариантов конфигурации Camera Link

схема Camera Link

Определение портов

Интерфейс Camera Link использует до 8 портов в диапазоне A-H. Ниже приведены значения портов для всех конфигураций: Base, Medium и Full.

  • Base: порты A, B, C (3 байта)
  • Medium: порты A, B, C, D, E, F (6 байт)
  • Full: порты A, B, C, D, E, F, G, H (8 байт)

Следующая таблица описывает значения бит интерфейса Camera Link:

Название бит сигналов данных 28-битная входная шина чипа
Strobe TxClk Out/TxClk In
LVAL TX/RX 24
FVAL TX/RX 25
DVAL TX/RX 26
Spare TX/RX 23
Port A0, Port D0, Port G0 TX/RX 0
Port A1, Port D1, Port G1 TX/RX 1
Port A2, Port D2, Port G2 TX/RX 2
Port A3, Port D3, Port G3 TX/RX 3
Port A4, Port D4, Port G4 TX/RX 4
Port A5, Port D5, Port G5 TX/RX 6
Port A6, Port D6, Port G6 TX/RX 27
Port A7, Port D7, Port G7 TX/RX 5
Port B0, Port E0, Port H0 TX/RX 7
Port B1, Port E1, Port H1 TX/RX 8
Port B2, Port E2, Port H2 TX/RX 9
Port B3, Port E3, Port H3 TX/RX 12
Port B4, Port E4, Port H4 TX/RX 13
Port B5, Port E5, Port H5 TX/RX 14
Port B6, Port E6, Port H6 TX/RX 10
Port B7, Port E7, Port H7 TX/RX 11
Port C0, Port F0 TX/RX 15
Port C1, Port F1 TX/RX 18
Port C2, Port F2 TX/RX 19
Port C3, Port F3 TX/RX 20
Port C4, Port F4 TX/RX 21
Port C5, Port F5 TX/RX 22
Port C6, Port F6 TX/RX 16
Port C7, Port F7 TX/RX 17

Порты D и G (если имеются) имеют такую же разводку, как и порт A. Порты E и H (если есть) имеют такую же разводку, как и порт B. Порт F (если есть) - аналогичен порту C.

Компания 3MКабель Camera Link

Выбор соответствующего кабеля CameraLink очень важен, поскольку работать приходится на очень высоких частотах. Для работы по протоколу Camera Link рекомендуется использовать кабель 26-pin MDR (Mini D Ribbon) производства компании 3M. Эта компания сделала не только кабель, но и разъём, который отвечает самым жёстким требованиям для работы на высоких частотах со скоростными видеокамерами и фреймграбберами. Компания 3M в сотрудничестве с National Semiconductor протестировала работу этого кабеля с чипсетами Channel Link.

кабель CameraLinkДлина кабеля Camera Link обычно 3 м, 5 м или 10 метров, но последнее справедливо только для конфигурации Base Camera Link. Существуют также повторители (repeaters), которые могут увеличивать максимальную длину кабеля. Однако для работы на максимально высоких частотах такие длины кабелей совершенно не подходят и повторители не используются. Для конфигурации Full CameraLink рекомендуется пара кабелей длиной от 1,5 до 3 метров, причём эти кабели обязательно должны быть одинаковыми.

Получить официальную спецификацию протокола Camera Link на английском языке.

Какие есть минусы у протокола Camera Link

  • Малая длина кабеля
  • При использовании пары кабелей они должны быть одинаковыми
  • Скорость передачи данных для управления камерой до 57600 бод
  • Стоимость: соединение камеры с компьютером требует дорогостоящих специализированных фреймграбберов
  • Соединения всегдя имеют вид точка-точка, что затрудняет работу при подключении нескольких камер одновременно

PoCLДополнительная информация

Стандарт PoCL (Power over Camera Link).
Стандарт PoCL-Lite (14-пиновая версия PoCL).

Форма для отправки запроса

Эта форма сохраняет имя и адрес электронной почты.