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

Изобретение относится к вычислительным сетям передачи данных. Технический результат заключается в последовательной передаче данных в шинной системе. Указанный результат достигается за счет применения способа взаимодействия абонентов шины, обменивающихся по шине сообщениями. При этом этапы способа предусматривают выполнение: доступа к шине для передачи любого сообщения по методу арбитража, соответствующему стандарту ISO 11898-1 на протокол сети контроллеров (CAN); сообщения имеют логическую структуру стандарта CAN; при наличии условия заполнения в сообщение между передаваемыми битами данных вставляют дополняющие биты; в начале сообщения дополнительно к вычислению содержимого поля CRC запускают вычисление одной другой последовательности CRC посредством порождающего полинома, отличающегося от стандарта на протокол CAN; в зависимости от соответствующей метки (EDL) решают, результат которого из параллельно запущенных вычислений содержимого поля CRC будет использоваться для проверки правильности передачи данных; для значений указанной метки проверяют дополнительное условие, при наличии которого передатчиком в отдельные части сообщения вставляются последовательности фиксированных дополняющих битов. 5 н. и 24 з.п. ф-лы, 11 ил.

 

Область техники, к которой относится изобретение

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

Уровень техники

Известен, например из семейства стандартов ISO 11898-1…-5, протокол сети контроллеров (CAN - сокр. от англ. "Controller Area Network"), а также расширение протокола CAN, называемое синхронизированным по времени, или синхро-временным, протоколом CAN (TTCAN, сокр. от англ. "Time-Triggered CAN"), ниже также называемые стандартом на протокол CAN. Используемый протоколом CAN метод управления доступом к среде передачи основан на побитовом арбитраже. При побитовом арбитраже несколько абонентских станций могут одновременно передавать данные по каналу шинной системы, не создавая помех для передачи данных. Кроме того, абонентские станции при передаче бита по каналу могут определять логическое состояние канала (0 или 1). Если значение посланного бита не соответствует определенному логическому состоянию канала, то доступ абонентской станции к каналу прекращается. В случае протокола CAN побитовый арбитраж обычно выполняется на основе идентификатора, содержащегося в передаваемом по каналу сообщении. После того как абонентская станция полностью отправила идентификатор в канал, она знает, что у нее есть право монопольного (исключительного) доступа к каналу. Таким образом, окончание передачи идентификатора соответствует началу временного интервала разрешения доступа, в течение которого абонентская станция может пользоваться каналом монопольно. Согласно протоколу CAN другие абонентские станции не могут обращаться к каналу, т.е. посылать в этот канал данные, до тех пор, пока ведущая передачу абонентская станция не передаст поле контрольной суммы, или циклического избыточного кода (CRC), также называемое контрольной суммой CRC и входящее в структуру сообщения. Таким образом, момент окончания передачи поля CRC соответствует концу временного интервала разрешения доступа. Еще одна особенность спецификации протокола CAN заключается в том, что после любых пяти битов, имеющих одинаковое значение, передатчиком, т.е. передающим сообщение абонентом (узлом) шины, в поток данных вставляется добавочный бит, называемый дополняющим битом (стаф-битом) и имеющий противоположное значение, чтобы обеспечить прохождение фронтов сигнала, необходимых для синхронизации абонентов шины, в частности моментов выборки (считывания) значений битов. Вставленные передатчиком дополняющие биты на приемной стороне, т.е. в приемнике, или принимающем сообщение абоненте (узле) шины, отбрасываются. Они не подлежат учету при вышеупомянутой проверке контрольной суммы CRC.

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

Благодаря передаче поля CRC с контрольной суммой, предварительно вычисляемой посредством порождающего полинома на основе передаваемых в сообщениях данных, и выполнению на приемной стороне CRC-контроля, т.е. проверки контрольной суммы CRC, обеспечивается высокая надежность передачи данных и вероятность обнаружения в них ошибок. Вставка вышеупомянутых дополняющих битов в тех местах внутри сообщения, в которых передаются пять идущих подряд одинаковых битов, в сочетании с ресинхронизацией битового хронирования по фронтам между битами с различными значениями обеспечивает высокую невосприимчивость к отклонениям частоты используемых опорных генераторов.

С неуклонно возрастающей степенью объединения оборудования современных транспортных средств сетями передачи данных и с внедрением дополнительных систем, улучшающих эксплуатационные качества транспортных средств, например в плане обеспечения безопасности движения или комфорта водителя и пассажиров, растут требования к передаваемым объемам данных, скорости и надежности передачи данных и к допустимым временам задержки при передаче данных. Примерами таких систем являются системы управления динамикой движения, например электронная система поддержания курсовой устойчивости (ESP), системы помощи водителю, например система автоматического регулирования дистанции (САРД), или системы информирования водителя, например система распознавания дорожных знаков (см., например, описания соответствующих систем в Автотехническом справочнике фирмы "Бош" (Bosch Kraftfahrtechnisches Handbuch), 27-ое издание, 2011, изд-во Vieweg+Teubner).

В статье G. Cena и A. Valenzano под названием "Overclocking of Controller Area Networks" ("Как повысить тактовую частоту в сетях контроллеров"), Electronics Letters, том 35, №22 (1999), стр.1924, рассматриваются факторы влияния повышения опорной частоты шины в отдельных частях сообщений на достигаемую эффективную скорость передачи данных.

В опубликованном 02.05.2011 на Интернет-странице http://www.semiconductors.bosch.de/ документе "CAN with Flexible Data-Rate (Протокол CAN с гибкой скоростью передачи данных), технический документ, версия 1.0", представлен модифицированный протокол передачи данных, который обеспечивает, в том числе, увеличение поля данных, а также - для части сообщения CAN - сокращение длительности бита. Согласно этому протоколу, обозначенному как CAN FD, дополняющие биты, появляющиеся до начала поля CRC, учитываются при CRC-контроле, что само по себе обеспечивает более высокую безопасность данных. Однако дополняющие биты, появляющиеся внутри поля CRC, по-прежнему исключаются из CRC-контроля. Это является ограничением по надежности используемых протоколом механизмов обнаружения ошибок. Из цитируемых выше источников видно, что уровень техники не дает удовлетворительных во всех отношениях результатов.

Раскрытие изобретения

Ниже рассматриваются сущность изобретения и его преимущества, а возможности осуществления изобретения представлены ниже в описании, поясняемом чертежами. Предмет изобретения не ограничивается представленными и рассматриваемыми вариантами его осуществления.

Преимущества изобретения

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

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

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

Далее, целесообразно, чтобы между любыми двумя вставленными последовательностями фиксированных дополняющих битов находилось не более четырех битов данных, поскольку таким образом можно избежать нарушения предусмотренного стандартом правила заполнения (подстановки дополняющих битов), а именно, появления шести идущих подряд битов одинаковой полярности, а положение фиксированных дополняющих битов определено таким образом единообразно и независимо от данных. Понятие "бит данных" служит здесь для отграничения от дополняющих битов и характеризует те биты, которые должны передаваться передатчиком приемнику или приемникам как составная часть формата сообщений, т.е. в качестве бита начала кадра, в составе поля арбитража, поля управления, поля данных, поля CRC, поля подтверждения и поля конца кадра.

При наличии указанного дополнительного условия целесообразно вставлять последовательности фиксированных дополняющих битов по меньшей мере в поле CRC снабженного меткой, т.е. маркированного, сообщения, но вместе с тем, последовательности фиксированных дополняющих битов также могут вставляться по всему сообщению. В особенно целесообразном варианте осуществления изобретения последовательностями фиксированных дополняющих битов дополняется только поле CRC. В еще одном, также целесообразном, варианте осуществления изобретения поле CRC снабженных меткой сообщений имеет отличное от предусмотренного стандартом на протокол CAN, в частности большее, число битов. Передаваемое поле CRC начинается, кроме того, такой последовательностью фиксированных дополняющих битов, что обеспечивает надежную отработку возникшего в конце поля данных условия заполнения и позволяет единообразно задавать положения последовательностей фиксированных дополняющих битов. Таким образом, за счет очень надежного распознавания ошибок передачи гарантируется оптимальная надежность передачи данных.

Кроме того, целесообразно, чтобы для сообщений с основной адресацией (в основном формате CAN) первая метка была реализована рецессивным вторым битом в поле управления, а для сообщений с расширенной адресацией (в расширенном формате CAN) - рецессивным первым и/или вторым битом в поле управления. Благодаря этому абоненты шины могут четко отличать модифицированные сообщения от обычных стандартных сообщений. В предпочтительном варианте осуществления изобретения при наличии первой метки поле управления в сообщениях содержит, в отличие от стандарта на протокол CAN, более шести битов, причем, в частности, за рецессивным битом первой метки во всех информационных сообщениях следует по меньшей мере один доминантный бит.При наличии первой метки фронт между рецессивным битом первой метки и по меньшей мере одним следующим доминантным битом может выгодно использоваться для ресинхронизации или жесткой синхронизации битового хронирования (структуры битового интервала) абонентов шины, что повышает надежность передачи данных и ее устойчивость к ошибкам, в особенности при последующем переключении длительности бита.

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

