Способ обеспечения различной длины пакетов в протоколе передачи данных

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

 

Уровень техники, предшествующий изобретению

Компьютерные системы состоят из различных деталей и компонентов, которые обычно сопряжены через шину или межкомпонентное соединение. Ранее, устройства ввода-вывода сопрягались по стандартной многоточечной архитектуре с параллельной шиной, т.н. межкомпонентному соединению периферийных компонентов (шине PCI). Недавно появились шины ввода-вывода нового поколения, т.н. шины PCI-Express (PCIe), обеспечивающие более быстрое межкомпонентное соединение устройств, использующие последовательный протокол физического уровня передачи данных.

Архитектура шины PCIe включает в себя многоуровневый протокол для передачи данных между устройствами. Например, стек протоколов PCIe образован из физического уровня, уровня канала связи и уровня транзакций. Канал связи PCIe построен вокруг выделенных односторонних пар последовательных двухточечных соединений, называемых дорожками. Канал связи между устройствами включает в себя несколько дорожек, например одну, две, шестнадцать, тридцать две и т.д. Текущая спецификация PCIe, PCI Express™ Базовая спецификация версии 2.0 (опубликованная 17 января 2007 года) доступна на http://www.pcisig.com/specifications/pciexpress/.

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

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

На фиг.1 показана блок-схема системы по одному из вариантов осуществления настоящего изобретения.

На фиг.2А показан пример передачи пакетов данных по одному из вариантов осуществления настоящего изобретения.

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

На фиг.3 показана блок-схема способа по одному из вариантов осуществления настоящего изобретения.

Подробное описание изобретения

На фиг.1 показана блок-схема системы по одному из вариантов осуществления настоящего изобретения, включая устройства, сопряженные с контроллером-концентратором через последовательный канал связи. Система 100 включает в себя процессор 105 и системную память 110, сопряженную с контроллером-концентратором 115. Процессор 105 включает в себя любое процессорное устройство, такое как микропроцессор, главный процессор, встроенный процессор, сопроцессор или иной процессор. Процессор 105 сопряжен с контроллером-концентратором 115 по внешней шине 106. В одном из вариантов осуществления внешняя шина 106 является последовательным двухточечным межкомпонентным соединением, описанным ниже.

Системная память 110 включает в себя любое запоминающее устройство, такое как оперативное запоминающее устройство (ОЗУ), энергонезависимую память или другой тип памяти, доступный для устройств, находящихся в системе 100. Системная память 110 сопряжена с контроллером-концентратором 115 через интерфейс 116 памяти.

В одном из вариантов осуществления контроллер-концентратор 115 является корневым хабом или корневым контроллером в иерархии межкомпонентных соединений PCIe. Примерами контроллера-концентратора 115 являются чипсет, контроллер-концентратор памяти (МСН), северный мост, контроллер-концентратор ввода/вывода (ICH), южный мост и корневой контроллер/хаб. В данном случае контроллер-концентратор 115 сопряжен с коммутатором/мостом 120 через последовательный канал 119 связи. Модули 117 и 121 ввода/вывода, которые также называются интерфейсами/портами 117 и 121, включают в себя/реализуют многоуровневый набор протоколов для обеспечения передачи данных между контроллером-концентратором 115 и коммутатором 120. В одном из вариантов осуществления к коммутатору 120 могут подключаться различные устройства. Также имеют право на существование варианты осуществления, в которых процессор и чипсет интегрированы в одном устройстве. Кроме этого, подобная технология не требует нового пересмотра протокола PCIe и может быть реализована, в том числе, с использованием устройств, совместимых с PCIe 2.0, 1.1. Таким образом, варианты осуществления могут использоваться везде, где для передачи данных используется межкомпонентное соединение PCIe.

Коммутатор 120 маршрутизирует пакеты/сообщения из устройства 125 вперед, т.е. вверх по иерархии в направлении контроллера-концентратора 115 и назад, т.е. вниз по иерархии, от контроллера-концентратора 115 к устройству 125. Модули ввода/вывода 122 и 126 реализуют многоуровневый стек протоколов для передачи данных между коммутатором 120 и устройством 125. Устройство 125 включает в себя любые внутренние и внешние устройства или компоненты, сопрягаемые с электронной системой, такие как устройство ввода/вывода, контроллер сетевого интерфейса (NIC), карта расширения, звуковой процессор, сетевой процессор, жесткий диск, устройство памяти, монитор, принтер, мышь, клавиатуру, маршрутизатор, съемное устройство памяти, устройство последовательной шины сверхбыстрой передачи данных, устройство универсальной последовательной шины (USB), сканер, а также другие устройства ввода/вывода.

