Шина CAN FD

Технология CAN, созданная в конце 80-х годов компанией Bosch для удовлетворения растущих требований немецкого автопрома к интеллектуальности легковых машин, сегодня занимает прочные позиции во встроенных системах управления реального времени (Embedded real-time control systems) для автомобильного и железнодорожного транспорта, станков ЧПУ, лифтов, медицинских приборов, авиационных и космических систем.

Однако уже в начале 2010-х, в связи с увеличением объемов данных, необходимых для передачи между узлами сети и увеличения количества узлов в сетях CAN, пропускная способность шины CAN по стандарту ISO 11898 и ограничение на 8 байт данных в одном кадре шины CAN стали во многих случаях серьезными сдерживающими факторами.

Кроме того, значительно усложнились алгоритмы управления за счет повышения производительности микроконтроллеров и встроенных компьютеров. Для реализации алгоритмов потребовалось повышение точности датчиков, и такие датчики появились. Соответственно, если в 90-х измеряемый параметр или уставка, рассчитанная алгоритмом управления, помещались в 1-2 байта, то в 2010-х 14,16 и 24 разрядные измерения и управляющие параметры стали нормой. Однако более точные данные перестали помещаться в один кадр, что сделало необходимым увеличение количества кадров, передающих сегментированные данные. Все это привело к увеличению сложности проектирования сети, снижению интегральной пропускной способности и снижению производительности среды передачи данных.

Для решения данной проблемы компания Bosch предложила мировому CAN-сообществу новый вариант шины CAN - CAN FD (CAN with Flexible Data rate), расширяющий стандарт CAN и позволяющий эволюционно провести модернизацию там, где применение обычного варианта СAN становился проблематичным. В 2016 году шина CAN FD была принята в качестве международного стандарта ISO 11898-1: http://www.can-cia.org/fileadmin/resources/documents/brochures/can_fd.pdf.

Внедрение CAN-FD позволяет увеличить скорость передачи по шине CAN до 5 Мбит/сек для линейной топологии сети и до 2 Мбит/сек для топологии типа звезда. Это достигается за счет увеличения скорости передачи только битовых интервалов данных и увеличения длины поля данных до 64 байт (в классическом CAN максимальное количество байт – 8). При этом битовая скорость передачи остальной части CAN-кадра (арбитраж, служебные биты, CRC) не превышает 1 Мбит/сек.

Классический вариант шины СAN широко применяется в России. Однако до недавнего времени в России отсутствовали устройства отечественной разработки со скоростной шиной CAN FD на отечественной элементной базе.

Для обеспечения российских разработчиков систем жесткого реального времени перспективными элементами, соответствующими перспективному стандарту CAN-FD, компания «Марафон» в инициативном порядке выполнила НИОКР по теме «Разработка программно-аппаратной платформы для диагностики и построения систем управления подвижных морских объектов на основе промышленной шины CAN». Работа была выполнена при поддержке Фонда содействия инновациям в рамках программы «Развитие – НТИ» (направление « Маринет»).

В результате был разработан аппаратно-программный комплекс, имеющий в своем составе модуль ввода-вывода CAN FD, предназначенный для построения систем управления жесткого реального времени.

Данная разработка явилась первой полнофункциональной реализацией стандарта CAN FD для сети CAN в России на основе российских комплектующих. Для реализации интерфейса CAN FD была выбрана ПЛИС 5578ТС024АО и IP-ядро CAN-CTRL компании CAST, INC.

Центральный вычислитель устройства выполнен на микроконтроллере K1986BE92QI, имеющий в своем составе контроллер классической шины CAN. В связи с отсутствием отечественных приемо-передатчиков стандарта CAN FD, физический уровень реализован на микросхеме приемопередатчика типа 2011BB034.

Разработанный аппаратно-программный комплекс позволяет создавать прототипы узлов сети в стандарте CAN FD, а также «мосты» между сетью, работающей в классическом стандарте CAN и CAN FD.