В целесообразном варианте осуществления изобретения первую метку оценивают в абонентах шины и в зависимости от метки и кода длины данных адаптируют процесс приема сообщения к размеру поля данных. Таким образом обеспечивается оптимальная гибкость передачи данных.

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

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

В целесообразном варианте осуществления изобретения при наличии первой метки в абонентах шины оценивают вторую метку и в зависимости от значения второй метки адаптируют процесс приема сообщения к различным значениям длительности бита внутри сообщения. Таким образом обеспечивается уверенное распознавание сообщений, передаваемых ускоренно, т.е. в быстром режиме.

В предпочтительном варианте осуществления изобретения, обеспечивающем минимизацию затрат на его реализацию, по меньшей мере два различных значения длительности бита внутри сообщения реализуют в процессе работы путем использования по меньшей мере двух различных коэффициентов масштабирования, или предделителей, для установки шинной единицы (кванта) времени по отношению к наименьшей единице времени или к такту опорного генератора.

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

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

Преимуществом является также возможность использования значительных частей теста соответствия CAN (стандарт ISO 16845). В предпочтительном варианте своего осуществления предлагаемый в изобретении способ передачи данных может комбинироваться с дополнениями, предусмотренными протоколом TTCAN (стандарт ISO 11898-4).

Краткое описание чертежей

Ниже подробнее рассматривается осуществление изобретения, поясняемое следующими чертежами.

На фиг. 1а показаны две альтернативы структуры информационных сообщений, соответствующей стандарту ISO 11898-1 на протокол CAN, а именно сообщений в основном и расширенном форматах CAN.

На фиг. 1б показано два примера формата сообщений, модифицированных по сравнению с уровнем техники в соответствии с предлагаемым в изобретении способом передачи данных в режиме удлиненных сообщений CAN с измененным полем управления и гибким размером поля данных и поля CRC. Представлены как модификация сообщения CAN в основном формате, так и модификация сообщения CAN в расширенном формате.

На фиг. 1в, 1г, 1д показано несколько вариантов предлагаемой в изобретении модификации передаваемого поля CRC, предусматривающей вставку добавочных фиксированных дополняющих битов или последовательностей фиксированных дополняющих битов.

На фиг. 2 представлены различные возможности того, как содержимое кода длины данных может интерпретироваться в случае предлагаемой в изобретении передачи данных иначе по сравнению со стандартом ISO 11898-1 на протокол CAN.

На фиг. 3 схематически представлен пример реализации процесса приема сообщения в предлагаемой в изобретении абонентской станции, работающей в шинной системе в режиме удлиненных сообщений CAN с гибкой скоростью передачи данных ("CAN FD Long").

На фиг. 4 показано два других примера сообщений, которые при осуществлении предлагаемого в изобретении способа передачи данных модифицированы для применения в быстром режиме CAN с гибкой скоростью передачи данных ("CAN FD Fast") и в которых, по сравнению с фиг. 1б, в пределах сообщения дополнительно заданы области, в которых в соответствии с изобретением используется иная длительность бита.

На фиг. 5 схематически представлен пример реализации процесса приема в предлагаемой в изобретении абонентской станции, работающей в шинной системе в быстром режиме CAN с гибкой скоростью передачи данных ("CAN FD Fast").

На фиг. 6а схематически показан фрагмент узла управления, который в предлагаемых в изобретении устройствах выполняет вставку добавочных фиксированных дополняющих битов или последовательностей фиксированных дополняющих битов в посылаемые сообщения.

На фиг. 6б схематически показан фрагмент узла управления, который в предлагаемых в изобретении устройствах выполняет удаление добавочных фиксированных дополняющих битов или последовательностей фиксированных дополняющих битов из принимаемых сообщений.

Осуществление изобретения

На фиг. 1а представлена структура сообщений в том виде, как она используется для передачи данных по шине CAN. Показаны оба различающихся формата сообщений, а именно основной (стандартный) и расширенный форматы. Предлагаемый в изобретении способ применим, в соответствующих вариантах его осуществления, к обоим форматам.

Сообщение начинается битом начала кадра (SOF - сокр. от "Start of Frame"), также называемым стартовым битом и сигнализирующим о начале сообщения. К этому биту примыкает участок, который служит, в первую очередь, для идентификации сообщения и на основании которого абоненты шинной системы решают, принимать или не принимать это сообщение. Этот участок сообщения называется полем арбитража и содержит идентификатор.

Далее следует поле управления (контрольное поле), которое содержит, в том числе, код длины данных. Код длины данных содержит информацию о размере поля данных сообщения. К полю управления примыкает поле данных, содержащее собственно данные, которыми между собой обмениваются абоненты шинной системы. Далее следует поле циклического избыточного кода (CRC) с содержащей 15 битов контрольной суммой и разделителем, а затем - два бита подтверждения (АСК), которые служат для того, чтобы сигнализировать отправителю об успешном приеме сообщения. Завершается сообщение последовательностью конца кадра (EOF - сокр. от "End of Frame").

При осуществлении способа передачи данных по протоколу CAN поле данных может содержать максимум 8 байт, т.е. 64 бит, информации. Код длины данных содержит согласно стандарту четыре бита, т.е. может принимать шестнадцать различных значений. Из этой области значений в современных шинных системах используется лишь восемь различных значений для различных размеров поля данных от 1 до 8 байт. Поле данных размером 0 байт в стандарте на протокол CAN не рекомендуется, а размеры поля данных свыше 8 байт не допускаются. Соотношение значений кода длины данных с размерами поля данных для обычных сообщений по стандарту на протокол CAN представлено в таблице на фиг. 2, в столбце "обычн. CAN".

На фиг. 1б в аналогичном фиг. 1а представлении показаны модифицированные сообщения, передаваемые в соответствии с изобретением и построенные, соответственно, на основе двух предусмотренных стандартом форматов. Они отличаются от показанных на фиг. 1а сообщений, соответствующих стандарту, тем, что в поле управления включено несколько дополнительных битов, которые обозначены как EDL, BRS, ESI и назначение которых поясняется ниже. Кроме того, соответствующие изобретению сообщения отличаются переменным размером поля данных и поля CRC. Поэтому такие сообщения называются удлиненными сообщениями CAN с гибкой скоростью передачи данных ("CAN FD Long").

При осуществлении способа передачи данных, модифицированного в соответствии с изобретением, поле данных может содержать уже более 8 байт, а именно, в рассматриваемом случае, до К байт. В отличие от стандарта CAN, другие значения, принимаемые кодом длины данных, используются для обозначения больших полей данных. Например, вышеупомянутые четыре бита кода длины данных могут использоваться для представления значений от нуля до 15 байт. Вместе с тем, можно использовать и другие соотношения, например, значение кода длины данных DLC=0b0000, которое в настоящее время в сообщениях CAN обычно не используется, можно использовать для еще одного возможного размера поля данных, например для размера 16 байт.

Эти две возможности представлены в приведенной на фиг. 2 таблице столбцами DLC 1 и DLC 2. Максимальный размер поля данных К имеет в этих случаях значение 15 и 16 байт, соответственно. Еще одна возможность заключается в том, чтобы для значений кода длины данных, превышающих 0b1000 и составляющих до 0b1111, соответствующие размеры поля данных увеличивались с большим приращением (инкрементом). Пример такого случая представлен в таблице столбцом DLC 3. Максимальный размер поля данных К достигает в этом варианте значения 64 байт. Разумеется, можно выбирать и другое приращение, составляющее, например, четыре байта.

Для обеспечения возможности определения предлагаемым в изобретении коммуникационным контроллером того, каким образом он должен интерпретировать содержимое кода длины данных, целесообразно, чтобы он самостоятельно узнавал, осуществляется ли связь в шинной системе по стандарту на протокол CAN или согласно предлагаемому в изобретении способу. Одна из возможностей для этого заключается в использовании бита, который находится внутри поля арбитража или поля управления и в соответствии со стандартом на протокол CAN всегда передается с фиксированным значением, для обозначения (маркировки) сообщения меткой, чтобы из этой первой метки коммуникационный контроллер мог вывести первое условие переключения (т.е. сделать вывод о наличии такого условия переключения), в зависимости от которого коммуникационный контроллер выбирает подлежащий применению способ передачи данных.

Обозначение сообщений при основной адресации: В обычных информационных сообщениях, или кадрах данных, соответствующих стандарту на протокол CAN и имеющих основной формат, второй бит поля управления всегда передается доминантным, как это показано на фиг. 1а в ее верхней части, и этот бит обозначен как r0. В примере соответствующего изобретению сообщения с основной адресацией (т.е. с полем арбитража, соответствующим основному формату протокола CAN), представленном на фиг. 1б в ее верхней части, этот второй бит поля управления используют в качестве метки, или маркера, передавая его рецессивным. Соответственно, рецессивное значение второго бита поля управления в подобном сообщении указывает на то, что далее сообщение передастся в формате, отличающемся от предусмотренного стандартом. Этот передаваемый рецессивным второй бит поля управления сообщения с основным форматом поля арбитража называется битом увеличенной длины данных (EDL - сокр. от "Extended Data Length"). Бит r0, который согласно стандарту на протокол CAN всегда передается доминантным, в соответствующих изобретению сообщениях замещается рецессивным битом EDL, или в соответствующих изобретению сообщениях он смещается на одно положение назад, занимая место между рецессивным битом EDL и битом переключения битовой скорости (BRS - сокр. от "Bit Rate Switch"), также являющимся рецессивным при переключении длительности бита. Кроме того, в поле управления можно вставлять и другие биты. Например, на фиг.16 показан бит, называемый индикатором состояния по отношению к ошибкам (ESI - сокр. от "Error State Indicator") и подробнее рассматриваемый ниже. В это место можно вставить также два или более бита, не оказывая влияния на осуществление предлагаемого в изобретении способа.