Графический ускоритель 130 также сопряжен с контроллером-концентратором 115 через последовательный канал 132 связи. В одном из вариантов осуществления графический ускоритель 130 сопряжен с контроллером-концентратором памяти, который сопряжен с контроллером-концентратором ввода/вывода. Коммутатор 120, а соответственно и устройство 125 ввода/вывода также сопряжены с контроллером-концентратором ввода/вывода. Модули ввода/вывода 131 и 118 также должны реализовывать многоуровневый стек протоколов для передачи данных между графическим ускорителем 130 и контроллером-концентратором 115.

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

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

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

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

Согласно протоколу PCIe для передающего устройства, собирающегося инициировать транзакцию с данными, действуют следующие правила: (1) передающее устройство должно подавать запросы, длина данных которых равна или меньше, чем у сконфигурированных полезных данных максимального размера; (2) передающее устройство должно гарантировать, что длина запроса будет меньше или равна количеству кредитов доверия, имеющихся у принимающего устройства, для обработки запроса; (3) передающее устройство должно гарантировать, что после того как начнется передача пакета, оно сможет обеспечить передачу/поток данных в соответствии с информацией, указанной в поле длины запроса, другими словами, передающее устройство не может остановить передачу пакета, поэтому передающее устройство должно буферизовать данные или гарантировать, что оно сможет обеспечить передачу потока данных с пакетной скоростью; и (4) передача любых пакетов с высоким приоритетом должна осуществляться после завершения передачи текущего пакета. Однако в некоторых случаях передача пакета может быть завершена с символом «аварийное завершение», в этом случае все пересланные данные принимающим устройством удаляются.

Для обеспечения большей гибкости данного протокола в вариантах осуществления может устанавливаться допустимая граница разъединения пакета. Таким образом, передающему устройству разрешается аннулировать запрос у допустимой границы разъединения пакета. Хотя объем настоящего изобретения этим не ограничивается, допустимая граница разъединения пакета может быть установлена в 64 байта (В) или кратно 64 В либо иному объему. Некоторые варианты осуществления также могут включать в себя управлением потоком данных и расширение протокола по длине с целью обеспечения подобных изменений переменной длины. Передающее устройство может завершить передачу пакета в соответствии с правилами завершения передачи пакетов по шине PCIe, поставив контрольную сумму и символ нормального завершения пакета для прекращения передачи пакета.

В некоторых вариантах осуществления правила по длине могут быть расширены таким образом, чтобы в поле длины указывался размер полезных данных, которые передающее устройство собирается передавать, однако передача пакета может быть завершена по достижении допустимой границы разъединения пакета. Например, передающее устройство может инициировать передачу пакета с длиной, указывающей размер передачи в 256 В, но завершить передачу пакета после первых 128 В полезных данных. Если передача прошла успешно, т.е. при передаче не возникло никаких ошибок, то принанимающее устройство потребляет первые 128 В пакета, которые были успешно переданы, вместо удаления данных в соответствии с процессом «аварийного завершения». Передающее устройство может переслать оставшиеся полезные данные как новую отдельную транзакцию; принимающее устройство не обязано хранить историю ранее принятых транзакций. Передающее устройство может инициировать новую транзакцию для завершения передачи первоначально планировавшихся полезных данных с длиной, равной 128 В, и отправить оставшиеся полезные данные, либо передающее устройство может начать новый пакет другой длины, начиная с ранее разъединенной границы пакета или начать новый пакет с высоким приоритетом.

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

Таким образом, варианты осуществления обеспечивают расширение протокола, разрешая передающему устройству указывать длину полезных данных, которая может превышать фактический объем информации, передаваемой в полезных данных. Объем информации, передаваемой в полезных данных, не должен превышать количество кредитов доверия, предоставленных принимающим устройством. Передача пакета может быть завершена/приостановлена у указанной границы разъединения. При подобной схеме разрешается завершать передачу больших пакетов с данными, например по 4 килобайта (KB) (длина = 4KB), у границы разъединения для разделения пакетов с высоким приоритетом.

