Архитектура и протокол шины с учетверенной подкачкой

Иллюстрации

Показать все

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

Реферат

Область изобретения

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

С увеличением сложности современного программного обеспечения и приложений и спроса на них возникает требование к процессорам обеспечить возрастающую производительность и полосу частот. В наличии может быть один или более ресурсов, работа которых может ограничить характеристики компьютера, такие как скорость ввода-вывода (I/O) или полоса частот, размер памяти и т.п. Одним из ресурсов, который обычно ограничивает или снижает характеристики компьютера, является скорость и полоса частот процессорной шины или внешней шины, которая представляет собой шину, предусмотренную между одним или более процессорами и набором микросхем. К примеру, некоторые процессоры Pentium® (такие как процессоры Pentium® Pro фирмы Intel Corporation) включают в себя 64-разрядную шину данных и могут передавать 8 байтов за период тактового сигнала процессора, а также могут передавать 32-байтовую строку кэша за 4 периода тактового сигнала. Таким образом, если тактовый сигнал процессора обеспечивается с частотой 100 МГц (например), скорость передачи данных составит 800 Мбайт в секунду. Различные подробности по архитектуре процессора Pentium Pro можно найти в "Pentium Pro Family Developer's Manual, Volume 1: Specifications", January, 1996, ISBN 1-55512-259-0. Хотя скорость передачи данных, равная 800 Мбайт/сек, достаточна для многих применений, существует потребность в процессорной шине, которая обеспечивает улучшенные скорость передачи данных или полосу частот.

Сущность изобретения

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

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

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

Нижеследующее представляет краткое описание чертежей, где:

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

Фиг.2 представляет собой схему, иллюстрирующую процессорную шину согласно этому примерному варианту выполнения.

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

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

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

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

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

Фиг.8 является блок-схемой устройства для передачи информации между агентами согласно варианту выполнения.

Фиг.9 является блок-схемой устройства для передачи информации между агентами согласно другому варианту выполнения.

Предпочтительный вариант осуществления изобретения

I. Введение

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

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

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

II. Архитектура

Фиг.1 является блок-схемой, иллюстрирующей компьютер согласно примерному варианту выполнения настоящего изобретения. Этот компьютер включает в себя один или более процессоров, в том числе процессор 110, процессор 112 и процессор 114. Каждый процессор включает в себя также внутреннюю кэш-память (не показана).

Каждый процессор соединяется также с общей процессорной шиной 117 (известной также под названием главная шина или внешняя шина). Фиг.2 представляет собой схему, иллюстрирующую процессорную шину 117 согласно примерному варианту выполнения. Как показано на фиг.2, эта процессорная шина 117 включает в себя управляющую шину 202, адресную шину 294 и шину 206 данных. Согласно варианту выполнения, эта шина 206 данных включает в себя многие сигналы, в том числе 64 линии D[63:0] данных. Адресная шина 204 тоже включает в себя многие сигналы, в том числе 36 адресных линий А[35:0]. Процессорная шина 117 включает в себя шинный тактовый сигнал (ШТС) (BCLK). Этот шинный тактовый сигнал является обычным и подается ко всем агентам (исполнительным устройствам) по управляющей шине 202 процессорной шины 117. Управляющая шина 202 тоже включает в себя многие сигналы. Адресная шина 204, управляющая шина 202 и шина 206 данных являются каждая предпочтительно многоточечными двунаправленными шинами. Согласно варианту выполнения выражение "многоточечный" означает, что шины соединяются с тремя или более шинными агентами, в противоположность двухточечной шине, которая соединяется только между двумя шинными агентами.