Таким образом, в целом битовая последовательность в поле управления сообщений в основном формате по стандарту на протокол CAN: {IDE, r0, DLC3, DLC2, DLC1, DLC0}, заменяется в соответствующих изобретению сообщениях следующей последовательностью: {IDE, EDL, N следующих битов, DLC3, DLC2, DLC1, DLC0}.

В представленном на фиг. 1б примере со вставленными битами r0, BRS, ESI число N равно трем. Вместе с тем, N может принимать и любые другие значения, большие нуля. Бит BRS может потребоваться - по рассматриваемым ниже причинам - вставлять в битовую последовательность после бита, всегда передаваемого доминантным, например в сочетании с битом r0 и непосредственно за ним.

Обозначение сообщений при расширенной адресации: В обычных информационных сообщениях (кадрах данных), соответствующих стандарту на протокол CAN и имеющих расширенный формат, первые два бита поля управления всегда передаются доминантными, как это показано на фиг. 1а в ее нижней части, и обозначены как r1 и r0. В примере соответствующего изобретению сообщения с расширенной адресацией (т.е. с полем арбитража, соответствующим расширенному формату протокола CAN), представленном на фиг. 1б в ее нижней части, первый бит r1 поля управления используют в качестве метки, или маркера, передавая его рецессивным. В данном случае рецессивное значение первого бита поля управления в подобном сообщении указывает на то, что далее сообщение передается в формате, отличающемся от предусмотренного стандартом. Этот передаваемый рецессивным бит поля управления и здесь называется битом увеличенной длины данных (EDL - сокр. от "Extended Data Length"). Он замещает зарезервированный доминантный бит r1, предусмотренный в обычных сообщениях, соответствующих стандарту на протокол CAN и имеющих расширенный формат. В качестве альтернативы этому решению доминантный бит r1 также может сохраниться и сместиться назад на одно положение, что соответствовало бы вставке бита EDL в качестве добавочного бита между битом удаленного запроса (RTR) и битом r1. Также возможна вставка бита EDL (рецессивный) в качестве добавочного бита между битом r1 (доминантный) и битом r0 (доминантный). И в этом случае затем в поле управления могут быть вставлены и другие биты. Например, на фиг. 1б опять же изображен бит ESI, который подробнее рассматривается ниже. В битовую последовательность также можно вставлять два или более бита, не оказывая влияния на осуществление предлагаемого в изобретении способа. Таким образом, в целом битовая последовательность в поле управления сообщений в расширенном формате по стандарту на протокол CAN: {r1, r0, DLC3, DLC2, DLC1, DLC0}, заменяется в соответствующих изобретению сообщениях следующей последовательностью: {EDL, N следующих битов, DLC3, DLC2, DLC1, DLC0} или следующей последовательностью: {r1, EDL, М следующих битов, DLC3, DLC2, DLC1, DLC0}.

Представленный на фиг. 1б пример относится к первому из двух вышеназванных вариантов при N=3, а именно, со вставкой битов r0, BRS, ESI. Вместе с тем, параметры N и М также могут принимать любые иные значения, большие нуля. В данном случае бит BRS также может потребоваться - по рассматриваемым ниже причинам - вставлять в битовую последовательность после бита, всегда передаваемого доминантным, например в сочетании с битом r0 и непосредственно за ним.

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

В случае увеличения поля данных сообщений, как это предусмотрено в изобретении, также может быть целесообразным адаптировать используемый метод контроля целостности данных с помощью циклического избыточного кода (CRC), чтобы достичь достаточной устойчивости к ошибкам. В частности, в этом отношении может быть выгодным использовать иной полином CRC, например полином более высокого порядка, и соответственно предусмотреть в модифицированных в соответствии с изобретением сообщениях поле CRC, отличающееся по размеру от предусмотренного стандартом. Это отражено на фиг. 1б, где показано, что в представленном примере поле CRC в соответствующих изобретению сообщениях имеет длину L бит, причем число L, в отличие от стандарта на протокол CAN, может быть неравным 15, в частности может быть больше 15.

Об использовании модифицированного метода вычисления контрольной суммы CRC абонентам шины можно сигнализировать посредством другой, т.е. дополнительной, метки, представляющей другое, т.е. дополнительное, условие переключения. В предпочтительном варианте осуществления изобретения эта другая метка может совпадать с первой меткой и/или первым условием переключения.

В соответствующих стандарту на протокол CAN контроллерах код CRC посылаемых сообщений CAN генерируется посредством сдвигового регистра с обратной связью, на вход которого поочередно подаются последовательно посылаемые биты сообщения. Ширина, или разрядность, сдвигового регистра соответствует порядку полинома CRC. Кодирование кодом CRC осуществляется путем логического объединения содержимого регистра с полиномом CRC во время операций сдвига. Соответственно, при приеме сообщений CAN последовательно принимаемые биты сообщения подаются в сдвиговый регистр CRC. Контроль с помощью кода CRC считается успешным, если в конце поля CRC все биты сдвигового регистра имеют значение "ноль". Как генерация кода CRC в случае передачи, так и контроль с помощью кода CRC в случае приема выполняются на аппаратном уровне, не требуя вмешательства в программные средства. Таким образом, модификация кодирования кодом CRC не затрагивает прикладного программного обеспечения.

Согласно установленному стандартом протоколу CAN дополняющие биты, находящиеся внутри сообщения CAN (см. стандарт ISO 11898-1, гл. 10.5), не включаются в вычисление или проверку контрольной суммы CRC (циклической контрольной суммы) или проверку целостности данных с ее помощью (см. стандарт ISO 11898-1, гл. 10.4.2.6:"… битовый поток с учетом битовой последовательности после дестаффинга, т.е. очистки битового потока от дополняющих битов…"). Следствием этого является то, что в редких случаях в сообщении невозможно обнаружить две битовых ошибки (также называемых ошибками бита), хотя вообще проверка с помощью кода CRC при расстоянии Хэмминга, равном шести, должна выявлять в сообщении до пяти случайно распределенных битовых ошибок. Это может иметь место, например, если из-за битовых ошибок в определенном месте сообщения дополняющий бит превращается в мнимый бит данных или в определенном месте сообщения бит данных превращается в мнимый дополняющий бит (см. Unruh, Mathony и Kaiser: "Error Detection Analysis of Automotive Communication Protocols" (Анализ коммуникационных протоколов, используемых в автомобилестроении, в отношении обнаружения ошибок), SAE International Congress, №900699, Детройт, США, 1990). Например две битовых ошибки, появившихся в переданном сообщении, заполненном дополняющими битами, вследствие какого-либо возмущения или помехи, например электромагнитных воздействий, могут таким образом размножиться с возникновением множества несоответствий между исходно посылавшимся потоком данных до его заполнения дополняющими битами и принятым потоком данных, очищенным от дополняющих битов. Такое множество несоответствий при определенных обстоятельствах уже может быть невозможно обнаружить путем контроля при помощи циклического избыточного кода.

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

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

Для этого случая надежность передачи данных можно еще более повысить, вставляя добавочные фиксированные дополняющие биты или последовательности фиксированных дополняющих битов в заданных положениях в поле CRC. (Ниже по тексту различие между фиксированными дополняющими битами и последовательностями фиксированных дополняющих битов больше не проводится, так как под последовательностями фиксированных дополняющих битов понимаются и одиночные биты.) При этом речь идет, в противоположность обычным дополняющим битам, например, о битах, вставляемых обязательно в жестко заданных, неизменных положениях (отсюда понятие "фиксированные") и исключающих нарушение предусмотренного стандартом правила заполнения битового потока дополняющими битами. Для этого может быть задано дополнительное условие фиксированного заполнения, инициирующее вставку последовательности фиксированных дополняющих битов. Например, можно обеспечить переключение узла управления заполнением из соответствующего стандарту режима с управлением в зависимости от данных в дополнительный режим с управлением в зависимости от показаний счетчика. Каждый раз при достижении счетчиком битов заданного значения, например трех или четырех, инициируется наступление условия заполнения и вставляется последовательность фиксированных дополняющих битов. В простейшем случае правило вставки последовательности фиксированных дополняющих битов идентично правилу вставки дополняющих битов в соответствии со стандартом на протокол CAN, т.е. в передаваемый битовый поток вставляется одиночный бит, противоположный по значению предшествующему биту.