Варианты осуществления могут дополнительно расширять данный протокол для: (1) оптимизации принимающих буферов при потоковой передаче данных из памяти; (2) более эффективного использования канала передачи за счет использования кредитов доверия; и (3) оптимизации механизмов хранения и передачи передающего устройства, обеспечивая, таким образом, потоковую передачу данных через межкомпонентное соединение PCIe. Соответственно, передающее устройство может инициировать передачу большого пакета, как только оно накопит объем данных, соответствующий границе разъединения, или если оно сможет гарантировать передачу потока данных без остановок, по меньшей мере, до границы разъединения и если у него будет достаточное количество кредитов доверия от принимающего устройства. По достижении границы разъединения передающее устройство может продолжить передачу полезных данных, если объема данных, имеющихся у него в памяти, достаточно для передачи до следующей границы разъединения или если оно может гарантировать, что поток данных будет передаваться без остановок до следующей границы разъединения и ему было выделено достаточное количество заголовочных кредитов доверия. Если объема данных в памяти не хватает до границы разъединения, либо передачу потока данных до границы разъединения гарантировать невозможно, либо количество кредитов доверия недостаточно, то передающее устройство завершает передачу пакета.

Таким образом, варианты осуществления позволяют при реализации оптимизировать буферную память принимающего устройства, улучшить использование канала передачи данных и оптимизировать буферную память передающего устройства. Обычные механизмы PCIe, наоборот, не столь гибкие и требуют, чтобы запрашивающее устройство не начинало передачу запросов до тех пор, пока не будет получено достаточное количество кредитов доверия на весь объем полезных данных, и не допускают оптимизацию «на лету». Варианты осуществления настоящего изобретения позволяют осуществлять потоковую передачу данных из контроллера памяти через межкомпонентное соединение PCIe. Завершения (например, считывания памяти устройством ввода/вывода) могут свидетельствовать о завершении подготовки полезных данных в объеме, равном максимальному объему полезных данных, и оптимизировать завершение полезных данных. Это позволяет осуществлять завершение, по меньшей мере, на уровне 64 В и выше, вплоть до максимального размера полезных данных, улучшая, таким образом, использование канала передачи при завершении считываний.

На фиг.2А показан пример передачи пакетов 200 с данными по одному из вариантов осуществления настоящего изобретения. Как показано на фиг.2, передающее устройство может переслать пакет 205, длина полезных данных в котором первоначально предполагалась в 256 байт, как это указано в заголовке пакета 205, с досрочным завершением. Точнее, передача пакета 205 завершается после достижения первой допустимой границы разъединения в 64 байт. Таким образом, как показано на фиг.2А, пакет 205 включает в себя начальный сегмент, сегмент с заголовком длины, сегмент с полезными данными (соответствующий по длине допустимой границе разъединения), за которыми следует сквозная контрольная сумма CRC (ECRC), затем, в свою очередь, последовательность завершения, которая включает в себя сегмент контрольной суммы канала связи и сегмент завершения. Следует отметить, что могут использоваться два протокола CRC, CRC канала связи, который используется для всех пакетов, и дополнительный ECRC, который используется для защиты сквозной передачи пакетов. Отличия заключаются в следующем: протокол CRC канала связи используется каналом связи для защиты пакета при передаче от передающего на принимающее устройство по каналу связи, а дополнительный ECRC (если поддерживается) используется для защиты пакета на уровне транзакций и проверяется лишь в пункте конечного назначения, который может находиться за несколькими транзитными участками. Проверка также осуществляется на уровне транзакций в пункте конечного назначения. После завершения передачи данного пакета 205 передается другой пакет 210, который включает в себя оставшиеся части данных завершенного пакета 205. Точнее, пакет 210 маркируется как пакет с полезными данными длиной 192 байта (что соответствует длине остатка завершенного пакета 205). Таким образом, как показано на фиг.2А, пакет 210 передает 192 В полезных данных, за которыми идет сегмент ECRC и завершающий сегмент.

За счет использования передающего устройства, способного завершать передачу пакета, варианты осуществления могут позволить разделять пакеты с высоким приоритетом после завершения пакета, после чего может досылаться остаток разъединенного пакета. Как показано на фиг.2В, поток 250 данных состоит из трех пакетов, а именно завершенного пакета 255, пакета 260 с высоким приоритетом и пакета 265 с остатком. После завершения передачи завершенного пакета 255 пакет 260 с высоким приоритетом в варианте осуществления, показанном на фиг.2В, включает в себя только начальный сегмент, сегмент заголовка, ECRC и завершающий сегмент (т.е. пакет с высоким приоритетом, без данных). После передачи подобного пакета с высоким приоритетом передающее устройство может отправить пакет 265 с остатком, являющийся остатком разъединенного пакета. Таким образом, как показано на фиг.2В, в остатке 265 передаются оставшиеся 192В полезных данных. Несмотря на то что варианты осуществления показаны на конкретных примерах, приведенных на фигурах 2А и 2В, объем настоящего изобретения этим не ограничивается.

