Что такое CAN FD

Шина CAN-FD  – это следующий этап развития классической шины CAN. CAN-FD обеспечивает более высокую скорость передачи данных и больший объем передаваемых данных в одном кадре.

Основные отличия CAN-FD от классической шины CAN

  • CAN-FD работает одновременно на двух скоростях. Поле арбитража или заголовок кадра передается со скоростью такой же как и в классическом варианте, например 500 кбит\с. А поле данных передается на скорости кратно превышающую скорость передачи заголовка, и может иметь значение вплоть до 12 Мбит\с.
  • CAN-FD может передать до 64 байт данных в одном пакете. А классический CAN максимум 8 байт.
  • CAN-FD контроллер способен принимать классические CAN пакеты, а классический CAN контроллер не способен принимать пакеты формата CAN-FD.
  • Для шины CAN-FD необходимо применять специальные микросхемы-трансиверы с повышенным быстродействием.

 

Почему на шине CAN-FD используется передача на двух скоростях

Скорость шины CAN ограничивает тот факт, что в определенные моменты времени в режиме передачи могут находится несколько узлов на шине. Это фазы арбитража и ожидания подтверждения приема пакета. Следовательно, каждый бит должен передаваться за время, которое не меньше чем то время, которое определяется уровнем напряжения на шине, достаточного для обмена данными между двумя узлами на шине.

Например: на шине CAN длиной 40 метров максимальная скорость передачи составляет около 1 Мбит\с для выполнения требуемого времени передачи в один бит. НО! Это ограничение действует только для обозначенных выше фаз Арбитража и ожидания подтверждения, а в фазе передачи данных, когда разрешена работа ТОЛЬКО ОДНОГО передатчика, это ограничение на скорость не действует. Этот факт и был взят за основу нового стандарта CAN FD.

Фирма BOSCH – разработчик стандарта CAN решила в новом стандарте CAN-FD поднять скорость обмена данными на участке передачи байт данных, между фазой арбитража, куда входит поле ID и DLC, и фазой ожидания подтверждения.

 

Совместимость CANFD и классической шины CAN

Базовые форматы кадров CAN-FD и CAN  имеют различия. Контрольное поле в формате FD длиннее и несет больше информации.

 

В кадр CANFD, в контрольное поле добавлены биты:

  •  FDF – признак того что кадр есть кадр CAN-FD
  •  BRS – признак того что используется переключение битрейта
  •  ESI – флаг того что счетчик ошибок узла полон

Бит IDE так же как и в классической реализации CAN указывает на то, что передаваемый пакет имеет расширенный 29-битный идентификатор.

Таким образом на шине CAN FD существуют следующие варианты передачи пакетов:

  1. В классическом CAN формате с количеством байт данных до 8.
  2. В формате CAN-FD с переключением скоростей и количеством байт данных до 64.
  3. В формате CAN-FD без переключения скоростей и количеством байт данных до 64 .

А так же эти же варианты но с 29-битным ID.

Таким образом из-за различий в базовом формате кадра между CAN-FD и CAN отсутствует совместимость снизу вверх. Таким образом модуль CAN не может принимать кадры CAN-FD. Но модуль CAN-FD способен принимать и предавать кадры в классическом формате.

Количество передаваемых данных

На шине CAN-FD в каждом кадре может передаваться до 64 байт данных, что существенно повышает пропускную способность классического варианта CAN . Количество передаваемых байт так же устанавливается в поле DLC, имеющее размер 4 бита. Поэтому соответствие между значением поля DLC и количеством передаваемых данных выглядит так:

DLC =0,  количество байт = 0;
DLC =1,  количество байт = 1;
DLC =2,  количество байт = 2;
DLC =3,  количество байт = 3;
DLC =4,  количество байт = 4;
DLC =5,  количество байт = 5;
DLC =6,  количество байт = 6;
DLC =7,  количество байт = 7;
DLC =8,  количество байт = 8;
DLC =9,  количество байт = 12;
DLC =10,  количество байт = 16;
DLC =11,  количество байт = 20;
DLC =12,  количество байт = 24;
DLC =13,  количество байт = 32;
DLC =14,  количество байт = 48;
DLC =15,  количество байт = 64;

Пакет с 64 байтами данных в окне анализатора шины CANFD:

Сигнал на шине CAN-FD на экране осциллографа

На экране осциллографа кадр CANFD выглядит следующим образом. Как видно передача данных идет на скорости кратно большей чем передача служебной информации.

 

Где применяется CAN-FD

По состоянию на декабрь 2020 года шина CANFD применяется достаточно ограниченно на автомобилях премиум класса производства: группы VAG, GM, Ford, BMW, KIA\HYUNDAI. При этом CAN-FD используется на критичных к скорости обмена участках сети CAN.
Например на автомобиле KIA Sorento 2021 года выпуска по шине CANFD происходит взаимодействие компонентов ADAS (радары, камеры), а так же по этой шине получает необходимые данные – панель приборов.

Оборудование CAN-Hacker для шины CANFD

К серийному производству готовится интерфейс CAN-Hacker CH-P FDL1. Интерфейс можно приобрести уже сейчас под заказ и на индивидуальных условиях.

 

Следите за новостями, статья будет пополняться.