В соответствии с установленными стандартом правилами протокола CAN, после любых идущих подряд пяти битов, имеющих одинаковое значение, передатчиком в поток данных вставляется добавочный дополняющий бит с противоположным значением, чтобы обеспечить прохождение фронтов сигнала, необходимых для синхронизации абонентов шины, в частности моментов выборки значений битов. В соответствии с изобретением, как это предусмотрено в представленном примере, в поле CRC после каждых четырех битов содержимого этого поля (контрольной суммы CRC) вставляется один или несколько битов, причем первый вставленный бит имеет значение, противоположное предшествующему биту. Таким образом, в простейшем случае каждый пятый бит передается со значением, противоположным значению предыдущего бита. Благодаря этому невозможна обусловленная битовыми ошибками неверная интерпретация дополняющих битов как битов данных либо неверная интерпретация битов данных как дополняющих битов, поскольку положение дополняющих битов не зависит от значений битов, передаваемых перед ними. Кроме того, каждый фиксированный дополняющий бит или каждую последовательность фиксированных дополняющих битов можно проверять на правильность по отдельности, поскольку его/ее значение зависит от локального условия (значения предшествующего бита). В альтернативных вариантах осуществления изобретения последовательность фиксированных дополняющих битов может вставляться, например, даже после каждых трех битов поля CRC или попеременно после трех, двух или четырех значений, чередующихся в любой очередности. Данный метод также может быть распространен на области сообщения, находящиеся за пределами поля CRC.

Некоторые примеры вставки фиксированных дополняющих битов, или последовательностей фиксированных дополняющих битов, представлены на фиг. 1г и 1д.

На фиг. 1в представлена серия битовых последовательностей, вычлененная из передаваемого потока данных, до вставки в нее каких-либо (фиксированных) дополняющих битов. Каждый из участков, обозначенных как CRC1, CRC5, соответствует последнему биту Dx поля данных и состоящей из 15…18 битов последовательности CRC. Битовая последовательность выбрана произвольно. На участке CRC3 по соответствующему стандарту методу передачи после бита 15 должен был бы вставлен доминантный (имеющий значение "0") дополняющий бит, как и на участке CRC4. В зависимости от содержимого предыдущих, не схеме показанных, битов данных по меньшей мере в последовательностях CRC4 и CRC5 могут иметься и другие дополняющие биты. Их положение, однако, зависит от характеристик предыдущих данных.

На фиг. 1г показано, в сопоставлении с фиг. 1в, как в одном варианте осуществления предлагаемого в изобретении способа в заданных, обозначенных треугольниками, положениях в поток данных вставляются фиксированные дополняющие биты, обозначенные символом "S". На фиг. 1д представлена аналогичная картина, с тем лишь отличием, что здесь в поток данных вставлялись последовательности, каждая из которых состоит из двух фиксированных дополняющих битов. В обоих случаях между любыми двумя последовательностями фиксированных дополняющих битов находится по четыре бита исходного потока данных, т.е. собственно данных. Не отражен на этих схемах другой, также возможный, случай, в котором между последовательностями фиксированных дополняющих битов находится меньшее число битов (например три бита) или чередующиеся числа битов.

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

Поскольку в начале приема сообщения еще не известно, является ли принимаемое сообщение соответствующим стандарту на протокол CAN или модифицированным в соответствии с изобретением, в предлагаемом в изобретении коммуникационном контроллере реализовано два параллельно работающих сдвиговых регистра CRC. После приема разделителя CRC, когда в приемнике (получателе сообщения) выполняется анализ кода CRC, на основании предусмотренной изобретением другой (дополнительной) метки можно констатировать, какой способ передачи данных использовался, и тогда анализироваться будет сдвиговый регистр, соответствующий этому способу передачи данных. Другая метка, как это было уже отмечено выше, может совпадать с первой меткой, относящейся к размеру поля данных и к интерпретации кода длины данных.

Передатчику (отправителю сообщения) в начале посылки сообщения, в принципе, уже известно, какой способ должен использоваться для передачи данных. Однако поскольку может случиться так, что арбитраж за доступ к шине будет проигран, и начавшееся сообщение не отправится, а вместо этого будет приниматься другое сообщение, два сдвиговых регистра CRC параллельно включаются и в этом случае.

Описанная реализация двух параллельно работающих сдвиговых регистров CRC делает возможным еще одно усовершенствование: полином CRC, предусмотренный стандартным протоколом CAN (х15+х14+х10+х8+х7+х4+х3+1), рассчитан на длину сообщений менее 127 битов. Если в сообщениях, передаваемых в соответствии с изобретением, используются более длинные поля данных, то для поддержания надежности передачи целесообразно использовать другой, в частности более длинный, полином CRC. Соответственно этому, сообщения, передаваемые в соответствии с изобретением, получают измененное, в частности более длинное, поле CRC. В процессе работы коммуникационные контроллеры динамически переключаются с одного сдвигового регистра CRC на другой, т.е. между сдвиговым регистром, работающим соответственно стандарту на протокол CAN, и сдвиговым регистром, работающим в соответствии с изобретением, чтобы использовать подходящий в соответствующем случае полином.

Естественно, в зависимости от длины поля данных или требуемой надежности передачи можно использовать, в определенной градации, и более двух сдвиговых регистров, а соответственно - и более двух полиномов CRC. В этом случае необходимо, если требуется сохранить совместимость со стандартом на протокол CAN, адаптировать соответствующую метку и связанное с ней условие переключения. Например, второй бит поля управления может представлять первую метку, обозначающую переключение на более длинные поля данных, например, указанные в столбце DLC 1 таблицы на фиг. 2, и на соответствующий второй полином CRC. Для сообщений, содержащих более длинные поля данных и обозначенных первой меткой, в поле управления может быть вставлен, например, дополнительный бит, обозначающий переключение на другой набор размеров поля данных, например указанный в столбце DLC 3 таблицы на фиг. 2, и на третий полином CRC. Вставка дополнительных битов в поле управления сообщений, имеющих первую метку, является возможной потому, что в данном случае в коммуникационном контроллере и так уже используется измененный процесс передачи и приема, а значит, подобные изменения могут быть учтены. Совместимость со стандартом на протокол CAN обеспечивается тем, что при отсутствии первой метки, т.е. при доминантном втором бите поля управления в представленном примере, структура сообщений в точности соответствует предписаниям стандарта ISO 11898-1.

На фиг. 3 в упрощенном представлении показан фрагмент предлагаемого в изобретении процесса приема сообщения, выполняющегося в абонентской станции шинной системы. Здесь представлен случай обеспечения совместимости со стандартом на протокол CAN, достигаемой за счет того, что поведение коммуникационного контроллера адаптируется, или корректируется, в зависимости от первого условия переключения. Хотя на фиг. 3 выбрано представление, обычное для описания процессов выполнения программ, предлагаемый в изобретении способ полностью пригоден для его реализации аппаратными средствами.

Абонентская станция сначала находится в состоянии прослушивания шины, пока на шине отсутствует обмен информацией. Таким образом, в состоянии опроса 302 станция ждет прохождения по шине доминантного бита. Этот бит характеризует начало нового сообщения ("начало кадра").

Как только обнаружено начало нового сообщения, в блоке 304 начинается вычисление по меньшей мере двух параллельно вычисляемых контрольных сумм CRC. Первая контрольная сумма вычисляется с помощью кода CRC согласно стандарту на протокол CAN, а вторая контрольная сумма вычисляется согласно новому методу. При вычислении второй контрольной суммы CRC в представленном варианте осуществления изобретения учитываются дополняющие биты, тогда как при вычислении в соответствии со стандартом па протокол CAN этого не происходит.

Затем, начиная с шага 306, принимаются биты сообщения, следующие за битом начала кадра (SOF) и начинающиеся полем арбитража. Если передать сообщение хотят несколько абонентов шины, они при этом соревнуются между собой по методу, известному из стандарта на протокол CAN, за получение доступа к шине. Представленный блок 306 характеризует прием всех битов до приема первой метки, или установления наличия первого условия переключения. В приведенном примере наличие первого условия переключения устанавливается на основании поля управления, например его второго бита (см. фиг. 1). Затем в блоке 308 могут приниматься и другие биты сообщения, пока с определенного бита сообщения в зависимости от установленного первого условия переключения процесс приема не пойдет иным образом. Это разветвление процесса на различные методы обеспечивается соответствующим запросом или разветвлением 310, как это в качестве примера показано ниже.

Если при разветвлении 310, например после приема второго бита поля управления как доминантного бита r0, имеется информация о том, что согласно первой метке связь осуществляется по стандарту на протокол CAN (ветвь ''1'' на фиг. 3), на шаге 312 считываются дальнейшие биты поля управления. На основании этих битов согласно стандарту на протокол CAN анализируется код длины данных и затем на шаге 316 принимается соответствующий объем данных, максимум 8 байт, соответственно полю данных. Затем на шаге 320 принимается поле CRC, содержащее 15 битов. Если при разветвлении 324 имеется информация о том, что контрольная сумма CRC, которая была отправлена передатчиком, совпадает с контрольной суммой CRC, определенной самим приемником, в блоке 328 посылается доминантный бит подтверждения. Следует иметь в виду, что в этом случае сравниваются контрольные суммы CRC, вычисляемые по стандарту, поскольку связь осуществляется по стандарту на протокол CAN. Если совпадения контрольных сумм не установлено, бит подтверждения посылается рецессивным (блок 330). Затем на шаге 332 (для одной ветви алгоритма) и 334 (для другой ветви алгоритма) следуют разделитель ACK и биты конца кадра (EOF). На этом процесс приема сообщения завершается.