На фиг.3 показана блок-схема способа по одному из вариантов осуществления настоящего изобретения. Как показано на фиг.3, способ 300 может использоваться для передачи пакета с передающего на принимающее устройство. В частности, как показано на фиг.3, способ 300 может начинаться с передачи первого пакета с передающего на принимающее устройство (ячейка 310). Подобный пакет, в одном из вариантов осуществления, может включать в себя заголовок, в котором указывается длина пакета, который может состоять из нескольких сегментов с данными, каждый из которых соответствует по длине допустимой границе разъединения. Например, длина в заголовке может быть указана для полезных данных относительно большой длины, например 4 KB, тогда как допустимая граница разъединения в протоколе связи межкомпонентного соединения, связывающего передающее и принимающее устройства, может быть установлена в 64 байта.

Во время передачи первого пакета передающее устройство, а именно уровень транзакций передающего устройства или внутренняя конструкция устройства могут завершить передачу, например, для разделения пакета с высоким приоритетом. Таким образом, как показано на фиг.3, в ячейке 320, передача первого пакета может быть завершена у допустимой границы разъединения. При завершении передачи первого пакета передающее устройство может отправить сегмент кода с ошибкой, например ECRC, а также сигнал о завершении, сообщающий о завершении передачи первого пакета. После этого передающее устройство может переслать второй пакет (ячейка 330) с передающего на принимающее устройство. В одном из вариантов осуществления второй пакет может быть пакетом с высоким приоритетом, который может включать или не включать в себя полезные данные.

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

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

Варианты осуществления могут быть реализованы в кодированном виде и находиться на устройстве хранения вместе с командами, которые могут использоваться для программирования системы по выполнению данных команд. Устройства хранения могут включать в себя, но не ограничиваться, любые виды дисковых носителей, включая дискеты, оптические диски, компакт диски с однократной записью (CD-ROM), компакт диски с многократной записью (CD-RW), магнитооптические диски, полупроводниковые устройства, такие как постоянные запоминающие устройства (ROM), оперативные запоминающие устройства (RAM), такие как динамические оперативные запоминающие устройства (DRAM), статические оперативные запоминающие устройства с произвольной выборкой (SRAM), стираемые программируемые постоянные запоминающие устройства (EPROM), флеш-память, электрически стираемые программируемые постоянные запоминающие устройства (EEPROM), магнитные или оптически карты или любые другие виды носителей, пригодные для хранения электронных команд.

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

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

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

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

4. Способ по п.3, дополнительно содержащий уничтожение принимающим устройством первого сегмента пакета, при этом принимающее устройство не ведет историю по первому пакету.

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

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

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

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

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

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

11. Устройство по п.9, отличающееся тем, что второй компонент уничтожает первую часть пакета, а также тем, что принимающее устройство не ведет историю по первому пакету.

12. Устройство по п.9, отличающееся тем, что первый компонент передает сегмент с кодом ошибки и символ завершения пакета после границы разъединения пакета и перед передачей второго пакета.

13. Устройство по п.8, отличающееся тем, что первый компонент передает первый пакет, после того как у первого компонента будет достаточно кредитов доверия для достижения границы разъединения пакета, первый сегмент полезных данных содержит потоковую передачу данных.

14. Устройство по п.8, отличающееся тем, что граница разъединения пакета соответствует изменяемой конфигурации допустимой границы разъединения протокола передачи данных двухточечного межкомпонентного соединения.



 

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

Изобретение относится к системам и методикам обработки данных. .

Изобретение относится к системам и способам обработки данных для передачи информации по шине в системе обработки данных. .

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

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

Изобретение относится к устройствам ввода-вывода для процессоров и микроконтроллеров и более точно касается контроллеров последовательных интерфейсов SPI, Microwire, I2S, SPORT.

Изобретение относится к загрузке медиафайлов по сетевым соединениям. .

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

Изобретение относится к области накопления и защиты информации от несанкционированного доступа. .

Изобретение относится к архитектуре и протоколу шины. .

Изобретение относится к пассивной оптической связи. .

Изобретение относится к системам приема, выполненным с возможностью поиска оптимальных коэффициентов передачи цепи обратной связи, и предназначено для синхронизации принятых сигналов. Технический результат - повышение точности синхронизации. Схема синхронизации содержит первую схему ФАПЧ, вторую схему ФАПЧ, первую выходную схему, вторую выходную схему, первую схему детектирования, вторую схему детектирования, схему регулирования и участок хранения. 6 н. и 5 з.п. ф-лы, 10 ил.