Системный интерфейс 116 (или набор микросхем) также соединяется с процессорной шиной 117 для взаимодействия нескольких других компонентов с процессорной шиной 117. Системный интерфейс 116 включает в себя контроллер 118 памяти для взаимодействия основной подсистемы 122 памяти с процессорной шиной 117. Эта основная подсистема 122 памяти включает в себя, как правило, одну или более плат памяти и управляющую схему. Системный интерфейс 116 включает в себя также контроллер 120 ввода/вывода (I/O) для взаимодействия одного или более мостов ввода/вывода или устройств ввода/вывода с процессорной шиной 117. В этом примере компьютера, показанного на фиг.1, контроллер 120 ввода/вывода обеспечивает взаимодействие моста 124 ввода/вывода с процессорной шиной 117. Мост 124 ввода/вывода работает в качестве шинного моста для осуществления взаимодействия между системным интерфейсом 116 и шиной 130 ввода/вывода. С этой шиной 130 ввода/вывода могут соединяться один или более контроллеров ввода/вывода и устройств ввода/вывода, таких, к примеру, как контроллер 132 ввода/вывода и контроллер 134 ввода/вывода. Шина 130 ввода/вывода может быть шиной интерфейса периферийных устройств (ИПУ) (PCI) или шиной ввода/вывода иного типа.

III. Агенты

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

1) Центральный агент: управляет сбросом, конфигурацией и инициализацией аппаратного обеспечения, специальными транзакциями и централизованными обнаружением и обработкой ошибок аппаратного обеспечения. Примером является процессор.

2) Агент ввода/вывода: взаимодействует с устройствами ввода/вывода с использованием адресов портов ввода/вывода. Может быть шинным мостом к другой шине, использующей устройства ввода/вывода, таким как мост ИПУ.

3) Агент памяти: например, контроллер 118 памяти, обеспечивает доступ к основной памяти. Конкретный шинный агент может выполнять одну или более ролей в транзакции:

1) Запрашивающий агент: шинный агент, который инициирует транзакцию.

2) Адресуемый агент: агент, к которому адресуется транзакция. Также называется целевым агентом. Транзакция памяти или ввода/вывода адресуется к агенту памяти или ввода/вывода, который распознает конкретный адрес памяти или ввода/вывода. Отличающаяся ответная транзакция адресуется к агенту, который осуществляет исходную транзакцию.

3) Следящий агент: кэширующий шину агент, который наблюдает ("следит") за шинными транзакциями для поддержания согласованной работы кэша.

4) Отвечающий агент: агент, который обеспечивает отклик на транзакцию (как правило, адресуемый агент). Согласно варианту выполнения отвечающий агент выдает отклик на управляющую шину с помощью стробов RS[2:0] отклика.

4. Операции, транзакции и фазы

Согласно варианту осуществления, активность шины на процессорной шине 117 иерархически организуется в операции, транзакции и фазы.

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

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

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

По процессорной шине 117 передаются четыре управляющих сигнала, в том числе шинный тактовый сигнал BCLK[1:0], сигнал INIT# инициализации и сигнал RESET# сброса. Шинный тактовый сигнал BCLK[1:0] является дифференциальным шинным тактовым сигналом и может генерироваться микросхемой тактового генератора или схемой тактового генератора. Два шинных тактовых сигнала BCLK[1:0] логически идентичны и физически маршрутизируются как два отдельных сигнала, для снижения временной расфазировки. Согласно варианту выполнения все агенты инициируют свои общие тактовые выходные сигналы и запирают свои общие тактовые входы по нарастающему фронту шинного тактового сигнала. Каждый процессор выделяет свой внутренний тактовый сигнал из шинного тактового сигнала BCLK путем умножения и/или деления частоты шинного тактового сигнала на число или числа.

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

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