В отношении вставки дополняющих битов передатчиком и удаления дополняющих битов приемником действуют правила стандарта ISO 11898-1 на протокол CAN. Указанные выше размеры полей сообщения относятся к объему данных после удаления дополняющих битов. Вставленные дополняющие биты удаляются из принятого потока данных также для предусмотренного стандартом вычисления контрольной суммы CRC.

Если же при разветвлении 310, например после приема второго бита поля управления как рецессивного бита EDL, имеется информация о том, что использованию подлежит модифицированный соответствии с изобретением способ связи (ветвь ''2'' на фиг. 3), в блоке 314 считываются дальнейшие биты поля управления. Здесь также могут считываться, например, вставленные в поле управления дополнительные биты, которые, могут служить, например, для переключения на другой отличающийся от стандарта полином CRC или же для переключения длительности бита, для синхронизации или других целей. Этот аспект подробнее рассматривается ниже. По результату считывания определяется код длины данных, анализируемый в соответствии с новой интерпретацией, приведенной для некоторых примеров в виде таблицы на фиг. 2. В блоке 318 принимается соответствующий объем данных, т.е. до 15 байт данных для приведенного в таблице на фиг. 2 примера DLC 1, до 16 байт данных для примера DLC 2, до 64 байт данных для примера DLC 3. В блоке 322 принимается поле CRC, которое в соответствии с изобретением отличается от предусмотренного стандартом, в частности является более длинным. Если при разветвлении 324 имеется информация о том, что контрольная сумма CRC, отправленная передатчиком, и контрольная сумма CRC, определенная самим приемником, совпадают, причем в этом случае сравнение контрольных сумм CRC основано на методе их вычисления, который в соответствии с изобретением отличается от предусмотренного стандартом, в блоке 328 посылается доминантный бит подтверждения. В противном случае (блок 330) бит подтверждения посылается рецессивным. Затем на шаге 332 (для одной ветви алгоритма) и 334 (для другой ветви алгоритма) следуют разделитель ACK и биты конца кадра (EOF). На этом процесс приема сообщения завершается.

В отношении вставки дополняющих битов передатчиком и удаления дополняющих битов приемником в данном случае для передачи поля арбитража, поля управления и поля данных также действуют правила стандарта ISO 11898-1 на протокол CAN. В блоке 322 узел управления заполнением битового потока переключается из режима работы в зависимости от данных в режим работы в зависимости от показаний счетчика. В результате этого фиксированные дополняющие биты или последовательности фиксированных дополняющих битов, вставлявшиеся передатчиком с регулярными промежутками, удаляются приемником для дальнейшей обработки сообщения. Указанные выше размеры полей сообщения относятся к объему данных после удаления дополняющих битов или фиксированных дополняющих битов. Для вычисления контрольной суммы CRC, отличающейся от стандарта, вставленные дополняющие биты учитываются, т.е. включаются в процесс вычисления, однако вставленные в соответствии с изобретением фиксированные дополняющие биты или последовательности фиксированных дополняющих битов из принятого потока данных удаляются.

На фиг. 3 отражен случай, в котором другая метка, определяющая подлежащий использованию код CRC, совпадает с первой меткой, относящейся к размеру поля данных и интерпретации кода длины данных. Это значит, что перед приемом 320 (для одной ветви алгоритма) и 322 (для другой ветви алгоритма) контрольных сумм CRC повторный запрос того, какая контрольная сумма CRC подлежит приему согласно другой метке и анализу для принятия решения при разветвлении 324, не выполняется. Путем простой модификации алгоритма, блок-схема которого приведена на фиг. 3, этот дополнительный запрос можно при необходимости включить в процесс приема.

На фиг. 4 показано два других примера модифицированных в соответствии с изобретением сообщений, у которых, по сравнению с фиг. 1б, в пределах сообщения дополнительно заданы области, в которых в соответствии с изобретением используется иная длительность бита, а значит, отдельные биты передаются по шине быстрее. Поэтому такие сообщения носят обозначение "CAN FD Fast", т.е. используются в быстром режиме CAN с гибкой скоростью передачи данных. Для двух вышеупомянутых возможных вариантов адресации сообщений, а именно основного формата и расширенного формата, на фиг. 4 обозначены области, в которых выполняется переключение между двумя состояниями, называемыми состоянием арбитража в быстром режиме CAN и состоянием передачи данных в быстром режиме CAN. Это переключение между двумя состояниями ведет к тому, что для соответствующей части сообщения значения длительности бита (битового времени) уменьшаются, чем достигается более быстрая передача отдельных битов по шине. Благодаря этому можно сократить время передачи сообщения по сравнению со способом, соответствующим стандарту. Соответствующее чередование значений длительности бита может быть реализовано в процессе работы ("на лету"), например, путем использования по меньшей мере двух различных коэффициентов масштабирования для установки шинной единицы времени (кванта времени) по отношению к наименьшей единице времени или к такту опорного генератора. Переключение длительности бита, а также соответствующее изменение коэффициента масштабирования также представлены на фиг. 4 в качестве примера.

Переход между состояниями арбитража в быстром режиме CAN и передачи данных в быстром режиме CAN происходит в сообщениях, имеющих первую метку EDL, в зависимости от второй метки, сигнализирующей участвующим в передаче данных абонентам о применении сокращенной длительности бита. В представленном здесь варианте осуществления изобретения положением этой метки является дополнительный бит (разряд) в поле управления, называемый битом переключения битовой скорости (BRS - сокр. от Bit Rate Switch). В представленном примере он передается как четвертый бит поля управления.

В представленном случае, т.е. когда за первой меткой EDL следует вторая метка BRS, в соответствии с предлагаемым в изобретении способом передачи данных передаются сообщения, длительность бита в которых заметно сокращена, размер поля данных которых может быть растянут до значений, превышающих 8 байт, и у которых код CRC адаптирован к большему полю данных, т.е. согласован с ним, и распространен на ранее вставленные в сообщение дополняющие биты. Таким образом достигается значительное увеличение пропускной способности шинной системы при одновременно повышенной надежности передачи данных.

Ускоренная передача начинается в представленном примере сразу после передачи соответствующей метки и завершается сразу после достижения бита, заданного в качестве указателя обратного переключения, или в случае, когда обнаружена причина для отправки кадра ошибки.

На фиг. 5 показан процесс приема, модифицированный по сравнению с показанным на фиг. 3, в котором дополнительно, в зависимости от второй метки BRS, осуществляется переключение между состояниями арбитража в быстром режиме CAN и передачи данных в быстром режиме CAN. Если при разветвлении 310, например, после приема второго бита поля управления в виде рецессивного бита EDL, имеется информация о том, что использованию подлежит модифицированный соответствии с изобретением способ связи, в блоке 408 считываются следующие биты поля управления. Если служащий в качестве второй метки бит, например четвертый бит BRS расширенного в соответствии с изобретением поля управления, принимается с предусмотренным значением, например рецессивным, то выполняется, например в точке выборки этого бита, переход в состояние передачи данных в быстром режиме CAN, т.е. переключение на сокращенную длительность бита (ветвь "С"). Если соответствующий бит имеет противоположное значение, т.е. в данном примере является доминантным, то сокращения длительности бита не происходит (ветвь "В"). В блоках 412 (для одной ветви алгоритма) и 414 (для другой ветви алгоритма) осуществляется прием оставшихся битов поля управления, в том числе кода длины данных, и прием поля данных согласно информации о размере последнего, полученной из кода длины данных. В блоке 412 прием ведется с нормальной длительностью бита, а в блоке 414 - с сокращенной длительностью бита. В блоках 416 (для одной ветви алгоритма) и 418 (для другой ветви алгоритма) считывается поле CRC, которое в соответствии с изобретением отличается от предусмотренного стандартом, в частности является более длинным. На последнем бите поля CRC, представляющем собой разделитель CRC, в блоке 418 снова осуществляется переключение в состояние арбитража в быстром режиме CAN с обычной скоростью передачи данных. Затем при разветвлении 324 проверяется, аналогично представленному на фиг. 3 алгоритму, совпадают ли контрольная сумма CRC, отправленная передатчиком, и контрольная сумма CRC, определенная самим приемником, и дальнейшие действия выполняются в зависимости от результата проверки, как уже было показано на фиг. 3.

В отношении вставки дополняющих битов передатчиком и удаления дополняющих битов приемником в данном случае для передачи поля арбитража, поля управления и поля данных также действуют правила стандарта ISO 11898-1 на протокол CAN. В блоках 416 (для одной ветви алгоритма) и 418 (для другой ветви алгоритма) узел управления заполнением переключается из режима работы в зависимости от данных в режим работы в зависимости от показаний счетчика. В результате этого фиксированные дополняющие биты или последовательности фиксированных дополняющих битов, вставленные передатчиком с регулярными промежутками, удаляются приемником. Указанные выше размеры полей сообщения относятся к объему данных после удаления дополняющих битов или фиксированных дополняющих битов. Для вычисления контрольной суммы CRC, отличающейся от стандарта, вставленные дополняющие биты учитываются, т.е. включаются в процесс вычисления, однако вставленные в соответствии с изобретением фиксированные дополняющие биты или последовательности фиксированных дополняющих битов из принятого потока данных удаляются.

