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

Изобретение относится к области полупроводниковой технологии. Технический результат состоит в эффективности уменьшения размеров и повышении быстродействия работы электронных схем. Для этого система межсоединений ячеек содержит ячеистую систему n×m, включающую в себя множество узлов, причем множество узлов расположено в первом измерении и во втором измерении; и множество межсоединений, каждое из которых связывает пару из множества узлов, при этом ячеистая система выполнена с возможностью находиться в первом независящем от трафика состояния соединения в течение первого цикла периода графика трафика, а во втором независящем от трафика состоянии соединения в течение второго цикла периода графика трафика. 2 н. и 13 з.п. ф-лы, 6 ил.

 

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

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

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

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

Фиг.1 является блок-схемой системы межсоединений ячейки в соответствии с одним вариантом осуществления настоящего изобретения.

Фиг.2 является блок-схемой системы межсоединений, находящейся в состоянии прямого обмена в соответствии с вариантом осуществления настоящего изобретения.

Фиг.3 является блок-схемой системы межсоединений ячейки, находящейся в состоянии обходного обмена в соответствии с вариантом осуществления настоящего изобретения.

Фиг.4 является блок-схемой системы межсоединений в соответствии с другим вариантом осуществления настоящего изобретения.

Фиг.5 является блок-схемой нода в соответствии с вариантом осуществления настоящего изобретения.

Фиг.6 представляет собой блок-схему алгоритма способа коммуникации пакетов согласно статическому глобальному графику цикличности согласно варианту осуществления настоящего изобретения.

Подробное описание

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

Межсоединительная сеть в соответствии с вариантом осуществления настоящего изобретения может быть выполнена с возможностью быть реализованной в двух или более высоких измерениях. В целом, сеть включает в себя (i) безбуферную транспортную среду; (ii) входную точку доступа (для диспетчеризации пакетов в транспортной среде); (iii) выходную точку приема (извлечение пакетов из транспортной среды). Во многих вариантах осуществления безбуферная транспортная среда может включать в себя набор синхронно тактируемых нодов, расположенных по n×m ячейки. Каждый такой нод может включать в себя сетевые соответствующие аппаратные средства и, в свою очередь, быть связаны с соответствующим агентом, таким как ядро, кэш, акселератор и т.д.

На фиг.1 показана блок-схема ячеистой системы согласно одному варианту осуществления настоящего изобретения. Как показано на фиг.1, система 100 может быть реализована как двумерная (2D) компоновочная взаимосвязанная ячейка, включающая в себя множество нодов 1101,1-110n,m. В различных вариантах осуществления система 100 может быть системой на кристалле (SoC) или другой подобной однокристальной схемой полупроводникового устройства, которая образована на одном полупроводниковом кристалле, в другом варианте осуществления, система может быть образована на многоярусном кристалле, таким образом, предоставляя возможность ячейки иметь более чем два измерения. В других вариантах реализации агент может быть гетерогенный или гомогенный, как ядра процессора, кэш-блоки, устройства управления памятью, специализированные блоки обработки данных, такие как графические процессоры, процессоры пакетов и т.п. Обычно, нод может быть ассоциирован с агентом (например, с ядром, другим блоком обработки данных или блоком управления) и может включать в себя соединительную соответствующую схему (I/O) ввода/вывода, как описано ниже.

Как показано на фиг.1, каждый нод 110 может быть соединен с множеством других нодов 2D конфигурации посредством множества межсоединений 115, которые могут быть разнонаправленными соединениями. Дополнительно, граничные ноды (те, которые находятся на периферии системы) могут включать в себя межсоединения 120 обратной связи, которые соединяют выходные порты соответствующих нодов с входными портами того же или другого граничного пода. Высокоуровневый вид фиг. показывает только I/O схему (например, структуры маршрутизации). На фиг.1 не показаны фактические функциональные блоки агентов. Обычно, каждый нод может включать в себя множество входных и выходных портов. В общем, данные входные и выходные порты могут включать в себя логические и другие схемы для осуществления выборки и передачи принятой информации (такой как пакеты) через межсоединения ячейки. Необходимо отметить, что показанный на фиг.1 вариант реализации является репрезентативным и не полностью отражает все коммутации или конфигурации в ноде. Как это далее будет описано, каждый нод может быть выполнен согласно многочисленным шаблонам маршрутизации маршрутных данных в различные ноды, к которым данный нод может быть подключен.