Фиг.3 является временной диаграммой, иллюстрирующей примерные соотношения фаз шинной транзакции для двух примерных транзакций согласно варианту выполнения. Сверху показаны периоды (1, 2, 3, 4,... 17) шинного тактового сигнала (BCLK [1:0]). Прямоугольники с номером 1 указывают разные фазы для транзакции 1, тогда как прямоугольники с номером 2 указывают фазы для транзакции 2. Как видно из фиг.3, транзакции обеспечиваются в виде конвейера. К примеру, для транзакции 1 арбитраж происходит в периодах 1 и 2 шинного тактового сигнала, запрос происходит в периодах 3 и 4, слежение происходит в периодах 6 и 7, а отклик и передача данных происходят в периодах 13 и 14. Таким образом, можно видеть, что отклик и передача данных могут происходить во многих периодах шинного тактового сигнала после фазы исходного запроса. Может быть также перекрытие между фазами различных транзакций. К примеру, фаза арбитража для транзакции 2 происходит приблизительно в то же самое время, что и фаза запроса для транзакции 1.

5. Режимы сигнализации

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

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

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

А. Режим сигнализации с общим тактовым сигналом

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

Фиг.4 представляет собой примерную временную диаграмму, иллюстрирующую примерную работу в режиме сигнализации с общим тактовым сигналом (1X) согласно варианту выполнения. Сигналы показаны по мере их появления на процессорной шине 117. Показаны четыре периода шинного тактового сигнала (BCLK). Показаны также два дополнительных примерных сигнала, включающие А# и В#, которые могут быть сигналами любого вида. К примеру. A# может быть первым управляющим сигналом от первого агента, тогда как B# может быть вторым сигналом от второго агента. Первый и второй управляющие сигналы могут быть обеспечены, например, в качестве части процедуры установления связи или шинного протокола.

Как показано на фиг.4, сигнал А# задается (или устанавливается) по нарастающему фронту периода 1 тактового сигнала (как показано квадратом в А#) и фиксируется в приемнике по нарастающему фронту в начале периода 2 шинного тактового сигнала (как показано кружком для A#). Таким образом, период 1 тактового сигнала обеспечивается для распространения сигнала. Хотя А# задается в начале периода 1, он не наблюдается на шине до начала периода 2. Затем имеется пауза, или неактивный период тактового сигнала (во время периода 2 шинного тактового сигнала для логических задержек и для того, чтобы приемник интерпретировал эти сигналы). Приемник затем задает или устанавливает сигнал B# в начале периода 3 шинного тактового сигнала (как показано квадратом для В#), который наблюдается или захватывается другими агентами в начале периода 4 (как показано кружком для B#).

Согласно варианту выполнения процессор включает в себя 64-байтовую строку кэш-памяти (вместо 32-байтовой строки кэш-памяти, использованной некоторыми процессорами Pentium).

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

Б. Режимы сигнализации с множественной подкачкой

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

1. Пример режима сигнализации с учетверенной подкачкой

В режиме сигнализации с учетверенной подкачкой подходящая группа шинных сигналов обрабатывается на учетверенной (4Х) частоте шинного тактового сигнала (BCLK). Иными словами, в режиме сигнализации с учетверенной подкачкой четыре элемента информации выдаются на процессорную шину 117 в одном периоде шинного тактового сигнала (это время, которое заняло бы задание одного элемента информации в режиме сигнализации с общим тактовым сигналом 1X).

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

Согласно варианту выполнения задатчик (или задающий агент) посылает или задает новый информационный элемент по нарастающему фронту и в моментах времени 25%, 50% и 75% периода шинного тактового сигнала (BCLK).

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

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

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

К сожалению, если частота тактового сигнала процессора составляет 100 МГц (к примеру), это потребует частоту стробирующего сигнала, которая равна 400 МГц (в этом примере). Однако частота стробирующего сигнала, которая в четыре раза больше частоты шинного тактового сигнала, может столкнуться с задержками, которые отличаются от задержек передаваемых данных или информации, что может повлиять на согласование данных и строба в приемнике. Такое рассогласование между переданным стробирующим сигналом и переданными данными может заставить приемник захватывать искаженные или неверные данные. Кроме того, на таких высоких частотах (например, 400 МГц) ослабление сигнала может быть значительно выше.