На фиг. 6а схематически показан фрагмент узла управления, который в предлагаемых в изобретении устройствах, в частности в коммуникационных контроллерах, осуществляет вставку добавочных фиксированных дополняющих битов или последовательностей фиксированных дополняющих битов в посылаемые сообщения. На фиг. 6б схематически показан фрагмент узла управления, который в предлагаемых в изобретении устройствах осуществляет удаление добавочных фиксированных дополняющих битов или последовательностей фиксированных дополняющих битов из принимаемых сообщений. Собственно полезные данные, которые нужно передать, имеют обозначение RD ("исходные данные"), а данные, заполненные (фиксированными) дополняющими битами и проходящие по шинной системе, имеют обозначение BD ("данные на шине").

При осуществлении обычного метода заполнения битового потока дополняющими битами (битстаффинг) по протоколу CAN как на приемной, так и на передающей стороне считываемые биты в момент выборки подаются в сдвиговый регистр 610, 620 заполнения, имеющий разрядность пять битов. Если все пять битов этого регистра имеют одно и то же значение, наступает условие заполнения. Наличие или отсутствие этого условия устанавливается в устройстве 612, 622 анализа данных. При отсутствии условия заполнения сдвиговые регистры данных в передатчике и в приемнике сдвигаются на один бит один раз за каждый промежуток времени передачи бита (длительность бита) по шине CAN. Передатчик сообщения каждый раз посылает начальный бит своего сдвигового регистра данных, приемник подает считанный бит в свой сдвиговый регистр данных. Если устройство 612 анализа данных передатчика установит наличие условия заполнения, вставляющий узел 616 сделает так, чтобы сдвиговые регистры данных не сдвигались, а передатчик в качестве следующего бита послал бит, противоположный по значению предыдущему. Таким образом данные на шине BD будут дополнены этим битом относительно исходных данных RD. Если устройство 622 анализа данных приемника установит наличие условия заполнения в данных на шине BD, удаляющий узел 626 воспрепятствует подаче очередного бита в сдвиговый регистр данных и обеспечит проверку того, является ли этот бит противоположным по значению предыдущему биту. (Если это не так, то будет распознано наличие ошибки заполнения.) Данный бит будет удален из данных на шине, и в исходных данных RD, подаваемых на дальнейшую обработку, его уже не будет.

При осуществлении предлагаемого в изобретении способа передачи данных управление вставкой и удалением дополняющих битов предпочтительно выполняется узлом управления, переключаемым между по меньшей мере двумя режимами, как показано на фиг. 6а и 6б. Узел управления в передатчике и узел управления приемнике дополнены соответствующими подузлами 614, 624 управления и узлами 618, 628 выбора. Например, во время передачи защищенных посредством контрольной суммы CRC битов в поле арбитража, поле управления и поле данных (согласно способу по стандарту на протокол CAN) вставка и удаление дополняющих битов зависит от содержимого сдвигового регистра 610, 620 заполнения. В другой же области сообщения, например во время передачи поля CRC сообщения, происходит переключение на работу в зависимости от показаний счетчика. Для этого в представленном примере используется подузел 614, 624 управления с пятью состояниями, одно из которых соответствует условию фиксированного заполнения. Как и при наличии обычного условия заполнения, при наличии условия фиксированного заполнения приводится в действие вставляющий узел 616 (в передатчике) и удаляющий узел 626 (в приемнике). С каждым битовым тактом протокола CAN подузел 614, 624 управления циклически переключается между пятью состояниями так, что для каждого пятого бита задействуется вставляющий узел 616 и удаляющий узел 626. В этом случае, как в случае способа, соответствующего стандарту на протокол CAN, в данные на шине BD передатчиком вставляется бит, противоположный по значению предыдущему биту, а с другой стороны - в приемнике, вставленный бит проверяется и затем удаляется. Таким образом, при применении этого способа в поле CRC всегда передаются группы из четырех битов последовательности CRC, разделенные одним фиксированным дополняющим битом.

Как было описано выше, вместо фиксированных дополняющих битов также могут вставляться соответствующие последовательности фиксированных дополняющих битов: например, после бита со значением ''1'' можно вставлять последовательность ''0 1'', или после бита со значением ''0'' можно вставлять последовательность ''1 0''. Также, например, последовательность фиксированных дополняющих битов может вставляться после каждого третьего бита данных последовательности CRC. Также могут быть предусмотрены и другие режимы, чтобы, например, в зависимости от режима, последовательность фиксированных дополняющих битов следовала либо за каждым третьим, либо за каждым четвертым битом данных.

Подузел 614, 624 управления настраивается, например, при начале передачи поля CRC, на обеспечение выполнения условия фиксированного заполнения. Тем самым поле CRC начинается фиксированным дополняющим битом или последовательностью фиксированных дополняющих битов, а положения всех фиксированных дополняющих битов в поле CRC сообщения жестко заданы. Если в начале поля CRC условие заполнения и так уже наступило, поскольку, например, поле данных закончилось пятью одинаковыми битами, дополняющий бит в начале поля CRC отрабатывает и это условие заполнения.

В качестве альтернативы, подузел 614, 624 управления также может быть реализован в виде циклического счетчика заполнения, например с диапазоном значений от 0 до 4, который в начале поля CRC сбрасывается на ноль и у которого каждое повторное достижение значения "ноль" инициирует вставку фиксированного дополняющего бита или последовательности фиксированных дополняющих битов.

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

Наличие в соответствующих изобретению сообщениях следующего за рецессивным битом первой метки EDL всегда доминантного бита r0 (или, возможно, бита r1 в случае расширенной адресации) ведет к тому, что - как это показано, например, на фиг. 1б и 4 - во всех соответствующих изобретению информационных сообщениях проходит фронт сигнала, обусловленный переходом с рецессивного уровня на доминантный. Этот фронт может использоваться для улучшения синхронизации между абонентами шины, что является преимуществом, в частности, при предусмотренном в изобретении переключении на меньшие значения длительности бита.

Если все абоненты шины в сети синхронизированы по передающему абоненту, переключение на меньшую длительность бита может осуществляться без проблем. Однако может быть и так, что на предусмотренном для переключения бите не все абоненты шины синхронизированы по передающему абоненту, например если первый передающий абонент посылает в конце поля арбитража битовую последовательность "доминантный-доминантный" (два доминантных бита подряд), а второй передающий абонент, еще желающий получить доступ к шине в рамках арбитража, посылает битовую последовательность "доминантный-рецессивный" (доминантный бит, за которым следует рецессивный бит). Второй передающий абонент проигрывает арбитраж на рецессивном бите и становится приемником (принимающим узлом). До рецессивного бита оба передатчика (передающих узла) передали одну и ту же битовую последовательность. Поскольку вследствие времен прохождения сигналов по шине CAN и через приемопередатчики (трансиверы) каждый из двух передатчиков увидит отправленный им самим фронт, обусловленный переходом с рецессивного уровня на доминантный, раньше такого же фронта, отправленного другим передатчиком, ни один из них не сможет синхронизироваться по другому.

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

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

Чтобы избежать ложной синхронизации после переключения длительности бита, при помощи соответствующих мероприятий необходимо гарантировать синхронизацию перед переключением длительности бита. Этого можно достичь путем выполнения синхронизации по фронту при переходе от бита EDL (рецессивный уровень) к биту r0 или r1 (доминантный уровень). В частности, вместо ресинхронизации, которая обычно выполняется внутри кадра, можно проводить жесткую синхронизацию. Она выполняется также, например, по биту начала кадра и надежно и полностью компенсирует возможные фазовые сдвиги. При ресинхронизации, обычно выполняемой внутри кадра, может оставаться остаточная ошибка, если фазовая ошибка превышает настроенную ширину скачка ресинхронизации (SJW).

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

Возможность вставки дополнительных битов в поле управления соответствующих изобретению сообщений можно использовать также для облегчения обнаружения абонентов шины, находящихся в пассивном к ошибкам (Error Passive) состоянии. Абонент шины с известным из уровня техники коммуникационным контроллером принимает пассивное к ошибкам состояние, если значение счетчика передачи или приема достигло 128 или превысило этот порог. Если абонент шины находится в пассивном к ошибкам состоянии, он не может отправлять активные флаги ошибки (шесть доминантных битов подряд). Если такой абонент шины обнаружит ошибку, он посылает пассивный флаг ошибки (шесть рецессивных битов подряд). Однако пассивный флаг ошибки на шине CAN неотличим от уровня покоя шины. Таким образом, при данных обстоятельствах другие абоненты шины могут лишь косвенно узнавать о том, что абонент шины находится в пассивном к ошибкам состоянии.

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

В предлагаемом в изобретении способе информация о пассивном к ошибкам состоянии коммуникационного контроллера встраивается в сообщения, и без того передаваемые абонентом шины. Для этого поле управления сообщения расширяется еще на один бит, являющийся индикатором состояния по отношению к ошибкам (ESI - сокр. от "Error State Indicator"). Этот бит вставляется, как показано на фиг. 1б, после первой метки (EDL) и до кода длины данных DLC, например непосредственно перед или непосредственно после бита BRS. Абонент шины, находящийся в пассивном к ошибкам состоянии, передает этот бит, например, доминантным, тогда как в противном случае бит передается рецессивным. Возможна также обратная логика.