Как показано на фиг.1, каждый нод 110 имеет четыре двухсторонние линии связи к его соседним нодам (со специфическими алгоритмами обратной связи на граничных нодах). Количество линий связи может увеличиваться с увеличением количества измерений. В каждом временном цикле, по меньшей мере, один пакет может быть принят каждым из множества входных портов каждого нода. Входящие пакеты могут быть локально использованы или пропущены к одному из множества выходных портов каждого нода, где они передаются в смежные ноды в следующем цикле. Таким способом транспортная среда является безбуферной. Следует отметить, что подробные данные I/O схемы не показаны на фиг.1. Между тем, показано только множество регистров 105a-d результата, каждый из которых ассоциирован с данным выходным портом, и, таким образом, является компонентом, из которого выбранный пакет направляется из нода. Поскольку выходной порт может также принимать пакеты из локального агента, соединенного с нодом помимо соответствующего множества входных портов, мультиплексор (не показан на фиг.1) может быть размещен впереди каждого регистра 105 результата.

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

Далее, на фиг.2 показано блок-схема системы 100' межсоединений ячейки, находящейся в состоянии прямого обмена со всеми нодами. В данном состоянии прямого обмена каждый нод может быть выполнен с возможностью (например, управлением мультиплексором или другой логической переключательной схемой) непосредственно пропускать данные, полученные из первого соседнего нода во второй соседний нод. В варианте реализации, показанном на фиг.2, данные ноды могут быть горизонтальными или вертикальными соседними нодами. Как здесь использовано, соседний нод является непосредственно смежный к ноду в данном измерении. Как отмечено в показанном на фиг.2 варианте реализации, граничные ноды соединяются межсоединениями 120 для обеспечения прямой обратной связи, осуществляемой в режиме прямого обмена передаваемых данных, выходные данные граничного нода также принимаются тем же граничным нодом. В иллюстрированном на фиг.2 случае, другие межсоединения, как внутренняя рассылка между нодами, не показаны с целью не загромождения состояния, показанного на фиг.2.

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

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

Далее, на фиг.3 показана блок-схема системы межсоединений ячейки, находящейся в состоянии обходного обмена. Как показано на фиг.3, система 100' выполнена таким образом, чтобы каждый входящий пакет направляется в направлении, отличном от направления прямого обмена. В данном состоянии каждый нод маршрутизирует входящий пакет влево. Это приводит к тому, что входящие пакеты на каждом ноде взаимозаменяемые между горизонтальными и вертикальными кольцами (как было установлено в режиме прямого обмена). Как проиллюстрировано на фиг.3, данное состояние обходного обмена имеет направление обмена, направленное влево, так что пакеты сообщаются со следующим соседним нодом. Необходимо вновь отметить, что на фиг.3 показаны граничные ноды, которые могут осуществлять межсоединение 120 обратной связи и принимать выходной пакет напрямую из выходного порта нода через входной порт нода. Несмотря на то, что на фиг.3 проиллюстрировано состояние обходного обмена с левосторонним направлением обмена, объем настоящего изобретения не ограничивается в этом отношении и в других вариантах реализации данное состояние обходного обмена может иметь правостороннее направление обмена.