,Изобретение относится к области контроля активации подчиненных блоков сетей LIN. Техническим результатом является предотвращение активации подчиненных блоков сети типа LIN, если источником запроса на активацию являются помехи. Устройство (D) предназначено для контроля активации подчиненных блоков (ОЕ1-ОЕ5) мультиплексной сети связи типа LIN (R), управляемой задающим блоком (ОМ). Устройство (D) выполнено таким образом, чтобы, когда задающий блок (ОМ) обнаружил активность в сети (R) во время фазы ожидания, i) предписывать задающему блоку (ОМ) передавать по меньшей мере на некоторые подчиненные блоки (ОЕ1-ОЕ5) и предпочтительно на все блоки, которые могут быть источником запроса на активацию, сообщения запроса, на которые они должны соответственно ответить при помощи сообщения ответа, содержащего поле состояния, значение которого характеризует локальный или не локальный источник обнаруженной активности, затем ii) анализировать значение поля состояния каждого из сообщений ответа, принятых задающим блоком (ОМ), чтобы определить, является ли, по меньшей мере, один подчиненный блок источником активности и, в случае подтверждения, оправдана ли эта активность относительно соответствующего значения поля состояния, и iii) разрешать задающему блоку (ОМ) подтверждать активацию подчиненных блоков, только если активность оправдана. 3 н. и 10 з.п. ф-лы, 2 ил.

Изобретения относятся к операциям ввода-вывода данных. Техническим результатом является упрощение обработки за счет поддержки двунаправленных операций. Устройство содержит канальную подсистему, хост-систему, устройство управления, при этом канальная подсистема сконфигурирована для передачи канальной подсистемой устройству управления запроса регистрации процесса (РП), указывающего, поддерживает ли канальная подсистема двунаправленную передачу данных; прием от устройства управления ответа на запрос РП, указывающего, поддерживает ли устройство управления двунаправленную передачу данных; сбор множества команд, по меньшей мере, в одной из которых указана передача входных данных, и, по меньшей мере, в одной из которых указана передача выходных данных; передачу в устройство управления, по меньшей мере, одного выходного информационного сообщения, содержащего выходные данные, подлежащие передаче устройству управления, при этом выходное информационное сообщение связано с, по меньшей мере, одной из множества команд, в которой указана передача выходных данных; и прием от устройства управления, по меньшей мере, одного входного сообщения, содержащего входные данные, подлежащие сохранению в основном запоминающем устройстве компьютерной хост-системы. 3 н. и 22 з.п. ф-лы, 21 ил.

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

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

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

Изобретение относится к области передачи данных через системы шин в соответствии со стандартом RS-485 и, в частности, к обнаружению конфликта сообщений в таких системах. Технический результат заключается в более простом обнаружении конфликта сообщений, т.е. наложения сигналов сообщений, передаваемых от передатчиков, подключенных к одной линии передачи и находящихся на удалении один от другого, с достаточно высокой надежностью. Изобретение характеризуется интеллектуальной аппаратной поддержкой, которая допускает обычную функцию обнаружения программного конфликта для обнаружения конфликтов независимо от расположения источников сообщений на линии передачи данных. Аппаратная поддержка допускает режим «возбуждения сильного сигнала» и режим «возбуждения слабого сигнала». В «слабом» режиме между передатчиком или источником напряжения и линией передачи данных временно включается резистор для смещения, или затухания сигнала, или для деления напряжения. 3 н. и 3 з.п. ф-лы, 7 ил.

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

Группа изобретений относится к области передачи данных и может быть использована для последовательной передачи данных в шинной системе, включающей в себя, по меньшей мере, два устройства обработки данных, являющихся абонентами шины и обменивающихся по шине сообщениями, причем посылаемые сообщения имеют логическую структуру, соответствующую стандарту ISO 11898-1 на протокол CAN. Техническим результатом является увеличение объема и скорости передаваемых данных. При наличии первого условия переключения поле данных в сообщениях может содержать, в отличие от стандарта ISO 11898-1 на протокол CAN, более восьми байт, причем для установления размера поля данных при наличии первого условия переключения значения кода длины данных интерпретируют по меньшей мере частично, иначе по сравнению со стандартом. Для передачи данных между полем данных и прикладным программным обеспечением предусмотрено, по меньшей мере, одно буферное запоминающее устройство, и передаваемый объем данных по меньшей мере в случае, если размер поля данных отличается от размера используемого буферного запоминающего устройства, адаптируют соответственно разнице в размерах между полем данных и используемым буферным запоминающим устройством. 4 н. и 24 з.п. ф-лы, 9 ил.
Наверх