Представленный способ передачи данных пригоден при нормальной эксплуатации транспортного средства для передачи данных между по меньшей мере двумя блоками управления транспортного средства, соединенными подходящей шиной данных. Вместе с тем, предлагаемый в изобретении способ может в равной мере эффективно применяться в процессе производства или технического обслуживания транспортного средства для передачи данных между программатором, соединенным с подходящей шиной данных с целью программирования, и по меньшей мере одним соединенным с этой шиной данных блоком управления транспортного средства. Кроме того, предлагаемый в изобретении способ может применяться в промышленной автоматике, например для передачи управляющей информации между распределенными, соединенными друг с другом шиной устройствами управления, которые управляют выполнением промышленного технологического процесса. В этой среде также могут использоваться линии шины очень большой протяженности, и потому может быть особенно целесообразным эксплуатировать шинную систему так, чтобы в фазе арбитража она работала при относительно большой длительности бита, например 16, 32 или 64 микросекунды, что позволяло бы сигналам на шине распространяться в процессе арбитража требуемым образом по всей шинной системе. Тогда впоследствии для части сообщения можно переключаться, как было описано, на меньшие значения длительности бита, чтобы не давать средней скорости передачи стать слишком малой.

В целом предлагаемый в изобретении способ представляет собой способ передачи данных, который отличается тем, что контроллер, поддерживающий обычный режим CAN, требует внесения лишь минимальных изменений для того, чтобы он мог работать в соответствии с изобретением. Предлагаемый в изобретении коммуникационный контроллер, способный работать также в обычном режиме CAN, лишь незначительно больше обычного контроллера, поддерживающего обычный режим CAN. Соответствующую прикладную программу изменять не требуется, и даже тогда достигаются преимущества в скорости передачи данных. Благодаря использованию увеличенного размера поля данных и относящихся к нему кода длины данных (DLC) и циклического избыточного кода (CRC) можно еще более увеличить скорость передачи данных, а изменения, предпринимаемые в прикладном программном обеспечении для его адаптации, минимальны. Могут использоваться обширные части теста соответствия CAN (ISO 16845). Кроме того, предлагаемый в изобретении способ передачи данных может комбинироваться с дополнениями, предусмотренными протоколом TTCAN (ISO 11898-4).

1. Способ последовательной передачи данных в шинной системе, включающей в себя по меньшей мере два абонента шины, обменивающихся по шине сообщениями, причем:

- доступ к шине для передачи любого сообщения предоставляют абоненту шины по методу арбитража, соответствующему стандарту ISO 11898-1 на протокол сети контроллеров (CAN),

- сообщения имеют логическую структуру, соответствующую стандарту на протокол CAN, т.е. состоят из бита начала кадра, поля арбитража, поля управления, поля данных, поля циклического избыточного кода (CRC), поля подтверждения и поля конца кадра,

- при наличии условия заполнения в сообщение между передаваемыми битами данных вставляют по правилам стандарта на протокол CAN дополняющие биты,

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

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

- в зависимости от соответствующей метки (EDL) решают, результат которого из параллельно запущенных вычислений содержимого поля CRC будет использоваться для проверки правильности передачи данных,

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

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

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

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

5. Способ по п. 1, отличающийся тем, что между любыми двумя вставляемыми последовательностями фиксированных дополняющих битов находится не более четырех битов передаваемых данных.

6. Способ по п. 1, отличающийся тем, что при наличии указанного дополнительного условия последовательности фиксированных дополняющих битов вставляют в сообщение по меньшей мере в поле CRC последнего.

7. Способ по п. 1, отличающийся тем, что при наличии указанного дополнительного условия последовательности фиксированных дополняющих битов вставляют по всему сообщению.

8. Способ по п. 1, отличающийся тем, что по меньшей мере для одного значения метки поле CRC в сообщении имеет число битов, отличное от предусмотренного стандартом на протокол CAN.

9. Способ по п. 1, отличающийся тем, что последовательность фиксированных дополняющих битов состоит из одиночного бита, причем если значение предшествующего бита равно ''0'', то в качестве последовательности фиксированных дополняющих битов вставляют ''1'', а если значение предшествующего бита равно ''1'', то в качестве последовательности фиксированных дополняющих битов вставляют ''0''.

10. Способ по п. 1, отличающийся тем, что последовательность фиксированных дополняющих битов состоит из двух битов, причем если значение предшествующего бита равно ''0'', то в качестве последовательности фиксированных дополняющих битов вставляют ''1 0'', а если значение предшествующего бита равно ''1'', то в качестве последовательности фиксированных дополняющих битов вставляют ''0 1''.

11. Способ по п. 1, отличающийся тем, что при наличии указанного дополнительного условия последовательности фиксированных дополняющих битов вставляют в сообщение только в поле CRC, причем поле CRC начинается последовательностью фиксированных дополняющих битов.

12. Способ по п. 1, отличающийся тем, что при наличии первой метки (EDL) поле управления в сообщениях содержит, в отличие от стандарта на протокол CAN, более шести битов.

13. Способ по п. 1, отличающийся тем, что первая метка (EDL) для сообщений с основной адресацией реализована рецессивным вторым битом в поле управления, а для сообщений с расширенной адресацией - рецессивным первым и/или вторым битом в поле управления.

14. Способ по п. 13, отличающийся тем, что при наличии первой метки за рецессивным битом первой метки (EDL) во всех информационных сообщениях следует по меньшей мере один доминантный бит.

15. Способ по п. 1, отличающийся тем, что при наличии первой метки (EDL) поле данных в сообщениях может содержать, в отличие от стандарта ISO 11898-1 на протокол CAN, более восьми байт, причем для установления размера поля данных значения четырех битов кода длины данных интерпретируют, по меньшей мере частично, иначе по сравнению со стандартом ISO 11898-1 на протокол CAN.

16. Способ по п. 15, отличающийся тем, что первую метку (EDL) оценивают в абонентах шины и в зависимости от первой метки и кода длины данных адаптируют процесс приема сообщения к размеру поля данных.

17. Способ по одному из пп. 1-16, отличающийся тем, что при наличии второй метки (BRS) длительность бита по меньшей мере для одной заданной или задаваемой области в пределах сообщения принимает значение, уменьшенное по сравнению с длительностью бита, используемой до появления второй метки, причем указанная область начинается не ранее чем со второй меткой и заканчивается не позднее чем с разделителем CRC, и вторая метка (BRS) появляется только при наличии первой метки (EDL) и реализована в сообщениях в поле управления, содержащем, в отличие от стандарта ISO 11898-1 на протокол CAN, более шести битов.

18. Способ по п. 17, отличающийся тем, что вторая метка (BRS) реализована рецессивным битом в поле управления, передаваемым во времени после бита первой метки (EDL).

19. Способ по п. 18, отличающийся тем, что при наличии второй метки рецессивный бит второй метки (BRS) отделен от рецессивного бита первой метки (EDL) по меньшей мере одним доминантным битом.

20. Способ по п. 13, отличающийся тем, что при наличии первой метки фронт между рецессивным битом первой метки (EDL) и по меньшей мере одним следующим доминантным битом используют для ресинхронизации или жесткой синхронизации битового хронирования абонентов шины.

21. Способ по п. 17, отличающийся тем, что вторую метку (BRS) оценивают в абонентах шины при наличии первой метки и в зависимости от значения второй метки адаптируют процесс приема сообщения к различным значениям длительности бита внутри сообщения.

22. Способ по п. 17, отличающийся тем, что по меньшей мере два различных значения длительности бита внутри сообщения реализуют в процессе работы путем использования по меньшей мере двух различных коэффициентов масштабирования для установки шинной единицы времени по отношению к наименьшей единице времени или к такту опорного генератора.

23. Устройство для последовательной передачи данных в шинной системе, включающей в себя по меньшей мере два абонента шины, обменивающихся по шине сообщениями, причем:

- доступ к шине для передачи любого сообщения предоставляют абоненту шины по методу арбитража, соответствующему стандарту ISO 11898-1 на протокол сети контроллеров (CAN),

- сообщения имеют логическую структуру, соответствующую стандарту на протокол CAN, т.е. состоят из бита начала кадра, поля арбитража, поля управления, поля данных, поля циклического избыточного кода (CRC), поля подтверждения и поля конца кадра,

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

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

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

- в зависимости от соответствующей метки (EDL) решают, результат которого из параллельно запущенных вычислений содержимого поля CRC будет использоваться для проверки правильности передачи данных,

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

24. Устройство по п. 23, отличающееся тем, что оно оборудовано средствами, подходящими для осуществления по меньшей мере одного из способов передачи данных по пп. 2-22.

25. Устройство по п. 24, отличающееся тем, что подходящие средства включают в себя по меньшей мере один узел управления, переключаемый между по меньшей мере двумя режимами.

26. Устройство по п. 25, отличающееся тем, что переключаемый узел управления имеет по меньшей мере один режим работы в зависимости от показаний счетчика.