В одном варианте осуществления, состояния выбираются согласно графику цикличности, который может быть совершенно независимым от фактического графика в среде. График должен гарантировать наличие на каждом посылающем ноде временного слота для вставки, так что в итоге вставленный пакет прибывает по назначению. Одна такая схема устраняет данное ограничение, являясь графиком цикличности S тактовых сигналов, где, S-max (n,m), содержащий S-1 временные циклы со всеми нодами в состоянии прямого обмена (фиг.2) и 1 цикл со всеми нодами в состоянии обходного обмена (например, левостороннего, фиг.3). Более обобщенно, график цикличности может являться графиком S тактовых сигналов, где S-max (n,m) и S-x графиками цикличности в состоянии прямого обмена (фиг.2) и x циклы в состоянии обходного обмена (например, левостороннего, фиг.3). Такой график цикличности может доказуемо устанавливать, по меньшей мере, один «Manhattan route» из каждого посылающего нода в каждый другой нод. Как здесь используется, термин «Manhattan route» применяется для определения маршрута с минимальным расстоянием перемещения между агентами, без каких-либо препятствий, обходных маршрутов, возвратные перемещения или т.п. Обычно, могут существовать дополнительные приемлемые маршруты при движении по «Manhattan route». Другие графики также возможны, как например, S=2*max(n,m) опять со всеми нодами в конфигурации прямого обмена для S-1 циклов и один цикл с конфигурацией обходного обмена или т.д. Ввиду того, что только одна последовательность может быть применима ко всем нодам, множество наборов последовательностей, применяемых к соответствующим суб-наборам нодов, может быть рассмотрено для улучшения определенных характеристик среды. В качестве примера, ноды могут иметь индивидуальные последовательности состояний соединения, направленные во множество различных состояний соединений, видимых на сетевом уровне для данного цикла. Дополнительно могут быть рассмотрены дополнительные типы состояний соединений, как, например, правосторонний обходной обмен или комбинация конфигураций обходного обмена и прямого обмена в пределах одного нода. Обычно дополнительные состояния могут увеличить количество входов к мультиплексору выходных портов.

Следует понимать, что существуют различные топологические вариации, такие как иные схемы межсоединения обратной связи на границах нода или уменьшения ячейки к однонаправленному транспортному механизму. Далее, на фиг.4 показана блок-схема системы межсоединений в соответствии с другим вариантом осуществления настоящего изобретения. Как проиллюстрировано на фиг.4, система 200 включает в себя множество нодов 2101,1-210n,m. Необходимо отметить, что в данном варианте реализации только однонаправленные межсоединения 115 соединяют соседние ноды друг с другом. Дополнительно отмечается, что вместо каналов обратной связи для граничных нодов, межсоединения 120 осуществляют подключение соседних нодов типичного измерения. В других аспектах, система 200 может быть выполнена аналогично той, которая была описана выше со ссылкой на фиг.1.

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

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

Для увеличения скорости ввода на порт, множество пакетов, предоставляемое локальными агентами, может быть обработано параллельно, в некоторых вариантах осуществления. Так как обычно существует множество комбинаций временного слота и выходных портов для пакета для ввода в сеть (или множество пакетов может войти в течение того же временного слота), различные эвристические алгоритмы могут быть применены для улучшения работы сети. В данных алгоритмах, варианты, направленные по оптимальным «Manhattan routes», могут иметь преимущество. В качестве одного примера, другие функциональные, но неэффективные маршруты (из-за длинного пути в сети) могут быть удалены (или деприоритизированы) из таблиц. В случае использования множества пакетов, сталкивающихся на одном и том же выходном порту в течение одного и того же временного слота, пакеты с меньшим количеством опций вставки, могут иметь приоритет. Дополнительно, такие эвристические правила могут быть динамически адаптированы. Требования функционирования в реальном масштабе времени в данной сети легко удовлетворить благодаря детерминированному поведению среды. С этой целью осуществляется наличие механизмов детерминистского предварительного распределения временных интервалов.

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

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

Варианты воплощения также могут быть реализованы шкалированием колец помимо двух измерений. Например, топология p n×m ячеек может быть представлена как «сложенная» вместе. В таких вариантах реализации, каждая n×m ячейка может быть размещена на одном или более различных уровнях полупроводникового кристалла. Альтернативно, может быть обеспечено многоярусное размещение кристаллов, с каждым кристаллом, включающим в себя m×n ячейку, в данных вариантах реализации. На каждом ноде может быть обеспечено состояние «переключения» для осуществления «перекачки пакета» между 3 кольцами, которые пересекаются в вертикальном измерении. Так же, как механизм переключения 2-х состояний достаточен для 2-D ячейки, так и механизм переключения 3-х состояний будет достаточен для 3-D этажерки ячеек. Конечно, дополнительные состояния и графики цикличности могут быть созданы для оптимизации различных параметров сети.

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