Поэтому, согласно варианту выполнения, для того, чтобы обеспечить четыре строба на период шинного тактового сигнала без использования стробирующей частоты, которая в четыре раза (4Х) выше частоты шинного тактового сигнала, используется множество стробирующих данные сигналов. Согласно варианту выполнения два стробирующих данные сигнала (DSTBp# и DSTBn#) подаются каждый с удвоенной частотой шинного тактового сигнала. Таким образом, если частота шинного тактового сигнала составляет 100 МГц, эти два стробирующих данные сигнала будут иметь каждый частоту 200 МГц при активировании или генерировании эадатчиком (или задающим агентом). Альтернативно, можно использовать четыре стробирующих данные сигнала (каждый с той же самой частотой, что и шинный тактовый сигнал при активировании), причем каждый обеспечивает один строб или спадающий фронт на период шинного тактового сигнала.

На временной диаграмме фиг.5 задатчик посылает или задает новый элемент информации или данных по нарастающему фронту и в моменты 25%, 50% и 75% периода 1 шинного тактового сигнала. Элементы данных помечены D1, D2, D3 и D4 для четырех элементов данных в этом примере. Этот вариант осуществления также использует два стробирующих данные сигнала, включающие DSTBp# и DSTBn#. Согласно варианту выполнения эти два стробирующих данные сигнала генерируются в противофазе друг с другом (или в шахматном либо сдвинутом порядке). Это дает возможность одному из этих стробирующих сигналов идентифицировать моменты выборки для нечетных элементов данных (например, D1, D3, D5, ...), а другой стробирующий сигнал использовать для четных элементов данных (например, D2, D4, D6, ...).

Хотя в примере на фиг.5 показаны только два стробирующих сигнала, для идентификации моментов выборки данных при синхронной передаче от источника можно использовать любое число стробирующих сигналов. Как отмечено выше, может быть особенно выгодно предусмотреть множество стробирующих сигналов так, чтобы только один из двух фронтов этих стробирующих сигналов мог использоваться для идентификации моментов выборки (или стробов) при снижении частоты этих стробирующих сигналов. К примеру, если использовался бы протокол шестерной (6Х) подкачки (вместо учетверенной подкачки), то можно было бы использовать три стробирующих сигнала, где все три стробирующих сигнала могли бы иметь одинаковый сдвиг или располагаться в шахматном порядке так, что строб 1 мог бы использоваться для элементов данных D1 и D4, строб 2 - для элементов данных D2 и D5, а строб 3 - для элементов данных D3 и D6, и т.д.

Согласно варианту выполнения, только один из двух фронтов этих стробирующих сигналов используется для идентификации или синхронизации моментов выборки данных. В этом конкретном варианте выполнения для идентификации моментов для выборки информации или данных используются только спадающие фронты двух стробирующих данные сигналов. Эти стробы данных (или спадающие фронты стробирующих данные сигналов) расположены посередине в каждом из четырех элементов информации или данных. Таким образом, четыре спадающих фронта (или строба) в стробирующих данные сигналах будут приходиться на моменты 12,5%, 37,5%, 62,5% и 87,5% периода шинного тактового сигнала (BCLK). Поэтому два стробирующих сигнала обеспечивают одинаково разнесенные стробы или падающие фронты.

Как показано на фиг.5, сигнал DRDY# выдается на шину 117 в начале периода 1 шинного тактового сигнала (как показано квадратом для DRDY#). DRDY# указывает, что на процессорную шину 117 выданы достоверные данные и они должны быть выбраны или захвачены. Первый элемент данных (D1) выдается задатчиком на процессорную шину 117 по нарастающему фронту периода 1 шинного тактового сигнала (как показано первым прямоугольником для сигнала D#(@задатчик)). Затем первый стробирующий данные сигнал (DSTBp#) активируется задатчиком в точке 12,5% первого периода шинного тактового сигнала, как показано первым квадратом в сигнале DSTBp#(@задатчик). Таким образом, строб (или нарастающий фронт) для первого элемента данных (D1) находится посередине в первом элементе данных. После того как стробирующий сигнал активирован или включен, он обычно остается активированным, пока данные выдаются на шину.

Кроме того, второй элемент данных выдается задатчиком в точке 25% периода 1 шинного тактового сигнала, как показано вторым прямоугольником для сигнала D#(@задатчик). Второй стробирующий данные сигнал (DSTBn#) активируется в точке 37,5% периода 1 шинного тактового сигнала и обеспечивает спадающий фронт (или строб), который находится посередине во втором элементе данных (D2).

Подобным же образом третий и четвертый элементы данных (D3 и D4 соответственно) задаются в точках 50% и 75% периода 1 шинного тактового сигнала. Соответствующие стробы данных (спадающие фронты стробирующих данные сигналов) задаются или обеспечиваются эадатчиком в точке 62,5% (стробирующим сигналом DSTBp#) и в точке 87,5% (стробирующим сигналом DSTBn#). Поскольку эти стробирующие данные сигналы подаются с частотой, которая вдвое (2Х) выше частоты шинного тактового сигнала, каждый стробирующий данные сигнал обеспечит строб или спадающий фронт каждые полпериода шинного тактового сигнала. Таким образом, стробирующий сигнал DSTBp# обеспечивает спадающие фронты или стробы в точках 12,5% и 62,5% периода шинного тактового сигнала, тогда как стробирующий сигнал DSTBn# обеспечивает спадающие фронты или стробы в точках 37,5% и 87,5% периода шинного тактового сигнала. Таким образом, можно видеть, что два стробирующих данные сигнала (DSTBp# и DSTBn#) расположены в шахматном порядке или в противофазе друг с другом. Это позволяет попеременно возникающим стробирующим сигналам обеспечивать спадающий фронт (или строб) каждые четверть периода шинного тактового сигнала (между обоими стробирующими данные сигналами). Это обеспечивает четыре строба или спадающих фронта на период шинного тактового сигнала для идентификации моментов выборки или захвата для четырех элементов данных за период шинного тактового сигнала с уменьшением частоты каждого строба. Кроме того, тактирование и схема упрощаются, потому что в качестве строба в каждом стробирующем данные сигнале используется один и тот же фронт.

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

Фиг.5 показывает также захват данных приемником. После того, как сигналы (данные и стробы данных) выдаются задатчиком, эти сигналы распространяются по процессорной шине 117 и достигают цели или приемника. Первый элемент данных принимается приемником, как показано сигналом D#(@приемник). Этот первый элемент данных (D1) выбирается или захватывается по первому стробу, который представляет собой первый спадающий фронт сигнала DSTBp#(@приемник). Первый треугольник для DSTBp#(@приемник) идентифицирует строб или момент выборки или захвата первого элемента данных, а второй треугольник для DSTBp#(@приемник) идентифицирует момент или строб для выборки третьего элемента данных в приемнике. Подобным же образом два треугольника для второго стробирующего данные сигнала (DSTBn#(@приемник)) идентифицируют моменты выборки или захвата приемником второго и четвертого элементов данных (D2, D4).

Как показано на фиг.5, первый элемент данных D1 может выбираться или захватываться (стробироваться) в приемник после нарастающего фронта в начале периода 2 и не раньше, чем в точке 12,5% тактового периода 2 (следующего тактового периода). (Используемые здесь выражения "захват", "выборка" и "фиксация" означают приблизительно одно и то же). Однако данные для всех элементов данных не фиксируются в приемнике до прихода нарастающего фронта периода 3 шинного тактового сигнала. Таким образом, хотя элемент данных D1 принимается и захватывается вблизи начала периода 2 шинного тактового сигнала, все данные не становятся доступными для приемника до начала периода 3 шинного тактового сигнала. Принимающий агент предпочтительно включае