27. Применение способа по одному из пп. 1-22 при нормальной эксплуатации транспортного средства для передачи данных между по меньшей мере двумя блоками управления транспортного средства, соединенными подходящей шиной данных.

28. Применение способа по одному из пп. 1-22 при эксплуатации промышленных систем управления для передачи данных между по меньшей мере двумя устройствами управления, соединенными подходящей шиной данных.

29. Применение способа по одному из пп. 1-22 в процессе производства или технического обслуживания транспортного средства для передачи данных между программатором, соединенным с подходящей шиной данных с целью программирования, и по меньшей мере одним соединенным с этой шиной данных блоком управления транспортного средства.



 

Похожие патенты:

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

Изобретение относится к области связи, а именно к способу и устройству для переключения интерфейса в условиях мультимедийной домашней сети. Технический результат заключается в повышении эффективности передачи данных вследствие выбора неправильного интерфейса.

Изобретение относится к области организации адресных книг пользователей, а именно к синхронизации адресной книги в терминале пользователя и адресной книги в социальной сети.

Изобретение относится к технологиям связи. Технический результат заключается в повышении надежности и скорости передачи данных.

Изобретение относится к технологиям сетевой связи. Технический результат заключается в повышении скорости передачи данных.

Изобретение относится к области компьютерных разработок, а более конкретно - к разработке программного обеспечения, включающей в себя координацию взаимозависимых систем с ограничениями.

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

Изобретение относится к технологиям связи. Технический результат заключается в повышении надежности и скорости передачи данных.

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

Изобретение относится к технологиям связи. Технический результат заключается в повышении надежности и скорости передачи данных.

Изобретение относится к области защиты данных при взаимодействии мобильного устройства с компьютером. Технический результат настоящего изобретения заключается в защите данных пользователя при подключении мобильного устройства к компьютеру за счет проверки компьютера на безопасность подключения мобильного устройства с последующим формированием режима передачи данных. Раскрыт способ проверки компьютера на безопасность подключения мобильного устройства с последующим формированием режима передачи данных между устройствами, в котором: подключают мобильное устройство к компьютеру с помощью адаптера безопасности; определяют наличие или отсутствие запроса от компьютера на установление соединения с мобильным устройством для обмена данными; отправляют мобильному устройству запрос на определение уровня безопасности; собирают параметры окружения; определяют уровень безопасности на основании собранных параметров окружения; определяют количество новых запросов на установление соединения с мобильным устройством во время ожидания уровня безопасности от мобильного устройства; выбирают правило формирования режима передачи данных между мобильным устройством и компьютером; формируют режим передачи данных согласно выбранному правилу. 3 н. и 16 з.п. ф-лы, 5 ил.

Изобретение относится к компьютерной технике, в частности к обеспечению очереди команд для встроенной памяти. Технический результат заключается в повышении эффективности определения очередности команд в регистре встроенной памяти. Технический результат достигается за счет подачи команды устройству определить состояние регистра статуса очереди (QSR) в устройстве, определения предстоящего конца текущей передачи данных от устройства и приема ответа от устройства с информацией о QSR устройства перед предстоящим концом. 3 н. и 20 з.п. ф-лы, 1 табл., 5 ил.

Изобретение относится к компьютерной технике, в частности к обеспечению очереди команд для встроенной памяти. Технический результат заключается в повышении эффективности определения очередности команд в регистре встроенной памяти. Технический результат достигается за счет подачи команды устройству определить состояние регистра статуса очереди (QSR) в устройстве, определения предстоящего конца текущей передачи данных от устройства и приема ответа от устройства с информацией о QSR устройства перед предстоящим концом. 3 н. и 20 з.п. ф-лы, 1 табл., 5 ил.

Изобретение относится к средствам автоматического обмена сигналами. Технический результат заключается в расширении арсенала технических средств за счет реализации средств автоматического обмена сигналами. Результат достигается при реализации способа автоматического обмена сигналами между несколькими встроенными процессорными платами. Способ предусматривает этапы: разделение процессорных плат в распределенной системе, где плата ЦП с функцией сигнала управления используется в качестве ведущей платы, а остальные процессорные платы используются в качестве ведомых плат; и при инициализации каждая ведомая плата посылает сигнал регистрации информации на ведущую плату; которая представлена соединяющей линией между именами сигналов, расчет и назначение адреса шины передачи данных, к которым привязываются выходной и входной сигналы, и отправка записанных адресов, типов данных и адресов шины сигналов на каждую ведомую плату; сохраняют те же данные как таблицы выходных и входных сигналов, записывание значения выходного сигнала в соответствующей выделенной адресной шине в соответствии с таблицами выходных сигналов и считывание получателем значения входного сигнала из соответствующей адресной шины в соответствии с таблицами входных сигналов. 2 н. и 10 з.п. ф-лы, 6 ил.

Изобретение относится к области вычислительной техники и предназначено для построения систем цифровой обработки сигналов в реальном масштабе времени. Технический результат заключается в обеспечении использования формата пакетов стандарта PCI-Express для передачи как по последовательным, так и по параллельным шинам. Способ передачи информации характеризуется тем, что информацию в формате PCI-Express пакетов передают как по последовательным высокоскоростным каналам связи, так и по параллельной шине и, в зависимости от адреса в пакете, осуществляют перенаправление данных либо внутрь контроллера I-Bus, либо на внешнюю шину PCI-Express и далее через коммутатор РCI-Express и на другие контроллеры I-Bus. При этом коммутатор PCI-Express выполнен с возможностью передавать пакет одновременно нескольким контроллерам I-Bus, а контроллер I-Bus выполнен с возможностью работы в режиме удвоенной скорости обработки потока. Предварительно проводят определение количества необходимых оконечных станций и коммутаторов с определением необходимой топологии каналов связи между ними, настраивают используемые коммутаторы и оконечные устройства для приема/передачи информации, передаваемую информацию разбивают на пакеты для передачи по стандарту PCI-Express размером полезных данных не свыше 4 килобайт. 2 ил.

Изобретение относится к области микроконтроллеров. Техническим результатом является пробуждение главного блока микроконтроллера (MCU). Раскрыта схема для пробуждения главного блока микроконтроллера (MCU), содержащая главный MCU, микросхему периферийного интерфейса и микросхему периферийной обработки, в которой микросхема периферийной обработки соединена с главным MCU посредством микросхемы периферийного интерфейса; линия синхронизации главного MCU соединена с сигналом ведущего генератора синхроимпульсов, а каждая из линии синхронизации микросхемы периферийной обработки и линии синхронизации микросхемы периферийного интерфейса соединена с сигналом ведомого генератора синхроимпульсов, причем сигнал ведущего генератора синхроимпульсов и сигнал ведомого генератора синхроимпульсов являются различными сигналами синхроимпульсов, таким образом, что микросхема периферийного интерфейса и микросхема периферийной обработки остаются в нормальном рабочем состоянии, когда главный MCU переходит в состояние глубокого сна; и микросхема периферийного интерфейса выполнена с возможностью контроля объема данных, передаваемых микросхемой периферийной обработки в микросхему периферийного интерфейса, и передачи сигнала пробуждения в главный MCU, если объем данных превышает порог. 4 н. и 9 з.п. ф-лы, 6 ил.

Группа изобретений относится к вычислительной технике и может быть использована для обучения чтению контроллера памяти. Техническим результатом является повышение эффективности обучения чтению. Устройство содержит устройство сопряжения шины, по меньшей мере, с одним модулем памяти; логическую схему контроллера памяти, которая при работе выполнена с возможностью осуществления операций, причем операции включают в себя программирование модуля памяти для запуска режима обучения, в котором модуль памяти передает непрерывные битовые шаблоны по тракту боковой полосы устройства сопряжения шины; прием битовых шаблонов по устройству сопряжения шины; определение из принятых битовых шаблонов перехода значений в битовом шаблоне для определения окна данных между определенными переходами значений; и определение настройки для управления устройством фазовой интерполяции для выработки прошедших интерполяцию сигналов, используемых для выборки данных в пределах определенного окна данных. 3 н. и 17 з.п. ф-лы, 6 ил.

Изобретение относится к вычислительным сетям передачи данных. Технический результат заключается в последовательной передаче данных в шинной системе. Указанный результат достигается за счет применения способа взаимодействия абонентов шины, обменивающихся по шине сообщениями. При этом этапы способа предусматривают выполнение: доступа к шине для передачи любого сообщения по методу арбитража, соответствующему стандарту ISO 11898-1 на протокол сети контроллеров ; сообщения имеют логическую структуру стандарта CAN; при наличии условия заполнения в сообщение между передаваемыми битами данных вставляют дополняющие биты; в начале сообщения дополнительно к вычислению содержимого поля CRC запускают вычисление одной другой последовательности CRC посредством порождающего полинома, отличающегося от стандарта на протокол CAN; в зависимости от соответствующей метки решают, результат которого из параллельно запущенных вычислений содержимого поля CRC будет использоваться для проверки правильности передачи данных; для значений указанной метки проверяют дополнительное условие, при наличии которого передатчиком в отдельные части сообщения вставляются последовательности фиксированных дополняющих битов. 5 н. и 24 з.п. ф-лы, 11 ил.

Наверх