На фиг.5 показан вариант реализации, где входящая информация может быть принята регистром 310 входного порта. В некоторых вариантах осуществления на основании наличия или достоверности признака (действующий, когда отсутствует пакет на выходе), управление тактовым счетчиком для входного регистра может вызвать снижение потребления энергии отключением регистра, когда не поступают допустимые данные. Приятая информация может включать в себя данные о полезной нагрузке и информацию состояния/управления. Информация состояния/управления может быть использована для индикации действительности входящих данных, так как и другой информации управления, такой как опознавания адреса назначения для соответствующего пакета, качества сервиса (QoS) связанной информации, такой как резервирование бита выдерживание свободного слота для данного соединения и т.д. Как видно, если входящие данные о полезной нагрузке представлены для одного из агентов, ассоциированного с нодом, например, как отмечено индикатором адресата, содержащимся в информации управления, данные о полезной нагрузке передаются в выходной блок очередности 320. Оттуда данные могут быть переданы в один из агентов, ассоциированного с нодом, таким как ядро, устройство управления памятью или в иные подобные блоки обработки данных.

В противном случае, как данные, так и информация управления пропускается в селектор 330 выходных данных, который в целом используется либо для выбора принятых данных через регистр 310 входного порта, либо генерированных данных в ноде, принятых из агента нода. Таким образом, как видно из фиг.5, принятые данные агентов, предполагаемые к отправке в другой нод, направляются во входной блок очередности 350. В свою очередь, входной блок очередности подключен к входному контроллеру 340. В целом, входной контроллер 340 может осуществлять выбор одного из множества пакетов данных для вставки в свободный слот, на основе информации, представленной в таблице 345 слота. Как описано ранее, таблица 345 слота может быть подключена устройством опознавания адреса назначения для соответствующего пакета и может быть использована для индикации соответствующего слота для вставки пакета. Как видно, дополнительная информация используется входным контроллером 340 для выборки данных пакета для вставки в слот опознавания, принятого из планировщика 365 статического глобального цикла, дополнительные подробности которого приводятся ниже. Соответственно, на основании управления входным контроллером 340, селектор 330 выходных данных будет вырабатывать либо данные о полезной нагрузке, принятые из регистра 310 входного порта, либо данные, принятые из входного контроллера 340 (а именно, данные, инициированные в ноде).

Как показано на фиг.5, селектор 330 выходных данных соединен с селектором 360 выходного порта, который управляется планировщиком 365 статического глобального цикла, предоставляя последовательно состояний соединения нода. В особенности, в варианте реализации, в котором имеются два состояния, а именно, состояние прямого обмена и обходного обмена, для каждого временного слота планировщик будет генерировать сигнал управления, тем самым побуждая селектор выходного порта направлять сигнал управления и данные о полезной нагрузке либо в первый, или второй выходной порт 370 и 375. В одном варианте осуществления, выходной порт 370 может вырабатывать информацию в течение обходного слота. Как показано в данном конкретном варианте реализации на фиг.5 в варианте осуществления, необходимо понимать, что объем настоящего изобретения не ограничивается в данном отношении.

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

На фиг.6 показана блок-схема алгоритма способа коммуникации пакетов согласно графику статического глобального цикла согласно варианту осуществления настоящего изобретения. Как показано на фиг.6, способ 400 может начинаться установлением факта приема входящего пакета (ромб 410). Данное распознавание может быть осуществлено, например, в регистре входного порта, который принимает данные о полезной нагрузке и различную информацию управления и из этого можно установить являются ли входящие данные о полезной нагрузке действительными. Если так, то дополнительно может быть установлен факт того, что пакет предназначен для агента, ассоциированного с текущим нодом (ромб 415). Данное распознавание, которое может быть также осуществлено в регистре входного порта, может быть основано на опознавании адреса назначения, ассоциированного с пакетом. Если так, то сигнал управления проходит в блок 420, где пакет может быть поставлен в выходную очередь. Дополнительно, информация состояния, ассоциированная с данным слотом, может быть обновлена. Например, индикатор достоверности может быть перезагружен для индикации наличия не достоверных данных в данном слоте и, соответственно, данный слот доступен для вставки данных.

Как показано на фиг.6, если вместо этого установлено, что входящий пакет не предназначен для текущего нода, сигнал управления проходит из ромба 415 в блок 430, где пакет может быть пропущен в выбранный выходной порт, в соответствии с глобальным графиком (блок 430). Данный глобальный график может предписывать пропускание пакета из нода в первом направлении или во втором направлении. Затем, на основании данного глобального графика, сигнал управления проходит в блок 435, где пакет может быть направлен для межсоединения.

Со ссылкой на фиг.6, если в ромбе 410 устанавливается, что достоверный пакет не принят (или где принятый пакет предназначен для ассоциированного агента), сигнал управления проходит в ромб 450, где может быть установлено наличие одного или более пакетов во входящей очереди. Если нет, то сигнал управления проходит в блок 470, где недействительный пакет может быть пропущен в выходной порт. Данный недействительный пакет, а именно, нулевые данные о полезной нагрузке и информация управления указывают на не достоверность пакета, таким образом, данный пакет может быть передан в другой нод, который может затем вставить пакет в его собственный в данный слот.

Если в ромбе 450 устанавливается наличие одного или более пакетов, сигнал управления проходит в ромб 460, где может быть установлено, что глобальный график слота совпадает с одним из пакетов. Если нет, то сигнал управления проходит в блок 470, как описано ранее. Если существует совпадение, сигнал управления вместо этого проходит в блок 480, где пакет может быть направлен из входной очереди в выбранный выходной порт согласно глобальному графику. Необходимо заметить, что установление пакета, к которому из множества задержанных пакетов, который необходимо передать, может быть основано на информации, полученной из таблицы, а также анализа текущего слота глобального графика. Например, табличная информация может ассоциировать устройства опознавания слота с адресатами. Различные эвристические процедуры также могут быть приняты во внимание при выборке одного пакета из множества пакетов для отправки. Данным образом, информация о приоритете может быть частью основы распознавания. Дополнительно, эвристические процедуры относительно способности множества слотов (или нет) для данного пакета быть вставленным в сеть, может быть использована как часть основы распознавания. Соответственно, как между двумя пакетами, пакет, который имеет меньшее количество слотов, в которые он может быть вставлен, может иметь приоритет в выборке перед пакетом, имеющим большее количество слотов, в которые он может быть вставлен.

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

Например, в некоторых вариантах осуществления, может существовать конвейеризация реализации, в котором распознавание пакета, предназначенного для данного нода, осуществляется в соседнем (т.е. предыдущем) ноде. Итак, данное распознавание может быть осуществлено в предыдущем ноде и может быть направлено, например, через один разрядный провод либо в упреждающий просмотр, либо как часть типовой информации управления. В любом случае, используя конвейеризацию реализации, может быть установлено досрочно, что входной контроллер может начать выборку пакета для вставки в доступный слот. Одним механизмом, который осуществляет распознавание в предыдущем ноде того, что пакет предназначен для следующего нода, может быть механизмом обратного отсчета. Например, вместо опознавания адреса назначения, который соответствует предполагаемому ноду, опознавания адреса назначения может принять форму подсчета нодов через которые пакет проходит от источника до адресата. Таким образом, в каждом ноде, через который проходит пакет, данный обратный отсчет уменьшает величину. Соответственно, когда данный пакет принимается в предыдущем ноде, величина счета может быть уменьшена, например, до нуля или единицы, указывая на то, что пакет предназначается для следующего нода. Соответственно, при упреждающем просмотре, один разрядный провод может указывать на то, что следующий принятый пакет предназначенным нодом и предназначен для данного нода. С этой целью, некоторые варианты реализации могут включать в себя отдельные магистрали для пропуска данной информации адресата как отдельной информации управления, которая может быть передано через I/O схему, таким образом, что эти решения могут быть сделаны заранее.

Варианты осуществления могут быть реализованы в коде и могут храниться на носителе информации, имеющий хранимые на нем команды, которые могут быть использованы при работе системы. Носитель информации может включать в себя, но не ограничивается этим, любой тип диска, включающий в себя, дискеты, оптические диски, твердотельные накопители (SSDs), постоянное запоминающие устройства на компакт-диске (CD-ROMs), компакт-диски многократной перезаписи (CD-RWs) и магнето-оптические диски, полупроводниковые устройства, такие как постоянное запоминающее устройство (ROMs), память с прямой выборкой (RAMs), такие как динамическая оперативная память (DRAMs), статическая оперативная память (SRAMs), стираемая программируемая постоянная память (EPROMs), флэш-память, электрически стираемая программируемая постоянная память (EEPROMs), магнитные или оптические карты или любой иной тип носителя информации, пригодный для хранения команд.

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

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

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

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

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

5. Система по п. 1, в которой период графика трафика является фиксированным цикличным графиком из S тактовых сигналов, где S - max(n, m), при этом ячеистая система выполнена с возможностью находиться в первом независящем от трафика состоянии соединения в течение S-x циклов фиксированного цикличного графика, а во втором независящем от трафика состоянии соединения в течение x циклов фиксированного цикличного графика.

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

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

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

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

10. Система по п. 8, в которой выходной порт включает в себя первый выходной порт для вывода пакета в первое межсоединение, установленное между первым узлом и первым соседним узлом, и второй выходной порт для вывода пакета во второе межсоединение, установленное между первым узлом и вторым соседним узлом.

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

12. Устройство по п. 11, в котором первый цикл соответствует состоянию сквозного соединения, при котором пакеты передаются между указанным узлом и вторым соседним узлом в первом измерении, а второй цикл соответствует состоянию обходного соединения, при котором пакеты передаются между указанным узлом и третьим соседним узлом во втором измерении.

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

14. Устройство по п. 11, характеризующееся тем, что содержит первую схему (I/O) ввода/вывода узла, при этом узел дополнительно включает в себя множество схем I/O, каждая из которых включает в себя регистр входного порта, блок выходной очереди, блок выбора выходных данных и блок выбора выходного порта.

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



 

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

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

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

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

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

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

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

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

Изобретение относится к области управления базами данных, а именно к приложениям базы данных для выполнения некоторых функций относительно базы данных. Технический результат заключается в обеспечении пользователям без копии клиентской прикладной программы базы данных получать доступ и использовать приложение базы данных посредством браузера всемирной паутины (“Web”) и локальной или глобальной сети.

Группа изобретений относится к способу переадресации пакета по Интернет-протоколу (IP-пакета) в сетевом элементе и сетевому элементу для переадресации IP-пакета через сегменты сети Ethernet.

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

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

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

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

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

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

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

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

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

Изобретение относится к области электронной коммуникации через сеть передачи данных. Технический результат заключается в снижении нагрузки как на сетевые ресурсы (которые используются для доставки нескольких копий уведомлений), так и на ресурсы каждого из самих электронных устройств, которые используются для обработки потенциально лишних копий уведомлений. Технический результат достигается за счет способа, который включает в себя: получение сервером входящего электронного сообщения, предназначенного пользователю; получение сервером журнала пользовательской активности, связанного с активностью пользователя с помощью первой копии приложения на первом электронном устройстве и второй копии приложения на втором электронном устройстве; на основе журнала пользовательской активности, определение сервером конкретного из двух электронных устройств, которое связано с наиболее поздней активностью пользователя в первом приложении; создание сервером пользовательского уведомления, связанного с входящим электронным сообщением; передача сервером через сеть передачи данных пользовательского уведомления конкретному из двух электронных устройств. 2 н. и 30 з.п. ф-лы, 5 ил.
Наверх